One-time-pad-Verschlüsselung mit hardencrypt

January 12, 2008

Ein kleines Howto zu dem Programm hardencrypt, dass es einem ermöglicht Dateien mit der One-time-pad-Methode zu verschlüsseln.

1. Programm hier herunterladen(win32-executable-Direktlink) , entpacken und die Datei GenKeyFile.exe per Doppelklick starten, dieses Fenster öffnet sich, wobei wir zuerst nur den obersten Bereich bis “Enter number of keyfiles to make:” sehen.

2. Wir erstellen einen Keyfile, tippen also 1 ein und drücken Enter

3.Überlegen uns einen netten Namen für den keyfile, völlig beliebig,einfach irgendetwas(vielleicht nicht unbedingt keyfile 😉 )

4.und kommen zum nächsten Schritt: hier sollen wir den Pfad zu einem seed-file angeben, aus dem dann der keyfile berechnet wird. Der seed-file muss größer sein, als der keyfile, der keyfile größer oder gleich der zu verschlüsselnden Datei! Also nehmensie ruhig eine große Datei. Ebenso wichtig ist, dass diese Dateimöglichst “zufällig” ist, dies erhöht die Sicherheit des keyfiles! Sie können zum Beispiel per Mikro einen eigenen .wav aufnehmen, in dem sie eine halbe Minute eine Wikipedia-Artikel vorlesen.Bei mir besteht der Keyfile aus mehreren Dateien dieser Art(eigener .wav-file, word-dokumente,..), die in einem 7z.-Archiv zusammengefasst sind.

Haben sie die Datei erstellt, so geben sie den Pfad zu ihr an und drücken Enter.

5. Jetzt werden sie noch nach der Größe des Keyfiles gefragt(in Bytes!), geben sie eine Zahl ein, die gleich oder kleiner ist als die Größe des Seed-Files und bestätigen sie mit Enter.

6.Der Keyfile wird jetzt erstellt und findet sich jetzt im hardencrypt-Verzeichnis.

Verschlüsselung:

7.Starten sie jetzt HardEncrypt.exe

8.Geben sie den Pfad zur zu verschlüsselnden Datei ein, bei mir das Bild blowfish10.jpg, Enter

9.Den Pfad zum Keyfile(ich habe ihn hier aus dem hardencrypt-Verzeichnis heraus in das C:\-Verzeichnis verschoben), Enter

10. Und den Pfad+Namen der Datei, nachdem sie verschlüsselt wurde(hier “encrypted”)dieOriginal-Datei bleibt bestehen!), Enter

11. Jetzt ist die Datei verschlüsselt!

Entschlüsselung:

1.Starten sie HardDecrypt.exe:

2.Geben sie Pfad zur und Namen der verschlüsselten Datei an, Bestätigen sie mit Enter

3.Dann pfad und Name des keyfiles mit dem die Datei verschlüsselt wurde

4. und zum Schluss noch den Namen(+Pfad), den die Datei haben soll, nachdem sie entschlüsselt wurde(hier “decrypted”,die verschlüsselte Datei bleibt bestehen!)

5.Die entschlüsselte Datei kann jetzt wieder ganz normal verwendet werden(trägt hier im Beispiel keine Endung,aber wenn man ein Photobearbeitungsprogramm auswählt, öffnet es sich ohne Problem als .jpg-Bild, das es ja auch war)

Wichtig:

Zufallsdaten für Keyfile verwenden

-Keyfile sicher und vor allem getrennt von der verschlüsselten Datei aufbewahren

-ihn nicht keyfile nennen 😉

Zusatz:

Trotzdem würde ich hardencrypt nicht uneingeschränkt empfehlen, der Sourcecode liegt zwar offen, aber ich konnte nicht in Erfahrung bringen, ob jemand auf diesen schon mal einen genaueren Blick geworfen hat, ebenso sind mir die Programmierer selber, die hinter dem Projekt stehen, völlig unbekannt. Also es sollte sicher sein, aber eine Garantie kann ich nicht geben. Ich würde stattdessen Truecrypt empfehlen, in der Theorie zwar schwächer, da reguläre, symmetrische Verschlüsselung, aber in der Praxis genauso wenig zu “knacken”.


blowfish advanced cs: Ein Verschlüsselungstool für Windows

January 12, 2008

Blowfish Advanced CS ist ein kleines, aber feines Verschlüsselungstool für Windows( von mir nicht getestet für Vista und Win 95), mit dem man einzelne Filesmit einer Vielzahl von Algorithmen verschlüsseln kann(Blowfish, Twofish, AES, Serpent,…)

Nach dem Entpacken des Archivs, (MD5: e1 40 82 3e ec 62 34 0f 1b 5f 3c b4 0e 63 ca 1f )

geht die Installation wie üblich von statten,:

der Installationspfad ist natürlich frei wählbar, danach wird das Programm installiert

und nach dem Klicken auf Finish automatisch gestartet .

Ist das Programm gestarte, so sieht man im Hauptfeld eine Dateiliste im Windows-Explorer-Format, aber zuerst wollen wir unter “Tools -> Language” die Sprache auf Deutsch stellen und unter “Extras-Optionen-Sicherheit” die Vernichtungmethode auf 3x oder 35x. Hier kann man auch den Verschlüsselungsalgorithmus ändern, aber an sich spricht nichts gegen Blowfish.#

Doch nur zurück zum Hauptfenster, mit “Rechtsklick auf eine Datei-> Verschlüsseln” öffnet sich das folgende Fenster:

Tippen sie ihr Passwort ein und eventuell noch einen anderen Zielpfad(standardgemäß wird die verschlüsselte Datei im gleichen Verzeichnis erstellt wie die ursprüngliche) und klicken sie auf “Ok”.

Nachdem sie ihr Passwort ein zweites Mal eingegeben haben, wird die Datei verschlüsselt und 3/35mal überschrieben:

Entschlüsseln funtkioniert nach dem gleichen Prinzip:

Rechtsklick auf Datei, Entschlüsseln auswählen, hier

mit “Ja” bestätigen, im nächsten Fenster

Passwort und eventuell Zielpfad angeben, mit “Ok” bestätigen und die entschlüsselte Datei findet sich im entsprechenden Verzeichnis. Die verschlüsselte Datei wird aber bei diesem Verfahren nicht gelöscht, dies muss, wenn gewünscht, per Hand geschehen.


Howto: Hidden Truecrypt volume Linux

January 2, 2008

That is  more complicated than just creating a normal volume, especially if you do not know the correct commands, so I will give them to you here:

The first command(we will do all in one step, therefore the &&):

truecrypt –type normal -c volume.tc && truecrypt –type hidden -c volume.tc

As usual, you have to give the path to the volume, so an example could be:

truecrypt –type normal -c /home/usr/volume.tc && truecrypt –type hidden -c voulme.tc

Now a normal truecrypt volume will be created:

If you never did this before, have a look at my other howtos…

Filesystem:
1) FAT
2) None
Select [1]:

Enter volume size (bytes – size/sizeK/sizeM/sizeG): 5M

Hash algorithm:
1) RIPEMD-160
2) SHA-1
3) Whirlpool
Select [1]:

Encryption algorithm:
1) AES
2) Blowfish
3) CAST5
4) Serpent
5) Triple DES
6) Twofish
7) AES-Twofish
8) AES-Twofish-Serpent
9) Serpent-AES
10) Serpent-Twofish-AES
11) Twofish-Serpent
Select [1]:

Enter password for new volume ‘/home/philipp/voulme.tc’:
Re-enter password:

Enter keyfile path [none]:

TrueCrypt will now collect random data.

To enable mouse movements to be used as a source of random data,
please do one of the following:
– Run TrueCrypt under administrator (root) account.
– Add read permission for your user to device /dev/input/mice.

Please type at least 320 randomly chosen characters and then press Enter:
…(use strong random data, so RTzi*ZE$§E§Jghde and not gggggg!!!!)

Done: 5.00 MB  Speed: 2.05 MB/s  Left: 0:00:00
Volume created
.

And after that, a hidden volume, using the same scheme, be aware that the hidden volume has to be smaller than the normal volume!

Filesystem:
1) FAT
2) None
Select [1]:

Enter volume size (bytes – size/sizeK/sizeM/sizeG): 3M

Hash algorithm:
1) RIPEMD-160
2) SHA-1
3) Whirlpool
Select [1]:

Encryption algorithm:
1) AES
2) Blowfish
3) CAST5
4) Serpent
5) Triple DES
6) Twofish
7) AES-Twofish
8) AES-Twofish-Serpent
9) Serpent-AES
10) Serpent-Twofish-AES
11) Twofish-Serpent
Select [1]:

Enter password for new volume ‘/home/philipp/volume.tc’:
Re-enter password:

Enter keyfile path [none]:

TrueCrypt will now collect random data.

To enable mouse movements to be used as a source of random data,
please do one of the following:
– Run TrueCrypt under administrator (root) account.
– Add read permission for your user to device /dev/input/mice.

Please type at least 320 randomly chosen characters and then press Enter:

Done: 3.00 MB  Speed: 2.92 MB/s  Left: 0:00:00

Now you have a hidden volume inside a normal volume and it depends on the password you give, which volume will be mounted:

truecrypt -M “rw,sync,utf8,uid=$UID,umask=0007” /home/usr/volume /home/usr/5MB

Now you will be asked for your volume password (or, at first for your root password and then for your volume password):

Enter password for ‘/home/usr/volume.tc’:

If you now give the password for the normal volume, the normal volume will be mounted, if you give the hidden volume’s password, the hidden one will be mounted


Steganography and Linux: A short steghide howto

December 27, 2007

Here I will how to hide a file, encrypted and passwordprotected in anonther file, for example a picture.

First you have to install “steghide”, use synaptic or whatever you want…

Steghide can use *.bmp,*.jpg, *.wav und *.au-files to hide data. I would recommend *.jpg, because all the other formats are quite unusual today in most pc-enviremonts(you want send a friend a song in *.wav-format and you certainly do not store your holiday pictures as *.bmps…)

To hide a file you use this command in the terminal(there is no gui for steghide):

steghide embed -cf picture.jpg -ef secrettext.txt

Of course you have to give the path to both files, so an example would be:

steghide embed -cf /home/usr/pictures/picture.jpg -ef /home/usr/secrettext.txt

Now steghide will ask you for a password and then embed the file secrettext.txt in the file picture.jpg. And it will encrypt the file with AES, so if you do not know the password you just will not know that there is any file stored in the picture…

Then you just get the message(sry for german):

steghide: Mit diesem Passwort konnten keine Daten extrahiert werden!
(With this password no data could be extracted)

Of course the size of the file you can store in another file is limited, if you just want to know how big the file can be, enter:

steghide info picture.jpg

(of course yo have, as said above, to give the path, so for example steghide info /home/usr/pictures/picture.jpg)

and steghide will tell you the maximum filze size!

With the command

steghide extract -sf picture.jpg

you get all your data back, just enter your password and the hidden file will be stored in the same folder as the picture…

Update: If this howto is not working for you, you probably have to use sudo in front of all commands! Or sudo -i as the first command, so you get sudo(admin)-rights for everything you enter in this terminal…


Fully encrypted

December 26, 2007

-The personal computer’s hdd is encrypted by using the alternatecd of Ubuntu, where you can configure encryption during installation (just choose “Guided – use entire disk and set up encrypted LVM”, the whole disk will be encrypted! all data stored at that time will be lost! so make a backup))

-My 500GB and my 250GB  external hard drive are both encrypted with AES using Truecrypt

So all data is encrypted!


Relakks unter Ubuntu(Gnome)

December 26, 2007

Folgende Pakete müssen installiert sein:Network Manager, vpnc, network-manager-vpnc, network-manager-pptp, pptp-linux

Dazu kann man Synaptic-Paketverwaltung benutzen:

Nun klickt man auf das Symbol des Netzworkmanagers (nm-applet, Network Manager, normale rechte obere Ecke, blaube Balken oder Kabelsymbol) und klickt auf “VPN- Verbindungen, dort dann auf “VPN konfigurieren”

“Hinzufügen”

“Vor”

Verbinden mit “PPTP-Tunnel”(nicht Compatible Cisco…!!!)

Dann:

Unter Verbindung:

Verbindungsname: “Relakks”

Typ: Windows VPN (PPTP)

Gateway: pptp.relakks.com

Dann wechselt man oben auf Authentifikation:

Dort setzt man nur einen Haken bei “EAP verweigern”, sonst nirgends!

Und wechselt dann auf Verschlüsselung und Komprimierung:

Hier nur den Haken bei “128-bit MPPE-Verschlüsselung verlangen” setzen

Und wechselt zu PPP-Optionen:

Haken bei “Peer-DNS verwenden” setzen und bei “Alleiniger Gerätezugriff (UUCP-ähnliche Sperre)”

MTU 1400 (üblicherweise als einziges abzuwandeln)
MRU 1416
lcp-echo-failure 10
lcp-echo-interval 10

Routing:

Haken bei “DNS durch Tunnel ermitteln” setzen…

Jetzt “Anwenden” und dann wieder im Network-Manager die VPN-Verbindungen auswählen, auf Relakks klicken, Benutzername und Passwort eingeben und Ubuntu stellt die Verbindung her. Von Fehlermedlungen nicht entmutigen lassen, liegt normalerweise an Relakss(“VP-Verbindung konnte nicht hergestellt werden”, sondern einfach nochmal probieren, eventuell etwas später…


Relakks and Ubuntu(Gnome):

December 26, 2007

Ubuntu 7.10 Gutsy Gibbon, using Network Manager:

You have to install the following packages(programms and libaries), you can use synaptic oder terminal:

-Network Manager (should already be installed)

-vpnc

-network-manager-vpnc

-network-manager-pptp

-pptp-linux

Normally, with Network Manager installed, you shuld see some health bar or a “plug”-symbol in the right upper corner auf your desktop.

If you left-click on it, you will see your normal connections,… and beneath that “VPN-connections”

I first wanted to provide screenshots, but i have the german Ubuntu-version and so I think it would be more confusing than useful…

So you go to “VPN-coonections” and then click on “Configure VPN” ,

choose under “connect with” pptp-tunnel not Compatible Cisco…, otherwise it won’t work!

Then a new window opens, where you can configure you’re vpn-connection:

Under connection you should choose:

Connection Name: Relakks
Type: Windows (VPN) PPTP
Gateway: pptp.relakks.com

Under authencication just check “Refuse EAP”, nothing else and under “Compression and encryption” just

“Require 128 bit MPPE encryption”

Under PPP-Options you should check “Use Peer DNS” and ” Exclusive Device Access (UUPC Style lock)” and

MTU 1400
MRU 1416
lcp-echo-failure 10
lcp-echo-interval 10

Under routing check check “Peer DNS through tunnel”

Normally you should not even have to restart, just go to “VPN-connections” and click on “Relakks”, type in username and password and there you go…

Wireless connections works fine for me, but i’ve heard of many people having problems, i’m sorry, but i won’t be able to help you there…

Sometimes you receive the error message:

“VPN Connection failed”, this has normally nothing to do with your configurations, but with Relakks itself, who is often overburdened(you cannot expect anything else for only 5 euros a month). Just try again and again, an hour later,…, this error never occured to me in the morning, but only in the evening, when many people are online!