/ / Come accelerare la crittografia / decrittografia delle schede java (RSA) - prestazioni, crittografia, rsa, javacard

Come accelerare la crittografia / decodifica di schede java (RSA) - prestazioni, crittografia, rsa, javacard

Ho già sviluppato l'applet java card.usa RSA per la crittografia. Voglio sapere che c'è modo di accelerare la crittografia / decodifica RSA nella java card. La ragione è che quando ho usato RSA 2048 ci vuole del tempo extra rispetto a RSA 512 o 1024.

Grazie SSV

risposte:

5 per risposta № 1

RSA è intrinsecamente lento e rallenta quando si utilizzano lunghezze di chiave maggiori. Ci sono comunque cose che puoi fare per velocizzare le operazioni RSA:

  • Utilizzare una chiave pubblica con un esponente pubblico con pochi bit impostati 1, per esempio. il quarto numero di Fermat, 65537. Si noti che ci sono alcuni attacchi che possono essere eseguiti su un esponente pubblico con valore 3. Questo accelera solo le operazioni con le chiavi pubbliche.
  • usare un RSAPrivateCrtKey questo include i parametri che possono essere usati per i calcoli usando il Teorema del resto cinese. Questo accelera solo le operazioni delle chiavi private.

Se hai già generato una coppia di chiavi sulcarta, è probabile che entrambe le opzioni siano già state rimosse dal chip. In tal caso lo spazio della soluzione potrebbe essere vuoto. L'unica cosa che puoi fare è passare alla crittografia di curve ellittiche (ma anche quella potrebbe essere più lenta per le operazioni con le chiavi pubbliche) o un protocollo diverso usando algoritmi simmetrici.