Secure web applications via automatic partitioning

dc.contributor.authorChong, Stephenen_US
dc.contributor.authorLiu, Jeden_US
dc.contributor.authorMyers, Andrew C.en_US
dc.contributor.authorQi, Xinen_US
dc.contributor.authorVikram, K.en_US
dc.contributor.authorZheng, Lantianen_US
dc.contributor.authorZheng, Xinen_US
dc.description.abstractWeb applications are now critical infrastructure. To improve the user interface, some application functionality is typically implemented as client-side JavaScript code. Currently there are no good methods for deciding when it is secure to move code and data to the client side. Swift is a new, principled approach to building web applications that are secure by construction. Application code is written as Java-like code annotated with information flow policies. This code is automatically partitioned between JavaScript code running in the browser, and Java code running on the server. Code and data are placed on the client side where possible. Security-critical code is placed on the server and user interface code is placed on the client. Code placement is constrained by high-level, declarative information flow policies that strongly enforce the confidentiality and integrity of server-side information. Web applications are hard to build because code and data needs to be partitioned to make them responsive. They are also hard to build because code and data need to be partitioned for security. Because of the connection (and tension) between the two problems, Swift addresses both at once, automatically partitioning application code while also providing assurance that the resulting placement is secure and efficient.en_US
dc.format.extent288682 bytes
dc.publisherCornell Universityen_US
dc.subjectcomputer scienceen_US
dc.subjecttechnical reporten_US
dc.titleSecure web applications via automatic partitioningen_US
dc.typetechnical reporten_US


Original bundle
Now showing 1 - 1 of 1
Thumbnail Image
281.92 KB
Adobe Portable Document Format