-
Notifications
You must be signed in to change notification settings - Fork 96
Secure element key creation foundation #157
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
Merged
gilles-peskine-arm
merged 50 commits into
ARMmbed:psa-api-1.0-beta
from
gilles-peskine-arm:psa-se_driver-create_key
Jul 26, 2019
Merged
Changes from all commits
Commits
Show all changes
50 commits
Select commit
Hold shift + click to select a range
e62b74e
Add public-key export method
gilles-peskine-arm f989dbe
SE driver lookup functions
gilles-peskine-arm 6e59c42
Split the secure element driver method table memory layout
gilles-peskine-arm 011e428
Look up the SE driver when creating a key
gilles-peskine-arm f03143a
Change driver key slot numbers to 64 bits
gilles-peskine-arm 7a86da1
Define a driver context structure type
gilles-peskine-arm 8597bc1
Pass the driver context to most driver methods
gilles-peskine-arm f2223c8
New driver method: allocate
gilles-peskine-arm 94cc42c
Pass a writable pointer to the persistent data when needed
gilles-peskine-arm 5243a20
Driver context manipulation functions
gilles-peskine-arm 8abe6a2
Driver table entries are now mutable
gilles-peskine-arm 73167e1
SE keys: store the slot number in the memory slot
gilles-peskine-arm cbaff46
SE keys: allocate a slot before creating the key
gilles-peskine-arm 354f767
SE keys: support destroy
gilles-peskine-arm 5d30967
SE keys: support import and export
gilles-peskine-arm 5dc742c
SE keys: smoke test import, export, destroy
gilles-peskine-arm c8336cb
Implement a transaction record storage for resilience
gilles-peskine-arm fc76265
Do secure element key creation and destruction in a transaction
gilles-peskine-arm 6032673
Fix Doxygen reference
gilles-peskine-arm 274a263
Make whitespace consistent
gilles-peskine-arm bfd322f
Use a key attribute structure in the internal storage interface
gilles-peskine-arm 0e8d495
Add the lifetime to the key storage format
gilles-peskine-arm 1df83d4
SE keys: implement persistent storage
gilles-peskine-arm 8b96cad
SE drivers: implement persistent storage
gilles-peskine-arm 1d04b05
Dear check-names, where you accept struct, also accept union.
gilles-peskine-arm 9dd125d
Fix overly complex Doxygen markup
gilles-peskine-arm 105f67f
Move the definition of psa_key_attributes_t to crypto_types.h
gilles-peskine-arm 831ac72
Add transaction file and driver storage; new key file format
gilles-peskine-arm 573bbc1
Error out if a driver tries to store more than ITS can handle
gilles-peskine-arm 28f8f30
SE keys: ensure that functions that lack support properly error out
gilles-peskine-arm 89870eb
Cosmetic improvements in SE driver tests
gilles-peskine-arm f4ee662
SE keys: error out in key creation function that lack support
gilles-peskine-arm d1cd766
SE keys: test NOT_SUPPORTED error from generate_key
gilles-peskine-arm 1057366
SE keys: test that no function goes crazy
gilles-peskine-arm d0e66b0
Turn off secure element support by default
gilles-peskine-arm f96aefe
Test with secure element support
gilles-peskine-arm 75c126b
Explain some non-obvious parts of the code
gilles-peskine-arm 4b73422
Transaction support: be more future-proof
gilles-peskine-arm f77a6ac
Fix indentation
gilles-peskine-arm 6a3dd89
Improve alignment in comments
gilles-peskine-arm adad813
psa_key_slot_is_external exists. Use it.
gilles-peskine-arm 725f22a
Bug fix: save the driver's persistent data in destroy_key
gilles-peskine-arm 60450a4
Improve comments
gilles-peskine-arm 2e0f388
Don't explicitly dereference function pointers
gilles-peskine-arm 0c3ae1f
Improve documentation of SE driver persistent state
gilles-peskine-arm 340b127
psa_destroy_se_key: explain why the error is NOT_PERMITTED
gilles-peskine-arm 4aea103
Bug fix: don't start a transaction for non-SE keys
gilles-peskine-arm f9bb29e
Add boilerplate to recover a transaction during init
gilles-peskine-arm 2ea06fd
Improve documentation of transaction storage
gilles-peskine-arm 66be51c
If starting a transaction fails, wipe the transaction data
gilles-peskine-arm File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.