密钥协商介绍及算法规格
为了避免恶意第三方获取到保密信息,密钥本身是不可以直接在设备间传输的。一般情况下,会采取密钥协商的方式,安全地在双方(或多方)间共享密钥。密钥协商只会传输密钥的公钥部分,私钥仍存留在设备内,以保护数据的安全性和机密性。
两台设备间进行密钥协商,双方各准备一个非对称密钥,并互换非对称密钥的公钥,以对端公钥与己端私钥协商出一个密钥,该密钥在两台设备相同。
- 轻量级智能穿戴不支持密钥协商功能。
- 使用现有密钥别名作为协商结果密钥别名会把现有密钥覆盖。
从API 23开始支持群组密钥特性。
支持的算法
以下为密钥协商支持的规格说明。
| 算法 | 备注 | 协商的密钥长度 | 协商密钥可用算法 | API级别 |
|---|---|---|---|---|
| ECDH | 协商密钥类型为ECC类型密钥。 | 256 | AES/256 HMAC/256 | 8+ |
| DH | 协商密钥类型为DH类型密钥。 | 2048 | AES/128/192/256 HMAC/8-1024 SM4/128 DES/64 3DES/128/192 | 8+ |
| X25519 | 协商密钥类型为X25519类型密钥。 | 256 | AES/256 HMAC/256 | 8+ |