Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/2897845.2897887acmconferencesArticle/Chapter ViewAbstractPublication Pagesasia-ccsConference Proceedingsconference-collections
research-article

FLEX: A Flexible Code Authentication Framework for Delegating Mobile App Customization

Published: 30 May 2016 Publication History

Abstract

Mobile code distribution relies on digital signatures to guarantee code authenticity. Unfortunately, standard signature schemes are not well suited for use in conjunction with program transformation techniques, such as aspect-oriented programming. With these techniques, code development is performed in sequence by multiple teams of programmers. This is fundamentally different from traditional single-developer/ single-user models, where users can verify end-to-end (i.e., developer-to-user) authenticity of the code using digital signatures. To address this limitation, we introduce FLEX, a flexible code authentication framework for mobile applications. FLEX allows semi-trusted intermediaries to modify mobile code without invalidating the developer's signature, as long as the modification complies with a "contract" issued by the developer. We introduce formal definitions for secure code modification, and show that our instantiation of FLEX is secure under these definitions. Although FLEX can be instantiated using any language, we design AMJ--a novel programming language that supports code annotations--and implement a FLEX prototype based on our new language.

References

[1]
Apple App Store. http://www.apple.com/itunes/. Accessed: July 2015.
[2]
Alessandro Armando, Gabriele Costa, Alessio Merlo, and Luca Verderame. Enabling BYOD Through Secure Meta-market. In Proceedings of the ACM Conference on Security and Privacy in Wireless and Mobile Networks, WiSec 2014, pages 219--230.
[3]
Giuseppe Ateniese, Daniel Chou, Breno de Medeiros, and Gene Tsudik. Sanitizable Signatures. In Proceedings of the European Symposium on Research in Computer Security, volume 3679 of ESORICS 2005, pages 159--177. Springer Berlin Heidelberg.
[4]
Gavin Bierman, Matthew Parkinson, and Andrew Pitts. MJ: An Imperative Core Calculus for Java and Java with Effects. Technical Report UCAM-CL-TR-563, University of Cambridge, 2003.
[5]
Kai Bollert. On weaving aspects. In Ana M. D. Moreira and Serge Demeyer, editors, ECOOP Workshops, volume 1743 of Lecture Notes in Computer Science, pages 301--302. Springer, 1999.
[6]
The Legion of the Bouncy Castle. https://www.bouncycastle.org/. Accessed: July 2015.
[7]
Christina Brzuska, Marc Fischlin, Tobias Freudenreich, Anja Lehmann, Marcus Page, Jakob Schelbert, Dominique Schroder, and Florian Volk. Security of Sanitizable Signatures Revisited. In Proceedings of the International Conference on Practice and Theory in Public Key Cryptography, volume 5443 of PKC 2009, pages 317--336. Springer Berlin Heidelberg.
[8]
Lilian Burdy, Marieke Huisman, and Mariela Pavlova. Preliminary Design of BML: A Behavioral Interface Specification Language for Java Bytecode. In Proceedings of the Fundamental Approaches to Software Engineering, volume 4422 of FASE 2007, pages 215--229. Springer Berlin Heidelberg.
[9]
Firefox Marketplace. http://marketplace.firefox.com. Accessed: July 2015.
[10]
FLEX Prototype. http://cl.ly/1L3n2P1i2F2d.
[11]
Gogo Inflight Internet. http://www.gogoair.com.
[12]
Google Play Store. http://play.google.com/. Accessed: July 2015.
[13]
Robert Johnson, David Molnar, Dawn Xiaodong Song, and David Wagner. Homomorphic Signature Schemes. In Proceedings of the Cryptographer's Track at the RSA Conference on Topics in Cryptology, CT-RSA 2002, pages 244--262. Springer-Verlag.
[14]
Gregor Kiczales. Aspect-oriented Programming. ACM Computer Survey, 28(4es), December 1996.
[15]
Gregor Kiczales, John Lamping, Anurag Mendhekar, Chris Maeda, Cristina Lopes, Jean-Marc Loingtier, and John Irwin. Aspect-oriented programming. In Mehmet Akşit and Satoshi Matsuoka, editors, ECOOP'97 -- Object-Oriented Programming, volume 1241 of Lecture Notes in Computer Science, pages 220--242. Springer Berlin Heidelberg, 1997.
[16]
Gary Leavens, Albert Baker, and Clyde Ruby. JML: a Java Modeling Language. In Proceedings of the Workshop on Formal Underpinnings of Java, OOPSLA 1998.
[17]
Steffen Lortz, Heiko Mantel, Artem Starostin, Timo Bahr, David Schneider, and Alexandra Weber. Cassandra: Towards a Certifying App Store for Android. In Proceedings of the Workshop on Security and Privacy in Smartphones and Mobile Devices, SPSM 2014, pages 93--104.
[18]
Bertrand Meyer. Applying "design by contract". Computer, 25(10):40--51, October 1992.
[19]
Refik Molva and Françoise Baude. Mobile Code, Internet Security, and E-Commerce. In Proceedings of the European Conference on Object-Oriented Programming, ECOOP 2000, pages 270--281.
[20]
George Necula. Proof-carrying Code. In Proceedings of the ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 1997, pages 106--119.
[21]
OpenHAB project homepage. http://www.openhab.org/. Accessed: July 2015.
[22]
R. Sekar, C. R. Ramakrishnan, I. V. Ramakrishnan, and S. A. Smolka. Model-Carrying Code (MCC): A New Paradigm for Mobile-code Security. In Proceedings of the Workshop on New Security Paradigms, NSPW 2001, pages 23--30.
[23]
Signing Your Applications. http://developer.android.com/tools/publishing/app-signing.html.
[24]
Brian Cantwell Smith. Procedural Reflection in Programming Languages. PhD thesis, Massachusetts Institute of Technology, Laboratory for Computer Science, 1982.
[25]
Starbucks. http://www.starbucks.com. Accessed: July 2015.
[26]
Gregory Sullivan. Aspect-oriented Programming Using Reflection and Metaobject Protocols. Communications of the ACM, 44(10):95--97, October 2001.
[27]
Wink Smart Hub. http://www.wink.com. Accessed: July 2015.
[28]
Xsemantics. http://xsemantics.sourceforge.net/. Accessed: July 2015.
[29]
Xtext. A framework for development of programming languages and domain specific languages. https://eclipse.org/Xtext/. Accessed: July 2015.

Index Terms

  1. FLEX: A Flexible Code Authentication Framework for Delegating Mobile App Customization

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    ASIA CCS '16: Proceedings of the 11th ACM on Asia Conference on Computer and Communications Security
    May 2016
    958 pages
    ISBN:9781450342339
    DOI:10.1145/2897845
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 30 May 2016

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. Security and privacy~Digital signatures
    2. Security and privacy~Formal security models
    3. Software and its engineering~Object oriented languages

    Qualifiers

    • Research-article

    Conference

    ASIA CCS '16
    Sponsor:

    Acceptance Rates

    ASIA CCS '16 Paper Acceptance Rate 73 of 350 submissions, 21%;
    Overall Acceptance Rate 418 of 2,322 submissions, 18%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • 0
      Total Citations
    • 146
      Total Downloads
    • Downloads (Last 12 months)5
    • Downloads (Last 6 weeks)1
    Reflects downloads up to 26 Nov 2024

    Other Metrics

    Citations

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media