B.2.3 RC2-CBC-Pad
RC2-CBC-Pad 是 CBC 模式下的 RC2 加密算法 [RFC2268], 具有 RFC 1423 [RFC1423] 中指定的填充操作.RC2-CBC-Pad 具有可变密钥长度 (从 1 到 128 个八位字节), 单独的 "effective key bits" (有效密钥位) 参数 (从 1 到 1024 位), 该参数独立于密钥长度限制有效搜索空间, 以及八个八位字节的初始化向量.
对象标识符 rc2CBC 标识 RC2-CBC-Pad 加密方案:
rc2CBC OBJECT IDENTIFIER ::= {encryptionAlgorithm 2}
在 AlgorithmIdentifier 中与 OID 关联的参数字段应具有类型 RC2-CBC-Parameter:
RC2-CBC-Parameter ::= SEQUENCE {
rc2ParameterVersion INTEGER OPTIONAL,
iv OCTET STRING (SIZE(8)) }
类型 RC2-CBCParameter 的字段具有以下含义:
- rc2ParameterVersion 是 RSA Security Inc. 对 RC2 的 "effective key bits" (有效密钥位) 的专有编码.定义了以下编码:
| Effective Key Bits | Encoding |
|---|---|
| 40 | 160 |
| 64 | 120 |
| 128 | 58 |
| b >= 256 | b |
如果省略 rc2ParameterVersion 字段, 则 "effective key bits" 默认为 32.(这是为了向后兼容某些非常旧的实现.)
- iv 是八个八位字节的初始化向量.