Prinzipiell vergrößert kein gängiges Verschlüsselungsverfahren die Menge an Daten, es vergrößert nur die beobachtete Entropie. Die Datenmenge kann sich also nur bei irgendwelchen Vor- oder Nachbearbeitungsschritten zusätzlich zur Verschlüsselung verändern.
Die einzige notwendige Vorbearbeitung ist das Auffüllen der Daten in irgendeiner definierten Form auf ein vielfaches der Blockgröße, sofern man eine Blockverschlüsselung verwendet. Übliche Blockgrößen sind heutzutage aber in der Regel nicht mehr als 512 Bit. Dabei können sich die Daten also maximal um 63 Bytes verlängern.
Zusätzlich ist es immer sinnvoll, Daten vor der Verschlüsselung zu komprimieren, die Länge also erstmal zu reduzieren, das erschwert nämlich diverse Angriffe auf die Verschlüsselung.
Wenn man allerdings mit konstanten, fest verdrahteten symmetrischen Schlüsseln arbeitet, so bietet das ohnehin keinerlei wirkliche Sicherheit und man kann die Verschlüsselung auch gleich bleiben lassen.
Ein sehr weit verbreitetes symmetrisches Verschlüsselungsverfahren ist zum Beispiel Rijndael, auch bekannt als AES. Das ist soweit ich weiß in der Standardbibliothek von Java vorhanden. Bei Perl gibt es in der Standardbibliothek soweit ich weiß gar keine Verschlüsselungsfunktionen, aber es gibt natürlich Module dafür, zum Beispiel
Crypt::Rijndael.
Last edited: 2011-11-10 22:05:07 +0100 (CET)
When C++ is your hammer, every problem looks like your thumb.