Einsatzgebiete Digitaler Signaturen

Transcrição

Einsatzgebiete Digitaler Signaturen
Fachbereich Informatik
Fachgebiet Theoretische Informatik
Einsatzgebiete Digitaler Signaturen
Diplomarbeit
Pia Weber
Prüfer: Professor Dr. Dr. h. c. Johannes Buchmann
Betreuer: Dipl.-Math. Erik Dahmen
Darmstadt, September 2008
Ehrenwörtliche Erklärung
Hiermit versichere ich, die vorliegende Diplomarbeit ohne Hilfe Dritter und
nur mit den angegebenen Quellen und Hilfsmitteln angefertigt zu haben. Alle
Stellen, die aus den Quellen entnommen wurden, sind als solche kenntlich
gemacht worden. Diese Arbeit hat in gleicher oder ähnlicher Form noch keiner
Prüfungsbehörde vorgelegen.
Darmstadt, September 2008
Pia Weber
Abstract
Die Digitalisierung und die Vernetzung schreitet immer weiter voran und
ersetzt nach und nach viele schriftliche Dokumente, die bisher auf Papier
festgehalten wurden. Dadurch kam das Problem auf, wie die handschriftliche Unterschrift auf ein digitales Dokument übertragen werden konnte, ohne dass sie ihre Gültigkeit verliert. Die eigene Unterschrift einzuscannen und
als Bild in das Dokument einzufügen ist keine Lösung, da das Bild einfach kopiert und beliebig von jedem in ein neues Dokument eingefügt werden kann.
Damit stehen der Manipulation alle Wege offen. Die Lösung dieses Problems
sind digitale Signaturen. Digitale Signaturen ersetzen die handschriftliche
Unterschrift in digitalen Dokumenten. Die digitale Signatur ist ein kryptographisches Verfahren. In diesem Verfahren wird von einer Nachricht, die
aus beliebig vielen Daten besteht, eine Zahl, die digitale Signatur, berechnet.
Die Urheberschaft und Zugehörigkeit der Signatur zu dieser Nachricht kann
jeder überprüfen. Zur Erzeugung und Verifizierung der digitalen Signaturen
werden Schlüssel verwendet, diese bestehen jeweils aus natürlichen Zahlen.1
Digitale Signaturen können mit symmetrischen oder asymmetrischen Signaturverfahren erzeugt werden. Der Unterschied zwischen diesen beiden Verfahren wird später in dieser Arbeit kurz erläutert.
Des Weiteren wird ermittelt, auf welchen Einsatzgebieten heute digitale
Signaturen eingesetzt werden und welche Prioritäten dem Speicherplatzbedarf und den Berechnungszeiten gegeben werden.
Optimale Parameterwerte werden für das verbesserte Merkle-Signaturverfahren bestimmt, damit es mit anderen asymmetrischen Verfahren auf den
unterschiedlichen Einsatzgebieten verglichen werden kann.
Das verbesserte Merkle-Signaturverfahren ist ein konkurrenzfähiges und zukunftssicheres Verfahren. Es kann die bisher verwendeten Signaturverfahren
ablösen, dies wird mit dieser Diplomarbeit gezeigt.
1
http://de.wikipedia.org/wiki/Digitale Signatur, 24.08.08, 16:00 Uhr
Abkürzungsverzeichnis
Abb.
Abbildung
BfN
Bundesamt für Naturschutz
BNetzA
Bundesnetzagentur
BVL
Bundesamt für Verbraucherschutz und Lebensmittelsicherheit
CMSS
Coronado Merkle Signature Scheme /
Coronado Merkle Signaturverfahren
DEHSt
Umweltbundesamt Deutsche Emissionshandelsstelle für
Emissionshandel der Deutschen Emissionshandelsstelle
DSA
Digital Signature Algorithm / Digitaler Signaturalgorithmus
ECDSA
Elliptic Curve Digital Signature Algorithm /
Elliptische Kurve - Digitaler Signaturalgorithmus
eDTA
elektronischer Dienst- und Truppenausweis
eGK
elektronische Gesundheitskarte
EGVP
elektronisches Gerichts- und Verwaltungspostfach
EPA
elektronische Patientenakte
ePA
elektronischer Personalausweis
ePass
elektronischer Reisepass
eRezept
elektronische Rezeptverwaltung
®-Ticket
etix
elektronisches Ticket
GMSS
Generalized Merkle Signature Scheme /
verbessertes Merkle-Signaturverfahren
HBA
elektronischer Heilberufsausweis
I-Voting
Online-Wahlen
IHK-Gfl
Industrie- und Handelskammer Gesellschaft für
Informationsverarbeitung
ITeBau
virtuelles Bauamt
ITSG
Informationstechnischen Servicestelle der Gesetzlichen
Krankenversicherung GmbH
MSS
Merkle Signature Scheme / Merkle-Signaturverfahren
OT
One-Time / Einmal-
OTS
One-Time Signature / Einmalsignatur-
OTSS
One-Time Signature Scheme /
Einmalsignaturverfahren
PKIBw
Persönliche Schlüsselkarte Bundeswehr
PRNG
Pseudo Random Number Generator /
Pseudozufallszahlengenerator
RF-Chip
Radio Frequency Chip
RSA
Rivest, Shamir, Adleman / RSA ist ein Public-KeyVerschlüsslungs- und Signaturverfahren.
SHA
Secure Hash Algorithm / sicherer Hashalgorithmus
SigG
Signaturgesetz
SSL
Secure Socket Layer / ist ein Protokoll, das verschlüsselte
Netzverbindungen zwischen Server und Browser ermöglicht.
UStG
Umsatzsteuergesetz
VoIP-Signatur
Voice over Internet-Protocol / Internet-Telefonie
VPS
Virtuelle Poststelle des Bundes
W
Winternitz
W-OT
Winternitz-One-Time / Winternitz-Einmalsignatur
W-Parameter
Winternitz-Parameter
ZDA
Zertifizierungsdienstanbieter
Inhaltsverzeichnis
1 Einleitung
1.1 Ziele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Gliederung . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 Digitale Signaturen
2.0.1 Einwegfunktion . . . . . . . . . . . . .
2.0.2 Hashfunktion . . . . . . . . . . . . . .
2.1 Symmetrische Signaturverfahren . . . . . . . .
2.2 Asymmetrisches Signaturverfahren . . . . . .
2.3 Sicherheitsziele von digitalen Signaturen . . .
2.4 Digitale Signaturverfahren . . . . . . . . . . .
2.4.1 RSA, DSA, ECDSA . . . . . . . . . .
2.4.2 MSS . . . . . . . . . . . . . . . . . . .
2.4.3 Pseudozufallszahlengenerator - PRNG
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3 Verbessertes Merkle-Signaturverfahren
3.1 Winternitz . . . . . . . . . . . . . . . . . . . . . . .
3.1.1 W-OT Schlüsselpaarerzeugung . . . . . . . .
3.1.2 W-OT Signaturerzeugung . . . . . . . . . .
3.1.3 W-OT Signaturerzeugung mit einem PRNG
3.1.4 W-OT Signaturverifikation . . . . . . . . . .
3.2 GMSS . . . . . . . . . . . . . . . . . . . . . . . . .
3.2.1 GMSS Schlüsselerzeugung . . . . . . . . . .
3.2.2 GMSS Signaturerzeugung . . . . . . . . . .
3.2.3 GMSS Signaturverifikation . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3
4
4
.
.
.
.
.
.
.
.
.
5
5
5
6
7
8
8
9
9
10
.
.
.
.
.
.
.
.
.
11
11
12
13
13
14
14
17
18
25
4 Parameter - n, wi , T, Hi , Ki
4.1 Abhängigkeiten - Parameter - Formeln . . . . . . . . . .
4.1.1 Abhängigkeiten zwischen den Parametern . . . .
4.1.2 Abhängigkeiten der Formeln von den Parametern
4.2 Parameterwahl . . . . . . . . . . . . . . . . . . . . . . .
4.3 Zusammenfassung der Parameter . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
26
29
30
31
38
45
5 Einsatzgebiete von digitalen Signaturen
5.1 Arten von digitalen Signaturen . . . . . .
5.2 Einsatzgebiete . . . . . . . . . . . . . . . .
5.2.1 Behörden . . . . . . . . . . . . . .
5.2.2 Verwaltung und Rechtswissenschaft
5.2.3 Unternehmen . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
48
48
51
51
55
57
1
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5.2.4
5.2.5
5.2.6
5.2.7
5.2.8
5.2.9
5.2.10
Gesundheitswesen . . . . . . . .
Elektronische Ausweise . . . . .
Geschäftsverkehr . . . . . . . .
Software . . . . . . . . . . . . .
Digitale Dokumente . . . . . . .
Digital signierte Tonaufnahmen
Sonstige Einsatzmöglichkeiten .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6 Szenarien
6.1 Schlüssellängen - SmartCard . . . . . . . . . . . .
6.2 Szenarien - Beispiele . . . . . . . . . . . . . . . .
6.2.1 Behörden - Elster . . . . . . . . . . . . . .
6.2.2 Unternehmen - Rechnung . . . . . . . . .
6.2.3 Elektronische Ausweise - ePass . . . . . .
6.2.4 Geschäftsverkehr - Online-Einkaufen . . .
6.2.5 Software - Mobile Code Signing . . . . . .
6.2.6 Digitale Dokumente - PDF . . . . . . . . .
6.2.7 Sonstige Einsatzmöglichkeiten - Bahnticket
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
59
60
62
63
65
66
66
.
.
.
.
.
.
.
.
.
69
69
75
75
78
83
85
89
93
97
7 Zusammenfassung - Fazit
100
7.1 Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
2
1
Einleitung
In der heutigen Zeit werden immer mehr Computer eingesetzt und damit
werden auch immer mehr Bereiche elektronisch verwaltet und genutzt. Dadurch werden Dokumente oft nicht mehr ausgedruckt, sondern sie existieren
nur noch digital. Wurde vorher zum Beispiel ein Brief ausgedruckt, unterschrieben und mit der Post verschickt, wird jetzt dieser Brief elektronisch
unterschrieben“. Er wird signiert, das heißt, er bekommt eine digitale
”
Signatur und wird per E-Mail an den Empfänger gesendet. Dies erspart besonders Unternehmen viel Zeit und Geld. Das Problem bei diesem Vorgehen
liegt darin, dass geeignete Verfahren benötigt werden, die vor Manipulationen schützen.
Die eigene Unterschrift einzuscannen und als Bild in das Dokument einzufügen ist keine Lösung, da das Bild einfach kopiert und beliebig von jedem
in ein neues Dokument eingesetzt werden kann. Damit stehen den Manipulationen alle Wege offen. Die Lösung dieses Problems sind digitale Signaturen.
Sie ersetzen die handschriftlichen Unterschriften in digitalen Dokumenten
und schützen vor Manipulationen.
Für die Erstellung von digitalen Signaturen werden Verfahren benötigt, die
dies schnell und effizient ermöglichen. Die bisher verwendeten Signaturverfahren sind zum Beispiel RSA, DSA und ECDSA. In dieser Diplomarbeit wird
das verbesserte Merkle-Signaturverfahren vorgestellt. Es wird auch GMSS
genannt (engl. Generalized Merkle Signature Scheme) und es ist ein asymmetrisches Verfahren. Auf die symmetrischen Verfahren wird hier nicht weiter
eingegangen.
Digitale Signaturen werden in vielen Bereichen unseres heutigen Lebens eingesetzt, zum Signieren von E-Mails, Verträgen oder Rechnungen. In dieser
Arbeit werden die verschiedenen Bereiche ermittelt. Jeder Bereich legt unterschiedliche Prioritäten für den Speicherplatz und die Berechnungszeiten fest.
Zum Beispiel, wie viel Zeit die Signaturverifikation haben darf oder wie viel
Speicherplatz für den öffentlichen Schlüssel zur Verfügung steht. Für jedes
Anwendungsgebiet werden die Parameter des GMSS entsprechend angepasst,
so dass GMSS mit den anderen Signaturverfahren für das jeweilige Gebiet
verglichen werden kann.
Der große Vorteil von GMSS liegt darin, dass es gegen Angriffe von Quantencomputer resistent ist, da es auf einem anderen mathematischen Problem
beruht als die anderen Signaturverfahren, wie RSA, DSA oder ECDSA. Die
Quantencomputer sind Computer, die die Gesetze der Quantenmechanik benutzen.2 Sie können innerhalb kurzer Zeit eine extrem hohe Anzahl von Be2
http://de.wikipedia.org/wiki/Quantencomputer, 01.08.2008, 11:45 Uhr
3
rechnungen simultan durchführen und sie sind wesentlich schneller als heutige
Computer.3
1.1
Ziele
In dieser Diplomarbeit werden drei Ziele verfolgt:
1. Das Bestimmen der optimalen Parameterwahl für das verbesserte
Merkle-Signaturverfahren (GMSS).
2. Die Ermittlung der Einsatzgebiete, in denen heute digitale Signaturen
verwendet werden.
3. Der Vergleich von GMSS mit anderen Signaturverfahren in den Einsatzgebieten. Das Ergebnis soll zeigen, ob GMSS die bisher verwendeten Signaturverfahren in den Einsatzgebieten ersetzen kann.
1.2
Gliederung
Um die Ziele zu erreichen, wird in dieser Diplomarbeit die digitale Signatur,
ihre Verfahren und Arten im 2. Kapitel vorgestellt.
Das verbesserte Merkle-Signaturverfahren wird im 3. Kapitel detailliert beschrieben. Es wird als GMSS (engl. Generalized Merkle Signature Scheme)
bezeichnet.
Für das Verfahren werden die optimalen Parameter im 4. Kapitel ermittelt. Mit ihnen arbeitet das GMSS schneller und effizienter. Für die entsprechende Parameterwahl müssen alle Einflüsse und Auswirkungen im GMSS
berücksichtigt werden.
Danach werden im 5. Kapitel die Einsatzgebiete von digitalen Signaturen
ermittelt und gezeigt.
Im 6. Kapitel wird bestimmt, welche Prioritäten dem Speicherplatz und den
Berechnungszeiten zu geordnet werden. Zum Beispiel, wie viel Zeit die
Signaturverifikation verbraucht oder wie viel Speicherplatz für den privaten
Schlüssel zur Verfügung steht. Mit diesen Erkenntnissen werden die ermittelten Parameter des GMSS mit den bisher verwendeten digitalen Signaturverfahren in den verschiedenen Einsatzgebieten verglichen.
Im 7. Kapitel werden die Ergebnisse der Diplomarbeit dargelegt und bewertet. Es wird ebenfalls ein Ausblick in die Zukunft der digitalen Signatur
gegeben.
3
http://www.br-online.de/br-alpha/alpha-campus/quantencomputerDID1211892405673/index.xml, 01.08.2008, 11:44 Uhr
4
2
Digitale Signaturen
Für die Erzeugung einer digitalen Signatur werden digitale Schlüssel verwendet, die je nach dem welches digitale Signaturverfahren verwendet wird,
werden sie anders berechnet. Außerdem werden Hashfunktionen für die Berechnungen eingesetzt. Eine Hashfunktion muss bestimmte Eigenschaften
aufweisen, damit sie verwendet werden kann. Sie muss unter anderem die
Eigenschaften einer Einwegfunktion haben.
2.0.1
Einwegfunktion
Die Funktion F : {0, 1}n → {0, 1}n heißt Einwegfunktion (engl. one way
function) mit n ∈ N, wenn
1. für alle Eingabewerte x ∈ {0, 1}n der Funktionswert F (x) effizient berechenbar ist und
2. wenn es kein effizientes Verfahren gibt, um aus einem Bild F (x) = y
das Urbild x zu berechnen, mit y ∈ {0, 1}n .[5]
2.0.2
Hashfunktion
Außerdem hat eine Hashfunktion (engl. hash function) noch die folgenden
Eigenschaften zu erfüllen.
Die Hashfunktion Z : {0, 1}∗ → {0, 1}n erfüllt die folgenden Eigenschaften:
1. Z besitzt die Eigenschaften einer Einwegfunktion.
2. Der Hashwert Z(x) = y, mit y ∈ {0, 1}n , ist bei gegebener Eingabe x
leicht zu berechnen, mit x ∈ {0, 1}∗ .[5]
3. Die Hashfunktion muss kollisionsresistent sein, das bedeutet für zwei
unterschiedliche Werte x 6= x0 gilt immer Z(k) 6= Z(x0 ).4
Die zu signierenden Daten werden mit der Hashfunktion gehasht. Aus diesem
Hashwert wird die Signatur mittels der Schlüssel erstellt. Der Verifizier prüft
mit dem Schlüssel, ob die Signatur zu den Daten passt. Ist dies der Fall,
dann ist die Signatur gültig. Es gibt zwei Arten von digitalen Signaturverfahren. Digitale Signaturen können mit symmetrischen oder asymmetrischen
Signaturverfahren erzeugt werden.5
4
http://de.wikipedia.org/wiki/Hash-Funktion#Definition/ einer Hash-Funktion,
30.07.2008, 16:40 Uhr
5
http://www.bsi.de/literat/tr/tr02102/BSI-TR-02102.pdf, 24.08.08, 9:50 Uhr
5
2.1
Symmetrische Signaturverfahren
Für das symmetrische Verfahren wird nur ein geheimer Schlüssel benötigt.
Dieses Verfahren wird im Beispiel (Abbildung 1) erläutert.
In diesem Beispiel möchte Alice Bob eine signierte Nachricht m schicken. Um
ein Dokument m zu signieren, wird zu erst der Hashwert von m (Hash(m))
gebildet mittels einer Hashfunktion. Die Definition von Hashfunktionen ist
im vorherigen Abschnitt zu finden.
Danach wird dieser Hashwert mit dem geheimen Schlüssel signiert, in der
Abbildung 1 ist das Alice´s Aufgabe. Die Signatur wird zusammen mit dem
Dokument m an Bob gesendet.
Damit Bob prüfen kann, ob die Signatur gültig ist, muss er den geheimen
Schlüssel kennen. Deshalb haben Alice und Bob vorher auf einem sicheren
Weg den geheimen Schlüssel vereinbart. Bob wendet den Schlüssel auf die
Signatur an und bekommt den Hashwert, den Alice ermittelt hat. Danach
bildet Bob erneut vom Dokument m den Hashwert und vergleicht diese beiden Werte. Stimmen sie überein, so ist die Signatur gültig.
Eine Manipulation des Hashwertes oder der Nachricht m fällt Bob auf. In
einem solchen Fall ist die Signatur ungültig.6
Möchte Alice mit noch mehr Personen in Kontakt treten, muss sie mit je-
Abbildung 1: Symmetrisches Signaturverfahren - Alice schickt Bob eine signierte Nachricht
dem einen anderen neuen geheimen Schlüssel vereinbaren. Dadurch ergibt
sich das Schlüsselaustauschproblem, denn der geheime Schlüssel muss auf einem sicheren Weg zu jedem Kommunikationspartner gelangen. Wird mit 100
6
http://de.wikipedia.org/wiki/Signaturverfahren, 24.08.08, 10:00 Uhr
6
oder mehr Personen der Kontakt gewünscht, dann muss mit jedem ein neuer
Schlüssel vereinbart werden. Damit wird schnell das Ausmaß des Problems
sichtbar.
2.2
Asymmetrisches Signaturverfahren
Das asymmetrische Verfahren löst das Schlüsselaustauschproblem. Es gibt
ein Schlüsselpaar, einen privaten und einen öffentlichen Schlüssel. Der private
Schlüssel dient zum Signieren und darf nur dem Eigentümer des Schlüssels
bekannt sein. Im folgenden Beispiel (Abbildung 2) ist das hier Alice. Der
öffentliche Schlüssel ist jedem bekannt. Mit ihm kann die Signatur auf ihre
Gültigkeit geprüft werden.[2]
Als Beispiel, Alice möchte Bob erneut eine signierte Nachricht m schicken.
In diesem Fall besitzt Alice das Schlüsselpaar. Alice´s öffentlicher Schlüssel
ist jedem bekannt. Alice rechnet zuerst den Hashwert von m (Hash(m)) aus.
Danach signiert sie ihn mit ihrem privaten Schlüssel und schickt die Nachricht und die Signatur an Bob. Bob überprüft mit dem öffentlichen Schlüssel
von Alice die Gültigkeit der Signatur. Dazu wendet Bob den öffentlichen
Schlüssel auf die Signatur von Alice an und bekommt den Hashwert. Danach
ermittelt Bob aus der Nachricht erneut den Hashwert und vergleicht diese
beiden Werte. Stimmen sie überein, dann ist die Signatur gültig. Eine Manipulation der Nachricht fällt wie bei den symmetrischen Verfahren auf.
Bob kann ebenfalls Alice eine Nachricht schicken, dazu benötigt er nur sein
Abbildung 2: Asymmetrisches Signaturverfahren - Alice schickt Bob eine
signierte Nachricht
eigenes Schlüsselpaar. Da Alice Bob´s öffentlicher Schlüssel bekannt ist, kann
7
sie die Signatur verifizieren.
Zu den asymmetrischen Signaturverfahren zählt das RSA-Verfahren das
DSA-, das ECDSA-, das MSS- und das GMSS-Verfahren. Diese Verfahren
werden im Abschnitt 2.4 Digitale Signaturverfahren“ näher erläutert. GMSS
”
wird im 3. Kapitel Verbessertes Merkle-Signaturverfahren“ ausführlich be”
schrieben.
2.3
Sicherheitsziele von digitalen Signaturen
Mit den beiden Verfahren aus Abschnitt 2.1 und 2.2 werden Signaturen erzeugt. Aber wie schon in den Beispielen 1 auf Seite 6 und 2 auf Seite 7, mit
Alice und Bob, angedeutet, gibt es Risiken wie die Manipulation von digitalen Dokumenten. Es werden unter anderem E-Mails, Behördenanträge und
Nachrichten mehr oder weniger sicher versandt. Somit werden heute digitale
Signaturen fast überall eingesetzt. Ihre Sicherheitsziele sind die Authentifizierung, die Integrität und die Verbindlichkeit der Daten.
Durch die Authentifizierung kann eindeutig bestimmt werden zu welcher Person die digitale Signatur gehört und dass keine Person im Namen einer anderen diese Signatur erstellen kann. Beispiel: Alice kann nicht mit Bob´s
Namen Dokumente signieren, ohne dass der Betrug auffällt.
Mit der Integrität der Daten wird sichergestellt, dass das Dokument mit der
Signatur nicht geändert wurde, sei es durch absichtliche oder unabsichtliche
Manipulation. Eine unabsichtliche Manipulation kann durch eine fehlerhafte
Übertragung auftreten. Bei einer absichtlichen Manipulation wird das Dokument vorsätzlich von einem Unbefugten verändert. Wird ein signiertes Dokument geändert, passt die Signatur nicht mehr dazu und die Veränderung
der Daten wird bemerkt.
Die Verbindlichkeit ist die Nichtabstreitbarkeit einer dritten Person gegenüber.
Angenommen Bob will sich vom digitalen signierten Vertrag lösen oder sich
nicht an die Vereinbarungen halten, so kann Bob´s Signatur im Vertrag eindeutig vor einer dritten Person, zum Beispiel einem Richter, Bob zu geordnet
werden. Somit kann Bob seine digitale Unterschrift - seine Signatur- nicht abstreiten.
2.4
Digitale Signaturverfahren
In dieser Diplomarbeit wird nicht näher auf symmetrische Verfahren eingegangen. Für die Signaturerstellung werden asymmetrische Verfahren eingesetzt. Sie werden in dem folgenden Abschnitt kurz näher beschrieben. Es gibt
natürlich noch mehr Signaturverfahren, aber alle aufzuführen ist im Rahmen
dieser Arbeit nicht möglich. Deshalb wird die Betrachtung auf die genannten
8
und meist verwendeten Verfahren eingeschränkt.
2.4.1
RSA, DSA, ECDSA
Die Erfinder von RSA (engl. Rivest, Shamir, Adleman) sind Ronald L. Rivest, Adi Shamir und Leonard Adleman7 . Der RSA basiert auf dem Faktorisierungsproblem. Die Berechnung der Schlüssel, des privaten und des
öffentlichen, beruht darauf, dass zwei große Primzahlen zufällig gewählt werden und miteinander multipliziert werden. Ihr Produkt kann nicht so einfach und schnell wieder in genau diese beiden Primzahlen zerlegt werden.
Dies wird als Faktorisierungsproblem bezeichnet.8 Gelingt es einem Angreifer dies zu lösen und damit die gesuchten Primzahlen zu errechnen, ist das
RSA-Verfahren damit unbrauchbar. Weil der Angreifer sich nun die beiden
Schlüssel selbst erzeugen und alles manipulieren kann.
Der DSA (engl. Digital Signature Algorithm) wurde von dem National Institute of Standards and Technology (NIST) erfunden. Der DSA basiert auf
dem diskreten Logarithmus in endlichen Körpern.9
Der ECDSA (engl. Elliptic Curve Digital Signature Algorithm) ist eine
Übertragung des DSA auf die elliptischen Kurven10 .
Mehr Informationen zu RSA, DSA und elliptischen Kurven kann in [2] nachgelesen werden.
2.4.2
MSS
Das Merkle-Signaturverfahren (engl. Merkle Signature Scheme, MSS) wurde
von Ralph Merkle entwickelt und 1989 veröffentlicht [8]. Es ist ein asymmetrisches Signaturverfahren und beruht auf einem anderen mathematischen
Problem als die meist verwendeten Verfahren. MSS benötigt eine sichere
kryptographische Hashfunktion und einen sicheren Pseudozufallszahlengenerator.11
7
http://de.wikipedia.org/wiki/RSA-Kryptosystem, 30.07.2008, 16:13 Uhr
http://de.wikipedia.org/wiki/Faktorisierungsproblem f%C3%BCr ganze Zahlen,
30.07.2008, 16:14 Uhr
9
http://de.wikipedia.org/wiki/Digital Signature Algorithm, 30.07.2008, 16:18 Uhr
10
http://de.wikipedia.org/wiki/ECDSA, 30.07.2008, 16:20 Uhr
11
www.kes.info/archiv/online/06-5-074.htm, 30.07.2008, 16:55 Uhr
8
9
2.4.3
Pseudozufallszahlengenerator - PRNG
Pseudozufallszahlengeneratoren (PRNG) sind deterministische Algorithmen,
die zufällige “ Zahlen ausgeben. Der Pseudozufallszahlengenerator liefert
”
keine echten Zufallszahlen, aber je besser bzw. zufälliger er die Zahlen erzeugt, desto schlechter können diese Pseudozufallszahlen von echten Zufallszahlen unterschieden werden. Die Zufälligkeit wird durch die statistische Eigenschaften der Zahlenfolge bestimmt, wie gut diese sind, bestimmt die Güte
eines Pseudozufallszahlengenerators. Das erhöht die Sicherheit des Verfahrens, für das der Pseudozufallszahlengenerator eingesetzt wird.12
Erfüllt die Hashfunktion und der PRNG diese Eigenschaften, dann erstellt
das Merkle-Signaturverfahren Einmalsignaturen (engl. One-Time Signature,
OTS) mithilfe eines MSS Schlüsselpaars. Hierzu wird für jede OTS ein
Signierschlüssel und ein Verifikationsschlüssel gebraucht. Die Gültigkeit des
Verifikationsschlüssels wird mithilfe eines Hash-Baumes auf die Gültigkeit
eines einzelnen öffentlichen Schlüssels zurückgeführt.13 Diese Einmalsignaturen werden, wie der Name bereits sagt, nur einmal benutzt, das heißt jedes
Dokument bekommt eine neue OTS mit einem neuen Signierschlüssel und
einem neuen Verifikationsschlüssel. Eine detaillierte Beschreibung des MSS
kann in [8] oder in 14 nachgelesen werden.
Das MSS selbst ist ein statisches Verfahren. Ohne Weiterentwicklung ist es
heute in dieser Form nicht brauchbar. Vom MSS stammt das verbesserte
Merkle-Signaturverfahren ab. Es wird auch als GMSS (engl. Generalized Merkle Signature Scheme) bezeichnet. Das verbesserte Merkle-Signaturverfahren
ist im Gegensatz zu den anderen Verfahren gegen Angriffe von Quantencomputern resistent ist. Dies sind Computer, die die Gesetze der Quantenmechanik benutzen.15 Sie können innerhalb kurzer Zeit eine extrem hohe Anzahl
von Berechnungen gleichzeitig durchführen und sie sind wesentlich schneller
als heutige Computer, ... ihre Rechenleistung verhält sich zu der von heuti”
gen Computern wie eine Mondrakete zu einem Ochsenkarren. ...“.16
Im Gegensatz zu GMSS sind die anderen Signaturverfahren gegen Quantencomputer nicht resistent. GMSS kann die bisher verwendeten Signaturverfahren ersetzen. Dies wird in den folgenden Kapiteln erläutert.
12
http://www.uni-protokolle.de/Lexikon/Pseudozufallszahl.html, 01.08.2008, 13:35 Uhr
http://www.kes.info/archiv/online/06-5-074.htm, 30.07.2008, 16:55 Uhr
14
http://www.kes.info/archiv/online/06-5-074.htm, 30.07.2008, 16:55 Uhr
15
http://de.wikipedia.org/wiki/Quantencomputer, 01.08.2008, 11:45 Uhr
16
http://www.br-online.de/br-alpha/alpha-campus/quantencomputerDID1211892405673/index.xml, 01.08.2008, 11:44 Uhr
13
10
3
Verbessertes Merkle-Signaturverfahren
Das verbesserte Merkle-Signaturverfahren ist ein verallgemeinertes MSS
(engl. Generalized Merkle Signature Scheme, GMSS), es stammt vom MSS
(engl. Merkle Signature Scheme) [8] ab und ist eine Erweiterung von CMSS
(engl. Coronado Merkle Signature Scheme) [7].
CMSS ist ein konkurrenzfähiges Signaturverfahren, doch seine Anwendung ist
auf die Signaturkapazität von 240 Dokumente beschränkt. Im Gegensatz dazu
kann GMSS eine Anzahl von 280 Dokumenten signieren. Außerdem reduziert
GMSS im Vergleich zu CMSS die Signaturgröße und die Signaturerzeugungszeit. Dies wird durch das Verteilen der Kosten für die Signaturerzeugung auf
die verschiedenen vorhergehenden Signaturen und Schlüsselerzeugungen erreicht. Hierzu wird das Winternitz Verfahren benutzt. Dadurch ist es möglich
den Winternitzparameter w so zu wählen, dass kleinere Signaturen geliefert
werden. Die Beschreibung des Winternitz-Verfahrens wird im folgenden Abschnitt 3.1 Winternitz“ aufgeführt.
”
GMSS ist eine hoch flexible Variante von CMSS. Das GMSS kann auf die
Bedürfnisse und Zwänge einer besonderen Umgebung angepasst werden, ohne
dass GMSS seine Effizienz oder seine Konkurrenzfähigkeit gegenüber anderen Signaturverfahren verliert.
Der Unterschied zwischen GMSS und anderen Signaturverfahren liegt in den
verschiedenen mathematischen Problemen, auf denen die Verfahren beruhen.
GMSS basiert auf der Existenz von kryptographischen Hashfunktionen, diese können einfach berechnet werden, aber ihre Invertierung ist praktisch
unmöglich.
In diesem Kapitel wird das Winternitz-Verfahren, das ein Teil des GMSS ist,
erläutert und danach wird das GMSS vorgestellt.
3.1
Winternitz
Das Winternitz Einmalsignaturverfahren (engl. One-Time Signature Scheme,
OTSS) wurde von Robert Winternitz vorgeschlagen und in [3] veröffentlicht.
Es ist eine Erweiterung des Lamport-Diffie Verfahrens aus [11] und wird im
GMSS und in anderen Verfahren [6, 7, 8] verwendet.
Die Sicherheit des Winternitz-OTSS (W-OTSS) basiert auf der Existenz von
kryptographischen Hashfunktionen.
Der Vorteil des Winternitz-Verfahren ist, dass es durch den Winternitzparameter w kleinere Signaturen erstellen kann.
In den folgenden Abschnitten wird der Aufbau des Winternitz-Verfahren beschrieben. Darunter fällt die Schlüssel- und Signaturerzeugung und die Veri11
fikation der Signatur.
3.1.1
W-OT Schlüsselpaarerzeugung
Das W-OT Schlüsselpaar besteht aus dem Signaturschlüssel und dem Verifikationsschlüssel. Diese werden für jedes W-OT Schlüsselpaar neu erstellt.
Der Signaturschlüssel wird für die Signaturerzeugung im nächsten Abschnitt
W-OT Signaturerzeugung“ gebraucht. Der Verifikationsschlüssel wird bei
”
der Signaturverifikation im darauf folgenden Abschnitt 3.1.4 W-OT Signa”
turverifikation“ eingesetzt, um die Gültigkeit der Signatur zu überprüfen.
Für die W-OT Schlüsselpaarerzeugung werden t zufällige Werte
(xt−1 , . . . , x1 , x0 ), xi ∈ {0, 1}n und 0 ≤ i ≤ t − 1 gewählt.
Der Wert t ist die Summe aus t1 , t2 und wird zur Abschätzung der Kosten
für die Schlüsselerzeugung und die Größe des Signaturschlüssels verwendet.
t = t1 + t2
t1 =
lnm
w
, t2 =
l blog t c + 1 + w m
2 1
w
(1)
(2)
Der Winternitzparameter w gibt die Anzahl der Bits an, die simultan erzeugt
werden. Im Winternitzverfahren ist die Bedingung w ≥ 2 festgelegt worden.
Wächst w, dann werden mehr Bits von Z(m), simultan produziert und die
Signaturgröße verringert sich. Z(m) ist der Hashwert des Dokumentes m, der
mit der kryptographischen
Funktion Z : {0, 1}∗ → {0, 1}n berechnet wird.
Der Signaturschlüssel ist X = (xt−1 , . . . , x1 , x0 ).
Die Bitstrings xi werden zufällig gewählt. Sie sind die Geheimnisse.
Der Verifikationsschlüssel Y wird mit Z : {0, 1}∗ → {0, 1}n berechnet. Er
wird für jeden Bitstring im Signaturschlüssel 2w − 1 mal berechnet.
w
Y = Z(yt−1 k . . . ky1 ky0 ) mit yi = Z 2 −1 (xi ), yi ∈ {0, 1}n und 0 ≤ i ≤ t − 1.
k bedeutet Konkatenation von zwei Strings.
Die Schlüsselerzeugung erfordert ((2w − 1) · t) Anwendungen von Z.
Die Größe des Signaturschlüssels und des Verifikationsschlüssels beträgt
(t · n) Bits.[4]
12
3.1.2
W-OT Signaturerzeugung
Für eine Nachricht m mit der Länge n werden folgende Berechnungen durchgeführt, um die Signatur für die Nachricht m zu erstellen.
Zuerst wird an die binäre Repräsentation des Hashwertes Z(m) = d die minimale Anzahl von Nullen angehängt, damit d durch w teilbar wird. Dieser
erweiterte String d wird dann in t1 Blöcke bt−1 , . . . , bt−t1 mit der Länge w
aufgeteilt, d = bt−1 k . . . kbt−t1 .
Als nächstes werden die bi als Integerzahlen interpretiert {0, 1, . . . , 2w − 1}
und es wird die Prüfsumme C gebildet
C=
t−1
X
(2w − bi ), mit (t − t1 ) ≤ i ≤ (t − 1).
(3)
i=t−t1
Die minimale Anzahl von Nullen wird an die binäre Repräsentation von C
gehängt, so dass die Länge des erweiterten Strings C durch w teilbar wird.
Dieser erweiterte String C wird dann in t2 Blöcke bt2 −1 , . . . , b0 mit der Länge
w aufgeteilt, C = bt2 −1 k . . . kb0 .
Zum Schluss wird die Signatur von d berechnet SIG = (δt−1 , . . . , δ1 , δ0 ),
mit δi = Z bi (xi ) und 0 ≤ i ≤ t − 1.
Im schlimmsten Fall benötigt die Signaturerzeugung (t · 2w−1 ) Anwendungen
von Z. Die W-OT Signaturgröße hat (t · n) Bits.[4]
3.1.3
W-OT Signaturerzeugung mit einem PRNG
Die W-OT Signatur kann mittels eines Pseudozufallszahlengenerators (P RN G)
erstellt werden. Mit dem PRNG werden die zu wählenden Geheimnisse xi aus
Abschnitt 3.1.1 W-OT Schlüsselpaarerzeugung“ zufällig bestimmt. Damit
”
wird die Sicherheit des Winternitz-Verfahrens erhöht.
Im GMSS wird in der W-OT Signaturerzeugung ein Pseudozufallszahlengenerator
f : {0, 1}n → {0, 1}n × {0, 1}n , SEEDin 7→ (SEEDout , RAN D)
für die Erstellung der zufälligen xi verwendet, mit 1 ≤ i ≤ t.
Das erste Seed SEEDin wird zufällig aus {0, 1}n gewählt. Damit werden alle
weiteren Seeds berechnet, ebenso die xi .
Berechnungen des P RN Gs:
f (SEEDin ) = (SEEDout , SEED0 )
f (SEEDi−1 ) = (SEEDi , xi )
Die weiteren Berechnungen in dem W-OTSS werden wie gehabt berechnet.
Die Kostenauswertungen für einen Hash (hier ist die Eingabegröße klein und
fest) wird cHASH genannt. Die Kosten für den P RN G-Aufruf werden als
13
cP RN G bezeichnet. Dies wird in [1] beschrieben. Die Erzeugung der W-OT
w
Signatur kostet im Durchschnitt ( (2 −1)·t
) cHASH . Für die Kosten der W-OT
2
Signaturschlüsselerzeugung werden (t + 1) cP RN G benötigt.
Damit später ein Vergleich zwischen den Signaturverfahren möglich ist, wurde in [6] für eine Hashfunktionsauswertung cHASH ein Zeitverbrauch von
0,002 ms festgestellt. Das heißt eine Hashfunktionsauswertung braucht 0,002
ms. Ebenso braucht ein P RN G-Aufruf 0,002 ms. Die Berechnungsoperationen für GMSS werden auf einem Pentium Dualcore 1,8 GHz durchgeführt.[6]
3.1.4
W-OT Signaturverifikation
Für die Verifikation der Signatur SIG = (δt−1 , . . . , δ1 , δ0 ) werden die Bitstrings bt−1 , . . . , b0 wie in der W-OT Signaturerzeugung berechnet. Danach
w
werden die yi = Z 2 −1−bi (δi ) bestimmt, mit 0 ≤ i ≤ t − 1.
Die Signatur ist gültig und wird akzeptiert, wenn Z(yt−1 k . . . ky1 ky0 ) mit dem
Verifikationsschlüssel Y übereinstimmt.
w
w
Es gilt Z 2 −1−bi (δi ) = Z 2 −1 (xi ) = yi für 0 ≤ i ≤ t − 1.[4]
3.2
GMSS
Das verbesserte Merkle-Signaturverfahren besteht aus einem Baum mit T
Ebenen. Die Knoten dieses Baumes sind Merkle-Bäume. Eine kurze Beschreibung der Merkle-Bäume kann in [6] nachgelesen werden. Die Höhe aller
Merkle-Bäume in einer Ebene i ist durch Hi gekennzeichnet. In den verschiedenen Ebenen können die Bäume unterschiedliche Höhen haben,
siehe Abbildung 3.
Jeder Merkle-Baum in einer Ebene i = 1, . . . , T − 1 hat 2Hi Kinder. Die Kin-
Abbildung 3: Hier ist ein Baum mit 4 Ebenen aus dem GMSS dargestellt
der wiederum sind Merkle-Bäume. Die Bäume auf der Ebene T haben keine
14
Kinder. Diese Bäume können 2HT Nachrichten signieren. T REEu,v kennzeichnet den v-ten Merkle-Baum in der Ebene u. Die Nummerierung der
v-Werte beginnt mit Null und die der u-Werte beginnt mit Eins. Zum Beispiel T REE2,3 ist der vierte Baum auf der zweiten Ebene. Die 2H1 +...+Hi−1
Merkle-Bäume in den Ebenen i = 2, . . . , T werden von links nach rechts ihrer
Position entsprechend durchnummeriert T REEi,j , j = 0, . . . , 2H1 +...+Hi−1 −1.
Auf der Ebene 1 gibt es nur einen Merkle-Baum T REE1,0 , die Wurzel.
Die Wurzel von einem Kind im Merkle-Baum wird mit dem OTS-Schlüssel
signiert, der mit einem Blatt seines Elternbaumes übereinstimmt. Wird in
diesem Zusammenhang von Blättern gesprochen, dann sind damit die entsprechenden Einmalsignaturen gemeint.
Die Wurzel des Baumes T REEi,j wird ROOTi,j genannt. SIGi,j bezeichnet
die Einmalsignatur von ROOTi,j , die mithilfe des Blattes li−1 vom Baum
T REEi−1,j erzeugt wurde. Der Baum T REEi−1,j ist der Elternteil von
T REEi,j .
Auf der tiefsten Ebene T des Merkle-Baumes befinden sich die ausgewählten
Nachrichten d, die durch die Blätter signiert sind. Diese Blätter werden SIGd
genannt.
Durch die Ebenenhierarchie wird ein GMSS Schlüsselpaar S = 2H1 + · · · + HT
benutzt. Für die Anzahl der ausgewählten Nachrichten, die signiert werden
können, wird nun dieses eine GMSS Schlüsselpaar verwendet.
Abbildung 4 zeigt einen Aufbau von GMSS aus [4]. Für jede gegebene
Abbildung 4: Verallgemeinerter Aufbau von GMSS, Bildvorlage von [6]
15
Signatur s ∈ {0, . . . , 2H1 + ... + HT − 1} gibt es genau einen einzigen Pfad p
im Merkle-Baum, der zur obersten Ebene 1 (T REE1,0 ) führt. Dieser Pfad
bezieht einen Merkle-Baum auf jeder Ebene i = 1, . . . , T ein.
Eine GMSS Signatur von einer ausgewählten Nachricht d enthält die Einmalsignatur SIGd von d und die Einmalsignaturen SIGi,j von den Wurzeln aller Merkle-Bäume auf dem Pfad p, bis auf T REE1,0 . Für alle Bäume
T REEi,j auf dem Pfad p, enthält eine GMSS Signatur auch den Authentifizierungspfad AU T HT,j,l des Blattes l vom j-ten Baum auf der Ebene T .
Das Blatt l wird zum Signieren für das Kind von T REEi,j oder für das
gewählte d benutzt. Ein Authentifizierungspfad ist definiert als die Folge der
Geschwisterknoten auf dem Pfad vom Blatt l bis zu der Wurzel ROOT1,0 . In
Abbildung 5 wird ein kleines Beispiel für einen Authentifikationspfad eines
Blattes gezeigt. GMSS benutzt das Winternitz OTSS für signierte Nachrich-
Abbildung 5: Authentifikationspfad des Blattes i : (j, c, b)
ten d und ROOTi,j . wi bezeichnet die Winternitzparameter, die in der Ebene
i = 1, . . . , T benutzt werden. Somit besteht der Winternitzparameter w aus
den wi ´s, w = (w1 , w2 , . . . , wT ). Unterschiedliche Ebenen können verschiedene Winternitzparameter benutzen. Deshalb wird der Parameter t aus dem
W-OTSS hier als twi bezeichnet. Das GMSS ist durch eine GMSS Parametermenge
P = (T, (H1 , . . . , HT ), (w1 , . . . , wT ), (K1 , · · · , KT ))
(4)
spezifiert.
T gibt die Anzahl der Ebenen an. Hi kennzeichnet die Höhe der Bäume auf
den Ebenen i = 1, . . . , T . Ki bezeichnet den Parameter für die Authentifikationspfadberechnung, der in den Ebenen i = 1, . . . , T verwendet wird.
Während der Schlüsselerzeugung werden mithilfe der ersten Signatur im
GMSS die Signaturen SIGi,j und die Authentifikationspfade AU T Hi,j,l für
die Merkle-Bäume, die auf dem Pfad p verwendet werden, berechnet. SIGi,j
und AU T Hi,j,l werden für die Vorberechnung der nachfolgenden Signaturen
16
benötigt. Die Werte der oberen Ebenen wechseln nicht oft, so dass die Vorberechnung auf viele Schritte verteilt werden kann. Dadurch ergibt sich zum
Einen eine deutlichere Verbesserung der Signiergeschwindigkeit. Zum Anderen kann die Größe der Winternitzparameter wi so gewählt werden, dass sich
kleinere Signaturen ergeben.
Mit den getroffenen und erklärten Definitionen wird die Schlüsselerzeugung
im nächsten Abschnitt durchgeführt.[6]
3.2.1
GMSS Schlüsselerzeugung
Mit der Parametermenge P und den initialen Seeds
SEEDi,0,0 , . . . , SEEDT,0,0 berechnet die Schlüsselerzeugung den GMSS
öffentlichen Schlüssel ROOT1,0 und den GMSS privaten Schlüssel, der aus
den folgenden Einträgen besteht:
SEEDi,0,0 ,
SIGi,0 ,
AU T Hi,0,0 ,
ST AT Ei,0,0 ,
i = 1, . . . , T
i = 2, . . . , T
i = 1, . . . , T
i = 1, . . . , T
, SEEDi,2,0 ,
,
ROOTi,1 ,
,
AU T Hi,1,0 ,
, ST AT Ei,1,0 ,
i = 2, . . . , T
i = 2, . . . , T
i = 2, . . . , T
i = 2, . . . , T
Die Seeds müssen geheim bleiben und können nur im privaten Schlüssel gespeichert werden. Die anderen Einträge des privaten Schlüssels müssen nicht
dort gelagert werden.[4]
Die Schlüsselerzeugung erfolgt in drei Schritten.
Zuerst wird die Wurzel des ersten Baumes in jeder Ebene ROOTi,0 ,
i = 1, . . . , T berechnet. Dazu werden die entsprechenden Bäume der ROOTi,0 ,
i = 1, . . . , T konstruiert. Dies geschied mit dem Algorithmus 1, der in [6] beschrieben wird. Dieser Algorithmus 1 wird auch Treehash genannt.
Als nächstes werden die Wurzeln ROOTi,1 und die Authentifizierungspfade
AU T Hi,1,0 für die nachfolgenden Bäume T REEi,1 i = 2, . . . , T mit dem Algorithmus 1 aus [6] berechnet.
Schließlich, nach der Erzeugung des zweiten Baumes in jeder Ebene, sind die
Seeds SEEDi,2,0 verfügbar. Sie werden als ein Teil des privaten Schlüssels
aufbewahrt. Damit eine effiziente Erstellung der Bäume T REEi,2 während
des Signierprozesses möglich ist.[6]
Die Berechnung von 2Hi Blätter werden für den Aufbau eines Baumes auf
Ebene i verlangt und es werden 2Hi − 1 Auswertungen der Hashfunktion gebraucht, um die Innerenknoten zu berechnen. Jede Blattberechnung benötigt
((2wi − 1) · twi + 1) Auswertungen der Hashfunktion und (twi +1) Aufrufe des
P RN Gs. Damit ergeben sich die gesamten Kosten für einen Baum auf
17
Ebene i als
ctree (i) = (2Hi · (twi · (2wi − 1) + 2) − 1) cHASH + 2Hi · (twi + 1) cP RN G (5)
Zum Konstruieren der zwei Bäume (einen auf Ebene i = 2, . . . , T und einen
auf Ebene i = 1) belaufen sich die Gesamtkosten für die Schlüsselerzeugung
auf
ckeygen =
T
X
(ctree (i)) +
i=1
T
X
(ctree (i))
(6)
i=2
Der benötigte Speicher für die Schlüssel hängt von der Ausgabegröße der
Hashfunktion ab, hier ist sie n. Jede Wurzel ROOTi,j ist ein einzelner Hashwert
und fordert n Bits. Der öffentliche Schlüssel ist die Wurzel ROOT1,0 . Somit
ist die Größe des öffentlichen Schlüssels
mpubkey = n Bits.
(7)
Für jede Ebene i = 2, . . . , T werden zwei Seeds, zwei Authentifikationspfade,
Algorithmuszustände, eine Wurzel und eine OT-Signatur gespeichert. Für
die Ebene i = 1 wird ein Seed, ein Authentifikationspfad und ein Algorithmuszustand gespeichert. Ein Seed SEEDi,j,l braucht n Bits. Die Kosten für
eine Authentifikation zusammen mit dem Algorithmuszustand erfordern
jH k
i
− 3 · Ki − 2 + 2Ki · n Bits.
(8)
mauth (i) = 3 · Hi +
2
Damit beträgt die Gesamtgröße des privaten Schlüssels
mprivkey
T
T
X
X
=
(mauth (i) + 1) +
(mauth (i) + twi−1 + 2) · n Bits.
i=1
i=2
[4]
3.2.2
GMSS Signaturerzeugung
Für die s-te GMSS Signatur (s ∈ {0, . . . , 2H1 + ... + HT − 1}), gilt
jT = b 2HsT c,
ji = b j2i+1
Hi c,
i = 1, . . . , T − 1
lT = s mod 2HT , li = ji+1 mod 2Hi , i = 1, . . . , T − 1.
18
(9)
Die Signatur des Blattes lT vom Baum T REET,jT auf der untersten Ebene T besteht aus (T REET,jT , T REET −1,jT −1 , . . . , T REE2,j2 , T REE1,0 ). Weil
sie nur mit dem Authentifikationspfad p vom Blatt lT von T REET,jT zum
obersten Baum T REE1,0 gelangen kann.
mithilfe des lT -ten Blattes vom T REET,jT wird die Einmalsignatur SIGd der
Nachricht d erzeugt. Die OTS SIGi,ji der Wurzel des Baumes T REEi,ji wird
mittels des li−1 -ten Blattes von T REEi−1,ji−1 i = 2, . . . , T erzeugt.
Die s-te GMSS Signatur besteht aus vier Teilen:
1.
2.
3.
4.
dem Index s,
der OTS SIGd ,
der OTS SIGi,ji i = 2, . . . , T und
dem Authentifizierungspfad AU T Hi,ji ,li i = 1, . . . , T .
Der benötigte Speicherplatz für eine GMSS Signatur ergibt sich aus den
T Authentifikationspfaden (Hi · n Bits) und den T Einmalsignaturen
(twi · n Bits), eine für jede Ebene i = 1, . . . , T
msignature =
T
X
(Hi + twi ) · n Bits.
(10)
i=1
Die Signaturerzeugung erfolgt in zwei Teilen.
Der erste Teil, der online Teil, berechnet SIGd und gibt die Signatur aus. Der
zweite Teil, der offline Teil, ist für die verteilte Berechnung der bevorstehenden OT-Signaturen der Wurzeln und der Authentifizierungspfade zuständig.
Außerdem führt der offline Teil eine Aktualisierung des privaten Schlüssels
durch. Deshalb ist GMSS ein Schlüsselentwicklungssignaturverfahren [6]. Das
bedeutet, dass der offline Teil für die erste Signatur s = 0 schon mit der
Schlüsselerzeugung erledigt wird.
Die Erzeugung der OTS-Schlüssel erfordern einen Aufruf des P RN Gs, um
das Seed zu erhalten und twT Aufrufe sind notwendig, um die Geheimnisse
zu bekommen.
Die durchschnittlichen
Signaturkosten des Winternitz OTSS
wT
(2 −1)·twT
) cHASH .
sind (
2
Für den online Teil ergeben sich die durchschnittlichen Kosten von
conline =
(2wT − 1) · twT
cHASH + (twT + 1) cP RN G .
2
(11)
Der offline Teil wird in weitere drei Unterteile gegliedert, in denen die Vorberechnungen für die nächsten Signaturen, die nächsten Bäume mit ihren
19
Blättern und die nächsten Authentifikationspfade stattfinden.
Die Kosten werden effizient im offline Teil verteilt. Die Idee von [6] basiert
auf der Beobachtung, dass Signaturen von Bäumen aus den oberen Ebenen
nicht oft wechseln. Im Folgenden entsprechen die Werte li , ji der aktuellen
Signatur s.
Die Vorberechnung von SIGi,ji+1 i = 2, . . . , T muss bereits fertig sein, bevor die nächste Signatur den Baum T REEi,ji+1 verwendet. SIGi,ji+1 wird
mit dem OTS-Schlüssel erzeugt, der entweder dem (li−1 + 1)-ten Blatt des
Baumes T REEi−1,ji−1 oder dem 0-ten Blatt des Baumes T REEi−1,ji−1 +1 entspricht. Der letztere Fall taucht auf, wenn (li−1 + 1) = 0 mod 2Hi−1 ist. Dann
muss zum Beispiel der nächste Baum aus der nächsten oberen Ebene i − 1
benutzt werden.
Im Moment wird angenommen, dass ROOTi,ji+1 bekannt ist, wenn der Baum
T REEi,ji zum ersten Mal benutzt wird, zum Beispiel wenn li = 0 ist. Dies
trifft zu, wenn ji = 0 ist und nachdem ROOTi,1 mit der Schlüsselgenerierung
berechnet wurde. Die Berechnung von SIGi,ji+1 wird über die 2Hi Blätter
des Baumes T REEi,ji verteilt. Wenn li = 0 ist, wird ROOTi,ji+1 benutzt und
die initialen Schritte des Winternitz OTSS werden ausgeführt. Dann wird
SIGi,ji+1 Schritt für Schritt berechnet, jedes Mal wird ein Blatt im Baum
T REEi,ji weiter voran geschritten. Die Erzeugung von SIGi,ji+1 ist komplett,
wenn li = 2Hi −1 ist. Die verteilten Berechnungen für die OT-Signaturen sind
in der Abbildung 6 dargestellt.
Die OTS SIGi,ji+1 wird mithilfe der Winternitzparameter von
Abbildung 6: Verteilte OT-Signaturerzeugung aus [4]
Ebene i − 1 (wi−1 ) erzeugt und fordert im Durchschnitt
(2wi−1 −1)·twi−1
Hashauswertungen und (twi−1 + 1) Aufrufe des P RN Gs. Die
2
Kosten für die Berechnung der OT-Signaturen sind
csig (i) =
l (2wi−1 − 1) · t
m
lt
m
wi−1
wi−1 + 1
c
+
cP RN G .
HASH
2Hi +1
2Hi
20
(12)
Es wurde angenommen, dass ROOTi,ji+1 bekannt ist, wenn T REEi,ji zum
ersten Mal benutzt wurde. Deshalb muss ROOTi,ji+2 vor berechnet werden,
während mit T REEi,ji+1 gerechnet wird. Wenn zu T REEi,ji+1 gewechselt
und mit der Erzeugung von SIGi,ji+2 begonnen wird, muss die Vorberechnung von ROOTi,ji+2 schon fertig sein. Dies wird mit den nachfolgenden Berechnungen der Blätter von Baum T REEi,ji+2 erreicht und sie werden weiter
an den Algorithums 1 (Treehash) in [7] gegeben. Während das li -te Blatt
von T REEi,ji benutzt wird, erfolgt die Berechnung des li -ten Blattes von
T REEi,ji+2 . Seine Berechnung wird auf die 2Hi+1 Blätter von T REEi+1,ji+1 ,
dem aktuellen Baum auf der nächsten unteren Ebene i+1, verteilt. Nachdem
das Blatt erzeugt ist, wird es zum Treehash durchgelassen, dieser konstruiert
die ROOTi,ji+2 . Der Treehash muss 2Hi mal aufgerufen werden, um die Wurzel
eines Baumes der Höhe Hi zu erzeugen. Die Konstruktion von ROOTi,ji+2 ist
komplett, wenn vom Baum T REEi,j zum Baum T REEi,ji+1 gewechselt wird.
Das heißt, dass der SEEDi,ji+2 ,0 ein Teil des privaten Schlüssels ist und für
seine Berechnung das 0-te Blatt von T REEi,ji+2 von Nöten ist, das während
der Erzeugung von ROOTi,ji+1 generiert wird. Wenn ji = 0 ist, wird der Seed
während der Schlüsselerzeugung berechnet. Für die unterste Ebene i = T
hat die Berechnung der Blätter nur einmal statt zu finden. Auch AU T Hi,ji+2
wird während der Vorberechnung von ROOTi,ji+2 gespeichert. Die
verteilte Berechnung einer Wurzel ist in Abbildung 7 dargestellt.
Die Erzeugung des li -ten Blattes des Baumes T REEi,ji +2 erfordert
Abbildung 7: Verteilte Wurzelerzeugung aus [4]
((2wi − 1) · twi + 1) cHASH und (twi + 1) cP RN G . Weil das entsprechende
W-OT Schlüsselpaar erzeugt werden muss und dies mithilfe des
W-Parameters wi auf der Ebene i erfolgt. Der erzeugte OTS-Schlüssel braucht
21
((2wi − 1) · twi ) Hashauswertungen und die Berechnung des li -ten Blattes erfordert eine zusätzliche Auswertung der Hashfunktion, siehe Abschnitt 3.1
Winternitz“. Durch die 2Hi+1 Blätter im Baum der Ebene i + 1 kann die
”
Berechnung des li -ten Blattes auf 2Hi+1 Schritte verteilt werden, die c1leaf (i)
ergeben. Die Kosten für das Blatt li des Baumes T REEi,ji +2 sind
c1leaf (i) =
l (2wi − 1) · t + 1 m
lt + 1m
wi
wi
c
+
cP RN G .
HASH
2Hi+1
2Hi+1
(13)
Wenn die Berechnung des li -ten Blattes abgeschlossen ist, zum Beispiel wenn
vom Blatt li zum Blatt li+1 in T REEi,ji gewechselt wird, wird das berechnete
Blatt an den Treehash weitergeleitet. Der Treehash berechnet den Elternknoten dieses Blattes abhängig von den Knoten, die vorher auf dem Stack
gespeichert wurden. Dafür benötigt der Treehash meistens Hi Auswertungen
der Hashfunktion.
Die Kosten für das Blatt des Baumes T REEi,j sind
c2leaf (i) = Hi cHASH .
(14)
[6]
Für die Ebene i = T , muss das jeweilige Blatt des Baumes T REET,jT +2
einmal berechnet werden.
c3leaf = ((2wT − 1) · twT + HT + 1) cHASH + (twT + 1) cP RN G
(15)
[4]
Als nächstes wird die Vorberechnung von AU T Hi,ji ,li+1 beschrieben, den
Authentifizierungspfad des nächsten Blattes von T REEi,ji . In [6] wird dazu ein Alogrithmus von Szydlo aus [9, 10] verwendet. Dieser Algorithmus
nutzt die Fälle Hi − 1 vom Treehash, um die bevorstehenden Authentifizierungsknoten zu berechnen. Gegeben sei ein Blatt mit Index li , Szydlo´s
Algorithmus prüft zuerst, ob ein neuer Fall eines Treehashes erzeugt werden
muss. Dann spendiert er die meisten Hi berechnenden Einheiten, die entweder Hashfunktionsauswertungen für die While-Schleife des Treehashes oder
für die Blattberechnungen sind. Wieder wird die Berechnung der geforderten Blätter über 2Hi+1 Blätter von T REEi+1,ji+1 verteilt. Wenn das Blatt
li+1 = 0 vom Baum T REEi+1,ji+1 benutzt wird, werden die Anfangsschritte
des Szydlo´s Algorithmus erfüllt und es wird entschieden,
(1) ob ein neuer Fall eines Treehashes erzeugt werden muss und
(2) wie viele neue Blätter gefordert werden für den aktiven Treehash-Fall.
22
Diese Blätter werden Schritt für Schritt berechnet, wie oben beschrieben.
Wenn li+1 = 2Hi+1 − 1 gilt, dann sind die Berechnungen der geforderten
Blätter fertig und sie werden an Szydlo´s Algorithmus weitergereicht, die
aktualisierten Treehash-Fälle und die AU T Hi,ji ,li +1 werden ausgegeben.
AU T Hi,ji ,0 wird während der Konstruktion der ROOTi,ji gespeichert und ist
deshalb schon verfügbar, wenn li = 0 ist. Also, muss AU T HT,jT ,lT +1 einmal
berechnet werden. Die verteilte Berechnung eines Authentifikationspfades wird in Abbildung 8 gezeigt.
Der Algorithmus aus [4, in 1.4.5] fordert für jeden Authentifikationspfad die
Abbildung 8: Verteilte Authentifikationspfadberechnung aus [4]
i)
Berechnung von ( (Hi −K
+ 1) Blättern. Die Blätter werden mithilfe des W2
Parameters wi auf der Ebene i berechnet. Für die Erzeugung eines Blattes
werden (twi + 1) Aufrufe des P RN Gs und ((2wi − 1) · twi + 1) Hashi)
+ 1) Blätter
funktionsauswertungen benötigt. Die Berechnung dieser ( (Hi −K
2
Hi+1
Schritte im Baum auf Ebene i + 1 verteilt. Jedes Mal
wird über die 2
wird ein Blatt in T REEi+1,ji+1 voran geschritten, um die geforderten Blätter
zu berechnen.
c1auth (i) =
H − K + 2
i
i
· c1leaf (i)
2
(16)
Die kompletten Blätter werden an den Treehash weitergegeben, der ihre Elternknoten berechnet. Der Algorithmus aus [4, in 1.4.5] erfordert meistens
i )−1
( 3(Hi −K
+ 1) Auswertungen der Hashfunktion für die Berechnung der El2
tern. Des Weiteren werden (Hi − Ki ) Aufrufe des P RN Gs gefordert, um die
bevorstehenden Seeds vorzubereiten. Diese Operationen werden nicht verteilt, aber sie werden dafür nur einmal durchgeführt. Jedes Mal wird ein
Blatt in T REEi,ji voran geschritten, um die geforderten Blätter zu berechnen.
23
c2auth (i) =
3(Hi − Ki ) − 1
cHASH + (Hi − Ki ) cP RN G
2
(17)
[6]
Die Blätter werden für die Berechnung der bevorstehenden Authentifikationspfade gefordert, sie werden verteilt auf alle Ebenen i = 1, . . . , T − 1. Für die
T +2
+ 1) Blätter einmal berechnet.
Ebene i = T werden die ( HT −K
2
c3auth
H − K + 2 3(H − K ) − 1
T
T
T
T
3
=
· cleaf +
cHASH +
2
2
(HT − KT ) cP RN G
(18)
Insgesamt sind die Kosten des offline Teils im schlimmsten Fall gegeben als
cof f line
T
T −1
X
X
=
(csig (i)) +
(c1leaf (i) + c2leaf (i) + c3leaf ) +
i=2
i=2
T −1
X
(c1auth (i) + c2auth (i) + c3auth )
(19)
i=1
Die teilweise konstruierte OTS SIGi,ji +1 wurde für die Ebenen i = 2, . . . , T
gespeichert und erfordert meistens (twi−1 · n) Bits. Der Treehashstack wurde
für die Erzeugung der Wurzel ROOTi,ji +2 für die Ebenen i = 2, . . . , T gespeichert, dies erfordert ((Hi · n) Bits.) Ein Blatt benötigt meistens
(twi · n) Bits. Für die Erzeugung von ROOTi,ji +2 wird ein Blatt für jede
Ebene i = 2, . . . , T − 1 gespeichert. Für den Authentifikationspfad wird
ebenfalls ein Blatt für jede Ebene i = 1, . . . , T − 1 gespeichert. Nachdem
die Blätter berechnet worden sind, die für den Authentifikationspfad nacheinander gefordert werden, wird ein teilweise konstruiertes Blatt einmal gespeichert. Schließlich werden die teilweisen Zustände ST AT Ei,ji +2,0 für den
Authentifikationspfadalgorithmus aus [4] der Ebene i = 2, . . . , T gebraucht.
Sie benötigen meistens mauth (i) Bits.
Die Gesamtkosten des offline Teils für die Speicheranforderungen sind im
schlimmsten Fall
mof f line
T
T −1
T −1
X
X
X
=
(twi−1 + Hi + mauth (i)) +
(twi ) +
(twi ) Bits. (20)
i=2
i=2
[4]
24
i=1
3.2.3
GMSS Signaturverifikation
Mit der GMSS Signaturverifikation wird geprüft, ob eine Signatur gültig ist.
Ist dies der Fall, dann wurde das signierte Dokument nicht verändert.
Der Verifikationsprozess von GMSS ist im Wesentlichen derselbe wie für MSS
aus [8] und CMSS aus [7]. Der Verifizierer kennt den öffentlichen Schlüssel
ROOT1,0 und die Parametermenge P , die vom Signierer erstellt wurde. Zuerst verifiziert er die Einmalsignatur SIGd der gewählten Nachricht d mithilfe
des Winternitzparameters wT . Er erhält den Verifikationsschlüssel für seine
Signatur, zum Beispiel das Blatt lT des Baumes T REET,j . Dann wiederholt
der Verifizierer die folgenden Schritte für i = T, . . . , 2:
(1) benutzt li und AU T Hi,j,li um ROOTi,j zu berechnen,
(2) benutzt ROOTi,j , verifiziert SIGi,j und erhält li−1 .
Schließlich, benutzt der Verifizierer l1 und AU T H1,j,l1 , um ROOT1,0 zu erhalten. Wenn ROOT1,0 mit dem öffentlichen Schlüssel des Signierers übereinstimmt, ist die Signatur gültig und wird akzeptiert.
Der Verifizierer sollte T Einmalsignaturen verifizieren, dies erfordert
(2wT −1)·twT
) Auswertungen der Hashfunktion. Weitere Hi Hashfunktionsaus(
2
wertungen werden gefordert, um den Pfad zur Wurzel mittels des Authentifikationspfades zu rekonstruieren.
Insgesamt fordert die Verifikation eine durchschnittliche Anzahl von Hashfunktionsauswertungen von
cverif y =
T wi
X
(2 − 1) · twi
+ Hi cHASH .
2
i=1
(21)
[6]
In diesem Kapitel wurden die Formeln und Parameter vorgestellt, die für
das GMSS wichtig sind. Da das GMSS später mit anderen Signaturverfahren
verglichen werden soll, müssen die wählbaren Parameter genauer betrachtet
werden. Dies geschied im nächsten Kapitel.
25
4
Parameter - n, wi, T, Hi, Ki
In den Anwendungsgebieten der digitalen Signaturen werden je nach Gebiet andere Prioritäten für den Speicherplatzbedarf und die Berechnungszeiten gesetzt, zum Beispiel für die Schlüsselgröße oder für die Signaturverifizierungszeit. Damit GMSS später mit den verschiedenen Gebieten verglichen
werden kann, müssen für den Speicherplatzbedarf und die Berechnungszeiten die optimalen Parameterwerte ermittelt werden. Die ermittelten Werte
werden im darauf folgenden Kapitel 6 “Szenarien“ gebraucht.
Die Parameterwerte werden hier im Kapitel 4 bestimmt. Dazu werden die
verwendeten Parameter aus dem GMSS vorgestellt. Es gibt nur fünf Parameter, die bei GMSS gewählt werden können, diese lauten n, wi , T , Hi und
Ki . Außerdem wird kurz gezeigt auf welche Formeln sie Einfluss nehmen.
Hierauf wird in den folgenden Abschnitten noch vertieft eingegangen.
Im Abschnitt 4.1 Abhängigkeiten - Parameter - Formeln“ werden die Ab”
hängigkeiten zwischen den Parametern untereinander und die Abhängigkeiten
zwischen Parametern und den verwendeten Formeln untersucht, damit die
ermittelten Bedingungen und eventuellen Einschränkungen für die spätere
Parameterwahl berücksichtigt werden können.
Die Parameterwahl wird im Teil 4.2 Parameterwahl“ durchgeführt. Hier
”
wird für jeden Parameter die beste Ebene ermittelt, auf der der Parameter
erhöht werden kann um trotzdem optimale Werte für die Formeln zu bekommen.
Im Abschnitt 4.3 Zusammenfassung der Parameter“ werden die Ergebnisse
”
zusammengefasst und kurz wiederholt.
Die betrachteten Formeln sind
im Kapitel 3 Verbessertes Merkle-Signaturverfahren“ zu finden, msignature
”
(10), mprivkey (9), mpubkey (7), ckeygen (6), conline (11), cof f line (19), cverif y (21)
und mof f line (20).
Der Parameter n ist von der verwendeten Hashfunktion abhängig, weil er die
feste Ausgabelänge dieser Funktion ist. Somit kann n nicht beliebig gewählt
werden. Soll der Parameter n gewechselt werden, dann funktioniert das nur
mit dem Tausch der verwendeten Hashfunktion. Dies ist aber kein Nachteil,
da jede Hashfunktion, die die Voraussetzungen aus Kapitel 2 Digitale
”
Signaturen“ erfüllt, eingesetzt werden kann. n ist ein wichtiger Parameter,
da er alle verwendeten Formeln direkt oder indirekt beeinflusst. Zum Beispiel
hat der öffentliche Schlüssel mpubkey dieselbe Schlüssellänge wie n und über
den Parameter twi wirkt n indirekt auf die Kosten der Signaturverifikation
cverif y .
Die Werte msignature und mprivkey werden von n direkt gelenkt und wachsen
26
quadratisch mit bei einem steigenden n. Der Wert von mpubkey wächst linear
bei einem steigenden n. Die restlichen Formeln ckeygen , conline , cof f line , cverif y
und mof f line werden von n indirekt über den Parameter twi , der als Platzhalter agiert, beeinflusst. Zur Erinnerung, der Platzhalter twi wird wie folgt
berechnet, aus (1, 2)
t = t1 + t2
lnm
l blog t c + 1 + w m
2 1
t1 =
, t2 =
w
w
Das heißt, erhöht sich n, dann wächst auch der Wert von twi und die beeinflussten Werte werden größer. In der Tabelle 1 auf Seite 29 werden diese
Auswirkungen gezeigt.
Der Winternitzparameter w besteht aus den Winternitzparametern wi , die
für jede Ebene i unterschiedliche Werte haben können, 1 ≤ i ≤ T . Es gilt
w ≥ 2 und es sollte wi n gelten ( “ = viel kleiner als), weil sonst die
”
Werte für ckeygen , conline , cof f line und cverif y steigen. Sie haben exponentielles
Wachstum. Unter Berücksichtigung dieser Bedingungen können die wi aus
den natürlichen Zahlen frei gewählt werden. w wirkt sich auf alle Parameter
im GMSS aus bis auf mpubkey , da dieser Wert nur von n abhängt.
w beeinflusst die Berechnung für ckeygen , conline , cof f line und cverif y direkt.
Diese Werte steigen exponentiell mit wachsenden wi an. Alle anderen verwendeten Werte im GMSS werden von w indirekt über den Platzhalter twi
beeinflusst. Dies sind msignature , mprivkey und mof f line . Sie fallen linear bei
steigendem wi . Eine Übersicht befindet sich in Tabelle 1 auf Seite 29.
T gibt die Anzahl der Ebenen im GMSS an, weil das GMSS mit mehreren Ebenen besser die Berechnungszeiten zum Beispiel von ckeygen verteilen
und damit schneller rechnen kann. Deshalb sollte T ≥ 2 sein. Ansonsten gibt
es für die Wahl des Parameters T aus den natürlichen Zahlen keine weiteren
Beschränkungen.
Die Werte msignature , mprivkey , ckeygen , cof f line , cverif y und mof f line steigen linear bei wachsendem T . Dagegen hat T auf conline nur auf der untersten
Ebene und auf mpubkey keinen Einfluss. Je größer T wird, desto mehr Ebenen
gibt es. Dadurch brauchen alle Berechnungen mehr Zeit, mit Ausnahme von
mpubkey und conline . Deshalb sollte auf die Größe von T geachtet werden. In
der Tabelle 1 auf Seite 29 ist eine Übersicht zu finden.
Die Höhe H besteht aus den Höhen Hi , 1 ≤ i ≤ T . Die verschiedenen Höhen
der einzelnen Bäume auf den unterschiedlichen i Ebenen werden mit Hi angegeben, mit i = 1, . . . , T . Hi gibt die Entfernung des jeweiligen Blattes li
27
bis zur entsprechenden Wurzel ROOTi,j des Baumes T REEi,j auf der Ebene
i an.17 Deshalb ist Hi wichtig, um die Anzahl der Signaturen zu bestimmen,
die mit einem GMSS Schlüsselpaar erstellt werden können. Es gilt,
Anzahl der Signaturen = 2H1 +H2 +...+HT .
Jedes Hi kann frei gewählt werden, mit der hinreichenden Bedingung Hi ≥ 2
und Hi ∈ N. Für die Hi ´s gibt es keine weiteren Bedingungen.
Die Werte msignature , mprivkey , cverif y und mof f line wachsen linear mit steigendem Hi . ckeygen steigt exponentiell mit wachsendem Hi . Dagegen fällt cof f line
exponentiell bei steigendem Hi . Hi hat keine Wirkung auf die Werte von
mpubkey und conline , weil mpubkey = n ist und die Berechnung von conline nicht
von Hi abhängt, siehe Tabelle 1 auf Seite 29.
K besteht aus den Parametern Ki , 1 ≤ i ≤ T . Ki bezeichnet den Parameter
für die Authentifikationspfadberechnung, die in den Ebenen i = 1, . . . , T verwendet werden. Eine Bedingung für die Ki ist: 2 ≤ Ki ≤ (4 + Hi ), da sonst
die Berechnung für cof f line aus (11) ein negatives Ergebnis liefert. Der Grund
hierfür liegt in den Subtraktionen der Formeln c1auth (i) aus (16), c2auth (i) aus
(17) und c3auth (i) aus (18). Aber generell sollte Ki Hi gelten ( “ =
”
viel kleiner als), denn sonst versucht das GMSS mithilfe des Parameters Ki
für die Authentifikationspfadberechnung mehr Knoten zu speichern als im
Baum vorhanden sind. Unter diesen Bedingungen können die Ki ´s frei aus
den natürlichen Zahlen bestimmt werden.
Die Parameter Ki haben nur auf die Formeln von mprivkey , cof f line und
mof f line Auswirkungen, siehe Tabelle 1 auf Seite 29. mprivkey und mof f line
wachsen exponentiell mit steigendem Ki . Im Gegensatz dazu fällt cof f line linear bei Erhöhung von Ki .
msignature gibt die Signaturgröße an. mprivkey ist die Größe des privaten
Schlüssels und mpubkey des öffentlichen Schlüssels. Die Zeit für die Schlüsselerzeugung gibt ckeygen an, für die Signaturerstellung conline und cof f line , für
Signaturverifikation cverif y . Der benötigte Speicherplatz für die Signaturerzeugung wird mit mof f line angegeben.
17
http://de.wikipedia.org/wiki/bin, 17.07.2008, 07:25 Uhr
28
n
N
N
N
N
NT
N
N
N
w
H
H
/
N
NT
N
N
H
T
N
N
/
N
NT
N
N
N
H
N
N
/
N
/
H
N
N
K
/
N
/
/
/
H
/
N
F ormeln
msignature
mprivkey
mpubkey
ckeygen
conline
cof f line
cverif y
mof f line
Tabelle 1: Verhalten der Formelergebnisse bei steigendem n, w, T, H, K
Hier ist eine Übersicht über die Einflüsse der Parameter auf die unterschiedliche Schnelligkeit des Wachstums bzw. der Verkleinerung der Formelwerte
zu sehen.
linear, quadratisch, exponentiell, N: steigend, H: fallend, NT steigend
nur auf Ebene T , a ∈ {n, w, T, H, K},
b ∈ {msignature , mprivkey , mpubkey , ckeygen , conline , cof f line , cverif y , mof f line }
In dieser Tabelle wachsen die a´s.
”a N b” bedeutet, dass b linear ansteigt bei einem wachsenden a.
”a H b” bedeutet, dass b exponentiell fällt mit wachsendem a.
”a / b” bedeutet, dass der Parameter a keinen Einfluss auf die Formel von b
hat.
Ein Beispiel ist ”w H mprivkey ”, mprivkey fällt linear bei einem steigendem w.
Ein weiteres Beispiel ist, ”H N ckeygen ”, ckeygen steigt exponentiell bei einem
wachsendem H.
4.1
Abhängigkeiten - Parameter - Formeln
Wie in Kapitel 4 bereits gesagt, beeinflussen die Parameter n, wi , T , Hi und
Ki das GMSS unterschiedlich. Außerdem gibt es Abhängigkeiten zwischen
diesen Parametern. Diese werden hier im Abschnitt Abhängigkeiten zwi”
schen Parametern“ untersucht und betrachtet. Der darauf folgende Teil 4.1.2
Abhängigkeiten der Formeln von den Parametern“ beschäftigt sich mit den
”
Abhängigkeiten zwischen den Parametern und den Formeln. Hier wird gezeigt welche Formel von welchen Parametern beeinflusst wird und wie diese
Parameter gewählt werden müssen, um so die kleinstmöglichen Werte von
den Formeln zu erhalten.
Für die spätere optimale Parameterwahl werden die verschiedenen Abhängigkeiten und Einflüsse von den Parametern genauer betrachtet, sowie die daraus resultierenden Ergebnisse. Die Auswirkungen auf die einzelnen Ebenen
werden im Abschnitt 4.2 Parameterwahl“ erläutert.
”
29
Die verwendeten Formeln sind aus Kapitel 3 Verbessertes Merkle-Signatur”
verfahren“ msignature (10), mprivkey (9), mpubkey (7), ckeygen (6), conline (11),
cof f line (19), cverif y (21) und mof f line (20).
4.1.1
Abhängigkeiten zwischen den Parametern
In diesem Abschnitt werden die Abhängigkeiten zwischen den Parametern
n, wi , T, Hi und Ki untereinander betrachtet. Wenn Abhängigkeiten gefunden werden, werden die daraus resultierenden Einschränkungen für die Parameter später bei der Parameterwahl berücksichtigt.
Der Parameter n ist bis auf die Wahl der verwendeten Hashfunktion unabhängig. Er hat keine Auswirkungen auf die anderen Parameter wi , T , Hi
und Ki .
Die Länge des Winternitzparameters w bzw. die Anzahl der wi ´s in w hängt
von T ab, mit 1 ≤ i ≤ T . Des Weiteren sollte wi n gelten ( “ = viel
”
kleiner als), weil sonst die Werte für ckeygen , conline , cof f line und cverif y extrem
nach oben gehen. Zum Beispiel, ist n = 160, sollte der Höchstwert eines wi ´s
14 sein. Die Bedingung aus dem Winternitz-Verfahren muss jedes wi erfüllen,
wi ≥ 2. Es gibt sonst keine weiteren Abhängigkeiten von w zwischen den restlichen Parametern T , Hi und Ki .
Von der Anzahl der Ebenen T hängt die Anzahl der wi , der Hi und der
Ki ab. Zum Beispiel wenn T = 5 ist, d.h. es gibt fünf Ebenen. Das bedeutet,
es gibt genau fünf Winternitzparameter wi . Das Gleiche gilt für Hi und Ki .
T ist von n unabhängig und kann frei aus den natürlichen Zahlen gewählt
werden.
Die Höhe H ist soweit unabhängig von den anderen Parametern, bis auf
T . Die Anzahl der Hi ´s hängt von der Größe des Parameters T ab. Es sollte
Hi ≥ 2 gelten.
Der Parameter K ist von H und T abhängig. Die Anzahl der Ki ´s ist von der
Größe des Parameters T abhängig. Außerdem muss Ki Hi sein ( “ =
”
viel kleiner als), da sonst das GMSS versucht mehr Knoten zu speichern als
im Baum vorhanden sind. Des Weiteren unterliegt jedes Ki der Bedingung
Ki ≥ 2. Somit gilt für Ki , 2 ≤ Ki Hi mit i = 1, . . . , T .
30
4.1.2
Abhängigkeiten der Formeln von den Parametern
In diesem Teil werden die Abhängigkeiten der Formeln von den Parametern
untersucht. Um die besten Werte für die Formeln zu bekommen, müssen gute
Kombinationen der Parameter gefunden werden. Deshalb wird für jede Formel, die am Anfang von Kapitel 4 benannt wurde, die Betrachtung über die
Parameter w, T , H und K durchgeführt. Der Sicherheitsparameter n wird
hier nur am Rande mit einbezogen, weil er durch die verwendete Hashfunktion fest ist und nicht im laufenden Verfahren geändert werden kann.
Die Signaturgröße msignature ist von den Parametern w, T und H abhängig.
In der Tabelle 2 sind die verschiedenen Kombinationsmöglichkeiten aufgeführt,
um den Wert von msignature zu beeinflussen, so wohl positive als auch negative Möglichkeiten.
F all
1.
2.
3.
4.
w
g
g
g
g
T
k
g
k
g
H
g
k
k
g
F ormel
msignature
msignature
msignature
msignature
Größenergebnis
am Zweitkleinsten
am Drittkleinsten
am Kleinsten
am Größten
Tabelle 2: Parameterkombinationen für msignature
g = groß, k = klein
Zum Beispiel bedeutet ”H g msignature ”, dass ein großes H für diese Kombination gewählt wurde.
Die Spalte Größenergebnis“ zeigt wie groß bzw. wie klein der Formelwert
”
von msignature durch die Kombination aus der jeweiligen Zeile wird. Zum Beispiel ergibt die Kombination w groß, T groß und H klein aus der 2. Zeile den
drittkleinsten Wert für msignature .
Der Parameter w ist in dieser Tabelle 2 groß gewählt worden, weil msignature
linear mit großem w fällt. Deshalb ist ein kleines w hier nicht sinnvoll. Werden T und H mit großen Werten belegt, dann ist das für msignature nachteilig,
siehe 4. Fall. Da seine Größe trotz des w´s wächst und somit den größten
Wert liefert im Vergleich zu den anderen Fällen.
Das kleinste msignature wird mit kleinem T , kleinem H und großem w erzeugt, siehe 3. Fall, weil msignature jeweils linear fällt bei fallendem T und bei
fallendem H.
Die erste Kombination aus der Tabelle 2 ergibt für msignature einen guten
Wert. Das heißt, dass dieser Wert kleiner ist als der aus der zweiten Kombi-
31
nation. Der Grund hierfür liegt in der Formel. Zur Erinnerung aus (10),
msignature =
T
X
(Hi + twi ) · n Bits
i=1
Zu beachten ist noch, dass der Platzhalter tw entsprechend ersetzt werden
muss, siehe (1, 2),
tw =
ln
w
+
blog2 ( wn )c + 1 + w m
w
Nach dieser Ersetzung zeigt sich, dass in der Summenberechnung noch ein
n steckt. Durch die Multiplikation der Summe mit n wächst msignature quadratisch mit steigendem n. Für msignature gibt es nur eine Schleife für die
Summenberechnung. Die Anzahl der Schleifendurchläufe kann über den Parameter T gesteuert werden. Wird T klein gewählt, dann kann msignature
nicht so groß werden wie im 2. Fall.
Der Parameter H wirkt sich nur linear auf msignature aus und kann nicht zur
Verkleinerung von msignature beitragen.
Zum besseren Verständnis folgt ein kleines Beispiel. Die Werte für T und
H sind so festgelegt, dass die Summe der Hi ´s immer gleich ist und somit
immer die gleiche Anzahl an Signaturen erzeugt.
Zum Beispiel, sei n = 160, jedes wi = 12, jedes Hi = 10 und T = 4, mit
1 ≤ i ≤ 4.
Damit werden 2H1 +H2 +H3 +H4 = 240 Signaturen erzeugt. Genauso viele Signaturen werden auch mit der nächsten Aufteilung erzeugt. Wenn jedes Hi = 4
und T = 10 ist, dann ergibt das 2H1 +H2 +H3 +H4 +H5 +H6 +H7 +H8 +H9 +H10 = 240
Signaturen, mit 1 ≤ i ≤ 10. Die folgenden Tabelle 3 zeigt die Veränderungen
in msignature und veranschaulicht den Unterschied des 1. und 2. Falles aus
der Tabelle 2 auf Seite 31. In beiden Fällen aus Tabelle 3 wird die gleiche
F all
1.
2.
n
160
160
wi
12
12
T
4
10
Hi
10
4
msignature
16.640 Bits
32.000 Bits
Tabelle 3: Variiation von msignature bei gleicher Signaturanzahl
Anzahl von Signaturen erzeugt. Aber die Größe von msignature variiert. Es ist
deutlich in der 1. Zeile zu sehen, dass ein kleines T den Wert von msignature
erheblich reduzieren kann im Vergleich zur 2. Zeile. K hat keine Auswirkung
auf msignature . Es wurde hier bei den Berechnungen in diesem Beispiel jedes
Ki = 2 gesetzt.
32
Die Größe des privaten Schlüssels mprivkey ist von den Parametern w, T ,
H und K abhängig. Die Tabelle 4 auf Seite 33 zeigt unterschiedliche Kombinationen, um den Wert von mprivkey zu beeinflussen.
F all
1.
2.
3.
4.
w
g
g
g
g
T
k
g
k
g
H
g
k
k
g
K
k
k
k
k
F ormel
mprivkey
mprivkey
mprivkey
mprivkey
Größenergebnis
am Zweitkleinsten
am Drittkleinsten
am Kleinsten
am Größten
Tabelle 4: Parameterkombinationen für mprivkey
g = groß, k = klein
Zum Beispiel bedeutet ”T k mprivkey ”, dass ein kleines T für diese Kombination gewählt wurde.
Die Spalte Größenergebnis“ zeigt wie groß bzw. wie klein der Formelwert
”
von mprivkey durch die Kombination aus der jeweiligen Zeile wird. Zum Beispiel ergibt die Kombination w groß, T groß, H klein und K klein aus der
2. Zeile den drittkleinsten Wert für mprivkey .
Der Parameter w ist in dieser Tabelle 4 immer groß gewählt worden, weil
mprivkey linear mit großem w fällt. Deshalb ist ein kleines w hier nicht geeignet. Ähnliches gilt auch für den Parameter K. Weil mprivkey exponentiell
mit wachsendem K steigt, wurde ein kleines K gesetzt. Des Weiteren steigt
mprivkey jeweils linear bei wachsendem T und bei wachsendem Hi an, siehe
Tabelle 1 auf Seite 29.
Der 3. Fall aus Tabelle 4 bringt das kleinste mprivkey hervor, da alle Werte
für die Verkleinerung bestimmt wurden. Die 2. und 4. Kombinationen aus
der Tabelle 4 ergeben für mprivkey große Werte. Die 4. Kombination bringt
das größte mprivkey hervor. Der 1. Fall erzeugt einen kleineren Wert als der
2. Fall. Der Grund hierfür liegt darin, dass hier auf vielen Ebenen kleine
Bäume verteilt werden. Dies reduziert die Größe von mprivkey . Dazu ist ein
Blick auf die entsprechende Formel hilfreich. Zur Erinnerung aus (9),
mprivkey =
T
X
i=1
T
X
(mauth (i) + 1) +
(mauth (i) + twi−1 + 2) · n Bits
i=2
Wenn die Formel mauth (i) und der Platzhalter tw ersetzt werden, ist zu erkennen, dass in mauth (i) ein weiteres n steckt. Dadurch wächst mprivkey linear
mit steigendem n. Außerdem ist das lineare Wachstum von mprivkey mit H zu
sehen, da es in mauth (i) enthalten ist. Durch ein kleines T wie im ersten Fall
33
aus Tabelle 4 werden die beiden Schleifendurchläufe verkleinert und damit
auch der Wert von mprivkey .
Zum Veranschaulichen folgt ein kleines Beispiel. Die Parameterwerte sind
analog zu Beispiel in Tabelle 3 von msignature auf Seite 32 gewählt. Die folgende Tabelle 5 auf Seite 34 zeigt die Veränderungen in mprivkey und sie
verdeutlicht den Unterschied zwischen dem 1. und 2. Fall aus Tabelle 4 auf
Seite 33. In beiden Fällen aus Tabelle 5 wird die gleiche Anzahl von SignaF all
1.
2.
n
160
160
wi
12
12
T
4
10
Hi
10
4
Ki
2
2
mprivkey
5.072.000 Bits
4.891.520 Bits
Tabelle 5: Veränderung von mprivkey bei gleicher Anzahl von Signaturen
turen erzeugt. Aber die Größe von mprivkey variiert. Es ist deutlich in der
2. Zeile zu sehen, dass ein großes T den Wert von mprivkey reduzieren kann
im Vergleich zur 1. Zeile.
Der Wert von mpubkey ist nur von n abhängig. mpubkey wächst linear bei
steigendem n. Es gilt mpubkey = n, siehe Formel (7).
Die Zeit für die Schlüsselerzeugung ckeygen ist wie bei msignature von den
Parametern w, T und H abhängig.
In der Tabelle 6 sind verschiedene Kombinationen, die den Wert von ckeygen
beeinflussen, aufgeführt.
F all
1.
2.
w
k
k
T
g
k
H
k
k
F ormel
ckeygen
ckeygen
Größenergebnis
am Größten
am Kleinsten
Tabelle 6: Parameterkombinationen für ckeygen
g = groß, k = klein
Zum Beispiel bedeutet ”w k ckeygen ”, dass ein kleines w für diese Kombination benutzt wurde.
Die Spalte Größenergebnis“ zeigt wie groß bzw. wie klein der Wert von
”
ckeygen durch die Kombination aus der jeweiligen Zeile wird. Zum Beispiel
ergibt die Kombination w klein, T groß und H klein aus der 1. Zeile den
größten Wert für ckeygen .
Die Parameter w und H sind in dieser Tabelle 6 immer klein gewählt worden,
weil ckeygen exponentiell mit großem w und großem H steigt. Deshalb sind
große w und große H hier nicht nützlich. Mit wachsendem T steigt ckeygen
34
linear an, siehe Tabelle 1 auf Seite 29.
Die zweite Kombination aus der Tabelle 6 auf Seite 34 liefert das kleinste
ckeygen , weil alle Werte von ctree (i) klein werden und auch die beiden Schleifen wenige Durchläufe wegen des kleinen T ´s haben. Siehe
ctree (i) = (2Hi · (twi · (2wi − 1) + 2) − 1) cHASH + 2Hi · (twi + 1) cP RN G
aus (5) und siehe
ckeygen =
T
X
(ctree (i)) +
i=1
T
X
(ctree (i))
i=2
aus (6) auf Seite 18.
Der 1. Fall bringt das größte ckeygen hervor, da die Berechnungszeit von ckeygen
auf vielen Ebenen mit kleinen Bäumen verteilt wird. Diese Kombination kann
auch für Berechnungen eingesetzt werden. Der Parameter n wirkt sich auf
ckeygen linear über den Platzhalter tw aus. tw muss in der Formel von ckeygen
entsprechend ersetzt werden, siehe (1, 2)
blog2 ( wn )c + 1 + w m
+
tw =
w
w
ln
ctree im 1. Fall ist kleiner als eine Kombination, in der alle Parameter große
Werte haben. Deshalb hat das große T in beiden Schleifen nicht so viel
Wirkung, da ckeygen linear mit T wächst.
Wie in Tabelle 7 zu sehen, ist der Wert für ckeygen im 2. Fall deutlich kleiner
F all
1.
2.
n
160
160
wi
2
2
T
4
10
Hi
10
4
Ki
2
2
ckeygen
2.458.617 cHash
213.993 cHash
Zeit
4917, 234 ms
427, 986 ms
Tabelle 7: Variiation von ckeygen
als im Ersten. Dies bestätigt den 1. Fall aus der Tabelle 6 auf Seite 34. K hat
keine Auswirkung auf ckeygen . Es wurde hier bei den Berechnungen in diesem
Beispiel jedes Ki = 2 gesetzt.
Zur Erinnerung eine Hashauswertung braucht 0, 002 ms.
Deshalb sind 2.458.617 cHash = 4917, 234 ms = 4, 917 s und
213.993 cHash = 427, 986 ms = 0, 427 s.
Die Zeit für die Signaturerstellung conline hängt exponentiell von wT ab. Je
größer wT wird, desto stärker steigt conline exponentiell an. Deshalb sollte wT
35
so klein wie nur möglich sein, um das kleinste conline zu erzeugen. Ebenso
sollte n klein sein, da conline linear mit n wächst. Zur Erinnerung aus (11),
conline =
(2wT − 1) · twT
cHASH + (twT + 1) cP RN G
2
Die Zeit für die Signaturerstellung cof f line ist von den Parametern w, T ,
H und K abhängig.
In der folgenden Tabelle 8 sind die unterschiedlichen Kombinationsmöglichkeiten für die Beeinflussung des Wertes von cof f line zu sehen.
F all
1.
2.
3.
4.
w
k
k
k
k
T
g
k
g
k
H
g
g
g
g
K
g
g
k
k
F ormeln
cof f line
cof f line
cof f line
cof f line
Größenergebnis
am Drittkleinsten
am Kleinsten
am Größten
am Zweitkleinsten
Tabelle 8: Parameterkombinationen für cof f line
g = groß, k = klein
Zum Beispiel bedeutet ”T k cof f line ”, dass ein kleines T für diese Kombination gewählt wurde.
Die Spalte Größenergebnis“ zeigt wie groß bzw. wie klein der Wert von
”
cof f line durch die Kombination aus der jeweiligen Zeile wird. Zum Beispiel
ergibt die Kombination w klein, T groß, H groß und K klein aus der 3. Zeile
den größten Wert für cof f line .
Der Parameter w ist in der Tabelle 8 immer klein gewählt worden, weil
cof f line exponentiell mit steigendem w wächst. Darum ist ein großes w hier
nicht praktikabel. Der Parameter H wurde groß gewählt, weil cof f line exponentiell mit wachsendem H fällt. cof f line fällt linear mit wachsendem K und
es steigt linear bei wachsendem T , siehe Tabelle 1 auf Seite 29.
Der 2. Fall aus Tabelle 8 erzeugt das kleinste cof f line , da cof f line bei großem
K und H schneller klein wird und durch das kleine T nur gering wächst.
Durch das kleinere T werden die drei Schleifendurchläufe kürzer. In csig (12)
und c1leaf (13) wird durch 2Hi bzw. durch 2Hi +1 geteilt, dadurch wird die
exponentielle Verkleinerung gefördert. Mit den subtrahierenden K´s in c1auth
(16), c2auth (17) und c3auth (18) geht die Reduzierung von cof f line weiter. Zur
Erinnerung aus (19),
cof f line
T
T −1
X
X
=
(csig (i)) +
(c1leaf (i) + c2leaf (i) + c3leaf ) +
i=2
i=2
36
T −1
X
(c1auth (i) + c2auth (i) + c3auth )
i=1
Nachdem ersetzen der Platzhalter tw ist der lineare Einfluss von n zu sehen.
Die 3. Kombination aus der Tabelle 8 auf Seite 36 gibt den größten und damit schlechtesten Wert für cof f line an.
Der 1. Fall liefert das drittkleinste cof f line und sollte nicht gewählt werden.
Da die Schleifendurchläufe mit wachsendem T länger werden. Andererseits
werden mehr Bäume generiert, dies fördert wieder die exponentielle Reduzierung von cof f line , aber es verstärkt auch das exponentielle Wachstum mit
w. Da cof f line nur linear mit wachsendem K fällt, kann es verglichen mit den
exponentiellen Größen nicht mithalten und damit nicht sehr ins Gewicht fallen. Die 4. Kombination liefert das zweitkleinste cof f line , da T kleiner ist und
damit mittels den drei Schleifen die Anzahl der exponentiellen Werte verringert wird. Die folgende Tabelle 9 verdeutlicht den Unterschied zwischen dem
1. und 4. Fall aus Tabelle 8 auf Seite 36. In der Tabelle 9 entspricht die
1. Zeile dem 4. Fall und die 2. Zeile dem 1. Fall.
Der 1. Fall aus Tabelle 9 zeigt, dass der Wert für cof f line kleiner wird, wenn T
F all
1.
2.
n
160
160
wi
2
2
T
2
10
Hi
10
10
Ki
2
5
cof f line
2.163 cHash
2.211 cHash
Zeit
4, 326 ms
4, 422 ms
Tabelle 9: Variiation von cof f line
und K klein sind. Damit wird der 1. Fall aus Tabelle 8 auf Seite 36 bestätigt,
der das zweit kleinste cof f line hervorbringt. Die 2. Zeile aus Tabelle 9 gibt
an, dass der Wert von cof f line größer wird als der aus der 1. Zeile. Somit
ist es der drittgrößte Wert und das bestätigt den 1. Fall aus der Tabelle 8.
Das K ist in der zweiten Zeile in der Tabelle 9 groß, obwohl es nicht den
Anschein hat. Für sind die Bedingungen aus den vorherigen Abschnitten zu
berücksichtigen. K muss viel kleiner sein als H.
Zur Erinnerung eine Hashauswertung braucht 0, 002 ms.
Deshalb sind 2.163 cHash = 4, 326 ms und 2.211 cHash = 4, 422 ms.
Die Zeit für die Signaturverifikation cverif y ist von den Parametern w, T
und H abhängig. Dabei ist zu beachten, dass cverif y linear steigt bei wachsendem T und bei wachsendem H. Es steigt exponentiell bei wachsendem w
an.
Das kleinste cverif y wird mit kleinem T , kleinem H und kleinem w erzeugt.
37
Zur Erinnerung aus (21),
cverif y
T wi
X
(2 − 1) · twi
=
+ Hi cHASH
2
i=1
Eine weitere gute Kombination ist ein kleines T , großes H und kleines w. Weil
ein kleines T den Schleifendurchlauf verkürzt und damit nicht viele exponentielle einwirkende w´s und lineare einwirkende H´s für cverif y zulässt. Das
ist von Vorteil, da der Verifizier alle Berechnungen für die Signaturprüfung
sofort durchführen muss. Er kann nicht wie bei msignature die Berechnungen
verteilen. Außerdem beeinflusst n cverif y nur linear. Dies wird deutlich, wenn
der Platzhalter tw entsprechend ersetzt wurde.
In beiden Fällen aus Tabelle 10 wird die gleiche Anzahl von Signaturen erF all
1.
2.
n
160
160
wi
2
2
T
4
10
Hi
10
4
Ki
2
2
cverif y
550 cHash
2.630 cHash
Zeit
1, 1 ms
5, 26 ms
Tabelle 10: Variiation von cverif y
zeugt. Aber die benötigte Zeit von cverif y variiert. Es ist deutlich in der
1. Zeile zu sehen, dass ein kleines T den Wert von cverif y sehr reduzieren kann
im Vergleich zur 2. Zeile. K hat keine Auswirkung auf msignature . Es wurde
hier bei den Berechnungen in diesem Beispiel jedes Ki = 2 gesetzt.
Zur Erinnerung eine Hashauswertung braucht 0, 002 ms.
Somit sind 550 cHash = 1, 1 ms und 2.630 cHash = 5, 26 ms.
Die Größe des Speicherplatzes für die Signaturerzeugung mof f line ist von
den Parametern w, T , H und K abhängig. mof f line verhält sich genauso wie
mprivkey in seinem Wachstum bzw. Verkleinerung, mit Ausnahme des Parameters n. mof f line wächst nur linear mit steigendem n. Weil in mof f line selbst
das n nur über den Platzhalter tw vorkommt und dieser nicht mit sich selbst
multipliziert wird. Das Gleiche gilt auch für die verschiedenen Ebenen, die
in Kapitel 4.2 detailliert beschrieben werden.
4.2
Parameterwahl
In diesem Abschnitt werden die Unterschiede zwischen den Ebenen eines
Parameters, der auf einer Ebene erhöht wird, betrachtet. Der Vergleich der
Werte auf den Ebenen zeigt, für welchen Parameter und für welche Formeln
es am günstigsten ist, den Parameterwert auf einer bestimmten Ebene zu
38
erhöhen. Eine Steigerung der Parameter lässt sich nicht immer vermeiden.
Manchmal ist es notwendig einen Parameter zu erhöhen, weil zum Beispiel
mehr Signaturen gefordert werden. Hierfür muss entweder der Parameter T
oder die Werte der Hi ´s größer werden. Des Weiteren werden die Beobachtungen aus den vorherigen Kapiteln hier miteinbezogen.
Die betrachteten Formeln sind aus
Kapitel 3 Verbessertes Merkle-Signaturverfahren“ msignature (10), mprivkey
”
(9), mpubkey (7), ckeygen (6), conline (11), cof f line (19), cverif y (21) und mof f line
(20).
Alle verwendeten Werte werden von n linear oder quadratisch beeinflusst,
deswegen sollte ein kleines n angestrebt werden. Da die Sicherheit des GMSS
vorgeht, sollte deshalb das n immer dem aktuellen Standard angepasst werden. Das bedeutet heute, dass der Sicherheitsparameter n mindestens 160
Bits oder 256 Bits besitzen muss.
Der Parameter wi beeinflusst einige Werte exponentiell, deshalb sollte wi
klein gewählt werden, siehe Tabelle 1 auf Seite 29. Andererseits sollen die
Signaturen so klein wie möglich werden, doch dafür werden größere wi ´s gebraucht. Es muss ein Kompromiss gefunden werden. Aus der Tabelle 11 auf
Seite 40 ist zu entnehmen, dass bei einer Erhöhung eines wi ´s mit i = 1, . . . , T
w1 die kleinsten Werte von fast allen Formeln hat. Deshalb ist es am Besten, wenn w1 erhöht wird. Der Wert von wi mit 2 ≤ i ≤ T − 1 kann auch
gesteigert werden, aber dies liefert nicht so viele Vorteile wie bei w1 . Es ist
egal auf welcher Ebene i ein wi erhöht wird, weil die Erhöhung sich auf jeder Ebene i gleich auswirkt, bei i = 2, . . . , T − 1. Die Überlegung wT zu
vergrößern sollte nicht in Betracht gezogen werden, da es zum Einen keinen Vorteil bringt und zum Anderen werden zwar nur 5 Werte erhöht, aber
davon wachsen 4 Werte exponentiell. Bei wi sind es sechs Werte, von diesen
steigen nur drei exponentiell an. Somit gibt es nur Nachteile auf der Ebene T .
In der Tabelle 11 auf Seite 40 wird gezeigt, wie sich die Werte der Formeln verändern, wenn der Parameter wi auf einer Ebene i = 1, . . . , T erhöht
wird. Die Ergebnisse der Ebenen i werden hier miteinander verglichen, mit
1 ≤ i ≤ T.
Die Parameter w1 , wi , wT mit 2 ≤ i ≤ T − 1 haben in msignature auf allen
Ebenen die gleiche Auswirkung. Alle Werte werden gleich groß. Damit ist es
für die Formel von msignature gleichgültig auf welcher Ebene der Parameter w
erhöht wird. Dies liegt daran, dass die Formel von msignature nur eine Schleife
besitzt, die von 1 bis T durchläuft und der darin enthaltene Parameter w
sich nur linear fallend auswirken kann, siehe (10) auf Seite 19.
39
w1
H=
H=
/
Nak
/
Nak
N=
Hag
wi
H=
H=
/
N=
/
N=
N=
H=
wT
H=
/
/
N=
N =T
N=
N=
/
msignature
mprivkey
mpubkey
ckeygen
conline
cof f line
cverif y
mof f line
Tabelle 11: Auswirkungen von w auf den Ebenen
wi mit 2 ≤ i ≤ T − 1, linear, exponentiell, N: steigend,
H: fallend, ak: am Kleinsten, ag: am Größten,
=: auf allen Ebenen gleich groß, /: keinen Einfluss, d ∈ {w1 , wi , wT },
b ∈ {msignature , mprivkey , mpubkey , ckeygen , conline , cof f line , cverif y , mof f line }
d H = b“ bedeutet, dass b linear fällt bei einem steigenden d und zwar auf
”
allen eingetragenen Ebenen.
d Nak b“ bedeutet, dass b exponentiell wächst bei einem steigenden d und
”
trotzdem seinen kleinsten Wert bezüglich d hat.
d Hag b“ bedeutet, dass b mit steigendem d linear fällt und trotzdem seinen
”
größten Wert bezüglich d hat.
d / b“ die Vergrößerung von d hat keine Wirkung auf b.
”
Zum Beispiel, w1 Nak ckeygen“, wird w1 erhöht, dann wächst ckeygen expo”
nentiell mit und hat trotzdem seinen kleinsten Wert bezüglich w. Da auf den
anderen Ebenen bei wi mit i = 2, . . . , T die Werte von ckeygen größer werden.
Aus der Tabelle 11 auf Seite 40 ist zu sehen, dass mprivkey auf den Ebenen wi mit i = 1, . . . , T − 1 gleich große Werte hat. Die Ebene mit wT
hat keinen Einfluss auf mprivkey , weil die zweite Schleife in der Formeln von
mprivkey für den Parameter w nur von 1 bis T-1 läuft, siehe (9) auf Seite
18. Da in der zweiten Summenberechnung nur twi−1 bzw. nach der Ersetzung
wi−1 verwendet wird. Zur Erinnerung tw ist nur ein Platzhalter, der für die
Betrachtungen ersetzt werden sollte, siehe die Formeln (1, 2) auf Seite 12. In
der ersten Summenberechnung ist kein w enthalten und somit fällt diese für
die Betrachtung für w in mprivkey weg.
Auf mpubkey hat w keinen Einfluss, weil die Formel kein w enthält, siehe
(7) auf Seite 18.
ckeygen besteht aus den beiden Schleifen mit der Formel ctree (i) siehe (5)
40
und (6) auf Seite 18. In ctree (i) ist der Parameter wi enthalten. ckeygen wächst
exponentiell mit w. Da beide Schleifen für die Summenberechnung die Werte
von 2 bis T berechnen und sie sich in ihrer Struktur nicht unterscheiden, sind
die Werte von ckeygen bezüglich wi mit i = 2, . . . , T gleich. Eine Ausnahme
bildet w1 , da die zweite Schleife erst mit i = 2 beginnt und die andere schon
bei i = 1, ist hier der Wert von ckeygen hier am kleinsten.
Auf die Formel von conline kann nur wT Einfluss nehmen, weil conline auf
der untersten Ebene T agiert, siehe (11) auf Seite 19. Ein wachsendes wT
wirkt sich auf das conline negativ aus, da es exponentiell mit wT steigt.
Die Formeln von cof f line besteht aus drei Summenberechnungen, siehe (19)
auf Seite 24. Der Parameter w kommt in allen drei Berechnungen vor, in
csig (i) (12), c1leaf (i) (13), c3leaf (15) und c1auth (i) (16). Darin ist das exponentielle Wachstum in diesen Formeln zu sehen. Die erste Summe geht von 1 bis
T bezüglich wi . Das Gleiche gilt auch für die zweite Summe. Ihr Index geht
zwar nur von 1 bis T-1, aber durch c3leaf kommt die Ebene T hinzu. In der
dritten Summe wird wi nur von 1 bis T-1 mithilfe des Aufrufes von c1leaf (i)
in der Formeln von c1auth (i) einbezogen. Bei w1 findet das kleinste Wachstum
im Vergleich zu wi und wT statt, weil hier nur zweimal 2wi mittels csig (i) und
c1auth (i) auftaucht.
cverif y hat eine Schleife, die über alle Ebenen geht und darin ist das exponentielle Wachstum enthalten, siehe (21) auf Seite 25. Deshalb sind auf
allen Ebenen von w1 , wi und wT die Werte gleich groß.
mof f line hat drei Summenberechnungen, siehe (20) auf Seite 24. Die erste
und dritte Summe geht von 1 bis T-1 bezüglich wi mit i = 1, . . . , T − 1.
Die zweite Summe beginnt erst mit i = 2 und läuft bis T-1. Deshalb kommt
w auf der Ebene 1 nur zweimal vor und der Wert von mof f line ist hier am
größten, weil mof f line linear langsamer bezüglich w fällt, als auf den Ebenen
2 bis T-1. wT hat keinen Einfluss auf mof f line , weil es in der Formel nicht
vorkommen kann.
Der Parameter T gibt die Anzahl der Ebenen an. Zum Einen sollten nicht
zu viele Ebenen vorhanden sein, da sich die Berechnungen und aber auch die
Anzahl der Signaturen erhöhen. Zum Anderen können in Kombination mit
kleinen Höhen schnellere Berechnungszeiten erzielt werden, weil die Berechnungen sich auf mehrere Ebenen mit niedrigen Bäumen verteilen.
41
Die Höhen Hi sollten klein sein, i = 1, . . . , T , weil zum Teil die Formeln aus
Kapitel 3 Verbessertes Merkle-Signaturverfahren“ linear und exponentiell
”
mit steigendem Hi wachsen, siehe Tabelle 1 auf Seite 29. Aber die Höhen sind
auch für die Anzahl der Signaturen zuständig, deshalb müssen sie manchmal
vergrößert werden. Das ist der Vorteil bei der Erhöhung des Parameters Hi ,
es steigert die Anzahl der Signaturen. Am Besten ist es H1 zu erhöhen, hier
sind fast alle Werte im Vergleich zu den anderen Hi am kleinsten. Aber auf
den Wert von cof f line muss Rücksicht genommen werden, da er hier seinen
größten exponentiellen Wert hat.
Es gibt keinen Unterschied zwischen den Ebenen Hi und HT mit
i = 3, . . . , T − 1, weil auf jeder gleich viele Werte dasselbe Wachstum bzw.
Verkleinerung haben bezüglich H. Die einzigste Ausnahme ist H2 , denn hier
hat cof f line seinen zweitgrößten Wert hat. Je größer Hi wird, desto mehr Zeit
wird für die Berechnungen benötigt. Deshalb sollte ein kleines Hi angestrebt
werden. Die nachfolgende Tabelle 12 auf Seite 43 zeigt eine Übersicht.
Die Parameter H1 , Hi , HT mit 2 ≤ i ≤ T − 1 haben in msignature auf allen
Ebenen die gleiche Auswirkung, siehe Tabelle 12 auf Seite 43. Alle Werte
werden gleich groß. Damit ist es für die Formel von msignature gleichgültig
auf welcher Ebene der Parameter H erhöht wird. Dies liegt daran, dass die
Formel von msignature nur eine Schleife besitzt, die von 1 bis T durchläuft und
der darin enthaltene Parameter H sich nur linear steigend auswirken kann,
siehe (10) auf Seite 19.
Aus der Tabelle 12 auf Seite 43 ist zu sehen, dass mprivkey auf den Ebenen Hi mit i = 1, . . . , T gleich große Werte hat, siehe (9) auf Seite 18. Da
die beiden Summen Hi und HT bei ihren Durchgängen von 2 bis T mit einbeziehen. Da die zweite Summenberechnung nur von 2 bis T läuft und die
erste von 1 bis T, ist der Wert von mprivkey auf der Ebene 1 kleiner, weil Hi
nur einmal vorkommt.
H hat auf mpubkey keinen Einfluss, indem es nicht in der Formel enthalten
ist, siehe (7) auf Seite 18.
ckeygen besteht aus den beiden Schleifen und der Formel ctree (i) (5) und siehe
(6) auf Seite 18. In ctree (i) ist der Parameter Hi enthalten. ckeygen wächst exponentiell mit H. Da beide Schleifen für die Summenberechnung die Werte
von 2 bis T berechnen und sie sich in ihrer Struktur nicht unterscheiden, sind
die Werte von ckeygen bezüglich Hi mit i = 2, . . . , T gleich. Eine Ausnahme
bildet H1 , wodurch die zweite Schleife erst mit i = 2 beginnt und die andere
42
H1
N=
Nak
/
Nak
/
Hag
N=
/
Hi
N=
N=
/
N=
/
H =∗
N=
N=
HT
N=
N=
/
N=
/
H=
N=
N=
msignature
mprivkey
mpubkey
ckeygen
conline
cof f line
cverif y
mof f line
Tabelle 12: Auswirkungen von H auf den Ebenen
Hi mit 2 ≤ i ≤ T − 1, linear, exponentiell, N: steigend,
H: fallend, ak: am Kleinsten, ag: am Größten,
=: auf allen Ebenen gleich groß, /: keinen Einfluss, =∗ : auf der Ebene 2 hat
cof f line seinen zweitgrößten Wert und auf den Ebenen i = 3, . . . , T − 1 sind
die Werte gleich groß und kleiner als bei i = 2, d ∈ {H1 , Hi , HT },
b ∈ {msignature , mprivkey , mpubkey , ckeygen , conline , cof f line , cverif y , mof f line }
d N = b“ bedeutet, dass b linear wächst bei einem steigenden d und zwar
”
auf allen eingetragenen Ebenen.
d Nak b“ bedeutet, dass b exponentiell wächst bei einem steigenden d und
”
trotzdem seinen kleinsten Wert bezüglich d hat.
d Hag b“ bedeutet, dass b mit steigendem d exponentiell fällt und seinen
”
größten Wert bezüglich d hat.
d / b“ die Vergrößerung von d hat keine Wirkung auf b.
”
Zum Beispiel, H1 Nak ckeygen“, wird H1 erhöht, dann wächst ckeygen expo”
nentiell mit und hat trotzdem seinen kleinsten Wert bezüglich H. Da auf den
anderen Ebenen bei Hi mit i = 2, . . . , T die Werte von ckeygen größer werden.
schon bei i = 1 ist der Wert von ckeygen hier am kleinsten.
H hat auf den Wert von conline keinen Einfluss, weil conline auf der untersten
Ebene T agiert und H nicht in der Formel vorkommt, siehe (11) auf Seite
19.
Die exponentielle Verkleinerung kommt in allen drei Summenberechnungen
von cof f line vor, siehe (19) auf Seite 24. cof f line hat auf H1 seinen größten
Wert, da er auf der ersten Ebene am langsamsten mit wachsendem H1 fällt.
Zwar beginnt die dritte Summe ihre Berechnung mit i = 1 und läuft bis
T-1, aber bezüglich der Hi ´s geht auch diese Summe nur von 2 bis T. Der
zweitgrößte Wert von cof f line ist auf H2 zu finden, deshalb sollte H2 nicht gesteigert werden. Hier kommt 2H1 i viermal vor und auf den Ebenen i = 3, . . . , T
43
fünfmal. Damit ist cof f line bei Hi mit 3 ≤ i ≤ T am kleinsten.
cverif y hat eine Schleife, die über alle Ebenen geht und darin das exponentielle Wachstum enthalten ist, siehe (21) auf Seite 25. Deshalb sind auf allen
Ebenen von H1 , Hi und HT gleich große Werte.
mof f line hat drei Summenberechnungen, siehe (20) auf Seite 24. Die erste
Summe geht von 2 bis T bezüglich Hi mit i = 2, . . . , T . In den anderen
Schleifen tritt H nicht auf. Deshalb kommt H auf der Ebene 1 gar nicht vor
und damit hat H1 keinen Einfluss auf mof f line , weil es in der Formel nicht
vorkommen kann. Somit steigt mof f line linear bezüglich H als auf der Ebenen
i = 2, . . . , T .
Mit der Erhöhung des Parameters Ki ändern sich die Werte von mprivkey
und mof f line exponentiell und von cof f line linear. Deshalb ist es besser nur
K1 zu erhöhen. Dies verkleinert cof f line nur gering, aber dafür ist der Wert
von mprivkey im Vergleich zu Ki und KT am kleinsten. Eine Erhöhung einer
der Werte von Ki oder KT führt zu einer geringfügigen Änderung der Werte.
In der Tabelle 13 ist dies zu sehen.
K hat keinen Einfluss auf die Formeln msignature (10), mpubkey (7), ckeygen (6),
conline (11) und cverif y (21), denn K kommt nicht in diesen Formeln vor.
Auf der ersten Ebene erhöht sich mprivkey am wenigsten bei größerem K1 ,
weil die nur erste Summenberechnung in mprivkey mit i = 1 beginnt, siehe (9)
auf Seite 18. Die zweite Schleife für die Summenberechnung beginnt erst mit
i = 2 und läuft ebenfalls bis T. Damit fließt K1 nur einmal in mprivkey ein
und somit wird der Wert von mprivkey hier am kleinsten. Auf den Ebenen Ki
mit i = 2, . . . , T sind die Werte von mprivkey alle gleich groß. Damit ist es für
mprivkey egal, ob Ki mit i = 2, . . . , T − 1 oder KT erhöht wird.
Eine Erhöhung von K1 oder Ki macht für cof f line keinen Unterschied. cof f line
fällt linear auf den Positionen i = 1, . . . , T gleichmäßig, siehe Tabelle 13 auf
Seite 45. K ist in den ersten beiden Summenberechnungen nicht enthalten,
daher sind diese für K irrelevant. Nur bei der dritten Summe wird es interessant. Diese geht von 1 bis T-1 und enthält das K. Durch c3auth (18) ist auch
KT in cof f line vertreten. Dadurch sind alle Werte von cof f line gleich groß bei
Ki mit i = 1, . . . , T .
mof f line hat drei Summenberechnungen, siehe (20) auf Seite 24. Die erste
44
K1
/
Nak
/
/
/
H=
/
/
Ki
/
N=
/
/
/
H=
/
N=
KT
/
N=
/
/
/
H=
/
N=
msignature
mprivkey
mpubkey
ckeygen
conline
cof f line
cverif y
mof f line
Tabelle 13: Auswirkungen von K auf die Ebenen
Ki mit 2 ≤ i ≤ T − 1, linear, exponentiell, N: steigend,
H: fallend, ak: am Kleinsten, =: auf allen Ebenen gleich groß,
/: keinen Einfluss, d ∈ {K1 , Ki , KT },
b ∈ {msignature , mprivkey , mpubkey , ckeygen , conline , cof f line , cverif y , mof f line }
d H = b“ bedeutet, dass b linear wächst bei einem steigenden d und zwar
”
auf allen eingetragenen Ebenen.
d Nak b“ bedeutet, dass b exponentiell wächst bei einem steigenden d und
”
trotzdem seinen kleinsten Wert bezüglich d hat.
d / b“ die Vergrößerung von d hat keine Wirkung auf b.
”
Zum Beispiel, K1 Nak mprivkey“, wird K1 erhöht, dann wächst mprivkey ex”
ponentiell mit und hat trotzdem seinen kleinsten Wert bezüglich K. Da auf
den anderen Ebenen bei Ki mit i = 2, . . . , T die Werte von mprivkey größer
werden.
Ein weiteres Beispiel, KT H = cof f line“, wird KT erhöht, dann fällt cof f line
”
linear. Im Vergleich zu den anderen Ebenen bei Ki mit i = 1, . . . , T − 1 sind
die Werte von cof f line überall gleich groß. Es ist egal welches K erhöht wird,
die Änderung wirkt sich auf cof f line überall gleich aus.
Summe geht von 2 bis T bezüglich Ki mit i = 1, . . . , T . In den anderen
Schleifen tritt K nicht auf. Deshalb kommt K auf der Ebene 1 gar nicht vor
und damit hat K1 keinen Einfluss auf mof f line . Somit steigt mof f line linear
bezüglich K als auf der Ebenen i = 2, . . . , T .
4.3
Zusammenfassung der Parameter
Für eine gute Parameterwahl, in der kein Wert der Formeln große Nachteile
hat, ist w1 , H1 und K1 . Sie können mit Vorsicht erhöht werden. wT sollte
kleine Werte haben. Wenn der Wert von cof f line kleiner werden muss, dann
kann Hi mit 3 ≤ i ≤ T − 1 oder Ki mit i = 1, . . . , T anstatt H1 oder H2
erhöht werden.
45
Der Parameter n ist von der Hashfunktion abhängig und damit fest. Aber er
sollte den aktuellen Sicherheitsstandards entsprechen.
Der Parameter T kann erhöht werden, um die Anzahl der Hi und damit die
Anzahl der Signaturen zu steigern. Aber dafür sollten die Hi entsprechend
reduziert werden, da sonst der Rechenaufwand massiv zunehmen wird und
die Vorteile, zum Beispiel von der Verteilung der Berechnungszeit, zunichte
machen können. Es können auch anstatt T die Werte der Hi , mit i = 1 und
i = 3, . . . , T − 1, erhöht werden unter Berücksichtigung der steigenden Werte
in Tabelle 12 auf Seite 43.
Die beste Parameterwahl für eine Parametererhöhung sind die Parameter w1 ,
H1 und K1 , um kleine Werte für die Formeln zu bekommen. Dies ist in der
folgenden Tabelle 14 zu sehen.
w1
H
H
/
Nak
/
Nak
N
Hag
H1
N
Nak
/
Nak
/
Hag
N
/
K1
/
Nak
/
/
/
H
/
/
msignature
mprivkey
mpubkey
ckeygen
conline
cof f line
cverif y
mof f line
Tabelle 14: Beste Parameterwahl von w1 , H1 und K1
linear, exponentiell, N: steigend, H: fallend,
ak: am Kleinsten, ag: am Größten, /: keinen Einfluss, d ∈ {w1 , H1 , K1 },
b ∈ {msignature , mprivkey , mpubkey , ckeygen , conline , cof f line , cverif y , mof f line }
d H b“ bedeutet, dass b linear fällt bei einem steigenden d.
”
d Nak b“ bedeutet, dass b exponentiell wächst bei einem steigenden d und
”
trotzdem seinen kleinsten Wert bezüglich d hat. Zum Beispiel K1 Nak
”
mprivkey“, wird K1 erhöht, dann wächst mprivkey exponentiell mit und hat
trotzdem seinen kleinsten Wert bezüglich K.
d / b“ die Vergrößerung von d hat keine Wirkung auf b.
”
Obwohl in Tabelle 14 für cof f line bei H1 und mof f line bei w1 ihre größten Werte haben, findet cof f line bei H1 nur ein lineares Wachstum und bei mof f line
bei w1 eine langsamste Verkleinerung statt. Es ist eine gute Wahl, denn dies
fällt nur minimal ins Gewicht.
46
Sollen alle Werte von den Formeln ungefähr gleich viel Zeit und Platz beanspruchen, so ist der folgende Kompromiss ebenfalls sinnvoll, siehe Tabelle 15
auf der nächsten Seite 47.
Dort kann statt Ki auch KT eingesetzt werden. Es macht keinen Unterwi
H=
H=
/
N=
/
N=
N=
H=
HT
N
N
/
N
/
H
N
N
Ki
/
N=
/
/
/
H=
/
N=
msignature
mprivkey
mpubkey
ckeygen
conline
cof f line
cverif y
mof f line
Tabelle 15: Zweitbeste Parameterwahl von wi , HT und Ki
mit i = 2, . . . , T − 1, linear, exponentiell, N: steigend,
H: fallend, /: keinen Einfluss, d ∈ {wi , HT , Ki },
b ∈ {msignature , mprivkey , mpubkey , ckeygen , conline , cof f line , cverif y , mof f line }
d N b“ bedeutet, dass b mit steigendem d linear wächst. Ein weiteres Beispiel,
”
K N = mof f line“, wird Ki erhöht, dann wächst mof f line exponentiell mit.
” i
Außerdem es keine Rolle welches Ki verändert wird, die Änderung wirkt sich
auf mof f line immer gleich aus.
d / b“ die Vergrößerung von d hat keine Wirkung auf b.
”
schied, da beide Fälle gleich sind.
Die betrachteten Formeln sind aus
Kapitel 3 Verbessertes Merkle-Signaturverfahren“ msignature (10), mprivkey
”
(9), mpubkey (7), ckeygen (6), conline (11), cof f line (19), cverif y (21) und mof f line
(20).
47
5
Einsatzgebiete von digitalen Signaturen
Digitale Signaturen werden bei vielen Anwendungen verwendet, unter anderem bei Rechnungen, Software oder in E-Mails. Es gibt drei verschiedene
digitale Signaturen, die elektronische, die qualifizierte und die fortgeschrittene Signatur. Der Unterschied zwischen diesen drei wird im Abschnitt 5.1
Arten von digitalen Signaturen“ kurz erläutert, da zwei von diesen Signa”
turarten oft genutzt werden.
Zusätzlich werden in diesem Kapitel im Abschnitt 5.2 Einsatzgebiete“ die
”
Aufgaben der digitalen Signatur in den ermittelten Einsatzgebieten erläutert.
5.1
Arten von digitalen Signaturen
Dieser Abschnitt beschreibt die verschiedenen Arten der digitalen Signaturen
und gewährt einen kurzen Einblick. Sie unterscheiden sich teilweise in ihrer
Erstellung und werden vom Gesetzgeber rechtlich verschieden bewertet.
Es gibt drei Arten:
(1) die einfache elektronische Signatur
(2) die fortgeschrittene elektronische Signatur
(3) die qualifizierte elektronische Signatur
Die folgende Abbildung 9 zeigt einen Überblick aus
18
.
Abbildung 9: Arten der elektronischen Signatur aus
18
18
http://www.bsi.bund.de/literat/faltbl/F10ElektronischeSignatur.htm, 29.08.08, 20:12
Uhr
48
§
(1) Die einfache elektronische Signatur ( 2 Nr. 1 SigG) kennzeichnet bei
einer digitalen Nachricht den Urheber. Dies kann durch das Hinzufügen einer
eingescannten Unterschrift geschehen. Somit stellt sie keine Anforderungen
an die Sicherheit oder Manipulationsfreiheit. Damit hat die einfache Signatur
praktisch keinen Beweiswert und wird nicht für wichtige Dokumente verwendet.
§
(2) Für die fortgeschrittenen elektronischen Signaturen ( 2 Nr. 2 SigG)
gelten mehr Anforderungen als für die einfache elektronische Signatur. Sie
müssen die Sicherheitsziele aus Abschnitt 2.3 “ Sicherheitsziele von digitalen
Signaturen“ erfüllen. Des Weiteren muss sichergestellt sein, dass nur der
Signaturerzeuger alleine und keine 3. Person die Signatur erstellen kann. Damit haben die fortgeschrittenen elektronischen Signaturen einen höheren Beweiswert als die einfachen Signaturen. Die fortgeschrittene Signatur kann ohne Bedenken bei Anwendungen, mit geringerer rechtlicher Bedeutung, zum
Beispiel eine E-Mail an Freunde oder Bekannte, eingesetzt werden.
§
(3) Die qualifizierte elektronische Signatur ( 2 Nr. 3 SigG) ist rechtlich
verbindlich. Das heißt, wenn mit dieser Signatur Verträge oder Rechnungen
unterschrieben werden, dann sind diese auch rechtsgültig. Die Sicherheitsziele
aus Abschnitt 2.3 “ Sicherheitsziele von digitalen Signaturen“ müssen erfüllt
werden. Da die qualifizierte elektronische Signatur den höchsten Beweiswert
hat, gilt für sie noch eine weitere Anforderung. Damit die Signatur ihrem
Urheber rechtlich stichhaltig zu geordnet werden kann, wird hier ein qualifiziertes Zertifikat ( 2 Nr. 7 SigG) verlangt. Darin befinden sich Daten über
den Urheber und seine Signatur. Für die fortgeschrittene Signatur wird kein
Zertifikat verlangt. Das Zertifikat für die qualifizierte elektronische Signatur
wird von einem vertrauenswürdigen Zertifizierungsdienstanbieter ( 2 Nr. 8
SigG) (ZDA) signiert. Dadurch wird die Bindung zwischen Urheber, seiner
Signatur und seines Signaturschlüssels festgehalten und garantiert. Dies kann
jeder nachprüfen.
Wird an der Sicherheit der qualifizierten Signatur gezweifelt, kann ein Zertifizierungsdienstanbieter sich von der Bundesnetzagentur (BNetzA) akkreditieren lassen. Das bedeutet, dass die Bundesnetzagentur eine Überprüfung
des Sicherheitskonzeptes vom ZDA erfolgreich durchgeführt hat. Das Sicherheitskonzept des ZDAs muss zuvor bei der BNetzA hinterlegt werden. Durch
diese Überprüfung werden die Zweifel beseitigt. Damit bestätigt die Bundesnetzagentur, dass der Zertifizierungsdienstanbieter den aktuellen Sicherheitsstandard erfüllt und seine qualifizierte Signatur sicher ist. Der ZDA kann
diese Prüfung auch als Prävention durchführen lassen.
§
§
49
Der Zertifizierungsdienstanbieter wird als Trustcenter19 20 bezeichnet. Werden qualifizierte elektronische Signaturen verwendet, dann stellt meistens das
Trustcenter den privaten Schlüssel aus und speichert ihn oft auf einer SmartCard. Diese wird auch als Signaturkarte bezeichnet. Der private Schlüssel
könnte ebenfalls auf anderen Speichermedien wie einem USB-Token gelagert
werden.21 Der öffentliche Schlüssel kann ohne weiteres auf diesen Speichermedien aufbewahrt werden. Jedoch darf der private Schlüssel aus Sicherheitsgründen niemals die Karte bzw. das verwendete Speichermedium verlassen. Dadurch sind die Schlüsselgrößen für den privaten und den öffentlichen
Schlüssel vom Speicherplatz der jeweiligen verwendeten Speichermedien, hier
die SmartCard, angewiesen. Ebenso ist die Schlüsselerzeugungszeit vom Trustcenter abhängig. 22 23 24
Der nächste Abschnitt beinhaltet die Anwendungsgebiete der digitalen
Signaturen.
...Eine SmartCard ist eine Chipkarte im Scheckkarten-Format mit integrier”
tem Mikroprozessor. Dieser verfügt über einen Speicher, ein Karten-Betriebssystem und nach Bedarf über einen oder mehrere Koprozessoren und kann
Programme (Chipkarten-Anwendungen) oder komplexe Rechenoperationen
ausführen. Über ein SmartCard-Lesegerät (Terminal) kann die Karte vom
Computer angesteuert werden. Auf SmartCards mit integriertem KryptoKoprozessor werden oft private Schlüssel erzeugt und gespeichert, da SmartCards heute das sicherste Speichermedium darstellen. Die ChipkartenAnwendung kann ein direktes Auslesen des privaten Schlüssels verhindern.
...“ 25 26
19
http://www.itwissen.info/definition/lexikon/Trustcenter-TC-trust-center.html,
06.08.2008, 13:30 Uhr
20
http://www.itwissen.info/definition/lexikon/Digitale-Signatur-DSig-digitalsignature.html, 06.08.2008, 13:30 Uhr
21
http://www.bsi.de/esig/siganwerzeugung.htm, 07.09.08, 19:30 Uhr
22
http://www.bundesnetzagentur.de/enid/081dce8fed15b62
6456370747d86053c,0/Sachgebiete/Qualifizierte elektronische Signatur gz.html,
06.08.2008, 13:10 Uhr
23
http://www.bsi.bund.de/literat/faltbl/F10ElektronischeSignatur.htm,
06.08.2008,
13:10 Uhr
24
http://www.gesetze-im-internet.de/sigg 2001/ 2.html, 06.08.2008, 13:10 Uhr
25
http://www.secardeo.de/Loesungen/Glossar/glossar.html, 03.09.08, 17:28 Uhr
26
http://www.itwissen.info/definition/lexikon/Smartcard-smartcard.html,
03.09.08,
17:32 Uhr
50
5.2
Einsatzgebiete
Signaturen werden mit und ohne SmartCard verwendet. Wird keine Karte für
die Signatur benutzt, dann ist das Zertifikat, das den öffentlichen Schlüssel
enthält, sowie der private Schlüssel entweder auf der Computerfestplatte oder
auf einem anderen Speichermedium gespeichert. Wird eine Karte, zum Beispiel eine Signaturkarte oder Bürgerkarte (siehe Abschnitt 5.1 Arten von
”
digitalen Signaturen“ und 5.2.5 elektronische Ausweise“), für die Signatur
”
verwendet, dann befindet sich der private Schlüssel auf dieser Karte. Diese
Möglichkeit setzt einen Karteleser voraus, damit der private Schlüssel zum
Signieren verwendet werden kann.
Bisher wurden immer die Beispiele Rechnung oder E-Mail als Anwendungen von digitalen Signaturen aufgeführt. In diesem Abschnitt werden weitere
Gebiete gezeigt.
Es ist nicht immer möglich jede Anwendung einem einzelnen Bereich zuzuordnen, da Überschneidungen unvermeidlich sind. In dieser Arbeit werden
die unterschiedlichen Anwendungen in die folgenden Bereiche eingeteilt:
1. Behörden
2. Verwaltung und Rechtswesen
3. Unternehmen
4. Gesundheitswesen
5. Elektronische Ausweise
6. Digitaler Geschäftsverkehr
7. Software
8. Digitale Dokumente
9. Digital Signierte Tonaufnahmen
10. Sonstige Einsatzmöglichkeiten
5.2.1
Behörden
Ein Einsatzgebiet der digitalen Signaturen sind die Behörden. Hier wird der
Gebrauch von digitalen Signaturen durch die Bundesregierung gefördert. Das
Ziel der Behörden ist es die ’Papierberge’ zu reduzieren und zu digitalisieren,
um damit Kosten und Zeit einzusparen. Von diesen Vorteilen sollen auch die
51
Anwender (allgemein umgangssprachlich Bürger) profitieren, indem sie
ihre Behördengänge zum Teil über das Internet erledigen können, ohne durch
willkürliche Öffnungszeiten oder Warteschlangen behindert zu werden. Alle
Behördengänge lassen sich zur Zeit noch nicht digital erledigen und bei manchen wird dies auch in Zukunft nicht möglich sein, so wird für die Anmeldung
beim Einwohnermeldeamt weiterhin das persönliche Erscheinen erforderlich
sein.
Damit die Bürger die virtuellen Behörden und ihre Angebote nutzen können,
benötigen sie ihre eigenen digitalen Signaturen. Dadurch können Anträge
oder Formulare eindeutig dem Antragsteller zugeordnet werden. Durch diese virtuelle Verwaltung können die folgenden Erledigungen unter anderem
getätigt werden:
Ausschreibungen (e-Vergabe), verschiedene Anträge (Gewerbeanmeldungen
und -abmeldungen, amtliche Beglaubigungen von Abschriften, Ablichtungen
und Vervielfältigungen, Baugenehmigungen), Steuererklärungen via Elster,
Einkommensnachweis (ELENA), Online-Wahlen, Renteninformationen und
-auskünfte, Eintragungen in das Partnerschaftsregister und in das Handelsregister, Ausdrucke aus dem Handelsregister.
Für die Realisierung der e-Vergabe gibt es viele verschiedene Anbieter. Der
Bund27 , einige Länder28 29 und Unternehmen haben jeweils ihre eigenen
Plattformen bzw. nutzen Vergabeplattformen von anderen Firmen30 31 für die
Ausschreibungen. Die Gemeinsamkeit von allen ist die Anwendung von digitalen Signaturen. Es werden Signaturkarten und die entsprechenden Schlüssel
der Kartenbesitzer gefordert. Unterschiedlich sind die genutzten Programme.
Deshalb müssen Anbieter und Bieter bei Ausschreibungen darauf achten welche Signaturkarten unterstützt werden.
Für alle Bundesbehörden ist geplant, dass Ausschreibungen ab 2010 nur noch
elektronisch erfolgen sollen.32
Ebenso wie für die Ausschreibung gibt es für die Gewerbeanmeldungen und
-abmeldungen unterschiedliche Portale. In vielen Städten ist im Moment kei27
http://e-vergabe.lzp.de/, 10.08.08, 14:35 Uhr
http://www.vergabeplattform.berlin.de/main.html, 10.08.08, 14:39 Uhr
29
http://www.vergabe.bayern.de/informationen/voraus firmen.html, 10.08.08,
Uhr
30
http://www.vergabe24.de/vp/portal/vergabe24, 10.08.08, 14:53 Uhr
31
http://www.subreport.de/, 10.08.08, 14:59 Uhr
32
http://www.dstgb-vis.de/e vergabe/aktuelles zur e vergabe
/e vergabe aktuelle mitteilung des bmvbs/index.html, 10.08.08, 15:12 Uhr
28
52
14:45
ne Online-Gewerbeanmeldung und -abmeldung möglich.33
Es können verschiedene Anträge online gestellt werden, unter anderem Rentenauskünfte und -ansprüche34 oder signierte Formulare35 . Auf der Webseite36 sind einige Länder und Städte zu finden, bei denen Online-Anträge
oder Formulare mittels digitaler Signatur durchgeführt werden. Das Verfahren mittels PC für die Interessenten erreichbar zu sein, befindet sich in vielen
Städten noch im Aufbau.
Das virtuelle Bauamt (ITeBau) ist eine internetbasierte Plattform. Mit ihr
können Antragsteller ihre signierten Unterlagen per Online-Formular digital
an die Bauaufsichtsbehörde senden. Die Antragsteller erhalten ihre signierten
Baugenehmigungen über das Portal. Das Ziel dieses Baugenehmigungsverfahrens ist es, den Genehmigungsprozess effizienter zu gestalten und damit die
Verwaltungsabläufe zu verkürzen.37
Das mittlerweile sehr bekannte Steuererklärungsprogramm Elster ermöglicht
die digitale Einreichung der Steuererklärung an das Finanzamt. Auch hier
kommt die Signatur zum Einsatz, indem die Steuererklärung vom Anwender
signiert und dann eingereicht wird. 6,3 Millionen Anwender haben 2008 ihre
Steuererklärung mithilfe Elster online abgegeben.38
Interessant ist bei Elster, das Portal ElsterOnline. Der künftige Benutzer hat
die Wahl zwischen drei verschiedenen Arten des Logins. Eine davon - die
einfachste - ist kostenlos, die anderen Logins sind zahlungspflichtig. Dafür
erhält er einen besseren Schutz und Zusatzleistungen.39
Der elektronische Einkommensnachweis auch ELENA genannt, ist ein Modellprojekt. Es wurde von der Informationstechnischen Servicestelle der Gesetzlichen Krankenversicherung GmbH (ITSG) entwickelt. Das ELENA-Verfahren dient zur sicheren Übermittlung und zentralen Speicherung eines multifunktionalen, signierten Verdienst-Datensatzes. Es werden pro Jahr ca. 60
Millionen Bescheinigungen von den 2,8 Millionen Arbeitgebern ausgestellt.
Mit ELENA sollen die Kosten und die Bürokratie verringert werden. Un33
https://gewan.bayern.de/, 10.08.08, 15:50 Uhr
http://www.deutsche-rentenversicherung-bund.de/nn 20278/SharedDocs/de/
Navigation/Beratung/eService node.html nnn=true, 10.08.08, 16:30 Uhr
35
http://www.tirol.gv.at/applikationen/e-government/formulare/, 10.08.08, 16:32 Uhr
36
http://www.where2sign.de/index.php?id=433/, 5.08.08, 11:20 Uhr
37
http://www.itebo.de, 28.08.08, 19:08 Uhr
38
http://www.bitkom.org/de/presse/8477 52285.aspx, 07.08.08, 18:25 Uhr
39
https://www.elster.de/index.php, 07.08.08, 18:25 Uhr
34
53
ter dem Projektnamen JobCard“ wurde ELENA bereits in den ersten zwei
”
Teststufen erfolgreich erprobt. Es ist noch eine dritte Stufe vorgesehen. Im
Moment läuft ELENA im Modellbetrieb. ELENA selbst hat keine Chipkarte,
sie beinhaltet eine qualifizierte Signatur. Mit dieser werden die Anträge und
Bescheinigungen signiert.40 Künftig wird sie für die Beantragung von Sozialleistungen wie Wohn-, Arbeitslosen- oder Kindergeld erforderlich sein.41
Online-Wahlen sind unter der Bezeichnung I-Voting bekannt. Anstatt persönlich ins Wahllokal zugehen oder eine Briefwahl durchzuführen, werden die
Wahlen digital über das Internet ausgeführt. Um die Sicherheit beim I-Voting
zu gewährleisten, müssen alle potenziellen Probleme, die die Internetvernetzung mit sich bringen kann, berücksichtigt werden.42 Bisher wurde das
I-Voting in Deutschland, in Estland und in der Schweiz durchgeführt.43 44
Ein weiteres Beispiel für virtuelle Behörden ist das Versorgungsamt Bremen.
Hier können über bremen-online-service45 Erledigungen im Internet getätigt
werden. Dazu wird die Plattform Governikus“ genutzt. Sie dient zur siche”
ren und signierten Übermittlung von Daten, Formularen oder Erklärungen.
In vielen Projekten von Bund, Ländern und Kommunen wird Governikus“
”
eingesetzt. Interessant ist, dass die Anwender mitbestimmen können, wie sich
diese Plattform weiterentwickeln soll.46
Es gibt virtuelle Rathäuser. Eines davon ist das Rathaus der Stadt Iserlohn, das mit Rathaus online“ in Erscheinung tritt. Es signiert momentan
”
nur seine ausgehenden E-Mails.47
Der elektronische Bundesanzeiger ist eine Plattform für die zentrale Veröffentlichungen, rechtlichen relevanten Unternehmensnachrichten und Bekanntmachungen. Es können kostenpflichtig signierte Aufträge zur Veröffentlichung
im elektronischen Bundesanzeiger übermittelt werden. Des Weiteren kann
im gesamten Datenbestand des elektronischen Bundesanzeigers kostenlos re40
http://www.itsg.de/upload/ELENA Broschuere 2007 1111.pdf, 07.08.08, 17:35 Uhr
http://www.heise.de/newsticker/Bundeskabinett-beschliesst-elektronischenEinkommensnachweis-ELENA–/meldung/109990/, 07.08.08, 17:36 Uhr
42
https://berlin.ccc.de/wiki/Wahlcomputer: Internetwahlen, 11.08.08, 15:44 Uhr
43
http://de.wikipedia.org/wiki/I-Voting, 11.08.08, 15:49 Uhr
44
http://www.e-lo-go.de/ifgcc/index.php?option=com content&task=view&id=22662&
Itemid=93&lang=de DE, 11.08.08, 15:51 Uhr
45
http://www.bos-bremen.de/index.html, 11.08.08, 16:10 Uhr
46
http://www.governikus.de/governikus, 10.08.08, 17:55 Uhr
47
http://www.iserlohn.de/Rathaus Online/zs index.php, 10.08.08, 17:50 Uhr
41
54
cherchiert werden.48
5.2.2
Verwaltung und Rechtswissenschaft
Für die unterschiedlichen Behördengänge wurden und werden verschiedene
Plattformen und Programme entwickelt, die den Bürgern und den Unternehmen zur Verfügung gestellt werden.
Es wurde die virtuelle Poststelle des Bundes (VPS) eingerichtet. Sie dient
für den signierten, sicheren elektronischen Datenverkehr zwischen Bürgern,
Unternehmen und Behörden.49
... Die Virtuelle Poststelle des Bundes stellt als Basiskomponente Da”
”
tensicherheit“ ein zentrales System für den Einsatz von Kryptographie zur
Verfügung. Sie erleichtert und unterstützt die sichere elektronische Kommunikation zwischen Behörden und externen Partnern auf Behördenseite ...“ 50
Eine Anwendung, die auf VPS aufbaut, ist das elektronische Gerichts- und
Verwaltungspostfach (EGVP). Es wird für den elektronischen Rechtsverkehr
genutzt51 und von Gerichten, Anwälten, Notaren und Verfahrensbeteiligten
verwendet, zum Beispiel für Schriftsätze, amtliche Beglaubigungen, Eintragungen in das Partnerschaftsregister und in das Handelsregister oder für den
Ausdruck aus dem Handelsregister. Somit können diese Daten in rechtsverbindlicher Form auf digitalem Wege mittels Internet übertragen werden.52 53
54
Des Weiteren wird es für das Mahnverfahren eingesetzt, das ab dem ersten
Dezember 2008 nur noch elektronisch durchgeführt wird.55 56
Für Unternehmen sind die folgenden Programme und Portale in den jeweiligen Branchen interessant.
ZEDAL ist das Komplettsystem zur elektronischen Nachweisführung in der
Abfallwirtschaft. Unternehmen können sich entscheiden, ob sie das ZEDALPortal oder das Subsystem ProZedal verwenden wollen. In beiden Variianten
werden digitale Signaturen für die Transportsicherung der Dokumente einge48
https://www.ebundesanzeiger.de/ebanzwww/wexsservlet, 28.08.08, 16:28 Uhr
http://www.bsi.de/fachthem/vps/index.htm, 07.08.08, 10:11 Uhr
50
http://www.bsi.de/fachthem/vps/common vps.htm, 07.08.08, 10:21 Uhr
51
http://www.EGVP.de, 11.08.08, 17:40 Uhr
52
http://www.bsi.de/fachthem/vps/tech.htm, 12.08.08, 11:15 Uhr
53
http://www.bnotk.de/Service/Empfehlungen+Hinweise/RS25-06 ElHandelsregisterverkehr.html, 12.08.08, 11:17 Uhr
54
http://www.handelsregister.de/rp web/welcome.do?, 12.08.08, 11:20 Uhr
55
http://www.siglab.de/2008/08/mahnungen-rechtskraeftig-signieren-ab-dem1122008/, 08.08.08, 16:15 Uhr
56
http://www.mahngerichte.de/, 08.08.08, 16:18 Uhr
49
55
setzt. Dazu wird eine Signaturkarte, RSA mit SHA-1 und einer Schlüssellänge
von 1024 Bit genutzt. Diese Schlüssellänge entspricht nicht dem aktuellen
Sicherheitsstandard, der eine größere Schlüssellänge bei RSA fordert als 1024
Bit.
Mit dem Programm DMPAdirekt können Anträge erstellt und signiert werden. Mittels VPS werden diese dann an das deutsche Patent- und Markenamt
übermittelt.57
bi-Online ist eine eVergabeplattform für Bau-, Liefer- und Dienstleistungsaufträge. Die Aufträge stammen von öffentlichen und privaten Auftraggebern
aus allen Bundesländern.58
Folgende Bundesämter sind via Internet zu erreichen:
l Bundesamt für Naturschutz (BfN):
Anträge können mit Cites-Online digital signiert und versendet werden.59
l Bundesamt für Verbraucherschutz und Lebensmittelsicherheit (BVL):
Elektronische Anträge (eAntrag) können bearbeitet werden. Das Antragsformular wird auf elektronischem Weg über das BVL-Portal übermittelt. Um die Sicherheitsanforderungen zu gewährleisten, wird hierzu
der VPS-Client des BVL der BundOnline-Basiskomponente Virtuelle
”
Poststelle“ (VPS) benutzt.60 61
l Umweltbundesamt Deutsche Emissionshandelsstelle für Emissionshandel der Deutschen Emissionshandelsstelle (DEHSt) und für Zuteilung
und Handel von Treibhausgas- und Emissionszertifikaten:
Es kann online erreicht werden. Hier wird die Plattform Governikus“ 62
”
eingesetzt. Zur Zeit nutzen es fast 3.000 Unternehmen in Deutschland
für die Beantragung und Zuteilung von Emissionszertifikaten bei der
DEHSt. Die Weiterleitung der Anträge erfolgt über die VPS.63 Ebenso
57
http://www.dpma.de/service/e dienstleistungen/dpmadirekt/index.html, 13.08.08,
10:00 Uhr
58
http://www.bi-online.de/, 13.08.08, 11:00 Uhr
59
http://www.bfn.de/0305 antragstellung.html, 09.08.08, 18:10 Uhr
60
http://www.bvl.bund.de/cln 007/nn 494194/sid 06A39AF5FB8820639
C97DA8813B64AA1/DE/04 Pflanzenschutzmittel/11 AntragstellerAnwender/
010 epsmzulassung/eAntrag InfoProjekt.html nnn=true, 09.08.08, 18:15 Uhr
61
http://www.bvl.bund.de/cln 007/nn 494194/sid 06A39AF5FB8820639
C97DA8813B64AA1/DE/04 Pflanzenschutzmittel/11 AntragstellerAnwender/
010 epsmzulassung/eAntrag InfoProjekt.html nnn=true, 09.08.08, 18:22 Uhr
62
http://www.governikus.de/governikus, 09.08.08, 18:20 Uhr
63
http://www.dehst.de/, 09.08.08, 18:28 Uhr
56
wird die Kommunikationssoftware Govello“ verwendet. Sie wurde von
”
der bremen online services GmbH & Co entwickelt und stellt mit einer starken Verschlüsselung die Vertraulichkeit der zu sendenden Daten
sicher. Die Daten können außerdem signiert werden.64
5.2.3
Unternehmen
Ein wesentlicher Bestandteil im Alltag von Unternehmen ist die Rechnungserstellung. Heute können Rechnungen elektronisch erstellt und per E-Mail
versendet werden. Dies hat für die Unternehmen die Vorteile Zeit und Kosten einzusparen, da die Rechnungen nicht mehr ausgedruckt, unterzeichnet,
frankiert und dann verschickt werden müssen.
Damit die Rechnungsempfänger, insbesondere andere Unternehmen, die Rechnung beim Finanzamt geltend machen können, muss nicht nur der Rechnungsaussteller, sondern auch der Rechnungsempfänger, gewisse Anforderungen erfüllen. Zum Einen muss der Rechnungsaussteller die Rechnung mit
einer qualifizierten Signatur unterzeichnen, denn sonst kann der Empfänger
diese Rechnung nicht beim Finanzamt geltend machen. Zum Anderen muss
der Empfänger die Signatur der Rechnung prüfen und ein Prüfungsprotokoll
anfertigen. Die Signatur, die Rechnung und das Prüfungsprotokoll muss der
Empfänger und der Aussteller, nur die Rechnung und die Signatur, 10 Jahre
lang digital archivieren ( 14b Abs. 1, Abs. 4 UStG).65 Er darf die Rechnung
nicht einfach ausdrucken und die digitale Datei löschen. Damit verliert diese ausgedruckte Rechnung ihre Beweiskraft, weil das Prüfungsprotokoll fehlt
und die Signatur nicht nachgeprüft werden kann.
Von dieser Vorgehensweise der signierten Rechnung sind keine privaten EndKunden betroffen. Ihnen kann ein Unternehmen unsignierte Rechnung zukommen lassen.66 Wenn sich unter den Kunden ein Unternehmen befindet,
dann ist die digitale Signatur bei digitalen Rechnungen Pflicht
( 14 Abs. 3 UStG).67
§
§
§
Digitale Gutschriften werden vor dem Gesetz wie eine Rechnung ( 14 Abs.
2 UStG) behandelt. Die signierten Gutschriften werden von Unternehmen
für ihre Kunden erstellt, diese können auch ein Unternehmen sein, zum Beispiel ein Lieferant.68 Das bedeutet, alle oben genannten Anforderungen für
64
http://www.govello.de/govello, 29.08.08, 19:40 Uhr
http://bundesrecht.juris.de/ustg 1980/ 14b.html, 24.08.08, 13:05 Uhr
66
http://www.elektronische-steuerpruefung.de/e rechnungen/steigauf 2.htm, 24.08.08,
13:03 Uhr
67
http://bundesrecht.juris.de/ustg 1980/ 14.html, 24.08.08, 13:00 Uhr
68
http://bundesrecht.juris.de/ustg 1980/ 14.html, 24.08.08, 13:00 Uhr
65
57
eine Rechnung muss die digitale Gutschrift ebenfalls erfüllen. Der Vorteil von
digitalen Gutschriften ist, dass die Abwicklung zwischen Unternehmen und
Lieferanten schneller stattfinden kann.69 Hierfür wird gern die AuthentiDateSignaturlösung eingesetzt, da sie zum Einen seit Jahren von nationalen und
internationalen Unternehmen angewendet wird und zum Anderen die Auflagen des Deutschen Signaturgesetzes und der Europäischen Signaturrichtlinie
erfüllt.70 71
Ein Unternehmen hat in der Regel noch mehr Dokumente zu sichern und
aufzubewahren, die E-Mailkorrespondenz, Qualitätsunterlagen und Verträge.
Dies betrifft nicht nur Unternehmen, sondern ebenfalls zum Beispiel die Patientenakte im Gesundheitswesen oder Schriftsätze im Rechtswesen. Es müssen
bisher ausgedruckte Dokumente eingescannt, signiert und ebenfalls schon digital signierte Dokumente archiviert werden. Mit der Archivierung ergibt sich
das Problem, dass die digitale Signatur von Dokumenten nicht zerstört werden darf und ihre Fälschungssicherheit gewährleistet sein muss. Durch die
ständige Weiterentwicklung der Technik können alte Signaturen, die nach
alten Standards erzeugt wurden, gebrochen werden. Werden alte Signaturen
einfach durch Neue ersetzt, verliert das Dokument seine rechtliche Beweiskraft, deshalb muss eine andere Lösung gefunden werden. Als Lösung bietet
sich die Übersignatur an. Sie verändert die Signatur der Dokumente nicht,
sondern bildet einfach eine weitere Signatur über das signierte Dokument.
Damit kann die Übersignatur jederzeit wieder entfernt werden, ohne die ursprüngliche Signatur zu zerstören.72 73
Andere Formen der Übersignatur sind die Langzeitsignatur und die Doppelund Mehrfachsignatur.74 75
Das Abschließen von Verträgen ist ein alltägliches Geschäft. Es werden ebenfalls digitale Signaturen bei elektronischen Verträgen eingesetzt. Dafür kommen unterschiedliche Programme zur eingesetzt, die mithilfe einer Reihe un69
http://www.esign.at/de/Loesungen/Gutschriftsverfahren.html, 24.08.08, 13:13 Uhr
http://www.authentidate.de, 24.08.08, 13:20 Uhr
71
http://www.authentidate.de/fileadmin/pdf/Anwender/GER AuthentiDate
Anwenderbericht BOSCH.pdf, 24.08.08, 13:25 Uhr
72
http://www.datenschutz.hessen.de/tb36k08.htm, 30.08.08, 9:19 Uhr
73
http://www.nrca-ds.de/Spec Uebersignatur V2.0.pdf, 30.08.08, 9:12 Uhr
74
http://www.xicrypt.com/xades-archiv-signatur.php, 30.08.08, 9:00 Uhr
75
http://www.cryptoshop.com/de/knowledgebase/pki/digitalsignature/longtermsig.php,
30.08.08, 9:05 Uhr
70
58
terschiedlicher Programme signiert werden.76
77
Bei der Industrie- und Handelskammer Gesellschaft für Informationsverarbeitung (IHK-GfI) ist es möglich einen elektronischen signierten Berufsausbildungsvertrag78 abzuschließen oder ein signiertes Ursprungszeugnis zu beantragen. Das Ursprungszeugnis dient für den Warenexport in andere Länder.
Für beide Anwendungen werden digitale Signaturen verwendet.79
5.2.4
Gesundheitswesen
Im Gesundheitswesen sind heute schon viele Daten von Patienten digital abgespeichert. Um den Verwaltungsaufwand für alle Beteiligten und die Kosten
zu reduzieren, werden die medizinischen Daten zukünftig mithilfe der Gesundheitskarte, dem elektronischen Rezept, dem Heilberufsausweis und der
elektronischen Patientenakte verwaltet.
Die Gesundheitskarte (eGK) wird die bisherige Krankenversichertenkarte der
Krankenversicherten ersetzen. Zur Zeit wird sie in der Praxis getestet. Die
Gesundheitskarte ist eine SmartCard, auf ihr werden die medizinischen und
persönlich notwendigen Daten des Karteninhabers gespeichert. Die Karte
dient der elektronischen Rezeptverwaltung (eRezept) und der Online-Prüfung
von Patientendaten. Anwender der Gesundheitskarte sollen Krankenversicherten, niedergelassenen Ärzten, Apotheken und Krankenhäusern sein. Hierdurch soll die Kommunikation mit den Krankenkassen erleichtert werden.80
81 82
76
http://www.seccommerce.de/de/produkte/seccontract/seccontract.html,
30.08.08,
10:00 Uhr
77
http://www.itsolution.at/signatur-anwendungen/PDF-dokumente-signieren.html,
27.08.08, 16:00 Uhr
78
http://signatur.ihk.de/SignaturV4/content/start.html, 11.08.08, 16:20 Uhr
79
http://cms.ihksaarland.de/ihk-saarland/Integrale?SID=CRAWLER&MODULE
=Frontend&ACTION=ViewPage&Page.PK=72, 11.08.08, 16:22 Uhr
80
http://www.bmg.bund.de/cln 110/nn 1168258/sid AB3E35AA90F9FE9
AD593327AE3EE5D97/SharedDocs/Standardartikel/DE/AZ/E/GlossarElektronische-Gesundheitskarte/Grundfunktionen.html? nnn=true, 07.08.08, 18:08 Uhr
81
http://www.bmg.bund.de/cln 117/SharedDocs/Downloads/DE/Neu/ElektronischeGesundheitskarte Brosch C3 BCre,templateId=raw,property=publicationFile.pdf
/Elektronische-Gesundheitskarte Brosch%C3%BCre.pdf, 07.08.08, 19:12 Uhr
82
http://www.bmg.bund.de/cln 117/nn 1168248/SharedDocs/Downloads/DE/Neu/
Informationen-zum-Thema-Datensicherheit Gesundheitskarte-aktuell-barrierefrei,
templateId=raw,property=publicationFile.pdf/Informationen-zum-ThemaDatensicherheit Gesundheitskarte-aktuell-barrierefrei.pdf, 07.08.08, 19:14 Uhr
59
Das elektronische Rezept (eRezept) wird auf der Gesundheitskarte gespeichert. Es wird nach seiner Testphase schrittweise die auf Papier gedruckten
Rezepte ablösen. Das eRezept soll zu einfacheren und besseren Kommunikationen zwischen Arztpraxen und Apotheken führen.83
Die elektronische Patientenakte (EPA) soll zukünftig ein Bestandteil der Gesundheitskarte sein. Darin werden alle relevanten Daten von Medikamenten
und ihre Dosierungen bis hin zu Arztbriefen gespeichert.84 85
Der Heilberufsausweis (HBA) ist ein Berufausweis und berechtigt seinen Besitzer, dies sind Ärzte und Apotheker, nach der beruflichen Authentifizierung
auf die Gesundheitskarte der Krankenversicherten zugreifen zu können, um
Daten zu lesen oder elektronische Rezepte und medizinische Daten, zum Beispiel Arzneimitteldokumentation und Notfalldaten, zu speichern.86
5.2.5
Elektronische Ausweise
Zu den elektronischen Ausweisen gehören, zum Beispiel die Gesundheitskarte
(eGK), der Heilberufsausweis (HBA), der elektronische Dienst- und Truppenausweis, der elektronische Reisepass (ePass), der Personalausweis (ePA) und
die Bürgerkarte.
Die Gesundheitskarte (eGK) und Heilberufsausweis (HBA) wurden im oberen Abschnitt 5.2.4 Gesundheitswesen“ beschrieben.
”
Der elektronische Dienst- und Truppenausweis (eDTA) wurde in einem Pilotbetrieb (von Mai 2003 bis Oktober 2005) getestet und wird schrittweise als
Truppenausweis bei der Bundeswehr eingeführt. Außerdem ist geplant den
digitalen Dienstausweis bei der Bundespolizei einzuführen. Es besteht damit
die Möglichkeit je nach Bedarf der Behörde Funktionen, wie die elektronische Zeiterfassung, die Ver-/Entschlüsselung von Daten oder die elektronische
Signatur, zu integrieren. Es müssen insgesamt rund 500.000 elektronische
83
http://www.bmg.bund.de/cln 117/nn 1168248/SharedDocs/Downloads/DE/Neu/
Elektronische-Gesundheitskarte Elektronisches-Rezept,templateId=raw,
property=publicationFile.pdf/Elektronische-Gesundheitskarte Elektronisches-Rezept.pdf,
07.08.08, 18:00 Uhr
84
http://www.bmg.bund.de/cln 110/nn 1168248/SharedDocs/Downloads/DE/Neu/
Elektronische-Patientenakte Gesundheitskarte-bf,templateId=raw,
property=publicationFile.pdf/Elektronische-Patientenakte Gesundheitskarte-bf.pdf,
07.08.08, 18:02 Uhr
85
http://de.wikipedia.org/wiki/Elektronische Patientenakte, 07.08.08, 18:06 Uhr
86
http://www.itwissen.info/definition/lexikon/Elektronische-Gesundheitskarteelectronic-card-of-healthness-eGK.html, 07.08.08, 18:10 Uhr
60
Dienst- und Truppenausweise produziert werden. Der Truppenausweis hat
die Besonderheit als Persönliche Schlüsselkarte Bundeswehr“ (PKIBw) im
”
Rahmen einer vorhandenen PK-Infrastruktur eingesetzt zu werden. Hierfür
ist ein eigenes Trustcenter der Bundeswehr zuständig. 87 88 89
Der elektronische Reisepass (ePass) wurde in Deutschland im November 2005
eingeführt. Seit 1. November 2007 werden in elektronischen Pässen als biometrisches Merkmal das Passfoto und zusätzlich zwei Fingerabdrücke im Radio
Frequency Chip (RF-Chip) gespeichert. Ein Ziel ist es, eine stärkere Bindung zwischen Person und Reisedokument herzustellen und somit die Identitätsüberprüfung von Reisenden deutlich zu verbessern. Dies soll mithilfe
von biometrischen Merkmalen, die im ePass digital signiert gespeichert werden, gelingen. Dadurch wird der Reisepass gegen Verfälschung abgesichert.
Außerdem wird das unbefugte Auslesen, von unter anderem den gespeicherten Fingerabdrücken, durch einen geheimen Zugriffschlüssel geschützt. Ohne
diesen Schlüssel können die Fingerabdrücke nicht ausgelesen werden.90
In Deutschland wird für die Erzeugung der digitalen Signaturen in Reisepässen der ECDSA Algorithmus mit einer Schlüssellänge von 224 Bit verwendet.91 92
Der elektronische Personalausweis (ePA) soll ab 1. November 2010 den bisherigen Personalausweis ablösen. Der Unterschied zwischen dem elektronischen
Reisepass (ePass) und dem elektronischen Personalausweis (ePA) liegt darin,
dass hier der Bürger selbst bestimmen kann, ob seine Fingerabdrücke im ePA
gespeichert werden oder nicht. Im Gegensatz dazu ist das Speichern dieser
Abdrücke bei dem ePass Pflicht. Wenn der Bürger es wünscht, kann er auch
seine eigene qualifizierte Signatur beantragen, die in seinen Personalausweis
integriert wird. Dadurch kann der Bürger selbst Daten mit seiner Signatur
87
http://www.bmi.bund.de/nn 1082274/Internet/Content/Themen/
PaesseUndAusweise/Listentexte/el Dienstausweis.html, 07.08.08, 17:20 Uhr
88
http://www.heise.de/newsticker/Elektronischer-Dienst-und
-Truppenausweis-kann-kommen–/meldung/106527, 07.08.08, 17:24 Uhr
89
http://www.y-punkt.de/portal/a/ypunkt/kcxml/04 Sj9SPykssy0xPLMnM
z0vM0Y QjzKLNzKL9zXwBsmB2T5hpvqRcNGglFR9X4 83FR9b 0A YLciHJHR0
VFACtcqp0!/delta/base64xml/L2dJQSEvUUt3QS80SVVFLzZfMjZfTTEz?yw cont
entURL=%2F01DB131000000001%2FW279SKFP447INFODE%2Fcontent.jsp, 07.08.08,
17:29 Uhr
90
http://www.bsi.bund.de/fachthem/epass/index.htm, 12.08.08, 11:00 Uhr
91
http://www.bsi.bund.de/fachthem/epass/faq.htm, 12.08.08, 11:05 Uhr
92
http://www.bsi.bund.de/fachthem/epass/Sicherheitsmerkmale.pdf, 12.08.08, 11:08
Uhr
61
signieren.93 94 95 96
Des Weiteren hat die Europäische Kommission unter dem Namen STORK
(Secure idenTity arcOss boRders linKed) ein Pilotprojekt gestartet, das
für die Anerkennung nationaler elektronischer Ausweissysteme und einfacheren Zugang zu öffentlichen Diensten in 13 Mitgliedsstaaten sorgen soll. Dadurch können EU-Bürger mit ihren elektronischen Personalausweisen überall
in der EU öffentliche Dienste nutzen und sich europaweit ausweisen. Die
Behördengänge können ebenfalls von zu Hause aus oder unterwegs mit einem
mobilen Gerät erledigt werden. Zum Beispiel können sich Studenten mit ihrem elektronischen Personalausweis ihres Heimatlandes in einer ausländischen
Universität einschreiben.97
Die digitale Bürgerkarte wird zur Zeit in Österreich eingesetzt. Ihre Aufgaben bestehen in der Signatur und der Identifikation. Die Bürgerkarte selbst
ist keine extra Karte. Die Bürgerkartenfunktion kann auf vorhandenen Karten wie auf der Bankomatkarte98 , dem Studentenausweis oder Dienstausweis
aktiviert werden. Damit werden diese Karten zur Bürgerkarte.99 100
5.2.6
Geschäftsverkehr
In diesem Abschnitt wird die Sichtweise des End-Kunden im digitalen
Geschäftsverkehr einbezogen. Heute werden viele Einkäufe via Internet erledigt. Das Online-Shopping oder eShopping endet immer mit der Bezahlung
der bestellten Waren. Deshalb muss für beide Seiten, dem Käufer und dem
Verkäufer, sichergestellt werden, dass kein Betrug möglich ist.
Hierfür ist eine gesicherte Internetverbindung zwischen diesen beiden notwendig. Außerdem muss die Authentizität gewährleistet sein. Dies kann durch
die Signatur des Kunden geschehen. Indem der Kunde sich auf der Webseite
mit seiner Signatur bei der Anmeldung, dem Login, identifiziert.101 Dabei
kann eine SSL-Verbindung (Secure Socket Layer-Verbindung) zwischen dem
93
http://de.wikipedia.org/wiki/Personalausweis, 12.08.08, 8:00 Uhr
http://www.verwaltung-innovativ.de/cln 110/nn 684508/DE/Presse/PM/
PresseArchiv/2008/20080804 28 elektronischer personalausweis.html, 12.08.08, 8:05
Uhr
95
http://www.bmi.bund.de/cln 028/nn 1082274/Internet/Content/Themen/
PaesseUndAusweise/Listentexte/elPersonalausweis.html, 12.08.08, 8:20 Uhr
96
http://www.spiegel.de/politik/deutschland/0,1518,567502,00.html, 12.08.08, 8:10 Uhr
97
http://www.decoda.de/dcNewsDtl.htm?cid=271&id=1375, 29.08.08, 19:32 Uhr
98
http://de.wikipedia.org/wiki/Bankomatkarte,12.08.08, 8:40 Uhr
99
http://www.buergerkarte.at/de/index.html, 12.08.08, 8:35 Uhr
100
http://de.wikipedia.org/wiki/B%C3%BCrgerkarte, 12.08.08, 8:30 Uhr
101
http://www.mentana-claimsoft.de/smart-login-AVS-System.html, 30.08.08, 10:14 Uhr
94
62
Kunden und dem Server des Anbieter verwendet werden. Mit ihr wird die
Kommunikation verschlüsselt und der Server identifiziert sich gegenüber dem
Kunden.102 103 104
Die digitale Signatur kann ebenfalls beim Online-Banking verwendet werden, indem sie das jeweilige Transaktionsverfahren ersetzt, zum Beispiel die
TAN-Listen. Es kann keine unbemerkte Änderung der Zahlungstransaktion
auf dem Weg zur Bank kommen.105 106
Zur Zeit wird versucht ein System zu entwickeln, um Musik und Filme digital
zu signieren. Damit sollen deren illegale Verbreitungen verhindert werden.107
Eine weitere interessante Verwendungsmöglichkeit der digitalen Signatur wäre
bei Internet-Auktionshäusern, Online-Börsen (Job-, Partner-, etc.) oder Diskussionsforen. Leider nutzt zur Zeit keiner dieser Anbieter die digitale Signatur.
Manche Internet-Auktionshäuser bieten den Service an, ein Geprüftes Mit”
glied“ bei jeweiligen Anbieter zu werden. Das bedeutet, die Identität des Mitgliedes wird überprüft. Hierzu muss das Mitglied eine Bearbeitungsgebühr
bezahlen und eine Kopie seines Personalausweises an den Anbieter senden.
Nach der erfolgreichen Überprüfung darf das Mitglied die Kennzeichnung
Geprüftes Mitglied“ tragen. Somit wird versucht mehr Vertrauen zwischen
”
den Mitgliedern und dem Anbieter zu schaffen.108 109
5.2.7
Software
Software ist ein umfangreiches Thema. Sie wird oft benutzt, gewartet, angeboten und verkauft. Für fast jede Anwendung gibt ein Programm. Unternehmen, die Softwareprodukte vertreiben, wollen sicherstellen, dass ihre Kunden mit ihrem Produkt zufrieden sind. Um dies zu gewährleisten,
fließen viele Faktoren ein, wie der korrekte und vollständige Softwaredownload eines bezahlten Programms. Dazu zählen nicht nur komplett neue Programme, sondern auch Updates und Treiber. So bei Windows Vista, hier
102
http://www.bsi-fuer-buerger.de/browser/02 05.htm, 30.08.08, 10:30 Uhr
http://www.ateo.de/ssl.html, 30.08.08, 11:21 Uhr
104
http://www.verisign.de/ssl/ssl-information-center/how-ssl-securityworks/index.html, 30.08.08, 10:55 Uhr
105
http://www.a-trust.at/info.asp?node=749&lang=GE&ch=1, 27.08.08, 16:21 Uhr
106
http://www.signatur.rtr.at/de/applications/banking.html, 27.08.08, 16:27 Uhr
107
http://www.macwelt.de/news/fav/355011/, 02.09.08, 12:35 Uhr
108
http://www.sambid.de/gm.php, 01.09.08, 15:10 Uhr
109
http://www.easta.de/, 01.09.08, 15:23 Uhr
103
63
können nur noch signierte Treiber installiert werden. Die Signaturen können
im Treiber integriert oder angehängt sein.110 Dagegen stehen Updates und
Patches für die Solaris-Versionen signiert oder unsigniert für die Installation
zur Verfügung.111
Damit ein Kunde, der die Software von einer Webseite herunterlädt, feststellen kann, ob die Software manipuliert wurde, kann er die Signatur der
Software überprüfen, genauso wie bei einer E-Mail.
Um den Signiervorgang von Software zu ermöglichen, gibt es zum Beispiel so
genannte Mobile Code Signing, Code Signing oder Code Signing Certificate.
Mit diesen kann ein Unternehmen seine Updates, Treiber und weitere Programme signieren.112 113 114
Es gibt die Variante Signaturen mit einer Hardwarekomponenten zu erzeugen, eine davon ist das PrivateServer HSM (Hardware Security Module). Es
wird in der Regel von Unternehmen eingesetzt. Die Hardware kann ohne
Signaturkarte die Daten signieren. Dies sind dann fortgeschrittene Signaturen. Werden qualifizierte Signaturen verlangt, kann die Hardwarekomponente
diese ebenfalls benutzen und die qualifizierten Signaturen erzeugen. Das PrivateServer HSM kann pro Sekunde bis zu 500 Signaturen erstellen. Dabei
setzt es RSA mit 1024 Bit ein. Problematisch hierbei ist nur die zu kurze
Schlüssellänge, sie sollte momentan 2048 Bit betragen, um die Sicherheit der
Signatur zu gewährleisten. Wie sich dann die Performance verändert, wird
von Firmenseite aus nicht erwähnt.
Der Vorteil von dieser Variante der Signaturerzeugung liegt in der besseren
Performance bei riesigen Datenvolumen. Leider gibt es diese Signaturvariante nicht oft. Dies ist vermutlich ein Grund, warum wenige Informationen
darüber von den Firmen zu erhalten sind.115 116
110
http://www.microsoft.com/whdc/winlogo/drvsign/kmsigning.mspx, 01.09.08, 17:05
Uhr
111
http://docs.sun.com/app/docs/doc/819-7280/6n983ua13?l=de&a=view,
01.09.08,
17:20 Uhr
112
http://www.trustcenter.de/products/tc mobile code signing.htm, 04.08.08, 16:55 Uhr
113
http://www.trustcenter.de/products/code signing certificate.htm, 04.08.08, 16:59
Uhr
114
http://www.verisign.com/products-services/security-services/codesigning/index.html, 02.09.08, 11:47 Uhr
115
http://www.arx.com/documents/PrivateServer-Brochure.pdf, 31.08.08, 14:11 Uhr
116
http://www.bdc.at/produkte/hotinvoice.html, 31.08.08, 15:07 Uhr
64
5.2.8
Digitale Dokumente
In diesem Abschnitt werden die digitalen Dokumente erläutert. Darunter fallen nicht nur digitale Dokumente wie beispielsweise PDF-Dateien, sondern
auch E-Mails, Online-Formulare bzw. -Anträge und Verträge.
Jedes digitale Dokument kann signiert werden, sofern die zum Signieren verwendete Software das benutzte Dateiformat kennt und damit umgehen kann.
Dies sind die meist verwendeten Formate für digitale Dateien: PDF, DOC,
XLS, TIFF, GIF, JPG und XML.117 118
Mit der E-Mail, der elektronischen Post“, werden viele unterschiedliche In”
formationen täglich versendet und empfangen. Dafür werden verschiedene
E-Mailprogramme benutzt, wie Outlook119 , Thunderbird120 121 , Eudora122
und IncrediMail123 .
Die E-Mail besteht nicht immer nur aus reinem Text. Es können auch Dateien angehängt werden. Wird eine E-Mail signiert, dann wird die Signatur
in Form einer Datei der E-Mail angehängt.124 Das Format der Signatur ist
unterschiedlich. So kann diese Datei für X.509-Zertifikate125 126 folgende Endungen haben: P7B, P7C, P7S, sig, CMS, OSCI, PKCs7, PKCS#7 und sxml.
Zusätzlich kann die hinzugefügte Datei ebenfalls zuvor signiert worden sein.
Die Signatur für diese Datei kann in ihr integriert werden, zum Beispiel in
einer PDF-Datei, dann ist die Signatur für diese Datei nicht durch die Dateiendung zu erkennen. 127
Werden Dateien per E-Mail verschickt, dann können sie verschiedene Daten
enthalten von Dokumenten, über Bilder bishin zu Programmen.
Online-Formulare und Verträge zählen ebenfalls zu den digitalen Dokumenten, sie wurden im Abschnitt 5.2.1 Behörden“ und im Abschnitt 5.2.3 Un”
”
ternehmen“ bereits vorgestellt.
117
http://www.itsolution.at/digitale-signatur-produkte/desktop/trustDesk/
professional.html, 27.08.08, 16:10 Uhr
118
http://www.decoda.de/mddload.htm?id=2034, 27.08.08, 16:14 Uhr
119
http://office.microsoft.com/de-de/outlook/FX100487751031.aspx, 22.08.08, 9:40 Uhr
120
http://www.mozilla-europe.org/de/products/thunderbird/, 22.08.08, 8:50 Uhr
121
http://www.thunderbird-mail.de/wiki/Mailverschl%C3%BCsselung mit S/MIME,
22.08.08, 8:52 Uhr
122
http://www.eudora.com/, 22.08.08, 9:15 Uhr
123
http://www.incredimail.com/german/splash.aspx, 22.08.08, 9:01 Uhr
124
http://de.wikipedia.org/wiki/Elektronische Post, 27.08.08, 13:00 Uhr
125
X.509 ist ein wichtiges Standardformat für Zertifikate von der ITU-T (International
Telecommunication Union-Telecommunication).
126
http://de.wikipedia.org/wiki/X.509, 22.08.08, 8:34 Uhr
127
https://www.signaturportal.de/signaturportal.de/tutorial,49.html, 22.08.08, 8:38 Uhr
65
5.2.9
Digital signierte Tonaufnahmen
Digitale Tonaufnahmen dienen zur Dokumentation und werden unter anderem bei wichtigen Geschäftstelefonaten oder in der Flugsicherung aufgezeichnet. Durch die digitalen Medien können solche Aufnahmen vermehrt
und leichter gespeichert, aber auch einfacher gefälscht werden.
Das Fraunhofer-Institut hat das Patent für ein Verfahren zur digitalen
Signierung von Audio-Aufnahmen erhalten, dass der Fälschung vorbeugt. Mit
dieser VoIP-Signatur (engl. Voice over Internet-Protocol, Internet-Telefonie)
können Tondokumente vor Manipulation geschützt werden. Außerdem wird
die Integrität und Nichtabstreitbarkeit der Daten sichergestellt. Dieses Verfahren kann mit beliebigen Schlüsseln und Schlüssellängen arbeiten.128 129
5.2.10
Sonstige Einsatzmöglichkeiten
Hier sind noch weitere Einsatzgebiete aufgeführt, wie die Tourismusbranche,
die Lotterie, das Fax, die Bahn- und Flugtickets.
In der Tourismusbranche werden signierte Rechnungen erstellt, beispielsweise bei Hotels und Autovermietungen.130 131
Ein weiteres Einsatzgebiet für die digitale Signatur ist die Lotterie. Hier
werden mit einem elektronischen Zufallsgenerator die Gewinnnummern erzeugt. Diese werden signiert und sicher an die Datenverarbeitungsanlage der
Lotterie übermittelt.132 133 Ebenfalls können die Quittungsangaben signiert
werden.134
Eine andere Möglichkeit signierte Dokumente zu verschicken ist, sie mit einem Computerfax zu senden.135 Allerdings wird die digitale Signatur in Form
eines 2D-Barcodes erstellt. Dieser besteht aus übereinander gestapelten nor”
malen“ Barcodes und kann daher meistens nur aus bestimmten Richtungen
gescannt werden. Das heißt, es werden bestimmte Scanner zum Einlesen
128
http://www.sit.fraunhofer.de/pressedownloads/pressemitteilungen/20071203.jsp,
20.08.08, 9:30 Uhr
129
http://de.wikipedia.org/wiki/IP-Telefonie, 20.08.08, 9:39 Uhr
130
http://www.siglab.de/2008/07/hotelde-signiert-elektronische-rechnungen/, 28.08.08,
14:22 Uhr
131
http://www.carlsonwagonlit.com/de/countries/de/partner/partner avis.html,
28.08.08, 14:24 Uhr
132
http://www.nkl-albert.de/index.php?link=ziehung, 28.08.08, 14:15 Uhr
133
http://www.nkl.de/nkl/NKL/sogehts/spielsystem/gewinnzahlen.html,
28.08.08,
14:16 Uhr
134
http://www.westlotto.de/de/lottoportal/magazin/agb.jsp, 28.08.08, 14:18 Uhr
135
http://www.toolmaker.de/?id=9, 28.08.08, 14:36 Uhr
66
benötigt. Ein 2D-Barcode kann bis etwa 2.000 Bytes erfassen und ausgedruckt oder kann in eine PDF-Datei umgewandelt werden. Dies geschied folgendermaßen: Die zu signierenden Daten werden an einen Server gesendet.
Dort werden die Daten signiert. Hier können zum Beispiel die SmartCards
eingesetzt werden. Danach wird die Signatur mit den Daten entweder in
2D-Barcodeform oder als PDF-Datei zum Kunden geschickt.136 137 In der
Abbildung 10 auf Seite 67 sind zwei Beispiele für 2D-Barcodes zu sehen. 138
139 140
Abbildung 10: Zwei 2D-Barcodearten aus 140
Der Linke ist ein PDF417- und der Rechte ein Aztec Code.
Der Aztec Code ist ein 2D-Barcode. Er wird bei der Deutschen Bahn für die
Online-Tickets bzw. Mobile-Tickets eingesetzt. Bis zu 10 Minuten vor Abfahrt des Zuges kann per Handy das Mobile-Ticket gebucht werden.141 142 143
Ebenso werden 2D-Barcodes bei der Lufthansa für die elektronischen Flugtickets (etix -Tickets) verwendet. Außerdem können die etix -Tickets per
E-Mail oder SMS-Link auf das Mobiltelefon des Kunden übertragen werden.
Bis zu zwei Stunden vor Abflug kann das etix -Ticket gebucht werden. Die
kurzfristige Umbuchung kann über das Internet, den Call-Centern und den
Reisebüros erfolgen. Bei dieser Verfahrensweise muss sich der Fluggast im-
®
®
136
®
http://www.egssoft.de/rightfax signatur.htm?gclid=CLq09Mqh JQCFQ9WtAodMX
PEZA, 28.08.08, 14:36 Uhr
137
http://www.pdfstore.de/datenblatt/digiSeal office Produktblatt.pdf, 13.09.08, 18:30
Uhr
138
http://www.blitztools.com/de/barcode-knowhow/pdf417.html, 28.08.08, 14:37 Uhr
139
http://www.blitztools.com/de/barcode-knowhow/datamatrix.html, 28.08.08, 14:38
Uhr
140
http://www.blitztools.com/de/barcode-knowhow/qr.html, 28.08.08, 14:39 Uhr
141
http://www.bahn.de/p/view/planen/bahncorporate/mobileservices.shtml, 28.08.08,
14:42 Uhr
142
http://de.wikipedia.org/wiki/Strichcode, 28.08.08, 14:44 Uhr
143
http://www.qualitysoft.de/de/produkte/qs barcode.htm, 28.08.08, 14:47 Uhr
67
mer ausweisen können. Dies gilt auch für die Bahnfahrt.144
145 146
Aus diesen genannten Bereichen werden im 6. Kapitel “Szenarien“ Beispiele
für die Szenarien genommen.
144
http://erlebnis-wissen.lufthansa.com/index.php?id=2502m, 28.08.08, 14:50 Uhr
http://www.pcwelt.de/start/mobility handy pda/pda smartphone/news/
160656/lufthansa fuehrt mobile bordkarte ein/, 28.08.08, 14:55 Uhr
146
http://mobile.lufthansa.com, 28.08.08, 14:59 Uhr
145
68
6
Szenarien
Im Kapitel 4 Parameter - n, wi , T, Hi , Ki“ wurden für das GMSS Erkennt”
nisse über die wählbaren Parameter und gute Parameterkombinationen ermittelt. Diese Ergebnisse werden hier verwendet.
Zuerst wird eine Übersicht im Abschnitt 6.1 Schlüssellängen - SmartCard“
”
über die eingesetzten SmartCards und die Sicherheit der verwendeten Schlüssellängen der Algorithmen gegeben. Danach werden in diesem Kapitel im Teil
6.2 Szenarien - Beispiele“ von den verschiedenen Einsatzgebieten aus Ka”
pitel 5.2 Einsatzgebiete“ einige ausgesuchte Beispiele herausgenommen und
”
als Szenario genauer untersucht. Anschließend werden die Prioritäten der anderen Signaturverfahren mit denen von GMSS verglichen.
Im nächsten Kapitel “Zusammenfassung - Fazit“ werden alle Erkenntnisse
aus dieser Arbeit zusammengeführt, bewertet und das Ergebnis vorgestellt.
6.1
Schlüssellängen - SmartCard
Für alle Szenarien müssen die Sicherheitsstandards miteinbezogen werden.
Es sollten immer nur die momentanen sicheren Alogrithmen mit den entsprechenden Schlüssellängen bzw. Sicherheitsparametern eingesetzt werden.
Ein Vergleich mit einem unsicheren Algorithmus ist daher nicht sinnvoll. Die
folgende Tabelle 16 gibt einen Überblick auf die betrachteten Algorithmen
und die Gültigkeit ihrer Schlüssellängen bzw. Sicherheitsparameter.
* Dieser Wert ist von der Bundesnetzagentur festgelegt worden.147
gültig bis Jahr
Mitte 2008*
2008
2018
2040
2066
2090
RSA
1024*
1329
2048
3154
4440
DSA
147
160
190
224
256
ECDSA
147
160
190
224
256
GMSS
147
160
190
224
256
Tabelle 16: Gültigkeit der Schlüssellängen
Die Schlüssel werden in Bits angegeben. * bedeutet, dass Algorithmen mit
diesen Schlüssellängen heute als unsicher gelten. Die Sicherheit des GMSS
hängt vom Sicherheitsparameter n ab.
Die bestimmten Werte für die Gültigkeit der Schlüssellängen stammen von
der Webseite http://www.keylength.com, 30.08.08, 20:11 Uhr.
69
Um die Sicherheit der Algorithmen zu gewährleisten, müssen diese mindestens die geforderten Schlüssellängen bzw. Sicherheitsparameter besitzen:
l RSA benötigt eine Schlüssellänge von 2048 Bits.
l DSA sollte mindestens eine Schlüssellänge von 147 Bits nutzen, es werden bereits 160 Bits verwendet.
l ECDSA besitzt eine Schlüssellänge von 147 Bits und es setzt zur Zeit
224 Bits ein.
l GMSS muss mindestens einen Sicherheitsparameter mit 147 Bits anwenden. Es werden 160 Bits für die Szenarien verwendet.
Bevor die Betrachtung der Szenarien beginnen kann, wird die SmartCard genauer untersucht. Da sie in den meisten Szenarien in Verbindung mit der qualifizierten Signatur eingesetzt wird. Das bedeutet, dass die Schlüsselgrößen
vom Speicherplatz der SmartCard und die Schlüsselerzeugungszeit vom Trustcenter bestimmt werden, wodurch diese Werte unabhängig vom Szenario
werden. Aus diesem Grund werden die Prioritäten der Schlüsselgrößen und
-erzeugungszeit verallgemeinert, indem die häufigsten verwendeten SmartCards als Referenzen benutzt werden.148
Der Aufbau der Signaturkarten ist in der ISO 7816 gemäß dem Signaturgesetz festgelegt. ISO (International Organisation for Standardization) ist ein
Zusammenschluss von nationalen Standardisierungsgremien.149 150 Ein kleiner Einblick in die Inhalte dieser ISO kann auf der Webseite 151 nachgelesen
werden.
Die häufigsten eingesetzten SmartCards sind:
l Die PrivateCard von ARX mit einer Speichergröße zwischen 32 KB und
64 KB. Eine Erweiterung auf 72 KB ist geplant. Sie verarbeitet RSA
mit 1024 - 2048 Bits.152
147
http://www.bundesnetzagentur.de/enid/15b50d4c6c6c6f1f86c6b207e244
cad6,0/Sachgebiete/Qualifizierte elektronische Signatur gz.html, 07.09.08, 19:17 Uhr
148
http://www.seccommerce.de/de/fachwissen/technologie/smartcards/smartcards
architektur.html, 02.09.08, 9:15 Uhr
149
http://www.iso.org/, 02.09.08, 13:15 Uhr
150
http://www.cryptoshop.com/index.php, 02.09.08, 13:18 Uhr
151
http://www.cryptoshop.com/de/knowledgebase/technology/smartcard/
chipcontact.php, 02.09.08, 17:48 Uhr
152
http://www.arx.com/languages/german/products/privatecard.php, 01.09.08, 10:45
Uhr
70
l Signtrust ist eine Signaturkarte von der Deutschen Post. Sie hat einen
Speicherplatz von 32 KB und kann RSA mit bis zu 2048 Bits benutzen.153
l Die Signaturkarten von der D-Trust GmbH verarbeiten RSA mit
2048 Bits. Angaben über ihre Speichergröße werden nicht gemacht.154
155
l Die Signaturkarte von DATEV hat einen Speicherplatz von 32 KB und
kann RSA mit bis zu 2048 Bits benutzen.156
157
l Die TC QSign Signaturkarte von der TC TrustCenter GmbH verwendet RSA mit einer Schlüssellänge von 2048 Bits. Angaben über ihre
Speichergröße werden nicht gemacht.158
l T-TeleSec TCOSmin-Karte von der Deutschen Telekom besitzt Spei-
cherplatz von ca. 31 KB und kann RSA mit 512 - 1024 Bits verarbeiten.159 160 161
Es gibt noch weitere Signaturkarten. In der Regel haben sie einen Speicherplatz von 32 KB bis 64 KB und verarbeiten RSA mit einer Schlüssellänge
von bis zu 2048 Bits. Aber es existieren ebenfalls Signaturkarten die DSA,
ECDSA oder RSA mit Schlüssellängen bis zu 4096 Bits ausführen.162
Für die Szenarien wird in der Regel als Signaturalgorithmus RSA mit einer
Schlüssellänge von 2048 Bits und wenn eine Signaturkarte eingesetzt wird,
diese mit einem Speicherplatz von ca. 32 KB angenommen. Die Verteilung
der Prioritäten für die Schlüsselgrößen und die Schlüsselerzeugungzeit ist in
153
http://www.deutschepost.de/dpag?tab=1&skin=hi&check=yes&lang=de DE&xmlFile
=link1015459 49577, 01.09.08, 11:03 Uhr
154
https://www.d-trust.net/internet/files/Produktblatt Multicard.pdf, 30.08.08, 18:01
Uhr
155
https://www.d-trust.net/internet/content/kommunikationssicherheit.html, 30.08.08,
17:57 Uhr
156
http://www.datev.de/portal/ShowPage.do?pid=dpi&nid=1103&zg=n, 02.09.08, 9:17
Uhr
157
http://www.seccommerce.de/de/fachwissen/technologie/smartcards/smartcards
architektur.html, 02.09.08, 9:15 Uhr
158
http://www.trustcenter.de/products/tc qsign.htm, 02.09.08, 14:11 Uhr
159
http://www.t-systems-telesec.com/smartcards/sma 02 management.html, 30.08.08,
20:42 Uhr
160
http://www.t-systems-telesec.com/downloads/tcos.pdf, 30.08.08, 20:50 Uhr
161
http://www.siglab.de/uebersicht-signaturmarkt/signaturmarkt/t-telesec/, 30.08.08,
20:45 Uhr
162
http://www.seccommerce.de/de/fachwissen/technologie/smartcards/smartcards
architektur.html, 02.09.08, 9:15 Uhr
71
der folgenden Abbildung 11 auf Seite 72 zu sehen.
Die Prioritäten aus der Abbildung 11 für die Schlüsselgrößen sind gleich, weil
Abbildung 11: Prioritäten - Schlüsselgrößen und -erzeugungszeiten
priSchlGrö: Größe des privaten Schlüssels, öffenSchlGrö: Größe des öffentlichen Schlüssels, SchlZeit: Schlüsselerzeugungszeit
Hier sind die verteilten Prioritäten für die Schlüssellängen und
-erzeugungszeit zu sehen. Es können pro Größe bzw. Zeit maximal 10 Punkte
vergeben werden.
beide die gleiche Länge bei RSA mit 2048 Bits haben. Die Schlüsselerzeugungszeit ist vom jeweiligen Trustcenter abhängig, da keine Informationen zu
erhalten sind, wie viel Zeit hierfür aufgebracht wird, erhält die Schlüsselerzeugungszeit eine deutlich niedigere Priorität als die Schlüssellängen. Da von der
Beantragung bis zum Versand und dem anschließendem Erhalt der Signaturkarte in der Regel einige Tage vergehen, wie bei der D-Trust Signaturkarte.163
Deshalb ist es wichtiger, dass die Schlüssel auf die Karten passen.
Diese Prioritätswerte werden in den Szenarien benutzt.
Die Bewertung der Signaturgröße, der Verifikationszeit und der Signaturerstellungszeit wird anhand der Bewertungsliste in der folgenden Tabelle 17
auf Seite 73 durchgeführt. Damit erfolgt die Zuordnung der Prioritäten zu
den Werten.
Die Einteilung der Werte in der Bewertungsliste wird von den auftretenden Werten in den Beispielen beeinflusst. Deshalb gibt es bei der Zeit kleine
Überschneidungen, wie bei 10-15 und 15-45 Sekunden. Die Angaben der Unternehmen unterscheiden sich und somit wird manchmal die Zeitspanne von
10-15 oder 15-45 Sekunden genannt.
163
http://www.d-trust.net/internet/content/beantragung2.html, 03.09.08, 16:32 Uhr
72
Bei den Größen treten derartige Überschneidungen ebenfalls auf.
Diese Bewertungsliste wird in den Beispielen verwendet.
Priorität
1
Größe in KB
> 1 MB
2
> 500
< 1 MB
> 200
≤ 500
> 80
≤ 200
> 30
≤ 80
2 MB
>8
≤ 30
3
4
5
6
7
>6
≤8
8
>4
≤6
klein
9
>2
≤4
10
≤2
sehr klein
Zeit in Sek
Stunden
viel Zeit
ab 5 Min
120-300 (2 - 5 Min)
einige Zeit
60-120 (1 - 2 Min)
45-60
15-45
mittel
mit wenigen Mausklicks
10-15
nicht so schnell
nur Sekunden
5-10
schnell
ein paar Sekunden
1-4
mit einem Klick
wenige Sekunden
<1
Bruchteile einer Sekunde
sehr schnell
Tabelle 17: Bewertungsliste - Verteilung der Prioritäten
-“ bedeutet, dass keine Wertung vorgenommen wird.
”
Hier werden den einzelnen Werten ihre Prioritäten zu gewiesen.
Mit der Verwendung von Karten und Kartenlesern werden die Berechnungszeiten immer etwas länger sein, als die Berechnungszeiten ohne Einsatz von
73
Karten. Wie groß diese Differenz der Zeiten ist, hängt von den Karten und
Kartenlesern ab. Deshalb werden bei den GMSS-Berechnungen in den Szenarien die Übertragungsgeschwindigkeiten der Signaturkarten und Kartenleser
nicht berücksichtigt. Es sollte bei der Betrachtung der GMSS-Ergebnisse dieser Gedanke nicht vergessen werden.
Die Verifikation bei GMSS wird nur für eine Signatur durchgeführt. Es findet
keine Zertifikatsprüfung statt, da eine solche Überprüfung von vielen Faktoren abhängt, wie Länge der Zertifikatskette, das Laden und Durchsuchen von
Sperrlisten und weitere. Viele Unternehmen geben ihre Verifikationen für eine Signaturprüfung und für eine Zertifikatsprüfung an. Es werden nur die
Werte für eine Signaturprüfung verwendet.
Es gibt verschiedene Möglichkeiten eine Signatur einem digitalen Dokument
hinzu zufügen. Die Signatur kann sichtbar oder unsichtbar in ein Dokument
integriert oder als externe Signatur angehängt werden. Der einzigste Unterschied zwischen diesen Signaturmöglichkeiten ist, dass ihre Größen variieren.
Zum Beispiel ist eine integrierte unsichtbare Signatur größer als eine externe
Signatur. In den Szenarien werden die externen Signaturen betrachtet, da sie
häufiger eingesetzt werden.
Die Berechnungsoperationen für GMSS werden auf einem Pentium Dualcore 1,8 GHz durchgeführt. Dadurch benötigt eine Hashfunktionsauswertung
0,002 ms. Ein Aufruf des PRNG´s braucht ebenfalls 0,002 ms.[6]
Im nächsten Abschnitt werden einzelne ausgewählte Beispiele für die verschiedenen Einsatzbereiche gezeigt.
74
6.2
Szenarien - Beispiele
Dies sind die ausgewählten Szenarien:
1. Behörden - Elster
2. Unternehmen - Rechnung
3. Elektronische Ausweise - ePass
4. Geschäftsverkehr - Online-Einkaufen
5. Software - Mobile Code Signing
6. Digitale Dokumente - PDF
7. Sonstige Bereiche - Bahnticket
6.2.1
Behörden - Elster
Elster dient zur digitalen Einreichung der Steuererklärung an das Finanzamt. Elster ist eine Softwarekomponente der Finanzbehörde. Eine weiteres
Programm ist das ElsterFormular. Es ist ein spezielles Ausfüllprogramm für
die Steuerformulare.164 Außer den Privatpersonen können auch Unternehmer und Arbeitgeber Elster nutzen. Es gibt ebenfalls die Möglichkeit andere
Steuererklärungsprogramme zu verwenden, die Elster unterstützen. Eine Liste dieser Programme ist auf der Webseite 165 zu finden.
Das Programm Elster und die Java-Anwendungen für das ElsterOnline Portal tragen jeweils eine digitale Signatur der Finanzverwaltung, die die Unverändertheit der Programme gewährleisten.166
Es werden hier die Signaturen der Anwender betrachtet und nicht die der
Softwareprogramme.
Die unterstützten Signaturkarten werden auf der Webseite 167 angegeben.
Außerdem können die fortgeschrittene und die qualifizierte Signatur eingesetzt werden. Der verwendete Signaturalgorithmus ist RSA mit einer Schlüssellänge bis zu 2048 Bits.
164
http://www.3sat.de/neues/sendungen/magazin/87851/index.html,
08.09.08
14:13
Uhr
165
https://www.elster.de/elster soft.php, 03.09.08, 17:25 Uhr
https://www.elster.de/pro sicher.php, 03.09.08, 17:32 Uhr
167
https://www.elsteronline.de/eportal/UnterstuetzteSignaturkarten.tax,
17:45 Uhr
166
75
03.09.08,
Nachdem ein Anwender die Vorkehrungen getroffen hat, Installation der Software, Beantragung und Erhalt der Signaturkarte, kann er seine Steuerdaten
in Elster eingeben. Danach werden diese komprimiert und anschließend
signiert. Somit werden zwei Dateien, die komprimierte Steuerdatei und die
Signatur, verschlüsselt an das Finanzamt via Internet übermittelt.
2008 haben 6,3 Millionen Anwender ihre Steuererklärung per Elster eingereicht. Für das Finanzamt bedeutet dies, dass 6,3 Millionen Signaturen zu
verifizieren sind.
Für dieses Szenario werden 6,3 Millionen Signaturkarten mit ihren Schlüssel
gebraucht und ebenso viele Signaturen werden verifiziert.
l Elster
Es wird angenommen, dass die Verifikation der Signatur in Anbetracht
der Anzahl der Daten schnell erfolgt.
Die Signaturgröße wird sehr klein geschätzt, da sonst das Datenvolumen bei dieser Anwenderanzahl zu groß wird.
Es wird angenommen, dass die Signaturerstellung nicht so schnell erfolgt wie die Verifikation.
In der Abbildung 12 auf Seite 77 sind die bewerteten Größen und Zeiten zu
sehen. Die Prioritäten für die Schlüsselerzeugungzeit und die Schlüsselgrößen
werden vom Abschnitt 6.1 Schlüssellängen - SmartCard“ übernommen. Um
”
die Prioritäten festzulegen, werden pro Größe bzw. Zeit maximal 10 Punkte
vergeben. Je mehr Punkte eine Größe bzw. Zeit besitzt, desto höher ist ihre
Priorität.
Damit GMSS diese Prioritäten aus Abbildung 12 auf Seite 77 erfüllen kann,
müssen seine Parameter für die Anzahl von ca. 6,3 Millionen Signaturen pro
Jahr und damit 172.603 pro Tag ausgelegt werden. Da GMSS binäre MerkleBäume besitzt, ist die beste Signaturanzahlannäherung 218 = 262.144 Signaturen. Deshalb werden die Parameter entsprechend gewählt. Sie stehen in
der Tabelle 18. Die berechneten Ergebnisse des GMSS mit diesen ParameGMSS
Parameter
Werte
n
w1
w2
w3
T
H1
H2
H3
K1
K2
K3
160 Bits
7
6
6
3
8
5
5
4
2
2
Tabelle 18: Elster - GMSS - Parameter für 218 = 262.144 Signaturen
76
Abbildung 12: Elster - RSA
SigZeit: Signaturerzeugungszeit, SigGrö: Signaturgröße, VerifZeit: Signaturverifikation, SchlZeit: Schlüsselerzeugungszeit, privSchlGrö: private Schlüsselgröße, öffenSchlGrö: öffentliche Schlüsselgröße
Die bewerteten Angaben in der Abbildung stammen aus
dem Absatz
Elster.
l
tern stehen in der Tabelle 19 auf Seite 77.
SigZeit
VerifZeit
SigGrö
SchlZeit
priSchlZeit
öffenSchlZeit
GMSS-Formeln
cof f line + conline
cverif y
msignature
ckeygen
mprivkey
mpubkey
Ergebnisse
16,2 ms
6,9 ms
1,97 KB
2,1 s
269,9 KB
20 Byte
Prioritäten
10
10
10
9
3
10
Tabelle 19: Elster - GMSS
218 = 262.144 Signaturen werden berechnet.
SigZeit: Signaturerzeugungszeit, SigGrö: Signaturgröße, VerifZeit: Signaturverifikation, SchlZeit: Schlüsselerzeugungszeit, privSchlGrö: private Schlüsselgröße, öffenSchlGrö: öffentliche Schlüsselgröße
Es können insgesamt maximal 10 Punkte pro Größe bzw. Zeit verteilt werden.
Mit den genannten Parametern aus Tabelle 18 auf Seite 76 wurden diese
Ergebnisse berechnet und mit der Liste 17 auf Seite 73 bewertet.
Die Abbildung 13 auf Seite 78 stellt die bewerteten Ergebnisse der GMSSPrioritäten grafisch dar.
77
Abbildung 13: Elster - GMSS
Die Beschriftungen und Werte der Grafik ergeben sich aus Tabelle 19 auf
Seite 77.
Ein Vergleich der beiden Abbildungen ’Elster - RSA’ (Abb. 12 auf Seite 77) mit ’Elster - GMSS’ (Abb. 13 auf Seite 78) zeigt, dass GMSS alle
Prioritäten von RSA erfüllt und sogar bessere Werte erzielt, Reduzierung
der Zeiten und Größen. Die einzigste Ausnahme bildet der private Schlüssel,
er kann nicht auf 32 oder 64 KB reduziert werden ohne einen Verlust der
Signaturanzahl zu verursachen. Dieses Problem kann dadurch behoben werden, indem statt einer Signaturkarte ein anderes Speichermedium mit mehr
Speicherplatz eingesetzt wird.
6.2.2
Unternehmen - Rechnung
Ein Unternehmen hat die Wahl seine Rechnungen selbst zu signieren oder
einen Dritten im Namen des Unternehmens die Rechnungen signieren zu lassen. Hierbei ist zu beachten, dass wenn ein Unternehmen selbst seine Rechnung signiert, es auch die entsprechende Hard- und Software benötigt, dazu gehören Signaturkarten, Kartenleser, Signatur- und Verifikationssoftware.
Wird dagegen ein Dritter als Dienstleister eingeschaltet, entfallen die Kosten für die Hard- und Software, jedoch entstehen dafür die Kosten für die
Dienstleistung. Das Unternehmen kann sich entscheiden, ob der Dienstleister
nur die Rechnungen signiert oder sie auch gleich an die Rechnungsempfänger
weiterleitet. Beim Letzteren können ebenfalls eingehende signierte Rechnun-
78
gen von anderen Ausstellern empfangen, geprüft und archiviert werden.168 169
Für dieses Szenario wird als Signaturalgorithmus RSA mit 2048 Bits und
Signaturkarte verwendet. Dabei kann entweder das Unternehmen oder der
Dienstleister mit seiner Karte signieren. In der folgenden Tabelle 20 werden
die Prioritätsmittelwerte aus fünf Unternehmen bestimmt, die Software bzw.
Dienstleistungen zur signierten Rechnungserstellung anbieten.
UN 1
UN 2
UN 3
UN 4
UN 5
MW
SigZeit
9
9
10
4
10
8
SigGrö
7
10
5
5
8
7
VerifZeit
9
3
7
9
7
SchlZeit
1
1
1
1
1
1
priSchlGrö
10
10
10
10
10
10
öffenSchlGrö
10
10
10
10
10
10
Tabelle 20: Rechnung - RSA
Es werden im Durchschnitt 100.000 Signaturen berechnet.
SigZeit: Signaturerzeugungszeit, SigGrö: Signaturgröße, VerifZeit: Signaturverifikation, SchlZeit: Schlüsselerzeugungszeit, privSchlGrö: private Schlüsselgröße, öffenSchlGrö: öffentliche Schlüsselgröße
Es können insgesamt maximal 10 Punkte pro Größe bzw. Zeit verteilt werden. Die bewerteten Angaben in der Tabelle stammen aus
den Absätzen
UN 1 bis UN 5.
Die Grafik 14 auf Seite 80 stellt die bewerteten Mittelwerte der RSAPrioritäten bildlich dar.
l
l
Die folgenden Absätze
UN 1 bis UN 5 beinhalten die Angaben der Unternehmen zu ihren Produkten. Diese Werte werden in Tabelle 20 gemäß der
Bewertungsliste 17 auf Seite 73 bewertet.
l UN 1: Die Firma hostNET Medien GmbH
170
verwendet zur Signierung
der Rechnungen RSA mit 1024 Bits und 2048 Bits und unterstützt die
SmartCards von D-Trust.
SigZeit: Sie erstellt bis zu 100.000 Signaturen pro Tag mit einem Kartenleser. Damit beträgt die Signaturerzeugungszeit ca. eine Sekunde
für eine Signatur.
168
http://koeln-bonn.business-on.de/elektronische-rechnungen-einsparpotenzial-fuerunternehmen id13264.html, 24.08.08, 15:00 Uhr
169
http://www.trustcenter.de/products/signing services.htm02.09.08, 9:40 Uhr
170
http://www.signagate.de/index.php, 04.08.08, 11:40 Uhr
79
Abbildung 14: Rechnung - RSA
Die Beschriftungen der Grafik ergeben sich aus Tabelle 20 auf Seite 79.
SigGrö: Die Signaturgröße hat ca. 8 KB.
VerifZeit: Die Verifikation dauert zwischen 15 und 45 Sekunden für
eine Signatur mit einer Zertifikatsprüfung. Da nur die Verifikation für
eine Signatur ohne Zertifikatsprüfung verglichen werden, wird diese Zeit
nicht bewertet.
l UN 2: Das Unternehmen AWP Consult GmbH
171
verwendet RSA mit
2048 Bits und unterstützt die SmartCards von D-Trust.
SigZeit: Es werden mehrere 100.000 Signaturen pro Tag erzeugt. Dadurch wird angenommen, dass die Signaturerstellung ca. eine Sekunde
für eine Signatur braucht.
SigGrö: Eine Signatur ist ca. 1,95 KB ≈ 2.000 Byte groß.
VerifZeit: Die Verifikation einer Signatur benötigt eine Sekunde. Aber
wird noch das Zertifikat überprüft, dann dauert eine Verifikation je
nach Netzauslastung 10-15 Sekunden.
l UN 3: Die Firma XimantiX GmbH
172
verwendet RSA mit 2048 Bits.
Zusätzlich bietet XimantiX GmbH die Möglichkeit, im Namen des Kunden die Daten zu signieren.
171
172
http://www.awp-consult.de/, 04.08.08, 12:20 Uhr
http://www.ximantix.com/, 07.08.08, 13:35 Uhr
80
SigZeit: Es können mit einem Server bis zu 200.000 Signaturen pro Tag
erstellt werden. Somit wird geschätzt, dass die Signaturerstellung
0,43 Sekunden für eine Signatur braucht.
SigGrö: Es wurden keine Angaben über die Signaturgröße getroffen.
Deshalb wird angenommen, dass die Signaturen viel kleiner als 2 MB
sind, da die signierten Rechnungen per E-Mail verschickt werden und
ihre durchschnittliche Größe 2 MB ist.
VerifZeit: Die Verifikation für eine Signatur nimmt einige Zeit in Anspruch.
l UN 4: Signmail
173
gehört zur Mentana-Claimsoft Aktiengesellschaft.
Als Signaturalgorithmus wird RSA mit 2048 Bits eingesetzt. Sigmail
signiert im Namen des Kunden die Daten.
SigZeit: 1000 Signaturen pro Tag können erstellt werden. Deshalb wird
angenommen, dass Signaturgenerierung ca. 1,4 Minuten für eine Signatur dauert.
SigGrö: Es wurden keine Angaben über die Signaturgröße getroffen.
Deshalb wird angenommen, dass die Signaturen viel kleiner als 2 MB
sind.
VerifZeit: Beim Testen wurde für die Verifikation einer Signatur 10 Sekunden und ca. 2 für die Anzeige des ermittelten Hashwertes bestimmt.
l UN 5: Das Unternehmen D-TRUST GmbH
174
setzt RSA mit 2048 Bits
ein. Zusätzlich kann eine Signaturkarte beantragt werden. Es gibt ebenfalls die Möglichkeit, dass der Dienstleister im Namen des Kunden die
Daten signiert.
SigZeit: Der Signaturvorgang beträgt ca. 0,8 Sekunden für eine Signatur.
SigGrö: Eine Signatur ist ca. 5 KB groß.
VerifZeit: Die Verifikation einer Signatur erfolgt online und benötigt je
nach Servergeschwindigkeit wenige Sekunden.
173
174
https://signmail.de/modules/kp suche/index.php, 07.08.08, 14:20 Uhr
https://www.d-trust.net/internet/content/index.html, 03.09.08, 16:15 Uhr
81
Damit GMSS den Bedarf von 100.000 Signaturen pro Tag und die Prioritätsanforderungen abdecken kann, werden zum Einen seine Parameter für
217 = 131.072 Signaturen ausgelegt, das ist die beste Annäherung an die geforderte Signaturanzahl, und zum Anderen werden dazu seine Parameter wie
in der Tabelle 21 gewählt.
GMSS Parameter
Werte
n
160 Bits
wi
9
T
8
H1
3
H2 = . . . = H8
2
Ki
2
Tabelle 21: Rechnung - GMSS - Parameter für 217 = 131.072 Signaturen, mit
i = 1, . . . , 8
Die berechneten Ergebnisse des GMSS mit diesen Parametern stehen in der
Tabelle 22.
Ein Vergleich der beiden Abbildungen ’Rechnung - RSA’ (Abb. 14 auf Seite
SigZeit
VerifZeit
SigGrö
SchlZeit
privSchlGrö
öffenSchlGrö
GMSS-Formeln
cof f line + conline
cverif y
msignature
ckeygen
mprivkey
mpubkey
Ergebnisse
0,14 s
81,8 ms
3,5 KB
1,3 s
156,3 KB
20 Byte
Prioritäten
10
10
9
9
4
10
Tabelle 22: Rechnung - GMSS
217 = 131.072 Signaturen werden berechnet.
SigZeit: Signaturerzeugungszeit, SigGrö: Signaturgröße, VerifZeit: Signaturverifikation, SchlZeit: Schlüsselerzeugungszeit, privSchlGrö: private Schlüsselgröße, öffenSchlGrö: öffentliche Schlüsselgröße
Es können insgesamt maximal 10 Punkte pro Größe bzw. Zeit verteilt werden.
Mit den oben genannten Parametern, wurden diese Ergebnisse erstellt und
mit der Liste 17 auf Seite 73 bewertet.
Die Abbildung 15 auf Seite 83 zeigt die GMSS-Prioritäten.
80) mit ’Rechnung - GMSS’ (Abb. 15 auf Seite 83) zeigt, dass GMSS den
Bedarf an der Signaturanzahl deckt und dass es alle Prioritäten von RSA
erfüllt. Fast alle Werte werden deutlich kleiner. Es wurde bei GMSS versucht
den privaten Schlüssel so klein wie nur möglich zu halten, aber er ist trotzdem wesentlich größer als bei RSA.
82
Abbildung 15: Rechnung - GMSS
Die Beschriftungen der Abbildung ergeben sich aus Tabelle 22 auf Seite 82.
6.2.3
Elektronische Ausweise - ePass
Da der ePass an den Flughäfen benötigt wird, wurde dieses Szenario ausgesucht. Jährlich werden über den Frankfurter Flughafen (Frankfurt am Main)
bis zu 56 Millionen Passagiere befördert.175 Damit werden für dieses Szenario
bis zu 56 Millionen Signaturen jährlich verifiziert.
Die Passagiere kommen zur Passkontrolle und geben ihren ePass für kurze
Zeit ab. Währenddessen wird die Signatur und damit die Unversehrtheit der
Daten geprüft und ob der Reisende auch wirklich der richtige ePassbesitzer
ist. War die Prüfung erfolgreich, bekommt der Passagier seinen ePass wieder
zurück. Dieses Vorgehen muss sehr schnell erfolgen, da alle Passagiere kontrolliert werden müssen.
Die Prioritäten für die Schlüsselerzeugungzeit und die Schlüsselgrößen sind
von dem Passamt abhängig und werden dort intern berechnet. Der ePass
verwendet ECDSA mit 224 Bits.176
l ePass
Es wird angenommen, dass die Verifikation der Signatur sehr schnell
erfolgt, da alle Reisende durch die Passkontrolle müssen.
Die Signaturgröße wird vom Speicherplatz des ePasses auf 32 KB beschränkt.
175
176
http://de.wikipedia.org/wiki/Flughafen Frankfurt am Main, 03.08.09, 19:33 Uhr
http://www.bsi.bund.de/fachthem/epass/faq.htm, 07.08.08, 16:30 Uhr
83
Es wird angenommen, dass die Signaturerzeugung einige Zeit in Anspruch nimmt.
In der Abbildung 16 sind die bewerteten Größen und Zeiten zu sehen. Die
Prioritäten für die Schlüsselerzeugungzeit und die Schlüsselgrößen werden
vom Abschnitt 6.1 Schlüssellängen - SmartCard“ übernommen. Um die
”
Prioritäten festzulegen, werden pro Größe bzw. Zeit maximal 10 Punkte vergeben. Je mehr Punkte eine Größe bzw. Zeit besitzt, desto höher ist ihre
Priorität.
Abbildung 16: ePass - ECDSA
SigZeit: Signaturerzeugungszeit, SigGrö: Signaturgröße, VerifZeit: Signaturverifikation, SchlZeit: Schlüsselerzeugungszeit, privSchlGrö: private Schlüsselgröße, öffenSchlGrö: öffentliche Schlüsselgröße
Die bewerteten Angaben in der Abbildung stammen aus
dem Absatz
ePass.
l
Zur Erfüllung dieser Prioritäten aus Abbildung 16 und den täglichen Bedarf
von 153.425 Signaturen wird für GMSS eine Annäherung von
218 = 262.000 Signaturen angenommen. Seine Parameter werden entsprechend gewählt. Sie stehen in der Tabelle 23 auf Seite 85.
Die berechneten Ergebnisse des GMSS mit diesen Parametern stehen in der
Tabelle 24 auf Seite 85.
Ein Vergleich der beiden Abbildungen ’ePass - ECDSA’ (Abb. 16 auf Seite 84) mit ’ePass - GMSS’ (Abb. 17 auf Seite 86) zeigt, dass GMSS alle
Prioritäten von ECDSA erfüllt. Die Zeit für die Verifikation von beiden Verfahren ist gleich. Aber für die Signaturerstellung wird bei GMSS weniger Zeit
84
GMSS
Parameter
Werte
n
wi
T
H1
H2
H3
K1
K2
K3
224 Bits
2
3
8
5
5
2
2
2
Tabelle 23: ePass - GMSS - Parameter für 218 = 262.144 Signaturen, mit
i = 1, 2, 3
benötigt und die Signaturgröße wird bei GMSS geringfügig reduziert. Einzigste Ausnahme bildet ebenfalls der private Schlüssel von GMSS, wie in den
vorherigen Abschnitten. Er ist im Vergleich bei ECDSA wesentlich kleiner.
SigZeit
VerifZeit
SigGrö
SchlZeit
privSchlGrö
öffenSchlGrö
GMSS-Formeln
cof f line + conline
cverif y
msignature
ckeygen
mprivkey
mpubkey
Ergebnisse
0,4 s
1,1 ms
10,1 KB
4,2 ms
496,6 KB
28 Byte
Prioritäten
10
10
6
10
2
10
Tabelle 24: ePass - GMSS
Es werden 218 = 262.144 Signaturen berechnet.
SigZeit: Signaturerzeugungszeit, SigGrö: Signaturgröße, VerifZeit: Signaturverifikation, SchlZeit: Schlüsselerzeugungszeit, privSchlGrö: private Schlüsselgröße, öffenSchlGrö: öffentliche Schlüsselgröße
Es können insgesamt maximal 10 Punkte pro Größe bzw. Zeit verteilt werden.
Mit den oben genannten Parametern, wurden diese Ergebnisse erstellt und
mit der Liste 17 auf Seite 73 bewertet.
Die Grafik 17 auf Seite 86 stellt die bewerteten Ergebnisse der GMSSPrioritäten bildlich dar.
6.2.4
Geschäftsverkehr - Online-Einkaufen
Bei den täglich stattfindenden Online-Geschäften muss der Kunde sich authentifizieren und sensible, sowie persönliche, Daten übertragen. Hierbei hilft
die digitale Signatur, indem sie vor Manipulation schützt.
Für das Szenario wird RSA mit 2048 Bits als Signaturalgorithmus mit
Signaturkarte verwendet. In diesem Szenario wird der Mittelwert der Prioritäten mithilfe von drei verschiedenen Anbietern, die hierfür Software anbieten, bestimmt. In der folgenden Tabelle 25 auf Seite 86 werden die Prio85
Abbildung 17: ePass - GMSS
Die Beschriftungen der Grafik ergeben sich aus Tabelle 24 auf Seite 85.
ritätsmittelwerte der drei Unternehmen bestimmt, die Software zur signierten
Dokumenterstellung anbieten.
UN 1
UN 2
UN 3
MW
SigZeit
9
10
9
9
SigGrö
5
9
8
7
VerifZeit
9
10
8
9
SchlZeit
1
1
1
1
priSchlGrö
10
10
10
10
öffenSchlGrö
10
10
10
10
Tabelle 25: Online-Einkaufen - RSA
SigZeit: Signaturerzeugungszeit, SigGrö: Signaturgröße, VerifZeit: Signaturverifikation, SchlZeit: Schlüsselerzeugungszeit, privSchlGrö: private Schlüsselgröße, öffenSchlGrö: öffentliche Schlüsselgröße, MB: Prioritätsmittelwert,
UN i: Unternehmen i = 1, 2, 3
Es können insgesamt maximal 10 Punkte pro Größe bzw. Zeit verteilt werden. Die bewerteten Angaben in der Tabelle stammen aus
den Absätzen
UN 1 bis UN 3.
Die Grafik 18 auf Seite 87 stellt die bewerteten Mittelwerte der RSAPrioritäten bildlich dar.
l
l
Die folgenden Absätze
UN 1 bis UN 3 beinhalten die Angaben der Unternehmen zu ihren Produkten. Diese Werte werden in Tabelle 25 auf Seite
86 gemäß der Bewertungsliste 17 auf Seite 73 bewertet.
l UN 1: Die Mentana-Claimsoft Aktiengesellschaft
177
177
http://www.mentana-claimsoft.de, 09.08.08, 15:20 Uhr
86
verwendet RSA mit
Abbildung 18: Online-Einkaufen - RSA
Die Beschriftungen aus der Grafik ergeben sich aus Tabelle 25 auf Seite 86.
2048 Bits. Die unterstützten Signaturkarten sind in der PDF-Datei auf
Webseite178 aufgelistet.
SigZeit: Pro Stunde können maximal 1800 Signaturen generiert werden.
Damit wird angenommen, dass die Signaturerstellung ca. 2 Sekunden
für eine Signatur dauert.
SigGrö: Es wurden keine Angaben über die Signaturgröße getroffen.
Deshalb wird angenommen, dass die Signaturen viel kleiner als 2 MB
sind.
VerifZeit: Es können bis 1000 Verifikationen pro Stunde durchgeführt
werden. Somit wird angenommen, dass die Überprüfung von einer Signatur ca. 4 Sekunden benötigt.
l UN 2: Das Unternehmen SecCommerce Informationssysteme GmbH
179
verwendet RSA mit 2048 Bits.
SigZeit: Für die Signaturerstellung werden 0,8 Sekunden pro Signatur
benötigt.
SigGrö: Die Signaturgröße ist von der Karte abhängig. Somit ist die
Signatur etwa 4 KB groß.
178
http://www.mentana.de/cms/newsletter/0707 Kartenunterstuetzung.pdf,
18:41 Uhr
179
http://www.seccommerce.de/index.html, 05.08.08, 12:10 Uhr
87
03.09.08,
VerifZeit: Die Verifikation ohne Zertifikatsprüfung liegt im Millisekundenbereich. Mit der Zertifikatsprüfung werden ca. 5-10 Sekunden pro
Signatur gebraucht, wobei dies dann wesentlich von der Transaktionszeit der unterliegenden Datenbank abhängt, in der die Sperrlisten vorgehalten werden.
l UN 3: Der Deutscher Sparkassenverlag
180
verwendet RSA momentan
mit 1024 Bits. Es wird auf 2048 Bits noch umgestellt.
SigZeit: Es sind bis zu 40.000 Signaturen pro Tag möglich. Deshalb wird
geschätzt, dass die Signaturerstellung ca. 2 Sekunden für eine Signatur
benötigt.
SigGrö: Die Signaturgröße ist klein. Weil die Karte nur kleine Datenmengen signiert, da der private Schlüssel nie die Karte verlässt.
VerifZeit: Es wurden keine Angaben über die Verifizierungszeit getroffen. Deshalb wird angenommen, dass die Verifizierung schnell erfolgt,
da der Kunde auf seine Bestellung abgeben möchte.
Als durchschnittliche Signaturanzahl pro Tag werden 56.000 Signaturen angenommen. Die Annäherung an diese Signaturmenge wird mit 216 = 65.536
Signaturen für GMSS gewählt. Um die Anforderungen, die Prioritäten und
die Signaturanzahl, zu erfüllen, werden die Parameter wie in der Tabelle 26
belegt. Die berechneten Ergebnisse des GMSS mit diesen Parametern stehen
GMSS Parameter
Werte
n
160 Bits
wi
9
T
5
H1
4
H2 = . . . = H5
3
Ki
2
Tabelle 26: Online-Einkaufen - GMSS - Parameter für 216 = 65.536 Signaturen, mit i = 1, . . . , 5
in der Tabelle 27 auf Seite 89.
Ein Vergleich der beiden Abbildungen ’Online-Einkaufen - RSA’ (Abb. 18
auf Seite 87) mit ’Online-Einkaufen - GMSS’ (Abb. 19 auf Seite 89) zeigt,
dass GMSS alle Prioritäten von RSA erfüllt. Für die Signaturerstellung und
Verifikation wird weniger Zeit benötigt, ebenso wird die Signaturgröße verkleinert. Die einzigste Ausnahme bildet ebenfalls der private Schlüssel von
GMSS. Er ist im Vergleich zu RSA zu groß.
180
http://www.s-trust.de/produkte leistungen/signatursoftware/index.htm,
15:50 Uhr
88
05.08.08,
SigZeit
VerifZeit
SigGrö
SchlZeit
privSchlGrö
öffenSchlGrö
GMSS-Formeln
cof f line + conline
cverif y
msignature
ckeygen
mprivkey
mpubkey
Ergebnisse
91 ms
51,1 ms
2,3 KB
1,6 s
208,1 KB
20 Byte
Prioritäten
10
10
9
9
3
10
Tabelle 27: Online-Einkaufen - GMSS
Es werden 216 = 65.536 Signaturen erstellt.
SigZeit: Signaturerzeugungszeit, SigGrö: Signaturgröße, VerifZeit: Signaturverifikation, SchlZeit: Schlüsselerzeugungszeit, privSchlGrö: private Schlüsselgröße, öffenSchlGrö: öffentliche Schlüsselgröße
Es können insgesamt maximal 10 Punkte pro Größe bzw. Zeit verteilt werden.
Mit den oben genannten Parametern, wurden diese Ergebnisse berechnet und
mit der Liste 17 auf Seite 73 bewertet. Die Abbildung 19 stellt die GMSSPrioritäten grafisch dar.
Abbildung 19: Online-Einkaufen - GMSS
Die Beschriftungen und Werte der Grafik ergeben sich aus Tabelle 27.
6.2.5
Software - Mobile Code Signing
Mit dem Mobile Code Signing werden von einem Dienstleister die Programme
der Unternehmen signiert. Die TC TrustCenter GmbH181 bietet das Portal
Mobile Code Signing an. Mit ihm wird das Signieren von Applikationen für
Mobiltelefone oder Smartphones ermöglicht. Die zu signierende Software wird
181
http://www.trustcenter.de, 04.08.08, 16:55 Uhr
89
über das Portal hochgeladen und dort signiert. Die Kunden können sich die
signierte Software herunterladen und die Signatur überprüfen, ob sich wirklich vom Unternehmen stammt. Dies schafft mehr Vertrauen zwischen dem
Unternehmen und dem Kunden. Für die Signatur wird RSA mit 2048 Bit
verwendet. Pakete mit 1000, 3000, 5000, 10.000 und > 10.000 Signaturen pro
Monat werden vom Dienstleister angeboten.182 183
In diesem Szenario werden 10.000 Signaturen pro Monat angenommen. Es
werden nicht immer die fertigen Programme oder Updates signiert, sondern
es können bereits während der Softwareentwicklung Programmcodes von den
Entwicklern signiert werden. Damit kann jederzeit nachvollzogen werden, wer
wann die Software bearbeitet hat.
In der Abbildung 20 sind die bewerteten Größen und Zeiten zu sehen. Die
Prioritäten für die Schlüsselerzeugungzeit und die Schlüsselgrößen werden
vom Abschnitt 6.1 Schlüssellängen - SmartCard“ übernommen. Um die
”
Prioritäten festzulegen, werden pro Größe bzw. Zeit maximal 10 Punkte vergeben. Je mehr Punkte eine Größe bzw. Zeit besitzt, desto höher ist ihre
Priorität.
Abbildung 20: Mobile Code Signing - RSA
SigZeit: Signaturerzeugungszeit, SigGrö: Signaturgröße, VerifZeit: Signaturverifikation, SchlZeit: Schlüsselerzeugungszeit, privSchlGrö: private Schlüsselgröße, öffenSchlGrö: öffentliche Schlüsselgröße
Die bewerteten Angaben in der Abbildung stammen aus
dem Absatz
Mobile Code Signing.
l
182
183
http://www.trustcenter.de/products/tc mobile code signing.htm, 31.08.08, 15:10 Uhr
http://www.trustcenter.de/products/code signing certificate.htm, 31.08.08, 15:23
Uhr
90
Hier werden die Informationen des Unternehmens wiedergegeben.
l Mobile Code Signing
SigZeit: Die Signaturerstellung dauert zur Zeit 1 bis 2 Minuten. Sie
wird aber deutlich verringert werden und mittel- bis kurzfristig im Sekundenbereich liegen.
SigGrö: Die Signaturgröße ist abhängig von der Schlüssellänge. Sie sollte aber in keinem Fall größer als ein oder zwei KB werden.
VerifZeit: Die Verifikation liegt ohne Zertifikatsprüfung gibt im Millisekundenbereich. Mit einer Zertifikatsprüfung kann es je nach der Schnelligkeit der Internetverbindung, auch Minuten dauern.
Für die Erfüllung dieser Prioritäten, wird die Signaturanzahl von 333 Signaturen pro Tag für GMSS angenommen. Die beste Annäherung von GMSS
sind 29 = 512 Signaturen. Aus diesem Grund werden die Parameter wie in
der Tabelle 28 gewählt. Die berechneten Ergebnisse des GMSS mit diesen
GMSS
Parameter
Werte
n
wi
T
H1
H2
H3
H4
Ki
160 Bits
9
4
3
2
2
2
2
Tabelle 28: Mobile Code Signing - GMSS - Parameter für 29 = 512 Signaturen, mit i = 1, . . . , 4
Parametern stehen in der Tabelle 29 auf Seite 92.
Ein Vergleich der beiden Abbildungen ’Mobile Code Signing - RSA’ (Abb. 20
auf Seite 90) mit ’Mobile Code Signing - GMSS’ (Abb. 21 auf Seite 92) zeigt,
dass GMSS alle Prioritäten von RSA erfüllt. Für die Signaturerstellung wird
weniger Zeit bei GMSS benötigt. Die Signaturgröße und Verifikation sind in
beiden Verfahren gleich. Die einzigste Ausnahme bildet hier auch der private
Schlüssel bei GMSS größer als bei RSA, wie in den vorherigen Abschnitten.
91
SigZeit
VerifZeit
SigGrö
SchlZeit
privSchlGrö
öffenSchlGrö
GMSS-Formeln
cof f line + conline
cverif y
msignature
ckeygen
mprivkey
mpubkey
Ergebnisse
87,1 ms
40,9 ms
1,7 KB
0,66 s
79,5 KB
20 Byte
Prioritäten
10
10
10
10
5
10
Tabelle 29: Mobile Code Signing - GMSS
Es werden 29 = 512 Signaturen berechnet.
SigZeit: Signaturerzeugungszeit, SigGrö: Signaturgröße, VerifZeit: Signaturverifikation, SchlZeit: Schlüsselerzeugungszeit, privSchlGrö: private Schlüsselgröße, öffenSchlGrö: öffentliche Schlüsselgröße
Es können insgesamt maximal 10 Punkte pro Größe bzw. Zeit verteilt werden.
Mit den oben genannten Parametern, wurden diese Ergebnisse berechnet
und mit der Liste 17 auf Seite 73 bewertet. Die Grafik 21 zeigt die GMSSPrioritäten.
Abbildung 21: Mobile Code Signing - GMSS
Die Beschriftungen der Grafik ergeben sich aus Tabelle 29.
92
6.2.6
Digitale Dokumente - PDF
Es gibt die unterschiedlichsten Dateiformate und viele von ihnen können
signiert werden.
In diesem Szenario werden für das Signieren nur PDF-Dateien angenommen,
weil sie jedes Signaturprogramm verwenden kann und sie das häufigste Dateiformat für das Signieren ist. Als Signaturalgorithmus wird RSA mit 2048
Bits eingesetzt. In der folgenden Tabelle 30 wird der Mittelwert der Prioritäten bestimmt.
UN 1
UN 2
UN 3
UN 4
MW
SigZeit
10
8
9
9
9
SigGrö
10
10
9
10
VerifZeit
10
8
9
9
9
SchlZeit
1
1
1
1
1
priSchlGrö
10
10
10
10
10
öffenSchlGrö
10
10
10
10
10
Tabelle 30: Digitales Dokument PDF - RSA
SigZeit: Signaturerzeugungszeit, SigGrö: Signaturgröße, VerifZeit: Signaturverifikation, SchlZeit: Schlüsselerzeugungszeit, privSchlGrö: private Schlüsselgröße, öffenSchlGrö: öffentliche Schlüsselgröße, MB: Prioritätsmittelwert,
UN i: Unternehmen i = 1, 2, 3, 4
Es können insgesamt maximal 10 Punkte pro Größe bzw. Zeit verteilt werden. Die bewerteten Angaben in der Tabelle stammen aus
den Absätzen
UN 1 bis UN 4.
Die Grafik 22 auf Seite 95 stellt die bewerteten Mittelwerte der RSAPrioritäten bildlich dar.
l
l
Die folgenden Absätze
UN 1 bis UN 4 beinhalten die Angaben der Unternehmen zu ihren Produkten. Diese Werte werden in Tabelle 30 gemäß der
Bewertungsliste 17 auf Seite 73 bewertet.
l UN 1: Die Firma ARX
184
kann RSA mit bis zu 4096 Bits einsetzen. Bei ARX liegen die Schlüsselerzeugungszeit unter 500 ms und es
können ebenfalls fortgeschrittene Signaturen erstellt werden. Da in diesem Szenario nur qualifizierte Signaturen betrachtet werden, werden die
Schlüsselgrößen und Zeiten aus dem Abschnitt 6.1 Schlüssellängen ”
SmartCard“ verwendet.
SigZeit: Es können 300 Signaturoperationen in der Sekunde bei RSA
mit 1024 Bits durchgeführt werden. Deshalb wird geschätzt, dass 200
184
http://www.arx.com, 08.08.08, 14:35 Uhr
93
Signaturoperationen pro Sekunde bei RSA mit 2048 Bits ausgeführt
werden. Damit wird angenommen, dass das Signieren pro Signatur 5
Millisekunden dauert.
SigGrö: Die Signaturgröße beträgt ca. 2 KB.
VerifZeit: Die Verifikation ohne Zertifikatsprüfung dauert Bruchteile einer Sekunde. Mit Zertifikatsprüfung werden ein paar Sekunden benötigt.
l UN 2: Die intarsys consulting GmbH
185
verwendet RSA mit 2048 Bits.186
SigZeit: Beim Testen der Signaturerstellung wurden ca. 3-10 Sekunden
für eine Signatur ermittelt.
SigGrö: Die Signaturgröße kann sichtbar ca. 86 KB oder unsichtbar
ca. 19,3 KB betragen, wenn sie in einer PDF-Datei integriert wird. Sie
kann ebenfalls ca. 1,09 KB groß werden, wenn sie als externe Signatur
erzeugt wird. Diese Ergebnisse stammen aus Tests. Für das Szenario
wird die externe Signatur verwendet.
VerifZeit: Für die Verifikation wurden ca. 6 Sekunden für eine Signatur
in Tests benötigt.
l UN 3: Die IT Solution GmbH
187
verwendet RSA mit bis zu 2048 Bits,
DSA mit SHA-1 und ECDSA mit bis zu SHA512.
SigZeit: Die Signaturerstellung dauert etwa 1 Sekunde.
SigGrö: Die Signatur kann bis zu 21 KB betragen. Bei ihr handelt es
sich, um eine integrierte Signatur. Deshalb ist sie größer als eine externe Signatur. Da in den Szenarien nur externe Signaturen betrachtet
werden, wird diese Signaturgröße nicht mit den anderen verglichen und
somit fließt sie nicht in die Bewertung ein.
VerifZeit: Die Verifikation dauert etwa 1 Sekunde.
l UN 4: Das Unternehmen SecCommerce Informationssysteme GmbH
188
verwendet RSA mit 2048 Bits.
SigZeit: Für die Signaturerstellung wird ca. eine Sekunde pro Signatur
benötigt.
185
http://www.intarsys.de, 09.08.08, 15:50 Uhr
http://www.bsi.de/zertifiz/zert/sigbestaet/02081.pdf, 03.09.08, 19:00 Uhr
187
http://www.itsolution.at, 05.08.08, 17:35 Uhr
188
http://www.seccommerce.de/index.html, 05.08.08, 12:10 Uhr
186
94
SigGrö: Die Signaturgröße ist abhängig von der Karte abhängig und ist
etwa 4 KB groß.
VerifZeit: Die Verifikation ohne Zertifikatsprüfung dauert ca. eine Sekunde. Mit der Zertifikatsprüfung werden ca. 5-10 Sekunden pro Signatur gebraucht.
Abbildung 22: Digitales Dokument PDF - RSA
Die Beschriftungen der Grafik ergeben sich aus Tabelle 30 auf Seite 93.
Damit GMSS den Bedarf von angenommen 17.280 Signaturen pro Tag und
von den Prioritäten aus Tabelle 30 auf Seite 93 decken kann, wird GMSS für
215 = 32.768 Signaturen, das ist die beste Annäherung an die Signaturanzahl,
ausgelegt. Deshalb werden die Parameter wie in der Tabelle 31 gewählt.
Die berechneten Ergebnisse des GMSS mit diesen Parametern stehen in der
GMSS
Parameter
Werte
n
w1
w2
w3
T
H1
H2
H3
K1
K2
K3
160 Bits
7
6
6
3
9
3
3
5
2
2
Tabelle 31: Digitales Dokument PDF - GMSS - Parameter für 215 = 32.768
Signaturen
Tabelle 32 auf Seite 96.
Ein Vergleich der beiden Abbildungen ’Digitales Dokument PDF - RSA’
(Abb. 22 auf Seite 95) mit ’Digitales Dokument PDF - GMSS’ (Abb. 23 auf
Seite 96) zeigt, dass GMSS alle Prioritäten von RSA erfüllt. Für die Signaturerstellung und Verifikation wird weniger Zeit benötigt. Die Signaturgröße
95
SigZeit
VerifZeit
SigGrö
SchlZeit
privSchlGrö
öffenSchlGrö
GMSS-Formeln
cof f line + conline
cverif y
msignature
ckeygen
mprivkey
mpubkey
Ergebnisse
15,4 ms
6,9 ms
1,9 KB
3,4 s
235,6 KB
20 Byte
Prioritäten
10
10
10
9
3
10
Tabelle 32: Digitales Dokument PDF - GMSS
Es werden 215 = 32.768 Signaturen berechnet.
SigZeit: Signaturerzeugungszeit, SigGrö: Signaturgröße, VerifZeit: Signaturverifikation, SchlZeit: Schlüsselerzeugungszeit, privSchlGrö: private Schlüsselgröße, öffenSchlGrö: öffentliche Schlüsselgröße
Es werden 215 = 32.768 Signaturen erstellt.
Es können insgesamt maximal 10 Punkte pro Größe bzw. Zeit verteilt werden.
Mit den oben genannten Parametern, wurden diese Ergebnisse berechnet und
mit der Liste 17 auf Seite 73 bewertet. Die Abbildung 23 stellt die GMSSPrioritäten grafisch dar.
Abbildung 23: Digitales Dokument PDF - GMSS
Die Beschriftungen der Grafik ergeben sich aus Tabelle 32.
von GMSS ist kleiner als bei RSA. Die einzigste Ausnahme bildet ebenfalls
der private Schlüssel von GMSS. Er erfüllt nicht die Anforderungen, da er zu
groß ist.
96
6.2.7
Sonstige Einsatzmöglichkeiten - Bahnticket
Bahnfahrkarten oder auch Bahntickets genannt, können heute über das Internet bestellt werden. Dieses Angebot nutzten 2007 32.000 Kunden.189 Die
Kunden melden sich auf der entsprechenden Webseite mit ihren Daten an und
bestellen, wie beim Online-Einkauf, ihr Ticket. Die Daten des Kunden und
alle Informationen über die gebuchte Fahrt werden signiert. Die Signaturerstellung erfolgt auf den Servern der Bahn. Das Ticket und seine Signatur wird
dem Kunden digital zu geschickt. Der Kunde hat die Wahl, ob er sein Ticket
ausdrucken oder digital auf seinem Mobiltelefon mitnimmt. Zur Erinnerung,
diese Signatur wird als ein 2D-Barcode dargestellt. Dadurch kann dieser auch
vom beleuchteten Handydisplay gescannt werden. Die Verifikation muss sehr
schnell erfolgen, da sie bei der Zugkontrolle durchgeführt wird und alle Passagiere kontrolliert werden müssen. Deshalb darf diese Überprüfung nicht
Minuten dauern. Für dieses Szenario werden 32.000 Signaturkarten mit ihren Schlüssel gebraucht und ebenso viele Signaturen werden erzeugt und
verifiziert.
Die Prioritäten für die Schlüsselerzeugungzeit und die Schlüsselgrößen sind
von der Bahn abhängig und werden intern berechnet. Da die Bahntickets
beruflich abgesetzt werden können, müssen sie entsprechende Signaturen
tragen. Deshalb wird hier angenommen, dass RSA mit 2048 Bits die Daten signiert und diese Signatur in einen 2D-Barcode umgewandelt wird. Der
öffentliche Schlüssel zum Verifizieren muss dann in den Lesegeräten enthalten
sein.
l Bahnticket
Es wird angenommen, dass die Verifikation der Signatur sehr schnell
durchgeführt wrid.
Die Signaturgröße ist klein, weil der 2D-Barcode ihre Größe auf maximal 1,95 KB ≈ 2.000 Byte beschränkt.
Es wird geschätzt, dass die Signaturerstellung viel langsamer erfolgt als
die Verifikation.
In der Abbildung 24 auf Seite 98 sind die bewerteten Größen und Zeiten zu
sehen. Die Prioritäten für die Schlüsselerzeugungzeit und die Schlüsselgrößen
werden vom Abschnitt 6.1 Schlüssellängen - SmartCard“ übernommen. Um
”
die Prioritäten festzulegen, werden pro Größe bzw. Zeit maximal 10 Punkte
vergeben. Je mehr Punkte eine Größe bzw. Zeit besitzt, desto höher ist ihre
189
http://www.derwesten.de/nachrichten/nachrichten/wirtschaft-undfinanzen/2008/3/28/news-33697614/detail.htm, 05.09.08, 10:11 Uhr
97
Priorität.
Abbildung 24: Bahnticket - RSA
SigZeit: Signaturerzeugungszeit, SigGrö: Signaturgröße, VerifZeit: Signaturverifikation, SchlZeit: Schlüsselerzeugungszeit, privSchlGrö: private Schlüsselgröße, öffenSchlGrö: öffentliche Schlüsselgröße
Die bewerteten Angaben in der Abbildung stammen aus
dem Absatz
Bahnticket.
l
Um diese Prioritäten zu erfüllen, werden für die GMSS Parameter die Anzahl von 32.000 Signaturen pro Jahr angenommen. Die beste Signaturanzahlannäherung ist 215 = 32.768 Signaturen. Aus diesem Grund werden die
Parameter wie in der Tabelle 33 gewählt. Die berechneten Ergebnisse des
GMSS
Parameter
Werte
n
w1
w2
w3
T
H1
H2
H3
K1
K2
K3
160 Bits
7
6
6
3
9
3
3
5
2
2
Tabelle 33: Bahnticket - GMSS - Parameter für 215 = 32.768 Signaturen
GMSS mit diesen Parametern stehen in der Tabelle 34 auf Seite 99.
Ein Vergleich der beiden Abbildungen ’Bahnticket - RSA’ (Abb. 24 auf Seite
98) mit ’Bahnticket - GMSS’ (Abb. 25 auf Seite 99) zeigt, dass GMSS alle
Prioritäten von RSA erfüllt. Für die Signaturerstellung wird bei GMSS weniger Zeit benötigt als bei RSA. Die Signaturgröße und Verifikation sind in
beiden Verfahren gleich. Die einzigste Ausnahme bildet ebenfalls der private
Schlüssel. Er ist bei GMSS wesentlich größer als bei RSA, so wie in den vorherigen Abschnitten.
98
SigZeit
VerifZeit
SigGrö
SchlZeit
privSchlGrö
öffenSchlGrö
GMSS-Formeln
cof f line + conline
cverif y
msignature
ckeygen
mprivkey
mpubkey
Ergebnisse
15,4 ms
6,9 ms
1,9 KB
3,4 s
235,6 KB
20 Byte
Prioritäten
10
10
10
9
3
10
Tabelle 34: Bahnticket - GMSS
Es werden 215 = 32.768 Signaturen berechnet.
SigZeit: Signaturerzeugungszeit, SigGrö: Signaturgröße, VerifZeit: Signaturverifikation, SchlZeit: Schlüsselerzeugungszeit, privSchlGrö: private Schlüsselgröße, öffenSchlGrö: öffentliche Schlüsselgröße
Es können insgesamt maximal 10 Punkte pro Größe bzw. Zeit verteilt werden.
Mit den oben genannten Parametern, wurden diese Ergebnisse berechnet
und mit der Liste 17 auf Seite 73 bewertet. Die Grafik 25 stellt die GMSSPrioritäten dar.
Abbildung 25: Bahnticket - GMSS
Die Beschriftungen der Grafik ergeben sich aus Tabelle 34.
99
7
Zusammenfassung - Fazit
In dieser Diplomarbeit wurde die digitale Signatur in ihren verschiedenen Erscheinungsformen (symmetrisch, asymmetrisch) und Arten (einfach, fortgeschritten, qualifiziert) vorgestellt. Des Weiteren wurde herausgefunden, dass
die fortgeschrittene und die qualifizierte digitale Signatur mit vorwiegend
asymmetrischen Signaturverfahren genutzt werden, wie RSA oder ECDSA.
RSA wird dem DSA-Verfahren meistens vorgezogen. Dadurch konnten nicht
genug Daten bezüglich DSA für die Szenarien gefunden werden. Deshalb
konnte DSA nicht mit GMSS verglichen werden.
Das asymmetrische verbesserte Merkle-Signaturverfahren (GMSS) wurde mit
seinen Formeln für die Schlüsselerzeugung, Signaturerstellung und Verifikation mit seinen Parametern (n, wi , T , Hi und Ki ) beschrieben, mit
i = 1, . . . , T . Der Sicherheitsparameter n ist die Ausgabelänge der verwendeten Hashfunktion und stellt die Sicherheitsstufe von GMSS dar. Damit hängt
die Sicherheit von GMSS nicht von den Schlüssellängen ab, wie bei RSA. Der
Winternitzparameter wi dient zur Verkleinerung der Signaturgröße. T gibt
die Anzahl der Ebenen in GMSS an. Zur Erinnerung, GMSS besteht aus einem großen Baum und seine Innerenknoten sind Merkle-Bäume, die auf den
verschiedenen Ebenen verteilt sind. Die Höhen der Bäume werden durch den
Parameter Hi angegeben. T und Hi bestimmen die Anzahl der erzeugten
Signaturen. Ki bezeichnet den Parameter für die Authentifikationspfadberechnung auf den Ebenen.
Die Einflüsse der Parameter auf die Formeln von GMSS wurden bestimmt.
Mit diesem Wissen wurde die optimale Parameterwahl ermittelt. Der Parameter n muss immer dem aktuellen Sicherheitsstandard entsprechen und
kann nicht beliebig gewählt werden. Die Parameter wi , T , Hi und Ki können
unter Berücksichtigung der jeweiligen Bedingungen frei gewählt werden. Damit können sie die Schlüsselerzeugungszeit, Signaturerstellungszeit, Verifikationszeit, Schlüsselgrößen und Signaturgröße bestimmen. Die detaillierte
Beschreibung der optimalen Parameterwahl steht im Kapitel 4 Parameter ”
n, wi , T, Hi , Ki“ und die zusammengefassten Erkenntnisse im Abschnitt 4.3
Zusammenfassung der Parameter“.
”
Es wurde dargestellt, wo heute überall digitale Signaturen eingesetzt werden,
welche Sicherheitsstandards für die Signaturverfahren existieren und welche
Sicherheitsziele sie erfüllen, wie die Datenintegrität und die Authentizität.
Die Sicherheitsstandards hängen von der Entwicklung der Technologie ab
und werden von verschiedenen Institutionen bewertet, wie die Bundesnetzagentur.
100
Die digitale Signatur wird in unterschiedlichen Einsatzgebieten angewendet,
wie im öffentlichen Dienst, im Handel, im Dienstleistungsbereich und im
Geschäftsverkehr. Die Einsatzgebiete werden im Kapitel 5 Einsatzgebiete
”
von digitalen Signaturen“ beschrieben.
In den Szenarien wurde die Anwendung der digitalen Signatur in ausgewählten
Beispielen aus den Einsatzgebieten im Abschnitt 6.2 Szenarien - Beispiele“
”
genauer erläutert. Des Weiteren wurden die momentan eingesetzten Signaturverfahren in diesen Bereichen mit GMSS verglichen. Um dies zu ermöglichen,
wurden die verschiedenen Prioritäten für die Schlüsselerzeugungszeit, die
Signaturerstellungszeit, die Verifikationszeit, die Signaturgröße und die
Schlüsselgrößen (des privaten und des öffentlichen Schlüssels) in den unterschiedlichen Anwendungsgebieten genauer untersucht. Die Priorität für die
Verifikation wurde für eine Signatur ohne Zertifikatsprüfung bei allen Verfahren ermittelt. Die Priorität für die Signaturerstellungszeit von GMSS wurde
ohne die Verwendung von Signaturkarten bestimmt. Dadurch ist beim Vergleich der Signaturerstellungszeit zu Berücksichtigen, dass die Verwendung
einer Karte und eines Kartenlesers die Erstellungszeit geringfügig verlangsamt.
Im Durchschnitt liegen in den Szenarien die Prioritäten der Zeit für die Signaturerstellung und der Verifikation sowie der Signaturgröße nicht weit auseinander. Die höchste Priorität in den Signaturverfahren haben die sehr kleinen
Schlüssel. Danach folgt im Stellenwert die Verifikation und die Signaturgröße.
Die Signaturerstellungszeit liegt rangmäßig vor der Schlüsselerzeugung.
Viele Anwendungen versuchen die Differenz zwischen der Verifikation und
der Zeit für die Signaturerstellung so klein wie möglich zu halten.
Die verschiedenen Beispiele zeigen, dass GMSS fast alle geforderten Prioritäten erfüllt und gleichzeitig Größen verkleinern und Zeiten verkürzen kann.
Die einzigste Ausnahme bildet der private Schlüssel von GMSS, er erfüllt
nicht die geforderte Priorität in den Beispielen.
GMSS kann unter der Voraussetzung, dass ein größeres Speichermedium als
eine Signaturkarte eingesetzt wird, RSA oder ECDSA ersetzen.
101
7.1
Fazit
Ein Vorteil von GMSS ist sein kleiner öffentlicher Schlüssel im Vergleich zu
anderen Signaturverfahren mit gleichem Sicherheitsniveau. Ein weiterer Vorteil von GMSS ist seine Resistens gegen Angriffe von Quantencomputern, da
er auf der Existens von Hashfunktionen beruht und einen Pseudozufallszahlengenerator (PRNG) verwendet. Andere Signaturverfahren basieren auf anderen mathematischen Problemen, wie das Faktorisierungsproblem, die von
Quantencomputern gebrochen werden können. Der einzigste Nachteil von
GMSS, der sich in den Szenarien aus Kapitel 6.2 Szenarien - Beispiele“
”
zeigt, ist, dass der private Schlüssel nicht kleiner als 32 KB werden kann, ohne die Signaturanzahl zu reduzieren. Dann würde GMSS die Anforderungen
des jeweiligen Beispiels nicht mehr erfüllen. Die Größe des privaten Schlüssels
liegt in den Szenarien zwischen 79 und 500 KB.
Die Handhabung der Signaturgröße von GMSS kann unter Umständen etwas schwierig sein, wenn sie ≤ 2 KB groß und zusätzlich die anderen Werte
sehr klein bzw. sehr schnell bei einer großen Signaturanzahl sein sollen. Die
durchschnittliche Signaturgröße von GMSS in den Beispielen geht von 2 bis
4 KB.
Um GMSS uneingeschränkt nutzen zu können, können Signaturkarten durch
andere Speichermedien mit mehr Speichervolumen ersetzt werden, wie ein
USB-Token.190 191
Somit zeigt sich im Ergebnis, dass GMSS mit einem Sicherheitsparameter
von 160 bzw. 224 Bits durchaus RSA mit der aktuellen Schlüssellänge von
2048 Bits und ECDS mit 224 Bits unter des oben genannten Aspekts des
größeren Speichervolumens ersetzen kann.
Es gibt bereits heute Signaturkarten mit einem Speichervolumen von 72 KB.
Leider sind sie noch nicht weit verbreitet, aber mit der schnellen Technologieentwicklung werden immer längere Schlüsselgrößen von allen Signaturverfahren verlangt, um die Sicherheit der Verfahren zu gewährleisten. Deshalb
wachsen ihre Schlüssellängen und somit wird mehr Speicherplatz auf den
Signaturkarten gefordert. Wahrscheinlich wird es in naher Zukunft Signaturkarten von 200 oder mehr KB geben.
Vorteile von digitalen Signaturen sind die Einsparung von Kosten und Zeit,
wie die Reduzierung von Papier-, Drucker-, Versand- und Anfahrtkosten oder
190
191
http://www.idpendant.de/produkte/usb-token.html, 07.08.09, 19:11 Uhr
http://www.rs-computer.com/hardware/usb-token/epass3000.php, 07.08.09, 19:21
Uhr
102
die Abhängigkeiten von Öffnungszeiten. Briefe müssen nicht mehr ausgedruckt, unterzeichnet, frankiert und versandt werden. Behördenerledigungen
können ohne eine Anfahrt zur entsprechenden Behörde und unabhängig von
deren Öffnungszeiten erfolgen. Im schlimmsten Fall müsste der Arbeitnehmer
sich beurlauben lassen.
Ein weiterer Vorteil ist die Beweissicherung, wie bei digitalen Tonaufnahmen
bei Geschäftstelefonaten oder der Flugsicherung. Die digitale Signatur kann
in der Softwareentwicklung und im späteren Vertrieb als Nachweis dienen,
von wem die Software stammt und wer sie zuletzt bearbeitet hat.
Mithilfe der digitalen Signatur können beim Online-Einkauf und beim OnlineBanking die Transaktionen authentifiziert werden und die Sicherheit der
Transfere über das Internet verbessern.
Trotz der Vorteile von digitalen Signaturen sollte immer der Gedanke an die
Sicherheit der verwendeten Verfahren beachtet werden. Die benutzten Verfahren gewährleisten die Sicherheit der digitalen Signatur, wenn zum Einen
der aktuelle Sicherheitsstandard eingehalten wird. Dies müssen die Trustcenter garantieren können. Zum Anderen beruht das Vertrauen in die
sichere Verwaltung und Verarbeitung der Daten der Schlüsselerzeugung und
der Schlüsselinhaber auf dem Vertrauen in das Trustcenter. Treten Zweifel
am Vertrauen in das Trustcenter auf, dann ist die Sicherheit der verwendeten
Signaturverfahren gefährdet und im schlimmsten Fall nicht mehr gegeben.
Die betroffenen digitalen Signaturen verlieren dann ihre Gültigkeit und Beweiskraft.
Die Sicherheit der digitalen Signatur muss gewährleistet sein, da sich ihre Einsatzmöglichkeiten zukünftig immer weiter ausbreiten werden, vom OnlineEinkauf über virtuelle Behördengänge bis hin zur digitalen Patientenakte.
Ein weiterer kleiner Ausblick in mögliche zukünftige Entwicklungen zeigt
die Verwendung der digitalen Signatur in Österreich. Dort werden bereits
seit dem 2. September 2008 Notebooks mit vorinstallierter Bügersoftware
und integriertem Kartenleser verkauft.192 Dadurch entfällt die zusätzliche
Besorgung eines Kartenlesers, somit wird ebenfalls der Einsatz von digitalen
Signaturen gefördert.
192
http://www.ots.at/presseaussendung.php?schluessel=OTS 20080828 OTS0169,
09.09.08, 9:11 Uhr
103
Literatur
[1] Digital signature standard (dss). Technical report, FIPS PUB 186-2,
http://csrc.nist.gov/publications/fips/, 2007.
[2] Johannes Buchmann. Einführung in die Kryptographie, volume 3. erweiterte Auflage. Springer - Verlag, 2004.
[3] M. Stam C. Dods, N. P. Smart. Hash based digital signature schemes.
Cryptography and Coding, 3796 in LNCS:96–115, Springer-Verlag, 2005.
[4] Erik Dahmen Michael Szydlo Daniel J. Bernstein, Johannes Buchmann. Hash based cryptography. Technical report, Technische Universität Darmstadt, [email protected], noch nicht
veröffentlicht.
[5] Claudia Eckert. IT-Sicherheit, volume 4. überarbeitete Auflage. Oldenbourg - Verlag, 2006.
[6] Elena Klintsevich Katsuyuki Okeya Camille Vuillaume Johannes Buchmann, Erik Dahmen. Merkle signature with virtually unlimited signature capacity. Applied Cryptography and Network Security - ACNS, 4521
in LNCS:31–45, Springer-Verlag, 2007.
[7] Erik Dahmen Martin Döring Elena Klintsevich Johannes Buchmann,
Luis Carlos Coronado Garcı́a. Cmss - an improved merkle signature scheme. Proc. Advances in Cryptography (Indocrypt´06), 4329 in LNCS:349–
363, Springer-Verlag, 2006.
[8] Ralph C. Merkle. A certified digital signature. Proc. Advances in Cryptography (Crypto´89), 1462 in LNCS:218–238, Springer-Verlag, 1989.
[9] Michael Szydlo. Merkle tree traversal in log space and time (preprint).
Technical report, -, htttp://www.szydlo.com, 2003.
[10] Michael Szydlo. Merkle tree traversal in log space and time. Proc.
Advances in Cryptography (Enrocrypt´04), 3027 in LNCS:541–554,
Springer-Verlag, 2004.
[11] M. Hellman W. Diffie. New directions in cryptography. IEEE Transactions an Information Theory, IT-22(6):644–654, 1976.
104
Abbildungsverzeichnis
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Symmetrisches Signaturverfahren . . . . . . . . . . . . . .
Asymmetrisches Signaturverfahren . . . . . . . . . . . . .
Hier ist ein Baum mit 4 Ebenen aus dem GMSS dargestellt
Verallgemeinerter Aufbau von GMSS, Bildvorlage von [6] .
Authentifikationspfad des Blattes i : (j, c, b) . . . . . . . .
Verteilte OT-Signaturerzeugung aus [4] . . . . . . . . . . .
Verteilte Wurzelerzeugung aus [4] . . . . . . . . . . . . . .
Verteilte Authentifikationspfadberechnung aus [4] . . . . .
Signaturarten . . . . . . . . . . . . . . . . . . . . . . . . .
2D-Barcodes . . . . . . . . . . . . . . . . . . . . . . . . . .
Prioritäten - Schlüsselgrößen und -erzeugungszeiten . . . .
Elster - RSA . . . . . . . . . . . . . . . . . . . . . . . . . .
Elster - GMSS . . . . . . . . . . . . . . . . . . . . . . . . .
Rechnung - RSA . . . . . . . . . . . . . . . . . . . . . . .
Rechnung - GMSS . . . . . . . . . . . . . . . . . . . . . .
ePass - ECDSA . . . . . . . . . . . . . . . . . . . . . . . .
ePass - GMSS . . . . . . . . . . . . . . . . . . . . . . . . .
Online-Einkaufen - RSA . . . . . . . . . . . . . . . . . . .
Online-Einkaufen - GMSS . . . . . . . . . . . . . . . . . .
Mobile Code Signing - RSA . . . . . . . . . . . . . . . . .
Mobile Code Signing - GMSS . . . . . . . . . . . . . . . .
Digitales Dokument PDF - RSA . . . . . . . . . . . . . . .
Digitales Dokument PDF - GMSS . . . . . . . . . . . . . .
Bahnticket - RSA . . . . . . . . . . . . . . . . . . . . . . .
Bahnticket - GMSS . . . . . . . . . . . . . . . . . . . . . .
105
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6
7
14
15
16
20
21
23
48
67
72
77
78
80
83
84
86
87
89
90
92
95
96
98
99
Tabellenverzeichnis
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Verhalten der Formelergebnisse bei steigendem n, w, T, H, K
Parameter w, T und H beeinflussen msignature . . . . . . . . .
Variiation von msignature bei gleicher Signaturanzahl . . . . . .
Auswirkung von w, T , H und K auf mprivkey . . . . . . . . . .
Veränderung von mprivkey bei gleicher Anzahl von Signaturen .
Einflüsse von w, T und H auf ckeygen . . . . . . . . . . . . . .
Variiation von ckeygen . . . . . . . . . . . . . . . . . . . . . . .
Auswirkung der Parameter w, T , H und K auf cof f line . . . .
Variiation von cof f line . . . . . . . . . . . . . . . . . . . . . . .
Variiation von cverif y . . . . . . . . . . . . . . . . . . . . . . .
Auswirkungen von w auf den Ebenen . . . . . . . . . . . . . .
Auswirkungen von H auf den Ebenen . . . . . . . . . . . . . .
Auswirkungen von K auf die Ebenen . . . . . . . . . . . . . .
Beste Parameterwahl von w1 , H1 und K1 . . . . . . . . . . . .
Zweitbeste Parameterwahl von wi , HT und Ki . . . . . . . . .
Gültigkeit der Schlüssellängen . . . . . . . . . . . . . . . . . .
Bewertungsliste . . . . . . . . . . . . . . . . . . . . . . . . . .
Elster - GMSS - Parameter . . . . . . . . . . . . . . . . . . . .
Elster - GMSS . . . . . . . . . . . . . . . . . . . . . . . . . . .
Rechnung - RSA . . . . . . . . . . . . . . . . . . . . . . . . .
Rechnung - GMSS - Parameter . . . . . . . . . . . . . . . . .
Rechnung - GMSS . . . . . . . . . . . . . . . . . . . . . . . .
ePass - GMSS - Parameter . . . . . . . . . . . . . . . . . . . .
ePass - GMSS . . . . . . . . . . . . . . . . . . . . . . . . . . .
Online-Einkaufen - RSA . . . . . . . . . . . . . . . . . . . . .
Online-Einkaufen - GMSS - Parameter . . . . . . . . . . . . .
Online-Einkaufen - GMSS . . . . . . . . . . . . . . . . . . . .
Mobile Code Signing - GMSS - Parameter . . . . . . . . . . .
Mobile Code Signing - GMSS . . . . . . . . . . . . . . . . . .
Digitales Dokument PDF - RSA . . . . . . . . . . . . . . . . .
Digitales Dokument PDF - GMSS - Parameter . . . . . . . . .
Digitales Dokument PDF - GMSS . . . . . . . . . . . . . . . .
Bahnticket - GMSS - Parameter . . . . . . . . . . . . . . . . .
Bahnticket - GMSS . . . . . . . . . . . . . . . . . . . . . . . .
106
29
31
32
33
34
34
35
36
37
38
40
43
45
46
47
69
73
76
77
79
82
82
85
85
86
88
89
91
92
93
95
96
98
99

Documentos relacionados