Show simple item record

Files in this item

Thumbnail

Item metadata

dc.contributor.authorBrown, Christopher
dc.contributor.authorBarwell, Adam David
dc.contributor.authorMarquer, Yoann
dc.contributor.authorZendra, Olivier
dc.contributor.authorRichmond, Tania
dc.contributor.authorGu, Chen
dc.contributor.editorAriola, Zena M.
dc.contributor.editorCong, Youyou
dc.date.accessioned2022-02-02T15:30:02Z
dc.date.available2022-02-02T15:30:02Z
dc.date.issued2022-01-17
dc.identifier276805364
dc.identifier954ad893-abf0-4ae1-838b-d5115a30849b
dc.identifier85124031704
dc.identifier.citationBrown , C , Barwell , A D , Marquer , Y , Zendra , O , Richmond , T & Gu , C 2022 , Semi-automatic ladderisation : improving code security through rewriting and dependent types . in Z M Ariola & Y Cong (eds) , PEPM 2022: Proceedings of the 2022 ACM SIGPLAN International Workshop on Partial Evaluation and Program Manipulation . ACM , New York , POPL '22: The 49th Annual ACM SIGPLAN Symposioum on Principles of Programming Languages , Philadephia , Pennsylvania , United States , 17/01/22 . https://doi.org/10.1145/3498886.3502202en
dc.identifier.citationconferenceen
dc.identifier.isbn9781450391887
dc.identifier.otherORCID: /0000-0001-6030-2885/work/107718157
dc.identifier.otherORCID: /0000-0003-1236-7160/work/107718269
dc.identifier.urihttps://hdl.handle.net/10023/24797
dc.descriptionFunding: This work was generously supported by the EU Horizon 2020 project, TeamPlay (https://www.teamplay-h2020.eu), grant number 779882, and UK EPSRC, Energise, grant number EP/V006290/1.en
dc.description.abstractCyber attacks become more and more prevalent every day.An arms race is thus engaged between cyber attacks and cyber defences.One type of cyber attack is known as a side channel attack, where attackers exploit information leakage from the physical execution of a program, e.g. timing or power leakage, to uncover secret information, such as encryption keys or other sensitive data. There have been various attempts at addressing the problem of side-channel attacks, often relying on various measures to decrease the discernibility of several code variants or code paths. Most techniques require a high-degree of expertise by the developer, who often employs ad hoc, hand-crafted code-patching in an attempt to make it more secure. In this paper, we take a different approach: building on the idea of ladderisation, inspired by Montgomery Ladders. We present a semi-automatic tool-supported technique, aimed at the non-specialised developer, which refactors (a class of) C programs into functionally (and even algorithmically) equivalent counterparts with improved security properties. Our approach provides refactorings that transform the source code into its ladderised equivalent, driven by an underlying verified rewrite system, based on dependent types. Our rewrite system automatically finds rewritings of selected C expressions, facilitating the production of their equivalent ladderised counterparts for a subset of C. Using our tool-supported technique, we demonstrate our approach on a number of representative examples from the cryptographic domain, showing increased security.
dc.format.extent13
dc.format.extent937419
dc.language.isoeng
dc.publisherACM
dc.relation.ispartofPEPM 2022: Proceedings of the 2022 ACM SIGPLAN International Workshop on Partial Evaluation and Program Manipulationen
dc.subjectSecurityen
dc.subjectDependent typesen
dc.subjectIdrisen
dc.subjectSoundnessen
dc.subjectRefactoringen
dc.subjectRewritingen
dc.subjectSemanticsen
dc.subjectSide-channel attacksen
dc.subjectFault injectionen
dc.subjectQA75 Electronic computers. Computer scienceen
dc.subjectComputational Theory and Mathematicsen
dc.subject3rd-DASen
dc.subjectNISen
dc.subject.lccQA75en
dc.titleSemi-automatic ladderisation : improving code security through rewriting and dependent typesen
dc.typeConference itemen
dc.contributor.sponsorEPSRCen
dc.contributor.sponsorEuropean Commissionen
dc.contributor.institutionUniversity of St Andrews. School of Computer Scienceen
dc.identifier.doi10.1145/3498886.3502202
dc.identifier.grantnumberEP/V006290/1en
dc.identifier.grantnumber779882en


This item appears in the following Collection(s)

Show simple item record