kryptographie und codierung für den mathematikunterricht · 1 kryptographie und codierung für den...

Post on 15-Aug-2019

228 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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

top related