Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consume the new, safer Rust PKCS#11 interface into Parsec when it is available #272

Closed
paulhowardarm opened this issue Oct 14, 2020 · 1 comment · Fixed by #301
Closed
Assignees
Labels
code health Issues concerning overall code quality, safety and best practice

Comments

@paulhowardarm
Copy link
Collaborator

paulhowardarm commented Oct 14, 2020

Summary

Refactor the Parsec PKCS#11 provider so that it consumes the newer, safer types and interfaces in the Rust PKCS#11 library.

Background

The Rust PKCS#11 provider allows Parsec to work with hardware security modules and similar systems that adopt the Oasis PKCS#11 Standard.

The PKCS11 provider makes use of a suite of Rust PKCS11 bindings from the rust-pkcs11 project.

Parsec project contributors have noted some safety improvements that could be made to these interfaces. For details see: mheese/rust-pkcs11#38

There is a fork of the PKCS#11 library created by @joechrisellis that implements the recommended changes to the Rust library: https://github.com/joechrisellis/rust-pkcs11/tree/new-abstraction

This branch reworks the library into a lower-level pkcs11-sys module, and higher-level pkcs11 module, the latter containing a new set of abstractions aimed at consumption into application code.

Once these new interfaces are made available, either by PR into the original project, or by creating a new separate project, it will be possible to refactor the PKCS#11 provider in Parsec to consume these interfaces.

This issue has been raised to track for the future.

@paulhowardarm paulhowardarm added the code health Issues concerning overall code quality, safety and best practice label Oct 14, 2020
@hug-dev hug-dev self-assigned this Dec 1, 2020
@hug-dev
Copy link
Member

hug-dev commented Dec 1, 2020

The work on adding the safe abstraction layer is now located on the new-abstraction branch here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
code health Issues concerning overall code quality, safety and best practice
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants