Foundation is a repository for formal specifications of cryptographic algorithms and functional assurance artifacts created and maintained by the National Security Agency Research Directorate.
If you are a U.S. citizen interested in projects like this, to develop Foundation and other cybersecurity tools for NSA to help protect our nation and its allies, consider applying for a career with us.
This repository uses GitHub Actions to add assurance to its artifacts. The badges here provide the status of those actions.
Two development container configurations are maintained in this repository and provide the tooling (Cryptol, SAW, supported SAT/SMT solvers, and more) necessary to support its development. These configurations are compatible with GitHub's Codespaces, a service that enables developers to "Spin up fully configured dev environments in the cloud", as well as Visual Studio Code's Dev Container extension. Using these configurations in a supported development environment (such as those listed above) is the preferred way to develop in this repository.
Start developing immediately:
If you would like to contribute bug fixes, improvements, and new features back to Foundation, please take a look at our Contributor Guide and Developer Guide to see how you can participate in this open source project.