很多搜索和阅读都没有告诉我capicom.encrypteddata类模块(它是VB6,但回答这个问题无关紧要)是使用2键3DES还是3键3DES。(.Algorithm.Name = CAPICOM_ENCRYPTION_ALGORITHM_3DES)有人知道它使用的是哪一个吗?这些信息的来源也会很有帮助。我怀疑,因为我不认为支持足够高的密钥长度,所以它是2DES。但我还没有找到可以接受的确认。
发布于 2008-10-13 08:31:09
CAPICOM是CryptoAPI之上的一个薄包装器。如果您对EncryptedData.Encrypt()的输出进行解码,您将看到如下所示(它是以专用格式进行ASN.1编码的):
SEQUENCE {
OBJECT IDENTIFIER '1 3 6 1 4 1 311 88 3'
[0] {
SEQUENCE {
OBJECT IDENTIFIER '1 3 6 1 4 1 311 88 3 1'
[0] {
SEQUENCE {
INTEGER 131073
INTEGER 26115
INTEGER 192
OCTET STRING
AA A6 05 4E FA AF 4C 0B
OCTET STRING
3A 22 58 C3 51 D8 91 C8 7B 3C C9 51 9B E7 BA B7
OCTET STRING
84 FA 56 AF 01 FE C9 74
}
}
}
}
}请注意26115。这就是CALG_3DES的值,它是具有三个密钥的3DES的CryptoAPI标识符(具有两个密钥的3DES称为CALG_3DES_112)。192是密钥长度,也匹配三个密钥3DES:
https://stackoverflow.com/questions/193002
复制相似问题