2013-07-17 96 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