Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅ ΡΠΈΡΠ»Π° Π² ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΊΠ΅
ΠΠ°ΡΡΠΈΠΊ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π»
ΠΠ΅Π½Π΅ΡΠ°ΡΠΎΡ ΠΏΡΠ΅Π²Π΄ΠΎΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» (ΠΠΠ‘Π§, Π°Π½Π³Π». Pseudorandom number generator, PRNG ) β Π°Π»Π³ΠΎΡΠΈΡΠΌ, Π³Π΅Π½Π΅ΡΠΈΡΡΡΡΠΈΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΈΡΠ΅Π», ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΠΎΡΡΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡ Π΄ΡΡΠ³ ΠΎΡ Π΄ΡΡΠ³Π° ΠΈ ΠΏΠΎΠ΄ΡΠΈΠ½ΡΡΡΡΡ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ (ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ°Π²Π½ΠΎΠΌΠ΅ΡΠ½ΠΎΠΌΡ).
Π‘ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΊΠ° ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΡΠ΅Π²Π΄ΠΎΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅ ΡΠΈΡΠ»Π° Π² ΡΠ°ΠΌΡΡ ΡΠ°Π·Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ β ΠΎΡ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΠΎΠ½ΡΠ΅-ΠΠ°ΡΠ»ΠΎ ΠΈ ΠΈΠΌΠΈΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄ΠΎ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΠΈ. ΠΡΠΈ ΡΡΠΎΠΌ ΠΎΡ ΠΊΠ°ΡΠ΅ΡΡΠ²Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΠΠΠ‘Π§ Π½Π°ΠΏΡΡΠΌΡΡ Π·Π°Π²ΠΈΡΠΈΡ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ². ΠΡΠΎ ΠΎΠ±ΡΡΠΎΡΡΠ΅Π»ΡΡΡΠ²ΠΎ ΠΏΠΎΠ΄ΡΡΡΠΊΠΈΠ²Π°Π΅Ρ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΉ Π°ΡΠΎΡΠΈΠ·ΠΌ Π ΠΎΠ±Π΅ΡΡΠ° Π . ΠΠ°Π²ΡΡ ΠΈΠ· ORNL (Π°Π½Π³Π».): Β«Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» ΡΠ»ΠΈΡΠΊΠΎΠΌ Π²Π°ΠΆΠ½Π°, ΡΡΠΎΠ±Ρ ΠΎΡΡΠ°Π²Π»ΡΡΡ Π΅Ρ Π½Π° Π²ΠΎΠ»Ρ ΡΠ»ΡΡΠ°ΡΒ».
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅
ΠΠ΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΠΠ‘Π§
ΠΠΈΠΊΠ°ΠΊΠΎΠΉ Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π°Π»Π³ΠΎΡΠΈΡΠΌ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅ ΡΠΈΡΠ»Π°, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π°ΠΏΠΏΡΠΎΠΊΡΠΈΠΌΠΈΡΠΎΠ²Π°ΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π». ΠΠ°ΠΊ ΡΠΊΠ°Π·Π°Π» ΠΠΆΠΎΠ½ ΡΠΎΠ½ ΠΠ΅ΠΉΠΌΠ°Π½, Β«Π²ΡΡΠΊΠΈΠΉ, ΠΊΡΠΎ ΠΏΠΈΡΠ°Π΅Ρ ΡΠ»Π°Π±ΠΎΡΡΡ ΠΊ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π», Π³ΡΠ΅ΡΠ΅Π½ Π²Π½Π΅ Π²ΡΡΠΊΠΈΡ ΡΠΎΠΌΠ½Π΅Π½ΠΈΠΉΒ».
ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΏΡΠΎΡΡΡΡ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠΎΠ² Ρ ΠΎΡΡ ΠΈ ΠΎΠ±Π»Π°Π΄Π°ΡΡ Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΠΊΠΎΡΠΎΡΡΡΡ, Π½ΠΎ ΡΡΡΠ°Π΄Π°ΡΡ ΠΎΡ ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΠ΅ΡΡΡΠ·Π½ΡΡ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΎΠ²:
ΠΠΠ‘Π§ Ρ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠΌ ΡΠ½ΡΡΠΎΠΏΠΈΠΈ ΠΈΠ»ΠΈ ΠΠ‘Π§
ΠΠ°ΡΠ°Π²Π½Π΅ Ρ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΉ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡΡ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ Π»Π΅Π³ΠΊΠΎ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π», ΡΠ°ΠΊΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ Π½Π΅ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·ΡΠ΅ΠΌΡΠ΅ ΠΈΠ»ΠΈ ΠΏΠΎΠΏΡΠΎΡΡΡ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅ ΡΠΈΡΠ»Π°. Π’Π°ΠΊΠΈΠ΅ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΡ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ°ΠΌΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» (ΠΠ‘Π§ β Π°Π½Π³Π». random number generator, RNG ). Π’Π°ΠΊ ΠΊΠ°ΠΊ ΡΠ°ΠΊΠΈΠ΅ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΡ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ ΡΠΈΠΌΠΌΠ΅ΡΡΠΈΡΠ½ΡΡ ΠΈ Π°ΡΠΈΠΌΠΌΠ΅ΡΡΠΈΡΠ½ΡΡ ΠΊΠ»ΡΡΠ΅ΠΉ Π΄Π»Ρ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ, ΠΎΠ½ΠΈ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΡΡΡΠΎΡΡΡΡ ΠΈΠ· ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ ΠΊΡΠΈΠΏΡΠΎΡΡΠΎΠΉΠΊΠΎΠ³ΠΎ ΠΠΠ‘Π§ ΠΈ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ° ΡΠ½ΡΡΠΎΠΏΠΈΠΈ (ΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ°ΠΊΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΡΠ΅ΠΏΠ΅ΡΡ ΠΈ ΠΏΡΠΈΠ½ΡΡΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ ΠΏΠΎΠ΄ ΠΠ‘Π§).
ΠΠΎΡΡΠΈ Π²ΡΠ΅ ΠΊΡΡΠΏΠ½ΡΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΠΈ ΠΌΠΈΠΊΡΠΎΡΠΈΠΏΠΎΠ² ΠΏΠΎΡΡΠ°Π²Π»ΡΡΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΠ΅ ΠΠ‘Π§ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ°ΠΌΠΈ ΡΠ½ΡΡΠΎΠΏΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ Π΄Π»Ρ ΠΈΡ ΠΎΡΠΈΡΡΠΊΠΈ ΠΎΡ Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎΠΉ ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·ΡΠ΅ΠΌΠΎΡΡΠΈ. ΠΠ΄Π½Π°ΠΊΠΎ Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠΊΠΎΡΠΎΡΡΡ ΡΠ±ΠΎΡΠ° ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» Π²ΡΠ΅ΠΌΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΌΠΈ ΠΌΠΈΠΊΡΠΎΡΠΈΠΏΠ°ΠΌΠΈ (Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΡΡΡ Π±ΠΈΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ) Π½Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π±ΡΡΡΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ².
ΠΡΠΈΠΌΠ΅ΡΡ ΠΠ‘Π§ ΠΈ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ² ΡΠ½ΡΡΠΎΠΏΠΈΠΈ
ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΠΠ‘Π§ Ρ ΠΈΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ°ΠΌΠΈ ΡΠ½ΡΡΠΎΠΏΠΈΠΈ ΠΈ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ°ΠΌΠΈ:
ΠΠΠ‘Π§ Π² ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΠΈ
Π Π°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡΡΡ ΠΠΠ‘Π§ ΡΠ²Π»ΡΡΡΡΡ ΠΠΠ‘Π (PRBG) β Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΡ ΠΏΡΠ΅Π²Π΄ΠΎ-ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ Π±ΠΈΡ, Π° ΡΠ°ΠΊ ΠΆΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΠΎΡΠΎΡΠ½ΡΡ ΡΠΈΡΡΠΎΠ². ΠΠΠ‘Π§, ΠΊΠ°ΠΊ ΠΈ ΠΏΠΎΡΠΎΡΠ½ΡΠ΅ ΡΠΈΡΡΡ, ΡΠΎΡΡΠΎΡΡ ΠΈΠ· Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ (ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ ΠΎΡ 16 Π±ΠΈΡ Π΄ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ), ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΊΠ»ΡΡΠΎΠΌ ΠΈΠ»ΠΈ ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ (Π°Π½Π³Π». seed ), ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π²ΡΠ²ΠΎΠ΄Π°. ΠΠΠ‘Π§ ΠΏΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»ΡΡΡΡΡ Π½Π° ΠΏΡΠΎΡΡΡΠ΅ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅, ΡΠ»ΠΎΠΌΠ°Π½Π½ΡΠ΅ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈ ΠΊΡΠΈΠΏΡΠΎΡΡΠΎΠΉΠΊΠΈΠ΅. ΠΡ ΠΎΠ±ΡΠ΅Π΅ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ β Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠ΅ΠΉ ΡΠΈΡΠ΅Π», ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠ»ΠΈΡΠΈΡΡ ΠΎΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ.
Π₯ΠΎΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΡΠΈΠΏΡΠΎΡΡΠΎΠΉΠΊΠΈΠ΅ ΠΠΠ‘Π§ ΠΈΠ»ΠΈ ΠΏΠΎΡΠΎΡΠ½ΡΠ΅ ΡΠΈΡΡΡ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ Β«ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅Β» ΡΠΈΡΠ»Π°, ΡΠ°ΠΊΠΈΠ΅ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΡ Π³ΠΎΡΠ°Π·Π΄ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ ΠΎΠ±ΡΡΠ½ΡΡ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π½Π΅ΠΏΡΠΈΠ³ΠΎΠ΄Π½Ρ Π²ΠΎ Π²ΡΡΠΊΠΎΠ³ΠΎ ΡΠΎΠ΄Π° ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ , ΡΡΠ΅Π±ΡΡΡΠΈΡ , ΡΡΠΎΠ±Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ Π±ΡΠ» ΡΠ²ΠΎΠ±ΠΎΠ΄Π΅Π½ Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ.
Π Π²ΠΎΠ΅Π½Π½ΡΡ ΡΠ΅Π»ΡΡ ΠΈ Π² ΠΏΠΎΠ»Π΅Π²ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π·Π°ΡΠ΅ΠΊΡΠ΅ΡΠ΅Π½Π½ΡΠ΅ ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΡΠ΅ ΠΊΡΠΈΠΏΡΠΎΡΡΠΎΠΉΠΊΠΈΠ΅ ΠΠΠ‘Π§ (ΠΏΠΎΡΠΎΡΠ½ΡΠ΅ ΡΠΈΡΡΡ), Π±Π»ΠΎΡΠ½ΡΠ΅ ΡΠΈΡΡΡ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ. ΠΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ ΠΊΡΠΈΠΏΡΠΎΡΡΠΎΠΉΠΊΠΈΡ ΠΠΠ‘Π§ ΡΠ²Π»ΡΡΡΡΡ ISAAC, SEAL, Snow, ΡΠΎΠ²ΡΠ΅ΠΌ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΠ»ΡΠΌΠ°, ΠΠ»ΡΠΌΠ° ΠΈ Π¨ΡΠ±Π°, Π° ΡΠ°ΠΊ ΠΆΠ΅ ΡΡΡΡΡΠΈΠΊΠΈ Ρ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Ρ Π΅Ρ-ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ ΠΈΠ»ΠΈ ΠΊΡΠΈΠΏΡΠΎΡΡΠΎΠΉΠΊΠΈΠΌΠΈ Π±Π»ΠΎΡΠ½ΡΠΌΠΈ ΡΠΈΡΡΠ°ΠΌΠΈ Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΠΈ Π²ΡΠ²ΠΎΠ΄Π°.
ΠΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΠ΅ ΠΠΠ‘Π§
ΠΡΠΎΠΌΠ΅ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΡ , Ρ ΠΎΡΠΎΡΠΎ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ LFSR-Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠΎΠ², ΡΠΈΡΠΎΠΊΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ²ΡΠΈΡ ΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΡ ΠΠΠ‘Π§ Π² XX Π²Π΅ΠΊΠ΅, ΠΊ ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, ΠΎΡΠ΅Π½Ρ ΠΌΠ°Π»ΠΎ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ ΠΎ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΡ ΠΠΠ‘Π§ (ΠΏΠΎΡΠΎΡΠ½ΡΡ ΡΠΈΡΡΠ°Ρ ), ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΈΠ· Π½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ΠΎ Π΄Π»Ρ Π²ΠΎΠ΅Π½Π½ΡΡ ΡΠ΅Π»Π΅ΠΉ ΠΈ Π΄Π΅ΡΠΆΠ°ΡΡΡ Π² ΡΠ΅ΠΊΡΠ΅ΡΠ΅. ΠΠΎΡΡΠΈ Π²ΡΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΈΠ΅ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΠ΅ ΠΠΠ‘Π§ Π·Π°ΠΏΠ°ΡΠ΅Π½ΡΠΎΠ²Π°Π½Ρ ΠΈ ΡΠ°ΠΊΠΆΠ΅ Π΄Π΅ΡΠΆΠ°ΡΡΡ Π² ΡΠ΅ΠΊΡΠ΅ΡΠ΅. ΠΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΠ΅ ΠΠΠ‘Π§ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Ρ ΡΡΡΠΎΠ³ΠΈΠΌΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌΠΈ ΠΊ ΡΠ°ΡΡ ΠΎΠ΄ΡΠ΅ΠΌΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ (ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ Π·Π°ΠΏΡΠ΅ΡΠ΅Π½ΠΎ), Π±ΡΡΡΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ (1-2 ΡΠ°ΠΊΡΠ°) ΠΈ ΠΏΠ»ΠΎΡΠ°Π΄ΠΈ (Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΎΡΠ΅Π½ FPGA- ΠΈΠ»ΠΈ
ΠΠ·-Π·Π° Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠ° Ρ ΠΎΡΠΎΡΠΈΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΡ ΠΠΠ‘Π§ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΠΈ Π²ΡΠ½ΡΠΆΠ΄Π΅Π½Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΈΠΌΠ΅ΡΡΠΈΠ΅ΡΡ ΠΏΠΎΠ΄ ΡΡΠΊΠΎΠΉ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΠ΅, Π½ΠΎ ΡΠΈΡΠΎΠΊΠΎ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠ΅ Π±Π»ΠΎΡΠ½ΡΠ΅ ΡΠΈΡΡΡ (
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΡ
Π‘ΠΌ. ΡΠ°ΠΊΠΆΠ΅
Π‘ΡΡΠ»ΠΊΠΈ
ΠΠΈΡΠ΅ΡΠ°ΡΡΡΠ°
ΠΠΎΠ»Π΅Π·Π½ΠΎΠ΅
Π‘ΠΌΠΎΡΡΠ΅ΡΡ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ «ΠΠ°ΡΡΠΈΠΊ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π»» Π² Π΄ΡΡΠ³ΠΈΡ ΡΠ»ΠΎΠ²Π°ΡΡΡ :
Π΄Π°ΡΡΠΈΠΊ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» β ΠΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ (ΡΠ»Π΅ΠΌΠ΅Π½Ρ, Π±Π»ΠΎΠΊ), ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠ΅ Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ Π±ΠΈΡΠΎΠ²ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠ΅ΠΉ, ΠΎΠ±Π»Π°Π΄Π°ΡΡΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΌΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π°ΠΌΠΈ ΡΠ°Π²Π½ΠΎΠ²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΠΈ ΠΏΠΎΡΠΎΠΆΠ΄Π°Π΅ΠΌΠΎΠΉ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠΉ Π³Π°ΠΌΠΌΡ. [ΠΠΎΠΌΠ°ΡΠ΅Π² Π.Π. ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΡ β¦ β¦ Π‘ΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΡΠΈΠΊΠ°
Π΄Π°ΡΡΠΈΠΊ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» β Π£Π·Π΅Π» Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ»ΡΠΆΠΈΡ Π΄Π»Ρ Π²ΡΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» β¦ ΠΠΎΠ»ΠΈΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠΎΠ»ΠΊΠΎΠ²ΡΠΉ ΡΠ»ΠΎΠ²Π°ΡΡ
Π΄Π°ΡΡΠΈΠΊ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ Π²Π΅Π»ΠΈΡΠΈΠ½ β Π΄Π°ΡΡΠΈΠΊ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» Π£ΡΡΡΠΎΠΉΡΡΠ²ΠΎ ΠΈΠ»ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠ΅ Π΄Π»Ρ Π²ΡΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡ Π·Π°ΠΊΠΎΠ½Ρ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΠ΅ΠΉ ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. [http://slovar lopatnikov.ru/] Π’Π΅ΠΌΠ°ΡΠΈΠΊΠΈβ¦ β¦ Π‘ΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΡΠΈΠΊΠ°
ΠΠ°ΡΡΠΈΠΊ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ Π²Π΅Π»ΠΈΡΠΈΠ½ β [random number generator] ΡΠΎ ΠΆΠ΅: Π΄Π°ΡΡΠΈΠΊ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π», Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ ΠΈΠ»ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠ΅ Π΄Π»Ρ Π²ΡΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡ Π·Π°ΠΊΠΎΠ½Ρ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΠ΅ΠΉ ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ β¦ ΠΠΊΠΎΠ½ΠΎΠΌΠΈΠΊΠΎ-ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ»ΠΎΠ²Π°ΡΡ
Π‘Π»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» Π΄Π°ΡΡΠΈΠΊ β ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π΄Π»Ρ Π²ΡΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π», ΡΠ°Π²Π½ΠΎΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΡΠΈΡΠ΅Π». ΠΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΈΠΌΠΈΡΠ°ΡΠΈΠΈ ΡΠ΅Π°Π»ΡΠ½ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ, Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈΡ β¦ β¦ ΠΠΎΠ»ΡΡΠ°Ρ ΡΠΎΠ²Π΅ΡΡΠΊΠ°Ρ ΡΠ½ΡΠΈΠΊΠ»ΠΎΠΏΠ΅Π΄ΠΈΡ
Π‘ΠΠ£Π§ΠΠΠΠ«Π₯ Π§ΠΠ‘ΠΠ ΠΠΠ’Π§ΠΠ β ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π΄Π»Ρ Π²ΡΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π», ΡΠ°Π²Π½ΠΎΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅. ΠΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΈΠΌΠΈΡΠ°ΡΠΈΠΈ ΡΠ΅Π°Π»ΡΠ½ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡ. ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ, ΠΏΡΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΠΈ Π½Π° ΠΠΠ Π·Π°Π΄Π°Ρ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ ΡΡΠ°ΡΠΈΡΡΠΈΡ. ΠΈΡΠΏΡΡΠ°Π½ΠΈΠΉ (Ρ. Π½.β¦ β¦ ΠΠΎΠ»ΡΡΠΎΠΉ ΡΠ½ΡΠΈΠΊΠ»ΠΎΠΏΠ΅Π΄ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠΎΠ»ΠΈΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ»ΠΎΠ²Π°ΡΡ
Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» β Π΄Π°ΡΡΠΈΠΊ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» β [[http://www.rfcmd.ru/glossword/1.8/index.php?a=index d=23]] Π’Π΅ΠΌΠ°ΡΠΈΠΊΠΈ Π·Π°ΡΠΈΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π‘ΠΈΠ½ΠΎΠ½ΠΈΠΌΡ Π΄Π°ΡΡΠΈΠΊ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» EN random number generatorrandom number generator β¦ Π‘ΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΡΠΈΠΊΠ°
ΠΠ°ΡΡΠΈΠΊ β ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΈΠ·ΠΌΠ΅ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ, ΡΠΈΠ³Π½Π°Π»ΡΠ½ΠΎΠ³ΠΎ, ΡΠ΅Π³ΡΠ»ΠΈΡΡΡΡΠ΅Π³ΠΎ ΠΈΠ»ΠΈ ΡΠΏΡΠ°Π²Π»ΡΡΡΠ΅Π³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΡΠΈΡΡΠ΅ΠΌΡ, ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΡΡΠΈΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΠ΅ΠΌΡΡ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ (Π΄Π°Π²Π»Π΅Π½ΠΈΠ΅, ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ, ΡΠ°ΡΡΠΎΡΡ, ΡΠΊΠΎΡΠΎΡΡΡ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅, Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΠ΅, ΡΠ»Π΅ΠΊΡΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠΎΠΊ β¦ ΠΠΎΠ»ΡΡΠ°Ρ ΡΠΎΠ²Π΅ΡΡΠΊΠ°Ρ ΡΠ½ΡΠΈΠΊΠ»ΠΎΠΏΠ΅Π΄ΠΈΡ
ΠΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎΠ΅ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅ β ΠΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎΠ΅ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌΡΠΉ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ². Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ 1 ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ 2 ΠΠΎΡΡΠΎΠΈΠ½ΡΡΠ²Π° ΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ β¦ ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΡ
ΠΠ΅ΡΠΎΠ΄ Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ Ρ Π·Π°ΠΏΠ°Π·Π΄ΡΠ²Π°Π½ΠΈΡΠΌΠΈ β (Lagged Fibonacci generator) ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΏΡΠ΅Π²Π΄ΠΎΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π». ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π», Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΠΌΡΡ Π»ΠΈΠ½Π΅ΠΉΠ½ΡΠΌ ΠΊΠΎΠ½Π³ΡΡΡΠ½ΡΠ½ΡΠΌ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠΌ, Π΄Π΅Π»Π°ΡΡ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΌ ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ°Ρ , ΡΡΠ΅Π±ΡΡΡΠΈΡ β¦ β¦ ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΡ
ΠΠ΅Π½Π΅ΡΠ°ΡΠΎΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» Π² ΡΠ°Π·Π½ΡΡ ΠΠ‘
ΠΠ°ΠΊ-ΡΠΎ ΠΏΠΎΠ·Π΄Π½ΠΈΠΌ Π»Π΅ΡΠ½ΠΈΠΌ Π²Π΅ΡΠ΅ΡΠΎΠΌ ΠΌΠ½Π΅ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ, ΠΊΠ°ΠΊ ΡΡΡΡΠΎΠ΅Π½Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» Π² Windows ΠΈ Linux. Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ ΠΏΠΎΠΏΡΠΎΠ±ΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΡΠ°ΠΊΠΊΡΠΌΡΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΈ ΠΏΡΠ΅ΠΏΠΎΠ΄Π½Π΅ΡΡΠΈ Π΅Π΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΡΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, Π±Π΅Π· Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π»Π΅Π·ΡΡ Π² ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΈ, ΡΡΡΠΎΡΠΈΠ°Π»Ρ ΠΈ ΡΡΠ°ΡΡΠΈ.
ΠΠ΅Π½Π΅ΡΠ°ΡΠΎΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π»
Π‘ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ΠΌ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΌΡ Π²ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΠΈ Π±ΠΎΠ»ΡΡΠ΅ Π½ΡΠΆΠ΄Π°Π΅ΠΌΡΡ Π² Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ»Π°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅Π»ΡΠ·Ρ Π±ΡΠ»ΠΎ Π±Ρ ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·Π°ΡΡ ΠΈΠ·Π²Π½Π΅. ΠΠΎΡΠ΅ΠΌΡ? Π ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΈΠ·-Π·Π° ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ, Π²Π΅Π΄Ρ Ρ ΠΊΠ°ΠΆΠ΄ΡΠΌ Π³ΠΎΠ΄ΠΎΠΌ ΡΠ°ΡΡΠ΅Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠ΅ΡΠ΅ΡΡΠ»Π°Π΅ΠΌΠΎΠ³ΠΎ ΡΡΠ°ΡΠΈΠΊΠ°, ΠΈ ΠΏΡΠΈ ΡΡΠΎΠΌ Ρ ΠΎΡΠ΅ΡΡΡ ΠΈΠΌΠ΅ΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΡ ΡΡΠ΅ΠΏΠ΅Π½Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π½Π°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ . Π Π²ΠΎΡ Π² ΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ, ΠΊΠΎΠ³Π΄Π° Π½ΡΠΆΠ½ΠΎ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ, Ρ Π½Π°ΡΠΈΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΠ² Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΈ ΡΠΎΠ·Π΄Π°Π½Ρ Π±ΡΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΏΠΎΡΠ»ΡΡΠ½ΡΠΌΠΈ, ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·ΡΠ΅ΠΌΡΠΌΠΈ ΠΈ Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π²ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΡΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΡ Π²Ρ ΠΎΠ΄Π½ΡΡ Π΄Π°Π½Π½ΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠ»ΠΈΡΡ, ΠΈΠ½Π°ΡΠ΅ Π±Ρ Π²Π΅ΡΡ ΠΌΠΈΡ ΡΠ°Π·Π²Π°Π»ΠΈΠ»ΡΡ.
ΠΠ΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎ ΡΠ½ΡΡΠΎΠΏΠΈΡ
ΠΠΎΠ΄ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠΈΠ²Π°Π½ΠΈΡ Π² ChaCha
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ»ΡΡΠ° K ΠΈ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π²Π΅ΠΊΡΠΎΡΠ° V ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π²Ρ ΠΎΠ΄Π½ΡΡ Π΄Π°Π½Π½ΡΡ ;
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π», ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ΅ΡΡΠΈΠΊΠ°, ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΡΠ΅ΡΡΠΈΠΊ ΠΈΠ½ΠΊΡΠ΅ΠΌΠ΅Π½ΡΠΈΡΡΠ΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ°Π³Π°. Π‘Π°ΠΌΠΎ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° AES Ρ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΊΠ»ΡΡΠΎΠΌ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΡΠΎΡ Π°Π»Π³ΠΎΡΠΈΡΠΌ Π»ΠΈΡΠ΅Π½ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠΈΠ²Π°Π½ΠΈΡ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΏΠΎΡΠ»Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΊ ΡΡΠΎ Π±ΡΠ»ΠΎ Π² ChaCha.
ΠΠ»Π³ΠΎΡΠΈΡΠΌ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²ΡΡ
ΠΎΠ΄Π½ΡΡ
Π΄Π°Π½Π½ΡΡ
Π‘Π»ΡΡΠ°ΠΉΠ½ΡΠ΅ ΡΠΎΠ±ΡΡΠΈΡ
Linux
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° Π²ΡΠ±ΠΎΡΠ° ΡΠΎΠ±ΡΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΡΡΠ΅Π½ΠΈΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅. ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΡΡΠΈ ΡΠΎΠ±ΡΡΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π½Π΅Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅. ΠΠΎ-Π²ΡΠΎΡΡΡ , ΠΈΡ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΡΡΠΆΠ΅Π»ΠΎ ΠΏΡΠΎΠ½Π°Π±Π»ΡΠ΄Π°ΡΡ ΠΈΠ·Π²Π½Π΅. ΠΡΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅ ΡΠΎΠ±ΡΡΠΈΡ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ Π² ΠΏΡΠ» ΡΠ½ΡΡΠΎΠΏΠΈΠΈ (ΠΏΡΠΎΡΡΠΎ ΠΌΠ°ΡΡΠΈΠ² ΡΠΈΡΠ΅Π»), ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠΈΠ²Π°ΡΡΡ Ρ Π΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ CRC-ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ Ρ ΡΡ-ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΠ½Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π±ΡΡΡΡΠΎ, ΡΡΠΎΠ±Ρ Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΏΠΎΡΠ»Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΡΡΠ΅Π³ΠΎ ΡΠΎΠ±ΡΡΠΈΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅, ΠΈ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Ρ ΠΎΡΠΎΡΠ°, Π΅ΡΠ»ΠΈ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΡΡ, ΡΡΠΎ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅ ΡΠΎΠ±ΡΡΠΈΡ Π·Π°ΠΏΠΎΠ»Π½ΡΡΡ ΠΏΡΠ» Π½Π΅ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ. ΠΡΠΈ ΡΡΠΎΠΌ ΠΏΡΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ ΡΠΎΠ±ΡΡΠΈΡ Π² ΠΏΡΠ», ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΡΠ΅Ρ ΠΏΡΠΈΠ±ΡΠ²ΡΠ΅Π³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠ½ΡΡΠΎΠΏΠΈΠΈ.
Π Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ 4 ΡΠΈΠΏΠ° ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ² ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΎΠ±ΡΡΠΈΠΉ:
ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΡ ΡΡΡΡΠΎΠΉΡΡΠ², ΠΊΠΎΡΠΎΡΠ°Ρ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΠ°Π·Π½ΠΎΠΉ Π½Π° ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈ ΡΠ°Π·Π½ΡΡ ΠΌΠ°ΡΠΈΠ½Π°Ρ , Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ MAC Π°Π΄ΡΠ΅Ρ ΡΠ΅ΡΠ΅Π²ΠΎΠΉ ΠΊΠ°ΡΡΡ. Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ, ΡΡΠΎ Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΡΠ½ΡΡΠΎΠΏΠΈΠΈ ΡΠΈΡΡΠ΅ΠΌΠ΅, Π½ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π² ΠΎΡΠ΅Π½Ρ ΠΏΠ»ΠΎΡ ΠΈΡ ΡΠ»ΡΡΠ°ΡΡ (Π·Π°ΠΏΡΡΠΊ Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ°Π·Π°) Π½Π° ΡΠ°Π·Π½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΡΠ°Π·Π½ΡΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ;
ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΡ ΡΠ°ΠΉΠΌΠ΅ΡΠ°, ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ, ΡΠΈΠΏΠ° ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ, Π·Π½Π°ΡΠ΅Π½ΠΈΡ;
ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎΠΈΡΠΊΠ° Π±Π»ΠΎΠΊΠ° Π½Π° Π΄ΠΈΡΠΊΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ Π½Π° ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ SSD ΡΡΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΠ»ΠΎΡ ΠΎΠΉ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΡΡΠΈ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Ρ Π½ΠΈΡ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΠΈΡΠΊΠ° ΡΡΠ°Π²Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΎΠ΅ ΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅ Π²ΡΠ΅Π³Π΄Π°.
Π§ΡΠΎΠ±Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΠΠ‘Π§, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ· ΠΏΡΠ»Π° ΡΠ½ΡΡΠΎΠΏΠΈΠΈ Π΄ΠΎΡΡΠ°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ Π±Π°ΠΉΡ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ, Π²Π΅ΡΡ ΠΏΡΠ» Ρ ΡΡΠΈΡΡΠ΅ΡΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠΌ SHA-1, Π° Ρ ΡΡ-ΡΡΠΌΠΌΠ° Π²ΡΠ΄Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΉ Π½Π°Π±ΠΎΡ Π±ΠΈΡ. ΠΡΠΈ ΡΡΠΎΠΌ ΠΏΡΠ΅Π΄ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΡΡ ΠΌΠ΅ΡΡ Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ° Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ. ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Ρ ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠΈΠ²Π°Π΅ΡΡΡ Ρ ΠΏΡΠ»ΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΏΠΎ Π²ΡΡ ΠΎΠ΄Π½ΠΎΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π΅Π»ΡΠ·Ρ Π±ΡΠ»ΠΎ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ΅ΠΊΡΡΠ΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅. ΠΠΎ-Π²ΡΠΎΡΡΡ , ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΏΠΎΡΡΠΎΡΠ½Π½Π°Ρ ΠΎΡΠ΅Π½ΠΊΠ° ΠΎΡΡΠ°Π²ΡΠ΅Π³ΠΎΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠ½ΡΡΠΎΠΏΠΈΠΈ Π² ΠΏΡΠ»Π΅.
Windows
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ² ΡΠ½ΡΡΠΎΠΏΠΈΠΈ Π² Windows ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ:
ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Hyper-V ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Windows ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ°ΠΊΠΈΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ. ΠΠ½ΠΎΠ³ΠΈΠ΅ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΡ «ΠΏΡΠΈΠΊΠΈΠ΄ΡΠ²Π°ΡΡΡΡ» Hyper-V, ΡΡΠΎΠ±Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠΎ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Windows.
ΠΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΠ°ΡΡΠ° ΡΠΈΡΡΠ΅ΠΌΡ Π΄Π°Π½Π½ΡΠ΅ Ρ 7 ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ² (Seed ΡΠ°ΠΉΠ», Π²Π½Π΅ΡΠ½ΡΡ ΡΠ½ΡΡΠΎΠΏΠΈΡ, TPM, RDRAND, ACPI-OEM0, UEFI ΠΈ Π²ΡΠ΅ΠΌΡ ΡΡΠ°ΡΡΠ°) Ρ ΡΡΠΈΡΡΡΡΡΡ SHA-512 ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ SP800-90 AES-CTR-DRBG. Π£ΠΆΠ΅ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ ΡΠΈΡΡΠ΅ΠΌΡ, Π΄Π°Π½Π½ΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΠ΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠΌ, ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡΡΡ Π² ΠΏΡΠ» (Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠ°Π·Π°, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ ΠΈΠ΄ΡΡ ΡΡΠ°Π·Ρ Π½Π° ΠΏΠ΅ΡΠ΅ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΊΠΎΡΠ½Π΅Π²ΠΎΠ³ΠΎ ΠΠΠ‘Π§).
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΎΠ±ΡΡΠΈΠΉ ΡΠ²ΡΠ·Π°Π½Ρ Ρ ΡΠ΅ΠΊΡΡΠΈΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ ΠΌΠ°ΡΠΈΠ½Ρ, ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΈ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ Π½Π°ΡΠ°ΡΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ. Π Linux Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ ΠΊ ΠΊΠΎΠ΄Ρ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΎΡΠΊΡΡΡΠΎ ΠΏΡΠΈΠ·Π½Π°Π΅ΡΡΡ ΡΡΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°. Π Windows Ρ Hyper-V (ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈΠΌ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠΎΠΌ, «ΠΏΡΠΈΠΊΠΈΠ΄ΡΠ²Π°ΡΡΠΈΠΌΡΡ» ΠΈΠΌ) ΠΏΡΡΠ°ΡΡΡΡ Ρ ΡΡΠΈΠΌ Π±ΠΎΡΠΎΡΡΡΡ, Π½ΠΎ ΡΠ°ΠΌΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π²ΡΠ΅ ΠΆΠ΅ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΏΡΠΎΡΠ²Π»ΡΠ΅ΡΡΡ. Π‘ΠΈΡΡΠ°ΡΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΠ±Π»Π΅Π³ΡΠ°Π΅ΡΡΡ, ΡΠ΅ΠΌ ΡΠ°ΠΊΡΠΎΠΌ, ΡΡΠΎ Π² ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°Ρ Π΅ΡΡΡ «ΠΆΠ΅Π»Π΅Π·Π½ΡΠ΅» Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π», Π° ΡΠ°ΠΊ ΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ΄ΡΠΎΠ²ΡΠ²Π°ΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅ ΡΠΈΡΠ»Π° Ρ ΠΎΡΡΠΎΠ²ΠΎΠΉ ΠΠ‘ Π³ΠΎΡΡΠ΅Π²ΠΎΠΉ. ΠΠ΅Π΄Ρ Π½Π΅Π»ΡΠ·Ρ ΠΎΡΡΠ°Π²Π»ΡΡΡ ΡΡΠΎ Π½Π° Π²ΠΎΠ»Ρ ΡΠ»ΡΡΠ°Ρ.
ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ°Ρ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΠΈ ΠΏΡΠ΅Π²Π΄ΠΎΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π»
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
ΠΠ°ΠΊ ΠΎΡΠ»ΠΈΡΠΈΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΈΡΠ΅Π» ΠΎΡ Π½Π΅ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠΉ?
Π§ΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΠ»ΠΈ ΡΠΈΡΠ»ΠΎ ΠΠΈ
ΠΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΈΡΡΡ Π² ΡΠΈΡΠ»Π΅ ΠΠΈ ΡΡΠΈΡΠ°Π΅ΡΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠΉ. ΠΡΡΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ ΠΎΡΠ½ΠΎΠ²ΡΠ²Π°Π΅ΡΡΡ Π½Π° Π²ΡΠ²ΠΎΠ΄Π΅ Π±ΠΈΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠΈΡΠ»Π° ΠΠΈ, Π½Π°ΡΠΈΠ½Π°Ρ Ρ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΠΉ ΡΠΎΡΠΊΠΈ. Π’Π°ΠΊΠΎΠΉ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈ ΠΏΡΠΎΠΉΠ΄Π΅Ρ Β«ΡΠ΅ΡΡ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π±ΠΈΡΒ», ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΠ, Π²ΠΈΠ΄ΠΈΠΌΠΎ, ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ. ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΠΎΡ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΡΠΈΡΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΡΠΌ β Π΅ΡΠ»ΠΈ ΠΊΡΠΈΠΏΡΠΎΠ°Π½Π°Π»ΠΈΡΠΈΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡ, ΠΊΠ°ΠΊΠΎΠΉ Π±ΠΈΡ ΡΠΈΡΠ»Π° ΠΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ, ΠΎΠ½ ΡΠΌΠΎΠΆΠ΅Ρ Π²ΡΡΠΈΡΠ»ΠΈΡΡ ΠΈ Π²ΡΠ΅ ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π±ΠΈΡΡ.
ΠΠ°Π½Π½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ Π½Π°ΠΊΠ»Π°Π΄ΡΠ²Π°Π΅Ρ Π΅ΡΡ ΠΎΠ΄Π½ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π° Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ
ΡΠΈΡΠ΅Π». ΠΡΠΈΠΏΡΠΎΠ°Π½Π°Π»ΠΈΡΠΈΠΊ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·Π°ΡΡ ΡΠ°Π±ΠΎΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ° ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ
ΡΠΈΡΠ΅Π».
ΠΡΠ»ΠΈΡΠΈΠ΅ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ° ΠΏΡΠ΅Π²Π΄ΠΎΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» (ΠΠΠ‘Π§) ΠΎΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ° ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» (ΠΠ‘Π§)
ΠΡΡΠΎΡΠ½ΠΈΠΊΠΈ ΡΠ½ΡΡΠΎΠΏΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ Π½Π°ΠΊΠΎΠΏΠ»Π΅Π½ΠΈΡ ΡΠ½ΡΡΠΎΠΏΠΈΠΈ Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΈΠ· Π½Π΅Ρ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ (initial value, seed), Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ°ΠΌ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ
ΡΠΈΡΠ΅Π» (ΠΠ‘Π§) Π΄Π»Ρ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ
ΡΠΈΡΠ΅Π». ΠΠΠ‘Π§ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΎΡΠΊΡΠ΄Π° ΠΈ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π΅Π³ΠΎ ΠΏΡΠ΅Π²Π΄ΠΎΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΡΡΡ, Π° ΠΠ‘Π§ Π²ΡΠ΅Π³Π΄Π° ΡΠΎΡΠΌΠΈΡΡΠ΅Ρ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ, ΠΈΠΌΠ΅Ρ Π² Π½Π°ΡΠ°Π»Π΅ Π²ΡΡΠΎΠΊΠΎΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ°ΠΌΠΈ ΡΠ½ΡΡΠΎΠΏΠΈΠΈ.
ΠΠ½ΡΡΠΎΠΏΠΈΡ β ΡΡΠΎ ΠΌΠ΅ΡΠ° Π±Π΅ΡΠΏΠΎΡΡΠ΄ΠΊΠ°. ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΡΠ½ΡΡΠΎΠΏΠΈΡ β ΠΌΠ΅ΡΠ° Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΡΡΠΈ ΠΈΠ»ΠΈ Π½Π΅ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·ΡΠ΅ΠΌΠΎΡΡΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ.
ΠΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΠ‘Π§ = ΠΠΠ‘Π§ + ΠΈΡΡΠΎΡΠ½ΠΈΠΊ ΡΠ½ΡΡΠΎΠΏΠΈΠΈ.
Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΠΠΠ‘Π§
ΠΠΈΠ½Π΅ΠΉΠ½ΡΠΉ ΠΊΠΎΠ½Π³ΡΡΡΠ½ΡΠ½ΡΠΉ ΠΠΠ‘Π§ (LCPRNG)
Π Π°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΏΡΠ΅Π²Π΄ΠΎΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π», Π½Π΅ ΠΎΠ±Π»Π°Π΄Π°ΡΡΠΈΠΉ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΡΠΎΠΉΠΊΠΎΡΡΡΡ. ΠΠΈΠ½Π΅ΠΉΠ½ΡΠΉ ΠΊΠΎΠ½Π³ΡΡΡΠ½ΡΠ½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΈ ΡΠ»Π΅Π½ΠΎΠ² Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ ΡΠ΅ΠΊΡΡΡΠ΅Π½ΡΠ½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π½Π°ΡΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° m, Π·Π°Π΄Π°Π²Π°Π΅ΠΌΠΎΠΉ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠΎΡΠΌΡΠ»ΠΎΠΉ:
Π³Π΄Π΅ a (multiplier), c (addend), m (mask) β Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½ΡΡ. ΠΠΎΠ»ΡΡΠ°Π΅ΠΌΠ°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ Π²ΡΠ±ΠΎΡΠ° ΡΡΠ°ΡΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° (seed) X0 ΠΈ ΠΏΡΠΈ ΡΠ°Π·Π½ΡΡ Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡΡ ΠΏΠΎΠ»ΡΡΠ°ΡΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π».
ΠΠ»Ρ Π²ΡΠ±ΠΎΡΠ° ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½ΡΠΎΠ² ΠΈΠΌΠ΅ΡΡΡΡ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π΄Π»ΠΈΠ½Ρ ΠΏΠ΅ΡΠΈΠΎΠ΄Π°(ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ Π΄Π»ΠΈΠ½Π° ΡΠ°Π²Π½Π° m), ΡΠΎ Π΅ΡΡΡ ΠΌΠΎΠΌΠ΅Π½Ρ, Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ Π·Π°ΡΠΈΠΊΠ»ΠΈΡΡΡ [1].
ΠΡΡΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ Π²ΡΠ΄Π°Π» Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» X0, X1, X2, X3. ΠΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΡΠ°Π²Π½Π΅Π½ΠΈΠΉ
Π Π΅ΡΠΈΠ² ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½ΡΡ a, c, m. ΠΠ°ΠΊ ΡΡΠ²Π΅ΡΠΆΠ΄Π°Π΅Ρ Π²ΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΡ [8], ΡΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° ΠΈΠΌΠ΅Π΅Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, Π½ΠΎ ΡΠ΅ΡΠΈΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΠΈΠ»ΠΈ Π½Π°ΠΉΡΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ. ΠΡΠ΄Ρ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΈΠ·Π½Π°ΡΠ΅Π»Π΅Π½ Π·Π° Π»ΡΠ±ΡΡ ΠΏΠΎΠΌΠΎΡΡ Π² ΡΡΠΎΠΌ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ.
ΠΡΠ΅Π΄ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎ-ΠΊΠΎΠ½Π³ΡΡΡΠ½ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°
ΠΡΠ½ΠΎΠ²Π½ΡΠΌ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠΌ ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΡΠΈΡΠ΅Π» Π΄Π»Ρ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎ-ΠΊΠΎΠ½Π³ΡΡΡΠ½ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° ΡΠ²Π»ΡΠ΅ΡΡΡ Plumsteadβs β Π°Π»Π³ΠΎΡΠΈΡΠΌ, ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ, ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ [4](Π΅ΡΡΡ ΠΎΠ½Π»Π°ΠΉΠ½ Π·Π°ΠΏΡΡΠΊ) ΠΈ Π·Π΄Π΅ΡΡ [5]. ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π² [9].
ΠΡΠΎΡΡΠ°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΊΠΎΠ½Π³ΡΡΡΠ½ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° Π½Π° Java.
ΠΡΠΏΡΠ°Π²ΠΈΠ² 20 ΡΠΈΡΠ΅Π» Π½Π° ΡΠ°ΠΉΡ [4], ΠΌΠΎΠΆΠ½ΠΎ Ρ Π±ΠΎΠ»ΡΡΠΎΠΉ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅. Π§Π΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ ΡΠΈΡΠ΅Π», ΡΠ΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ.
ΠΠ·Π»ΠΎΠΌ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ³ΠΎ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ° ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» Π² Java
ΠΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ·ΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ C(rand), C++(rand) ΠΈ Java ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ LΠ‘PRNG. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΠΈ Π²Π·Π»ΠΎΠΌ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ java.utils.Random. ΠΠ°ΠΉΠ΄Ρ Π² ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ (jdk1.7) Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ
ΠΠ΅ΡΠΎΠ΄ java.utils.Randon.nextInt() Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ (Π·Π΄Π΅ΡΡ bits == 32)
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ nextseed ΡΠ΄Π²ΠΈΠ½ΡΡΡΠΉ Π²ΠΏΡΠ°Π²ΠΎ Π½Π° 48-32=16 Π±ΠΈΡ. ΠΠ°Π½Π½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ truncated-bits, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π½Π΅ΠΏΡΠΈΡΡΠ΅Π½ ΠΏΡΠΈ black-box, ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π΅ΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠΈΠΊΠ» Π² brute-force. ΠΠ·Π»ΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ Π³ΡΡΠ±ΠΎΠΉ ΡΠΈΠ»Ρ(brute-force).
ΠΡΡΡΡ ΠΌΡ Π·Π½Π°Π΅ΠΌ Π΄Π²Π° ΠΏΠΎΠ΄ΡΡΠ΄ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠΈΡΠ»Π° x1 ΠΈ x2. Π’ΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅ΡΠ΅Π±ΡΠ°ΡΡ 2^16 = 65536 Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² oldseed ΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΊ x1 ΡΠΎΡΠΌΡΠ»Ρ:
Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° ΠΎΠ½Π° Π½Π΅ ΡΡΠ°Π½Π΅Ρ ΡΠ°Π²Π½ΠΎΠΉ x2. ΠΠΎΠ΄ Π΄Π»Ρ brute-force ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ
ΠΡΠ²ΠΎΠ΄ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊΠΈΠΌ:
ΠΠ΅ΡΠ»ΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ ΠΌΡ Π½Π°ΡΠ»ΠΈ Π½Π΅ ΡΠ°ΠΌΡΠΉ ΠΏΠ΅ΡΠ²ΡΠΉ seed, Π° seed, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ ΠΏΡΠΈ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ Π²ΡΠΎΡΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°. ΠΠ»Ρ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ seed Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Java ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»Π° Π΄Π»Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ seed, Π² ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅.
Π ΡΠ΅ΠΏΠ΅ΡΡ Π² ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ Π·Π°ΠΌΠ΅Π½ΠΈΠΌ
crackingSeed.set(seed);
Π½Π°
crackingSeed.set(getPreviousSeed(seed));
Π Π²ΡΡ, ΠΌΡ ΡΡΠΏΠ΅ΡΠ½ΠΎ Π²Π·Π»ΠΎΠΌΠ°Π»ΠΈ ΠΠΠ‘Π§ Π² Java.
ΠΠ·Π»ΠΎΠΌ ΠΠΠ‘Π§ Mersenne twister Π² PHP
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ Π΅ΡΡ ΠΎΠ΄ΠΈΠ½ Π½Π΅ ΠΊΡΠΈΠΏΡΠΎΡΡΠΎΠΉΠΊΠΈΠΉ Π°Π»Π³ΠΎΡΠΈΡΠΌ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΏΡΠ΅Π²Π΄ΠΎΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» Mersenne Twister. ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° β ΡΡΠΎ ΡΠΊΠΎΡΠΎΡΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΈ ΠΎΠ³ΡΠΎΠΌΠ½ΡΠΉ ΠΏΠ΅ΡΠΈΠΎΠ΄ 2^19937 β 1, ΠΠ° ΡΡΠΎΡ ΡΠ°Π· Π±ΡΠ΄Π΅ΠΌ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° mt_srand() ΠΈ mt_rand() Π² ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ php Π²Π΅ΡΡΠΈΠΈ 5.4.6.
ΠΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ php_mt_reload Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΏΡΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈ ΠΏΠΎΡΠ»Π΅ Π²ΡΠ·ΠΎΠ²Π° php_mt_rand 624 ΡΠ°Π·Π°. ΠΠ°ΡΠ½Π΅ΠΌ Π²Π·Π»ΠΎΠΌ Ρ ΠΊΠΎΠ½ΡΠ°, ΠΎΠ±ΡΠ°ΡΠΈΠΌ ΡΡΠ°Π½ΡΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π² ΠΊΠΎΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ php_mt_rand(). Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ (s1 ^ (s1 >> 18)). Π Π±ΠΈΠ½Π°ΡΠ½ΠΎΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ:
10110111010111100111111001110010 s1
00000000000000000010110111010111100111111001110010 s1 >> 18
10110111010111100101001110100101 s1 ^ (s1 >> 18)
ΠΠΈΠ΄Π½ΠΎ, ΡΡΠΎ ΠΏΠ΅ΡΠ²ΡΠ΅ 18 Π±ΠΈΡ (Π²ΡΠ΄Π΅Π»Π΅Π½Ρ ΠΆΠΈΡΠ½ΡΠΌ) ΠΎΡΡΠ°Π»ΠΈΡΡ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
ΠΠ°ΠΏΠΈΡΠ΅ΠΌ Π΄Π²Π΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π΄Π»Ρ ΠΈΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π±ΠΈΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΄Π²ΠΈΠ³Π° ΠΈ xor
Π’ΠΎΠ³Π΄Π° ΠΊΠΎΠ΄ Π΄Π»Ρ ΠΈΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ ΡΡΡΠΎΠΊ ΡΡΠ½ΠΊΡΠΈΠΈ php_mt_rand() Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ
ΠΡΠ»ΠΈ Ρ Π½Π°Ρ Π΅ΡΡΡ 624 ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠΈΡΠ»Π° ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Mersenne Twister, ΡΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠ² ΡΡΠΎΡ Π°Π»Π³ΠΎΡΠΈΡΠΌ Π΄Π»Ρ ΡΡΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠΈΡΠ΅Π», ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΠΏΠΎΠ»Π½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Mersenne Twister, ΠΈ ΡΠΌΠΎΠΆΠ΅ΠΌ Π»Π΅Π³ΠΊΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, Π·Π°ΠΏΡΡΡΠΈΠ² php_mt_reload Π΄Π»Ρ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ.
ΠΠ±Π»Π°ΡΡΡ Π΄Π»Ρ Π²Π·Π»ΠΎΠΌΠ°
ΠΡΠ»ΠΈ Π²Ρ Π΄ΡΠΌΠ°Π΅ΡΠ΅, ΡΡΠΎ ΡΠΆΠ΅ Π½Π΅ΡΠ΅Π³ΠΎ Π»ΠΎΠΌΠ°ΡΡ, ΡΠΎ ΠΡ Π³Π»ΡΠ±ΠΎΠΊΠΎ Π·Π°Π±Π»ΡΠΆΠ΄Π°Π΅ΡΠ΅ΡΡ. ΠΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ
Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ
ΡΠΈΡΠ΅Π» Adobe Flash(Action Script 3.0). ΠΠ³ΠΎ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ Π·Π°ΠΊΡΡΡΠΎΡΡΡ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ Π·Π°Π΄Π°Π½ΠΈΡ seed’Π°. ΠΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΈΠ½ΡΠ΅ΡΠ΅Ρ ΠΊ Π½Π΅ΠΌΡ, ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ
ΠΎΠ½Π»Π°ΠΉΠ½-ΠΊΠ°Π·ΠΈΠ½ΠΎ ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½-ΠΏΠΎΠΊΠ΅ΡΠ΅.
ΠΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠ΅ΠΉ ΡΠΈΡΠ΅Π», Π½Π°ΡΠΈΠ½Π°Ρ ΠΎΡ ΠΊΡΡΡΠ° Π΄ΠΎΠ»Π»Π°ΡΠ° ΠΈ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½Π½ΡΠΌ Π² ΠΏΡΠΎΠ±ΠΊΠ΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΄Π΅Π½Ρ. Π Π½Π°ΠΉΡΠΈ Π·Π°ΠΊΠΎΠ½ΠΎΠΌΠ΅ΡΠ½ΠΎΡΡΡ Π² ΡΠ°ΠΊΠΈΡ
Π΄Π°Π½Π½ΡΡ
ΠΎΡΠ΅Π½Ρ Π½Π΅ ΠΏΡΠΎΡΡΠ°Ρ Π·Π°Π΄Π°ΡΠ°.
ΠΠ°Π΄Π°Π½ΠΈΠ΅ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ° ΠΏΡΠ΅Π²Π΄ΠΎΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π»
ΠΠ»Ρ Π»ΡΠ±ΠΎΠΉ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠΉ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°ΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅. ΠΠ΅ΡΠ΅Π½ΠΎΡΡ Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ Ρ ΠΊΠ°ΡΡΠ°ΠΌΠΈ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΡΡΠ·Ρ Π²ΡΠΏΠ°Π΄Π°Π»ΠΈ ΡΠ°ΡΠ΅, ΡΠ΅ΠΌ Π΄Π΅Π²ΡΡΠΊΠΈ. ΠΠ°Π»Π΅Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² Π΄Π»Ρ ΡΡΠ΅ΡΠ³ΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΈ ΡΠΊΡΠΏΠΎΠ½Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ.
Π’ΡΠ΅ΡΠ³ΠΎΠ»ΡΠ½ΠΎΠ΅ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅
ΠΡΠΈΠ²Π΅Π΄Π΅ΠΌ ΠΏΡΠΈΠΌΠ΅Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠΉ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ Ρ ΡΡΠ΅ΡΠ³ΠΎΠ»ΡΠ½ΡΠΌ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ [7] Π½Π° ΡΠ·ΡΠΊΠ΅ C99.
ΠΠΊΡΠΏΠΎΠ½Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅
Π’Π΅ΡΡΡ ΠΠΠ‘Π§
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΡΠΈΡΠ°ΡΡ, ΡΡΠΎ Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ ΡΠΊΡΠΎΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ ΠΈΠΌΠΈ ΠΌΠ΅ΡΠΎΠ΄ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ ΠΏΡΠΈΠ΄ΡΠΌΠ°ΡΡ ΡΠ²ΠΎΠΉ, ΡΠΎ ΡΡΠΎΠ³ΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΄Π»Ρ Π·Π°ΡΠΈΡΡ. ΠΡΠΎ ΠΎΡΠ΅Π½Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΠΎΠ΅ Π·Π°Π±Π»ΡΠΆΠ΄Π΅Π½ΠΈΠ΅. Π‘Π»Π΅Π΄ΡΠ΅Ρ ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ Π΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΈ ΠΏΡΠΈΠ΅ΠΌΡ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠΈΡΠ΅Π».
ΠΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ ΡΠ΅ΡΡΠΎΠ² ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅ΡΡ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π±ΠΈΡ β ΡΠ΅ΡΡ, ΡΠ»ΡΠΆΠ°ΡΠΈΠΉ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠΎΠ² ΠΏΡΠ΅Π²Π΄ΠΎΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» Π½Π° ΠΊΡΠΈΠΏΡΠΎΡΡΠΎΠΉΠΊΠΎΡΡΡ. Π’Π΅ΡΡ Π³Π»Π°ΡΠΈΡ, ΡΡΠΎ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ°, ΠΊΠΎΡΠΎΡΡΠΉ, Π·Π½Π°Ρ ΠΏΠ΅ΡΠ²ΡΠ΅ k Π±ΠΈΡΠΎΠ² ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, ΡΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·Π°ΡΡ k+1 Π±ΠΈΡ Ρ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡΡ Π±ΠΎΠ»ΡΡΠ΅ΠΉ Β½.
Π ΡΠ΅ΠΎΡΠΈΠΈ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΠΈ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠΎΠ³ΠΎ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΈΡΠ΅Π» ΠΈΠ»ΠΈ Π±ΠΈΡ, ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠΎΠΌ, ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠΉ. ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π΄Π»Ρ ΡΡΠΎΠΉ ΡΠ΅Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ΅ΡΡΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ DIEHARD ΠΈΠ»ΠΈ NIST. ΠΠ½Π΄ΡΡ Π―ΠΎ Π² 1982 Π³ΠΎΠ΄Ρ Π΄ΠΎΠΊΠ°Π·Π°Π», ΡΡΠΎ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ, ΠΏΡΠΎΡΠ΅Π΄ΡΠΈΠΉ Β«ΡΠ΅ΡΡ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π±ΠΈΡΒ», ΠΏΡΠΎΠΉΠ΄Π΅Ρ ΠΈ Π»ΡΠ±ΡΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ΅ΡΡΡ Π½Π° ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΡΡΡ, Π²ΡΠΏΠΎΠ»Π½ΠΈΠΌΡΠ΅ Π·Π° ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌΠΈΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ.
Π ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅ [10] ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠΉΡΠΈ ΡΠ΅ΡΡΡ DIEHARD ΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π΄ΡΡΠ³ΠΈΡ
, ΡΡΠΎΠ±Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΊΡΠΈΡΠΎΡΡΠΎΠΉΠΊΠΎΡΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ°.
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ ΡΡΠΎΠΊΠ°
ΠΠΎΠ½ΡΡΠΈΠ΅ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°
Β§ 19. ΠΠ΄Π½Π° Π·Π°Π΄Π°ΡΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΌΠ°ΡΡΠΈΠ²Π°
ΠΠΎΠ½ΡΡΠΈΠ΅ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°
Π Π΅ΡΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΡΡ Π·Π°Π΄Π°ΡΡ. ΠΠ°ΡΡΠΈΠ² Π·Π°ΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΌ Π½Π°Π±ΠΎΡΠΎΠΌ ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π». ΠΡΠΆΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π· Π΄Π°Π½Π½ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π²Ρ ΠΎΠ΄ΠΈΡ Π² ΡΡΠΎΡ ΠΌΠ°ΡΡΠΈΠ². Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅ ΡΠΈΡΠ»Π°Π‘Π½Π°ΡΠ°Π»Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ»ΠΎΠ² ΠΎ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ»Π°Ρ . ΠΡΠ΅ ΡΠ΅Π±Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΠΈΠ³ΡΠ°Π»ΡΠ½ΡΠΉ ΠΊΡΠ±ΠΈΠΊ, ΠΈΠΌΠ΅ΡΡΠΈΠΉ ΡΠ΅ΡΡΡ Π³ΡΠ°Π½Π΅ΠΉ. ΠΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π±ΡΠΎΡΠ°Π½ΠΈΠΈ ΠΊΡΠ±ΠΈΠΊΠ° Π²ΡΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-ΡΠΎ ΡΠΈΡΠ»Π° Π΅ΡΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ΅ ΡΠΎΠ±ΡΡΠΈΠ΅. Π‘ ΡΠ°Π²Π½ΠΎΠΉ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡΡ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠΏΠ°ΡΡΡ Π»ΡΠ±ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΎΡ 1 Π΄ΠΎ 6. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π±ΡΠΎΡΠ°Π½ΠΈΡ ΠΊΡΠ±ΠΈΠΊΠ° β ΡΡΠΎ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ. Π ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΡΡΠ΅ ΡΠ΅Π±Π΅ ΠΊΡΠ±ΠΈΠΊ Ρ 10 Π³ΡΠ°Π½ΡΠΌΠΈ. ΠΡΠ°Π²Π΄Π°, ΠΊΡΠ±ΠΈΠΊΠΎΠΌ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠ»ΠΎΠ²Π½ΠΎ. ΠΡΠΎ Π΄Π΅ΡΡΡΠΈΠ³ΡΠ°Π½Π½ΠΈΠΊ, Π½Π° Π³ΡΠ°Π½ΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π½Π°Π½Π΅ΡΠ΅Π½Ρ ΡΠΈΡΠ»Π° ΠΎΡ 1 Π΄ΠΎ 10. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π±ΡΠΎΡΠ°Π½ΠΈΡ ΡΠ°ΠΊΠΎΠ³ΠΎ Β«ΠΊΡΠ±ΠΈΠΊΠ°Β» β ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ 1 Π΄ΠΎ 10. ΠΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡΠΈΠΌΠ΅Ρ. ΠΡΠΈ ΡΠΎΠ·ΡΠ³ΡΡΡΠ΅ Π»ΠΎΡΠ΅ΡΠ΅ΠΈ ΠΈΠ· Π²ΡΠ°ΡΠ°ΡΡΠ΅Π³ΠΎΡΡ Π±Π°ΡΠ°Π±Π°Π½Π° Π΄ΠΎΡΡΠ°ΡΡ ΠΏΡΠΎΠ½ΡΠΌΠ΅ΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ°ΡΡ. ΠΡΠΏΠ°Π²ΡΠΈΠΉ Π½ΠΎΠΌΠ΅Ρ ΡΠ°ΡΠ° β ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ. ΠΠ°ΡΡΠΈΠΊ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» Π½Π° ΠΠ°ΡΠΊΠ°Π»Π΅ΠΡΠΈΠ²Π΅Π΄Π΅ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅Ρ ΡΠ°Π±ΠΎΡΡ Π΄Π°ΡΡΠΈΠΊΠ° ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» Π½Π° ΠΠ°ΡΠΊΠ°Π»Π΅: ΠΠΎ ΡΡΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Π½Π° ΡΠΊΡΠ°Π½ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ Π΄Π΅ΡΡΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΡ 0 Π΄ΠΎ 50. ΠΠΎΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠ΅ΡΡΠΎΠ²ΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ: 0 3 17 20 27 7 31 16 37 42 Π ΡΠ΅ΠΏΠ΅ΡΡ Π²Π΅ΡΠ½Π΅ΠΌΡΡ ΠΊ ΡΡΠ»ΠΎΠ²ΠΈΡ Π·Π°Π΄Π°ΡΠΈ. ΠΠΎΠ»ΡΡΠ°ΡΡΠΈΠ΅ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π΄Π°ΡΡΠΈΠΊΠ° ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅ ΡΠΈΡΠ»Π° Β«ΡΠ°ΡΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡΡΡΒ» ΠΏΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ ΠΌΠ°ΡΡΠΈΠ²Π°. ΠΠ°Π·ΠΎΠ²Π΅ΠΌ ΠΌΠ°ΡΡΠΈΠ² Rand, Π° ΡΠΈΡΠ»ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π² Π½Π΅ΠΌ ΠΏΡΡΡΡ Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 20. Π§ΠΈΡΠ»ΠΎ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΊΠ°ΡΡ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅, Π±ΡΠ΄Π΅Ρ Π²Π²ΠΎΠ΄ΠΈΡΡΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ X. ΠΠ»Π³ΠΎΡΠΈΡΠΌ ΠΏΠΎΠΈΡΠΊΠ° ΡΠΈΡΠ»Π° Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ΠΠ° ΡΠΈΡΡΠ½ΠΊΠ΅ 2.11 ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° Π±Π»ΠΎΠΊ-ΡΡ Π΅ΠΌΠ° Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° ΠΏΠΎΠΈΡΠΊΠ° Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ Rand Π²Π΅Π»ΠΈΡΠΈΠ½Ρ X Ρ ΠΏΠΎΠ΄ΡΡΠ΅ΡΠΎΠΌ ΡΠΈΡΠ»Π° Π΅Π΅ Π²Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΠΉ Π² ΠΌΠ°ΡΡΠΈΠ² Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ NumberX. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π±Π»ΠΎΠΊ, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΠΈΠΉ ΡΠΈΠΊΠ» Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ. ΠΠ½ ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΡΠΌΡ Π²ΡΡΡΠ½ΡΡΠΎΠ³ΠΎ ΡΠ΅ΡΡΠΈΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°. Π Π±Π»ΠΎΠΊΠ΅ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΡΠΈΠΊΠ»Π° (ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ I), Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΈ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΡΡΡ (:=1, 20). ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ NumberX ΠΈΠ³ΡΠ°Π΅Ρ ΡΠΎΠ»Ρ ΡΡΠ΅ΡΡΠΈΠΊΠ°. ΠΠ½Π°ΡΠ°Π»Π΅ Π΅ΠΉ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ Π½ΠΎΠ»Ρ. ΠΠ°ΡΠ΅ΠΌ Π² ΡΠΈΠΊΠ»Π΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΏΠ΅ΡΠ΅Π±ΠΎΡ Π²ΡΠ΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π°, ΠΈ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡ ΡΠ°Π²Π΅Π½ΡΡΠ²Π° ΠΊ ΡΡΠ΅ΡΡΠΈΠΊΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ Π΅Π΄ΠΈΠ½ΠΈΡΠ°. Π’Π°ΠΊ Π²ΡΠ΅Π³Π΄Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΡΡΡΡΡ ΡΡΠ΅ΡΡΠΈΠΊΠΈ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°Ρ ! Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° ΡΠΊΡΠ°Π½ Π±ΡΠ΄Π΅Ρ Π²ΡΠ²Π΅Π΄Π΅Π½ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π΄Π²ΡΡ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² ΠΎΡΠ²Π΅ΡΠ°: Π»ΠΈΠ±ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΡΡΠΎ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ Π½Π΅Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°, Π»ΠΈΠ±ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π· ΡΡΠΎ ΡΠΈΡΠ»ΠΎ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΎ ΡΠ°ΠΌ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΎ. Π‘Π»Π΅Π΄ΡΡΡΠ°Ρ ΡΡΡΠ°Π½ΠΈΡΠ° ΠΠ°ΠΊ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅ ΡΠΈΡΠ»Π°Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΡΡΡ Π² ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅? ΠΠ°ΠΊ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π»? Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΠΏΠΎΡΡΠ°ΡΠ°Π»ΠΈΡΡ Π΄Π°ΡΡ ΠΏΡΠΎΡΡΡΠ΅ ΠΎΡΠ²Π΅ΡΡ Π½Π° ΡΡΠΈ Π²ΠΎΠΏΡΠΎΡΡ. Π ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠΈ, Π΄Π° ΠΈ Π² ΡΠ΅Ρ Π½ΠΈΠΊΠ΅ Π² ΡΠ΅Π»ΠΎΠΌ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ Π² Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌΠΎΠΉ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΡΡΠΈ: ΡΠΈΡΠ»Π° ΠΈ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΠ°ΠΆΡΡΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΌΠΈ, Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠΌ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠΌ. ΠΡΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΡΡΡΡ, ΠΈ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΡΠΎΡΡΡΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠ΅Π²Π΄ΠΎΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π». Π ΠΊΠΎΠ½ΡΠ΅ ΡΡΠ°ΡΡΠΈ ΠΌΡ ΡΡΠΎΡΠΌΡΠ»ΠΈΡΡΠ΅ΠΌ ΠΏΡΠΎΡΡΡΡ ΡΠ΅ΠΎΡΠ΅ΠΌΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΡΠΈΡ , ΠΊΠ°Π·Π°Π»ΠΎΡΡ Π±Ρ, ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π». ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΡΡΡΡ, ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ. Π‘ΡΡΠ΅ΡΡΠ²ΡΡΡ ΡΠ΅ΡΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ»ΠΌΠΎΠ³ΠΎΡΠΎΠ²ΡΠΊΠ°Ρ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ), ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π΄Π°ΡΡ Π²Π°ΠΌ ΡΠΎΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠ³ΠΎ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ»ΡΡΠ°ΠΉΠ½Π° ΡΠ° ΠΈΠ»ΠΈ ΠΈΠ½Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ. ΠΠΎ ΠΌΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ Π·Π°ΠΌΠΎΡΠ°ΡΠΈΠ²Π°ΡΡΡΡ, Π° ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΈΡΠ΅Π», ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ ΠΊΠ°Π·Π°ΡΡΡΡ Π½Π΅ΡΠ²ΡΠ·Π°Π½Π½ΡΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ. Π§Π°ΡΡΠΎ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π½Π΅ ΠΏΡΠΎΡΡΠΎ ΠΎΠ΄Π½ΠΎ ΡΠΈΡΠ»ΠΎ, Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π», Π³Π΅Π½Π΅ΡΠΈΡΡΡΠ΅ΠΌΡΡ Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΠΈΡΡΠ²Π°Ρ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅ ΡΠΈΡΠ»Π°. ΠΡΠΎ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ, ΠΈ ΠΏΠΎΠ·ΠΆΠ΅ ΠΌΡ ΡΠ²ΠΈΠ΄ΠΈΠΌ, ΠΊΠ°ΠΊ Π΅Π³ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ. Π ΠΏΠΎΠΊΠ° Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠΊΠΎΠ½ΡΠ΅Π½ΡΡΠΈΡΡΠ΅ΠΌΡΡ Π½Π° ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» ΠΈΠ· ΡΠ΅ΠΌΠ΅Π½ΠΈΠΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΊΠ»ΡΡΠ°ΡΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΊΠ°ΠΊΡΡ-ΡΠΎ Π±Π΅Π·ΡΠΌΠ½ΡΡ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΡΡ ΡΠΎΡΠΌΡΠ»Ρ ΠΊ ΡΠ΅ΠΌΠ΅Π½ΠΈ, Π° Π·Π°ΡΠ΅ΠΌ ΠΈΡΠΊΠ°Π·ΠΈΡΡ Π΅Ρ Π½Π°ΡΡΠΎΠ»ΡΠΊΠΎ, ΡΡΠΎ ΡΠΈΡΠ»ΠΎ Π½Π° Π²ΡΡ ΠΎΠ΄Π΅ Π±ΡΠ΄Π΅Ρ ΠΊΠ°Π·Π°ΡΡΡΡ Π½Π΅ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·ΡΠ΅ΠΌΡΠΌ, Π° ΠΏΠΎΡΠ»Π΅ Π²Π·ΡΡΡ Π΅Π³ΠΎ ΠΊΠ°ΠΊ ΡΠ΅ΠΌΡ Π΄Π»Ρ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ. ΠΠΎΠΏΡΠΎΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠΎΠΌ, ΠΊΠ°ΠΊ Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΈΡΠΊΠ°ΠΆΠ΅Π½ΠΈΡ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΈΡΡΠ΅ΠΌ Ρ ΡΡΠΎΠΉ ΠΈΠ΄Π΅Π΅ΠΉ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΡΠ΄Π° ΠΎΠ½Π° Π½Π°Ρ ΠΏΡΠΈΠ²Π΅Π΄ΡΡ. Π€ΡΠ½ΠΊΡΠΈΡ ΠΈΡΠΊΠ°ΠΆΠ΅Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΠΎΠ΄Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, Π° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ Π΄ΡΡΠ³ΠΎΠ΅. ΠΠ°Π·ΠΎΠ²ΡΠΌ Π΅Ρ R. Π§ΠΈΡΠ»ΠΎΠ²ΠΎΠΉ ΠΊΡΡΠ³ΠΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΡΠΈΡΠ΅ΡΠ±Π»Π°Ρ ΡΠ°ΡΠΎΠ²: Π½Π°Ρ ΡΡΠ΄ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ 1 ΠΈ ΠΈΠ΄ΡΡ ΠΏΠΎ ΠΊΡΡΠ³Ρ Π΄ΠΎ 12. ΠΠΎ ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΌΡ ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ Ρ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΠΌ, ΠΏΡΡΡΡ Π²ΠΌΠ΅ΡΡΠΎ 12 Π±ΡΠ΄Π΅Ρ 0. Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΡΠΈΠ½Π°Ρ Ρ 1 ΡΠ½ΠΎΠ²Π° Π±ΡΠ΄Π΅ΠΌ ΠΏΡΠΈΠ±Π°Π²Π»ΡΡΡ 7. ΠΡΠΎΠ³ΡΠ΅ΡΡ! ΠΡ Π²ΠΈΠ΄ΠΈΠΌ, ΡΡΠΎ ΠΏΠΎΡΠ»Π΅ 12 Π½Π°Ρ ΡΡΠ΄ Π½Π°ΡΠΈΠ½Π°Π΅Ρ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΡΡ, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΎΠ³ΠΎ, Ρ ΠΊΠ°ΠΊΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° Π½Π°ΡΠ°ΡΡ. ΠΠ΄Π΅ΡΡ ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΠΎ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ: Π΅ΡΠ»ΠΈ Π½Π°Ρ ΡΠΈΠΊΠ» ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· n ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², ΡΠΎ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π½Π°ΡΠ½ΡΡ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΡΡ ΡΡΠΎ n. Π’Π΅ΠΏΠ΅ΡΡ Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π΅Π»Π°Π΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ R ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΎΠ½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°Π»Π° Π½Π°ΡΠ΅ΠΉ Π»ΠΎΠ³ΠΈΠΊΠ΅. ΠΠ³ΡΠ°Π½ΠΈΡΠΈΡΡ Π΄Π»ΠΈΠ½Ρ ΡΠΈΠΊΠ»Π° ΠΌΠΎΠΆΠ½ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠ»ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ΠΎΡΡΠ°ΡΠΊΠ° ΠΎΡ Π΄Π΅Π»Π΅Π½ΠΈΡ. ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠΏΡΠΎΠ±ΡΠ΅ΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·Π½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΡΠΎ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΎΠ΄Π½ΠΎ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ: m ΠΈ Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π²Π·Π°ΠΈΠΌΠ½ΠΎ ΠΏΡΠΎΡΡΡΠΌΠΈ. ΠΠΎ ΡΠΈΡ ΠΏΠΎΡ ΠΌΡ Π΄Π΅Π»Π°Π»ΠΈ «ΠΏΡΡΠΆΠΊΠΈ» Π·Π° ΡΡΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ, Π½ΠΎ ΡΡΠΎ Π΅ΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅? Π£ΠΌΠ½ΠΎΠΆΠΈΠΌ Ρ Π½Π° ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ a. Π‘Π²ΠΎΠΉΡΡΠ²Π°, ΠΊΠΎΡΠΎΡΡΠΌ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΡΠΈΠ½ΡΡΡΡΡ Π°, ΡΡΠΎΠ±Ρ ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π»ΡΡ ΠΏΠΎΠ»Π½ΡΠΉ ΡΠΈΠΊΠ», Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½Ρ. Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π΅ΡΠ½ΡΠΉ ΡΠΈΠΊΠ»: ΠΡΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π° Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΏΡΠ°Π²ΠΈΠ»ΠΎΠΌ, ΡΡΠΎ m ΠΈ Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π²Π·Π°ΠΈΠΌΠ½ΠΎ ΠΏΡΠΎΡΡΡΠΌΠΈ ΡΠΎΡΡΠ°Π²Π»ΡΡΡ ΡΠ΅ΠΎΡΠ΅ΠΌΡ Π₯Π°Π»Π»Π°-ΠΠΎΠ±Π΅Π»Π»Π°. ΠΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ Π΅Ρ Π΄ΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΡΡΡΠ²ΠΎ, Π½ΠΎ Π΅ΡΠ»ΠΈ Π±Ρ Π²Ρ Π²Π·ΡΠ»ΠΈ ΠΊΡΡΡ ΡΠ°Π·Π½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ, ΡΠΎ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ ΠΏΡΠΈΠΉΡΠΈ ΠΊ ΡΠΎΠΌΡ ΠΆΠ΅ Π²ΡΠ²ΠΎΠ΄Ρ. ΠΡΠ±ΠΎΡ ΡΠ΅ΠΌΠ΅Π½ΠΈΠΠ°ΡΡΠ°Π»ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΎ ΡΠ°ΠΌΠΎΠΌ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠΌ: Π²ΡΠ±ΠΎΡΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΡ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ ΡΠ΄Π΅Π»Π°ΡΡ Π΅Π³ΠΎ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠΎΠΉ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΡΡΡΡ Π² ΡΠ΅Ρ ΡΠ»ΡΡΠ°ΡΡ , ΠΊΠΎΠ³Π΄Π° Π²Π°ΠΌ Π½ΡΠΆΠ½Ρ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅ ΡΠΈΡΠ»Π°, Π½ΠΎ ΠΏΡΠΈ ΡΡΠΎΠΌ Π½ΡΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΎΠ½ΠΈ Π±ΡΠ»ΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠΉ ΠΊΠ°ΡΡΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ³ΡΡ. ΠΠΎΠ½Π΅ΡΠ½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΠΎΠ³Π΄Π° ΠΌΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ ΠΊ Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·, ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠ΅ΠΊΡΡΡΠ΅Π½ΡΠ½ΠΎΠ΅ ΡΠΎΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅. ΠΠ°Π²Π°ΠΉΡΠ΅ Π·Π°ΠΏΠΈΡΠ΅ΠΌ Π½Π°ΡΡ ΡΠΎΡΠΌΡΠ»Ρ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ΅ΠΊΡΡΡΠΈΠΈ: Π’ΠΎ, ΡΡΠΎ ΠΌΡ ΡΠ΄Π΅Π»Π°Π»ΠΈ, Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π»ΠΈΠ½Π΅ΠΉΠ½ΡΠΌ ΠΊΠΎΠ½Π³ΡΡΡΠ½ΡΠ½ΡΠΌ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ. ΠΠ½ ΠΎΡΠ΅Π½Ρ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ ΠΏΡΠΎΡΡ Π² ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π±ΡΡΡΡΠΎ. Π ΡΠ°Π·Π½ΡΡ ΡΠ·ΡΠΊΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½Π³ΡΡΡΠ½ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ, ΡΠΎ Π΅ΡΡΡ ΠΌΠ΅Π½ΡΡΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠ½ΠΊΡΠΈΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» Π² libc (ΡΡΠ°Π½Π΄Π°ΡΡΠ½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π‘ Π΄Π»Ρ Linux) ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ m = 2 ^ 32, a = 1664525 ΠΈ c = 1013904223. Π’Π°ΠΊΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ, ΠΊΠ°ΠΊ gcc, ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΡΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. ΠΠ°ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π·Π°ΠΌΠ΅ΡΠ°Π½ΠΈΡΠ‘ΡΡΠ΅ΡΡΠ²ΡΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π», Π½ΠΎ Π»ΠΈΠ½Π΅ΠΉΠ½ΡΠΉ ΠΊΠΎΠ½Π³ΡΡΡΠ½ΡΠ½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ ΡΡΠΈΡΠ°Π΅ΡΡΡ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΈ Π»ΡΠ³ΠΊΠΈΠΌ Π΄Π»Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ. ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π³Π»ΡΠ±ΠΆΠ΅ ΠΈΠ·ΡΡΠΈΡΡ Π΄Π°Π½Π½ΡΡ ΡΠ΅ΠΌΡ, ΡΠΎ ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΊΠ½ΠΈΠ³Ρ Random Numbers Generators, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ ΡΠ»Π΅Π³Π°Π½ΡΠ½ΡΠ΅ Π΄ΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΡΡΡΠ²Π° Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½Π³ΡΡΡΠ½ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°. ΠΠ΅Π½Π΅ΡΠ°ΡΠΈΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» ΠΈΠΌΠ΅Π΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² ΠΎΠ±Π»Π°ΡΡΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΊΠΈ ΠΈ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π²Π°ΠΆΠ½Π° Π΄Π»Ρ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΠΈ.
|