Guten Abend! Wie ich bereits im Beitrag "[C++] Primzahlen Tests" erläutert habe, beschäftige ich mich aktuell im Rahmen meiner Telematik-Vorlesung mit verschiedenen Verschlüsselungsverfahren und möchte nun das eine oder andere davon implementieren. Zuerst dachte ich daran das RSA-Verfahren zu implementieren, was ich später wohl auch machen werde, jedoch würde mich vor allem interessieren, wie und mit welchem Verfahren ich Dateien verschlüsseln kann. Mit RSA ist das zwar auch möglich, macht aber meiner Meinung nach wenig Sinn, da ich keinen öffentlichen Schlüssel benötige. Wichtig ist, dass das Verfahren wirklich sicher ist und auch die Datei-Informationen mit verschlüsselt werden. Letztendlich soll das ganze ähnlich wie TrueCrypt oder andere Programme funktionieren, die eine Reihe von Dateien und Ordnern in einem Container verpacken und diesen dann verschlüsseln. Wird ein Schlüssel angegeben, wird der Inhalt des Containers für die Laufzeit des Programms entschlüsselt und die Dateien und Ordner ganz normal im Filesystem integriert. Freue mich auf eure Antworten. Liebe Grüße, Andreas
Dateien kannst du unter Linux nach belieben verschlüsseln, etwa mit GPG oder wahrlich irgendeinem anderen Verfahren. Steckst du nun ein Dateisystem in eine Datei, kannst du die Datei und damit das ganze enthaltene Dateisystem ver- und entschlüsseln und irgendwo einhängen.
RSA-Verschlüsselung ganzer Dateien ist immer absoluter Blödsinn. Selbst wenn man asymmetrisch will. Dann verschlüsselt man die Datei dennoch symmetrisch mit einem generierten Schlüssel und verschlüsselt diesen Schlüssel asymmetrisch.
Danke euch beiden für eure Antworten. Sven P. schrieb: > Dateien kannst du unter Linux nach belieben verschlüsseln ... Das ist mir sehr wohl bewusst und ich verwende auch bereits GPG, allerdings geht es hier ja um eine Übung. Ich möchte damit einen tieferen Einblick in die Kryptographie bekommen und meine C++-Kenntnisse festigen. Mario schrieb: > RSA-Verschlüsselung ganzer Dateien ist immer absoluter Blödsinn. Das weiß ich und deswegen habe ich ja auch nach einem anderen Verfahren gefragt. Liebe Grüße, Andreas
du suchst eine Rechercheanleitung? -> AES, Blowfish, http://de.wikipedia.org/wiki/Kategorie:Blockverschl%C3%BCsselung ; Miller-Rabin, http://de.wikipedia.org/wiki/Primzahltest
Mahlzeit, symmetrisch ist aktuell AES NIST-Standard, unterstützt Blocklängen von 128, 192 und 256 Bit, erfolgreiche, realistische Angriffe gegen AES sind bisher keine bekannt. Aber: Ich rate DRINGEND von einer eigenen Implementierung ab, wenn es wirklich sicher sein soll. So ist z.B. Schoolbook-RSA unsicher und leicht zu brechen, es müssen weitere Maßnahmen ergriffen werden um ihn gegen Angriffe zu schützen. Übrigens nutzt man für die Verschlüsselung großer Datenmengen in jedem Fall symmetrische Verschlüsselung, RSA und Co. sollten nur verwendet werden um Schlüssel für symmetrische Verschlüsselungsverfahren sicher auszutauschen.
Nachtrage: Das hier ist übrigens die Bibel in Sachen Krypto ;) http://www.cacr.math.uwaterloo.ca/hac/
Schöner Link, das Buch sogar als pdf zum Downloaden :-) Aber die wirkliche Bibel ist "Applied Cryptography" von Bruce Schneier, dem Kryptogott und Entwickler von Blowfish, Twofish usw. http://www.amazon.com/Applied-Cryptography-Protocols-Algorithms-Source/dp/0471117099 Ganz lustig dazu auch die "Schneier Facts": http://www.schneierfacts.com/
Wenn du den AES implementieren willst, schau dir den Artikel unbedingt an. http://www.codeplanet.eu/tutorials/cpp/51-advanced-encryption-standard.html Dort findest du alles wissenswerte über den AES!
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.