Hardware/Software Co-Assurance for the Rust Programming Language Applied to Zero Trust Architecture Development

Author:

Hardin David1

Affiliation:

1. Collins Aerospace, Cedar Rapids, IA, USA

Abstract

Zero Trust Architecture requirements are of increasing importance in critical systems development. Zero trust tenets hold that no implicit trust be granted to assets based on their physical or network location. Zero Trust development focuses on authentication, authorization, and shrinking implicit trust zones to the most granular level possible, while maintaining availability and minimizing authentication latency. Performant, high-assurance cryptographic primitives are thus central to successfully realizing a Zero Trust Architecture. The Rust programming language has garnered significant interest and use as a modern, type-safe, memory-safe, and potentially formally analyzable programming language. Our interest in Rust particularly stems from its potential as a hardware/software co-assurance language for developing Zero Trust Architectures. We describe a novel environment enabling Rust to be used as a High-Level Synthesis (HLS) language, suitable for secure and performant Zero Trust application development. Many incumbent HLS languages are a subset of C, and inherit many of the well-known security shortcomings of that language. A Rust-based HLS brings a single modern, type-safe, memory-safe, high-assurance development language for both hardware and software. To study the benefits of this approach, we crafted a Rust HLS subset, and developed a frontend to the hardware/software co-assurance toolchain due to Russinoff and colleagues at Arm, used primarily for floating-point hardware formal verification. This allows us to leverage a number of existing hardware/software co-assurance tools with a minimum investment of time and effort. In this paper, we describe our Rust subset, detail our prototype toolchain, and describe the implementation, performance analysis, formal verification and validation of representative Zero Trust algorithms and data structures written in Rust, emphasizing cryptographic primitives and common data structures.

Publisher

Association for Computing Machinery (ACM)

Subject

General Medicine

Reference27 articles.

1. Ron Amadeo. 2021. Google is now writing low-level Android code in Rust. https://arstechnica.com/gadgets/2021/04/google-is-nowwriting- low-level-android-code-in-rust/ Ron Amadeo. 2021. Google is now writing low-level Android code in Rust. https://arstechnica.com/gadgets/2021/04/google-is-nowwriting- low-level-android-code-in-rust/

2. Amazon Web Services 2022. Announcing the Kani Rust Verifier Project. Amazon Web Services. https://model-checking.github.io/kaniverifier- blog/2022/05/04/announcing-the-kani-rust-verifierproject. html?fbclid=IwAR2M_B1IEBfkVhIXSuuAxt3McC_ QpUnTuzDq9jG40HOaJzxw8z1Nw9XU_i4 Amazon Web Services 2022. Announcing the Kani Rust Verifier Project. Amazon Web Services. https://model-checking.github.io/kaniverifier- blog/2022/05/04/announcing-the-kani-rust-verifierproject. html?fbclid=IwAR2M_B1IEBfkVhIXSuuAxt3McC_ QpUnTuzDq9jG40HOaJzxw8z1Nw9XU_i4

3. V. Astrauskas , A. Bílý , J. Fiala , Z. Grannan , C. Matheja , P. Müller , F. Poli , and A. J. Summers . 2022. The Prusti Project: Formal Verification for Rust (invited) . In NASA Formal Methods (14th International Symposium). Springer, 88--108 . https://link.springer.com/chapter/10.1007/978--3- 031-06773-0_5 V. Astrauskas, A. Bílý, J. Fiala, Z. Grannan, C. Matheja, P. Müller, F. Poli, and A. J. Summers. 2022. The Prusti Project: Formal Verification for Rust (invited). In NASA Formal Methods (14th International Symposium). Springer, 88--108. https://link.springer.com/chapter/10.1007/978--3- 031-06773-0_5

4. Sally Browning and PhilipWeaver. 2010. Designing Tunable , Verifiable Cryptographic Hardware Using Cryptol . In Design and Verification of Microprocessor Systems for High-Assurance Applications, David S . Hardin (Ed.). Springer , 89--143. Sally Browning and PhilipWeaver. 2010. Designing Tunable, Verifiable Cryptographic Hardware Using Cryptol. In Design and Verification of Microprocessor Systems for High-Assurance Applications, David S. Hardin (Ed.). Springer, 89--143.

5. Rod Chapman . 2022 . SPARKNaCl: A Verified, Fast Re-implementation of TweetNaCl . In Proceedings of FOSDEM'22 . https://fosdem.org/2022/ schedule/event/ada_sparknacl/ Rod Chapman. 2022. SPARKNaCl: A Verified, Fast Re-implementation of TweetNaCl. In Proceedings of FOSDEM'22. https://fosdem.org/2022/ schedule/event/ada_sparknacl/

Cited by 1 articles. 订阅此论文施引文献 订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献

1. Verification of a Rust Implementation of Knuth's Dancing Links using ACL2;Electronic Proceedings in Theoretical Computer Science;2023-11-14

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3