Top Banner
1 Tomasz Siroń Liceum Ogólnokształcące im. Bohaterów Porytowego Wzgórza ul. Jana Pawła II 1 23-300 Janów Lubelski tel. 15872 03 56 Opiekun prowadzący: mgr Wiesława Siczek Walidacja numerów identyfikacyjnych – suma kontrolna w modelu matematycznym. 2. Źródło: http://web.securityinnovation.com/ 1. Źródło: http://www.edmond.nl/typo3temp/pics/9d47d865fe.gif
16

Walidacja numerów identyfikacyjnych – suma kontrolna w modelu …liceum.fc.pl/pliki/publikacje/walidacja_numerow.pdf · Przykład karty debetowej. Ostatnia liczba jest sumą kontrolną.

Feb 28, 2019

Download

Documents

vunhi
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Walidacja numerów identyfikacyjnych – suma kontrolna w modelu …liceum.fc.pl/pliki/publikacje/walidacja_numerow.pdf · Przykład karty debetowej. Ostatnia liczba jest sumą kontrolną.

1

Tomasz Siroń Liceum Ogólnokształcące im. Bohaterów Porytowego Wzgórza ul. Jana Pawła II 1 23-300 Janów Lubelski tel. 15872 03 56 Opiekun prowadzący: mgr Wiesława Siczek

Walidacja numerów identyfikacyjnych – suma

kontrolna w modelu matematycznym.

2. Źródło: http://web.securityinnovation.com/

1. Źródło: http://www.edmond.nl/typo3temp/pics/9d47d865fe.gif

Page 2: Walidacja numerów identyfikacyjnych – suma kontrolna w modelu …liceum.fc.pl/pliki/publikacje/walidacja_numerow.pdf · Przykład karty debetowej. Ostatnia liczba jest sumą kontrolną.

2

WSTĘP

W dzisiejszych czasach mamy do czynienia z dużym przepływem informacji. Często

nie zdajemy sobie nawet sprawy z ich ilości podczas przeprowadzania codziennych zajęć.

Przy występowaniu takiego ogromu danych nie trudno o błąd, czy to poprzez czynnik ludzki,

czy poprzez błąd systemu. Można sobie wyobrazić co by się stało, gdyby podczas wykony-

wania płatności kartą w sklepie, doszło do błędu jednej z cyfry w tak niefortunny sposób, iż

należność zostałaby pobrana z konta innej osoby. Innym bardziej niebezpiecznym przykładem

jest zakłócenie przez np. pracujący telefon komórkowy informacji przepływających przez

magistralę CAN1 w samochodzie osobowym. Mogłoby ono doprowadzić do odcięcia paliwa

podczas jazdy lub detonacji poduszek powietrznych.

W prawdzie ostatni przykład jest dosyć „egzotyczny” i mało prawdopodobny, jednak jest

możliwy. Aby zmniejszyć jego prawdopodobieństwo należy zastosować specjalny algorytm

matematyczny, który sprawdziłby czy zawarte dane są spójne z danymi wejściowymi. Jeśli

wynik tego testu byłby negatywny, algorytm ten miałby (w miarę możliwości) naprawić dane

wyjściowe lub jeśli uszkodzenia pakietu danych byłyby zbyt duże odrzucić je. Najprostszym

sposobem jest zsumowanie (lub wymnożenie) wszystkich liczb i podzielenie ich przez ich

liczbę. Dzięki temu zostanie uzyskana tak zwana suma kontrolna (ang. checksum). Służy ona

do sprawdzania poprawności danych. Wszelako taki algorytm jest bardzo zawodny i ławo go

oszukać. Może ono nastąpić poprzez podstawienie liczby spełniające to równanie lub poprzez

1 CAN (Controller Area Network) – wewnętrzna, szeregowa magistrala komunikacyjna mająca zastosowanie w przemyśle motoryzacyjnym. Jej zadaniem jest połączenie ze sobą głównych systemów samochodu (sterowanie pracą silnika, system ABS, itp).

Rysunek 4. Sieć CAN, z podziałem na podsieci. Źródło: http://www.auobd2.com

Rysunek 3. Przykład karty debetowej. Ostatnia liczba jest sumą kontrolną. Przedstawiony numer karty jednak nie jest poprawny (nie waliduje się algorytmem Luhna). Źródło: http://www.aliorbank.pl

Page 3: Walidacja numerów identyfikacyjnych – suma kontrolna w modelu …liceum.fc.pl/pliki/publikacje/walidacja_numerow.pdf · Przykład karty debetowej. Ostatnia liczba jest sumą kontrolną.

3

tzw. czeski błąd, czyli przestawienie kolejności znaków. Każde dodatkowe działanie matema-

tyczne zwiększa skomplikowanie, niemniej jednak zmniejsza prawdopodobieństwo przekła-

mania sumy kontrolnej. Aby sprawdzić poprawność danych wystarczy, aby komputer (lub

inne urządzenie teleinformatyczne) obliczył sumę kontrolną odebranego pakietu i porównał ją

z sumą zawartą w tym pakiecie.

Rysunek 5. Karta debetowa podczas skanowania w terminalu płatniczym. Źródło: http://www.chfi.com/

Page 4: Walidacja numerów identyfikacyjnych – suma kontrolna w modelu …liceum.fc.pl/pliki/publikacje/walidacja_numerow.pdf · Przykład karty debetowej. Ostatnia liczba jest sumą kontrolną.

4

Suma kontrolna jako cyfra kontrolna

w weryfikacji numerów PESEL, REGON, numer dowodu osobistego, NIP, ISBN etc.

PESEL

Jednym z zastosowań sumy kontrolnej jest tzw. cyfra kontrolna. Znajduje ona zasto-

sowanie w wszelkiego rodzaju numerach, które należą do systemów ewidencyjnych. Przykła-

dem może być numer PESEL. Zawiera on w sobie datę urodzenia, numer serii z oznaczeniem

płci i cyfrę kontrolną.

99010113954 990101 – data urodzenia obywatela (dla osób urodzonych w XX wieku odpowiada dacie uro-dzenia w postaci zapisu RRMMDD), 1395 – numer serii z oznaczeniem płci (ostatnia cyfra nieparzysta „5” oznacza płeć, w tym wypadku mężczyzna), cyfry 1, 3, 5, 7, 9 – oznaczają płeć męską, cyfry 0, 2, 4, 6, 8 – oznaczają płeć żeńską, 4 – cyfra kontrolna.

Rysunek 6. Przykładowy numer PESEL. Numer przedstawiony na przykładzie nie jest jednak poprawny (ostatnia cyfra jest cyfrą kontrolną). Źródło: http://www.nportal.no

Page 5: Walidacja numerów identyfikacyjnych – suma kontrolna w modelu …liceum.fc.pl/pliki/publikacje/walidacja_numerow.pdf · Przykład karty debetowej. Ostatnia liczba jest sumą kontrolną.

5

GENEROWANIE POPRAWNEGO NUMERU PESEL

Znamy już jak wygląda specyfikacja numeru PESEL, nie wiemy jednak jakim algo-

rytmem się „waliduje” . Algorytm ten nie należy do skomplikowanych. Należy założyć, iż

kolejne cyfry numeru są kolejno literami alfabetu. Następnie należy wykonać działanie:

1*a + 3*b + 7*c + 9*d + 1*e + 3*f + 7*g + 9*h + 1*i + 3*j

Otrzymany wynik podzielić przez 10. Jeżeli reszta z dzielenia wynosi 0 to cyfra kontrolna jest

równa 0. Jeśli jednak reszta jest różna od zera, należy z poprzedniego wyniku (tego, którego

dzieliliśmy przez 10) wybrać ostatnią cyfrę, a następnie odjąć od 10. Wynik tego działania

daje nam cyfrę kontrolną.

Przykład:

Wygenerujmy przykładowy numer PESEL dla osoby urodzonej 23 sierpnia 1985 roku. Osoba

ta jest mężczyzną.

1. Zapisujemy datę w formacie RRMMDD czyli: 850823.

2. Do podanej liczby dopisujemy liczbę czterocyfrową serii z założeniem, że ostatnia cy-

fra dla płci męskiej musi być nieparzysta, przyjmijmy, że będzie to cyfra 0123 (cyfra

„3” nieparzysta – mężczyzna). Otrzymujemy taki numer: 8508230123.

3. Obliczmy cyfrę kontrolną według wcześniej podanych założeń:

1*8 + 3*5 + 7*0 + 9*8 + 1*2 + 3*3 + 7*0 + 9*1 + 1*2 + 3*3 =

= 8 + 15 + 0 + 72 + 2 + 9 + 0 + 9 + 2 + 9 =

= 126

126 / 10 = 12 i reszty 6

6 jest różne od 0 więc suma kontrolna wynosi

10 – 6 = 4

Otrzymujemy więc numer PESEL: 85082301234 i możemy sprawdzić, czy jest on poprawny

za pomocą odpowiednich kalkulatorów on-line.

Page 6: Walidacja numerów identyfikacyjnych – suma kontrolna w modelu …liceum.fc.pl/pliki/publikacje/walidacja_numerow.pdf · Przykład karty debetowej. Ostatnia liczba jest sumą kontrolną.

6

Jak widać numer ten jest poprawny i pokazuje przyjęte przez nas założenia.

Rysunek 7. Sprawdzanie numeru PESEL. Zrzut ekranowy strony internetowej: http://www.kalkulatory.gofin.pl/Sprawdzanie-pesel-weryfikacja-pesel,12.html

Rysunek 8. Numer PESEL można znaleźć wszędzie. Źródło: http://www.kont.umcs.lublin.pl/zdj/lukowicz/lukowicz_pesel.jpg

Page 7: Walidacja numerów identyfikacyjnych – suma kontrolna w modelu …liceum.fc.pl/pliki/publikacje/walidacja_numerow.pdf · Przykład karty debetowej. Ostatnia liczba jest sumą kontrolną.

7

Numer dowodu osobistego obowiązującego na terenie RP

Numer dowodu osobistego różni się znacznie od numeru PESEL zawiera on w sobie

nie tylko cyfry lecz także litery.

AWU105446

AWU – jest to seria dowodu osobistego

105446 – numer dowodu osobistego przy czym pierwsza liczba jest cyfrą kontrolną

Rysunek 10. Przykładowy awers dowodu osobistego z wy-różnionym jego numerem. Numer ten jest poprawny pod względem walidacji. Źródło: http://www.pocztowy.pl

Rysunek 9. Dowody osobiste obowiązujące na terenie RP. Źródło: http://www.express.olsztyn.pl/

Page 8: Walidacja numerów identyfikacyjnych – suma kontrolna w modelu …liceum.fc.pl/pliki/publikacje/walidacja_numerow.pdf · Przykład karty debetowej. Ostatnia liczba jest sumą kontrolną.

8

GENEROWANIE POPRAWNEGO NUMERU DOWODU OSOBISTTEGO

Podczas obliczania cyfry kontrolnej wartości literowe serii dowodu zamienia się na cyfry we-

dług wzoru:

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

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35

Następnie cały układ liczb mnożymy przez odpowiednie wagi dla poszczególnych liczb. Wa-

ga to kolejne liczby 7 3 1 7 3 1 7 3. Przy mnożeniu pomijamy cyfrę kontrolną. Następnie

otrzymane wyniki mnożenia sumujemy ze sobą. Sumę, która powstanie dzielimy z resztą

przez 10. Otrzymana reszta z dzielenia jest sumą kontrolną.

Przykład:

Spróbujmy wygenerować przykładowy numer dowodu osobistego. Nie mamy tutaj jakichś

specjalnych założeń, przyjmijmy losowy układ liter i cyfr. Załóżmy, że naszym numerem

będzie: AUG _123452.

1. Zamieniamy serię literową na odpowiednie cyfry, czyli: A – 10, U – 30, G – 16.

2. Zapisujemy całość w postaci ciągu liczb: 10 30 16 1 2 3 4 5.

3. Mnożymy liczby przez odpowiednią wagę

4. Sumowanie wyników mnożenia:

70 + 90 + 16 + 7 + 6 + 3 + 28 + 15 = 235

5. Dzielimy otrzymaną sumę przez 10 z resztą (reszta jest cyfrą kontrolną)

235 / 10 = 23 i reszty 5

Poprawność otrzymanego numeru dowodu AUG 512345 można sprawdzić w kalkula-

torze on-line.

2 W miejscu „_” będzie znajdować się cyfra kontrolna.

10 30 16 1 2 3 4 5

* 7 3 1 7 3 1 7 3

= 70 90 16 7 6 3 28 15

Page 9: Walidacja numerów identyfikacyjnych – suma kontrolna w modelu …liceum.fc.pl/pliki/publikacje/walidacja_numerow.pdf · Przykład karty debetowej. Ostatnia liczba jest sumą kontrolną.

9

Rysunek 9. Sprawdzanie poprawności numeru dowodu. Zrzut ekranowy strony internetowej: http://wipos.p.lodz.pl/zylla/ut/js-pesel.html

Page 10: Walidacja numerów identyfikacyjnych – suma kontrolna w modelu …liceum.fc.pl/pliki/publikacje/walidacja_numerow.pdf · Przykład karty debetowej. Ostatnia liczba jest sumą kontrolną.

10

Walidacja numeru plastikowych kart płatniczych, algorytm Luhna

Współcześnie trudno jest wyobrazić

sobie świat, bez obecności krat płatniczych. Ich

posiadanie sprawia, że nie musimy się martwić

o posiadanie przy sobie gotówki, wystarczy

niewielki, 8,5 cm kawałek plastiku.

Karty płatnicze wprowadziły rewolucję

w dokonywaniu płatności, a także przyczyniły

się do zmiany stylu życia współczesnego czło-

wieka. Pierwsze egzemplarze kart płatniczych zaczęły pojawiać się już w pierwszej połowie

XX w. Początkowo karty kredytowe znacznie różniły się od obecnych, nie posiadały one żad-

nych normalizacji. Był to zwykle kawałek metalowej blaszki z wygrawerowanymi danymi

klienta.

W dzisiejszych czasach budowę karty określają odpowiednie normy (z reguły standard ISO

IEC_7812). Standard mówi także o tym jak ma wyglądać numer takiej karty. Zgodnie z nor-

mą ISO długość numeru plastikowej karty to 16 cyfr. Waliduje go algorytm Luhna (nazwa

algorytmu pochodzi od nazwiska niemieckiego naukowca Hansa Petera Luhna pracującego

dla firmy IBM). Podobnie jak w algorytmie walidującym numer PESEL, na końcu ciągu cyfr

doklejana jest cyfra kontrolna. Algorytm ten ma także inne zastosowania, np. numer IMEI3.

3 IMEI – numer identyfikacyjny telefonów komórkowych oraz innych urządzeń pracujących w sieci GSM/UMTS (np. modemów). Jest on indywidualny dla każdego urządzenia.

Rysunek 10 Widok na chip karty płatniczej oraz na pierwsze 8 cyfr jej numeru. Źródło: http://skiingbusiness.com

Rysunek 11. Awers znormalizowanej karty płatniczej. Źródło: http://www.kartyplatnicze.info

Page 11: Walidacja numerów identyfikacyjnych – suma kontrolna w modelu …liceum.fc.pl/pliki/publikacje/walidacja_numerow.pdf · Przykład karty debetowej. Ostatnia liczba jest sumą kontrolną.

11

Specyfikacja numeru karty, generowanie, przykładowego, poprawnego numery karty płatniczej.

Przykładowy numer karty płatniczej Visa, który poprawnie waliduje się:

4485 2339 0394 5601 4 – Identyfikator Dziedziny Gospodarki, informuje on o tym jakiej dziedziny dotyczy nu-mer karty. 1, 2 – linie lotnicze; 3 – podróż i rozrywka; 4, 5 – bankowość, finanse; 6 – handel, bankowość; 7 – przemysł naftowy; 8 – telekomunikacja; 9 – do ustaleń według krajowych jednostek normalizacyjnych. 4485 23 – Numer Identyfikacyjny Wydawcy karty, przykładowe numery najpopularniej-szych wydawców to: Amex: 34****, 37****; Discovery: 6011**, 644***, 65****; Master-Card: 51**** - 55****; Visa: 4*****. 39 0394 560 – identyfikator rachunku osobistego, indywidualny dziewięciocyfrowy numer przypisywany do danego rachunku. 1 – cyfra kontrolna. Do walidacji numeru karty stosuje się algorytm Luhana. W uproszczeniu polega on na po-

dwojeniu cyfr będących na parzystych pozycjach w numerze karty. Następnie sprawdzeniu

otrzymanych iloczynów czy są większe od dziewięciu, jeśli tak to od otrzymanych iloczynów

odjąć cyfrę 9. Kolejno sumujemy podwojone, zmienione iloczyny wraz z cyframi będącymi

na pozycjach nieparzystych. Do otrzymanej liczby dodajemy taką liczbę, aby wynik był wie-

lokrotnością liczby 10. Dodawana liczba jest cyfrą kontrolną.

Przykład:

Będziemy generować przykładowy (16cyfrowy) numer karty płatniczej MasterCard popraw-

nie walidujący się.

1. Wybieramy Numer Identyfikacyjny Wydawcy wraz z Numerem Dziedziny Gospodar-

ki. Dla MasterCard będzie to przykładowo 55****. Wybieramy numer 551234 (cyfry

1234 są tu przykładowe).

2. Określamy identyfikator rachunku (9cyfrowa liczba) i dopisujemy go do wcześniej-

szego numeru, przykładowo 551234123456789.

3. Do otrzymanego numeru musimy określić cyfrę kontrolną (x) 551234123456789x.

Wykonujemy potrzebne obliczenia.

Page 12: Walidacja numerów identyfikacyjnych – suma kontrolna w modelu …liceum.fc.pl/pliki/publikacje/walidacja_numerow.pdf · Przykład karty debetowej. Ostatnia liczba jest sumą kontrolną.

12

5 5 1 2 3 4 1 2 3 4 5 6 7 8 9 x Podwojenie

co 2 cyfry 10 - 2 - 6 - 2 - 6 - 10 - 14 - 18 -9 jeśli > 9 1 - 2 - 6 - 2 - 6 - 1 - 5 - 9

Z pozycji parzystych, po działaniach 32 Dodanie

cyfr Z pozycji nieparzystych 31

Suma 63 Wynika, że najbliższa wielokrotność 10 po dodaniu x to 70. 63+7=70 7

Otrzymany numer karty to : 5512 3412 3456 7897, kalkulator on-line potwierdza, że jest

on poprawny.

Rysunek 12. Sprawdzanie poprawności numeru karty. Zrzut ekranowy strony internetowej: http://wipos.p.lodz.pl/zylla/ut/js-pesel.html

Page 13: Walidacja numerów identyfikacyjnych – suma kontrolna w modelu …liceum.fc.pl/pliki/publikacje/walidacja_numerow.pdf · Przykład karty debetowej. Ostatnia liczba jest sumą kontrolną.

13

Inne rodzaje sum kontrolnych

1. Bit parzystości (ang. Parity Bit) – walidacja informacji przesyłanych za pomocą ma-

gistrali cyfrowych (np. protokół RS232). Jego obecność sprawia, iż przesyłana wia-

domość posiada zawsze parzystą liczbę jedynek. Jest to jeden z najłatwiejszych spo-

sobów walidacji przesyłanych danych. Przed wysłaniem gotowego pakietu danych

wykonuję się na ciągu liczb binarnych alternatywę wykluczającą („albo… albo…”),

jeśli liczba „1” jest nieparzysta bit parzystości przyjmuje wartość „1” w przeciwnym

wypadku wartość „0”

J

a

k

w

N

Jak widać na powyższym rysunku liczba „1” przesyłanych w zakresie danych

(8 bitowa liczba) jest parzysta, a więc bit parzystości przyjmuje wartość L.

2. Cykliczny kod nadmiarowy, CRC (ang. Cyclic Redundancy Check) – system kon-

trolny stosowany przy przesyłaniu lub magazynowaniu danych binarnych. Jego zasto-

sowanie spotyka się przy wielu magistralach, od sieci komputerowych Ethernet przez

magistralę 1-wire4, kończąc na sprawdzaniu poprawności danych zapisanych w sekto-

rze dysku twardego. Kod CRC jest to w skrócie reszta z dzielenia ciągu danych przez

4 1-Wire – protokół komunikacyjny wykorzystywany do przesyłu danych pomiędzy urządzeniami elektronicz-nymi. Nazwa pochodzi od wykorzystywania do przesyłu tylko jednej linii danych (ang. Wire – przewód). W praktyce stosując zasilanie pasożytnicze urządzeń do przesyłu danych oraz zasilania urządzenia wystarczą zaledwie dwa przewody.

Rysunek 13. Przykładowa ramka danych przesyłanych za pomocą protokółu RS232. Litera H oznacza stan wysoki (logiczne "1"), litera L stan niski (logiczne "0"). Źródło: http://maxembedded.files.wordpress.com

Page 14: Walidacja numerów identyfikacyjnych – suma kontrolna w modelu …liceum.fc.pl/pliki/publikacje/walidacja_numerow.pdf · Przykład karty debetowej. Ostatnia liczba jest sumą kontrolną.

14

(n + 1) bitowy dzielnik. Istnieje wiele wersje CRC, różnią się one między sobą wielo-

mianem za pomocą którego dzielimy ciąg danych. Przykładowo dla 3 bitowego kodu

CRC, weźmy dzielnik (3 + 1) czyli 1011. Do serii danych dopisujemy 3 wyzerowane

bity czyli „000”. Następnie ustawiamy dzielnik pod serią danych, jeśli nad najstarszą

pozycją dzielnika mamy „0” przesuwamy dzielnik o tyle miejsc

w prawo, aż napotkamy „1”. Kolejnym krokiem jest wykonanie alternatywy wyklu-

czającej pomiędzy dzielnikiem, a serią danych (z uwzględnieniem wcześniej dopisa-

nych 3 bitów). Następnie otrzymaną serię zapisujemy w nowej linii

i ustawiając pod nią dzielnik analogicznie jak poprzednio i powtarzamy wcześniej opi-

sane czynności, aż do otrzymania liczby danych równych bądź mniejszych od 3.

Przykładowo:

Seria danych: 00110101000111, dzielnik 1011. Seria danych wraz z dopisanymi wyzerowanymi bitami. CRC

00110101000111000

1011

- Przesunięcie dzielnika oraz wykonanie

alternatywy wykluczającej

00011001000111000

1011

- j/w

00001111000111000

1011

- j/w

00000100000111000

1011

- j/w

00000001100111000

1011

- j/w

00000000111111000

1011

- j/w

00000000010011000

1011

- j/w

00000000000101000

1011

- j/w

00000000000000100 100 Otrzymano kod CRC

Powszechnie stosowane kody są znacznie dłuższe (np. kod stosowany w sieci Ethernet jest 32

bitowy).

Page 15: Walidacja numerów identyfikacyjnych – suma kontrolna w modelu …liceum.fc.pl/pliki/publikacje/walidacja_numerow.pdf · Przykład karty debetowej. Ostatnia liczba jest sumą kontrolną.

15

Podsumowanie

Jak widać z powyższych przykładów stosowanie sumy kontrolnej nie zawsze musi być trud-

ne, a potrafi ułatwić pracę rożnych systemów. Przedstawione wyżej rodzaje sum kontrolnych

oraz systemów walidacji danych są tylko niewielkim procentem (bądź jego ułamkiem) sum

stosowanych powszechnie. Występuje wiele innych algorytmów np. MD5 bądź SHA, które są

dużo bardzie skomplikowane. Są to algorytmy kryptograficzne, ich zastosowanie więc nie ma

na celu walidacji danych, ale ich szyfrowanie. Istnieją także inne rozwiązania sum kontrol-

nych, są to np. rozwiązania autorskie stosowane w specyficznych systemach magazynowania

danych lub przy magistralach mających charakter jednostkowy.

Page 16: Walidacja numerów identyfikacyjnych – suma kontrolna w modelu …liceum.fc.pl/pliki/publikacje/walidacja_numerow.pdf · Przykład karty debetowej. Ostatnia liczba jest sumą kontrolną.

16

Bibliografia

1. http://edu.i-lo.tarnow.pl/inf/alg/002_struct/0011.php

2. http://joemonster.org/art/20248

3. http://maxembedded.files.wordpress.com

4. http://niebezpiecznik.pl/post/bezprzewodowe-hackowanie-samochodow-dzieki-cht-

koszt-20-dolarow/

5. http://niebezpiecznik.pl/post/ikea-hacked-zapraszamy-na-darmowa-kawe/

6. http://pl.wikipedia.org/wiki/1-Wire

7. http://pl.wikipedia.org/wiki/Algorytm_Luhna

8. http://pl.wikipedia.org/wiki/Controller_Area_Network

9. http://pl.wikipedia.org/wiki/Cykliczny_kod_nadmiarowy

10. http://pl.wikipedia.org/wiki/Dow%C3%B3d_osobisty

11. http://pl.wikipedia.org/wiki/Ethernet

12. http://pl.wikipedia.org/wiki/Kontrola_parzysto%C5%9Bci

13. http://pl.wikipedia.org/wiki/MD5

14. http://pl.wikipedia.org/wiki/PESEL

15. http://pl.wikipedia.org/wiki/SHA-1

16. http://pl.wikipedia.org/wiki/Suma_kontrolna

17. http://skiingbusiness.com

18. http://web.securityinnovation.com/

19. http://wipos.p.lodz.pl/zylla/ut/js-pesel.html

20. http://www.aliorbank.pl

21. http://www.auobd2.com

22. http://www.chfi.com/

23. http://www.edmond.nl/typo3temp/pics/9d47d865fe.gif

24. http://www.express.olsztyn.pl/

25. http://www.kalkulatory.gofin.pl/Sprawdzanie-pesel-weryfikacja-pesel,12.html

26. http://www.kartyplatnicze.info

27. http://www.kont.umcs.lublin.pl/zdj/lukowicz/lukowicz_pesel.jpg

28. http://www.liceum.fc.pl/templates/ecoplanet-fts/images/logo.png

29. http://www.nportal.no

30. http://www.pocztowy.pl