Skip to main content

Helping johnny encrypt: Toward semantic interfaces for cryptographic frameworks

Publication ,  Conference
Indela, S; Kulkarni, M; Nayak, K; Dumitras, T
Published in: Onward! 2016 - Proceedings of the 2016 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software
October 20, 2016

Several mature cryptographic frameworks are available, and they have been utilized for building complex applications. However, developers often use these frameworks incorrectly and introduce security vulnerabilities. This is because current cryptographic frameworks Erode abstraction boundaries, as they do not encapsulate all the framework-specific knowledge and expect developers to understand security attacks and defenses. Starting from the documented misuse cases of cryptographic APIs, we infer five developer needs and we show that a good API design would address these needs only partially. Building on this observation, we propose APIs that are semantically meaningful for developers, we show how these interfaces can be implemented consistently on top of existing frameworks using novel and known design patterns, and we propose build management hooks for isolating security workarounds needed during the development and test phases. Through two case studies, we show that our APIs can be utilized to implement non-Trivial client-server protocols and that they provide a better separation of concerns than existing frameworks. We also discuss the challenges and potential approaches for evaluating our solution. Our semantic interfaces represent a first step toward preventing misuses of cryptographic APIs.

Duke Scholars

Altmetric Attention Stats
Dimensions Citation Stats

Published In

Onward! 2016 - Proceedings of the 2016 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software

DOI

ISBN

9781450340762

Publication Date

October 20, 2016

Start / End Page

180 / 196
 

Citation

APA
Chicago
ICMJE
MLA
NLM
Indela, S., Kulkarni, M., Nayak, K., & Dumitras, T. (2016). Helping johnny encrypt: Toward semantic interfaces for cryptographic frameworks. In Onward! 2016 - Proceedings of the 2016 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software (pp. 180–196). https://doi.org/10.1145/2986012.2986024
Indela, S., M. Kulkarni, K. Nayak, and T. Dumitras. “Helping johnny encrypt: Toward semantic interfaces for cryptographic frameworks.” In Onward! 2016 - Proceedings of the 2016 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software, 180–96, 2016. https://doi.org/10.1145/2986012.2986024.
Indela S, Kulkarni M, Nayak K, Dumitras T. Helping johnny encrypt: Toward semantic interfaces for cryptographic frameworks. In: Onward! 2016 - Proceedings of the 2016 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software. 2016. p. 180–96.
Indela, S., et al. “Helping johnny encrypt: Toward semantic interfaces for cryptographic frameworks.” Onward! 2016 - Proceedings of the 2016 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software, 2016, pp. 180–96. Scopus, doi:10.1145/2986012.2986024.
Indela S, Kulkarni M, Nayak K, Dumitras T. Helping johnny encrypt: Toward semantic interfaces for cryptographic frameworks. Onward! 2016 - Proceedings of the 2016 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software. 2016. p. 180–196.

Published In

Onward! 2016 - Proceedings of the 2016 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software

DOI

ISBN

9781450340762

Publication Date

October 20, 2016

Start / End Page

180 / 196