Algorithmus asymmetrische Ver/Entschlüsselung
-
Hi,
ich benötige für ein Projekt eine asymmetrische Verschlüsselung. Da ich das Rad nicht noch mal komplett neu erfinden wollte, habe ich mich mal nach existierenden RSA-Lösungen umgesehen, aber nichts wirklich brauchbares gefunden:
- es gibt mordsgroße Crypto-Libs, die alles mögliche an Checksummen- und Verschlüsselungsalgorithmen mitbringen, aus denen sich RSA aber nicht herausschälen lässt
- wenn ein Projekt dann doch mal ausschließlich RSA kann hängt es gewiss von irgend einer externen, nicht portablen Bibliothek ab
Deswegen meine Frage: kennt irgend jemand eine Implementierung einer asymmetrischen Verschlüsselung (es muss nicht RSA sein), die keine externen Abhängigkeiten besitzt und trotzdem mit schön großen Schlüsseln klar kommt?
-
probier mal das: http://www.cs.umbc.edu/~stephens/crypto/HOMEWORK/RSAGurski.c
-
Kenne ich ... verwedet leider libgmp, eine nicht eben kleine und kaum unter Windoze zu integrierende Lib.
-
ElGrey schrieb:
- es gibt mordsgroße Crypto-Libs, die alles mögliche an Checksummen- und Verschlüsselungsalgorithmen mitbringen, aus denen sich RSA aber nicht herausschälen lässt
Das hat seine Gründe. Ohne Dinge wie Padding und ähnliches ist gerade RSA ziemlich empfindlich gegenüber bestimmten Angriffen (siehe z.B. http://scienceblogs.com/goodmath/2009/01/cryptographic_padding_in_rsa.php).
ElGrey schrieb:
- wenn ein Projekt dann doch mal ausschließlich RSA kann hängt es gewiss von irgend einer externen, nicht portablen Bibliothek ab
GMP ist so weit verbreitet, ich kann mir kaum vorstellen, dass das unter Windows so schwer einzubinden sein soll. GMP ist ja nur für die großen Zahlen zuständig; eine RSA-Bibliothek möchte eben auch nicht das Rad neu erfinden.
Wenn du eine RSA-Implementierung ohne externe Abhängigkeiten suchst, könntest du bei Sprachen wie Python, Haskell oder Lisp vielleicht eher fündig werden als bei C oder C++. Denn diese Sprachen haben beliebig große Zahlen schon eingebaut.