58
Primena kodova u savremenim telekomunikacionim sistemima Dušan Drajić, Predrag Ivaniš Kodovi za prenos i zapis (TE5KPZ) Kodovi u računarskim telekomunikacijama (RI5KRT) ETF, Beograd

Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

  • Upload
    others

  • View
    50

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Primena kodova u savremenim telekomunikacionim sistemima

Dušan Drajić, Predrag IvanišKodovi za prenos i zapis (TE5KPZ)

Kodovi u računarskim telekomunikacijama (RI5KRT)ETF, Beograd

Page 2: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

MPEG1. do irreversible compression oncolour channels (not on shade channel)2. for each block of 16x16 in a frame, try to find a "similar" block in a previous (or future)3. store the differences between blocks instead of storing entire blocks4. Huffman encode the whole thing

JPEG:1. do irreversible compression oncolour channels2. compute the Discrete Cosine Transform for3. "reduce" the DCT output: more reduction4. Huffman encode the reduced output

KOMPRESIJA:- Nedestruktivna kompresija pisanog teksta ili slike obično se zasniva na LZ kodovima (LZ77, LZW) ili kombinaciji LZ/Hafmen.

Statističko kodovanje

Page 3: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Zašto koristiti kriptografiju?

Osnovni sigurnosni problemiTajnost

Da li možete biti sigurni da neko nepozvan ne može pristupiti vašim podacima?

IntegritetDa li su podaci koje ste primili modifikovani od strane “trećeg” lica?

AutentičnostDa li je neko ko pristupa vašim podacima/resursima zaista osoba kojom se predstavlja?

Page 4: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Algoritmi sa simetričnim ključevima

Isti ključ se koristi za šifrovanje i dešifrovanje dokumenta.Postupak je veoma brz i jednostavan (baziran na permutacijama i sabiranju po modulu dva).Iz šifrovanog teksta je veoma teško rekonstruisati originalnu poruku ili odrediti primenjeni ključ.

tekst tekstključ ključ

šifrovantekst

Page 5: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

DES: Data Encryption Standard

Zvaničan standard za enkripciju u SAD, razvijen od strane NSA. standardizovan od strane NIST (National Institute of Standards and Technology) 1993 godine.Pri šifrovanju i dešifrovanju se koristi isti, 56-bitni ključ a šifrovanje se obalja na 64-bitnom bloku podataka.sukcesivne zamene, transpozicija, brojna sabiranja po modulu 2,...algoritam je složen (konfuzija) i svaki ulazni bit utiče na svaki od64 izlazna bita (difuzija). Koliko je DES siguran?

Test DES algoritma: fraza (“Strong cryptography makes the world a safer place”) šifrovana 56-bitnim ključem dešifrovana je (primenom brutalne sile) za 4 meseca,Nije poznato da postoji drugi način za dešifrovanje ako ključevi nisu poznati (tzv. “backdoor” pristup).

Page 6: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Realizacija DES algoritma

- inicijana permutacija

-16 puta se poziva jedna ista funkcija za različite

ulazne parametre

- pritom se svaki put kao jedan od parametara koristi 48-bitni

ključ izveden iz osnovnog 56-bitnog ključa

operacije u DES-u

Page 7: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

3-DES

3-DES: triple DES Koristi tri ključa (sekvencijalno), Efektivna dužina ključa 112 bita,Koristi tzv. cipher-block chaining

osnovni ključ se koristi prvi put, dok je zatim iskorišćen princip autoključa,IV (initialization vector) označava početni ključ, dok susledeći ključevi sami poslatikriptogrami,u ovome slučaju greška priprenosu utiče na tekući i sledećiblok, ali se ne prostire dalje.

Page 8: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

AES, BlowfishRijndael ili AES (Advanced Encryption Standard)

Naslednik DES-a, standardizovan od strane NIST 2001 godine,Blokovi 4x4 bajta (128 bita) u 4 faze, dužina ključa 128-256 bita, Formira se matrica ključeva, svaki je izveden iz osnovnog ključa,Dodavanje ključa, nelinearna supstitucija, pomeranje, linearna transform.

Blowfish Dužina ključa 128 bita, optimizovan za 32-bitne mikroprocesore.

Page 9: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Prednosti i mane

Proces šifrovanja/dešifrovanja je veoma brz i pogodan za velike količine podataka.Jedini način da se dođe do šifre (ako nije poznata) je metod “grube sile”, tj. isprobavanja svih mogućih kombinacija.Trenutna preporuka je da šifra bude duga bar 90 bita – smatra sa da su tako podaci zaštićeni bar 20 godina.Jedini (ali veoma ozbiljan) problem je - kako prijemnoj strani dostaviti ključ? Problem presretanja šifre postaje ključan.

Page 10: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Algoritmi sa asimetričnim ključevima

Potpuno nov pristup u odnosu na DES, AESTajni ključ nije poznat čak ni onome kome je poruka namenjena!Ako se štiti tajnost javnim ključem (dostupan svima) se šifruje a tajnim dešifruje. Ako se štiti autentičnost, postupak je obrnut.Nema potrebe za “sigurnim kanalom” kojim bi se dostavljao ključ onome ko treba da dešifruje dokument.

tekst tekstjavni ključ tajni kjuč 2

šifrovantekst

Page 11: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Algoritmi sa asimetričnim ključevima

Javni i tajni ključ su povezani na osnovu neke matematičke relacijeNa osnovu poznatog “tajnog ključa” lako je odrediti “javni ključ”. Obrnuti postupak nije jednostavan.Ovim je rešen problem distribucije ključeva a da nivo zaštite ne bude doveden u pitanje.Bitni događaji i najpoznatiji algoritmi:

1967., David Kahn 'The Codebreakers‘, podstiče razvoj kriptografije1976., Stanford, Whitfield Diffie i Martin Hellman: 'New Directions in Cryptography' - Diffie-Hellman761977., MIT, Ronald L. Rivest, Adi Shamir i Leonard M. Adleman: RSA

Page 12: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

RSA: formiranje javnog i tajnog ključa

1. Izabrati dva velika prosta broja p, q. (npr., svaki predstaviti sa po 1024 bita)

2. Izračunati n = p x q, z = (p-1) x(q-1)

3. Izabrati e (pri čemu je e<n) tako da nema zajedničkih faktora sa z (e, z su “relativno prosti”).

4. Izabrati d tako da je exd-1 deljivo sa z bez ostatka(tj. ed mod z = 1 ).

5. Javni ključ (Public key) je tada (n,e).Tajni ključ (Private key) je (n,d).

Page 13: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

RSA: Šifrovanje, dešifrovanje

1. Da bi se šifrovala poruka m, treba izračunatic = m mod ne (tj. ostatak pri deljenju m sa n)

2. Da bi se dešifrovala sekvenca c, treba izračunatim = c mod nd (tj. ostatak pri deljenju c sa n)d

e

Ako je p=5, q=7 tada je n=35, z=24. Neka je još e=5 d=29.(tada su e, z relativno prosti i ed-1 deljivo sa z bez ostatka)

m me

c = m mod ne12 1524832 17c m = c mod nd

17 481968572106750915091411825223072000 12cd

šifrovanje:

dešifrovanje:

Page 14: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

RSA: Sposobnost zaštite

Ako su p i q 1024 – bitni prosti brojevi, najmoćnijiračunar današnjice bi faktorizaciju 2048 - bitnog brojapxq radio duže od životnog veka Zemaljske kugle, a teorija još uvek ne nudi ništa više od Eratostenovog sita. Time je invertovanje kriptirajuće funkcije praktičnoonemogućeno.

Ali, kako je moguće odabrati slučajni 1024 - bitniprost broj, tj. kako znati da je neki veliki broj prost?Problem nalaženja 1024 - bitnog prostog broja nije ništalakši nego spomenuta faktorizacija! Problemi su ekvivalentni!

Page 15: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Ipak?

Ipak postoji mogućnost da se brzo proveri da li je veliki broj prost ili ne – ovu mogućnost pruža mala Fermatova teorema (Pierre Fermat):

Neka je p prost broj i a prirodan broj koji nije deljiv sa p.Tada je broj a p-1-1 deljiv sa p. Ron Rivest je, ispitavši više od 700,000,000 256-bitnih brojeva, empirijski zaključio da je verovatnoća da 256-bitni broj p zadovoljava tvrdnju Male Fermatove teoreme za a=2, a da ujedno nije prost, manja od 10-6 !

Činjenice512-bitne šifre nisu više sigurne, 1024-bitne odolevaju

napadima, Preporučuje se korišćenje 2048-bitnih,Preporučuje se da se fajl sa “privatnom šifrom” čuva šifrovan,Zbog svega navedenog, nesimetrični sistemi su veoma

zahtevni po pitanju procesorskog vremena.

Page 16: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Pribegava se raznim trikovima, npr. tajnost / autentičnost:

Šifrovaniključ sesije

Šifrovani tekst

randomsession key

ks ks

javni ključ tajni ključ

digitalnipotpis

poređenje

hash hash

javni ključ tajni ključ

Page 17: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

PGP standard

• PGP (Pretty Good Privacy) najpoznatiji je softver za kriptovanje. • Tvorac: Philip Zimmermann• Za generisanje ključeva koristi RSA algoritam (modifikaciju). Niski, visoki i “vojni” stupanj zaštite - ključ od 512, 768 i 1024 bita, respektivno. Ključevi se generišu slučajnim pritiskanjem tastature (meri se vreme između dva klika,...).• Potpisivanje poslatih dokumenata - PGP signature.

• Dve verzije PGP-a:• Phil Zimmermann, 1991. implem. RSA kroz biblioteku MPILIB (PGP inc).• MIT, patent na RSA od 1983, biblioteka RSADEF (firma: RSADSInc), poslednji komercijalan PGP 4.0, za privatne potrebe PGP 2.6.2 (MIT).

• RSADSinc ima ekskluzivno pravo na RSA algoritam, zabrana izvoza uz USA • MPLIB je ipak “procurio” a RSADSinc ni MIT nemaju ekskluzivu van USA • Norvežanin Stale Schumacher pravi PGP zasnovan na MPILIB, ilegalan u USA• Zabrane važe samo na programsku implementaciju a ne na sam RSA algoritam!

Page 18: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Hash funkcije

tekstSažetak fiksne dužine“hashing”

funkcija

Cilj je da se pomoću nekog jednostavnog mehanizma generiše sažetak fiksne dužine koji će jednoznačno odgovarati originalnoj poruci, po principu otiska prsta (“fingerprint”).

Na ovaj način se od dokumenta formira svojevrsna check-suma.Obrnut postupak nije moguć, jer preslikavanje nije 1:1 već inf:1.Pored toga, nije poznat jednostavan algoritam na osnovu koga bi se,

polazeći od sažetka, generisao dokument kome taj sažetak odgovara. Stoga se može smatrati da je ovo nekakvo “jednosmerno šifrovanje”.Algoritmi: CRC, MDn, SHA-1,...

Page 19: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

MD5 algoritamCRC: Cyclic Redundancy Check

generiše ostatak pri deljenju generišućim polinomom odgovarajućeg cikličnog koda -> principski generiše sažetak fiksne dužine,

lako je pronaći dve sekvence koje rezultuju istim ostacima pri deljenju.

MD5: Message Digests 5Izumeo ga Ronald Rivest sa MIT-a (jedan od autora RSA),MD4 je bio veoma brz ali na samoj granici sigurnosti, MD5 u 5 koraka generiše sažetak (digest) dužine 128 bita,još uvek nisu pronađene dve poruke kojima bi odgovarao isti rezultat

nakon primene MD5 algoritma; takodje – analitičko rešenje ovog problema je praktično neizvodljivo, čak i kada se računa za poruku od nekoliko megabajta, sažetak koji je

rezultat MD5 postupka generiše jednoznačnu 128-bitnu predstavu, Ako neko presretne vašu poruku i modifikuje je, praktično je nemoguće

da se MD5 sažetak ne izmeni! (zgodno i pri download-u).

Page 20: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

MD5 opisMD5 postupak:

na poruku dodaje se proširenje (obično oblika 100...0) tako da ukupna dužina bude k*512-64 bita .

zatim se dodaje 64-bitna reprezentacija dužine poruke.

inicijalizuju se četiri 32-bitne reči naA=67452301, B=EFCDAB89, C=98BADCFE i D=10325467

poruka se deli na 512-bitne blokove i procesira u 4 ciklusa po 16 operacija.

Osnov je nelinearna funkcija F, Ki je 32-bitna konstanta, Mi je 32-bitni deo poruke. Sažetak je na kraju sadržan u registru u kome se nalaze A, B, C, D.

Page 21: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

SHA-1 algoritam

SHA-1 Secure Hash Algorithm:US standard, dužina generisanog sažetka 160 bitaMD5 je optimizovan da radi brzo, danas na samoj granici upotrebljivosti.ovim je rešen problem “paradoksa rođendana” u slučaju hash funkcija.praktično rešen problem autentičnosti (ili integriteta poruka) jer se

smatra da Internetu ne postoje dva fajla koja bi imala isti 160-bitni sažetak generisan na osnovu SHA-1.

zgodno i za deponovanje password-a u baze podataka bez čuvanja “teksta” ili često se kombinuju sa DES, AES, RSA algoritmom za:

• generisanje individualnih šifara fiksne dužine na osnovu nasumičnog pritiskanja tastature. • realizaciju digitalnih potpisa

Page 22: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

SHA-1 opisSHA-1:

isto kao kod MD5 poruka se proširuje i deli na blokove od po 512 bita,umesto A, B, C, D sada pet 32-bitnih reči,obrada u četiri ciklusa sa po 20 koraka u svakom ciklusu,F je funkcija koja se menja od ciklusa do ciklusa,Kt su konstante a Wt delovi poruke koja se obrađuje.

Proces obrade poruke u ciklusu: poruka se odeli u 16 reči W0- W15od 17-80 koraka Wt=f(W0-Wt-1)Sažetak je na kraju sadržan u registru u kome se nalaze A, B, C, D, E.

Page 23: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Poređenje MD5, SHA-1, SHA-2

SHA-2: težina dobijanja identičnog sažetka dužine n za dve različite poruke

je približno oblika 2S=2n/2, S je faktor sigurnosti – za MD5 je S=64, za SHA-1 je S=80,SHA2/256 – dužina sažetka n=256 bita, S=128,SHA2/384 – dužina sažetka n=384 bita, S=192,SHA2/512 – dužina sažetka n=512 bita, S=256.

44Primitivnih logičkih funkcija

80 (4x20)64 (4x16)Broj koraka

264-1-Najveća dužina poruke

464Broj konstanti

512 bita512 bitaDužina info. bloka

160 bita128 bitaDužina sažetka

SHA-1MD5

Poređenje efikasnosti hash postupaka:

Page 24: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Klasifikacija zaštitnih kodova

Blok kodoviLinearni blok kodovi (n,k)

Hemingovi kodoviCiklični kodovi

Reed-Solomon kodoviBCH kodoviCRC (Cyclic Redundancy Check) kodovi

Nelinearni blok kodoviKonvolucioni kodovi (n, k, m)Složeni kodovi

Kaskadni kodovi (spoljni + unutrasnji kod) Produktni kodoviBušeni (punctured) konvolucioni kodovi

RCPC (rate compatible punctured convolutional)Turbo kodoviLDPC (Low-density parity-check) kodovi

Page 25: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Hemingovi kodovi

Kompromis:- efikasnost- performanse

Kodni dobitak: (coding gain)- G1=0dB- G2=2dB- G3=1.1dB

Kodni količnik:R1=1/1=100%R2=4/7=57.14%R3=11/15=73.33%

Page 26: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Rid-Solomonovi kodovi

Nebinarni kodovi Porastom odnosa k/n degradiraju se performanse ali je strmina krive približnaKod (255,223) ima najbolje performanse od svih kodova sa količnikom 87.5%Kodovi sa većom dužinom kodne reči u principu imaju bolje performanse

Page 27: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Konvolucioni kodovi

GSM sistem – CC(2,1,5)Digital Video Broadcasting Terrestrial (DVB-T) – CC(2,1,7)Universal Mobile Telecommunication System (UMTS) – CC(2,1,9)

Page 28: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Kaskadni kodovi (RS+CC)

RS koder Interliver Konvolucionikoder

Viterbi dekoder Deinterliver RS dekoder

Kanal

Input

Output

Kaskadnom vezom dva jednostavna koda postižu se dobre performanseInterliver pomaže da se eliminišu paketske greškeNakon što CC obori BER ispod 10-2, RS kod dovede do veoma strmog pada

Page 29: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Satelitski sistemi - interferencije PLC sistemi – impulsni šumSat

T1 R1

RR1 RR2

Page 30: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Turbo kodovi

+

+

+

+

Interliver

y1

y2

y3

x

xLogMAPdekoder 1

LogMAPdekoder 2

Interliver

Deinterliver

Interliver

Deinter-liver

r1

r0e1Λ

0~r

r2

e2Λ

2Λ x̂

C. Berrou, A. Glavieux, P. Thitimajshima, "Near Shannon Limit Error–Correcting Coding and Decoding: Turbo Codes", Maj 1993.Iterativno dekodovanje, algoritam dekodovanja može biti:

• MAP (Maximum A-Posteriori Algorithm)• SOVA (Soft Output Viterbi Algorithm)

Page 31: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Performanse turbo kodovaPerformanse zavise od:

- broja iteracija (optimalno 8-18)- dužine interlivera (1024-65000)

Povećanje dužine interlivera i broja iteracija unosi dodatno kašnjenjeObično se kombinuju sa punktiranjem

Page 32: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Poređenje raznih kodnih šema

Page 33: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

LDPC kodovi

1962, Gallager je definisao posebnu klasu kodova zasnovanu na matricama provere na parnost sa niskom gustinom (low density parity check matrices).1996, LDPC su ponovo otkrili D. MacKay i R. Neal. Pokazano je da ovi kodovi imaju veoma veliki kodni dobitak ako se dekoduju iterativno, po soft principu.LDPC kodovi mogu dostići performanse turbo kodova uz znatno niže troškove implementacije.Jedna posebna klasa LDPC kodova je samo 0.0045dB daleko od Shannon-ove granice. Ipak, u pitanju je iregularni kod sa kodnim količnikom 1/2 sa veličinom bloka od 107 bita. Potrebno je više od 1000 iteracija da bi se dostigao ovaj rezultat.

Page 34: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Modeliranje blok kodova grafom

1 0 0 1 0 1 1 0 1 0 1 1 1 0 0 0 1 0 1 1 1

H =

1 1 4 6 7

2 2 4 5 6

3 3 5 6 7

s : 0s : 0s : =0

r r r rr r r rr r r r

+ + + =+ + + =

+ + +

Promenljive(variable nodes)

Check

r1 r2 r3 r4 r5 r6 r7

s1 s2 s3

0Tr H⋅ =Pri dekodovanju n-k jednačina sa n nepoznatih

Provere(check nodes)

Low density:- Broj jedinica u svakoj koloni wk<<n- Broj jedinica u svakoj vrsti wk<<n-k

Parity check matrica

Ako je broj jedinica mnogo manji od broja nula a broj jedinica u svakoj koloni nije isti kod je iregularan. U suprotnom LDPC kod je regularan.

Page 35: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Iterativno dekodovanje

4 5 6 7

10

12

14 15

13

16

25

1 1 0 0 1 0 11 1 0 0 1 1

1 - 6 -1 +10 +2 -1 -2-5

::

( ) :

xxxxxλ

i=I

( )xxλDetectorDetector DecoderDecoder

xx ,xx mmyChannelChannel i=0

i>0 '( )xxλ

EncoderEncoderm x

( 0 | )( ) log( 1| )i i

ii i

P x yxP x y

λ=

==

Page 36: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Soft Message Passing Algorithm

For each connected variable-check pair (r, s):Find product of reliability signs of all variables connected to

check node r (excluding node s).Find the magnitude of the smallest reliability of variables

connected to check node s (excluding node r).Combine sign and minimum reliability to update reliability of

the variable node.Repeat until all parity checks are satisfied

Page 37: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Primer soft dekodovanja

-6 1 0 +2 1 ? -5

1 -1 0 +2 -3 ? 1

1 1 +10 0 -3 ? -5

1 1 0 0 1 -2 1

1

1

1 1 1

min(| 6 |, | 2 |, | 5 |) 2( 6) ( 2) ( 5) 1

MS sign sign signA S M

= − + − == − ⋅ + ⋅ − = += ⋅

0 0 1 2 3A A A A A= + + +

0 ' 2 2 1 3 4A = − + + + =

1 1 0 0 1 0 11 1 0 0 1 1 1

- 6 -1 +10 +2 -1 -2 -5

::

( ) :

xxxxxλ

Page 38: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

LDPC kodovi - performanse

2 2.5 3 3.5 4 4.5 5 5.5 6 6.510

-7

10-6

10-5

10-4

10-3

10-2

10-1

100

Eb/N0 (dB)

Pro

babi

lity

of

Bit

Err

or

Random MacKay (4376, 4095, 0.94, 4)Random MacKay (1998, 1776, 0.8889, 4)Random MacKay (4095, 3557, 0.82, 4)Random Irregular (4376, 4096, 0.94, 3,4,5)PG(2,32) (1057, 813, 0.76, 33) PG PlanePG(2,64) (4161, 3431, 0.82, 65)Unital(2, 25)-(525, 420, 0.80, 6)Unital(2, 64) (3648, 3135, 0.86, 9)Unital(2, 81) (5913, 5256, 0.89, 10)Oval(2, 16) (255, 190, 0.75, 8)Oval(2, 64) (4095, 3430, 0.84, 32)

2 2.5 3 3.5 4 4.5 5 5.5 6 6.510

-7

10-6

10-5

10-4

10-3

10-2

10-1

100

Eb/N0 (dB)

Pro

babi

lity

of

Bit

Err

or

Random MacKay (4376, 4095, 0.94, 4)Random MacKay (1998, 1776, 0.8889, 4)Random MacKay (4095, 3557, 0.82, 4)Random Irregular (4376, 4096, 0.94, 3,4,5)Girth-Eight Lattice (4811, 3682, 0.77, 4)Girth-Eight Lattice (3801, 3260, 0.86, 3)

Girth-eight Integer Lattice CodesFinite Geometry LDPC Codes

Page 39: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Trelis kodovana modulacija (TCM)

Klasični kodovi su optimalni samo za BPSK, QPSK

Za konstelacije višeg reda potrebno je združeno obaviti kodovanje i modulaciju.

G. Ungerboeck, 1982., “Channel coding with multilevel/phase signals”

Ideja je da se ista spektralna efikasnost može postići za manje snage signala i to prelaskom na konstelacije višeg reda.

Demodulacija se obavlja pomoću trelisa, modifikovanim Viterbi algoritmom.

2 2

21 1

* 2( ) 1/ 2 2

0 0

1log ( ) logk ia w a wM M

Q k Mk i

C M E eM

σ

+ − −− − −

== =

= −

∑ ∑

Page 40: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Trelis kodovana modulacija (TCM)

Poboljšanje performansi zavisi od primenjene modulacije (za 2 bit/s/Hz prelaskom sa QPSK, 8PSK + CC 2/3 bolji rezultati a 16QAM sa R=1/2 još bolji).

16QAM može i u kombinaciji sa kodom 3/4 za efikasnost od 3 bit/s/Hz.

Povećanje broja stanja je bitnije kod konstelacija višeg reda.

KODERI SELEKTORSIGNALA

ej0

ejπ/4

ejπ/2

.

.

.

Page 41: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Opseg 300Hz-3400Hz, nosilac na 1800 Hz, asinhrono/sinhrono.Snaga se ne može bitno povećavati, povremeno impulsne smatnje.Potiskivanje ISI, adaptivna ekvalizacija, brojne A/D i D/A konverzije.Standardno ARQ procedure, povratni kanal – duplex, half-duplex.Max. simbolska brzina oko 3000 s/sec pa mora višenivoski.

• 2400 b/s - QPSK, 4800 b/s – 8-PSK (1600 bauda)• 9600 b/s – TCM, 32-QAM + CC 4/5 isto kao 16-QAM ali se u stvari

šalje 12000 b/s od čega je 9600 b/s informacioni deo• 14400 b/s – TCM sa 128-QAM, bolja ekvalizacija ovo omogućava• 33600 b/s – V34 protokol. Preko trelis sekvence se snimi linija pa ako ne zadovolji protok se spušta. TCM, CRC, automatska ekvalizacija.

Kompresija podataka sa max 115 kb/s -> 33.6 kb/s (V42, V42bis).• 56 kb/s – kada je link delimično digitalan, ali ni tada ne može 64 kb/s zbog filtra (3.4 kHz).• DSL modemi – kompletna primarna grupa (2048 kb/s) kroz jednu

paricu (HDSL, ADSL). Ako se udvoji dve parice može se primeniti neka od space-time tehnika.

Modemi za telefonske kanale

Page 42: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Turbo trelis kodovana modulacija (TuCM)

StandardniTurbo koder

Demulti-plekser Interliving Mapiranje

signala

Punktiranje

m m−

m

kd ( ),k kA B

,1kd

,k m md −

1,1kc

1,k m mc −

2,1kc

2,k m mc −

QAMdemodulator

RačunanjeLLR

koeficijenata

kX

kY

Deinter-living

Demulti-plekser

Turbodekoder

,1( )kuΛ

,( )k iuΛ

,( )k nuΛ

ˆkd

( )kdΛ

1( )kcΛ

2( )kcΛ

00 01 1011

10

11

01

00

, ,t t I t Qx x jx= +

, ,t t I t Qr r jr= +Q

I,1tv ,2tv

,3tv ,4tv

2,

2

,2

,2

,

2,

2

,2

,2

,

( )

2; 1

, ( )

2; 0

( )

2; 1

, ( )

2; 0

( ) log , 1, 2

( ) log , 3, 4

t I I

I t i

t I I

I t i

t Q Q

Q t i

t Q Q

Q t i

r x

x vt i c r x

x v

r x

x vt i c r x

x v

ev K i

e

ev K i

e

σ

σ

σ

σ

−−

=

−−

=

−−

=

−−

=

Λ = =

Λ = =

Page 43: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Poređenje nekodovanog, TCM i TuCM

Page 44: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Potencijal MIMO sistema

Ako na predajnom i prijemnom kraju MIMO sistema postoji veći broj antena, primljeni signali se mogu kombinovati na optimalan način, ostvarujući veći kapacitet kanala i manju verovatnoću greške pri prenosu.

Na ovaj način se postiže teorijski linearan rast kapaciteta MIMO sistema sa povećanjem broja predajnih i prijemnih antena.

Ova osobina je naročito bitna s obzirom da kapacitet sa povećanjem emitovane snage signala raste po logaritamskom zakonu.

Na ovaj način je moguće “preskočiti” ograničenje određeno Šenonovom granicom.

Page 45: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Feding u MIMO sistemu

Brzina fluktuacije pojačanja određena je vremenom koherencije kanala.U slučaju mobilnog radio-kanala ključna veličina je Doplerova učestanost koja

zavisi od frekvencije nosioca f0 i brzine kretanja korisnika:1.5 /(2 )C DT fπ≈/D Cf vf c=

Page 46: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

BLAST strukture

Page 47: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Space-time block codes (STBC)

Alamutijeva šema:

Space-TimeEncoder ...

Space-TimeCode matrix

Spac

e

Time

Space-TimeDecoder

Data RecoveredData

Page 48: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Space-time block codes (STBC)

Performanse Alamutijeve šeme:Performanse Alamutijeve šeme:

Page 49: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Kodovi bazirani na strukturi trelisa(STTC,STTTC)

Space-time trellis codes:

Page 50: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

UMTS sistem

MIMO tehnologije u 3G sistemu – UTRA/FDD, QPSK:STTD – open-loop space time kod na nivou bitaClose-loop mod 1 – povratna informacija o faziClose loop mod 2 – povratna inf. i amplitudi i fazi

Page 51: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

336Informacioni blok

336

Formiranje CRCdodatka

16 CRC

352 * B

Spajanje Binformacionih blokova

Turbo kodovanjeTC (3,1,4)

B = 0, 1, 2, 4, 8, 12

1056 * B

1056 * B

Dodavanjeslepih bita

12*[B/9]Slepi biti

1056 * B + 12*[B/9] + NRATE

Podešavanjeveličine rama

1056 * B + 12*[B/9] + NRATE

Prvi interliving

148 Transportni blok

14816 Formiranje CRCdodatka

CRCSpajanje B

transportnih blokovaB = 0, 1164 * B

164 * B8*B

Dodavanjeslepih bita

Konvolucionokodovanje CC(3,1,9)

516 * BPodešavanje velič

ine rama

(516+NRM) * BDodavanje DTX

indikacije

(516+NRM) * B + NDTX

(516+NRM) * B + NDTX

Prvi interliving

#1

DCCHDCDH

#2 #4#3#1 #2 #1 #2Multipleksiranje

transportnih kanala#1 #1 #2 #2 #1 #3 #2 #4

Segmentacija

DodavanjeDTX indikacije

DCH 1 DCH 2 DCH 3 DCH 4Segmentacija ufizičkom kanalu

#1 #P. . . #1 #P #1 #P #1 #P. . . . . . . . .+ drugi interliving

Mapiranje u fizičkom kanalu

Radio ram #1/DCH1 Radio ram #1/DCH2 Radio ram #1/DCH3 Radio ram #1/DCH4

Radio ram #2/DCH1

Radio ram #P/DCH1

Radio ram #2/DCH2

Radio ram #P/DCH2

Radio ram #2/DCH3

Radio ram #P/DCH3

Radio ram #2/DCH4

Radio ram #P/DCH4

{DPCH

4N 4N+1 4N+2 4N+3

Fizički kanal 1

Fizički kanal 2

Fizički kanal P

UMTS sistem:

Page 52: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

HSDPA sistem (3+G)

AMCS

CRCkoder

Dodavanjeslepih bita

Turbokoder interliving M-QAM

modulacija

izvorpaketskihpodataka

DEMUX

1w

20wpodesavanje

kodnog kolicnikapunktiranjem

Page 53: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

MIMO HSDPA (Lucent, I-METRA)

AMCS

interliving

izvorpaketskihpodataka

1c

pc

Podesavanjekodnog kolicnika

punktiranjem

DEMUX

LDC

LDC

Skremblovanje

...

...

T1

T2

Turbo koder M-QAMmodulacija

...S1

SP

Lucent BLAST:- primena HSDPA na više antena, BLAST tehnologija

- postignuta brzina rada od 19.2Mb/s kroz B=5MHz

I-METRA LDC:- Primena prostorno-vremenskih kodova- Bell LDC (specijalni slučajevi su Alamouti i BLAST)

Page 54: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Adaptivni STC

AMCS

interliving

izvorpaketskihpodataka

1c

pc

Podesavanjekodnog kolicnika

punktiranjem

DEMUX

Skremblovanje

...

...

T1

T2

Turbo koder M-QAMmodulacija

...S1

SP

STC

STC

W

W

...

...

povratnainformacija

Space-timekoder

.

.

.

.

.

.

Tn1

Tn2

Tnt

Rn1

Rn2

Rnr

W Prijemnik

Kanal povratne sprege

H

ˆ|( )

hh hR nˆ ( )H n H

Page 55: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Kodovana OFDM (COFDM)• Coded Orthogonal Frequency Multiplexing• Kodovanje u “frekfencijskom domenu”.• Vremenska zavisnost dovodi do ispravljanja grešaka u kanalima koje više pogađa selektivni feding.• Obično se koriste Rid-Solomonovi ili konvolucioni kodovi.• Može se kombinovati sa MIMO – diverziti u tri domena!

Page 56: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

WLAN, WiMAXKombinuje se ARQ sa adaptivnom

modulacijom i zaštitnim kodovanjem.U WLAN (IEEE 802.11, HIPERLAN/2) se

koriste punktirani konvolucioni kodoviIEEE 802.11n - MIMO tehnologije

Mobile WiMAX (IEEE 802.16e) punktirani turbo kodovi i Hibridne ARQ procedure

IEEE 802.16e - preporuka MIMO

Page 57: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Budućnost?

Turbo i LDPC kodovi postaju dominantne tehnike zaštitnog kodovanja. U slučaju kada su ove tehnike suviše kompleksne mogu se koristiti blok kodovi (ciklični, zbog jednostavne realizacije kodera i dekodera) ili konvolucioni kodovi sa sekvencijalnim dekodovanjem.

Za detekciju grešaka standardno se koristi CRC postupak. Ovo omogućava kombinovanje FEC sa ARQ procedurama.

Space-time tehnike u bežičnim sistemima, multimodnim optičkim vlaknima, PLC sistemima, DSL modemima sa više parica... – uvek kada postoji bar dva prenosna puta u kojima deluju nekorelisane smetnje.

U cilju postizanja vrlo visokih brzina prenosa u mobilnim bežičnim sistemima neophodno je kombinovati turbo kodove sa promenljivim kodnim količnikom i konstelacije višeg reda. Space-time tehnike omogućavaju efikasnu primenu prostornog diverzitija. Ovo se može kombinovati i sa tehnikama frekvencijskog diverzitija (npr. OFDM).

Page 58: Primena kodova u savremenim telekomunikacionim sistemimatelekomunikacije.etf.rs/predmeti/te5kpz/prezentacija_2006.pdf · Blok kodovi Linearni blok kodovi (n,k) Hemingovi kodovi Ciklični

Literatura[1] C. E. Shannon, "A mathematical theory of communication'', Bell System Technical Journal,vol. 27, July 1948, pp. 379-423, October 1948, pp. 623-656[2] S. Lin, D. J. Costello, “Error Control Coding”, Second Edition, Prentice Hall, 2004.[3] B. Vucetic, J. Yuan, "Space-time coding", John Wiley & Sons Ltd, West Sussex, 2003[4] D. Drajić, “Uvod u teoriju informacija sa kodovanjem”, Akademska misao, Beograd, 2000.[5] G. Ungerboeck, “Trellis-coded modulation with redundant signal sets – Part I,II: Introduction”, IEEE Communications Magazine, Vol. 25, February 1987., pp. 5-21.[6] B. Vučetić, J. Yuan, "Turbo Codes – Principles and Applications", Kluwer Academic Publishers, Boston, 2000. [7] S. M. Alamouti, “A Simple Transmit Diversity Tehnique for Wireless Communications”, IEEE Journal on Selected Areas in Communications,vol 16, no 8, Oct 1998, pp. 1451-1458.[8] V. Tarokh, N. Seshadri, R. Calderbank, “Space-time Codes for High Data Rate Wireless Communication: Performance Criterion and Code Consrction”, IEEE Transactions of Information Theory, Vol. 44, N0. 2, March 1998., pp. 744-765.[9] J. Fonollosa, "I-METRA project. An overview", 7th Concertation Meeting of Mobile/ Wireless/ Satellite IST projects, Adaptive Antenna Cluster, 9-10 April 2002, Brussels.[10] C. Berrou, A. Glavieux, P. Thitimajshima, "Near Shannon Limit Error–Correcting Coding and Decoding: Turbo Codes", in Proceedings of the International on Conference in Communications, Geneva, Switzerland, May 1993., pp. 1064-1070.[11] D. J. C. MacKay, “Information theory, inference and learning algorithms”, 2003, online: http://www.inference.phy.cam.ac.uk/mackay/itila/book.html.[12] T. Richardson, R. Urbanke, “Modern Coding Theory”, online: http://lthcwww.epfl.ch/mct/index.php.