The Crypto API currently only supports importing a key where the caller specifies the key type. The required format for the key is typically just the key value itself.
There are numerous applications where a key is provided to the application, embedded in data that also provides key type and usage information. Providing a standard API to decode data from common key formats into a key would benefit application developers. Both by removing the effort to implement, or integrate, code that does this; and reducing the risk of incorrect (vulnerable) implementations of this code.
Key formats that are worth considering for such an API include those defined in:
- X.509
- COSE (CBOR Object Signing and Encryption): see RFC 8152 §13
Are there any others?
The Crypto API currently only supports importing a key where the caller specifies the key type. The required format for the key is typically just the key value itself.
There are numerous applications where a key is provided to the application, embedded in data that also provides key type and usage information. Providing a standard API to decode data from common key formats into a key would benefit application developers. Both by removing the effort to implement, or integrate, code that does this; and reducing the risk of incorrect (vulnerable) implementations of this code.
Key formats that are worth considering for such an API include those defined in:
Are there any others?