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

Add a Trusted Platform Module Provider #65

Closed
hug-dev opened this issue Nov 8, 2019 · 2 comments
Closed

Add a Trusted Platform Module Provider #65

hug-dev opened this issue Nov 8, 2019 · 2 comments
Labels
enhancement New feature or request

Comments

@hug-dev
Copy link
Member

hug-dev commented Nov 8, 2019

This issue tracks the work of adding a new provider in PARSEC for TPM support. This new provider will implement the Provide trait to respond to clients requests.

Multiple options are possible for the implementation:

  • produce a FFI to one of the TPM2 Software Stack API interfaces and dynamically link to a library implementing it (path provided in the configuration). Ideally we want to use the highest abstraction level (Feature API) but it seems to be work in progress. The highest level API we can use today is the Enhanced System API.
  • investigate the use of the tss-sapi crate, to see if it would fit our needs
  • investigate the use of a PKCS 11 to TPM 2 bridge. At a first glance, the README files warns that it is not production ready though.

cc @parallaxsecond/maintainers

@hug-dev hug-dev added the enhancement New feature or request label Nov 8, 2019
@hug-dev
Copy link
Member Author

hug-dev commented Nov 22, 2019

From the ESAPI specs:

No two threads are allowed the same ESAPI context simultaneously.

We did a test where creating two contexts and trying in one to refer to the key handle of the other, ESAPI does not allow that (key handle does not exist) (cc @ionut-arm ).
That would mean that inside the provider functions, the code will be single-threaded (ensured with mutexes) so that we only have one context at all time. This context will be created when the provider is created.

@hug-dev
Copy link
Member Author

hug-dev commented Dec 13, 2019

#75 was just merged :)

@hug-dev hug-dev closed this as completed Dec 13, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant