/ / Javaカードの暗号化/復号化(RSA)を高速化する方法 - パフォーマンス、暗号化、rsa、javacard

どのようにJavaカードの暗号化/復号化(RSA)のスピードアップ - パフォーマンス、暗号化、rsa、javacard

私はすでにJavaカードアプレットを開発しました。それは暗号化のためにRSAを使用しています。私が知っているのは、RSA暗号化/復号化をJavaのカードで高速化する方法があることを知りたがっています。理由は、RSA 2048を使用したときにRSA 512または1024よりも時間がかかります。

ありがとう SSV

回答:

回答№1は5

RSAは本質的に遅く、より大きな鍵長を使用すると遅くなります。しかし、RSAの操作を高速化するためにできることがあります:

  • パブリック指数を持つ公開鍵を使用する。 1。 4番目のフェルマー数、65537です。値3を持つ公開指数に対して実行できる攻撃がいくつか存在することに注意してください。これは、公開鍵操作の速度を上げるだけです。
  • 使う RSAPrivateCrtKey 中国剰余定理を使用した計算に使用できるパラメータが含まれています。これにより、秘密鍵の操作が高速化されます。

すでに鍵ペアを生成している場合はチップでは、両方のオプションがすでにチップによって持ち上げられている可能性があります。その場合、解空間は空であってもよい。そうすることができるのは、Elliptic Curve暗号に切り替えることです(ただし、公開鍵操作の方が遅い場合もあります)。または、対称アルゴリズムを使用する別のプロトコルに切り替えることです。