Add CHANGELOG for OPK v19.0 release
Change-Id: I1fd79428c357b8e0f9fd2a4ec857d7b3489eea64
This commit is contained in:
committed by
Robert Shih
parent
4c9a8e32a5
commit
d89faef0f3
@@ -2,6 +2,66 @@
|
||||
|
||||
[TOC]
|
||||
|
||||
## [Version 19.0][v19.0]
|
||||
|
||||
This is the initial release of OPK v19.0, which implements OEMCrypto v19.0.
|
||||
|
||||
### OEMCrypto v19
|
||||
|
||||
All features outlined in the v19 Delta Document are supported in this release:
|
||||
|
||||
- License Release
|
||||
- Multiple Entitled Sessions per License Session
|
||||
- Provisioning 4 Manufacturing Updates
|
||||
- Support License Protocol v2.2
|
||||
- Derived Key Context Computed Inside OEMCrypto
|
||||
- Refactor OEMCrypto_SetDecryptHash
|
||||
|
||||
### Other changes
|
||||
|
||||
- OEMCrypto_BuildInformation() previously produced JSON that had a trailing
|
||||
comma after the last entry. This passes some JSON parsing libraries such as
|
||||
`jsmn`, but is ultimately incorrect. This has been fixed.
|
||||
- Changed key sanity checks in the wtpi_reference code to be constant time.
|
||||
- Memory containing keys is now erased after the keys are used.
|
||||
- `FACTORY_BUILD_ONLY` macro added to separate OEMCrypto functions that are only
|
||||
intended to be used in the factory, eg OEMCrypto_InstallKeyboxOrOEMCert().
|
||||
- Added support for Provisioning 4 alternative signing models. Keybox-based
|
||||
signatures are fully supported, and externally generated X509 signatures are
|
||||
planned for a future update.
|
||||
- Restrict OEMCrypto_GenerateRSASignature() to only allow Cast certificates.
|
||||
|
||||
### OP-TEE port changes
|
||||
|
||||
- Added an option to generate an ECC keypair instead of RSA. Use the
|
||||
`OEMCRYPTO_GEN_KEYPAIR_TYPE` make variable at compilation time to specify which
|
||||
method to use.
|
||||
- Modified the key derivation step (device unique key -> asymmetric key pair)
|
||||
in Provisioning 4 CoseSign1 operations to use a NIST standard KDF process.
|
||||
Implementers can opt out of this by using the `DEVICEKEY_NON_NIST_KDF` make
|
||||
variable during compilation, which may be useful for existing devices in the
|
||||
field that are upgrading from older OPK versions tha used a non-standard key
|
||||
derivation.
|
||||
- Renamed `der_parse` files to `crypto_util_*` to better reflect their purpose.
|
||||
- Renamed `wtpi_persistent_storage_layer2.c` to
|
||||
`wtpi_persistent_storage_layer1.c` to better reflect its purpose.
|
||||
- Removed `TEE_DATA_FLAG_OVERWRITE` flag from persistent storage read
|
||||
operations, to avoid accidentally creating empty files and overwriting existing
|
||||
files when encountering an error.
|
||||
- Fixed bug in `WTPI_GetBootCertificateChain()` where ECC keys that are smaller
|
||||
than 32 bytes cause an error during parsing.
|
||||
- Update OEMCrypto_GetDeviceInformation() implementation to include all
|
||||
required fields to pass device info validation tests. Field contents still need
|
||||
to be filled in by implementers for platform specific parameters such as device
|
||||
brand, bootloader unlock state, etc.
|
||||
|
||||
### Known issues
|
||||
|
||||
- The OP-TEE port does not yet support Provisioning 4 stage 2, or Provisioning
|
||||
4 alternate signing models. Implementers may choose to write their own
|
||||
functionality for these features using the BoringSSL-based wtpi_reference as
|
||||
a guide.
|
||||
|
||||
## [Version 18.4][v18.4]
|
||||
|
||||
Version 18.4 includes the reference implementation in OPK to support MediaCAS,
|
||||
@@ -479,3 +539,4 @@ Public release for OEMCrypto API and ODK library version 16.4.
|
||||
[v18.1]: https://widevine-partner.googlesource.com/oemcrypto/+/refs/tags/v18.1
|
||||
[v18.3]: https://widevine-partner.googlesource.com/oemcrypto/+/refs/tags/v18.3
|
||||
[v18.4]: https://widevine-partner.googlesource.com/oemcrypto/+/refs/tags/v18.4
|
||||
[v19.0]: https://widevine-partner.googlesource.com/oemcrypto/+/refs/tags/v19.0
|
||||
|
||||
Reference in New Issue
Block a user