0

Ich muss eine hohe Anzahl von kurzen Nachrichten (30-200b) verschlüsseln. Das Problem bei üblichen Algorithmen wie RSA ist, dass die Größe der verschlüsselten Nachricht im Vergleich zu symmetrischen Verschlüsselungsalgorithmen tendenziell stark zunimmt.Öffentlicher Schlüssel Verschlüsselungsalgorithmus für Kurznachrichten

Idealerweise shoud das Kryptosystem erreichen:

  • Asymmetrische
  • Größe der verschlüsselten Nachricht höchstens 25% länger als die ursprüngliche
  • sein muss
  • schnelle Verschlüsselung und Entschlüsselung sein sollte
  • Es ist kein Problem, wenn nach einer gewissen Arbeit einige Nachrichten entschlüsselt werden
  • Aber privater Schlüssel muss nicht so leicht gefunden werden
  • Es wäre ve gut, wenn es in den meisten gängigen Sprachen

Die einzige Lösung, die ich bis jetzt ein bekannter Algorithmus mit festen Implementierungen ist gefunden wird RSA mit kurzen Tasten (64 Bit), aber ich frage mich, was ein besserer Ansatz könnte sein.

+1

Check out Curve25519 – samgak

+0

@samgak Ich guck mal! – sinuhepop

+2

* "Die Größe der verschlüsselten Nachricht darf höchstens 25% länger sein als das Original" * - Wenn Sie dies veröffentlichen wollen, dann sind die Chiffretexte schon länger, weil Sie sie mit etwas wie Base64 kodieren müssen, das hat einen Anstieg von 33%. Dies gilt auch dann, wenn die Verschlüsselung selbst keinen Auftrieb hat. Sie können formatbewahrende Verschlüsselung betrachten, aber es ist nur symmetrisches AFAIK. –

Antwort

2

Wenn Sie sicher Sende „eine große Anzahl von Kurznachrichten,“ dann, was ich empfehlen würde, ist, dass Sie die Nachrichten über eine VPN-Verbindung senden und digitale Zertifikate zu verwenden diesen Link zu sichern. Public-Key-Verschlüsselungstechniken werden während des anfänglichen Handshakes verwendet, um einen zufälligen symmetrischen "Sitzungsschlüssel" für die nachfolgende Übertragung auszuhandeln ... und all dies (!) ist für die beiden Anwendungen "gnädig und vollständig unsichtbar" möchte reden. Sie übertragen einfach unverschlüsselte Daten von einer IP-Adresse zu einer anderen und automatisch wird die Übertragung tatsächlich sicher verschlüsselt.

Von Zeit zu Zeit verhandelt VPN einen neuen Sitzungsschlüssel neu. Eine andere sinnvolle Alternative ist die TLS, Verschlüsselungstechnologie hinter https Websites.

Kurz gesagt: "sichere der Kanal" mit PKI-Techniken, so dass Sie dann sicher Daten zwischen den beiden Parteien ohne weiteren Aufwand oder Komplexität ihrerseits übertragen können.

+0

Eigentlich möchte ich diese Nachrichten nicht * übertragen *. Alice muss sie in öffentlichen Medien wie einer Webseite veröffentlichen, und Bob muss sie entschlüsseln. – sinuhepop

+0

In diesem Fall schlage ich vor, dass die hinzugefügte "Nutzlast" des Schlüsselinhalts in den Dateien einfach ein Preis ist, der für die Vertraulichkeit bezahlt werden muss. –