Chaotyczne generatory liczb pseudolosowych Michał Krzemiński michalkrzeminski@wp.pl Politechnika Gdańska Wydział Fizyki Technicznej i Matematyki Stosowanej Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 1/17
Outline Losowe i pseudolosowe ciagi liczbowe Ocena jakości generatora - test następnego bitu Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 2/17
Outline Ciagi liczb losowych i pseudolosowych Outline Losowe i pseudolosowe ciagi liczbowe Ocena jakości generatora - test następnego bitu Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 3/17
Outline Outline Losowe i pseudolosowe ciagi liczbowe Ocena jakości generatora - test następnego bitu Ciagi liczb losowych i pseudolosowych Generatory ciagów liczb losowych Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 3/17
Outline Outline Losowe i pseudolosowe ciagi liczbowe Ocena jakości generatora - test następnego bitu Ciagi liczb losowych i pseudolosowych Generatory ciagów liczb losowych Test następnego bitu, czyli ocena jakości generatora Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 3/17
Outline Outline Losowe i pseudolosowe ciagi liczbowe Ocena jakości generatora - test następnego bitu Ciagi liczb losowych i pseudolosowych Generatory ciagów liczb losowych Test następnego bitu, czyli ocena jakości generatora Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 3/17
Outline Outline Losowe i pseudolosowe ciagi liczbowe Ocena jakości generatora - test następnego bitu Ciagi liczb losowych i pseudolosowych Generatory ciagów liczb losowych Test następnego bitu, czyli ocena jakości generatora Rozwiazywalne i konstruowalne Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 3/17
Outline Outline Losowe i pseudolosowe ciagi liczbowe Ocena jakości generatora - test następnego bitu Ciagi liczb losowych i pseudolosowych Generatory ciagów liczb losowych Test następnego bitu, czyli ocena jakości generatora Rozwiazywalne i konstruowalne Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 3/17
Losowe i pseudolosowe ciągi liczbowe Outline Losowe i pseudolosowe ciagi liczbowe Ocena jakości generatora - test następnego bitu Ciagiem losowym (albo losowym ciagiem znaków) nazwiemy taki ciag, którego nie możemy zapisać w postaci pewnej formuły czy algorytmu, krótszego od samego ciagu. Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 4/17
Losowe i pseudolosowe ciągi liczbowe Outline Losowe i pseudolosowe ciagi liczbowe Ocena jakości generatora - test następnego bitu Ciagiem losowym (albo losowym ciagiem znaków) nazwiemy taki ciag, którego nie możemy zapisać w postaci pewnej formuły czy algorytmu, krótszego od samego ciagu. Ciagiem pseudolosowych nazwiemy takie ciagi, które powstały według pewnej formuły, stosunkowo krótkiej, jednak nasza niewiedza czy niemoc obliczeniowa nie pozwala nam na jej identyfikacje. Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 4/17
Losowe i pseudolosowe ciągi liczbowe Outline Losowe i pseudolosowe ciagi liczbowe Ocena jakości generatora - test następnego bitu Ciagiem losowym (albo losowym ciagiem znaków) nazwiemy taki ciag, którego nie możemy zapisać w postaci pewnej formuły czy algorytmu, krótszego od samego ciagu. Ciagiem pseudolosowych nazwiemy takie ciagi, które powstały według pewnej formuły, stosunkowo krótkiej, jednak nasza niewiedza czy niemoc obliczeniowa nie pozwala nam na jej identyfikacje. Dla ustalenia uwagi bedziemy mówić o ciagach liczbowych, a poźniej ciagach bitów tzn. 0 i 1. Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 4/17
Losowe i pseudolosowe ciągi liczbowe Tablice liczb losowych. Outline Losowe i pseudolosowe ciagi liczbowe Ocena jakości generatora - test następnego bitu Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 5/17
Losowe i pseudolosowe ciągi liczbowe Outline Losowe i pseudolosowe ciagi liczbowe Ocena jakości generatora - test następnego bitu Tablice liczb losowych. Generatory ci agów liczb losowych: generatory fizyczne (liczb losowych): mechaniczne i oparte na procesach fizycznych generatory matematyczne (liczb pseudolosowych) Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 5/17
Ocena jakości generatora - test następnego bitu Outline Losowe i pseudolosowe ciagi liczbowe Ocena jakości generatora - test następnego bitu Dany jest generator, wytwarzajacy ciag n bitów (b 1, b 2,..., b n ), Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 6/17
Ocena jakości generatora - test następnego bitu Outline Losowe i pseudolosowe ciagi liczbowe Ocena jakości generatora - test następnego bitu Dany jest generator, wytwarzajacy ciag n bitów (b 1, b 2,..., b n ), dana jest statystyka B( ), która na podstawie znajomości m pierwszych bitów, pozwala przewidzieć bit b m+1. Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 6/17
Ocena jakości generatora - test następnego bitu Outline Losowe i pseudolosowe ciagi liczbowe Ocena jakości generatora - test następnego bitu Dany jest generator, wytwarzajacy ciag n bitów (b 1, b 2,..., b n ), dana jest statystyka B( ), która na podstawie znajomości m pierwszych bitów, pozwala przewidzieć bit b m+1. Powiemy, że generator bitów spełnia test następnego bitu, gdy dla dostatecznie dużych n oraz dla wszystkich wielomianów w(n) i dla wszystkich liczb całkowitych m [1, n] zachodzi nierówność: P( B(b 1, b 2,..., b m ) = b m+1 ) 1 2 < 1 w(n). Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 6/17
Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 7/17
Chaotyczny układ Układem m (dyskretnym albo i nie) będziemy nazywać parę (F,S), gdzie S będzie oznaczać przestrzeń stanów, a F: S S, będzie odwzorowaniem mierzalnym bedacym generatorem półgrupy iteracji. Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 8/17
Chaotyczny układ Układem m (dyskretnym albo i nie) będziemy nazywać parę (F,S), gdzie S będzie oznaczać przestrzeń stanów, a F: S S, będzie odwzorowaniem mierzalnym bedacym generatorem półgrupy iteracji. Trajektoria startujac a ze stanu poczatkowego s 0 nazwiemy ciag {s n } n=0 S uzyskany poprzez kolejne iteracje: s n+1 = F(s n ), gdzie n = 0, 1,.... Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 8/17
Chaotyczny układ Układem m (dyskretnym albo i nie) będziemy nazywać parę (F,S), gdzie S będzie oznaczać przestrzeń stanów, a F: S S, będzie odwzorowaniem mierzalnym bedacym generatorem półgrupy iteracji. Trajektoria startujac a ze stanu poczatkowego s 0 nazwiemy ciag {s n } n=0 S uzyskany poprzez kolejne iteracje: Chaos s n+1 = F(s n ), gdzie n = 0, 1,.... Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 8/17
Chaotyczny układ Układem m (dyskretnym albo i nie) będziemy nazywać parę (F,S), gdzie S będzie oznaczać przestrzeń stanów, a F: S S, będzie odwzorowaniem mierzalnym bedacym generatorem półgrupy iteracji. Trajektoria startujac a ze stanu poczatkowego s 0 nazwiemy ciag {s n } n=0 S uzyskany poprzez kolejne iteracje: Chaos s n+1 = F(s n ), gdzie n = 0, 1,.... Def. Wykładnikiem Lapunowa nazywamy liczbę: 1 λ s,v = lim n n DFn (s)(v), gdzie jest norma w przestrzeni stycznej w punkcie s S, DF n (s)(v) jest pochodna Frecheta n-tej iteracji F w punkcie s w kierunku v. Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 8/17
Chaotyczny układ Def. Powiemy, że układ jest chaotyczny w pewnym obszarze, gdy dla µ prawie wszystkich punktów tego obszaru ma on co najmniej jeden dodatni wykładnik Lapunowa. Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 9/17
Chaotyczny układ Def. Powiemy, że układ jest chaotyczny w pewnym obszarze, gdy dla µ prawie wszystkich punktów tego obszaru ma on co najmniej jeden dodatni wykładnik Lapunowa. miara niezmiennicza µ skończona na σ(s), A σ(s) µ(a) = µ(f 1 (A)), dla której istnieje dodatnia ograniczona mierzalna funkcja f : S R taka, że A σ(s) µ(a) = A f(s)ds. Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 9/17
Chaotyczny układ Def. Powiemy, że układ jest chaotyczny w pewnym obszarze, gdy dla µ prawie wszystkich punktów tego obszaru ma on co najmniej jeden dodatni wykładnik Lapunowa. miara niezmiennicza µ skończona na σ(s), A σ(s) µ(a) = µ(f 1 (A)), dla której istnieje dodatnia ograniczona mierzalna funkcja f : S R taka, że A σ(s) µ(a) = A f(s)ds. Def. Powiemy, że układ jest mieszajacy, gdy A,B σ(s) lim n µ(f n (A) B) = µ(a)µ(b). Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 9/17
Chaotyczny układ Jeżeli dodatkowo założymy, że nasza miara stacjonarna jest probabilistyczna, wtedy otrzymamy: lim n µ(f n (A) B) µ(b) = µ(a) µ(s) Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 10/17
Chaotyczny układ Jeżeli dodatkowo założymy, że nasza miara stacjonarna jest probabilistyczna, wtedy otrzymamy: lim n µ(f n (A) B) µ(b) = µ(a) µ(s) Niech S = S 0 S 1, gdzie S 0 S 1 =, µ(s 0 ) = µ(s 1 ) = 1 2. Niech Ŝ będzie zbiorem dopuszczalnych warunków poczatkowych, niech ŝ 0 Ŝ. { 0, gdy F s n = n (ŝ 0 ) S 0 1, gdy F n, dla n = 0, 1, 2,... (ŝ 0 ) S 1 Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 10/17
Chaotyczny układ Jeżeli dodatkowo założymy, że nasza miara stacjonarna jest probabilistyczna, wtedy otrzymamy: lim n µ(f n (A) B) µ(b) = µ(a) µ(s) Niech S = S 0 S 1, gdzie S 0 S 1 =, µ(s 0 ) = µ(s 1 ) = 1 2. Niech Ŝ będzie zbiorem dopuszczalnych warunków poczatkowych, niech ŝ 0 Ŝ. { 0, gdy F s n = n (ŝ 0 ) S 0 1, gdy F n, dla n = 0, 1, 2,... (ŝ 0 ) S 1 Stad otrzymamy nieskończony ciag bitów O(ŝ) = {ŝ 0, ŝ 1, ŝ 2,...} = {ŝ i } i=0. Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 10/17
Kilka twierdzeń Tw. s S µ(o 1 ({ŝ i } i=0 )) = 0 Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 11/17
Kilka twierdzeń Tw. s S µ(o 1 ({ŝ i } i=0 )) = 0 Tw. lim N 1 N N 1 n=0 1 S0 (F n (s)) = S 1 S0 dµ = µ(s 0 ). Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 11/17
Kilka twierdzeń Tw. s S µ(o 1 ({ŝ i } i=0 )) = 0 Tw. lim N 1 N N 1 n=0 1 S0 (F n (s)) = S 1 S0 dµ = µ(s 0 ). Tw. Jeżeli układ, jest mieszajacy, to istnieje takie k N, że dla każdego ŝ Ŝ bity ŝ i oraz ŝ i+k sa dla k niezależne dla i = 1, 2,.... Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 11/17
Rozwiązywalne Rozwiazywalnymi układami mi nazywamy takie, których rozwiazanie może być przedstawione w postaci jawnej. Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 12/17
Rozwiązywalne Rozwiazywalnymi układami mi nazywamy takie, których rozwiazanie może być przedstawione w postaci jawnej. Rozważmy równanie x n = p(θtz n ), gdzie p( ) jest funkcja okresowa, T jest jej okresem, z N, a θ definiuje warunek poczatkowy. Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 12/17
Rozwiązywalne Rozwiazywalnymi układami mi nazywamy takie, których rozwiazanie może być przedstawione w postaci jawnej. Rozważmy równanie x n = p(θtz n ), gdzie p( ) jest funkcja okresowa, T jest jej okresem, z N, a θ definiuje warunek poczatkowy. Przykład 1 Weźmy rozwiazywalny układ, którego odwzorowanie generujace ma postać: X n+1 = sin 2 (z arcsin X n ) Rozwiazanie tego równania jest postaci X n = sin 2 (πθz n ) Wykładnik Lapunowa ma wartość λ = ln z, więc układ jest chaotyczny dla z > 1. Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 12/17
Rozwiązywalne Przykład 2 ( ) x n = sin 2 (πθz n ) Niech θ = θ 0 + q m k, z = p q k, m Z. > 1 takie, że NWD{p, q} = 1, Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 13/17
Rozwiązywalne Przykład 2 Niech θ = θ 0 + q m k, z = p q k, m Z. ( ) x n = sin 2 (πθz n ) > 1 takie, że NWD{p, q} = 1, Weźmy ciag x 0, x 1,..., x m dany formuła ( ). Kolejna liczba x m+1 może przyjmować q możliwych wartości. Zjawisko to nazywamy "multi-value correspondence". Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 13/17
Rozwiązywalne Przykład 2 Niech θ = θ 0 + q m k, z = p q k, m Z. ( ) x n = sin 2 (πθz n ) > 1 takie, że NWD{p, q} = 1, Weźmy ciag x 0, x 1,..., x m dany formuła ( ). Kolejna liczba x m+1 może przyjmować q możliwych wartości. Zjawisko to nazywamy "multi-value correspondence". Zatem otrzymujemy nieprzewidywalny ci ag dla krótkich serii. Deterministyczna losowość. Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 13/17
Rozwiązywalne Przykład 2 Niech θ = θ 0 + q m k, z = p q k, m Z. ( ) x n = sin 2 (πθz n ) > 1 takie, że NWD{p, q} = 1, Weźmy ciag x 0, x 1,..., x m dany formuła ( ). Kolejna liczba x m+1 może przyjmować q możliwych wartości. Zjawisko to nazywamy "multi-value correspondence". Zatem otrzymujemy nieprzewidywalny ci ag dla krótkich serii. Deterministyczna losowość. Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 13/17
KoAsDeLoUkDy Przykład 3 Rozważmy dwa przedziałami liniowe odwzorowania: { mod(at, 1) mod( at, 2) = 0 h(a, t) = mod(at, 1), g(a, t) = mod(at, 1) + 1 mod( at, 2) = 1 Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 14/17
KoAsDeLoUkDy Przykład 3 Rozważmy dwa przedziałami liniowe odwzorowania: { mod(at, 1) mod( at, 2) = 0 h(a, t) = mod(at, 1), g(a, t) = mod(at, 1) + 1 mod( at, 2) = 1 Dla a = p q > 2 rozważmy dwie nieodwracalne, nieliniowe transformacje: ( )x n+1 = h(a, x n ), y n = h(b, x n ) ( )x n+1 = g(a, x n ), y n = g(b, x n ) Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 14/17
KoAsDeLoUkDy Przykład 3 Rozważmy dwa przedziałami liniowe odwzorowania: { mod(at, 1) mod( at, 2) = 0 h(a, t) = mod(at, 1), g(a, t) = mod(at, 1) + 1 mod( at, 2) = 1 Dla a = p q > 2 rozważmy dwie nieodwracalne, nieliniowe transformacje: ( )x n+1 = h(a, x n ), y n = h(b, x n ) ( )x n+1 = g(a, x n ), y n = g(b, x n ) Tw. Jeżeli b = q N, to y n oraz y n+m dla m = 1, 2,..., N maj a perfect multi-value correspondence z p m : q m. Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 14/17
KoAsDeLoUkDy Figure 1: zależność w jednym kroku kolejnych wyrazów ci agu {y n } Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 15/17
Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 16/17
[1] K. Wang, W. Pei, H. Xia, Y. Cheung Pseudo-random number generators based on asymptotic deterministic randomness [2] Z. Kotulski Budowanie szyfrów blokowych [3] Kai Wang, Wenjiang Pei, Liuhua Zou, Yiu-ming Cheung and Zhenya He The asymptotic deterministic randomness, Physics Letters A, Volume 368, Issues 1-2, 13 August 2007, Pages 38-47. [4] Z. Kotulski, J. Szczepański Discrete chaotic cryptography (DCC)., Ann. Physic 6 (1997), 381-394. Chaotyczne generatory liczb pseudolosowych - Michał Krzemiński IV Matematyczne Warsztaty KaeNeMów - p. 17/17