2013-07-17 145 views
1

我刚刚发现Visa公钥有1408位的奇数长度。另一方面,发现大多数加密库(OpenSSL,Bouncy Castle,MS加密API,Java Card)需要固定密钥长度,如1024或2048.我可以看到理论上RSA密钥可以是任意长度,但我不明白: 1)为什么签证使用奇怪的密钥长度 2)上述哪一个库可以使用1408位密钥 谢谢!Visa RSA密钥长度

回答

2

1408密钥是Visa的EMV公钥基础设施的一部分。它基本上与智能卡(卡上芯片)一起使用。由于卡的处理能力(通过片上RSA加速器),因此选择了密钥大小。实际上有一个密钥的时间表。 1408密钥设置为2022年12月31日过期.1024密钥已过期。

根据emvco.com faq他们不使用x.509而是使用ISO/IEC 9796-2数字签名算法。 Bouncy Castle有一个9796-2签名者(org.bouncycastle.crypto.signers.ISO9796d2PSSSigner)。卡片联系人有一个库和tutorial

+0

嗨, 非常感谢您的回应。您能否解释一下,使用1408位密钥的RSA加密操作(验证签名)是否适用于大多数加密库。我可以看到,ISO 9796允许部分数据嵌入签名中,但模数仍然是1408位,所以我不确定这是否可行。我认为要么我在这里丢失了某些东西(即模数的一部分包含签名),要么我必须尝试。 – user2593018