Zadanie 2: Kryptosystem Rabina

Wielkość: px
Rozpocząć pokaz od strony:

Download "Zadanie 2: Kryptosystem Rabina"

Transkrypt

1 Informatyka, studia dzienne, inż. II st. semestr VI Podstawy kryptografii 2010/2011 Prowadzący: prof. dr hab. inż. Włodzimierz Jemec poniedziałek, 8:30 Data oddania: Ocena: Paweł Tarasiuk Michał Moroz Robert Staniucha Krzysztof Piątkowski Zadanie 2: Kryptosystem Rabina Streszczenie Celem zadania jest przygotowanie zestawu narzędzi do generowania kluczy, szyfrowania wiadomości za pomocą klucza publicznego i odczytywania szyfrogramów za pomocą klucza prywatnego w oparciu o kryptosystem Rabina. 1. Wstęp Kryptosystem Rabina to jedna z metod szyfrowania, której działanie opiera się na trudności jaką sprawia obecnie faktoryzacja pierwszoliczbowa dużych liczb. Należy oczywiście zaznaczyć, że faktoryzacja jest problemem nietrywialnym wtedy, gdy najmniejszy dzielnik pierwszy jest na tyle duży, że testowanie podzielności przez kolejne liczby pierwsze aż do znalezienia dzielnika trwałoby zbyt długo. Z drugiej strony - jeżeli liczba poddawana faktoryzacji jest iloczynem dwóch liczb pierwszych, należy zadbać, aby różnica między mnożonymi liczbami nie była zbyt mała - w przeciwnym wypadku iloczyn będzie podatny na faktoryzację dokonywaną algorytmem Fermata. Kluczem prywatnym w kryptosystemie Rabina jest dwuelementowy zbiór liczb pierwszych {p, q}, natomiast kluczem publicznym - ich iloczyn n = p q. Szyfrowana wiadomość musi zostać podzielona na bloki na tyle małe, aby po dodaniu do bloku wiadomości danych kontrolnych wszystkie możliwe do za- 1

2 pisania wyniki konkatenacji dało się ponumerować liczbami ze zbioru Z n. Każdy blok wiadomości przekształcany jest na blok szyfrogramu, który musi być przynajmniej na tyle długi, aby każdą z liczb Z n dało się jednoznacznie przedstawić jako blok. Oznacza to dokładnie tyle, że blok szyfrogramu musi być minimalnie dłuższy od bloku wiadomości powiększonego o dane kontrolne (gdyż liczba n zdecydowanie nie jest dużą potęgą małej liczby - a tylko jeśli n byłoby potęgą długości alfabetu, możliwe byłoby aby długość bloku szyfrogramu wyrażona w znakach alfabetu mogłaby być równa długości bloku wiadomości powiększonego o dane kontrolne). Niech m będzie liczbą ze zbioru Z n, którą przyporządkowaliśmy injekcyjnie do danego bloku wiadomości powiększonego o dane kontrolne. Wówczas odpowiadający mu blok szyfrogramu będzie po prostu serializacją liczby (m 2 ) n, czyli wartością homomorfizmu z Z na Z n dla liczby całkowitej b 2. Najciekawszym elementem kryptosystemu Rabina jest odczytywanie szyfrogramu za pomocą klucza prywatnego. Niech c Z n będzie liczbą z której powstał odczytywany blok szyfrogramu. Za pomocą algorytmu Tonelliego-Shanksa jesteśmy w stanie znaleźć pierwiastki liczby c w pierścieniach Z p i Z q, czyli takie liczby s p Z p, s q Z q, że: { s 2 p c (mod p) s 2 q c (mod q) Gdyby liczby p i q przystawały do 3 modulo 4, wyznaczanie pierwiastków byłoby bardzo proste - jednak algorytm Tonelliego-Shanksa sprawia, że przy niedużym narzucie obliczeniowym możemy korzystać ze wszystkich liczb pierwszych - może to nawet zmylić kogoś, kto próbowałby złamać naszą implementację kryptosystemu Rabina. W wyniku obliczeń otrzymujemy, że reszta z dzielenia zaszyfrowanej wiadomości m przez p wynosi s p lub s p, natomiast reszta z dzielenia przez q wynosi s q lub s q. Liczby p i q to duże liczby pierwsze, zatem są nieparzyste, więc s p s p (mod p) i s q s q (mod q). Dlatego zawsze mamy dokładnie cztery możliwości wyboru pary reszt z dzielenia przez p oraz przez q. Dla każdej pary jesteśmy w stanie (na mocy chińskiego twierdzenia o resztach) złączyć kongruencje modulo p oraz q do jednej kongruencji modulo n (gdyż p i q są różnymi liczbami pierwszymi, więc w szczególności - są względnie pierwsze). W wyniku łączenia czterech par kongruencji otrzymamy cztery (niekoniecznie różne) wyniki. Jeżeli dodawanych do bloków wiadomości danych kontrolnych będzie odpowiednie dużo, osiągnięte zostanie zadowalające prawdopodobieństwo, że dla każdego bloku wiadomości powstanie taki blok szyfrogramu, że spośród czterech odzyskanych liczb jedynie ta zamierzona będzie prawidłowa w sensie danych kontrolnych. Stosowany przez nas nadmiar danych kontrolnych sprawia, że odczyt wiadomości jest bezproblemowy. 2

3 2. Implementacja Nasza implementacja została przygotowana w języku Python. Język ten w przypadku przepełnień automatycznie przekształca obsługiwane sprzętowo liczby całkowite do postaci dużych liczb zaimplementowanych wewnątrz interpretera, przez co obsługa dużych liczb całkowitych jest w nim całkowicie przezroczysta dla programisty. Jednakże poza samymi dużymi liczbami i ich najprostszą arytmetyką (dodawanie, odejmowanie, mnożenie, dzielenie, modulo) które są wbudowane w język Python, wszystkie elementy kryptosystemu zaimplementowaliśmy samodzielnie. Projekt stanowi zbiór modułów udostępniających potrzebne funkcje oraz graficzny interfejs wykorzystujący bindingi biblioteki GTK+, który stanowi kompletny zestaw narzędzi do posługiwania się kryptosystemem - generator kluczy, szyfrowanie kluczem publicznym, oraz odczytywanie szyfrogramu kluczem prywatnym. Przygotowane przez nas narzędzia oparte są na ustalonym przez użytkownika alfabecie, który jest reprezentowany pewnym ciągiem różnych znaków unicode, którego długość może być dowolną liczbą większą od 2 (zatem rozumowanie jest oderwane od pojęć technologicznych takich jak np. bajty). Argumentem który będzie decydował o wielkości liczb pierwszych i sile kryptosystemu jest z kolei rozmiar bloku danych z wiadomości, który będzie przekształcany w blok szyfrogramu. W zależności od długości alfabetu i rozmiaru bloku, program wyświetla oszacowanie złożoności klucza w bitach. Duże bloki skutkują długim czasem generowania klucza, oraz dużym nadmiarem długości szyfrogramu krótkich wiadomościach. Jeżeli alfabet ma n znaków i długość bloku to b, to blok wiadomości jest równoważny liczbie całkowitej nieujemnej mniejszej niż n b. Dodanie danych kontrolnych polega w naszej implementacji na dwukrotnym powtórzeniu bloku wiadomości - zatem dostajemy ciąg 2b znaków alfabetu, a liczba możliwych takich ciągów to n 2b. Aby zaszyfrować taki blok, potrzebujemy klucza publicznego będącego liczbą (numerując wariacje od zera) nie mniejszą niż n 2b, czyli składającego się z ponad 2b znaków alfabetu. Aby umówić się na deterministyczną postać klucza publicznego (dla zadanego alfabetu i rozmiaru bloku), ustalamy że będzie on po prostu ciągiem 2b + 1 znaków alfabetu, lub innymi słowy - liczbą z przedziału [n 2b, n 2b+1 ). Nie można jednak zapominać czym jest klucz publiczny - musi to być iloczyn dwóch liczb pierwszych. Aby iloczyn dwóch liczb mieścił się w przedziale [n 2b, n 2b+1 ), obie te liczby muszą znajdować się w przedziale [n b, n b n). Gdybyśmy natomiast chcieli, aby iloczyn dwóch w miarę równych liczb trafił dokładnie w środek przedziału, musiałyby one wynosić około n b 4 n. Z nierówności między średnią arytmetyczną a geometryczną wynika, że: n b 4 n n b < n b n n b 4 n 2 n b 4 n n b < n b n 3

4 Dlatego liczba pierwsza p losowana z przedziału [n b, 2 n b 4 n n b ] będzie liczbą nadającą się do zastosowania w kluczu prywatnym - wybrany przedział losowania nie jest przypadkowy, gdyż jego środek to właśnie n b 4 n - jest to dobre przybliżenie wartości oczekiwanej liczby p, gdyż poruszamy się w obrębie określonego rzędu wielkości liczb, więc zmiany gęstości rozłożenia liczb pierwszych w tym przedziale są znikome. Liczbę pierwszą q losujemy z takiego przedziału, aby było ana prawidłowa, czyli [ n 2b /p, n 2b+1 /p ). Wówczas istotnie p q [n 2b, n 2b+1 ) i prawdopodobieństwa wylosowania każdej z par liczb pierwszych są dużo bardziej wyrównane, niż gdyby p losować z całego przedziału dozwolonych wartości (gdybyśmy tak robili, prawdopodobne byłyby duże wartości p, które implikowałyby znacznie częstsze występowanie wartości q bardzo bliskich dopuszczalnemu minimum). Zauważmy, że przedziały z których losujemy p i q są tak dobrane, że obie te liczby są oczywiście mniejsze niż n b+1 (choć mogą być rzecz jasna większe od n b ) - dlatego wybraliśmy konwencję zapisywania liczb p i q w postaci ciągów znaków alfabetu o długości b + 1. Format klucza prywatnego to po prostu konkatenacja ciągów otrzymanych dla p i q, czyli 2b + 2 znaków alfabetu. Liczby rzędu n b w praktyce są na tyle duże, że otrzymanie małej wartości różnicy p q pozwalającej na atak na klucz publiczny algorytmem faktoryzacji Fermata jest bardzo małe. Ciekawym problemem przy jest sama metoda losowania liczby pierwszej z zadanego przedziału. Zastosowany algorytm zakłada nieduży stosunek między końcem a początkiem przedziału - wtedy liczby pierwsze będą w miarę równo rozłożone w tym przedziale (w zastosowaniu opisanym powyżej stosunek ten nie przekracza n). Dla żądanego przedziału [a, b], wybierana jest losowo liczba całkowita c z tego przedziału, a następnie szukana jest największa liczba pierwsza nie większa od c. Jeżeli liczba c okazała się tak mała, że w przedziale [a, c] nie ma liczb pierwszych, zamiast pierwotnie wylosowanej liczby c rozważamy b+a c - czyli liczbę blisko drugiego końca przedziału, różniącą się od b o tyle, o ile c różniło się od a. Jeżeli także przedział [a, b+a c] nie zawiera liczb pierwszych, mamy do czynienia z przypadkiem patologicznym i wskazujemy największą liczbę pierwszą nie większą od b - będzie to wówczas prawdopodobnie jedyna liczba pierwsza w przedziale, albo po prostu największa liczba pierwsza mniejsza od a (jeżli przedział w ogóle nie zawiera liczb pierwszych). Sam proces szukania największej liczby pierwszej nie większej od danej liczby odbywa się poprzez połączenie sita pierwszoliczbowego (liczby mające dzielnik mniejszy od są odrzucane od razu - wszystkie takie dzielniki są uprzednio stablicowane) oraz testów Millera-Rabina dla pewnego zbioru świadków. Jako kompromis między bezpieczeństwem a czasem testów wybraliśmy, aby wykonywać testy Millera-Raina stosując 20 najmniejszych liczb pierwszych jako świadków pierwszości. Szyfrowanie odbywa się w prosty sposób - dla każdych b znaków wiadomości rozważany jest ciąg długości 2b (z danymi kontrolnymi), który przekształcany jest w liczbę całkowitą nieujemną mniejszą od n 2b, z kwadratu której wyciągamy resztę z dzielenia przez klucz publiczny - reszta ta nie jest mniejsza niż sam klucz, więc musi być mniejsza od n 2b+1, zatem da się ją za- 4

5 pisać jako 2b+1 znaków alfabetu (taką właśnie długość ma blok szyfrogramu). Proces odczytywania szyfrogramu za pomocą liczb p i q wykorzystuje algorytm Tonelliego-Shanksa i ze względu na dużą ilość danych kontrolnych przebiega bardzo dobrze. Praktyka pokazuje, że błędy się nie zdarzają - dla konkretnego, pojedynczego bloku ryzyko że zostanie on odczytany błędnie nie przekracza 1 (1 n b ) 3. Dla 64 znaków alfabetu i długości bloku równej 10 wynosi to około 2, Trudniej jednak oszacować prawdopodobieństwo, że dla żadnego możliwego bloku wiadomości nie zdarzy się błąd. Szacowanie (ze schematu Bernoulliego) wartości wyrażenia (1 (1 n b ) 3 ) nb to wyzwanie, które - szczególnie dla nieco większych b - przerasta nawet narzędzia do obliczeń zmiennoprzecinkowych o elastycznie ustalanej precyzji. 3. Dyskusja Kryptosystem Rabina jest dobrym systemem szyfrowania asymetrycznego i dowodzi się że jego złamanie jest równoważne rozwiązaniu problemu faktoryzacji dużych liczb, czyli równie skomplikowane co w przypadku RSA. Można zatem stosować ten kryptosystem do wysyłania wiadomości, które może czytać tylko posiadacz klucza prywatnego, bądź do podpisu cyfrowego (implementowaliśmy tylko pierwsze z zastosowań). Jedyną wadą kryptosystemu Rabina jest teoretyczne ryzyko wystąpienia niejednoznaczności przy odczycie szyfrogramu przez posiadacza klucza prywatnego. Odpowiednio duże dane weryfikujące pozwalają zredukować to ryzyko, ale nigdy zniwelować je do zera. Tworząc klucz trzeba oczywiście uważać, czy nie trafia się na przypadek w którym faktoryzacja klucza publicznego nie jest szczególnie prosta. Rozważania na temat działania kryptosystemu rabina doprowadziły nas jednak także do bardziej wyszukanego błędu w rozumowaniu, który można popełnić implementując coś w oparciu o ten kryptosystem. Wyobraźmy sobie, że odbiorca z nadawcą komunikują się na bieżąco i w przypadku wystąpienia niejednoznaczności przy odczycie szyfrogramu odbiorca informuje nadawcę, że nie może odczytać wskazanego bloku i że waha się między kilkoma interpretacjami, które przekazuje nadawcy. Okazuje się, że posiadanie dwóch różnych liczb a i b których kwadraty dają tą samą resztę z dzielenia przez p q dawałoby nadawcy szansę na przechwycenie klucza prywatnego. Skoro a 2 b 2 0 (mod p q), to (a+b)(a b) 0 (mod p q), czyli... (a+b)(a b) jest wielokrotnością p q. Daje to ogromna prawdopodobieństwo, że jedna z liczb postaci: NWD a + b ( (a+b)(a b) p q ),, a + b NWD a b ( (a+b)(a b) p q ), a b Jest nietrywialnym dzielnikiem liczby p q czyli wynosi p lub q. 5

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 15, Kryptografia: algorytmy asymetryczne (RSA)

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 15, Kryptografia: algorytmy asymetryczne (RSA) Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 15, 19.06.2005 1 Kryptografia: algorytmy asymetryczne (RSA) Niech E K (x) oznacza szyfrowanie wiadomości x kluczem K (E od encrypt, D K (x)

Bardziej szczegółowo

Dr inż. Robert Wójcik, p. 313, C-3, tel Katedra Informatyki Technicznej (K-9) Wydział Elektroniki (W-4) Politechnika Wrocławska

Dr inż. Robert Wójcik, p. 313, C-3, tel Katedra Informatyki Technicznej (K-9) Wydział Elektroniki (W-4) Politechnika Wrocławska Dr inż. Robert Wójcik, p. 313, C-3, tel. 320-27-40 Katedra Informatyki Technicznej (K-9) Wydział Elektroniki (W-4) Politechnika Wrocławska E-mail: Strona internetowa: robert.wojcik@pwr.edu.pl google: Wójcik

Bardziej szczegółowo

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 14, Kryptografia: algorytmy asymetryczne (RSA)

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 14, Kryptografia: algorytmy asymetryczne (RSA) Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 14, 7.06.2005 1 Kryptografia: algorytmy asymetryczne (RSA) Niech E K (x) oznacza szyfrowanie wiadomości x kluczem K (E od encrypt, D K (x)

Bardziej szczegółowo

Wybrane zagadnienia teorii liczb

Wybrane zagadnienia teorii liczb Wybrane zagadnienia teorii liczb Podzielność liczb NWW, NWD, Algorytm Euklidesa Arytmetyka modularna Potęgowanie modularne Małe twierdzenie Fermata Liczby pierwsze Kryptosystem RSA Podzielność liczb Relacja

Bardziej szczegółowo

Przykładowe zadania z teorii liczb

Przykładowe zadania z teorii liczb Przykładowe zadania z teorii liczb I. Podzielność liczb całkowitych. Liczba a = 346 przy dzieleniu przez pewną liczbę dodatnią całkowitą b daje iloraz k = 85 i resztę r. Znaleźć dzielnik b oraz resztę

Bardziej szczegółowo

LICZBY PIERWSZE. 14 marzec 2007. Jeśli matematyka jest królową nauk, to królową matematyki jest teoria liczb. C.F.

LICZBY PIERWSZE. 14 marzec 2007. Jeśli matematyka jest królową nauk, to królową matematyki jest teoria liczb. C.F. Jeśli matematyka jest królową nauk, to królową matematyki jest teoria liczb. C.F. Gauss (1777-1855) 14 marzec 2007 Zasadnicze twierdzenie teorii liczb Zasadnicze twierdzenie teorii liczb Ile jest liczb

Bardziej szczegółowo

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 5

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś   Wykład 5 Kryptografia z elementami kryptografii kwantowej Ryszard Tanaś http://zon8.physd.amu.edu.pl/~tanas Wykład 5 Spis treści 9 Algorytmy asymetryczne RSA 3 9.1 Algorytm RSA................... 4 9.2 Szyfrowanie.....................

Bardziej szczegółowo

Kongruencje twierdzenie Wilsona

Kongruencje twierdzenie Wilsona Kongruencje Wykład 5 Twierdzenie Wilsona... pojawia się po raz pierwszy bez dowodu w Meditationes Algebraicae Edwarda Waringa (1770), profesora (Lucasian Professor) matematyki w Cambridge, znanego głównie

Bardziej szczegółowo

n = p q, (2.2) przy czym p i q losowe duże liczby pierwsze.

n = p q, (2.2) przy czym p i q losowe duże liczby pierwsze. Wykład 2 Temat: Algorytm kryptograficzny RSA: schemat i opis algorytmu, procedura szyfrowania i odszyfrowania, aspekty bezpieczeństwa, stosowanie RSA jest algorytmem z kluczem publicznym i został opracowany

Bardziej szczegółowo

Parametry systemów klucza publicznego

Parametry systemów klucza publicznego Parametry systemów klucza publicznego Andrzej Chmielowiec Instytut Podstawowych Problemów Techniki Polskiej Akademii Nauk 24 marca 2010 Algorytmy klucza publicznego Zastosowania algorytmów klucza publicznego

Bardziej szczegółowo

Teoria liczb. Magdalena Lemańska. Magdalena Lemańska,

Teoria liczb. Magdalena Lemańska. Magdalena Lemańska, Teoria liczb Magdalena Lemańska Literatura Matematyka Dyskretna Andrzej Szepietowski http://wazniak.mimuw.edu.pl/ Discrete Mathematics Seymour Lipschutz, Marc Lipson Wstęp Teoria liczb jest dziedziną matematyki,

Bardziej szczegółowo

Zarys algorytmów kryptograficznych

Zarys algorytmów kryptograficznych Zarys algorytmów kryptograficznych Laboratorium: Algorytmy i struktury danych Spis treści 1 Wstęp 1 2 Szyfry 2 2.1 Algorytmy i szyfry........................ 2 2.2 Prosty algorytm XOR......................

Bardziej szczegółowo

Największy wspólny dzielnik Algorytm Euklidesa (także rozszerzony) WZAiP1: Chińskie twierdzenie o resztach

Największy wspólny dzielnik Algorytm Euklidesa (także rozszerzony) WZAiP1: Chińskie twierdzenie o resztach Największy wspólny dzielnik Algorytm Euklidesa (także rozszerzony) Chińskie twierdzenie o resztach Wybrane zagadnienia algorytmiki i programowania I 27 października 2010 Największy wspólny dzielnik - definicja

Bardziej szczegółowo

Podstawy systemów kryptograficznych z kluczem jawnym RSA

Podstawy systemów kryptograficznych z kluczem jawnym RSA Podstawy systemów kryptograficznych z kluczem jawnym RSA RSA nazwa pochodząca od nazwisk twórców systemu (Rivest, Shamir, Adleman) Systemów z kluczem jawnym można używać do szyfrowania operacji przesyłanych

Bardziej szczegółowo

Kongruencje pierwsze kroki

Kongruencje pierwsze kroki Kongruencje wykład 1 Definicja Niech n będzie dodatnią liczbą całkowitą, natomiast a i b dowolnymi liczbami całkowitymi. Liczby a i b nazywamy przystającymi (kongruentnymi) modulo n i piszemy a b (mod

Bardziej szczegółowo

1. Liczby wymierne. x dla x 0 (wartością bezwzględną liczby nieujemnej jest ta sama liczba)

1. Liczby wymierne. x dla x 0 (wartością bezwzględną liczby nieujemnej jest ta sama liczba) 1. Liczby wymierne. - wartość bezwzględna liczby. dla 0 (wartością bezwzględną liczby nieujemnej jest ta sama liczba) - dla < 0 ( wartością bezwzględną liczby ujemnej jest liczba do niej przeciwna) W interpretacji

Bardziej szczegółowo

Matematyka dyskretna

Matematyka dyskretna Matematyka dyskretna Wykład 6: Ciała skończone i kongruencje Gniewomir Sarbicki 2 marca 2017 Relacja przystawania Definicja: Mówimy, że liczby a, b Z przystają modulo m (co oznaczamy jako a = b (mod m)),

Bardziej szczegółowo

2. Liczby pierwsze i złożone, jednoznaczność rozkładu na czynniki pierwsze, największy wspólny dzielnik, najmniejsza wspólna wielokrotność.

2. Liczby pierwsze i złożone, jednoznaczność rozkładu na czynniki pierwsze, największy wspólny dzielnik, najmniejsza wspólna wielokrotność. 2. Liczby pierwsze i złożone, jednoznaczność rozkładu na czynniki pierwsze, największy wspólny dzielnik, najmniejsza wspólna wielokrotność. 11 października 2008 r. 19. Wskazać takie liczby naturalne m,

Bardziej szczegółowo

Wykład VII. Kryptografia Kierunek Informatyka - semestr V. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej

Wykład VII. Kryptografia Kierunek Informatyka - semestr V. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej Wykład VII Kierunek Informatyka - semestr V Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Problem pakowania plecaka System kryptograficzny Merklego-Hellmana

Bardziej szczegółowo

Spis treści. Przedmowa... 9

Spis treści. Przedmowa... 9 Spis treści Przedmowa... 9 1. Algorytmy podstawowe... 13 1.1. Uwagi wstępne... 13 1.2. Dzielenie liczb całkowitych... 13 1.3. Algorytm Euklidesa... 20 1.4. Najmniejsza wspólna wielokrotność... 23 1.5.

Bardziej szczegółowo

Zegar ten przedstawia reszty z dzielenia przez 6. Obrazuje on jak kolejne liczby można przyporządkować do odpowiednich pokazanych na zegarze grup.

Zegar ten przedstawia reszty z dzielenia przez 6. Obrazuje on jak kolejne liczby można przyporządkować do odpowiednich pokazanych na zegarze grup. Rozgrzewka (Ci, którzy znają pojęcie kongruencji niech przejdą do zadania 3 bc i 4, jeśli i te zadania są za proste to proponuje zadanie 5): Zad.1 a) Marek wyjechał pociągiem do Warszawy o godzinie 21

Bardziej szczegółowo

Algorytmy asymetryczne

Algorytmy asymetryczne Algorytmy asymetryczne Klucze występują w parach jeden do szyfrowania, drugi do deszyfrowania (niekiedy klucze mogą pracować zamiennie ) Opublikowanie jednego z kluczy nie zdradza drugiego, nawet gdy można

Bardziej szczegółowo

Zadania do samodzielnego rozwiązania

Zadania do samodzielnego rozwiązania Zadania do samodzielnego rozwiązania I. Podzielność liczb całkowitych 1. Pewna liczba sześciocyfrowa a kończy się cyfrą 5. Jeśli tę cyfrę przestawimy na miejsce pierwsze ze strony lewej, to otrzymamy nową

Bardziej szczegółowo

RSA. R.L.Rivest A. Shamir L. Adleman. Twórcy algorytmu RSA

RSA. R.L.Rivest A. Shamir L. Adleman. Twórcy algorytmu RSA RSA Symetryczny system szyfrowania to taki, w którym klucz szyfrujący pozwala zarówno szyfrować dane, jak również odszyfrowywać je. Opisane w poprzednich rozdziałach systemy były systemami symetrycznymi.

Bardziej szczegółowo

MADE IN CHINA czyli SYSTEM RESZTOWY

MADE IN CHINA czyli SYSTEM RESZTOWY MADE IN CHINA czyli SYSTEM RESZTOWY System ten oznaczmy skrótem RNS (residue number system czyli po prostu resztowy system liczbowy). Wartość liczby w tym systemie reprezentuje wektor (zbiór) reszt z dzielenia

Bardziej szczegółowo

Zadanie 1. Potęgi (14 pkt)

Zadanie 1. Potęgi (14 pkt) 2 Egzamin maturalny z informatyki Zadanie 1. otęgi (14 pkt) W poniższej tabelce podane są wartości kolejnych potęg liczby 2: k 0 1 2 3 4 5 6 7 8 9 10 2 k 1 2 4 8 16 32 64 128 256 512 1024 Ciąg a=(a 0,

Bardziej szczegółowo

Matematyka dyskretna

Matematyka dyskretna Matematyka dyskretna Wykład 10: Algorytmy teorii liczb Gniewomir Sarbicki Literatura A. Chrzęszczyk Algorytmy teorii liczb i kryptografii w przykładach Wydawnictwo BTC 2010 N. Koblitz Wykład z teorii liczb

Bardziej szczegółowo

Wykład 4. Określimy teraz pewną ważną klasę pierścieni.

Wykład 4. Określimy teraz pewną ważną klasę pierścieni. Wykład 4 Określimy teraz pewną ważną klasę pierścieni. Twierdzenie 1 Niech m, n Z. Jeśli n > 0 to istnieje dokładnie jedna para licz q, r, że: m = qn + r, 0 r < n. Liczbę r nazywamy resztą z dzielenia

Bardziej szczegółowo

Zadanie 1: Protokół ślepych podpisów cyfrowych w oparciu o algorytm RSA

Zadanie 1: Protokół ślepych podpisów cyfrowych w oparciu o algorytm RSA Informatyka, studia dzienne, inż. I st. semestr VI Podstawy Kryptografii - laboratorium 2010/2011 Prowadzący: prof. dr hab. Włodzimierz Jemec poniedziałek, 08:30 Data oddania: Ocena: Marcin Piekarski 150972

Bardziej szczegółowo

Kongruencje. Sławomir Cynk. 24 września Nowy Sącz. Instytut Matematyki Uniwersytetu Jagiellońskiego

Kongruencje. Sławomir Cynk. 24 września Nowy Sącz. Instytut Matematyki Uniwersytetu Jagiellońskiego Instytut Matematyki Uniwersytetu Jagiellońskiego 24 września 2008 Nowy Sącz Przykłady W. Sierpiński, 250 zadań z elementarnej teorii liczb, Biblioteczka Matematyczna 17. Zadanie 3. Pokazać, że jeżeli 7

Bardziej szczegółowo

Matematyka dyskretna

Matematyka dyskretna Matematyka dyskretna Wykład 10: Algorytmy teorii liczb Gniewomir Sarbicki Literatura A. Chrzęszczyk Algorytmy teorii liczb i kryptografii w przykładach Wydawnictwo BTC 2010 N. Koblitz Wykład z teorii liczb

Bardziej szczegółowo

Projekt AS KOMPETENCJI jest współfinansowany przez Unię Europejską w ramach środków Europejskiego Funduszu Społecznego

Projekt AS KOMPETENCJI jest współfinansowany przez Unię Europejską w ramach środków Europejskiego Funduszu Społecznego Projekt AS KOMPETENCJI jest współfinansowany przez Unię Europejską w ramach środków Europejskiego Funduszu Społecznego Program Operacyjny Kapitał Ludzki 2007-2013 CZŁOWIEK NAJLEPSZA INWESTYCJA Publikacja

Bardziej szczegółowo

Algorytmy i struktury danych. Wykład 4

Algorytmy i struktury danych. Wykład 4 Wykład 4 Różne algorytmy - obliczenia 1. Obliczanie wartości wielomianu 2. Szybkie potęgowanie 3. Algorytm Euklidesa, liczby pierwsze, faktoryzacja liczby naturalnej 2017-11-24 Algorytmy i struktury danych

Bardziej szczegółowo

Matematyka dyskretna

Matematyka dyskretna Matematyka dyskretna Wykład 6: Ciała skończone i kongruencje Gniewomir Sarbicki 24 lutego 2015 Relacja przystawania Definicja: Mówimy, że liczby a, b Z przystają modulo m (co oznaczamy jako a = b (mod

Bardziej szczegółowo

Jarosław Wróblewski Matematyka Elementarna, lato 2012/13. W dniu 21 lutego 2013 r. omawiamy test kwalifikacyjny.

Jarosław Wróblewski Matematyka Elementarna, lato 2012/13. W dniu 21 lutego 2013 r. omawiamy test kwalifikacyjny. W dniu 21 lutego 2013 r. omawiamy test kwalifikacyjny. Uwaga: Przyjmujemy, że 0 nie jest liczbą naturalną, tzn. liczby naturalne są to liczby całkowite dodatnie. 1. Dane są liczby naturalne m, n. Wówczas

Bardziej szczegółowo

Ataki na RSA. Andrzej Chmielowiec. Centrum Modelowania Matematycznego Sigma. Ataki na RSA p. 1

Ataki na RSA. Andrzej Chmielowiec. Centrum Modelowania Matematycznego Sigma. Ataki na RSA p. 1 Ataki na RSA Andrzej Chmielowiec andrzej.chmielowiec@cmmsigma.eu Centrum Modelowania Matematycznego Sigma Ataki na RSA p. 1 Plan prezentacji Wprowadzenie Ataki algebraiczne Ataki z kanałem pobocznym Podsumowanie

Bardziej szczegółowo

Algorytm. a programowanie -

Algorytm. a programowanie - Algorytm a programowanie - Program komputerowy: Program komputerowy można rozumieć jako: kod źródłowy - program komputerowy zapisany w pewnym języku programowania, zestaw poszczególnych instrukcji, plik

Bardziej szczegółowo

Zastosowanie teorii liczb w kryptografii na przykładzie szyfru RSA

Zastosowanie teorii liczb w kryptografii na przykładzie szyfru RSA Zastosowanie teorii liczb w kryptografii na przykładzie szyfru RSA Grzegorz Bobiński Uniwersytet Mikołaja Kopernika Toruń, 22.05.2010 Kodowanie a szyfrowanie kodowanie sposoby przesyłania danych tak, aby

Bardziej szczegółowo

Algorytmy w teorii liczb

Algorytmy w teorii liczb Łukasz Kowalik, ASD 2004: Algorytmy w teorii liczb 1 Algorytmy w teorii liczb Teoria liczb jest działem matemtyki dotyczącym własności liczb naturalnych. Rozważa się zagadnienia związane z liczbami pierwszymi,

Bardziej szczegółowo

4. Postęp arytmetyczny i geometryczny. Wartość bezwzględna, potęgowanie i pierwiastkowanie liczb rzeczywistych.

4. Postęp arytmetyczny i geometryczny. Wartość bezwzględna, potęgowanie i pierwiastkowanie liczb rzeczywistych. Jarosław Wróblewski Matematyka dla Myślących, 008/09. Postęp arytmetyczny i geometryczny. Wartość bezwzględna, potęgowanie i pierwiastkowanie liczb rzeczywistych. 15 listopada 008 r. Uwaga: Przyjmujemy,

Bardziej szczegółowo

ARYTMETYKA BINARNA. Dziesiątkowy system pozycyjny nie jest jedynym sposobem kodowania liczb z jakim mamy na co dzień do czynienia.

ARYTMETYKA BINARNA. Dziesiątkowy system pozycyjny nie jest jedynym sposobem kodowania liczb z jakim mamy na co dzień do czynienia. ARYTMETYKA BINARNA ROZWINIĘCIE DWÓJKOWE Jednym z najlepiej znanych sposobów kodowania informacji zawartej w liczbach jest kodowanie w dziesiątkowym systemie pozycyjnym, w którym dla przedstawienia liczb

Bardziej szczegółowo

Arytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI

Arytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI Arytmetyka komputera Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka Opracował: Kamil Kowalski klasa III TI Spis treści 1. Jednostki informacyjne 2. Systemy liczbowe 2.1. System

Bardziej szczegółowo

Algorytm Euklidesa. Największy wspólny dzielnik dla danych dwóch liczb całkowitych to największa liczba naturalna dzieląca każdą z nich bez reszty.

Algorytm Euklidesa. Największy wspólny dzielnik dla danych dwóch liczb całkowitych to największa liczba naturalna dzieląca każdą z nich bez reszty. Algorytm Euklidesa Algorytm ten, jak wskazuje jego nazwa, został zaprezentowany przez greckiego matematyka - Euklidesa, żyjącego w w latach około 300r. p.n.e., w jego podstawowym dziele pt. Elementy. Algorytm

Bardziej szczegółowo

Bezpieczeństwo systemów komputerowych

Bezpieczeństwo systemów komputerowych Bezpieczeństwo systemów komputerowych Szyfry asymetryczne Aleksy Schubert (Marcin Peczarski) Instytut Informatyki Uniwersytetu Warszawskiego 10 listopada 2015 Na podstawie wykładu Anny Kosieradzkiej z

Bardziej szczegółowo

1. Liczby naturalne, podzielność, silnie, reszty z dzielenia

1. Liczby naturalne, podzielność, silnie, reszty z dzielenia 1. Liczby naturalne, podzielność, silnie, reszty z dzielenia kwadratów i sześcianów przez małe liczby, cechy podzielności przez 2, 4, 8, 5, 25, 125, 3, 9. 26 września 2009 r. Uwaga: Przyjmujemy, że 0 nie

Bardziej szczegółowo

Liczby pierwsze. Kacper Żurek, uczeń w Gimnazjum nr 1 im. Jana Pawła II w Giżycku.

Liczby pierwsze. Kacper Żurek, uczeń w Gimnazjum nr 1 im. Jana Pawła II w Giżycku. Liczby pierwsze Kacper Żurek, uczeń w Gimnazjum nr 1 im. Jana Pawła II w Giżycku. Liczbą pierwszą nazywany każdą taką liczbę naturalną, która posiada dokładnie dwa dzielniki naturalne, czyli jest podzielna

Bardziej szczegółowo

1. Wykład NWD, NWW i algorytm Euklidesa.

1. Wykład NWD, NWW i algorytm Euklidesa. 1.1. NWD, NWW i algorytm Euklidesa. 1. Wykład 1 Twierdzenie 1.1 (o dzieleniu z resztą). Niech a, b Z, b 0. Wówczas istnieje dokładnie jedna para liczb całkowitych q, r Z taka, że a = qb + r oraz 0 r< b.

Bardziej szczegółowo

Matematyka dyskretna. Wykład 11: Kryptografia z kluczem publicznym. Gniewomir Sarbicki

Matematyka dyskretna. Wykład 11: Kryptografia z kluczem publicznym. Gniewomir Sarbicki Matematyka dyskretna Wykład 11: Kryptografia z kluczem publicznym Gniewomir Sarbicki Idea kryptografii z kluczem publicznym: wiadomość f szyfrogram f 1 wiadomość Funkcja f (klucz publiczny) jest znana

Bardziej szczegółowo

Lista 2 logika i zbiory. Zad 1. Dane są zbiory A i B. Sprawdź, czy zachodzi któraś z relacji:. Wyznacz.

Lista 2 logika i zbiory. Zad 1. Dane są zbiory A i B. Sprawdź, czy zachodzi któraś z relacji:. Wyznacz. Lista 2 logika i zbiory. Zad 1. Dane są zbiory A i B. Sprawdź, czy zachodzi któraś z relacji:. Wyznacz. Na początek wypiszmy elementy obu zbiorów: A jest zbiorem wszystkich liczb całkowitych, które podniesione

Bardziej szczegółowo

Twierdzenie Eulera. Kongruencje wykład 6. Twierdzenie Eulera

Twierdzenie Eulera. Kongruencje wykład 6. Twierdzenie Eulera Kongruencje wykład 6 ... Euler, 1760, Sankt Petersburg Dla każdego a m zachodzi kongruencja a φ(m) 1 (mod m). Przypomnijmy: φ(m) to liczba reszt modulo m względnie pierwszych z m; φ(m) = m(1 1/p 1 )...

Bardziej szczegółowo

Sumy kwadratów kolejnych liczb naturalnych

Sumy kwadratów kolejnych liczb naturalnych Sumy kwadratów kolejnych liczb naturalnych Andrzej Nowicki 24 maja 2015, wersja kk-17 Niech m < n będą danymi liczbami naturalnymi. Interesować nas będzie równanie ( ) y 2 + (y + 1) 2 + + (y + m 1) 2 =

Bardziej szczegółowo

Jarosław Wróblewski Matematyka Elementarna, lato 2014/15

Jarosław Wróblewski Matematyka Elementarna, lato 2014/15 Ćwiczenia 5/6, 10, 17.03.2015 (obie grupy) 33. Połączyć podane warunki w grupy warunków równoważnych dla dowolnej liczby naturalnej n. a) liczba n jest nieparzysta b) liczba n jest względnie pierwsza z

Bardziej szczegółowo

Jarosław Wróblewski Matematyka Elementarna, zima 2015/16

Jarosław Wróblewski Matematyka Elementarna, zima 2015/16 Na ćwiczeniach 6.0.205 omawiamy test kwalifikacyjny. Uwaga: Przyjmujemy, że 0 nie jest liczbą naturalną, tzn. liczby naturalne są to liczby całkowite dodatnie.. Sformułować uogólnione cechy podzielności

Bardziej szczegółowo

Programowanie w Baltie klasa VII

Programowanie w Baltie klasa VII Programowanie w Baltie klasa VII Zadania z podręcznika strona 127 i 128 Zadanie 1/127 Zadanie 2/127 Zadanie 3/127 Zadanie 4/127 Zadanie 5/127 Zadanie 6/127 Ten sposób pisania programu nie ma sensu!!!.

Bardziej szczegółowo

Funkcje wymierne. Jerzy Rutkowski. Działania dodawania i mnożenia funkcji wymiernych określa się wzorami: g h + k l g h k.

Funkcje wymierne. Jerzy Rutkowski. Działania dodawania i mnożenia funkcji wymiernych określa się wzorami: g h + k l g h k. Funkcje wymierne Jerzy Rutkowski Teoria Przypomnijmy, że przez R[x] oznaczamy zbiór wszystkich wielomianów zmiennej x i o współczynnikach rzeczywistych Definicja Funkcją wymierną jednej zmiennej nazywamy

Bardziej szczegółowo

Wstęp do Informatyki

Wstęp do Informatyki Wstęp do Informatyki Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bożena Woźna-Szcześniak (AJD) Wstęp do Informatyki Wykład 4 1 / 1 DZIELENIE LICZB BINARNYCH Dzielenie

Bardziej szczegółowo

Wstęp do Informatyki zadania ze złożoności obliczeniowej z rozwiązaniami

Wstęp do Informatyki zadania ze złożoności obliczeniowej z rozwiązaniami Wstęp do Informatyki zadania ze złożoności obliczeniowej z rozwiązaniami Przykład 1. Napisz program, który dla podanej liczby n wypisze jej rozkład na czynniki pierwsze. Oblicz asymptotyczną złożoność

Bardziej szczegółowo

Jarosław Wróblewski Matematyka Elementarna, lato 2010/11

Jarosław Wróblewski Matematyka Elementarna, lato 2010/11 Uwaga: Przyjmujemy, że 0 nie jest liczbą naturalną, tzn. liczby naturalne są to liczby całkowite dodatnie.. Dane są liczby naturalne m, n. Wówczas dla dowolnej liczby naturalnej k, liczba k jest podzielna

Bardziej szczegółowo

Badanie pierwszości liczby, klasa NP i test Rabina

Badanie pierwszości liczby, klasa NP i test Rabina Badanie pierwszości liczby, klasa NP i test Rabina Mateusz Chynowski 11 stycznia 2009 Liczby pierwsze są bardzo istotne zarówno w matematyce, jak i informatyce. W tej drugiej nauce istnieje dość poważny

Bardziej szczegółowo

Zadanie 1. Zmiana systemów. Zadanie 2. Szyfr Cezara. Zadanie 3. Czy liczba jest doskonała. Zadanie 4. Rozkład liczby na czynniki pierwsze Zadanie 5.

Zadanie 1. Zmiana systemów. Zadanie 2. Szyfr Cezara. Zadanie 3. Czy liczba jest doskonała. Zadanie 4. Rozkład liczby na czynniki pierwsze Zadanie 5. Zadanie 1. Zmiana systemów. Zadanie 2. Szyfr Cezara. Zadanie 3. Czy liczba jest doskonała. Zadanie 4. Rozkład liczby na czynniki pierwsze Zadanie 5. Schemat Hornera. Wyjaśnienie: Zadanie 1. Pozycyjne reprezentacje

Bardziej szczegółowo

Piotr Chrząstowski-Wachtel Uniwersytet Warszawski. Al Chwarizmi i trzy algorytmy Euklidesa

Piotr Chrząstowski-Wachtel Uniwersytet Warszawski. Al Chwarizmi i trzy algorytmy Euklidesa Piotr Chrząstowski-Wachtel Uniwersytet Warszawski Al Chwarizmi i trzy algorytmy Euklidesa Algorytmika Najważniejsza część informatyki Opisuje jak rozwiązywać problemy algorytmiczne, jakie struktury danych

Bardziej szczegółowo

Haszowanie. dr inż. Urszula Gałązka

Haszowanie. dr inż. Urszula Gałązka Haszowanie dr inż. Urszula Gałązka Problem Potrzebujemy struktury do Wstawiania usuwania wyszukiwania Liczb, napisów, rekordów w Bazach danych, sieciach komputerowych, innych Rozwiązanie Tablice z haszowaniem

Bardziej szczegółowo

0 --> 5, 1 --> 7, 2 --> 9, 3 -->1, 4 --> 3, 5 --> 5, 6 --> 7, 7 --> 9, 8 --> 1, 9 --> 3.

0 --> 5, 1 --> 7, 2 --> 9, 3 -->1, 4 --> 3, 5 --> 5, 6 --> 7, 7 --> 9, 8 --> 1, 9 --> 3. (Aktualizacja z dnia 3 kwietnia 2013) MATEMATYKA DYSKRETNA - informatyka semestr 2 (lato 2012/2013) Zadania do omówienia na zajęciach w dniach 21 i 28 kwietnia 2013 ZESTAW NR 3/7 (przykłady zadań z rozwiązaniami)

Bardziej szczegółowo

Moneta 1 Moneta 2 Kostka O, R O,R 1,2,3,4,5, Moneta 1 Moneta 2 Kostka O O ( )

Moneta 1 Moneta 2 Kostka O, R O,R 1,2,3,4,5, Moneta 1 Moneta 2 Kostka O O ( ) Nowa matura kombinatoryka i rachunek prawdopodobieństwa Zadania zamknięte (0 1 pkt) 1. Doświadczenie losowe polega na rzucie dwiema symetrycznymi monetami i sześcienną kostką do gry. Prawdopodobieństwo

Bardziej szczegółowo

Zamiana porcji informacji w taki sposób, iż jest ona niemożliwa do odczytania dla osoby postronnej. Tak zmienione dane nazywamy zaszyfrowanymi.

Zamiana porcji informacji w taki sposób, iż jest ona niemożliwa do odczytania dla osoby postronnej. Tak zmienione dane nazywamy zaszyfrowanymi. Spis treści: Czym jest szyfrowanie Po co nam szyfrowanie Szyfrowanie symetryczne Szyfrowanie asymetryczne Szyfrowanie DES Szyfrowanie 3DES Szyfrowanie IDEA Szyfrowanie RSA Podpis cyfrowy Szyfrowanie MD5

Bardziej szczegółowo

Kongruencje oraz przykłady ich zastosowań

Kongruencje oraz przykłady ich zastosowań Strona 1 z 25 Kongruencje oraz przykłady ich zastosowań Andrzej Sładek, Instytut Matematyki UŚl sladek@ux2.math.us.edu.pl Spotkanie w LO im. Powstańców Śl w Bieruniu Starym 27 października 2005 Strona

Bardziej szczegółowo

WYMAGANIA EDUKACYJNE Z MATEMATYKI dla klasy I ba Rok szk. 2012/2013

WYMAGANIA EDUKACYJNE Z MATEMATYKI dla klasy I ba Rok szk. 2012/2013 Dział LICZBY RZECZYWISTE Uczeń otrzymuje ocenę dopuszczającą lub dostateczną, jeśli: podaje przykłady liczb: naturalnych, całkowitych, wymiernych, niewymiernych, pierwszych i złożonych oraz przyporządkowuje

Bardziej szczegółowo

Wstęp do informatyki- wykład 1 Systemy liczbowe

Wstęp do informatyki- wykład 1 Systemy liczbowe 1 Wstęp do informatyki- wykład 1 Systemy liczbowe Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion, 2012 www.cplusplus.com Jerzy Grębosz,

Bardziej szczegółowo

Obóz Naukowy Olimpiady Matematycznej Gimnazjalistów

Obóz Naukowy Olimpiady Matematycznej Gimnazjalistów Obóz Naukowy Olimpiady Matematycznej Gimnazjalistów Liga zadaniowa 202/203 Seria VI (grudzień 202) rozwiązania zadań 26. Udowodnij, że istnieje 0 00 kolejnych liczb całkowitych dodatnich nie większych

Bardziej szczegółowo

EGZAMIN MATURALNY W ROKU SZKOLNYM 2014/2015

EGZAMIN MATURALNY W ROKU SZKOLNYM 2014/2015 EGZAMIN MATURALNY W ROKU SZKOLNYM 0/0 FORMUŁA OD 0 ( NOWA MATURA ) MATEMATYKA POZIOM PODSTAWOWY ZASADY OCENIANIA ROZWIĄZAŃ ZADAŃ ARKUSZ MMA-P CZERWIEC 0 Egzamin maturalny z matematyki nowa formuła Klucz

Bardziej szczegółowo

2. Liczby pierwsze i złożone, jednoznaczność rozkładu na czynniki pierwsze, największy wspólny dzielnik, najmniejsza wspólna wielokrotność. (c.d.

2. Liczby pierwsze i złożone, jednoznaczność rozkładu na czynniki pierwsze, największy wspólny dzielnik, najmniejsza wspólna wielokrotność. (c.d. 2. Liczby pierwsze i złożone, jednoznaczność rozkładu na czynniki pierwsze, największy wspólny dzielnik, najmniejsza wspólna wielokrotność. (c.d.) 10 października 2009 r. 20. Która liczba jest większa,

Bardziej szczegółowo

MATeMAtyka 1. Przedmiotowy system oceniania wraz z określeniem wymagań edukacyjnych. Zakres podstawowy i rozszerzony Klasa pierwsza

MATeMAtyka 1. Przedmiotowy system oceniania wraz z określeniem wymagań edukacyjnych. Zakres podstawowy i rozszerzony Klasa pierwsza MATeMAtyka 1 Przedmiotowy system oceniania wraz z określeniem wymagań edukacyjnych Zakres podstawowy i rozszerzony Klasa pierwsza Wyróżnione zostały następujące wymagania programowe: konieczne (K), podstawowe

Bardziej szczegółowo

Teoretyczne podstawy informatyki

Teoretyczne podstawy informatyki Teoretyczne podstawy informatyki Wykład 12a: Prawdopodobieństwo i algorytmy probabilistyczne http://hibiscus.if.uj.edu.pl/~erichter/dydaktyka2010/tpi-2010 Prof. dr hab. Elżbieta Richter-Wąs 1 Teoria prawdopodobieństwa

Bardziej szczegółowo

Zastosowania arytmetyki modularnej. Zastosowania arytmetyki modularnej

Zastosowania arytmetyki modularnej. Zastosowania arytmetyki modularnej Obliczenia w systemach resztowych [Song Y. Yan] Przykład: obliczanie z = x + y = 123684 + 413456 na komputerze przyjmującym słowa o długości 100 Obliczamy kongruencje: x 33 (mod 99), y 32 (mod 99), x 8

Bardziej szczegółowo

WYRAŻENIA ALGEBRAICZNE

WYRAŻENIA ALGEBRAICZNE WYRAŻENIA ALGEBRAICZNE Wyrażeniem algebraicznym nazywamy wyrażenie zbudowane z liczb, liter, nawiasów oraz znaków działań, na przykład: Symbole literowe występujące w wyrażeniu algebraicznym nazywamy zmiennymi.

Bardziej szczegółowo

Kod uzupełnień do dwóch jest najczęściej stosowanym systemem zapisu liczb ujemnych wśród systemów binarnych.

Kod uzupełnień do dwóch jest najczęściej stosowanym systemem zapisu liczb ujemnych wśród systemów binarnych. Kod uzupełnień do dwóch jest najczęściej stosowanym systemem zapisu liczb ujemnych wśród systemów binarnych. Jeśli bit znaku przyjmie wartość 0 to liczba jest dodatnia lub posiada wartość 0. Jeśli bit

Bardziej szczegółowo

Wymagania edukacyjne na poszczególne oceny branżowa szkoła I stopnia klasa 1 po gimnazjum

Wymagania edukacyjne na poszczególne oceny branżowa szkoła I stopnia klasa 1 po gimnazjum Wymagania edukacyjne na poszczególne oceny branżowa szkoła I stopnia klasa 1 po gimnazjum I. Liczby rzeczywiste 1. Liczby naturalne 2. Liczby całkowite. 3. Liczby wymierne 4. Rozwinięcie dziesiętne liczby

Bardziej szczegółowo

1. Napisz program, który wyświetli Twoje dane jako napis Witaj, Imię Nazwisko. 2. Napisz program, który wyświetli wizytówkę postaci:

1. Napisz program, który wyświetli Twoje dane jako napis Witaj, Imię Nazwisko. 2. Napisz program, który wyświetli wizytówkę postaci: 1. Napisz program, który wyświetli Twoje dane jako napis Witaj, Imię Nazwisko. 2. Napisz program, który wyświetli wizytówkę postaci: * Jan Kowalski * * ul. Zana 31 * 3. Zadeklaruj zmienne przechowujące

Bardziej szczegółowo

Konstrukcje warunkowe Pętle

Konstrukcje warunkowe Pętle * Konstrukcje warunkowe Pętle *Instrukcja if sposób na sprawdzanie warunków *Konstrukcja: if(warunek) else { instrukcje gdy warunek spełniony} {instrukcje gdy warunek NIE spełniony} * 1. Wylicz całkowity

Bardziej szczegółowo

Wykład 1. Na początku zajmować się będziemy zbiorem liczb całkowitych

Wykład 1. Na początku zajmować się będziemy zbiorem liczb całkowitych Arytmetyka liczb całkowitych Wykład 1 Na początku zajmować się będziemy zbiorem liczb całkowitych Z = {0, ±1, ±2,...}. Zakładamy, że czytelnik zna relację

Bardziej szczegółowo

Rekurencje. Jeśli algorytm zawiera wywołanie samego siebie, jego czas działania moŝe być określony rekurencją. Przykład: sortowanie przez scalanie:

Rekurencje. Jeśli algorytm zawiera wywołanie samego siebie, jego czas działania moŝe być określony rekurencją. Przykład: sortowanie przez scalanie: Rekurencje Jeśli algorytm zawiera wywołanie samego siebie, jego czas działania moŝe być określony rekurencją. Przykład: sortowanie przez scalanie: T(n) = Θ(1) (dla n = 1) T(n) = 2 T(n/2) + Θ(n) (dla n

Bardziej szczegółowo

Liczby pierwsze na straży tajemnic

Liczby pierwsze na straży tajemnic Liczby pierwsze na straży tajemnic Barbara Roszkowska-Lech MATEMATYKA DLA CIEKAWYCH ŚWIATA Liczby rzadzą światem Ile włosów na głowie? Dowód z wiedzą zerową Reszty kwadratowe Dzielenie sekretu Ile włosów

Bardziej szczegółowo

2 Kryptografia: algorytmy symetryczne

2 Kryptografia: algorytmy symetryczne 1 Kryptografia: wstęp Wyróżniamy algorytmy: Kodowanie i kompresja Streszczenie Wieczorowe Studia Licencjackie Wykład 14, 12.06.2007 symetryczne: ten sam klucz jest stosowany do szyfrowania i deszyfrowania;

Bardziej szczegółowo

B.B. 2. Sumowanie rozpoczynamy od ostatniej kolumny. Sumujemy cyfry w kolumnie zgodnie z podaną tabelką zapisując wynik pod kreską:

B.B. 2. Sumowanie rozpoczynamy od ostatniej kolumny. Sumujemy cyfry w kolumnie zgodnie z podaną tabelką zapisując wynik pod kreską: Dodawanie dwójkowe Do wykonywania dodawania niezbędna jest znajomość tabliczki dodawania, czyli wyników sumowania każdej cyfry z każdą inną. W systemie binarnym mamy tylko dwie cyfry 0 i 1, zatem tabliczka

Bardziej szczegółowo

1. LICZBY DZIAŁ Z PODRĘCZNIKA L.P. NaCoBeZu kryteria sukcesu w języku ucznia

1. LICZBY DZIAŁ Z PODRĘCZNIKA L.P. NaCoBeZu kryteria sukcesu w języku ucznia L.P. DZIAŁ Z PODRĘCZNIKA NaCoBeZu kryteria sukcesu w języku ucznia 1. LICZBY 1. Znam pojęcie liczby naturalne, całkowite, wymierne, dodatnie, ujemne, niedodatnie, odwrotne, przeciwne. 2. Potrafię zaznaczyć

Bardziej szczegółowo

Kongruencje i ich zastosowania

Kongruencje i ich zastosowania Kongruencje i ich zastosowania Andrzej Sładek sladek@ux2.math.us.edu.pl Instytut Matematyki, Uniwersytet Śląski w Katowicach Poznamy nowe fakty matematyczne, które pozwolą nam w łatwy sposób rozwiązać

Bardziej szczegółowo

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q LABORAORIUM PROCESORY SYGAŁOWE W AUOMAYCE PRZEMYSŁOWEJ Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q 1. Zasady arytmetyki stałoprzecinkowej. Kody stałopozycyjne mają ustalone

Bardziej szczegółowo

Samodzielnie wykonaj następujące operacje: 13 / 2 = 30 / 5 = 73 / 15 = 15 / 23 = 13 % 2 = 30 % 5 = 73 % 15 = 15 % 23 =

Samodzielnie wykonaj następujące operacje: 13 / 2 = 30 / 5 = 73 / 15 = 15 / 23 = 13 % 2 = 30 % 5 = 73 % 15 = 15 % 23 = Systemy liczbowe Dla każdej liczby naturalnej x Î N oraz liczby naturalnej p >= 2 istnieją jednoznacznie wyznaczone: liczba n Î N oraz ciąg cyfr c 0, c 1,..., c n-1 (gdzie ck Î {0, 1,..., p - 1}) taki,

Bardziej szczegółowo

VII Olimpiada Matematyczna Gimnazjalistów

VII Olimpiada Matematyczna Gimnazjalistów VII Olimpiada Matematyczna Gimnazjalistów Zawody stopnia pierwszego część testowa, test próbny www.omg.edu.pl (wrzesień 2011 r.) Rozwiązania zadań testowych 1. Liczba krawędzi pewnego ostrosłupa jest o

Bardziej szczegółowo

Zadanie 1. Test (6 pkt) Zaznacz znakiem X w odpowiedniej kolumnie P lub F, która odpowiedź jest prawdziwa, a która fałszywa.

Zadanie 1. Test (6 pkt) Zaznacz znakiem X w odpowiedniej kolumnie P lub F, która odpowiedź jest prawdziwa, a która fałszywa. 2 Egzamin maturalny z informatyki Zadanie 1. Test (6 pkt) Zaznacz znakiem X w odpowiedniej kolumnie lub, która odpowiedź jest prawdziwa, a która fałszywa. a) rzeanalizuj poniższy algorytm (:= oznacza instrukcję

Bardziej szczegółowo

PRZELICZANIE JEDNOSTEK MIAR

PRZELICZANIE JEDNOSTEK MIAR PRZELICZANIE JEDNOSTEK MIAR Kompleks zajęć dotyczący przeliczania jednostek miar składa się z czterech odrębnych zajęć, które są jednak nierozerwalnie połączone ze sobą tematycznie w takiej sekwencji,

Bardziej szczegółowo

Liczby pierwsze. Jacek Nowicki Wersja 1.0

Liczby pierwsze. Jacek Nowicki Wersja 1.0 Liczby pierwsze Jacek Nowicki Wersja 1.0 Wprowadzenie do liczb pierwszych www.liczbypierwsze.com Wiele liczb naturalnych daje się rozłożyć na czynniki mniejsze np. 10=5*2 lub 111=3*37. Jednak istnieją

Bardziej szczegółowo

2.8. Algorytmy, schematy, programy

2.8. Algorytmy, schematy, programy https://app.wsipnet.pl/podreczniki/strona/38766 2.8. Algorytmy, schematy, programy DOWIESZ SIĘ co oznaczają pojęcia: algorytm, schemat blokowy, język programowania, jakie są sposoby obliczania największego

Bardziej szczegółowo

Kryptografia na procesorach wielordzeniowych

Kryptografia na procesorach wielordzeniowych Kryptografia na procesorach wielordzeniowych Andrzej Chmielowiec andrzej.chmielowiec@cmmsigma.eu Centrum Modelowania Matematycznego Sigma Kryptografia na procesorach wielordzeniowych p. 1 Plan prezentacji

Bardziej szczegółowo

Statystyki: miary opisujące rozkład! np. : średnia, frakcja (procent), odchylenie standardowe, wariancja, mediana itd.

Statystyki: miary opisujące rozkład! np. : średnia, frakcja (procent), odchylenie standardowe, wariancja, mediana itd. Wnioskowanie statystyczne obejmujące metody pozwalające na uogólnianie wyników z próby na nieznane wartości parametrów oraz szacowanie błędów tego uogólnienia. Przewidujemy nieznaną wartości parametru

Bardziej szczegółowo

Podstawą w systemie dwójkowym jest liczba 2 a w systemie dziesiętnym liczba 10.

Podstawą w systemie dwójkowym jest liczba 2 a w systemie dziesiętnym liczba 10. ZAMIANA LICZB MIĘDZY SYSTEMAMI DWÓJKOWYM I DZIESIĘTNYM Aby zamienić liczbę z systemu dwójkowego (binarnego) na dziesiętny (decymalny) należy najpierw przypomnieć sobie jak są tworzone liczby w ww systemach

Bardziej szczegółowo

Jak odróżnić wariację z powtórzeniami od wariacji bez powtórzeń, kombinacji?

Jak odróżnić wariację z powtórzeniami od wariacji bez powtórzeń, kombinacji? Jak odróżnić wariację z powtórzeniami od wariacji bez powtórzeń, kombinacji? Porada niniejsza traktuje o tzw. elementach kombinatoryki. Często zdarza się, że rozwiązujący zadania z tej dziedziny mają problemy

Bardziej szczegółowo

Podzielność, cechy podzielności, liczby pierwsze, największy wspólny dzielnik, najmniejsza wspólna wielokrotność.

Podzielność, cechy podzielności, liczby pierwsze, największy wspólny dzielnik, najmniejsza wspólna wielokrotność. Podzielność, cechy podzielności, liczby pierwsze, największy wspólny dzielnik, najmniejsza wspólna wielokrotność. W dniu 25 lutego 2014 r. omawiamy test kwalifikacyjny. Uwaga: Przyjmujemy, że 0 nie jest

Bardziej szczegółowo

FUNKCJA KWADRATOWA. Zad 1 Przedstaw funkcję kwadratową w postaci ogólnej. Postać ogólna funkcji kwadratowej to: y = ax + bx + c;(

FUNKCJA KWADRATOWA. Zad 1 Przedstaw funkcję kwadratową w postaci ogólnej. Postać ogólna funkcji kwadratowej to: y = ax + bx + c;( Zad Przedstaw funkcję kwadratową w postaci ogólnej Przykład y = ( x ) + 5 (postać kanoniczna) FUNKCJA KWADRATOWA Postać ogólna funkcji kwadratowej to: y = ax + bx + c;( a 0) Aby ją uzyskać pozbywamy się

Bardziej szczegółowo

Matematyka z kluczem. Szkoła podstawowa nr 18 w Sosnowcu. Przedmiotowe zasady oceniania klasa 7

Matematyka z kluczem. Szkoła podstawowa nr 18 w Sosnowcu. Przedmiotowe zasady oceniania klasa 7 Matematyka z kluczem Szkoła podstawowa nr 18 w Sosnowcu Przedmiotowe zasady oceniania klasa 7 KlasaVII wymagania programowe- wymagania na poszczególne oceny ROZDZIAŁ I LICZBY 1. rozpoznaje cyfry używane

Bardziej szczegółowo