AP6.Ressourcenanalyse_v1.0_geschwrzt_.pdf

Dieses Dokument ist Teil der Anfrage „Untersuchungen zum Verschlüsselungsprogramm „TrueCrypt“

Untersuchung TrueCrypt
Arbeitspaket 6

Ressourcen-Analyse

1.0
Datum: 15. November, 2010 VERTRAULICH
Historie

Version Auto Coll slE Tg

u |
—
u

BE

 

Seite 2 von 107 EEE | 2010
Inhaltsverzeichnis 1 Vorbetrachtung...........................................................................................................7 1.1 Zielsetzung..........................................................................................................7 1.2 Messgrößen........................................................................................................7 1.2.1 CPU Auslastung...........................................................................................7 1.2.2 CPU Laufzeit................................................................................................7 1.2.3 Speicherbedarf.............................................................................................8 1.2.4 Latenzzeit.....................................................................................................8 1.3 Laufzeitumgebung...............................................................................................8 1.4 Untersuchte Hardware........................................................................................8 1.4.1 Acer Aspire one D250-1Bk...........................................................................8 1.4.2 Lenovo x61s.................................................................................................9 1.4.3 HP EliteBook 8540p.....................................................................................9 1.4.4 xPC Shuttle-PC G2......................................................................................9 2 Vorgehensbeschreibung...........................................................................................10 2.1 Test-Anforderungen...........................................................................................10 2.2 Test-Annahmen.................................................................................................10 2.2.1 AMD CPU versus Intel CPU......................................................................10 2.2.2 MultiCore versus SingleCore.....................................................................11 2.2.3 CPU-Taktfrequenz......................................................................................13 2.2.4 Lesevorgang versus Schreibvorgang........................................................13 2.2.5 64-Bit CPUs versus 32-Bit CPUs..............................................................13 2.2.6 Einsatz von AES-Hardwarebeschleunigern...............................................13 2.3 Testszenarien....................................................................................................15 2.3.1 Ist-Zustand.................................................................................................15 2.3.2 Performance der Krypto-Algorithmen........................................................15 2.3.3 Auswirkungen auf die Performance durch das verwendete Dateisystem. 15 2.3.4 Auswirkungen auf die Performance in Abhängigkeit von der Blockgröße.16 2.3.5 Erstellen eines TrueCrypt-Volumes...........................................................16 Auswirkungen auf die Performance durch die Anzahl der zu öffnenden Dateien............................................................................................................16 2.3.6 Full-Disc-Encryption...................................................................................16 3 Testvoraussetzungen und Vorgehensweise.............................................................17 3.1 Installation benötigter Software.........................................................................17 3.1.1 Testwerkzeuge für Linux............................................................................17 3.1.2 Vorgehensweise unter Linux......................................................................17 3.1.3 Testwerkzeuge für Windows......................................................................20 3.1.4 Vorgehensweise unter Windows...............................................................20 3.2 Umschalten zwischen MultiCore auf SingleCore Betrieb................................23 3.2.1 Windows....................................................................................................23 3.2.2 Linux...........................................................................................................23 3.3 Umschalten zwischen verschiedenen Taktfrequenzen und Energieprofilen. . .24 3.3.1 Windows....................................................................................................24 3.3.2 Linux...........................................................................................................25 3.4 AES-Hardwarebeschleunigung bei Intel Core-i7 CPUs....................................26 3.4.1 Windows....................................................................................................26 3.4.2 Linux...........................................................................................................27 Seite 3 von 107 | | 2010
3.5 Löschen von Caches (nur Linux)......................................................................29 4 Testergebnisse (Kurzzusammenfassung) und Analyse...........................................30 4.1 Speicherbedarf von TrueCrypt..........................................................................30 4.1.1 Analyse.......................................................................................................30 4.2 TrueCrypt-interner Benchmark..........................................................................32 4.2.1 Analyse.......................................................................................................33 4.3 Unverschlüsselter Speicherdurchsatz...............................................................34 4.3.1 Linux...........................................................................................................34 4.3.2 Windows....................................................................................................34 4.3.3 Analyse.......................................................................................................34 4.4 Speicherdurchsatz einer verschlüsselten Ramdisk..........................................35 4.4.1 Linux...........................................................................................................35 Krypto-API von Linux......................................................................................35 interne Krypto-API von TrueCrypt..................................................................36 4.4.2 Windows....................................................................................................37 4.4.3 Analyse.......................................................................................................37 4.5 Zugriffszeiten beim Entpacken von Dateien.....................................................38 4.5.1 Linux...........................................................................................................38 4.5.2 Analyse.......................................................................................................38 4.5.3 Windows....................................................................................................39 4.5.4 Analyse.......................................................................................................39 4.6 Kompilieren von Quelltext.................................................................................40 4.6.1 Analyse.......................................................................................................40 4.7 Full-Disc-Encryption Tests (nur Windows)........................................................41 4.7.1 Analyse.......................................................................................................41 4.8 Dateisystem-Benchmarks (nur Linux)...............................................................42 4.8.1 Analyse.......................................................................................................42 5 Testergebnisse (ausführlich)....................................................................................43 5.1 Speicherbedarf von TrueCrypt..........................................................................43 5.1.1 Linux...........................................................................................................43 Festplattenspeicherbedarf..............................................................................43 Arbeitsspeicherbedarf.....................................................................................47 5.1.2 Windows....................................................................................................49 Festplattenspeicherbedarf..............................................................................49 Arbeitsspeicherbedarf.....................................................................................50 5.2 TrueCrypt-interner Benchmark..........................................................................53 5.2.1 Acer Aspire one D250-1Bk.........................................................................53 Linux DualCore 32-Bit....................................................................................53 Linux SingleCore 32-Bit..................................................................................53 Windows DualCore 32-Bit..............................................................................54 Windows SingleCore 32-Bit............................................................................54 5.2.2 Lenovo x61s...............................................................................................55 Linux DualCore 64-Bit....................................................................................55 Windows DualCore 64-Bit..............................................................................56 Windows SingleCore 64-Bit............................................................................56 5.2.3 HP EliteBook 8540p...................................................................................57 Linux QuadCore 64-Bit mit AES-NI................................................................57 Linux QuadCore 64-Bit ohne AES-NI.............................................................57 Seite 4 von 107 | | 2010
Linux SingleCore 64-Bit mit AES-NI...............................................................58 Linux SingleCore 64-Bit ohne AES-NI............................................................58 Linux QuadCore 32-Bit mit AES-NI................................................................59 Linux QuadCore 32-Bit ohne AES-NI.............................................................59 Windows QuadCore 64-Bit mit AES-NI..........................................................60 Windows QuadCore 64-Bit ohne AES-NI.......................................................60 Windows SingleCore 64-Bit mit AES-NI.........................................................61 Windows SingleCore 64-Bit ohne AES-NI......................................................61 5.2.4 xPC Shuttle-PC G2....................................................................................62 Linux DualCore...............................................................................................62 5.3 Linux-Messungen ohne TrueCrypt-interne Krypto............................................63 5.3.1 Acer Aspire one D250-1Bk.........................................................................63 5.3.2 Lenovo x61s...............................................................................................67 5.3.3 HP EliteBook 8540p...................................................................................69 5.3.4 xPC Shuttle-PC G2....................................................................................81 5.4 Windows-Messungen mit TrueCrypt-interner Krypto........................................83 5.4.1 Acer Aspire One.........................................................................................83 5.4.2 Lenovo x61s...............................................................................................85 5.4.3 HP EliteBook 8540p...................................................................................87 5.5 Full-Disc-Encryption Tests (nur Windows)........................................................92 5.5.1 Acer Aspire one D250-1Bk.........................................................................92 Ohne Full-Disc-Encryption..............................................................................92 Mit Full-Disc-Encryption..................................................................................93 5.5.2 Lenovo x61s...............................................................................................94 Ohne Full-Disc-Encryption..............................................................................94 Mit Full-Disc-Encryption..................................................................................95 5.5.3 HP EliteBook 8540p...................................................................................96 Ohne Full-Disc-Encryption..............................................................................96 Mit Full-Disc-Encryption..................................................................................97 5.6 Dateisystem-Benchmarks (nur Linux)...............................................................98 5.6.1 Bonnie++....................................................................................................98 Acer Aspire one D250-1Bk.............................................................................98 Lenovo x61s...................................................................................................98 HP EliteBook 8540p – 64Bit...........................................................................99 HP EliteBook 8540p – 32Bit...........................................................................99 xPC Shuttle-PC G2.......................................................................................100 5.6.2 Iozone......................................................................................................101 Acer Aspire one D250-1Bk...........................................................................101 Lenovo x61s.................................................................................................102 HP EliteBook 8540p – 64Bit.........................................................................103 HP EliteBook 8540p – 32Bit.........................................................................104 xPC Shuttle-PC G2.......................................................................................105 6 Zusammenfassung und Empfehlungen.................................................................106 Seite 5 von 107 | | 2010
Tabellenverzeichnis Tabelle 1: Vergleich TrueCrypt-interner Benchmark für MultiCore vs. SingleCore.....11 Tabelle 2: Geschwindigkeitsunterschiede in Abhängigkeit der Blockgröße und der Kernanzahl...................................................................................................................12 Tabelle 3: Vergleich der Geschwindigkeiten bei Einsatz von Intel's Hardwarebeschleunigung AES-NI...............................................................................14 Tabelle 4: TrueCrypt-interner Benchmark - Vergleich der unterschiedlichen Plattformen, Betriebssysteme und Modi.....................................................................32 Tabelle 5: Festplattendurchsatz der Plattformen.........................................................33 Tabelle 6: Speicherdurchsatz unter Linux (RAMDisk).................................................34 Tabelle 7: Speicherdurchsatz unter Windows (RAMDisk)...........................................34 Tabelle 8: Krypto-Durchsatz unter Linux mit Linux-Krypto..........................................35 Tabelle 9: Verluste durch den Einsatz der Linux-Krypto.............................................35 Tabelle 10: Krypto-Durchsatz mit TrueCrypt unter Linux............................................36 Tabelle 11: Verluste durch den Einsatz von TrueCrypt unter Linux............................36 Tabelle 12: Krypto-Durchsatz mit TrueCrypt unter Windows......................................37 Tabelle 13: Verluste durch den Einsatz von TrueCrypt unter Windows......................37 Tabelle 14: Auspacken eines Archivs unter Linux.......................................................38 Tabelle 15: Auspacken eines Archivs unter Windows.................................................39 Tabelle 16: Zeiten bei Kompilieren von Quelltext........................................................40 Tabelle 17: System- und Programmstartzeiten unter Windows..................................41 Tabelle 18: Dateisystem-Benchmarks unter Linux......................................................42 Abbildungsverzeichnis Abbildung 1: Bildschirmfoto des Dataram RAMDisk Konfigurationswerkzeug...........20 Abbildung 2: Bildschirmfoto über die Geschwindigkeitsmessungen von CrystalDiskMark..........................................................................................................21 Abbildung 3: Bildschirmfoto der Systemkonfiguration zum Umschalten auf SingleCore unter Windows..........................................................................................23 Abbildung 4: Bildschirmfoto der Windows Energieoptionen.......................................24 Abbildung 5: Bildschirmfoto von TrueCrypt unter Windows zum Aktivieren der AES-NI Beschleunigung...........................................................................................................26 Abbildung 6: Bildschirmfoto von TrueCrypt unter Linux zum Abschalten der Linux- Krypto..........................................................................................................................27 Abbildung 7: Bildschirmfoto von TrueCrypt unter Linux zum Aktivieren der AES-NI Beschleunigung...........................................................................................................28 Seite 6 von 107 | | 2010
1 Vorbetrachtung 1.1 Zielsetzung Für den Einsatz einer Festplattenverschlüsselung ist es von Interesse, eine Abschätzung zu bekommen, wie stark sich der Einsatz von Verschlüsselung und der damit einhergehende Verlust von DMA auf die Systemperformance auswirkt. Gerade im Hinblick auf den Einsatz zur „Full-Disc-Encryption“ können signifikante Ressourceneinbußen zu verzeichnen sein, je nachdem wie leistungsstark die zugrundeliegende Plattform ist. Das Ziel dieses Arbeitspaketes ist es daher zunächst, basierend auf den in Kapitel 2.1 beschriebenen Testszenarien, für verschiedene Hardwareplattformen Messungen durchzuführen, die eine nominale Abschätzung der minimalen und maximalen Ressourceneinbußen durch den Einsatz von Verschlüsselung ermöglichen. Darüber hinaus soll getestet werden, inwiefern der Einsatz einer Festplattenverschlüsselung für einen Benutzer in unterschiedlichen Szenarien zu einer Beeinträchtigung seiner Arbeit führen kann. Die Ergebnisse dieses Arbeitspaketes sollen letztlich dazu genutzt werden, Hardwareanforderungen abzuleiten, die ein System unter den spezifizierten Einsatzszenarien aus AP2 erfüllen muss, um trotz des Einsatzes von einer Verschlüsselungssoftware noch performant genug zu sein. 1.2 Messgrößen Folgende Fragestellungen sind im Rahmen der Ressourcenanalyse hinsichtlich der entsprechenden Messgrößen zu beantworten: 1.2.1 CPU Auslastung • Minimum Was ist der minimale Overhead, den TrueCrypt im entsprechenden Testszenario erzeugt? • Durchschnittlich Wie groß ist der Einfluss von TrueCrypt in einem regulären Arbeitseinsatz, bei dem die Rechenleistung der ausführenden Plattform nur zu x% verwendet wird? • Maximum Wie hoch sind die Performance-Einbußen Verschlüsselungssoftware TrueCrypt maximal? durch den Einsatz der 1.2.2 CPU Laufzeit • Welche Laufzeit haben die kryptographischen Algorithmen? • Gibt es signifikante Laufzeit-Unterschiede bei unterschiedlichen Algorithmen Seite 7 von 107 | 2010
und Kombinationen? 1.2.3 Speicherbedarf • Wie groß ist der zusätzliche Speicherbedarf beim Einsatz von TrueCrypt? • Wie skaliert der Speicherbedarf verschlüsselten Volumes? in Abhängigkeit der Anzahl der 1.2.4 Latenzzeit • Wie groß ist die durch TrueCrypt verursachte Latenzzeit? 1.3 Laufzeitumgebung TrueCrypt wird im Rahmen dieses Arbeitspaketes auf zwei unterschiedlichen Betriebssystemen untersucht: • Microsoft Windows 7 (64-Bit) • Microsoft Windows Vista (64-Bit) • Ubuntu 10.04 LTS (mit Linux Kernel 2.6.32.24 bzw. 2.6.32.25) ◦ 32-Bit (Netbook Edition) ◦ 32-Bit (Desktop Edition) ◦ 64-Bit (Desktop Edition) Hierzu werden keine sich im aktiven Betrieb befindlichen Systeme genommen, sondern die Betriebssysteme werden neu installiert. Dies soll zum einen die Reproduzierbarkeit der Testergebnisse sicherstellen, zum anderen sollen die Testergebnisse nicht durch den Einsatz von Dritt-Software verfremdet werden. Die genau verwendete Betriebssystemsoftware inkl. aktuellem Patchstand wird jeweils im Testbericht hinzugefügt. 1.4 Untersuchte Hardware Die folgenden Hardwareplattformen werden für die Untersuchung verwendet. Je nach eingesetzter CPU stehen die folgenden Betriebsmodi, CPU-Kerne und Taktraten zur Verfügung. Geeignete, repräsentative Kombinationen werden in den Testszenarien ausgewählt. 1.4.1 Acer Aspire one D250-1Bk ◦ CPU: Intel Atom N280 ◦ CPU-Architektur: 32-Bit ◦ Anzahl CPU-Kerne: 2 (DualCore) ◦ Taktraten: 1666 Mhz Seite 8 von 107 | | 2010
◦ RAM: 1 GB DDR-2, 667 Mhz ◦ Speicherbandbreite: PC2-5300 ◦ Festplatte: WD Scorpio 160GB SATA-2 1.4.2 Lenovo x61s ◦ CPU: Intel Core2Duo ◦ CPU-Architektur: 64-Bit ◦ Anzahl CPU-Kerne: 2 (DualCore) ◦ Taktraten: 800 Mhz, 1200 Mhz, 1600 Mhz ◦ RAM: 3GB (1x2GB+1x1GB) DDR-2, 667 Mhz ◦ Speicherbandbreite: PC2-5300 ◦ Festplatte: Samsung 500GB SATA-2 1.4.3 HP EliteBook 8540p ◦ CPU: Intel Core i7-620M mit Hardware-AES Beschleunigung ◦ CPU-Architektur: 64-Bit ◦ Anzahl CPU-Kerne: 2 (mit Hyperthreading: 4 (QuadCore)) ◦ Taktraten: 1200 Mhz, 1333 Mhz, 2666 Mhz ◦ RAM: 4GB (1x4GB) DDR-3, 1333 Mhz ◦ Speicherbandbreite: PC3-10600 ◦ Festplatte: Seagate Momentum 320GB SATA-2 1.4.4 xPC Shuttle-PC G2 ◦ CPU: AMD Athlon X2 7750 ◦ CPU-Architektur: 64-Bit ◦ Anzahl CPU-Kerne: 2 (DualCore) ◦ Taktraten: 1350 Mhz, 2700 Mhz ◦ RAM: 4GB (2x2GB) DDR-2, 800Mhz ◦ Speicherbandbreite: PC2-6400 ◦ Festplatte: WD SATA-2 Seite 9 von 107 | | 2010
2 Vorgehensbeschreibung Durch die vielen verschiedenen Parameter der Ausführungsumgebung und der sehr großen Anzahl an möglichen Kombinationen von Hardware, Betriebssystemen, Festplatten, Taktfrequenzen und dergleichen, ist eine vollständige Testabdeckung nicht realisierbar. Vielmehr ist daher hier zu untersuchen, welche Auswirkungen die entsprechenden Faktoren auf die Performance des Systems haben und wie TrueCrypt diese in den entsprechenden Einsatzszenarien beeinflusst. Um einen eindeutige Aussage treffen zu können, wird zuerst der Ist-Zustand der Messgrößen aus Abschnitt 1.2 ohne den Einsatz einer Verschlüsselungssoftware ermittelt. Im Anschluss daran werden die Testszenarien aus Abschnitt 2.2 mit Einsatz von TrueCrypt getestet. 2.1 Test-Anforderungen • Zur Reproduzierbarkeit der Testergebnisse und zur Minimierung der Einflussfaktoren durch Drittsoftware werden nur neu installierte Maschinen mit einem stabilen Betriebssystem geprüft. • Die Testergebnisse sollen losgelöst von festplattenspezifischen Parametern sein. Hierzu wird eine Ramdisk mit einer Größe von 500 MB verwendet. • Um bei einem Programmstart realistische Zeitmessungen zu erhalten, werden die Programme nach der Installation zunächst einmal ohne Messung gestartet, damit ggf. notwendige Konfigurationen beim ersten Start durchgeführt werden können. Im Anschluss daran muss der Testrechner neu gestartet werden, um die Messwerte nicht durch Programmreste im Speicher bzw. im Cache zu verfremden. • Bei Tests im Umgang mit Dateien (z.B. Dateien packen / entpacken, kompilieren von Quelltext) muss nach jedem Testdurchlauf ein Neustart des Testrechners erfolgen, um die Messwerte nicht durch Datenreste im Speicher bzw. im Cache zu verfremden. 2.2 Test-Annahmen 2.2.1 AMD CPU versus Intel CPU Es besteht kein signifikanter Unterschied zwischen dem Einsatz einer AMD-CPU im Vergleich zu einer Intel-CPU mit gleichen Leistungsmerkmalen (DualCore, 64-Bit, gleiche Taktrate). Im direkten Vergleich war die etwas modernere Intel-CPU zwar marginal schneller, das Verhältnis zwischen den beiden CPUs ist jedoch konstant. Daher kann im weiteren Testverlauf auf einen extra Testlauf mit einer AMD-CPU verzichtet werden: • Intel i7, 64-Bit, mit 2,67 Ghz (QuadCore, aber nur 2 Kerne in Verwendung) • AMD Athlon, 64-Bit, mit 2,7 Ghz (DualCore) Seite 10 von 107 | | 2010
Go to next pages