Welche RSA max Blockgröße soll codiert werden?

8

Welche RSA Max Blockgröße, die ich in einem Zyklus verschlüsseln kann, und welche maximale Geschwindigkeit des RSA-Algorithmus mit 4096 Schlüsselgröße?

    
lebron2323 06.08.2012, 04:35
quelle

1 Antwort

13

Nach den aktualisierten Lenstra-Gleichungen, die auf dieser Site verfügbar sind, wird die Sicherheitsstufe eines 4096-Bit-RSA-Schlüssels mit einem kryptografischen Hashwert abgeglichen mindestens 248 Bits lang, zum Beispiel SHA-256.

Wenn Sie RSA OAEP verwenden (und Sie sollten), ist die Menge der Daten, die Sie höchstens verschlüsseln können, modulus size - 2 - 2*hash size , also 446 Bytes.

Mit RSA PKCS # 1 v1.5 können Sie höchstens modulus size - 11 bytes verschlüsseln, aber RSA PKCS # 1 v1.5 bietet weniger Sicherheit (es ist nicht nachweisbar sicher und die minimale Anzahl von zufälligen Füllbytes sollte erweitert werden zu mindestens 16 Bytes).

Wenn Sie mehr Daten verschlüsseln müssen, sollten Sie sie nicht einfach zerhacken und RSA mehrfach in jedem Block verwenden. Das ist eine Sicherheitslücke. Sie müssen einen anderen Ansatz wählen, genauer gesagt:

  1. Wählen Sie einen zufälligen symmetrischen 128-Bit-Schlüssel.
  2. Verwenden Sie eine authentifizierte Betriebsart, um Ihre Daten zu verschlüsseln (z. B. AES-128 GCM).
  3. Verschlüsseln Sie den symmetrischen Schlüssel mit RSA OAEP.

RSA-Verschlüsselung (im Gegensatz zur Entschlüsselung) ist ziemlich schnell, aber die Zeit hängt wirklich von der Bibliothek und von der Plattform ab, die Sie verwenden. Eine Referenz finden Sie auf der Website der cryptopp-Bibliothek .

    
SquareRootOfTwentyThree 06.08.2012, 05:53
quelle

Tags und Links