Show simple item record

dc.contributor.authorSong, Shixin
dc.contributor.authorDong, Tingzhen
dc.contributor.authorNwabueze, Kosi
dc.contributor.authorZanders, Julian
dc.contributor.authorErbsen, Andres
dc.contributor.authorChlipala, Adam
dc.contributor.authorYan, Mengjia
dc.date.accessioned2025-12-11T21:53:10Z
dc.date.available2025-12-11T21:53:10Z
dc.date.issued2025-11-22
dc.identifier.isbn979-8-4007-1525-9
dc.identifier.urihttps://hdl.handle.net/1721.1/164285
dc.descriptionCCS ’25, Taipeien_US
dc.description.abstractAuthors of cryptographic software are well aware that their code should not leak secrets through its timing behavior, and, until 2018, they believed that following industry-standard constant-time coding guidelines was sufficient. However, the revelation of the Spectre family of speculative execution attacks injected new complexities. To block speculative attacks, prior work has proposed annotating the program's source code to mark secret data, with hardware using this information to decide when to speculate (i.e., when only public values are involved) or not (when secrets are in play). While these solutions are able to track secret information stored on the heap, they suffer from limitations that prevent them from correctly tracking secrets on the stack, at a cost in performance. This paper introduces SecSep, a transformation framework that rewrites assembly programs so that they partition secret and public data on the stack. By moving from the source-code level to assembly rewriting, SecSep is able to address limitations of prior work. The key challenge in performing this assembly rewriting stems from the loss of semantic information through the lengthy compilation process. The key innovation of our methodology is a new variant of typed assembly language (TAL), Octal, which allows us to address this challenge. Assembly rewriting is driven by compile-time inference within Octal. We apply our technique to cryptographic programs and demonstrate that it enables secure speculation efficiently, incurring a low average overhead of 1.2%.en_US
dc.publisherACM|Proceedings of the 2025 ACM SIGSAC Conference on Computer and Communications Securityen_US
dc.relation.isversionofhttps://doi.org/10.1145/3719027.3765116en_US
dc.rightsCreative Commons Attributionen_US
dc.rights.urihttps://creativecommons.org/licenses/by/4.0/en_US
dc.sourceAssociation for Computing Machineryen_US
dc.titleSecuring Cryptographic Software via Typed Assembly Languageen_US
dc.typeArticleen_US
dc.identifier.citationShixin Song, Tingzhen Dong, Kosi Nwabueze, Julian Zanders, Andres Erbsen, Adam Chlipala, and Mengjia Yan. 2025. Securing Cryptographic Software via Typed Assembly Language. In Proceedings of the 2025 ACM SIGSAC Conference on Computer and Communications Security (CCS '25). Association for Computing Machinery, New York, NY, USA, 141–155.en_US
dc.contributor.departmentMassachusetts Institute of Technology. Department of Electrical Engineering and Computer Scienceen_US
dc.identifier.mitlicensePUBLISHER_POLICY
dc.eprint.versionFinal published versionen_US
dc.type.urihttp://purl.org/eprint/type/ConferencePaperen_US
eprint.statushttp://purl.org/eprint/status/NonPeerRevieweden_US
dc.date.updated2025-12-01T08:57:21Z
dc.language.rfc3066en
dc.rights.holderThe author(s)
dspace.date.submission2025-12-01T08:57:22Z
mit.licensePUBLISHER_CC
mit.metadata.statusAuthority Work and Publication Information Neededen_US


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record