Skip to content

A Rust workspace to build an OpenSSL Provider based on aurora for the Internet Browsing pilot of QUBIP.

License

Notifications You must be signed in to change notification settings

QUBIP/aurora-ib-ws

Repository files navigation

aurora workspace for the Internet Browsing pilot


Explore the docs »

Report a Bug · Request a Feature · Ask a Question

Project license

Pull Requests welcome code with love by qubip

Caution

Development in Progress

This project is currently in development and not yet ready for production use.

Expect changes to occur from time to time, and at this stage, some features may be unavailable.

Table of Contents

About

A Rust workspace to build an OpenSSL Provider based on aurora for the Internet Browsing pilot of QUBIP.

Warning

This repository uses submodules!

Clone it using git clone --recursive, or remember to git submodule update --init after cloning.

The purpose of this repository is to aid in the development of the OpenSSL Provider for the Internet Browsing pilot of QUBIP.

It uses git-submodules to tie together specific revisions of aurora and openssl_provider_forge.

Submodules

  • aurora is a Rust implementation of an OpenSSL provider, tailored for the PQC transition.
  • openssl-provider-forge-rs contains Rust code that is needed in order to write an OpenSSL provider in Rust (like aurora but possibly also others). This includes FFI-compatible Rust representations of the relevant C constants, structs, etc. that are defined in various OpenSSL header files (e.g. the OSSL_PARAM struct and the C enum it uses internally in the data_type field), as well as some pure Rust macros that are useful when writing a provider (e.g. a macro for creating dispatch table entries from function pointers).

Building and testing using podman (or Docker if you tweak the commands)

We have a Container image published on DockerHub that has a minimal system to build and test this project.

The justfile includes a convenience target to run either an interactive shell session within the container, or specific commands.

just dockerImage-runner-interactive

or (for example)

just dockerImage-runner-interactive just gatherinfo

This assumes a working podman installation.

Roadmap

See the open issues for a list of proposed features (and known issues).

Support

Reach out to the maintainers at one of the following places:

Project assistance

If you want to say thank you or/and support active development:

  • Add a GitHub Star to the project.
  • Mention this project on your social media of choice.
  • Write interesting articles about the project, and cite us.

Together, we can make Aurora better!

Contributing

The GitHub repository primarily serves as a mirror, and will be updated every time a new version of Aurora is released. It might not always be updated with the latest commits in between releases. However, contributions are still very welcome!

Please read our contribution guidelines, and thank you for being involved!

Authors & contributors

The original setup of this repository is by NISEC.

For a full list of all authors and contributors, see the contributors page.

Security

In this project, we aim to follow good security practices, but 100% security cannot be assured. This project is provided "as is" without any warranty. Use at your own risk.

For more information and to report security issues, please refer to our security documentation.

License

This project is licensed under the Apache Software License 2.0.

See LICENSE for more information.

Acknowledgements

This work has been developed within the QUBIP project (https://www.qubip.eu), funded by the European Union under the Horizon Europe framework programme grant agreement no. 101119746.

About

A Rust workspace to build an OpenSSL Provider based on aurora for the Internet Browsing pilot of QUBIP.

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks