Upload
vuhanh
View
229
Download
2
Embed Size (px)
Citation preview
1
Kryptographie und Codierung für den Mathematikunterricht
Pädagogische Hochschule KarlsruheUniversity of Education · École Supérieure de PédagogieInstitut für Mathematik und Informatik Th. Borys
PH Karlsruhe Thomas Borys2
Gulewu tellewenTalewag
Was verstehst du unter einem Code?
PH Karlsruhe Thomas Borys3
Gulewu telewenTalewag
Was verstehst du unter einem Code?
PH Karlsruhe Thomas Borys4
Gulewu telewenTalewag
Was verstehst du unter einem Code?
PH Karlsruhe Thomas Borys5
Gulewu telewenTalewag
Was verstehst du unter einem Code?
PH Karlsruhe Thomas Borys6
Genetischer Code
Was verstehst du unter einem Code?
PH Karlsruhe Thomas Borys7
Strichcode
Was verstehst du unter einem Code?
Bild http://office.microsoft.com/de-de/clipart/download.aspx?
PH Karlsruhe Thomas Borys8
ASCII-Code
Was verstehst du unter einem Code?
Bild http://office.microsoft.com/de-de/clipart/download.aspx?
Zeichen A B↓ ↓
Code 01000001 01000010
PH Karlsruhe Thomas Borys9
RSA-Verfahren
Was verstehst du unter einem Code?
Bild http://office.microsoft.com/de-de/clipart/download.aspx?
PH Karlsruhe Thomas Borys10
Brailleschrift
Was verstehst du unter einem Code?
Bild http://office.microsoft.com/de-de/clipart/download.aspx?
a b c d e
PH Karlsruhe Thomas Borys11
Morsecode
Was verstehst du unter einem Code?
Bild: http://www.shipsonstamps.org/topics/html/funker.htmhttp://morsecode.scphillips.com/jtranslator.html
a b c d e· — —· · · —·—
·—· · ·
PH Karlsruhe Thomas Borys12
Cäsar-Code
Bild:http://www.augsburger-allgemeine.de/Home/popup,quiz_quiz,1621_regid,13_puid,2_pageid,5154.html
Was verstehst du unter einem Code?
PH Karlsruhe Thomas Borys13
Cäsar-Code
Bild:http://www.augsburger-allgemeine.de/Home/popup,quiz_quiz,1621_regid,13_puid,2_pageid,5154.html
Klar.: a b c d e f g h i j k l m n o p q r s t u v w x y zGeheim.: D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
Klar.: b o n d Geheim.: E R Q G
Was verstehst du unter einem Code?
PH Karlsruhe Thomas Borys14
Aufgaben von Codierungen
• „Anpassung an technische Gegebenheiten der Weiterleitung“
• „Reduzierung der Datenmenge“
• „Sicherung vor Fehlern, insbesondere vor zufälligen Veränderungen“
• „Geheimhaltung, Sicherung vor unbefugter Kenntnisnahme“
• „Schutz vor unbefugter Veränderung, Beweis der Urheberschaft, Nachweis der Abwicklung“
• „Schnelle Verständlichkeit für einen großen Personenkreis auch über Sprachgrenzen hinweg“
• „Anpassung an technische Gegebenheiten der Weiterleitung“
• „Reduzierung der Datenmenge“
• „Sicherung vor Fehlern, insbesondere vor zufälligen Veränderungen“
• „Geheimhaltung, Sicherung vor unbefugter Kenntnisnahme“
• „Schutz vor unbefugter Veränderung, Beweis der Urheberschaft, Nachweis der Abwicklung“
• „Schnelle Verständlichkeit für einen großen Personenkreis auch über Sprachgrenzen hinweg“
PH Karlsruhe Thomas Borys15
Was versteht man unter Kryptologie?
Die Wissenschaft, deren Aufgabe die Entwicklung von Methoden zurVerschlüsselung (Chiffrierung) von Informationen (Kryptographie) und deren mathematische Absicherung gegen unberechtigte Entschlüsselung (Dechiffrierung) ist (Kryptoanalyse).
(Brockhaus Lexikon)
Beutelspacher:Kryptographie ist eine öffentliche mathematische Wissenschaft, in der Vertrauen geschaffen, übertragen und erhalten wird.
Was versteht man unter Kryptologie?
Die Wissenschaft, deren Aufgabe die Entwicklung von Methoden zurVerschlüsselung (Chiffrierung) von Informationen (Kryptographie) und deren mathematische Absicherung gegen unberechtigte Entschlüsselung (Dechiffrierung) ist (Kryptoanalyse).
(Brockhaus Lexikon)
Beutelspacher:Kryptographie ist eine öffentliche mathematische Wissenschaft, in der Vertrauen geschaffen, übertragen und erhalten wird.
PH Karlsruhe Thomas Borys16
1. Strichcodes
2. Europäische Artikelnummer
3. Huffman-Codierung
4. Verschlüsselungsschablonen
1. Strichcodes
2. Europäische Artikelnummer
3. Huffman-Codierung
4. Verschlüsselungsschablonen
Vortrags-Gliederung
17
Strichcodes
Pädagogische Hochschule KarlsruheUniversity of Education · École Supérieure de PédagogieInstitut für Mathematik und Informatik Th. Borys
PH Karlsruhe Thomas Borys18
Einfacher StrichcodeAztec-Code Online-Ticket der Bahn
PDF 417 Online-Ticket der Lufthansa Datamatrix der Deutschen Post
PH Karlsruhe Thomas Borys19
Gepäckanhänger einer Fluggesellschaft
PZN eines Medikaments
PH Karlsruhe Thomas Borys20
Einfacher StrichcodeAztec-Code Online-Ticket der Bahn
PDF 417 Online-Ticket der Lufthansa Datamatrix der Deutschen Post
PH Karlsruhe Thomas Borys21
1 7 9 7 2 2 3 3 5 3 21
3
PH Karlsruhe Thomas Borys22
Schülerproduktionen
23
Europäische Artikelnummer
24
Europäische Artikelnummer(kurz EAN)
PH Karlsruhe Thomas Borys25
European Article Number = Universal Product Code
Daten:Daten:
- 1973 UPC = Universal Product Code (12-stellig) in Amerika
- 1977 EAN (13-stellig) Europa
- EAN & UPC kompatibel z.B.: UPC 184324845131UPC 184324845131 EAN EAN 00184324845131184324845131
1.Jan.2005 EAN auch in Nordamerika
PH Karlsruhe Thomas Borys26
Aufbau der Ziffernfolge der EAN 13
Beispiel: 40 (1)3752 01900 4
HerstellerlandHersteller
Artikelnummer
Prüfziffer
4 13752 019004
PH Karlsruhe Thomas Borys27
4 013752 019004
Berechnung der Prüfziffer
Beispiel einer EAN: 401375201900 – 4
4 4 0 + 01 + 13 + 97 + 75 + 152 + 20 + 01 + 19 + 270 + 00 + 0 = 66
∙1
∙3
∙1
∙3
∙1
∙3
∙3
∙3
∙1
∙1
∙1
∙3 66 + 4 = 70
PH Karlsruhe Thomas Borys28
PH Karlsruhe Thomas Borys29
PH Karlsruhe Thomas Borys30
Wie gut ist das Prüfzifferverfahren?
Richtige EAN:4 0 1 2 3 4 5 9 8 7 6 5 2
4 + 0 + 1 + 6 + 3 + 12 + 5 + 27 + 8 + 21 + 6 + 15 + 2 = 110
Falsche EAN:4 0 1 2 3 4 7 9 8 7 6 5 2
4 + 0 + 1 + 6 + 3 + 12 + 7 + 27 + 8 + 21 + 6 + 15 + 2 = 112
Einzelfehler werden erkannt.
PH Karlsruhe Thomas Borys31
Richtige EAN:4 0 1 2 3 4 5 9 8 7 6 5 2
4 + 0 + 1 + 6 + 3 + 12 + 5 + 27 + 8 + 21 + 6 + 15 + 2 = 110
Falsche EAN:4 0 1 2 3 4 9 5 8 7 6 5 2
4 + 0 + 1 + 6 + 3 + 2 + 9 + 15 + 8 + 21 + 6 + 15 + 2 = 102
Wie gut ist das Prüfzifferverfahren?
Dieser Zahlendreher wird erkannt.
PH Karlsruhe Thomas Borys32
Richtige EAN:4 0 1 3 7 5 2 7 1 9 0 0 3
4 + 0 + 1 + 9 + 7 + 15 + 2 + 21 + 1 + 27 + 0 + 0 + 3 = 90
Falsche EAN:4 0 1 3 7 5 7 2 1 9 0 0 3
4 + 0 + 1 + 9 + 7 + 15 + 7 + 6 + 1 + 27 + 0 + 0 + 3 = 80
Wie gut ist das Prüfzifferverfahren?
Dieser Zahlendreher wird nicht erkannt.
·1 ·3
PH Karlsruhe Thomas Borys33
Interdisziplinarität
http://de.wikipedia.org/wiki/EAN-L%C3%A4ndernummer
PH Karlsruhe Thomas Borys34
Weitere Prüfzifferverfahren
http://www.bmi.bund.de.
PH Karlsruhe Thomas Borys35
Weitere Prüfzifferverfahren
http://www.bmi.bund.de.
PH Karlsruhe Thomas Borys36
Weitere Prüfzifferverfahren
37
Huffman-Codierung
Pädagogische Hochschule KarlsruheUniversity of Education · École Supérieure de PédagogieInstitut für Mathematik und Informatik Th. Borys
PH Karlsruhe Thomas Borys38
Huffman im Alltag
JPEG
MP3
MPEG
…
ZIP
Telefax
PH Karlsruhe Thomas Borys39
David Huffman
David Huffman[1925-1999]
David Huffman[1925-1999]
www.soe.ucsc.edu/people/faculty/huffman.html
PH Karlsruhe Thomas Borys40
Gliederung Huffman-Codierung
1. Interessante Aspekte des Huffman-Algorithmus für den Mathematikunterricht an der Schule
2. Grundidee des Huffman-Algorithmus
3. Der Huffman-Algorithmus exemplarisch an einem Beispiel
4. Eigenschaften des Huffman-Codes
5. Anwendung beim Telefax
6. Tipp für den Unterricht
1. Interessante Aspekte des Huffman-Algorithmus für den Mathematikunterricht an der Schule
2. Grundidee des Huffman-Algorithmus
3. Der Huffman-Algorithmus exemplarisch an einem Beispiel
4. Eigenschaften des Huffman-Codes
5. Anwendung beim Telefax
6. Tipp für den Unterricht
PH Karlsruhe Thomas Borys41
• besseres Verständnis der „modernen Welt“
• Elementarität
• Schulung des algorithmischen Denkens
• Fundamentale Prinzipien von Komprimierungsverfahren
• Exemplarisch für moderne Strukturen der Mathematik und Informatik
• …
• besseres Verständnis der „modernen Welt“
• Elementarität
• Schulung des algorithmischen Denkens
• Fundamentale Prinzipien von Komprimierungsverfahren
• Exemplarisch für moderne Strukturen der Mathematik und Informatik
• …
Interessante Aspekte des Huffman-Algorithmus für den Mathematikunterricht an der Schule
Heinrich Winter sagt zu den allgemeinen Zielen des Mathematikunterrichts:
„Erscheinungen der Welt um uns, die uns alle angehen oder angehen sollten, aus Natur, Gesellschaft und Kultur, in einer spezifischen Art wahrnehmen und zu verstehen.“
Heinrich Winter sagt zu den allgemeinen Zielen des Mathematikunterrichts:
„Erscheinungen der Welt um uns, die uns alle angehen oder angehen sollten, aus Natur, Gesellschaft und Kultur, in einer spezifischen Art wahrnehmen und zu verstehen.“
Schülerinnen und Schüler sollen „exemplarisch Mathematisierungen in Technik und Naturwissenschaften erleben“
Schülerinnen und Schüler sollen „exemplarisch Mathematisierungen in Technik und Naturwissenschaften erleben“
PH Karlsruhe Thomas Borys42
Grundidee des Huffman-Algorithmus
Verlustfreie KompressionVerlustfreie
KompressionVerlustbehaftete
KompressionVerlustbehaftete
Kompression
KompressionsverfahrenKompressionsverfahren
PH Karlsruhe Thomas Borys43
Grundidee des Huffman-Algorithmus
Verlustfreie Kompression
„Luft“ weglassen
PH Karlsruhe Thomas Borys44
Grundidee des Huffman-Algorithmus
Zusammenfassungskda fjlsakd lksdaj lskdaf lsdakj ölsadk jflaskfj sadflk lkdsjf lksdajf ölsakjf ölsakf lksadjflksajfdölsakdjfl sdlkfj sdalökj fldsak fjsaldök jlsadk jfaölskjd flsadkjfaslökjf aölskjfdiejlökajdsfiealkfjaiejlkasjfoiasejlkf saelifjlask jfsalifdjlksdajf ölskaj ldksaj ldsakfjlisafjlkds lkdsajfiejlkdsajfiesf lksadjfaeslksadjisaejflkdsjf lkdsjfilesajflkd isajfelkjldskjfasilfj esalkjflisadfjelkdjsafi eölakfjesaoi
ölaskjflsakdjfoiasjelkjesalfjafsalfj sdlakf jldsakfjfsaiejlksadjfiesa lkdsaj lidjsfa lkeaj iaejlkdf ielkf ösaldkfjlesajflkd isajfelkjldskjfasilfj esalkjflisadfjelkdjsafi eölakfjesaoi ölaskjflsakdjfoiasjelkjesalfjafsalfj sdlakf jldsakfjfsaiejlksadjfiesa
lkdsaj lidjsfa lkeaj iaejlkdf ielkf ösaldkfjlesajflkd isajfelkjldskjfasilfj esalkjflisadfjelkdjsafi eölakfjesaoi ölaskjflsakdjfoiasjelkjesalfjafsalfj sdlakf jldsakfjfsaiejlksadjfiesa lkdsaj lidjsfa lkeaj iaejlkdf ielkf ösaldkfjlesajflkd isajfelkjldskjfasilfj esalkjflisadfjelkdjsafi eölakfjesaoi ölaskjflsakdjfoiasjelkjesalfjafsalfj sdlakf jldsakfjfsaiejlksadjfiesa lkdsaj lidjsfa lkeaj iaejlkdf ielkf ösaldkfjlesajflkd isajfelkjldskjfasilfj esalkjflisadfjelkdjsafi jldsakfjfsaiejlksadjfiesa lkdsaj lidjsfa lkeaj iaejlkdf ielkf ösaldkfjlesajflkd isajfelkjldskjfasilfj esalkjflisadfjelkdjsafi eölakfjesaoi ölaskjflsakdjfoiasjelkjesalfjafsalfj sdlakf jldsakfjfsaiejlksadjfiesa lkdsaj lidjsfa lkeaj iaejlkdf ielkf ösaldkfjlesajflkd isajfelkjldskjfasilfj esalkjflisadfjelkdjsafi
jldsakfjfsaiejlksadjfiesa lkdsaj lidjsfa lkeaj iaejlkdf ielkf ösaldkfjlesajflkd isajfelkjldskjfasilfj esalkjflisadfjelkdjsafi eölakfjesaoi ölaskjflsakdjfoiasjelkjesalfjafsalfj sdlakf jldsakfjfsaiejlksadjfiesa lkdsaj lidjsfa lkeaj iaejlkdf ielkf ösaldkfjlesajflkd isajfelkjldskjfasilfj esalkjflisadfjelkdjsafi eölakfjesaoi ölaskjflsakdjfoiasjelkjesalfjafsalfj sdlakf jldsakfjfsaiejlksadjfiesa lkdsaj lidjsfa lkeaj iaejlkdf ielkf ösaldkfjlesajflkd isajfelkjldskjfasilfj esalkjflisadfjelkdjsafi eölakfjesaoi ölaskjflsakdjfoiasjelkjesalfjafsalfj sdlakf jldsakfjfsaiejlksadjfiesa lkdsaj lidjsfa lkeaj iaejlkdf ielkf ösaldkfjlesajflkd isajfelkjldskjfasilfj esalkjflisadfjelkdjsafi eölakfjesaoi ölaskjflsakdjfoiasjelkjesalfjafsalfj sdlakf jldsakfjfsaiejlksadjfiesa lkdsaj lidjsfa lkeaj iaejlkdf ielkf ösaldkfjl
Verlustbehaftete Kompression
Unwichtiges weglassen
PH Karlsruhe Thomas Borys45
Grundidee des Huffman-Algorithmus
Verlustfreie Kompression
„Luft“ weglassen
Der Huffman-Algorithmus arbeitet verlustfrei !!!
Der Huffman-Algorithmus arbeitet verlustfrei !!!
PH Karlsruhe Thomas Borys46
Grundidee des Huffman-Algorithmus
ABRAKADABRA
ASCIIA=01000001B=01000010
…
88 Bit
ASCIIA=01000001B=01000010
…
88 Bit
Idee:häufig vorkommende Zeichen bekommen einen kürzeren Code, selten vorkommende Zeichen ein längeres Codewortz.B. A=0 B=11 …..
Idee:häufig vorkommende Zeichen bekommen einen kürzeren Code, selten vorkommende Zeichen ein längeres Codewortz.B. A=0 B=11 …..
PH Karlsruhe Thomas Borys47
Grundidee des Huffman-Algorithmus
Häufig benötigte Bücher stellt man in greifbare Nähe (Augenhöhe)
Selten benötigte Bücher verstaut man weiter oben oder unten
PH Karlsruhe Thomas Borys48
Grundidee des Huffman-Algorithmus
Morse-Code
A · - B - · · · C - · - · D - · ·E · F · · - · G -- · H .... I · · J · --- K - · - L · - · ·M -- N - · O --- P · -- ·Q -- · - R · - · S · · · T -U · · - V · · · - W · -- X - · · -Y - · -- Z -- · ·
Morse-Code
A · - B - · · · C - · - · D - · ·E · F · · - · G -- · H .... I · · J · --- K - · - L · - · ·M -- N - · O --- P · -- ·Q -- · - R · - · S · · · T -U · · - V · · · - W · -- X - · · -Y - · -- Z -- · ·
Der Huffman-Algorithmus erzeugt systematisch einen optimalen Code!
Der Huffman-Algorithmus erzeugt systematisch einen optimalen Code!
Samuel Morse[1791-1872]
Samuel Morse[1791-1872]
www.morsehistoricsite.orgwww.morsehistoricsite.org
PH Karlsruhe Thomas Borys49
Der Huffman-Algorithmus exemplarisch an einem Beispiel
Ziel: Jedem im Text vorkommenden Zeichen wird ein Binärcodezugewiesen!
Ziel: Jedem im Text vorkommenden Zeichen wird ein Binärcodezugewiesen!
A
0 1
00 1 1
B C
D
Wurzel
KnotenKanten
Blätter E0 1
WurzelbaumWurzelbaum
PH Karlsruhe Thomas Borys50
Der Huffman-Algorithmus exemplarisch an einem Beispiel
Text: ABRAKADABRAText: ABRAKADABRA
Häufigkeitsanalyse:Häufigkeitsanalyse:
Buchstaben A B R K DHäufigkeit 5
PH Karlsruhe Thomas Borys51
Der Huffman-Algorithmus exemplarisch an einem Beispiel
Text: ABRAKADABRAText: ABRAKADABRA
Häufigkeitsanalyse:Häufigkeitsanalyse:
Buchstaben A B R K DHäufigkeit 5 2
PH Karlsruhe Thomas Borys52
Der Huffman-Algorithmus exemplarisch an einem Beispiel
Text: ABRAKADABRAText: ABRAKADABRA
Häufigkeitsanalyse:Häufigkeitsanalyse:
Buchstaben A B R K DHäufigkeit 5 2 2
PH Karlsruhe Thomas Borys53
Der Huffman-Algorithmus exemplarisch an einem Beispiel
Text: ABRAKADABRAText: ABRAKADABRA
Häufigkeitsanalyse:Häufigkeitsanalyse:
Buchstaben A B R K DHäufigkeit 5 2 2 1
PH Karlsruhe Thomas Borys54
Der Huffman-Algorithmus exemplarisch an einem Beispiel
Text: ABRAKADABRAText: ABRAKADABRA
Häufigkeitsanalyse:Häufigkeitsanalyse:
Buchstaben A B R K DHäufigkeit 5 2 2 1 1
B2
R2
D1
K1
A5
Huffman-Liste 1
PH Karlsruhe Thomas Borys55
Der Huffman-Algorithmus exemplarisch an einem Beispiel
Huffman-Liste 2
D1
K1 D
1K1
DK2Zusammenführung
B2
R2
A5
D1
K1
DK2
PH Karlsruhe Thomas Borys56
Der Huffman-Algorithmus exemplarisch an einem Beispiel
Huffman-Liste 3
B2
R2
BR4A
5
D1
K1
DK2
PH Karlsruhe Thomas Borys57
Der Huffman-Algorithmus exemplarisch an einem Beispiel
Huffman-Liste 4
BDKR6
B2
R2
BR4
D1
K1
DK2
A5
PH Karlsruhe Thomas Borys58
Der Huffman-Algorithmus exemplarisch an einem Beispiel
Huffman-Liste 5
BDKR6
B2
R2
BR4
D1
K1
DK2
A5
ABDKR11
PH Karlsruhe Thomas Borys59
Der Huffman-Algorithmus exemplarisch an einem Beispiel
CodebaumCodetabelle
0
1
0 11
1
0
0BDKR
6
B2
R2
BR4
D1
K1
DK2
A5
ABDKR11
Buchstaben BinärcodeA 0
PH Karlsruhe Thomas Borys60
Der Huffman-Algorithmus exemplarisch an einem Beispiel
CodebaumCodetabelle
0
1
0 11
1
0
0BDKR
6
B2
R2
BR4
D1
K1
DK2
A5
ABDKR11
Buchstaben BinärcodeA 0B 100
PH Karlsruhe Thomas Borys61
Der Huffman-Algorithmus exemplarisch an einem Beispiel
CodebaumCodetabelle
0
1
0 11
1
0
0BDKR
6
B2
R2
BR4
D1
K1
DK2
A5
ABDKR11
Buchstaben BinärcodeA 0B 100D 110
PH Karlsruhe Thomas Borys62
Der Huffman-Algorithmus exemplarisch an einem Beispiel
CodebaumCodetabelle
0
1
0 11
1
0
0BDKR
6
B2
R2
BR4
D1
K1
DK2
A5
ABDKR11
Buchstaben BinärcodeA 0B 100D 110K 111
PH Karlsruhe Thomas Borys63
Der Huffman-Algorithmus exemplarisch an einem Beispiel
CodebaumCodetabelle
0
1
0 11
1
0
0BDKR
6
B2
R2
BR4
D1
K1
DK2
A5
ABDKR11
Buchstaben BinärcodeA 0B 100D 110K 111R 101
PH Karlsruhe Thomas Borys64
Der Huffman-Algorithmus exemplarisch an einem Beispiel
Codierung des Textes:
A B R A K A D A B R A
Codierung des Textes:
A B R A K A D A B R A
Buchstaben BinärcodeA 0B 100D 110K 111R 101
0 100 101 0 0 00 111 110 100 101
Zusammenfassung des Algorithmus:Eingabe: HäufigkeitstabelleHauptteil: 1. Erstelle die Huffman-Liste.
2. Wiederhole die Zusammenführung der beiden mit der geringsten Häufigkeit beschrifteten Bäume so lange, bis die Huffman-Liste nur noch aus einem Baum, dem Huffman-Baum, besteht.
Ausgabe: Codebaum
Zusammenfassung des Algorithmus:Eingabe: HäufigkeitstabelleHauptteil: 1. Erstelle die Huffman-Liste.
2. Wiederhole die Zusammenführung der beiden mit der geringsten Häufigkeit beschrifteten Bäume so lange, bis die Huffman-Liste nur noch aus einem Baum, dem Huffman-Baum, besteht.
Ausgabe: Codebaum
Interaktives Experimentiersystem: http://www.ziegenbalg.ph-karlsruhe.de/materialien-homepage-jzbg/cc-interaktiv/index.htmInteraktives Experimentiersystem: http://www.ziegenbalg.ph-karlsruhe.de/materialien-homepage-jzbg/cc-interaktiv/index.htm
PH Karlsruhe Thomas Borys65
Eigenschaften des Huffman-Codes
In der Huffman-Liste zwei haben wir „B“ und „R“ zu einem Baum zusammengeführt, wir hätten auch „DK“ und „B“ wählen können.
In der Huffman-Liste zwei haben wir „B“ und „R“ zu einem Baum zusammengeführt, wir hätten auch „DK“ und „B“ wählen können.
Huffman-Liste 2
B2
R2
A5
D1
K1
DK2
PH Karlsruhe Thomas Borys66
Eigenschaften des Huffman-Codes
Codebaum*Codetabelle*
Buchstaben BinärcodeA 0B 110D 1110K 1111R 10
D1
K1
0
1
0 1
1
0
BDKR6
B2
R2
BDK4
A5
ABDKR11
0 1
DK2
PH Karlsruhe Thomas Borys67
Eigenschaften des Huffman-Codes
Codierung* des Textes:
A B R A K A D A B R A
Codierung* des Textes:
A B R A K A D A B R A
Buchstaben BinärcodeA 0B 110D 1110K 1111R 10
0 110 10 0 0 00 1111 1110 110 10
Mittlere Codewortlänge 23/11≅2,1.
Die Formel liefert den Erwartungswert der Zufallsvariablen „Codewortlänge“.
Der Huffman-Algorithmus minimiert die mittlere Codewortlänge und liefert eine möglichst kurze also eine optimalen Codierung.
Mittlere Codewortlänge 23/11≅2,1.
Die Formel liefert den Erwartungswert der Zufallsvariablen „Codewortlänge“.
Der Huffman-Algorithmus minimiert die mittlere Codewortlänge und liefert eine möglichst kurze also eine optimalen Codierung.
i
n
ii lpL ⋅=∑
=1
PH Karlsruhe Thomas Borys68
Eigenschaften des Huffman-Codes
Decodieren wir den Text:
11001110101
Decodieren wir den Text:
11001110101D
0
1
0 11
1
0
0BDKR
6
B2
R2
BR4
D1
K1
DK2
A5
ABDKR11
PH Karlsruhe Thomas Borys69
Eigenschaften des Huffman-Codes
Decodieren wir den Text:
110 01110101
Decodieren wir den Text:
110 01110101D A
0
1
0 11
1
0
0BDKR
6
B2
R2
BR4
D1
K1
DK2
A5
ABDKR11
PH Karlsruhe Thomas Borys70
Eigenschaften des Huffman-Codes
Decodieren wir den Text:
110 0 1110101
Decodieren wir den Text:
110 0 1110101D KA
0
1
0 11
1
0
0BDKR
6
B2
R2
BR4
D1
K1
DK2
A5
ABDKR11
PH Karlsruhe Thomas Borys71
Eigenschaften des Huffman-Codes
Decodieren wir den Text:
110 0 111 0101
Decodieren wir den Text:
110 0 111 0101D KA A
0
1
0 11
1
0
0BDKR
6
B2
R2
BR4
D1
K1
DK2
A5
ABDKR11
PH Karlsruhe Thomas Borys72
Eigenschaften des Huffman-Codes
Decodieren wir den Text:
110 0 111 0 101
Decodieren wir den Text:
110 0 111 0 101D KA RA
0
1
0 11
1
0
0BDKR
6
B2
R2
BR4
D1
K1
DK2
A5
ABDKR11
PH Karlsruhe Thomas Borys73
Eigenschaften des Huffman-Codes
Der Huffman-Code ist präfixfrei.
Vergleich mit dem Telefonsystem:Das Telefonnummernsystem ist auch präfixfrei.
Beispiel: Wählt man 110, „weiß“ das System, dass man fertig mit wählen ist. Das liegt daran, dass
die Nummer 110 nie Anfangsteil (Präfix) einer anderen Nummer ist, z.B. gibt es keine Telefonnummer 11011.
Woran erkennt man einen präfixfreien Code?Ein Codebaum liefert einen präfixfreien Code, wenn die zu codierenden Zeichen nur in
den Blättern des Baumes stehen. Beim Morsecode ist dies beispielsweise nicht der Fall, daher muss nach jedem Buchstaben eine kleine Pause mitgeteilt werden.
Der Huffman-Code ist präfixfrei.
Vergleich mit dem Telefonsystem:Das Telefonnummernsystem ist auch präfixfrei.
Beispiel: Wählt man 110, „weiß“ das System, dass man fertig mit wählen ist. Das liegt daran, dass
die Nummer 110 nie Anfangsteil (Präfix) einer anderen Nummer ist, z.B. gibt es keine Telefonnummer 11011.
Woran erkennt man einen präfixfreien Code?Ein Codebaum liefert einen präfixfreien Code, wenn die zu codierenden Zeichen nur in
den Blättern des Baumes stehen. Beim Morsecode ist dies beispielsweise nicht der Fall, daher muss nach jedem Buchstaben eine kleine Pause mitgeteilt werden.
B C
0
0 01
1
1
DA
präfixfreipräfixfrei
N N
⋅
⋅ --
-
⋅
MI
E T
MorsecodeMorsecode
PH Karlsruhe Thomas Borys74
Anwendungsbeispiele
JPEG
MP3
MPEG
…
ZIP
Telefax
PH Karlsruhe Thomas Borys75
Telefax-Codierung
1728 Pixel pro Zeile
1011 Zeilen
Speicherplatzbedarf:1011*1728=1.747.008 Bit (ca. 1,7 MBit)Übertragung würde 1747008 bit/2400 bit/sec=727sec
bzw. 12 min dauern.
PH Karlsruhe Thomas Borys76
Lauflängencodierung
7w, 4s, 8w, 10s, 4w, 3s, 7w, 3s, 8w, 3s, 4w, 3s, 5w, 3s, 5w, 6s, 5w, 16s, 2w, 3s, 8w, 3s, 7w
Lauflängencodierung (run-length)
Häufigkeitsanalyse:
0
1
2
3
4
5
6
7
8
3s 4w 8w 7w 5w 10s 4s 6s 16s 2w
PH Karlsruhe Thomas Borys77
Telefax
Häufigkeitsanalyse
Huffman-Algorithmus
PH Karlsruhe Thomas Borys78
Telefax-Code:(Ausschnitt)
Lauflänge Codes für Schwarz1s 010
2s 11
3s 10
4s 011
5s 0011
6s 0010
7s 00011
8s 000101
9s 000100
10s 0000100
11s 0000101
12s 0000111
13s 00000100
14s 00000111
15s 000011000
16s 0000010111
17s 0000011000
18s 0000001000
19s 00001100111
20s 00001101000
PH Karlsruhe Thomas Borys79
Effizienz der Kompression
Es lassen sich Kompressionsraten von bis zu 1:50 erreichen.
Ohne Kompression Mit Kompression
Datenmenge
Übertragungs-dauer
1,7 MBit 0,04 MBit
12 min (720 sec) 15 sec
PH Karlsruhe Thomas Borys80
Werbeslogan
Karlsruhevielvorvieldahinter
ASCII-Code:01101011 01100001 01110010 01101100 01110011 01110010 01110101 01101000 01100101 01110110 01101001 01100101 01101100 01110110 01101111 01110010 01110110 01101001 01100101 01101100 01100100 01100001 01101000 01101001 01101110 01110100 01100101 01110010
Huffman-Codierung:11011 0111 101 001 11110 101 0110 1100 100 010 000 100 001 010 11101 101 010 000 100 001 11010 0111 1100 000 11100 11111 100 101
Tipp für den Unterricht
81
Verschlüsselungs-schablonen
Pädagogische Hochschule KarlsruheUniversity of Education · École Supérieure de PédagogieInstitut für Mathematik und Informatik Th. Borys
PH Karlsruhe Thomas Borys82
Verschlüsselungsschablonen
PH Karlsruhe Thomas Borys83
Verschlüsselungsschablonen
PH Karlsruhe Thomas Borys84
Verschlüsselungsschablonen
PH Karlsruhe Thomas Borys85
Verschlüsselungsschablonen
K
PH Karlsruhe Thomas Borys86
Verschlüsselungsschablonen
K A
PH Karlsruhe Thomas Borys87
Verschlüsselungsschablonen
K A R
PH Karlsruhe Thomas Borys88
Verschlüsselungsschablonen
K A R
L
PH Karlsruhe Thomas Borys89
Verschlüsselungsschablonen
K A R
L
S
PH Karlsruhe Thomas Borys90
Verschlüsselungsschablonen
K A R
L
S
R
PH Karlsruhe Thomas Borys91
Verschlüsselungsschablonen
K A R
L
S
R U
PH Karlsruhe Thomas Borys92
Verschlüsselungsschablonen
K A R
L
S
R U
H
PH Karlsruhe Thomas Borys93
Verschlüsselungsschablonen
K A R
L
S
R U
H
E
PH Karlsruhe Thomas Borys94
Verschlüsselungsschablonen
PH Karlsruhe Thomas Borys95
Verschlüsselungsschablonen
PH Karlsruhe Thomas Borys96
Verschlüsselungsschablonen
K E
N
N E
N K
A R
PH Karlsruhe Thomas Borys97
Verschlüsslungsschablonen
PH Karlsruhe Thomas Borys98
Verschlüsslungsschablonen
PH Karlsruhe Thomas Borys99
Verschlüsselungsschablonen
L
S
R U
H
E
L I E
PH Karlsruhe Thomas Borys100
Verschlüsselungsschablonen
PH Karlsruhe Thomas Borys101
Verschlüsselungsschablonen
PH Karlsruhe Thomas Borys102
Verschlüsselungsschablonen
B E
N
PH Karlsruhe Thomas Borys103
Verschlüsselungsschablonen
B E
N A
B C
D
E F
PH Karlsruhe Thomas Borys104
Verschlüsselungsschablonen
„bklaer snkale brsnuc nrdhue eenfkh laieer “
B K L A E R
S N K A L E
B R S N U C
N R D H U E
E E N F K H
L A I E E R
PH Karlsruhe Thomas Borys105
Verschlüsslungsschablonen
„bklaer snkale brsnuc nrdhue eenfkh laieer “
B K L A E R
S N K A L E
B R S N U C
N R D H U E
E E N F K H
L A I E E R
PH Karlsruhe Thomas Borys106
Verschlüsselungsschablonen
1 2 3 7 4 14 5 6 8 5 2
7 8 9 9 6 3
3 6 9 9 8 7
2 5 8 6 5 4
1 4 7 3 2 1
PH Karlsruhe Thomas Borys107
Verschlüsselungsschablonen
Arbeit einer Schülerin
108
Kryptographie und Codierung für den Mathematikunterricht
Pädagogische Hochschule KarlsruheUniversity of Education · École Supérieure de PédagogieInstitut für Mathematik und Informatik Th. Borys
Danke für Ihre Aufmerksamkeit
Danke für Ihre Aufmerksamkeit