PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : (Turbo) Truecrypt (5) - 60% mehr Speed durch Assembler AES statt C-Code


drmaniac
2008-02-11, 13:38:58
http://andi.neuriem.de/wordpress/

Wer ihm vertraut kann die geänderten Files auch direkt runterladen:

You can download an archive which contains the modified object files here (http://andi.neuriem.de/download/TrueCrypt-aes-in-asm.zip).


Hier ist sein Heise Thread dazu (in deutsch) :

http://www.heise.de/security/news/foren/S-TrueCrypt-selbst-uebersetzt-TurboTrueCrypt/forum-131636/msg-14374020/read/

http://www.heise.de/security/news/foren/S-Re-TrueCrypt-selbst-uebersetzt-TurboTrueCrypt/forum-131636/msg-14379327/read/


Klasse :up:


.

dariegel
2008-02-11, 15:37:38
Sehr eindrucksvoll!

Thunderhit
2008-02-11, 19:17:17
Hoffe, dass er mal eine 64bit exe bereitstellt.

The Cell
2008-02-11, 23:16:09
Und was soll die bringen?

drmaniac
2008-02-12, 09:27:08
Trucrypt unter Vista (64bit) ist eine eigene Version...


@Thunderhit: Er ist sau schnell :D

Schau mal hier :
Re: komplilierte 64bit Version für z.B. Windows Vista Ultimate 64bit
iceman42 (190 Beiträge seit 21.02.01)

drmaniac2 schrieb am 11. Februar 2008 13:55

> Es wäre super super klasse,
> wenn Du dafür auch eine fertig kompilierte Version zur Verfügung
> stellen könntest :)

Ich hab den 64 bit Treiber (truecrypt-x64.sys) übersetzt, kann aber
leider hier nicht prüfen ob er richtig funktioniert.

Könntest du bitte ein Backup von einem existierenden TC Container
(der AES256-XTS) verwendet machen, und anschließend den 64 bit
Treiber testen?

Link ist im Kommentar von meinem Blog.

Das schlimmste was passieren kann ist ein BSOD :) wenn der Treiber
nicht crashed und man kann ein existierendes Volume öffnen, dann
sollte alles funktionieren.

Gruß, Andihttp://www.heise.de/security/news/foren/S-Re-komplilierte-64bit-Version-fuer-z-B-Windows-Vista-Ultimate-64bit/forum-131636/msg-14400617/read/

Kannst du das testen?

Mein Vista 64bit wird nämlich erst in den nächsten Tagen aufgespielt ^^



:


For 64 bit you will need the truecrypt-x64.sys driver. I compiled it for x64, but since I don’t have a 64 bit Windows on this machine, I cannot verify if the code is functioning correctly.
You can download the precompiled x64 driver here (http://andi.neuriem.de/download/TrueCrypt-x64-precompiled.zip). Could someone please perform tests with this driver? You need to overwrite the existing driver in the TrueCrypt and Windows/system32/drivers directory and reboot.
I hope that I did not mess up the calling convention, otherwise it might happen that you will get a BSOD ;-). I recommend to backup your TrueCrypt container before testing this driver!
Please let us know if it is working.
PS: The TrueCrypt benchmarks don’t test the speed of the algorithms in the driver, but only the implementations which are linked into TrueCrypt.exe (x86).

Thunderhit
2008-02-12, 12:49:37
Windows motzt nach dem Reboot, dass der Treiber nicht signiert ist und dann meckert TC, dass der Treiber nicht aktiv ist. Liegt wohl an der erforderlichen Treibersignierung...die kann man zwar bei jedem Boot durch F8 deaktivieren, aber das jedes mal zu machen ist dann doch etwas mühselig :(

drmaniac
2008-02-12, 12:56:04
hm dazu gibt es was im Windows Unterforum hier, das kann man dauerhaft biegen ;)

aber hm ok, klar das Problem taucht natürlich jetzt unter 64bit auf... gar nicht drann gedacht...

.


aber gehts im Prinzip?


.

Thunderhit
2008-02-12, 13:30:57
Ka, da der Treiber nicht läd kann ichs nicht testen :D aber werd mal nach der permanenten Lösung suchen.

drmaniac
2008-02-12, 13:40:37
Du könntest doch zum testen neu booten und mit F8... ?

Allerdings war es glaube ich wichtig, einen Container zu testen, der mit dem "original" TC5 schon vorher mit AES erstellt wurde... langt ja ein 1MB Container...




wegen dem Permanent : Vista Unsignierte Treiber erlauben - How To (http://www.forum-3dcenter.org/vbulletin/showthread.php?t=351225)

Thunderhit
2008-02-12, 13:43:46
Habs getestet... bekomme von TC 2 Meldungen:
"Die digitale Signatur dieser datei kann nicht überprüft werden. bei einer..." und
"unable to conn. to the TC device driver. TC cannot work if the device driver is not running."
Anscheinend will TC selbst prüfen, obs der orig. Treiber ist?!

klutob
2008-02-12, 14:28:06
Habe mal die den alternativen Truecrypttreiber (aus dem og. Link) signiert und unter Vista x64 einen kleinen Benchmarkvergleich zur org. Version gemacht. Die Ergebnisse sprechen für sich :)

Orginale Version
http://www.pic-upload.de/12.02.08/y7g39s.jpg (http://www.pic-upload.de/view-402957/standard_vista_x64.jpg.html)

Optimierte Assembler Version
http://www.pic-upload.de/12.02.08/gnvtuf.jpg (http://www.pic-upload.de/view-402958/assembler.jpg.html)

AMD-X2 @2,25 GHz

drmaniac
2008-02-12, 14:52:48
AES +100% ? Wahnsinn...


Was heist, du hast die Signiert? So dass Vista64bit nicht mehr meckert?

Wie geht denn das :) ?

.

LOCHFRASS
2008-02-12, 17:09:09
AES +100% ? Wahnsinn...

Kein Wahnsinn, Loop-AES erreicht bei mir mit nem X2 4000+ und einem genutzten Core auch etwa 90 MB/s.

drmaniac
2008-02-12, 17:16:59
der Wahnsinn bezieht sich auf die Steigerung nicht auf die MB/s ;)

klutob
2008-02-12, 19:41:31
Was heist, du hast die Signiert? So dass Vista64bit nicht mehr meckert?

Wie geht denn das :) ?

.

Ja mit einem Testzertifikat.
Hier gibts einen Download indem alle Tools zusammengefasst sind.
http://depositfiles.com/files/1512543

Einfach der beiliegenden Anweisung folgen und in 3 Schritten jeden Treiber (*.sys) mit dem beiliegenden Testzertifikat signieren.

drmaniac
2008-02-12, 20:19:44
cool danke :) !

.

Thunderhit
2008-02-13, 09:00:25
Funktioniert trotzdem nicht... habe auch die .exe und die tc x-64.sys signiert. Dann ins TC Verzeichnis kopiert und die x64.sys ins Windows\Syswow64\drivers und umbenannt in truecrypt.sys. Aber TC meckert immer noch, "Die digitale Signatur dieser datei kann nicht überprüft werden...." :/ wie hat das bei dir oben geklappt?!

klutob
2008-02-13, 11:27:42
Funktioniert trotzdem nicht... habe auch die .exe und die tc x-64.sys signiert. Dann ins TC Verzeichnis kopiert und die x64.sys ins Windows\Syswow64\drivers und umbenannt in truecrypt.sys. Aber TC meckert immer noch, "Die digitale Signatur dieser datei kann nicht überprüft werden...." :/ wie hat das bei dir oben geklappt?!

Man braucht nur die "truecrypt-x64.sys" signieren und zusammen mit den beiden Truecrypt-Executables aus dem Assembler Paket in das Truecrypt Verzeichnis kopieren und damit die orginalen Dateien überschreiben. Hast du die Konsole als Administrator ausgeführt? Ist das Zertifikat unter "HKEY_CURRENT_USER\Software\Microsoft\SystemCertificates" aufgeführt? Testsigning aktiviert (bcdedit.exe /set TESTSIGNING ON)?

monstar-x
2008-02-13, 11:53:08
Wäre das auch für OS X möglich?

klutob
2008-02-13, 12:05:33
Wäre das auch für OS X möglich?

Ja, es muß sich nur jemand finden der den Code in einem YASM Compiler noch mal für das OS X Target durchlaufen läßt.

drmaniac
2008-02-13, 12:36:08
Man braucht nur die "truecrypt-x64.sys" signieren und zusammen mit den beiden Truecrypt-Executables aus dem Assembler Paket in das Truecrypt Verzeichnis kopieren und damit die orginalen Dateien überschreiben. Hast du die Konsole als Administrator ausgeführt? Ist das Zertifikat unter "HKEY_CURRENT_USER\Software\Microsoft\SystemCertificates" aufgeführt? Testsigning aktiviert (bcdedit.exe /set TESTSIGNING ON)?


hm, warum schreibt Iceman42 denn dann

"You need to overwrite the existing driver in the TrueCrypt and Windows/system32/drivers directory and reboot."

Hat er sich da vertan?

Grüße

monstar-x
2008-02-13, 13:45:34
Ja, es muß sich nur jemand finden der den Code in einem YASM Compiler noch mal für das OS X Target durchlaufen läßt.

Gibt es ein Howto wie man sowas macht?

klutob
2008-02-13, 14:14:55
hm, warum schreibt Iceman42 denn dann

"You need to overwrite the existing driver in the TrueCrypt and Windows/system32/drivers directory and reboot."

Hat er sich da vertan?

Grüße


Unter Vista x64 liegt der Truecrypt-Treiber (truecrypt-x64.sys) ausschließlich unter "Program Files (x86)/TrueCrypt/truecrypt-x64.sys", vllt. meinte er XP x64.
Ich habe mich auch lediglich kurz abgemeldet um den neuen Treiber mit Truecrypt beim Wiedereinloggen neu zu laden, ein Reboot ist aber auch nicht weiter schlimm. :)

klutob
2008-02-13, 14:49:40
Gibt es ein Howto wie man sowas macht?
Kenn ich nicht. Man kann sich jedoch an Hand der Yasm Doku, und der detaillierten Anleitung von Andi Neuriem (http://andi.neuriem.de/wordpress/) für den Windows Build, die Sache so ungefähr zusammenstricken.

Der Yasm Compiler funktioniert nur mit Intel-Macs.

1. Yasm auf dem Mac bauen (http://www.tortall.net/projects/yasm/ticket/110)

2. Die die C- und Assembler AES Bibliothek von Brian Gladman herunterladen (http://fp.gladman.plus.com/AES/aes-src-17-01-08.zip) und mit "yasm -f macho aes_amd64.asm" (es muß noch die "__GNUC__" Variable im Source aktiviert werden oder "yasm -f macho aes_x86_v1.asm" (für x86) kompilieren.
3. Die Binary nach "aescrypt.o" umbennen und nach dem Kompilieren der Truecrypt-Sourcen (http://www.truecrypt.org/downloads2.php) für den Mac, ersetzen.
4. Truecrypt-Paket bauen - fertig.


/edit

es gibt auf dem gleichen Blog von Andi Neuriem (http://andi.neuriem.de/wordpress/) mittlerweile die aktuelle "gepatchte" TC-5.0a Version.

/edit 2 Nachtrag
Hier scheitert es allerdings am Build von TC unter einem x64-Linux, das Ding ist selbst mit den umhergeisternden Patches nicht zum Laufen zu bekommen.

Thunderhit
2008-02-13, 15:15:16
Unter Vista x64 liegt der Truecrypt-Treiber (truecrypt-x64.sys) ausschließlich unter "Program Files (x86)/TrueCrypt/truecrypt-x64.sys", vllt. meinte er XP x64.
Ich habe mich auch lediglich kurz abgemeldet um den neuen Treiber mit Truecrypt beim Wiedereinloggen neu zu laden, ein Reboot ist aber auch nicht weiter schlimm. :)

Falsch! Der Treiber liegt unter Windows\Syswow64\drivers\truecrypt.sys. Es ist die x-64 Variante aus dem TC Ordner, was man an der Signatur erkennt. D.h. du nutzt noch nicht den neuen Treiber bei dir, er läd immer noch den alten. Nur die exe Dateien sind neu, was man auch am Benchmark sieht.

monstar-x
2008-02-13, 15:34:00
Kenn ich nicht. Man kann sich jedoch an Hand der Yasm Doku, und der detaillierten Anleitung von Andi Neuriem (http://andi.neuriem.de/wordpress/) für den Windows Build, die Sache so ungefähr zusammenstricken.

Der Yasm Compiler funktioniert nur mit Intel-Macs.

1. Yasm auf dem Mac bauen (http://www.tortall.net/projects/yasm/ticket/110)

2. Die die C- und Assembler AES Bibliothek von Brian Gladman herunterladen (http://fp.gladman.plus.com/AES/aes-src-17-01-08.zip) und mit "yasm -f macho aes_amd64.asm" (es muß noch die "__GNUC__" Variable im Source aktiviert werden oder "yasm -f macho aes_x86_v1.asm" (für x86) kompilieren.
3. Die Binary nach "aescrypt.o" umbennen und nach dem Kompilieren der Truecrypt-Sourcen (http://www.truecrypt.org/downloads2.php) für den Mac, ersetzen.
4. Truecrypt-Paket bauen - fertig.


/edit

es gibt auf dem gleichen Blog von Andi Neuriem (http://andi.neuriem.de/wordpress/) mittlerweile die aktuelle "gepatchte" TC-5.0a Version.


Vielen Dank! Werde ich heute abend machen und Onlinestellen.

drmaniac
2008-02-13, 15:39:45
ohoh...


ich vermute, das bedeutet neue Arbeit für iceman42 ;)

5.0a

February 12, 2008

Improvements:

*

The memory requirements for the TrueCrypt Boot Loader have been reduced by 18 KB (eighteen kilobytes). As a result of this improvement, the following problem will no longer occur on most of the affected computers: The memory requirements of the TrueCrypt Boot Loader 5.0 prevented users of some computers from encrypting system partitions/drives (when performing the system encryption pretest, the TrueCrypt Boot Loader displayed the following error message: Insufficient memory for encryption).


Bug fixes:

*

On computers equipped with certain brands of audio cards, when performing the system encryption pretest or when the system partition/drive is encrypted, the sound card drivers failed to load. This will no longer occur. (Windows Vista/XP/2003)
*

It is possible to access mounted TrueCrypt volumes over a network. (Windows)
*

TrueCrypt Rescue Disks created by the previous version could not be booted on some computers. This will no longer occur. (Windows Vista/XP/2003)

Note: If your TrueCrypt Rescue Disk created by TrueCrypt 5.0 cannot be booted on your computer, please upgrade to this version of TrueCrypt and then create a new TrueCrypt Rescue Disk (select 'System' > 'Create Rescue Disk').
*

Many other minor bug fixes. (Windows, Mac OS X, and Linux)

Thunderhit
2008-02-13, 15:50:22
Guck mal auf voriger Seite, er hat längst die neue Version raus :D
Btw. jetzt funzt es. Wie's aussieht kümmert sich TC nicht um die Datei, die im Win Verzeichnis liegt *g* aber dumm dass das nur in diesem Testmodus geht... weil ist schon bisschen hässlich wenn da in weißer Schrift Testmodus undso aufm Desktop steht :P oder gibts da keinen andren Weg?

drmaniac
2008-02-13, 15:58:42
ich ziehe mir heute das Vista SP1 und nächste Woche wird alles installiert...

also Testmodus auf dem Desktop?? Ohjeh. Dann wäre es für mich fast schon angenehmer, die Prüfung auf zertifizierte Treiber dauerhaft zu disablen...


.

Thunderhit
2008-02-13, 16:09:23
Das bringt leider nichts. Truecrypt selbst scheint die Datei auf korrekte Signatur zu testen, denn die Meldungen kommen von TC; nicht dem System. Naja, Testmodus heißt in jeder Ecke des Desktops isn kleiner weißer Schriftzug mit Testmodus und oben mitte halt die Buildversion.

AnPapaSeiBua
2008-02-13, 18:53:20
Unter XP x64:

TC5.0a original AES: 107 / 88,1 / 97,7
TTC5.0a AES: 134 / 135 / 135
Änderung: +25% / +53% / +38%

Nicht schlecht...

ZÜNDELholz
2008-02-13, 19:52:38
Mal eine Frage an die 64bit vista user:

Warum nutzt Ihr denn nicht Bitlocker zur Systemverschlüsselung? Funktioniert sogar mit Raid.

drmaniac
2008-02-13, 20:06:45
NIEMALS !

Komplizierter und von Microsoft (und das ist nicht zum bashen gedacht, aber MS kann man dabei nicht wirklich vertrauen)

also wirklich, was für ne Frage ;)

ZÜNDELholz
2008-02-13, 20:55:06
NIEMALS !

Komplizierter und von Microsoft (und das ist nicht zum bashen gedacht, aber MS kann man dabei nicht wirklich vertrauen)

also wirklich, was für ne Frage ;)

Kompliziert? Finde nicht.

Vertrauen? Stellst ja als Threadstarter auch die Vertrauensfrage, also sogesehen.....

Und wozu wegen Geschwindigkeitszuwachs solche "Spielchen" eingehen? Heimatfilme, Keksimages, voyeurpics oder was weis ich, werden doch nicht im viertelstundentakt hin und hergeschoben. :biggrin:

Botcruscher
2008-02-13, 21:01:03
MS Produkte zur Verschlüsselung? Jemand der Backdoors in NT4.0 einbaut(bei den anderen Versionen wissen wir es ja nicht) und extra noch einen unsicheren Zufallszahlengenerator für Vista nachreicht?

Alles was nicht OS ist fällt schon von anfangan raus. Firmen sind durch den Staat immer erpressbar. Davon wird auch rege gebrauch gemacht.


Vertrauen? Stellst ja als Threadstarter auch die Vertrauensfrage, also sogesehen.....


Sogesehen kann immnoch jemand im Code nachschaun.