Protichybové kódy, komprese a jak bluffovat o kryptografii"

Podobné dokumenty
DSY-6. Přenosový kanál kódy pro zabezpečení dat Základy šifrování, autentizace Digitální podpis Základy měření kvality přenosu signálu

Kódy pro odstranění redundance, pro zabezpečení proti chybám. Demonstrační cvičení 5 INP

[1] samoopravné kódy: terminologie, princip

Odpřednesenou látku naleznete v kapitole 3.3 skript Diskrétní matematika.

Počet kreditů: 5 Forma studia: kombinovaná. Anotace: Předmět seznamuje se základy dělitelnosti, vybranými partiemi algebry, šifrování a kódování.

KOMPRESE OBRAZŮ. Václav Hlaváč. Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání. hlavac@fel.cvut.

KOMPRESE OBRAZŮ. Václav Hlaváč, Jan Kybic. Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání.

[1] samoopravné kódy: terminologie, princip

Informatika Kódování. Obsah. Kód. Radim Farana Podklady předmětu Informatika pro akademický rok 2007/2008

Kryptografie, elektronický podpis. Ing. Miloslav Hub, Ph.D. 27. listopadu 2007

Samoopravné kódy, k čemu to je

Asymetrická kryptografie a elektronický podpis. Ing. Mgr. Martin Henzl Mgr. Radim Janča ijanca@fit.vutbr.cz

Teorie informace a kódování (KMI/TIK) Reed-Mullerovy kódy

ZÁPADOČESKÁ UNIVERZITA V PLZNI

8. RSA, kryptografie s veřejným klíčem. doc. Ing. Róbert Lórencz, CSc.

Kosinová transformace 36ACS

A4B33ALG 2010/05 ALG 07. Selection sort (Select sort) Insertion sort (Insert sort) Bubble sort deprecated. Quicksort.

Komprese dat. Jan Outrata KATEDRA INFORMATIKY UNIVERZITA PALACKÉHO V OLOMOUCI. přednášky

Kódování signálu. Problémy při návrhu linkové úrovně. Úvod do počítačových sítí. Linková úroveň

Úvod do teorie informace

Komerční výrobky pro kvantovou kryptografii

Identifikátor materiálu: ICT-2-04

Matematika IV 10. týden Kódování

Lineární algebra nad obecným Z m, lineární kódy

Informatika / bezpečnost

Informační systémy ve zdravotnictví

Hammingovy kódy. dekódování H.kódů. konstrukce. šifrování. Fanova rovina charakteristický vektor. princip generující a prověrková matice

NPRG030 Programování I, 2018/19 1 / :03:07

Zpracování informací

STRUKTURA RASTROVÝCH DAT

Teorie informace: řešené příklady 2014 Tomáš Kroupa

FP - SEMINÁŘ Z NUMERICKÉ MATEMATIKY. Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci

Komprese dat Obsah. Komprese videa. Radim Farana. Podklady pro výuku. Komprese videa a zvuku. Komprese MPEG. Komprese MP3.

Šifrování, kódování a jejich aplikace - ak. rok 2016/17

kryptosystémy obecně další zajímavé substituční šifry klíčové hospodářství kryptografická pravidla Hillova šifra Vernamova šifra Knižní šifra

Šifrová ochrana informací věk počítačů PS5-2


Kompresní techniky. David Bařina. 15. února David Bařina Kompresní techniky 15. února / 37

Šifrová ochrana informací věk počítačů PS5-2

Algoritmy komprese dat

Bezpečnostní mechanismy

Arnoldiho a Lanczosova metoda

Kryptografie - Síla šifer

Počítačová grafika a vizualizace I

Teorie informace a kódování (KMI/TIK)

Asymetrická kryptografie a elektronický podpis. Ing. Dominik Breitenbacher Mgr. Radim Janča

Pokročilá kryptologie

Projekt: 1.5, Registrační číslo: CZ.1.07/1.5.00/ Digitální podpisy

Komprese dat. Jan Outrata KATEDRA INFORMATIKY UNIVERZITA PALACKÉHO V OLOMOUCI. přednášky

Osnova přednášky. Formáty uložení dat. Vyjádření hodnot datového typu. Vyjádření hodnot datového typu. Datové formáty. Výpočetní technika I

Kódy a kódování dat. Binární (dvojkové) kódy. Kód Aikenův

Hammingův kód. Vladislav Kosejk. České vysoké učení technické v Praze Fakulta jaderná a fyzikálně inženýrská Detašované pracoviště Děčín

Vlastní číslo, vektor

12. Bezpečnost počítačových sítí

Samoopravné kódy. Katedra matematiky a Institut teoretické informatiky Západočeská univerzita

Technická kybernetika. Obsah. Principy zobrazení, sběru a uchování dat. Měřicí řetězec. Principy zobrazení, sběru a uchování dat

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

Správa přístupu PS3-2

Transformace obrazu Josef Pelikán KSVI MFF UK Praha

Matice. Modifikace matic eliminační metodou. α A = α a 2,1, α a 2,2,..., α a 2,n α a m,1, α a m,2,..., α a m,n

Základy kryptografie. Beret CryptoParty Základy kryptografie 1/17

Kódy pro detekci a opravu chyb. INP 2008 FIT VUT v Brně

Informace, kódování a redundance

Data v počítači. Informační data. Logické hodnoty. Znakové hodnoty

Číselné vyjádření hodnoty. Kolik váží hrouda zlata?

Generující kořeny cyklických kódů. Generující kořeny. Alena Gollová, TIK Generující kořeny 1/30

Odpřednesenou látku naleznete v dodatku A skript Abstraktní a konkrétní lineární algebra.

PA159 - Bezpečnostní aspekty

Informace v počítači. Výpočetní technika I. Ing. Pavel Haluza ústav informatiky PEF MENDELU v Brně haluza@mendelu.cz

Protiopatření eliminující proudovou analýzu

Y36PSI Bezpečnost v počítačových sítích. Jan Kubr - 10_11_bezpecnost Jan Kubr 1/41

Asymetrické šifry. Pavla Henzlová FJFI ČVUT v Praze. Pavla Henzlová (FJFI ČVUT v Praze) Asymetrické šifry 28.3.

Bezpečnost internetového bankovnictví, bankomaty

Cyklické redundantní součty a generátory

Kerchhoffův princip Utajení šifrovacího algoritmu nesmí sloužit jako opatření nahrazující nebo garantující kvalitu šifrovacího systému

Kompresní metody první generace

Digitální podepisování pomocí asymetrické kryptografie

[1] Motivace. p = {t u ; t R}, A(p) = {A(t u ); t R} = {t A( u ); t R}

Šifrová ochrana informací historie KS4

[1] Determinant. det A = 0 pro singulární matici, det A 0 pro regulární matici

Lineární algebra : Násobení matic a inverzní matice

asymetrická kryptografie

Osnova přednášky. Informace v počítači. Interpretace dat. Údaje, data. Úvod do teorie informace. Výpočetní technika I. Ochrana dat

Šifrová ochrana informací věk počítačů PS5-1

PSK2-5. Kanálové kódování. Chyby

1 Projekce a projektory

MFF UK Praha, 22. duben 2008

IB111 Úvod do programování skrze Python

základní informace o kurzu základní pojmy literatura ukončení, požadavky, podmiňující předměty,

2.6. VLASTNÍ ČÍSLA A VEKTORY MATIC


0.1 Úvod do lineární algebry

INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ. Modernizace studijního programu Matematika na PřF Univerzity Palackého v Olomouci CZ.1.07/2.2.00/28.

MATICE. a 11 a 12 a 1n a 21 a 22 a 2n A = = [a ij]

Základy řazení. Karel Richta a kol.


Test prvočíselnosti. Úkol: otestovat dané číslo N, zda je prvočíslem

Moderní multimediální elektronika (U3V)

1. Základy teorie přenosu informací

III/ 2 Inovace a zkvalitnění výuky prostřednictvím ICT

Transkript:

Protichybové kódy, komprese a jak bluffovat o kryptografii" Přednáška pro SČS Ing. Jakub Št astný, Ph.D. 1 1 FPGA Laboratoř/Laboratoř zpracování biologických signálů Katedra teorie obvodů, FEL ČVUT Technická 2, Praha 6, 166 27 21. května 2014

Osnova přednášky 1 Protichybové kódy Úvod Lineární kódy Příklady a aplikace 2 Komprese dat Bezeztrátové kompresní techniky Ztrátová komprese 3 Jak bluffovat o kryptografii 4 Řazení

Varování Pozor! Tato verze přednášky obsahuje materiál chráněný autorskými právy. Je určena pouze k internímu použití a vystavení na WWW stránkách Laboratoře biologických signálů, Katedry teorie obvodů ČVUT FEL, Praha! http://amber.feld.cvut.cz/fpga/prednasky/scs/scs.html

Doporučená literatura Jiří Adámek, Kódování. SNTL Praha 1989 Jan Hlavička,Diagnostika a spolehlivost. Praha, Vydavatelství ČVUT, 1998 Steven W. Smith, The Scientist and Engineer s Guide to Digital Signal Processing. Dostupné na www.dspguide.com

Úvod do bezpečnostních kódů

Aplikace, základní definice aplikace přenos dat v čase i prostoru tolerance poruch kódování: zobrazení K : A B, kde A zdrojová abeceda, znaky B kódová abeceda, znaky B množina vsech slov nad danou abecedou kód množina všech slov K(A) jednoznačně dekódovatelné: K : A B prosté zobrazení blokový kód všechna kódová slova mají stejnou délku n

Bezpečnostní kódy jistota bezpečnosti neexistuje umělé zvýšení redundance zabezpečení před šumem K(A) B příjem kódového slova x? příjem nekódového slova x / K(A) objevení chyby

Hammingova vzd. a vlastnosti kódu definici známe... DCv: dokažte že H.v. je metrika na kódu Kód s minimální H.v. d objevuje všechny t-násobné chyby pro t < d. Kód je schopen opravovat t-násobné chyby má li H.v. alespoň 2t + 1. příklad: opak. kód pro opravu dvojnásobné chyby 0 00000 1 11111 Opakovaci kod pro opravu dvojnasobne chyby 00000 00001 00011 00111 01111 11111 0 1 H.v.=5

Typy kódů blokové (n, k) kódy: k původních bitů zdrojové zprávy n k bitů redundance konvoluční kódy generované kódové slovo závisí jak na aktuálním slově, tak na určitém počtu předchozích zpráv terminologie SEC = Single Error Correcting DED = Double Error Detection SEC-DED? TED?

Systematický (n, k)kód k původních bitů zdrojové zprávy n k bitů redundance H.v. d n k + 1 (proč?) k bitu puv. zpravy n k bezp. informace

Lineární kódy aritmetika modulo 2 (1+1=?) blokový kód délky n je lineární iff kódová slova tvoří lineární podprostor prostoru T n, T = {0, 1} kódová slova lze vyjádřit jako množinu všech řešení soustavy rovnic, aplikace prostředků lineární algebry příklad: sudá parita K PE : v 1 v 2 v 3 v 4 x 1 x 2 x 3 x 4 x 5 x 1 x 2 x 3 x 4 = v 1 v 2 v 3 v 4 x 5 aby počet jedniček v celém slově byl sudý x 1 + x 2 + x 3 + x 4 + x 5 = 0

Lineární kódy příklad: opakovací kód délky 5 pro opravu dvojnásobné chyby 0 00000, 1 11111 soustava rovnic které vyhovují všechna kódová slova x 1 + x 2 = 0 (rce. 1) x 1 + x 3 = 0 (rce. 2) x 1 + x 4 = 0 (rce. 3) x 1 + x 5 = 0 (rce. 4) kódové slovo 00000 všechny rce. splněny OK kódové slovo 11111 všechny rce. splněny OK slovo 11011 rce. 2 neplatí chyba! slovo 10101 rce. 1 a 3 neplatí chyba! Opakovaci kod pro opravu dvojnasobne chyby 00000 00001 00011 00111 01111 11111 0 1 H.v.=5

LinKódy Kontrolní matice kódu H matice soustavy rovnic které vyhovují všechna kódová slova Hx = 0, H M n k,n pro (n, k) kód příklad: op.k. délky 5, 4 rc. 4 řádky,5 bitů 5 sloupců x 1 + x 2 = 0,x 1 + x 3 = 0,x 1 + x 4 = 0,x 1 + x 5 = 0 H = příklad: sudá parita délky 5 x 1 + x 2 + x 3 + x 4 + x 5 = 0 1 1 0 0 0 1 0 1 0 0 1 0 0 1 0 1 0 0 0 1 (1) H = [ 1 1 1 1 1 ] (2)

LinKódy Generující matice kódu G popisuje kódování, x = v T G báze kódového prostoru všechna kódová slova jsou LK slov z G pro H = [B E] je G = [E B T ] příklad: opakovací kód délky 5 G = [11111] příklad: sudá parita délky 5 G = 1 0 0 0 1 0 1 0 0 1 0 0 1 0 1 0 0 0 1 1 kóduji slovo v = [1101] T, x = v T G = [11011] T

LinKódy Oprava a detekce chyb vyšleme x, získáme w = x + e e chybový vektor Hw = H(w + e) = He pro e nekódový chybový vektor objevíme chybu a můžeme ji i opravit příklad: opakovací kód délky 5 H = 1 1 0 0 0 1 0 1 0 0 1 0 0 1 0 1 0 0 0 1 příjem slova w = [11111] T Hw = [0000], OK příjem slova w = [11011] T Hw = [0100], chyba!

Příklady a aplikace

Hammingovy kódy perfektní blokový kód pro opravu jednoduchých chyb třída blokových (2 m 1, 2 m m 1) kódů m = 3...(7, 4) m = 4...(15, 11) sloupce kontrolní matice jsou všechna nenulová slova dané délky příklad pro (7, 4) kód H = vyplatí se přeskupení do tvaru H = 0 0 0 1 1 1 1 0 1 1 0 0 1 1 1 0 1 0 1 0 1 1 1 1 0 1 0 0 1 1 0 1 0 1 0 1 0 1 1 0 0 1 (3) (4)

Příklad zabezpečení NAND Flash ST-Microelectronic, AN1823 App Note SEC-DED po bloku 256 byte Figure 4. Parity Generation for a 256 Byte Input Byte 0 Byte 1 Byte 2 Byte 3... Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0........................ LP0 LP1 LP0 LP1 LP02 LP03... LP14 Byte 252 Byte 253 Byte 254 Byte 255 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 LP0 LP1 LP0 LP1 LP02 LP03... LP15 CP1 CP0 CP1 CP0 CP1 CP0 CP1 CP0 CP3 CP2 CP3 CP2 CP5 CP4

Příklad zabezpečení NAND Flash ST-Microelectronic, AN1823 App Note SEC-DED po bloku 256 byte Hammingův kód (2070, 2048) Figure 4. Parity Generation for a 256 Byte Input Byte 0 Byte 1 Byte 2 Byte 3... Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0........................ LP0 LP1 LP0 LP1 LP02 LP03... LP14 Byte 252 Byte 253 Byte 254 Byte 255 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 LP0 LP1 LP0 LP1 LP02 LP03... LP15 CP1 CP0 CP1 CP0 CP1 CP0 CP1 CP0 CP3 CP2 CP3 CP2 CP5 CP4

Další aplikace RAM paměti výtěžnost výroby TMR systémy safe FSMs aritmetické kódy

Kontrolní součet jednoduchá technika detekce chyby v datech x s = x i mod2 N, nakonec x s = x s rychlý a snadný výpočet proti náhodné modifikaci ne proti úmyslné změně (vložení nul do dat, prohození pořadí slov, více chyb kde e i = 0). příklady aplikace selftest ROM (kontr. součet paměti), EEPROM s konfig. daty čipu RAM

Cyclic Redundancy Check kódy pro detekci a opravu chyb vstup tok dat libovolné velikosti výstup kontrolní součet" blok dat fixní velikost ochrana proti shlukům chyb matematika kolem CRC dosti komplexní, viz [Adámek] n-bitové CRC aplikované na blok dat libovolné délky detekuje jakýkoliv jeden shluk chyb o velikosti max. n s p = 1 2 n libovolný větší shluk chyb

Cyclic Redundancy Check definováno pomocí dělení polynomem výpočet pomocí jednoduchého obvodu normalizované polynomy s danými vlastnostmi př. x 8 + x 7 + x 6 + x 4 + x 2 + 1 počítáme vlastně zbytek po dělení polynomem víme, že x 8 + x 7 + x 6 + x 4 + x 2 + 1 0(modx 8 + x 7 + x 6 + x 4 + x 2 + 1) x 8 x 7 x 6 x 4 x 2 1(modx 8 + x 7 + x 6 + x 4 + x 2 + 1) sem příští rok obrázek CRC generátoru letos byl na vyžádání na tabuli

Komprese dat

Základní dělení bezeztrátová (lossless) spustitelný kód, textová data, numerické soubory,... pro daný soubor a algoritmus fixní kompresní poměr ztrátová (lossy) hudba, fotografie,... čím větší kompresní poměr, tím horší kvalita percepční komprese proč komprese? cena...

Run-Length Encoding nejjednodušší technika základ dalších metod JPG, MP3 data často obsahují sekvenci stejných slov 17 8 54 0 0 0 97 5 16 0 45 23 0 0 0 0 0... 17 8 54 0 3 97 5 16 0 1 45 23 0 5 komprimovat lze sekvence libovolných znaků řídící_znak opak_byte počet i jednoduchý výskyt řídícího znaku je pak kódován

Huffmanovo kódování základ daších metod JPG, MP3 prefixový kód: prefixem slova b 1 b 2 b 3...b n jsou... prefixové kódování: prosté a žádné slovo není prefixem jiného slova Zde jsem letos na tabuli dělal Huffmanův strom, příští rok jako slídu

Delta kódování pro spojité signály malé změny malé hodnoty, kvantování kombinuje se s Huffmanovým kódováním, nebo RLE

LZW Komprese Lempel-Ziv-Welch text, spustitelné kódy na 50% použití: NTFS, GIF,... (už ne)patentovaný algoritmus slovníkové komprese více viz http://www.dspguide.com/ch27/5.htm

Ztrátová komprese

Joint Photographers Expert group, 1992 transformační komprese JPG komprese základní myšlenka: po výpočtu spektra už si nejsou všechna data "rovna", NF složky jsou důležitější

1 rozklad obr. na čtverečky 8 8 JPG komprese postup 2 výpočet 2D DCT ze "čtverečků" 2D spektra

1 rozklad obr. na čtverečky 8 8 JPG komprese postup 2 výpočet 2D DCT ze "čtverečků" 2D spektra 3 aplikace kvantizační matice, vybrána podle kompresního poměru

JPG komprese postup 1 rozklad obr. na čtverečky 8 8 2 výpočet 2D DCT ze "čtverečků" 2D spektra 3 aplikace kvantizační matice 4 konverze 2D vzoru do lin. pole, VF komponenty blízké nule se dostanou za sebe" což je výhodné pro RLE kompresi

JPG komprese postup 1 rozklad obr. na čtverečky 8 8 2 výpočet 2D DCT ze "čtverečků" 2D spektra 3 aplikace kvantizační matice 4 konverze 2D vzoru do lin. pole 5 Run-Length Encoding 6 Huffman encoding

JPG komprese kompresní poměr

MP3 komprese psychoakustický model MPEG Layer III = MP3, SPL = Sound Pressure Level Zdroj: Audio Coding: An Introduction to Data Compression http://www.digitaltvdesignline.com/howto/hdrecording/202601553

MP3 komprese maskování ve frekvenci práh slyšitelnosti není fixní schováme q-šum tam, kde není slyšet Zdroj: Audio Coding: An Introduction to Data Compression http://www.digitaltvdesignline.com/howto/hdrecording/202601553

MP3 komprese maskování v čase maskování dokonce i před! tónem

MP3 komprese postup komprese 1 adaptivní segmentace 2 výpočet spektra 3 identifikace sluchově významných harmonických složek 4 výpočet práhu slyšitelnosti 5 odstranění všeho co není" slyšet Kompresní poměr až 10:1 Zdroj: Audio Coding: An Introduction to Data Compression http://www.digitaltvdesignline.com/howto/hdrecording/202601553

Jak bluffovat o kryptografii

Terminologie plaintext/otevřený text originální zpráva ciphertext/šiforvaný text zašifrovaná zpráva cipher/šifra algoritmus převádějící otevřený text na šifrovaný text key/klíč informace použitá šifrou a známá jen odesílateli a adresátovi cryptography/kryptografie hledání metod jak zajistit bezpečnost ŠT cryptanalysis/kryptoanalýza studium principů a metod jak se dozvědět OT bez znalosti klíče bloková šifra po blocích proudová šifra kontinuálně

K čemu je kryptografie autentizace uživatele autentizace dat (integrita a originalita původu) potvrzení původu utajení dat aplikace telekomunikace (GSM, etc.) multimédia (DRM, DVD, SAT TV) obecná komunikace (mail) bankovní sektor

Implementační vlastnosti šifer náklady na prolomení úměrné ceně kódované zprávy Freshness/novost pro stejný OT nikdy není stejný ŠT implementace bez postranních kanálů (časový útok, DPA, SPA) Kerckhoffův princip (Shannonova formulace): The enemy knows the system."

Symetrické šifry odesílatel i adresát používají stejný klíč rychlost nutnost distribuce klíčů pro n osob n(n 1) 2 klíčů DES, 3DES, BlowFish, IDEA, AES,... Figure is copied from http://commons.wikimedia.org/wiki/image:symetrick%c3%a1_%c5%a1ifra.png

Asymetrické šifry odesílatel a adresát mají odlišné klíče jednoduché předání klíče málo klíčů pomalost ověření pravosti klíče RSA,... Figure is copied from http://upload.wikimedia.org/wikipedia/commons/f/f9/public_key_encryption.svg

ekvivalent zaručeného podpisu Digitální podpis autenticita, nezfalšovatelnost, nezaměnitelnost a nepopiratelnost autorství dokumentu algoritmus podpisu podpisování odesílatel: 1 výpočet otisku (hash funkce) z dokumentu 2 zašifrování otisku soukromým klíčem a přiložení k dokumentu algoritmus podpisu ověření adresát: 1 dešifrování přiloženého otisku veřejným klíčem 2 výpočet skutečného otisku z dokumentu 3 srovnání obou, rovnají se potvrzení identity ověření původu veřejného klíče 1 cerfifikační autorita zašifruje veřejný klíč odesílatele svým privátním klíčem 2 adresát rozšifruje veřejný klíč odesílatele veřejným klíčem certifikační autority

Kvantová kryptografie pozorování mění stav objektu jistá detekce odposlechu distribuce klíče

Řazení dat

Základní pojmy třídění podle relace ekvivalence řazení podle relace uspořádání sekvenční/přímý přístup k datům přirozenost předřazená data se seřadí rychleji stabilita nemění se pořadí shodných položek prostorová a časová složitost (min. Nlog 2 N kroků) vnitřní vnější řazení dat řazení s přesunem bez přesunu položek (indexový soubor) existují hotové generické knihovny

Metody Bubble sort, Quick sort na tabuli" Merge sort rekurzivní skládání posloupností Radix sort řazení podle řádů Řazení s pomocí rozptylovacích funkcí Specielní paralelní algoritmy Shear sort, Bitonix sort atd...

Řazení výběrem maxima/minima řazení postupným vyhledáváním min/max hodnoty O(N 2 ) stabilní algoritmus

Řazení postupným zaměňováním řazení postupným vyhledáváním min/max hodnoty O(N 2 ) stabilní algoritmus procedure bubblesort(a : list of sortable items) n := length(a) do swapped := false n := n - 1 for each i in 0 to n do: if A[ i ] > A[ i + 1 ] then swap( A[ i ], A[ i + 1 ] ) swapped := true end if end for while swapped

QuickSort řazení technikou rozděl a panuj O(N log N) nestabilní algoritmus function quicksort(array) var list less, greater if length(array) 1 return array select a pivot value pivot from array for each x in array if x pivot then append x to less if x > pivot then append x to greater return concatenate(quicksort(less), pivot, quicksort(greater))