Kryptologia i Cyberbezpieczenstwo nr 6

418
WOJSKOWA AKADEMIA TECHNICZNA WYDZIAŁ CYBERNETYKI INSTYTUT ORGANIZACJI I ZARZĄDZANIA STUDIA BEZPIECZEŃSTWA NARODOWEGO NATIONAL SECURITY STUDIES ROK IV NR 6 KRYPTOLOGIA I CYBERBEZPIECZEŃSTWO CRYPTOLOGY AND CYBERSECURITY Warszawa 2014

Transcript of Kryptologia i Cyberbezpieczenstwo nr 6

Page 1: Kryptologia i Cyberbezpieczenstwo nr 6

WOJSKOWA AKADEMIA TECHNICZNAWYDZIAŁ CYBERNETYKI

INSTYTUT ORGANIZACJI I ZARZĄDZANIA

STUDIA BEZPIECZEŃSTWA NARODOWEGO

NATIONAL SECURITY STUDIES

ROK IVNR 6

KRYPTOLOGIA I CYBERBEZPIECZEŃSTWOCRYPTOLOGY AND CYBERSECURITY

Warszawa 2014

Page 2: Kryptologia i Cyberbezpieczenstwo nr 6

RADA NAUKOWADr Hans BINNENDIJK, Centrum Stosunków Transatlantyckich, SAIS, Uniwersytet

Johnsa Hopkinsa, Waszyngton, USAProf. dr Eliot A. COHEN, Dyrektor Studiów Strategicznych, SAIS, Uniwersytet Johnsa

Hopkinsa, Waszyngton, USAProf. dr hab. inż. Krzysztof FICOŃ, Akademia Marynarki Wojennej im. Bohaterów

Westerplatte, GdyniaProf. dr hab. Franciszek GOŁEMBSKI, Wojskowa Akademia Techniczna, WarszawaProf. dr inż. Juraj GRENCIK, Uniwersytet Żyliński, SłowacjaProf. dr Bruce HOFFMAN, Dyrektor Studiów Bezpieczeństwa, Uniwersytet

Georgetown, Waszyngton, USAProf. dr hab. Waldemar KACZMAREK, Akademia Obrony Narodowej, WarszawaProf. dr hab. Oleksandr MEREŻKO, Biblioteka Narodowa Ukrainy, Kijów, UkrainaProf. dr hab. Sergiu MISCOIU, Uniwersytet Babe-Bolay, Cluj-Napoca, RumuniaProf. dr Khurelbaatar URJIN, Dyrektor Tugeemel College, Ułan Bator, MongoliaProf. dr hab. Radovan VUKADINOVIC, Uniwersytet Zagrzebski, ChorwacjaProf. dr hab. inż. Piotr ZASKÓRSKI, Wojskowa Akademia Techniczna, WarszawaProf. dr hab. Marek ŻMIGRODZKI, Uniwersytet Marii Curie-Skłodowskiej, Lublin

RADA REDAKCYJNADr hab. inż. Włodzimierz MISZALSKI, prof. WAT – przewodniczący RadyDr hab. Marek ADAMKIEWICZ, prof. WATDr hab. Bogusław JAGUSIAK, prof. WATDr hab. Janusz KOSTECKI, prof. WATDr hab. Piotr KWIATKIEWICZ, prof. Wyższej Szkoły Bezpieczeństwa, PoznańDr hab. Gabriel NOWACKI, prof. WATDr hab. Tadeusz SZCZUREK, prof. WATDr hab. Janusz ŚWINIARSKI, prof. WATDr Grzegorz KOSTRZEWA-ZORBAS, adiunkt, WATDr inż. Henryk POPIEL, adiunkt, WATDr Arnold WARCHAŁ, adiunkt, WAT

REDAKCJADr Grzegorz KOSTRZEWA-ZORBAS – redaktor naczelnyDr Arnold WARCHAŁ – zastępca redaktora naczelnegoMgr Krzysztof SZWARC – sekretarz redakcji

REDAKTORZY NUMERU 6Mgr inż. Piotr DURBAJŁO – zastępca redaktora naczelnego w zakresie Kryptologii

i CyberbezpieczeństwaProf. dr hab. n. mat. inż. JERZY GAWINECKI

RECENZENCI NAUKOWI NUMERU 6Prof. dr hab. n. mat. inż. Jerzy Gawinecki, Wojskowa Akademia Techniczna, WarszawaDr hab. Jacek Pomykała, prof. UW, WarszawaDr hab. Arkadiusz Orłowski, prof. SGGW, Warszawa

Copyright by Redakcja Wydawnictw Wojskowej Akademii TechnicznejWarszawa 2014

ISSN: 2082 2677

Publikacja zakwalifikowana do druku bez poprawek edytorskichRedakcji Wydawnictw WAT

2

Page 3: Kryptologia i Cyberbezpieczenstwo nr 6

SCIENITIFIC COUNCILHans BINNENDIJK, PhD, Center for Transatlantic Relations, SAIS, Johns Hopkins

University, Washington, DC, USAProf. Eliot A. COHEN, PhD, Director, Strategic Studies, SAIS, Johns Hopkins

University, Washington, DC, USAProf. Dr Hab. Eng. Krzysztof FICOŃ, Polish Naval Academy, Gdynia, PolandProf. Dr Hab. Franciszek GOŁEMBSKI, Military University of Technology, Warsaw,

PolandJuraj GRENCIK, PhD., Eng., Assoc. Prof., University of Zilina, SlovakiaProf. Bruce HOFFMAN, PhD, Director, Security Studies, Georgetown University,

Washington, DC, USAProf. Dr Hab. Waldemar KACZMAREK, National Defence University, Warsaw, PolandProf. Dr Hab. Alexander MEREZHKO, National Library of Ukraine, Kyiv, UkraineProf. Dr Hab. Sergiu MISCOIU, Babe-Bolay University, Cluj-Napoca, RomaniaProf. Dr Khurelbaatar URJIN, Director, Tugeemel College, Ulan Bator, MongoliaProf. Dr Hab. Radovan VUKADINOVIC, University of Zagreb, CroatiaProf. Dr Hab. Eng. Piotr ZASKÓRSKI, Military University of Technology, PolandProf. Dr Hab. Marek ŻMIGRODZKI, Maria Curie-Skłodowska University, Lublin,

Poland

EDITORIAL COUNCILDr Hab. Eng. Włodzimierz MISZALSKI, Prof. of the Military University of Technology

– Chair of the Council, Warsaw, PolandDr Hab. Marek ADAMKIEWICZ, Prof. of the Military University of Technology,

Warsaw, PolandDr Hab. Bogusław JAGUSIAK, Prof. of the Military University of Technology,

Warsaw, PolandDr Hab. Janusz KOSTECKI, Prof. of the Military University of Technology, Warsaw,

PolandGrzegorz KOSTRZEWA-ZORBAS, PhD, Assoc. Prof., Military University

of Technology, Warsaw, PolandDr Hab. Piotr KWIATKIEWICZ, Prof. of the University of Security, Poznań, PolandDr Hab. Gabriel NOWACKI, Prof. of the Military University of Technology, PolandHenryk POPIEL, PhD, Eng., Assoc. Prof., Military University of Technology, PolandDr Hab. Tadeusz SZCZUREK, Prof. of the Military University of Technology, PolandDr Hab. Janusz ŚWINIARSKI, Prof. of the Military University of Technology, PolandArnold WARCHAŁ, PhD, Assoc. Prof., Military University of Technology, Poland

EDITORIAL STAFFGrzegorz KOSTRZEWA-ZORBAS, PhD – Editor-in-ChiefArnold WARCHAŁ, PhD – Deputy EditorKrzysztof SZWARC, MSc – Assistant Editor

EDITORS OF NUMBER 6MSc Eng. Piotr DURBAJŁO – Deputy Editor in the Field of Cryptology

and CybersecurityProf. Dr Hab. JERZY GAWINECKI

PEER REVIEWERS OF NUMBER 6Prof. Dr Hab. Jerzy Gawinecki, Military University of Technology, Warsaw, PolandDr Hab. Jacek Pomykała, Prof. of Warsaw University, PolandDr Hab. Arkadiusz Orłowski, Prof. of Warsaw University of Life Science, Warsaw, Poland

Copyright by Redakcja Wydawnictw Wojskowej Akademii Technicznej Warsaw 2014

ISSN: 2082 2677

3

Page 4: Kryptologia i Cyberbezpieczenstwo nr 6

RADA NAUKOWA W ZAKRESIEKRYPTOLOGII I CYBERBEZPIECZEŃSTWAGen. bryg. Krzysztof BONDARYK – Narodowe Centrum Kryptologii, MON, WarszawaDr Kris GAJ – Department of Electrical and Computer Engineering, George Mason

University, Fairfax, USAProf. dr hab. n. mat. inż. Jerzy August GAWINECKI – Wydział Cybernetyki,

Wojskowa Akademia Techniczna, Warszawa – przewodniczący RadyGen. bryg. Artur KOŁOSOWSKI – prof wizytujący WAT – Wojskowe Centralne Biuro

Konstrukcyjno-Technologiczne S.A., WarszawaProf. dr hab. Mirosław KUTYŁOWSKI – Wydział Podstawowych Problemów Techniki,

Politechnika Wrocławska, WrocławProf. dr hab. Józef LUBACZ – Wydział Elektroniki i Technik Informacyjnych,

Politechnika Warszawska, WarszawaDr hab. inż. Arkadiusz ORŁOWSKI, prof. SGGW – Wydział Zastosowań Informatyki

i Matematyki, Szkoła Główna Gospodarstwa Wiejskiego, WarszawaDr hab. Jacek POMYKAŁA, prof. UW – Wydział Matematyki, Informatyki

i Mechaniki, Uniwersytet Warszawski, WarszawaPłk Witold SKUBINA – Agencja Bezpieczeństwa Wewnętrznego, WarszawaDr Piotr SAPIECHA – Wydział Elektroniki i Technik Informacyjnych,

Politechnika Warszawska, WarszawaProf. dr hab. Jan STOKŁOSA – Wydział Elektryczny, Politechnika Poznańska, PoznańProf. Joseph PIEPRZYK – Faculty of Science and Engineering, Macquiere University,

Sydney, AustraliaProf. dr hab. Zbigniew PERADZYŃSKI – Wydział Matematyki, Informatyki

i Mechaniki, Uniwersytet Warszawski, Warszawa

RADA REDAKCYJNA W ZAKRESIEKRYPTOLOGII I CYBERBEZPIECZEŃSTWAMgr inż. Piotr DURBAJŁO – Urząd Komunikacji Elektronicznej, Warszawa

– (Sekretarz Rady) Zastępca Redaktora Naczelnego w zakresie Kryptologiii Cyberbezpieczeństwa

Płk Piotr MARKOWSKI – Narodowe Centrum Kryptologii, MON WarszawaMjr mgr inż. Krzysztof MAŃK – Wydział Cybernetyki, Wojskowa Akademia

Techniczna, WarszawaDr inż. Piotr BORA – Wydział Cybernetyki, Wojskowa Akademia Techniczna,

WarszawaPłk Andrzej MROCZKOWSKI – Narodowe Centrum Kryptologii, MON, WarszawaDr inż. Maciej KIEDROWICZ –Wydział Cybernetyki, Wojskowa Akademia Techniczna,

Warszawa

RECENZENCI:Prof. dr hab. n. mat. inż. Jerzy Gawinecki, Wojskowa Akademia Techniczna, WarszawaDr hab. Jacek Pomykała, prof. UW, WarszawaDr hab. Arkadiusz Orłowski, prof. SGGW, Warszawa

SKŁAD KOMPUTEROWYWOMAR Barbara Wojcieszuk

4

Page 5: Kryptologia i Cyberbezpieczenstwo nr 6

SCIENITIFIC COUNCIL IN THE FIELDOF CRYPTOLOGY AND CYBERSECURITY

Brig. Gen. (Ret) Krzysztof BONDARYK, National Cryptology Center, Ministryof Nacional Defence, Warsaw, Poland

Krzysztof GAJ, PhD, Assoc. Prof., George Mason University, Virginia, USAProf. Jerzy August GAWINECKI, Faculty of Cybernetics, Military University

of Technology, Warsaw, Poland – Chair of the CouncilBrig. Gen. Artur KOŁOSOWSKI – visiting professor, Central Military Bureau

of Design and Technology S.A., Warsaw, PolandProf. Mirosław KUTYŁOWSKI, Faculty of Fundamental Problems of Technology,

Wrocław University of Technology, PolandProf. Józef LUBACZ, Faculty of Electronics and Information Technology, Warsaw

University of Technology, PolandDr Hab. Arkadiusz ORŁOWSKI, Prof. of Warsaw University of Life Sciences, Faculty

of Applied Informatics and Mathematics, Warsaw, PolandDr Hab. Jacek POMYKAŁA, Prof. of Warsaw University, Faculty of Mathematics,

Informatics and Mechanics, Warsaw, PolandProf. Józef PIEPRZYK, PhD, Macquarie University, Sydney, AustraliaCol. Witold SKUBINA, Internal Security Agency, Warsaw, PolandPiotr SAPIECHA, PhD, Assoc. Prof. Warsaw University of Technology, Warsaw, PolandProf. Janusz STOKŁOSA, Faculty of Electrical Engineering, Poznan University

of Technology, PolandProf. Zbigniew PERADZYŃSKI – Faculty of Mathematics, Informatics and

Mechanics, Warsaw University, Poland

EDITORIAL COUNCIL IN THE FIELDOF CRYPTOLOGY AND CYBERSECURITYPiotr DURBAJŁO, Office of Electronic Communications, Warsaw, Poland

– Chair of the Council, Deputy Edytor in the field of Cryptologyand Cybersecurity

Col. Piotr MARKOWSKI, National Cryptology Center, Ministry of NationalDefence, Warsaw, Poland

Maj. Krzysztof MAŃK, Faculty of Cybernetics, Military University of Technology,Warsaw, Poland

Piotr BORA, PhD, Assoc. Prof., Faculty of Cybernetics, Military Universityof Technology, Warsaw, Poland

Col. Andrzej MROCZKOWSKI, National Cryptology Center, Ministry of NationalDefence, Warsaw, Poland

Maciej KIEDROWICZ, PhD, Assoc. Prof., Faculty of Cybernetics, MilitaryUniversity of Technology, Warsaw, Poland

PEER REVIEWERS OF NUMBERProf. Dr Hab. Jerzy Gawinecki, Military University of Technology, Warsaw, PolandDr Hab. Jacek Pomykała, Prof. of Warsaw University, Warsaw, PolandDr Hab. Arkadiusz Orłowski, Prof. of Warsaw University of Life Science, Warsaw,

Poland

DTP – WOMAR Barbara Wojcieszuk

Page 6: Kryptologia i Cyberbezpieczenstwo nr 6
Page 7: Kryptologia i Cyberbezpieczenstwo nr 6

SPIS TREŚCI

Wstęp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

I. KONCEPCJA POLSKIEJ POLITYKI W ZAKRESIEKRYPTOLOGII I CYBERBEZPIECZEŃSTWA . . . . . . . . . . 19

Krzysztof Bondaryk, Jacek PomykałaNowe wyzwania dla polskiej kryptologii drugiej dekady XXI wieku 19

Brunon HołystWiktymologiczne aspekty cyberprzestępczości . . . . . . . . . . . . . . . . . . . . 33

II. KRZYWE ELIPTYCZNE I ICH ZASTOSOWANIEW KRYPTOLOGII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

Jerzy Gawinecki, Mariusz Jurkiewicz, Piotr Bora, Tomasz KijkoZastosowanie krzywych eliptycznych do konstrukcji bezpiecznychalgorytmów i protokołów kryptograficznych . . . . . . . . . . . . . . . . . . . . . . 61

Robert Dryło, Zbigniew JelonekKonstruowanie krzywych eliptycznych z podgrupą danego rzędui z danym pierścieniem endomorfizmów . . . . . . . . . . . . . . . . . . . . . . . . . . 81

Robert DryłoKonstruowanie krzywych genusu 2 z danym stopniemzanurzeniowym . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

Mariusz SkałbaKodowanie deterministyczne na krzywych eliptycznych . . . . . . . . . . . 125

Andrzej DąbrowskiA family of pairing-friendly superelliptic curves of genus 4 . . . . . . . . 133

III. ALGORYTMY STENOGRAFICZNE ORAZKRYPTOLOGICZNE I ICH BEZPIECZEŃSTWO . . . . . . . 139

Jerzy Gawinecki, Kamil KaczyńskiStegodroid – aplikacja mobilna do prowadzenia ukrytejkomunikacji . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139

Tomasz Kijko, Michał WrońskiComparison of algorithms for factorization of large numbershaving several distinct prime factors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151

7

Page 8: Kryptologia i Cyberbezpieczenstwo nr 6

Maciej GrześkowiakPrime numbers and Cryptosystems Based on Discrete Logarithms 163

Bartosz ŹrałekRozszerzony algorytm Pohliga-Hellmana i jego zastosowaniedo faktoryzacji . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177

Iwona Polak, Mariusz BoryczkaAlgorytmy inspirowane naturą w kryptoanalizie . . . . . . . . . . . . . . . . . . 185

Krzysztof MańkTest autokorelacyjny dla ciągu binarnego . . . . . . . . . . . . . . . . . . . . . . . . 199

Konrad DurnogaNiekowalne ekstraktory losowości . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227

Maciej ObremskiElastyczne ekstraktory dwuźródłowe i ich zastosowania . . . . . . . . . . . 239

Tomasz AdamskiŚrednia złożoność obliczeniowa probabilistycznego algorytmuwyszukiwania pierwiastków pierwotnych modulo n . . . . . . . . . . . . . . . 247

Jerzy KaczorowskiZastosowanie funkcji L w kryptologii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259

Johannes Mykkeltveit, Janusz SzmidtNieliniowe rejestry przesuwne i łączenie skrzyżowanychpar stanów . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271

IV. SCHEMATY PODZIAŁU SEKRETUSTRUKTURY UPRAWNIEŃ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285

Jakub DerbiszRemarks on multivariate extensions of polynomial based secretsharing schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285

Andrzej PragaczUogólnione struktury uprawnień z hierarchią . . . . . . . . . . . . . . . . . . . . . 299

V. PRAKTYCZNE ZASTOSOWANIAKRYPTOLOGII I CYBERBEZPIECZEŃSTWO . . . . . . . . . . 317

Tomasz KazanaProgramy jednorazowe: krótkie wprowadzenie . . . . . . . . . . . . . . . . . . . . 317

8

Page 9: Kryptologia i Cyberbezpieczenstwo nr 6

Krzysztof Cabaj, Michał BudaMetody eksploracji danych w analizie ruchu obserwowanegoprzez systemy HoneyPot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325

Patryk Bęza, Jakub Gocławski, Paweł Mral, Piotr SapiechaAkceleracja obliczeń kryptograficznych z wykorzystaniemprocesorów GPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341

Kazimierz WorwaModelling the software testing process . . . . . . . . . . . . . . . . . . . . . . . . . . . 359

Adam E. PatkowskiModel laboratoryjny do badań federacyjnych systemówcyberbezpieczeństwa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377

Grzegorz Kostrzewa-ZorbasNATO w nowym środowisku strategicznym:cyberataki podlegająjuż artykułowi 5 Traktatu Północnoatlantyckiego . . . . . . . . . . . . . . . . 397

Page 10: Kryptologia i Cyberbezpieczenstwo nr 6
Page 11: Kryptologia i Cyberbezpieczenstwo nr 6

CONTENTS

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

I. CONCEPTION OF NATIONAL CRYPTOLOGYAND CYBERCECURITY POLICY . . . . . . . . . . . . . . . . . . . . . . . . 19

Krzysztof Bondaryk, Jacek PomykałaNew Challenges for Polish Cryptology in Second Decadeof XXI Century . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

Brunon HołystVictimological aspects of cybecrime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

II. THE ELLIPTIC CURVES AND THEIRAPPLICATIONS IN CRYPTOLOGY . . . . . . . . . . . . . . . . . . . . . . 61

Jerzy Gawinecki, Mariusz Jurkiewicz, Piotr Bora, Tomasz KijkoApplications of elliptic curves for construction of securecryptographic algorithms and protocols . . . . . . . . . . . . . . . . . . . . . . . . . . 61

Robert Dryło, Zbigniew JelonekConstructing elliptic curves with a subgroup of a given order andwith a given endomorphism ring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

Robert DryłoConstructing pairing-friendly genus 2 curves . . . . . . . . . . . . . . . . . . . . . 95

Mariusz SkałbaDeterministic encoding on elliptic curves . . . . . . . . . . . . . . . . . . . . . . . . . 125

Andrzej DąbrowskiA family of pairing-friendly superelliptic curves of genus 4 . . . . . . . . 133

III. STEGANOGRAPHIC AND CRYPTOGRAPHICALGORITHMS AND THEIR SECURITY . . . . . . . . . . . . . . . . 139

Jerzy Gawinecki, Kamil KaczyńskiStegodroid – mobile application to conduct covert communication 139

Tomasz Kijko, Michał WrońskiComparison of algorithms for factorization of large numbershaving several distinct prime factors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151

11

Page 12: Kryptologia i Cyberbezpieczenstwo nr 6

Maciej GrześkowiakPrime numbers and Cryptosystems Based on Discrete Logarithms 163

Bartosz ŹrałekA generalization of the Pohlig-Hellman algorithm and itsapplication to factoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177

Iwona Polak, Mariusz BoryczkaCryptanalysis using nature-inspired algorithms . . . . . . . . . . . . . . . . . . . 185

Krzysztof MańkAutocorrelation test for binary stream . . . . . . . . . . . . . . . . . . . . . . . . . . . 199

Konrad DurnogaNon-malleable randomness extractors . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227

Maciej ObremskiFlexible Two-Source Extractors and Applications . . . . . . . . . . . . . . . . 239

Tomasz AdamskiThe Average Complexity of the Probabilistic Algorithmfor Finding Primitive Roots Modulo n . . . . . . . . . . . . . . . . . . . . . . . . . . . 247

Jerzy KaczorowskiApplications of L-functions in cryptology . . . . . . . . . . . . . . . . . . . . . . . . 259

Johannes Mykkeltveit, Janusz SzmidtNonlinear Feedback Shift Registers and Joining of Cross-PairsStates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271

IV. THE SECRET SHARING SCHEMES.THE STRUCTURES WITH HIERARCHY . . . . . . . . . . . . . . . 285

Jakub DerbiszRemarks on multivariate extensions of polynomial based secretsharing schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285

Andrzej PragaczGeneralized access structures with hierarchy . . . . . . . . . . . . . . . . . . . . . 299

V. THE PRACTICAL APPLICATIONSOF CRYPTOLOGY AND CYBERSECURITY . . . . . . . . . . . 317

Tomasz KazanaOne-Time Programs with Limited Memory . . . . . . . . . . . . . . . . . . . . . . 317

12

Page 13: Kryptologia i Cyberbezpieczenstwo nr 6

Krzysztof Cabaj, Michał BudaAnalysis of the HoneyPot system data using data mining techniques 325

Patryk Bęza, Jakub Gocławski, Paweł Mral, Piotr SapiechaAcceleration of cryptographic calculations using GPUs . . . . . . . . . . . 341

Kazimierz WorwaModelling the software testing process . . . . . . . . . . . . . . . . . . . . . . . . . . . 359

Adam E. PatkowskiA Laboratory Model for Studying Federations of CyberDefense Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377

Grzegorz Kostrzewa-ZorbasNATO in the New Strategic Environment: Cyber AttacksNow Covered by Article 5 of the North Atlantic Treaty . . . . . . . . . . . 397

Page 14: Kryptologia i Cyberbezpieczenstwo nr 6
Page 15: Kryptologia i Cyberbezpieczenstwo nr 6

WSTĘP

Niniejszy numer „Studiów Bezpieczeństwa Narodowego” („NationalSecurity Studies”) po raz pierwszy został wydany jako całkowicie poświę-cony zagadnieniom szeroko rozumianych zastosowań kryptologii i cyber-bezpieczeństwa. Jest on początkiem serii „Kryptologia i Cyberbezpieczeń-stwo” („Cryptology and Cybersecurity”) koncentrującej się na wyjątkowoistotnych, w dobie globalnego społeczeństwa informacyjnego, dla bezpie-czeństwa państwa i obywateli zagadnieniach.

Idea powołania do istnienia po raz pierwszy w historii Polski rocz-nika „Kryptologia i Cyberbezpieczeństwo” jest konsekwencją porozumie-nia pomiędzy Narodowym Centrum Kryptologii a Wydziałem Cyberne-tyki Wojskowej Akademii Technicznej i jest ściśle związana z rozwojemnarodowej kryptologii, a także budową kompetencji w sferze ochrony cy-bernetycznej państwa. Będzie publikowany jako wydawnictwo jawne orazw postaci niejawnej – zgodnie z przyjętą koncepcją stanowić będzie płasz-czyznę, na której będą przedstawiane oryginalne wyniki uzyskane w ostat-nim okresie przez polskich naukowców w dziedzinie kryptologii i cyber-bezpieczeństwa. Obecne, pierwsze wydanie zawiera przede wszystkim arty-kuły naukowo-badawcze będące rozszerzeniem referatów wygłoszonych nakonferencji Kryptologia i Bezpieczeństwo Informacji, która odbyła się naWydziale Matematyki, Informatyki i Mechaniki Uniwersytetu Warszaw-skiego w dniach 5–6 czerwca 2014 roku, dzięki zaangażowaniu i inicjatywiegen. rez. Krzysztofa Bondaryka, pierwszego Szefa Narodowego CentrumKryptologii, oraz działalności organizacyjnej prof. dr. hab. Jacka Pomykały,przewodniczącego komitetu organizacyjnego konferencji. Autorami prac sąprzede wszystkim naukowcy z liczących się nie tylko w Polsce, ale i naświecie ośrodków zajmujących się kryptologią lub naukami powiązanymi,tj. Wydziału Cybernetyki Wojskowej Akademii Technicznej, Wydziału Ma-tematyki, Informatyki i Mechaniki Uniwersytetu Warszawskiego, InstytutuMatematycznego Polskiej Akademii Nauk w Warszawie, Wydziału Mate-matyki i Nauk Informacyjnych oraz Wydziałów Elektroniki i Technik In-formacyjnych Politechniki Warszawskiej, a także analogicznych wydziałówWyższej Szkoły Menedżerskiej w Warszawie, Uniwersytetu Adama Mickie-wicza w Poznaniu oraz Uniwersytetu Śląskiego.

Niniejsze wydanie „Kryptologia i Cyberbezpieczeństwo” zostało dofinansowane ze

środków Narodowego Centrum Badań i Rozwoju na lata 2013 – 2018 w ramach projektu

numer DOBR/0001/RON/ID1/2013/01.

Page 16: Kryptologia i Cyberbezpieczenstwo nr 6

Oddawany w Państwa ręce pierwszy numer wydawnictwa „Kryptolo-gia i Cyberbezpieczeństwo” („Cryptology and Cybersecurity”) rozpoczynasię próbą przedstawienia koncepcji polskiej polityki kryptologicznej, nato-miast w kolejnych rozdziałach numeru zostały pogrupowane istotne kwe-stie z punktu widzenia budowy potencjału narodowego w tej jakże istotnejmaterii. Należy tu przywołać kwestie zastosowania krzywych eliptycznychw kryptologii, konstruowania bezpiecznych algorytmów kryptologicznychi stenograficznych, polityk dostępu, podziału sekretu, wymiany informacjiczy ekstraktów losowych oraz praktycznego zastosowania kryptologii.

Mamy nadzieję, iż oddawany w Państwa ręce pierwszy numer będziepoczątkiem dedykowanego, elitarnego wydawnictwa zajmującego się kryp-tologią i cyberbezpieczeństwem w Polsce, i co najważniejsze skupiającymwokół siebie najlepszych polskich naukowców zajmujących się tymi dzie-dzinami.

Prof. dr hab. n. mat. inż. Jerzy August GAWINECKI,autor koncepcji wydawnictwa, Członek Rady NaukowejSTUDIA BEZPIECZEŃSTWA NARODOWEGO,„KRYPTOLOGIA I CYBERBEZPIECZEŃSTWO”

mgr inż. Piotr Durbajło, Sekretarz Rady, Zastępca RedaktoraNaczelnego w zakresie Kryptologii i Cyberbezpieczeństwa

Page 17: Kryptologia i Cyberbezpieczenstwo nr 6

INTRODUCTION

The current issue of the “National Security Studies” was first publi-shed as solely devoted to, in its broadest sense, the field of cryptologyand cybersecurity. It is the first one of the series: “Cryptology and Cy-bersecurity”, which tackles such important issues as global and nationalinformation security. Nowadays, these matters are to be taken with utmostcare in the face of advancing globalization. As a result of the agreementbetween the National Cryptology Center and the Faculty of Cyberneticsat the Military University of Technology, the idea of creating the first jour-nal of Cryptology and Cybersecurity in the history of Poland came to life.The event was closely connected to the development of national cryptologyand our growing expertise in the field of national cyber defense. Currently,the first issue includes mainly the research papers presented at the con-ference of Cryptology and Security of Information, held on 5th and 6thJuly 2014 at the Faculty of Mathematics, Computer Science and Mecha-nics at the University of Warsaw. The conference took place thanks to theengagement and efforts of the first head of National Cryptology Centre,Brig. Gen. (Ret.) Krzysztof Bondaryk and the involvement of prof. JacekPomykała, the Chair of the Organizing Committee.The authors of the presented papers are globally renowned experts, whospecialize in cryptology and related fields. On daily basis, they conducttheir research at many Polish centers, such as: the Faculty of Cyberne-tics, Military University of Technology, the Department of Mathematics,Computer Science and Mechanics at Warsaw University, the MathematicalInstitute of the Polish Academy of Science, the Faculty of Mathematicsand Information Science, Warsaw University of Technology, the Facultyof Electronics and Information Technology, Warsaw University of Techno-logy and at similar departments at other Polish universities, such as: HighSchool of Management in Warsaw, Adam Mickiewicz University in Poznanand University of Silesia in Katowice.

The current issue of “Cryptology and Cybersecurity” contains papersdevoted to the application of abstract mathematics, in particular the ellip-tic curves in cryptologic protocols, constructions of secure cryptographicand steganographic protocols, the secret sharing scheme, as well as otherpractical aspects of cryptology and cybersecurity.

This issue devoted to the “Cryptology and Cyberdefence” was supportedby The National Centre for Research and Development under the project numberDOBR/0001/RON/ID1/2013/01.

Page 18: Kryptologia i Cyberbezpieczenstwo nr 6

We hope that the first issue of our journal will initiate elite series de-dicated to broad problems of cryptology and security in cyberspace, and itwill serve as a guide for practitioners to build more secure systems basedon cryptography. This is definitely a stepping stone for future researchersand an incentive to explore the exciting world of cryptography and its ap-plications.

Chief of Educational Council in the Field of Cryptologyand Cybersecurity Prof. Jerzy August GAWINECKIThe initiator of the idea of series: “Cryptology andCybersecurity” and member of the Scientific Council

Piotr DURBAJŁO, Secretary of the Redactor,Deputy Editor in the Field of “Cryptology andCybersecurity”

Page 19: Kryptologia i Cyberbezpieczenstwo nr 6

I. KONCEPCJA POLSKIEJ POLITYKIW ZAKRESIE KRYPTOLOGIII CYBERBEZPIECZEŃSTWA

NOWE WYZWANIA DLA POLSKIEJKRYPTOLOGII DRUGIEJ DEKADY

XXI WIEKU

Krzysztof Bondaryk∗, Jacek Pomykała∗∗

∗ Narodowe Centrum Kryptologii, MON∗∗ Uniwersytet Warszawski

Streszczenie.W artykule analizujemy wyzwania dla polskiej kryptologii XXI wieku zeszczególnym uwzględnieniem potrzeb narodowej kryptologii i roli, jaką spełniają w niejwybrane dziedziny matematyki, takie jak teoria liczb i geometria algebraiczna. W szcze-gólności pokreślono rolę i bezpieczeństwo kryptosystemów bazujących na iloczynachdwuliniowych, a także problemy złożoności obliczeniowej ważnych dla kryptologii al-gorytmów deterministycznych. Wskazano na znaczenie funkcji typu L we współczesnejkryptografii i kryptoanalizie.

Słowa kluczowe: polska polityka kryptologiczna, bezpieczeństwo informacji, wydajnośćobliczeniowa i funkcjonalność kryptosystemu, kryptoanaliza i trudne problemy oblicze-niowe, derandomizacja, L-funkcje, Krzywe eliptyczne, CM metoda, Liczby B-wyjątkowe,ekwipartycja mod 1, funkcje jednokierunkowe, kryptosystemy oparte na politykach do-stępu, geometria algebraiczna, teoria liczb.

Nowe wyzwania dla polityki kryptologicznej w Polsce są determino-wane szeregiem procesów i wydarzeń ostatnich lat, a szczególnie minionegoroku. Ujawniona skala programu globalnej inwigilacji prowadzonej ostat-niego roku przez służby specjalne USA, konflikt rosyjsko-ukraiński czy stalerosnąca liczba incydentów teleinformatycznych w domenie GOV.PL1, wy-muszają konieczność podjęcia przez państwo energicznych działań dla za-pewnienia ochrony informacji i danych jego instytucji i obywateli. W nurtten wpisują się intensywne działania Narodowego Centrum Kryptologii(NCK) określające potrzebę stworzenia długofalowej polityki kryptologicz-nej Polski (por. [1], [2]). Ponadto Polska jako członek Unii Europejskiej

1 Jak wynika z raportu Zespołu Reagowania na Incydenty KomputeroweCERT.GOV.PL, w 2013 r. odnotowano 5670 incydentów teleinformatycznych.

Page 20: Kryptologia i Cyberbezpieczenstwo nr 6

K. Bondaryk, J. Pomykała

będzie zobowiązana do implementacji nowej dyrektywy Network & Infor-mation Security przyjętej przez Parlament Europejski w marcu 2014r. Po-szerzyła ona znacząco kompetencje Europejskiej Agencji ds. Bezpieczeń-stwa Sieci i Informacji (ENISA). W rezultacie ENISA stanie się głównąorganizacją zwalczającą cyberprzestępczość w UE, konsolidującą wysiłkiorganów ścigania i jednostek działających na rzecz ochrony prywatnościw państwach członkowskich. Będzie również wspierać Komisję Europejskąw rozwoju współpracy między członkami UE w kwestiach bezpieczeństwacyberprzestrzeni oraz promować standardy zarządzania i zabezpieczaniainformacji i danych.

Z powyższych powodów Polska stanęła przed wyzwaniem określeniafundamentów polityki kryptologicznej w zgodzie z rozwiązaniami unijnymi,przy jednoczesnym zabezpieczeniu interesów narodowych. Prace takie pro-wadzone są również w innych państwach unijnych. Warto przy tym zauwa-żyć, że większość państw wysoko rozwiniętych spełnia następujące kryte-ria [3]:— posiada własną politykę kryptologiczną;— ustanowiło państwowe standardy i normy kryptograficzne;— wymaga implementacji własnych rozwiązań kryptograficznych dla

sfery cywilnej i wojskowej;— posiada potencjał do samodzielnego zapewnienia interoperacyjności

kryptologicznej w NATO i UE;— rozwija własne zdolności kryptoanalityczne;— posiada centrum kompetencji kryptologicznych.

Wynika z tego konieczność oparcia fundamentów polskiej polityki krypto-logicznej na następującej triadzie pojęciowej (KUW):— konsolidacji narodowych potencjałów naukowego i przemysłowego,— unifikacji rozwiązań kryptologicznych dla sektorów strategicznych,

w tym zasad certyfikacji i akredytacji;— wymagań dotyczących zdefiniowanych norm i rozwiązań narodowych,

a także przymusu ”polonizacji” rozwiązań zagranicznych.Uzyskanie pozytywnych efektów działań po zaakceptowaniu założeń KUWbędzie zależało od wielu czynników, w tym: woli politycznej władz pań-stwowych do kształtowania rynku oraz formułowania zamówień rządowych,a także konsolidacji pod auspicjami NCK, potencjału badawczego ośrod-ków naukowych kraju w dziedzinie kryptologii.

W dniach 5–6 czerwca 2014 roku odbyła się na Wydziale MatematykiInformatyki i Mechaniki Uniwersytetu Warszawskiego konferencja naukowant. Kryptografia i bezpieczeństwo informacji2, pod patronatem honorowym

2 kbi2014.mimuw.edu.pl

20

Page 21: Kryptologia i Cyberbezpieczenstwo nr 6

Nowe wyzwania dla polskiej kryptologii drugiej dekady XXI wieku

Uniwersytetu Warszawskiego, Narodowego Centrum Kryptologii oraz Na-rodowego Centrum Badań i Rozwoju. Stanowiła ona okazję do spotkaniai wymiany poglądów przedstawicieli środowisk naukowo-badawczych, ad-ministracji publicznej i przemysłu w zakresie bezpieczeństwa teleinforma-tycznego. Konferencja dotyczyła współczesnych badań naukowych w dzie-dzinie kryptologii prowadzonych przez różne ośrodki badawcze w kraju,szeroko rozumianego problemu bezpieczeństwa informacji oraz rozwiązańpraktycznych w dziedzinie walki z cyberprzestępczością [4], [5]. Tak sze-rokie postrzeganie znaczenia kryptologii w dziedzinie bezpieczeństwa cy-berprzestrzeni i ochrony informacji staje się obecnie normą na świecie.Z tego względu, stopień zabezpieczenia państwowej infrastruktury telein-formatycznej przed atakami cybernetycznymi powinien być istotnym, alenie jedynym czynnikiem związanym z rozwojem polskiej kryptologii w naj-bliższych latach. Jej rozwój powinien służyć zarówno siłom zbrojnym, służ-bom specjalnym, policji i strukturom antyterrorystycznym, jak i sektoromgospodarki o znaczeniu strategicznym, administracji publicznej oraz pol-skim obywatelom.

Konsensus osiągnięty podczas konferencji wobec takiego wielostron-nego rozumienia kryptologii wydaje się stanowić zaledwie pierwszy krokuczyniony w kierunku rzeczywistej konsolidacji polskich środowisk nauko-wych, przemysłowych i administracji publicznej w celu rozbudowy realnychśrodków bezpieczeństwa informacji i danych w państwie.

Kolejnym, być może drobnym ale potrzebnym krokiem, mogłoby sięstać stworzenie, funkcjonującej pod auspicjami NCK, platformy dysku-syjnej o narodowej kryptologii, która umożliwiałaby wymianę poglądówprzedstawicieli polskiej nauki, przemysłu oraz rządu i administracji. Ta-kie przedsięwzięcie miałoby przede wszystkim na celu ułatwienie współ-pracy pomiędzy władzami a ośrodkami badawczymi i przedsiębiorstwamioraz konsolidację i ukierunkowywanie wspólnych wysiłków na rzecz budowypolskiej kryptologii. Problemem polskiej kryptologii pozostaje bowiem to,że ze względu na długotrwały brak zainteresowania państwa budową na-rodowych rozwiązań kryptologicznych, badania w tej dziedzinie przyjęłycharakter prac ściśle teoretycznych. Spowodowało to również rozluźnieniewięzów między ośrodkami badawczymi a krajowym przemysłem związa-nym z kryptografią, zmagającym się z problemem braku zamówień rządo-wych na swoje produkty. Z kolei administracja publiczna, nie mając częstowiedzy o rozwiązaniach krajowych, preferuje pozyskiwanie gotowych pro-duktów zagranicznych, nie dbając przy tym zwykle o zabezpieczenie intere-sów narodowych poprzez uzyskanie praw do ich modyfikacji, „polonizacji”i in.

21

Page 22: Kryptologia i Cyberbezpieczenstwo nr 6

K. Bondaryk, J. Pomykała

Ważnym przedsięwzięciem wspierającym przedstawioną powyżej ini-cjatywę jest powstanie czasopisma naukowego poświęconego kryptologii,prezentującego poglądy i prace naukowo-badawcze oraz produkty polskiegoprzemysłu.

Warto przy tej okazji zadać pytanie o kompetencje środowisk nauko-wych w Polsce w zakresie kryptologii i bezpieczeństwa informacji. Wielekrajowych uczelni zarówno cywilnych jak i wojskowych posiada w swychprogramach nauczania odpowiednie przedmioty (wykłady, seminaria, la-boratoria)z dziedziny kryptologii i bezpieczeństwa cybernetycznego. Problematykakryptologiczna jest również dyskutowana podczas licznych, regularnie prze-prowadzanych konferencjach naukowych, zarówno krajowych, jak i między-narodowych3.

Materiały z jednej z takich konferencji, zorganizowanej przez WydziałMatematyki, Informatyki i Mechaniki Uniwersytetu Warszawskiego i obję-tej patronatem przez NCK, stanowią treść niniejszego numeru czasopisma.Ich lektura pozwala udzielić na zadane powyżej pytanie ostrożnie optymi-stycznej odpowiedzi. Jest bowiem tak, że przynajmniej w obszarze badańpodstawowych w matematyce polskie ośrodki naukowe mają osiągnięcia,które zarówno ze względu na ich poziom jak i zakres, pozwalają z nadziejąpatrzeć na przyszłość polskiej kryptologii.

Dbając o kontynuację i rozwój tego kierunku badań podstawowych,stanowiących przecież fundament dla nowoczesnych rozwiązań z zakresukryptografii oraz kryptoanalizy, trzeba jednak upomnieć się również o za-cieśnienie więzów między ośrodkami naukowymi, krajowym przemysłemoraz administracją publiczną, a także zadbać o harmonijny rozwój badańkryptologicznych o charakterze technicznym, stosowanym, które zaowoco-wałyby równie wartościowymi pracami jak te, o których przeczytać możnaw niniejszym numerze czasopisma.

Istotnym rezultatem przeprowadzonej konferencji jest podkreśleniewiodącej roli matematyki w zapewnianiu bezpieczeństwa informacji. Ma-tematyka daje możliwości ścisłego zdefiniowania paradygmatów bezpie-czeństwa informacji przy użyciu języka algorytmiki i pojęć modelo-wania matematycznego. Ponadto podstawą bezpieczeństwa wielu sys-temów kryptograficznych są głębokie problemy badawcze takich dzie-dzin matematyki jak teoria liczb czy geometria algebraiczna. Prowa-dzone w tych obszarach badania podstawowe na ogół wyprzedzają

3 Między innymi Central European Conference on Cryptology, ENIGMA, Crypto-graphy and Security Systems Conference, Advanced Computer Systems, Między-narodowa Konferencja Naukowa z tytułu rocznicy złamania Enigmy, Cyberprze-stępczość i Ochrona Informacji i KBI2014.

22

Page 23: Kryptologia i Cyberbezpieczenstwo nr 6

Nowe wyzwania dla polskiej kryptologii drugiej dekady XXI wieku

o wiele lat ich zastosowania praktyczne. W celu skrócenia tego dy-stansu niezbędna jest ścisła współpraca matematyków i informaty-ków.

Znaczenie metod teorii liczb i geometrii algebraicznejw kryptologii

Ostatnie lata pokazują coraz to donioślejszą rolę teorii liczb i geome-trii algebraicznej w dziedzinie kryptologii. Choć metody teorii krzywycheliptycznych nad ciałami skończonymi są przedmiotem badań kryptolo-gicznych już od lat osiemdziesiątych ubiegłego stulecia, pojawiają się corazto nowe problemy teoretyczne i obliczeniowe z nimi związane. Kryptosys-temy eliptyczne i hipereliptyczne są niezwykle interesujące przynajmniejz dwu zasadniczych powodów. Po pierwsze ich złożoność obliczeniowa jestlepsza od analogicznych kryptosystemów opartych na tradycyjnej arytme-tyce modularnej. To pozwala na taką implementację systemu, w której po-dobny poziom bezpieczeństwa jest zagwarantowany przez stosowanie znacz-nie krótszych kluczy kryptograficznych. Po drugie arytmetyka na krzywejeliptycznej pozwala na wykorzystanie (dzięki efektywnej konstrukcji ilo-czynów dwuliniowych) odpowiedniej struktury do uzyskania dodatkowychfunkcjonalności systemów kryptograficznych. Przykładem jest wykorzysta-nie iloczynu dwuliniowego do ustanowienia klucza tajnego dzielonego przeztrzy podmioty [6], (por. [7]) lub do stworzenia systemu szyfrowania asyme-trycznego opartego na tożsamości [8]. Warto dodać, że te innowacyjne ideeprzyczyniły się do projektowania i upowszechnienia nie tylko kryptosyste-mów bazujących na tożsamości [9], lecz także kryptosystemów bezcertyfi-katowych (patrz np. [10], [11]). Ten nurt znalazł w szczególności szerokiezastosowanie w kryptografii grupowej opartej na protokołach współdziele-nia sekretu [12], [13], kryptosystemach bazujących na politykach dostępu[14], [15], a także systemach wzmacniania prywatności [16], [17], i bezpie-czeństwa informacji klasyfikowanej bazujących na modelu ORCON [18].

Z drugiej strony warto podkreślić nową ideę kryptografii opartej natorusie [19] (ang. torus based cyptography). Przypomnijmy, że torus alge-braiczny jest rozmaitością algebraiczną, która nad pewnym rozszerzeniemciała podstawowego Fp jest produktem kartezjańskim określonej liczby ko-pii multyplikatywnej grupy modularnej Gm. Jest to więc uogólnienie grupymodularnej z działaniem zadanym przez funkcje wymierne, co pozwalaw wielu przypadkach zmniejszyć złożoność działania mnożenia w grupieF ∗q , gdzie q jest potęgą liczby pierwszej p. Inaczej mówiąc można zreduko-

23

Page 24: Kryptologia i Cyberbezpieczenstwo nr 6

K. Bondaryk, J. Pomykała

wać działanie mnożenia w grupie F ∗q do działania mnożenia w F ∗p osiągającprzy tym istotną korzyść obliczeniową.

W tym kontekście szczególnego znaczenia nabierają badania dotyczącewydajności obliczeniowej generowania i funkcjonowania odpowiednich sys-temów kryptograficznych (por. [20], [21]). Rozwiązania derandomizacjiważnych algorytmów kryptograficznych zostały zaproponowane w [22], [23],[48]. Inny problem polega na zaprojektowaniu bezpiecznych i możliwie wy-dajnych obliczeniowo algorytmów i protokołów kryptograficznych. Takieprotokoły mają na ogół naturę algebraiczną i są związane z trudnymi pro-blemami obliczeniowej teorii liczb. Zwykle generowanie parametrów takichsystemów sprowadza się do wyznaczenia pary liczb pierwszych (p, q) zwią-zanych z charakterystyką rozważanego ciała oraz rzędem i generatorem od-powiedniej podgrupy multyplikatywnej, w której problem logarytmu dys-kretnego jest obliczeniowo trudny.

W przypadku klasycznego protokołu ElGamala [24] jest to para od-powiednio dużych liczb pierwszych (p, q) spełniających warunek podziel-ności q|p − 1 oraz element g rzędu q w grupie Z∗p . W przypadku protoko-łów wykorzystujących krzywe eliptyczne nad ciałem skończonym szukamykrzywej eliptycznej parametryzowanej liczbami (a, b) zadanej równaniemWeierstrassa E: y2 = x3+ax+b. W celu znalezienia odpowiedniej krzywej,tradycyjnie wykorzystuje się teorię mnożenia zespolonego (ang. CM me-thod) otrzymując nieoczekiwanie dobrą złożoność heurystyczną odpowied-nich algorytmów [25], [26]. Dalsze ciekawe wnioski wypływają z uogólnieniametody Cocksa-Pincha dla p-f (ang. pairing friendly) krzywych superelip-tycznych mających genus równy 4 [27].

Zauważmy, że w przypadku systemów bazujących na arytmetyce krzy-wych eliptycznych metoda mnożenia zespolonego redukuje problem do zna-lezienia odpowiedniej krzywej E zadanej równaniem Weierstrassa w klasiekrzywych o wyróżniku ∆ < 0 przy założeniu, że istnieje odpowiednia paraliczb pierwszych (p, q) spełniających warunki:

q|p+ 1− t (1)

4p− t2 = −∆f2 (2)

gdzie t jest śladem poszukiwanej krzywej E.Co więcej rozważając odpowiednią krzywą nad ciałem l =

pn-elementowym można wykorzystać wzór Weila w celu wyznaczenia liczbypunktów wymiernych krzywej E nad tym ciałem. Z drugiej strony w bada-niu kryptosystemów z iloczynem dwuliniowym, kluczowym pojęciem jeststopnień zanurzenia k krzywej E/Fp (nad ciałem Fp) względem q, gdzie q

24

Page 25: Kryptologia i Cyberbezpieczenstwo nr 6

Nowe wyzwania dla polskiej kryptologii drugiej dekady XXI wieku

jest liczbą pierwszą dzielącą rząd E/Fp, będący z definicji rzędem p moduloq tj. minimalnym k spełniającym spełniającym podzielność:

q|pk − 1 (3)

Jeśli q > k to to powyższy warunek jest równoważny podzielności(patrz np. Lemat 2.4 pracy [28]):

q|ϕk(p) (4)

gdzie ϕk(x) jest k-tym wielomianem cyklotomicznym. Krzywe eliptyczne,które posiadają podgrupy dużego rzędu będącego liczbą pierwszą z odpo-wiednio małym stopniem zanurzenia są zwane powszechnie p-f krzywymii odgrywają kluczowa rolę w kryptografii opartej na tożsamości i kryp-tosystemach bazujących na polityce dostępu. Dlatego celowe są badaniadotyczące efektywnego znajdowania liczb pierwszych p i q spełniającychwarunki typu (3) lub (4) [29]. Jednym ze stosowanych w praktyce podejśćjest ustalenie najpierw odpowiednio wielkiej liczby pierwszej q a następ-nie poszukiwanie p jako rozwiązania kongruencji ϕk(x) = 0(mod q). Liczbępierwszą p leżącą w odpowiedniej klasie reszt znajdujemy wtedy deter-ministycznie i efektywnie obliczeniowo o ile najmniejsza liczba pierwszaw zadanym postępie mod q jest relatywnie mała. Tu z pomocą przychodzianalityczna teoria liczb i w szczególności metoda wielkiego sita, która od-grywa istotną rolę w badaniu rozmieszczenia zer odpowiednich L-funkcjiDirichleta w pobliżu prostej Re s = 1 [30], [31].

Wracając do kryptosystemów eliptycznych, z twierdzenia Hassego wy-nika, że wyróżnik ∆ krzywej E, spełniający równanie ∆f2 = t2 − 4p jestujemny wtedy i tylko wtedy gdy ∆f2 = (N + 1 − p)2 − 4N < 0 (gdzieN jest rzędem krzywej E/Fp). Zatem mamy tu do czynienia z proble-mem przedstawialności liczby m postaci m = 4p lub m = 4N przez formękwadratową x2 + ∆y2, gdzie (−∆ jest wyróżnikiem krzywej E). Co wię-cej y jest tu zmienną regularną podczas gdy regularność (nieregularność)zmiennej x odpowiada nieregularności (regularności) parametru m. Roz-mieszczenie rozwiązań odpowiedniej kongruencji x2 + ∆y2 = 0 modmz nieregularną zmienną x prowadzi do badania sum trygonometrycznychtypu Kloostermana (por. [32]). Do ich szacowania wykorzystuje się teorięform modularnych i stowarzyszonych z nimi L-funkcji. Warto zauważyć,że sumy trygonometryczne w sposób naturalny pojawiają się przy bada-niu ekwipartycji (mod 1) w sensie Weyla (por. [33]) ale także przy badaniuekstraktorów losowości [34], [35], [36]. Teoria funkcji typu L stanowi jed-nak bezpośrednie wyzwanie dla współczesnej kryptografii na co wskazała

25

Page 26: Kryptologia i Cyberbezpieczenstwo nr 6

K. Bondaryk, J. Pomykała

już praca [37], w której zaproponowano nowy typ funkcji jednokierunkowejzadanej przez ciąg wartości symbolu Kroneckera dla modułu d (charakterurzeczywistego modulo 4d). Kontynuując tę ideę zaproponowano w [33] jejuogólnienie dla szerokiej klasy Selberga funkcji typu L. Szczególnie inte-resujące z obliczeniowego punktu widzenia są funkcje L wymiernych krzy-wych eliptycznych, których współczynniki aE(n) mogą być obliczone zapomocą wielomianowego algorytmu Schoofa. To ma ważną konsekwencję,a mianowicie jeśli E: y2 = x3 + ax + b i (a, b) potraktować jako ziarno tociąg binarny (aE(p1)mod 2, aE(p2)mod 2, . . .) zadaje eliptyczny generatorpseudolosowy o dobrych własnościach kryptograficznych (patrz [33]) dlaciągu kolejnych liczb pierwszych p1 < p2 < p3 < . . .. Z drugiej stronyzachowanie L-funkcji krzywych eliptycznych w punkcie symetrii równaniafunkcyjnego dla zadanej ich rodziny jest ze względu na głęboką hipotezęBircha i Swinnertona-Dyera [38] związane z ich średnią jej rangą. W tymkierunku stosowne badania dla szerokiej klasy funkcji typu L przeprowa-dzono w pracach [39], [40].

Klasyczne L-funkcje Dirichleta pojawiają się także w kryptologiiw związku z wydajnością obliczeniową kryptosystemów asymetrycznych,a także redukcją problemu faktoryzacji do problemu logarytmu dyskretnegow grupie Z∗n. Kluczowe znaczenie odgrywa tu pojęcie B-wykładnika (tj. wy-kładnika podgrupy Z∗n generowanej przez liczby nie przekraczające B). Dlaliczb pierwszych n problem znajdowania małego generatora Z∗n (por. [41]),jest do dziś przedmiotem intensywnych badań dotyczących gęstości liczbpierwszych o zadanym najmniejszym pierwiastku pierwotnym (patrz [42]).Liczby naturalne n, których redukcje modulo liczby pierwsze p, (p|n) mająB-wykładniki odległe od p− 1 (w sensie multyplikatywnym) o co najmniejd nazywamy (B, d)-wyjątkowymi. W pracy [31] udowodniono ich górneograniczenie jako funkcji B i d wykorzystując najlepsze znane twierdzeniagęstościowe dla zer odpowiednich L-funkcji Dirichleta. Liczby te okazująsię też mieć kluczowe znaczenie dla badania deterministycznej redukcji pro-blemu faktoryzacji do obliczania wartości funkcji Eulera φ(n) (por. [43]).Z drugiej strony liczby (B, d)-wyjątkowe są tymi, które powodują, że re-dukcja faktoryzacji n do obliczania logarytmu dyskretnego w Z∗n nie jestwielomianowa (por. [44], [45], [49]).

Reasumując, badania w dziedzinie teorii liczb i geometrii algebraicznejstanowią obecnie matematyczny fundament i tym samym kluczowe wyzwa-nie dla współczesnej kryptografii asymetrycznej. Duży potencjał badawczypolskich środowisk naukowych w tych dziedzinach stanowi silną przesłankędo budowania na nim polskiej kryptologii w oparciu o doświadczenia im-plementacyjne polskich uczelni technicznych (patrz np. [46], [47]).

26

Page 27: Kryptologia i Cyberbezpieczenstwo nr 6

Nowe wyzwania dla polskiej kryptologii drugiej dekady XXI wieku

Od wielu lat istnieje współpraca naukowa w ramach wspólnego se-minarium badawczego z kryptologii przedstawicieli Instytutu MatematykiWydziału MIMUW i Zakładu Podstaw Telekomunikacji, Wydziału Te-lekomunikacji i Technik Informacyjnych Politechniki Warszawskiej, a odroku także z przedstawicielami Instytutu Matematyki PAN w Warszawie.Obecna rozszerzona formuła współpracy polega między innymi na organi-zowaniu cyklu otwartych seminariów nt. zastosowań matematyki w kryp-tologii, która obejmuje trzy główne tematy: matematyczne aspekty kryp-tografii, teoretyczne i praktyczne problemy obliczeniowe w kryptologii orazbezpieczeństwo informacji. Poza zaproszeniami kierowanymi do prelegen-tów z różnych ośrodków badawczych kraju seminarium jest okazją dowspólnych konsultacji przedstawicieli nauki, przemysłu i administracji pu-blicznej pod auspicjami Narodowego Centrum Kryptologii.

Konferencja KBI2014 pokazała potrzebę dalszego rozwijania i rozsze-rzenia tej współpracy do regularnych spotkań kryptologicznych i konferen-cji naukowych z udziałem przedstawicieli jednostek badawczych, przedsię-biorców oraz administracji publicznej, pod patronatem Narodowego Cen-trum Kryptologii. Tak szeroka konsultacja społeczna stwarza nowy impulsdo realizacji długofalowej polityki kryptologicznej w Polsce na najbliższelata oraz rozwoju potencjału naukowego na rzecz budowy systemu bezpie-czeństwa informacji [50].

Literatura

[1] http://www.bbn.gov.pl/pl/wydarzenia/5536,Doktryna-cyberbezpie-czenstwa-dobre-praktyki-i-wspolpraca-publiczno-prywatna.html.

[2] http://wyborcza.biz/biznes/1,101558,15673560,Cyberszable i cyber-czolg czyli jak na ataki hakerow.html

[3] K. Bondaryk, Potrzeba polityki kryptologicznej w Polsce, referat za-proszony konferencji kryptografia i bezpieczeństwo informacji, War-szawa 5–6 czerwiec 2014, Wydział Matematyki Informatyki i Mecha-niki Uniwersytetu Warszawskiego.

[4] B. Hołyst, Wiktymologiczne aspekty cyberprzestępczości, referat za-proszony konferencji pt. „Kryptografia i bezpieczeństwo informacji”,Warszawa 5–6 czerwiec 2014, Wydział Matematyki Informatyki i Me-chaniki Uniwersytetu Warszawskiego.

[5] J. Gawinecki, Zagrożenia cyberprzestępczości a kryptografia naro-dowa, referat zaproszony konferencji pt. „Kryptografia i bezpieczeń-stwo informacji”, Warszawa 5–6 czerwiec 2014, Wydział MatematykiInformatyki i Mechaniki Uniwersytetu Warszawskiego.

27

Page 28: Kryptologia i Cyberbezpieczenstwo nr 6

K. Bondaryk, J. Pomykała

[6] A. Joux, A one round protocol for tripartite Diffie-Hellman, Journalof Cryptology 17 (4): 263–276 (2004).

[7] W. Diffie, M. Hellman, New directions in cryptography, IEEETransactions on Information Theory 22 (6): 644–654. (1976).

[8] D. Boneh, M. Franklin, Identity-Based Encryption From the WeilPairing, SIAM Journal on Computing, 2003, t. 32, nr. 3, p. 586–611.

[9] J. Pomykała, ID-based digital signatures with security enhancedapproach, J. Telecommunications and Information Technology 4, s.146–153, 2009.

[10] M. Girault, Self-certied public keys, Advances in Cryptology: Euro-crypt’91, p. 490–497, Springer, 1991.

[11] J. Pejaś, Schematy podpisu cyfrowego z jawnymi I niejawnymi cer-tyfikatami w infrastrukturze z wieloma urzedami zaufania, rozprawahabilitacyjna, Szczecin 2013 IEEE Standard for Identity-Based Cryp-tographic Techniques using Pairings, Std 1363TM-2013.

[12] M. Kula, Matroidy I dzielenie sekretów, referat zaproszony konfe-rencji pt. „Kryptografia i bezpieczeństwo informacji”, Warszawa 5–6czerwiec 2014, Wydział Matematyki Informatyki i Mechaniki Uniwer-sytetu Warszawskiego.

[13] J. Derbisz, Wielowymiarowe rozszerzenia schematów podziału se-kretu, referat na konferencji pt. „Kryptografia i bezpieczeństwo in-formacji”, Warszawa 5–6 czerwiec 2014, Wydział Matematyki Infor-matyki i Mechaniki Uniwersytetu Warszawskiego.

[14] W. Bagga, S. Crosta, R. Molva, Policy-based Encryption Sche-mes from Bilinear Pairing, Proc. of the 2006 ACM Symposium oninformation, computer and communication security, ACM Press, pp.368–368, New York 2006.

[15] A. Pragacz, Ogólne struktury dostępu z hierarchią, referat na konfe-rencji pt. „Kryptografia i bezpieczeństwo informacji”, Warszawa 5–6czerwiec 2014, Wydział Matematyki Informatyki i Mechaniki Uniwer-sytetu Warszawskiego.

[16] B. Hołyst, J. Pomykała, P. Potejko (red.), Nowe techniki badańkryminalistycznych a bezpieczeństwo informacji, Wyd. PWN, War-szawa 2014.

[17] K. Durnoga, J. Pomykała, Racjonalne generowanie systemówkryptograficznych, to appear.

[18] B. Hołyst, J. Pejaś, J. Pomykała (red.), Cyberprzestępczość i bez-pieczne systemy zarządzania informacją klasyfikowaną, wyd. WSM,Warszawa 2013.

[19] K. Rubin, A. Silverberg, Torus-Based Cryptography, CRYPTO2003: 349–365.

28

Page 29: Kryptologia i Cyberbezpieczenstwo nr 6

Nowe wyzwania dla polskiej kryptologii drugiej dekady XXI wieku

[20] M. Grześkowiak, Metody generowania liczb pierwszych w krypto-systemach z kluczem publicznym, referat zaproszony konferencji pt.„Kryptografia i bezpieczeństwo informacji”, Warszawa 5–6 czerwiec2014, Wydział Matematyki Informatyki i Mechaniki UniwersytetuWarszawskiego.

[21] J. Pomykała, Teoria liczb w kryptologii, referat na konferencji pt.„Kryptografia i bezpieczeństwo informacji”, Warszawa 5–6 czerwiec2014, Wydział Matematyki Informatyki i Mechaniki UniwersytetuWarszawskiego.

[22] M. Skałba, Derandomizacja wybranych algorytmów kryptograficz-nych, referat na konferencji pt. „Kryptografia i bezpieczeństwo infor-macji”, Warszawa 5–6 czerwiec 2014, Wydział Matematyki Informa-tyki i Mechaniki Uniwersytetu Warszawskiego.

[23] B. Źrałek, Rozszerzony algorytm Pohliga-Hellmana i jego zastoso-wanie do faktoryzacji, referat na konferencji pt. „Kryptografia i bez-pieczeństwo informacji”, Warszawa 5–6 czerwiec 2014, Wydział Mate-matyki Informatyki i Mechaniki Uniwersytetu Warszawskiego.

[24] T. A. Elgamal , A Public-Key Cryptosystem and a Signature SchemeBased on Discrete Logarithms, IEEE Transactions on InformationTheory 1985, t. IT-31, nr. 4, s. 469–472 or CRYPTO 84, s. 10–18,Springer-Verlag.

[25] Z. Jelonek, Krzywe eliptyczne z zadanym pierścieniem endomorfi-zmów i podgrupą ustalonego rzędu, referat na konferencji pt. „Kryp-tografia i bezpieczeństwo informacji”, Warszawa 5–6 czerwiec 2014,Wydział Matematyki Informatyki i Mechaniki Uniwersytetu Warszaw-skiego.

[26] R. Dryło, Konstruowanie krzywych hipereliptycznych genusu 2 z ma-łym stopniem zanurzeniowym, referat na konferencji pt. „Kryptografiai bezpieczeństwo informacji”, Warszawa 5–6 czerwiec 2014, WydziałMatematyki Informatyki i Mechaniki Uniwersytetu Warszawskiego.

[27] A. Dąbrowski, Metoda Cocksa-Pincha dla pewnych klas krzywychalgebraicznych, referat zaproszony konferencji pt. „Kryptografia i bez-pieczeństwo informacji”, Warszawa 5–6 czerwiec 2014, Wydział Mate-matyki Informatyki i Mechaniki Uniwersytetu Warszawskiego.

[28] A. K. Lenstra, Using cyclotomic polynomials to construct effi-cient discrete logarithm cryptosystems over finite fields, ACISP’ 97Springer-Verlag 1997.

[29] M. Grześkowiak, Algorithms for relatively cyclotomic primes, Fun-damenta Informaticae 125 (2013), pp. 161–181.

[30] J. Pomykała, J. A. Pomykała, Systemy informacyjne, modelowa-nie i wybrane techniki kryptograficzne, MIKOM, Warszawa 1999.

29

Page 30: Kryptologia i Cyberbezpieczenstwo nr 6

K. Bondaryk, J. Pomykała

[31] J. Pomykała, On q-orders in primitive modular groups, Acta Arith-metica, 166 4 (2014) p. 397–404.

[32] J. Pomykała, On the greatest prime divisor of quadratic sequences,Sem. Theor. Nombres Bordeaux 3(2), p. 361–375, 1991.

[33] J. Kaczorowski, Zastosowanie funkcji L w kryptologii, referat za-proszony konferencji pt. „Kryptografia i bezpieczeństwo informacji”,Warszawa 5–6 czerwiec 2014, Wydział Matematyki Informatyki i Me-chaniki Uniwersytetu Warszawskieg.

[34] Y. Dodis, X. Li, T. D. Wooley, D. Zuckerman, Privacy ampli-fication and non-malleable extractors via character sums, In: Proce-edings of the 2011 IEEE 52nd Annual Symposium on Foundations ofComputer Science, FOCS ’11, pages 668–677,IEEE Computer Society.

[35] K. Durnoga, Niekowalne ekstraktory losowości, referat na konferencjipt. „Kryptografia i bezpieczeństwo informacji”, Warszawa 5–6 czer-wiec 2014, Wydział Matematyki Informatyki i Mechaniki Uniwersy-tetu Warszawskiego.

[36] K. Durnoga, B. Źrałek, On randomness extractors and computingdiscrete logarithms in bulk, submitted.

[37] M. Anshel, D. Goldfeld, Zeta functions, one-way functions, andpseudorandom number generators, Duke Math. J. 88(1997), 371–390.

[38] B. J. Birch, H. P. F. Swinnerton-Dyer, Notes on elliptic curves.II, J. Reine Angew. Math. 218 (1965), p. 79–108.

[39] A. Dąbrowski, J. Pomykała, Nonvanishing of motivic L-functions,Math. Proc. Cambridge Philos. Soc., 130(2), pp. 221–235, 2001.

[40] A. Perelli, J. Pomykała, Averages of twisted elliptic L-functions,Acta Arith, 80, pp. 149–163, 1997.

[41] T. Adamski, Średnia złożoność obliczeniowa probabilistycznego algo-rytmu wyszukiwania pierwiastków pierwotnych modulo n, referat nakonferencji pt. „Kryptografia i bezpieczeństwo informacji”, Warszawa5–6 czerwiec 2014, Wydział Matematyki Informatyki i Mechaniki Uni-wersytetu Warszawskiego.

[42] A. Paszkiewicz, Badania własności liczb pierwszych i wielomia-nów nieprzywiedlnych pod kątem zastosowania w telekomunikacji, Roz-prawa habilitacyjna, Politechnika Warszawska, Warszawa 2012.

[43] J. B. Conrey, Problem 8 in: Future directions in algorithmicnumber theory, The American Institute of Mathematics, 2003,http://www.aimath.org

[44] J. Pomykała, B. Źrałek,On Reducing Factorization to the DiscreteLogarithm Problem Modulo a Composite, Computational Complexity,Volume 21, Number 3, p. 421–429, Springer-Verlag, 2012.

30

Page 31: Kryptologia i Cyberbezpieczenstwo nr 6

Nowe wyzwania dla polskiej kryptologii drugiej dekady XXI wieku

[45] J. Pomykała, (d,B)-exceptional numbers with applications to cryp-tology, PTM-DMV Mathematical Conference, Poznań 2014.

[46] J. Gawinecki, P. Bora, M. Jurkiewicz, T. Kijko, Zastosowaniekrzywych eliptycznych do konstrukcji bezpiecznych algorytmów i proto-kołów kryptograficznych, referat na konferencji pt. „Kryptografia i bez-pieczeństwo informacji”, Warszawa 5–6 czerwiec 2014, Wydział Mate-matyki Informatyki i Mechaniki Uniwersytetu Warszawskiego.

[47] P. Bęza, J. Gocławski, P. Mral, D. Waszkiewicz, P. Sapie-cha, Akceleracja obliczeń kryptograficznych z wykorzystaniem proce-sorów GPU, referat na konferencji pt. „Kryptografia i bezpieczeństwoinformacji”, Warszawa 5–6 czerwiec 2014, Wydział Matematyki Infor-matyki i Mechaniki Uniwersytetu Warszawskiego.

[48] J. Pomykała, B. Źrałek, Dynamic group tnreshold signature ba-sed onderandomized Weil pairing computation, Metody InformatykiStosowanej, 4/2008 (t. 17) s. 183–194

[49] J. Pomykała, On exponents of modular subgrous generated by smallintervalls, (submitted)

[50] L. Grabarczyk, Rozwój potencjału naukowego na rzecz budowy sys-temu bezpieczeństwa informacji, referat zaproszony konferencji pt.„Kryptografia i bezpieczeństwo informacji”, Warszawa 5–6 czerwiec2014, Wydział Matematyki Informatyki i Mechaniki UniwersytetuWarszawskiego.

NEW CHALLENGES FOR POLISH CRYPTOLOGY INSECOND DECADE OF XXI CENTURY

Abstract. In this paper we analyze the challenges for the twenty-first century Polishcryptology with special emphasis on the needs of the national cryptology and the rolethey perform in the selected areas of mathematics such as number theory and algebraicgeometry. In particular, we stress the role and security of bilinear based cryptosystems, aswell as the problems of computational complexity of deterministic algorithms importantfor cryptology. We pointed out the importance of L-functions in modern cryptographyand cryptoanalysis.

Keywords: Polish Cryptology Policy, information security, efficiency and functionalityof cryptosystem, cryptoanalysis and hard computational problems, derandomization,L-functions, elliptic curves, CM method, B-exceptional numbers, equiparition mod 1,one-way functions, policy based cryptosystems, algebraic geometry, number theory

Page 32: Kryptologia i Cyberbezpieczenstwo nr 6
Page 33: Kryptologia i Cyberbezpieczenstwo nr 6

WIKTYMOLOGICZNE ASPEKTYCYBERPRZESTĘPCZOŚCI

Brunon Hołyst

Uniwersytet Łódzki

Streszczenie. W pracy analizowana są zjawiska towarzyszące rozwojowi Internetu zeszczególnym uwzględnieniem cyberprzestępczości oraz cyberterroryzmu. Omówione zo-stały także aspekty psychologiczne i wiktymologiczne związane z przestępczością w cy-berprzestrzeni. Przeprowadzono analizę zagrożeń i ryzyka z uwzględnieniem czynnikówpodmiotowych i sytuacyjnych.

Słowa kluczowe: cyberprzestępczość, wiktymologia, cyberprzestrzeń, oprogramowaniezłośliwe, ataki sieciowe, technologie informatyczne, ofiary cyberprzestępczości, psycholo-giczne aspekty cyberprzestępczości, edukacja sieciowa, internet a relacje interpersonalne,tożsamość wirtualna

W ostatnich latach jesteśmy świadkami znaczących zmian technolo-gicznych obejmujących różne sfery życia człowieka. Komputeryzacja i po-wstanie globalnej sieci pociągają za sobą różnorodne konsekwencje, równieżte niepożądane. I tak w miarę rozwoju internetu i powstania nowych rodza-jów usług pojawiły się także rozmaite zjawiska o charakterze patologicznymczy wręcz przestępnym. Czyny te mają specyficzne cechy odróżniające jeod innych przestępstw. Sygnalizuje się problemy dotyczące dwóch pod-stawowych zagadnień, a mianowicie: zakresu osób, którym można przypi-sać odpowiedzialność karną, oraz kwestii miejsca popełnienia przestępstwa.Podstawowe znaczenie praktyczne ma w przypadku przestępczości interne-towej nakreślenie granic stosowania polskiej ustawy karnej i przypisania natej podstawie odpowiedzialności za czyny, popełniane z wykorzystanieminternetu.

Kodeks karny z 1997 r. objął swym zasięgiem przestępstwa kompu-terowe i internetowe. Przyjmuje się, iż przestępstwa internetowe to takie,w przypadku których możliwości oferowane przez internet ułatwiły sprawcyrealizację zamierzonego czynu przestępnego albo jego poszczególnych sta-diów. O przestępczości internetowej mówi się więc, gdy bez użycia internetunie mogłoby dojść do popełnienia określonego czynu lub jego dokonaniebyłoby znacznie bardziej utrudnionej [1]. Internet charakteryzuje się bra-kiem scentralizowanej kontroli, ogólnoświatowym zasięgiem i powszechnądostępnością. Nieliczne tylko państwa nie mają serwerów podłączonych dosieci. Nad poszczególnymi fragmentami sieci sprawują kontrolę administra-torzy określonych serwerów, natomiast nikt nie kontroluj całości sieci. O dy-

Page 34: Kryptologia i Cyberbezpieczenstwo nr 6

B. Hołyst

namice rozwoju sieci zadecydowały możliwości, które oferuje, stanowiącewynik wskazanych cech.

Ogromna liczba danych, łatwość publikowania, brak kontroli, a takżezasięg geograficzny i struktura sieci sprawiły, że internet zaczął być wy-korzystywany do popełniania przestępstw, jednocześnie stwarzając trud-ności dla wymiaru sprawiedliwości w ich ściganiu. W przypadku prze-stępstw internetowych przypisanie odpowiedzialności karnej wymaga doko-nania oceny, czy i jaki czyn zabroniony popełnia dana osoba, jak równieżustalenia, czy w danym przypadku do określenia odpowiedzialności karnejznajdzie zastosowanie polski Kodeks karny. Najpierw określa się więc, czyi przez kogo popełniony został czyn zabroniony, a później dopiero badasię, czy sprawca tegoż czynu może ponieść odpowiedzialność na podstawiezasady terytorialności względnie zasady personalnej, zasady podmiotowejobostrzonej lub zasady represji uniwersalnej [1].

Budowa społeczeństwa informatycznego spowodowała ujemny skutekinformatyzacji w postaci cyberterroryzmu. Wyobrażenia terrorystów o po-tajemnym wdzieraniu się do systemów komputerowych w celu wprowadze-nia wirusów, kradzieży wrażliwych informacji, zniekształcenia lub usunięciastron internetowych albo wyłączenia ważnych służb publicznych niepokojąpersonel do spraw bezpieczeństwa komputerowego na całym świecie. Gło-śne ataki na strony e-handlowe Yahoo! i e-Bay w 1999 r. czy kontynuowanacybernetyczna święta wojna (dżihad) przeciw izraelskim i amerykańskimstronom w sieci przez pakistańskich hakerów w ramach pomocy palestyń-skiej intifadzie to właśnie przykłady ceberterroryzmu.

Wiele informacji sieciowych ma wpływ nie tylko na rodzaje celówi broni wybieranych przez terrorystów, ale również na metody działa-nia ugrupowań terrorystycznych i strukturę ich organizacji. Kilka z tychnajbardziej niebezpiecznych organizacji wykorzystuje technikę informa-cyjną: komputery, oprogramowanie, urządzenia telekomunikacyjne i inter-net, w celu lepszej organizacji i koordynacji rozproszonych działań. Po-dobnie jak wiele korporacji wykorzystujących internet do skuteczniejszychi bardziej elastycznych działań, terroryści wprzęgają siłę informacji tech-nicznej (IT) do tworzenia nowych operacyjnych doktryn i form organizacyj-nych. I tak jak firmy prywatne tworzą sojusznicze sieci w celu zaopatrzeniaklientów w komplet usług, tak ugrupowania terrorystyczne odchodzą odhierarchicznej biurokracji, stają się zdecentralizowane i często zmieniająsieć ugrupowań złączonych wspólnymi celami.

Powstanie powiązanych sieciowo ugrupowań terrorystycznych stanowiczęść szerszej koncepcji, określanej przez J. Arquillę i D.F. Ronfeldta jakowojna sieciowa (netwar) [2]. Pojęcie to odnosi się do wyłaniającego się

34

Page 35: Kryptologia i Cyberbezpieczenstwo nr 6

Wiktymologiczne aspekty cyberprzestępczości

modelu konfliktów i przestępczości w płaszczyźnie społecznej, obejmują-cego przedsięwzięcia niewystępujące w tradycyjnej wojnie. W modelu tymuczestnicy działają w małych rozproszonych grupach, które komunikują się,koordynują akcje oraz prowadzą kampanie przez internet bez centralnegodowództwa [3].

Wskazuje się, iż przestępczość związana z elektronicznym przetwarza-niem in formacji, określana w literaturze fachowej mianem przestępczościkomputerowej, pojawiła się wraz z powstaniem techniki komputerowej ok.1940 r. i jej rozwojem [4]. Jedną z najgroźniejszych jej odmian, jaka obec-nie funkcjonuje w sieciach komputerowych, budząc zaniepokojenie wśródwłaścicieli systemów i sieci komputerowych, jest tzw. hakerstwo. Liczba do-konywanych w ostatnim czasie włamań komputerowych (określanych mia-nem przestępczości nowych czasów) związanych bezpośrednio z hakerstwemznacząco wzrosła.

Hakerstwo jako zjawisko subkulturowe jest najczęściej spotykanewśród szczególnie utalentowanej i zainteresowanej nowoczesnymi techno-logiami młodzieży obytej z techniką komputerową. Jednak nie jest domenąwyłącznie tej kategorii osób, gdyż czynów hakerskich dopuszczają się takżezawodowi informatycy. Aktywność tego rodzaju pozostaje w sferze zain-teresowań zorganizowanych grup przestępczych o charakterze mafijnym,a przykładem może być działalność rosyjskich złodziei komputerowych,którzy dzięki swoim umiejętnościom potrafią się włamać za pośrednictweminternetu do każdego systemu komputerowego, jeżeli tylko znajdą się tamdane, jakich potrzebują ich mocodawcy.

Najczęściej wykonywanymi czynnościami rosyjskich hakerów są kra-dzieże znacznych kwot pieniędzy z banków amerykańskich. Dzięki fikcyj-nym firmom, utworzonym specjalnie w tym celu, w jednej z tzw. oaz finan-sowych dokonują transferu ich do Rosji, gdzie mafia rosyjska wykorzystujeje na potrzeby swojej działalności. Szacuje się, iż chodzi o kwoty rzędu setekmilionów dolarów. Rosyjskie mafie wynajmują nie tylko hakerów, którzyłamią systemy zabezpieczeń w firmach lub innych instytucjach dla zdoby-cia potrzebnych im danych. Odnotowuje się także wypadki, kiedy takichdziałań dokonują hakerzy w celu zaspokojenia potrzeby uznania i zyskaniapodziwu w środowisku.

W efekcie rozwoju systemów informatycznych wystąpiły nowe, nie-przewidywalne niegdyś zagrożenia. Pojawił się nawet specjalny termin„wojna informatyczna określający techniki ataku na systemy komputerowe.W świetle tych faktów bezpieczeństwo systemów jest podstawowym pro-blemem naszych czasów. Cyberprzestrzeń łączy tysiące sieci komputero-wych na całym świecie, dlatego atak destabilizujący na systemy kompute-rowe dotknąłby miliony komputerów. Wskazuje się, że wojna informatyczna

35

Page 36: Kryptologia i Cyberbezpieczenstwo nr 6

B. Hołyst

(mająca postać: szpiegostwa przemysłowego, ataków hakerów, programówniszczących i wirusów, podsłuchu danych, łamania szyfrów, ataków na pry-watność oraz ataków z użyciem bomb mikrofalowych i broni magnetycznej)kosztuje USA od 100 do 300 mld dolarów rocznie [5].

Wskazuje się następujące zagrożenia [6]:

– FBI szacuje, że rocznie traci w wyniku ataków na swoje sieci ok.7,5 mld do larów,

– DISA (Defense Information SecurityAgency) – specjalna agencja De-partamentu Obrony USA (DoD) stwierdziła, że aż 88% komputeróww sieci DoD jest pe netrowanych, a w 96% przypadków włamań ichsprawcy nie zostają wykryci,

– CERT (Computer Emergency Response Team) – specjalny zespół re-agujący na zdarzenia w sieci szacuje, że rocznie liczba włamań do sieciwzrasta o 75%,

– rosyjscy hakerzy włamali się przez sieć do kont Citibanku, skąd niele-galnie przelali na inne konta ok. 11,6 mln dolarów,

– program SATAN (Security Administrator Tool for Analyzing Net-works), rozprowadzany od 1995 r. darmowo w internecie, służący ad-ministratorom do sprawdzania bezpieczeństwa ich serwerów, stał sięwytrychem w rękach włamywaczy.

Przeprowadzona w 1996 r. przez FBI i CSI (Computer Security Institute)analiza bezpieczeństwa systemów sieciowych 428 organizacji w USA wyka-zała, że:

– 41% badanych potwierdziło włamanie do ich sieci lub użycie zasobówsieci przez niepowołane osoby; 37% stanowiły instytucje medyczne,a 21% – instytucje finansowe (dane te wskazują, jakie informacje sąnajcenniejsze dla Amerykanów);

– szpiegostwo gospodarcze było przyczyną 50% ataków (chodzi o wykra-danie konkurencji informacji o charakterze ekonomicznym),

– 50% badanych nie miało opracowanych zasad polityki bezpieczeństwainformacji, a z pozostałych 50% – połowa ich nie przestrzegała,

– 20% badanych nie wiedziało, czy ich sieci były atakowane, czy też nie.

W badaniach przeprowadzonych w 1996 r. w 1300 firmach USA i Kanadystwierdzono, że:

– 54% badanych firm poniosło straty w wyniku włamań,– 78% firm odnotowało straty z powodu wprowadzenia wirusów kompu-

terowych,

36

Page 37: Kryptologia i Cyberbezpieczenstwo nr 6

Wiktymologiczne aspekty cyberprzestępczości

– 42% firm zarejestrowało niszczące ataki z zewnątrz, a skutki destabili-zacji systemu okazują się bardziej dotkliwe niż włamanie do systemu,

– 25% firm straciło w wyniku włamań ponad 250 tys. dolarów, a 15% –ponad 1 mln; większość firm nie potrafiła określić wielkości wyrządzo-nych szkód.

Większość ataków jest dokonywanych wewnątrz firm, a ich sprawcami sąpracownicy, którzy wykradają informacje lub bezprawnie dostają się dosystemu. Dokonanie ataku ułatwia poczucie anonimowości. Specjalne tech-niki stosowane przez włamywaczy opierają się przede wszystkim na fak-cie nieświadomości użytkowników systemów komputerowych, iż te systemystanowią obiekt ataków. Cechą przestępstwa hakerstwa jest to, że miejsce,gdzie jest ono popełniane, prawie nigdy nie jest miejscem źródła zagro-żenia. Narzędziem doskonałym w takich wypadkach jest sam komputer,podłączony do internetu i wyposażony w odpowiednie oprogramowanie.

Wyróżniono dwa sposoby przeprowadzania ataków na systemy kom-puterowe [4]:

– techniczne, dokonywane dzięki wiedzy informatycznej, jaką posługujesię sprawca takiego przestępstwa, a polegające na wykorzystywaniusiły i oprogramowania posiadanego komputera,

– socjotechniczne, które w gruncie rzeczy polegają na zdobyciu określo-nej wiedzy na temat atakowanej firmy lub innego „opracowywanego”celu ataku, aby ją następnie wykorzystać do dokonania ataku spo-sobami informatycznymi. W tym celu potencjalny sprawca zdobywadane na temat atakowanej instytucji, podając się za jednego z jej pra-cowników i prosząc o podanie mu hasła dostępu do sieci, ponieważ jezapomniał, bądź też przeprowadza promocję jakiegoś produktu firmykomputerowej, pozostawiając na dyskietce próbkę programu kompu-terowego z prośbą o jego przetestowanie. W ten sposób w sieci kom-puterowej jest umieszczany program, za pomocą którego możliwe jestnastępnie wdarcie się intruza do sieci i pokonanie istniejących w niejzabezpieczeń. W każdym przypadku haker zmierza do przejęcia hasłaadministratora sieci, gdyż to zapewnia mu bezpośredni dostęp do po-włoki programu operacyjnego pracującego w sieci i przejęcie nad niąkontroli.

Według cytowanego autora ataki na sieci i systemy komputerowe mają zazadanie zdobycie odpowiednich informacji poprzez działania polegające na:

– przerwaniu, czyli zniszczeniu części systemu i spowodowaniu jego nie-dostępności,

37

Page 38: Kryptologia i Cyberbezpieczenstwo nr 6

B. Hołyst

– przechwyceniu, co oznacza nic innego jak atak na poufność przesyła-nych in formacji bądź danych jedną z możliwych metod – czyli przezpodsłuch,

– modyfikacji, polegającej na zdobyciu dostępu i przechwyceniu danychoraz na zmianie pliku z danymi,

– podrobieniu, tj. ataku na autentyczność za pomocą wprowadzenia fał-szywych informacji.

Podstawowe rodzaje przestępczości komputerowej polegają przede wszyst-kim na wykorzystaniu technicznych możliwości, jakimi dysponuje kompu-ter oraz odpowiednie oprogramowanie, ale także na zbieraniu i stosowa-niu uzyskanych informacji w prowadzonym ataku na określoną instytucjęczy podmiot gospodarczy. Działania takie podlegają karaniu, jak każcieinne przestępstwo pospolite, jednak specyfika dokonywanych w ten spo-sób przestępstw oraz sposób zbierania materiału dowodowego na potrzebyprowadzonego postępowania wyjaśniającego sprawiają dodatkową trudnośćorganom ścigania i wymiaru sprawiedliwości.

Wnikając do sieci, sprawcy ściągają wiele użytecznych dla siebie pro-gramów. Kod znanych programów może być jednak podmieniony lub mogąbyć dołączane do nich podprogramy o wrogim działaniu, takie jak [6]:

– robak (worm) – jego celem jest powielanie się w komputerach całejsieci. Niezliczona liczba kopii takiego programu powoduje przepełnie-nie pamięci komputera, a w rezultacie – dezorganizację pracy w całymsystemie,

– wirus – w odróżnieniu od robaka spokojnie drzemie ukryty w pro-gramie dopóty, dopóki nie zostanie uruchomiony. Po uruchomieniuatakuje system w mniej lub bardziej groźny sposób, osłabiając jegodziałanie i bezpieczeństwo,

– koń trojański – jest to pozornie użyteczny program, zwykle uru-chamiany przez specyficzne dane lub właściwe słowo w dokumencie.Służy przyszłemu włamywaczowi do zdobywania określonych informa-cji. W pewnych przypadkach program ten powoduje automatycznywysyłania e-maili zwrotnych z cennymi danymi do jego autora, którypóźniej wykorzysta je podczas próby ataku;

– bomba logiczna – uruchamia się w określonym czasie (jest nim np.pewna data lub kluczowe słowo) i wpływa destrukcyjnie na system,

– wrogi aplet Javy – program napisany w języku Java, który jest pod-stawowym narzędziem programowania w internecie – może zawieraćw sobie podprogram o destrukcyjnym działaniu. Podczas ściąganiadokumentów i uruchamiania programów w tej technologii atakuje wy-brane stacje mimo zabezpieczeń na serwerach sieci.

38

Page 39: Kryptologia i Cyberbezpieczenstwo nr 6

Wiktymologiczne aspekty cyberprzestępczości

Zazwyczaj głównym obiektem ataku jest główny serwer sieci, na którymznajdują się wszystkie informacje o atakowanym systemie. Atak jest prze-prowadzony w różnych kierunkach w celu stwierdzenia istnienia luk bez-pieczeństwa w oprogramowaniu pracującym na serwerze. Luki te są zwyklewynikiem błędów w oprogramowaniu, konfiguracji systemu czy protokołachtransmisji danych.

Wyróżnia się następujące rodzaje ataków:

– zgadywanie haseł, stanowiące podstawową metodę, którą zwykle sto-sują hackerzy; polega ona na zdobywaniu haseł chroniących dostęp doserwera. W tym celu używa się specjalnych programów do ich łama-nia (tzw. crack), zawierających słowniki różnojęzyczne. Programy tepodczas próby zdobycia dostępu do systemu automatycznie podsta-wiają kolejne wyrazy ze słowników aż do osiągnięcia skutku. Hasła sąz reguły proste: najczęściej imię użytkownika konta jest nazwa konta,a zatem zadanie nie jest trudne. Często niektóre konta w ogóle nie sąchronione hasłami,

– maskaradę, polegającą na tym, iż po zdobyciu informacji o sieci ataku-jący może się podszyć pod jeden z komputerów, któremu serwer sieci„ufa” (przez podanie jego numeru IP jako swojego), i w ten sposóbmoże się do niego dostać. Atakujący może np. wysłać dane ze sfał-szowanym adresem poczty elektronicznej, które zostaną przez serwerprzyjęte. W danych tych może być ukryty koń trojański, który uru-chomi program przeszukujący dysk serwera, odnajdzie plik z kontamii hasłami użytkowników i wyśle je e-mailem zwrotnym do fałszywegonadawcy. Atakujący może podszyć się także pod adres serwera www,z którego atakowany serwer ściąga informację. Atakujący przekazujeatakowanemu prośbę o przesłanie żądanej strony www i dostarcza jąprawdziwemu adresatowi. W ten sposób można oszukiwać np. firmęinwestującą na giełdzie, podając fałszywe wyniki i w konsekwencji do-prowadzić ją do bankructwa,

– podsłuch, polegający na tym, iż atakujący stosuje monitoring ruchuw sieci i przechwytuje transmisję pomiędzy poszczególnymi kompu-terami. Przechwycenie transmisji pozwala zdobyć hasło użytkownika,który loguje się właśnie do serwera, a następnie podszyć się pod niegoi zdobyć dostęp do wybranego komputera w sieci,

– szukanie luk, wyrażające się w poszukiwaniu słabych stron w systemiezabezpieczeń i stanowiące podstawowy cel ataku przestępców. Luki tesą wynikiem błędów w oprogramowaniu lub konfiguracji systemu. Ata-kujący posługuje się niekiedy specjalnymi skanerami internetowymi– programami sprawdzającymi wybrany system pod kątem istnienia

39

Page 40: Kryptologia i Cyberbezpieczenstwo nr 6

B. Hołyst

owych luk. Najbardziej znanym skanerem jest program Satan, napi-sany specjalnie dla administratorów do sprawdzenia poziomu bezpie-czeństwa ich serwerów,

– blokowanie serwisów, polegające na destabilizowaniu sieci przez wyłą-czanie na serwerze internetu takich serwisów jak poczta elektroniczna.Atak polega na wysyłaniu potoku informacji powodujących przeła-dowanie pamięci serwera, a w konsekwencji jego destabilizację. Je-den z najbardziej znanych ataków tego typu polega na wysyłaniu du-żej liczby pakietów inicjujących połączenia dla wybranej usługi (np.poczty elektronicznej). Serwer nie nadąża za realizacją połączeń i blo-kuje dostęp do danej usługi. W ten sposób hakerzy mogą sabotowaćdziałanie poczty elektronicznej na serwerach dostawców internetu,

– socjotechnikę, oznaczającą w żargonie hakerskim manipulowanieludźmi w taki sposób, aby ujawnili poufne informacje ułatwiające wła-manie do systemu komputerowego. Przed dokonaniem ataku na wy-braną sieć atakujący przeprowadza specjalny wywiad na temat wybra-nej firmy o: osobach w niej zatrudnionych, konfiguracji sieci, zasobachsystemu, hasłach użytkowników itp. Może też wykorzystywać elementzaskoczenia, np. dzwoniąc do administratora sieci, przedstawiając sięjako szef jednego z działów i prosząc o zmianę hasła swojego konta.Wielu użytkowników systemu zapisuje swoje hasła na kartkach i chowaje pod klawiaturą lub do szuflady, a czasem nakleja na monitor kom-putera. Haker, podając się za pracownika serwisu, może te kartki łatwoodnaleźć. Inny sposób polega na dokładnym przeglądaniu za wartościśmietników znajdujących się na zapleczach firm, gdzie czasami możnaznaleźć np. stare notesy z telefonami i hasłami, rejestry zatrudnionych,dane techniczne o sprzęcie komputerowym stanowiące cenne źródło in-formacji o firmie,

– terroryzm sieciowy, polegający na tym, iż różne organizacje terrory-styczne szantażują jakąś firmę, grożąc zniszczeniem danych lub de-stabilizacją systemu. W przypadku instytucji finansowej lub laborato-rium badawczego, gdzie sieć zarządza wszystkimi procesami, problemten nabiera wielkiej wagi. Współcześnie istnieją narzędzia, za pomocąktórych można zdezorganizować pracę całego systemu informatycz-nego bez wchodzenia do niego i bez odcinania zasilania. Chodzi o tzw.bomby mikrofalowe generujące duży impuls fali elektromagnetycznejo odpowiedniej częstotliwości, powodujący zakłócenie i destabilizacjępracy wszystkich urządzeń elektronicznych. Taka bomba, znajdującasię w neseserze terrorysty (który np. jako biznesmen podejmuje pienią-dze w banku), może w jednej chwili – nie budząc żadnych podejrzeń –zdezorganizować bankowy system informacyjny.

40

Page 41: Kryptologia i Cyberbezpieczenstwo nr 6

Wiktymologiczne aspekty cyberprzestępczości

Wyróżnia się pięć podstawowych grup włamywaczy [6]:

– turystów, których celem jest zdobycie dostępu do czyjegoś konta, abyrozpocząć wędrówkę po internecie,

– wandali, dążących do zniszczenia w systemie czegokolwiek bądź dlazabawy, bądź w określonym celu, np. sformatowania dysku, wprowa-dzenia wirusa lub wrogiego appletu Jayy, zmiany stron www,

– zdobywców, których celem jest wejście każdym możliwym sposobemdo systemu, aby pokazać swoje umiejętności, choć zazwyczaj czyniąto przez złamanie systemu zabezpieczeń,

– szpiegów, wchodzących do systemu w konkretnym celu, np. wykradze-nia in formacji lub destabilizacji systemu,

– cyberterrorystów, którzy, stosując specjalne techniki, destabilizująpracę systemów informatycznych; najczęściej szantażują wybranefirmy, żądając ogrom nych okupów.

Wykorzystując zarówno luki bezpieczeństwa w systemach, w których pra-cują serwery internetu, błędy w protokołach transmisji danych i konfigu-racji serwerów www, jak również destabilizując systemy zabezpieczeń, ha-kerzy dążą do zdobycia dostępu do informacji w wybranej sieci przez in-ternet. Wszelkie informacje o metodach włamań znajdują się w sieci, a ha-kerzy wymieniają się doświadczeniami na specjalnych, zamkniętych listachdyskusyjnych. Zwraca się uwagę, iż haker poza tym, że interesuje się za-bezpieczeniami sieci komputerowych firm i urzędów, w gruncie rzeczy jestanarchistą [4]. Obowiązujący go kodeks honorowy zabrania mu korzystaniaz nielegalnie zdobytych danych, chociaż niektórzy kradną drobne sumy nawłasne potrzeby.

Odmianą hakera jest phreaker, który jest także anarchistą. Wykorzy-stuje zdobyte przez siebie umiejętności do włamywania się wszędzie tam,gdzie najtrudniej się włamać. Może być bardzo niebezpieczny w sytuacji,kiedy znajdzie się w posiadaniu tajnych danych, bo wówczas ujawni je bezwahania. Zwykle człowiek ten jest bardzo młody i podatny na wszelkiegorodzaju wpływy, co może spowodować dodatkowe zagrożenia. Może się tozdarzyć w sytuacji, gdy znajdzie się pod wpływem poglądów reprezento-wanych przez radykalną organizację.

W odróżnieniu od dwóch poprzednich rodzajów przestępców kompute-rowych tzw. kraker nie ma żadnych zahamowani i nie przestrzega żadnegoz kodeksów honorowych. Zajmuje się nie tylko przełamywaniem wszelkiegorodzaju zabezpieczeń sieci i systemów komputerowych, lecz także ściąga-niem tajnych danych w celu ich dalszej odsprzedaży temu, kto więcej za niezapłaci. Włamuje się do systemów bankowych, dokonując tam niewielkichkradzieży. Potrafi być jednak groźny, zwłaszcza gdy, przebywając w danej

41

Page 42: Kryptologia i Cyberbezpieczenstwo nr 6

B. Hołyst

sieci, zakaża wirusem komputerowym oraz kiedy ma trudności z pokona-niem zabezpieczeń. Głównym źródłem jego utrzymania jest zajęcie pole-gające na przełamywaniu kodów zabezpieczających gry komputerowe orazłamanie blokad znajdujących się w telefonach komórkowych.

Złodziej komputerowy działa na zlecenie i może przejmować cudzą ko-respondencję, podsłuchiwać oraz przejmować pliki, włamywać się do wska-zanych komputerów w celu zdobycia określonych danych, o które zabiegajego zleceniodawca, albo też zarażać wirusami firmowe sieci na zleceniekonkurencji czy dokonywać na własny lub cudzy rachunek nielegalnychprzelewów bankowych i tak naprawdę to jest jego główne zadanie. Zwracasię uwagę, iż polscy hackerzy tworzą zamknięte, kilkusetosobowe środowi-ska, aktywne głównie w dużych miastach, takich jak Warszawa, Poznań,Wrocław czy Gorzów Wielkopolski. Pierwsze włamania do sieci kompu-terowych w Polsce miały zazwyczaj charakter poznawczy. Młodzi ludzie,w większości studenci korzystający z sieci uczelnianej, często usiłowali siędostać do innego komputera podłączonego do sieci, po to aby udowodnićsobie, że są w stanie złamać istniejące zabezpieczenia.

Pierwsze głośne włamanie do sieci internetu w Polsce miało miejsce13 grudnia 1995 r. Było to włamanie do węzła sieci NASK (NaukowejAkademii Sieci Komputerowej) w Warszawie, a zakończyło się modyfikacjąpierwszej strony www tej instytucji. Haker występujący pod pseudonimem„Gumiś”, zaprotestował w ten sam sposób przeciwko nowemu cennikowiusług NASK, w którym wprowadzono zasadę opłaty za ruch w miejsceużywanej powszechnie w internecie stałej odpłatności za przepustowośćłącz. Kolejnego włamania dokonano w nocy z 3 na 4 maja 1997 r. na ser-wer Biura Informacyjnego Rządu RP. Ataku dokonali dwaj szesnastoletnichłopcy, używając gotowych przepisów, pozyskanych za pośrednictwem in-ternetu. Dzięki atakowi pozwolono im na zmodyfikowanie głównej stronywww tej instytucji. W wyniku takich działań okazało się, że instytucjerządowe nie mają zabezpieczeń przed tego rodzaju włamaniami.

8 sierpnia 1997 r. obiektem zamachu stał się największy serwer FTPw Polsce, słynna „słoneczna strona (sun site), zlokalizowany w ICM (In-terdyscyplinarnym Centrum Modelowania Matematycznego i Komputero-wego). Hakerom udało się dotrzeć do plików umieszczonych w tzw. powłoce(secure shell) systemu operacyjnego, do którego dostęp ma wyłącznie admi-nistrator sieci. Dzięki tym zabiegom podłożyli oni tzw. konia trojańskiego,modyfikując w ten sposób udostępniane na serwerze źródła programu SSH.

W przypadku ataku na systemy bankowe niewiele zazwyczaj wiadomoo tego rodzaju zdarzeniach, gdyż banki ukrywają takie incydenty w obawieprzed utratą zaufania dotychczasowych klientów. Dane, jakimi dysponują

42

Page 43: Kryptologia i Cyberbezpieczenstwo nr 6

Wiktymologiczne aspekty cyberprzestępczości

organy ścigania, są niepełne, zaś ciemna liczba popełnionych i niewykry-tych ataków na sieci komputerowe wynosi 90–95% [4]. Na świecie częstodochodzi do działań pojedynczych hakerów lub całych grup, do ataków nanajwiększe firmy internetowe, najpopularniejsze strony www (World WideWeb) oraz na serwery instytucji bankowo-finansowych o charakterze stra-tegicznym w wielu krajach. Ataki takie zarejestrowano w wielu krajachświata, a zwłaszcza w Stanach Zjednoczonych Ameryki Północnej, gdziedo zwalczania tego rodzaju przestępczości są używane wyspecjalizowanesłużby:FBI, NSA czy też CIA. Wynika to przede wszystkim z tego, że większośćsystemów obronnych i bankowych opiera swoje funkcjonowanie na tym, żesieci te są podłączone bezpośrednio do ogólnoświatowej „pajęczyny in-ternetu. Działania zmierzające do przejęcia kontroli nad ich funkcjonowa-niem polegają przede wszystkim na pokonaniu wielu zabezpieczeń stosowa-nych przez poszczególnych operatorów sieciowych. Najczęściej stosowanymiurządzeniami są tzw. ściany ognia, stanowiące jeden z istotnych elementówpolityki bezpieczeństwa sieci i systemów komputerowych.

Wskazuje się, iż jedną z podstawowych kwestii wymagających roz-strzygnięcia jest ustalenie, kto winien ponosić odpowiedzialność za prze-stępstwo popełnione w sieci [1]. Nie chodzi tu jednak o analizę, czy w kon-kretnej sytuacji spełnione są przesłanki opisane w art. 1 Kodeksu karnegostanowiące podstawę przyjęcia odpowiedzialności karnej, to jest: zachowa-nie będące czynem zabronionym pod groźbą kary, zawinionym, lecz o za-kreślenie kręgu podmiotowego osób, które ponosić będą odpowiedzialnośćkarną w związku ze stwierdzonym przestępstwem internetowym [7].

Oprócz osób popełniających czyny zabronione poprzez głoszenie za-kazanych treści na stronach sieci i nielegalne rozpowszechnianie cudzychutworów czy też dokonujących przestępstw przeciwko ochronie informacjii przeciwko mieniu, czyli sprawców wykonawczych, odpowiedzialność będąponosić także pomocnicy. Udzielanie pomocy może wyrażać się w udostęp-nianiu programu komputerowego służącego przełamywaniu haseł dostępudo systemów komputerowych. Efektem określonego przestępstwa może byćtakże umożliwienie innym osobom popełnienia odrębnego czynu zabronio-nego, pozostającego w związku z pierwszym przestępstwem w takim sensie,że bez zaistnienia pierwszego czynu nie byłoby możliwe popełnienie dru-giego. Przykładowo: nielegalne rozpowszechnianie cudzego programu kom-puterowego za pośrednictwem sieci umożliwia innym użytkownikom inter-netu popełnienie przestępstwa opisanego w art. 278 2 Kodeksu karnego,czyli uzyskanie bez zezwolenia cudzego programu komputerowego w celuosiąg nięcia korzyści majątkowej.

43

Page 44: Kryptologia i Cyberbezpieczenstwo nr 6

B. Hołyst

Wymienia się pięć podmiotów, które potencjalnie mogłyby ponosićodpowiedzialność cywilnoprawną za udostępnianie materiałów w sieciach.Należą do nich [8]: dysponent i operator sieci telekomunikacyjnej (przedsię-biorstwo telekomunikacyjne); dostawca dostępu do internetu, tj. ten, ktooferuje i umożliwia dostęp, nie posiadając wpływu na treść przekazywa-nych komunikatów; autor i dostawca materiałów wprowadzanych do sieci;dostawca usług sieciowych, np. udostępniający miejsce na swoim serwe-rze; użytkownik końcowy. Warto zwrócić uwagę, iż ten sam podmiot możełączyć różne funkcje, np. gdy dostawca dostępu do sieci jest jednocześniedostawcą usług sieciowych. Odnośnie do dokonanego rozróżnienia pomię-dzy autorem i dostawcą materiałów oraz użytkownikiem końcowym wyja-śnić należy, iż pewne czyny popełniane mogą być jedynie przez autorówi dostawców materiałów wprowadzanych (rozpowszechnianie zakazanychtreści, niektóre przestępstwa naruszenia praw autorskich), zaś inne jedynieprzez użytkowników końcowych (przestępstwa przeciwko ochronie informa-cji, przestępstwa przeciwko mieniu, niektóre przestępstwa naruszenia prawautorskich inne niż popełnianie przez dostawców materiałów). Kategorietych czynów są zasadniczo rozłączane, tj. inne przestępstwa popełnić możeautor lub dostawca materiałów wprowadzanych do sieci, inne natomiastużytkownik końcowy.

Przeciwko przypisywaniu odpowiedzialności karnej dysponentom siecitelekomunikacyjnej oraz dostawcom dostępu do internetu przemawia argu-ment, iż otwierają jedynie drogę do cudzych treści, podobnie jak poczta,telekomunikacja czy przedsiębiorstwo transportowe. Zdaniem niektórychautorów bezdyskusyjna pozostaje kwestia odpowiedzialności autora mate-riałów wprowadzonych do sieci jako sprawcy wykonawczego [1]. Sprawcątakim jest zarówno autor konkretnego tekstu naruszającego prawo, jaki osoba, która taki tekst umieszcza na swojej stronie sieci, zgadzając sięi identyfikując z jego treścią.

Problem nie dotyczy sytuacji, w której przytoczenia cudzego tekstudokonano celem podjęcia z nim polemiki. Sprawcą wykonawczym będzieten użytkownik końcowy, który za pośrednictwem internetu popełnia kon-kretny czyn zabroniony. Oczywiście nie popełnia czynu zabronionego użyt-kownik, który dzięki sieci zapoznaje się z treściami przez prawo zakazanymi,a głoszonymi przez osoby trzecie.

Wskazuje się, iż najwięcej uwagi poświęcić trzeba kwestii odpowie-dzialności dostawcy usług sieciowych, czyli osoby pośredniczącej w dostar-czaniu materiałów pochodzących od osób trzecich pośredniczących względ-nie dostarczających środków technicznych, bez których nie mogłoby dojśćdo dokonania przez inną osobę czynu zabronionego. W przypadku prze-stępstw popełnianych w internecie istotne jest określenie, na jakich zasa-

44

Page 45: Kryptologia i Cyberbezpieczenstwo nr 6

Wiktymologiczne aspekty cyberprzestępczości

dach odpowiedzialność ponosić powinni właściciele (administratorzy) ser-werów, na których umieszczone zostały treści zakazane przez prawo bądźza pomocą których popełniono inny czyn zabroniony, oraz osoby pro wa-dzące katalogi internetowe, w których zawarte zostały adresy stron siecizawierających treści zabronione.

Odnośnie do dokonanego rozróżnienia pomiędzy autorem i dostawcąmateriałów oraz użytkownikiem końcowym wyjaśnić należy, iż pewne czynypopełniane mogą być jedynie przez autorów i dostawców materiałów wpro-wadzanych (rozpowszechnianie zakazanych treści, niektóre przestępstwanaruszenia praw autorskich), zaś inne jedynie przez użytkowników końco-wych (przestępstwa przeciwko ochronie informacji, przestępstwa przeciwkomieniu, niektóre przestępstwa naruszenia praw autorskich inne niż popeł-nianie przez dostawców materiałów). Kategorie tych czynów są zasadniczorozłączane, tj. inne przestępstwa popełnić może autor lub dostawca mate-riałów wprowadzanych do sieci, inne natomiast użytkownik końcowy.

Przeciwko przypisywaniu odpowiedzialności karnej dysponentom siecitelekomunikacyjnej oraz dostawcom dostępu do internetu przemawia argu-ment, iż otwierają jedynie drogę do cudzych treści, podobnie jak poczta,telekomunikacja czy przedsiębiorstwo transportowe. Zdaniem niektórychautorów bezdyskusyjna pozostaje kwestia odpowiedzialności autora mate-riałów wprowadzonych do sieci jako sprawcy wykonawczego Sprawcą takimjest zarówno autor konkretnego tek stu naruszającego prawo, jak i osoba,która taki tekst umieszcza na swojej stronie sieci, zgadzając się i identyfi-kując z jego treścią.

Problem nie dotyczy sytuacji, w której przytoczenia cudzego tekstudokonano celem podjęcia z nim polemiki. Sprawcą wykonawczym będzieten użytkownik końcowy, który za pośrednictwem internetu popełnia kon-kretny czyn zabroniony. Oczywiście nie popełnia czynu zabronionego użyt-kownik, który dzięki sieci zapoznaje się z treściami przez prawo zakazanymi,a głoszonymi przez osoby trzecie.

Wskazuje się, iż najwięcej uwagi poświęcić trzeba kwestii odpowie-dzialności dostawcy usług sieciowych, czyli osoby pośredniczącej w dostar-czaniu materiałów pochodzących od osób trzecich pośredniczących względ-nie dostarczających środków technicznych, bez których nie mogłoby dojśćdo dokonania przez inną osobę czynu zabronionego. W przypadku prze-stępstw popełnianych w internecie istotne jest określenie, na jakich zasa-dach odpowiedzialność ponosić powinni właściciele (administratorzy) ser-werów, na których umieszczone zostały treści zakazane przez prawo bądźza pomocą których popełniono inny czyn zabroniony, oraz osoby pro wa-dzące katalogi internetowe, w których zawarte zostały adresy stron siecizawierających treści zabronione.

45

Page 46: Kryptologia i Cyberbezpieczenstwo nr 6

B. Hołyst

Zapewnienie dostępności strony sieci innym jej użytkownikom wy-maga, by były one zapisane w postaci pliku komputerowego na twardymdysku serwera, czyli komputera niebędącego zazwyczaj własnością autorastrony. Miejsce na serwerach udostępniane jest przez wiele firm odpłatniebądź nawet nieodpłatnie, a strony sieci może właściwie każdy użytkownikkomputera stworzyć za pomocą łatwo dostępnych programów. W efekciepowszechna jest możliwość stworzenia własnej strony i umieszczenia jejw sieci. Powstaje problem, czy administratorzy serwera zatrudnieni przezwłaściciela zobowiązani są do dbania, aby treści umieszczane na stronachsieci znajdujących się na serwerach nie naruszyły prawa, a jeżeli łamiąprawo, to na jakich zasadach administratorzy serwerów zezwalających naumieszczenie na nich stron bez kontroli ich treści mogą ponosić odpowie-dzialność karną właśnie za umożliwienie bądź ułatwienie inny osobom po-pełnienia przestępstwa.

Odpowiedzialność za pomocnictwo jako zjawiskową postać przestęp-stwa, którego istotą jest ułatwienie popełnienia przez inną osobę czynu za-bronionego, przewiduje Kodeks karny w art. 18 & 3 [7]. Zwraca się uwagę, iżudzielanie pomocy, o charakterze fizycznym polega przykładowo na dostar-czeniu narzędzia. Narzędziem tym może być każdy przedmiot ułatwiającydokonanie czynu zabronionego, przy czym nie jest wówczas konieczny oso-bisty kontakt udzielającego pomocy ze sprawcą [7]. Karalne pomocnictwomoże polegać także na zaniechaniu – wówczas na pomocniku spoczywaćmusi prawny, szczególny obowiązek niedopuszczenia do popełnienia czynuzabronionego. Istotą strony podmiotowej pomocnictwa jest zamiar bezpo-średni lub wynikowy, przy czym pomocnik musi mieć wyobrażenie kon-kretnego czynu zabronionego. Dla przypisania odpowiedzialności nie jestwystarczający zamiar, aby inna osoba popełnia dowolny czyn zabroniony.Kwestia ta jest bardzo istotna w przypadku rozważań dotyczących prze-stępczości internetowej obejmującej czyny polegające na głoszeniu treścizakazanych przez prawo.

Zwraca się uwagę, iż pomocnictwa nie stanowi samo umożliwienieumieszczenia dowolnych treści na serwerze, co pozwala przenieść ciężarrozważań z pierwszej części ustawowej definicji na zdanie drugie, mówiąco szczególnym obowiązku niedopuszczenia do popełnienia czynu zabronio-nego. Samo bowiem udostępnienie miejsca na serwerze nie może powodo-wać odpowiedzialności karnej gdyż nie od jego właściciela zależy sposób,w jaki zostanie wykorzystany. W przypadku pomocnictwa przez zaniecha-nie czynności wbrew szczególnemu obowiązkowi konieczne jest, aby po-mocnik znajdował się wobec dobra chronionego w pozycji gwaranta nie-nastąpienia skutku. Obowiązek określający pozycję gwaranta musi mieć

46

Page 47: Kryptologia i Cyberbezpieczenstwo nr 6

Wiktymologiczne aspekty cyberprzestępczości

charakter prawny. Gwarantem ustanowione są osoby charakteryzujące sięszczególnym stosunkiem do określonego dobra prawnego.

Praktycznie wszystkie z istniejących firm udostępniających miejsca naserwerach zarówno odpłatnie, jak i nieodpłatnie, zastrzegają w regulami-nach, że użytkownicy nie mogą na stronach sieci umieszczać treści umiesz-czać treści niezgodnych z polskim prawem, a złamanie tego zakazu stanowipodstawę do usunięcia takiej strony [7]. Mimo iż regulamin rozpatrywanyjako umowa cywilnoprawna wiąże jedynie strony umowy, a osoby trzecienie mogą w treść stosunku prawnego ingerować ani obowiązków stron eg-zekwować, to jednak należy rozważyć, czy poprzez ustanowienie takiegoregulaminu administrator nie podjął się pełnienia roli gwaranta niewy-stąpienia czynu zabronionego, przez co umowa wywrzeć może skutki nietylko w sferze prywatnoprawnej. Stanowiłoby to przejęcie przez administra-tora na siebie odpowiedzialności za to, aby stron sieci, za pomocą którychużytkownicy popełniają przestępstwa, na administrowanych serwerach nieutrzymywać.

Nie jest na ogół możliwe kontrolowanie treści nowych stron przed ichumieszczeniem na serwerze zarówno ze względów technicznych, jak i wobecfaktu, iż stanowiłoby to zakazaną cenzurę prewencyjną. Ponieważ gwarantpowinien jednak podejmować czynności prowadzące do zmniejszenia nie-bezpieczeństwa popełnienia czynów zabronionych, to obowiązkiem admi-nistratora byłoby stworzenie takiego właśnie systemu kontroli, aby stronyłamiące prawo sprawnie wykrywać i niezwłocznie po tym je usuwać bądźblokować. Niedbałe przeprowadzenie takiej kontroli bądź w ogóle jej zanie-chanie rodzić powinno, w razie wystąpienia przestępstwa, odpowiedzialnośćadministratora jako pomocnika, który „wbrew prawnemu szczególnemuobowiązkowi niedopuszczenia do popełnienia czynu zabronionego swoimzachowaniem ułatwia innej osobie jego popełnienie. Stopień staranności wi-nien być wówczas dochowany z punktu widzenia racjonalnie działającegogwaranta, tj. podmiotu znającego określoną dziedzinę działalności, znają-cego przyjęty na siebie obowiązek odpowiednio ukierunkowanego działaniaoraz mającego postawę sumiennego wykonawcy obowiązku.

Zwraca się uwagę, iż należy nie zapominać o argumentach przeciwni-ków nałożenia na dostawców usług sieciowych obowiązku monitorowaniatreści udostępnianych za ich pośrednictwem. Dostawcy mają ograniczonemożliwości bieżącego nadzorowania materiałów wprowadzanych do sieci zaich pośrednictwem, gdyż jeśli będą decydować, czy określona treść jestzgodna z prawem, może to naruszać konstytucyjne prawo wolności słowaoraz dostępu do informacji, a także ograniczać sferę prywatności użytkow-ników [8].

47

Page 48: Kryptologia i Cyberbezpieczenstwo nr 6

B. Hołyst

W przypadku popełnienia przestępstwa przez sprawcę wykonawczegopóźniejsze usunięcie strony sieci, za pomocą której popełniono czyn zabro-niony, nie od wróci negatywnych skutków ani też nie zwolni sprawcy wy-konawczego z odpowiedzialności, lecz takie postępowanie administratorów,a szczególnie działanie podejmowane z własnej inicjatywy, a nie po inter-wencji osób trzecich, stanowić winno podstawę do przyjęcia, iż po stronieadministratora brak było zamiaru ewentualnego przyjęcia odpowiedzialno-ści za pomocnictwo. Podkreśla się, iż zamiar bezpośredni po stronie admi-nistratora, a więc chęć popełnienia przestępstwa internetowego przez innąosobę, występować może jedynie sporadycznie. Co więcej, usuwanie stronWWW łamiących prawo spełnia także funkcje prewencji generalnej poprzezzamanifestowanie osobom chcącym takie strony umieścić, że działania prze-stępne nie będą tolerowane. Taką politykę największych firm-dostawcówusług sieciowych dostrzegają już potencjalni twórcy takich stron.

Osoby prowadzące katalogi stron sieci są również grupą, która możeponosić odpowiedzialność w związku z popełnionym przestępstwem inter-netowym. Ważną cechą internetu jest to, iż samo stworzenie i umieszczeniewitryny na serwerze nie jest wystarczające dla dotarcia do szerszego kręguodbiorców. Liczba dokumentów zawartych w sieci umożliwia użytkowni-kowi odnalezienie interesujących go informacji bez pomocy wyspecjalizo-wanych narzędzi. Służą temu właśnie katalogi tematyczne oraz tzw. wy-szukiwarki internetowe, np. Google czy Yahoo, które dokonują przegląduindeksowanych stron sieci z uwagi na obecność na nich wskazanych przezużytkownika kluczowych haseł.

Kwestia czasu popełnienia czynu zabronionego jest ważnym proble-mem, ponieważ przypisanie odpowiedzialności za pomocnictwo możliwejest wówczas, gdy zaszło przed dokonaniem czynu zabronionego lub w jegotrakcie. Artykuł 6 & 1 Kodeksu karnego stanowi, iż czyn zabroniony uważasię za popełniony w czasie, w którym sprawca działał lub zaniechał działa-nia, do którego był zobowiązany. W przypadku przestępstw internetowychpolegających na prezentowaniu treści przez prawo zakazanych czy też na-ruszeń praw autorskich stan bezprawności utrzymuje się przez cały okres,w którym strona sieci zawierająca taką treść znajduje się na serwerze. Sytu-acja taka jest odmienna od np. wydrukowania określonego tekstu w prasielub wypowiedzi w radiu lub telewizji w tych przypadkach sprawca po doko-naniu czynu nie ma już możliwości ingerencji w treść ani nie ma możliwościjej wycofania.

W przypadku stron sieci autor cały czas może swobodnie ich treśćzmieniać lub usuwać. W takiej zaś sytuacji czyn zabroniony należy uznaćza popełniany w ciągu całego okresu utrzymywania się stanu bezprawnego

48

Page 49: Kryptologia i Cyberbezpieczenstwo nr 6

Wiktymologiczne aspekty cyberprzestępczości

[7]. W razie głoszenia treści zakazanych przez prawo lub nielegalnego udo-stępniania utworu możliwe jest zatem postawienie osobom prowadzącymkatalog czy też administratorowi serwera za rzutu pomocnictwa w popeł-nieniu czynu zabronionego przez cały okres, w którym strona taka znajdujesię na serwerze bądź odsyłacz do niej pozostaje w katalogu.

Obowiązkiem osób prowadzących katalog winno być przygotowaniesystemu kontroli wpisywanych adresów, tak aby eliminować strony sieci,za pomocą których popełniane są czyny zabronione, zaś wykazany stopieństaranności powinien wpływać na ocenę możliwości przypisania zamiaruewentualnego [1].

Biorąc pod uwagę zarówno niebezpieczeństwa, jak i korzyści wynika-jące z funkcjonowania internetu, pierwszeństwo przyznać należy zdecydo-wanie tym drugim.

Z tego względu wszelkie kroki mające na celu limitowanie możliwo-ści wprowadzania do sieci własnych materiałów muszą być podejmowanew sposób ostrożny i wyważony.

Wątpliwości budzić może przede wszystkim sposób realizacji obo-wiązku monitorowania przez właścicieli serwerów materiałów umieszcza-nych na tych serwerach przez osoby trzecie. Prowadzi to bowiem do sy-tuacji, kiedy to administrator decyduje, czy konkretne treści są legalne,czy nie. Ponieważ ograniczanie wolności słowa następować może jedyniena podstawie ustaw, to tylko powołane ku temu organy mogą te ograni-czenia egzekwować,a warunek taki w sposób ewidentny nie był wówczasspełniony. Można wyobrazić sobie sytuację, w której administrator serwerausuwa stronę, traktując ją za łamiącą prawo, a następnie autor stronyprzed sądem uzyskuje korzystne rozstrzygnięcie, wskazując, iż prawa nienaruszył.

W przypadku zmiany treści obowiązku monitorowania zawartości ser-wera po przez przyjęcie, że administrator winien jedynie współpracowaćz policją w razie wykrycia zakazanych materiałów bez możliwości ich usu-wania, może z kolei po wstać sytuacja, w której administrator poniósłbyodpowiedzialność karną z tytułu rozpowszechniania treści naruszającychprzepisy prawa. Uznać jednak na leży, że propozycja pierwsza jest roz-sądniejsza prawdopodobieństwo opisanej sytuacji jest niższe i pociąga zasobą zdecydowanie mniejsze ewentualne szkody niż całkowite zaniechanieusuwania stron sieci w oczekiwaniu na decyzję prokuratora bądź sądu. Nieistnieje inna metoda regulacji i kontroli treści prezentowanych w internecieniż działania organów wymiaru sprawiedliwości. Decydującą rolę odgrywaćjednak powinny, w opinii cytowanego powyżej autora, instytucje powołanedo zwalczania przestępczości, a przyznanie prawa kontroli nad treściami

49

Page 50: Kryptologia i Cyberbezpieczenstwo nr 6

B. Hołyst

prezentowanymi w internecie np. utworzonemu dla tego celu urzędowi bę-dzie ustanowieniem niedopuszczalnej cenzury.

Zgodnie z regulacjami przyjętymi w różnych państwach europej-skich dostawca usług sieciowych ponosi odpowiedzialność tylko wtedy, gdymożna od niego wymagać uznania określonego materiału za nielegalny lubgdy zaniechał usunięcia takiego materiału po tym, jak określono jego niele-galny charakter. Rozwiązanie takie wydaje się najrozsądniejsze. Nałożenienatomiast zbyt daleko idących obowiązków może zahamować rozwój inter-netu zaangażowanie dostawców usług w rozwój sieci będzie tym mniejsze,im większy będzie zakres ich odpowiedzialności, ze względu na zbyt wysokieryzyko podejmowania takiej działalności.

Projekt konwencji Rady Europy o przestępstwach w sieci wprowadzaodpowiedzialność osób prawnych za przestępstwo komputerowe, jednakżeogranicza ją je dynie do przypadków uzyskania korzyści majątkowej przezdaną osobę prawną, a popełnione przez osobę fizyczną działającą indywi-dualnie bądź w ramach organu, posiadającą decydującą pozycję w ramachtejże osoby prawnej; odpowiedzialność można również przypisać w sytuacji,gdy popełnienie przestępstwa zo stało umożliwione przez brak nadzoru lubkontroli ze strony osoby fizycznej, o której mowa wyżej. Wyraźnie podkre-śla się, że przepis ten nie dotyczy przestępstw popełnionych przez klientów,użytkowników lub osoby trzecie, a ograniczony jest ściśle do przestępstwpopełnionych przez osoby o decydującej pozycji w ramach osoby prawnej,dokonanych dla osiągnięcia przez osobę prawną korzyści majątkowej. Ob-jaśnienia zawarte w projekcie wprost wskazują, że odpowiedzialności nieponosi pomocnik, któremu nie można przypisać zamiaru popełnienia prze-stępstwa [1].

Warto zwrócić uwagę na możliwości zapobiegania tego typu przestęp-czości m.in. przez stosowanie kompleksowych metod zabezpieczeń siecikomputerowych. Najważniejszym elementem bezpieczeństwa danej orga-nizacji jest spójna polityka bezpieczeństwa, określająca następujące etapyprocesu zabezpieczania informacji [6]. Na etapie pierwszym zachodzi budo-wanie podstawy analizowanie przez kierownictwo firmy jej potrzeb i moż-liwości, określenie wartości posiadanych danych, wyznaczenie osób odpo-wiedzialnych za wdrożenie procesu zabezpieczenia informacji. Na etapiedrugim mamy do czynienia z prowadzeniem dokumentacji systemu in-formatycznego, usuwaniem błędów w tym systemie oraz uświadamianiemjego użytkownikom grożących niebezpieczeństw (zapisywanie haseł, wirusyitp.).

Na etapie trzecim ma miejsce podnoszenie poziomu bezpieczeństwasystemu wprowadzanie rozwiązań technicznych zabezpieczających infor-macje w systemie komputerowym organizacji (ściany ognia, systemy: kon-

50

Page 51: Kryptologia i Cyberbezpieczenstwo nr 6

Wiktymologiczne aspekty cyberprzestępczości

troli dostępu, szyfrujące, monitorowania); szkolenie personelu w zakresiezasad bezpiecznego korzystania z systemu oraz przygotowanie odpowied-nich dokumentów określających prawa i obowiązki jego użytkowników.Wreszcie na etapie czwartym dostrzec można kontrolę obiegu dokumentówsprawdzanie założeń polityki bezpieczeństwa określonych w dokumentach,ich zastosowania w praktyce i przestrzegania w organizacji.

Zwraca się uwagę, iż zabezpieczenie systemu informatycznego nie koń-czy się na ustaleniu zasad polityki bezpieczeństwa i wprowadzaniu ich w ży-cie. Jest to proces ciągły, wymagający stałej kontroli oraz weryfikacji zewzględu na zmiany stosowanych technologii informatycznych. Do niedawnajeszcze nikt nie zdawał sobie sprawy, iż internet będzie jednym z najważ-niejszych wynalazków XX wieku [9]. Przepływ informacji stał się o wieleszybszy i tańszy niż dotychczas. Internet oraz komputer, tak jak większośćwynalazków technicznych, są po prostu narzędziami [10]. Dotychczasowedoświadczenia wskazują, że narzędzia te będą wykorzystywane równieżprzez przestępców, których ofiarą z racji upowszechnienia tych wynalazkówmoże praktycznie już dzisiaj stać się dosłownie każdy człowiek.

Zagrożenia związane ze stosowaniem nowych technologii wiążą się nietylko z zagrożeniami przybierającymi postać zachowań ściśle przestępnych,ale również z różnymi patologiami i niebezpieczeństwami w różnych sferachżycia społecznego. Jednym z takich obszarów jest edukacja. Zagrożenia wy-stępujące na tym polu są tym groźniejsze, iż dotyczą zazwyczaj ludzi mło-dych, o nieukształtowanej jeszcze osobowości. W rozważaniach dotyczącychkwestii wykorzystywania mediów i technologii informatycznej w edukacjizazwyczaj w pierwszym rzędzie akcentuje się pozytywne aspekty zastoso-wań czy to w edukacji w ogóle, czy w specyficznych dziedzinach kształcenia[11]. Podejście takie jest całkowicie zrozumiałe, jeżeli bierze się pod uwagęrozliczne korzyści, jakie wiążą się z takim postępowaniem. Wśród tych ko-rzyści wymienia się m.in.:

– możliwość indywidualizowania przebiegu uczenia się zachodzącegow toku nauczania, a więc dostosowanie jego tempa i zakresu do moż-liwości ucznia,

– uzyskiwanie natychmiastowych informacji zwrotnych w toku uczeniasię, co ma duże znaczenie dla utrzymywania motywacji do uczenia się,

– wykrywanie na podstawie diagnozy słabych stron ucznia,– stwarzanie sprzyjających warunków do opanowywania i ćwiczenia róż-

nych umiejętności: od stosunkowo prostych sensoryczno-motorycznychaż do złożonych, obejmujących podejmowanie decyzji i rozwiązywa-nie problemów przez uczestniczenie w zadaniach symulacyjnych tak

51

Page 52: Kryptologia i Cyberbezpieczenstwo nr 6

B. Hołyst

skomplikowanych, jak kierowanie przedsiębiorstwem czy postępowaniew sytuacjach kryzysowych.

Pamiętając o rozlicznych korzyściach wynikających z wykorzystywaniatechnologii informacyjnej w sferze edukacji, nie należy wszakże zapomi-nać o różno rodnych zagrożeniach, jakie mogą towarzyszyć temu procesowi.Ogólnie można powiedzieć, iż autorzy podejmujący problem zagrożeń zwią-zanych z powszechnym stosowaniem technologii informatycznej w edukacjireprezentują przynajmniej dwa podejścia. Zwolennicy pierwszego podejściapodejmują problem za grożeń w kontekście ogólnie negatywnego stosunkudo zjawiska wkraczania technologii informatycznej, jako przejawu szerszegozjawiska technicyzacji, do tych sfer życia, w których tradycyjnie przywią-zywano duże znaczenie do relacji międzyludzkich [12]. Chodzi tutaj o takiedziedziny, jak: medycyna, psychoterapia czy właśnie edukacja.

Źródeł zagrożeń ze strony techniki, w tym technologii informatycznej,upatruje się w tym, iż dehumanizuje ona kontakty międzyludzkie, utrud-nia bądź uniemożliwia tworzenie więzi międzyludzkich, a w konsekwencjiobniża efektywność profesjonalnych oddziaływań. Współcześnie znacznieczęściej stykamy się z podejściem, w którym sygnalizowanie zagrożeń zwią-zanych z zastosowaniem technologii informatycznej w edukacji nie wynikaz totalnej negacji tejże technologii czy technicyzacji życia w ogóle. Wska-zuje się, iż komputer, jak i zresztą wszelkie wytwory techniki wymyśloneprzez człowieka, są jedynie narzędziami, które mogą być wykorzystywanew sposób przynoszący korzyści bądź też szkody [13].

Zagrożenia psychologiczne i społeczne stanowią istotną, chociaż na-turalnie nie jedyną [15], kategorię problemów związanych ze stosowaniemmediów i technologii informatycznej w sferze edukacji. Kwestie te przedsta-wimy, wskazując konkretne zagrożenia dotyczące funkcjonowania człowiekaw sferze poznawczej, emocjonalnej, wolicjonalno-refleksyjnej oraz w dzie-dzinie relacji interpersonalnych.

Zwraca się uwagę na to, iż korzystanie z identycznych programów kom-puterowych uniformizuje nawyki percepcyjne, sposoby ujmowania i po-rządkowania in formacji, a w konsekwencji może prowadzić do psychicz-nego upodabniania się ludzi. Zjawisko to określa się mianem „kolektywiza-cji umysłów” [16]. Inne, pokrewne zagrożenie dotyczy sytuacji, w którychuczenie się na drodze gromadzenia bezpośrednich doświadczeń z trójwy-miarowego świata zostaje zastąpione przez pracę z komputerem. Podaje sięw tym kontekście przykład dziecka, które rozpoczyna pracę z programemgraficznym. Dzięki realizacji opcji zawartych w tym programie, np. rysowa-nia linii prostych i figur geometrycznych, wypełniania określonych obszarówkolorem, dziecko może wykonać prawidłowe rysunki. Tak naprawdę jednaknie uczy się ono rysować, lecz obsługiwać program komputerowy [14].

52

Page 53: Kryptologia i Cyberbezpieczenstwo nr 6

Wiktymologiczne aspekty cyberprzestępczości

Wskazuje się, iż tzw. nauczanie wspomagane komputerowo computer--assisted instruct stanowi jedynie bardzo efektywne zastosowanie prawidło-wości, które są podstawą nauczania programowanego. Zadanie komputerasprowadza się do: zadawania pytania, oceny odpowiedzi i ewentualnego ode-słania do alternatywnych odpowiedzi, utrwalania wiedzy przez powtarzanie[28]. Współcześnie można zaobserwować próby bardziej złożonego postę-powania w postaci tzw. inteligentnego kształcenia wspomaganego kompu-terem (inteWgent computer-assisted instruction), których istota polega nainspirowaniu uczących się do dialogu z maszyną. Niemniej jednak pozostająwątpliwości, czy maszyna, której działanie opiera się na zaprogramowanychregułach, zdolna jest do postrzegania problemów.

W hipermedialnych strukturach informacyjnych obserwuje się tenden-cję do po sługiwania się obrazami. Mówi się wręcz o walce pomiędzy kul-turą słowa drukowanego a kulturą obrazu. Współczesny uczeń coraz rza-dziej czyta książki, natomiast coraz częściej ogląda telewizję, sięga po pro-gramy multimedialne czy też poszukuje informacji w internecie. Dominacjawzrokowo-przestrzennych kodów w obsłudze komputerów stanowi efekt za-cierania się różnic pomiędzy technologią telewizyjną a komputerową. Zja-wisko to sprzyja rozwojowi myślenia konkretno obrazowego, upośledza na-tomiast myślenie abstrakcyjne [16].

Wielka łatwość umieszczania i dystrybucji informacji w internecie po-woduje, że mamy obecnie do czynienia z sytuacją określaną mianem „in-formacyjnego smogu”, analogicznie do zjawiska smogu przemysłowego cha-rakterystycznego dla cywilizacji przemysłowej [17]. Duża liczba tych infor-macji pochodzi ponadto od osób niekompetentnych, w związku z czymzapoznanie się z owymi informacjami może w większym stopniu utrudnićniż ułatwić zrozumienie jakiegoś przedmiotu.

Wskazuje się również, że nadmiernie częste korzystanie przez uczniaz hiper medialnych struktur informacyjnych może prowadzić do tego, cookreśla się mianem „elektronicznego encyklopedyzmu”, czyli dysponowaniaprzez uczniów ogromem informacji, często nieuporządkowanych i nieprze-tworzonych, a najczęściej wręcz zbędnych. Uczniowie stają się kolekcjone-rami informacji, natomiast występuje u nich deficyt wiedzy [18]. Wartoprzypomnieć w tym kontekście słowa angielskiego poety T.S. Eliota, iżwiedza może zatracać się w morzu informacji, a mądrość w potoku wiedzy.

Zwraca się uwagę na jeszcze jedno zagrożenie związane z lawiną infor-macji przy ograniczonych możliwościach ich przetwarzania przez człowieka,a w konsekwencji na utrudnienie dokonania wyboru. Chodzi mianowicieo problem manipulacji. W sytuacji nadmiaru informacji rzadko możemypozwolić sobie na przemyślaną analizę wszystkich aspektów danej sytuacji

53

Page 54: Kryptologia i Cyberbezpieczenstwo nr 6

B. Hołyst

czy zagadnienia, częściej będziemy zmuszeni polegać na pojedynczych ele-mentach czy aspektach jako wskazówkach. Jak pisze psycholog społecznyR. Cialdini [19]. „Dopóki owe pojedyncze wskazówki są rzetelne [. . .] niema niczego złego. Problem zaczyna się wtedy, kiedy z jakiegoś powodute normalnie rzetelne wskazówki staną się niegodne zaufania i prowadzićnas będą na manowce błędnych decyzji i szkodliwych działań [. . .]. Jednymz takich powodów są sztuczki niektórych zawodowych praktyków wpływuspołecznego [. . .]”

W związku z rozpowszechnianiem się technologii informatycznej i sto-sowaniem komputerów zwiększa się liczba przypadków lęków i niepokoju,jakie budzi praca związana z używaniem komputera czy nawet z samymkontaktem z nim, a także towarzyszących im takich objawów jak bóległowy, ogólne podrażnienie, koszmary nocne. Mogą również występowaćreakcje charakterystyczne dla ogólnej reakcji stresowej, takie jak: podwyż-szony poziom noradrenaliny i adrenaliny we krwi, przyspieszone tętno,wzrost ciśnienia w naczyniach krwionośnych.

Wskazuje się, iż jedną z przyczyn, która warunkuje powstanie kompu-terofobii, są trudności w opanowaniu obsługi komputera, zwłaszcza wtedy,gdy jest to istotne z uwagi na wykonywaną pracę. Zwraca się uwagę, żeniepokój odczuwany w kontakcie z komputerem może mieć podłoże „w cią-głym współzawodnictwie we współczesnym świecie, gdzie umiejętność ob-sługi komputera i kompetencja w tym zakresie jest niezbędna do odniesie-nia sukcesu” [20].

Zjawisko komputerofobii występuje w szczególnym nasileniu w kształ-ceniu osób dorosłych w związku z tym, iż wraz z wiekiem zmniejsza sięplastyczność umysłu, możliwość uczenia się, a więc coraz trudniej zmienićmożna przyzwyczajenia i adaptację do nowych warunków. Nie chodzi przytym jedynie o sam fakt przystosowania się do korzystania z komputera,ale również o przystosowanie się do zmian wynikających z ciągłego po-stępu technicznego, do instalowania coraz to nowych programów i urządzeń.W badaniach obejmujących grupę ponad tysiąca nauczycieli stwierdzono,że problem komputerofobii występuje również wśród nauczycieli czynnychzawodowo. W związku z dużym tempem zachodzących zmian można bę-dzie oczekiwać konieczności praktycznie ciągłego dostosowywania się donich użytkowników, a także wystąpienia problemów doświadczanych w tymzakresie nie tylko przez kształcących się dorosłych [20].

Współcześnie problem komputerofobii dotyczy jednak nie tylko osóbdorosłych. W czasopiśmie naukowym „Educational and Psychological Me-asurement” regularnie pojawiają się doniesienia z prac psychometrów po-święconych konstruowaniu specjalnych testów do pomiaru lęku przed kom-puterem (computer anxiety scale) [21]. Fakt ten, poza samymi donie-

54

Page 55: Kryptologia i Cyberbezpieczenstwo nr 6

Wiktymologiczne aspekty cyberprzestępczości

sieniami naukowymi o występowaniu omawianego fenomenu w populacjiuczniów różnych typów i poziomów szkół, zdaje się świadczyć o tym, iżzagrożenie, jakie wywołuje kontakt z komputerem i posługiwanie się nim,nie jest zjawiskiem incydentalnym.

Obecnie internet zapewnia szybki dostęp do wszelkiego rodzaju infor-macji także niedostępnych w inny sposób. Pozwala również szybko po-rozumiewać się z innymi osobami, znajdującymi się w miejscach bardzoodległych. W związku z tym systematycznie wzrasta liczba osób spędza-jących przed komputerem bardzo dużo czasu, nierzadko zaniedbującychwskutek tego inne obowiązki, również naukę. Mówi się więc coraz powszech-niej o zaburzeniu określanym różnymi nazwami: uzależnienie od internetu,siecioholizm, cyberzależność, infoholizm itp. [22]. Według badań Centerfor On-line Addiction przeprowadzonych na grupie 17 tys. internautów 6%spośród nich przejawia zachowania kwalifikujące się do leczenia, a 30% ko-rzysta z internetu „aby uciec od złych myśli”, co stanowi prostą drogę douzależnienia.

Do najczęściej opisywanych skutków uzależnienia od internetu należą:

– zaniedbywanie nauki lub pracy,– utrwalenie postawy egocentrycznej,– zaburzenia w sferze własnej tożsamości,– zawężenie zainteresowań,– zubożenie języka (posługiwanie się slangiem, skrótami itp.).

Niektórzy badacze wskazują, iż zachowania polegające na nadużywaniu ko-rzy stania z internetu nie tyle wynikają z, „uzależniających” właściwościsamego medium, ile stanowią konsekwencję pewnych trudności przeżywa-nych przez jednostkę czy też wyraz określonych nieprawidłowości osobowo-ściowych [23]. Zatem uzależnienie od internetu mogłoby stanowić ucieczkęod problemów czy też poczucia samotności bądź też wiązać się ze skłon-nością do zachowań kompulsywnych, stanowić formę przejawiania się tzw.„nałogowej osobowości” współczesnych czasów [24].

W badaniach przeprowadzonych przez R. Krauta i jego współpracow-ników uzyskano dane empiryczne świadczące o występowaniu wśród osóbczęsto korzystających z internetu lekkich stanów depresyjnych, w postacitzw. obniżonego samopoczucia [9]. Osoby te częściej niż inni użytkownicydeklarowały doświadczanie takich emocji, jak: smutek, przygnębienie, po-czucie winy. Pomimo uzyskanych wyników fakt powstawania depresji (Sta-nów depresyjnych) u użytkowników internetu wywołuje pewne kontrowersje[25].

W perspektywie bardziej ogólnej zwraca się uwagę, iż upowszechnianieelektronicznych środków przetwarzania informacji powoduje przejmowanie

55

Page 56: Kryptologia i Cyberbezpieczenstwo nr 6

B. Hołyst

pewnych funkcji poznawczych oraz kontrolnych przez maszynę [16]. Aktyw-ność człowieka może zostać uzależniona od maszyn i sieci informatycznych,a zjawisko to może dotyczyć zarówno jednostek, jak I całych grup społecz-nych. W przypadkach skrajnych może dojść do sterowania człowiekiem,w tym także uczącym się, przez ma szynę. W skali globalnej takie tenden-cje wiązałyby się ze zmniejszaniem autonomii i niezależności poznawczej,wykształcaniem się swoistej bierności poznawczej, a w konsekwencji obni-żaniem się kreatywności człowieka.

Zwraca się uwagę, iż w komunikacji zachodzącej za pośrednictweminternetu informacje o własnej tożsamości są niedostępne dla partnerówinterakcji, co umożliwia manipulowanie swoją tożsamością. „W cyberprze-strzeni każdy może mieć tyle «elektronicznych osobowości ile zdoła wykre-ować” [23]. Manipulacja własną tożsamością może mieć charakter gry pro-wadzonej z innymi uczestnikami komunikacji. W trakcie tej gry jednostkamoże nie tylko ukrywać pewne informacje przed innymi, ale może takżeje rozmyślnie fałszować. Takie postępowanie może mieć charakter zabawy,niemniej jednak może kształtować i utrwalać pewne nieprawidłowe sposobyfunkcjonowania społecznego oparte na kłamstwie i manipulacji. W przy-padku jednostek charakteryzujących się specyficznym typem osobowości,tzw. osobowością z pogranicza (borderline), dla której zaburzenia tożsa-mości są cechą osiową, udział w tego typu grach może mieć zdecydowanienegatywne konsekwencje.

Jedną z konsekwencji upowszechniania się zastosowania mediów i tech-niki informatycznej w edukacji będzie, być może nie gwałtowne i całkowite,ale Stopniowe i częściowe zastępowanie bezpośrednich kontaktów uczniaz nauczycielem kontaktami pośrednimi czy też wręcz zastąpienie nauczy-ciela przez maszynę. Trudno jest przewidzieć konsekwencje takiego pro-cesu, gdyby miał on rzeczywiście nastąpić. Dotyczy to zwłaszcza zastąpie-nia nauczyciela (czy też bezpośredniego kontaktu z nauczycielem) w ta-kich oddziaływaniach, jak: wzbudzanie motywacji poznawczej do uczeniasię, prezentowanie wzorca zachowań, stymulowanie do dyskusji, dialogu.Współcześnie dyskusja z komputerem to najczęściej wymiana rozkazówi oczekiwań; maszyna nie odbiera wrażeń ani nie odczuwa emocji, nie jestpodmiotem rozumienia ani też nie jest zdolna do osiągania wglądu.

Zaobserwowano, iż u osób często korzystających z internetu dochodzinie tylko do zmian wcześniej opisanych, ale również do zaburzenia relacji in-terpersonalnych, utraty zainteresowania różnymi formami aktywności spo-łecznej itp. [26]. U osób tych stwierdza się również zwiększony poziom po-czucia osamotnienia. Co ważne, zmiany te zaobserwowano nawet wówczas,gdy dominujące wykorzystanie internetu miało charakter społeczny, a więcnp. dotyczyło elektronicznej komunikacji z członkami rodziny, znajomymi

56

Page 57: Kryptologia i Cyberbezpieczenstwo nr 6

Wiktymologiczne aspekty cyberprzestępczości

czy osobami nieznanymi. Niektórzy autorzy formułują nawet wniosek, iżinternet zaczyna zastępować bliskie relacje interpersonalne, a czyniąc tow sposób powierzchowny, wywołuje w konsekwencji poczucie osamotnienia,które może potęgować Stany depresyjne, co już wcześniej sygnalizowaliśmy.

Zwraca się uwagę, iż internet dzięki swoim interakcyjnym właściwo-ściom może stać Się atrakcyjnym partnerem, zastępującym rzeczywistekontakty społeczne. Wskazuje się, iż zwiększa się liczebnie nowa kategorialudzi zwanych „elektronicznymi odludkami”, którzy potrafią perfekcyjnieposługiwać się Sprzętem komputerowym, ale są w znacznym stopniu pozba-wieni podstawowych umiejętności społecznych dotyczących nawiązywaniai utrzymywania bliskich relacji interpersonalnych [13].

Anonimowość oraz wzrastająca wolność od norm społecznych, którązapewnia komunikacja za pośrednictwem sieci komputerowych, może wy-zwalać zachowania agresywne, skłaniać do otwartego manifestowania czyteż wręcz propagowania po staw społecznie szkodliwych takich jak rasizm.Wiadomo, iż anonimowość osób kontaktujących się za pośrednictwem sieciogranicza możliwość kar i sankcji społecznych za niewłaściwe zachowanie.Psychologowie zwracają uwagę, że u niektórych ludzi w trakcie tego rodzajukomunikacji może dojść do osłabienia mechanizmów kontroli wewnętrznej,które nie wystąpiło by w bezpośredniej, nie anonimowej interakcji [27].

Ryzyko związane z zagrożeniami, jakie zostały przedstawione w odnie-sieniu do różnych sfer funkcjonowania podmiotu, może zmieniać się w za-leżności od występowania pewnych dodatkowych czynników (warunków).Ogólnie można wyróżnić dwie kategorie takich czynników: (1) czynniki pod-miotowe oraz (2) czynniki sytuacyjne.

W grupie czynników podmiotowych możemy wyróżnić kategorię czyn-ników rozwojowych oraz czynników indywidualnych. Czynniki rozwojowe(czyli wieki związany z nim poziom rozwoju umysłowego, emocjonalnegoi społecznego) mogą w istotny sposób determinować ryzyko związanez określonymi zagrożeniami. I tak, jeżeli chodzi o problemy dotyczące np.trudności występujących w związku z zalewem informacji i koniecznościądokonywania selekcji materiału czy też uzależnienia od internetu, to więk-sze ryzyko występuje w przypadku osób młodszych. W przypadku nato-miast np. komputerofobii większy poziom ryzyka charakteryzuje osoby do-rosłe.

W odniesieniu do czynników indywidualnych jako podkategorii uwa-runkowań podmiotowych największe znaczenie należałoby przypisywać wy-stępowaniu pewnych specyficznych właściwości osobowości osób uczącychsię. Chodzi mianowicie o to, iż pewne specyficzne cechy osobowości czyteż charakteryzowanie się pewnym typem osobowości może sprzyjać rozwi-nięciu się określonych zagrożeń. Na przykład skłonność do zachowań kom-

57

Page 58: Kryptologia i Cyberbezpieczenstwo nr 6

B. Hołyst

pulsywnych może sprzyjać uzależnieniu od internetu, a tzw. osobowośćhistrioniczna podleganiu wpływom o charakterze manipulacyjnym, osobo-wość pograniczna (borderline) zaburzeniom tożsamości.

Z uwagi jednak na relatywnie krótki okres wykorzystywania technologiikomputerowej nie mamy dostatecznych danych umożliwiających nam ocenęjej efektywności, czyli dokonania rachunku strat i korzyści. Historia uczynas ponadto, iż to, co okazywało się korzystne w skali lat, niekonieczniebyło oceniane jako wartościowe w skali dziesięcioleci. Brak jest jednak re-guł i zasad, które mogłyby stano wić oparcie dla decydentów; istnieją tylkobardzo ogólne wskazówki, jak ta, która nakazuje zachowanie ostrożności.Stosowanie technologii komputerowej na skalę masowej powinno przypo-minać zachowanie lekarza, który, wprowadzając nowe lekarstwo do terapii,musi uważnie śledzić wszelkie działania uboczne.

Psychologiczne zagrożenia związane z zastosowaniem mediów i tech-nologii informatycznej w edukacji mogą wiązać się z niebezpieczeństwembezpośredniego zakłócenia oddziaływań społecznych, jak również mogąwpływać na efektywność tych oddziaływań w sposób pośredni, np. poprzezwpływanie na stan emocjonalny osób kształcących się. Psychologiczne za-grożenia związane z zastosowaniem mediów i technologii informatycznejw edukacji należy rozpatrywać w kontekście korzyści i zalet, jakie niesie ichwykorzystywanie. Należy przyjąć, iż generalnie technologia zwiększa możli-wości człowieka, natomiast zastosowaniu technologii powinno towarzyszyćprzewidywanie możliwych zagrożeń i przeciwdziałanie im [10]. Wydaje się,iż nie należy również bagatelizować tych zagrożeń, które mają ograniczonyzasięg z tej racji, iż dotyczą jedynie pewnych charakterystycznych grup,np. osób o specyficznych cechach osobowości.

Literatura

[1] M. Sowa, Odpowiedzialność karna sprawców przestępstw interneto-wych, Prokuratura i Prawo 202, nr 4, s. 62–79.

[2] J. Arquilla, D.F. Ronfeldt, The Adwent of Netwar, Santa Mo-nica, Calif., 1996.

[3] B. Hołyst, Terroryzm, t. 1, Warszawa 2009, s. 754.[4] M. Białkowski, Haking – przestępczość nowych czasów, Przegląd

Policyjny, 2002, nr 12, s. 138–148.[5] Information Warfare, Thunders Mouth Press, New York 1996.[6] M. Byczkowski, Bezpieczeństwo systemów sieciowych, Postępy Kry-

minalistyki, 1997, nr 1, s. 62–73.

58

Page 59: Kryptologia i Cyberbezpieczenstwo nr 6

Wiktymologiczne aspekty cyberprzestępczości

[7] K. Buchała, A Zoll, Kodeks karny. Komentarz. Część ogólna, t. 1,Warszawa 1998.

[8] J. Barta, R. Markiewicz, Internet a prawo, Warszawa 1998.[9] R. Kraut, M. Patterson, V. Lundmark, S. Kiesler, Internetparadox: A social technology that reduces social involvment and psycho-logical well-being, American Psychologist, 1998, nr 53, s. 1017–1031.

[10] P. Wallace, Psychologia Internetu, Poznań 2001.[11] S. Juszczyk, Nowoczesne media dydaktyczne w edukacji lingwistycz-nej, Kognitywistyka i Media Edukacji, 1993, s. 107–109.

[12] D. Sloan, Introduction: On raising critical questions about the com-puter in education, w: D. Sloan (red.), The Computer in Education.A critical Perspective, New York 1985.

[13] J. Morbitzer, Technologia informacyjna – kodeks zagrożeniowym,w: J. Migdałek, B. Kędzierska (red.), Informatyczne przygotowanienauczycieli w okresie zmian i transformacji, Kraków 2002.

[14] J. Morbitzer, Technologia informacyjna, Warszawa 1998.[15] M. Tanaś, Medyczne skutki uboczne kształcenia wspomaganego kom-puterem, Toruńskie Studia Dydaktyczne, 1993, s. 107–109.

[16] J. Bobryk, Technika elektroniczna, komunikacja masowa a procesypsychiczne, w: I. Kurcz, J. Bobryk (red.), Psychologiczne studia nadjęzykiem i dyskursem, Warszawa 2001.

[17] D. Shenk, Data Smog. Surviving for Information Glut, San Francisco1998.

[18] R. Pachociński, Czy szkoła przygotowuje do zmian?, SpołeczeństwoOtwarte, 1997, nr 4 s. 35–39.

[19] R. Cialdini, Wywieranie wpływu na ludzi, Gdańsk 1994, s. 248.[20] B. Siemieniecki, Edukacja humanistyczna i komputery, w: J. Gajda,

S. Juszczyk, B. Siemieniecki, K. Wenta, Edukacja medialna, Toruń2002, s. 183.

[21] G.A. Marcoulides, Measuring computer anxiety: the ComputerAnxiety Scale, Educational and Psychological Measurement, 1989, nr49, s 733–740; G.A. Marcoulides, B.T. Mayes, R.L. Wiseman, Me-asuring computer anxiety in the work environment, Educational andPsychological Measurement, 1995, nr 55, s. 604–810.

[22] A. Jakubik, Zespół uzależnienia od internetu, Studia Psychologica,2002, nr 3, s. 133–142.

[23] K. Majgier, Internet jako przestrzeń komunikacyjna, Przegląd psy-chologiczny, 2000, nr 43, s. 157–172.

[24] J. Mellibruda, Nałogowa osobowość naszych czasów, Nowiny Psy-chologiczne, 1996, nr 2, s. 5–14.

59

Page 60: Kryptologia i Cyberbezpieczenstwo nr 6

B. Hołyst

[25] J.S Shapiro, Loneliness: Paradox or artifact?, American Psycholo-gist, 1999, nr 54, s. 782–783.

[26] K.S Young, Caught in the Net: How to Recognize the Signs of Inter-net Addiction and Winning Strategy for Recovery, New York 1994.

[27] E. Reid, Communication and communities Internet Relay Chat: Con-struciting communities, w: P. Ludlow (red.), Conceptual Issues on theElectronic Frontier, Melbourne 1996.

[28] M.H. Dembo, Stosowana psychologia wychowawcza, Warszawa 1998.

VICTIMOLOGICAL ASPECTS OF CYBECRIME

Abstract. We analyze the phenomena associated with the development of the Internetwith particular emphasis on cybercrime and cyberterrorism. Were also discussed psy-chological and victimological aspects of crime in cyberspace. An analysis of threats andrisks with regard to subjective and situational factors is presented.

Keywords: cybercrime, victimology, cyberspace, malware, network attacks, informa-tion technology, the victim of cybercrime, psychological aspects of cybercrime, educationnetwork, internet and interpersonal relationships, virtual identity

Page 61: Kryptologia i Cyberbezpieczenstwo nr 6

II. KRZYWE ELIPTYCZNE I ICHZASTOSOWANIE W KRYPTOLOGII

ZASTOSOWANIE KRZYWYCHELIPTYCZNYCH DO KONSTRUKCJI

BEZPIECZNYCH ALGORYTMÓWI PROTOKOŁÓW KRYPTOGRAFICZNYCH

Mariusz Jurkiewicz, Jerzy Gawinecki, Piotr Bora,Tomasz Kijko

Wojskowa Akademia Techniczna Wydział Cybernetyki,Instytut Matematyki i Kryptologii,00-908 Warszawa, ul. S. Kaliskiego 2

Streszczenie. Celem artykułu jest zaprezentowanie metod doboru bezpiecznych krzy-wych eliptycznych stosowanych do konstruowania protokołów kryptograficznych orazsprzętową implementacje koprocesora realizującego operacje arytmetyczne na tej rodzi-nie krzywych algebraicznych.

Słowa kluczowe: Krzywe eliptyczne, stopień zanurzeniowy, logarytm dyskretny, krot-ność punktu.

1. Wstęp

Obecnie w celu uzgodnienia kluczy kryptograficznych a także realizacjipodpisu cyfrowego wykorzystywane są algorytmy klucza publicznego. Pod-stawą bezpieczeństwa tych algorytmów są problemy trudne obliczeniowotakie jak faktoryzacja dużych liczb (algorytm RSA) albo wyznaczanie lo-garytmu dyskretnego (protokół Diffiego-Hellmana). Przykładem dziedzinywykorzystującej trudność znajdowania logarytmu dyskretnego jest grupapunktów krzywej eliptycznej zdefiniowana nad ciałem skończonym. Okazujesię, że nie każda grupa punktów zapewnia odpowiedni poziom bezpieczeń-stwa. Podejmiemy trud opisania metod wykrywania oraz radzenia sobiez tymi problemami.

Kolejne zagadnienie dotyczy sprzętowych implementacji koprocesorarealizującego operacje na krzywych eliptycznych. Wspomaganie sprzętoweobliczeń dla systemów klucza publicznego na krzywych eliptycznych musibyć rozpatrywane w trzech warstwach:

Page 62: Kryptologia i Cyberbezpieczenstwo nr 6

J. Gawinecki, P. Bora, M. Jurkiewicz, T. Kijko

• wykonywanie operacji elementarnych w ciele,• metody reprezentacji punktu, a co za tym idzie potok obliczeń dla

podwajania i dodania punktów na krzywej eliptycznej,• metody realizacji krotności punktu na krzywej eliptycznej.

Najczęściej spotykanymi rozwiązaniami są systemy budowane na krzywychnad ciałami liczbowymi lub nad ciałami wielomianów o współczynnikachz ciała charakterystyki 2. Spośród operacji elementarnych w ciele najbar-dziej czaso- i elementochłonną jest mnożenie modularne. Zarówno w roz-wiązaniu budowanym nad ciałem liczbowym, jak i nad ciałem wielomianównajmniej efektywnym jest rozwiązanie mnożenia modularnego tzw. podsta-wowe. Najczęściej przechodzi się w reprezentacji czynników działania napostać czy to residuów, czy baz normalnych. W przypadku metod repre-zentacji punktu na krzywej również odchodzi się od reprezentacji bezpo-średniej – afinicznej, na rzecz reprezentacji ogónie nazywanych rzutowymi.Unikamy tu częstego liczenia inwersji elementu w ciele, zostawiając ją nakoniec obliczeń wyliczania krotności celem korekcji wyniku do reprezentacjiwe współrzędnych afinicznych.

Ostatnią grupą zagadnień są metody wyznaczania krotności punktu.Podstawowym rozwiązaniem jest metoda binarna, jednak często przechodzisię na metodę dodawań-odejmowań, okien w-szerokich, m-arną, ”drabinyMontgomery’ego”, metodę z dzieleniem punktu lub innych.

Dobre zestawienie operacji we wszystkich trzech warstwach obliczeńumożliwia nam uzyskanie rozwiązania sprzętowego modułu wyznaczaniakrotności punktu o stosunkowo małych wymaganiach sprzętowych i szyb-kim wyznaczaniu wyniku.

2. Wprowadzenie algebraiczne

Rozpoczniemy od zaprezentowania kilku znanych faktów algebraicz-nych stanowiących trzon aplikacyjny matematyki w kryptologii asyme-trycznej. Szczegółowe informacje dotyczące przedstawionych tu kwestiimożna znaleść np. w [4], [6]. Niech dany będzie zbiór S. Dowolną funk-cję ⊗ : S × S → S nazywamy działaniem w S. Działanie nazywamy:

(i) łącznym, gdy a⊗ (b⊗ c) = (a⊗ b)⊗ c, dla a, b, c ∈ S;(ii) z elementem neutralnym, gdy istnieje e ∈ S, że e⊗ a = a⊗ e = a, dla

a ∈ S;(iii) przemiennym, gdy a⊗ b = b⊗ a, dla a, b ∈ S.(iv) odwracalnym, gdy dla a ∈ S istnieje a−1, że a⊗ a−1 = a−1 ⊗ a = e;

62

Page 63: Kryptologia i Cyberbezpieczenstwo nr 6

Zastosowanie krzywych eliptycznych do konstrukcji bezpiecznych algorytmów . . .

Zbiór S z działaniem spełniającym warunki (i), (ii), (iv) nazywamy grupą.Jeżeli dodatkowo spełniony jest warunek (iii) grupę nazywamy przemiennąlub abelową.

Zbiór R z dwoma działaniami +, ·, nazywanymi odpowiednio „doda-waniem” i „mnożeniem”, nazywamy pierścieniem gdy dodawanie spełniawarunki (i)-(iv) a mnożenie (i)-(iii). Ponadto obydwa działania są zwią-zane warunkiem nazywanym rozłącznością mnożenia względem dodawania

(v) a · (b+ c) = a · b+ a · c, dla a, b, c ∈ R.

Elementy neutralne względem dodawania i mnożenia nazywamy odpowied-nio zerem i jedynką. Zwykle zamiast pisać a · b piszemy ab.

Pierścień nazywamy:

• Pierścieniem całkowitym jeśli równość ab = 0 implikuje, że a = 0 lubb = 0.

• Ciałem jeśli mnożenie jest odwracalne, tzn. spełnia (iv).

Podzbiór P ⊂ R nazywamy podpierścieniem jeśli jest pierścieniem z dzia-łaniami z R obciętymi do P . Podpierścień J ⊂ R nazywamy ideałem jeślispełniony jest warunek ar ∈ J dla a ∈ J oraz r ∈ R.

Najmniejszym ideałem pierścienia R, zawierającym element a ∈ Rjest ideał postaci (a) = ra | r ∈ R. Ideał J ⊂ R nazywa się głównymjeśli istnieje a ∈ R, że J = (a). Wtedy mówi się czasem, że J jest ideałemgłównym generowanym przez a. Jeśli w dziedzinie całkowitości każdy ideałjest główny, nazywamy go dziedziną ideałów głównych.

Niech R oraz J będą odpowiednio, pierścieniem i jego ideałem. Wpro-wadzamy następującą relację w R:

a ≡ b (mod J) wtedy i tylko wtedy, gdy a− b ∈ J.

Z łatwością można pokazać, że powyższa relacja jest relacją równoważności,dzielącą R na klasy abstrakcji oznaczane symbolem [a] := a + J . Zbiórwszystkich klas abstrakcji powyższej relacji oznacza się przez R/J . Jeśliw zbiorze R/J określimy działania ⊕ oraz ⊙

(a+ J)⊕ (b+ J) = (a+ b) + J oraz (a+ J)⊙ (b+ J) = ab+ J,

to okaże się, że po pierwsze są dobrze zdefiniowane a po drugie wprowa-dzają w R/J strukturę pierścienia. Pierścień ten nazywamy pierścieniemilorazowym lub dokładniej pierścieniem ilorazowym pierścienia R moduloJ . W dalszy ciągu zamiast symboli ⊕,⊙ będziemy używać zwykłego plusai kropki.

63

Page 64: Kryptologia i Cyberbezpieczenstwo nr 6

J. Gawinecki, P. Bora, M. Jurkiewicz, T. Kijko

Element a ∈ R nazywamy dzielnikiem b ∈ R jeśli istnieje c ∈ R, żeac = b. Elementy odwracalne wR nazywa się dzielnikami jedynki. Elementya, b ∈ R nazywamy stowarzyszonymi jeśli istnieje dzielnik jedynki ϵ, żea = ϵb. Element p ∈ R nazywa się pierwszym jeśli nie jest dzielnikiemjedynki oraz jego jedynymi dzielnikami są dzielniki jedynki oraz elementyz nim stowarzyszone.

Twierdzenie 1. Niech R będzie dziedziną ideałów głównych, wtedy R/(p)jest ciałem wtedy i tylko wtedy, gdy c jest elementem pierwszym pierście-nia R.

Wniosek 1. Z/(p) jest ciałem wtedy i tylko wtedy, gdy p jest liczbą pierw-szą. Oczywiście jest to ciało skończone #Z/(p) = p, oznacza się je równieżsymbolem Zp lub uniwersalnym symbolem Fp.

Niech F będzie ciałem. Zbiór wszystkich wielomianów o współczynni-kach z F z działaniami dodawania i mnożenia wielomianów jest pierście-niem, który oznaczamy symbolem F [x]. Wielomiany stałe utożsamiamyz elementami ciała F . Łatwo stwierdzić, że jedynymi dzielnikami jedynkiw F [x] są niezerowe elementy F . Wielomian nazywamy unormowanym jeśliwspółczynnikiem przy najwyższej potędze jest jedynka. Elementami pierw-szymi w F [x] są wielomiany nierozkładalne, nazywane czasem nieprzywie-dlnymi. Trzeba podkreślić, że nieprzywiedlność jest ściśle związana z cia-łem F . Klasyczny przykład to x2− 2 który jest nieprzywiedlny nad Q orazrozkładalny nad R.

Okazuje się, że F [x] jest dziedziną ideałów głównych, dokładniej dladowolnego ideału J = (0) istnieje jednoznacznie wyznaczony wielomianunormowany f ∈ F [x] taki, że J = (f). Stąd oraz twierdzenia 1, dostajemy

Twierdzenie 2. Dla f ∈ F [x] pierścień ilorazowy F [x]/(f) jest ciałemwtedy i tylko wtedy, gdy f jest wielomianem nieprzywiedlnym nad F .

Dla dowolnego f ∈ F [x] przyjrzymy się elementom pierścieniaF [x]/(f). Jak wiadomo z wcześniejszych rozważań elementy pierścieniailorazowego mają postać g + (f). Okazuje się jednak, że każda klasa za-wiera jednoznacznie wyznaczonego reprezentanta r ∈ F [x] czyniącego za-dość warunkowi deg r < deg f , jest to zwyczajnie reszta z dzielenia g przezf . Ostatnia uwaga ma ciekawe konsekwencje, mianowicie dla F = Fp,gdzie p jest liczbą pierwszą oraz f wielomianem nieprzywiedlnym takim,że deg f = n ≥ 0, liczba elementów ciała Fp[x]/(f) jest równa liczbie wie-lomianów w Fp[x] stopni mniejszych od n, zatem #Fp[x]/(f) = pn.

64

Page 65: Kryptologia i Cyberbezpieczenstwo nr 6

Zastosowanie krzywych eliptycznych do konstrukcji bezpiecznych algorytmów . . .

Twierdzenie 3. Niech Fp będzie ciałem skończonym(i) Dla każdego n ≥ 1 istnieje nieprzywiedlny wielomian f ∈ Fp[x] stop-nia n.

(ii) Dla każdego n ≥ 1 istnieje ciało skończone zawierające pn elementów.(iii) Jeśli F oraz F′ są ciałami skończonymi o takiej samej liczbie elementówwtedy są izomorficzne.

Jeżeli G ⊆ F jest ciałem to nazywamy je podciałem ciała F jeślidodatkowo G = F to mówimy, że G jest podciałem właściwym. CiałoF nazywa się również rozszerzeniemciała G. Łatwo stwierdzić, że iloczynrodziny wszystkich podciał ciała F jest również jego podciałem, które na-zywamy podciałem prostym. Zatem podciało proste nie zawiera żadnychpodciał właściwych. Okazuje się, że każde podciało proste jest izomorficznez Fp lub Q. To uzasadnia następną definicję. Charakterystyką ciała F na-zywamy rząd jego podciała prostego. Widać, że charakterystyka ciała możebyć zerem lub liczbą pierwszą.

3. Krzywe eliptyczne

Rozpoczniemy od koncepcji krzywej eliptycznej (patrz np. [5], [17]).Przez chwilę będziemy poruszać się w znanym środowisku jakim są prze-strzenie euklidesowe. Nazwijmy krzywą eliptyczną w R2 zbiór rozwiązańrównania

y2 = x3 + ax+ b. (1)

Równania tego typu nazywa się równaniami Weierstrassa. Najbardziej za-dziwiającą cechą krzywych eliptycznych jest możliwość zdefiniowania dzia-łania „dodawania” punktów krzywej indukującego strukturę grupy. Weźmydwa różne punkty, powiedzmy P i Q, leżące na krzywej eliptycznej, wtedyprzechodząca przez nie prosta przecina krzywą w dokładnie trzech róż-nych punktach P,Q,−R. Przyjmujemy, że wynikiem dodawania będziepunkt R krzywej, symetryczny do −R względem osi odciętych.

W przypadku gdy P = Q rozważamy styczną do krzywej w punkcie Pi powtarzamy powyższą procedurę. Jest tu jednak pewien istotny problem,mianowicie w jaki sposób dodać punkty symetryczne względem osi odcię-tych lub podwoić punkt leżący dodatkowo na osi odciętych? Odpowiedniaprosta będzie wówczas równoległa do osi rzędnych i oczywiście nie przetniekrzywej eliptycznej w żadnym innym punkcie. Okazuje się, że ten pozornyproblem tak naprawdę jest dobrodziejstwem pozwalającym wtopić aparatalgebraiczny w pojęcie krzywej. Zmienimy na chwilę punkt widzenia. Wy-obraśmy sobie zanurzoną w przestrzeni płaszczyznę i stojącą na niej sferę

65

Page 66: Kryptologia i Cyberbezpieczenstwo nr 6

J. Gawinecki, P. Bora, M. Jurkiewicz, T. Kijko

Rysunek 1. Dodawanie punktów na krzywej eliptycznej

jednostkową w taki sposób, że ich jedynym punktem wspólnym są odpo-wiednio zero i „biegun południowy” sfery. Dla dowolnego punktu płaszczy-zny rozważmy prostą łączącą go z „biegunem północnym”, wtedy nie licząc„bieguna” taka prosta przetnie sferę w dokładnie jednym punkcie. Ozna-cza to, że istnieje bijekcja pomiędzy płaszczyzną a sferą bez punktu (tzn.bez „bieguna północnego”). Pomysł polega na przypisaniu nieskończonoścido tego punktu, nazywając „biegun północny” punktem w nieskończonościktóry oznaczać będziemy symbolem O. (1) Wróćmy do krzywej, rzutując jąna sferę w opisany powyżej sposób widać, że każda prosta równoległa do osirzędnych przejdzie przez punkt w nieskończoności. Dokładniej, dla punk-tów symetrycznych względem osi odciętych łącząca je prosta jest krzywązamkniętą przechodzącą przez obrazy tych punktów oraz punkt w nieskoń-czoności, analogicznie w przypadku podwajania. Nietrudno odnieść wraże-nia, że punkt w nieskończoności zachowuje się jak element neutralny dzia-łania na punktach krzywej. Naturalnym pomysłem jest przeto rozszerzenieprostej o ten punkt, wtedy krzywa eliptyczna z punktem w nieskończonościoraz opisanym działaniem „dodawania punktów” staje się grupą abelową.Poniżej uściślimy zaprezentowane intuicje.

1 Jest to tzw. jednopunktowe uzwarcenie w sensie Aleksandrowa a cała przedsta-wiona konstrukcja nazywa się rzutem stereograficznym.

66

Page 67: Kryptologia i Cyberbezpieczenstwo nr 6

Zastosowanie krzywych eliptycznych do konstrukcji bezpiecznych algorytmów . . .

Definicja 1. Krzywą eliptyczną nad R nazywamy zbiór rozwiązań rów-nania (1) wraz z punktem w nieskończoności O, o ile stałe a, b spełniajądodatkowy warunek

∆E = −16 · (4a3 + 27b2) = 0.

Zbiór ten oznaczamy symbolem E (R).

Zatem krzywa eliptyczna to zbiór E(R) = (x, y) ∈ R2 | y2=x3 + ax + b∪ O

Wyrażenie ∆E nazywa się dyskryminantem krzywej E (R). Warunek∆E = 0 oznacza, że wielomian x3 + ax + b nie posiada pierwiastków wie-lokrotnych. Krzywe dla których dyskryminant się zeruje posiadają osobli-wości i działanie „dodawania” przestaje zachowywać się właściwie.

Opisany powyżej sposób dodawania punktów na krzywej eliptycznejw wersji algebraicznej przyjmuje postać następującego twierdzenia:

Twierdzenie 4. (Algorytm dodawania punktów na krzywej eliptycznej)Niech E (R) będzie krzywą eliptyczną oraz P1, P2 ∈ E (R), wtedy:• Jeśli P1 = O to P1 + P2 = P2• W przeciwnym wypadku, jeśli P2 = O to P1 + P2 = P1• W przeciwnym wypadku, niech P1 = (x1, y1) oraz P2 = (x2, y2)

Jeśli x1 = x2 oraz y1 = −y2, wtedy P1 + P2 = O W przeciwnym wypadku, określmy

λ =

y2 − y1x2 − x1

dlaP1 = P2

3x21 + a

2y1dlaP1 = P2

i niech x3 = λ2 − x1 − x2 oraz y3 = λ(x1 − x3) − y1. WtedyP1 + P2 = (x3, y3).

Twierdzenie 5. Krzywa eliptyczna E(R) wraz z wyżej określonym dzia-łaniem „dodawania” jest grupą abelową.

Powyżej przedstawiliśmy intuicyjną definicję krzywej eliptycznejnad R, jednak chcąc znaleść zastosowanie krzywych eliptycznych w kryp-tologii jesteśmy zmuszeni zmienić scenę. Dokładniej, interesować nas będąanalogony powyższych definicji jednak z tą różnicą, że tym razem współ-czynniki krzywej będą elementami ciała Fp. Zatem,

67

Page 68: Kryptologia i Cyberbezpieczenstwo nr 6

J. Gawinecki, P. Bora, M. Jurkiewicz, T. Kijko

Definicja 2. Krzywą eliptyczną nad Fp nazywamy zbiór

E (Fp) =

(x, y) ∈ Fp × Fp | y2 = x3 + ax+ b∪ O (3)

przy założeniu, że dyskryminant spełnia warunek

∆E = −16 · (4a3 + 27b2) = 0 (mod char(Fp)). (4)

Uwaga 1. Z powodów które podamy poniżej zakładamy, że p ≥ 3.Jest rzeczą zdumiewającą, że geometrycznie określone działanie „dodawa-nia” punktów krzywej eliptycznej nad R przenosi się bez zmian oraz z za-chowaniem wszystkich zasadniczych własności na przypadek ciała skończo-nego o charakterystyce większej niż dwa.

Twierdzenie 6. Niech P,Q ∈ E (Fp), wtedy:(i) Algorytm dodawania opisany w twierdzeniu 4 zastosowany do P i Qzwraca element z E (Fp).

(ii) Zbiór E (Fp) wraz z działaniem dodawania punktów krzywej eliptycz-nej jest (skończoną) grupą abelową.

Na podstawie poprzedniego twierdzenia wiemy, że krzywa eliptyczna nadciałem skończonym (z chwilowym ograniczeniem na charakterystykę) jestgrupą abelową. Naturalne pytanie dotyczy ilości elementów tej grupy. Spró-bujmy z grubsza oszacować ten problem. Ustalając x0 ∈ Fp, dostaniemytrzy możliwości w odniesieniu do wartości wyrażenia x30+ax+b. Po pierw-sze może się zdarzyć, że wielkość ta da się spierwiastkować modulo p, co danam dwa punkty z E (Fp). W przybliżeniu taka sytuacja występuje w około50% wypadków. Drugi przypadek to brak możliwości spierwiastkowania, cozdarza się również w około połowie sytuacji. Na koniec wartość wyrażeniamoże być równa zero, wtedy otrzymamy dokładnie jeden punkt z E (Fp).Jednak taki przypadek może zajść dla co najwyżej trzech elementów Fp.Podsumowując możemy oczekiwać, że #E (Fp) ≈ 50% · 2 · p + 1 = p + 1(1 odpowiada za punkt w nieskończoności).

Znane twierdzenie Hassego, póśniej uogólnione przez Weil’a i Deli-gne’a mówi, że nasze oczekiwania są spełnione z dokładnością do pewnychlosowych wielkości.

Twierdzenie 7. (Hasse) Niech E (Fp) będzie krzywą eliptyczną. Wtedy

#E (Fp) = p+ 1− tp, przy czym |tp| ≤ 2√p.

Wielkośćtp = p+ 1−#E (Fp)

nazywa się śladem Frobeniusa dla E(Fp).

68

Page 69: Kryptologia i Cyberbezpieczenstwo nr 6

Zastosowanie krzywych eliptycznych do konstrukcji bezpiecznych algorytmów . . .

Twierdzenie Hassego pozwala nam oszacować #E (Fp), jednak nie do-starcza narzędzi do wyznaczenia tej wielkości. Oczywiście można zasto-sować metodę typu podstaw i sprawdś, jednak jest ona ekstremalnie nieefektywna zajmuje czas O(p). W pracy [15] Schoof pokazał algorytm wy-znaczania #E (Fp) w czasie O((ln p)8). Algorytm Schoof’a został następnieulepszony przez Elkies’a i Atkin’a, zyskując znaczenie praktyczne (złożo-ność O((ln p)6)) i jest aktualnie znany jako SEA (patrz [16]).

Powróćmy do definicji 2 z której wynika, że wszystko dobrze działadopóki dyskryminant nie jest zerem. Jednak z (4) dostajemy natychmiast,że w ciałach postaci F2k równość ∆E = 0 jest zawsze prawdziwa, gdyżchar(F2k) = 2, co można czytać 2 = 0. W tej sytuacji konieczne jest uogól-nienie pojęcia krzywej eliptycznej:

Definicja 3. Krzywą eliptyczną nazywamy zbiór rozwiązań uogólnionegorównania Weierstrassa

y2 + a1xy + a3y = x3 + a2x2 + a4x+ a6 (5)

wraz z punktem w nieskończoności O. Współczynniki a1, . . . a6 muszą czy-nić zadość równości ∆ = 0, gdzie dyskryminant ∆ definiujemy następująco

∆ = −d22d8 − 8d34 − 27d26 + 9d2d4d6,

gdzied2 = a21 + 4a2, d4 = 2a4 + a1a3, d6 = a23 + 4a6,

d8 = a21a6 + 4a2a6 − a1a3a4 + a2a23 − a24.

Równanie (5) ma najogólniejszą postać i w przypadku ciała o charakte-rystyce większej niż dwa2 można ją sprowadzić do krzywej postaci (3) zapomocą trywialnego przekształcenia. Zmiany polegają na tym, że pracu-jąc z postacią (5) zmianie ulega algorytm dodawania punktów. Dokład-niej odbicie względem osi odciętych (x, y) 7→ (x,−y) wynikające z definicjigeometrycznej trzeba zastąpić bardziej technicznym warunkiem (x, y) 7→(x,−y−a1x−a3). Jest to jednocześnie formuła opisująca punkt przeciwnydo danego.

2 Zakwalifikowanie krzywych eliptycznych nad ciałem charakterystyki 3 do klasyanalizowanych równaniem (3) ma charakter czysto teoretyczny, gdyż istnieją takiekrzywe dla których dyskryminant jest niezerowy. Jednak w praktyce przypadek tenwłącza się do sytuacji opisywanej równaniem (5), gdyż wtedy jesteśmy w stanieogarnąć znacznie większą liczbę krzywych.

69

Page 70: Kryptologia i Cyberbezpieczenstwo nr 6

J. Gawinecki, P. Bora, M. Jurkiewicz, T. Kijko

4. Praktyczne zastosowania krzywych eliptycznych

4.1. Problem logarytmu dyskretnego

Bieżącą sekcję zakończymy opisując jeden z głównych powodów uza-sadniających użycie krzywych eliptycznych w kryptologii. Podobnie jak wy-żej wróćmy na krótki moment do zbioru liczb rzeczywistych. Wyobraźmysobie sytuację w której dwoje głównych aktorów sceny kryptologicznej,Alicja i Bob ustalają pewną liczbę rzeczywistą g ≥ 1, następnie Alicja wy-biera w sekrecie liczbę n, możemy spokojnie założyć, że będzie to liczbanaturalna i publikuje liczbę q = gn. Aktualnie abstrahujemy od pytaniaw jakim celu to robi. Adwersarz na podstawie informacji o postaci g oraz qmusi odkryć n. Natychmiast widać, że n = logg q, czyli problem sprowadzasię do rozwiązania klasycznego równania logarytmicznego znanego z pod-stawowego kursu matematyki, co naturalnie w rozważanym przypadku niestanowi najmniejszego problemu.

Wróćmy do krzywych eliptycznych i spróbujmy powtórzyć powyższąkonstrukcję, zobaczymy czy w tym przypadku rozwiązanie jest równie try-wialne. Rozważmy grupę punktów krzywej eliptycznej E(Fp), gdzie jakwiadomo p jest liczbą pierwszą lub potęgą liczby pierwszej. Alicja wybierapunkt P ∈ E(Fp) oraz n ∈ N i oblicza

Q = P + P + . . . P︸ ︷︷ ︸n−1 dodawań w E(Fp)

= [n]P,

następnie publikuje P oraz Q. Na podstawie tych danych przeciwnik musiwyznaczyć n, czyli rozwiązać proste na pierwszy rzut oka równanie. Jed-nak tym razem równanie już proste nie jest. Mianowicie, okazuje się, żetechniczna trudność definicji dodawania punktów krzywej eliptycznej wrazz arytmetyką modularną w ciele Fp, czyni ten problem niezwykle trud-nym obliczeniowo, przynajmniej dla dużych p. Najszybszy znany algorytmrozwiązuje opisany problem w grupie punktów krzywej eliptycznej E(Fp)o rzędzie r (r – liczba pierwsza) w nie mniej niż O(

√r) krokach.

Definicja 4. Niech E(Fp) będzie krzywą eliptyczną nad ciałem skończo-nym Fp oraz niech P,Q ∈ E(Fp). Problemem logarytmu dyskretnego nakrzywej eliptycznej (ECDLP) nazywamy problem znalezienia liczby natu-ralnej n takiej, że Q = [n]P . W analogii do klasyki szukaną liczbę ozna-czamy

n = logP Q,

70

Page 71: Kryptologia i Cyberbezpieczenstwo nr 6

Zastosowanie krzywych eliptycznych do konstrukcji bezpiecznych algorytmów . . .

i mówimy, że n jest dyskretnym logarytmem eliptycznym o podstawie Pz Q.

Zwróćmy uwagę na fakt, że w powyższa definicja zawiera pewną lukę,mianowicie mogą istnieć punkty P,Q leżące na krzywej takie, że Q nie jestwielokrotnością P . Wtedy oczywiście wyrażenie logP Q nie jest określone.Z praktycznego punktu widzenia nie jest to żadne ograniczenie, gdyż mającopublikowane P oraz Q wiadomo, że odpowiadający im ECDLP jest roz-wiązywalny. Druga sprawa którą chcemy podkreślić jest niejednoznacznośćrozwiązania. Dokładniej jeżeli istnieje n takie, że n = logP Q wówczas ta-kich rozwiązań jest nieskończenie wiele, w związku ze skończonością grupyE(Fp). Tak naprawdę wartość logP Q jest elementem zbioru Z/(s), gdzies jest rzędem punktu P , co więcej jeśli n0 jest jakimkolwiek rozwiązaniemECDLP to również są nimi wszystkie liczby postaci n = n0+ks, k ∈ N. Za-letą spojrzenia na opisywane zagadnienie w ten sposób jest to, że dyskretnylogarytm eliptyczny spełnia równanie:

logP (Q1 +Q2) = logP (Q1) + logP (Q2), dlaQ1, Q2 ∈ E(Fp).

Należy zwrócić uwagę na fakt, że znaki plus po dwóch stronach równo-ści oznaczają dwa różne działania w różnych strukturach algebraicznych,odpowiednio w E(Fp) oraz Z/(s). Dodatkowo zdefiniujemy w tym miej-scu pojęcia stopnia zanurzeniowego i anomalnej krzywej eliptycznej, którebędą wykorzystywane przy omawianiu wymagań stawianych bezpiecznymkryptograficznie krzywym eliptycznym.

Definicja 5. Niech E będzie krzywą eliptyczną nad ciałem Fq, gdzieq = pm, gdzie p jest liczbą pierwszą. Dodatkowo niech r będzie najwięk-szym dzielnikiem pierwszym #E(Fq). Stopniem zanurzeniowym (embededdegree, MOV) krzywej eliptycznej E(Fq) nazywamy najmniejsza liczbę na-turalną l taką, że zachodzi

r|(ql − 1).

Należy zwrócić uwagę, że dla r = p stopień zanurzeniowy nie istnieje.

Definicja 6. Krzywą eliptyczną E zdefiniowaną nad Fq nazywamy ano-malną, gdy największy dzielnik pierwszy r rzędu grupy punktów #E(Fq)jest równy charakterystyce ciała Fq.

4.2. Wymagania bezpieczeństwa

Wszystkie kryptosystemy oparte o krzywe eliptyczne bazują na trud-ności obliczenia logarytmu dyskretnego w grupie punktów krzywej eliptycz-nej ECDLP. Dlatego też wymagania bezpieczeństwa w ogromnym stopniu

71

Page 72: Kryptologia i Cyberbezpieczenstwo nr 6

J. Gawinecki, P. Bora, M. Jurkiewicz, T. Kijko

są związane z istniejącymi algorytmami służącymi do wyznaczania loga-rytmu dyskretnego na krzywych eliptycznych. Część z tych algorytmówpozwala także na obliczanie logarytmu dyskretnego w grupie multiplika-tywnej ciała skończonego i w addytywnej grupie jaką jest jakobian krzywejhipereliptycznej. Warto w tym miejscu opisać krótko wybrane algorytmy,gdyż ich charakterystyka posłuży nam do zdefiniowania wymaganych wła-sności jakimi powinna cechować się bezpieczna krzywa eliptyczna.

1. Pełne przeszukanie (atak brutalny). Jeżeli szukamy takiej wartości cał-kowitej α, dla której zachodzi Q = [α]P , to możemy dla kolejnych βod 1 obliczać punkty na krzywej R = [β]P i sprawdzać, czy R = Q.Jeśli równość zajdzie, to szukana wartość α jest równa aktualnej warto-ści β. Atak ten wymaga w najgorszym przypadku wyznaczenia wszyst-kich elementów grupy generowanej przez punkt P .

2. Meroda ρ-Pollarda. Metoda ta została przedstawiona przez Pollarda(patrz [12]). Opiera się ona na paradoksie dnia urodzin. W algorytmietym dwa elementy grupy B (w naszym przypadku dwa punkty krzywejeliptycznej) poruszają się z różną „prędkością” po pseudolosowej tra-jektorii, aż do momentu znalezienia się w cyklu i dogonienia elementu„wolniejszego” przez element „szybszy”3. Metoda ta wymaga w przy-bliżeniu pierwiastka z #B operacji w grupie. Przyjmując założenie, że2128 operacji nie uda się wykonać w rozsądnym czasie, to wymagamy,aby #B > 2256.

3. Metoda Pohliga-Hellmana. Metoda ta pozwala na zredukowanie pro-blemu obliczenia logarytmu dyskretnego w grupie E(Fq), której rządrozkłada się na czynniki pierwsze postaci #E(Fq) =

∏paii do wy-

znaczenia logarytmu dyskretnego w podgrupach o rzędach równych pi(patrz [9]). Wynika z tego, że problem logarytmu dyskretnego w grupieE(Fq) jest tak trudny, jak problem logarytmu dyskretnego w podgru-pie rzędu r, gdzie r jest równe największemu pi. Dlatego też zalecanejest aby #E(Fq) był liczbą pierwszą, albo #E(Fq) = k · r, gdzie r jestliczbą pierwszą a k jest małe (np. mniejsze niż 5).

4. Metoda wykorzystująca anomalne krzywe eliptyczne. W 1998 Semaevprzedstawił metodę o złożoności wielomianowej (patrz [14]) pozwala-jącą na sprowadzenie problemu logarytmu dyskretnego w grupie E(Fq)krzywej anomalnej do problemu wyznaczenia wielokrotności w addy-tywnej grupie ciała Fq. Ruck rozwiną tę metodę dla przypadku krzy-wych hipereliptycznych ([13]). Należy więc unikać stosowania krzy-wych anomalnych.

3 Opis dotyczy jednej z wersji tego algorytmu (wersji nie wymagającej pamiętaniatrajektorii). Istnieją wersje tego algorytmu w których po pseudolosowej trajekto-rii porusza się tylko jeden punkt, jednak wymagają one pamiętania punktów natrajektorii.

72

Page 73: Kryptologia i Cyberbezpieczenstwo nr 6

Zastosowanie krzywych eliptycznych do konstrukcji bezpiecznych algorytmów . . .

5. Atak MOV i Freya-Rucka. Menezes, Okamoto i Vanstone (patrz [8])oraz Frey i Ruck (patrz [3]) pokazali, że jeżeli dla krzywej eliptycznejE(Fq) o rzędzie podzielnym przez dużą liczbę pierwszą r istnieje sto-pień zanużeniowy l, to istnieje homomorfizm grup z podgrupy E(Fq)o rzędzie r w podgrupę grupy multiplikatywnej ciała Fql . W przy-padku, gdy l jest małe (nie większe niż 50), zamiast wyznaczać loga-rytm dyskretny w E(Fq), to po przekształceniu szybciej otrzymamyrezultat dla podgrupy grupy F∗ql .

6. Ataki typu „cover”. Ataki tego typu bazują na zaproponowanej przezFreya (patrz [2]) idei, że dla pewnych (nie wszystkich) krzywycheliptycznych E (Fqm) istnieją krzywe hipereliptyczne C (Fq) takie, żegrupa punktów E (Fqm) jest homomorficzna z jakobianem krzywejC (Fq). W przypadku, gdy genus krzywej C jest nieco większy od m,to obliczeniowo opłacalne jest przejście (przy pomocy homomorfizmu)z grupy punktów krzywej E do jakobianu krzywej C, i w tej grupiewyznaczenie logarytmu dyskretnego. Aby uniknąć takiej sytuacji za-lecane jest, aby unikać krzywych eliptycznych (w ogólnym przypadkuhipereliptycznych), dla których stopień rozszerzenia ciała bazowegom jest mały. Sugerowane jest aby stosować krzywe zdefiniowane nadciałem prostym Fp albo nad F2m z m będącym liczbą pierwszą.

Podsumowując powyższe rozważania można określić, jakimi parametramipowinna charakteryzować się bezpieczna kryptograficznie krzywa elip-tyczna. Są nimi:

1. q powinna być liczbą pierwszą (q = p) alboq = 2m i m jest liczbąpierwszą.

2. Liczba r powinna być liczbą większą niż 2256.3. Liczba r nie może dzielić q.4. Stopień zanurzenia l powinien być większy od 50.

Opis warunków bezpieczeństwa stawianych przed krzywymi eliptycz-nymi w aspekcie zastosowań kryptograficznych oraz zalecane do wykorzy-stania krzywe można znaleść w [1], [11].

Dodatkowo zaleca się, aby iloraz rzędu krzywej #E(Fq) przez r (ozna-czony przez k) nie powinien przekroczyć 4.

4.3. Przykłady bezpiecznych krzywych eliptycznych

Przedstawimy teraz przykłady krzywych eliptycznych do zastosowańkryptograficznych (spełniających wymagania bezpieczeństwa). Przykładyte zostały wyznaczone zarówno dla przypadku, gdy krzywa eliptyczna zde-finiowana jest nad ciałem charakterystyki 2 jak i ciałem prostym.

73

Page 74: Kryptologia i Cyberbezpieczenstwo nr 6

J. Gawinecki, P. Bora, M. Jurkiewicz, T. Kijko

4.3.1. Krzywe eliptyczne nad ciałami charakterystyki 2

Niech E(F2m) będzie krzywą eliptyczną na ciałem F2m opisaną rów-naniem (5). Wtedy możemy sprowadzić równanie tej krzywej do jednegoz dwóch równań

E1(F2m) : y2 + xy = x3 + b2x2 + b6, (gdy a1 = 0),

alboE2(F2m) : y2 + b3y = x3 + b4x+ b6, (gdy a1 = 0).

Krzywe eliptyczne E(F2m) i E1(F2m) (albo E(F2m) i E2(F2m)) są izomor-ficzne, a także izomorficzne są ich grupy punktów.

Na potrzeby praktycznych zastosowań szukaliśmy krzywych eliptycz-nych E(F2281) o równaniu:

E(F2281) : y2 + xy = x3 + b6, (6)

gdzie F2281 ∼= F2[t]/(f(t)), przy czym wielomian f jest nieprzywiedlny nadF2281 (patrz Twierdzenie 3) i ma postać

f(t) = t281 + t280 + t278 + t277 + t276 + t273 + t272 + t262 + t261 + t260

+ t257 + t256 + t230 + t229 + t228 + t225 + t224 + t217 + t216

+ t214 + t213 + t212 + t209 + t208 + t198 + t197 + t196 + t193

+ t192 + t153 + t152 + t150 + t149 + t148 + t145 + t144 + t134

+ t133 + t132 + t129 + t128 + t25 + t24 + t22 + t21 + t20

+ t17 + t16 + t6 + t5 + t4 + t+ 1.

Wyznaczone zostały trzy krzywe eliptyczne zdefiniowane nad wybranymciałem opisane równaniem (6) przedstawione w Tabeli 1. Współczynniki b6w równaniach krzywych zostały zapisane w postaci heksadecymalnej4.

4.3.2. Krzywe eliptyczne nad ciałem prostym

Na potrzeby praktycznych zastosowań szukaliśmy krzywych eliptycz-nych E(Fp) o równaniu:

E(Fp) : y2 = x3 − 3x+ b, (7)

4 Oznaczenia współczynników r i k jak w podrozdziale 4.2.

74

Page 75: Kryptologia i Cyberbezpieczenstwo nr 6

Zastosowanie krzywych eliptycznych do konstrukcji bezpiecznych algorytmów . . .

Tabela 1

Bezpieczne krzywe eliptyczne nad ciałem F2281

Krzywa eliptyczna 1.

b6 0xC89B77ED7DAC9E3F00298E09C1ABD4546401E1EDC2\\219265826B6E638788C3C6BDECF

r 97133444611286453545973095341175945332120350\\6612204843939922802337458667070280781933 ≈ 2279

k 2

Krzywa eliptyczna 2.

b6 0x3029C1EEA22882E032CC968936E9A79CF49517B3D2\\230C2614A0C495D2E6C84C9A199C

r 97133444611286453545973095341175945332120249\\2392950959374410519011296130835516994247 ≈ 2279

k 2

Krzywa eliptyczna 3.

b6 0x23B5B7F7D2BE7EA4E097515298455DBFC7E3228A20\\B3A37B8C8B52B76174B95E0D2147

r 97133444611286453545973095341175945332120292\\7759769823015633823402068717958858419181 ≈ 2279

k 2

gdzie p = 2288 − 2224 − 264 − 1.Wyznaczone zostały trzy krzywe eliptyczne zdefiniowane nad wybra-

nym ciałem opisane równaniem (7) przedstawione w Tabeli 2.

5. Praktyczna realizacja arytmetyki na krzywycheliptycznych

Główną operacją w systemach wykorzystujących technologię kluczapublicznego na krzywych eliptycznych jest wyznaczenie krotności punktu[k]P , gdzie P jest punktem krzywej eliptycznej a k liczbą całkowitą. Dorealizacji tego zadania należy rozpatrzyć obliczenia w trzech warstwach:

• w warstwie obliczeń w ciele charakterystyki 2 lub p szybkie mnożeniew ciele,

• w warstwie reprezentacji krzywej, dla ominięcia czasochłonnego licze-nia wielokrotnego inwersji elementu w ciele,

• w warstwie metod wyznaczania krotności punktu.

75

Page 76: Kryptologia i Cyberbezpieczenstwo nr 6

J. Gawinecki, P. Bora, M. Jurkiewicz, T. Kijko

Tabela 2

Bezpieczne krzywe eliptyczne nad ciałem Fp

Krzywa eliptyczna 1.

b 46434666704580341340259055902747977740358974\\5439209108137114490874441425880915297773789

r 49732323640978664212842230147967020030578915\\2828912872661660851876130475251591595746581 ≈ 2288

k 1

Krzywa eliptyczna 2.

b 14732881112350622874811312589591370839680442\\4310531207644440883289019529784816272113060

r 49732323640978664212842230147967020030578916\\2825746325931843590541573240289799851999751 ≈ 2288

k 1

Krzywa eliptyczna 3.

b 20137344272582920889432431100201652193397174\\4945342080230360289378164419682769390517574

r 49732323640978664212842230147967020030578916\\6175721646729571266331517325646376703118329 ≈ 2288

k 1

W warstwie obliczeń w ciele najistotniejsze jest mnożenie modularne. Dlarozwiązań nad ciałem charakterystyki 2 wykorzystuje się np. algorytm Ka-ratsuby (patrz [7]) lub mnożenia elementów przekształconych do postacibaz normalnych. Dla rozwiązań nad ciałem charakterystyki p wykorzy-stuje się najczęściej przekształcenie czynników mnożenia do postaci resi-duów i realizacji obliczeń np. z wykorzystaniem algorytmu Montgomery’ego(patrz [10]).

W warstwie reprezentacji krzywej przechodzi się z postaci afinicznejna reprezentację krzywej w jednej z postaci rzutowych. Dla rozwiązań nadciałem charakterystyki 2 wykorzystuje się najczęściej postać współrzęd-nych rzutowych Lopeza-Dahaba. Dla rozwiązań nad ciałem charakterystykip > 2 postać współrzędnych rzutowych ważonych nazywana jest równieżjakobianowymi.

W warstwie metod wyznaczania krotności punktu spotyka się metody:

• binarną,• dodawania-odejmowania,• tzw. „complementary recording” (gdy wartość k zapisana w NKB po-

siada dużą liczbę jedynek),

76

Page 77: Kryptologia i Cyberbezpieczenstwo nr 6

Zastosowanie krzywych eliptycznych do konstrukcji bezpiecznych algorytmów . . .

• 2r-arna,• okna w-szerokiego,• tzw. „drabina Montgomery’ego”,• mnożenia skalarnego Montgomery’ego,• łańcuchów dodawania-odejmowania punktu,• z wykorzystaniem reprezentacji Zeckendora liczby k,• z dzieleniem punktu,• skalarną dla obliczeń typu [k1]P + [k2]Q,• okienek z rozwinięciem znakowym m-arnym.

Dla porównania efektywności wykorzystania powyższych rozwiązań częstow literaturze spotyka się zestawienia dotyczące kosztów – ilości mnożeń dlarealizacji konkretnej krotności punktu, jednak należy tu również uwzględ-nić bezpieczeństwo implementacji. Tu jedynie dwie ostatnie warstwy grająszczególną rolę. W warstwie reprezentacji krzywej należy wybrać rozwią-zanie oferujące równowagę pomiędzy ilością operacji dla podwajania i do-dania punktu na krzywej, natomiast w warstwie liczenia krotności moż-liwość ukrycia charakterystyki bitów obliczanej krotności. Tu szczególniepredestynowane są rozwiązania naturalnie bezpieczne, jak np. mnożeniaskalarnego Montgomery’ego.

6. Podsumowanie

Z powyższych rozważań płyną naturalne wnioski dotyczące doborukrzywych eliptycznych do konstrukcji bezpiecznych algorytmów o nie opar-tych. W przypadku praktycznych implementacji tych algorytmów wartozwrócić uwagę na realizacje sprzętowe, gdyż

• można efektywnie realizować rozwiązania klucza publicznego oparte nakrzywych eliptycznych w oparciu o platformy procesorowe lub struk-tury programowalne, osiągając bardzo duże przepływności,

• można wyznaczyć np. krotność punktu w czasie ok 5 ms w przypadkusystemu budowanego nad ciałem F2m z m rzędu 400 (m musi być liczbąpierwszą) i implementację koprocesora w strukturze programowalnej,

• można realizować obliczenia w sposób bezpieczny i odporny na atakitypu „side channel”.

Literatura

[1] Certicom Research. SEC 2: Recommended Elliptic Curve Domain Pa-rameters, 2010.

77

Page 78: Kryptologia i Cyberbezpieczenstwo nr 6

J. Gawinecki, P. Bora, M. Jurkiewicz, T. Kijko

[2] G. Frey, How to disguise an elliptic curve (Weil descent), Talk atECC’98, Waterloo, 1998.

[3] G. Frey and H.-G. Ruck, A remark concerning m-divisibility andthe discrete logarithm in the divisor class group of curves, Math.Comp., 62(206):865–874, 1994.

[4] J. Gawinecki, J. Szmidt, Zastosowanie ciał skończonych i funkcjiboolowskich w kryptografii, BelStudio, 2001.

[5] D. Hankerson, A. Menezes and S. Vanstone, Guide to EllipticCurve Cryptography, Springer, 2004.

[6] R. Lidl and H. Niederreiter, Introduction to Finite Fields andTheir Applications, Cambridge University Press, revised edition, 1994.

[7] A. Karatsuba and Y. Ofman,Multiplication of Multidigit Numberson Automata, Soviet Phys. Doklady 7(7):595596, 1963.

[8] A.J. Menezes, T. Okamoto, and S.A. Vanstone, Reducing ellip-tic curve logarithms to logarithms is a finie field, IEEE Trans. Infor-mation Theory, 39(5):1639–1646, 1993.

[9] S.C. Pohlig and M.E. Hellman, An improved algorithm for com-puting logarithms over gf(p) and its cryptographic significances, IEEETrans. Information Theory, IT-24(1):106–110, 1978.

[10] P.L. Montgomery, Modular multiplication without trial division,Mathematics of Computation, 78:315–333, 1985.

[11] PKN, PN-ISO/IEC 15946-1. Technika informatyczna – Techniki za-bezpieczeń – Techniki kryptografii oparte na krzywych eliptycznych –Część 1: Postanowienia ogólne, 2005.

[12] J.M. Pollard, Monte carlo methods for index computation (mod p),Math. Comp., 32(143):918–924, 1978.

[13] H.-G. Ruck, On the discrete logarithm in the divisor class group ofcurves, Math. Comp., 68(226):805–806, 1999.

[14] I. A. Semaev, Evaluation of discrete logarithms in a group ofp-torsion points of an elliptic curve in characteristic p, Math. Comp.,67(221):353–356, 1998.

[15] R. Schoof, Elliptic curves over finite fields and the computation ofsquare roots mod p, Math. Comp., 44(170):483–494, 1985.

[16] R. Schoof, Counting points on elliptic curves over finite fields, J.Theor, Nombres Bordeaux, 7(1):219–254, 1995. Les Dix-huitiemes Jo-urnees Arithmetiques (Bordeaux, 1993).

[17] L. C. Washington, Elliptic Curves: Number Theory and Cryp-tography, Discrete Mathematics and Its Applications. Chapman &Hall/CRC, 2003.

78

Page 79: Kryptologia i Cyberbezpieczenstwo nr 6

Zastosowanie krzywych eliptycznych do konstrukcji bezpiecznych algorytmów . . .

APPLICATIONS OF ELLIPTIC CURVES FORCONSTRUCTION OF SECURE CRYPTOGRAPHIC

ALGORITHMS AND PROTOCOLS

Abstract. The main purpose of this paper is to present some methods of choosingsecure ECs for construction of cryptographical protocols and hardware implementationof coprocesor that performs aritmetical operations over this set of algebraic curves.

Keywords: elliptic curve, embedding degree, discrete logarithm, point multiplication.

Page 80: Kryptologia i Cyberbezpieczenstwo nr 6
Page 81: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych eliptycznychz podgrupą danego rzędu i z danym pierścieniem

endomorfizmów

Robert Dryło∗, Zbigniew Jelonek∗∗

∗ Szkoła Główna Handlowa, Aleja Niepodległości 162, 02-554 Warszawa∗,∗∗ Instytut Matematyczny PAN, ul. Śniadeckich 8, 00-950 Warszawa

[email protected] [email protected]

Streszczenie. Metoda mnożeń zespolonych (CM metoda) pozwala skonstruowaćkrzywą eliptyczną nad ciałem skończonych, której pierścień endomorfizmów jest ordyn-kiem maksymalnym w ciele urojonym kwadratowym o odpowiednio małym wyróżniku.Stosując CM metodę Lay i Zimmer oraz Broker i Stevenhagen podali metodę konstru-owania krzywej eliptycznej danego rzędu n nad pewnym ciałem prostym. Ich metoda maheurystycznie wielomianowy czas działania, jeśli n nie ma zbyt wielu dzielników pierw-szych. W tym opracowaniu pokażemy, że w analogiczny sposób można skonstruowaćkrzywą eliptyczną, która zawiera podgrupę danego rzędu r i ma dany pierścień endo-morfizmów o odpowiednio małym wyróżniku. Przy pewnych heurystycznych założeniachmetoda ma wielomianowy czas działania, jeśli r jest liczbą pierwszą.Słowa kluczowe: krzywe eliptyczne danego rzędu, CM metoda, algorytm Cornacchii,pierścień endomorfizmów.

1. Wstęp

Metoda mnożeń zespolonych (CM metoda) pozwala konstruowaćkrzywe eliptyczne rzędu n nad ciałem skończonym Fq, których pierścieńendomorfizmów jest ordynkiem w ciele urojonym kwadratowym K =Q(√−d) o odpowiednio małym wyróżniku. CM metoda została wprowa-

dzona do zastosowań w [1], aby przyspieszyć generowanie krzywych elip-tycznych używanym przy dowodzeniu pierwszości.

W kryptografii najczęściej stosuje się krzywe eliptyczne, których rządn jest liczbą pierwszą lub r = n/h jest liczbą piewszą dla małego h. Je-den z problemów, którego rozwiązanie opisali Lay i Zimmer [12], dotyczykonstruowania krzywej eliptycznej danego rzędu n nad pewnym ciałemprostym Fp. Poszukiwanie takiego ciała polega na sprawdzaniu dla kolej-nych liczb bezkadratowych d czy równanie N(α) = αα = n ma rozwiązaniaα ∈ OK , takie że p = N(α+ 1) jest liczbą pierwszą, gdzie OK jest pierście-niem liczb algebraicznych całkowitych w K = Q(

√−d). Jeśli otrzymamy

liczbę pierwszą p, to istnieje krzywa eliptyczna E/Fp rzędu n, którą możnaskonstruować stosując CM metodę jeśli d jest odpowiednio małe. Brokeri Stevenhagen [4] pokazali, że można oczekiwać znalezienia liczby pierwszej

Page 82: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło, Z. Jelonek

p dla d = O(ln2 r) i podali dokładny opis algorytmu rozwiązującego tenproblem, który ma koszt wielomianowy dla liczb n, których liczba dzieln-ników pierwszych jest ≤ ln lnn.

W tym opracowaniu zajmujemy się następującym analogicznym pro-blem:

Problem 1.1. Niech K = Q(√−d) będzie ciałem urojonym kwadratowym

oraz r liczbą pierwszą. Skonstruować krzywą eliptyczną E nad pewnymciałem prostym Fp, która zawiera podgrupę rzędu r i End(E) = OK .

Krzywe z danym pierścieniem endomorfizmów mogą być użyteczneprzy mnożeniu punktów przez skalary. Dla krzywych, które mają efek-tywnie obliczalne endomorfizmy istnieją efektywniejsze metody mnożeniapunktów [9], [8], [10]. Na przykład, krzywe y2 = x3+a i y2 = x3+ax mająodpowiednio automorfizmy postaci (x, y)→ (ζ3x, y) i (x, y)→ (−x, iy).

Poszukiwanie rozwiązania Problemu 1.1 polega na sprawdzaniu dlakolejnych h ∈ N czy równanie N(α) = hr ma rozwiązanie α ∈ OK ,takie że p = N(α + 1) jest liczbą pierwszą. Jeśli to równanie ma roz-wiązania dla h < r, to r musi rozpadać się w K. Wówczas przy pew-nych heurystycznych założeniach można oczekiwać znalezienia rozwiąza-nia dla h ≤ O(

√d ln1+ε(

√dr)), gdzie ε > 0 (Stwierdzenie 5.1). Metodę

można w oczywisty sposób rozszerzyć na liczby r, które nie są pierwsze,ale znana jest faktoryzacja r, która jest wymagana do rozwiązania równa-nia N(α) = hr.

W rozdziałach 2 i 3 przypominamy podstawowe fakty o krzywych elip-tycznych i CM metodzie. W rozdziale 4 szczegółowo opisujemy metodęrozwiązywania równania N(α) = n. W rozdziale 5 podajemy algorytm ro-wiązywania Problemu 1.1. Podajemy również prostszą wersję gdy OK jestdziedziną ideałów głównych. Wykorzystaliśmy program Magma, aby zaim-plementować te algortymy i podać przykłady krzywych.

2. Krzywe eliptyczne

Endomorfizm Frobeniusa stopnia q na krzywej eliptycznej E/Fq speł-nia równanie charakterystyczne

π2q − tπq + q = 0,

gdzie liczbę t ∈ Z nazywamy śladem krzywej. Ślad ma następujące własno-ści:

(1) |t| ≤ 2√q

82

Page 83: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych eliptycznych . . .

(2) #E(Fq) = q + 1− t.

W szczególności stąd (√q − 1)2 ≤ #E(Fq) ≤ (

√q + 1)2.

Krzywą E nazywamy zwykłą jeśli gcd(t, q) = 1. Jest to równo-ważne, temu że krzywa ma niezerowe punkty p-torsyjne nad Fp. Krzywą,która nie jest zwykła nazywamy spersingularną. Jeśli E jest krzywą zwy-kłą, to wyróżnik równania charakterystycznego możemy zapisać w postacit2 − 4q = −dy2, gdzie d ∈ N jest liczbą bezkwadratową oraz y ∈ Z. Wów-czas endomorfizm Frobeniusa możemy utożsamiać z jednym z pierwiastkówπ = t±y

√−d2 równania charakterystycznego oraz pierścień endomorfizmów

End(E) jest izomorficzny z ordynkiem w ciele urojonym kwadratowymK = Q(

√−d).

Ordynki w K są podpierścieniami = Z pierścienia liczb algebraicznychcałkowitych. Dla ustalonego c ∈ Z>0 są to podpierścienie postaci

Oc =

x+ yc

√−d | x, y ∈ Z,d ≡ 1, 2mod 4

x+ yc1 +√−d

2| x, y ∈ Z,d ≡ 3mod 4.

(2.1)

Jeśli c1 | c2, to Oc2 ⊂ Oc1 . Ordynek maksymalny O1, który oznaczamyprzez OK , składa się z liczb algebraicznych całkowitych w K.

Niech N : K → Q będzie normą, N(α) = αα = x2 + dy2 dla α =x+ y

√−d, x, y ∈ Q. Jeśli π ∈ OK odpowiada endomorfizmowi Frobeniusa,

to (x− π)(x− π) = x2 − tx+ q. Stąd t = π + π,

q = N(π)

oraz z (2) wynika, że#E(Fq) = N(π − 1). (2.2)

Odwrotnie z Twierdzenia 3.1 wynika, że jeśli π ∈ OK spełnia ππ = qi t = π + π jest względnie pierwsza z q, to istnieje krzywa eliptycznazwykła E/Fq, taka że End(E) = OK oraz π odpowiada jej endomorfizmowiFrobeniusa. W szczególności rzędy krzywych eliptycznych zwykłych nad Fqsą dokładnie liczbami n ∈ [(

√q − 1)2, (

√q + 1)2], takimi że gcd(t, q) = 1,

gdzie t = q + 1− n.

Uwaga. Powyższy fakt jest szczególnym przypadkiem ogólnego twierdze-nia Hondy i Tate, które mówi, że istnieje bijekcja między klasami isoge-nicznych rozmaitości abelowych prostych nad Fq, a klasami sprzężonych

83

Page 84: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło, Z. Jelonek

liczb q-Weila (liczbę algebraiczną całkowitą π nazywamy liczbą q-Weila,jeśli q = φ(π)φ(π) dla każdego zanurzenia φ : Q(π)→ C).

Jeśli wiemy, że pierścień endomorfizmów krzywej eliptycznej E/Fq jestordynkiem w ciele urojonym kwadratowym K = Q(

√−d), to możemy dużo

efektywniej niż przy pomocy algorymu Schoofa [13], [14], obliczyć rządkrzywej #E(Fq). Możemy znalezć rozwiązania równania N(π) = q w OKi sprawdzić czy dla losowo wybranego punktu P ∈ E(Fq) mamy nP = 0,gdzie n = N(π − 1). Wówczas z dużym prawdopodobieństwem n jest rzę-dem E.

3. Metoda mnożeń zespolonych

Następujące twierdzenie jest wnioskiem z twierdzeń Deuringa.

Twierdzenie 3.1. Niech K = Q(√−d) będzie ciałem urojonym kwadra-

towym oraz p liczbą pierwszą. Wówczas istnieją krzywe eliptyczne zwykłenad Fp, takie że End(E) = OK dokładnie wtedy, gdy p rozpada się w K.Takie krzywe istnieją nad ciałem Fq, gdzie q = pm i m > 0 jest najmniejsząliczbą, taką że ideał Pm jest główny, gdzie P ⊂ OK jest ideałem pierw-szym leżącym nad p (wówczas generator Pm odpowiada endomorfizmowiFrobeniusa πq). Wielomian klas Hilberta HK(x)mod p ma w Fq wszystkiepierwiastki, które są dokładnie j-niezmiennikami krzywych eliptycznychE/Fp z End(E) = OK .

Następujący algorytm pozwala skonstruować krzywe eliptyczne zwy-kłe danego rzędu, takie że End(E) jest ordynkiem maksymalnym w cieleurojonym kwadratowym K = Q(

√−d) o odpowiednio małym wyróżniku.

Algorytm 3.2. Input: Potęga liczby pierwszej q, n ∈ [(√q−1)2, (

√q+1)2],

taka że t2− 4q = −dy2, gdzie d, y ∈ Z>0, d = 1, 3 jest bezkwadratowa orazt = q + 1− n.Output: Krzywa eliptyczna zwykła E/Fq rzędu n.

(1) Oblicz wielomian klas Hilberta HK(x) ∈ Z[x] ciała urojonego kwadra-towego K = Q(

√−d).

(2) Wyznacz pierwiastek j ∈ Fq wielomianu HK(x)mod p.(3) Utwórz krzywą eliptyczną E : y2 = x3 + ax− a, gdzie a = 27j

4(1728−j) .(4) Wybierz losowy punkt P ∈ E(Fq).(5) Jeśli nP = 0, zwróć E. W przeciwnym razie zwróć skręcenie kwadra-

towe E′ : y2 = x3 + ac2x − ac3, gdzie c ∈ Fq∗ \ (F∗q)2 jest nieresztąkwadratową w Fq.

84

Page 85: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych eliptycznych . . .

Uwaga 3.3. Powyższy algorytm można łatwo rozszerzyć dla d = 1, 3 do-łączając wzory na skręcenia takich krzywych. W tym przypadku istniejealternatywna prosta metoda konstruowania krzywych rzędu n. Dla d = 1, 3mamy odpowiednio OK = Z[i] lub Z[ζ3]. Są to dziedziny ideałów głównych,więc liczba klas ciała K jest równa jeden. Stąd wszystkie krzywe eliptycznez End(E) = Z[i] lub Z[ζ3] są izomorficzne. Krzywe

(1) Ea : y2 = x3 + ax,(2) Ea : y2 = x3 + a

mają automorfizmy odpowiednio stopnia 4 i 3 dane wzorem (x, y) 7→(−x, iy) i (x, y) 7→ (ζ3x, y). Stąd jeśli te krzywe są zwykłe, to odpowied-nio End(Ea) = Z[i] lub End(Ea) = Z[ζ3]. Krzywe (1) i (2) są zwykłenad Fp dokładnie wtedy, gdy odpowiednio p ≡ 1mod 4 lub p ≡ 1mod 3(tj. p rozpada się w Z[i] lub Z[ζ3]).

Aby w praktyce znalezć krzywą rzędu n z d = 1, 3 wystarczy naogół sprawdzać czy dla kolejnych małych a ∈ F∗q i dla losowego punktuP ∈ Ea(Fq) mamy nP = 0.

4. Rozwiązywanie równania N(α) = n

Niech K = Q(√−d) będzie ciałem urojonym kwadratowym, gdzie

d ∈ N jest liczbą bezwkadratową. Podamy własności pierścienia OK liczbalgebraicznych całkowitych w K, które pozwolą wyznaczć wszystkie roz-wiązania α ∈ OK równania N(α) = n.

Pierścień OK ma bazę OK = Z+ Zω, gdzie

ω =

√−d, d ≡ 1, 2mod 4

(1 +√−d)/2,d ≡ 3mod 4.

(4.1)

Wielomianem minimalnym ω jest

fω =

x2 + d, d ≡ 1, 2mod 4.

x2 − x+1 + d

4,d ≡ 3mod 4.

(4.2)

Wyróżnikiem ciała K jest

D =∣∣∣∣ 1 ω1 ω

∣∣∣∣2 =

− 4d,d ≡ 1, 2mod 4

− d, d ≡ 3mod 4.(4.3)

85

Page 86: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło, Z. Jelonek

Wyróżnik D jest równy wyróżnikowi wielomianu fω.Pierścień OK można traktować jako 2-wymiarową kratę dyskretną

w C. W szczególności dla n ∈ N istnieje skończenie wiele liczb α ∈ OKo module

√n, które są dokładnie rozwiązaniami równania N(α) = n.

Grupa jedności O∗K składa się z liczb α ∈ OK o normie N(α) = 1. Jestto grupa skończona, więc jedności są pierwiastkami z jedynki. Dla k-tegopierwotnego pierwiastka z jedynki ζk ∈ C ciało Q(ζk) ma stopień φ(k).Mamy φ(k) = 2 dla k = 3, 4, 6. Stąd grupa jedności jest postaci

O∗K =

± 1, d = 1, 3

± 1,±i, d = 1

± 1,±ζ3,±ζ23 ,d = 3.

Podamy teraz rozkład liczby pierwszej p na iloczyn ideałów pierwszychw OK .

(1) Jeśli fω(x)mod p ≡ (x − a1)(x − a2)mod p ma dwa różne pierwiastkiw Fp, gdzie a1, a2 ∈ Z, to p rozpada się wOK na iloczyn dwóch ideałówpierwszych. Wówczas pOK = PP , gdzie P = (p, ω−a1), P = (p, ω−a2)oraz Fp = OK/P = OK/P .

(2) Jeśli fω(x)mod p jest nierozkładalny nad Fp, to p pozostaje liczbąpierwszą w OK . Wówczas pOK = P jest ideałem pierwszym orazFp2 = OK/P .

(3) Jeśli fω(x)mod p ≡ (x − a)2mod p ma pierwiastek podwójny w Fp,gdzie a ∈ Z, to p rozgałęzia się w OK . Wówczas pOK = P 2, gdzieP = (p, ω − a) oraz Fp = OK/P .

Jeśli p jest nieparzysta, to ze wzorów na pierwiastki równania kwadrato-wego otrzymujemy, że p odpowiednio rozpada się, pozostaje pierwsza lubrozgałęzia się w OK dokładnie wtedy, gdy wyróżnik Dmod p jest resztąkwadratową, nieresztą kwadratową, lub Dmod p = 0; równoważnie symbolLegendra (Dp ) = 1,−1, 0.

Liczba p = 2 rozgałęzia się w OK dokładnie wtedy, gdy Dmod 2 ≡ 0,czyli dla d ≡ 1, 2mod 4. Jeśli d ≡ 3mod 4, to dla d = 3 + 8k wielomianfω(x)mod 2 ≡ x2+x+1mod 2 jest nierozkładalny nad F2, więc 2 pozostajeliczbą pierwszą w OK . Jeśli d = 7 + 8k, to fω(x)mod 2 ≡ x2 + xmod 2 madwa pierwiastki w F2, więc 2 rozpada się w OK .

Opiszemy teraz metodę rozwiązywania równanie N(α) = n dlaα ∈ OK .

Normą niezerowego ideału I ⊂ OK nazywamy liczbę

N(I) = #OK/I.

86

Page 87: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych eliptycznych . . .

Aby rozwiązać równanie N(α) = n wyznaczamy wszystkie ideały o normien, a następnie wybieramy z pośród nich ideały główne i ich generatory.Jeśli I jest ideałem głównym o generatorze α, to

N(I) = N(α).

Jeśli I =∏P vii jest iloczynem ideałów pierwszych, to

N(I) =∏

N(Pi)vi . (4.4)

Dla ideału pierwszego P leżącego nad liczbą pierwszą p mamy N(P ) = pjeśli p rozpada się lub rozgałęzia się w OK oraz N(P ) = p2 jeśli p pozostajepierwsza w OK .

Niech n =∏ki=1 p

nii będzie liczbą o znanej faktoryzacji, przy czym

liczby pierwsze pi są uporządkowane, tak że p1, . . . , pk1 rozpadają się wOK ,pk1+1, . . . , pk2 pozostają pierwsze w OK , oraz pk2+1, . . . , pk rozgałęziają sięw K. Niech ideały pierwsze Pi, P i leżą nad pi dla 1 ≤ i ≤ k1 oraz Pi leżąnad pi dla k1 < i ≤ k. Jeśli istnieją w OK ideały o normie n, to z (4.4) nisą parzyste dla k1 < i ≤ k2. Wówczas wszystkie takie ideały są postaci

I =∏1≤i≤k1

Puii Pni−uii

∏k1<i≤k2

Pni/2i

∏k2<i≤k

Pnii , (4.5)

gdzie 0 ≤ ui ≤ ni dla 1 ≤ i ≤ k1. Mamy (n1 + 1) · · · (nk1 + 1) ideałówo normie n. Zatem liczba takich ideałów rośnie wykładniczo wraz z liczbądzielników pierwszych n, które rozpadają się w K.Ponieważ piOK = PiP i dla 1 ≤ i ≤ k1 oraz piOK = Pi dla k1 < i ≤ k2,więc ideały o normie n możemy również zapisać w postaci

I =∏1≤i≤k1

Qni−2uii puii∏

k1<i≤k2

pni/2i

∏k2<i≤k

Pnii ,

gdzie 0 ≤ ui ≤ ⌊ni/2⌋, Qi ∈ Pi, P i dla 1 ≤ i ≤ k1.Z pośród ideałów I o normie n musimy wybrać ideały główne i znalezć

ich generatory. Ideał o normie n jest główny oraz α ∈ I jest jego genera-torem jeśli N(α) = n. Wówczas α jest liczbą w I o najmniejszej nieze-rowej normie. Traktując I jako 2-wymiarową kratę w C taką liczbę mo-żemy znalezć jako najkrótszy wektor w kracie. Stosując poniższy algorytmGaussa, analogiczny do algorytmu Euklidesa, możemy znalezć najkrótszywektor w kracie. Najpierw musimy znalezć bazę nad Z ideału I.

87

Page 88: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło, Z. Jelonek

Jeśli znamy rozkład I na iloczyn ideałów pierwszych, to możemy wy-znaczyć generatory I nad OK , a stąd generatory I nad Z. Jeśli ai + biωsą generatorami I nad Z, gdzie ai, bi ∈ Z dla 1 ≤ i ≤ s, to macierzągenerującą dla I nazywamy macierz

M =(a1 a2 . . . asb1 b2 . . . bs

). (4.6)

Jeśli pomnożymy macierz złożoną z pierwszych dwóch kolumn przez ma-cierz G ∈ GL2(Z) (

a1 a2b1 b2

)G =

(c1 c2d1 d2

), (4.7)

to a1+ b1ω, a2+ b2ω i c1+d1ω, c2+d2ω generują ten sam Z-moduł. Nieche = gcd(b1, b2) oraz x1b1 + x2b2 = e dla x1, x2 ∈ Z. Wówczas w (4.7) dlamacierzy

G =( b2e x1−b1e x2

)(4.8)

otrzymujemy d1 = 0. Stąd możemy otrzymać macierz generującą (4.6)z b1 = 0. Przez indukcję otrzymamy macierz generującą, taką żeb1, . . . , bs−1 = 0. Wówczas dla a = gcd(a1, . . . , as−1) macierzą generującą,której kolumny tworzą bazę I, jest(

a b0 c

)(4.9)

Możemy założyć, że a, c > 0 oraz 0 ≤ b < a dzieląc z resztą b przez a.Macierz generująca dla I postaci (4.9), taka że a, c > 0 i 0 ≤ b < a jest

wyznaczona jednoznacznie. Jeśli A i B są dwiema macierzami generującymitakiej postaci, to AG = B dla G ∈ GL2(Z). Stąd łatwo widać, że g21 = 0,g11 = g22 = 1 i g12 = 0.

Omówimy teraz algorytm Gaussa, który pozwala znalezć najkrótszywektor w kracie L = Zω1 + Zω2 ⊂ C, gdzie ω1, ω2 są liniowo niezależnenad R.

Algorytm jest analogiczny do algorytmu Euklidesa i przez kolejne re-dukcje bazy ω1, ω2 pozwala otrzymać bazę ω′1, ω

′2 dla L, taką że ω′1 jest

najkrótszym wektorem w L. Algorytm opiera sią na następujęcym fakcie:jeśli ω′1, ω

′2 jest bazą dla L, taką że |ω′2+mω′1| ≥ |ω′1| dla każdego m ∈ Z, to

ω′1 jest najkrótszym wektorem w L. Niech v = aω′1+bω′2 dla a, b ∈ Z będzie

niezerowym wektorem w L. Jeśli b = 0, to oczywiście |v| ≥ |ω′1|. Jeśli b = 0,

88

Page 89: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych eliptycznych . . .

to dzieląc z resztą a = bq + r, 0 ≤ r < |b|, mamy |v| = |(bq + r)ω′1 + bω′2| =|b(ω′2 + qω′1) + rω′1| ≥

∣∣|b|(ω′2 + qω′1)| − r|ω′1|∣∣ ≥ |b||ω′1| − r|ω′1| ≥ |ω′1|.

Aby otrzymać bazę ω′1, ω′2 wykonujemy następujące redukcje bazy

ω1, ω2. Załóżmy, że |ω2| ≥ |ω1|. Wówczas dla m0 = ⌊−<ω1,ω2>|ω1|2 ⌉ funk-cja |ω2 + mω1| przyjmuje minimum dla m ∈ Z. Liczba m0 jest najbliższąliczbą całkowitą pierwszej współrzędnej wierzchołka paraboli |ω2+mω1|2 =m2|ω1|2 + 2m < ω1, ω2 > +|ω2|2. Jeśli |ω2 + m0ω1| ≥ |ω1|, to ω1 jest naj-krótszym wektorem. Jeśli |ω1| > |ω2 + m0ω1|, to przyjmujemy ω2 := ω1,ω1 := ω2+m0ω1 i powtarzamy redukcję. W ten sposób otrzymujemy bazy,w których długości wektorów maleją, więc po skończonej liczbie krokówotrzymamy bazę z najkrótszym wektorem. Podobnie jak w algorymie Eukli-desa, można pokazać, że koszt tego algorytmu jest O(log2max|ω1|, |ω2|).

Algorytm 4.1. ([5, Alg. 1.3.14])Input: Krata dyskretna L = Zω1 + Zω2 ⊂ C.Output: Baza ω′1, ω

′2 kraty L, taka że ω′1 jest najkrótszym wektorem w L.

(1) Jeśli |ω1| > |ω2| przestaw ω1, ω2.(2) Połóż m0 = ⌊−<ω1,ω2>|ω1|2 ⌉.(3) Jeśli |ω2 +m0ω1| ≥ |ω1|, zwróć ω1, ω2 i zakończ algorytm.(4) Jeśli |ω2 + m0ω1| < |ω1|, połóż ω := ω2 + m0ω1, ω2 := ω1, ω1 := ω

i wróć do kroku 2.

Jeśli α ∈ I jest generatorem ideału I, to pozostałe generatory I są postaciuα dla u ∈ O∗K . Następujący algorytm wyznacza rozwiązania równaniaN(α) = n.

Algorytm 4.2. Input: Ciało urojone kwadratowe K = Q(√−d) oraz liczba

n =∏ki=1 p

nii o znanej faktoryzacji.

Output: Zbiór S = α ∈ OK : N(α) = n.

(1) Uporządkuj liczby pierwsze pi, tak że pi rozpadają się w OK dla1 ≤ i ≤ k1, pi pozostają pierwsze w OK dla k1 < i ≤ k2, pi roz-gałęziają się w OK dla k2 < i ≤ k.

(2) Niech S := ∅. Jeśli ni ≡ 1mod 2 dla pewnego k1 < i ≤ k2, zwróć Si zakończ algorytm.

(3) Wyznacz ideały pierwsze Pi, P i leżące nad pi dla 1 ≤ i ≤ k1 orazideały pierwsze Pi leżące nad pi dla k2 < i ≤ k.

(4) Połóż c0 :=∏k1<i≤k2 p

ni/2i i utwórz ideał J =

∏k2<i≤k P

nii .

(5) Dla liczb całkowitych (u1, . . . , uk1) ∈ [0, . . . , ⌊n12 ⌋]×· · ·× [0, . . . , ⌊nk12 ⌋]wykonuj:

89

Page 90: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło, Z. Jelonek

(6) Połóż c1 =∏1≤i≤k1 p

uii .

(7) Dla (Q1, . . . , Qk1) ∈ P1, P 1 × · · · × Pk1 , P k1 wykonuj:(8) Utwórz ideał I =

∏1≤i≤k1 Q

ni−2uii J

(9) Znajdz bazę I nad Z.(10) Zastosuj Algorytm 4.1 aby znalezć liczbę α′ ∈ I \ 0 o najmniejszej

normie.(11) Jeśli (c0c1)2N(α′) = n, połóż α := c0c1α

′.(12) Jeśli d = 1, 3, połóż S := S ∪ ±α.(13) Jeśli d = 1, połóż S := S ∪ ±α,±i α.(14) Jeśli d = 3, połóż S := S ∪ ±α,±ζ3α,±ζ23α.(15) Zwróć S.

Alternatywną metodę wyznaczania ideałów o normie nmożna znalezć w [4].

5. Algorytm Rozwiązujący Problem 1.1

Niech K = Q(√−d) będzie ciałem urojonym kwadratowym oraz r

liczbą pierwszą. Aby skonstruować krzywą eliptyczną E nad pewnym cia-łem prostym Fp, taką że r | #E(Fp) i End(E) = OK będziemy dla kolejnychh = 1, 2, . . . wyznaczać rozwiązania α ∈ OK równania N(α) = hr dopókinie znajdziemy takiego rozwiązania, że p = N(α + 1) jest liczbą pierwszą.Wówczas istnieje krzywa eliptyczna E/Fp rzędu hr z End(E) = OK , którąmożna skonstruować za pomocą CM metody dla odpowiednio małego d.Jeśli równanie N(α) = hr ma rozwiązanie dla h < r, to z (4.5) r musirozpadać się w K.

Stwierdzenie 5.1. Jeśli liczba pierwsza r rozpada się w K, to przy poniż-szych heurystycznch założeniach można oczekiwać znalezienia rozwiązaniaProblemu 1.1 dla h ≤ O(

√d ln1+ε(

√dr)), gdzie ε > 0.

Dowód. Z twierdzeń o liczbach pierwszych i Chebotareva o gęstości wynika,że dla dużych liczb B prawdopodobieństwo, że p ≤ B jest liczbą pierwsząrozpadającą się w K jest bliskie 1/2 lnB. Prawdopodobieństwo, że losowyideał w OK jest główny jest równe 1/hK , gdzie hK jest liczbą klas ciała K.Naturalne jest założenie, że takie samo jest prawdopodobieństwo otrzyma-nia ideału głównego w zbiorze ideałów RP , gdzie R jest ideałem pierwszymw OK leżącym nad r oraz P jest ideałem pierwszym leżącym nad liczbąpierwszą p ≤ B rozpadającą się w K. Stąd dla h ≤ B równanie N(α) = hrma rozwiązanie z prawdopodobieństwem przynajmniej 1/2hK lnB.

Jeśli α ∈ OK jest rozwiązaniem rówania N(α) = hr dla h ≤ B, toliczba p = N(α + 1) jest wielkości Br. Załóżmy również, że p jest liczbą

90

Page 91: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych eliptycznych . . .

pierwszą z takim samym prawdopodobieństwem jak losowa liczba < Br, tj.1/(lnB + ln r). Zatem liczbę pierwszą p powinniśmy średnio otrzymać dlalnB + ln r rozwiązań równania N(α) = hr. Przynajmniej tyle rozwiązań αpowinniśmy otrzymać jeśli B spełnia nierówność

B

2hK lnB≥ lnB + ln r,

skąd B > 2hK lnB(lnB + ln r). Stąd łatwo widać, że wystarczy wziąćB = O(hK ln1+ε(hKr)) dla dowolnego ε > 0. Ponieważ hK = O(

√d),

mamy B = O(√d ln1+ε(

√dr)).

Następujący algorytm znajduje rozwiązanie Problemu 1.1.

Algorytm 5.2. Input: Ciało urojone kwadratowe K = Q(√−d) oraz liczba

pierwsza r, taka że (−dr ) = 1.Output: Liczba pierwsza p oraz krzywa eliptyczna E/Fp, taka że

#E(Fp) = hr oraz End(E) = OK .

(1) Dla h = 1, 2, . . . wykonuj:(2) Zastosuj Algorytm 4.2 aby znalezć wszystkie rozwiązania α ∈ OK

równania N(α) = hr.(3) Dla każdego rozwiązania α sprawdz czy p = N(α+1) jest liczbą pierw-

szą.(4) Jeśli p jest liczbą pierwszą, zastosuj Algorytm 3.2 aby skonstruować

krzywą eliptyczną E/Fp rzędu hr.(5) Zwróć E i zakończ algorytm.

Przykład 5.3. Niech K = Q(√−2014) oraz r będzie najmniejszą liczbą

pierwszą > 2240, taką że (−2014r ) = 1, tj. r = 2240 + 897. Dla h = 5678znajdujemy krzywą eliptyczną E rzędu hr nad ciałem Fp, gdzie

p=10032157633811666223373963209218291333068320894858075506013211817709457926071.

Stosując Algorytm 3.2 znajdujemy równanie E,

E:y2=x3+48732382754611589005411440430067845033589

47143591836524675846606793111533020x

+314249191178283264520842635525194558985

4692684418427023276704645355583460341.

W tym przypadku liczba klas hK = 36. Powyższe obliczenia z wykorzysta-niem Magmy zajęły kilka sekund.

91

Page 92: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło, Z. Jelonek

Jeśli OK jest dziedziną ideałów głównych, to możemy podać prost-szy algorytm, który nie wymaga rozwiązywania równania N(α) = hr.Dowodzi się, że OK jest d.i.g dla d = 1, 2, 3, 7, 11, 19, 43, 67, 163. JeśliR = (γ) jest ideałem pierwszym leżącym nad r, to wystarczy dla kolejnychx, y = 1, 2, . . . sprawdzać czy dla β = x + yω otrzymamy liczbę pierwsząp = N(βγ + 1).

Algorytm 5.4. Input: Ciało kwadratowe urojone K = Q(√−d), takie że

OK jest d.i.g. oraz liczba pierwsza r, taka że (−dr ) = 1.Output: Krzywa eliptyczna E/Fp, taka że #E(Fp) = hr oraz

End(E) = OK .

(1) Zastosuj Algorytm 4.1 aby znalezć generator γ ideału pierwszegoR ⊂ OK leżącego nad r.

(2) Dla z := 1, 2, . . . wykonuj:(3) Dla x := z i y := 1, . . . , z − 1 lub y := z i x := 1, . . . , z − 1 wykonuj:(4) Połóż α := (x+ yω)γ, gdzie ω jest dana (4.1).(5) Jeśli d = 1, sprawdz czy p = N(uα + 1) jest liczbą pierwszą dla

u = ±1,±i.(6) Jeśli d = 3, sprawdz czy p = N(uα + 1) jest liczbą pierwszą dla

u = ±1,±ζ3,±ζ23 .(7) Jeśli d = 1, 3, sprawdz czy p = N(uα + 1) jest liczbą pierwszą dla

u = ±1.(8) Jeśli p jest liczbą pierwszą, zastosuj Algorytm 3.2 aby skonstruować

krzywą eliptyczną E/Fp rzędu N(α).(9) Zwróć E i zakończ algorytm.

Przykład 5.5. Niech K = Q(√−3) oraz r będzie najmniejszą liczbą pierw-

szą > 2240, taką że (−3r ) = 1, tj. r := 2240 + 897. Dla h = 28 znajdujemykrzywą eliptyczną E rzędu hr nad ciałem Fp, gdzie

p=49471717813794761228332330020801718456684110576225084158360341666891763503.

Stosując metodę z Uwagi 3.3 znajdujemy równanie E : y2 = x3 + 5.

Literatura

[1] A. O. L. Atkin, F. Morain, Elliptic curves and primality proving,Math. Comp. 61 (1993), 29-68.

[2] J. Belding, R. Broker, A. Enge, and K. Lauter, Com-puting Hilbert class polynomials, Algorithmic Number Theory

92

Page 93: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych eliptycznych . . .

Symposium-ANTS VIII (A. J. van der Poorten and A. Stein, eds.),Lecture Notes in Computer Science, vol. 5011, Springer, 2008, pp.282–295.

[3] R. Broker, A p-adic algorithm to compute the Hilbert class polyno-mial, Math. Comp. 77 (2008), 2417–2435.

[4] R. Broker, P. Stevenhagen, Efficient CM-constructions of ellipticcurves over finite fields Math. Comp. 76 (2007), 2161–2179.

[5] H. Cohen, A course in computational algebraic number theory, Sprin-ger Graduate Texts in Mathematics, vol. 138, 1993.

[6] D. Cox, Primes of the form x2 + ny2. Fermat, Class Field Theoryand Complex Multiplication, John Wiley & Sons (1989).

[7] A. Enge, The complexity of class polynomial computation via floatingpoint approximations, Math. Comp. 78 (2009), 1089–1107.

[8] R. Gallant, R. Lambert, S. Vanstone, Faster point multiplica-tion on elliptic curves with efficient endomorphisms, In: Kilian, J. (ed.)CRYPTO. LNCS, vol. 2139, pp. 190–200. Springer (2001).

[9] S. D. Galbraith, X. Lin, M. Scott, Endomorphisms for fasterelliptic curve cryptography on a large class of curves, J. Cryptology,24(3):446–469, 2011.

[10] N. Koblitz, CM-curves with good cryptographic properties, Proc.Crypto’91, Springer-Verlag (1992) pp. 279–287.

[11] S. Lang, Elliptic functions Springer, 1987.[12] G. Lay, H. Zimmer, Constructing elliptic curves with given grouporder over large finite fields, Algorithmic Number theory SymposiumI, Springer Lecture Notes in Computer Science, 1994. MR1322728(96a:11054).

[13] R. Schoof, Elliptic curves over finite fields and the computation ofsquare roots mod p. Math. Comp. 44, (1985), 483–494.

[14] R. Schoof, Counting points on elliptic curves over finite fields,J. Theorie des Nombres de Bordeaux 7 (1995). 219–254.

[15] J. Silverman, The Arithmetic of Elliptic Curves Springer, 1986.[16] J. Silverman, Advanced Topics in the Arithmetic of Elliptic Curves,

Springer-Verlag, GTM 151, 1995.[17] A. Sutherland, Computing Hilbert class polynomials with the Chi-nese remainder theorem, Math. Comp. 80 (2011), 501–538.

93

Page 94: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło, Z. Jelonek

CONSTRUCTING ELLIPTIC CURVES WITHA SUBGROUP OF A GIVEN ORDER ANDWITH A GIVEN ENDOMORPHISM RING

Abstract. The complex multiplication (CM) method allows one to construct an ellipticcurve over a finite field, whose endomorphism ring is the maximal order in an imaginaryquadratic field with a suitably small discriminant. Using CM method Lay-Zimmer andBroker-Stevenhagen gave a method to construct an elliptic curve of a given order n oversome prime field. Their method has a heuristic polynomial time if n has not too manyprime factors. In this paper we show that in an analogous way one can construct anelliptic curve, which contains a subgroup of a given order r and has a given endomor-phism ring with a suitably small discriminant. We give heuristic arguments, which showthat the method works in a polynomial time if r is prime.

Keywords: elliptic curves with a given order, CM method, Cornacchia’s algorithm,endomorphism ring.

Page 95: Kryptologia i Cyberbezpieczenstwo nr 6

KONSTRUOWANIE KRZYWYCH GENUSU 2Z DANYM STOPNIEM ZANURZENIOWYM

Robert Dryło

Szkoła Główna Handlowa, Aleja Niepodległości 162, 02-554 WarszawaInstytut Matematyczny PAN, ul. Śniadeckich 8, 00-950 Warszawa,

e-mail: [email protected]

Streszczenie. W kryptografii opartej na iloczynach dwuliniowych stosuje się specjalnekrzywe, dla których iloczyny dwuliniowe Weila i Tate można efektywnie obliczyć. Takiekrzywe, zwykle nazywane pairing-friendly, mają mały stopień zanurzeniowy i wymagająspecjalnej konstrukcji. W praktyce stosuje się głównie krzywe eliptyczne i hipereliptycznegenusu 2. Konstrukcje takich krzywych opierają się na metodzie mnożeń zespolonych(CM metodzie) i stąd ograniczają się do krzywych, których pierścień endomorfizmówjakobianu jest generowany przez odpowiednio małe liczby. Aby skonstruować krzywąnajpierw wyznacza się parametry jej jakobianu, które zwykle są dane przez liczby We-ila dla krzywych genusu 2, a następnie stosuje się CM metodę, aby znaleźć równaniekrzywej. Freeman, Scott i Teske zebrali i opisali w ujednolicony sposób metody konstru-owania krzywych eliptycznych z danym stopniem zanurzeniowym. Istnieje kilka różnychpodejść do konstruowania krzywych genusu 2, z których pierwsze podali Freeman, Ste-venhagen i Streng, Kawazoe-Takahashi i Freeman-Satoh. W tym opracowaniu opisu-jemy podejście oparte na idei autora, w którym wykorzystujemy opowiednie wielomianywielu zmiennych, aby jako ich wartości otrzymywać liczby Weila odpowiadające jako-bianom krzywych genusu 2 z danym stopniem zanurzeniowym. Takie podejście pozwalakonstruować zarówno krzywe genusu 2 o jakobianie absolutnie prostym oraz prostym,ale nie absolutnie prostym. Podajemy bezpośrednie wzory, które wyznaczają rodzinyparametryczne krzywych genusu 2 z danym stopniem zanurzeniowym.

Słowa kluczowe: kryptografia oparta na iloczynach dwuliniowych, krzywe z danymstopniem zanurzeniowym, iloczyny dwuliniowe Weila i Tate, CM metoda, liczby Weila.

1. Wstęp

Zastosowanie iloczynów dwuliniowych pozwoliło otrzymać nowe pro-tokoły kryptograficzne, m.in. szyfrowanie oparte na tożsamości [4], krótkiepodpisy cyfrowe [5], lub ustalanie wspólnego tajnego klucza w jednej run-dzie między trzema osobami [25]. W praktyce stosuje się iloczyny dwuli-niowe Weila lub Tate głównie na krzywych eliptycznych lub w jakobianachkrzywych hipereliptycznych genusu 2 (na ogół unika się krzywych wyższychgenusów, ponieważ w ich przypadku istnieją efektywniejsze metody rozwią-zywania problemu logarytmu dyskretnego). Dla tych zastosowań wymagasię specjalnych krzywych, zwykle nazywanych pairing-friendly, dla którychiloczyny dwuliniowe można efektywnie obliczyć. Znalezienie odpowiednichkrzywych przez losowy wybór jest praktycznie niemożliwe, dlatego takiekrzywe muszą być specjalnie konstruowane.

Page 96: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło

Podstawowym parametrem wpływającym na bezpieczeństwo i efek-tywność kryptosystemów opartych na iloczynach dwuliniowych jest sto-pień zanurzeniowy k, który jest stopniem rozszerzenia ciała zawierającegowartości iloczynu dwuliniowego na punktach r-torsyjnych. Stopień zanu-rzeniowy k musi być odpowiednio mały, aby obliczenie iloczynu było efek-tywne. Z drugiej strony k musi być tak dobrane, aby zapewnić odpowiednipoziom bezpieczeństwa, ponieważ iloczyny dwuliniowe przenoszą problemlogarytmu dyskretnego z jakobianu do ciała, gdzie może być atakowanyprzez podwykładnicze metody.

Na początku dla tych zastosowań proponowano krzywe supersingu-larne, które zawsze mają ograniczone stopnie zanurzeniowe (odpowiedniok ≤ 6, 12 dla krzywych eliptycznych i krzywych genusu 2 [29, 21]). Dlawyższych poziomów bezpieczeństwa stosuje się krzywe zwykłe, które wy-magają specjalnych konstrukcji. Konstruowanie takich krzywych przebiegaw dwóch etapach. Najpierw dla danego stopnia zanurzeniowego k wyznaczasię parametru jakobianu krzywej (w szczególności ciało Fq and którym zde-finiowana jest krzywa oraz liczbę pierwszą r, która jest rzędem podgrupyjakobianu ze stopniem zanurzeniowym k). Następnie stosuje się metodęmnożeń zespolonych (CM metodę), aby znaleźć równanie krzywej, którejjakobian ma takie parametry. W praktyce CM metoda pozwala skonstru-ować taką krzywą jeśli pierścień endomorfizmów jakobianu jest ordynkiemw CM ciele generowanym przez odpowiednio małe liczby. Dlatego w prak-tyce z góry ustala się CM ciało i tak dobiera się parametry jakobianu, abyjego pierścień endomorfizmów był ordynkiem w tym CM ciele.

Dla zastosowań chcielibyśmy orzymać krzywe, dla których rząd r pod-grupy ze stopniem zanurzeniowym k jest jak najbliższy rzędowi jakobianu,ponieważ wówczas krzywa jest zdefiniowana nad mniejszym ciałem i aryt-metyka jest efektywniejsza. Różnicę między wielkościami tych rzędów wy-raża parametr ρ. Dla krzywej C/Fq genusu g rząd jakobianu #Jac(C)(Fq)jest tej samej wielkości co qg. Zatem parametr

ρ =g log qlog r

mówi nam ile razy wielkość rzędu jakobianu jest więsza od wielkości r.Przypadek optymalny ρ ≈ 1 jest w praktyce bardzo trudny do osiągnięciai głównym celem rozwijania metod konstruowania krzywych jest otrzyma-nie jak najmniejszego ρ. Znane są przykłady krzywych supersingularnychz parametrem ρ ≈ 1. Aby zminimalizować ρ dla krzywych zwykłych sto-suje się rodziny parametryczne (tzn. parametry jakobianu otrzymuje sięjako wartości pewnych wielomianów na liczbach całkowitych). Dla krzy-wych eliptycznych konstrukcje rodzin parametrycznych z ρ = 1 są znane

96

Page 97: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych genusu 2 z danym stopniem zanurzeniowym

dla k = 3, 4, 6, 10, 12 ([34, 1, 15]). Dla wielu innych stopni zanurzenio-wych istnieją rodziny parametryczne krzywych eliptycznych z 1 < ρ < 2bliskim 1. Freeman, Scott i Teske [19] zebrali metody konstruowania krzy-wych eliptycznych z danym stopniem zanurzeniowym, podali jednolity opisi klasyfikację takich metod oraz podali rodziny o najmniejszym parametrzeρ dla k ≤ 50.

Dla krzywych genusu 2 istnieje większa różnorodność metod. Ogól-nie metody można podzielić na takie, które konstruują krzywe genusu 2o jakobianie absolutnie prostym lub prostym, ale nie absolutnie prostym(tzn., jakobian rozpada się na produkt krzywych eliptycznych nad pew-nym rozszerzeniem ciała bazowego krzywej. Stosowanie krzywych genusu2, których jakobian rozpada się już nad ciałem bazowym nie daje korzyścii może zostać sprowadzone do krzywych eliptycznych). Większość metoddla krzywych eliptycznych można uogólnić na krzywe genusu 2. Freeman[16] i Freeman, Stevenhagen i Streng [20] podali pierwsze metody kon-struowania takich krzywych (metoda [20] została podana dla dowolnychrozmaitości abelowych). Obie metody generycznie dają krzywe genusu 2o jakobianie absolutnie prostym z parametrem ρ ≈ 8. Freeman [17] uogól-nił metodę [20] na rodziny parametryczne, która w przypadku krzywychgenusu 2 pozwala konstruować rodziny z parametrem ρ < 8 (generyczniebliskim 8). Kawazoe i Takahashi [27] podali metodę konstruowania krzy-wych postaci y2 = x5+ax, których jakobian nie jest absolutnie prosty i maparametr ρ ≈ 4 lub ρ < 4 dla rodzin parametrycznych. Freeman i Satoh[18] podali ogólną metodę opartą na technice restrykcji Weila konstruowa-nia krzywych genusu 2 o jakobianie prostym, ale nie absolutnie prostym,również z parametrem ρ ≈ 4 lub ρ < 4 dla rodzin parametrycznych.

Celem tego opracowania jest rozwinięcie podejścia do konstruowaniakrzywych genusu 2 przedstawionego w pracach autora [10, 11]. Podob-nie jak w większości metod, aby skonstruować krzywą najpierw otrzymu-jemy liczbę Weila, która wyznacza parametry jakobianu, a następnie sto-sujemy CM metodę, aby skonstruować odpowiednią krzywą. Liczby We-ila będziemy otrzymywać jako wartości pewnych wielomianów na liczbachcałkowitych, których konstrukcje opisujemy w Rozdziale 3. Takie podejściepozwala jednocześcnie opisać przypadek konstruowania krzywych o jako-bianie prostym i absolutnie prostym. Przypadek generowania liczb Weiladla dowolnych rozmaitości abelowych nie jest istotnie trudniejszy niż dlapowierzchni, dlatego tam gdzie jest to możliwe opisujemy metody w ogólnejsytuacji. W Rozdziale 4 podajemy streszczenie CM metody dla krzywychgenusu 2. W Rozdziale 5 podajemy uogólnienie algorytmu Cocksa-Pinchadla krzywych eliptycznych na rozmaitości abelowe. Rozdział 6 zawierauogólnienie algorytmu Brezing-Weng [6] konstruowania rodzin krzywych

97

Page 98: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło

eliptycznych z danym stopniem zanurzeniowym na rozmaitości abelowezwykłe; podajemy bezpośrednie wzory, które wyznaczają rodziny parame-tryczne takich rozmaitości.

2. Podstawowe fakty z teorii rozmaitości abelowych

W tym rozdziale przypominamy pojęcia i twierdzenia z teorii rozma-itości abelowych, na których opierają się metody konstruowania krzywych.Ogólną teorię rozmaitości abelowych można znaleźć w książkach Mumforda[35] i [33]. Streszczenie teorii rozmaitości abelowych nad ciałami skończo-nymi znajduje się w opracowaniu Oorta [36].

Niech F będzie dowolnym ciałem charakterystyki p ≥ 0 z domknięciemalgebraicznym F. Rozmaitością abelową nad F nazywamy rozmaitość alge-braiczną zupełną A/F, która jest grupą algebraiczną. Rozmaitości abelowesą grupami abelowymi i zanurzają się w przestrzenie rzutowe.

Niech A/F będzie rozmaitością abelową wymiaru g. Dla dowolnego roz-szerzenia ciał F′/F zbiór punktów F′-wymiernych A(F′) jest grupą abelową.Niech A[r] = P ∈ A(F)|rP = 0 będzie podgrupą punktów r-torsyjnychna A, r ∈ Z \ 0. Jeśli gcd(r, p) = 1 lub p = 0, to A[r] ∼= Z2gr . Jeśli p > 0, toA[p] ∼= Zνp , gdzie 0 ≤ ν ≤ g. Rozmaitość A nazywamy zwykłą (odp. super-singularną) jeśli ν = g (odp. ν = 0). Jeśli F = Fq jest ciałem skończonym,to A jest zwykła dokładnie wtedy, gdy współczynnik ag wielomianu cha-rakterystycznego fq(x) (Twierdzenie 2.1 poniżej) jest względnie pierwszyz p.

Krzywe eliptyczne (krzywe genusu 1) są dokładnie rozmaitościamiabelowymi wymiaru 1. Rozmaitości abelowe wymiaru 2 nazywamy po-wierzchniami abelowymi. Jeśli C/F jest krzywą genusu g zawierającą punktF-wymierny, to jej jakobian Jac(C) jest rozmaitością abelową nad F wy-miaru g. Punkty F-wymierne Jac(C)(F) można utożsamiać z klasami dywi-zorów w grupie Picarda Pic0F(C) = Div0F(C)/PrinF(C) dywizorów stopnia0 nad F modulo dywizory główne nad F.

Każde odwzorowanie wymierne f : A → B rozmaitości abelowychjest regularne. Jeśli f(0) = 0, to f jest homomorfizmem grup. Mówimy, żef jest izogenią, jeśli dimA = dimB, f(0) = 0 i kerf jest skończone. Istnie-nie izogenii między rozmaitościami abelowymi jest relacją równoważności,oznaczaną A ∼ B.

Mówimy, że rozmaitość A jest prosta nad F, jeśli A nie jest izoge-niczna nad F z produktem niezerowych rozmaitości abelowych nad F. Ajest prosta dokładnie wtedy, gdy nie zawiera właściwych niezerowych pod-rozmaitości abelowych. Każda rozmaitość A jest izogeniczna nad F z pro-duktem An11 × · · · × Anss rozmaitości abelowych prostych Ai/F, które są

98

Page 99: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych genusu 2 z danym stopniem zanurzeniowym

wyznaczone jednoznacznie z dokładnością do izogenii. Mówimy, że A jestabsolutnie prosta jeśli A jest prosta nad F. Jeśli A nie jest prosta nad F,to mówimy że A rozpada się nad F. Rozmaitość może być prosta nad Fi rozpadać się nad pewnym rozszerzeniem.

Niech A ⊂ Pn będzie rozmaitością abelową wymiaru g nad ciałemskończonym Fq. Podstawową rolę w teorii rozmaitości abelowych nad cia-łami skończonymi pełni endomorfizm Frobeniusa nad Fq, πq : A → A,πq(x0, . . . , xn) = (xq0, . . . , x

qn).

Twierdzenie 2.1. (Weil) Endomorfizm Frobeniusa πq spełnia równaniecharakterystyczne o współczynnikach całkowitych postaci

fq(x) = x2g + a1x2g−1 + . . .+ agx

g + qag−1xg−1 + · · ·+ qg−1a1x+ qg = 0.

(1) Pierwiastki zespolone π ∈ C wielomianu fq(x) spełniają ππ = q, gdzie· jest sprzężeniem zespolonym.

(2) Rząd #A(Fq) = fq(1).

Z powyższego twierdzenia wynika, że rząd #A(Fq) jest wielkości qg.(Jest to główna motywacja dla stosowania krzywych wyższych genusów.Aby otrzymać grupę, której rząd jest wielkości n-bitów możemy użyć krzy-wej eliptycznej nad ciałem n-bitowym, lub jakobianu krzywej genusu 2 nadciałem n/2-bitowym.)

Kluczową rolę dla konstruowania rozmaitości odgrywa pierścień endo-morfizmów i liczby Weila. Pierścień endomorfizmów nad Fq rozmaitości A,EndFq (A), jest skończenie generowanym Z modułem rangi ≤ 4g2. Jeśli Ajest prosta nad Fq, to EndFq (A) nie zawiera dzielników zera i EndFq (A)⊗ZQjest algebrą z dzieleniem, której centrum jest podciało Q(πq). Liczbę alge-braiczną całkowitą π nazywamy liczbą q-Weila jeśli dla każdego zanurzeniaφ : Q(π) → C mamy φ(π)φ(π) = q. Z Twierdzenia 2.1 endomorfizm Fro-beniusa rozmaitości prostej nad Fq jest liczbą q-Weila.

Twierdzenie 2.2. (Honda-Tate [43]) Przyporządkowanie rozmaitościabelowej prostej nad Fq jej endomorfizmu Frobeniusa πq zadaje bijek-cję między klasami izogenicznych rozmaitości abelowym prostych nad Fq,a klasami sprzężonych nad Q liczb q-Weila.

Ciało liczbowe K nazywamy CM ciałem jeśli K jest urojonym kwa-dratowym rozszerzenim ciała totalnie rzeczywistego K0 (K0 jest totalnierzeczywiste jeśli φ(K0) ⊂ R dla każdego zanurzenia φ : K0 → C). Za-tem CM ciało K jest postaci K = K0(

√−α), gdzie α ∈ K0 i φ(α) > 0

dla każdego zanurzenia φ : K0 → R. CM ciało K ma automorfizm, ozna-czany ·, który dla każdego zanurzenia K → C jest przemienny ze sprzęże-niem zespolonym; jest to nietrywialny automorfizm grupy dwuelementowej

99

Page 100: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło

Gal(K/K0). CM ciała tworzą klasę zamkniętą na składanie ciał. W szcze-gólności domknięcie normalne CM ciała jest CM ciałem. Pierścień liczbalgebraicznych całkowitych w ciele K oznaczamy przez OK .

Twierdzenie 2.3. ([45]) Niech A/Fq będzie rozmaitością abelową prostąwymiaru g z algebrą endomorfizmów K = EndFq (A) ⊗ Q. Rozmaitość Ajest zwykła dokładnie wtedy, gdy K jest CM ciałem stopnia 2g oraz πq, πqsą względnie pierwsze w OK (tzn. generują ideał (1)). WówczasK = Q(πq),fq(x) jest wielomianem minimalnym πq oraz

#A(Fq) = fq(1) = NK/Q(πq − 1). (2.1)

Opiszemy teraz liczby Weila odpowiadające rozmaitościom zwykłymi prostym, które nie są absolutnie proste.

Twierdzenie 2.4. Niech A/Fq będzie rozmaitością zwykłą i prostą o licz-bie q-Weila π. A rozpada się nad Fqn dokładnie wtedy, gdy Q(πn) Q(π).Wówczas A jest izogeniczna z potęgą rozmaitości prostej B/Fqn odpowia-dającej liczbie qn-Weila πn.

Dowód. Pierwsza część jest szczególnym przypadkiem [23, Lemat 4]. Drugaczęść jest również dobrze znana. Powyższy fakt łatwo wynika z własnościwielomianu charakterystycznego i z twierdzeń Tate [44]. Jeśli fA,q(x) =∏2gi=1(x − πi), to fA,qn(x) =

∏2gi=1(x − πni ). Ponieważ A jest zwykła

i prosta, wielomian fA,q jest nierozkładalny, stąd liczby πi są sprzę-żone. Jeśli Q(πn) Q(π), to fA,qn jest podzielny przez wielomian mi-nimalny πn stopnia < deg fA,qn , stąd A musi rozpadać się nad Fqn . Od-wrotnie, jeśli A ∼ B1 × · · · × Bm dla rozmaitości prostych Bi/Fqn , tofA,qn = fB1,qn · · · fBm,qn . Ponieważ Bi muszą być zwykłe, fBi,qn jest nie-rozkładalny. Liczby πn1 , . . . , π

n2g są sprzężone, stąd są pierwiastkami każdego

fBi,qn . Zatem wszystkie wielomiany fBi,qn są równe i z twierdzenia Tate[44] rozmaitości Bi są isogeniczne nad Fqn , więc A ∼ Bm1 .

Wniosek 2.5. Niech A/Fq będzie rozmaitością abelową zwykłą i prostąo liczbie q-Weila π oraz niech E/Fq będzie krzywą eliptyczną o liczbieq-Weila π0.(1) Wówczas A jest izogeniczna z Eg nad Fqn dokładnie wtedy, gdy π =

ζsπ0, gdzie ζs jest s-tym pierwotnym pierwiastkiem z jedynki i s | n.(2) Jeśli 2 | s, to A rozpada się nad Fqs/2 .(3) Jeśli π = ζsπ0, to Q(π) = Q(ζs,

√−d), gdzie π0 ∈ Q(

√−d) i d ∈ Z>0

jest bezkwadratowa.

100

Page 101: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych genusu 2 z danym stopniem zanurzeniowym

Dowód. (1) Z Twierdzenia 2.4 mamy A ∼ Eg nad Fqn dokładnie wtedy,gdy πn = πn0 . Jeśli s ∈ Z>0 jest najmniejszą liczbą, taką że πs = πs0, toπ = ζsπ0 i s | n.(2) Wynika stąd, że πs/2 = ζ

s/2s π

s/20 = −πs/20 ∈ Q(π0).

(3) Ponieważ E jest zwykła, πs0 i πs0 są względnie pierwsze. Stąd πs ∈ Zi πs generuje Q(

√−d), zatem Q(π) = Q(ζs,

√−d).

3. Wyznaczanie liczb Weila w CM ciałach

Dla standardowego szyfrowania opartego na schemacie ElGamala lubpodpisów cyfrowych DSA na krzywych eliptycznych lub hipereliptycznychwymagane są grupy rzędu pierwszego lub prawie pierwszego. Najogólniej-szym wyborem krzywej jest jej wylosowanie, obliczenie rzędu i sprawdze-nie czy ma wymaganą własność. Niestety obecnie znane metody oblicza-nia rzędu jakobianu krzywych genusu 2 nad dużymi ciałami prostymi sązbyt wolne w praktyce, aby ten sposób był efektywny. Alternatywne podej-ście polega na skonstruowaniu krzywej przy pomocy CM metody. Wówczasograniczamy się do krzywych, których pierścień endomorfizmów jakobianujest ordynkiem w CM ciele generowanym przez odpowiednio małe liczby.Obecnie nie są znane żadne powody, dla których problem logarytmu dys-kretnego dla takich krzywych byłby łatwiejszy do rozwiązania. CM metodęstosujemy również, gdy chcemy skonstruować krzywe, których parametryjakobianu spełniają pewne dodatkowe własności, jak w przypadku krzy-wych z danym stopniem zanurzeniowym.

Aby skonstruować krzywą, której jakobian ma rząd pierwszy lub pra-wie pierwszy postępujemy następująco. Najpierw w ustalonym CM cieleK wybieramy liczby π ∈ OK odpowiedniej wielkości spełniające ππ ∈ Zdopóki nie znajdziemy, takiej że q = ππ jest liczbą pierwszą oraz rządn = NK/Q(π − 1) jest liczbą pierwszą lub prawie pierwszą. Następnie sto-sujemy CM metodę aby skonstrupwać krzywą, której jakobian realizujeznalezioną liczbę q-Weila π.

Pierwszy problem, który wymaga omówienia to sposób otrzymywanialiczb π ∈ OK , takich że ππ ∈ Z. Jeśli konstruujemy krzywe eliptyczne, toK = Q(

√−d) jest ciałem urojonym kwadratowym i oczywiście każda liczba

π ∈ OK ma normę ππ ∈ Z. Dla CM ciał wyższych stopni liczby π ∈ OKspełniające warunek ππ ∈ Z są zawarte w pewnym właściwym podzbiorzealgebraicznym, dlatego potrzebujemy odpowiedniej metody aby je znaleźć.Można je otrzymywać jako wartości na liczbach całkowitych wielomianóww(x1, . . . , xn) ∈ K[x1, . . . , xn] spełniających warunek

(x1, . . . , xn) = w(x1, . . . , xn)w(x1, . . . , xn) ∈ Q[x1, . . . , xn], (3.1)

101

Page 102: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło

gdzie · jest sprzężeniem zespolonym współczynników w. Omówimy terazmetody otrzymywania takich wielomianów. (W przypadku ciała urojonegokwadratowego możemy oczywiście wziąć w(x1, x2) = x1 + x2

√−d.) Omó-

wimy najpierw ideę geometrycznej metody [10] otrzymywania takich wie-lomianów dla CM ciał stopnia 4, a następnie opiszemy ogólą metodę alge-braiczną dla dowolnych CM ciał.

Niech K = Q(√−a+ b

√d0) będzie CM ciałem stopnia 4, gdzie

a, b, d0 ∈ Z>0, d0 jest bezkwadratowa i −a + b√d0 < 0 (wówczas Q(

√d0)

jest podciałem kwadratowym rzeczywistym). Niech b1, . . . , b4 ∈ OK będziebazą K/Q. Istnieją formy kwadratowe F1, F2 ∈ Q[X1, . . . , X4], takie że dlakażdego (x1, . . . , x4) ∈ Q4 mamy

(∑xibi

)(∑xibi

)= F1(x1, . . . , x4) + F2(x1, . . . , x4)

√d0.

Wówczas współrzędne w bazie bi liczb π ∈ K spełniających ππ ∈ Qodpowiadają punktom wymiernym na kwadryce

S = F2 = 0 ⊂ Q4.

Np. w bazie b1 = 1, b2 =√d0, b3 =

√−a+ b

√d0, b4 = b2b3 mamy

F2 = 2X1X2 + 2aX3X4 − bX23 − bdX24 .

Jedynym punktem osobliwym na S jest początek układu O (pochodnecząstkowe ∂F2/∂Xi, i = 1, . . . , 4, znikają tylko w O). Stąd rzutowanie z do-wolnego punktu wymiernego A = O na dowolną podprzestrzeń afinicznąM ⊂ Q4 wymiaru 3, indukuje odzorowanie biwymierne f : Q3 → S (gdzieM traktujemy jako Q3 wprowadzając układ współrzędnych). Jako punktwymierny A ∈ S możemy np. wziąć punkt odpowiadający 1 ∈ K. Jeśliotrzymane odwzorowanie biwymierne f : Q3 → S pomnożymy przez wie-lomian, który jest wspólnym mianownikiem jego współrzędnych, to otrzy-mamy odwzorowanie (f1, . . . , f4) : Q3 → S, którego współrzędne są for-mami kwadratowymi (szczegóły można znaleźć w [10]). (Mnożąc odwzoro-wanie f : Q3 → S przez dowolną funkcję otrzymujemy w dalszym ciąguodwzorowanie o wartościach w S, ponieważ S jest dana przez równaniejednorodne F2 = 0). Podobnie możemy założyć, że współczynniki form fisą całkowite. Stąd odwzorowanie wielomianowe f = (f1, . . . , f4) : Q3 → S

wyznacza wielomian w(x1, x2, x3) =∑4i=1 fi(x1, x2, x3)bi ∈ K[x1, x2, x3]

stopnia 2, który spełnia (3.1).

102

Page 103: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych genusu 2 z danym stopniem zanurzeniowym

3.1. Reflex norma

Reflex norma została wprowadzona w teorii mnożeń zespolonych roz-maitości abelowych. Jej podstawowe własności można znaleźć w książceShimury [38]. Freeman, Stevenhagen i Streng [20] i Freeman [17] wyko-rzystali reflex normę do konstruowania rozmaitości abelowych z danymstopniem zanurzeniowym. Poniżej podajemy podstawowe własności reflexnormy, których dowody można znaleźć również w wykładzie Milne [33, str.12–15].

Niech K będzie CM ciałem stopnia 2g o domknięciu normalnym K1(które również jest CM ciałem). Niech Φ = φ1, . . . , φg będzie zbioremzanurzeń φi : K → K1. Mówimy, że Φ jest CM typem na K, jeśli żadne za-nurzenie w Φ nie powstaje przez sprzężenie zespolone innego (tzn., φi = φjdla i, j = 1, . . . , g). Normą względem CM typu Φ nazywamy odwzorowanie

NΦ : K → K1, NΦ(x) = φ1(x) · · ·φg(x).

Oczywiście mamy NK/Q(x) = NΦ(x)NΦ(x) ∈ Q. Stąd jeśli K jest Galois,możemy użyć normy NΦ, aby otrzymywać jako jej wartości liczby π =NΦ(x), takie że ππ ∈ Z. W ustalonej bazie bi ciała K/Q możemy zapisaćnormę NΦ jako wielomian jednorodny stopnia g o współczynnikach w K1

NΦ(∑j

xjbj)

=(∑j

xjφ1(bj))· · ·(∑j

xjφg(bj))

dla xj ∈ Q,

który spełnia (3.1). Jeśli ciało K nie jest Galois, to na ogół NΦ(x) ∈ Kdla x ∈ K, ale istnieje CM podciało K∗ ⊂ K1 wraz z CM typem Φ∗, takieże NΦ∗(x) ∈ K dla x ∈ K∗. Wówczas jako wartości normy NΦ∗ będziemyotrzymywać liczby π = NΦ∗(x) ∈ K, takie że ππ ∈ Z. Omówimy terazkonstrukcję takiego podciała K∗

Jeśli K0 ⊂ K jest CM podciałem z CM typem Φ0, to biorąc wszystkiemożliwe rozszerzenia zanurzeń z Φ0 na ciało K otrzymujemy CM typ na Ki mówimy że taki CM typ na K powstaje przez rozszerzenie Φ0. Jeśli CMtyp Φ nie powstaje przez rozszerzenie CM typu z właściwego CM podciała,to mówimy że Φ jest prymitywmy.

Niech Φ1 będzie CM typem na K1, który jest rozszerzeniem Φ orazniech

H = σ ∈ Gal(K1/Q) : Φ1σ = Φ1.Wówczas ciało stałe K0 podgrupy H jest CM ciałem zawartym w K orazzawężenie CM typu Φ do K0 jest CM typem Φ0 na K0. Ciało K0 jestnajmniejszym podciałem, takim że Φ powstaje przez rozszerzenie CM typu,które nazywamy podciałem prymitywnym dla pary (K,Φ).

103

Page 104: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło

Dla podciała K∗ ⊂ K1 następujące dwa warunki są równoważne (1)K∗ jest podciałem stałym grupy σ ∈ Gal(K1/Q) : σΦ1 = Φ1 (2) K∗ jestgenerowane nad Q przez zbiór

∑φ∈Φ φ(x) : x ∈ K. Ciało K∗ nazywamy

reflex ciałem względem CM typu Φ na K. Jeśli Φ powstaje przez rozsze-rzenie CM typu Φ0 na K0, to K∗0 = K∗. W reflex ciele K∗ wprowadzamynastępujący CM typ. Niech Φ1 będzie rozszerzeniem Φ na K1. WówczasΦ−11 = φ−1 : φ ∈ Φ1 jest CM typem na K1, którego podciałem prymi-tywnym jest reflex ciało K∗. CM typ indukowany na K∗ przez Φ−11 ozna-czamy przez Φ∗. Wówczas norma względem Φ∗ przyjmuje wartości w K,

K∗ ∋ x 7→ NΦ∗(x) ∈ K.

3.2. CM ciała postaci K = Q(ζs,√−d)

Jeśli CM typ Φ na K nie jest prymitywny, to reflex norma NΦ∗(x)dla x ∈ K∗ przyjmuje wartości w podciele prymitywnym K0 ⊂ K dla Φ.Zatem nie możemy jej użyć, aby otrzymywać liczby Weila π = NΦ∗(x),które generują K. Taka sytuacja np. zawsze zachodzi gdy K jest CM cia-łem stopnia 4 zawierającym podciało urojone kwadratowe L; takie ciało Knazywamy nieprymitywnym. (Wówczas jeśli L = Q(

√−d) ⊂ K jest podcia-

łem urojonym kwadratowym i Q(√d0) ⊂ K jest podciałem rzeczywistym,

to K zawiera drugie podciało urojone kwadratowe L′ = Q(√−dd0). Stąd K

jest Galois jako złożenie ciał kwadratowych i każdy CM typ na K powstajeprzez rozszerzenie CM typu na L lub L′. Np. rozszerzeniem CM typu idLna L jest idK , iL′, gdzie automorfizm iL′ jest stały na L i jest sprzęże-niem zespolonym na L′. Wówczas Nid,iL′ (x) ∈ L dla dowolnego x ∈ K,ponieważ jest elementem stałym względem id, iL′.)

Niech K = Q(ζs,√−d), gdzie ζs jest s-tym pierwotnym pierwiastkiem

z 1 i d ∈ Z>0 jest bezkwadratowa (K jest CM ciałem jako złożenie CMciał Q(ζs) i Q(

√−d)). Dla dowolnej liczby q-Weila π0 ∈ Q(

√−d), π =

ζsπ0 jest liczbą q-Weila w K odpowiadającą rozmaitści abelowej, któranad rozszerzeniem stopnia s jest izogeniczna z potęgą krzywej eliptycznejodpowiadającej π0 (Wniosek 2.5). Zatem liczby Weila w K takiej postacimożemy otrzymywać jako wartości na liczbach całkowitych wielomianu

w(x1, x2) = ζs(x1 + x2√−d).

3.3. Otrzymywanie liczb Weila jako wartości wielomianów

Jeśli wielomian w(x1, . . . , xn) spełnia (3.1), to problem czy obrazw(Zn) zawiera nieskończenie wiele liczb Weila jest na ogół bardzo trudny

104

Page 105: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych genusu 2 z danym stopniem zanurzeniowym

i otwarty od strony teoretycznej. Ograniczymy się jedynie do podania pew-nych warunków koniecznych, które zwykle są wystarczające dla praktycz-nych zastoswań. Powyższy problem sprowadza się do problemu przyjmo-wania przez wielomian o współczynnikach wymiernych nieskończenie wieluwartości pierwszych. Latwo podać następujące warunki konieczne dla wie-lomianów jednej zmiennej.

Stwierdzenie 3.1. Jeśli wielomian q(x) ∈ Q[x] przyjmuje nieskończeniewiele wartości pierwszych dla x ∈ Z>0, to(1) q(x) jest nierozkładalny,(2) zbiór S = q(x) : x, q(x) ∈ Z jest niepusty i gcd(S) = 1,(3) q(x) ma dodatni współczynnik wiodący.

Hipoteza Buniakowskiego-Schinzla mówi, że powyższe warunki są rów-nież wystarczające, aby wielomian przyjmował nieskończenie wiele wartościpierwszych. Bateman i Horn [2] podali hipotezę o gęstości liczb pierwszychw zbiorze wartości wielomianu. Zgodnie z terminologią wprowadzoną w [19]mówimy, że wielomian reprezentuje liczby pierwsze jeśli spełnia warunkiStwierdzenia 3.1. Jeśli dla takiego wielomianu przyjmiemy heurystycznezałożenie, że liczby pierwsze są rozłożone równomiernie w zbiorze warto-ści q(Z) tak samo jak w dużych przedziałach, to z twierdzenia o liczbachpierwszych możemy oczekiwać, że q(x) będzie liczbą pierwszą z prawdopo-dobieństwem około 1/deg q(x) logN dla x ∈ 1, . . . , N.

Jeśli q(x1, . . . , xn) ∈ Q[x1, . . . , xn] przyjmuje wartości nieujemne(w szczególności wielomian spełniający (3.1)), q(x1, . . . , xn) jest nierozkła-dalny i zbiór S = q(x) : x ∈ Zn, q(x) ∈ Z = ∅ ma gcd(S) = 1, to w prak-tyce taki wielomian również wydaje się przyjmować wartości pierwsze dlapewnej części punktów całkowitych w Zn, ale podanie nawet dla wielomia-nów dwóch zmiennych podobnej heurystyki jak wyżej nie jest oczywiste.Dla dalszych zastosowań będziemy zakładali, że mamy wielomian, któregoobraz zawiera dostatecznie wiele liczb pierwszych (lub liczb Weila), przezco rozumiemy, że oczekujemy otrzymania liczb pierwszych (lub liczb Weila)z pewnym dodatnim prawdopodobieństwem.

4. Metoda mnożeń zespolonych

Metoda mnożeń zespolonych (CM metoda) pozwala konstruowaćkrzywe eliptyczne lub krzywe genusu 2 nad ciałami skończonymi, którychpierścień endomorfizmów jakobianu jest ordynkiem maksymalnym w da-nym CM ciele K odpowiednio stopnia 2 lub 4. Wówczas jakobian takiej

105

Page 106: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło

krzywej lub jej skręcenia realizuje liczbę Weila π ∈ K. Aby wybrać odpo-wiednią krzywą w praktyce wystarczy sprawdzić czy dla losowego punktuP z jakobianu mamy nP = 0, gdzie n = NK/Q(π − 1) jest rzędem jako-bianu, który chcemy otrzymać. W praktyce CM metoda jest efektywna dlaCM ciał generowanych przez odpowiednio małe liczby.

Poniżej opiszemy w dużym uproszczeniu główną ideę CM metody dlakrzywych eliptycznych i krzywych genusu 2. CM metodę dla krzywycheliptycznych wykorzystuje się również do konstruowania krzywych genusu2 o rozkładalnym jakobianie. Teoria na której opiera się CM metoda dlakrzywych eliptycznych znajduje się w książkach [39, 9, 28], streszczeniemożna znaleźć np. w [8, 12].

Niech K = Q(√−d) będzie ciałem urojonym kwadratowym, gdzie

d ∈ Z>0 jest liczbą bezkwadratową. Dla danego ciała F o domknięciu al-gebraicznym F niech CK,F będzie zbiorem klas izomorficznych krzywych

eliptycznych E/F, takich że End(E) = OK jest ordynkiem maksymalnymw K. Dowodzi się, że zbiór CK,C jest skończony, j-niezmienniki krzywycheliptycznych w CK,C są sprzężonymi nad Q liczbami algebraicznymi całko-witymi, których wielomian minimalny

HK(x) =∏E∈CK,C

(x− j(E)) ∈ Z[x]

nazywa się wielomianem klas Hilberta ciała urojonego kwadratowego K.Stopień i współczynniki wielomianu Hilberta są wielkości O(

√d) dlatego

w praktyce można go obliczyć tylko dla odpowiednio małych d (obecnied ≤ 1012). Istnieje kilka metod obliczania wielomianu klas [3, 7, 13, 42].

Jeśli w charakterystyce p istnieją krzywe eliptyczne zwykłe, którychpierścień endomorfizmów jest ordynkiem w K, to również zbiór CK,Fp jestniepusty oraz redukcja modulo p indukuje bijekcję CK,C → CK,Fp . Wów-

czas j-niezmienniki krzywych w CK,Fp są dokładnie pierwiastkami w Fpwielomianu klas Hiberta mod p. Stąd aby skonstruować krzywą eliptycznąw CK,Fp wystarczy znaleźć pierwiastek j ∈ Fp wielomianu HK(x)mod pi utworzyć krzywą eliptyczną o j-niezmienniku j.

Idea CM metody dla krzywych genusu 2 jest analogiczna jak dla krzy-wych eliptycznych, ale metoda opiera się na dużo trudniejszej teorii i jestmniej efektywna w praktyce. Niech K będzie CM ciałem prymitywnymstopnia 4, tzn. K nie zawiera podciała urojonego kwadratowego (obecnieCM metoda nie jest rozwinięta dla CM ciał nieprymitywnych). Krzywe ge-nusu 2 nad F są z dokładnością do izomorfizmu nad F wyznaczone przeztrzy niezmienniki Igusy j1, j2, j3 [24]. Algorytm Mestre [30] pozwala dla

106

Page 107: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych genusu 2 z danym stopniem zanurzeniowym

danych niezmienników Igusy utworzyć równanie krzywej genusu 2 o tychniezmiennikach. Niech CK,F będzie zbiorem klas izomorficznych krzywych

genusu 2 C/F, takich że End(Jac(C)) ∼= OK jest ordynkiem maksymalnymw K. Wówczas zbiór CK,C jest skończony, niezmienniki Igusy krzywychw CK,C są liczbami algebraicznymi, oraz następujące trzy wielomiany Igusymają współczynniki wymierne

HK,i(x) =∏C∈CK,C

(x− ji(C)) ∈ Q[x]dlai = 1, 2, 3.

Podobnie jak dla wielomianu klas Hilberta istnieje kilka metod obliczaniawielomianów Igusy [14, 40, 41], które w praktyce są efektywne jeśli ciałoK jest generowane przez małe liczby.

Jeśli charakterystyce p istnieją krzywe genusu 2, których jakobianjest ordynkiem w CM ciele K, to zbiór CK,Fp jest niepusty oraz reduk-cja mod p indukuje bijekcję CK,C → CK,Fp . Wówczas niezmienniki Igusy

krzywych w CK,Fp otrzymuje się jako pierwiastki w Fp wielomianów IgusyHK,i(x)mod p. Dla znalezionych niezmienników Igusy krzywej C ∈ CK,Fpstosuje się algortym Mestre aby znaleźć równanie C.

Przykład 4.1. Następujący przykład pokazuje zastosowanie CM metody,aby efektywnie znaleźć krzywą genusu 2 nad dużym ciałem Fp, której ja-kobian ma rząd pierwszy (poniższe obliczenia z wykorzystaniem programuMagma zajmują kilka sekund). Ciało cyklotomiczne K = Q(ζ5) jest CMciałem stopnia 4. Aby otrzymywać liczby Weila w K wykorzystamy normęwzględem CM typu Φ = idK , φ, gdzie φ jest automorfizmem K, ζ5 → ζ25 .Wówczas w bazie 1, ζ5, ζ25 , ζ

35 norma względem CM typu Φ ma postać

NΦ(x1, . . . , x4) = (x1 + ζ5x2 + ζ25x3 + ζ35x4)(x1 + ζ25x2 + ζ45x3 + ζ65x4).

Przyjmując np. x1 = x2 = x3 = 1 otrzymujemy jednoparametrową rodzinęliczb Weila w K:

π(x) =NΦ(1, 1, 1, x)=−(ζ35 + ζ25 + ζ5 + 1)x2 + (2ζ35 + 2ζ25 + ζ5 + 1)x− ζ35q(x) =π(x)π(x) = x4 − 3x3 + 4x2 − 2x+ 1

Wówczas wielomiany q(x) i n(x) = NK/Q(π(x) − 1) ∈ Z[x] reprezentująliczby pierwsze. Ponieważ n(x) jest stopnia 8, aby otrzymać liczbę Weilapowierzchni abelowej, której rząd jest np. liczbą pierwszą o około 200 bi-tach powinniśmy jej szukać jako wartości π(x) na liczbach x ∈ Z około

107

Page 108: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło

25-bitowych. Sprawdzając po kolei liczby x ≥ 225 znajdujemy x0, takie żeq(x0) i n(x0) są liczbami pierwszymi

x0 = 225 + 1102,

π = π(x0) = −1125973794914089ζ35 − 1125973794914088ζ25 − 1125973828469622ζ5

− 1125973828469622

n = NK/Q(π − 1)

= 1607360007905881832641678208235088840783780080533469010788571

(200 bitowa liczba pierwsza)

q = ππ = 1267817024615886913951664773981 (100 bitowa liczba pierwsza)

Aby znaleźć krzywą genusu 2, której jakobian realizuje powyższe pa-rametry w przypadku CM ciała K = Q(ζ5) możemy uniknąć ogólnej CMmetody. Zauważmy, że krzywe

Ca : y2 = x5 + a

mają automorfizm stopnia 5, (x, y) 7→ (ζ5x, y), stąd End(Jac(Ca)) = OK =Z[ζ5] w charakterystyce p jeśli Jac(Ca) jest zwykły. Krzywe Ca są dokładnieskręceniami krzywej y2 = x5+ 1, stąd aby w praktyce znaleźć odpowiedniea ∈ Fq, które realizuje powyższe parametry wystarczy na ogół po koleisprawdzać małe a ∈ Fp dopóki nie znajdziemy odpowiedniej krzywej. Dlaustalonego a wybieramy losowo punkt P ∈ Jac(Ca)(Fp) i jeśli nP = 0,to z dużym prawdopodobieństwem Ca jest szukaną krzywa. W naszymprzypadku taką krzywą jest

y2 = x5 + 6.

4.1. CM metoda dla CM ciał stopnia 4 postaci K = Q(ζs,√−d)

Dla liczb Weila w nieprymitywnych CM ciałach stopnia 4 nie zostałyrozwinięte ogólne metody konstruowania krzywych genusu 2, których jako-bian realizuje takie liczby, przy założeniu, że takie krzywe istnieją (liczbyWeila w CM ciałach nieprymitywnych mogą nie być realizowane przez ja-kobiany krzywych). Opiszemy teraz częściowe rozwiązanie problemu kon-struowania takich krzywych podane przez Freemana i Satoha [18] dla CMciał stopnia 4 postaci K = Q(ζs,

√−d), gdzie d ∈ Z>0 jest bezkwadratowa.

Metoda pozwala zrealizować pewną część liczb Weila w takich CM ciałach

108

Page 109: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych genusu 2 z danym stopniem zanurzeniowym

jako jakobiany krzywych postaci (4.1) i (4.2). Ponieważ ciało cyklotomiczneQ(ζs) ma stopień równy funkcji Eulera φ(s), mamy φ(s) = 2 lub 4, stąds = 3, 4, 6 lub s = 8, 12 (CM ciało Q(ζ5) jest prymitywne, CM ciała Q(ζ8)i Q(ζ12) zawierają odpowiednio

√−1,√−2 i

√−1,√−3).

Powierzchnie abelowe realizujące liczby Weila π ∈ Q(ζs,√−d) mają

automorfizm rzędu s odpowiadający ζs. Ponieważ 3 | s lub 4 | s najpierwnaturalnie jest sprawdzić czy liczba Weila π nie jest realizowana przezjakobian krzywych postaci

y2 = x6 + ax3 + b, (4.1)

y2 = x5 + ax3 + bx, (4.2)

które mają automorfizmy rzędu 3 i 4 odpowiednio dane przez (x, y) 7→(ζ3x, y) i (−x, ζ4y). Metoda opiera się na następującym fakcie.

Lemat 4.2. ([18, Propositions 4.1 and 4.2]) Krzywa C dana równaniem(4.1) lub (4.2) jest odpowiednio izomorficzna z krzywą y2 = x6 + cx3 + 1lub y2 = x5+cx3+x, gdzie c = a/

√b. Ponadto Jac(C) jest izogeniczny nad

pewnym rozszerzeniem z E2, gdzie E jest krzywą eliptyczną odpowiednioo j-niezmienniku

j(E) = 2833(2c− 5)3

(c− 2)(c+ 2)3, (4.3)

lub

j(E) = 26(3c− 10)3

(c− 2)(c+ 2)2. (4.4)

Dla naszych zastosowań jesteśmy zainteresowani znalezieniem krzywej,której jakobian realizuje liczbę Weila postaci π = ζsπ0, gdzie π0 ∈ Q(

√−d).

Jeśli π jest realizowana przez jakobian krzywej C postaci (4.1) lub (4.2),to nad pewnym rozszerzeniem mamy isogenie Jac(C) ∼ E2 ∼ E20 , gdzie Ejest krzywą eliptyczną o j-niezmienniku (4.3) lub (4.4) oraz E0 jest krzywąeliptyczną o liczbie Weila π0. Stąd liczba Weila krzywej E należy do ciałaQ(√−d). Jeśli pierścień endomorfizmów krzywej E jest ordynkiem mak-

symalnym OQ(√−d), to j-niezmiennik j(E) jest pierwiastkiem wielomianu

klas Hilberta HQ(√−d). Stąd otrzymujemy następujący algorytm.

Algorytm 4.3. Input: Liczba bezkwadratowa d ∈ Z>0, s = 3, 4, liczbaq-Weila π = ζsπ0, gdzie π0 ∈ K0 = Q(

√−d).

Output: Krzywa genusu 2 nad Fq, której jakobian odpowiada π lub ∅.(1) Oblicz wielomian klas Hilberta HQ(

√−d)(x) ciała urojonego kwadrato-

wego Q(√−d).

109

Page 110: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło

(2) Dla dowolnego pierwiastka j ∈ Fq wielomianu HQ(√−d)(x) niech S1

i S2 będą zbiorami rozwiązań c ∈ Fq odpowiednio równań (4.3) i (4.4).(3) Dla i = 1, 2 oraz dla c ∈ Si wykonuj: jeśli i = 1 połóż C : y2 = x6 +

cx3+1, w przeciwnym razie połóż C : y2 = x5+cx3+x. Usuń C jeśli niejest hipereliptyczna (tzn. prawa strona ma pierwiastki wielokrotne).

(4) Jeśli wszystkie niezmienniki Igusy krzywej C leżą w Fq, wyznacz jejmodel C0/Fq.

(5) Wyznacz wszystkie skręcenia C ′0 nad Fq krzywej C0.(6) Dla każdego skręcenia C ′0 wybierz losowy punkt P ∈ Jac(C ′0)(Fq) i ob-

licz nP , gdzie n = NK/Q(π − 1).(7) Zwróć C ′0 jeśli nP = 0.

5. Uogólniony algorytm Cocksa-Pincha

Algorytm Cocksa-Pincha [19, Tw. 4.1] jest podstawową metodą kon-struowania krzywych eliptycznych z danych stopniem zanurzeniowym, któ-rego uogólnienia na rozmaitości abelowe zostały podane w [16, 19, 18, 10].Poniżej opiszemy podejście do jego uogólnienia przedstawione w [10]. Za-czniemy od przypomnienia podstawowych pojęć. Niech A/Fq będzie roz-maitością abelową oraz r liczbą pierwszą, taką że r | #A(Fq) i r = charFq.Niech µr = ζ ∈ Fq|ζr = 1 będzie grupą r-tych pierwiastków z 1. Stop-niem zanurzeniowym A względem r nazywamy liczbę całkowitą k, takąże Fqk = Fq(µr). Stopień zanurzeniowy jest najmniejszą liczbą k ∈ Z>0,taką że r | (qk − 1), lub równoważnie jest to rząd qmod r w grupie F∗r . Narozmaitości abelowej A istnieją dwa iloczyny dwuliniowe Weila i Tate

eW : A[r]×A[r] −→ µr ⊂ Fqk ,

eT : A(Fqk)[r]×A(Fqk)/rA(Fqk) −→ µr ⊂ Fqk .

Ciało Fqk jest najmniejszym rozszerzeniem Fq, w którym iloczyny dwu-liniowe przyjmują wartości. Algorytm Millera [33, 22] pozwala obliczyćiloczyny dwulinowe na krzywych eliptycznych i w jakobianach krzywychhipereliptycznych, jeśli stopień k jest odpowiednio mały. W praktyce naogół stosuje się iloczyn Tate, który można efektywniej obliczyć od iloczynuWeila.

Konstrukcje rozmaitości abelowych opierają się na następującym fak-cie, który opisuje liczby Weila odpowiadające rozmaitościom z danym stop-niem zanurzeniowym.

110

Page 111: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych genusu 2 z danym stopniem zanurzeniowym

Lemat 5.1. ([20, Proposition 2.1]) Niech K = Q(π) będzie CM ciałemstopnia 2g, gdzie π jest liczbą q-Weila, taką że π i π są względnie pierwszew OK . Wówczas rozmaitość abelowa A/Fq odpowiadająca liczbie q-Weilaπ ma stopień zanurzeniowy k względem liczby pierwszej r, gdzie r - kq,dokładnie wtedy gdy(1) r | NK/Q(π − 1),(2) r | Φk(q), gdzie Φk(x) jest k-tym wielomianem cyklotomicznym.

Proof. Warunek (1) oznacza z Twierdzenia 2.3, że r | #A(Fq). Przypo-mnijmy, że wielomiany cyklotomiczne Φl(x) ∈ Z[x] spełniają

xk − 1 =∏l|k

Φl(x).

Pierwiastki Φk(x) w dowolnym ciele algebraicznie domkniętym F, takim żecharF - k są dokładnie k-tymi pierwotnymi pierwiastkami z 1. Stąd warunek(2) oznacza, że qmod r jest k-tym pierwotnym pierwiastkiem z 1, czyli kjest stopniem zanurzeniowym względem r. kwadrat

Przypomnijmy, że dla podgrupy rzędu r w A(Fq) definiujemy parametr

ρ =g log qlog r

,

gdzie g = dimA. Ponieważ rząd #A(Fq) jest wielkości qg, parametr ρ mówinam ile razy wielkość #A(Fq) jest więsza od wielkości r.

Opiszemy teraz uogólnienie algorytmu Cocksa-Pincha przedstawionew [10]. Niech K będzie CM ciałem. Dla wielomianu w(x1, . . . , xn) ∈K[x1, . . . , xn] definiujemy normę

NK/Q(w(x1, . . . , xn)) =∏

φ:K→K

φ(w(x1, . . . , xn)),

gdzie dowolne zanurzenie φ : K → K rozszerzamy do zanurzeniaφ : K(x1, . . . , xn) → K(x1, . . . , xn) przyjmując φ(xi) = xi dla i =1, . . . , n. Wówczas NK/Q(w) ∈ Q[x1, . . . , xn], ponieważ jest to normaNK(x1,...,xn)/Q(x1,...,xn).

Załóżmy, że dany jest wielomian w(x1, . . . , xn) ∈ K[x1, . . . , xn], takiże

q(x1, . . . , xn) = w(x1, . . . , xn)w(x1, . . . , xn) ∈ Q[x1, . . . , xn] oraz

w(Zn) zawiera dostatecznie wiele liczb Weila w K(5.1)

111

Page 112: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło

(gdzie „dostatecznie wiele” rozumiemy tak jak w Rozdziale 3.3). Chcemyotrzymać liczbę Weila π = w(x1, . . . , xn) dla pewnego (x1, . . . , xn) ∈ Zn,która odpowiada rozmaitości abelowej ze stopniem zanurzeniowym k wzglę-dem liczby piewszej r. Wówczas (x1, . . . , xn)mod r jest z Lematu 5.1 roz-wiązaniem w Fnr układu równań wielomianowych o współczynnikach cał-kowitych

NK/Q(w(x1, . . . , xn)− 1) = 0 mod r

Φk(q(x1, . . . , xn)) = 0 mod r

Stąd wynika następujący algorytm, który uogólnia algorytmCocksa-Pincha.

Twierdzenie 5.2. Niech k ∈ Z>0, K będzie CM ciałem stopnia 2g orazw(x1, . . . , xn) ∈ K[x1, . . . , xn] spełnia (5.1)(1) Niech r będzie liczbą pierwszą, taką że k | r − 1.(2) Niech Z ⊂ Fnr będzie pewnym zbiorem rozwiązań układu (5.2).(3) Dla dowolnego rozwiązania (a1, . . . , an) ∈ Z niech (x1, . . . , xn) ∈ Znbędzie jego podniesieniem.

(4) Niech π = w(x1, . . . , xn).

sl Jeśli π jest liczbą Weila, K = Q(π) i (π, π) = (1), to π odpowiadarozmaitości abelowej zwykłej wymiaru g ze stopniem zanurzeniowym kwzględem r.

Warunek k | r − 1 jest konieczny, aby układ (5.2) miał rozwiązaniaw ciele Fr, ponieważ q(x1, . . . , xn)mod r jest k-tym pierwotnym pierwiast-kiem z 1. W praktyce możemy losowo wybierać liczby pierwsze r odpo-wiedniej wielkości i sprawdzać czy znajdziemy rozwiązania w ciele Fr. Mo-żemy to robić np. ustalając n − 2 zmienne z Fr i wyznaczać rozwiązaniaukładu z dwiema zmiennymi np. stosując rugowniki. Jeśli w ten sposóbnie znajdziemy rozwiązań nad Fr próbując podstawiać pewną liczbę n− 2zmiennych, to wybieramy inną liczbę pierwszą r. W następnym rozdzialepodamy wzory na rozwiązania układu (5.2) w ciałach liczbowych w przy-padku gdy w(x1, . . . , xn) jest reflex normą lub w(x1, x2) = ζs(x1+x2

√−d)

dla CM ciała K = Q(ζs,√−d). Wówczas te wzory opisują również roz-

wiązania w ciałach skończonych dla liczb pierwszych r, które całkowicierozpadają się w CM ciele K (tzn. nad r leży 2g ideałów pierwszych w OK).Na ogół rozwiązania układu (5.2) nad ciałem Fr są podobnej wielkości jakr, stąd zwykle otrzymujemy rozmaitości abelowe w parametrem

ρ ≈ 2g degw(x1, . . . , xn).

Dla krzywych eliptycznych mamy ρ ≈ 2 jeśli K = Q(√−d) jest ciałem

urojonym kwadratowym i w(x1, x2) = x1+x2√−d. Jeśli K jest CM ciałem

112

Page 113: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych genusu 2 z danym stopniem zanurzeniowym

prymitywnym stopnia 4 i w(x1, . . . , x4) jest reflex normą, to otrzymujemypowierzchnie abelowe absolutnie proste z parametrem ρ ≈ 8. Jeśli K =Q(ζs,

√−d) jest CM ciałem stopnia 4 i w(x1, x2) = ζs(x1 + x2

√−d), to

otrzymujemy powierzchnie abelowe proste, które nie są absolutnie prostez parametrem ρ ≈ 4.

6. Rodziny parametryczne rozmaitości abelowych

Stosując uogólniony algorytm Cocksa-Pincha otrzymujemy rozmaito-ści abelowe z parametrem ρ ≈ 2g degw(x1, . . . , xn). Aby otrzymać mniej-szy parametr ρ używamy rodzin parametrycznych. Dla danego stopniazanurzeniowego k rodzina parametryczna składa się z pary wielomianów(r(x), π(x)), gdzie r(x) ∈ Q[x] i π(x) ∈ K[x], takich że dla wielu x0 ∈ Zotrzymujemy liczbę pierwszą r(x0) i liczbę Weila π(x0) w K, która odpo-wiada rozmaitości abelowej zwykłej ze stopniem zanurzeniowym k wzglę-dem r(x0). Dokładna definicja jest następująca.

Definicja 6.1. ([17]) Niech K będzie CM ciałem stopnia 2g. Mówimy, żepara wielomianów (r(x), π(x)), gdzie r(x) ∈ Q[x] i π(x) ∈ K[x], parame-tryzuje rodzinę rozmaitości abelowych ze stopniem zanurzeniowym k jeśli(1) q(x) = π(x)π(x) ∈ Q[x],(2) q(x) reprezentuje liczby pierwsze,(3) r(x) reprezentuje liczby pierwsze,(4) r(x) dzieli NK/Q(π(x)− 1),(5) r(x) dzieli Φk(q(x)).

Trzy pierwsze warunki są konieczne, aby dla nieskończenie wielux0 ∈ Z otrzymać liczbę pierwszą r(x0) i liczbę Weila π(x0). Z dwóch ostat-nich warunków wynika, że r(x0) dzieli rząd NK/Q(π(x0) − 1) rozmaitościodpowiadającej liczbie Weila π(x0) i k jest stopniem zanurzeniowym wzglę-dem r(x0). Parametry ρ rozmaitości abelowych parametryzowanych przezrodzinę (r(x), π(x)) dążą do parametru ρ rodziny

ρ =g deg q(x)deg r(x)

.

Podobnie jak w uogólnionym algorytmie Cocksa-Pincha rodziny parame-tryczne możemy otrzymywać przy pomocy wielomianów w(x1, . . . , xn) ∈K[x1, . . . , xn] spełniających (5.1). Chcemy otrzymywać rodziny(r(x), π(x)), gdzie π(x) = w(f1(x), . . . , fn(x)) dla pewnych fi(x) ∈ Q[x].

113

Page 114: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło

Wówczas (f1(x), . . . , fn(x))mod r(x) jest rozwiązaniem nad ciałem liczbo-wym L = Q[x]/(r(x)) układu równań wielomianowych o współczynnikachcałkowitych

NK/Q(w(x1, . . . , xn)− 1) = 0

Φk(q(x1, . . . , xn)) = o(6.1)

Stąd otrzymujemy następujące uogólnienie algorytmu Brezing-Weng ([6]lub [19, Tw. 6.1]) dla krzywych eliptycznych.

Twierdzenie 6.2. Niech k ∈ Z>0, K będzie CM ciałem i w(x1, . . . , xn) ∈K[x1, . . . , xn] spełnia (5.1).(1) Znajdź ciało liczbowe L, w którym układ (6.1) ma rozwiązania.(2) Wyznacz pewien zbiór rozwiązań Z ⊂ Ln układu (6.1).(3) Przedstaw L jako ciało ilorazowe L = Q[x]/(r(x)), gdzie r(x) ∈ Q[x].(4) Dla każdego rozwiązania (a1, . . . , an) ∈ Z weź jego podniesienie

(f1(x), . . . , fn(x)) ∈ Q[x]n, gdzie deg fi(x) < deg r(x) dla i = 1, . . . , n.(5) Niech π(x) = w(f1(x), . . . , fn(x)).

Jeśli q(x) = π(x)π(x) reprezentuje liczby pierwsze, to (r(x), π(x)) jest ro-dziną rozmaitości abelowych ze stopniem zanurzeniowym k o parametrze

ρ =2g degw(x1, . . . , xn)maxdeg f1(x), . . . ,deg fn(x)

deg r(x).

Stąd otrzymujemy rodziny z parametrem ρ < 2g degw(x1, . . . , xn), cho-ciaż generycznie bliskim tej wartości. Dla krzywych eliptycznych mamyρ < 2 jeśli K = Q(

√−d) jest ciałem urojonym kwadratowym i w(x1, x2) =

x1+x2√−d. Jeśli K jest CM ciałem prymitywnym stopnia 4 i w(x1, . . . , x4)

jest reflex normą, to otrzymujemy powierzchnie abelowe absolutnie prostez parametrem ρ < 8. Jeśli K = Q(ζs,

√−d) jest CM ciałem stopnia 4

i w(x1, x2) = ζs(x1 + x2√−d), to otrzymujemy powierzchnie abelowe pro-

ste, które nie są absolutnie proste z parametrem ρ < 4.Nietrywialą częścią powyższego algorytmu jest wyznaczenie rozwiązań

układu (6.1) w pewnym ciele liczbowym. Ogólnie pewne rozwiązania możnaznaleźć przy pomocy rugowników, które również pozwalają skonstruowaćciało liczbowe L zawierające odpowiednie rozwiązania ([10]). Jednak tametoda wymaga następnie zapisania ciała L jako ilorazu L = Q[x]/(r(x))dla wielomianu r(x) o możliwie małych współczynikach (jeśli r(x) ma dużewspółczynniki, to zwykle wielomian π(x), który otrzymujemy ma współ-czynniki wymierne o dużych mianownikach i q(x) = π(x)π(x) rzadko re-prezentuje liczby pierwsze). Aby znaleźć taki wielomian r(x) wykorzystuje

114

Page 115: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych genusu 2 z danym stopniem zanurzeniowym

się LLL algortym redukcji krat i w przypadku ciał L wyższych stopni jestto dość wolna metoda w praktyce.

Poniżej podamy efektywne wzory na rozwiązania układu (6.1) w przy-padku gdy wielomian w(x1, . . . , xn) jest reflex normą lub w(x1, x2) =ζs(x1 + x2

√−d). Zaczniemy od następującego uproszczenia układu (6.1).

Niech K1 będzie domknięciem normalnym K oraz L ciałem liczbowym za-wierającymK(ζk). Dla dowolnego k-tego pierwotnego pierwiastka z jedynkiζk układ (6.1) sprowadza się do następujących układów

∏σ:K→K1

wσ(x1, . . . , xn)− 1 = 0

q(x1, . . . , xn) = ζk

Dla dowolnego zanurzenia σ : K → K1 mamy q(x1, . . . , xn) =wσ(x1, . . . , xn)wσ(x1, . . . , xn). Stąd dla dowolnego σ i ζk układ (6.1) mo-żemy rozbić na następujące układy

wσ(x1, . . . , xn) = 1

wσ(x1, . . . , xn) = ζk(6.2)

6.1. Rodziny parametryczne otrzymane przy pomocy reflexnormy

Poniższa metoda może być traktowna jako alternatywna do metodyFreemana [17], który podał inny algorytm oparty na reflex normie otrzy-mywania rodzin parametrycznych.

Niech K będzie CM ciałem stopnia 2g z CM typem prymitywnymΦ i z domknięciem normalnym K1. Niech K∗ ⊂ K1 będzie reflex ciałemstopnia 2g∗ względem (K,Φ) z CM typem dualnym Φ∗ = ψ1, . . . , ψg∗.W ustalonej bazie bi ciała K∗/Q zapiszmy ψi(

∑xjbj) =

∑j xjαij , gdzie

αij = ψi(bj) ∈ K1. Wówczas reflex normę możemy przedstawić jako wielo-mian

NΦ∗(x1, . . . , x2g∗) =(∑

xjα1j)· · ·(∑

xjαg∗j)∈ K[x1, . . . , x2g∗ ],

który spełnia q(x1, . . . , x2g∗) = NΦ∗(x1, . . . , x2g∗)NΦ∗(x1, . . . , x2g∗) ∈Q[x1, . . . , x2g∗ ]. Zapiszmy układ (6.1) z reflex normą

NK/Q(NΦ∗(x1, . . . , x2g∗)− 1) = 0

Φk(q(x1, . . . , x2g∗)) = 0(6.3)

115

Page 116: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło

Niech L będzie ciałem liczbowym zawierającym K1(ζk). Po sprowadzeniudo postaci (6.2) powyższy układ rozpada się na na następujące układy dladowolnego zanurzenia φ : K → K1 i k-tego pierwiastka z jedynki ζk

NφΦ∗(x1, . . . , x2g∗) = 1

NφΦ∗(x1, . . . , x2g∗) = ζk

Kładąc βij = φ(αij), jest to układ postaci (∑

xjβ1j) · · · (∑

xjβg∗j) =1

(∑

xjβ1j) · · · (∑

xjβg∗j) =ζk

Z twierdzenia Dirichleta o niezależności charakterów formyφψ1, . . . , φψg∗ , φψ1, . . . , φψg∗ są liniowe niezależne. Stąd wszystkie rozwią-zania w L ostatniego układu otrzymujemy wybierając dowolnie parametryt1, . . . , tg∗−1, s1, . . . , sg∗−1 ∈ L∗ i wyznaczając jedyne rozwiązanie nad Lukładu równań liniowych

∑xjβ1j =t1

...∑xjβg∗−1j =tg∗−1∑xjβg∗j =1/t1 · · · tg∗−1∑xjβ1j =s1

...∑xjβg∗−1j =sg∗−1∑xjβg∗j =ζk/s1 · · · sg∗−1

Stąd otrzymujemy następującą postać wszystkich rozwiązań układu (6.3)na ciałem L.

Lemat 6.3. Wszystkie rozwiązania (x1, . . . , x2g∗) układu (6.3) nad cia-łem liczbowym L zawierającym K1(ζk) mają następującą postać parame-

116

Page 117: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych genusu 2 z danym stopniem zanurzeniowym

tryczną dla dowolnych ti, si ∈ L∗

x1

...

...

...

...

x2g∗

=

β11 · · · · · · · · · β12g∗

...

βg∗1 · · · · · · · · · βg∗2g∗

β11 · · · · · · · · · β12g∗

...

βg∗1 · · · · · · · · · βg∗2g∗

−1

t1...

tg∗−11/t1 · · · tg∗−1

s1...

sg∗−1ζk/s1 · · · sg∗−1

gdzie ζk jest dowolnym pierwiastkiem z 1 i βij = φ(αij) dla dowolnegozanurzenia φ : K → K1.

Przykład 6.4. Podamy rodzinę parametryczną powierzchni abelowychze stopniem zanurzeniowym k = 10 i parametrem ρ = 6 dla CM ciałaK = Q(ζ5). Do otrzymywania liczb Weila w K użyjemy normy względemtego samego CM typu Φ na K jak w Przykładzie 4.1. W powyższym lemaciebierzemy L = Q(ζ10) = Q(ζ5), zapisujemy L = Q[x]/(Φ10(x)) i przyjmu-jemy t1 = 1 i s1 = ζ10. Otrzymujemy następującą rodzinę powierzchniabelowych

r(x) =15

Φ10(x) =15

(x4 − x3 + x2 − x+ 1),

π(x) =125

(−2ζ35 − ζ25 − 2ζ5)x6 +125

(9ζ35 + 6ζ25 + 11ζ5 + 4)x5

+15

(−2ζ35 − 2ζ25 − 3ζ5 − 4)x4 +15

(ζ35 + 2ζ25 + 2ζ5 + 6)x3

+15

(−3ζ35 − 3ζ25 − 5ζ5 − 5)x2 +125

(3ζ35 + 4ζ25 + 3ζ5 + 15)x

+125

(−6ζ35 − 4ζ25 − 9ζ5 − 6).

(współczynnik 1/5 przy Φ10(x) został dobrany, aby wielomian r(x) repre-zentował liczby pierwsze). Ponieważ deg r(x) = 4, aby otrzymać parametrypowierzchni abelowej dla liczby pierwszej r około 160 bitowej powinniśmyjej szukać jako wartości rodziny na liczbach około 40 bitowych. Otrzymu-jemy np. następujące parametry powierzchni abelowej:

117

Page 118: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło

x = 241 + 122,

r = 4676805240494623792653414435638491469904513556151

(161 bitowa liczba pierwsza),

q = 1022934565644841731432276473153812385160945590601104166971386460374912

8850999745132050738686644206960342219021205993695811184795821178872972

3539661

Podobnie jak w Przykładzie 4.1 znajdujemy krzywą, której jakobian re-alizuje powyższe parametry

y2 = x5 + 2.

6.2. Rodziny parametryczne dla CM ciał postaci K = Q(ζs,√−d)

Podamy teraz wzory na rozwiązania układu (6.1) dla w(x, y) = ζs(x+y√−d) i K = Q(ζs,

√−d). Zatem układ ma postaćNK/Q(ζs(x+ y

√−d)− 1) = 0

Φk(x2 + dy2

)= 0

(6.4)

Lemat 6.5. Niech L będzie ciałem liczbowym zawierającym K(ζk). Jeśli√−d ∈ Q(ζs), to dla dowolnych pierwotnych pierwiastków z jedynki ζs, ζkukład (6.4) ma rozwiązania postaci

x =ζ−1s + ζkζs

2, y = ±ζ

−1s − ζkζs2√−d

. (6.5)

Jeśli√−d ∈ Q(ζs), to jedna z tych par jest rozwiązaniem układu (6.4).

Proof. Zgodnie z (6.2) dla dowolnego σ ∈ Aut(K) i ζk układ (6.4) rozpadasią na następujące układy liniowe

σ(ζs)(x+ yσ(

√−d)

)= 1

σ(ζ−1s )(x− yσ(

√−d)

)= ζk

118

Page 119: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych genusu 2 z danym stopniem zanurzeniowym

Stąd x =

σ(ζ−1s ) + ζkσ(ζs)2

y =σ(ζ−1s )− ζkσ(ζs)

2σ(√−d)

Jeśli√−d ∈ Q(ζs), to każdy automorfizm ciała Q(ζs) ma dwa rozszerzenia

na K, więc rozwiązania są dokładnie postaci (6.5). Jeśli√−d ∈ Q(ζs), to

automorfizm σ jest jednoznacznie wyznaczony przez wartości na ζs.

Przykład 6.6. W CM ciele K = Q(ζ8) stopnia 4 zawierającym√−2

użyjemy w(x, y) = ζ8(x+y√−2) do otrzymywania liczb Weila. Dla stopnia

zanurzeniowego k = 16 otrzymujemy rodzinę z parametrem ρ = 3.5

r(x) =12

(x8 + 1),

π(x) =−12ζ8x7 − 1

2ζ8x6 +

14

(ζ28 − 1)x5 +14

(−ζ28 + 1)x4 +14

(ζ28 − 1)x

+14

(−ζ28 + 1),

Dostajemy np. następujące parametry powierzchni abelowej

x = 220 + 217 + 7477,

r = 3944315153601806198898435640010893344879150390626

(160 bitowa liczba pierwsza)

q = 27598854348512437317747455665949090055277857799177455447493127024433646

31093882533297

Aby zrealizować liczby Weila w K jako jakobiany krzywych genusu 2, naogół wystarczy użyć krzywych Ca : y2 = x5 + ax, które mają automorfizmrzędu 8, (x, y) 7→ (ζ28x, ζ8y). Podobnie jak w Przykładzie 4.1 sprawdzająckolejne a ∈ Fp znajdujemy krzywą, której jakobian ma powyższe parametry

y2 = x5 + 14x.

Powyższa metoda zastosowana do CM ciała K = Q(ζ8) jest alterna-tywna do metody Kawazoe i Takahashi [27], którzy podali metodę konstru-owania krzywych postaci y2 = x5 + ax z danym stopniem zanurzeniowymopartą na wzorach na rząd jakobianu takich krzywych.

119

Page 120: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło

Przykład 6.7.. Niech K = Q(ζ12) = Q(i,√−3) i w(x, y) = i(x+ y

√−3).

Dla k = 12 zapiszmy ciało L = K jako iloraz L = Q[x]/(r0(x)), gdzier0(x) = x4 + 2x3 + 6x2 − 4x + 4 otrzymujemy jako wielomian minimalnyelementu ζ12 − ζ212 + ζ312. Aby otrzymać jak najmniejszy parametr ρ pró-bujemy różnych reprezetacji ciała L jako ilorazu Q[x]/(r(x)). Wielomianyr(x) możemy otrzymywać jako wielomiany minimalne elementów prymi-tywnych w K (taka metoda dla krzywych eliptycznych została wprowa-dzona w [26]). Znajdujemy rodzinę powierzchni abelowych ze stopniemzanurzeniowym k = 12 i parametrem ρ = 2:

r(x) =136

(x4 + 2x3 + 6x2 − 4x+ 4),

π(x) =i

12

(x2(−

√−3 + 1)− 2x(

√−3 + 1)− 6

√−3− 2

).

Dostajemy np. następujące parametry powierzchni abelowej

x = 87960930234340,

r = 1662864086068056644824292237437174114512687909008301229

(180 bitowa liczba pierwsza),

π =i

2(1289520874615042134242461153− 1289520874615100774862617381

√−3),

q = 1662864086068056644824292238726694989127818004180996723,

Stosując Algorytm (4.3) znajdujemy krzywą, której jakobian realizuje po-wyższe parametry

y2 = 3x6 + 399087380656333594757830137294406797390676321003439214x3

+ 840318388709976017122087137087102952585808061504841608

Literatura

[1] P.S.L.M. Barreto, M. Naehrig, Pairing-friendly elliptic curvesof prime order, in Selected Areas in Cryptography–SAC 2005, LectureNotes in Computer Science, vol. 3897 (Springer, Berlin, 2006), pp.319–331.

[2] P. Bateman, R. Horn, A heuristic asymptotic formula concerningthe distribution of prime numbers, Math. Comput. 16, 363–367 (1962).

[3] J. Belding, R. Broker, A. Enge, K. Lauter, Computing Hilbertclass polynomials, Algorithmic Number Theory Symposium-ANTSVIII (A. J. van der Poorten and A. Stein, eds.), Lecture Notes inComputer Science, vol. 5011, Springer, 2008, pp. 282–295.

120

Page 121: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych genusu 2 z danym stopniem zanurzeniowym

[4] D. Boneh, M. Franklin, Identity-based encryption from the Weilpairing, In Advances in Cryptology Crypto 2001. LNCS, vol. 2139,pp. 213–229. Springer, Berlin (2001). Full version: SIAM J. Comput.32(3), 586–615 (2003).

[5] D. Boneh, B. Lynn, H. Shacham, Short signatures from the Weilpairing, In Advances in Cryptology Asiacrypt 2001, LNCS, vol. 2248,pp. 514–532. Springer, Berlin (2002). Full version: J. Cryptol. 17,297–319 (2004).

[6] F. Brezing, A. Weng, Elliptic curves suitable for pairing based cryp-tography, Des. Codes Cryptogr. 37, 133–141 (2005).

[7] R. Broker, A p-adic algorithm to compute the Hilbert class polyno-mial, Math. Comp. 77 (2008), 2417–2435.

[8] R. Broker, P. Stevenhagen, Efficient CM-constructions of ellipticcurves over finite fields, Math. Comp. 76 (2007), 2161–2179.

[9] D. Cox, Primes of the form x2 + ny2. Fermat, Class Field Theoryand Complex Multiplication, John Wiley & Sons (1989).

[10] R. Dryło, A New Method for Constructing Pairing-Friendly AbelianSurfaces, In: Pairing-Based Cryptography – Pairing 2010. LNCS, vol.6487, pp. 298-311. Springer, Heidelberg (2010).

[11] R. Dryło, Constructing Pairing-Friendly Genus 2 Curves with SplitJacobian, Lecture Notes in Computer Sciences (INDOCRYPT 2012)7668 (2012), 437-458.

[12] R. Dryło, Z. Jelonek, Krzywe eliptyczne z zadaną grupą endomor-fizmów i podgrupą ustalonego rzędu, Materiały z konferencji „Krypto-grafia i Bezpieczeństwo Informacji”, Warszawa 2014.

[13] A. Enge, The complexity of class polynomial computation via floatingpoint approximations, Math. Comp. 78 (2009), 1089–1107.

[14] K. Eisentrager, K. Lauter, A CRT algorithm for constructinggenus 2 curves over finite fields, in Proceedings of AGCT 2005: Ari-thmetics, Geometry, and Coding Theory – Societe Mathematique deFrance, 2011.

[15] D. Freeman, Constructing pairing-friendly elliptic curves with em-bedding degree 10, in Algorithmic Number Theory Symposium-–ANTS-VII. Lecture Notes in Computer Science, vol. 4076 (Springer,Berlin, 2006), pp. 452–465.

[16] D. Freeman, Constructing pairing-friendly genus 2 curves with ordi-nary Jacobians,In Pairing-Based Cryptography – Pairing 2007, LNCS,vol. 4575, pp. 152–176. Springer, Verlag (2007).

[17] D. Freeman, A generalized Brezing-Weng algorithm for constructingpairing-friendly ordinary abelian varieties, In: Pairing-Based Crypto-

121

Page 122: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło

graphy – Pairing 2008, LNCS, vol. 5209, pp. 46–163, Springer, Heidel-berg (2008).

[18] D. Freeman, T. Satoh, Constructing pairing-friendly hyperellipticcurves using Weil restriction, J. Number Theory 131, 959–983 (2011).

[19] D. Freeman, M. Scott, E. Teske, A taxonomy of pairing-friendlyelliptic curves, J. Cryptol. 23, 224–280 (2010).

[20] D. Freeman, P. Stevenhagen, M. Streng, Abelian varieties withprescribed embedding degree, In: Algorithmic Number Theory – ANTSVIII. LNCS, vol. 5011, pp. 60–73, Springer, Heidelberg (2008).

[21] S. Galbraith, Supersingular curves in cryptography, In ASIA-CRYPT 2001, LNCS, 2248, pp. 495–513. Springer, Berlin (2001).

[22] S. Galbraith, F. Hess, F. Vercauteren, Hyperelliptic pairings, InPairing-based cryptography – Pairing 2007, LNCS vol. 4575 108–131.Springer, Berlin, (2007).

[23] E. Howe, H. Zhu, On the existence of absolutely simple abelian va-rieties of a given dimension over an arbitrary field, J. Number Theory92, 139–163 (2002).

[24] J. Igusa, Arithmetic Variety of Moduli for Genus Two, Ann. Math.72, 612–649 (1960).

[25] A. Joux, A one round protocol for tripartite Diffie–Hellman, In Algo-rithmic Number Theory Symposium – ANTS-IV. LNCS, vol. 1838, pp.385–393, Springer, Berlin (2000), Full version: J. Cryptol. 17, 263–276(2004).

[26] E. Kachisa, E. Schaefer, M. Scott, Constructing Brezing-Wengpairing friendly elliptic curves using elements in the cyclotomic field,In Pairing-Based Cryptography–Pairing 2008, LNCS, vol. 5209, pp.126–135. Springer, Heidelberg (2008).

[27] M. Kawazoe, T. Takahashi, Pairing-friendly ordinary hyperellipticcurves with ordinary Jacobians of type y2 = x5+ax, In: Pairing-BasedCryptography – Pairing 2008. LNCS, vol. 5209, pp. 164–177. Springer,Heidelberg (2008).

[28] S. Lang, Elliptic functions, Springer, 1987.[29] A. Menezes, T. Okamoto, S. Vanstone, Reducing elliptic curvelogarithms to logarithms in a finite field, IEEE Trans. Inf. Theory 39,1639–1646 (1993).

[30] J.F. Mestre, Construction de courbes de genre 2 a partir de leursmodules, In Effective methods in algebraic geometry (Castiglioncello,1990), pages 313–334. Birkhauser, Boston, MA (1991).

[31] V.S. Miller, The Weil pairing, and its efficient calculation, Journalof Cryptology, 17, 235–261, 2004.

122

Page 123: Kryptologia i Cyberbezpieczenstwo nr 6

Konstruowanie krzywych genusu 2 z danym stopniem zanurzeniowym

[32] J.S. Milne, Abelian varieties, In G. Cornell, J. Silverman, (eds.) Ari-thmetic Geometry 103–150. Springer, New York (1986).

[33] J.S. Milne, Complex multiplicationhttp://www.jmilne.org/math/CourseNotes/

[34] A. Miyaji, M. Nakabayashi, S. Takano, New explicit condi-tions of elliptic curve traces for FR-reduction, IEICE Trans. Fundam.E84-A(5), 1234–1243 (2001).

[35] D. Mumford, Abelian varieties, Oxford University Press 1970.[36] F. Oort, Abelian varieties over finite fields. Higher-dimensional va-rieties over finite fields, Summer school in Gottingen, pp. 66, June2007.

[37] K. Rubin, A. Silverberg, Using abelian varieties to improvepairing-based cryptography, J. Cryptol. 22, 330-364 (2009).

[38] G. Shimura, Abelian Varieties with Complex Multiplication and Mo-dular Functions, Princeton University Press, 1998.

[39] J. Silverman, Advanced Topics in the Arithmetic of Elliptic Cu-rves, Graduate Texts in Mathematics 151. Springer-Verlag, New York(1994).

[40] M. Streng, Complex multiplication of abelian surfaces, PhD thesis,Universiteit Leiden (2010).

[41] M. Streng, Computing Igusa Class Polynomials Mathematics ofComputation, Vol. 83, pp 275–309, (2014).

[42] A. Sutherland, Computing Hilbert class polynomials with the Chi-nese remainder theorem, Math. Comp. 80, 501–538 (2011).

[43] J. Tate, Classes d’isogenie des varietes abeliennes sur un corps fini,(d’apres T. Honda.) Seminarie Bourbaki 1968/69, expose 352, Lect.Notes in Math., vol. 179, pp. 95–110. Springer (1971).

[44] J. Tate, Endomorphisms of abelian varieties over finite fields, Inven-tiones Mathematicae 2 (1966).

[45] W.C. Waterhouse, J.S. Milne, Abelian varieties over finite fields,Proc. Symp. Pure Math. 20, 53–64 (1971).

CONSTRUCTING PAIRING-FRIENDLYGENUS 2 CURVES

Abstract. For applications in pairing-based cryptography we need special curves forwhich the Weil and Tate pairings can be efficiently computed. Such curves, commonlycalled pairing-friendly, require specific constructions. In practice we mainly use ellip-tic curves or hyperelliptic curves of genus 2. Methods for constructing pairing-friendlycurves are based on the complex multiplication (CM) method, and thus are restric-ted to curves whose endomorphism ring of the Jacobian is generated by suitably small

123

Page 124: Kryptologia i Cyberbezpieczenstwo nr 6

R. Dryło

numbers. To construct such a curve one first determines parameters of its Jacobian,which are usually given by Weil numbers for genus 2 curves, and then one uses the CMmethod to find a curve equation. Methods for constructing pairing-friendly elliptic cu-rves were gathered and described in a coherent language by Freeman, Scott and Teske.There are several approaches to construct pairing-friendly genus 2 curves the first ofwhich were developed by Freeman, Stevenhagen, and Streng, Kawazoe-Takahashi, andFreeman-Satoh. In this paper we describe an approach based on the idea of the author,where we use suitable polynomials of several variables to obtain as their values Weilnumbers corresponding to Jacobians of pairing-friendly genus 2 curves. This approachcan be used to construct both genus 2 with absolutely simple Jacobian, and with sim-ple, but not absolutely simple. We give explicit formulas, which determine parametricfamilies of pairing-friendly genus 2 curves.

Keywords: pairing-based cryptography, pairing-friendly curves, the Weil and Tate pa-irings, CM method, Weil numbers.

Page 125: Kryptologia i Cyberbezpieczenstwo nr 6

KODOWANIE DETERMINISTYCZNE NAKRZYWYCH ELIPTYCZNYCH

Mariusz Skałba

Wydział Matematyki, Informatyki i MechanikiUniwersytet Warszawski

ul. Banacha 2, 02-097 Warszawa, [email protected]

Streszczenie. W pracy przedstawiono problematykę znajdowania punktów na krzy-wych eliptycznych określonych nad ciałami skończonymi, ze szczególnym uwzględnie-niem algorytmów deterministycznych. Algorytmy takie nie były znane do 2005 roku.Wcześniejsze metody, chociaż dość praktyczne, miały charakter probabilistyczny, a ichefektywność była uwarunkowana hipotezami Riemanna.

Słowa kluczowe: krzywe eliptyczne, ciała skończone, kodowanie deterministyczne

Przed zaszyfrowaniem informacji, na ogół przecież werbalnej, należyją zakodować za pomocą liczb. I tak na przykład kolejnym literom alfabetumożna na stałe przyporządkować kolejne liczby

A −→ 0, B −→ 1, . . . , Z −→ 25, spacja −→ 26

i zdanie ALA MA KOTA zakodować jako ciąg liczb ze zbioru 0, 1, . . . , 26

0 11 0 26 12 0 26 10 14 19 0.

Dopiero teraz możemy wiadomość zaszyfrować. Potraktujmy powyższeliczby jako reszty modulo 27, czyli elementy pierścienia Z27. Przekształ-cenie szyfrujące E zadajemy wzorem

E(x) = 5x+ 3.

Powyższa wiadomość zaszyfrowana wygląda tak

3 4 3 25 9 3 25 26 19 17 3.

Przeprowadzając proste rachunki modulo 27 łatwo obliczamy przekształ-cenie rozszyfrowujące D

D(y) = 11y − 6.

Rzeczywiście, dla każdej liczby całkowiej x mamy

D(E(x)) = 11(5x+ 3)− 6 = 55x+ 27 ≡ x (mod 27).

Page 126: Kryptologia i Cyberbezpieczenstwo nr 6

M. Skałba

Oczywiście szyfrogram można dla niepoznaki zapisać literami DEDZJDZTRD. Już na tym elementarnym przykładzie widać, że w istocie szyfrowaniepolega na jednoznacznym przyporządkowaniu układowi liczb innego układuliczb, według tajnej reguły (E), która jest odwracalna, w tym sensie, że,ze zmienionego układu można powrócić do wyjściowego za pomocą regułyodwrotnej (D).

Metodę powyższą można wyrafinować pracując w grupie multyplika-tywnej reszt, zamiast w grupie addytywnej, jak wyżej. Niech mianowiciep będzie liczbą pierwszą nieparzystą, a liczba g ∈ 2, 3, . . . , p − 1 będzietak wybrana, że reszty liczb g, g2, . . . , gp−1 wyczerpują wszystkie resztymodulo p (oczywiście z wyjątkiem reszty 0). Takie liczby g istnieją dla każ-dej liczby pierwszej p – nazywamy je pierwiastkami pierwotnymo modulop, lub generatorami grupy Z∗p. I tak dla p = 29 można wziąć g = 2. Na-sze ulubione zdanie można zakodować teraz za pomocą reszt modulo 29 wnastępujący sposób

20 211 20 226 212 20 226 210 214 219 20, czyli

1 18 1 22 7 1 22 9 28 26 1.

Szyfrować i rozszyfrowywać można na przykład za pomocą funkcji

E(x) = 8x5, oraz D(y) = (11y)17.

Rzeczywiście, mamy następujący ciąg kongruencji mod 29, gdzie w pewnymmomencie używamy małego twierdzenia Fermata:

D(E(x)) = (11 · 8x5)17 ≡ (x5)17 ≡ (x28)3 · x ≡ x (mod 29).

Ponieważ oswoiliśmy się nieco z dodawaniem i mnożeniem reszt mo-dulo m warto odnotować najważniejszy fakt: jeżeli p jest liczbą pierwszą toZp jest ciałem. Równania z dwiema niewiadomymi x, y o współczynnikachz ciała opisują krzywe, które można badać metodami algebry liniowej, lubdogłębniej metodami geometrii algebraicznej. Szczególnie interesujący jestprzypadek równania typu

y2 = x3 +Ax+B, gdzie A,B ∈ Zp oraz ∆ = 4A3 − 27B2 = 0.

Zakładamy ponadto, dla uproszczenia dalszych wywodów, że p > 3. Mó-wimy, że powyższe równanie zadaje krzywą eliptyczną nad ciałem Zp.„Krzywa” ta składa się ze skończonej liczby punktów – wszystkich par(x, y), gdzie x, y ∈ Zp, jest przecież p · p.

126

Page 127: Kryptologia i Cyberbezpieczenstwo nr 6

Kodowanie deterministyczne na krzywych eliptycznych

Rozważmy jako przykład krzywą E nad ciałem Z31 zadaną równaniem

y2 = x3 + 7x+ 13.

Łatwo sprawdzić, że poniższa lista zawiera wszystkie elementy (x, y) zbioruZ231 spełniające powyższe równanie:

(2, 2), (2,−2), (5, 7), (5,−7), (7, 8), (7,−8), (13, 10), (13,−10), (16, 6),

(16,−6), (18, 9), (18,−9), (20, 0), (21, 11), (21,−11), (26, 15), (26,−15),

(27, 13), (27,−13), (30, 6), (30,−6).

Podobnie, jak reszty, które można dodawać i mnożyć, punkty (x, y) nakrzywej eliptycznej też można dodawać. Jest to pięknie i wyczerpującoopisane w klasycznej książce [4], a my poprzestaniemy tylko na uwadze, żechociaż punktów nie dodajemy „po współrzędnych” to współrzędne sumydwóch punktów wyrażają się poprzez współrzędne punktów składników zapomocą stosunkowo prostych wzorów. Powstaje w ten sposób skończonagrupa abelowa, która w naszym przypadku ma 22 elementy. Na powyższejliście wymienione są wszystkie punkty afiniczne – jest ich 21 – niewymie-niony punkt to tzw. punkt w nieskończoności, oznaczany zwykle ∞ lub O.Jest on elementem neutralnym rzeczonego działania grupowego.

Uznajmy, że najbardziej wyrafinowany sposób kodowania z powyżejopisanych polega na zastąpieniu liter (lub kilkuliterowych zbitek liter)przez punkty krzywej eliptycznej określonej nad ciałem skończonym Zp. I tupojawia się tytułowy problem: inaczej niż w przypadku kodowania za po-mocą reszt modulo m, czy to w wersji addytywnej, czy multyplikatywnej,w przypadku krzywej eliptycznej nie mamy naturalnego sposobu wyborupunktów, które będą kodować litery. Jeśli liczba pierwsza p oraz parametrykrzywej eliptycznej A,B są ogromnymi liczbami kilkusetcyfrowymi to niejest jasne, jak znaleźć x0, y0 ∈ Zp spełniające równanie

y20 = f(x0),

gdzie oznaczyliśmy f(x) = x3 +Ax+B.

Problem ten składa się z dwóch części:1. Znaleźć x0 ∈ Zp takie, że f(x0) jest kwadratem w Zp.2. Znaleźć y0 ∈ Zp spełniające y20 = f(x0).

127

Page 128: Kryptologia i Cyberbezpieczenstwo nr 6

M. Skałba

W żargonie podproblem 2 określa się jako wyciąganie pierwiastka kwadra-towego mod p. Od dawna znany jest efektywny algorytm wyciągania pier-wiastka kwadratowego modulo p, działający w czasie O(ln3 p), o ile dyspo-nujemy elementem n ∈ Zp, który nie jest kwadratem w Zp [8]. Algorytmten należy uznać za probabilistyczny, gdyż póki co nikt nie potrafi znajdo-wać niereszty kwadratowej modulo p w czasie wielomianowym (od ln p). Coprawda, przy założeniu rozszerzonej hipotezy Riemanna E. Bach wykazałw [1] , że najmniejsza niereszta kwadratowa jest mniejsza od 2 ln2 p, alewynik ten jest przez to bardzo warunkowy!

Jeszcze gorzej było z podproblemem 1. Przynajmniej do 2005 roku„rozwiązywano” go w następujący sposób. Za x0 podstawiano małe liczbynaturalne 0, 1, 2, . . . dopóki nie natrafiono na x0 takie, że f(x0) jest resztąkwadratową modulo p. To, że powyższe postępowanie jest praktycznie sku-teczne nawet dla dużych liczb pierwszych p wynika ze słynnego twierdzeniaHassego [3]:Niech N będzie liczbą Fq-punktów na krzywej eliptycznej zdefiniowanej

nad ciałem Fq. Wtedy

|N − (q + 1)| ≤ 2√q.

Ponieważ√p jest bardzo małe w stosunku do p, dla dużych p, więc

teza twierdzenia Hassego oznacza, że dla około połowy liczb x0 ze zbioru0, 1, 2 . . . , p − 1 liczba f(x0) jest kwadratem modulo p, i każde takiex0 daje dwa punkty na krzywej (x0, y0), (x0,−y0) . Szansa wylosowaniadobrego x0 wynosi około 1/2 i dlatego takie poszukiwanie po omacku jestpraktycznie bardzo efektywne – mimo tego, przedstawiona powyżej metodapostępowania to typowy algorytm zrandomizowany.

Neal Koblitz, pionier i guru zastosowań krzywych eliptycznych w kryp-tografii, pisał w swojej książce [5] tak:Ale główną przeszkodą w skonstruowaniu deterministycznego algorytmuwielomianowego znajdującego punkt na krzywej eliptycznej E wcale nie jestpierwiastkowanie f(x). Problem leży raczej w znalezieniu x ∈ Zp, dla któ-rego f(x) jest kwadratem. Chociaż własność tę ma około 50% elementów x,to – z wyjątkiem kilku specjalnych przypadków – nie jest znany żaden efek-tywny sposób deterministyczny wyznaczenia takiego x. Wszystkie metodydeterministyczne wymagają czasu wykładniczego. Jest rzeczą godną uwagi,że nikt nie wie, jak znaleźć na krzywej eliptycznej jakikolwiek punkt (różnyod punktu w nieskończoności) w czasie podwykładniczym.

Ten podproblem udało mi się jednak rozwiązać w 2005 roku w pracy[9]. Przy założeniu A = 0 oraz p > 3 podałem wzory wyraźne na niestałefunkcje wymierne X1(t), X2(t), X3(t), U(t) spełniające tożsamość

f(X1(t))f(X2(t))f(X3(t)) = U(t)2.

128

Page 129: Kryptologia i Cyberbezpieczenstwo nr 6

Kodowanie deterministyczne na krzywych eliptycznych

Podstawmy teraz za t taki element t0 ∈ Zp, który nie jest miejscem zero-wym żadnego z mianowników funkcji X1(t), X2(t), X3(t), U(t). Z równościw ciele Zp,

f(X1(t0))f(X2(t0))f(X3(t0)) = U(t0)2 (1)

i faktu, że grupa multyplikatywna Z∗p jest cykliczna dostajemy natychmiastwniosek:

istnieje j ∈ 1 , 2 , 3 takie, że f (Xj (t0 )) jest kwadratem w Zp .

Jednak najbardziej zaskakujące jest to, że korzystając z (1) możnarównież rozwiązać efektywnie i bezwarunkowo podproblem 2! Dokonałtego Christian van de Woestijne w swojej pracy doktorskiej, napisanej podkierunkiem H.W. Lenstry na Uniwersytecie w Lejdzie. Natomiast A. Shal-lue podał deterministyczny sposób znajdowania punktu na krzywej elip-tycznej nad ciałem skończonym charakterystyki 2. W ten sposób powstaławażna praca wspólna obu autorów [7]. Opiszemy teraz krótko na czym po-lega rozwiązanie podproblemu 2 zaproponowane przez van de Woestijne.Na podstawie (1) mamy cztery elementy a, b, c ∈ Zp takie, że

abc = d2 (2)

i bardzo chcemy wyciągnąć efektywnie pierwiastek kwadratowy z przynaj-mniej jednego elementu spośród a, b, c. Niech 2t będzie największą potęgą 2,która dzieli p− 1. Mamy więc p− 1 = 2ts, gdzie liczba s jest nieparzysta.Oznaczmy

α = as, β = bs, γ = cs, δ = ds.

Jeśli uda nam się znaleźć µ, takie, że α = µ2 to przyjmując f = µa(1−s)/2

dostajemy a = f2. Tak więc wystarczy, jeśli wyciągniemy efektywnie pier-wiastek kwadratowy z jednego z elementów α, β lub γ. Możemy napisać, żeα, β, γ, δ ∈ H, gdzie H jest maksymalną 2-podgrupą grupy Z∗p. Dla h ∈ Hniech ord(h) oznacza rząd elementu h. Rozróżniamy teraz dwa przypadki:

• jeśli ord(α) < ord(β) to istnieje liczba naturalna k taka, że α1 = αβ2k

ma rząd mniejszy niż rząd α. Kontynuując to postępowanie uzysku-jemy przedstawienie α = β2K .

• jeżeli natomiast ord(α) = ord(β) to ord(αβ) < ord(β) i jak wyżejuzyskamy efektywnie przedstawienie typu αβ = β2K . Ale wówczasγ = (δβ−K)2.

Podsumowując: metoda van de Woestijne pozwala efektywnie wycią-gnąć pierwiastek kwadratowy z przynajmniej jednego spośród elementów

129

Page 130: Kryptologia i Cyberbezpieczenstwo nr 6

M. Skałba

a, b, c ∈ Zp, o ile spełniają one równanie (2) – nie potrzebujemy przy tymniereszty kwadratowej, a więc obywamy się bez nieudowodnionych hipotez.

Należy jeszcze dodać, że A. Schinzel i M. Skałba we wspólnej pracy[6] rozpatrzyli przypadek A = 0. Ponadto M. Ulas w pracy [10] znacznieuprościł wyprowadzenie tożsamości (1) i, co najważniejsze, jego sposóbobejmuje również krzywe hipereliptyczne postaci

y2 = xn +Ax+B oraz y2 = xn +Ax2 +Bx, o ile AB = 0.

Metody naszkicowane w bieżącej pracy były potem i są dalej rozwijane in-tensywnie na całym świecie – obecny stan badań i bogatą literaturę możnaznaleźć w pracy [2].

Literatura

[1] E. Bach, Explicit bounds for primality testing and related problems,Math. Comp. 55 (1990), 355–380

[2] R.R. Farashahi, P.A. Fouque, I.E.Shparlinski, M. Tibouchi,J.F. Voloch, Indifferentiable deterministic hashing to elliptic andhyperelliptic curves, Math. Comp. 82 (2013), 491–512.

[3] H. Hasse, Zur Theorie der abstrakten elliptischen Funktionenkrper.I, II & III, Crelle’s Journal 175 (1936).

[4] N. Koblitz, Wykład z teorii liczb i kryptografii, WydawnictwaNaukowo-Techniczne,Warszawa 2006.

[5] N. Koblitz, Algebraiczne aspekty kryptografii, WydawnictwaNaukowo-Techniczne,Warszawa 2000.

[6] A. Schinzel, M. Skałba, On equations y2 = xn+ k in a finite field,Bull. Polish Acad. Sci. Math. 52 (2004), 223–226.

[7] A. Shallue, C. van de Woestijne, Construction of rational pointson elliptic curves over finite fields, Lecture Notes in Computer Science4076, Springer 2006, 510–524.

[8] D. Shanks, Five number-theoretic algorithms, Congressus Numeran-tium 7 , Proc. 2 nd Manitoba Conf. on Numerical Math. (Universityof Manitoba), 1972, 51–70.

[9] M. Skałba, Points on elliptic curves over finite fields, Acta Arith.117 (2005), 293–301.

[10] M. Ulas, Rational points on certain hyperelliptic curves over finitefields, Bull. Polish Acad. Sci. Math. 55 (2007), 97–104.

130

Page 131: Kryptologia i Cyberbezpieczenstwo nr 6

Kodowanie deterministyczne na krzywych eliptycznych

DETERMINISTIC ENCODING ON ELLIPTIC CURVES

Abstract. The methods of finding points on elliptic curves over finite fields are presentedwith special emphasis on deterministic algorithms. Such algorithms were unknown until2005. Earlier methods were probabilistic in nature and their efficiency was stronglyconditioned on unproved Riemann conjectures.

Keywords: elliptic curves, finite fields, deterministic encoding.

Page 132: Kryptologia i Cyberbezpieczenstwo nr 6
Page 133: Kryptologia i Cyberbezpieczenstwo nr 6

A FAMILY OF PAIRING-FRIENDLYSUPERELLIPTIC CURVES OF GENUS 4

Andrzej Dąbrowski

Institute of Mathematics, University of Szczecin,Wielkopolska 15, 70-451 Szczecin, Poland;

[email protected]

Abstract.We give explicit construction of pairing-friendly superelliptic curves of genus4 based on the closed formulas for the orders of their Jacobians.Keywords: superelliptic curve, Jacobian variety, Cocks-Pinch method, pairing-friendlyabelian variety.

1. Introduction

There are many results for constructing pairing-friendly ordinary el-liptic curves. On the other hand, there are very few results for explicit con-structions of pairing-friendly abelian varieties of higher dimension. Thesemostly concern the cases of dimension two ordinary surfaces. Freeman con-structs one such family for dimension three. The most common abelianvarieties used in cryptography are elliptic curves or Jacobians of hyperel-liptic curves of genus > 1. We refer to [1], [4], [5], [7], [2], [8] and referencestherein for further discussion.

In this paper we give explicit construction of pairing-friendly superel-liptic curves of genus four based on the closed formulas for the orders oftheir Jacobians. Our method is an analogue of the Cocks-Pinch methodand produces curves with ρ ≈ 8 (see section 6). Our work was inspired bythe article [7] by Kawazoe and Takahashi (see section 5).

2. Preliminaries

Let us recall some notations and definitions.

Let A be g-dimensional abelian variety defined over Fq, and let l bea prime number satisfying l - q. We say that A has embedding degree kwith respect to l if (i) A has an Fq-rational point of order l, and (ii) k isthe smallest integer such that µl is contained in Fqk . The last condition isequivalent to any of the following ones: (iia) k is the smallest integer such

Page 134: Kryptologia i Cyberbezpieczenstwo nr 6

A. Dąbrowski

that l divides qk−1, (iib) Φk(q) ≡ 0(mod l), where Φk is the kth cyclotomicpolynomial (see Lemma 4.1).

The embedding degree gets its name because one can use the (Weilor Tate) pairing to ‘embed’ a cyclic subgroup of A(Fq) of order l into themultiplicative group of the degree k extension of Fq.

In pairing-based cryptography, for an abelian variety A defined overFq, the following conditions must be satisfied to make a system secure:

(a) the order l of a prime order subgroup of A(Fq), and qk should belarge enough; (b) the embedding degree k and the ratio ρ = g log(q)

log(l) shouldbe approximately small.

In practice, it is recommended that l > 2160 and qk > 21024.Abelian varieties over Fq satisfying the above conditions are cal-

led pairing-friendly. Algebraic curves whose Jacobian varieties arepairing-friendly are also called pairing-friendly.

Let A be an abelian variety of dimension g defined over a finite fieldFq. Let hA(x) = x2g + a1x

2g−1+ ...+ ag−1xg+1+ agx

g + ag−1qxg−1+ ...+

a1qg−1x + qg be the characteristic polynomial of the Frobenius endomor-

phism of A. Note the folowing useful definitions: A is ordinary if the middlecoefficient ag of hA(x) is relatively prime to q, and A is supersingular if allof the complex roots of hA(x) are roots of unity times

√q.

Note that |A(Fq)| = hA(1).

3. Construction of pairing-friendly elliptic curves: theCocks-Pinch method

Let us recall the Cocks-Pinch algorithm for finding pairing-friendlyelliptic curves ([3], [2]).

Fix a positive integer k, and a prime l ≡ 1 mod k.Choose a positive integer X of order k in (Z/lZ)×, and a positive

integer D such that −D is a square modulo l.Fix s(mod l) such that s2 ≡ −D (mod l), and choose an integer Y

congruent to ±(X − 1)s−1 modulo l.Compute q = ((X + 1)2 +DY 2)/4.

If q is a prime, use CM method to construct elliptic curve E over Fqsuch that |E(Fq)| = q−X (see, for instance, [1 ], chapter VIII). If q is nota prime number, start again with a different X and/or Y .Remarks. (i) We obtain q ≡ X(mod l), hence l divides |E(Fq)| and k

is an embedding degree of E/Fq with respect to l. (ii) This method usually

134

Page 135: Kryptologia i Cyberbezpieczenstwo nr 6

A family of pairing-friendly superelliptic curves of genus 4

gives elliptic curves with ρ ≈ 2. However, the smallest known values of ρfor even embedding degrees 14 ≤ k ≤ 38 (limit as q, l→∞) were obtainedby the Cocks-Pinch method. For instance, ρ = 7/6 for k = 38 and ρ = 11/8for k = 20 (see [3]).

4. Some useful Lemma

Let Φk denote the k-th cyclotomic polynomial: Φk(x) =∏

(x − ζmk ),where 1 ≤ m ≤ k, (m, k) = 1. We have the folowing useful result ([4], Prop.2.3).

Lemma 4.1. (Freeman) Let A be an abelian variety defined over Fq. Letl be a prime number satisfying l - q, and let k be a positive integer. Assumethat the following conditions are satisfied:(i) hA(1) ≡ 0(mod l) ,(ii) Φk(q) ≡ 0(mod l) .

Then A has embedding degree k with respect to l.

Remark. The condition l | hA(1) guarantees that A has an Fq-rationalpoint of order l, and the condition l | Φk(q) implies that A has embeddingdegree k with respect to l.

5. A family of pairing-friendly hyperelliptic curves ofgenus 2

Here we recall the main results of [7]. The authors apply an analogueof the Cocks-Pinch method to construct a family of pairing-friendly hy-perelliptic curves of genus 2 with a prescribed embedding degree. Let usstress that the method is based on closed formulas for the orders of theJacobians, hence it allows to construct pairing-friendly hyperelliptic curvesin a very short time.

Theorem 5.1. If p ≡ 1 (mod 8), p = c2 + 2d2, c ≡ 1 (mod 4), ap−12 ≡

−1 (mod p), 2(−1)p−18 d ≡ (a

p−18 + a

3(p−1)8 )c (mod p), then the Jacobian

variety Ja of Ca : y2 = x5 + ax is simple over Fp, and hJa(T ) =T 4 − 4dT 3 + 8d2T 2 − 4dpT + p2.

Theorem 5.2. Fix a positive integer k. Moreover:(i) let l be a prime number satisfying LCM(8, k) | l − 1;

135

Page 136: Kryptologia i Cyberbezpieczenstwo nr 6

A. Dąbrowski

(ii) let α be a primitive kth root of unity in (Z/lZ)×; let β, γ ∈ N be suchthat β2 ≡ −1 (mod l) and γ2 ≡ 2 (mod l);

(iii) let c, d ∈ Z satisfy

c ≡ (α+ β) (γ(β + 1))−1 (mod l)

d ≡ (αβ + 1) (2(β + 1))−1 (mod l).

Then for a and p satisfying the assumptions of Theorem 5.1, the numberk is the embedding degree of Jac(Ca) over Fp with respect to l.

The above method produces curves of genus 2 with simple jacobians,and with ρ ≈ 4, for l ∈ (2160, 2160 + 220) or l ∈ (2256, 2256 + 220), k ≤ 32.

6. A family of pairing-friendly superelliptic curves ofgenus 4

Here we modify (a variant of) the Cocks-Pinch method (used in [7]) toconstruct a family of pairing-friendly superelliptic curves of genus 4 witha prescribed embedding degree.

Let Ja denote the Jacobian variety of Ca : y3 = x5 + a over Fp. Westart with the following explicit calculations ([6], Prop. 13).

Theorem 6.1. Let a be a nonzero integer, and p an odd prime with p - a.If p ≡ 2, 8 (mod 15), p = 3c2 + 5d2, then we have hJa(T ) = T 8 + 2p(3c2 −5d2)T 4 + p4.

Remark. (i) J(Ca) are simple over Fp for a and p satisfying the assump-tions above (simple argument using Theorem 6.1). (ii) J(Ca) (under thesame assumptions on a and p) are neither ordinary nor supersingular (useTheorem 6.1 and definitions from section 2).

Now we are ready to state the main result of this paper.

Theorem 6.2. Fix a positive integer k. Moreover:(i) let l be a prime number satisfying k|l − 1;(ii) let α be a primitive kth root of unity in (Z/lZ)×; let β, γ, δ, ω ∈ Nbe such that β2 ≡ −1 (mod l), γ2 ≡ 3 (mod l), δ2 ≡ 5 (mod l) andω2 ≡ α (mod l);

(iii) let c, d ∈ Z satisfy

c ≡ β(α2 − 1)2γω

(mod l)

d ≡ (α2 + 1)2δω

(mod l).

136

Page 137: Kryptologia i Cyberbezpieczenstwo nr 6

A family of pairing-friendly superelliptic curves of genus 4

Then for a and p satisfying the assumptions of Theorem 6.1, the numberk is the embedding degree of Jac(Ca) over Fp with respect to l.

Proof of this result uses Lemma 4.1 and Theorem 6.1. We omit thedetails.

Our method produces curves of genus 4 with simple jacobians, andwith ρ ≈ 8, for l ∈ (2160, 2160+ 220), k ≤ 50 (calculations were made by T.Jędrzejak).

References

[1] I. Blake, G. Seroussi, N. Smart, Elliptic curves in cryptography, ThePress Syndicate of the University of Cambridge, 2002

[2] D. Boneh, K. Rubin, A. Silverberg, Finding composite order ordinaryelliptic curves using the Cocks-Pinch method, J. Number Theory 131(2011), 832-841

[3] D. Freeman, Methods for constructing pairing-friendly elliptic curves,lecture at ECC 2006, available online

[4] D. Freeman, Constructing pairing-friendly genus 2 curves over primefields with ordinary Jacobians, Lecture Notes in Computer Science4575 (2007), 152-176

[5] D. Freeman, T. Satoh, Constructing pairing-friendly hyperelliptic cu-rves using Weil restriction, J. Number Theory 131 (2011), 959-983

[6] T. Jędrzejak, On the torsion of the Jacobians of superelliptic curvesyq = xp + a, Journal of Number Theory 145 (2014), 402-425

[7] M. Kawazoe, T. Takahashi, Pairing-friendly hyperelliptic curves withordinary Jacobians of type y2 = x5 + ax, Lecture Notes in ComputerScience 5209 (2008), 164-177

[8] K. Lauter, N. Shang, Generating pairing-friendly parameters for theCM construction of genus 2 curves over prime fields, Des. Codes Cryp-togr. 67 (2013), 341–355

RODZINA PF (PAIRING-FRIENDLY) KRZYWYCHSUPERELIPTYCZNYCH GENUSU 4

Streszczenie. Podajemy jawną konstrukcję pf (pairing-friendly) krzywych superelip-tycznych genusu 4, bazując na formułach dokładnych dla rzędów ich jakobianów.

Słowa kluczowe: krzywa supereliptyczna, rozmaitość Jakobiego, metoda Cocksa--Pincha, pf (pairing-friendly) rozmaitość abelowa.

Page 138: Kryptologia i Cyberbezpieczenstwo nr 6
Page 139: Kryptologia i Cyberbezpieczenstwo nr 6

III. ALGORYTMY STENOGRAFICZNEORAZ KRYPTOLOGICZNE I ICH

BEZPIECZEŃSTWOSTEGODROID – APLIKACJA MOBILNA DO

PROWADZENIAUKRYTEJ KOMUNIKACJI

Jerzy Gawinecki, Kamil Kaczyński

Wojskowa Akademia Techniczna, Wydział Cybernetyki,Instytut Matematyki i Kryptologii,00-908 Warszawa, ul. S. Kaliskiego 2

[email protected], [email protected]

Streszczenie.Komputery i telefonykomórkowe sąnarzędziamiwykorzystywanymiw nie-malże wszystkich dziedzinach życia codziennego. Ogólnoświatowe sieci komputerowe łą-czą zarówno komputery osobiste, wielkie centra danych, jak i urządzenia przenośne takiejak telefony komórkowe. Zapewnienie bezpieczeństwa systemów informatycznych wy-maga wykorzystania technik umożlwiających przesyłanie danych do zdalnych lokalizacjiw sposób gwarantujący ich poufność, integralność i dostępność. Do realizacji tych ce-lów wykorzystuje się techniki kryptograficzne i steganograficzne. Kryptografia obrabiawiadomości w taki sposób, aby nie można było ich w łatwy sposób zrozumieć, zaś stega-nografia ukrywa wiadomości, tak aby ich istnienie było niemożliwe do odkrycia. Obydwiemetody można ze sobą łączyć, dzięki czemu przesyłana wiadomość może być chronionaw dwojaki sposób. W tym przypadku, gdy steganografia zawiedzie i wiadomość zostaniewykryta, nadal nie będzie możliwe odczytanie jej treści przez wzgląd na zastosowanemetody kryptograficzne. W ramach niniejszej pracy wykonano implementację autor-skiego algorytmu steganograficznego, wykorzystującego liniowe kody korekcji błędów.Opracowana aplikacja jest przeznaczona dla urządzeń pracujących pod kontrolą sys-temu Android, tym samym istnieje szerokie grono odbiorców takiego oprogramowania.

Słowa kluczowe: steganografia, kryptografia, Android

1. Wstęp

Gwałtowny postęp technologiczny w zakresie budowy urządzeń mobil-nych doprowadził do sytuacji, w której mogą one z powodzeniem zastąpićkomputery osobiste. Urządzenia takie, jak smartfony wydają się być ideal-

Praca dofinansowana ze środków NCBiR na lata 2013-2018, w ramach projektu

numer DOBR/0001/RON/ID1/2013/01.

Page 140: Kryptologia i Cyberbezpieczenstwo nr 6

J. Gawinecki, K. Kaczyński

nymi do prowadzenia komunikacji. Wątpliwym natomiast jest, czy komu-nikacja prowadzona w taki sposób jest w pełni bezpieczna. Istnieje wielemożliwości przechwytywania transmitowanych danych, a także ich odczyty-wania. Warto nadmienić, że metody kryptograficzne, które są powszechniewykorzystywane, nie gwarantują pełnego bezpieczeństwa prowadzonej ko-munikacji. Przykładem może być tu m. in. skompromitowany szyfr strumie-niowy A5/1 stosowany do przykrycia kryptograficznego komunikacji GSM.Ostatni atak na ten algorytm pochodzi z 2009 roku [5]. Pozwala on na zła-manie kluczy A5/1 w czasie 3-5 minut przy wykorzystaniu tzw. „tęczowychtablic o rozmiarze 2 TB.

Producenci oprogramowania skupiają się przede wszystkim na stoso-waniu kryptografii. Jest to słuszne podejście, jednakże stosowanie wyłącz-nie kryptografii niesie także pewne zagrożenia. Strony, które będą chroniłyswoją komunikację z wykorzystaniem kryptografii niechybnie zwrócą na sie-bie uwagę odpowiednich służb. Powyższe może zostać ograniczone poprzezpołączenie metod kryptograficznych ze steganografią. Zabieg taki pozwalanie tylko na zabezpieczenie przesyłanych informacji, ale także na ukryciesamego faktu prowadzenia komunikacji.

W niniejszej pracy przedstawiono oprogramowanie „Stegodroid” stwo-rzone na potrzeby urządzeń pracujących pod kontrolą systemu operacyj-nego Android. Oprogramowanie łączy autorski algorytm steganograficznyoparty na liniowych kodach korekcji błędów i klasyczny szyfr blokowy AES.

2. Algorytm steganograficzny

Na potrzeby aplikacji „Stegodroid zaadaptowano algorytm stegano-graficzny będący połączeniem algorytmu LSB i idei kodowania syndro-mami [10]. Algorytm ten wykorzystuje kod Hamminga, który należy doklasy liniowych kodów korekcji błędów. Kod korekcji błędów to nadmia-rowa informacja dodana do ciągu binarnego, która pozwala na całkowitąlub częściową detekcję i korekcję błędów powstałych w wyniku zakłóceńlub częściowej modyfikacji sygnału źródłowego. Kodowanie korekcyjne jeststosowane wtedy, gdy ponowne przesłanie informacji jest kosztowne, kło-potliwe lub niemożliwe. Zarówno detekcja jak i korekcja błędów opiera sięna założeniu, że jedynie pewne sekwencje odebranych bitów są poprawne.

Utworzenie n-bitowego słowa kodowego wymaga dodania do k-bitowe-go słowa wiadomości n−k bitów parzystości. Kod taki jest nazywany kodemblokowym, ponieważ jednocześnie kodowane są bloki danych składającesię z wielu bitów. Gdy bity wiadomości nie zostają zmodyfikowane, kodnazywany jest kodem systematycznym. Dekodowanie takiego kodu wymagajedynie odrzucenia uprzednio dodanych bitów parzystości.

140

Page 141: Kryptologia i Cyberbezpieczenstwo nr 6

Stegodroid – aplikacja mobilna do prowadzenia ukrytej komunikacji

Liniowy kod blokowy (n, k) to k-wymiarowa podprzestrzeń przestrzeniwektorowej n-wymiarowej. Możliwe zatem jest znalezienie k liniowo nieza-leżnych wektorów, które będą bazą przestrzeni kodowej. Kod liniowy (n, k)może być jednoznacznie określony przez dowolny zbiór k liniowo niezależ-nych wektorów, tworzących bazę przestrzeni kodowej, która stanowi pod-stawę do utworzenie macierzy generującej kod Gk×n.Słowa kodowe są uzyskiwane w wyniku mnożenia słów wiadomości przezmacierz G. Słowo kodowe to wektor: c = (c0, c1, · · · , cn−1), słowo wiado-mości to wektor m = (m0,m1, · · · ,mk−1).Zależność pomiędzy wektorem c i m przedstawiona jest poniżej:

c = mG

Liniowy kod Hamminga jest kodem korekcyjnym zbudowanym nadGF (2). Macierz generującaG kodu Hamminga (7,4) może mieć następującąpostać:

G =

1 1 1 0 0 0 01 0 0 1 1 0 00 1 0 1 0 1 01 1 0 1 0 0 1

Aby zakodować wiadomość m = 1010 wykonujemy następującą ope-

rację:

[ 1 1 0 0 ]

1 1 1 0 0 0 01 0 0 1 1 0 00 1 0 1 0 1 01 1 0 1 0 0 1

=

1011010

T

Tak otrzymany wektor kodowy c = 1011010. Detekcji i korekcja błędówwymaga zastosowania tzw. macierzy kontroli parzystości H. Macierz kon-troli parzystości dla kodu Hamminga (7,4) ma postać:

H =

1 0 1 0 1 0 10 1 1 0 0 1 10 0 0 1 1 1 1

Co jest równoważne poniższemu układowi równań:

x1 + x3 + x5 + x7 = 0(mod 2)

x2 + x3 + x6 + x7 = 0(mod 2)

x4 + x5 + x6 + x7 = 0(mod 2)

141

Page 142: Kryptologia i Cyberbezpieczenstwo nr 6

J. Gawinecki, K. Kaczyński

Macierz kontroli parzystości pozwala na obliczenie syndromu s. Syn-drom zawiera informację o położeniu błędu w przesłanym słowie kodowym.Syndrom obliczany jest przy wykorzystaniu następującej formuły:

s = HcT

Przykładowo, gdy otrzymamy wektor c = 0110101, obliczenia wyglą-dają następująco:

1 0 1 0 1 0 10 1 1 0 0 1 10 0 0 1 1 1 1

0110100

=

110

Wektor sT zawiera informacje o bicie, na którym nastąpiło przekłama-nie. Informacja ta jest zapisana z wykorzystaniem kodowania little-endian.W powyższym przykładzie syndrom wskazuje na przekłamanie bitu nr 6

W steganografii stosuje się tzw. kodowanie syndromami. Zabieg tenpozwala na ukrycie większej ilości danych w obrazie, przy jednoczesnymzmniejszeniu ilości wprowadzanych zniekształceń. Przykładowo, wykorzy-stanie kodu Hamminga (7,4) pozwala na ukrycie 3 bitów wiadomości w 7 bi-tach nośnika. W tym celu zmieniana jest wartość tylko jednego bitu nośnika.Pojemność (w bitach) standardowej bitmapy o wymiarach h na w pikselijest w przybliżeniu równa:

c =h · w · 3

7Aby ukryć dane, należy zmodyfikować słowo kodowe w taki spo-

sób, aby syndrom obliczony dla zmodyfikowanego słowa kodowego równałsię ukrywanej wiadomości. Przykładowo, gdy w słowie kodowym 1001001chcemy ukryć bity 101:

a. Obliczamy syndrom dla słowa kodowego:

1 0 1 0 1 0 10 1 1 0 0 1 10 0 0 1 1 1 1

1

001001

=

010

142

Page 143: Kryptologia i Cyberbezpieczenstwo nr 6

Stegodroid – aplikacja mobilna do prowadzenia ukrytej komunikacji

b. Obliczony syndrom s = 010 różni się od wiadomości na wszystkichtrzech bitach.

c. Zgodnie z układem:

x1 + x3 + x5 + x7 = s1

x2 + x3 + x6 + x7 = s2

x4 + x5 + x6 + x7 = s3

należy zmienić bit x7 na przeciwny.d. Nowe słowo kodowe ma postać 1001000.e. Obliczamy ponownie syndrom:

1 0 1 0 1 0 10 1 1 0 0 1 10 0 0 1 1 1 1

1001000

=

101

Poniższy rysunek przedstawia schemat blokowy zmodyfikowanegoalgorytmu LSB:

Rysunek 1. Schemat blokowy zmodyfikowanego algorytmu LSB

143

Page 144: Kryptologia i Cyberbezpieczenstwo nr 6

J. Gawinecki, K. Kaczyński

Ze względu na sposób interpretacji bitmap przez system Android,w procesie ukrywania wiadomości wykorzystany został drugi najmniej zna-czący bit koloru niebieskiego każdego z pikseli.

3. Algorytm kryptograficzny

Opracowana aplikacja wykorzystuje symetryczny szyfr blokowy AESz kluczem o długości 128 bitów. AES wykonuje 10 rund podstawieniowo--przestawieniowych. Każda z nich składa się z podstawienia wstępnego,permutacji macierzowej (mieszanie wierszy i mieszanie kolumn) oraz mo-dyfikacji za pomocą klucza. Trybem wybranym na potrzeby wykonanejaplikacji jest tryb wiązania bloków zaszyfrowanych (CBC). Tryb ten wyko-rzystuje sprzężenie zwrotne i cechuje się samosynchronizacją. W tym trybieblok tekstu jawnego jest sumowany modulo 2 z szyfrogramem poprzedzają-cego go bloku. Efektem powyższego jest zależność od poprzednich bloków.Pierwszy blok jest sumowany modulo 2 z losowo wygenerowaną wartościąpoczątkową IV.

Wybór algorytmu AES był podyktowany szeroką dostępnością imple-mentacji, a także wysokim poziomem bezpieczeństwa potwierdzonym przezmiędzynarodową społeczność kryptologiczną.

4. Implementacja

Aplikacja Stegodroid została zbudowana z wykorzystaniem pakietuAndroid Developer Tools (ADT) v22.3.0-887826. ADT to dodatek do śro-dowiska Eclipse przeznaczony do projektowania aplikacji przeznaczonychdla systemu Android. ADT rozszerza funkcjonalność środowiska Eclipsepoprzez łatwe tworzenie nowych projektów systemu Android, tworzenie in-terfejsu użytkownika, dodawania pakietów bazujących na oficjalnym API,a także łatwe testowanie stworzonych aplikacji. Aplikacje mogą być uru-chamiane na wbudowanym emulatorze lub na fizycznym urządzeniu pod-łączonym do ADT.

Aplikacja Stegodroid może zostać uruchomiona na urządzeniu wypo-sażonym w system operacyjny Android w wersji 3.2 lub nowszy. Do popra-wnej pracy wymagany jest dostęp do zapisu i odczytu pamięci zewnętrznej,a także dostęp do aparatu fotograficznego wbudowanego w urządzenie.Przez wzgląd na ograniczenia Android API niezbędne było wykorzystaniedwóch bibliotek zewnętrznych. Pierwsza biblioteka aFileDialog jest wyko-rzystywana do wyświetlenia okna dialogowego, pozwalającego na dokona-nie wyboru pliku, który ma przenosić wiadomość. Biblioteka pozwala także

144

Page 145: Kryptologia i Cyberbezpieczenstwo nr 6

Stegodroid – aplikacja mobilna do prowadzenia ukrytej komunikacji

Rysunek 2. Schemat algorytmu AES

na wybór folderów, stosowanie filtrów wyboru przy wykorzystaniu wyra-żeń regularnych, a także na tworzenie nowych plików i folderów. Drugąz zastosowanych bibliotek jest mCrypt. Biblioteka ta pozwala na wykorzy-stanie istniejącej implementacji algorytmu AES w trybie CBC, ze szczegól-nym uwzględnieniem szyfrowania strumieni tekstu. Biblioteka ta zapewniapełną kompatybilność ze swoim odpowiednikiem stosowanym w PHP.

145

Page 146: Kryptologia i Cyberbezpieczenstwo nr 6

J. Gawinecki, K. Kaczyński

Rysunek 3. Ekran główny aplikacji Stegodroid

Rysunek 4. Okno dialogowe wyboru pliku

146

Page 147: Kryptologia i Cyberbezpieczenstwo nr 6

Stegodroid – aplikacja mobilna do prowadzenia ukrytej komunikacji

Aplikacja pozwala na dodanie wiadomości do:

• plików utworzonych wcześniej, dostępnych w pamięci urządzenia,• obrazów dostępnych w galerii urządzenia,• zdjęć wykonanych aparatem fotograficznym wbudowanym w urządze-

nie.

Plik wynikowy jest zapisywany w formacie kompresji bezstratnej PNGw pamięci urządzenia.

5. Uzyskane wyniki

Do sprawdzenia poprawności działania aplikacji Stegodroid wykorzy-stano telefon komórkowy Samsung GT-i9505. Jako nośnik został wybranyobraz kot.png [1], w którym ukryto 3597 bitów wiadomości. Obrazy poniżejprezentują ukrywanie wiadomości w wybranym obrazie:

Tak otrzymany obraz poddany został stegoanalizie wizualnej i RS. Ste-goanaliza wizualna pozwala odkryć zniekształcenia wprowadzone do obrazuprzez algorytmy takie jak np. LSB. Poniższe obrazy przedstawiają wynikidla dwóch najmniej znaczących bitów obrazu.

Analiza powyższych obrazów nie pozwala na wyciągnięcie żadnychwniosków na temat umieszczonej wiadomości. W związku z powyższymobraz został poddany także stegoanalizie algorytmem RS. W tym celu po-służono się oprogramowaniem StegSecret [2]. Tabela przedstawia wynikiprzeprowadzonego testu.

Tabela 1Wyniki analizy algorytmem RS

Procent zmienionych Procent zmienionych Procent zmienionychObraz bitów pikseli koloru bitów pikseli koloru bitów pikseli koloru

czerwonego zielonego niebieskiego

Oryginalny 0,088 0,257 0,018

Stego 0,088 0,257 0,057

Jak wynika z założeń algorytmu RS [3], [4], można przyjąć, że obrazprzenosi ukrytą treść, wtedy, gdy liczba zmienionych pikseli jest większaniż 5%. W przypadku zastosowanego algorytmu uzyskano wynik 0,057% dlakoloru niebieskiego, co jest wartością 100-krotnie niższą. Dodatkowo, prze-analizowano obraz oryginalny jak i stegogram przy wykorzystaniu atakuChi-kwadrat [5]. Na rysunkach 9 i 10 zaprezentowano prawdopodobieństwoumieszczenia wiadomości odpowiednio w obrazie oryginalnym jak i stego-

147

Page 148: Kryptologia i Cyberbezpieczenstwo nr 6

J. Gawinecki, K. Kaczyński

Rysunek 5. Ukrywanie wiadomościw nośniku

Rysunek 6. Ukrywanie wiadomościw nośniku

Rysunek 7. LSB obrazu z wbudowanąwiadomością

Rysunek 8. LSB obrazu oryginalnego

gramie. Jak można zauważyć, obydwa wykresy są niemal identyczne, a samatak określa długość wprowadzonej wiadomości na ok. 100 B.Ponownie można wyciągnąć wnioski, że tak spreparowany obraz nie prze-nosi żadnej ukrytej treści. Wymiana wiadomości o rozmiarze 3597 bitówpozostanie zatem niezauważona. Warto nadmienić, że odpowiada to wia-domości o długości 514 znaków.

148

Page 149: Kryptologia i Cyberbezpieczenstwo nr 6

Stegodroid – aplikacja mobilna do prowadzenia ukrytej komunikacji

Rysunek 9, 10. Wyniki ataku chi-kwadrat dla obrazu oryginalnego i stegogramu

6. Wnioski

Przedstawiona w pracy aplikacja Stegodroid pozwala na prowadze-nie ukrytej komunikacji użytkownikom urządzeń przenośnych pracującychpod kontrolą systemu Android. Zastosowanie algorytmu steganograficz-nego o obniżonej liczbie wprowadzanych zmian [10], pozwoliło na znaczącezmniejszenie możliwości wykrycia faktu wprowadzenia danych do nośnika.Dodatkowym składnikiem zwiększającym bezpieczeństwo komunikacji jestzastosowany algorytm szyfrującyAES-128, który nawet w przypadku odzyskania ukrytych danych nie po-zwoli na odtworzenie przenoszonej w nich informacji.

W kolejnych etapach rozwoju aplikacji planuje się wprowadzenie algo-rytmu steganograficznego dla stratnych formatów kompresji plików gra-ficznych, a także możliwość bezpośredniego przesyłania wytworzonychplików poprzez e-mail, bluetooth, NFC, a także serwisy społecznościowe.

Literatura

[1] http://meinkat.files.wordpress.com/2013/09/cat using computer.jpgdostęp 16.07.2014.

[2] http://stegsecret.sourceforge.net/dostęp 11.07.2014.[3] J. Fridrich, M. Goljan, Rui Du Detecting LSB steganography in

color, and grayscale images. IEEE Multimedia 8 pp 22-28, 2001.[4] J. Fridrich, M. Goljan, D. Hogea, D. Soukal, Quantitative

steganalysis of digital images: estimating the secret message length.

149

Page 150: Kryptologia i Cyberbezpieczenstwo nr 6

J. Gawinecki, K. Kaczyński

Multimedia Systems 9, pp 288-302, 2003.[5] N. Karsten, Ch. Paget, ”GSM: SRSLY?”, Chaos Communication

Congress, 21.01.2010.[6] W. Mochnacki, Kody korekcyjne i kryptografia, Oficyna Wydawni-

cza Politechniki Wrocławskiej, 2000.[7] J. Gawinecki, J. Szmidt, ”Zastosowanie ciał skończonych i krzy-

wych eliptycznych w kryptografii”, Wydawnictwo Instytutu Matema-tyki i Badań Operacyjnych, WAT, 1999.

[8] I. J. Cox, M. L. Miller, J. A. Bloom, J. Fridrich, T. Kal-ker, ”Digital Watermarking and Steganography” (Second Edition),Morgan Kaufmann, 2008.

[9] K. Kaczyński, Steganografia z wykorzystaniem cyklicznych kodówkorekcji błędów. Biuletyn WAT, Vol. LXII, Nr 4, 2013, pp. 267–277.

[10] K. Kaczyński, Steganografia z wykorzystaniem optymalnych kodówliniowych, Nowe techniki badań kryminalistycznych a bezpieczeństwoinformacji, Wyd. PWN 2014, ISBN 978-83-01-17890-1, str. 110–120.

STEGODROID – MOBILE APPLICATION TO CONDUCTCOVERT COMMUNICATION

Abstract. Computers and mobile phones are tools used in almost all areas of dailylife. The worldwide computer networks are connecting a personal computers as well asa large data centers and mobile devices such as a mobile phones. Ensuring the security ofinformation systems requires the use of techniques to send data to remote sites in a waythat ensures the confidentiality, integrity and availability. These goals are achieved byusing an cryptographic and steganographic techniques. Cryptography process messagesin such a way that they can not be easily understood, when steganography hides themessage, so that their existence is impossible to discover. In some cases, transmission ofencrypted messages can arouse suspicions, while messages sent using steganography willremain undetected. Both methods can be combined, so that the transmitted messagecan be protected in two ways. In this case, if the steganography fails and the messageis detected, the content of the message will be still protected by cryptography. In thispaper we described our implementation of proprietary steganographic algorithm usinglinear error correction codes. The developed application is designed for devices runningunder Android OS, thus there is a wide range of customers for such a software.

Keywords: steganography, cryptography, Android

Page 151: Kryptologia i Cyberbezpieczenstwo nr 6

COMPARISON OF ALGORITHMS FORFACTORIZATION OF LARGE NUMBERS

HAVING SEVERAL DISTINCT PRIMEFACTORS

Tomasz Kijko, Micha l Wronski

Institute of Mathematics and Cryptology, Cybernetics Faculty,Military University of Technology, Warsaw, Poland

E-mail: [tkijko,mwronski]@wat.edu.pl

Abstract.We present analysis of security of the most known assymetric algorythm RSAand its modern version MultiPrime RSA. We focused on more precisious estimations oftime complexity of two factorization algorithms: Elliptic Curve Method and GeneralNumber Field Sieve. Additionally for the MultiPrime RSA algorithm we computed themaximal number of prime factors for given modulus length which does not decrease thesecurity level.Keywords: factorization, MultiPrimeRSA ECM GNFS smoothness

1. Introduction

Many public key algorithms base on the factoring problem. The fastestknown algorithm of factorization for large numbers is GNFS (General Num-ber Field Sieve). The expected running time of the algorithm depends onlyon the size of the number and it is not sensitive for small factors (small incomparison with the size of the number).

Analysis of security the public key algorithms often base on the expec-ted time of running GNFS. If the number has more factors than two, thenthe other factorization algorithms may be faster, like ECM (Elliptic CurveMethod).

In this article we will show a comparison between expected time ofrunning ECM and GNFS depending on the size of the number and thenumber of prime factors. However, parallel hardware implamentations areconsidered (see [8]) we focused on single processor implementations.

This paper devoted to the “Cryptology and Cyberdefence” was supported

by The National Centre for Research and Development under the project number

DOBR/0001/RON/ID1/2013/01.

Page 152: Kryptologia i Cyberbezpieczenstwo nr 6

T. Kijko, M. Wronski

2. GNFS (General Number Field Sieve)

2.1. Introduction to GNFS

The biggest numbers being the product of two distinct prime factorshave been factorized during the RSA Challenge. Many of these numbershave been factorized using very advanced solutions based on parallel archi-tectures what in the result makes hard to compare the time of factoringthese numbers.

We used the data included on the website of RSA Challenge, so wewere able to estimate the number of all instructions needed to make a sievestep in GNFS Algorithm.We were not able to estimate the number of instructions needed to makeall steps of GNFS algorithm but we knew that the sieve step is the longestof all steps in GNFS algorithm and takes from 60% to 80% of amount oftime. In these circumstances we estimated the running time of GNFS bythe time of sieving step.

2.2. The approximating function

It is well known that expected running time of GNFS algorithm is sube-xponential given by the formula:

O

(e3√649 (lnn)

13 ·(ln(lnn))

23

).

Because of using the big O notation, we are not able to estimate expectedtime so properly if we do not know the leading coefficient of

e3√649 (lnn)

13 ·(ln(lnn))

23 .

So we are obligated to looking for a function:

A · e3√649 (lnn)

13 ·(ln(lnn))

23 = e

3√649 (lnn)

13 ·(ln(lnn))

23+a,

where a = lnA.To find out the constant a, we make the following transformations:

Let n1, n2, . . . nk be RSA modules. For each ni we denote its factorization

time by yi. Then we can denote: yi = e3√649 (lnni)

13 ·(ln(lnni))

23+a. Then:

3

√649

(lnni)13 · (ln (lnni))

23 + a = ln yi.

152

Page 153: Kryptologia i Cyberbezpieczenstwo nr 6

Comparison of algorithms for factorization of large numbers . . .

We are looking for the minimum of the function:

f (a) =k∑i=1

(3

√649

(lnni)13 · (ln (lnni))

23 + a− ln yi

)2.

Afler substituting 3

√649 (lnni)

13 · (ln (lnni))

23 by xi we have got:

f (a) =k∑i=1

(xi + a− ln yi)2.

Using the data from RSA Challenge presented in Table 1 we estimateda = −27.5622.

Table 1: Numbers broken in RSA Challenge (Based on [4] and [6])

Name of Number of Number of Number of Estimated timethe number decimal digits bits instructions on 3.3 GHz[s]

RSA 140 140 465 2.72 · 1016 8.25 · 106

RSA 155 155 515 2.52 · 1017 7.65 · 107

RSA 160 160 532 1.88 · 1016 5.70 · 106

RSA 576 173 576 3.82 · 1018 1.16 · 109

RSA 640 193 640 2.08 · 1018 6.31 · 108

RSA 768 231 768 1.39 · 1020 4.20 · 1010

We also made computations1 of factoring large numbers with theGNFS algorithm using Cado-NFS2 implementation. The results are basedon factorization numbers from 260 to 350 bits.

The results we got are very similar to these that we got from RSAChallenge. We obtained a = −26.7220. The difference is small and is causedby taking much smaller numbers to computation than in RSA Challengeand because we had results of a sieving step from RSA Challenge only.

1 Computations were made on 3.3 GHz chipset.2 See [7].

153

Page 154: Kryptologia i Cyberbezpieczenstwo nr 6

T. Kijko, M. Wronski

3. ECM (Elliptic Curve Method)

3.1. Introduction to ECM

The Elliptic Curve Method is based on the idea used firstly in Pollardp− 1 algorithm.Let’s consider elliptic curve over the ring Z/nZ:

Ca,b : Y 2Z = X3 + aXZ2 + bZ3,

where GCD(n, 4a3 + 27b2

)= 1.

Let’s define the point of this elliptic curve in projective coordinates:

P = (x, y, z) ∈ Ca,b(Z/nZ).

Let’s denote the smallest prime factor of factorized number n by p.From Hasse’s theorem it is well known that |Np − (p+ 1)| < 2

√p,

where Np is the order of group of Fp rational points on Ca,b curve. Thenwe are supposed to choose the number B and to compute k =

∏Br=2 r

e(r),where e(r) = ⌊logr(p+ 2

√p+ 1)⌋ and the point (xk, yk, zk) = [k]P

(mod n).Finally, if Np|k, then p|zk and the divisor of number N may be found

by counting GCD (zk, n).From the facts described above, it is obvious that the algorithm will

be successful with big probability if we find the elliptic curve with B –smooth order.

3.2. ECM algorithm complexity

Estimation of ECM expected running time is not trivial. There are usedseveral hypothesis, some of them partially proved.

In the first article about Elliptic Curve Method (see [14]), Hendrik W.Lenstra described estimation of expected running time. In this article wetry to show the estimation in slightly different way.

Hypotesis 1 (Sato – Tate Hypothesis). By ep we denote deviationfrom the center of the interval which consists the order of elliptic curve.By ap = ep

2√p we denote normalized deviation. Then ap ∈ ⟨−1, 1⟩ and

density of probability distribution of finding out the elliptic curve withgiven deviation t is equal:

√1− t2.

154

Page 155: Kryptologia i Cyberbezpieczenstwo nr 6

Comparison of algorithms for factorization of large numbers . . .

Figure 1. The distribution of probability density of finding elliptic curvewith given normalized deviation

This hypothesis has been proved for almost all elliptic curve without com-plex multiplication.

Assuming the hypothesis as true, we get the following conclusion:

The probability of finding out the elliptic curve with the given deviation

t ∈ ⟨− 12 ,12 ⟩ is equal to the definite integral:

∫ 12

− 122π

√1− t2 dt ≈ 0.608998.

Moreover, we can assume uniform distribution in this interval.

3.2.1. The number of B – smooth numbers in the given intervaland consequences

To estimate the ECM time complexity we have to find out how many B

– smooth numbers are in interval (x−√x+ 1, x+

√x+ 1) for the given

smoothness bound B.

Let’s denote by Ψ (x, B) the number of B – smooth numbers in the interval

⟨1, . . . , x⟩. Then we know3, that Ψ(x, x

1u

)= xu−u+O(u) ≈ xu−u. For large

numbers x we can simplify interval to (x−√x, x+

√x), which gives the

3 See [15], page 77.

155

Page 156: Kryptologia i Cyberbezpieczenstwo nr 6

T. Kijko, M. Wronski

same probability of finding B – smooth number:

Ψ(x+√x, (x+

√x)1u

)− Ψ

(x−√x, (x−

√x)1u

)2√x

=(x+

√x)u−u − (x−

√x)u−u

2√x

= u−u >Ψ(x+√x, x

1u

)− Ψ

(x−√x, x

1u

)2√x

.

Finally we would like to count the probability of getting in interval(x−

√x, x+

√x) the B – smooth number:

Ψ(x+√x, x

1u

)− Ψ

(x−√x, x

1u

)2√x

.

The solution of this problem is not obvious. There are some theorems thathelp to estimate the number of B – smooth numbers under some conditions:Ψ(x+ xβ , x

1u

)−Ψ

(x, x

1u

)≫ xβu−u, where β > 1

2 , u > 0. Unfortunately,

the case for β = 12 has not been proved yet.

Moreover, even assuming the Riemann Hypothesis is true, we are not ableto prove it.In this case we assume that:

Ψ(x+√x, x

1u

)− Ψ

(x, x

1u

)≫√xu−(u+o(u)).

Then the probability of getting the B – smooth number in interval (x −c√x, x+ c

√x) is ≫ u−(u+o(u)).

Under presented conditions we can expect, that the proper elliptic curvewill be found after about 1

0,608998uu = 1.642042uu trials.

3.2.2. Estimating of expected running time of algorithm

Every step requires lnM(B) additions of points on elliptic curve and everyaddition takes O

(ln2n

)of operations, where M (B) = LCM(1, . . . , B)

Let’s suppose that B = p1u . Now we are looking for such u, for which

the expected running time is the smallest:

T (u, n, p) = O(ln2n

)O (lnM (B))O (uu)

= A · ln2n · lnM(B) · uu,

where A is a constant.

156

Page 157: Kryptologia i Cyberbezpieczenstwo nr 6

Comparison of algorithms for factorization of large numbers . . .

The second Tshebyshev’s function helps us to find out the estimation ofln (LCM (1, . . . , B))4

ψ (B) = ln (LCM (1, . . . , B)) ≈ B.

Then:T (u, n, p) = A · ln2n ·B · uu = A · ln2n · p 1u · uu.

Let’s denote by S (u, n, p) = ln (T (u, n, p)). We have:

S (u, n, p) = ln(A · ln2n · p 1u · uu

)= lnA+ ln ln2n+

1u

ln p+ ulnu.

Then:∂S (u, n, p)

∂u= − ln p

u2+ lnu+ 1 = 0

andu2 (1 + lnu) = ln p,

u2 (1 + lnu) ≈ u2lnu ≈ ln p,

u2lnu2 ≈ 2ln p.

Finally we get u =√2ln p√lnu2

, but u2lnu = ln p and from this equation weget:

lnu2 + ln lnu = ln ln p.

Because lnu2 ≫ ln lnu, we estimate lnu2 = ln ln p, what gives

u =√

2ln p√ln ln p

.

Then

p1u = eulnu = e

ln p√2ln p

√ln ln p

= e1√2

√ln p·ln ln p

and

uu = eulnu = eln pu = e

ln p√2ln p

√ln p·ln ln p

= e1√2

√ln p·ln ln p

.

Finally we have

T (u, n, p) = A · ln2n · e√2ln p·ln ln p.

4 See [2].

157

Page 158: Kryptologia i Cyberbezpieczenstwo nr 6

T. Kijko, M. Wronski

4. Main results

We made the estimation of factorization running time of GNFS whichis given by function

e3√649 (lnn )

13 ·(ln(lnn) )

23−27.5622. (1)

We made load of computations of factoring by ECM numbers beingproducts from 2 to 6 factors, each the same length, from 80 to 130 bits.We used the algorithm for point addition on elliptic curve with complexityO(lnn (ln lnn)2 (ln ln lnn)) that lead us to the formula of time complexityfor ECM:

e√2ln p·ln ln p+ln(lnn (ln lnn)2 (ln ln lnn)) +a. (2)

From practical and theoretical obsrevations, which will be described below,we consider that constant a should be different for different numbers offactors. So we can describe the time complexity of factorisation by ECMby formula:

e√2ln p·ln ln p+ln(lnn (ln lnn)2 (ln ln lnn)) +ai , (3)

where ai is equal:

• a2 = −27.1957 for 2 factors;• a3 = −27.7505 for 3 factors;• a4 = −28.1881 for 4 factors;• a5 = −28.4320 for 5 factors;• a6 = −28.6344 for 6 factors.

The differences between these values are the result of probability of findingany non–trivial divisor of modulus. The more factors the number has, thebigger is probability of finding out the proper elliptic curve with goodparameters.If the probability of finding a proper elliptic curve for given smallest factoris equal to P , then if there are k factors and all are the same length, theprobability of finding the non–trivial factor is given by:

d(k) = 1− P k − (1− P )k

= kP −(k

2

)P 2 +

(k

3

)P 3 − . . .+

((−1)n+1−1

)Pn.

158

Page 159: Kryptologia i Cyberbezpieczenstwo nr 6

Comparison of algorithms for factorization of large numbers . . .

Because in our computations n is small (not bigger than 6) and P is verysmall, we can consider that:

d(k) = 1− P k − (1− P )k

= kP −(k

2

)P 2 +

(k

3

)P 3 − . . .+

((−1)n+1−1

)Pn ≈ kP.

Then it is easy to see, that d(k+1)d(k) ≈k+1k . The probability has a direct

impact for the expected running time of the alhorithm. The bigger proba-bility, the smaller is constant ai.So we may expect that ai − ai−1 ≈ ln

(i−1i

), what gives:

a3 − a2 = −0.4055, a4 − a3 = −0.2877,

a5 − a4 = −0.2231, a6 − a5 = −0.1823.

Constants we got in our computations gave results:

a3 − a2 = −0.5548, a4 − a3 = −0.4376,

a5 − a4 = −0.2439, a6 − a5 = −0.2024.

Basing on our estimated formulas (1) and (3) we were able to comparetime required to factorization each number by GNFS and ECM algorithms.We consider that secure MultiPrime RSA modulus should not be factorizedfaster by ECM than GNFS algorithm. The Table 2 presents the smallestlength of secure modules which may consist from given number of cofactorsof similar length.

Table 2: Length of number for which GNFS and ECM have the sameexpected running time

Number of factors The length of number in bits2 83 7244 40045 111556 23909

159

Page 160: Kryptologia i Cyberbezpieczenstwo nr 6

T. Kijko, M. Wronski

In 2000 year the COMPAQ made a comparison (Compaq 2000) be-tween speed of factorization large numbers being the product of severalprimes by GNFS and ECM algorithms.

The calculations were done for expected running times given by follo-wing formulas:

• e1.923· 3√lnn·ln2(lnn) for GNFS algorithm.

• 2(log10n)2e√2lnn·ln(ln) for ECM algorithm.

These formulas cannot result in precisious comparision of ECM and GNFSalgorithms.

We have estimated the number of prime factors for numbers of distinctlength, for which the GNFS is the fastest known factorization algorithm.Similar analyzis, using the same functions and techniques as COMPAQ,was presented by Martin Hinek in his article from 2006 ([10]). We pre-sent the comparision of our results with results computed by M. Hinek inTable 3.

Table 3: Maximal number of distinct prime factors for given length offactorized number.

Length of number in bits 1024 2048 4096 8192Maximal number of prime

3 3 4 4factors (our approach)Maximal number of prime

3 3 4 5factors (M. Hinek)

5. Conclusion

Our computations may help to choose the better factorization algori-thm in particular situation. We have shown that the comparison betweenGNFS and ECM cannot be done properly if expected running times ofthese algorithms are not described by precise formulas. Our description ofexpected running time of ECM and some observations about the proba-bility in situation when the large number is being the product of manysmall factors resulted in formulas that can be used by everyone who wantto choose the fastest algorithm of factorization in particular situation.

160

Page 161: Kryptologia i Cyberbezpieczenstwo nr 6

Comparison of algorithms for factorization of large numbers . . .

References

[1] I. F. Blake, G. Seroussi, and N. Smart, Elliptic Curves in Cryp-tography, Cambridge University Press, (1999).

[2] J. Cilleruelo, J. Rue, P. Sarka, and A. Zumalacarregui,The least common multiple of sets of positive integers, ArXiv e-printsarXiv:1112.3013v1 [math.NT], (2011).

[3] Compaq. Cryptography Using Compaq MultiPrime Technology ina Parallel Processing Environment, Compaq, (2000).

[4] http://www.crypto-world.com/FactorRecords.html.[5] J. H. Ellis, The story of non-secret encryption, Available from

http://cryptome.org/jya/ellisdoc.htm, (1997).[6] http://www.emc.com/emc-plus/rsa-labs/historical/the-rsa-factoring-

-challenge.htm.[7] P. Gaudry, A. Kruppa, F. Morain, L. Muller, E. Thom and

P. Zimmermann, cado-nfs, An Implementation of the Number FieldSieve Algorithm, Release 1.1, available from http://cado-nfs.gforge.inria.fr/.

[8] W. Geiselmann and R. Steinwandt, A Dedicated Sieving Har-dware, In Public Key Cryptography, 6th International Workshop onPractice and Theoryin Public Key Cryptography, PKC 2003 Proce-edings, LNCS 2567, pp. 254–266, (2002).

[9] A. Granville Smooth numbers: computational number theory andbeyond, In Algorithmic Number Theory MSRI Publications, no. 44:pp. 267–323 (2008).

[10] M. Jason Hinek, On the security of Multi – prime RSA. In J. Ma-thematical Cryptology, no. 2(2), pp 117–147 (2008).

[11] A. K. Lenstra, Unbelievable Security. Matching AES Security UsingPublic Key Systems, In Advances in Cryptology - ASIACRYPT 2001,pp 67–86 (2001).

[12] A. K. Lenstra, H. W. Lenstra, M. S. Manasse, and J. M. Pol-lard, The number field sieve, In Proc 22nd Annual ACM Symposiumon the Theory of Computing, pp. 564–572 (1990).

[13] A. K. Lenstra, A. Shamir, J. Tomlinson, and E. Tromer, Ana-lysis of Bernstein’s Factorization Circuit. In Advances in Cryptology –ASIACRYPT 2002, pp. 1–26, (2002).

[14] H. W. Lenstra, Factoring Integers with Elliptic Curves, In The An-nals of Mathematics 126 : pp. 649–673 (1987).

[15] C. Pomerance, Smooth numbers and the quadratic sieve, In Algori-thmic Number Theory MSRI Publications, no. 44 : pp. 69–81 (2008).

[16] S. Singh, Code book. Delacorte Press, pp. 21–220 (2002).

161

Page 162: Kryptologia i Cyberbezpieczenstwo nr 6

T. Kijko, M. Wronski

[17] I. Tolkov, Counting points on elliptic curves: Hasse’s theorem andrecent developments, http://igor.tolkov.com/essays/336paper.pdf,(2009).

PORÓWNANIE ALGORYTMÓW FAKTORYZACJIDUŻYCH LICZB POSIADAJĄCYCH KILKA RÓŻNYCHCZYNNIKÓW PIERWSZYCH

Streszczenie.W artykule przedstawiamy analizę bezpieczeństwa powszechnie znanegoalgorytmu klucza publicznego RSA oraz jego następcy MultiPrime RSA. Skupiliśmysię na dokładniejszym wyznaczeniu oczekiwanego czasu faktoryzacji dużych liczb zapomocą dwóch algorytmów: Metody Krzywych Eliptycznych (ECM) i Ogólnego SitaCiała Liczbowego (GNFS). Dodatkowo dla algorytmuMultiPrime RSA została obliczonamaksymalna liczba czynników pierwszych dla danej długości modułu, która nie powodujezmniejszenia bezpieczeństwa.

Słowa kluczowe: faktoryzacja, MultiPrimeRSA, Metoda Krzywych Eliptycznych,Ogólne Sito Ciała Liczbowego, B-gładkość

Page 163: Kryptologia i Cyberbezpieczenstwo nr 6

PRIME NUMBERS AND CRYPTOSYSTEMSBASED ON DISCRETE LOGARITHMS

Maciej Grzeskowiak

Adam Mickiewicz University Faculty of Mathematics and Computer ScienceUmultowska 87, 61-614 Poznan, Poland.

[email protected]

Abstract. In this paper, we give a short overview of algorithms of generating primesto a DL systems. The algorithms are probabilistic and works in a polynomial time.

Keywords: Torus-based cryptography, Elliptic and hyperelliptic curve cryptography

1. Introduction

Let (G, ·) be an abelian group, and let |G| = N be the order of G.The Discrete Logarithm Problem (DLP) is: given g, h ∈ G find x ∈ N,if it exists, such that h = gx. The security of a discrete logarithm (DL)system depend on the assumption that discrete logarithms in G are hardto compute. In practice a DL system is based on a cyclic subgroup of G ofa prime order q. Let q be the largest prime divisor of N . It is well knownthat the DLP in G is as hard as the DLP in the subgroup of order q [20]. Forthis reason it is essential to choose G such that q | N and q is a large prime.From the security point of view it is reasonable to assume that q ≈ 2160.For the complexity of algorithms depending on N we define the function

LN (α, c) = exp((c+ o(1))(logN)α(log logN)1−α).

with a, c ∈ R, 0 ≤ a ≤ 1 and c > 0 [6]. If the second parameter is omitted,it is understood that is equal 1/2. Let G = F∗pn be a multiplicative groupof finite fields. The DLP in F∗pn can be computed in subexponential timeLpn(1/3) [1], [10], [15], [16]. For finite fields of small characteristic, thisproblem can be solved with heuristic complexity Lpn(1/4) [14]. The aboveshows that one should take pn at least 1024 bits in order to have the DLPintractable to solve. So to efficiently implement a DL system in G one needto find primes p, q of appropriate size such that

q | pn − 1.

The author was partially supported by the grant no. 2013/11/B/ST1/02799 fromNational Science Centre.

Page 164: Kryptologia i Cyberbezpieczenstwo nr 6

M. Grzeskowiak

Fix n = 1. In many a DL systems a generator g of G is required. Nopolynomial-time algorithm is known for finding generators, or even fortesting whether an element is a generator of G if the factorization of isunknown. There is a special kind of prime for which it is easy. Namely, letp = 2q + 1, where q is also a prime. In order to find a generator of G oneselect randomly g ∈ G such that g2 ≡ 1 (mod p) and gq ≡ 1 (mod p).For p ≈ 21024 the algorithm works well in practice. On the other hand,theoretical estimation of the algorithms running time becomes a problem.We do not know if there exist infinitely many primes p of the above form.This is an extremely hard, still unproven mathematical problem. However,there are some conjectures related to this problem [13]. To overcome thisproblem, we consider the second approach for generating a generator g ofG. Let x ∈ R be a sufficiently large number. Fix a prime q ∈ [x, 2x]. Thealgorithm randomly selects a positive integer k ∈ [0, cq(log q)20], wherec > 0 is a constant. Next it computes p = qk+ 1 and checks if p is a prime.If it is a prime then the algorithm returns the prime p and k. Otherwise, itrandomly finds k and the above mentioned steps are repeated. Let λ ≥ 1.The above algorithm finds a prime p ≤ cq2(log q)20 with probability greaterthan or equal to 1−e−λ after repeating [c0λ(log x)] steps with the possibleexception of at most O(x(log x)−2) values of q, where c0 > 0 is a constant[12]. Since p−1 = kq, the factorization of p−1 can be obtained by factoringk. However, we cannot exclude the possibility that the number of steps weneed to factor k is exponential. On the other hand, given p, q, one caneasily find an element g ∈ G of order q and implement a DL system in thesubgroup generated by g. We define the parameter

ρ(G) =logNlog q

,

which measures the group G size N relative to the size of the prime orderq subgroup of G. For sufficiently large x the above algorithm finds primesp and q with ρ(F∗p) = 2 + o(1). An interesting problem in this area is thefollowing: Construct a polynomial-time algorithm that finds primes p, qsuch that q | pn − 1 with

ρ(F∗pn) = n+ o(1).

Let n be a positive integer, and let Φn(x) be the nth cyclotomic polynomial.Let p be a prime and let F∗pn be a multiplicative group of finite field Fpn .It is well known that

|F∗pn | = pn − 1 =∏d|n

Φd(p).

164

Page 165: Kryptologia i Cyberbezpieczenstwo nr 6

Prime Numbers and Cryptosystems Based on Discrete Logarithms

Let G be a subgroup of F∗pn of a prime order q > n, and let q divides Φn(p).Then Fpn is the smallest extension of Fp that contains G [18]. In recentyears, there have been several proposal DL systems based on the G withq < Φn(p) [19], [25]. Rubin and Silverberg [22] generalise the above cryp-tosystems using the algebraic torus Tn(Fp) which is isomorphic to the Gwith q = Φn(p). Techniques used in the above mentioned DL systems allowto represent an element of G with less coefficients than a general elementof Fpn needs. Such an approach leads to substantial savings both in thecomputational complexity of algorithms performing arithmetic operationsin Fpn and transmission elements of Fpn , without compromising security.We introduce the following definition [12].

Definition 1. A prime q is relatively n-cyclotomic to a prime p if q dividesΦn(p).

Algorithms for generating primes p and q such that q is relativelyn-cyclotomic to a prime p are utilized for computing key parameters in DLsystems based on G. From the security point of view it is essential to finda prime p such that Φn(p) has a large prime factor q having at least 160 bitsto make DLP in G intractable. On the other hand, one should find a primep such that n log p ≈ 1024 in order to have the DLP unfeasible to solve byapplying an index calculus method. In [12] a polynomial time algorithmgenerating of two primes p and q such that q is relatively n-cyclotomic top is proposed. The algorithm is probabilistic and finds such primes with

ρ(F∗pn) = n+ o(1).

For cryptographic purposes one can replace F∗pn by the group of rationalpoints of E(Fpn) on an elliptic curve. Let G = E(Fp). The most efficientway to solve DLP in G is the Pollard’s rho method [21]. It takes O(

√N)

group operations. On the other hand Hasse’s theorem shows that N =p + 1 − t, where |t| ≤ 2

√p. So in practice it is recommended to generate

a prime p ≈ 2200. Now, we introduce the following definition [11].

Definition 2. Let p, q be a pair of primes and ∆ < 0. The primes p, q aredefined to be CM-primes with respect to ∆ if there exist integers f and tsuch that

|t| ≤ 2√p, q | p+ 1− t, 4p− t2 = ∆f2.

To construct a DL system based on G it is essential to find CM-primesp and q with respect to ∆ of appropriate order of magnitude. Given suchprimes, an elliptic curve E over Fp can be constructed by applying the

165

Page 166: Kryptologia i Cyberbezpieczenstwo nr 6

M. Grzeskowiak

complex multiplication (CM) method [4], [7]. Given current computationalpower, the method can construct curves over Fp when |∆| ≤ 1012. Forthis reason ∆ should be sufficiently small to make the CM method workeffectively in practice. In [11] a polynomial time construction of CM primeswith respect to ∆ is proposed. The algorithm is probabilistic and finds suchprimes with

ρ(E(Fp)) =52

+ o(1).

Let C be a hyperelliptic curve of genius g defined over finite prime field Fp.We denote the group of Fp-rational points of the Jacobian of C by JC(Fp).Koblitz [11] proposed the DLP in groups of the form G = JC(Fp). Forgeneral hyperelliptic curves of genus g ≤ 2 the DLP in JC(Fp) is thoughtto be hard [2], [8], [9], [26]. To make the DLP in JC(Fp) intractable, it isessential to generate a large prime p, and a curve C defined over Fp, suchthat |JC(Fp)| has a large prime factor q. To construct a genus 2 curve overFp with the above properties one can use the genus 2 CM method [27].This method generates curves for which a prime p and |JC(Fp)| are knownin advance. In practice, to the above mentioned method works efficiently,K must have a small discriminant. A field K is called a CM field if it isa totally imaginary quadratic extension of a totally real algebraic numberfield. Let K, [K : Q] = 2t be a CM field with the corresponding ring ofintegers OK . We say that π is a Weil q-number if π ∈ OK , and for everycomplex embedding σ : K → C we have |σ(π)| = √q. There is a connectionbetween |JC(Fp)| and a Weil p-number. Namely, if K = Q(π) then

NK/Q(π) = pt, |JC(Fp)| = NK/Q(π − 1).

Now, we introduce the following definition

Definition 3. Let K be a CM field, and let p, q be a pair of primes. Theprimes p, q are defined to be CM-primes with respect to K if there existπ ∈ OK such that π is a Weil p-number, and

p = ππ, q | NK/Q(π − 1).

Let K be a quartic CM field. To implement a DL system based on Gof appropriate order of magnitude CM primes p, q with respect to K arerequired. In [27] a probabilistic method for generating CM primes with re-spect to K is presented. However, an analysis of computational complexityof the algorithm were not given there. An interesting open problem is the

166

Page 167: Kryptologia i Cyberbezpieczenstwo nr 6

Prime Numbers and Cryptosystems Based on Discrete Logarithms

following: Construct a polynomial-time algorithm generating CM primesp, q with respect to K.

In the present paper, we give a survey of certain algorithms generatingprimes to DL systems. We focus attention on the algorithms that works inpolynomial time. The remaining part of the paper is organized as follows.In Section 2 we describe an algorithm for generating of finding two primesp, q such that q is relatively n-cyclotomic to a prime p. An algorithm forCM-primes with respect to ∆ is given in Section 3.

2. Relatively n-cyclotomic primes

Fix n ∈ N. In the present section, we show a general method of fin-ding two primes p, q such that q is relatively n-cyclotomic to a prime p[12]. Before we describe the algorithm, we introduce some notation. Givena primitive nth root of unity ω, K = Q(ω) denotes the nth cyclotomic fieldwith the ring of integers

OK = a1 + a2ω + . . .+ aφ(n)ωφ(n)−1, ai ∈ Z, i = 1, . . . , φ(n).

Let α ∈ OK , we write

αωi−1 =φ(n)∑j=1

aijωj−1, aij ∈ Z, a1j = aj . (2.1)

The determinant det[aij ] of the matrix A(α) = [aij ] of (2.1) is the normof the element α ∈ OK relative to the K/Q [5, Definition, p. 400]. So, ifα ∈ OK is given then N(α) = det(A(α)). The main algorithm consists ofthe following three procedures. We start with a procedure which generatesα ∈ OK such that N(α) ≡ 1 (mod n) is a prime.

Procedure 1 (n). Fix n ∈ Z, n > 1 and let ω be a primitive nth root ofunity. Fix K = Q(ω), [K : Q] = 2t, where t is the number of complexembeddings of K into C. Let ε1, . . . , εr, be a system of fundamental unitsof K, where r = t−1, and let σ1, σ1 . . . , σt, σt be embeddings of K = Q(ω)into C. We define

M = M(n) = max1≤i≤rlog |σj(εi)|, j = 1, . . . , t.

Let ω1 = ω, ω2, . . . ωφ(n) be the conjugates of ω and we define

C = C(n) = max|υi,j |, i = 1, . . . , φ(n), j = 1, . . . , φ(n). (2.2)

167

Page 168: Kryptologia i Cyberbezpieczenstwo nr 6

M. Grzeskowiak

where1 ω1 · · · ω

φ(n)−11

1 ω2 · · · ωφ(n)−12

......

. . . · · ·1 ωφ(n) · · · ω

φ(n)−1φ(n)

−1

=

υ1,1 υ1,2 · · · υ1,φ(n)υ2,1 υ2,2 · · · υ2,φ(n)

......

. . . · · ·υφ(n),1 υφ(n),2 · · · υφ(n),φ(n)

The procedure finds α =

∑φ(n)i=1 aiω

i−1 ∈ OK such that N(α) ≡ 1(mod n) is a prime, x ≤ N(α) ≤ 2x and |ai| < Cφ(n)erM (2x)1/φ(n).step 1.: For i = 1, . . . , φ(n), choose ai ∈ Z such that |ai| <

Cφ(n)erM (2x)1/φ(n) at random in Z. Write α = a1+ a2ω+ . . .+aφ(n)ω

φ(n)−1 ∈ OK .step 3.: Compute q = N(α). If q < x or q > 2x, then go to step 1.step 4.: If q is a prime, then terminate the procedure. Otherwise go to

step 1.step 5.: Return a1, . . . , aφ(n), q and A(α) such that det(A(α)) = q.

Let m be a positive integer. We denote by PT the number of bitoperations necessary to carry out the deterministic primality test [3]. Forsimplicity, assume that PT takes at least O(log3m) bit operations.

Theorem 2. Given n ∈ Z, n > 2, there exist two constants c0 > 0 and x0such that for every x ≥ x0 and an arbitrary real λ ≥ 1, Procedure 1 finds

α =φ(n)∑i=1

aiωi−1 ∈ OK , |ai| < Cφ(n)erM (2x)1/φ(n)

such thatN(α) ≡ 1 (mod n), x ≤ N(α) ≤ 2x,

is a prime, with probability greater than or equal to 1−e−λ after repeating[c0λ(log x)] steps of the procedure. Every step of the procedure takes atmost PT bit operations.

Proof. See [12]. Now, we introduce the deterministic procedure of finding roots of irre-

ducible polynomials Φn(x) (mod q) that works effectively in polynomialtime and may be an alternative to the random algorithms.

Procedure 3 (α,A(α), q). Fix n ∈ Z, n ≥ 1. Given α ∈ OK and a prime qsuch that N(α) = q ≡ 1 (mod n), where N(α) = det(A(α)), this proce-dure computes a root of Φn(x) (mod q).

168

Page 169: Kryptologia i Cyberbezpieczenstwo nr 6

Prime Numbers and Cryptosystems Based on Discrete Logarithms

step 1.: Determine the matrix M = [A(α)T |C]φ(n)×φ(n)+1 which is a ma-trix obtained by appending the columns of A(α)T and the vectorC, where CT = [y,−1, 0, . . . , 0]1×φ(n).

step 2.: Applying Gaussian Elimination algorithm over Fq transform thematrix M into the upper triangular form

M ′ =

a′1,1 a′2,1 · · · a′φ(n),1 c′1

0 a′2,2 · · · a′φ(n),2 c′2...

.... . .

......

0 0 · · · a′φ(n),φ(n) c′φ(n)

,

where c′i = c′i(y) are polynomials of degree no greater than 1.step 3.: For each i = φ(n), . . . , 1

(1) Write

bi =1a′ii

c′i(y)−φ(n)∑j=i+1

a′ijbj

=riy + si

ti, where q|ti

(2) If (ri, q) = 1 then compute y ≡ −sir−1i (mod q) and go toStep 4. Otherwise go to Step 3

step 4.: Return y (mod q).

Theorem 4. Fix n > 2, and let Φn(x) be the nth cyclotomic polynomial.Given α ∈ OK , a matrix A(α) and a prime q such that q = N(α) ≡ 1(mod n), where N(α) = det(A(α)), Procedure 3 is deterministic and findsa root of Φn(x) (mod q) using O(φ(n)3 log3 q) bit operations.

Proof. See [12].

Procedure 5 (r, q). Given a prime q and r < q, the procedure finds a primep ≡ r (mod q).step 1.: Choose randomly k ∈ N such that

k ∈ [10, ((240q2(log 220q)20)− r)q−1].

step 2.: Compute p = qk + r. If p is not a prime, then go to step 1.step 3.: Return p.

169

Page 170: Kryptologia i Cyberbezpieczenstwo nr 6

M. Grzeskowiak

Theorem 6. Let a prime q ∈ [x, 2x] be the output of Procedure 3, andlet r < q. For sufficiently large q ≥ 232 and an arbitrary real λ ≥ 1,Procedure 5 finds k ∈ N and a prime p = qk + r such that

k ∈ [0, ((240q2(log 220q)20)− r)q−1], q ≤ p ≤ 240q2(log 220q)20

with probability greater than or equal to 1 − e−λ after repeating[λ8 log(220q)] steps of the procedure with the possible exception of at mostO(x(log x)−2) values of q. Every step of the procedure takes at most PTbit operations.

Proof. See [12]. We are now in a position to introduce the main algorithm.

Algorithm 7. (n)step 1.: α,A(α), q := Procedure 1 (n)step 2.: y := Procedure 3 (α,A(α), q)step 3.: p := Procedure 5 (y, q)step 4.: Return p, q;

Theorem 8. Algorithm 7 finds two primes p and q such that q is relativelyn-cyclotomic to a prime p.

Proof. See [12]. An interesting open problem is the

following: Construct a polynomial-time algorithm that finds CM-primesp, q such that

ρ(E(F∗pn)) =n

φ(n)+ o(1).

3. CM primes with respect to ∆

Throughout this section, ∆ < 0 is a square-free rational integer, K =Q(√

∆) is the quadratic field with the corresponding ring of integers

OK = a+ bω : a, b ∈ Z,

and Of = [1, fω], f ∈ Z is any order of K, where

ω =1 +√

∆2

if ∆ ≡ 1 (mod 4),

ω =√

∆ if ∆ ≡ 2, 3 (mod 4).

170

Page 171: Kryptologia i Cyberbezpieczenstwo nr 6

Prime Numbers and Cryptosystems Based on Discrete Logarithms

By N(α) = αα = (a + bω)(a + bω) we denote the norm of an elementα = a+ bω ∈ OK with respect to Q. That is

N(α) = a2 + ab+1−∆

4b2 if ∆ ≡ 1 (mod 4),

N(α) = a2 −∆b2 if ∆ ≡ 2, 3 (mod 4).

In this section we describe a probabilistic algorithm which generatesCM-primes q and p with respect to ∆ that executes in polynomial time[11]. The algorithm consists of the following two procedures.

Procedure 9 (n,∆, x, γ) Given n,m ∈ N, (m,n) = 1, a square-free ∆ ∈Z, ∆ < 0, and a sufficiently large x ∈ R. Fix K = Q(

√∆) with the

corresponding ring of integers OK . Let γ = f + gω ∈ OK be such that|f |, |g| ≤ n, N(γ) ≡ m (mod n); this procedure finds α = a + bω ∈ OK ,N(α) ≡ m (mod n), such that N(α) = q is a prime with x ≤ q ≤ 2x.step 1.: Choose u, v at random in Z such that

|u| ≤ (

√1−∆√−∆

(2x)1/2 − f)n−1, |v| ≤ (2√−∆

(2x)1/2 − g)n−1

if ∆ ≡ 1 (mod 4),

|u| ≤ ((2x)1/2 − f)n−1, |v| ≤ (1√−∆

(2x)1/2 − g)n−1

if ∆ ≡ 2, 3 (mod 4).

step 2.: Compute a = nu+ f and b = nv + gstep 3.: Compute

q = a2 + ab+1−∆

4b2 if ∆ ≡ 1 (mod 4),

q = a2 −∆b2 if ∆ ≡ 2, 3 (mod 4).

If q < x or q > 2x, then go to step 1.step 4.: If q is a prime, then terminate the procedure. Otherwise, go to

step 1.step 5.: Return α = a+ bω, q.

Let f be an ideal of OK . Let H∗f (K) be the group of narrow ray clas-ses (mod f), and let h∗f (K) be the number of elements in H∗f (K). In thenotation above we have the following theorem.

171

Page 172: Kryptologia i Cyberbezpieczenstwo nr 6

M. Grzeskowiak

Theorem 10. Given n,m ∈ N, (m,n) = 1, and a square-free integer∆ < 0. Fix K = Q(

√∆) with the corresponding ring of integers OK ,

and let f = nOK . There exists x0 > 0 such that for every x ≥ x0 andan arbitrary real λ ≥ 1, Procedure 9 finds α = a + bω ∈ OK such thatN(α) ≡ m (mod n) is a prime, x ≤ N(α) ≤ 2x, where

|a| ≤√

1−∆√−∆

(2x)12 , |b| ≤ 2√

−∆(2x)

12 if ∆ ≡ 1 (mod 4),

|a| ≤ (2x)12 , |b| ≤ 1√

−∆(2x)

12 if ∆ ≡ 2, 3 (mod 4).

with probability greater than or equal to 1−e−λ after repeating [c1λ(log x)]steps of the procedure, where

c1 =16√

1−∆h∗f (K)

−∆n2if ∆ ≡ 1 (mod 4),

c1 =16h∗f (K)√−∆n2

if ∆ ≡ 2, 3 (mod 4).

Every step of the procedure takes no more than PT bit operations.

Proof. See [11].

Procedure 11 (α, q,∆, x). Fix 0 < ε < 2/5, and fix K = Q(√

∆) withthe corresponding ring of integers OK . Given α = a + bω ∈ OK suchthat q = N(α) ≡ m (mod n), (m,n) = 1, is a prime, x ≤ q ≤ 2x;this procedure finds β ∈ OK such that β ≡ 1 (mod αOK) and N(β) isa prime.step 1.: Choose s, t at random in Z.

If ∆ ≡ 1 (mod 4),

|s| ≤√

1−∆√−∆

(2x)(3+5ε)/(4−10ε), |t| ≤ 2√−∆

(2x)(3+5ε)/(4−10ε).

If ∆ ≡ 2, 3 (mod 4)

|s| ≤ (2x)(3+5ε)/(4−10ε), |t| ≤ 1√−∆

(2x)(3+5ε)/(4−10ε)

step 2.: Compute

c =as− 1−∆4

bt+ 1, d = bs+ (a+ b)t if ∆ ≡ 1 (mod 4),

c =as+ ∆bt+ 1, d = bs+ at if ∆ ≡ 2, 3 (mod 4).

172

Page 173: Kryptologia i Cyberbezpieczenstwo nr 6

Prime Numbers and Cryptosystems Based on Discrete Logarithms

step 3.: Compute

p = c2 + cd+1−∆

4d2 if ∆ ≡ 1 (mod 4),

p = c2 −∆d2 if ∆ ≡ 2, 3 (mod 4).

If p < x or p > (2x)5/(2−5ε), then go to step 1.step 4.: If p is a prime, then terminate the procedure. Otherwise, go to

step 1.step 5.: Return β = c+ dω, p.

Theorem 12. Let ∆ < 0 be a square-free integer. Fix K = Q(√

∆) withthe corresponding ring of integers OK , and fix 0 < ε < 2

5 . Let α ∈ OK andx ≤ q ≤ 2x be the output of Procedure 9. Procedure 11 with the inputconsisting of α, q and ∆, has the following properties: there exists x0 > 0such that for every x ≥ x0, and for an arbitrary real λ ≥ 1, and for anyconstant A > 2, the procedure finds β ∈ OK such that,

β = c+ dω, p = N(β) is a prime, x ≤ N(β) ≤ (2x)5/(2−5ε),

with probability greater than or equal to 1 − e−λ after repeating[c2λ(log 2x)] steps of the procedure, where

c2 =80h(K)

√1−∆

−(2− 5ε)w(K)∆if ∆ ≡ 1 (mod 4),

c2 =40h(K)

(2− 5ε)w(K)√−∆

if ∆ ≡ 2, 3 (mod 4).

for almost all α with the possible exception of at most O(x(log x)−A) valuesof α. Every step of the procedure takes no more than PT bit operations.

Proof. See [11]. We are now in a position to introduce our main algorithm.

Algorithm 13. (n,∆, x, γ)step 1.: α, q := Procedure 9 (n,∆, x, γ).step 2.: β, p := Procedure 11 (α, q,∆, x).step 3.: Return p, q, α, β.

173

Page 174: Kryptologia i Cyberbezpieczenstwo nr 6

M. Grzeskowiak

Theorem 14. Given n,m ∈ N, (m,n) = 1, and a square-free integer∆ < 0. Fix K = Q(

√∆) with the corresponding ring of integers OK . If

Algorithm 13 terminates, then the output is a pair α, β ∈ OK , β = c+ dωsuch that q = N(α) ≡ m (mod n), N(β) = p are CM-primes.

Proof. See [11].

Remark 15. Let n ∈ N, and let ∆ < 0 be a square-free integer. FixK = Q(

√∆) with the corresponding ring of integers OK . Given CM-primes

q = N(α), p = N(β), where α = a + bω, β = c + dω ∈ OK . Thereexists an elliptic curve E over Fp with complex multiplication by an orderOd = [1, dω] ⊆ K such that q divides

|E(Fp)| = p+ 1− 2c− d if ∆ ≡ 1 (mod 4),

|E(Fp)| = p+ 1− 2c if ∆ ≡ 2, 3 (mod 4).

Let c > 0 be a constant, and let ∆ = O((log p)c). For any ϵ > 0 constructingE over Fp via the CM method takesO((log p)c(1+ϵ)/2) arithmetic operationsin Fp.

An interesting open problem is the following: Construct a poly-nomial-time algorithm that finds CM-primes p, q such that

ρ(E(Fp)) ≤ 2.

References

[1] L. Adleman, A subexponential algorithm for the discrete logarithmproblem with applications to cryptography, The 20th Annual Sympo-sium on Foundations of Computer Science (Washington, DC, USA),SFCS ’79, IEEE Computer Society, 1979, pp. 55–60.

[2] L. Adleman, J. DeMarrais, and M. Huang, A subexponentialalgorithm for discrete logarithmsover the rational subgroup of the ja-cobians of large genus hyperelliptic curves over fnite felds, AlgorithmicNumber Theory, LNCS 877, 1994, pp. 28–40.

[3] M. Agrawal, N. Kayal, and N. Saxena, Primes is in p, Ann. ofMath. 160 (2004), no. 2, 781–793.

[4] A. Atkin and F. Morain, Elliptic curves and primality proving,Tech. report, Projet ICSLA RR-1256, INRIA, 1990.

174

Page 175: Kryptologia i Cyberbezpieczenstwo nr 6

Prime Numbers and Cryptosystems Based on Discrete Logarithms

[5] Z. Borevich and I. Shafarevich, Number theory, Academic Press,1966.

[6] H. Cohen, G. Frey, R. Avanzi, C. Doche, T. Lange,K. Nguyen, and F. Vercauteren, Handbook of elliptic and hy-perelliptic curve cryptography, second edition, 2nd ed., Chapman &Hall/CRC, 2012.

[7] R. Dupont, A. Enge, and F. Morain, Building curves with arbi-trary small mov degree over fnite prime felds, J. Cryptology 18 (2005),no. 2, 79–89.

[8] P. Gaudry, An algorithm for solving the discrete log problem on hype-relliptic curves, Advances in Cryptology - EUROCRYPT 2000, LNCS1807, 2000, pp. 19–34.

[9] P. Gaudry, E. Thom´e, N. Th´eriault, and C. Diem, A do-uble large prime variation for small genus hyperelliptic index calculus,IACR Cryptology ePrint Archive (2004), 153.

[10] D. Gordon, Discrete logarithms in gf(p) using the numberfeld sieve, SIAM J. Discret. Math. 6 (1993), no. 1, 124–138.

[11] M. Grześkowiak, An algorithmic construction of fnite elliptic curvesof order divisible by a large prime, Fund. Inform.,to appear.

[12] M. Grześkowiak, Algorithms for relatively cyclotomic primes, Fund.Inform. 125 (2013), no. 2, 161–181.

[13] G. H. Hardy and J. E. Littlewood, Some problems of partitionnumerorum iii: On the ex- pression of a number as a sum of primes,Acta Math. 44 (1922), 1–70.

[14] A. Joux, A new index calculus algorithm with complexity l(1/4+o(1))in very small characteristic, 2013.

[15] A. Joux and R. Lercier, The function feld sieve in the mediumprime case, Advances in Cryptology - EUROCRYPT 2006, LNCS 4004(Serge Vaudenay, ed.), Springer Berlin Heidelberg, 2006, pp. 254–270(English).

[16] A. Joux, R. Lercier, N. Smart, and F.Vercauteren, Thenumber feld sieve in the medium prime case, Advances in Crypto-logy - CRYPTO 2006, LNCS 4117, Springer Berlin Heidelberg, 2006,pp. 326–344.

[17] N. Koblitz, Hyperelliptic cryptosystems, Journal of Cryptology 1(1989), no. 3, 139–150 (English).

[18] A. Lenstra, Using cyclotomic polynomials to construct efcient di-screte logarithm cryptosystems over fnite felds.

[19] A. Lenstra and E. Verheul, The xtr public key system, Advancesin Cryptology CRYPTO 2000, LNCS 1880, 2000, pp. 1–19.

175

Page 176: Kryptologia i Cyberbezpieczenstwo nr 6

M. Grzeskowiak

[20] S. Pohlig and M. Hellman, An improved algorithm for compu-ting logarithms over and its cryptographic signifcance (corresp.), IEEETrans. Inf. Theor. 24 (2006), no. 1, 106–110.

[21] J. Pollard, Monte Carlo methods for index computation (mod p),Mathematics of Computation 32 (1978), 918–924.

[22] K. Rubin and A. Silverberg, Torus-based cryptography, Advancesin Cryptology - CRYPTO 2003, LNCS 2729, 2003, pp. 349–365.

[23] K. Rubin and A. Silverberg, Using primitive subgroups to do morewith fewer bits, Algorithmic Number Theory 6th International Sym-posium, ANTS-VI, LNCS 3076, 2004, pp. 18–41.

[24] E. Savas, T.A. Schmidt, and C. K. Koc, Generating elliptic cu-rves of prime order, Cryptographic Hardware and Embedded SystemsCHES 2001, LNCS 2162, 2001, pp. 145–161.

[25] P. Smith and C. Skinner, A public-key cryptosystem and a digitalsignature system based on the lucas function analogue to discrete lo-garithms, In Advances in Cryptology ASIACRYPT 1995, LNCS 917,1995, pp. 357–364.

[26] N. Theriault, Index calculus attack for hyperelliptic curves of smallgenus, Advances in Cryptology - ASIACRYPT 2003, LNCS 2894, 2003,pp. 75–92.

[27] A. Weng, Constructing hyperelliptic curves of genus 2 suitable forcryptography, Math. Comput. 72 (2003), no. 241, 435–458.

LICZBY PIERWSZE I KRYPTOSYSTEMY OPARTE NALOGARYTMACH DYSKRETNYCH

Streszczenie. W pracy przedstawiamy algorytmy, które generują liczby pierwsze dokryptosystemów opartych na logarytmach dyskretnych. Zaprezentowane algorytmy sąprobabilistyczne i działają w wielomianowym czasie.

Słowa kluczowe: Kryptosystemy oparte na torusie, kryptosystemy eliptyczne i hiper-eliptyczne.

Page 177: Kryptologia i Cyberbezpieczenstwo nr 6

ROZSZERZONY ALGORYTMPOHLIGA-HELLMANA I JEGO

ZASTOSOWANIE DO FAKTORYZACJI

Bartosz Źrałek

Instytut Matematyki Uniwersytetu Warszawskiego,Banacha 2, 02-097 [email protected]

Streszczenie.Wskażemy ścisły związek między problemami logarytmu dyskretnegoi faktoryzacji. Opiszemy mianowicie uogólnienie algorytmu Pohliga-Hellmana dla grupniecyklicznych Z∗n, które można zastosować do derandomizacji algorytmu p−1 Pollarda.Algorytm ten bowiem w w wersji potrzebuje źródła losowości. Okazuje się, że obliczeniamożna przeprowadzić deterministycznie bez znaczącego pogorszenia złożoności.

Słowa kluczowe: faktoryzacja, logarytm dyskretny, derandomizacja

1. Wprowadzenie

W kryptografii klucza publicznego, jawnie zapoczątkowanej przez Dif-fiego i Hellmana [2], bezpieczeństwo kryptosystemu opiera się zazwyczajna trudności obliczeniowej pewnych problemów teorii liczb - głównie pro-blemu logarytmu dyskretnego w grupie cyklicznej oraz problemu fakto-ryzacji liczb naturalnych. Te problemy są uważane za trudne, ponieważprzypuszcza się, że nie istnieją algorytmy rozwiązujące je w czasie wie-lomianowym (ze względu na rozmiar danych). Najszybsze obecnie algo-rytmy rozkładu na czynniki liczb naturalnych (np. sito ciała liczbowego[8]) mają pesymistyczną złożoność podwykładniczą. Podobnie jest w przy-padku problemu logarytmu dyskretnego, choć jedynie dla grup cyklicznycho„korzystnej obliczeniowo” reprezentacji takich jak grupy multyplikatywneciał skończonych [4] (w tzw. modelu generycznym [3] złożoność ta jest bo-wiem wykładnicza). W praktyce kryptograficznej nie można jednak ograni-czać badań do ogólnych instancji powyższych problemów. Podstawową rolęodgrywają metody rozwiązywania szczególnych przypadków - z punktu wi-dzenia obliczeniowego łatwych, czyli, z punktu widzenia kryptoanalizy, pro-wadzących do wygenerowania słabych parametrów kryptosystemu. Takimiłatwymi instancjami są przykładowo:

1. problem logarytmu dyskretnego w grupie cyklicznej o gładkim (po-dzielnym jedynie przez małe liczby pierwsze) rzędzie - efektywnymatakiem jest algorytm Pohliga-Hellmana [10].

Page 178: Kryptologia i Cyberbezpieczenstwo nr 6

B. Źrałek

2. problem rozkładu liczby n mającej dzielnik pierwszy p, taki że rządgrupy Z∗p (równy p−1) jest gładki - efektywnym atakiem jest algorytmp− 1 Pollarda [11]. (Idea Pollarda była prawdopodobnie inspiracją doopracowania przez Lenstrę [9] algorytmu faktoryzacji, w którym poszu-kuje się takiej„krzywej eliptycznej nad Zn”, by dla pewnego dzielnikapierwszego p liczby n, grupa jej punktów modulo p miała gładki rząd.)

Wskażemy ścisły związek między problemami logarytmu dyskretnego i fak-toryzacji. Opiszemy mianowicie uogólnienie algorytmu Pohliga-Hellmanadla grup niecyklicznych Z∗n, które można zastosować do derandomizacjialgorytmu p − 1 Pollarda. Algorytm ten bowiem w oryginalnej wersji po-trzebuje źródła losowości. Okazuje się, że obliczenia można przeprowadzićdeterministycznie bez znaczącego pogorszenia złożoności. Przedstawione tuwyniki zostały opublikowane w [13].

2. Klasyczny algorytm Pohliga-Hellmana

Przypomnijmy najpierw działanie klasycznego algorytmu Pohliga--Hellmana. Niech G będzie grupą cykliczną rzędu N , generowaną przezg: G = ⟨g⟩, #G = N . Niech h ∈ G. Problem logarytmu dyskretnego,w skrócie DLP, w G to znalezienie l ∈ Z, takiego że gl = h. Przypuśćmy,że znamy nietrywialny rozkład

N = N1N2, NWD(N1, N2) = 1.

Mamy izomorfizm⟨g⟩ ∼= ⟨gN1⟩ × ⟨gN2⟩.

Pomysł polega na sprowadzieniu DLP w ⟨g⟩ do DLP w grupie ⟨gN1⟩ i DLPw grupie ⟨gN2⟩, czyli w grupach mniejszych niż G, bo #⟨gN1⟩ = N2,#⟨gN2⟩ = N1. Jeśli znajdziemy li ∈ Z, takie że (gNi)li = hNi , to wystarczyrozwiązać układ

l ≡ l1 (N2)

l ≡ l2 (N1).

Ogólnie, jeśli mamy pełną faktoryzację rzędu N , to możemy sprowa-dzić DLP w grupie G do DLP w jej podgrupach rzędów pvp , gdzie pvp jestmaksymalną potęgą liczby pierwszej p dzielącą N .

Podajemy przykład obliczeń algorytmu w podgrupie grupy G rzędu2v. Niech a, b ∈ G, przy czym a jest rzędu 2v, co zapiszemy rz(a) = 2v,

178

Page 179: Kryptologia i Cyberbezpieczenstwo nr 6

Rozszerzony algorytm Pohliga-Hellmana i jego zastosowanie do faktoryzacji

i niech b2v

= 1. Szukamy liczby l, dla której al = b. Zapisujemy logarytml binarnie z niewiadomymi cyframi li:

al0+l1·2+...+lv−1·2v−1

= b.

Po podniesieniu obu stron do potęgi 2v−1 otrzymujemy

a2v−1l0 = b2

v−1,

czyli

(−1)l0 = b2v−1

.

To nam daje wartość l0 (0 lub 1). Dalej

al1·2+...+lv−1·2v−1

= b · a−l0

i podobnie kolejno obliczamy l1, . . . , lv−1.

3. Rozszerzony algorytm Pohliga-Hellmana

Rozpatrzmy teraz skończoną grupę przemienną G, ale niekonieczniecykliczną. Zilustrujemy ideę uogólnienia algorytmu Pohliga-Hellmana naprzykładzie najprostszego przypadku: a, b ∈ G, rz(a) = 2v, b2

v

= 1. Mo-żemy spróbować zastosować klasyczny algorytm Pohliga-Hellmana, by zna-leźć l ∈ Z, takie że al = b. Jeśli się nie uda, to znaczy że podgrupa ⟨a, b⟩,a więc i G, nie jest cykliczna. Tego rodzaju implikacja znalazłaby zasto-sowanie w testowaniu pierwszości (dowodzeniu złożoności): dla G = Z∗n,jeśli G nie jest cykliczna, to n jest liczbą złożoną. Niecykliczność podgrupy⟨a, b⟩ można tu jednak wykorzystać pełniej - rozłożyć liczbę n.

Niech więc G = Z∗n, gdzie n jest, powiedzmy, iloczynem pq dwóchnieparzystych liczb pierwszych. Z chińskiego twierdzenia o resztach,

Z∗n ≃ Z∗p × Z∗q .

Przy tym izomorfizmie poczynimy utożsamienia a ↔ (a1, a2), b ↔(b1, b2). Załóżmy bez utraty ogólności, że rz(a1) = 2v (po ewentualnejzamianie p i q). Istnieje l całkowite, takie że al1 = b1, ponieważ grupa Z∗pjest cykliczna. Znów rozwijamy l binarnie z niewiadomymi cyframi li:

al0+l1·2+...+lv−1·2v−11 = b1,

179

Page 180: Kryptologia i Cyberbezpieczenstwo nr 6

B. Źrałek

co daje(−1)l0 = b2

v−1

1 .

Stądp | NWD((−1)l0 − b2

v−1, n).

Próbując l0 = 0, 1, albo otrzymamy nietrywialny dzielnik liczby n, albookaże się, że (−1)l0 = b2

v−1. Jeśli nie otrzymaliśmy dzielnika, powtarzamy

to postępowanie dla l1 itd. Tym sposobem, albo otrzymamy nietrywialnydzielnik liczby n, albo al = b i podgrupa ⟨a, b⟩ jest cykliczna (generowanaprzez a). Ogólnie zachodzi twierdzenie

Twierdzenie 1. (Rozszerzony algorytm Pohliga-Hellmana) Niech B ⊂ Z∗ni niech będzie dana dla każdego b ∈ B pełna faktoryzacja liczby rz(b).Wówczas możemy znaleźć (deterministycznie) generator podgrupy ⟨B⟩ lub(gdy nie jest cykliczna) nietrywialny dzielnik liczby n w czasie O(#B ·q(lnn)C), gdzie q = p+(

∏b∈B rz(b)), a C jest stałą.

W powyższym p+(·) oznacza największy dzielnik pierwszy. Dla po-równania, złożoność klasycznego algorytmu Pohliga-Hellmana w grupiecyklicznej G rzędu N to O(p+(N)(lnN)C), przy wielomianowym czasieoperacji elementarnych w G.

4. Algorytm p− 1 Pollarda

Przechodzimy do opisu standardowego (probabilistycznego) algorytmufaktoryzacji p − 1 Pollarda. Niech n będzie nieparzystą liczbą naturalną,różną od 1 i nie będącą potęgą liczby pierwszej. Niech p będzie dzielni-kiem pierwszym liczby n. Niech wreszcie b będzie (losową) liczbą całkowitąwzględnie pierwszą z n. Dla wielokrotności M liczby p−1 mamy bM ≡ 1 (p)na mocy małego twierdzenia Fermata. Innymi słowy,

p | NWD(bM − 1, n),

przy czym prawą stronę obliczamy za pomocą algorytmu Euklidesa.Może się zdarzyć, że NWD(bM − 1, n) = n. Jednak można pokazać, że

dla co najmniej połowy elementów b ∈ Z∗n ciąg NWD(bM

2i − 1, n) zawieranietrywialny dzielnik liczby n.

Jeśli liczba p − 1 jest B-gładka (inaczej: wszystkie dzielniki pierwszeliczby p− 1 są ≤ B), to można przyjąć

M =∏

q

[lnnln q

],

gdzie q przebiega liczby pierwsze ≤ B.

180

Page 181: Kryptologia i Cyberbezpieczenstwo nr 6

Rozszerzony algorytm Pohliga-Hellmana i jego zastosowanie do faktoryzacji

Te spostrzeżenia są podstawą następującego twierdzenia:

Twierdzenie 2. (Algorytm p− 1 Pollarda) Niech p będzie takim dzielni-kiem pierwszym danej liczby naturalnej n, że liczba p − 1 jest B-gładka.Wówczas liczbę p można znaleźć probabilistycznie w czasie O(B(lnn)C),gdzie C jest stałą.

Zachodzi również twierdzenie mocniejsze:

Twierdzenie 3. (Deterministyczny algorytm p−1 Pollarda)W twierdze-niu 2 słowo „probabilistycznie” można zastąpić słowem „deterministycz-nie”.

5. Dowód poprawności derandomizacji algorytmu p− 1Pollarda

Naszkicujemy dowód twierdzenia 3. Niech n będzie złożone, bez dziel-ników pierwszych ≤ (lnn)2, i niech

B = 2, 3, . . . , [(lnn)2].

Jednym z głównych składników rozumowania jest dolne oszacowanie funkcjiψ zliczającej liczby gładkie, ψ(x, y) = #n ≤ x : p+(n) ≤ y. Mamybowiem

#⟨B⟩ ≥ ψ(n, (lnn)2) >√n,

a więc zbiór B generuje„dużą” podgrupę grupy Z∗n. Trzeba rozpatrzyć dwaprzypadki:

1. Grupa ⟨B⟩ jest cyliczna. Wtedy nietrywialny dzielnik liczby n znajdu-jemy za pomocą znanej (z prac [6, 5, 7] na temat testowania pierwszo-ści) metody.

2. Grupa ⟨B⟩ nie jest cykliczna. Wtedy nietrywialny dzielnik liczby nznajdujemy za pomocą rozszerzonego algorytmu Pohliga-Hellmana.

Załóżmy najpierw, że grupa ⟨B⟩ jest cyliczna. Wówczas zbiór B zawierataki element b, że

NWD(brz(b)s − 1, n) > 1

dla pewnej liczby pierwszej s | rz(b). Takie b będziemy nazywać świadkiemFermata-Euklidesa (złożoności liczby n). Istotnie, przypuśćmy, że w B nie

181

Page 182: Kryptologia i Cyberbezpieczenstwo nr 6

B. Źrałek

ma świadka Fermata-Euklidesa. Niech q będzie najmniejszym dzielnikiempierwszym liczby n. Wtedy

#⟨B⟩ = NWWb∈B rz(b) = NWWb∈B rzq(b) | q − 1,

gdzie rzq(·) oznacza rząd w grupie Z∗q . W szczególności #⟨B⟩ < q ≤√n,

co przeczy otrzymanej wcześniej nierówności przeciwnej.W pozostałym przypadku niecyklicznej grupy ⟨B⟩ wystarczy zastoso-

wać twierdzenie 1.

6. Uwagi końcowe

Jak pisaliśmy we wprowadzeniu, jednym z podstawowych zagadnieńkryptografii asymetrycznej (jak również oczywiście samej obliczeniowej teo-rii liczb) jest badanie klasy liczb„efektywnie” rozkładalnych. Klasa ta za-wiera liczby naturalne n mające dzielnik pierwszy p, taki że wartość usta-lonego wielomianu cyklotomicznego Φk w p jest gładka. Algorytmy fak-toryzacji wykorzystujące tę własność liczby rozkładanej n nazywane sącyklotomicznymi [1]. Do nich zaliczamy algorytm p − 1 Pollarda - przyk = 1. Również dla k ≥ 2 algorytmy cyklotomiczne (oryginalnie probabi-listyczne) można, przynajmniej częściowo, zderandomizować, co wykazanow [13] (warto podkreślić pewną uniwersalność stosowanej tu metodolo-gii, która pozwala także faktoryzować wielomiany nad ciałem skończonym[14]). Sam zaś związek problemu faktoryzacji liczby n z problemem loga-rytmu dyskretnego w grupie Z∗n jest jeszcze głębszy niż przedstawiono totutaj na tle liczb n o szczególnej własności. W pracy [12] przedstawiono de-terministyczną, podwykładniczą (szybszą niż sito ciała liczbowego) reduk-cję faktoryzacji (dowolnej) liczby n do obliczania logarytmu dyskretnegow grupie Z∗n.

Literatura

[1] E. Bach, J. O. Shallit, Factoring with cyclotomic polynomials, Ma-thematics of Computation, 52 (1989), 201-219.

[2] W. Diffie, M. Hellman, New directions in cryptography, IEEETransactions on Information Theory, 22 (1976), 644-654.

[3] J. von zur Gathen, Arithmetic circuits for discrete logarithms, Lec-ture Notes in Computer Science, 2976 (2004), 557-566.

[4] D. Gordon, Discrete logarithms in GF (p) using the number fieldsieve, SIAM Journal on Discrete Mathematics, 6 (1993), 124-138.

182

Page 183: Kryptologia i Cyberbezpieczenstwo nr 6

Rozszerzony algorytm Pohliga-Hellmana i jego zastosowanie do faktoryzacji

[5] M. R. Fellows, N. Koblitz, Self-witnessing polynomial-time com-plexity and prime factorization, Designs, Codes and Cryptography, 2(1992), 231-235.

[6] M. Furer, Deterministic and Las Vegas primality testing algorithms,Lecture Notes in Computer Science, 194 (1985), 199-209.

[7] S. Konyagin, C. Pomerance, On primes recognizable in determini-stic polynomial time, The Mathematics of Paul Erdos, R. L. Graham,J. Nesetril, eds., Springer-Verlag, 1997, 176-198.

[8] A. Lenstra, H. Lenstra Jr. (Eds.), The development of the numberfield sieve, Lecture Notes in Mathematics, 1554 (1993).

[9] H. Lenstra Jr., Factoring integers with elliptic curves, Annals ofMathematics, 126 (1987), 649-673.

[10] S. Pohlig, M. Hellman, An improved algorithm for computing lo-garithms over GF (p) and its cryptographic significance, IEEE Trans-actions on Information Theory, 24 (1978), 106-110.

[11] J. M. Pollard, Theorems on factorization and primality testing, Pro-ceedings of the Cambridge Philosophical Society, 76 (1974), 521-528.

[12] J. Pomykała, B. Źrałek, On reducing factorization to the discretelogarithm problem modulo a composite, computational complexity, 21(2012), 421-429.

[13] B. Źrałek, A deterministic version of Pollard’s p− 1 algorithm, Ma-thematics of Computation, 79 (2010), 513-533.

[14] B. Źrałek, Using partial smoothness of p − 1 for factoring polyno-mials modulo p, Mathematics of Computation, 79 (2010), 2353–2359.

A GENERALIZATION OF THE POHLIG-HELLMANALGORITHM AND ITS APPLICATION

TO FACTORING

Abstract. We will show that the discrete logarithm problem and the problem of facto-ring are closely related. Namely, we will describe a generalization of the Pohlig-Hellmanalgorithm to noncyclic Z∗n groups which can be used to derandomize Pollard’s p − 1algorithm. The original version of this factoring algorithm needs indeed a source of ran-domness. It turns out however that the computations can be done deterministically withonly slightly worse complexity.

Keywords: factoring, discrete logarithm, derandomization.

Page 184: Kryptologia i Cyberbezpieczenstwo nr 6
Page 185: Kryptologia i Cyberbezpieczenstwo nr 6

ALGORYTMY INSPIROWANE NATURĄW KRYPTOANALIZIE

Iwona Polak, Mariusz Boryczka

Uniwersytet Śląski, Instytut Informatyki[iwona.polak, mariusz.boryczka]@us.edu.pl

Streszczenie. W dzisiejszych czasach ochrona informacji jest niezwykle istotna, a jed-nym z elementów zapewniających ową ochronę jest kryptografia. Tu z kolei ważnąrolę odgrywa kryptoanaliza, która pozwala badać bezpieczeństwo używanych szyfrów.Oprócz typowo analitycznego podejścia do łamania szyfrów (jak kryptoanaliza różni-cowa, kryptoanaliza liniowa czy analiza statystyczna) od kilkunastu lat do tego celuzaprzęga się różnego rodzaju niedeterministyczne systemy inspirowane naturą. Użycietakich technik nie jest do końca intuicyjne – w kryptoanalizie często ważne jest znale-zienie jednego konkretnego klucza (rozwiązania optymalnego), a każde inne rozwiązaniedaje kiepskie rezultaty, nawet jeśli jest blisko optimum globalnego.Słowa kluczowe: kryptoanaliza, metaheurystyka, algorytmy optymalizacyjne, krypto-grafia.

1. Wprowadzenie

Pierwszymi szyframi, które poddano kryptoanalizie metodami heury-stycznymi były szyfry klasyczne. W 2003 roku John A. Clark zachęcał dosprawdzenia technik inspirowanych naturą w kryptoanalizie szyfrów współ-czesnych, zamiast wiary w to, iż one i tak się tam nie sprawdzą [7]. Coprawda szyfry współczesne są dużo bardziej skomplikowane niż szyfry kla-syczne, jednak w ogólności opierają się na tych samych zasadach, czyliprzestawianiu i podstawianiu. Od tamtej pory próbowano wielu atakówprzy wykorzystaniu różnorodnych technik na różne algorytmy szyfrujące.Pojawiły się również modele hybrydowe, łączące kilka różnych podejść.Klasyfikacja szyfrów omówionych w niniejszej pracy została przedstawionana rys. 1.

Na rzecz kryptografii także można zastosować algorymy heurystyczne.W literaturze ukazały się propozycje szyfru opartego na algorytmach gene-tycznych. Można również metod inspirowanych naturą użyć w celu zapro-jektowania przydatnych w kryptografii silnie nieliniowych zrównoważonychfunkcji boolowskich.

2. Kryptoanaliza szyfrów klasycznych

Szyfry klasyczne to szyfry przestawieniowe i podstawieniowe, wszyst-kie są szyframi symetrycznymi. Ich działanie polega odpowiednio na za-

Page 186: Kryptologia i Cyberbezpieczenstwo nr 6

I. Polak, M. Boryczka

Rysunek 1. Klasyfikacja szyfrów opisanych w pracy

mianie liter miejscami lub zmianie liter na inny znak lub zestaw znaków(inne litery, liczby, symbole).

W pracy [32] autorzy prezentują oryginalne podejście do kryptoana-lizy szyfru przestawieniowego przy użyciu algorytmów mrówkowych [8]. Po-szczególne kolumny tekstu przedstawiono w formie grafu. W fazie wstępnejwszystkie wierzchołki były połączone ze wszystkimi innymi. W każdej ite-racji algorytmu każda cyfrowa mrówka budowała swoją ściężkę. Dla danejścieżki liczona była jej wartość na podstawie wartości bigramów (tj. sąsia-dujących dwóch liter) zgodnie z naturalną częstością występowania tychbigramów w języku, w którym została zakodowana wiadomość. Po kilkuiteracjach niektóre ścieżki otrzymywały wyższe wartości feromonu i byłybardziej prawdopodobnymi kandydatami na klucz deszyfrujący. Autorzyopisali udaną kryptoanalizę przy maksymalnie 5000 iteracjach, przy klu-czu do długości 40.

Przekrojową pracą na ten temat jest praca [4]. Autorka sprawdziłatam wiele szyfrów klasycznych: przestawieniowy, Cezara, Vigenere’a i innewieloalfabetowe szyfry podstawieniowe. Podjęła również próbę kryptoana-lizy szyfrów współczesnych: DES i AES. Prezentowane wyniki pokazują, że

186

Page 187: Kryptologia i Cyberbezpieczenstwo nr 6

Algorytmy inspirowane naturą w kryptoanalizie

algorytmy genetyczne [20] bardzo dobrze sprawdziły się przy kryptoanali-zie szyfrów klasycznych, lecz nie poradziły sobie zszyframi współczesnymi.Brak efektów również przy kryptoanalizie szyfrów współczesnych za po-mocą optymalizacji stadnej cząsteczek (PSO) [15].

3. Kryptoanaliza szyfrów współczesnych

Na przestrzeni kilkunastu ostatnich lat ciekawie przedstawia się kryp-toanaliza szyfrów współczesnych z wykorzystaniem technik inspirowanychnaturą. Wykorzystano bardzo wiele różnych technik heurystycznych dokryptoanalizy bardzo różnorodnych szyfrów współczesnych.

3.1. Szyfry asymetryczne

Osobliwym przypadkiem są kryptosystemy oparte na problemie ple-cakowym, ponieważ z jednej strony nie są liczone do szyfrów klasycznych,gdyż powstały dopiero w dobie komputerów, z drugiej zaś strony nie zo-stały nigdy wykorzystane do stworzenia współczesnego kryptosystemu [28].Opierają się one na problemie pakowania plecaka, który zaliczany jest doklasy problemów NP-zupełnych, a klasa owa to doskonałe pole do popisudla wszelkiego rodzaju algorytmów optymalizacyjnych. Autorzy pracy [39]poddali takie kryptosystemy analizie korzystając z algorytmów genetycz-nych. Znalezienie właściwego klucza wymagało przeszukania 0,09-4% prze-strzeni poszukiwań (dla problemów plecakowych o rozmiarze do 25 ele-mentów). Podobnie, w pracy [9] wykorzystano algorytmy genetyczne dokryptoanalizy szyfrowania opartego na problemie plecakowym. Dla zbioru8-elementowego średnio po 115 populacjach otrzymywano właściwy klucz,tj. ciąg w postaci superrosnącej, ze średnim przeszukaniem poniżej 50%przestrzeni rozwiązań (czyli wszystkich możliwych kluczy).

Ukazała się również praca dotycząca kryptoanalizy systemu krypto-graficznego dotyczącego krzywych eliptycznych [18]. Autorzy wykorzystalisztuczne sieci neuronowe (ANN) [21] do kryptoanalizy owego kryptosys-temu dla krzywych eliptycznych o rozmiarze p = 14, 20, 32. Wyliczenienajmniej znaczącego bitu (lsb) logarytmu dyskretnego nad krzywą elip-tyczną uzyskano ze średnią dokładnością 57% na zbiorze testowym (czylitrochę więcej niż wybór losowy) oraz 90% na zbiorze treningowym. Nie sąto najlepsze wyniki, niemniej jednak jako efekt uboczny owej pracy autorzysugerują możliwość kompresji zbioru stosując tę metodę.

187

Page 188: Kryptologia i Cyberbezpieczenstwo nr 6

I. Polak, M. Boryczka

3.2. Szyfry symetryczne blokowe

Interesujące podejście do szyfru Serpent opisano w pracy [3]. Szyfrzostał przedstawiony w formie grafu, w którym przy wykorzystaniu siecineuronowych jest szukana najkrótsza ścieżka. Serpent jest symetrycz-nym szyfrem blokowym i operuje na blokach o rozmiarach 128 bitóworaz na kluczu o długości: 128, 192 lub 256 bitów. Korzysta on z 32rund; każda runda składa się z przekształcenia XOR względem kluczarundy, użycia 128-bitowej funkcji mieszającej i zastosowania 32 4-bitowychS-Boksów. W wymienionej pracy kryptoanalizie poddano jego wersję 4-,5-, 6- i 7-rundową. Wraz ze zwiększeniem liczby rund obserwuje się spadekskuteczności algorytmu kryptoanalitycznego.

Istnieje wiele prac dotyczących kryptoanalizy algorytmu DES. Coprawda wszystkie one dotyczą jedynie osłabionej lub ćwiczebnej wersjiszyfru (SDES), jednak wiele z nich dokonuje próby porównania różnychtechnik adaptacyjnych, co może być przydatne do określenia kierunku dal-szych badań mogących przynieść obiecujące rezultaty i porzucenia techniknie przynoszących efektów.

SDES (Simplified DES) został opracowany w 1996 roku jako narzę-dzie edukacyjne. Na wejściu pobierany jest 8-bitowy blok tekstu jawnegooraz 10-bitowy klucz, a na wyjściu produkowany jest 8-bitowy blok krypto-gramu (tekstu zaszyfrowanego). Deszyfrowanie działa w odwrotnej kolejno-ści. Zasada działania SDES jest analogiczna z zasadą działania używanegow praktyce algorytmu DES. W pracy [10] przedstawiono kryptoanalizę al-gorytmu SDES wykorzystując do tego celu algorytmy genetyczne oraz al-gorytmy memetyczne [24]. Algorytm genetyczny odwzorowuje mechanizmyrządzące światem genów i ewolucji; najważniejsze operatory to operatorkrzyżowania i mutacji. Z kolei algorytm memetyczny opiera się na ewolucjikulturowej i jednostką doboru jest mem, czyli jednostka informacji kulturo-wej. W tych badaniach osiągnięto następujące wyniki: algorytm genetycznyodtworzył od 4 do 8 bitów 10-bitowego klucza, a algorytm memetyczny – od5 do 9 bitów, zatem algorytm memetyczny pozwolił osiągnąć trochę lepszerezultaty. W pracy [26] próba porównania kilku technik, takich jak symu-lowane wyżarzanie (SA) [6], [16], optymalizacja stadna cząsteczek (PSO),algorytm genetyczny (GA) oraz przeszukiwanie tabu (TS) [11], [12], dałanastępujący wynik: najlepsze rezultaty osiągnięto dla przeszukiwania tabu,najgorsze dla algorytmów genetycznych.

W pracach [27], [34] badano zarówno SDES, jak i osłabioną wersjęoryginalnego DES. W przypadku SDES najlepsze wyniki zostały osiągniętedla metody TS: 344 deszyfrowania w celu znalezienia prawidłowego klucza

188

Page 189: Kryptologia i Cyberbezpieczenstwo nr 6

Algorytmy inspirowane naturą w kryptoanalizie

(algorytm siłowy – średnio 512). Odpowiednie wartości dla PSO to 400 de-szyfrowań, a dla adaptacyjnego algorytmu genetycznego (AGA) [35] – 460deszyfrowań. Podstawowa wersja algorytmu genetycznego (GA) nie znala-zła rozwiązania nawet w 1024 iteracjach. Do badań autorzy użyli równieżwersji DES z liczbą rund zredukowaną z 16 do 6 oraz z kluczem zmniejszo-nym z 56 do 16 bitów, a także z usuniętymi S-Boksami. Dla DES najlepszewyniki dało użycie technik: PSO, AGA oraz GA (podano w kolejności odnajlepszej) [27]. W [34] przetestowano całą gamę metod heurystycznych:GA, PSO, symulowane wyżarzanie (SA), TS, algorytm pszczeli (BA) [30],optymalizacja żerowania bakterii (BFO) [29], systemy kukułcze (CS) [38].Kryptoanalizie poddano ponownie SDES oraz DES z 16- i 32-bitowym klu-czem. Najlepiej poradziło sobie PSO, najgorzej GA oraz BFO.

Na DES (wersja z okrojoną liczbą rund, bez fazy inicjalizacyjnej orazkońcowej) przeprowadzono jeszcze jeden atak [36], wykorzystując metodęataku z wybranym tekstem jawnym. Użyto do tego celu algorytmu gene-tycznego. Uzyskano dobre rezultaty dla liczby rund 6 lub mniej. Autorzytwierdzą, że przy odpowiednim zmodyfikowaniu funkcji przystosowania,ich algorytm można zastosować również do innych współczesnych szyfrówblokowych.

Gdy metody heurystyczne nie były w stanie podołać kryptoanaliziesamodzielnie, tworzono modele hybrydowe łączące wybraną metodę heu-rystyczną z bardziej „tradycyjną” metodą analityczną.

W pracy [17] wykorzystano pomocniczo PSO oraz ewolucję różnicową(DE) [37] w kryptoanalizie różnicowej. Kryptoanaliza różnicowa to metodaataku kryptologicznego polegająca na porównaniu dwóch szyfrogramów,które powstały w wyniku zaszyfrowania tym samym kluczem dwóch od-miennych od siebie tekstów jawnych. Teksty jawne są dobrane w pewienszczególny sposób, zależny od atakowanego systemu i pozwalający na ana-lityczne wyliczenie występujących zależności, a na tej podstawie – uży-tego klucza. W opisywanym przypadku atakowi został poddany szyfr DESw wersji 4- i 6-rundowej. Kryptoanaliza różnicowa stanowi pierwszą fazędziałania całego algorytmu i zapewnia 42 bity klucza, natomiast w dru-giej fazie techniki adaptacyjne mają znaleźć pozostałe 14 bitów, co udajesię w 93-100%, ze średnią ok. 99%. Autorzy sugerują, że ich metoda jestmożliwa do wykorzystania w przypadku innych szyfrów opartych na sieciFeistela (rys. 2).

Podobnie kryptoanalizę różnicową, lecz tym razem wspartą przez al-gorytm genetyczny, zastosowano w [14] w celu złamania blokowego szyfruXTEA. Uzyskano bardzo dobre wyniki do 13 z 32 rund tego algorytmu –prawidłowo określono od 27 do 32 bitów 32-bitowego klucza. Podobnie jak

189

Page 190: Kryptologia i Cyberbezpieczenstwo nr 6

I. Polak, M. Boryczka

Rysunek 2. Schemat sieci Feistela

powyżej, i tutaj autorzy sugerują, że to podejście można rozszerzyć na inneszyfry oparte na sieci Feistela.

Z kolei przy kryptoanalizie algorytmu AES, w wersji z jednymS-Boksem [13] wykorzystano uczenie maszynowe [23] wmetodzie SCA (sidechannel analysis), czyli analizie poboru mocy. Analiza poboru mocy jestto metoda bazująca najczęściej na konkretnej sprzętowej bądź programo-wej implementacji algorytmu. W trakcie takiej analizy sprawdza się pobórmocy podczas wykonywania poszczególnych faz algorytmu i na tej pod-stawie można uzyskać fragmenty lub poszczególne bity klucza. W artykuleporównano różne wariacje metody; co w przypadku tego typu metod dośćoczywiste, wyciągnięto wniosek, że dobór odpowiednich parametrów mabardzo duże znaczenie w jakości otrzymywanych wyników.

3.3. Szyfry symetryczne strumieniowe

W pracy skupiono się na aproksymacji strumieni bitów poprzez liniowerejestry przesuwne ze sprzężeniem zwrotnym LFSR (Linear Feedback ShiftRegister), rys. 3. Podobne podejście zaprezentowano w pracy [1], lecz naznacznie krótszych ciągach bitów i rejestrach (do n = 8). W [31] przedsta-wiono początek prac w tym kierunku – próby znalezienia rejestru LFSRmając dany ciąg generowany przez rejestr LFSR (którego konstrukcja niejest znana). W celu znalezienia odpowiedniego rejestru LFSR użyto algo-rytmów genetycznych. Dla rejestrów o długości do n = 32 uzyskano od68% do 100% zgodności z zadanym strumieniem, ze średnią na poziomie84%. Najlepsze rezultaty osiągnięto dla krótszych rejestrów, z mniejsząliczbą zaczepów. Wyniki dla losowego stanu początkowego przedstawinow tabeli 1. Jednak, ponieważ dla takiego przypadku znana jest analitycznametoda Berlekampa-Massey’a [19] dokładnego odtworzenia rejestru LFSR

190

Page 191: Kryptologia i Cyberbezpieczenstwo nr 6

Algorytmy inspirowane naturą w kryptoanalizie

o długości n mając do dyspozycji długość wyjścia 2n, w dalszych bada-niach skupiono się na aproksymacji strumieni bitów generowanych przezinne struktury.

Rysunek 3. Rejestr przesuwny ze sprzężeniem zwrotnym – FSR. W przypadku LFSRfunkcją sprzężenia zwrotnego jest alternatywa wykluczająca (XOR) wybranych bitów

Autorzy niniejszej pracy podjęli próby aproksymacji generatora liczbpseudolosowych BBS (Blum-Blum-Shub) [5] oraz szyfrów strumieniowychA5/1 i A5/2 będących standardem szyfrowania rozmów w telefonii komór-kowej GSM. Dla generatorów BBS z okresem o długości do 328 osiągniętoprzy różnego rodzaju mutacjach wyniki z przedziału od 69% do 75% aprok-symacji atakowanego strumienia bitów. Zbiorcze wyniki dla różnych rodza-jów mutacji podano w tabeli 2. Na tej podstawie zdecydowano się w dal-szym toku badań testować tylko najbardziej obiecujące rodzaje mutacji,tj.:

1. rozciągającą – rejestr zostaje wydłużony o jedno pole (rys. 4),2. losowe przesunięcie – losowany jest jeden z zaczepów, a następnie prze-

noszony na inne, również losowo wybrane, miejsce (rys. 5).

Rysunek 4. Mutacja rozciągająca

Rysunek 5. Mutacja losowe przesunięcie

191

Page 192: Kryptologia i Cyberbezpieczenstwo nr 6

I. Polak, M. Boryczka

WynikidlaLFSRzlosowymstanempoczątkowym

Tabe

la1

StanpoczątkowyMaksymalne

Szukanywielomian

Znalezionywielomian

Pokolenie

(losowy)

dopasowanie

x22+x21+1

00101100101

1x22+x21+1

16(A5/1)

00000111010

x16+x5+x4+x3+1

0111101111100110

0.679

x22+x7+1

13(USB3.0)

x7+x3+1

0001100

1x7+x3+1

5(CRC-7,MMC)

x32+x26+x23+x22+x16+x12+x11

x26+x25+x24+x23+x22+x21+x20

1110111010101110

+x10+x8+x7+x5+x4+x2+x1+1

+x18+x17+x16+x13+x12+x7+x6

160000000000000000

(CRC-32-MPEG2,CRC-32-IEEE802.3)

+x4+x3+x2+x1+1

16

x23+x21+x20+x18+x17+x16

110010010110

x31+x28+x23+x20+x18+x16+x14

+x11+x10+x9+x7+x3+1

0.710

2911100000000

+x9+x3+x2+x1+

(wygenerowanylosowo)

Tabe

la2

Mutacjaposortowanawzględemnajlepszegoprzystosowaniawszystkich

testowanychgeneratorówBBS

Mutacja

Średnienajlepszeprzystosowanie

Średniageneracja

rozciągająca

0,754

25

losoweprzesunięcie

0,724

15

zmiananaprzeciwny

0,715

23

sąsiednieprzesunięcie

0,71

15

zwężająca

0,696

8

dodaniezaczepu

0,695

7

usunięciezaczepu

0,688

5

192

Page 193: Kryptologia i Cyberbezpieczenstwo nr 6

Algorytmy inspirowane naturą w kryptoanalizie

W przypadku szyfrów A5/1 i słabszej odmiany A5/2 wyniki równieżsą obiecujące. Algorytmy te składają się odpowiednio z trzech oraz czte-rech sprzężonych ze sobą rejestrów LFSR. Podczas badań przy aproksyma-cji z wykorzystaniem pojedynczego rejestru LFSR o długości z przedziału20–30 uzyskano zgodność bitów generowanych przez ów znaleziony rejestrz bitami zadanego wyjścia na poziomie średnim 70%, a dla najlepszychprzypadków do 77%. Oznacza to, że korzystając tylko z jednego rejestruLFSR można odszyfrować znaczącą część zaszyfrowanej wiadomości. Au-torzy niniejszej pracy będą kontynuować kierunek swoich badań.

4. Algorytmy inspirowane naturą na rzecz kryptografii

Warto również wspomnieć, że opublikowano pierwsze próby stworze-nia algorytmów kryptograficznych opartych na metodach heurystycznychczy też wykorzystano te techniki pomocniczo przy generowaniu składnikówwykorzystywanych w kryptografii.

Autorzy pracy [22] korzystając z algorytmów genetycznych projektująsilnie nieliniowe, zrównoważone funkcje boolowskie, które wykorzystuje sięw kryptografii do projektowania S-Boksów odpornych na kryptoanalizę li-niową i różnicową. Taka pseudolosowa metoda zapewnia odpowiednią alter-natywę dla systematycznych metod budowy kryptograficznie silnych funkcjiboolowskich.

Z kolei w pracy [25] zaproponowano kryptosystem oparty na algoryt-mie genetycznym z deterministycznymi operatorami krzyżowania i mutacji.Jest to o tyle ciekawe, że wszystkie omawiane do tej pory techniki heury-styczne mają to do siebie, iż dużą rolę gra w nich przypadek. Są one zeswojej natury losowe i przy każdym wywołaniu algorytmu można otrzymaćodmienny wynik. Kryptosystem z kolei wymaga tego, aby zaszyfrowanytekst miał postać taką, by dało się go bez problemu rozszyfrować i otrzymaćw wyniku tego sensowne dane. Najczęściej kryptosystemy buduje się w takisposób, że dany tekst jawny po zaszyfrowaniu danym kluczem za każdymrazem da taki sam szyfrogram. Jak widać założenia algorytmu genetycz-nego i algorytmu szyfrującego są ze sobą sprzeczne. Niemniej jednak auto-rom omawianej pracy udało się stworzyć modyfikację GA z determistycz-nymi operatorami krzyżowania i mutacji, która to modyfikacja dla danegotekstu jawnego i klucza wygeneruje za każdym razem ten sam szyfrogram.Co prawda wadą jest to, że szyfrogram zajmuje dwa razy więcej miejscaniż tekst jawny, jednakże sama idea takiego kryptosystemu jest dość orygi-nalna. Podobnie technikę optymalizacyjną wykorzystano w [2] do stworze-nia kryptosystemu opartego na algorytmach genetycznych z pseudolosową

193

Page 194: Kryptologia i Cyberbezpieczenstwo nr 6

I. Polak, M. Boryczka

sekwencją. W użytej wersji algorytmu z dwóch operatorów genetycznychwybrano tylko krzyżowanie. Stworzony szyfr jest szyfrem strumieniowymopartym na NLFSR (Non-Linear Feedback Shift Register). W swoich ba-daniach eksperymentalnych autorzy wykazali przepustowość wystarczającodobrą dla rzeczywistych zastosowań.

5. Podsumowanie

W pracy została przedstawiona cała gama algorytmów inspirowanychnaturą w atakach na wiele kryptosystemów. Co prawda bardzo dobre wy-niki są uzyskiwane jak dotąd tylko dla szyfrów klasycznych, niemniej jednakpowolny, acz systematyczny postęp w łamaniu współczesnych obecnie uży-wanych kryptosystemów pozwala domniemywać, że algorytmy genetyczne,mrowiskowe czy sieci neuronowe nie powiedziały jeszcze ostatniego słowaw tej kwestii. Z jednej strony cieszy, że współczesne kryptosystemy opie-rają się nowym technikom ataku, z drugiej strony trzeba się strzec i miećna uwadze, że kryptoanaliza przy wykorzystaniu systemów inspirowanychnaturą daje satysfakcjonujące rezultaty dla coraz silniejszych wersji aloryt-mów szyfrujących i być może dopracowanie tych technik pozostaje tylkokwestią czasu.

Literatura

[1] A. A. Abd, H. A. Younis, W. S., Awad, it Attacking of streamCipher Systems Using a Genetic Algorithm, Journal of the Universityof Thi Qar, Volume 6, pp.1–6, 2011.

[2] A. Almarimi, A. Kumar, I. Almerhag, N. Elzoghbi, A newapproach for data encryption using genetic algorithms, 2006.

[3] A. G. Bafghi, R. Safabakhsh, B. Sadeghiyan, Finding the diffe-rential characteristics of block ciphers with neural networks, Informa-tion Sciences, Vol.178, No 15, pp. 3118–3132, 2008.

[4] K. P. Bergmann, Cryptanalysis Using Nature-Inspired OptimizationAlgorithms (master’s thesis), 2007.

[5] L. Blum, M. Blum, M. Shub, A Simple Unpredictable Pseudo Ran-dom Number Generator, SIAM J. Comput. 15, 2, pp. 364–383, 1986.

[6] V. Cerny, Thermodynamical approach to the traveling salesman pro-blem: An efficient simulation algorithm, Journal of Optimization The-ory and Applications, pp. 41–51, 1985.

194

Page 195: Kryptologia i Cyberbezpieczenstwo nr 6

Algorytmy inspirowane naturą w kryptoanalizie

[7] J. A. Clark, Invited paper. Nature-inspired cryptography: Past, pre-sent and future, Proceedings of the 2003 Congress on EvolutionaryComputation CEC2003, pp. 1647–1654, 2003.

[8] M. Dorigo, D. Di Caro, L. M. Gambardella, Ant Algorithmsfor Discrete Optimization, Artificial Life, pp. 137–172, 1999.

[9] P. Garg, A. Shastri, An Improved Cryptanalytic Attack on Knap-sack Cipher using Genetic Algorithm, World Academy of Science, En-gineering and Technology, pp.553–560, 2007.

[10] p. Garg, A Comparison between Memetic algorithm and Genetic al-gorithm for the cryptanalysis of Simplified Data Encryption Standardalgorithm, International Journal of Network Security & Its Applica-tions (IJNSA), Vol.1, No 1, pp.34–42, April 2009.

[11] F. Glover, Future Paths for Integer Programming and Links to Ar-tificial Intelligence, Comput. Oper. Res., pp. 533–549, 1986.

[12] F. Glover, Tabu SearchPart I, ORSA Journal on Computing, pp.190–206, 1989.

[13] G. Hospodar, B. Gierlichs, E. D. Mulder, I. Verbauwhede,J. Vandewalle, Machine learning in side-channel analysis: a firststudy, J Cryptogr Eng (2011), pp.293–302, 2011.

[14] P. Itaima, M. C. Riffa, Applying Differential Cryptanalysis forXTEA using a Genetic Algorithm, 2008.

[15] J. Kennedy, R. Eberhart, Particle swarm optimization, IEEEInternational Conference on Neural Networks, Proceedings, pp.1942–1948, 1995.

[16] S. Kirkpatrick, C. D. Gelatt, M. P. Vecchi, Optimization bySimulated Annealing, Science, Number 4598, pp. 671–680, 1983 .

[17] E. C. Laskari, G. C. Meletiou, Y. C. Stamatiou, M. N. Vra-hatis, Applying evolutionary computation methods for the cryptanaly-sis of Feistel ciphers, Applied Mathematics and Computation 184(1),pp. 63–72, 2007.

[18] E. C. Laskari, G. C. Meletiou, Y. C. Stamatiou, D. K. Taso-ulis, M. N. Vrahatis, Assessing the effectiveness of artificial neuralnetworks on problems related to elliptic curve cryptography, Mathema-tical and Computer Modelling, Vol.46, No 12, pp.174–179, 2007.

[19] J. L. Massey, Shift-register synthesis and BCH decoding, IEEETransactions on Information Theory, Vol.15, No 1, pp.122–127, 1969.

[20] Z. Michalewicz, Algorytmy genetyczne + struktuy danych = pro-gramy ewolucyjne, Warszawa, Wydawnictwa Naukowo-Techniczne,2003.

[21] Z. Michalewicz, D. B. Fogel, Jak to rozwiązać czyli Nowoczesnaheurystyka, Warszawa, Wydawnictwa Naukowo-Techniczne, 2006.

195

Page 196: Kryptologia i Cyberbezpieczenstwo nr 6

I. Polak, M. Boryczka

[22] W. Millan, A. Clark, E. Dawson, Heuristic design of cryptogra-phically strong balanced Boolean functions, Advances in CryptologyEUROCRYPT’98, Lecture Notes in Computer Science, pp. 489–499,1998.

[23] T. M. Mitchell, Machine Learning, McGraw-Hill Inc., New York,NY, USA, 1997.

[24] P. Moscato, On Evolution, Search, Optimization, Genetic Algori-thms and Martial Arts: Towards Memetic Algorithms, California In-stitute of Technology, 1989.

[25] N. Nalini, G. Raghavendra Rao, A new encryption and decryp-tion algorithm combining the features of genetic algorithm (GA) andcryptography, 1999.

[26] N. Nalini, G. Raghavendra Rao, Cryptanalysis of Simplified DataEncryption Standard via Optimisation Heuristics, 2006.

[27] N. Nalini, G. Raghavendra Rao, Experiments on CryptanalysingBlock Ciphers via Evolutionary Computation Paradigms, 2006.

[28] A. M. Odlyzko, The rise and fall of knapsack cryptosystems, Cryp-tology and Computational Number Theory, pp. 75–88, 1990.

[29] K. M. Passino, Bacterial Foraging Optimization, Int. J. Swarm. In-tell. Res., vol. 1, no 1, pp. 1–16, 2010.

[30] D. T. Pham i inni, The bees algorithm, Technical report, Manufac-turing Engineering Centre, Cardiff University, UK, 2005.

[31] I. Polak, M. Boryczka, Breaking LFSR Using Genetic Algorithm,Computational Collective Intelligence, Technologies and Applications,pp. 731–738, 2013.

[32] M. D. Russell, J. A. Clark, S. Stepney,Making the Most of TwoHeuristics: Breaking Transposition Ciphers with Ants, EvolutionaryComputation, CEC ’03, Vol. 4, pp. 2653–2658, 2003.

[33] B. Schneier, Kryptografia dla praktyków, Wyd. 2, Warszawa, Wy-dawnictwa Naukowo-Techniczne, 2002.

[34] G. Selvi, T. Purusothaman, Cryptanalysis of Simple Block Ciphersusing Extensive Heuristic Attacks, European Journal of Scientific Re-search, Vol.78 No.2 (2012), pp.198–221, 2012.

[35] M. Srinivas, L. M. Patnaik, Adaptive probabilities of crossover andmutation in genetic algorithms, IEEE Transactions on Systems, Man,and Cybernetics, 4, pp. 656–667, 1994.

[36] J. Song, H. Zhang, Q. Meng, Z. Wang, Cryptanalysis ofFour-Round DES Based on Genetic Algorithm International Confe-rence on Wireless Communications, Networking and Mobile Compu-ting. WiCom. pp. 2326–2329, 2007.

196

Page 197: Kryptologia i Cyberbezpieczenstwo nr 6

Algorytmy inspirowane naturą w kryptoanalizie

[37] R. Storn, K. Price, Differential Evolution – A Simple and EfficientHeuristic for Global Optimization over Continuous Spaces, J. of GlobalOptimization, vol. 11, no 4, pp. 341–359, 1997.

[38] X. -S. Yang, S. Deb, Cuckoo Search via Lvy Flights, NaBIC, IEEE,pp. 210–214, 2009.

[39] I. F. T. Yaseen, H. V. Sahasrabuddhe, Breaking multiplicativeknapsack ciphers using a genetic algorithm, Proceedings of the Interna-tional Conference on Knowledge Based Computer Systems, p. 129–139,1998.

CRYPTANALYSIS USING NATURE-INSPIREDALGORITHMS

Abstract. Nowadays protection of information is very crucial and cryptography is a si-gnificant part of keeping information secure. Here in turn cryptanalysis plays an impor-tant role by examining the safety of ciphers used. Besides the analytical approach tociphers breaking (eg. differential cryptanalysis, linear cryptanalysis, statistical analysis)for this purpose there are several kinds of non-deterministic, inspired by nature systemsapplied. It is not intuitive - as in cryptanalysis often it is important to find the exactkey used (optimal solution) and every other solution is giving poor results, even if it isnear global optimum.

Keywords: cryptanalysis, metaheuristic, optimization algorithms, cryptology.

Page 198: Kryptologia i Cyberbezpieczenstwo nr 6
Page 199: Kryptologia i Cyberbezpieczenstwo nr 6

TEST AUTOKORELACYJNY DLA CIĄGUBINARNEGO

Krzysztof Mańk

Wojskowa Akademia Techniczna, Wydział Cybernetyki,Laboratorium Badawcze Kryptologii00-908 Warszawa, ul. S. Kaliskiego 2,

[email protected]

Streszczenie. W pracy tej prezentujemy wariant testu autokorelacyjnego dedykowanydla ciągów binarnych, dzielonych na bloki bitów. Dla proponowanego testu wyznaczyli-śmy przybliżenie rozkładu statystyki testowej oraz przeprowadziliśmy analizę jego jako-ści. Pokazaliśmy również konsekwencje użycia testu przy podziale ciągu na wielobitowebloki.

Słowa kluczowe: test statystyczny, test losowości, test autokorelacyjny

Wstęp

W literaturze znaleźć można dwa warianty testu badającego ciąg liczbrzeczywistych zprzedziału [0, 1) pod kątem jego autokorelacji. Pierwszy za-proponowany został przez Donalda Knutha w powszechnie znanej Sztuceprogramowania [5], test ten polega na obliczeniu współczynnika korelacjipomiędzy badanym ciągiem, a jego cyklicznym przesunięciem o t pozycji.Drugi zwariantów znaleźć można, na przykład, wbibliotece TestU01 [2],przewiduje on jednak wyznaczanie współczynnika korelacji zniecyklicznymprzesunięciem ciągu. Dopełnieniem dla nich jest test autokorelacyjny dlaciągu binarnego.

W niniejszej pracy przedstawimy krótko obydwa warianty testu dlaciągu liczb rzeczywistych, skupiając się na poprawności określenia ich pa-rametrów oraz podatności na implementację w środowisku o ograniczonychzasobach. W drugiej części zaproponujemy wariant testu i jego implemen-tacji pozwalający na możliwie kompaktową implementację.

Praca dofinansowana ze środków NCBiR na lata 2013-2018, w ramach projektu

numer DOBR/0001/RON/ID1/2013/01.

Page 200: Kryptologia i Cyberbezpieczenstwo nr 6

K. Mańk

1. Testy autokorelacyjne dla ciągu liczb rzeczywistych

W tym rozdziale zakładać będziemy, że testowany jest ciąg U l = u1,u2, . . . , ul – ciąg l liczb rzeczywistych, zaś ui tworzą ciąg niezależnychzmiennych losowych o rozkładzie równomiernym na przedziale [0, 1) – cojest własnością weryfikowaną przez testy.

1.1. Test zaproponowany przez Knutha

Knuth zaproponował wyznaczanie statystyki testowej postaci:

Scykl =

n

n∑i=1

uiui+t −( n∑i=1

ui

)2nn∑i=1

u2i −( n∑i=1

ui

)2 ,

przy czym należy przyjąć, że badany ciąg jest postaci Un+t = u1,u2, . . . , un, u1, . . . , ut.Dla dużych n można przyjąć, że opisuje ją zmienna losowa o rozkładzienormalnym, z wartością oczekiwaną

µ = −1/(n− 1)

i wariancją

σ2 ≈ n2

(n− 1)2(n− 2)− 24

5n2.

Przeprowadzone przez nas testy wskazały, że rozkład i parametry sta-tystyki testowej zostały poprawnie określone.

Analiza testu pod kątem implementacji w strukturach programowal-nych wskazała na dwie, dość istotne, wady, podnoszące zajętość struktury.Pierwszą z nich jest cykliczność stosowanego przesunięcia, oznacza to ko-nieczność zapamiętania t − 1 początkowych elementów ciągu, w celu ichpóźniejszego użycia, drugą – występowanie aż trzech sum w statystyce te-stowej. Należy zaznaczyć, że obie te niedogodności można stosunkowo pro-sto przezwyciężyć. W pierwszym przypadku, poprzez przerzucenie ciężaruprzechowania lub dwukrotnego wytworzenia wspomnianego fragmentu nastronę dostarczającą badany ciąg, co jednak może być z różnych wzglę-dów nieakceptowalne, np. gdy układ wytwarzający implementowany jestwewnątrz tej samej struktury. W drugim przypadku rozwiązanie jest jużproste i eleganckie, polega na skojarzeniu tego testu z testami momentówpierwszego i drugiego rzędu, na użytek których wyznacza się sumę i sumękwadratów elementów ciągu.

200

Page 201: Kryptologia i Cyberbezpieczenstwo nr 6

Test autokorelacyjny dla ciągu binarnego

1.2. Test z niecyklicznym przesunięciem

Implementację testu w przedstawionej poniżej wersji znaleźć możnaw bibliotece svaria, wchodzącej w skład pakietu testów TestU01. Występujetam pod nazwą sample correlation test.

Wyznaczana jest statystyka testowa:

Sncykl =1n

n∑i=1

uiui+t −14,

przy czym, odmiennie niż w poprzednim punkcie, badany jest, po prostu,ciąg Un+t = u1, u2, . . . , un+t.

Podano, że dla dużych n zmienna losowa Sncykl√

12n ma w przybliże-niu rozkład N(0, 1). Proponuje się przeprowadzanie testu zgodności, jakotestu drugiego poziomu, dla wielokrotnych powtórzeń testu przedstawio-nego.

Poprzez rezygnację z cykliczności przesunięcia udało się usunąć obieniedogodności, które sygnalizowaliśmy w poprzednim punkcie, niestetystronę analityczną autorzy potraktowali po macoszemu. Niezbyt złożonerachunki, pozwalają wyznaczyć prawidłową formułę opisującą wariancjęstatystyki testowej, dla której otrzymaliśmy:

D2 [Sncykl] =13

144n− t

24n2.

Drugi składnik jest w praktyce zaniedbywalny, wobec czego okazuje się, żerzeczywista wariancja jest o nieco ponad 8% większa od pierwotnie postulo-wanej. Jakie to może mieć znaczenie pokażemy na poniższym przykładzie.

Załóżmy, że badanie zostało zaprojektowane przy użyciu pierwotnejformuły, na podstawie której wyznaczono kwantyle dziesiętne – test dru-giego poziomu będzie testem zgodności Poissona, w którym rozróżnianychjest 10 klas, zaś poddany mu został generator posiadający założone wła-sności. Tabela 1 przedstawia wartości pierwszych 5 kwantyli – pozostałepominęliśmy ze względu na symetryczność rozkładu – oraz odpowiadają-cych im prawdopodobieństw uwzględniających poprawną wartość wariancji(nie uwzględnialiśmy drugiego składnika).

Takie ustalenie progów miało na celu uzyskanie równego 10% prawdo-podobieństwa dla każdej z 10 klas. Jak widać, największe różnice występujądla skrajnych klas, dla których przekraczają one 9% wartości założonej,a spośród pozostałych największe są dla klas środkowych – tu odchylenie

201

Page 202: Kryptologia i Cyberbezpieczenstwo nr 6

K. Mańk

wynosi niecałe 4%.

Tabela 1Kwantyle dziesiętne i odpowiadające im rzeczywiste

prawdopodobieństwa

rzeczywistezałożone rzeczywistekwantyl ·√n prawdopodobieństwoprawdopodobieństwo prawdopodobieństwo dlaklasy

0,1 −0,36995 0,10911 0,10911

0,2 −0,24296 0,20937 0,10026

0,3 −0,15138 0,30719 0,09782

0,4 −0,07314 0,40384 0,09665

0,5 0,0 0,50000 0,09616

Jeśli badaniu poddana zostanie seria ciągów pochodzących z ideal-nego generatora, to przeciętne częstości, otrzymywane dla poszczególnychklas, dążyć będą do przedstawionych powyżej prawdopodobieństw dla klas.Biorąc liczbę powtórzeń testu (liczność serii ciągów) wynoszącą 100, otrzy-mamy następujące średnie liczności dla poszczególnych klas:

10,911 10,026 9,782 9,665 9,6169,616 9,665 9,782 10,026 10,911

Obliczone dla tych wartości prawostronne prawdopodobieństwo w teściezgodności równe jest 0,999999, co oznacza, że błąd określenia wariancji niema istotnego wpływu na otrzymywany wynik. Nawet jeśli zamiast wartościułamkowych, przyjmiemy najbliższe liczby całkowite najlepiej pasujące dopowyższych średnich:

11, 10, 10, 10, 9, 9, 10, 10, 10, 11,

to i tak różnica nie będzie znacząca.Okazuje się jednak, że już dla liczby powtórzeń wynoszącej 430, liczone

jak powyżej, prawdopodobieństwo spada poniżej 0,9, dla 610 – poniżej0,5, zaś dla 980 – poniżej 0,01. Wynika z tego, że przeprowadzając testdrugiego poziomu dla 1000 powtórzeń tego testu, niemal zawsze otrzymamyodpowiedź: ”Twój generator jest bardzo, ale to bardzo, zły.” Wyjątkiemmogą być sytuacje, gdy rozpatrywany generator jest naprawdę bardzo zły,gdyż wtedy może mieć zastosowanie ludowe porzekadło o dwóch minusach.

202

Page 203: Kryptologia i Cyberbezpieczenstwo nr 6

Test autokorelacyjny dla ciągu binarnego

2. Testy autokorelacyjne dla ciągu binarnego

Zgodnie z tytułem, w rozdziale tym zajmiemy się badaniem ciągu bi-narnego sl = s1, s2, . . . , sl – ciąg binarny o długości l, gdzie si ∈ 0, 1i tworzą one ciąg niezależnych zmiennych losowych z prawdopodobień-stwem 1/2 otrzymania 0.

2.1. Test dla ciągu bitów

Dla binarnego ciągu sn+t obliczana jest empiryczna korelacja z jegoniecyklicznym przesunięciem o t pozycji:

Ai =n∑i=1

(si ⊕ si+t),

gdzie ⊕ oznacza alternatywę wykluczającą (sumę modulo 2).Powyższa procedura jest tożsama z przeprowadzeniem testu momen-

tów pierwszego rzędu dla bloku jednobitowego dla ciągu powstałego przezpobitowe dodanie modulo 2 ciągu wyjściowego i jego przesunięcia o t po-zycji. Wobec powyższego statystyka testowa ma asymptotycznie rozkładokreślony formułą:

Pr(At < x) = Φ((

x− n

2

) 2√n

)− 1

12nφ(3)

((x− n

2

) 2√x

), [3]

gdzie Φ(x) jest dystrybuantą rozkładu N(0, 1), a φ(3) = x(3−x2)√2π

e−x22

jest trzecią pochodną gęstości tego rozkładu. Dla bardzo dużych n drugiskładnik można pominąć, otrzymując w ten sposób przybliżenie rozkłademN(n/2,

√n/2).

2.2. Test dla ciągu bloków d bitowych

Testy opisane w punktach 1.2. i 2.1. są, z punktu widzenia obliczeńprzy użyciu komputera cyfrowego, dwoma skrajnymi przypadkami – w dru-gim ciąg dzielony jest na bloki jednobitowe, a w pierwszym na, w teorii,nieskończonej długości, a w praktyce 32 bitowe. Tak długie bloki rodząjednak dwa problemy:

203

Page 204: Kryptologia i Cyberbezpieczenstwo nr 6

K. Mańk

• ciąg określonej długości można podzielić na stosunkowo niewiele takichbloków,• najmniej znaczące bity, okazują się być praktycznie nieznaczące, ze

względu na ich marginalny wpływ na wartość statystyki testowej.

Powyższe skłoniły nas do zaproponowania modyfikacji testu z punktu 1.2.,która uwzględnia skończoną długość bloku.

Wyjściowy ciąg binarny sd(n+t) dzielony jest na rozłączne bloki długo-ści d bitów, które następnie utożsamiamy z liczbami naturalnymi ze zbioru0, 1, 2, . . . , 2d − 1. W ten sposób otrzymujemy ciąg liczb całkowitychCn+t = c1, c2, . . . , cn+t. Na podstawie założenia o równomierności i nie-zależności rozkładu bitów w ciągu wyjściowym, można również założyć, żetworzą one ciąg niezależnych zmiennych losowych o rozkładzie równomier-nym na zbiorze 0, 1, 2, . . . , 2d − 1.

Wyznaczana jest statystyka testowa:

Sdncykl =n∑i=1

cici+t, t > 0.

Poniżej prezentujemy sposób wyznaczenia parametrów rozkładu i dys-trybuanty statystyki testowej.

Zakładamy, że dla dużych n mieć ona będzie, w przybliżeniu, rozkładnormalny. Aby zminimalizować błąd tego przybliżenia posłużymy się for-mułą: [3], [9]

F (x) = Φ(x)− 13!µ3σ3φ(2)(x) +

14!

(µ4σ4− 3)φ(3)(x)

− 15!

(µ5σ5− 10

µ3σ3

)φ(4)(x) +

106!

(µ3σ3

)2φ(5)(x)

− 357!µ3σ3

(µ4σ4− 3)φ(6)(x)− 280

9!

(µ3σ3

)3φ(8)(x) + . . . ,

gdzie: F (x) – dystrybuanta znormalizowanej statystyki testowej, Φ(x)– dystrybuanta standardowego rozkładu normalnego, φ(k) – k-ta pochodnagęstości standardowego rozkładu normalnego, σ – odchylenie standardowezmiennej Sdncykl, µk – moment centralny rzędu k zmiennej Sdncykl.

Oczywiście w prezentowanej powyżej formule jest nieskończenie wielewyrazów, my jednak ograniczyliśmy się do wyznaczenia przedstawionych,co, jak pokażemy dalej, pomijając skrajne przypadki, jest znacznie nad-miarowe.

204

Page 205: Kryptologia i Cyberbezpieczenstwo nr 6

Test autokorelacyjny dla ciągu binarnego

Istotnym ograniczeniem stosowalności powyższej formuły jest warunekniezależności składników sumy tworzącej zmienną losową – naszą statystykętestową. W oczywisty sposób warunek ten nie jest tutaj spełniony, w dal-szej części pokażemy jednak, że wobec niewielkiej siły korelacji można jązaniedbać.

Rozpoczynamy od wyznaczenie momentów rzędu od 1 do 4 zmiennejSdncykl. Ponieważ rachunki temu towarzyszące są dość żmudne i cechują sięznaczną objętością, pozwolimy sobie zaprezentować tok postępowania naprzykładzie momentów rzędu 1 i 2, dla kolejnych podając jedynie wynikkońcowy.

Dla momentu rzędu 1 mamy:

m1 = E[Sdncykl] = E

[ n∑i=1

cici+t

]2=n∑i=1

E[cici+t] =n∑i=1

E[ci]E[ci+t]

= n(E[ci])2 =(2d − 1)2

4n.

Skorzystaliśmy z addytywności wartości oczekiwanej i niezależności zmien-nych ci i ci+t.

Dla momentu rzędu 2 mamy:

m2 = E

[ n∑i=1

cici+t

]2= E

[ n∑i=1

(cici+t)2 + 2n−1∑i=1

n∑j=i+1

cici+tcjcj+t

].

Pierwszy składnik jest prosty i wyznaczamy go tak, jak dla momenturzędu 1. Dla drugiego rozpatrzyć należy dwa przypadki: gdy j = i + toraz pozostałe. Tak więc dostajemy:

m2 = nE[c2i c2i+t] + 2(n− t)E[cic2i+tci+2t] + (n2 − 3n+ 2t)E[cici+tcjcj+t]

=n

36(2d − 1)2(2 · 2d − 1)2 +

n− t12

(2d − 1)3(2 · 2d − 1)

+n2 − 3n+ 2t

16(2d − 1)4

=(2d − 1)2

144(9(2d − 1)2n2 + (13 · 22d + 2 · 2d − 11)n

− 6(2d − 1)(2d + 1)t).

205

Page 206: Kryptologia i Cyberbezpieczenstwo nr 6

K. Mańk

Przy pomocy dwóch powyższych momentów wyznaczamy wariancję:

µ2 = σ2 = D2[Sdncykl] =(2d − 1)2(2d + 1)

144((13 · 2d − 11)n− 6(2d − 1)t).

Dla kolejnych momentów i momentów centralnych mamy:

m3 = E

[ n∑i=1

(cici+t)3 + 3n∑i=1

∑j =i

(cici+t)2cjcj+t

+ 6n−2∑i=1

n−1∑j=i+1

n∑k=j+1

cici+tcjcj+tckck+t

]

=(2d − 1)4

192

(3(2d − 1)2n3 + (2d + 1)(13 · 2d − 11)n2

− 2(2d + 1)(3(2d − 1)t− 4(2d + 1))n− 8(2d + 1)2t),

µ3 =124

(2d − 1)4(2d + 1)2(n− t),

m4 =(2d − 1)2

283352

(675(2d − 1)6n4 + 450(2d − 1)4(2d + 1)(13 · 2d − 11)n3

− 25(2d − 1)2(2d + 1)(108(2d − 1)3t−A1)n2

− 6(2d + 1)(50(2d − 1)3(2d + 1)(37 · 2d − 35)t−A2)n

+ 40(2d − 1)(2d + 1)(45(2d − 1)3(11 · 2d − 7)t−A3)t)

A1 = (2d + 1)(457 · 22d − 862 · 2d + 409),

A2 = 327 · 25d + 167 · 24d − 2606 · 23d + 2514 · 22d + 367 · 2d − 753,

A3 = 215 · 24d + 130 · 23d − 792 · 22d + 110 · 2d + 313,

µ4 =(2d − 1)2(2d + 1)

283352

(25(2d − 1)2(2d + 1)(13 · 2d − 11)2n2

− 6(50(2d − 1)3(2d + 1)(13 · 2d − 11)t−A2)n

+ 20(2d − 1)(45(2d − 1)3(2d + 1)t−A3))t

206

Page 207: Kryptologia i Cyberbezpieczenstwo nr 6

Test autokorelacyjny dla ciągu binarnego

m5 =(2d − 1)4

210335

(175(2d − 1)6n5 + 150(2d − 1)4(2d + 1)(13 · 2d − 11)n4

− 25(2d − 1)2(2d + 1)(36(2d − 1)3t−A4)n3

− 2(2d + 1)(150(2d − 1)3(2d + 1)(25 · 2d − 23)t−A5)n2

+ 4(2d + 1)(225(2d − 1)4(2d + 1)t2 − 5(2d − 1)A6t− 16(2d + 1)A7)n

+ 32(2d + 1)2(75(2d − 1)3(2d + 1)t+A8)t),

A4 = (2d + 1)(313 · 22d − 574 · 2d + 265),

A5 = 3581 · 25d − 1699 · 24d − 13018 · 23d + 70 · 2d + 653,

A6 = 595 · 24d + 170 · 23d − 1512 · 22d + 70 · 2d + 653,

A7 = 37 · 24d − 120 · 23d + 214 · 22d − 120 · 2d − 23,

A8 = 59 · 24d − 330 · 23d + 668 · 22d − 330 · 2d − 91,

µ5 =(2d − 1)4(2d + 1)2

26335

(25(2d − 1)2(2d + 1)(13 · 2d − 11)2n2

− (25(2d − 1)2(2d + 1)(19 · 2d − 17)t−A9)n

+ 2(75(2d − 1)3(2d + 1)t+A8)t)

A9 = 148 · 24d − 480 · 23d + 856 · 22d − 480 · 2d − 92

Należy zaznaczyć, że powyższe formuły będą prawdziwe dla n ≥ 4t,co oznacza minimalną długość badanego ciągu wynoszącą 5t. W dalszejczęści pokażemy, że dla dużych długości ciągu możliwe będzie dopuszcze-nie przesunięć równych połowie długości ciągu. Dopuszczenie większych t,w pierwszym przypadku, wymagałoby dodatkowych żmudnych rachunkównie wnosząc do testu nowej jakości, przekroczenie przez t połowy długościciągu równałoby się pomijaniu części wyrazów.

Obliczone momenty pozwalają wyznaczyć wszystkie siedem, zapre-zentowanych powyżej, składników rozwinięcia dystrybuanty. Posiłkując sięnimi można również wyznaczyć współczynnik korelacji pomiędzy wyrazamisumy:

corr(cici+t, cjcj+t) =

3(2d − 1)7 · 2d − 5

, dla j = i± t,

0, w p.p.

Przyjmuje on, jak widać, wartości uważane za przeciętne, należy jednak pa-miętać, że dla określonego składnika niezerowa wartość pojawia się jedynie

207

Page 208: Kryptologia i Cyberbezpieczenstwo nr 6

K. Mańk

w przypadku dwóch lub tylko jednego innego składnika, tak więc średniakorelacja jest odwrotnie proporcjonalna do długości ciągu.

Jeśli w powyższych rozważaniach sumy zastąpimy odpowiednimi cał-kami, to wyznaczymy parametry dla testu z punktu 1.2. To samo możnauzyskać dzieląc powyższe wyrażenia przez odpowiednią potęgę (2d − 1)i przechodząc z d do nieskończoności.

Drugim istotnym spostrzeżeniem jest, że znany z literatury test zapre-zentowany w punkcie 2.1. nie jest szczególnym przypadkiem powyższego.Stał by się nim, gdyby sumę modulo 2 zastąpić iloczynem.

W kolejnym rozdziale zajmiemy się ustaleniem minimalnych wartościparametrów n i d, dla których uzasadnione jest posługiwanie się podanymprzybliżeniem, jak również zastanowimy się nad koniecznością wykorzysty-wania w nim wszystkich siedmiu składników.

Na koniec zbadamy relację pomiędzy dwoma przedstawionymi powyżejtestami.

3. Analiza własności statystyki testu dla ciągu blokówd bitowych

3.1. Istotność składników rozwinięcia

W punkcie tym sprawdzimy, czy wyznaczone w poprzednim punkcieprzybliżenie dystrybuanty jest wystarczające.

Jako jedną z miar wpływu każdego ze składników na wartość formułyprzyjęliśmy największą, co do modułu, wartość przez niego przyjmowaną.Ponieważ parametry n, t i d mają wpływ jedynie na wartość współczynnikastojącego przed właściwą funkcją, więc niezależnie od nich można ana-litycznie wyznaczyć tę maksymalną wartość. W tabeli 2 zebraliśmy takotrzymane wartości dla różnych kombinacji parametrów. Jeśliby ograni-czyć się jedynie do tego wskaźnika, to bez wahania można by ograniczyćsię do dwóch pierwszych składników, gdyż jedynie dla skrajnie małych n„poprawka” dawana przez największy z pozostałych przekracza kilka pro-cent wartości wnoszonej przez drugi. Okazuje się, że równie istotne jaksama wartość maksymalna, jest również położenie argumentu jej odpowia-dającego – w czterech przypadkach jest nim 0, w dwóch pozostałych są towartości około ±0,617 i ±0,742, a więc wszystkie one położone są w central-nej części wykresu dystrybuanty, gdzie nad wszystkimi dominuje pierwszyskładnik.

Wykresy wszystkich składników, odpowiadające pierwszej z umiesz-czonych w tabeli 2 kombinacji parametrów, zamieściliśmy na rysunku 1.

208

Page 209: Kryptologia i Cyberbezpieczenstwo nr 6

Test autokorelacyjny dla ciągu binarnego

Tabela 2

Maksymalne wartości bezwzględne uzyskiwane przez poszczególne składniki dlaróżnych kombinacji parametrów n, t i d

n/t/d 10/1/1 1000/1/1 1000/1/32 1000/100/32 106/1/1 106/1/32

max|II| 0,0432 0,0045117 0,0032288 0,0031203 1,4 · 10−4 1,0 · 10−4

max|III| 0,0045 0,0000568 0,0000319 0,0000274 5,7 · 10−8 3,2 · 10−8

max|IV| 0,0057 0,0000054 0,0000022 0,0000023 1,7 · 10−10 7,0 · 10−11

max|V| 0,0135 0,0001475 0,0000756 0,0000706 1,5 · 10−7 7,6 · 10−8

max|VI| 0,0053 0,0000070 0,0000028 0,0000023 2,2 · 10−10 8,9 · 10−11

max|VII| 0,0089 0,0000101 0,0000037 0,0000033 3,2 · 10−10 1,2 · 10−10max|V|max|II| 0,3130 0,0327 0,0234 0,0226 0,0010 0,0007

Rysunek 1. Wykresy wszystkich wyznaczonych składników dla kombinacjiparametrów 10/1/1

W przypadku pierwszego z nich jest to jedynie mały fragment, gdyż do-stosowaliśmy zakres osi rzędnych do pozostałych, dystrybuanta standardo-wego rozkładu normalnego jest zaś powszechnie znana. Na rysunku tym,oprócz licznych maksimów i minimów lokalnych poszczególnych funkcji i ichwzajemnej relacji, zwrócić należy uwagę na jego lewy kraniec, który osobnoprzedstawiliśmy na rysunku 2.

W wielu przypadkach, jak chociażby podczas pojedynczego badania,kiedy weryfikujemy hipotezę odnośnie jednego zadanego ciągu, istotniej-sze od maksymalnych odchyleń w centralnej części stają się tzw. „ogony”rozkładu. Właśnie w tej części kolejne składniki mogą przeważać nad pierw-

209

Page 210: Kryptologia i Cyberbezpieczenstwo nr 6

K. Mańk

Rysunek 2. Fragmenty wykresów wyznaczonych składników dla kombinacjiparametrów 10/1/1

szym i takie zjawisko obserwujemy na rysunku 2. W tym konkretnymprzypadku okazuje się, że otrzymana formuła jest nieprawidłowa, a ści-ślej rzecz biorąc, że dla tak małej długości ciągu, należałoby użyć większejliczby wyrazów rozwinięcia. Prowadzi to do otrzymania funkcji niemono-tonicznej, a dodatkowo przyjmującej wartości ujemne, a taka nie możebyć dystrybuantą. Dobrze widać to na rysunku 3, gdzie zamieściliśmy wy-kres funkcji będącej sumą wszystkich siedmiu wyrazów rozwinięcia. Natym samym rysunku nanieśliśmy również wykres funkcji odpowiadającejkombinacji 100/1/1, dla której dopiero analiza danych liczbowych pozwaladostrzec opisane wyżej nieprawidłowości, są one jednak na tyle małe, żenie wpływają na jakość otrzymywanych wyników.

Analogiczne rozważania można powtórzyć dla prawej części rozkładu,z tą tylko różnicą, że rozpatrywać należy odległość otrzymywanych wartościod 1, nie od 0.

Na drugim biegunie wykorzystania testu znajduje się badanie genera-torów, w którym zakładamy, że dla źródła losowego otrzymywać będziemyciąg prawdopodobieństw wybieranych, poprzez statystykę testową, z roz-kładem równomiernym na przedziale (0, 1). Dla takiego ciągu powszechniestosowany jest następnie klasyczny test Kołmogorowa – Smirnowa [6] lubjeden z testów z rodziny testów Andersona – Darlinga [1].

210

Page 211: Kryptologia i Cyberbezpieczenstwo nr 6

Test autokorelacyjny dla ciągu binarnego

Rysunek 3. Fragment wykresu rozwinięcia do siódmego wyrazu dla kombinacjiparametrów 10/1/1 i 100/1/1

Dla naszych celów najwygodniejsze będzie odwołanie się do testu Koł-mogorowa – Smirnowa, w którym miarą jakości jest maksymalne odchyleniedystrybuanty empirycznej od teoretycznej. Przedstawiona poniżej proce-dura, nie jest zgodna z założeniami testu, więc nie uprawnia do uzyskaniaścisłych wskaźników liczbowych, tym niemniej pozwoli wychwycić intere-sujące nas zależności.

Wykorzystaliśmy trzy warianty dystrybuanty, za podstawę przyjęliśmyrozwinięcie składające się z siedmiu wyrazów oraz wersje zredukowane tylkodo pierwszego (I), dwóch pierwszych wyrazów (I + II), czterech wyrazów(I + II + III + V). Naszym celem była ocena możliwości wykorzystania tychzredukowanych przybliżeń.

Dla każdego z trzech powyższych wariantów wyznaczaliśmy kolejnekwantyle, z krokiem 10−5, a następnie dla nich obliczaliśmy prawdopodo-bieństwo według pełnej formuły. Na rysunkach od 4 do 6 prezentujemyodchylenia pomiędzy otrzymanymi prawdopodobieństwami a wartościamiwyjściowymi, dla których zostały otrzymane, dla n wynoszących 100, 1000i 10 000 oraz t i d równych 1. Na osi poziomej odkładane są kwantyleodpowiadające przypadkowi (I).

Wykresy są bardzo podobne, szczególnie w przypadku przebiegu (I),gdzie, pomijając symetryzowanie się, różnią się jedynie skalą. To samo do-tyczy przebiegów dla pozostałych dwóch wariantów. Zauważyć należy, żegasną one wyraźnie szybciej od pierwszego.

211

Page 212: Kryptologia i Cyberbezpieczenstwo nr 6

K. Mańk

Rysunek 4. Wykres odchyleń dla n = 100

Rysunek 5. Wykres odchyleń dlan = 1000

Rysunek 6. Wykres odchyleń dlan = 10 000

Na rysunku 7 prezentujemy zależność pomiędzy długością ciągu, a ma-ksymalnym odchyleniem dla poszczególnych wariantów. Dodatkowo, abyuwypuklić różne tempa gaśnięcia tych odchyleń, dla poszczególnych wa-riantów, liniami przerywanymi oznaczyliśmy przebieg dla wariantu (I + II)po przemnożeniu przez 20, zaś dla wariantu (I + II + III + V) po przemno-żeniu przez 200. Wykres ten pokazuje, że wariant wykorzystujący jedyniepierwszy wyraz osiąga dokładność uzyskiwaną przez dwa pozostałe dla

212

Page 213: Kryptologia i Cyberbezpieczenstwo nr 6

Test autokorelacyjny dla ciągu binarnego

Rysunek 7. Maksymalne odchylenia notowane dla poszczególnych wariantóww zależności od długości ciągu

n = 100, dopiero dla ciągów o długości ok. 44 000 dla drugiego wariantuoraz przeszło 5 000 000 bloków dla trzeciego. Z kolei drugie przybliżeniedaje błąd większy od 10 do przeszło 100 razy od trzeciego, przy czym górnawartość nie jest granicą, a wynika jedynie z zakresu przeprowadzonych ob-liczeń, co jednak ważniejsze ta ogromna różnica względna przekłada się napomijalne: 4,5 · 10−8 różnicy bezwzględnej. Wydaje się, że nawet w przy-padkach wymagających bardzo dokładnych wyników, już dla ciągów zło-żonych z 1000 bloków można ograniczyć się do formuły wykorzystującejjedynie dwa pierwsze wyrazy.

Podsumowując ten punkt musimy przyznać, że dla bardzo małych n– rzędu dziesiątek, jeśli potrzebujemy precyzyjnych wyników dla ogonówrozkładu, podane przez nas przybliżenie okazuje się niewystarczające. Dlaciągów złożonych z setek wyrazów musimy zaś korzystać z proponowanegosiedmiowyrazowego rozwinięcia, które dalej można ograniczyć do pięciuwyrazów. Jeśli weźmiemy pod uwagę maksymalne różnice pomiędzy war-tościami uzyskiwanymi przy użyciu poszczególnych wariantów, to okazujesię, że nawet dla ciągów do 1000 bloków, wystarczające jest rozwinięcie wy-korzystujące 4 wyrazy, zaś dla dłuższych, można ograniczyć się do dwóchpierwszych wyrazów.

213

Page 214: Kryptologia i Cyberbezpieczenstwo nr 6

K. Mańk

3.2. Zbieżność składników rozwinięcia

Powyżej nie zaprezentowaliśmy formuły określającej dystrybuantę,a jedynie podaliśmy wystarczające do tego momenty centralne. Nigdy teżnie wyznaczyliśmy jej explicite, zawsze posługiwaliśmy się rozbiciem na po-szczególne wyrazy, gdyż w całości byłaby ona zbyt chaotyczna i nie wno-siłaby nic do rozważań. Tu również rozważać będziemy każdy z wyrazówz osobna.

Naszym pierwszym krokiem będzie spojrzenie na to w jaki sposóbzależą współczynniki kolejnych wyrazów od n. W części przypadków po-służyliśmy się uproszczeniem polegającym na prezentowaniu jedynie do-minującego składnika. Wybrane wyniki prezentujemy w tabeli 3. Częśćpodawanych wartości liczbowych jest jedynie dziesiętnymi przybliżeniami.

Tabela 3Dominujący składnik opisujący wpływ parametru n na współczynniki kolejnych

wyrazów

t/d 1/1 1/32 n/4/1 n/4/32

wyraz II − 4(n−1)(5n−2)3/2

−0,256/√n − 2

√2

9√n

−0,231/√n

wyraz III 9(31n−82)(5m−2)2 0,058/n 7

162n 0,0335/n

wyraz IV − 4(2n−1)(5n−2)5/2

0,0583/n√n 28

√2

243n√n

0,0643/n√n

wyraz V 8(n−1)2(5n−2)3 0,0328/n 4

81n 0,0266/n

wyraz VI − (n−1)(31n−82)3(5n−2)7/2

−0,0149/n√n − 7

√2

729n√n

−0,00774/n√n

wyraz VII − 32(n−1)3

3(5n−2)9/2−0,0028/n

√n − 8

√2

2187n√n

−0,00205/n√n

Dla każdego z wyrazów analizujemy cztery kombinacje wartości para-metrów t i d, przyjmujących swoje skrajne wartości. W przypadku t są to1 i n/4, dla d przyjęliśmy 1 i 32. Ostatnia jest wartością czysto arbitralną,ale też oczywistą.

We wszystkich przypadkach współczynniki zbiegają do 0 wraz ze wzro-stem n. Tempo zbiegania jest najsłabsze dla drugiego wyrazu, co doskonalezgadza się z wynikami zaprezentowanymi w tabeli 2.

Wyniki zawarte w tabeli 3 były podstawą do wyboru wariantów, którerozpatrywaliśmy w poprzednim punkcie – decydował wykładnik potęgi ndominującego składnika. Przebiegi na rysunku 7 niemal idealnie odpowia-dają funkcjom proporcjonalnym do 1/

√n, 1/n oraz 1/n

√n, a więc domi-

nującym składnikom odrzuconych wyrazów.

214

Page 215: Kryptologia i Cyberbezpieczenstwo nr 6

Test autokorelacyjny dla ciągu binarnego

Powyższe potwierdza, że poszczególne składniki, wraz ze wzrostemdługości ciągu, kolejno przestają istotnie wpływać na wyznaczaną war-tość, zaś dla bardzo dużych n można ograniczyć się jedynie do pierwszegoskładnika. Dodatkowym zyskiem, w takim przypadku, jest możliwość roz-szerzenia zakresu wartości przesunięcia t do n/2.

3.3. Zgodność

W punkcie 2.2. zaznaczyliśmy, że stosowane przybliżenie rozkłademnormalnym, nawet wykorzystujące dodatkowe składniki, będzie prawdziwedla dużych n. Wynika to z faktu, że elementy sumy nie mają rozkładunormalnego, nawet w przybliżeniu. Konsekwencje tego pokazujemy na po-niższym przykładzie.

Załóżmy, że chcielibyśmy przeprowadzać test dla ciągów od długości31 bitów. Możemy przyjąć następujące wartości parametrów n = 30, t = 1,d = 1, wówczas, według wyprowadzenia z punktu 2.2., dystrybuanta mapostać:

P

(Sdncykl <

(152

+

√372x

))≈ Φ(x) +

(2613,9− 855,8x− 2408,6x2

+ 699,3x3 − 213,7x4 − 82,8x5 + 41,5x6 − 1,8x8)e x22

105

przy czym wszystkie wartości zostały zaokrąglone do jednego miejsca poprzecinku.

W rzeczywistości statystka testowa przyjmuje zaledwie 31 wartościcałkowitych z zakresu 0 . . . 30. Tabela 4 zawiera funkcję prawdopodobień-stwa dla tej dyskretnej zmiennej losowej, w drugiej kolumnie umieściliśmyprawdopodobieństwa uzyskiwane przy użyciu powyższej formuły. Z koleina rysunku 8 zamieszczamy wykres dystrybuanty rzeczywistej i dla po-równania wykres pokazanej powyżej funkcji z zaznaczeniem wartości od-powiadających argumentom całkowitoliczbowym. Zarówno dane w tabeli,jak i wykresy na rysunku pokazują, że powyższa formuła jest złym przy-bliżeniem rzeczywistego rozkładu. Jest praktycznie niemożliwe, aby dobrygenerator przeszedł test wykorzystujący przedstawione „przybliżenie”, gdytestem drugiego poziomu będzie test Kołmogorowa-Smirnowa. Jeśli jednakw tej roli wykorzystamy test zgodności Pearsona, to dopiero dla kilkusetpowtórzeń zaobserwujemy pogarszanie się wyników.

Okazuje się, że na dokładność przybliżenia wpływa nie tylko liczbabloków n, ale też liczba bitów składających się na pojedynczy blok d.

215

Page 216: Kryptologia i Cyberbezpieczenstwo nr 6

K. Mańk

Tabela 4Funkcja prawdopodobieństwa dla przypadku n = 30, t = 1, d = 1

i prawdopodobieństwa uzyskane na podstawie przybliżenia rozkładem normalnym

Sdncykl = i pi P (i− 1 ≤ Sdncykl < i)|pi−P (i−1≤Sdncykl<i)|

pi· 100%

0 0,00164 0,00021 87,5

1 0,00857 0,00491 42,7

2 0,02432 0,01596 34,4

3 0,04928 0,03604 26,9

4 0,07927 0,06381 19,5

5 0,10706 0,09352 12,6

6 0,12557 0,11737 6,5

7 0,13080 0,12941 1,1

8 0,12292 0,12787 4,0

9 0,10541 0,11482 8,9

10 0,08321 0,09452 13,6

11 0,06085 0,07179 18,0

12 0,04143 0,05067 22,3

13 0,02636 0,03349 27,0

14 0,01572 0,02082 32,4

15 0,00881 0,01214 37,8

16 0,00464 0,00658 41,9

17 0,00230 0,00331 43,6

18 0,00108 0,00155 44,0

19 0,00047 0,00070 47,4

≥ 20 0,00031 0,00053 70,9

Rozważmy przypadek n = 2, t = 1, d = 10, a więc odpowiadającyciągowi niemal tej samej długości, jak powyżej. Jak widać na rysunku 9,w znacznej części wykres dystrybuanty pokrywa się niemal dokładnie z wy-kresem funkcji wynikającej z przybliżenia. Jedynie dla początkowego frag-mentu, odpowiadającego około 20% przypadków, różnica jest znacząca,podczas gdy dla takiego n moglibyśmy spodziewać się wszystkiego pozazgodnością.

Jeśli zwiększymy długość ciągu do, w dalszym ciągu bardzo małej war-tości, 310 bitów i przyjmiemy n = 30, t = 1, d = 10, to okaże się, że dopierodla ponad 180 powtórzeń testu, w teście Kołmogorowa-Smirnowa otrzy-mamy systematyczny błąd na poziomie 5%, dla 410 powtórzeń – 10%. Wy-niki te otrzymaliśmy na podstawie przeprowadzenia 109 powtórzeń testudla ciągów pochodzących z rejestru LFSR maksymalnego okresu o długo-

216

Page 217: Kryptologia i Cyberbezpieczenstwo nr 6

Test autokorelacyjny dla ciągu binarnego

Rysunek 8. Dystrybuanta dla przypadku n = 30, t = 1, d = 1 oraz funkcja uzyskana napodstawie przybliżenia rozkładem normalnym

Rysunek 9. Dystrybuanta dla przypadku n = 2, t = 1, d = 10 oraz funkcja uzyskana napodstawie przybliżenia rozkładem normalnym

ści 128 bitów oraz algorytmu TRIVIUM. Zastosowaliśmy te dwa źródła zewzględu na oferowaną przez nie szybkość generacji, jak również dobre wła-sności statystyczne – udowodnione w przypadku LFSRa [4] i powszechnieprzebadane w drugim przypadku. Źródła te wykorzystywane były równieżw dalszej części, we wszystkich przypadkach dawały one zgodne wyniki, in-nymi słowy przy użyciu omówionych tu testów atak odróżniający zakończyłsię niepowodzeniem, co potwierdza zasadność dokonanego doboru.

217

Page 218: Kryptologia i Cyberbezpieczenstwo nr 6

K. Mańk

Ostatecznie postawiliśmy sobie pytanie, jaka powinna być długość ba-danego ciągu, aby otrzymywane wyniki uznać za wiarygodne. Wybraliśmydwa warianty użycia testu, w pierwszym wykonywana jest niewielka liczbapowtórzeń – u nas 10, w drugim bardzo duża – 10 000, następnie rozkładuzyskanych prawdopodobieństw przyrównywany jest do rozkładu równo-miernego na przedziale [0, 1] przy użyciu statystyk K+ i K− Kołmogorowa– Smirnowa, pełniących rolę testu drugiego poziomu. Dla danej kombinacjid i n powyższa procedura powtarzana była, dla każdego ze źródeł, 10 000razy, w celu oszacowania częstości, z jaką w teście drugiego poziomu otrzy-mywane są prawdopodobieństwa nie większe od: 1%, 5%, 10% i 50%.

Na rysunkach 10 i 11 przedstawiliśmy wykresy częstości uzyskanychdla poszczególnych progów, dla jednobitowego bloku, w zależności od dłu-

Rysunek 10. Częstości, z jakimi w teście drugiego poziomu otrzymywano prawdopodo-bieństwa nie większe od 1, 5, 10 i 50% dla t = 1 i d = 1, w zależności od długości ciągu,

przy liczbie powtórzeń 10

gości badanego ciągu. Rysunek 10 przedstawia obraz dla liczby powtórzeń10, zaś rysunek 11 dla 10 000. Linie przerywane ograniczają pasy odpowia-dające 99% obszarowi centralnemu w schemacie Bernoulliego, dla każdegoz przypadków. Obie osie mają skalę logarytmiczną.

Jak widać, począwszy od n = 250 (pionowa czerwona linia), możemyjuż mówić o niewielkich odchyleniach, zaś od 1000 o dobrej zgodności, a tymsamym jakości, uzyskiwanych wyników.

218

Page 219: Kryptologia i Cyberbezpieczenstwo nr 6

Test autokorelacyjny dla ciągu binarnego

Po znormalizowaniu przebiegi dla wszystkich czterech przypadków wy-kazują bardzo dużą zgodność.

Inny obraz uzyskujemy, gdy liczba powtórzeń testu wynosi 10 000.Otrzymane przez nas przebiegi prezentujemy na rysunku 11.

Rysunek 11. Częstości, z jakimi w teście drugiego poziomu otrzymywano prawdopodo-bieństwa nie większe od 1, 5, 10 i 50% dla t = 1 i d = 1, w zależności od długości ciągu,

przy liczbie powtórzeń 10000

Na podstawie powyższego wykresu przyznać należy, że dla jednobi-towego bloku przedstawione przez nas przybliżenie dystrybuanty zaczynabyć akceptowalne dopiero dla ciągów o długości miliona bitów. Dla krót-kich ciągów, przy dużej liczbie powtórzeń, test drugiego poziomu wskaże naistotne odchylenie od losowości – np. dla ciągu o długości 1000 bitów mamyok. 50% prawdopodobieństwo otrzymania wyniku poniżej 0,01, nawet, jeślibadany jest „dobry” generator.

Dla większych wartości d otrzymywane przebiegi są bardzo po-dobne, przy czym zmienia się skala osi odciętych. W tabeli 5 przed-stawiliśmy minimalne długości ciągu, dla których uznaliśmy, że testKołmogorowa-Smirnowa nie wykrywa błędu wyznaczenia rozkładu staty-styki testowej.

W trakcie obliczeń przyjęliśmy, że minimalną wartością n jest 5, stądteż wynikają wartości otrzymane dla 10 powtórzeń. Dla d ≥ 5 wystarcza-jące są długości ciągów pozwalające uzyskać kilka bloków.

219

Page 220: Kryptologia i Cyberbezpieczenstwo nr 6

K. Mańk

Tabela 5Minimalne długości ciągu wymagane do uzyskiwaniapoprawnych wyników w teście drugiego poziomu

d 10 powtórzeń testu 10 000 powtórzeń testu

1 250 1 000 000

2 20 150 000

5 30 100

10 60 200

20 120 440

30 180 570

W przypadku 10 000 powtórzeń widać, że bloki 1 i 2 bitowe spra-wiają poważne problemy, które wynikają z dyskretnego charakteru oblicza-nej statystyki – w przeciwieństwie do przyjętego przez nas ciągłego przy-bliżenia. Test Kołmogorowa-Smirnowa wykrywa dla małych n całkowicieprawidłowe „schodki”, takie jak te, które widać na rysunku 8. Dopiero nadużych n lub d stają się one na tyle drobne i gęste, by wystarczająco mogłybyć przybliżone linią ciągłą. Jak duże znaczenie ma w tym przypadku dmożna sobie uzmysłowić porównując liczbę wartości przyjmowanych przezstatystykę testową dla różnych kombinacji d i n. Na przykład dla d = 5i n = 19, co oznacza ciąg o długości 100 bitów, statystyka testowa przyj-muje wartości z zakresu od 0 do 18 259 (przy czym nie wszystkie wartościpośrednie są możliwe). Dla d = 1 uzyskanie takiej rozpiętości wymaga ciąguprawie 183 razy dłuższego. Z kolei dla d = 30 już dwa bloki dadzą zakres6 · 1013 razy większy, w tym jednak przypadku n = 1 jest stanowczo zbytmałe, by zaczęło działać centralne twierdzenie graniczne.

Podsumowując ośmielamy się stwierdzić, że zaproponowane przybli-żenie jest satysfakcjonująco dobre nawet dla małych d i bardzo dobre dlawiększych. Co więcej, wymagana dla przypadku d = 1, przy bardzo dużejliczbie powtórzeń, długość ciąguwynosząca milion bitów nie jest przesadnieduża – jest ona używana chociażby w pakiecie Statistical Test Suite [8], zaśw pakiecie DIEHARD [7] jest wielokrotnie większa.

4. Czy potrzebujemy tego testu

W rozdziale tym pokażemy dwa powody, które sprawiają, że propono-wany test można traktować jako coś więcej aniżeli tylko kolejną wariacjęna temat autokorelacji ciągu.

220

Page 221: Kryptologia i Cyberbezpieczenstwo nr 6

Test autokorelacyjny dla ciągu binarnego

4.1. Jest test z niecyklicznym przesunięciem

Zgodnie z tytułem tego punktu, nie ukrywamy, że test dla ciągu licz-bowego, przedstawiony w punkcie 1.2., był punktem wyjścia do naszychrozważań, a bezpośrednim impulsem do ich przeprowadzenia było spostrze-żenie przedstawione poniżej.

Rozważmy przykład, w którym przeprowadzamy test dla ciągu o dłu-gości 3000 bitów, który dzielony jest na bloki 30 bitowe, przesunięcie wynosi1 blok.

Statystyka testu z punktu 1.2. ma wówczas rozkład

N

(0,

√13

144 · 99− 1

24 · 992

),

zaś w zaproponowanym przez nas teście dostajemy:

P (Sdncykl < (E+σx)) ≈ Φ(x) +(10275− 1275,9x− 10170x2 + 1081,5x3

− 123,1x4 − 131,23x5 + 25,495x6 − 1,122x8)e− x22

106,

gdzie

E =(230 − 1)2 · 99

4i σ =

(230 + 1)(230 − 1)2(1281 · 230 − 1083)144

.

W obu przypadkach dostajemy niemal równoważne formuły, różniące sięjedynie brakiem standaryzacji wartości przypisywanych blokom oraz nie-wielką poprawką wnoszoną przez kolejne składniki rozwinięcia.

Poszukiwać będziemy takich minimalnych wartości pojedynczegobloku, które prowadzą do przyjęcia przez statystykę testową wartościrównych kwantylom rzędów: 0,99, 0,5, 0,01 oraz 10−6. Kwantyle te to:1,9805 ·264, 1,5469 ·264, 1,1132 ·264 oraz 1,3216 ·263. Zakładając, że wszyst-kie bloki mają tę samą wartość, to jest nią odpowiednio:

1,1315 · 229, 229, 1,6966 · 228 oraz 1,3072 · 228.

Wszystkie one są większe od 228, co oznacza, że ich reprezentacja binarnajest liczbą co najmniej 29 bitową. Oznacza to też, że jeśli w każdym blokudwa najbardziej znaczące bity będą równe 0, to wartość pozostałych niebędzie miała praktycznie żadnego znaczenia – nie uzyskamy prawdopo-dobieństwa większego do 10−6. Te dwa bity, na każde 30 mają większeznaczenie, aniżeli pozostałych 28.

221

Page 222: Kryptologia i Cyberbezpieczenstwo nr 6

K. Mańk

Aby uzyskać ścisłą miarę istotności poszczególnych bitów, wyznaczy-liśmy wartość oczekiwaną wartości bezwzględnej zmiany prawdopodobień-stwa uzyskiwanego w teście, na skutek zmiany wartości bitu znajdującegosię na wybranej pozycji. Użycie wartości bezwzględnej wynika z faktu,że obserwowane zmiany mają, dla małych różnic, symetryczny charakter,a więc brane wprost kompensowałyby się do zera.

Do wyznaczania interesującej nas miary posłużyliśmy się formułą:

∇1=

1∫0

f(F−1(p))22d+1

2d−1∑a=0

2d−1∑b=0

(F (F−1(p)+(a+b)2i)−F (F−1(p)−(a+b)2i))dp,

gdzie F (·) jest dystrybuantą rozkładu statystyki testowej, a f(·) jego gę-stością, zaś i = 0, 1, . . . , d−1 jest pozycją bitu, którego istotność rozpatru-jemy. W przedstawionych tu rozważaniach ograniczamy się jedynie do bi-tów z „wewnętrznych” bloków, tzn. takich, które pojawiają się dwukrotniew sumie będącej statystyką testową. W przypadku bitów z „zewnętrznych”bloków wystarczy wszystkie prezentowane wyniki podzielić przez 2.

Powyższe całkowanie wykonaliśmy numerycznie, posiłkując się kwan-tylami rozkładu normalnego, a dla d > 15 wartości sumy (a + b) przeglą-daliśmy z krokiem 256 (przeprowadziwszy uprzednio sprawdzenie, że niepowoduje to istotnej zmiany uzyskiwanych wyników). W tabeli 6 zebra-liśmy wyniki uzyskane dla wybranych długości bloku, założyliśmy stałądługość ciągu, wynoszącą 600 bitów i przesunięcie równe 1 blok.

Dane zawarte w tabeli 6 pokazują, jak ogromne są dysproporcjewpływu bitów znajdujących się na poszczególnych pozycjach w bloku. Dlaustalonej długości bloku d, wpływ każdego kolejnego, mniej znaczącego,bitu jest dwukrotnie mniejszy od poprzedniego. Iloraz ten jest stały i nie-zależny od d. Prowadzi to do prostej konkluzji, że najbardziej znaczącebity poszczególnych bloków wpływają na wartość otrzymywanego w teścieprawdopodobieństwa w równym (a ściśle biorąc nieco większym) stopniu,co wszystkie pozostałe razem wzięte.

Rozważania z początku tego punktu możemy uzupełnić o stwierdzenie,że nie tylko w skrajnych przypadkach dwa najbardziej znaczące bity, w 30bitowych blokach, decydują o wartości uzyskanego prawdopodobieństwa,ale też średnio biorąc ich wpływ przewyższa trzykrotnie wpływ wszystkichpozostałych.

Drugą obserwacją jest narastający wpływ najbardziej znaczącego bitu,towarzyszący wzrostowi długości bloku. Na rysunku 12 przedstawiliśmywykresy zależności przeciętnego wpływu najbardziej znaczącego bitu blokuna wartość prawdopodobieństwa w funkcji długości bloku.

222

Page 223: Kryptologia i Cyberbezpieczenstwo nr 6

Test autokorelacyjny dla ciągu binarnego

Tabela 6Średni wpływ poszczególnych bitów w bloku na wartość prawdopodobieństwa w teście

d = 2

i n = 299

0 0,0188056

1 0,0375535

d = 5

i n = 119

0 0,0052052

1 0,0104101

2 0,0208171

3 0,0416104

4 0,0830301

d = 10

i n = 59

0 0,0002394

1 0,0004787

2 0,0009575

3 0,0019149

4 0,0038299

5 0,0076596

6 0,0153181

7 0,0306278

8 0,0611880

9 0,1218381

d = 20

i n = 29

0 0,00000033

1 0,00000067

2 0,00000134

3 0,00000268

4 0,00000536

5 0,00001072

6 0,00002144

7 0,00004288

8 0,00008576

9 0,00017151

10 0,00034303

11 0,00068606

12 0,00137212

13 0,00274423

14 0,00548841

15 0,01097643

16 0,02194976

17 0,04387475

18 0,08755192

19 0,17354410

d = 30

i n = 19

0 0,0000000004

1 0,0000000008

2 0,0000000016

3 0.0000000032

4 0,0000000065

5 0,0000000130

6 0,0000000260

7 0,0000000519

8 0,0000001039

9 0,0000002078

10 0,0000004155

11 0,0000008311

12 0,0000016621

13 0,0000033243

14 0,0000066486

15 0,0000132971

16 0,0000265942

17 0,0000531885

18 0,0001063770

19 0,0002127539

20 0,0004255078

21 0,0008510154

22 0,0017020290

23 0,0034040470

24 0,0068080010

25 0,0136152700

26 0,0272246400

27 0,0544021700

28 0,1084294000

29 0,2139194000

Niebieski kolor odpowiada sytuacji przedstawionej w tabeli 6. Wartozauważyć, że począwszy od d = 8, obserwowany przyrost, można traktowaćjako liniowy – aproksymacja liniowa ma dla tego fragmentu współczynnik

223

Page 224: Kryptologia i Cyberbezpieczenstwo nr 6

K. Mańk

dopasowania R2 = 0,9931, a więc bardzo wysoki. Z kolei dla przypadku,gdy stała jest liczba bloków, począwszy od d = 10, wartość wpływu po-zostaje praktycznie stała – łączny przyrost nie przekracza 0,2%. Wynikaz tego, że dla większych długości bloku, przy stałej długości ciągu, za wzrostznaczenia najbardziej znaczącego bitu, odpowiada malejąca liczba bloków,jakie z takiego ciągu można wyodrębnić.

Rysunek 12. Zależności przeciętnego wpływu najbardziej znaczącego bitu bloku nawartość prawdopodobieństwa w funkcji długości bloku

Na podstawie obserwacji poczynionych w tym punkcie rekomendu-jemy, by zaproponowany test stosować dla podziału na bloki nie dłuższeniż 8 do 10 bitów. Jednocześnie przestrzegamy przed wykorzystaniem testuomówionego w punkcie 1.2. z użyciem tak krótkich bloków.

Dla obu tych testów, w przypadkach gdy konieczne byłoby przyjęciedużych wartości d, obroną przed nieuwzględnianiem mniej znaczących bi-tów jest trik, znany z pakietu DIEHARD, polegający na serii podziałówprzesuniętych względem siebie o pojedyncze pozycje bitowe. Trzeba jednakpamiętać, że prowadzi to do uzyskiwania serii skorelowanych statystyk, comoże znacząco utrudnić interpretację otrzymywanych wyników.

4.2. Jest test dla ciągu bitów

Drugim spostrzeżeniem jest bliskość testu dla ciągu bitów i propono-wanego testu przy jednobitowym bloku. Różnica między nimi sprowadza się

224

Page 225: Kryptologia i Cyberbezpieczenstwo nr 6

Test autokorelacyjny dla ciągu binarnego

do zmiany operacji bitowej alternatywy wykluczającej (popularnie XOR)na iloczyn. Okazuje się ona jednak ważna i prowadzi do uzyskania dwóchistotnie różnych testów.

Przeprowadzone przez nas eksperymenty wskazują, że uzyskiwane dlaobu testów, dla tego samego ciągu, prawdopodobieństwa wykazują dodat-nią korelację na poziomie kilkunastu procent, a więc bardzo niskim. Cowięcej punkty, których współrzędne odpowiadają obu testom, dość równo-miernie pokrywają kwadrat jednostkowy.

Powyższe sprawia, że wyniki testu omówionego w punkcie 2.1. możnatraktować jako praktycznie niezależne od uzyskiwanych w teście propono-wanym, w związku z czym wskazane i całkowicie poprawne jest wykorzy-stanie ich obok siebie.

Podsumowanie

Zaprezentowany w niniejszej pracy wariant testu autokorelacyjnegomoże, w badaniu ciągów binarnych, z powodzeniem zastąpić obydwa te-sty zaprojektowane dla ciągu liczbowego. Jednocześnie, dzięki stosowaniukrótkich bloków, możliwe jest usunięcie marginalizacji wpływu znaczącejczęści bitów, pojawiającej się podczas stosowania długich bloków.

Przeprowadzone eksperymenty pokazały, że dokładność zaproponowa-nego przybliżenia rozkładu statystyki testowej jest bardzo dobra już dlabloków 5 bitowych, przy wszystkich długościach badanego ciągu, zaś nawetdla podziału jednobitowego wymaga ciągów o niewygórowanej długości.

Na koniec chcemy dodać, że wszystkie te zalety osiągamy kosztemniewielkiej komplikacji procedury obliczającej dystrybuantę rozkładu sta-tystyki testowej – wyznaczenie kilku współczynników zależnych od para-metrów testu, wartości wielomianu 8 stopnia w punkcie oraz funkcji eks-ponent.

Literatura

[1] T.W. Anderson, D.A. Darling, Asymptotic Theory of Certain Go-odness of Fit Criteria Based on Stochastic Processes, Annals of Ma-thematical Statistics, 23, 2, 1952

[2] P. LEcuyer, R. Simard, TestU01: A Software Library in ANSI Cfor Empirical Testing of Random Number Generators, Universite deMontreal, 2007

[3] B. Gniedenko B., A.N. Kołmogorow, Rozkłady graniczne sumzmiennych losowych niezależnych, PWN, Warszawa, 1957

225

Page 226: Kryptologia i Cyberbezpieczenstwo nr 6

K. Mańk

[4] S.W. Golomb, Shift Register Sequences, San Francisco, Holden-Day,1967

[5] D.E. Knuth, Sztuka programowania, t.2. Algorytmy seminume-ryczne, WNT, 2002

[6] K. Mańk, Dokładne dystrybuanty statystyk w testach momentów 1 i 2rzędu, Biuletyn WAT, KryptologiaIV, Warszawa, 2004

[7] G. Marsaglia, DIEHARD Battery of Tests of Randomness, 1995[8] A. Rukhin i inni, A Statistical Test Suite for Random and Pseu-dorandom Number Generators for Cryptographic Applications, NISTSpecial Publication 800–22, 2010

[9] R. Wieczorkowski, R. Zieliński, Komputerowe generatory liczblosowych, WNT, Warszawa, 1997

AUTOCORRELATION TEST FOR BINARY STREAM

Abstract. In paper we present a variant of autocorrelation test designed for binarystreams divided into blocks. An approximation of tests statistic distribution as well asanalysis of its quality is also given. Finally consequences of usage of long blocks areshown.

Keywords: statistical test, randomness test, autocorrelation test

Page 227: Kryptologia i Cyberbezpieczenstwo nr 6

NIEKOWALNE EKSTRAKTORY LOSOWOŚCI

Konrad Durnoga

Instytut Matematyki; Wydział Matematyki, Informatyki i MechanikiUniwersytetu Warszawskiego

Streszczenie. Ekstraktory losowości należą do jednego z głównych nurtów badań współ-czesnej kryptografii teoretycznej. Zadaniem tych deterministycznych funkcji jest prze-kształcenie źródeł słabej losowości w takie, których rozkład jest bliski rozkładowi jedno-stajnemu. W pracy przedstawiona jest teorioliczbowa konstrukcja ekstraktora o pewnychszczególnych własnościach – ekstraktora niekowalnego. Wynik ten stanowi udoskonale-nie warunkowego rezultatu Y. Dodisa i in. opublikowanego na prestiżowej konferencjiFOCS’11.Słowa kluczowe: ekstraktor losowości, ekstraktor niekowalny, logarytm dyskretny

1. Ekstraktory losowości

We współczesnej informatyce ważne miejsce zajmują algorytmy ran-domizowane. W wymiarze praktycznym istotną kwestią staje się zapew-nienie tym algorytmom źródła losowych bitów „wysokiej jakości”. Jest tokluczowy problem zwłaszcza w przypadku zastosowań kryptograficznych,gdzie na założeniu jednostajnej losowości różnych elementów kryptosys-temu może opierać się jego bezpieczeństwo. Fizyczne źródła losowości, po-wszechnie dostępne w komputerach osobistych, mogą nie zapewniać wy-starczających statystycznych własności generowanego strumienia bitów. Tupojawia się potrzeba konstrukcji ekstraktorów losowości – deterministycz-nych funkcji przekształcających niedoskonałe źródła losowości na takie,które są w statystycznym sensie bliskie rozkładom jednostajnym.

Rozwój dziedziny związanej z poprawianiem statystycznych własno-ści rozkładów dyskretnych dokonał się w zasadzie w całości na przestrzeniostatniego ćwierćwiecza, choć jej początki sięgają lat 50-tych ubiegłego stu-lecia i pionierskich prac von Neumanna o symulowaniu rzutów symetrycznąmonetą przy użyciu monety, na której orzeł wypada ze stałym prawdopo-dobieństwem = 1/2. Od tego czasu problematyka ta była przedmiotembadań czołowych naukowców, czego owocem są liczne prace na temat eks-traktorów losowości. Sam termin ekstraktor został zaproponowany przezNisana i Zuckermana [23]. Za fundamentalne uznaje się prace Chora i Gol-dreicha [7], Cohena i Widgersona [8] oraz Zuckermana [27]. Jedne z naj-wcześniejszych konstrukcji ekstraktorów pochodzą od Chora i Goldreicha[7] oraz Impagliazzo i in. [19]. Przełomowym osiągnięciem ostatniej de-kady był wynik Bourgain [4], laureata medalu Fieldsa, wskazujący istnienie

Page 228: Kryptologia i Cyberbezpieczenstwo nr 6

K. Durnoga

ekstraktorów nawet dla źródeł losowości o niskim współczynniku entropii.Rozprawa w znaczącej części zajmuje się analizą aspektów obliczeniowychklasycznego już dziś przykładu ekstraktora Chora-Goldreicha.

Ekstraktor losowości formalnie definiuje się w terminach entropii orazstatystycznej odległości rozkładów prawdopodobieństwa. Wielkością mie-rzącą stopień losowości dyskretnej zmiennej losowej X jest, znana z teoriiinformacji, tzw. min-entropia H∞(X), którą określamy jako:

H∞(X) := minx

log21

Pr(X = x),

gdzie x przebiega przez wszystkie elementy zbioru nośnika zmiennejX. Spośród wszystkich rozkładów prawdopodobieństwa na n bitachmin-entropia przyjmuje wartość maksymalną dla rozkładu jednostajnego –H∞(U0,1n) = n. Do określenia odległości dwóch zmiennych losowych Xi X ′ o rozkładzie na zbiorze X używamy standardowej definicji dystansustatystycznego ∆(X,X ′):

∆(X,X ′) := maxS⊆X | Pr(X ∈ S)− Pr(X ′ ∈ S) |

=12

∑x∈X

| Pr(X = x)− Pr(X ′ = x) |

. Zapis X ≈ϵ X ′ oznacza ∆(X,X ′) ≤ ϵ dla pewnego ϵ ≥ 0. Przy tym ty-powo wymaga się, by ϵ był zaniedbywalny jako funkcja pewnego parametrun, tzn. ϵ = ϵ(n) powinien dążyć do 0 szybciej niż odwrotność dowolnegowielomianu w punkcie n→∞.

Funkcję Ext:X ×Y → Z nazywamy (k, ϵ)–niekowalnym ekstraktorem,jeśli dla każdej pary niezależnych zmiennych losowych X i Y nad zbiorami,odpowiednio, X oraz Y, i dowolnej funkcji A:Y → Y spełniającej A(y) = ydla wszystkich y ∈ Y, zachodzi:(

Ext(X,Y ),Ext(X,A(Y )), Y)≈ϵ(UZ ,Ext(X,A(Y )), Y

), (1)

o ile H∞(X) ≥ k oraz Y jest rozkładem jednostajnym nad Y.Intuicyjnie, powyższa definicja oznacza, że jeśli argument x wybrany

został z dostatecznie losowego rozkładu to żaden, w tym nawet nieograni-czony obliczeniowo, adwersarz nie potrafi odróżnić Ext(x, y) od wartościlosowej przy znanym losowym ziarnie y oraz Ext

(x,A(y)

), gdzie A jest do-

wolnie ustaloną (a priori) przez adwersarza funkcją nie posiadającą punk-tów stałych. Jest to również znaczące wzmocnienie klasycznej definicji eks-traktora, w której warunek (1) można zastąpić przez Ext(X,Y ) ≈ϵ UZ , orazsilnego ekstraktora, gdzie przyjmuje on postać:

(Ext(X,Y ), Y

)≈ϵ(UZ , Y

).

228

Page 229: Kryptologia i Cyberbezpieczenstwo nr 6

Niekowalne ekstraktory losowości

Pojęcie ekstraktora niekowalnego wprowadzone zostało przez Dodisai Wichsa [13], którzy wskazali, że hipotetyczna funkcja o takich własno-ściach może posłużyć do budowy protokołu tzw. wzmacniania prywatności(ang. privacy amplification). Ten drugi termin zaproponowany został wcze-śniej w pracy Bennetta, Brassarda i Roberta [3]. Postawili oni następującyproblem: dwóch użytkowników posiada te same dane, które nie są ideal-nie losowe z punktu widzenia adwersarza; czy istnieje protokół komunika-cji między tymi użytkownikami, który umożliwi wzmocnienie prywatnościtych danych tak, by po jego wykonaniu nowe dane był nieodróżnialne odlosowych? Przy tym przyjmuje się założenie, że kanał komunikacyjny po-zostaje niezabezpieczony i adwersarz ma dostęp do przesyłanych informa-cji oraz, dodatkowom posiada nieograniczoną moc obliczeniową. Mając dodyspozycji silny ekstraktor losowości można skonstruować nieskompliko-wany, jednorundowy (tzn. wymagający wysłania tylko jednej wiadomości)protokół realizujący to wymaganie, w sytuacji gdy adwersarz pozostajepasywny, czyli może poznać treść przesyłanych komunikatów, ale nie możew nie ingerować. Zadanie zaprojektowania bezpiecznego protokołu w przy-padku istnienia aktywnego adwersarza, który może dowolnie modyfikowaćwiadomości, staje się dużo trudniejsze. W literaturze znanych było kilkarozwiązań (np. Maurera i Wolfa [22] czy Dodisa i Wichsa [12]), które jed-nak wymagają dodatkowych założeń co do poziomu entropii wejściowychdanych (czyli wiedzy a priori adwersarza o danych) lub są nieoptymalnez punktu widzenia liczby rund protokołu bądź współczynnika utraty en-tropii między wyjściowymi a wyjściowymi danymi. Wiadomo również, żedla danych o niskiej entropii jednorundowy protokół wzmacniania prywat-ności przy aktywnym adwersarzu nie może istnieć. Dodis i Wichs [13] jakopierwsi podali optymalny dwurundowy protokół dla tej wersji problemu.Jednocześnie przedstawili oni argument probabilistyczny dowodzący istnie-nia ekstraktorów niekowalnych dla szerokiego zakresu parametrów k oraz ϵ.Jednak problemem otwartym pozostawała kwestia podania jawnego przy-kładu konstrukcji tego typu.

2. Ekstraktor Chora-Goldreicha

W literaturze poświęconej teorii ekstraktorów odnaleźć można bogac-two rozmaitych metod – technik analizy fourierowskiej, teorii kodów, kom-binatoryki czy teorii liczb. Głębokie rezultaty z tej ostatniej pozwoliły m.in.na uzyskanie przez Bourgaina [4] wspomnianego wyżej ekstraktora dla źró-deł o niskiej min-entropii. Teorioliczbowy charakter ma również konstruk-cja Chora i Goldreicha [7], oparta na logarytmie dyskretnym, którą krótkoprzytoczymy poniżej.

229

Page 230: Kryptologia i Cyberbezpieczenstwo nr 6

K. Durnoga

Niech p będzie nieparzystą liczbą pierwszą, a g generatorem cyklicz-nej grupy multiplikatywnej (Z/pZ)∗ ciała (Z/pZ). Ponadto, niech M > 1oznacza dowolnie ustalony dzielnik rzędu tej grupy, czyli p − 1. Podstawąekstraktora Chora-Goldreicha jest następująca funkcja

fg(a) := logg a modM, (2)

wyznaczona przez logarytm dyskretny przy podstawie g w (Z/pZ)∗, dodat-kowo zredukowany modulo M .

Dodis i in. [10] wykazali, używając oszacowań Weila dla sum cha-rakterów multiplikatywnych nad ciałem skończonym (zob. np. monografięSchmidta [25]), że fg zadaje ekstraktor niekowalny.

Twierdzenie 1. (Dodis i in. [10], twierdzenie 4.1) Niech Ext:Z/pZ ×Z/pZ→ Z/MZ będzie określona wzorem

Ext(x, y) := fg(x+ y) = logg (x+ y) modM . (3)

Wtedy, dla dowolnego k, funkcja Ext jest (k, ϵ)–niekowalnym ekstraktoremprzy ϵ = 2Mp1/42−k/2.

Twierdzenie to stanowiło rozszerzenie rezultatu z oryginalnej pracyChora i Goldreicha [7]. Zawarta tam analiza w istocie implikowała, że (3)jest ekstraktorem losowości, choć w momencie ukazania się tego artykułupojęcie ekstraktora nie było jeszcze znane w literaturze. Dodis i Oliveira[11] wskazali, że ta funkcja spełnia warunki definicji silnego ekstraktora.

Praca Durnogi i Źrałka [15] poświęcona jest zagadnieniu efektywnegoobliczania wartości ekstraktora (3) lub, równoważnie, funkcji fg danej wzo-rem (2). Należy tu zwrócić uwagę, że, inaczej niż ma to miejsce w ty-powych zastosowaniach kryptograficznych opierających swoje bezpieczeń-stwo na założeniu wysokiej złożoności obliczeniowej problemu logarytmudyskretnego, w tym przypadku wymagamy, by problem ten był „łatwo”rozwiązywalny. Użycie standardowej metody do wyznaczania logarytmudyskretnego, czyli algorytmu Pohliga-Hellmana [24], z niewielką modyfika-cją polegającą na obliczaniu logg z modulo każdy dzielnik pierwszy q |M ,pozwala na znalezienie wartości funkcji fg(z) w czasie proporcjonalnym doP+(M) – największego dzielnika pierwszego M . Jest to czas wielomianowywyłącznie pod warunkiem, że M jest liczbą gładką, tzn. ma jedynie małedzielniki pierwsze. W tym kontekście kluczowego znaczenia nabiera kwestiawydajnego generowania liczb p oraz M | p−1 z dodatkowym wymaganiemgładkości M .

Dodis i in. [10] sugerują następującą procedurę znajdowania p orazM . Najpierw ustalmy liczbę gładką M , np. wybierając odpowiednio dużą

230

Page 231: Kryptologia i Cyberbezpieczenstwo nr 6

Niekowalne ekstraktory losowości

potęgę 2, dla której log2M odpowiada w przybliżeniu oczekiwanej liczbiebitów wyjścia ekstraktora. Następnie przeglądamy kolejne wyrazy postępuarytmetycznego ≡ 1 (mod M), tzn. M + 1, 2M + 1, 3M + 1, etc., w po-szukiwaniu liczby pierwszej p. Sprawdzenie czy dana liczba jest pierwszamoże być zrealizowane za pomocą wielomianowego deterministycznego te-stu pierwszości [20]. Cała procedura jest również efektywna o ile najmniej-sze p w tym postępie nie jest zbyt duże. W przypadku ekstraktorów o tzw.krótkich wyjściach, czyli dla niewielkich, na przykład stałych, wartości Mistnienie takiego p wynika z oszacowań dla stałej Linnika. Najlepsze znaneobecnie ograniczenie bezwarunkowe otrzymane przez Xylourisa [26] zapew-nia znalezienie p = O(M5). Natomiast w przypadku ogólnym, dla dużychM , konieczne jest odwołanie się do następującej, powszechnie uważanej zaprawdziwą (zob. artykuł Granville’a i Pomerance’a [17]), hipotezy.

Hipoteza 2. Dla dowolnych a oraz M takich, że NWD(a,M) = 1, naj-mniejsza liczba pierwsza p ≡ amodM spełnia p = O(φ(M) ln2M), gdzieφ oznacza funkcję Eulera.

Konstrukcja Dodisa i in. [10] jest tym samym wynikiem warunkowym.Przytoczona wyżej procedura zawiera jednak, jak zostało to zauważoneprzez Durnogę i Źrałka [15], pewną usterkę. Mianowicie nie gwarantuje onazachowania odpowiednich proporcji między liczbamiM i p. W szczególnościdla wartości M bliskich p z twierdzenia 1 otrzymujemy błąd ϵ, który niejest zaniedbywalny, przez co samo twierdzenie traci zupełnie siłę wyrazu.Prosta modyfikacja metody generowania M i p pozwala na uniknięcie tegoproblemu, jednak za cenę wprowadzenia zależności od hipotezy 2 równieżw przypadku ekstraktorów o krótkich wyjściach.

Ostatnim parametrem ekstraktora (3), którego wybór wymaga osob-nego komentarza jest podstawa logarytmu dyskretnego g. Autorzy ory-ginalnej pracy [10] nie specyfikują jednak żadnego sposobu konstrukcjitakiego g. Istnienie tej luki (również zidentyfikowanej w pracy Durnogii Źrałka [15]) zostało potwierdzone przez autorów (komunikacja prywatna).W istocie kwestia efektywnego znajdowania generatora grupy multiplika-tywnej ciała (Z/pZ) w ogólnym przypadku pozostaje ważnym problememotwartym. Naturalnie istnieje szybki, niedeterministyczny algorytm wyzna-czający pewien generator, ale jedynie przy znanej pełnej faktoryzacji liczbyp−1 niezbędnej do weryfikacji czy dany losowy element jest pełnego rzędu.W świetle wyniku Ankeny’ego [2] ten proces może być zderandomizowanyprzy założeniu uogólnionej Hipotezy Riemanna (ERH). Użycie hipotezy2 implikuje, że dla znalezionej liczby p rząd grupy (Z/pZ)∗, czyli p − 1,jest gładki. Deterministyczny algorytm wyznaczania g wymaga jednak do-datkowo zastosowania Hipotezy Riemanna. W rozprawie uzasadniamy, że

231

Page 232: Kryptologia i Cyberbezpieczenstwo nr 6

K. Durnoga

zakładając jedynie prawdziwość ERH, ale bez odwoływania się do hipotezy2, możliwe jest wydajne generowanie odpowiednich wartości p, M oraz gw sposób randomizowany.

W chwili obecnej znanych jest kilka innych przykładów ekstrak-tora niekowalnego [9, 21]. Są to konstrukcje bezwarunkowe pozwalającena osiągnięcie lepszych parametrów (np. oszacowania na wyraz błędu ϵczy słabszego warunku na poziom min-entropii źródła k) niż ekstraktorChora-Goldreicha i używające metod spoza teorii liczb.

Poniżej przedstawimy wyniki analizy problemu efektywnego wyboruparametrów p, M i g w ekstraktorze Chora-Goldreicha w formie przedsta-wionej przez Dodisa i in. [10]. Pochodzą one z pracy Durnogi i Źrałka [15]oraz rozprawy doktorskiej autora [14], a ich rezultat stanowi definicja alter-natywnej wersji ekstraktora niekowalnego, która nie zakłada prawdziwościERH ani hipotezy 2.

3. Generator pseudolosowy online

Pierwszym krokiem do stworzenia bezwarunkowej konstrukcji ekstrak-tora jest próba budowy algorytmu wyznaczającego wartości funkcji fg bezdanego generatora g. Z pozoru zadanie to wydaje się nie być poprawniesformułowane ze względu na fakt, że nie jest możliwe obliczanie funkcji,która sama w sobie pozostaje nieznana. Proponowana tu metoda pozwalana obliczenie wartości pewnej funkcji częsciowej f(a1), . . . , f(aℓ) dla wieluargumentów a1, . . . , aℓ gwarantując istnienie takiego, nie danego jawnie,generatora g, że f(ai) = fg(ai) dla wszystkich i = 1, . . . , ℓ. Metoda ta jestalgorytmem typu online, tzn. takim, w którym argumenty przetwarzane sąsekwencyjnie i całość wejścia może nie być dostępna na początku działaniaalgorytmu. Algorytmy online mają fundamentalne znaczenie w obliczeniachinteraktywnych.

Można wykazać następujące twierdzenie:

Twierdzenie 3. (Durnoga i Źrałek [15], twierdzenie 8) Istnieje determini-styczny algorytm online, który dla danego ciągu argumentów a1, . . . , aℓ ∈(Z/pZ)∗ oblicza fg(a1), . . . , fg(aℓ), gdzie fg jest epimorfizmem danym przez(2) dla pewnego, a priori nieznanego, generatora g grupy (Z/pZ)∗ zależnegood a1, . . . , aℓ. Algorytm znajduje fg(ai) dla i = 1, . . . , ℓ przed pobraniemkolejnego argumentu ai+1 z wejścia. Pojedyncza wartość fg(ai) obliczanajest w czasie O

(P+(M) ·s−1poly(log p)

)przy użyciu O

(spoly(log p)

)bitów

pamięci, gdzie parametr 0 < s ≤√

P+(M) może być wybrany dowolnie.

232

Page 233: Kryptologia i Cyberbezpieczenstwo nr 6

Niekowalne ekstraktory losowości

Należy przy tym zaznaczyć, że algorytm z powyższego twierdzenianie może być bezpośrednio użyty do obliczania wartości ekstraktora nieko-walnego (3), który zdefiniowany jest w terminach statystycznej odległościrozkładów. Dla ciągów wartości pojawiających się na wyjściu ekstraktoramożliwe jest jednak, analogicznie jak w przypadku ekstraktorów, udowod-nienie pewnej własności nieodróżnialności od ciągu wartości losowych.

4. Bezwarunkowa konstrukcja ekstraktora niekowalnego

Osiągnięcie celu bezwarunkowej konstrukcji ekstraktora niekowalnegomożliwe jest po zaskakująco prostej modyfikacji oryginalnego rozwiązaniapochodzącego od Chora i Goldreicha [7]. Pomysł polega na zastąpieniulogarytmu dyskretnego występującego w definicji (3), który stanowił źródłoopisanych wyżej problemów, przez potęgowanie. Operacja ta przekształcaotrzymane argumenty na elementy pewnej grupy G zdefiniowanej jako:

G := a(p−1)/M | a ∈ (Z/pZ)∗, (4)

a sam ekstraktor jest naturalnym odwzorowaniem (Z/pZ)∗ w G. Mówio tym poniższe twierdzenie:

Twierdzenie 4. (Durnoga i Źrałek [15], lemat 10) Niech p, M , k oraz ϵbędą takie jak w twierdzeniu 1. Wtedy funkcja ExtG: (Z/pZ)×(Z/pZ)→ Gdana wzorem

ExtG(x, y) := (x+ y)(p−1)/M

jest efektywnie obliczalnym (k, ϵ)–niekowalnym ekstraktorem.

W oczywisty sposób definicja ExtG nie wymaga znajomości generatoragrupy (Z/pZ)∗. Ponadto wartości tej funkcji, w odróżnieniu od ekstraktora(3), można szybko obliczać również w przypadku, gdy M ma duże dzielnikipierwsze. Ta obserwacja pozwala na efektywne wygenerowanie parametrówp oraz M bez dodatkowego warunku na gładkość liczby M . Opierając się nagłębokim wyniku Alforda i in. [1] można dowieść następującego wniosku:

Twierdzenie 5. Dla wszystkich dostatecznie dużych z, z′ oraz dowolnegol > 0 spełniających (z + l)4 < 1

2z′, istnieje co najmniej 13z

′/(φ(M) log z′)liczb pierwszych w przedziale ( 12z

′, z′], które należą do postępu arytmetycz-nego ≡ 1 (mod M) dla każdego modułu M z przedziału (z, z + l), pozaco najwyżej O

(l/ log(z + l)

)wyjątkowymi wartościami M .

To twierdzenie natychmiast prowadzi do randomizowanego algorytmu,o oczekiwanej wielomianowej złożoności, generacji parametrów ekstraktoraExtG.

233

Page 234: Kryptologia i Cyberbezpieczenstwo nr 6

K. Durnoga

Z praktycznego punktu widzenia pewną wadą ekstraktora ExtGz twierdzenia 4 jest fakt, że wartości pojawiające się na jego wyjściu sąelementami podgrupy G rzędu M określonej przez (4). Grupa ta, inter-pretowana jako zbiór ciągów bitów, ma nieregularną strukturę, przez comoże nie być odpowiednia w zastosowaniach oczekujących właśnie loso-wych ciągów bitów. Ciekawym i nietrywialnym problemem staje się więckwestia przekształcenia elementów G na takie ciągi bitów. To zagadnieniejest ściśle związane ze znanym problemem tzw. ekstrakcji klucza (ekstrak-tor deterministyczny, por. Fouque i in. [16]).

W pracy Durnogi i Źrałka [15] zaproponowany jest algorytm do wy-znaczania wartości pewnej bijekcji G→ Z/MZ. Szczególne znaczenie mia-łoby skonstruowanie podobnej bijekcji dla grup stosowanych w protokoleDiffie-Hellmana, w których problem obliczania logarytmu dyskretnego jestuznawany za trudny. Wspomniany algorytm działa w czasie proporcjonal-nym do największego dzielnika pierwszego P+(M) liczby M , a więc jestefektywny jedynie dla tych M , które są gładkie. Tym samym zakładamy,że problem znajdowania logarytmów dyskretnych w G jest „łatwy”. Mimo,że w takim przypadku istnieje naturalny i prosty do obliczenia izomorfizmmiędzy G i Z/MZ, zadany właśnie przez logarytm dyskretny, to jednak jegokonstrukcja wymaga znajomości generatora grupy G. Rozważana metodaobliczania bijekcji nie zakłada, że taki generator jest dany. Ten przypa-dek nie był, wg wiedzy autora, wcześniej badany w literaturze i może byćinteresujący również poza kontekstem ekstraktorów.

Można wykazać następujące twierdzenie:

Twierdzenie 6. (Durnoga i Źrałek [15], twierdzenie 14) Istnieje bijekcjaσ:G → Z/MZ taka, że dla danego a ∈ G odpowiadającą wartość σ(a)można obliczyć w sposób deterministyczny w czasie O

(P+(M)poly(log p)

).

Jednocześnie konstrukcja może być zmodyfikowana tak, by uzyskaćalgorym obliczający bijekcję dla wielu argumentów:

Twierdzenie 7. (Durnoga i Źrałek [15], twierdzenie 16) Istnieje determi-nistyczny algorytm online obliczający wartości pewnej bijekcjiG→ Z/MZ.Algorytm wykorzystuje O(spoly(log p)

)bitów pamięci, a jego łączny czas

działania dla ℓ argumentów to

O(P+(M)(ℓs−1 + 1)poly(log p)

),

gdzie 0 < s ≤√

P+(M) może być ustalone dowolnie.

Wspomniana w twierdzeniu 6 bijekcja G → Z/MZ pozwala „bez-stratne” przekształcenie wyjścia ekstraktora ExtG w element zbioru Z/MZ.

234

Page 235: Kryptologia i Cyberbezpieczenstwo nr 6

Niekowalne ekstraktory losowości

ciślej: złożenie σExtG jest ekstraktorem niekowalnym z identycznym wyra-zem błędu ϵ jak w przypadku ekstraktora ExtG. Ograniczeniem obliczenio-wym jest jednak tutaj fakt, że wartości σ mogą być efektywnie znalezionedla M będących liczbami gładkimi. Jest to w istocie problem podobnejnatury, co ten występujący w oryginalnej konstrukcji Dodisa i in. [10] –metoda generacji parametrów p i M | p − 1 z dodatkowym warunkiem napoziom gładkości M jest warunkowa, chyba że M jest niewielkie, tzn. wie-lomianowe jako funkcja log p. Praca Durnogi [14] proponuje stosowne roz-wiązanie dla ekstraktorów o długich wyjściach, a więc takich, których zbiórwartości jest rozmiaru rzędu pΩ(1). Podstawą tej konstrukcji jest obserwa-cja, że przekształcając elementy grupy G na ciągi losowych bitów możnadopuścić pewną dodatkową stratę entropii. Innymi słowy, σ w złożeniuσ ExtG nie musi być funkcją różnowartościową. Naturalnym, a jednocze-śnie niezwykle prostym, pomysłem na takie przekształcenie zmniejszającedziedzinę jest obcięcie reprezentacji bitowej elementu grupy G do najmniejznaczących bitów. To podejście znane już było w literaturze i sprawdziło sięw pokrewnych zastosowaniach – przykładem może być tutaj ekstraktor Ho-lensteina [18]. Chevalier i in. [6] pokazali, korzystając z oszacowań dla sumwykładniczych, że wynikiem działania funkcji lsbn(a), obcinającej repre-zentację bitową elementu a wybranego losowo (z rozkładu jednostajnego)z dowolnej, odpowiednio dużej podgrupy (Z/pZ)∗ do n jej najmniej znaczą-cych bitów, jest niemal losowy ciąg zer i jedynek. Funkcja lsbn jest tym sa-mym tzw. deterministycznym ekstraktorem o tej własności, że przekształcaon losowe elementy grupy w (prawie) losowe ciągi bitów. Efektywne oblicze-niowo ekstraktory tego typu są użyteczne w praktyce – umożliwiają prze-niesienie klucza uzyskanego w realizacji protokołu Diffie-Hellmana (któryto klucz, przy odpowiednich założeniach, jest nieodróżnialny od losowegoelementu grupy) do świata kryptografii symetrycznej (w którym zwyklewymaga się, by klucze były losowymi ciągami bitów).

Opierając się na wynikach Fouque i in. [16], Chevalier i in. oraz głębo-kim rezultacie Bourgain i Konyagina [5] można pokazać następujące twier-dzenie:

Twierdzenie 8. (Durnoga [14], twierdzenie 7.10) Dla dowolnej stałejα > 0 istnieje takie β = β(α) > 0, że dla każdej liczby pierwszej p i cał-kowitego M | p − 1, spełniających M ≥ pα, oraz dowolnego ograniczeniana min-entropię k i n > 0 funkcja Ext′: (Z/pZ) × (Z/pZ) → Z/NZ danawzorem

Ext′(x, y) := lsbn(ExtG(x, y)

)= lsbn

((x+ y)(p−1)/M

)235

Page 236: Kryptologia i Cyberbezpieczenstwo nr 6

K. Durnoga

jest efektywnie obliczalnym (k, ϵ′)–niekowalnym ekstraktorem z wyrazembłędu

ϵ′ = 2Mp1/42−k/2 +12

2n/2p−β log1/22 p.

Literatura

[1] William R. Alford, Andrew Granville, and Carl Pome-rance, There are infinitely many Carmichael numbers, Annals of Ma-thematics, 139:703–722, 1994.

[2] Nesmith C. Ankeny, The least quadratic non residue, Annals ofMathematics, 55:65–72, 1952.

[3] Charles H. Bennett, Gilles Brassard, and Jean-Marc Ro-bert, Privacy amplification by public discussion SIAM J. Comput.,17(2):210–229, April 1988.

[4] Jean Bourgain, More on the sum-product phenomenon in primefields and its applications International Journal of Number Theory,1(1):1–32, 2005.

[5] Jean Bourgain and Sergei Konyagin, Estimates for the numberof sums and products and for exponential sums over subgroups in fieldsof prime order, Comptes Rendus Mathematique, 337(2):75–80, 2003.

[6] Celine Chevalier, Pierre-Alain Fouque, David Pointche-val, and Sbastien Zimmer, Optimal randomness extraction froma Diffie-Hellman element, In Antoine Joux, editor, Advances in Cryp-tology – Proceedings of EUROCRYPT 09, volume 5479 of LectureNotes in Computer Science, pages 572–589, Cologne, Germany, 2009.Springer.

[7] Benny Chor and Oded Goldreich, Unbiased bits from sources ofweak randomness and probabilistic communication complexity, SIAMJ. Comput., 17(2):230–261, April 1988.

[8] Aviad Cohen and Avi Wigderson, Dispersers, deterministic am-plification, and weak random sources (extended abstract), In FOCS,pages 14–19, IEEE Computer Society, 1989.

[9] Gil Cohen, Ran Raz, and Gil Segev, Non-malleable extractorswith short seeds and applications to privacy amplification, In IEEEConference on Computational Complexity, pages 298–308, IEEE, 2012.

[10] Yevgeniy Dodis, Xin Li, Trevor D. Wooley, and David Zuc-kerman, Privacy amplification and non-malleable extractors via cha-racter sums, In Proceedings of the 2011 IEEE 52nd Annual Sympo-sium on Foundations of Computer Science, FOCS 11, pages 668–677,Washington, DC, USA, 2011, IEEE Computer Society.

236

Page 237: Kryptologia i Cyberbezpieczenstwo nr 6

Niekowalne ekstraktory losowości

[11] Yevgeniy Dodis and Roberto Oliveira, On extracting privaterandomness over a public channel In Sanjeev Arora, Klaus Jansen, JosD. P. Rolim, and Amit Sahai, editors, RANDOM-APPROX, volume2764 of Lecture Notes in Computer Science, pages 252–263, Springer,2003.

[12] Yevgeniy Dodis and Daniel Wichs, Non-malleable extractorsand symmetric key cryptography from weak secrets, IACR CryptologyePrint Archive, 2008:503, 2008.

[13] Yevgeniy Dodis and Daniel Wichs, Non-malleable extractors andsymmetric key cryptography from weak secrets, In Proceedings of the41st annual ACM symposium on Theory of computing, STOC 09,pages 601610, New York, NY, USA, 2009, ACM.

[14] Konrad Durnoga, Non-malleable Randomness Extractors, PhD the-sis, University of Warsaw, 2014.

[15] Konrad Durnoga and Bartosz Zrałek, On randomness extrac-tors and computing discrete logarithms in bulk, 2013, preprint.

[16] Pierre-Alain Fouque, David Pointcheval, Jacques Stern,and Sbastien Zimmer, Hardness of distinguishing the MSB or LSBof secret keys in Diffie-Hellman schemes, In Michele Bugliesi, BartPreneel, Vladimiro Sassone, and Ingo Wegener, editors, Automata,Languages and Programming, volume 4052 of Lecture Notes in Com-puter Science, pages 240–251. Springer Berlin Heidelberg, 2006.

[17] Andrew Granville and Carl Pomerance, On the least prime incertain arithmetic progressions, Journal of the London MathematicalSociety, 2(2):193–200, 1990.

[18] Thomas Holenstein, Pseudorandom generators from one-way func-tions: A simple construction for any hardness, In Shai Halevi and TalRabin, editors, In 3rd Theory of Cryptography Conference – (TCC06), Lecture Notes in Computer Science. Springer-Verlag, 2006.

[19] Russell Impagliazzo, Leonid A. Levin, and Michael Luby,Pseudo-random generation from one-way functions, In Proceedings ofthe twenty-first annual ACM symposium on Theory of computing,STOC 89, pages 12–24, New York, NY, USA, 1989. ACM.

[20] Hendrik W. Lenstra. Primality testing with Gaussian pe-riods, In Manindra Agrawal and Anil Seth, editors, FST TCS2002: Foundations of Software Technology and Theoretical Compu-ter Science, 22nd Conference Kanpur, India, December 12–14, 2002,Proceedings, volume 2556 of Lecture Notes in Computer Science, page1, Springer, 2002.

237

Page 238: Kryptologia i Cyberbezpieczenstwo nr 6

K. Durnoga

[21] Xin Li, Non-malleable extractors, two-source extractors and privacyamplification, In FOCS, volume 0, pages 688697, Los Alamitos, CA,USA, 2012, IEEE Computer Society.

[22] Ueli M. Maurer and Stefan Wolf, Privacy amplification secureagainst active adversaries In Burton S. Kaliski Jr., editor, CRYPTO,volume 1294 of Lecture Notes in Computer Science, pages 307–321,Springer, 1997.

[23] Noam Nisan and David Zuckerman, More deterministic simula-tion in logspace, In Proceedings of the twenty-fifth annual ACM sym-posium on Theory of computing, STOC 93, pages 235–244, New York,NY, USA, 1993, ACM.

[24] Stephen Pohlig and Martin Hellman, An improved algorithm forcomputing logarithms over GF (p) and its cryptographic significance,IEEE Transactions on Information Theory, 24(1):106–110, 1978.

[25] Wolfgang M. Schmidt, Equations over finite fields: an elementaryapproach, Lecture Notes in Mathematics. Springer-Verlag, 1976.

[26] Triantafyllos Xylouris, Uber die Nullstellen der DirichletschenL-Funktionen und die kleinste Primzahl in einer arithmetischen Pro-gression, PhD thesis, Mathematisch-Naturwissenschaftliche Fakultatder Universitat Bonn, 2011.

[27] David Zuckerman, General weak random sources, In FOCS 90, pa-ges 534–543, 1990.

NON-MALLEABLE RANDOMNESS EXTRACTORS

Abstract. We give an unconditional construction of a non-malleable extractor im-proving the solution from the recent paper Privacy Amplification and Non-MalleableExtractors via Character Sums by Dodis et al. (FOCS’11). There, the authors providethe first explicit example of a non-malleable extractor - a cryptographic primitive thatsignificantly strengthens the notion of a classical randomness extractor. In order to makethe extractor robust, so that it runs in polynomial time and outputs a linear number ofbits, they rely on a certain conjecture on the least prime in a residue class. In this paperwe present a modification of their construction that allows to remove that dependencyand address an issue we identified in the original development.

Keywords: randomness extractor, non-malleable extractor, discrete logarithm

Page 239: Kryptologia i Cyberbezpieczenstwo nr 6

ELASTYCZNE EKSTRAKTORYDWUŹRÓDŁOWE I ICH ZASTOSOWANIA

Maciej Obremski

Wydział Matematyki, Informatyki i Mechaniki,Uniwersytet Warszawski

Streszczenie. Prezentujemy nowe pojęcie elastycznego ekstraktora dwu-źródłowego.Prezentujemy cały wachlarz metod i twierdzeń uzupełniających wiedzę o przypadkachnierozpatrywanych przez lemat Lidsey’a i Leftover Hash Lemma. Pokazujemy analogtwierdzenia Barak’a o silnych i słabych ekstraktorach dla przypadku elastycznego. Naprzykładzie odpornych na wycieki schematów składowania danych prezentujemy przy-kład zastosowania elastycznych ekstraktorów dwu-źródłowych. Otrzymujemy w ten spo-sób lepsze parametry niż w przypadku standardowej ekstrakcji oraz możliwość prowa-dzenia adaptywnych wycieków.

Słowa kluczowe: elastyczne ekstraktory dwu-źródłowe, ekstraktory dwu-źródłowe, wy-cieki, odporne na wycieki schematy składowania danych, twierdzenie Baraka.

1. Wstęp

Prezentujemy nowe pojęcie elastycznego extraktora dwuźródłowego.Pojęcie to pojawiło się po raz pierwszy we wspólnej pracy ze Stefa-nem Dziembowskim i Tomaszem Kazaną „Non-Malleable Codes fromTwo-Source Extractors”, opublikowanej na konferencji CRYPTO 2013.W przeciwieństwie do standardowych dwuźródłowych ekstraktorów, którewymagają by każde ze źródeł osobno miało pewną entropię, elastyczny eks-traktor wymaga by sumaryczna entropia źródeł przekraczała daną wartość.Wyróżniamy słabe i silne elastyczne ekstraktory i podobnie jak w przy-padku słabych i silnych ekstraktorów dwuźródłowych dowodzimy, że każdysłaby ekstraktor jest też silny kosztem nieznacznego pogorszenia jego pa-rametrów. Ponadto dowodzimy, że dwa z powszechnie znanych i używa-nych ekstraktorów są elastyczne co znacząco wzmacnia tezę Leftover HashLemma dla tych ekstraktorów.

Ekstraktory Losowości są kluczowym komponentem wielu schematówkryptograficznych na przykład kodów niekowalnych [1, 2, 3, 6] czy schema-tów składowania danych odpornych na wycieki [5]. Dotychczas stosowanemetody tj. standardowa dwu-źródłowa ekstrakcja i Leftover Hash Lemmaniestety miały istotną wadę, mianowicie gdy chcemy użyć ekstraktora doskładowania danych zazwyczaj bierzemy dane m i losujemy dwa wektoryL,R, takie że ext(L,R) = m, następnie składujemy L,R na różnych serwe-rach. Żeby w tej sytuacji stosować Leftover Hash Lemma musimy założyć,

Page 240: Kryptologia i Cyberbezpieczenstwo nr 6

M. Obremski

że L zostało wylosowane idealnie jednostajnie. Jeśli nie mogliśmy wyloso-wać L jednostajnie musimy uciec się do standardowej ekstrakcji, która dajenam drastycznie gorsze parametry. Ten przeskok jakościowy parametrówLHL względem standardowej ekstrakcji zainspirował nas do poszukiwaniarozwiązania pośredniego łączącego oba te przypadki.

2. Ekstraktory

Zacznijmy od podstawowych definicji.

Definicja (dystans statystyczny). Dystansem statystycznym (albo poprostu odległością) między dwiema zmiennymi losowymi A i B określonymina zbiorze A będziemy nazywać

∆(A;B) =12

∑a∈A|P (A = a)− P (B = a)|.

Dla zmiennej U o rozkładzie jednostajnym na zbiorze A będziemy mówili,że ∆(A,U) jest odległością zmiennej losowej A od rozkładu jednostajnegobedziemy to oznaczać po prostu przez d(A).

Definicja (min-entropia). Przez pojęcie min-entropii będziemy rozu-mieć:

H∞(X) = log(

1maxx∈XX(x)

)= − log(maxx∈XX(x))

gdzie X(x) = P (X = x).

Definicja (ekstraktor). Mówimy, że ext : X × Y → Z jest(k, ϵ)-dwuźródłowym ekstraktorem jeśli dla niezależnych zmiennych loso-wych X na X i Y na Y, takich, że H∞(X) ≥ k i H∞(Y ) ≥ k, wynikext(X,Y ) jest zmienną losową, której odległość od rozkładu jednostajnegona Z jest niewiększa niż ϵ. Formalnie ∆(ext(X,Y );UZ) ≤ ϵ, gdzie UZ jestrozłożona jednostajnie na Z.

Definicja (silny ekstraktor). Mówimy, że ext : X × Y → Z jest sil-nym (k, ϵ)-dwuźródłowym ekstraktorem, jeśli dla niezależnych zmiennychlosowych X na X i Y na Y takich, że H∞(X) ≥ k i H∞(Y ) ≥ k, za-chodzi ∆(ext(X,Y ), X); (UZ , X) ≤ ϵ. Co nieformalnie oznacza, że nawet

240

Page 241: Kryptologia i Cyberbezpieczenstwo nr 6

Elastyczne ekstraktory dwuźródłowe i ich zastosowania

jeśli przeciwnik zna jedno ze źródeł (X lub Y ) wciąż nie jest on w sta-nie odróżnić wyniku ekstraktora od uczciwie jednostajnej zmiennej losowejz prawdopodobieństwem istotnie wyższym niż 12 . W [8] (Twierdzenie 5.1)znajduje się twierdzenie przypisane Boaz Barakowi, że każdy 2-źródłowyekstraktor jest też silnym 2-źródłowym ekstraktorem tylko z nieco gorszymiparametrami.

Definicja (słaby elastyczny ekstraktor). Funkcję ext : L×R → C na-zwiemy słabym elastycznym (k, ϵ)-2-źródłowym ekstraktorem jeśli dla każ-dego L ∈ L oraz R ∈ R takich, że H∞(L) + H∞(R) ≥ k zachodzid(ext(L,R)) ≤ ϵ.

Definicja (silny elastyczny ekstraktor). Funkcję ext : L×R → C na-zwiemy silnym elastycznym (k, ϵ)-2-źródłowym ekstraktorem jeśli dla każ-dego L ∈ L oraz R ∈ R takich, że H∞(L) + H∞(R) ≥ k zachodzid(ext(L,R)|L) ≤ ϵ i d(ext(L,R)|R) ≤ ϵ.Dwie ostatnie definicje są nowymi pojęciami wprowadzonymi przez nas.

Twierdzenie 1. Niech ext : (0, 1N )2 → 0, 1M będzie słabym ela-stycznym (K, ϵ)-ekstraktorem, dla K ≥ N . Wtedy dla każdego K ′ ≥ Kmamy, że ext jest silnym elastycznym (K ′, ϵ′)-ekstraktorem, gdzie ϵ′ == 2M (ϵ+ 2K−K

′).

To twierdzenie daje nam narzędzie do dowodzenia, że ekstraktor jest silny.Korzystamy z niego w dowodzie następującego twierdzenia.

Twierdzenie 2. Dla każdego skończonego ciała F i dowolnego n mamy, żeext : Fn × Fn → F zdefiniowany jako extnF (L,R) = ⟨L,R⟩ jest elastycznym(k, ϵ)-ekstraktorem dla dowolnego k oraz ϵ takiego, że

log(1/ϵ) =k − (n+ 4) log |F|

3− 1.

Elastyczność iloczynu skalarnego jest kluczowa przy tworzeniu koduniekowalnego [6] jak i w innych pracach o zbliżonej tematyce [1, 3]. Wła-sność elastyczności w przypadku iloczynu skalarnego uogólnia wynik Le-ftover Hash Lemma [4].Kolejne twierdzenie dotyczy innego znanego ekstraktora wprowadzonegoprzez Holensteina w [7]. W owej pracy dowodzi, że poniższy ekstraktor jestsilnym ekstraktorem z ziarnem co jest słabszym wynikiem od uzyskanegoprzez nas. Niech GF (2n) oznacza ciało Galois.

241

Page 242: Kryptologia i Cyberbezpieczenstwo nr 6

M. Obremski

Twierdzenie 3. Ekstraktor ext : GF (2n)×GF (2n)→ GF (2λ), zdefinio-wany jako ext(X,Y ) = (X · Y )λ jest (k, 2

n−k+2λ−22 ) słabym elastycznym

2-źródłowym ekstraktorem.

Gdzie (X)λ oznacza obcięcie ciagu bitów do λ najbardziej istotnych. Sto-sując tutaj Twierdzenie 1 możemy uzyskać, że powyższy ekstraktor jestsilnym ekstraktorem elastycznym.

3. Wycieki i Leftover Hash Lemma

3.1. Leftover Hash Lemma dla iloczynu skalarnego

Rodzinę H deterministycznych funkcji h : X → 0, 1v nazywamyp-uniwersalną rodziną haszującą (na przestrzeni X ), jeśli dla każdej paryx1 = x2 ∈ X zachodzi Ph←H[h(x1) = h(x2)] ≤ p. Jeśli p = 1

2v , mówimy,że H jest uniwersalna. Przejdzmy do sformułowania Leftover Hash Lemma(LHL).

Twierdzenie 4. (Leftover-Hash Lemma) Niech rodzina H funkcji deter-ministycznych h : X → 0, 1v będzie 1+γ2v -uniwersalną rodziną haszującą.Wtedy ekstraktor ext(x;h) = h(x), gdzie h jest wybierane jednostajnie

z H, jest (m, ϵ)-ekstraktorem, gdzie ϵ = 12

√γ + 1

2m−v .

Dowód tego twierdzenia znajduje się w [4]. LHL zastosowany wprost doiloczynu skalarnego daje następujące twierdzenie:

Twierdzenie 5. Dla X i Y niezależnych zmiennych losowych na Fn ta-kich, że Y jest jednostajnia oraz H∞(X) ≥ m zachodzi

∆[(⟨XY ⟩, Y ); (UF, Y )] ≤ 12

√1

2m−log |F|

Korzystając z faktu, że iloczyn skalarny jest silnym elastycznym

(k, 2−[k−(n+4) log |F|

3 −1])-ekstraktorem możemy pominąć założenie o jedno-

stajnym rozkładzie Y otrzymując twierdzenie w ogólnej wersji:

Twierdzenie 6. Dla dowolnych niezależnych zmiennych losowych X i Yna Fn takich, że H∞(Y ) ≥ k−m i dla dowolnej funkcji f : Fn → G takiej,że Px←f(UFn )(H∞(X|f(X) = x) ≥ m) ≥ 1− ϵ. Otrzymujemy:

∆[(⟨XY ⟩, f(X), Y ); (UF, f(X), Y )] ≤ 2−[k−(n+4) log |F|

3 −1]

+ ϵ

Następujący lemat podaje klasę funkcji spełniających powyższe założenia

242

Page 243: Kryptologia i Cyberbezpieczenstwo nr 6

Elastyczne ekstraktory dwuźródłowe i ich zastosowania

Lemat 1. Dla każdej zmiennej losowej X na X takiej, że H∞(X) = ki dla dowolnej f : X → 0, 1c zachodzi

Py←f(UX ) (H∞(X|f(X) = y) ≤ m) ≤ 2−k+c+m.

3.2. Wycieki adaptywne

Twierdzenie 7. Niech ext : X × X → G będzie silnym elastycznym(k, ϵ)-ekstraktorem. Niech X i Y będą niezależnymi zmiennymi losowymitakimi, że H∞(X) = kx i H∞(Y ) = ky. Dla każdej adaptywnej sekwencjifunkcji fi : X → 0, 1ai i gi : X → 0, 1bi (gdzie wybór i-tej funkcji możezależeć od wyników i− 1 wcześniejszych fi oraz gi), takiej, że λx + λy ≤ λgdzie λ jest parametrem zaś

∑i ai = λx i

∑i bi = λy zachodzi:

d(ext(X,Y )|viewf,g) ≤ ϵ+ 2−kx−ky+k+λ

gdzie viewf,g = (f1(X), g1(Y ), f2(X), g2(Y ) . . .).

3.3. Odporne na wycieki schematy przechowywania danych w mo-delu split-state

W [5] wprowadzono pojęcie odpornych na wycieki schematów przecho-wywania danych, na potrzeby tej rozprawy generalizujemy niektóre pojęciaz tej pracy. Niech ext : X × X → F będzie silnym (k, ϵ)- elastycznym eks-traktorem. Niech L i R będą niezależnymi zmiennymi losowymi takimi, żeH∞(X) +H∞(Y ) > k. Zdefiniujmy ((k, ϵ) − ext, L,R)-schemat jako paręfunkcji Enc : F→ X ×X i Dec : X × X → F zdefiniowanych następująco:

Dec(l, r) = ext(l, r)

Enc(m) = (l, r), takie że l← L, r ← R i ext(l, r) = m.

Zdefiniujmy (λ, t)-przeciwnika w model split-state (w skrócie (λ, t)-SSMprzeciwnika) podobnie jak w pracy [5]. Niech pamięć urządzenia będzie roz-dzielona na dwie części L,R, t-krotnie powtarzamy nasępującą procedurę:dla i = 1, 2, . . . , t przeciwnik wybiera fi : X → 0, 1ai i gi : X → 0, 1bii poznaje fi(L) oraz gi(R). Przeciwnik może wybrać dowolne ai i bi, takieże∑i ai+ bi < λ. Wektor (f1(L), g1(R), f2(L), . . . , gt(R)) wyników pozna-

nych przez przeciwnika A oznaczamy jako viewA(L,R).

243

Page 244: Kryptologia i Cyberbezpieczenstwo nr 6

M. Obremski

Mówimy, że ((k, ϵ) − ext, L,R)-schemat jest (λ, t, δ)-słabo bezpiecznyw modelu split-state jeśli dla każdego (λ, t)-SSM przeciwnika A zachodzi:

d(ext(L,R)|viewA(L,R)) ≤ δ.

Przywołajmy definicję z [5] i przepiszmy ją w języku modelu split-state.Mówimy, że schemat (Enc,Dec) jest (λ, t, δ)-bezpieczny jeśli dla każdychdwóch wiadomości m0 i m1 oraz dla każdego (λ, t)-SSM przeciwnika za-chodzi:

∆ (viewA(Enc(m0)); viewA(Enc(m1))) ≤ δ

Twierdzenie 8. Jeśli ((k, ϵ) − ext, L,R)-schemat jest (λ, t, δ)-słabo bez-pieczny wtedy jest też (λ, t, 4|F| · δ)-bezpieczny.

W Twierdzeniu 7 udowodniliśmy, że ((k, ϵ) − ext, L,R)-schemat jest(λ,∞, ϵ+ 2−H∞(L)−H∞(R)+k+λ)-słabo bezpieczny stąd dzięki Twierdzeniu8 otrzymujemy, że każdy schemat oparty na ekstraktorze elastycznym jest(λ,∞, 4|F|(ϵ+ 2−H∞(L)−H∞(R)+k+λ))-bezpieczny.

Literatura

[1] D. Aggarwal, Y. Dodis, T. Kazan, and M. Obremski, Reduc-tions and their applications, unpublished manuscript, 2014.

[2] D. Aggarwal, Y. Dodis, and S. Lovett, Non-malleable codes fromadditive combinatorics, FOCS, 2014.

[3] D. Aggarwal, S. Dziembowski, T. Kazan, and M. Obremski,Interactive non-malleable codes, unpublished manuscript, 2014.

[4] B. Barak, Y. Dodis, H. Krawczyk, O. Pereira, K. Pietrzak,F.-X. Standaert, and Y. Yu, Leftover hash lemma, revisited, 2011,http://eprint.iacr.org/.

[5] F. Davi, S. Dziembowski, and D. Venturi, Leakage-resilient sto-rage, Security and Cryptography for Networks, 2010, p. 121–137.

[6] S. Dziembowski, T. Kazana, and M. Obremski, Non-malleablecodes from two-source extractors, CRYPTO, 2013.

[7] T. Holenstein, Pseudorandom generators from one-way functions:A simple construction for any hardness, In TCC, 2006, pp. 443–461.

[8] A. Rao, An exposition of bourgain 2-source extractor, In Electro-nic Colloquium on Computational Complexity (ECCC), vol. 14, 2007,page 034.

244

Page 245: Kryptologia i Cyberbezpieczenstwo nr 6

Elastyczne ekstraktory dwuźródłowe i ich zastosowania

FLEXIBLE TWO-SOURCE EXTRACTORS ANDAPPLICATIONS

Abstract. We introduce new notion – flexible two-source extractor. We show variousmethods and theorems that fill in cases not covered by Lidsey’s lemma and LeftoverHash Lemma. We present flexible version of Barak’s theorem for strong and weak flexibleextractors. We also show possible application of flexible extractors to leakage resilientstorage schemes. We are able to obtain better parameters then in standard extractioncase, moreover we are able to obtain resilience to adaptive leakages.

Keywords: flexible two-source extractors, two-source extractors, leakage, leakage resi-lient storage, Barak’s theorem.

Page 246: Kryptologia i Cyberbezpieczenstwo nr 6
Page 247: Kryptologia i Cyberbezpieczenstwo nr 6

ŚREDNIA ZŁOŻONOŚĆ OBLICZENIOWAPROBABILISTYCZNEGO ALGORYTMU

WYSZUKIWANIA PIERWIASTKÓWPIERWOTNYCH MODULO N

Tomasz Adamski

Instytut Systemów Elektronicznych;Wydział Elektroniki i Technik Informacyjnych Politechniki Warszawskiej,

[email protected]

Streszczenie. W pracy oszacowano średnią złożoność obliczeniową probabilistycznegoalgorytmu wyszukiwania pierwiastków pierwotnych modulo n. Uzyskany wynik możebyć w naturalny sposób uogólniony na przypadek algorytmu wyszukiwania generatorówdowolnej skończonej grupy cyklicznej jeśli znamy rozkład na czynniki pierwsze rzędu tejgrupy.

Słowa kluczowe: algorytmy kryptograficzne, algorytmy probabilistyczne, średnia zło-żoność obliczeniowa, pierwiastki pierwotne modulo n generatory skończonych grup cy-klicznych.

1. Wprowadzenie

Pierwiastek pierwotny z liczby n (lub modulo n) dla n ∈ N,n ≥ 2 toinaczej generator grupy multiplikatywnej Z∗n. Zatem algorytm wyznacza-nia pierwiastków pierwotnych z liczby n to inaczej algorytm wyszukiwaniageneratorów grupy multiplikatywnej Z∗n. Ponieważ grupa multiplikatywnaZ∗n nie dla każdego n ∈ N,n ≥ 2 jest cykliczna, pierwiastek pierwotnyz liczby n istnieje lub nie istnieje. Sprawę istnienia generatora grupy Z∗n,czyli sprawę istnienia pierwiastków pierwotnych z n wyjaśnia następująceznane twierdzenie.

Twierdzenie 1. Grupa multiplikatywna Z∗n dla n ∈ N,n ≥ 2 jest grupącykliczną wtedy i tylko wtedy, gdy n = 2, 4, pk, 2pk, gdzie p jest nieparzystąliczbą pierwszą oraz k ∈ N .

Dowód. por. np. W. Narkiewicz [4]

Przykład. Liczba 3 jest generatorem grupy multiplikatywnej Z∗7 . Łatwo tosprawdzić podnosząc 3 do kolejnych potęg 2,3,...,6 modulo 7 tzn. oblicza-jąc: 31 (mod 7) = 3, 32 (mod 7) = 2, 33 (mod 7) = 6, 34 (mod 7) = 4,35 (mod 7) = 5, 36 (mod 7) = 1.

Page 248: Kryptologia i Cyberbezpieczenstwo nr 6

T. Adamski

Znalezienie generatora grupy multiplikatywnej Z∗n (gdzie n jest liczbątaką jak w twierdzeniu 1) jest szczególnie ważne dla algorytmów krypto-graficznych, w których często wykorzystujemy generatory grupy Z∗n jakodane wejściowe. Do takich algorytmów należą np. algorytm szyfrowaniaElGamala, algorytmy podpisów cyfrowych ElGamala i Nyberga-Ruppelai bardzo popularny algorytm uzgadniania kluczy Diffiego-Hellmanna.

W dalszym ciągu dla uproszczenia zapisu przyjmujemy, że n = p, gdziep jest liczbą pierwszą. Jeśli n jest dowolną liczbą naturalną dla, którejistnieje pierwiastek pierwotny modulo n to w opisie algorytmu zamiastrozkładu na czynniki pierwsze liczby p− 1 używamy rozkładu na czynnikipierwsze liczby φ(n), gdzie φ jest funkcją Eulera.

2. Algorytm wyszukiwania generatorów grupymultiplikatywnej

Nie są znane efektywne algorytmy obliczania generatorów grupy multi-plikatywnej Z∗p jeśli dane wejściowe ograniczają się tylko do wartości liczbypierwszej p. Jeśli natomiast znamy rozkład liczby p−1 na czynniki pierwszetzn. wiemy, że

p− 1 = qk11 qk22 . . . qkrr

gdzie q1, q2, . . . , qr są parami różnymi liczbami pierwszymi a k1, k2, . . . , krliczbami naturalnymi, to istnieje prosty algorytm probabilistyczny opisanyw języku publikacyjnym na rys.1 obliczający generator grupy Z∗p . Ten al-gorytm będziemy analizować w dalszym ciągu. Algorytm ten ma jednakpewną wadę, wymaga bowiem znajomości rozkładu liczby p−1 na czynnikipierwsze. Z kolei uzyskanie rozkładu liczby całkowitej na czynniki pierwszejest ogólnie rzecz biorąc problemem obliczeniowo trudnym. Koniecznośćznajomości rozkładu liczby p − 1 na czynniki pierwsze ogranicza użytecz-ność omawianego algorytmu ale jeśli konkretna wartość liczby pierwszej pnie jest specjalnie istotna to można postąpić tak:

1. Wygenerować parami różne liczby pierwsze q1, q2, . . . , qr przyjąć wy-kładniki k1, k2, . . . , kr ∈ N i obliczyć wartość n = qk11 · q

k22 · . . . · qkrr

2. Przetestować pierwszość liczby n+ 1 np. algorytmem Millera-Rabina.Jeśli liczba n + 1 jest pierwsza to można przyjąć p = n + 1 i znamyjednocześnie rozkład liczby p− 1 na czynniki pierwsze. Możemy więczastosować omawiany algorytm.

248

Page 249: Kryptologia i Cyberbezpieczenstwo nr 6

Średnia złożoność obliczeniowa probabilistycznego algorytmu wyszukiwania . . .

3. Jeśli liczba n+ 1 nie jest pierwsza to szukamy nowego n jak w p. 1.

Algorytm: Probabilistyczny algorytm wyszukiwania gene-ratorów grupy multiplikatywnej Z∗p

Dane wejściowe: 1. liczba pierwsza p2. rozkład na czynniki pierwsze liczbyp − 1 tzn. takie parami różne liczbypierwsze q1, q2, . . . , qr i liczby natu-ralne k1, k2, . . . , kr ∈ N , że p − 1 == qk11 q

k22 . . . qkrr

Dane wyjściowe: g ∈ Z∗p generator grupy multiplikatyw-nej Z∗p

g := 1 ;for i := 1 to r do begin

repeat

wybierz losowo z rozkładem równomiernym liczbę a ∈ Z∗p ;szukamy elementu rzędu qkii

b := ap−1qi ;

until (b = 1);

c := a

p−1

qkii ; obliczamy element rzędu qkii

g := (g ∗ c)(mod p); obliczamy iloczyn elementów rzęduqk11 , q

k22 , . . . , q

krr

end;write(”generator =”, g);

Rysunek 1. Probabilistyczny algorytm obliczania generatorów grupymultiplikatywnej Z∗p

Podany sposób doboru liczby pierwszej p do znanego rozkładu na czyn-niki pierwsze liczby p − 1 uzupełniony naszym algorytmem okazuje sięw praktyce skuteczny i prowadzi do znalezienia generatora „jakiejś tam”grupy multiplikatywnej Z∗p . Jednak w wielu praktycznych zastosowaniacho to nam właśnie chodzi.

249

Page 250: Kryptologia i Cyberbezpieczenstwo nr 6

T. Adamski

Zauważmy, że naturalny algorytm obliczania generatora Z∗p , polega-jący na losowym wyborze elementu a ∈ Z∗p i sprawdzeniu czy kolejne potęgia1, a2, . . . , ap−1 wyczerpują zbiór elementów grupy Z∗p , ma wykładniczązłożoność obliczeniową. Nie jest to więc algorytm, który nadaje się dladużych liczb pierwszych.

3. Uzasadnienie poprawności algorytmu

Kluczowe dla uzasadnienia poprawności algorytmu są następującetwierdzenia z teorii grup.

Twierdzenie 2. Grupa multiplikatywna ciała skończonego GF (pk) jestgrupą cykliczną rzędu pk − 1.

Dowód. por. np. N. Koblitz [2], C. Bagiński [3].

Twierdzenie 3. Każda podgrupa grupy cyklicznej jest cykliczna

Dowód. por. np. N. Koblitz [2], C. Bagiński [3].

Twierdzenie 4. Jeśli liczba naturalna d jest dzielnikiem rzędu skończonejgrupy cyklicznej G to istnieje dokładnie jedna podgrupa rzędu d grupy G.

Dowód. por. np. N. Koblitz [2], C. Bagiński [3]. Prostym wnioskiem z twierdzeń 3 i 4 jest następujące twierdzenie 5

Twierdzenie 5. Jeśli liczba naturalna d jest dzielnikiem rzędu skończonejgrupy cyklicznej G to istnieje w grupie G element rzędu d.

Zasadnicze dla poprawności algorytmu są następujące dwa twierdze-nia: 6 i 7 o rzędzie elementu grupy G.

Twierdzenie 6. Niech G będzie grupą i niech a będzie elementemgrupy G. Niech ponadto dla pewnej liczby pierwszej p i pewnej liczby e ∈ Nmamy

ape

= 1 (1)

ap(e−1)

= 1 (2)

wówczas element a ma rząd pe.

Dowód. Jeśli m jest rzędem elementu a ∈ G to ponieważ, ape

= 1, zatemm|pe. Zatem m = pf dla pewnego f ∈< 0, e >. Jeśli f < e to ap

f

= 1i również ap

e−1= 1 co jest sprzeczne z założeniem, że ap

e−1 = 1. Zatemf = e i element a ma rząd pe.

250

Page 251: Kryptologia i Cyberbezpieczenstwo nr 6

Średnia złożoność obliczeniowa probabilistycznego algorytmu wyszukiwania . . .

Twierdzenie 7. Niech G będzie grupą abelową. Jeśli g1, g2, . . . gn ∈ G,oraz si jest rzędem elementu gi dla i = 1, 2, . . . n oraz NWD(si, sj) = 1dla każdego i, j ∈ N , i = j, (mówimy, że liczby s1, s2, . . . sn są paramiwzględnie pierwsze) to rząd iloczynu g1 ·g2 · . . . ·gn jest równy s1 ·s2 · . . . ·sn.

Dowód. Wystarczy twierdzenie wykazać dla n = 2 i następnie zastosowaćindukcję względem n. Niech 1 będzie jednością grupy a k rzędem elementug1g2. Jeśli (g1g2)k = 1 to (g1g2)(k ·s1) = 1 dla i = 1, 2 skąd mamy gk·s21 = 1oraz gk·s12 = 1. Zatem k ·s2 jest podzielne przez s1 oraz k ·s1 jest podzielneprzez s2.

Ponieważ NWD(s1, s2) = 1, zatem k musi być podzielne przez s1 i s2,a zatem również przez iloczyn s1 · s2. Zatem rząd iloczynu g1 · g2 czyli kdzieli się przez s1 · s2. Mamy jednak (g1g2)s1·s2 = 1 skąd wynika, że s1 · s2dzieli się przez k, a więc rząd iloczynu g1g2 jest równy s1 · s2.

Z twierdzenia 2 wynika, że grupa multiplikatywna Z∗p jest grupą cy-kliczną rzędu p− 1. Z kolei z twierdzenia 5 będącego bezpośrednim wnio-skiem z twierdzeń 3 i 4 wynika, że w grupie Z∗p dla każdego dzielnika d

liczby p − 1 = qk11 · qk22 . . . qkrr istnieje element rzędu d a w szczególności

element rzędu qkii .W pętli repeat. . .until szukamy dla każdego i = 1, 2, . . . r elementu

rzędu qkii (stosując kryterium oparte na twierdzeniu 6). Taki elementai ∈ Z∗p w grupie multiplikatywnej Z∗p dla każdego i = 1, 2, . . . r napewno istnieje ponieważ qkii jest dzielnikiem rzędu grupy Z∗p czyli liczbyp−1 = qk11 ·q

k22 · . . . qkrr . Każda pętla repeat. . .until wykrywająca element

rzędu qkii ma więc szanse by się skończyć.

Jeśli bi = a(p−1)/qki

ii (mod p) = 1 to element bi = a

(p−1)/qkii

i (mod p) = 1ma na mocy twierdzenia 6 rząd równy qkii .

Ponieważ liczby qk11 , qk22 , q

krr są parami względnie pierwsze, na mocy

twierdzenia 7, dostajemy, że element (iloczyn) będący wynikiem obliczeńalgorytmu czyli

r∏i=1

a(p−1)/qki

ii (mod p)

ma rząd równy qk11 · qk22 · . . . · qkrr co dowodzi poprawności algorytmu.

Liczbę generatorów skończonej grupy cyklicznej łatwo obliczyć korzy-stając z następującego twierdzenia.

Twierdzenie 8. Jeśli G jest skończoną grupą cykliczną rzędu n i g jestjej generatorem tej grupy to dla każdego k ∈< 1,#G− 1 >:

gk jest generatorem grupy G wtedy i tylko wtedy NWD(k, n) = 1

251

Page 252: Kryptologia i Cyberbezpieczenstwo nr 6

T. Adamski

Dowód. por. C. Bagiński [3]. Zatem liczba wszystkich generatorów skończonej grupy cyklicznej jest

równa φ(#G), gdzie φ jest funkcją Eulera. W szczególności jeśli grupa mul-tiplikatywna Zn jest cykliczna, to ma φ(φ(n)) generatorów. Grupa multi-plikatywna Z∗p jako grupa cykliczna o φ(p) = p − 1 elementach ma więc

dokładnie φ(φ(p)) = φ(p − 1) generatorów. Iloraz φ(p−1)p−1 pozwala oce-nić prawdopodobieństwo wylosowania generatora przy losowaniu elementuz Z∗p z rozkładem równomiernym.

4. Ocena średniej złożoności obliczeniowej algorytmu

Dla praktycznej użyteczności algorytmu ważna jest jego średnia zło-żoność obliczeniowa. Ocenimy średnią złożoność obliczeniową algorytmuz rys. 1 przy założeniu, że zmienna losowa dokonująca wyboru elementuz grupy multiplikatywnej ∗p (wewnątrz pętli repeat. . .until) ma rozkładrównomierny na Z∗p .

Twierdzenie 9. (o homomorfizmie grup) Niech będą dane 2 grupy G1i G2, niech ponadto H będzie dzielnikiem normalnym grupy G1 a f :G1 −→ G2 homomorfizmem grupy G1 na grupę G2 przy czym H ⊆ ker f .Wówczas istnieje dokładnie jeden taki homomorfizm f0 : G1/H −→ G2,że f0 κ = f , gdzie κ jest homomorfizmem kanonicznym G1 na G1/H.Innymi słowy istnieje dokładnie jeden homomorfizm f0 : G1/H −→ G2,taki że diagram

jest przemienny. W przypadku, gdy h = ker f homomorfizm f0 jestizomorfizmem.

Dowód. por. np. A. Białynicki [9], C. Bagiński [3].

Z powyższego twierdzenia wynika jako prosty wniosek twierdzenie na-stępujące.

252

Page 253: Kryptologia i Cyberbezpieczenstwo nr 6

Średnia złożoność obliczeniowa probabilistycznego algorytmu wyszukiwania . . .

Twierdzenie 10. Niech grupa G1 będzie skończona i niech H ⊆ G1 bę-dzie dzielnikiem normalnym grupy G1. Jeśli zmienna losowa X określonana przestrzeni probabilistycznej (Ω,M, P ) i o wartościach w przestrzenimierzalnej (G1, 2G1) ma rozkład równomierny na G1 to1. Zmienna losowa κ X o wartościach w przestrzeni mierzalnej

(G1/H,F), (gdzie F = 2G1/H i κ : G1 → G1/H jest homomorfizmemkanonicznym na grupę ilorazową G1/H) ma rozkład równomierny nagrupie ilorazowej G1/H oraz dla każdego k = 1, 2, . . . , #G1#H mamy:

P (κ X = Hk) =#H#G1

,

gdzie Hk jest k-tą warstwą grupy ilorazowej G1/H.

2. Jeśli dodatkowo mamy grupę skończoną G2 i homomorfizm f : G1 →G2 grupy G1 na G2 oraz ker f = H to zmienna losowa f(X) marozkład równomierny na G2.

Dowód. Część 1 tezy twierdzenia wynika z twierdzenia Lagrange’a i z faktu,że wszystkie warstwy grupy ilorazowej G1 mają tyle samo #H elementów.Część 2-ga tezy jest bezpośrednią konsekwencją twierdzenia o homomorfi-zmie grup.

Rozważmy teraz odwzorowanie fi : Z∗p → Z∗p zadane dla a ∈ Z∗pi każdego i ∈< 1, r > wzorem

fi(a) = ap−1qi (mod p)

Łatwo sprawdzić, że fi jest homomorfizmem grupy Z∗p w grupę Z∗p . Istotnie,ponieważ Z∗p jest grupą abelową mamy dla każdego a, b ∈ Z∗p

fi(a · b) = (a · b)(p−1)/qi(mod p)

= (a(p−1)/qi(mod p) · b(p−1)/qi(mod p))(mod p) = fi(a) · fi(b)

Obraz homomorficzny grupy jest grupą zatem fi(Z∗p ) ⊆ Z∗p jest grupąa ściślej podgrupą grupy Z∗p . Oczywiście fi(Z∗p ) jest grupą cykliczna jakopodgrupa grupy cyklicznej. Łatwo ustalić rząd tej grupy, bo jeśli g jestgeneratorem grupy Z∗p to elementami grupy fi(Z∗p ) będą elementy:

fi(g1), fi(g2), . . . , fi(gp−1)

253

Page 254: Kryptologia i Cyberbezpieczenstwo nr 6

T. Adamski

czyli mamy po kolei qi wartości

g(p−1)·1/qi(mod p), g(p−1)·2/qi(mod p), . . . , g(p−1)·qi/qi(mod p)

które są parami różne (bo g jest generatorem grupy Z∗p a wykładniki potęgsą różnymi liczbami naturalnymi należącymi do zbioru < 1, p− 1 >).

Oczywiście ostatnia wartość: g(p−1)·qi/qi(mod p) = gp−1(mod p) = 1ponieważ p − 1 jest rzędem grupy Z∗p . Rozważmy teraz wszystkie po-zostałe interesujące nas wartości potęg elementu g(p−1)/qi(mod p) tzn.g(p−1)·s/qi(mod p) dla wykładników s ∈< qi, p − 1 >. Dla każdego s ∈<qi, p− 1 > istnieją takie k ∈ N , z ∈< 0, qi − 1 >, że s = z + k · qi.

Z uwagi jednak na fakt, że g(p−1)·qi/qi(mod p) = gp−1(mod p) = 1,wszystkie wartości potęg dla wykładników s ∈< qi + 1, p − 1 > musząnależeć do qi elementowego zbioru

g(p−1)·1/qi(mod p), g(p−1)·2qi/qi(mod p), . . . , g(p−1)·qi/qi(mod p)

Reasumując, fi(Z∗p ) jest podgrupą rzędu qi grupy multiplikatywnejZ∗p . Jeśli przyjmiemy teraz G1 = Z∗p i G2 = fi(Z∗p ) a jako homomorfizmgrupy G1 na G2 przyjmiemy fi a ponadto jeśli zmienna losowa X marozkład równomierny na Z∗p to z twierdzenia 10 dostajemy, że zmiennalosowa fi(X) = X(p−1)/qi(mod p) ma rozkład równomierny na podgrupieG2 ⊂ Z∗p rzędu qi. Zatem prawdopodobieństwo

fi(X) = 1) = P (X(p−1)/qi(mod p) = 1) =qi − 1qi

Prawdopodobieństwo fi(X) = 1) = qi−1qi

jest prawdopodobień-stwem opuszczenia wewnętrznej pętli repeat. . .until (prawdopodobień-stwem sukcesu) dokładnie zaraz po pierwszym losowaniu a.

Niech teraz (Xj)∞j=1 będzie ciągiem niezależnych zmiennych losowychokreślonych na przestrzeni probabilistycznej (Ω,M, P ) i o wartościachw grupie multiplikatywnej Z∗p . Zakładamy, że wszystkie zmienne losoweciągu mają rozkład równomierny na Z∗p (kolejne losowania wartości a ∈ Z∗psą niezależne). Można powiedzieć używając języka cyfrowego przetwarza-nia sygnałów, że ciąg (Xj)∞j=1 jest białym szumem dyskretnym z rozkłademrównomiernym. Jest to proces stochastyczny opisujący losowanie kolejnychelementów wewnątrz pętli repeat. . .until. Warunki wyjścia z i-tej pętlirepeat. . .until opisuje więc teraz proces stochastyczny:

(sgn(fi(Xj)− 1))∞j=1 (3)

254

Page 255: Kryptologia i Cyberbezpieczenstwo nr 6

Średnia złożoność obliczeniowa probabilistycznego algorytmu wyszukiwania . . .

Z poprzednich rozważań wynika, że: Jeśli sgn(fi(Xk) − 1 = 0 to niejest spełniony warunek wyjścia z pętli repeat. . .until (brak sukcesu) oraz

P (sgn(fi(Xk)− 1) = 0) =1qi

Jeśli sgn(fi(Xk) − 1 = 1 to jest spełniony warunek wyjścia z pętlirepeat. . .until (sukces) oraz

P (sgn(fi(Xk)− 1) = 1) =qi − 1qi

W algorytmie z rys. 1 wychodzimy z pętli repeat. . .until natychmiastjak tylko warunek wyjścia zostanie spełniony (pierwszy sukces).

Proces stochastyczny zadany wzorem (3) jest nieskończonym cią-giem prób Bernoulliego z prawdopodobieństwem sukcesu równym qi−1

qi.

Oznaczmy przez Yi zmienną losową o wartościach w zbiorze N ∪ +∞,określoną na przestrzeni probabilistycznej (Ω,M, P ) zdefiniowaną nastę-pująco : dla każdego k ∈ N i każdego ω ∈ Ω

Yi(ω) = k wtedy i tylko wtedy, gdy trajektoria (sgn(fi(Xj(ω)−1))∞j=1)procesu (sgn(fi(Xj − 1))∞j=1) jest taka, że: sgn(fi(X1(ω) − 1)) = 0,sgn(fi(X2(ω)−1)) = 0, . . . , sgn(fi(Xk−1(ω)−1)) = 0, sgn(fi(Xk(ω)−1)) =1, czyli pierwszy sukces (pierwsza jedynka) pojawia się dokładnie w chwilik-tej orazYi(ω) = +∞ wtedy i tylko wtedy, gdy trajektoria (sgn(fi(Xj(ω)− 1))∞j=1),jest ciągiem samych zer.

Łatwo można wykazać, że tak zdefiniowana na przestrzeni probabili-stycznej (Ω,M, P ) funkcja Yi jest istotnie zmienną losową. Zmienna losowaYi ma rozkład geometryczny z prawdopodobieństwem sukcesu qi−1qi tzn. dlakażdego k ∈ N mamy:

P (Yi = k) = (1qi

)k−1 · qi − 1qi

Zmienna losowa Yi przyjmuje wartość k wtedy i tylko wtedy, gdyz i-tego wykonania wewnętrznej pętli repeat. . .until wychodzimy dokład-nie, bezpośrednio po k-tym losowaniu wewnątrz tej pętli.

Wartość oczekiwana zmiennej losowej Yi (czyli średni czas wyjścia z pę-tli) jest równa

E(Yi) =qi

qi − 1≤ 2

255

Page 256: Kryptologia i Cyberbezpieczenstwo nr 6

T. Adamski

a wariancjaD2(Yi) =

qi(qi − 1)2

≤ 2

Czas wykonania wszystkich r pętli repeat. . .until jest opisywanyzmienną losową:

Z = Y1 + Y2 + . . .+ Yr

Zatem średni czas wykonania wszystkich r pętli repeat. . .until jestrówny

E(Z) =r∑i=1

E(Yi) =r∑i=1

qiqi − 1

≤ 2 · r

Ponieważ r jest jednocześnie liczbą różnych liczb pierwszych w rozkła-dzie na czynniki pierwsze liczby p− 1 = qk11 · q

k22 · . . . · qkrr , więc

log2 p > k1 log2 q1 + k2 log2 q2 + . . .+ kr log2 qr ≥ r

Mamy zatem r < log2 p. Wynika stąd, że średnia liczba mnożeńmodulo p wewnątrz wszystkich r pętli repeat. . .until przy wykorzy-staniu algorytmu szybkiego podnoszenia do potęgi modulo p jest rzęduO((log2 p)

2)p. Podobnie liczba mnożeń na zewnątrz pętli repeat. . .untilprzy wykorzystaniu algorytmu szybkiego podnoszenia do potęgi modulo pjest rzędu O((log2 p)

2)p. Zatem średnia złożoność całego algorytmu z rys. 1jest rzędu O((log2 p)

2)p jeśli za działanie dominujące uważamy mnożeniemodulo p. Średnia bitowa złożoność jest natomiast rzędu O((log2 p)

4)p.Zmienne losowe Y1, Y2, . . . , Yr są niezależne, zatem wariancja zmiennej

losowejZ = Y1 + Y2 + . . .+ Yr

jest równa:

D2(Z) = D2(Y1 + Y2 + . . .+ Yr) =r∑i=1

D2(Yi) =r∑i=1

qi(qi − 1)2

Nierozstrzygnięty jest jak dotąd problem jak duży może być najmniej-szy pierwiastek pierwotny dla liczby pierwszej p (chodzi o oszacowanieod dołu i od góry). Jeśli przez r(p) oznaczymy najmniejszy pierwiastekpierwotny dla liczby pierwszej p to znane jest np. oszacowanie od góry:r(p) < p

14+ε dla dowolnego ε > 0. Więcej informacji na ten temat i inne

oszacowania dla najmniejszego pierwiastka pierwotnego z n można znaleźćw pracach A. Paszkiewicza [10] i W. Narkiewicza [4].

256

Page 257: Kryptologia i Cyberbezpieczenstwo nr 6

Średnia złożoność obliczeniowa probabilistycznego algorytmu wyszukiwania . . .

Jeśli zamiast liczby pierwszej p użyjemy w analizowanym algorytmieliczby n dla której istnieje pierwiastek pierwotny to algorytm pozostaniepoprawny. Dane wejściowe oprócz n będzie wówczas stanowił rozkład naczynniki pierwsze liczby φ(n).

Warto zauważyć, że często nie jest nam potrzebny generator grupymultiplikatywnej Z∗p ale element tej grupy dostatecznie wysokiego rzędu.Z rozważań przeprowadzonych w tym podrozdziale wynika, że jeśli mamytylko częściowy rozkład liczby p − 1 na czynniki pierwsze tzn. wiemy, żep−1 = qk11 ·q

k22 ·. . .·qkrr ·a, gdzie q1, q2, . . . , qr są różnymi liczbami pierwszymi

oraz k1, k2, . . . kr, a ∈ N to za pomocą opisanego algorytmu potrafimy zna-leźć w grupie multiplikatywnej Z∗p element rzędu qk11 · q

k22 · . . . · qkrr . Dla

a > 1 nie będzie to generator grupy Z∗p ale może to być element dla naszychcelów dostatecznie wysokiego rzędu. Wiele algorytmów kryptograficznychzaczyna się bowiem tak: ”weźmy element g dostatecznie wysokiego rzędutakiego by problem logarytmu dyskretnego przy podstawie g był praktycz-nie nierozwiązywalny”.

5. Wnioski

Obliczona w rozdziale 4 średnia złożoność obliczeniowa analizowanegoalgorytmu jest zaskakująco mała. Z przedstawionego w rozdziale 3 uza-sadnienia poprawności rozważanego algorytmu wyszukiwania pierwiastkówpierwotnych modulo n wynika, że algorytm działa poprawnie dla dowolnejskończonej grupy cyklicznej G o ile znany jest rozkład na czynniki pierwszerzędu grupy czyli liczby #G. Również średnia złożoność obliczeniowa tegoalgorytmu daje się w analogiczny sposób jak w rozdziale 4 oszacować przezO(log2#G)2.

Spis oznaczeń

N – zbiór liczb naturalnychZ – zbiór liczb całkowitych< a, b > – zbiór k ∈ Z : a ≤ k ≤ b, gdzie a, b ∈ ZZ∗n – grupa multiplikatywna pierścienia ZnCn – grupa cykliczna rzędu nG1 ×G2 – suma prosta grup G1 i G22A – zbiór wszystkich podzbiorów zbioru A(Ω,M, P ) – przestrzeń probabilistycznaφ – funkcja EuleraE(X) – wartość oczekiwana zmiennej losowej X

257

Page 258: Kryptologia i Cyberbezpieczenstwo nr 6

T. Adamski

D2(X) – wariancja zmiennej losowej XNWD(n,m) – największy wspólny dzielnik n i m#G – rząd grupy G< A > – grupa generowana przez zbiór Ad|n– d jest dzielnikiem nker f – jądro homomorfizmu f

Literatura

[1] V. Shoup, A computational Introduction to Number Theory and Al-gebra, Cambridge University Press, 2008.

[2] N. Koblitzc, A Course in Number Theory and Cryptography, Sprin-ger, New York 1994.

[3] C. Bagiński, Introduction to Group Theory (in Polish), Script, War-szawa 2002.

[4] W. Narkiewicz, Number Theory (in Polish), PWN. Warszawa, 1990.[5] A. Menezes, P. Oorschot, S. Vanstone, Handbook of ApplledCryptography, CRC Press Inc., 1997.(http://cacr.math.uwaterloo.ca/hac).

[6] D. Hankerson, A. Menezes, S. Vanstone, Guide to Elliptic CurveCryptography, Springer, 2004.

[7] S. Yan; Number Theory for Computing, Springer, Berlin-Heidel-berg, 2002.

[8] J. Pieprzyk, T. Hardjono, J. Seberry, Fundamentals of Compu-ter Security, Springer, Berlin, Heidelberg, 2003.

[9] A. Białynicki, Algebra, Warszawa, PWN, 2010.[10] A. Paszkiewicz, Badania własności liczb pierwszych i wielomianównieprzywiedlnych pod kątem zastosowania w telekomunikacji, OficynaWydawnicza P.W.; Warszawa 2012.

THE AVERAGE COMPLEXITY OF THEPROBABILISTIC ALGORITHM FOR FINDING

PRIMITIVE ROOTS MODULO n

Abstract. Primitive roots from a natural number n (i.e. generators of the multipli-cative group Z∗n) play an important role in many cryptographic algorithms like publickey ciphers, digital signatures and key agreement algorithms. In the paper, proof ofcorrectness of the probabilistic algorithm for finding primitive roots is given along withassessment of its average computational complexity. Results obtained for the multipli-cative group Z∗n can be in natural easy way generalized on the case of arbitrary finitecyclic groups.

Keywords: cryptographic algorithms, probabilistic algorithms, average computationalcomplexity, primitive roots modulo n, cyclic groups.

Page 259: Kryptologia i Cyberbezpieczenstwo nr 6

ZASTOSOWANIE FUNKCJI LW KRYPTOLOGII

Jerzy Kaczorowski

Wydział Matematyki i Informatyki UAM, Poznań,Instytut Matematyczny PAN, Warszawa

Streszczenie. Bezpieczeństwo asymetrycznych systemów kryptologicznych opiera sięna założeniu, że istnieją funkcje jednokierunkowe. Fakt ten nie został do tej pory ści-śle udowodniony. Nie mniej jednak pewne trudne obliczeniowo problemy teorii liczb,takie jak na przykład problem faktoryzacji, czy też problem obliczania logarytmu dys-kretnego w skończonych grupach abelowych, mogą być podstawą konstrukcji funkcjiuważanych za jednkierunkowe. Idea wykorzystania w tym konstekście funkcji typu L(elementów klasy Selberga) pojawiła się po raz pierwszy w pracy M. Anshela i D. Gold-felda z 1997 roku. Ich przydatność ilustrujemy na przykladzie protokołu uwierzytelnieniaprzy użyciu współczynników Dirichleta funkcji L oraz eliptycznego generatora pseudo-losowego. Na zakończenie przedstawiamy propozycję innego typu, a mianowicie opisprotokołu rzutu monetą przez telefon opartego na wykorzystaniu nietrywialnych zerfunkcji L.

Słowa kluczowe: funkcje jednokierunkowe, funkcje L, klasa Selberga.

1.

Znaczenie teorii liczb dla kryptologii stało się ważne z chwilą poja-wienia się systemów asymetrycznych. Ich bezpieczeństwo opiera się na za-łożeniu, że istnieją funkcje jednokierunkowe, których wartości mogą byćefektywnie obliczane, natomiast przeciwobrazy – nie. Istnienie takich funk-cji nie zostało jeszcze ściśle udowodnione, nie mniej jednak znane są przy-kłady, które najprawdopodobniej prowadzą do funkcji jednokierunkowych.Jednym z nich jest zwyczajne mnożenie liczb naturalnych. Może być onoszybko i efektywnie (w czasie wielomianowym) wykonane, natomiast opera-cja odwrotna, to znaczy rozkład liczby naturalnej na czynniki, jest znacznietrudniejsza i w chwili obecnej nie wiadomo, czy istnieje działający wie-lomianowo algorytm rozwiązujący to zagadnienie. Innym standardowymprzykładem trudnego obliczeniowo problemu, na którym oparte są niektóreasymetryczne systemy kryptologiczne jest zagadnienie logarytmu dyskret-nego w grupach. Z tego punktu widzenia szczególnie ciekawa jest teoriakrzywych eliptycznych nad ciałami skończonymi, głównie ze względu na

Praca częściowo sfinansowana ze środków projektu badawczego nr

2013/11/B/ST1/02799 Narodowego Centrum Nauki

Page 260: Kryptologia i Cyberbezpieczenstwo nr 6

J. Kaczorowski

łatwość generowania grup abelowych o dobrych własnościach kryptologicz-nych.

Zasadnicze ograniczenia w konstrukcji nowych asymetrycznych syste-mów szyfrowania wynikają z faktu, że znanych jest stosunkowo niewielefunkcji, które są prawdopodobnie jednokierunkowe. Najpopularniejsze towspomiane wyżej operacje związane z problemem faktoryzacji oraz loga-rytmu dyskretnego. Niniejsza praca ma na celu zareklamowanie innej ro-dziny o potencjalnie dużym znaczeniu kryptologicznym związanej z wyko-rzystaniem dobrze znanych w teorii liczb funkcji typu L. Idea ta pojawiłasię po raz pierwszy w pracy M. Anshela i D. Goldfelda z 1997 roku ([1]),do której będziemy się wielokrotnie odwoływać.

Przykład 1. (Uwierzytelnianie przy pomocy charakterów Dirichleta, por.[1]). Zakładamy, że Alicja jest użytkownikiem pewnego systemu, a Bob jestosobą mającą stwierdzić, czy jest ona użytkownikiem uprawnionym. Zakła-damy, że każdy uprawniony użytkownik zna (tajny) charakter Dirichletaχ(modq). Schemat uwierzytelniania jest wtedy następujący: Bob do Alicjiwysyła dwie losowo wybrane liczby całkowite m oraz b > 0, a w odpowiedziAlicja do wysyła Boba wektor v = (χ(m), χ(m+1), . . . , χ(m+b)). Bob we-ryfikuje otrzymaną listę i jeżeli jest poprawna, to potwierdza tożsamość Ali-cji. Procedurę moża iterować dla większego bezpieczeństwa. Nietrywialnymprzykładem charakteru Dirichleta jest symbol Kroneckera χ =

(d·). Pod-

stawowe wiadomości o charakterach Dirichleta, a w szczególności o symboluKroneckra czytelnik znajdzie na przykład w [4]. Wiara w to, że przedsta-wiony prosty schemat uwierzytelniania jest bezpieczny opiera się na nastę-pującej hipotezie, którą dla prostoty przedstawiamy w szczególnym przy-padku, gdy rozważany charakter jest symbolem Kroneckera.

Hipoteza. (Anshel-Goldfeld [1]) Dla dostatecznie dużej liczby rzeczywi-stej X oraz ustalonych A i B (niezależnych od X) projekcja

[X, 2X] ∋ d 7→((

d

m

),

(d

m+ 1

), . . . ,

(d

m+ b

)),

gdzieb ≥ (logX)A, m ≤ (logX)B

jest funkcją jednokierunkową.

Podobną hipotezę można wypowiedzieć w odniesieniu do dowolnegopierwotnego charakteru Dirichleta o dostatecznie dużym przewodniku.Istota sprawy w rozważanym przykładzie jest taka, że wartości symbolu

260

Page 261: Kryptologia i Cyberbezpieczenstwo nr 6

Zastosowanie funkcji L w kryptologii

Kroneckera, lub ogólniej ustalonego charakteru Dirichleta, mogą być obli-czane szybko, natomiast rozpoznanie, o który charakter chodzi znając tylkopewną liczbę jego wartości (dość dużą, ale znaczaco mniejszą od przewod-nika) jest zagadnieniem trudnym obliczeniowo. W każdym razie nie znamyżadnego efektywnego algorytmy rozwiązującego to zagadnienie. Krótko mó-wiąc do naszej dotychczasowej listy problemów obliczeniowo trudnych (fak-toryzacjia, logarytm dyskretny) dołączamy następny, a mianowicie identy-fikację charakteru Dirichleta przy znajomości pewnej liczby jego wartościprzyjmowanych na kolejnych liczbach całkowitych.

Zauważmy, że charakter Dirichleta χ(modq) jednoznacznie wyznaczafunkcję L Dirichleta, zdefiniowaną dla liczb zespolonych s = σ + it, σ > 1wzorem

L(s, χ) =∞∑n=1

χ(n)ns

,

a dla pozostałych s poprzez przedłużenie analityczne. Odwrotnie, każdafunkcja L Dirichleta jednoznacznie wyznacza pewien charakter. W związkuz tym poprzedni przykład można uogólnić następująco. Alicja i Bob usta-lają (tajną) L-funkcję (Re (s) > 1):

L(s) =∞∑n=1

aL(n)ns

,

a następnie postępują w sposób analogiczny do wcześniej omówionego. Bobprzesyła Alicji losowo wybrane liczby naturalne m i b, a w odpowiedziotrzymuje wektor współczynników v = (aL(m), aL(m+ 1), . . . , aL(m+ b)).Jeżeli lista Alicji jest poprawna, to jest ona uprawnionym użytkownikiemsystemu.

Jest jasne, że funkcja L użyta w tym uogólnieniu musi spełniać na-stępujące dwa warunki. Po pierwsze, jej współczynniki Dirichleta powinnybyć łatwe do wyznaczania i po drugie, problem identyfikacji samej funkcjiL powinien być obliczeniowo trudny. Niewątpliwą korzyścią z dopuszczeniado rozważań ogólnych funkcji L jest uzyskanie znacznej swobody w kon-strukcjach kryptologicznych. Związane jest to z obszernością klasy znanychfunkcji L.

Należy zacząć od sprecyzowania tego pojęcia i odpowiedzieć na z po-zoru proste pytanie: co to jest funkcja L? Paradoksalnie udzielenie zadawa-lającej odpowiedzi nie jest proste. W tym artykule przez funkcję L będzienyrozumieć nietrywialny elemant klasy Selberga.

Definicja. (Selberg, 1989, (por. [22])). Funkcja F należy do klasy Selbergawtedy i tylko wtedy, gdy F (s) =

∑∞n=1

a(n)ns , gdzie:

261

Page 262: Kryptologia i Cyberbezpieczenstwo nr 6

J. Kaczorowski

1. szereg Dirichleta jest bezwzględnie zbieżny dla σ := Re (s) > 1.2. (Przedłużenie analityczne) Istnieje liczba całkowita m ≥ 0 taka, że

(s− 1)mF (s) jest funkcją całkowitą skończonego rzędu.3. (Równanie funkcyjne)

Φ(s) = ωΦ(1− s),

gdzie

Φ(s) = Qsr∏j=1

Γ (λjs+ µj)F (s) = γ(s)F (s),

dla pewnych r ≥ 0, Q > 0, λj > 0, Reµj ≥ 0, |ω| = 1.4. (Postulat Ramanujana) Dla każdego ε > 0 mamy a(n)≪ nε, to znaczy

istnieje stała A(ε) taka, że dla n ≥ 1 mamy |a(n)| ≤ A(ε)nε.5. (Iloczyn Eulera) Dla σ > 1 mamy

logF (s) =∑n

b(n)n−s,

gdzie b(n) = 0 dla n = pm oraz b(n)≪ nθ dla pewnego θ < 1/2.Klasę Selberga oznaczamy symbolem S. Funkcja tożsamościowo równa 1jest w sposób oczywisty elementem klasy Selberga. Jest to jednak przykładnieciekawy z punktu widzenia kryptologii. Przez nietrywialne elementy Srozumiemy funkcje F ≡ 1. Przegląd podstawowych własności klasy Sel-berga czytelnik znajdzie w [14]. Czasami wygodnie jest rozważać większyzbiór szeregów Dirichleta, a mianowicie tak zwaną rozszerzoną klasę Sel-berga S#. Jest to zbiór funkcji F ≡ 0 spełniających aksjomaty (1), (2)i (3).

Przykład 2. (Elementy klasy Selberga).1. Funkcja dzeta Riemanna ζ(s), por. [24], [11];2. przesunięta funkcja L Dirichleta L(s+ iθ, χ), gdzie χ jest pierwotnym

charakterem Dirichleta (modq), q > 1, a θ jest liczbą rzeczywistą,por. [4], [19];

3. ζK(s), funkcja dzeta Dedekinda ciała liczb algebraicznych K, por. [18];4. LK(s, χ), funkcja L Hecke’go z pierwotnym charakterem Hecke’goχ(modf), f jest ideałem pierścienia liczb algebraicznych całkowitychciała K, por. [18];

5. funkcje L holomorficznych nowych form podgrup kongruencyjnychgrupySL2(Z) (po odpowiednim znormalizowaniu). Jest to wniosek

262

Page 263: Kryptologia i Cyberbezpieczenstwo nr 6

Zastosowanie funkcji L w kryptologii

z klasycznej teorii Hecke’go (por. [12], [17]) oraz słynnego twierdze-nia P. Deligne’a [5];

6. funkcje L wymiernych krzywych eliptycznych. Jest to wniosek po-przedniego przykładu w połączeniu z twierdzeniem A. Wilesa ([26],[25], [2]);

7. sploty Rankina-Selberga znormalizowanych holomorficznych nowychform, por. [12], [17];

8. F,G ∈ S ⇒ FG ∈ S (podobnie dla S#)9. Jeżeli F ∈ S jest całkowita to jej przesunięcie Fθ(s) = F (s + iθ) jest

elementem S dla każdej liczby rzeczywistej θ.W pewnych przypadkach nie potrafimy stwierdzić, czy klasyczna funkcjaL jest elementem klasy Selberga. Najczęściej prawdopodobnie tak jest, aleodpowiedź zależy od przyjęcia pewnych (klasycznych) hipotez.

Przykład 3. (Warunkowe elementy klasy Selberga).1. Funkcje L Artina nieprzywiedlnych reprezentacji grup Galois (modulo

hipoteza Artina: brakuje dowodu istnienia przedłużenia do funkcji ho-lomorficznej na C), por. [16];

2. funkcje L nieholomorficznych nowych form modularnych (problemyz postulatem Ramanujana), por. [3];

3. potęgi symetryczne, np. dla znormalizowanych holomorficznych no-wych form:

L(s) =∏p

(1− ap

ps

)−1(1− bp

ps

)−1r-ta potęga symetryczna:

Lr(s) =∏p

r∏j=0

(1− ajpbr−jp p−s)−1

(modulo hipoteza Langlandsa o funktorialności);4. ogólniej: funkcje L reprezentacji automorficznych GLn(K) (problemy

z postulatem Ramanujana), por. [3].Standardowymi przykładami funkcji L z rozszerzonej klasy Selberga sąkombinacje liniowe elementów klasy Selberga spełniające to samo równaniefunkcyjne. Klasycznym przykładem jest funkcja Davenporta-Heilbronna

L(s) = λL(s, χ1) + λL(s, χ1),

263

Page 264: Kryptologia i Cyberbezpieczenstwo nr 6

J. Kaczorowski

gdzie χ1 charakterem Dirichleta mod5 takim, że χ1(2) = i, a stała λ danajest wzorem

λ =12

(1 + i

√10− 2

√5− 2√

5− 1

).

Równanie funkcyjne tej funkcji jest postaci(π5

) s2Γ

(s+ 1

2

)L(s) =

(π5

) 1−s2Γ

(2− s

2

)L(1− s).

Nie wszystkie funkcje L z klasy Selberga jednakowo dobrze nadająsię do zastosowań kryptologicznych. W niektórych przypadkach przeszkodąmoże być na przykład brak algorytmów szybkiego obliczania ich współczyn-ników Dirichleta. Tak jest na przykład dla pewnych rozmaitości abelowychnad ciałami skończonymi (por. [8]).

2. Eliptyczne generatory pseudolosowe

Niech E oznacza krzywą eliptyczną nad Q daną równaniem Weier-strassa

E : y2 = x3 + ax+ b

a, b ∈ Z , ∆E := 4a3 + 27b2 = 0.

Dla liczb pierwszych p |∆E równanie

y2 ≡ x3 + ax+ b(modp)

definiuje krzywą eliptyczną nad p-elementowym ciałem skończonym Fp.Dla p |∆E kładziemy

aE(p) = p+ 1−#E(Fp).Z cytowanego już wcześniej twierdzenia A. Wilesa otrzymujemy jako wnio-sek następujący wynik o podstawowym znaczeniu.

Twierdzenie 1. Istnieją jednoznacznie wyznaczone liczby całkowiteaE(p), p|∆E takie, że

L(s, E) =∏p|∆E

(1− aE(p)

ps

)−1 ∏p |∆E

(1− aE(p)

ps+ p1−2s

)−1(iloczyn zbieżny dla Re (s) > 3/2) ma przedłużenie do funkcji holomorficz-nej na całej płaszczyźnie zespolonej i spełnia następujące równanie funk-cyjne:

QsΓ (s)L(s,E) = ωQ2−sΓ (2− s)L(2− s, E)

gdzie, ω = ±1.

264

Page 265: Kryptologia i Cyberbezpieczenstwo nr 6

Zastosowanie funkcji L w kryptologii

Twierdzenie 2.1. Dla Re (s) > 3/2 funkcja L(s, E) jest określona przez bezwzględniezbieżny szereg Dirichleta

L(s,E) =∞∑n=1

aE(n)ns

.

2. Współczynniki aE(n) są liczbami całkowitymi.3. Dla n ≥ 1 mamy |aE(n)| ≤

√nd(n) (jest to znane twierdzenie

Hasse’go, por. np. [10]).4. Współczynniki aE(pk) mogą być obliczone w czasie wielomianowym(por. Schoof [21]).

5. L(s+ 12 , E) ∈ S.

Twierdzenie 3. Niech a, b ∈ Z będą takie, że 4a3 + 27b2 = 0, oraz ciałorozkładu wielomianu

X3 + aX + b ∈ Q[X]

ma nad Q stopień równy 6. Wtedy gęstość liczb pierwszych p, dla których2|aE(p) wynosi 2/3:

limx→∞

1π(x)

∑p≤x

2|aE(p)

1 =23.

Dowód tego twierdzenia można znaleźć w [1]. Z założenia o stopniuciała rozkładu wynika łatwo, że grupa Galois wielomianu X3 + aX + bjest grupą S3 symetryczną trzech elementów. Pierwszym fundamentalnymfaktem użytym w dowodzie Twierdzenia jest twierdzenie Serre’a o obraziereprezentacji tej grupy indukowanej przez jej działanie na zbiorze punk-tów krzywej eliptycznej ustalonego rzędu ([23]). Drugim faktem używanymw dowodzie jest słynne twierdzenie Czebotarewa o gęstości, por. [15].

Pokażemy teraz jak funkcje L krzywych eliptycznych mogą być wyko-rzystane do konstrukcji generatorów pseudolosowych. W pierwszym krokuprocedury ustalamy liczby a, b ∈ Z takie, że

1. 4a3 + 27b2 = 0,2. ciało rozkładu wielomianu X3 + aX + b ma stopień 6 nad Q.

Para (a, b) jest zalążkiem ciągu pseudolosowego. Następnie rozważamykrzywą eliptyczną E daną równaniem Weierstrassa

y2 = x3 + ax+ b

265

Page 266: Kryptologia i Cyberbezpieczenstwo nr 6

J. Kaczorowski

oraz odpowiadającą jej funkcję L(s,E). Redukując modulo 2 współczynnikiszeregu Dirichleta tej funkcji odpowiadające liczbom pierwszym otrzymu-jemy ciąg binarny

(aE(p1)(mod2), aE(p2)(mod2), . . .).

Z ostatniego twierdzenia wnioskujemy, że jest to ciąg pseudolosowy z roz-kładem prawdopodobieństwa (1/3, 2/3), to znaczy ciąg, w którym praw-dopodobieństwo wystąpienia cyfry 0 jest równe 2/3, a cyfry 1 równe 1/3.

Problem: zastosować podobną procedurę do innych funkcji typu L.

3. Rzut monetą przez telefon

Dotychczas opisane w literaturze zastosowania kryptologiczne funkcjiL oparte są głównie na użyciu ich współczynników Dirichleta. Wydaje sięjednak, że jest to jedynie fragment potencjalnych możliwości. Na zakończe-nie tej krótkiej notki przedstawimy propozycję innego typu, a mianowicieopis protokołu rzutu monetą przez telefon opartego na wykorzystaniu nie-trywialnych zer funkcji L.

Czynności przygotowawczeKrok I: Alicja wybiera:(a) funkcję L,(b) parametry T, x ∈ R, N ∈ N ( N ∼ T θ, θ > 1/2),(c) zbiór E ⊂ [0, 1) o mierze Jordana 1/2.

Krok II: Alicja oblicza kolejne nietrywialne zera ρ1, ρ2, . . . , ρN funkcji L(s)na prostej σ = 1/2:

ρj =12

+ iγj

T ≤ γ1 ≤ γ2 ≤ . . . ≤ γN .

Algorytm

Bob: wysyła do Alicji losowo wybraną liczbę całkowią 1 ≤ m ≤ N .Alicja: zwraca εm ∈ 0, 1 obliczone następująco:

εm =

1 gdy ∥xγm∥ ∈ E,0 w przeciwnym wypadku,

gdzie dla liczby rzeczywistej α, symbol ||α|| oznacza jej część ułamkową.Jeżeli εm = 1, wynikiem rzutu monetą jest ORZEŁ,

266

Page 267: Kryptologia i Cyberbezpieczenstwo nr 6

Zastosowanie funkcji L w kryptologii

Jeżeli εm = 0, wynikiem rzutu monetą jest RESZKA.

Weryfikacja

Bob może zweryfikować poprawność rzutów, gdy Alicja ujawni L, T , xoraz E.

Zasadniczym faktem leżącym u podstaw powyższego protokołu jestekwipartycja części urojonych nietrywialnych zer funkcji L. Pierwszy bez-warunkowy wynik w tym kierunku uzyskał E. Hlawka w przypadku funkcjidzeta Riemanna. Niech 0 < γ1 ≤ γ2 ≤ . . . będą dodatnimi częściami uro-jonymi nietrywialnych zer tej funkcji.

Twierdzenie 4. ([9]) Dla każdej liczby rzeczywistej x = 0 ciąg (xγk) maekwipartycję (mod 1) w sensie H. Weyla:

∀0≤a<b<1#k ≤ N : a ≤ ||xγk|| < b ∼ (b− a)N

przy N →∞.

Twierdzenie to było następnie wielokrotnie uogólniane i wzmacniane,por. np. P.D.T.A. Elliott [6], A. Fujii [7], H. Rademacher [20]. Dla potrzebomawianego zastosowania kryptologicznego najodpowiedniejsze będzie po-służenie się tak zwaną A-ekwipartycją (mod 1), pojęcem wprowadzonymw [13]. Dla ustalenia uwagi ograniczymy się do przypadku funkcji L Diri-chleta, chociaż nie ma zasadniczych trudności, aby potrzebne twierdzeniauzyskać dla znacznie ogólniejszej klasy funkcji L. Ustalmy charakter Diri-chleta χ oraz uszeregujmy części urojone nietrywialnych zer L(s, χ) w po-rządku niemalejącym (z uwzględnieniem krotności): 0 < γ1 ≤ γ2 ≤ . . .,a następnie rozważmy następującą dodatnią macierz Toeplitza:

A = [ank]n,k≥1

ank =1Sne−γkγnk , Sn =

∞∑k=1

e−γkγnk .

Twierdzenie 5. ([13]) Dla każdej liczby rzeczywistej x = 0 ciąg (xγk)jest A-jednostajnie rozłożony (mod 1), to znaczy

∀0≤a<b<1∑k≥1

a≤∥xγk∥<b

ank → (b− a)

przy N →∞.

267

Page 268: Kryptologia i Cyberbezpieczenstwo nr 6

J. Kaczorowski

Twierdzenie 6. ([13]) Ekwipartycja (mod 1) w sensie Weyla jest typu 1,natomiast A-ekwipartycja jest typu 1/2.

Dokładne wyjaśnienie znaczenia tego twierdzenia, a w szczególnościdefinicję typu ekwipartycji można znaleźć w [13]. Z grubsza rzecz ujmu-jąc fakt, iż A-ekwipartycja ma typ 1/2 oznacza, że jeżeli ciąg (tk), jestA-jednostajnie rozłożony (mod 1), to każdy skończony ciąg

(||tk||)N+Hk=N , H ≥ N1/2+ε

mniej więcej równomiernie wypełnia przedział [0, 1). W szczególności przyN →∞, prawdopodobieństwo tego, że część ułamkowa losowo wybranegowyrazu

tk , N ≤ k ≤ N +N1/2+ε

będzie należała do ustalonego zbioru E ⊂ [0, 1) dąży do miary Jordanazbioru E.

To uzasadnia wybór parametrów w schemacie rzutu monetą przez te-lefon. Założenie N = T θ z θ > 1/2 wystarcza na mocy ostatniego Twier-dzenia. Fakt, że miara Jordana zbioru E ⊂ [0, 1) wynosi 1/2 gwarantujerówność prawdopodobieństw wylosownia orła i reszki

Prob(RESZKA) = Prob(ORZEŁ) = 1/2.

Zmieniając miarę zbioru E otrzymujemy protokół rzutu monetą niesyme-tryczną.

Literatura

[1] M. Anshel, D. Goldfeld, Zeta functions, one-way functions, andpseudorandom number generators, Duke Math. J. 88(1997), 371–390.

[2] C. Breuil, B. Conrad, F. Diamond, R. Taylor, On the modu-larity of elliptic curves over Q: wild 3-adic exercises, J. Amer. Math.Soc. 14 (2001), no. 4, 843–939.

[3] D. Bump, Authomorphic forms and representations, Cambridge Uni-versity Press, Cambridge 1997.

[4] H. Davenport, Multiplicative number theory, 2nd ed. Springer,Berlin-Heidelberg 1980.

[5] P. Deligne, Formes modulaires et reprsentations l-adiques, SeminaireBourbaki vol. 1968/69 Exposes 347-363, Lecture Notes in Mathematics179, Berlin, New York: Springer-Verlag, 1971.

268

Page 269: Kryptologia i Cyberbezpieczenstwo nr 6

Zastosowanie funkcji L w kryptologii

[6] P. D. T. A. Elliott, The Riemann zeta function and coin tossing,J. Reine Angew. Math. 254 (1972), 100–109.

[7] A. Fujii, On the zeros of Dirichlet L-functions, III, IV Trans. Amer.Math. Soc. 219 (1976), 347–349; J. Reine Angew. Math. 286(287)(1976), 139–143.

[8] J. von zur Gathen, M. Karpinski, I, Shparlinski, Counting co-urves and their projections , in Proceedings of the 25th Annual Sympo-sium on Theory of Computing, Association for Computing Machinery,New York, 1993, 805–812.

[9] E. Hlawka, Uber die Gleichverteilung gewisser Folgen, welche mitden Nullstellen der Zetafunktion zusammenhangen, Osterreich. Akad.Wiss. Math.-Naturwiss. Kl. S.-B. II 184 (1975), no. 8-10, 459–471

[10] D. Husemoller, Elliptic Curves, Grad. Texts in Math. 111,Springer-Verlag, New York 1987.

[11] A. Ivic, The Riemann Zeta-function, Wiley, New York, 1985.[12] H. Iwaniec, Topics in Classical Automorphic forms, Graduate Stu-

dies in Mathematics, 17, American Mathematical Sociaty, Providence,Rhode Island, 1997.

[13] J. Kaczorowski, The k-functions in multiplicative number theory,II, III, Acta Arith. 56(1990), 213–224; ibidem 57(1990), 199–210.

[14] J. Kaczorowski, Axiomatic theory of L-functions: the Selberg class,in Analytic Number Theory, C.I.M.E. Summer School,Cetraro (Italy)2002, ed. by A. Perelli, C. Viola, 133–209, Springer L.N. 1891, 2006.

[15] J. C. Lagarias, A. M. Odlyzko, Effective versions of the Chebo-tarev density theorem. Algebraic number fields: L-functions and Ga-lois properties (Proc. Sympos., Univ. Durham, Durham, 1975), pp.409–464. Academic Press, London, 1977.

[16] J. Martinet, Character theory and Artin L-functions, in A.Frohlich (ed.) Algebraic Number Theory, Academic Press London-NewYork-San Francisco 1977.

[17] T. Miyake, Modular forms, Springer-Verlag 1989.[18] W. Narkiewicz, Elementary and analytic theory of algebraic num-bers, PWN, Springer-Verlag, 1990.

[19] K. Prachar, Primzahlverteilung, Springer-Verlag, 1978.[20] H. Rademacher, Collected papers of Hans Rademacher. Vol. II,Ma-

thematicians of Our Time, 4. MIT Press, Cambridge, Mass.-London,1974. xxi+638 pp.

[21] R. Schoof, Elliptic curves over finite fields and the computation ofsquare roots mod p, Math. Comp. 44 (1985), no. 170, 483–494.

269

Page 270: Kryptologia i Cyberbezpieczenstwo nr 6

J. Kaczorowski

[22] A. Selberg, Old and new conjecture and results about a class of Diri-chlet series, Proceedings of the Amalfi Conference on Analytic NumberTheory (Maiori, 1989) (ed. by E. Bombieri et. al.), 367-385, Univer-sita di Salerno, Salerno 1992; Collected papers vol II, 47-63, Springer,Berlin 1991.

[23] J.-P. Serre, Proprietes galoisiennes des points d’ordre fini des cour-bes elliptiques, Invent. Math. 15 (1972), no. 4, 259–331.

[24] E.C. Titchmarsh, The theory of the Riemann zeta function, 2nd ed.,Clarendon Press, Oxford, 1988.

[25] R. Taylor, A. Wiles, Ring-theoretic properties of certain Hecke al-gebras, Ann. of Math. (2) 141 (1995), no. 3, 553–572.

[26] A. Wiles, Modular elliptic curves and Fermat’s last theorem, Ann. ofMath. (2) 141 (1995), no. 3, 443–551.

APPLICATIONS OF L-FUNCTIONS IN CRYPTOLOGY

Abstract. Security of asymmetric cryptological systems is based on the unproved hypo-thesis that one-way functions do exist. Some difficult computational problems in numbertheory, such as factorization or a discrete logarithm problem in finite Abelian groupsmay serve as a basis for constructing presumably one-way functions. The idea of usingL-functions (elements of the Selberg class) in this context goes back to M. Anshel andD. Goldfeld (1997). Following them we describe an authentication protocol and an el-liptic pseudo-random generator. The former uses Dirichlet L-functions, and the latterHasse-Weil L-functions of elliptic curves over Q. We conclude by proposing a protocolof coin toss by phone based on the use of non-trivial zeros of L-functions.

Keywords: one-way functions, L-functions, Selberg class.

Page 271: Kryptologia i Cyberbezpieczenstwo nr 6

NIELINIOWE REJESTRY PRZESUWNEI ŁĄCZENIE SKRZYŻOWANYCH PAR

STANÓW

Johannes Mykkeltveit∗, Janusz Szmidt∗∗

∗ International Research Institute, Bergen, Norway∗∗ Wojskowy Instytut Łączności, Zegrze, Poland

[email protected]

Streszczenie.Wyjaśniamy pochodzenie funkcji sprzężenia zwrotnego dla NieliniowychRejestrów Przesuwnych ze Sprzężeniem Zwrotnym (NFSR), które generują binarne ciągide Bruijna. Funkcje te powstają przez zastosowanie operacji łączenia skrzyżowanych parstanów do wybranego rejestru przesuwnego generującego ciąg binarny o maksymalnymokresie; np. rejestru liniowego, który zawsze istnieje dla danego rzędu n. Otrzymanywynik pozwala konstruować wszystkie nieliniowe rejestry przesuwne generujące ciągibinarne o okresie 2n − 1.Słowa kluczowe: nieliniowe rejestry przesuwne ze sprzężeniem zwrotnym, ciągi deBruijna, metoda łączenia skrzyżowanych par stanów.

1. Wprowadzenie

Celem tej pracy jest przedstawienie konstrukcji funkcji Boolowskichsprzężenia zwrotnego dla nieliniowych rejestrów przesuwnych (NFSR - ang.Nonlinear Feedback Shift Registers), które generują ciągi binarne o maksy-malnym okresie. W szczególności rozpatrywany jest problem czy dowolnybinarny ciąg de Bruijna może być otrzymany z ustalonego ciągu de Bruijnatego samego rzędu przez zastosowanie operacji łączenia skrzyżowanych parstanów. Problem ten został postawiony na konferencji z Kodowania i Kryp-tologii (WCC 2013, Bergen, Norwegia) i pozytywnie rozwiązany wspólniez Johannesem Mykkeltveitem. W terminach funkcji Boolowskich otrzy-many wynik wskazuje jakie operacje algebraiczne mają być zastosowanedo ustalonej funkcji Boolowskiej, aby otrzymać wszystkie funkcje sprzęże-nia zwrotnego nieliniowych rejestrów przesuwnych generujących ciągi deBruijna tego samego rzędu.

Rejestry przesuwne ze sprzężeniem zwrotnym są użyteczne do genero-wania binarnych ciągów okresowych i w tym celu są stosowane w teleko-munikacji i kryptografii. Liniowe rejestry przesuwne (LFSR - ang. LinearFeedback Shift Registers) i NFSR są głównymi elementami, z których budo-wane są szyfry strumieniowe. Algorytmy Mickey [1], Trivium [4], Grain [15],Achterbahn [11] i modyfikacje naprzemiennego generatora krokowego [27]są przykładami szyfrów strumieniowych, w których zastosowano NFSR.

Page 272: Kryptologia i Cyberbezpieczenstwo nr 6

J. Mykkeltvei, J. Szmidt

Teoria rejestrów typu LFSR jest dobrze ugruntowana matematycznie. Ba-danie NFSR zostało rozpoczęte w pionierskiej monografii Golomba [12]i kontynuowane w następnych latach. W zastosowaniach kryptograficznychNFSR generujące tzw. zmodyfikowane ciągi de Bruijna są ważne, ponieważw pewnych przypadkach algebraiczna postać normalna (ANF - ang. Alge-braic Normal Form) odpowiadających funkcji sprzężenia zwrotnego jestdość prosta i dogodna do implementacji; patrz np. [11, 22].

Operacje łączenia i rozłączania cykli generowanych przez nieosobliwerejestry przesuwne były rozpatrywane w książce Golomba [12]. Następnieistnienie tzw. skrzyżowanych par stanów (ang. cross-join pairs) było wy-korzystane w serii prac [6, 9, 10, 23, 28] do konstrukcji nowych NFSR.Helleseth i Kløve [16] udowodnili ważny wynik, który podaje liczbę skrzy-żowanych par stanów dla m-ciągów (ciągi o maksymalnym okresie gene-rowane przez LFSR). Dubrowa w pracy [6] zastosowała operację łączeniaskrzyżowanych par stanów do konstrukcji rejestrów typu Galois generują-cych ciągi o maksymalnym okresie.

Metody znajdowania NFSR z funkcją sprzężenia o prostej ANF byłybadane w pracach [3, 5, 7, 11, 17, 26]. Gong i Mandal [21] stosując metodyz pracy Mykkeltveit et al. [24] podali metodę rekurencyjną konstruowa-nia NFSR o maksymalnym okresie. Chan, Games i Rushanan [3] postawilihipotezę o istnieniu tzw. kwadratowych m-ciągów dla każdego rzędu n.W pracy [5] hipoteza ta została zweryfikowana eksperymentalnie do rzędun = 29 i zostały znalezione NFSR o prostej ANF generujące kwadratowem-ciągi. W niniejszej pracy przedstawiamy związek między NFSR generu-jącymi kwadratowe m-ciągi a operacją łączenia skrzyżowanych par. Podanyjest przykład rejestru rzędu 7 generującego zmodyfikowany ciąg de Bruijna,który został skonstruowany w wyniku zastosowania operacji łączenia skrzy-żowanych par. Dowód Twierdzenia 3 został opublikowany w pracy [25].

2. Nieliniowe rejestry przesuwne

Niech F = 0, 1 oznacza ciało binarne, zaś Fn2 niech będzien-wymiarową przestrzenią nad ciałem F2. Elementami przestrzeni Fn2 sąciągi binarne o długości n. Przykładowo taki ciąg (wektor) będziemy ozna-czać x = (x0, x1, . . . , xn−1), gdzie xi ∈ F2, i = 0, 1, . . . , n − 1. Przesuwyrejestr binarny ze sprzężeniem zwrotnym (FSR - ang. Feedback Shift Regi-ster) rzędu n (lub n-stanowy) jest odwzorowaniem F : Fn2 → Fn2 postaci

F(x0, . . . , xn−1) = (x1, x2, . . . , xn−1, f(x0, . . . , xn−1)),

272

Page 273: Kryptologia i Cyberbezpieczenstwo nr 6

Nieliniowe rejestry przesuwne i łączenie skrzyżowanych par stanów . . .

gdzie f jest funkcją Boolowską od n zmiennych. Rejestr przesuwny jestokreślony jako nieosobliwy jeśli przekształcenie F jest wzajemnie jedno-znaczne, tzn. F jest bijekcją na zbiorze Fn2 .

Wykazuje się (patrz [12]), że rejestr przesuwny F jest nieosobliwywtedy i tylko wtedy, gdy funkcja Boolowska f jest postaci

f(x0, . . . , xn−1) = x0 + F (x1, . . . , xn−1), (1)

gdzie F jest funkcją Boolowską od n − 1 zmiennych. Rejestry nieosobliwejako przekształcenia przestrzeni Fn2 generują zamknięte cykle elementów tejprzestrzeni. Największą liczbę cykli generuje tzw. rejestr czysto cyklicznyrzędu n oznaczany PCRn (ang. Pure Cyclic Register), gdzie funkcja F ≡ 0,tzn. funkcja sprzężenia zwrotnego f ma postać

f(x0, x1, . . . , xn−1) = x0.

PCRn dokonuje rozkładu przestrzeni na liczbę cykli równą

Z(n) =1n

∑d|n

φ(d)2n/d,

gdzie φ(.) jest funkcją Eulera, zaś suma jest po wszystkich dodatnich dziel-nikach liczby n. Dla innych rejestrów nieosobliwych liczba generowanychcykli jest mniejsza.

FSR jest nazywany liniowym, (LFSR - ang. Linear Feedback Shift Re-gister) jeśli funkcja Boolowska jest liniowa oraz nieliniowym, jeśli funkcja fjest nieliniowa, tzn. w algebraicznej postaci normalnej tej funkcji występująiloczyny argumentów. W dalszym ciągu będziemy zajmowali się generowa-niem binarnych ciągów okresowych o pewnych specjalnych właściwościachprzez nieliniowe i liniowe rejestry przesuwne.

Definicja 1. Ciągiem de Bruijna rzędu n nazywamy ciąg binarny (si) dłu-gości 2n (rozpatrywany jako zamknięty cykl), w którym wszystkie układyn kolejnych bitów występują dokładnie jeden raz.

Zostało udowodnione przez Flue Sainte-Marie [8] w roku 1894 orazniezależnie przez de Bruijna [2] w roku 1946, że liczba wszystkich cyklicznienierównoważnych ciągów spełniających Definicję 1 jest równa

Bn = 22n−1−n.

W zastosowaniach kryptograficznych występują tzw. zmodyfikowaneciągi de Bruijna, które nie zawierają podciągu kolejnych n zer.

273

Page 274: Kryptologia i Cyberbezpieczenstwo nr 6

J. Mykkeltvei, J. Szmidt

Definicja 2. Zmodyfikowanym ciągiem de Bruijna rzędu n nazywamy ciągo długości 2n−1 (lub odpowiednio ciąg o okresie 2n−1) otrzymany z ciągude Bruijna rzędu n przez usunięcie jednego zera z podciągu kolejnych n zer,patrz [22].

Na podstawie Definicji 1 i 2 istnieje wzajemnie jednoznaczna odpo-wiedniość między ciągami de Bruijna rzędu n a zmodyfikowanymi ciągamide Bruijna tego samego rzędu. W szczególności mając zmodyfikowany ciągde Bruijna długości (o okresie) 2n − 1 i dodając jedno zero do podciągukolejnych n−1 zer otrzymujemy ciąg de Bruijna rzędu n. Liczba cyklicznienierównoważnych zmodyfikowanych ciągów de Bruijna rzędu n wyraża sięrównież wzorem (2). Ciągi de Bruijna generowane są przez pewne funkcjeBoolowskie postaci (1). Liczba wszystkich funkcji postaci (1) jest równaliczbie wszystkich funkcji Boolowskich od n − 1 zmiennych i wyraża sięwzorem 22

n−1.

Związek między ciągami de Bruijna a nieliniowymi rejestrami prze-suwnymi wyraża następujące:

Twierdzenie 1. Niech (st) będzie ciągiem de Bruijna (lub zmo-dyfikowanym ciągiem de Bruijna). Wtedy istnieje funkcja BoolowskaF (x1, . . . , xn−1) taka, że

st+n = st + F (st+1, . . . , st+n−1), t = 0, 1, . . . , 2n − n− 1. (3)

Dowód tego twierdzenia można znaleźć w książce Golomba [12]. Za-tem ciągi de Bruijna generowane są przez pewne nieliniowe rekurencje. Napodstawie wzoru (2) prawdopodobieństwo tego, że losowo wybrana funkcjaBoolowska postaci (1) będzie generować ciąg de Bruijna (lub odpowiedniociąg zmodyfikowany) równe jest 2−(n−1). Prawdopodobieństwo to możnazwiększyć do 2−(n−3) korzystając z pewnych własności funkcji generującychciągi de Bruijna. W przypadku ciągów zmodyfikowanych istnieją funkcjeBoolowskie liniowe

F (x0, x1, . . . , xn−1) = x0 + c1c1 + . . .+ cn−1xn−1, (4)

gdzie ci ∈ F2 dla i = 1, . . . , n−1, które generują ciągi binarne o maksymal-nym okresie 2n − 1. Warunkiem dostatecznym jest aby wielomian jednejzmiennej

φ(x) = xn + cn−1xn−1 + . . .+ c1x+ 1 (5)

był wielomianem pierwotnym w pierścieniu F2[x]. Wielomiany pierwotneokreślone są jako takie, których pierwiastki (miejsca zerowe: φ(x) = 0)

274

Page 275: Kryptologia i Cyberbezpieczenstwo nr 6

Nieliniowe rejestry przesuwne i łączenie skrzyżowanych par stanów . . .

w ciele Galois GF (2n) są elementami pierwotnymi (generatorami) grupymultiplikatywnej GF (2n)∗. Liczba wszystkich wielomianów pierwotnychstopnia n równa jest

φ(2n − 1)n

, (6)

gdzie φ(.) oznacza funkcję Eulera. Liczba ze wzoru (6) dla ustalonej war-tości n jest znacznie mniejsza niż liczba (2) wszystkich zmodyfikowanychciągów de Bruijna (generowanych przez funkcje Boolowskie liniowe i nie-liniowe). Ciągi o maksymalnym okresie 2n − 1 generowane przez funk-cje liniowe postaci (4) zwane są w literaturze m-ciągami, a odpowiada-jące rejestry nazywane są maksymalnymi liniowymi rejestrami ze sprzęże-niem zwrotnym. Teoria m-ciągów jest dobrze ugruntowana matematycznie;w szczególności wiadomo jak konstruować wielomiany pierwotne (a zatemjak generować m-ciągi) dla dowolnego stopnia n. Powyższe fakty omawianesą szeroko w literaturze [13, 19]. Natomiast teoria nieliniowych rejestrówprzesuwnych (NFSR) jest znacznie mniej rozbudowana. W zasadzie brakjest algorytmów, które pozwalałyby efektywnie konstruować, dla możliwiedużych wartości rzędu n, funkcje Boolowskie dogodne w implementacji ge-nerujące zmodyfikowane ciągi de Bruijna.

3. Skrzyżowane pary stanów

Przedstawimy teraz pewną technikę konstruowania nowych NFSRo maksymalnym okresie 2n lub 2n − 1 z danego rejestru (liniowego lubnieliniowego) generującego ciąg o maksymalnym okresie. Technika ta wy-korzystuje istnienie tzw. skrzyżowanych par stanów (ang. cross-join pairs).Wpierw przedstawimy sposób łączenia lub rozłączania cykli stanów gene-rowanych przez nieosobliwe rejestry przesuwne.

Niech Si, i = 0, . . . , 2n − 1, Si ∈ Fn2 , będzie ciągiem stanów generowa-nych przez rejestr opisany funkcją Boolowską f postaci (1). Niech

Si = (x0, x1, . . . , xn−1)

będzie wybranym stanem tego rejestru. Stan

Si = (x0, x1, . . . , xn−1),

gdzie x0 = x0 + 1, nazywamy stanem sprzężonym do stanu Si. Jeśli parastanów Si, Si leży na jednym cyklu generowanym przez rejestr opisany

275

Page 276: Kryptologia i Cyberbezpieczenstwo nr 6

J. Mykkeltvei, J. Szmidt

funkcją f , to zamieniając między sobą stany następujące po Si i Si otrzy-mamy dwa nowe cykle. Operacja ta związana jest z zanegowaniem funkcjiF w punkcie (x1, . . . , xn−1). Jeśli taka para stanów Si, Si leży na dwóch cy-klach generowanych przez rejestr przesuwny, to podobna operacja prowadzido połączenia tych cykli.

Definicja 3. Dwie pary stanów sprzężonych nieosobliwego rejestru prze-suwnego określonego przez funkcję sprzężenia f :

α = (a0, a1, . . . , an−1), α = (a0, a1, . . . , an−1),

β = (b0, b1, . . . , bn−1), β = (b0, b1, . . . , bn−1),

stanowią skrzyżowaną parę stanów dla ciągu generowanego przez ten re-jestr, jeśli stany te pojawiają się w kolejności α, β, α, β w czasie generacjitego ciągu.

Twierdzenie 2. Niech (st) będzie ciągiem de Bruijna spełniającym reku-rencję (3). Niech

(u,U), (v, V ), (u, U), (v, V )

będzie skrzyżowaną parą stanów dla ciągu (st) i niech G(x1, . . . , xn−1)będzie otrzymana z F (x1, . . . , xn−1) przez zanegowanie wartości F (U)i F (V ). Wtedy G(x1, . . . , xn−1) generuje ciąg de Bruijna (ut). Mówimy, żeciąg (ut) jest otrzymany z ciągu (st) przez operację łączenia skrzyżowanychpar.

4. Konstrukcja ciągów de Bruijna

Twierdzenie 3. Niech (ut), (υt) będą różnymi ciągami de Bruijna rzędun. Wtedy ciąg (υt) może być otrzymany z ciągu (ut) przez wielokrotnezastosowanie operacji łączenia skrzyżowanych par.

Ponieważ istnieje wzajemnie jednoznaczna odpowiedniość między cią-gami de Bruijna rzędu n, które mają okres 2n, a zmodyfikowanymi ciągamide Bruijna tego samego rzędu, które mają okres 2n − 1, to Twierdzenie3 jest również prawdziwe dla ciągów zmodyfikowanych. Jako bezpośredniwniosek z Twierdzenia 3 otrzymujemy następujący:

276

Page 277: Kryptologia i Cyberbezpieczenstwo nr 6

Nieliniowe rejestry przesuwne i łączenie skrzyżowanych par stanów . . .

Lemat 1. Dla każdego ciągu de Bruijna (zmodyfikowanego ciągu de Bru-ijna) istnieje para skrzyżowanych stanów.

W pracy Hellesetha i Kløve [16] zostało wykazane, że liczba różnychskrzyżowanych par stanów dla m-ciągów rzędu n jest równa

(2n−1 − 1)(2n−1 − 2)/6. (7)

Dla zmodyfikowanych ciągów de Bruijna rzędu n generowanych przezNFSR nie mamy dokładnych wzorów na liczbę różnych skrzyżowanych par,ale przeprowadzone eksperymenty dla małych rzędów n = 4, 5, 6 wskazują,że liczby te są bliskie wartości (7) dla danego rzędu n. Algebraiczna postaćnormalna (ANF) funkcji sprzężenia zwrotnego danego ciągu de Bruijnarzędu n jest różna od takiej funkcji dla odpowiadającego zmodyfikowanegociągu de Bruijna. Jeśli f(x0, x1, . . . , xn−1) jest funkcją generującą zmody-fikowany ciąg de Bruijna rzędu n, wtedy funkcja sprzężenia dla odpowia-dającego ciągu de Bruijna jest równa

f(x0, x1, . . . , xn−1) + x1x2 · · · xn−1. (8)

Po obliczeniu

x1x2 · · · xn−1 = (x1 + 1)(x2 + 1) · · · (xn−1 + 1) (9)

otrzymujemy, że ANF funkcji (8) zawiera składnik x1x2 · · ·xn−1, który mastopień algebraiczny n− 1. W ogólności funkcje Boolowskie reprezentująceciągi de Bruijna rzędu n mają stopień n−1; wtedy wyrażenie (9) dla stanuzerowego (0, . . . , 0) równe jest 1. Natomiast funkcje sprzężenia reprezentu-jące zmodyfikowane ciągi de Bruijna mają stopień algebraiczny co najwyżejn − 2, ale mogą mieć też mniejszy stopień algebraiczny. W praktycznychzastosowaniach w kryptografii interesuje nas znalezienie NFSR generują-cych zmodyfikowane ciągi de Bruijna, dla których funkcje sprzężenia mająniski stopień algebraiczny i możliwie małą liczbę składników.

5. Zastosowania Twierdzenia 3

W paragrafie tym będziemy rozpatrywali zmodyfikowane ciągi de Bru-ijna i odpowiadające im funkcje Boolowskie sprzężenia zwrotnego. Niechf(x0, x1, . . . , xn−1) będzie taką funkcją generującą zmodyfikowany ciąg deBruijna rzędu n. Niech α, β, α, β będzie skrzyżowaną parą stanów dla tegociągu, gdzie

α = (a0, a1, . . . , an−1), β = (b0, b1, . . . , bn−1).

277

Page 278: Kryptologia i Cyberbezpieczenstwo nr 6

J. Mykkeltvei, J. Szmidt

Wtedy funkcja

f(x0, x1, . . . , xn−1)+(x1+ a1) · · · (xn−1+ an−1)+(x1+ b1) · · · (xn−1+ bn−1)

generuje nowy zmodyfikowany ciąg de Bruijna rzędu n powstały z ciąguwyjściowego przez zastosowanie operacji łączenia skrzyżowanych par sta-nów.

5.1. NFSR rzędu 4

Konstrukcja wszystkich funkcji Boolowskich, które generują zmodyfi-kowane ciągi de Bruijna rzędu 4 była punktem wyjścia do dalszych badańnad zastosowaniem metody łączenia skrzyżowanych par. Bierzemy funkcjesprzężeń dla LFSR rzędu 4:

x0 + x1, x0 + x3, (10)

które odpowiadają dwóm wielomianom pierwotnym stopnia 4. Każdy z cią-gów o okresie 15 generowanych przez funkcje (10) ma zgodnie ze wzorem(7) po 7 różnych par skrzyżowanych stanów. Stosując konstrukcję łączeniapar skrzyżowanych stanów otrzymujemy z każdego LFSR postaci (10) po7 nowych NFSR wśród których dwie pary są identyczne, czyli otrzyma-liśmy łącznie 12 różnych NFSR. Wybranie dwóch NFSR i znalezienie pojednej skrzyżowanej parze stanów dla każdego z nich pozwala skonstruowaćbrakujące dwa NFSR do kompletnej listy 16 funkcji sprzężeń dla zmody-fikowanych ciągów de Bruijna. Poniżej podajemy tą listę z zastosowanymioperacjami algebraicznymi wynikającymi z metody łączenia skrzyżowanychpar.

1. x0 + x12. x0 + x33. x0 + x1 + x1x2x3 + x1x2x3 = x0 + x1 + x2 + x1x24. x0 + x3 + x1x2x3 + x1x2x3 = x0 + x2 + x3 + x1x25. x0+x1+(x1x2x3+x1x2x3)+(x1x2x3+x1x2x3) = x0+x1+x2+x1x36. x0+x3+(x1x2x3+x1x2x3)+(x1x2x3+x1x2x3) = x0+x2+x3+x1x37. x0 + x3 + x1x2x3 + x1x2x3 = x0 + x2 + x1x2 + x1x38. x0 + x1 + x1x2x3 + x1x2x3 = x0 + x1 + x2 + x3 + x1x2 + x1x39. x0 + x1 + x1x2x3 + x1x2x3 = x0 + x1 + x2 + x2x3

10. x0 + x3 + x1x2x3 + x1x2x3 = x0 + x2 + x3 + x2x311. x0 + x1 + x1x2x3 + x1x2x2 = x0 + x1 + x1x2 + x2x312. x0 + x1 + x1x2x3 + x1x2x3 = x0 + x3 + x1x2 + x2x3

278

Page 279: Kryptologia i Cyberbezpieczenstwo nr 6

Nieliniowe rejestry przesuwne i łączenie skrzyżowanych par stanów . . .

13. x0 + x1 + x1x2x3 + x1x2x3 = x0 + x2 + x1x3 + x2x314. x0 + x3 + x1x2x3 + x1x2x3 = x0 + x1 + x2 + x3 + x1x3 + x2x315. x0 + x1 + x1x2x3 + x1x2x3 = x0 + x1 + x2 + x1x2 + x1x3 + x2x316. x0 + x3 + x1x2x3 + x1x2x3 = x0 + x2 + x3 + x1x2 + x1x3 + x2x3

Rysunek 1 ilustruje graficznie drogę konstruowania 14 NFSR rzędu 4zaczynając od dwóch LFSR tego rzędu. Natomiast Rysunek 2 przedstawiadrogę konstruowania 14 różnych NFSR i jednego LFSR startując z drugiegoLFSR; w szczególności dwukrotne zastosowanie operacji łączenia skrzyżo-wanych par stanów prowadzi od jednego LFSR do drugiego. Podobnychsposobów otrzymania wszystkich rejestrów maksymalnego rzędu opisanychprzez grafy z Rysunków 1 i 2 jest wiele; zależy to od losowego wyboruskrzyżowanych par stanów dla poszczególnych rejestrów. W celu otrzyma-nia funkcji sprzężenia zwrotnego generujących ciągi de Bruijna (w tymprzykładzie dla n = 4) należy do każdego ze wzorów 1-16 z powyższej listydodać wyrażenie algebraiczne

x1x2x3 = (x1 + 1)(x2 + 1)(x3 + 1),

które odpowiada połączeniu cyklu o długości 15 z cyklem o długości 1reprezentowanym przez stan (0,0,0,0). Otrzymamy wtedy listę wszystkichfunkcji Boolowskich sprzężenia zwrotnego generujących ciągi de Bruijnarzędu 4 (odpowiednio o okresie 16).

Na każdym z grafów z Rysunków 1 i 2 możemy znaleźć drogę z dowol-nego wierzchołka do każdego innego wierzchołka. Na przykładzie ciągówde Bruijna rzędu 4 mamy potwierdzenie tezy Twierdzenia 3. Wykonanorównież podobne obliczenia dla zmodyfikowanych ciągów de Bruijna rzędu5, gdzie mamy 211 = 2048 nierównoważnych cyklicznie ciągów. Wygenero-wano programowo wszystkie funkcje Boolowskie od 5 zmiennych, któresą funkcjami sprzężenia zwrotnego dla rejestrów generujących te ciągi.W tym celu wykorzystano pakiet SAGE [30] i programowanie w językuPython [29].

5.2. NFSR rzędu 7

Podamy konstrukcję nieliniowego rejestru rzędu 7 o prostej algebraicz-nej postaci normalnej wychodząc od rejestru liniowego i stosując metodęłączenia skrzyżowanych par stanów. Weźmy wielomian pierwotny stopnia7 równy

p(x) = x7 + x+ 1.

279

Page 280: Kryptologia i Cyberbezpieczenstwo nr 6

J. Mykkeltvei, J. Szmidt

Rysunek 1. Konstrukcja NFSR z dwóch LFSR

Rysunek 2. Konstrukcja NFSR i jednego LFSR z drugiego LFSR

280

Page 281: Kryptologia i Cyberbezpieczenstwo nr 6

Nieliniowe rejestry przesuwne i łączenie skrzyżowanych par stanów . . .

Funkcja sprzężenia zwrotnego dla odpowiadającego LFSR równa jestx0 + x6. Bierzemy stan początkowy rejestru

s0 = (x0, x1, . . . , x6) = (1, 0, . . . , 0)

i generujemy wszystkie niezerowe stany tego rejestru s1, . . . , s126. Rozpa-trzmy stany dla których x2 = 1 oraz x4 = 0, których jest razem 32. Stanyte zawierają 8 skrzyżowanych par stanów (po 4 stany w każdej parze), którełącznie pokrywają stany z warunkiem (x2, x4) = (1, 0). Poniżej mamy listętych skrzyżowanych par (α, α, β, β):

(10, 29; 17, 101), (20, 58; 21, 91), (25, 47; 32, 62), (37, 118; 113, 125),

(38, 107; 71, 119), (42, 55; 50, 94), (59, 82; 81, 90), (65, 97; 70, 106),

gdzie zastosowaliśmy reprezentację dziesiętną dla każdego stanu. Zastoso-wanie operacji łączenia skrzyżowanych par oddzielnie do każdej z tych 8par, co jest możliwe, ponieważ wszystkie stany są rozłączne, prowadzi dokonstrukcji NFSR rzędu 7:

f = x0 + x6 + x1x2x3x4x5x6 + x1x2x3x4x5x6 + x1x2x3x4x5x6

+ x1x2x3x4x5x6 + x1x2x3x4x5x6 + x1x2x3x4x5x6 + x1x2x3x4x5x6

+ x1x2x3x4x5x6 + x1x2x3x4x5x6 + x1x2x3x4x5x6 + x1x2x3x4x5x6

+ x1x2x3x4x5x6 + x1x2x3x4x5x6 + x1x2x3x4x5x6 + x1x2x3x4x5x6

+ x1x2x3x4x5x6 = x0 + x6 + x2 + x2x4.

Otrzymaliśmy funkcję sprzężenia zwrotnego, która określa rejestr ge-nerujący zmodyfikowany ciąg de Bruijna o okresie 27 − 1 = 127.

5.3. Pewne warunki konieczne

Wzorując się na podanym wyżej przykładzie sformułujemy pewne wa-runki na funkcję Boolowską od n− 1 zmiennych, które mogą prowadzić dokonstrukcji funkcji sprzężenia nieliniowego rejestru rzędu n, który generujezmodyfikowany ciąg de Bruijna.

Rozpatrzmy przyszłą funkcję sprzężenia dla NFSR o maksymalnymokresie 2n − 1, która ma postać

f(x0, x1, . . . , xn−1) = g(x0, x1, . . . , xn−1) + h(x1, . . . , xn−1), (11)

281

Page 282: Kryptologia i Cyberbezpieczenstwo nr 6

J. Mykkeltvei, J. Szmidt

gdzie g jest funkcją postaci (4) określoną przez wielomian pierwotny stopnian, zaś h jest funkcją Boolowską możliwie niskiego stopnia algebraicznegoz możliwie małą liczbą składników. Liczba wszystkich składników funkcjif musi być parzysta. W naszej konstrukcji musimy znać zbiór S stanów(x0, x1, . . . , xn−1) dla których

h(x1, . . . , xn−1) = 1

oraz liczba stanów w S musi być podzielna przez 4. Następnie znajdu-jemy zbiór J skrzyżowanych par (każda para składa się z czterech stanów)spełniających następujące warunki:

1. Wszystkie elementy zbioru J są rozłączne; żadne dwie pary nie zawie-rają wspólnych stanów.

2. Wszystkie stany należące do par ze zbioru J pokrywają zbiór S.

Warunki 1 i 2 są warunkami koniecznymi, żeby funkcja (11) genero-wała ciąg o maksymalnym okresie 2n − 1. Przykład zbioru skrzyżowanychpar stanów spełniających powyższe warunki był podany w paragrafie 5.2.Warunki 1 i 2 nie są warunkami dostatecznymi na generowanie pełnegookresu przez funkcję f postaci (11). Kiedy te warunki są spełnione musimydodatkowo sprawdzić, czy funkcja ta generuje ciąg o okresie 2n − 1.

W serii prac [12, 7, 9, 10, 14, 17, 18, 20] zastosowano metodę łączeniacykli dla nieosobliwych rejestrów LFSR w celu otrzymania ciągów binar-nych o maksymalnym okresie generowanych przez NFSR. Metoda ta jestobiecująca o ile będziemy mieli kontrolę nad stopniem algebraicznym i ilo-ścią składników w algebraicznej postaci normalnej konstruowanych w tensposób nieliniowych rejestrów przesuwnych. Aktualnie prowadzimy pracew tym zakresie dla wspomnianych wyżej rejestrów PCRn.

Literatura

[1] S. Babbage, M. Dodd, ”The MICKEY stream ciphers”, in NewStream Cipher Designs: The eSTREAM Finalists. LNCS vol. 4986,pp. 191–209. Springer-Verlag, 2008.

[2] N. G. de Bruijn, A combinatorial problem, Indag. Math., 8(1946),pp. 461–467.

[3] A. H. Chan, R. A. Games, J. J. Rushanan, On the quadraticm-sequences, Proceedings of Fast Software Encryption, LNCS vol. 809,pp. 166–173. Springer-Verlag, 1994.

282

Page 283: Kryptologia i Cyberbezpieczenstwo nr 6

Nieliniowe rejestry przesuwne i łączenie skrzyżowanych par stanów . . .

[4] C. Canniere, B. Preneel, ”Trivium”, in New Stream CipherDesigns: The eSTREAM Finalists, LNCS vol. 4986, pp. 244–266.Springer-Verlag, 2008.

[5] P. Dąbrowski, G. Labuzek, T. Rachwalik, J. Szmidt, Searchingfor nonlinear feedback shift registers with parallel computing, Inform.Proc. Letters, 114(2014), pp. 268–272.

[6] E. Dubrova, A scalable method for constructing Galois NLFSRs withperiod 2n − 1 using cross-join pairs, IEEE Trans. on Inform. Theory,59(1), 2013, pp. 703–709.

[7] J. C. Fletcher, M. Perlman, Nonlinear nonsingular feedback shiftregisters, United States Patent 3911330, 1975.

[8] C. Flye Sainte-Marie, Solution to question nr. 48. L’Intermediairedes Mathematiciens, 1(1894). pp. 107–110.

[9] H. Fredricksen, A class of nonlinear de Bruijn cycles, J. of Combi-natorial Theory (A), 19(1975), pp. 192–199.

[10] H. Fredricksen, A survey of full length nonlinear shift register cyclealgorithms, SIAM Review, 24(2), 1982, pp. 195–221.

[11] B. M. Gammel, R. Goetffert, O. Kniffler, Achter-bahn 128/80, The eSTREAM project, www.ecrypt.eu.org/stream/,www.matpack.de/achterbahn/

[12] S. W. Golomb, Shift register sequences. San Francisco, Holden-Day,1967, revised edition, Laguna Hills, CA, Aegean Park Press, 1982.

[13] S. W. Golomb, G. Gong, Signal Design for Good Correlation. ForWireless Communication, Cryptography, and Radar, Cambridge Uni-versity Press, 2005.

[14] E. R. Hauge, T. Helleseth, De Bruijn sequences, irreducible codesand cyclotomy, Discrete Math., 159(1996), pp. 143–154.

[15] M. Hell, T. Johansson, A. Maximov, W. Meier, ”The GrainFamily of Stream Ciphers”, in New Stream Cipher Designs: The eS-TREAM Finalists. LNCS vol. 4986, pp. 179–190. Springer-Verlag,2008.

[16] T. Helleseth, T. Kløve, The number of cross-join pairs in ma-ximum length linear sequences, IEEE Trans. on Inform. Theory,31(1991), pp. 1731–1733.

[17] F. Hemmati, A large class of nonlinear shift register sequences, IEEETrans. on Inform. Theory, vol. 28, pp. 355-359, 1982.

[18] C. J. A. Jansen, Investigations on nonlinear streamcipher systems:Construction and evaluation methods, Ph.D. Thesis, Technical Uni-versity of Delft, 1989.

283

Page 284: Kryptologia i Cyberbezpieczenstwo nr 6

J. Mykkeltvei, J. Szmidt

[19] R. Lidl, H. Niederreiter, Introduction to Finite Fields and theirApplications (Revised Edition), Cambridge University Press, Cam-bridge, 1994.

[20] K. B. Magleby, The synthesis of nonlinear feedback shift registers,Technical Report no. 6207-1. Stanford Electronics Laboratories, 1963.

[21] K. Mandal, G. Gong, Cryptographically strong de Bruijn sequenceswith large periods. Selected Areas in Cryptography. L. R. Knudsen,K. Wu (Eds.). LNCS, vol. 7707, pp. 104–118. Springer-Verlag, 2012.

[22] G. L. Mayhew, S. W. Golomb, Linear spans of modified de Bruijnsequences, IEEE Trans. Inform. Theory, 36(5), 1990, pp. 1166–1167.

[23] J. Mykkeltveit Generating and counting the double adjacenciesin a pure cyclic shift register, Trans. on Computers, C-24, 1975, pp.299–304.

[24] J. Mykkeltveit, M-K. Siu, P. Tong, On the cyclic structure ofsome nonlinear shift register sequences, Inform. and Control, 43(1979),pp. 202–215.

[25] J. Mykkeltveit, J. Szmidt On cross joining de Bruijn sequences,Contemporary Mathematics, vol. 632, pp. 333–344, American Mathe-matical Society, 2015.

[26] T. Rachwalik, J. Szmidt, R. Wicik, J. Zab locki, Generationof nonlinear feedback shift registers with special purpose hardware,Military Communications and Information Systems Conference, MCC2012, IEEE Xplore Digital Library, 2012, pp. 151–154.

[27] R. Wicik, T. Rachwalik, Modified alternating step generators, Mi-litary Communications and Information Systems Conference, MCC2013. IEEE Xplore Digital Library, 2013, pp. 203-215.

[28] M. S. Turan, On the nonlinearity of maximum-length NFSR feed-backs, Cryptography and Communications, 4(3-4), 2012, pp. 233-243.

[29] Python Programming Language, http://www.python.org[30] SAGE Mathematical Software, Version 5.8. http://www.sagemath.org

NONLINEAR FEEDBACK SHIFT REGISTERS ANDJOINING OF CROSS-PAIRS STATES

Abstract. We explain the origins of Boolean feedback functions of Nonlinear FeedbackShift Registers (NFSR) of fixed order n generating de Bruijn binary sequences. Theyall come into existence by cross joining operations starting from one maximum periodfeedback shift register, e.g., a linear one which always exists for any order n. The resultobtained yields some constructions of NFSR generating maximum period 2n − 1 binarysequences.

Keywords: nonlinear feedback shift registers, de Bruijn sequencec, method of joiningof cross-pairs states.

Page 285: Kryptologia i Cyberbezpieczenstwo nr 6

IV. SCHEMATY PODZIAŁU SEKRETUSTRUKTURY WPROWADZEŃ

REMARKS ON MULTIVARIATE EXTENSIONSOF POLYNOMIAL BASED SECRET SHARING

SCHEMES

Jakub Derbisz

Institute of Computer Science Polish Academy of Sciences’fellowship for postdoctoral researchers;

[email protected]

Abstract. We introduce methods that use Grobner bases for secure secret sharingschemes. The description is based on polynomials in the ring R = K[X1, . . . , Xl] whereidentities of the participants and shares of the secret are or are related to ideals in R.Main theoretical results are related to algorithmical reconstruction of a multivariatepolynomial from such shares with respect to given access structure, as a generalisationof classical threshold schemes. We apply constructive Chinese remainder theorem in R ofBecker and Weispfenning. Introduced ideas find their detailed exposition in our relatedworks.

Keywords: Grobner bases, Chinese remainder theorem, Secret Sharing Scheme, accessstructure, multivariate interpolation.

1. Introduction

We present ideas for conditional generalisation of Shamir’s (t, n) thre-shold secret sharing scheme and Blakley’s threshold SSS, and show how tocreate secure secret sharing schemes on multivariate polynomials, assumingfast calculation of minimal CRT-solution in a variant of CRT-algorithm formultivariate polynomial ring [2]. However, as we will show there are certainpossibilities to satisfy this assumption in practice.

In Shamir’s scheme one considers randomly chosen polynomial f ofone variable and degree t− 1, and distributes to each of n participants anelement ci of some finite field, publicly assigning it to i− th participant ashis identity, and, appropriately the secret value f(ci). Now, t participantsfrom received elements can reconstruct the polynomial, since t values in tdifferent field elements determine uniquely a polynomial of degree t− 1.

The study is cofounded by the European Union from resources of the EuropeanSocial Fund. Project PO KL „Information technologies: Research and their interdisci-plinary applications, Agreement UDA-POKL.04.01.01-00-051/10-00.

Page 286: Kryptologia i Cyberbezpieczenstwo nr 6

J. Derbisz

A question motivating this work is how to construct a secret sha-ring scheme if instead of choosing a polynomial of one variable one wouldtake multivariate polynomial g ∈ K[X1, . . . , Xl], and keep unchanged theideas of Shamir’s scheme. Hence, now participants publicly receive vectorsci ∈ Kl, there are secretly distributed values g(ci), and we ask about re-construction of g. It leads then to a general case where any privileged groupof a general access structure would be able to reconstruct a multivariatepolynomial from shares of the participants.

First, we propose to define a class of polynomials P and a set of vectorsci ∈ Kl| i = 1, . . . , n that would allow, applying Chinese remaindertheorem, reconstruction of such g by t or more participants, while less thant participants would know that there are at least |K| polynomials from Ppossible to be the polynomial g that was chosen. In our extended worksrelated to this topic we show that there exist and can be found examplesfor such classes P and appropriate sets of vectors.

Likewise, later we give an idea for a construction which allows to di-stribute a multivariate polynomial among the participants forming anymonotonic access structure, such that a privileged set would be able toreconstruct it, and unprivileged set wouldn’t, meaning that there will beat least |K| possible choices for the polynomial, or, as it is also possible,if a value in some point of the multivariate polynomial is treated as thesecret, privileged sets can find this value, and unprivileged sets have noinformation, i.e., any element from K will be equally probable to be thatvalue.

In latter construction we won’t need a class P with certain proper-ties or appropriately chosen set of vectors, hence the construction will bemore explicit. Instead of relying on vectors, we associate with each parti-cipant an ideal, giving an algorithm for its construction, and for the secretpolynomial, we take any polynomial from K[X1, . . . , Xl] of a type

f = f0 +∑

1≤i1<...<ik−1≤k

ci1...ik−1gi1 . . . gik−1

where deg(f0) < deg(g1 . . . gk) and constants ci1...ik−1 are chosen at randomwith respect to uniform distribution on K (also, the secret can be taken asvalue in its certain point).

However, as we have mentioned, the constructions are conditional sincewe assume fast calculations of Grobner bases needed in reconstructing thesecret polynomial by privileged groups when applying CRT-algorithm [2].The main motivation then is a theoretical and direct generalisation im-plied by Shamir’s scheme. Although, it is possible that in practice these

286

Page 287: Kryptologia i Cyberbezpieczenstwo nr 6

Remarks on multivariate extensions of polynomial based . . .

particular Grobner bases can efficiently be computed, it is not the subjectof this research and we leave this practical question for further considera-tion. Thus, we haven’t been considering whether our constructions allownew applications or, from practical point of view, are in any sense betterfrom constructions already proposed. They, however, show how to trans-form ideas known in secret sharing schemes into language based on ideals,abstract algebra, which also allowed achieving certain theoretical results,as, for instance, classical Shamir’s secret sharing scheme where reconstruc-tion of secret polynomial is based on Chinese remainder theorem, and itsgeneralisations. Our considerations may as well be interesting for those in-terested in theory of interpolation.To sum up:In the first part, our ideas concern a possible framework for general con-structions of threshold polynomial based secret sharing schemes which aregeneralisations of the classical constructions. For instance, we show how toreconstruct a polynomial in Shamir’s scheme using CRT, and propose a ge-neralisation. Our primary goal is to introduce an approach for constructingsecret sharing schemes based on Grobner bases and Becker’s, Weispfen-ning’s algorithm for finding minimal CRT-solution in R = K[X1, . . . , Xl].

In the second part, we propose methods to deal with a general caseand the construction of a secret sharing scheme for any general accessstructure with a use of multivariate polynomial; general means that wehave an arbitrary, not necessarily threshold monotonic access structure.Users’ identities are ideals of R, secret is a multivariate polynomial, andshares are certain polynomials that come from reducing the secret modulocertain Grobner bases. In our constructions, we assume efficiency of findingthe solution by CRT-algorithm [2].

2. Basic definitions

We will briefly define basic concepts.Monotonic family Γ on X is a family of subsets of X such that if

A ∈ Γ and A ⊆ B ⊆ X then B ∈ Γ .Privileged or qualified sets of participants forming a monotonic family Γ arethose sets of participants that are able to reconstruct a secret from receivedshares of the secret, i.e., there is a fast algorithm allowing to do so.Anti-monotonic family of sets Λ on X is a collection of subsets of X suchthat if A ∈ Λ and B ⊆ A then B ∈ Λ.Unprivileged sets in anti-monotonic family Λ are those sets that are notable to reconstruct the secret in ”reasonable time”, due to probabilistic orcomputational bounds.

287

Page 288: Kryptologia i Cyberbezpieczenstwo nr 6

J. Derbisz

Secret sharing scheme Σ, called also simply a sharing scheme, is a me-thod of distributing the secret to the participants.

For a set of participants X an access structure is a tripple (Σ, Γ,Λ)where Γ ∪ Λ = 2X , and 2X is the power set of X.

3. Related results

Our approach is related to the constructions of secret sharing schemesin [20], [5], [1], [16], [9]. It is based on methods from the theory of Grobnerbases, in particular, it is based on new application of the CRT-algorithm [2].

Given a field K, there exist propositions for public key cryptosystemsthat use the multivariate polynomial ring R = K[X1, . . . , Xl], see, for in-stance, [13], [15], and Buchberger’s algorithm for Grobner bases computa-tion [3], [7], [12]. However, as it was pointed out in [15] by Koblitz, andwhich is often the case while working with Grobner bases in cryptography,the proofs on which one could rely the security of such cryptosystems arevery often not known.

We present provably secure constructions of secret sharing schemesbased on Grobner bases methods, however, we assume fast calculationsof certain Grobner bases to be able to efficiently find the CRT-solutionin the algorithm from [2]. We can assume instead that appropriate baseswere publicly announced in precomputations so the CRT-algorithm usedfor reconstructing the secret polynomial is fast. In [2], the authors givea generalisation of CRT-algorithm known for principal ideal domain asK[X], to CRT-algorithm in the ring K[X1, . . . , Xl].

Propositions for secret sharing schemes based on Chinese remaindertheorem can also be found in [1], [16].

4. Computational aspects of the ring K[X1, . . . , Xl]

We will give the preliminaries, needed facts from the theory of Grobnerbases.When writing about monomials we would think about monic monomials.Considering computations in the ring of multivariate polynomials R =K[X1, . . . , Xl] firstly let us state the division theorem, [7], [3], for a totalorder on a set of monomials such that when Xα ≤ Xβ then Xα+γ ≤ Xβ+γ ,and it is always Xα ≥ 1. Here, Xδ = Xδ11 . . . Xδll , that is δ is a multi-index.In the literature this order is called admissible order, however, we refer toit simply as monomial order, since we consider only this type of order on

288

Page 289: Kryptologia i Cyberbezpieczenstwo nr 6

Remarks on multivariate extensions of polynomial based . . .

monomials. Degree lexicographic order or lexicographic order are examplesof monomial orders. Assuming axiom of choice, we can have a well orderon a field K such that 0 is the minimal element. Of course, we are usuallyworking with finite fields. Thus, we can naturally extend a monomial orderand consider a term order (a term understood as a monomial multipliedby a coefficient). For a given polynomial g leading term in g is a leadingmonomial in g multiplied by its coefficient.

Theorem 1. For a given term ordering and a set of polynomialsf1, . . . , fk, every f ∈ R can be written as

f = a1f1 + . . .+ akfk + r

where ai, r ∈ R and either r = 0 or r is a K−linear combination of mo-nomials, none of which is divisible by lt(f1), . . . , lt(fk) where lt(fi) is theleading term of fi.

This result is known in the theory of Grobner bases. Its proof implies analgorithm for dividing a polynomial modulo certain set of polynomials witha given term ordering, which would be referred to as reducing the polyno-mial modulo given set. Grobner bases are those sets of polynomials, dividedmodulo which, for any given polynomial there is exactly one remainder rrelated to that polynomial.From now on let us fix a certain term ordering.

Definition 1. Grobner basis for an ideal I of R is a finite collection Gof generators of I such that every nonzero f ∈ I has leading term that isdivisible by the leading term of some polynomial from G. We call a finite setof polynomials a Grobner basis if it is a Grobner basis of an ideal generatedby this set.For a Grobner basis G = g1, . . . , gk for I there is then an equality ofideals

(lt(I)) = (lt(g1), . . . , lt(gk))

where (lt(I)) is the ideal generated by leading terms of polynomials from I.It is easy to see the uniqueness of remainders modulo fixed Grobner ba-sis, since a monomial lies in a monomial ideal if and only if it is dividedby one of monomial generators of the ideal. Thus, for a Grobner basisG = g1, . . . , gk, writing from division theorem f =

∑aigi + r1 and

f =∑a′igi + r2, if r1 = r2 we have r1 − r2 ∈ I so lt(r1 − r2) ∈ (lt(I)),

hence one of the terms in r1 or in r2 is divisible by lt(gi) for some i, sothere has to be uniqueness.

289

Page 290: Kryptologia i Cyberbezpieczenstwo nr 6

J. Derbisz

Calculation of Grobner basis depends on the ordering of monomialsthat one chooses and in general could be computationally expensive. Ho-wever, both standard and reduced Grobner bases are often computablein practice [12]. In our setting when the Trusted Authority is choosing inprecomputation phase the ideals for which the calculations would be exe-cuted, for instance, when there is given a general access structure, as wewill have in our proposal for a generalised sharing scheme, abovementio-ned methods could find their practical use. In our presentation, however,we think of a black box providing for the participants necessary calcula-tions of Grobner bases so that generalised CRT-algorithm from [2] is fast.We can, however, think that relevant Grobner bases were calculated duringthe precomputations (and it will be possible).

This assumption need to be dealt with while thinking about appli-cations, as we have described in the introduction. In this presentation,however, we will be always thinking that we have efficient CRT-algorithmand concentrate on developing ”general” theory related to sharing a poly-nomial.

5. Secure secret sharing schemes using CRT inK[X1, . . . , Xl]

Firstly, we will present an idea related to threshold multivariate po-lynomial reconstruction. It is convenient to start with univariate example,which would be a Shamir’s (t, n) threshold scheme where reconstruction ofa polynomial is based on Chinese remainder theorem.Let K = Fq be appropriately large finite field.We randomly choose a polynomial f(X) = a0 + a1X + . . . + at−1X

t−1

(randomly choosing coefficients ai ∈ K). Participants’ identities would bedifferent, nonzero field elements ci ∈ K, i = 1, . . . , n.f(ci) = ri for i = 1, . . . , n are secret shares of the participants, i.e., ri isi-th participant’s share.We can write

f(ci)− ri = 0. So (X − ci)|(f(X)− ri), hence f ∈ ri + (X − ci).

Assume, without loss of generality, that t participants with identitiesc1, . . . , ct have gathered to reconstruct the polynomial. They would makethe calculations using the algorithm from [2]. We state the appropriatetheorem related to the CRT-algorithm that will be used.

290

Page 291: Kryptologia i Cyberbezpieczenstwo nr 6

Remarks on multivariate extensions of polynomial based . . .

Theorem 2. Fix any (admissible) monomial order on R. For ide-als I1, . . . , Im of R and polynomials f1, . . . , fm ∈ R, sets intersection∩mj=1(fj + Ij), if non-empty, is equal to f ′ +

∩mj=1 Ij where algorithmi-

cally constructible f ′ ∈ R is minimal in∩mj=1(fj + Ij) with respect to

quasi-order on polynomials in R induced from term ordering in R.

Hence, those t participants using quasi-order induced from degree--lexicographic order algorithmically find f ′ of minimal degree such that:

t∩i=1

(ri + (X − ci)) = f ′ +t∩i=1

(X − ci) = f ′ + (t∏i=1

(X − ci))

Since f ′ is minimal deg(f ′) ≤ deg(f) ≤ t− 1.Hence, writing f = f ′ + h

∏ti=1(X − ci) gives h = 0 and f = f ′, they have

found the chosen polynomial.Generalisation of threshold construction for R = K[X1, . . . , Xl].First, we will assume the following.Assumption. Assume that for (t, n) there is a set of points S ∈ Kl ofcardinality n and a class of polynomials P ⊆ R, such that for any t pointsfrom S, any t values from K, there is a unique polynomial from P that onthe chosen points takes the chosen values respectively.Having such P and S:Choose randomly g ∈ P which would be treated as the secret.g(ci1, . . . , cil) = ri is the share of i-th participant where (ci1, . . . , cil) is hisidentity.From the division theorem we have g = ai1(X1−ci1)+ . . .+ail(Xl−cil)+rand thus r is constant and r = ri.It means g ∈ ri + (X1 − ci1, . . . , Xl − cil).If t participants gathers to reconstruct the secret, they can calculate thefollowing using CRT-algorithm:

t∩i=1

(ri + (X1 − ci1, . . . , Xl − cil)) = f ′ +t∩i=1

(X1 − ci1, . . . , Xl − cil)

There is

(f ′ +t∩i=1

(X1 − ci1, . . . , Xl − cil)) ∩ P = g

Thus we have certain form of the solution which with the properties of theclass P may allow to extract it. One could give examples of such classes P

291

Page 292: Kryptologia i Cyberbezpieczenstwo nr 6

J. Derbisz

when f ′ that is meant to be found by t participants is exactly g, as, whenP = class of polynomials of the degree not greater than m, and appropriateS and (n, t) so that the assumption is fulfilled (it is possible). Then:

deg(f ′) ≤ deg(g) ≤ m⇒ f ′ ∈ P and

f ′(ci1, . . . , cil) = ri for i = 1, . . . , t⇒ f ′ = g

On the other hand, t− 1 participants can’t reconstruct g since for any t-thvalue there is in P one possibility for g.

Using similar ideas, one can also give an algorithm to securely sharea multivariate polynomial in (t, t) threshold scheme, i.e., when all parti-cipants have to gather to reconstruct the polynomial, where, before thereconstruction the participants do not know what is the degree of the poly-nomial that would be reconstructed. Only briefly sketching the construction,first we have a method to find ”general” identities for participants, so thatfulfilled is somewhat weaker assumption, that:for any t values there is at least one polynomial in K[X1, . . . , Xl] whichtakes those values in the identities respectively.Shares of the participants are randomly chosen ri ∈ K and t partici-pants from ri + (X1 − ci1, . . . , Xl − cil) for i = 1, . . . , t, reconstruct thesecret polynomial f ′, which was chosen while constructing the scheme usingCRT-algorithm.

Further generalisation, to share a polynomial from K[X1, . . . , Xl], so it co-uld be reconstructed only by arbitrarily chosen privileged sets.

For any monotonic family Γ , i.e, family of privileged sets, andanti-monotonic family Λ, i.e., family of unprivileged sets, if N =N1, . . . , Nk is the family of all maximal unprivileged sets, firstly we di-stribute non-associated irreducible polynomials g1, . . . , gk such that we givegi to all participants that do not belong to the set Ni, and we perform thisprocedure for all i = 1, . . . , k. One can see that participants forming a pri-vileged set have received together all g1, . . . , gk and participants formingan unprivileged set lack of certain gj , j ∈ 1, . . . , kPublic identity of m-th participant is an ideal Im = (gσ1 . . . gσs) =(gσ1) ∩ . . . ∩ (gσs) where polynomials used to construct it come from theset he received.The secret polynomial would be defined as

f = f0 +∑

1≤i1<...<ik−1≤k

ci1...ik−1gi1 . . . gik−1

292

Page 293: Kryptologia i Cyberbezpieczenstwo nr 6

Remarks on multivariate extensions of polynomial based . . .

where deg(f0) < deg(g1 . . . gk) (or just f0 = 0) and constants ci1...ik−1 arechosen at random with respect to uniform distribution on K. We may keepas the secret only the value f(a) in a ∈ Kl such that gi(a) = 0 for alli = 1, . . . , k.The share of m-th participant is a polynomial fm that comes from reducingf modulo Grobner basis of Im which here is its generator. Thus, for Im =(hm) there is f = amhm + fm. It gives f ∈ fm + Im.For I = (g1 . . . gk) =

∩m∈B Im the participants of a privileged set B take

degree-lexicographic monomial order and find f ′ such that

f ′ + I =∩m∈B

(fm + Im).

Since f is an element of this set deg(f ′) ≤ deg(f).We can write f = f ′+hg1 . . . gk, f − f ′ = hg1 . . . gk which gives h = 0 andf = f ′, so by CRT-algorithm they have found the polynomial f .

If none of the participants forming an unprivileged set A received, saygk, for any of its participants, if his ideal Im = (hm), we can writeg1 . . . gk = bmhm, and fc = f + cg1 . . . gk gives the same reduced poly-nomial as was the share that he had received. That means participantsfrom A cannot deduce f (distinguish between f and fc), or similarly findf(a), if it is the secret, when a is taken as described.

ExampleLet the set of entities X = P1, P2, P3, P4 and the family of basis sets(minimal privileged sets)B = P1, P2, P1, P3, P2, P3, P1, P4.The related anti-basis (family of maximal unprivileged sets) isN = P1, P2, P4, P3, P4.Let N1 = P1, N2 = P2, P4, N3 = P3, P4.We will share a multivariate polynomial from Fq[X1, . . . , Xl].Firstly, we construct public ideals for participants using method based onanti-basis:We choose g1, g2, g3, non-associated irreducible polynomials (3 since |N| =3). Accordingly to the method of distribution, we give g1 to every parti-cipant except those in N1, then g2 to everyone except the participants inN2, then g3 to everyone except those who are in N3. After all:P1 receives the set g2, g3 and his related ideal is I1 = (g2g3) = (g2)∩(g3),P2 receives the set g1, g3 and his related ideal is I2 = (g1g3) = (g1)∩(g3),P3 receives the set g1, g2 and his related ideal is I3 = (g1g2) = (g1)∩(g2),

293

Page 294: Kryptologia i Cyberbezpieczenstwo nr 6

J. Derbisz

P4 receives the set g1 and his related ideal is I4 = (g1).Let I = (g1g2g3).We now choose a polynomial that will be the secret, it’s of the form

f = f0 + c1g1g2 + c2g1g3 + c3g2g3

where ci, i = 1, 2, 3 are chosen randomly from Fq, and f0 is any polynomialthat has degree lower than deg(g1g2g3). We choose a ∈ Fq such that gi(a) =0, i = 1, 2, 3 and make it public.Shares:We find fj which is a reduced form of f modulo Grobner basis of Ij andgive fj to participant Pj as a share, for j = 1, 2, 3, 4.That means fj is a remainder in Theorem 1 for f modulo Grobner basisof Ij . Our situation is simple since Ij is principal and its generator isa Grobner basis for Ij (it is easy to show, since if J = (h) there is (lt((h))) =(lt(h)) as was required, so h forms a Grobner basis).Take

h1 = g2g3, h2 = g1g3, h3 = g1g2, h4 = g1.

We have Ij = (hj), j = 1, . . . , 4.Writing from the Theorem 1

f = ajhj + fj .

The polynomial fj is the share of the participant Pj .

We show that participants from sets ofB, from their shares, can reconstructf .For instance, for the participants P1 and P2.There is

I1 ∩ I2 = (g2) ∩ (g3) ∩ (g1) ∩ (g3) = (g1) ∩ (g2) ∩ (g3) = (g1g2g3) = I.

In Theorem 2, we fix monomial order: degree-lexicographic, since wewant CRT-algorithm to find a polynomial of minimal degree. We havequasi-order on polynomials that is induced from it. Next for the ideals I1and I2 and set of polynomials f1, f2, the set (f1+I1)∩(f2+I2) is non-emptybecause the intersection contains f , which can be noted when we wrote ffrom Theorem 1.CRT-algorithm is used to find f ′. There is

f ′ + I1 ∩ I2 = (f1 + I1) ∩ (f2 + I2).

294

Page 295: Kryptologia i Cyberbezpieczenstwo nr 6

Remarks on multivariate extensions of polynomial based . . .

So f ′+ I = (f1+ I1)∩ (f2+ I2). Our f ′ is minimal in (f1+ I1)∩ (f2+ I2).Since f is also an element of that set, it means that f ′ is smaller thanf with respect to quasi-order induced by degree-lexicographic order onmonomials. Hence, deg(f ′) ≤ deg(f). The polynomial f was chosen suchthat deg(f) < deg(g1g2g3).Thus, we also have, deg(f − f ′) < deg(g1g2g3).Since f ∈ f ′ + I we can write f = f ′ + hg1g2g3. Then f − f ′ = hg1g2g3.So h = 0 and f ′ = f . The participants reconstructed f ′ which turned outto be f . They can also read f(a).We note that for other sets in B it is similar.We will show that participants of an unprivileged set cannot reconstruct f .For instance, take N3 = P2, P4.Both P2 and P4 haven’t received g2 and their ideals are respectively I2 =(g1g3) and I4 = (g1).From shares f2 and f4 they know nothing about the part c2g1g3 that is in

f = f0 + c1g1g2 + c2g1g3 + c3g2g3.

It is because fc = f + cg1g3 would give them the same shares, if chosen(that is if in f was chosen different coefficient by g1g3). That is the casesince g1g3 is an element of both in I2 and I4, and, for example, for theparticipant P4:Since f4 is reduced form of f modulo I4, that is f = a4g1 + f4.Then,

fc = f + cg1g3 = a4g1 + f4 + cg1g3 = g1(a4 + cg3) + f4.

From uniqueness of remainder in Theorem 1 for Grobner basis, we get thatf4 is also reduced form of fc modulo I4 (since it was before).Similarly for participant P2 we get that f2 is reduced form of fc.

That means participants P2 and P4 cannot determine randomly chosenpart c2g1g3 in f , and from that reason, since g1(a)g3(a) = 0, they cannotdeduce the value of f(a) as well.

6. Conclusions

We introduced theoretical ideas that allow, basing on methods withGrobner bases, to describe secure secret sharing schemes. Since we assumefast calculations of certain Grobner bases that are necessary for finding

295

Page 296: Kryptologia i Cyberbezpieczenstwo nr 6

J. Derbisz

efficiently the CRT-solution in a version of CRT-algorithm for multivariatepolynomials [2], the results may be noted as theoretical. However, if one se-arches for applications of proposed constructions of sharing a multivariatepolynomial, conducting further research can be the subject: to investigatepolynomials such that needed Grobner bases could really be calculated qu-ickly or to perform precomputations efficiently. For applications, naturally,it is also interesting to examine and compare efficiency.

References

[1] C. Asmuth, J. Bloom, A modular approach to key safeguarding,IEEE Trans. on Information Theory, IT-29(2):208-211, 1983.

[2] T. Becker, V. Weispfenning, The Chinese remainder problem,multivariate interpolation, and Grobner bases, Proc. ISSAC’91, Bonn,ACM Press, 6469, New York 1991.

[3] T. Becker, V. Weispfenning, Grobner Bases: A ComputationalApproach to Commutative Algebra, Springer-Verlag, 1993.

[4] M. Ben-Or, S. Goldwasser, A. Wigderson, Completeness the-orems for non-cryptographic fault-tolerant distributed computation,1-10, Proc. ACM STOC ’88.

[5] G. Blakley, Safeguarding cryptographic keys, Proceedings of the Na-tional Computer Conference 48: 313–317, 1979

[6] E.F. Brickell, Some ideal secret sharing schemes, J. Combin. Math.Combin. Comput. 9, 105-113, 1989.

[7] B. Buchberger, Grobner Bases: An Algorithmic Method in Polyno-mial Ideal Theory, N. K. Bose ed. Recent trends in MultidimensionalSystem theory. Dordrecht: Reidel, 184-232, 1985.

[8] B. Buchberger, F. Winkler, Grobner Bases and Applications,Cambridge University Press 1998.

[9] H. Chen, R. Cramer, Algebraic geometric secret sharing schemesand secure multi-party computations over small fields, Advances inCryptology-CRYPTO 2006, Springer Berlin Heidelberg, 521-536, 2006.

[10] J. Derbisz, Methods of encrypting monotonic access structures, An-nales UMCS Informatica AI XI, 2, 49-60, 2011.

[11] J.-C. Faugere, A New Efficient Algorithm for Computing GrobnerBasis (F4), Journal of Pure and Applied Algebra 139(1-3), 6188, 1999.

[12] J.-C. Faugere, A new efficient algorithm for computing Grobner ba-ses without reduction to zero (F5), in: ISSAC 02: Proceedings fromthe International Symposium on Symbolic and Algebraic Computa-tion, pp. 7583, 2002.

296

Page 297: Kryptologia i Cyberbezpieczenstwo nr 6

Remarks on multivariate extensions of polynomial based . . .

[13] M. Fellows, N. Koblitz, Combinatorial cryptosystems galore!,Contemporary Mathematics, 51-61, 1994.

[14] M. Gasca, T. Sauer, Polynomial interpolation in several variables,Adv. Comput. Math., 12 (4), 377–410, 2000.

[15] N. Koblitz, Algebraiczne aspekty kryptografii, WNT, Warszawa 2000.[16] M. Mignotte, How to share a secret Cryptography. Springer Berlin

Heidelberg, 371-375, 1983.[17] P.J. Olver, On multivariate interpolation, Stud. Appl. Math. 116,

201-240, 2006.[18] O. Ore, The general Chinese remainder theorem, American Mathe-

matical Monthly, 59:365-370, 1952.[19] T. Sauer, Polynomial interpolation of minimal degree and Grobnerbases, Groebner Bases and Applications (Proc. of the Conf. 33 Years ofGroebner Bases), eds. B. Buchberger and F. Winkler, London Math.Soc. Lecture Notes, Vol. 251, 483–494 Cambridge University Press,1998.

[20] A. Shamir, How to share a secret, Communications of the ACM 22(11): 612613, 1979.

[21] T. Tassa, N. Dyn, Multipartite Secret Sharing by Bivariate Interpo-lation, ICALP (2), 288-299, 2006.

UWAGI NA TEMAT WIELOWYMIAROWYCHROZSZERZEŃ SCHEMATÓW PODZIAŁU SEKRETU

OPARTYCH NA WIELOMIANACH

Streszczenie. Wprowadzamy metody wykorzystujące bazy Grobnera do schematówpodziału sekretu. Opis bazuje na wielomianach z pierścienia R = K[X1, ..., Xl], gdzietożsamości użytkowników oraz ich udziały są lub są związane z ideałami w R. Główneteoretyczne rezultaty dotyczą algorytmicznej rekonstrukcji wielomianu wielu zmiennychz takich udziałów zgodnie z zadaną (dowolną) strukturą dostępu, co stanowi uogólnie-nie klasycznych schematów progowych. W pracy wykorzystujemy konstruktywną wersjęChińskiego twierdzenia o resztach w pierścieniu R pochodzącą od Beckera i Weispfen-ninga. Wprowadzone idee znajdują swój szczegółowy opis w naszych związanych z tymtematem pracach.Słowa kluczowe: bazy Grobnera, twierdzenie chińskie o resztach, schemat podziałusekretu, struktura dostępu, wielowymiarowa interpolacja.

Page 298: Kryptologia i Cyberbezpieczenstwo nr 6
Page 299: Kryptologia i Cyberbezpieczenstwo nr 6

UOGÓLNIONE STRUKTURY UPRAWNIEŃZ HIERARCHIĄ

Andrzej Pragacz

Wydział Matematyki, Informatyki i MechanikiUniwersytetu Warszawskiego (MIM UW)

Streszczenie. Struktury dostępu są używane przy zagadnieniach bezpieczeństwa zwią-zanych z sytuacjami gdzie jeden lub więcej podmiotów próbuje uzyskać pewien zasób.Przedstawimy uogólnienie struktur dostępu na przypadek wielu zasobów, co pozwala nazgrabne ujęcie schematów progowych i hierarchicznych.

Zaprezentujemy też użycie tzw. iloczynu dwuliniowego, definiowanego w grupiepunktów n-torsyjnych krzywej eliptycznej nad ciałem skończonym na dwóch przykłado-wych hierarchicznych schematach przydzielania kluczy.

Słowa kluczowe: struktury dostępu, uprawnienia, dzielenie sekretu, schemat progowy,hierarchia, iloczyn Weila, grupy, krzywe eliptyczne, struktury monotoniczne.

1. Wprowadzenie

Kryptografia to nauka zajmująca się m.in. kontrolą dostępu do infor-macji. Szczególnym przykładem jest tu np. dzielenie sekretu, czyli podzie-lenie pewnej informacji (sekretu) między pewne podmioty w ten sposób, żetylko niektóre grupy podmiotów mogą w pewien sposób „poznać” sekret.

Innym przykładem może być przydzielanie pewnej informacji (tzw.klucza) każdemu podmiotowi, i umożliwienie określonym grupom podmio-tów „poznanie” tego klucza. Przedstawiana praca dotyczy właśnie tegotypu zagadnień, ze szczególnym naciskiem na aspekt hierarchiczny.

2. Ogólne strukury dostępu

2.1. Struktury monotoniczne

Definicja 2.1. Niech dany będzie porządek ≼ zdefiniowany na elementachzbioru X. Wówczas struktura monotoniczna A względem porządku ≼to podzbiór X o własności:

∀x, y ∈ X x ∈ A ∧ x ≼ y ⇒ y ∈ AW szczególności będziemy rozważać struktury monotoniczne będące

rodzinami zbiorów, a porządek ≼ będzie definiowany przez zawieranie sięzbiorów (tj. x ≼ y ⇔ x ⊆ y).

Page 300: Kryptologia i Cyberbezpieczenstwo nr 6

A. Pragacz

Definicja 2.2. Niech X będzie pewnym zbiorem, a A ⊆ X jego podzbio-rem. Wówczas cl(A) zwane domknięciem monotonicznym A będzienajmniejszym takim zbiorem, że A ⊆ cl(A) i cl(A) będzie strukturą mono-toniczną.

Definicja 2.3. Jeśli A ⊆ X jest strukturą monotoniczną, to zbiór B ⊆ Ao własności cl(B) = A będzie zwany dalej zbiorem baz lub rodzinązbiorów bazowych A.

2.2. Ogólna struktura dostępu

Zdefiniujmy podstawowe pojęcie, które będzie szeroko wykorzysty-wane w niniejszej pracy:

Definicja 2.4. Ogólna struktura dostępu to trójka postaci(U,G, (Bs)s∈G), gdzie U to zbiór podmiotów, G to zbiór sekretów, a Bs ⊆P(U) to rodziną takich zbiorów podmiotów, które mogą odtworzyć sekrets. Ponadto, dla każdego s ∈ G rodzina Bs zwana dalej rodziną zbiorówdostępu jest strukturą monotoniczną względem relacji ⊆ (relacji zawiera-nia).

Będziemy dodatkowo oznaczać przez B′s najmniejszą rodzinę zbiorówbazowych Bs, tj. cl(B′s) = Bs.

2.3. Zbiór sekretów

Zdefiniujmy przydatne pojęcie:

Definicja 2.5. Zbiór sekretów, które może uzyskać zbiór podmio-tów U ⊆ U, to funkcja S : P(U)→ P(G) zdefiniowana jako

S(U) = s ∈ G : U ∈ Bs (2)

Zauważmy, że możemy równoważnie zapisać powyższą definicję jako:

S(U) = s ∈ G : ∃B ∈ B′s B ⊆ U (3)

Inaczej mówiąc, S(U) to zbiór takich sekretów, gdzie dla każdego se-kretu można znaleźć w rodzinie zbiorów dostępu Bs taki zbiór, który będziepodzbiorem U

Dla pojedynczego podmiotu u ∈ U będziemy stosować skrót notacyjnyS(u) := S(u)

300

Page 301: Kryptologia i Cyberbezpieczenstwo nr 6

Uogólnione struktury uprawnień z hierarchią

Fakt 2.6. Funkcja S(U) ma następujące własności:1. Jeśli dla każdego s ∈ G zachodzi ∅ ∈ Bs to wówczas S(∅) = ∅2. Jeśli U, V ∈ P(U) i U ⊆ V to S(U) ⊆ S(V )3. Dla każdego X ⊆ P(U) zachodzi:∪

U∈X

S(U) ⊆ S(∪U∈X

U) (4)

Dowód.1. Wynika wprost z definicji (∅ nie należy do Bs).2. Wynika z monotoniczności Bs. Jeśli zachodzi U ∈ Bs to V ∈ Bs.3. Prawdziwość wynika z poprzedniego punktu (dla każdego U ∈ X za-

chodzi S(U) ⊆ S(∪U∈X U)).

Definicja 2.7. S(u) definiuje nam w sposób naturalny relację częścio-wego porządku ≤S , <S oraz relację równoważności ∼S na podmiotachu, u′ ∈ U:

u≤Su′ ⇔ S(u) ⊆ S(u′) (5)

u<Su′ ⇔ S(u) ( S(u′) (6)

u∼Su′ ⇔ S(u) = S(u′) (7)

Definicja 2.8. Relację częściowego porządku ≤S , <S można rozsze-rzyć na podzbiory U w sposób następujący:

U≤SU ′ ⇔ S(U) ⊆ S(U ′) (8)

U<SU′ ⇔ S(U) ( S(U ′) (9)

2.4. Przykłady

2.4.1. Schemat progowy

Schemat progowy (k, n) dzielenia sekretu opiera się na dzieleniu poje-dynczego sekretu smiędzy n podmiotów w taki sposób, że tylko k lub więcejpodmiotów może uzyskać sekret s. Znanym przykładem implementacji jestklasyczny już schemat dzielenia sekretu Shamira opisany w pracy [6]

301

Page 302: Kryptologia i Cyberbezpieczenstwo nr 6

A. Pragacz

Struktura uprawnień dla takiego schematu opisuje się następująco:

• U = u1, u2, . . . , un• G = s• Bs = U ∈ P(U) : #U ≥ k

Łatwo zauważyć, że S(U) = s wtedy i tylko wtedy, gdy #U ≥ k

2.4.2. Schemat hierarchiczny

Rozważmy teraz przypadek, który omówimy dokładniej ze względu nato, że będziemy się nim później szczegółowo zajmować.

Każdy podmiot ui dysponuje swoim własnym sekretem si. Ponadtopodmioty spełniają pewną częściową relację porządku ≼, która ustala nanich hierarchię. Zachodzi ui ≼ uj wtw. gdy uj jest przodkiem ui w DAGu(lub w drzewie).

• U = u1, u2, . . . , un• G = s1, s1, . . . , sn• Przyjmujemy że:

Bsi = U ∈ P(U) : ∃u ∈ U ui ≼ u (10)

Relacja ≼ (definiująca) jest równoważna relacji ≤S (indukowanej przezwcześniej zdefiniowaną funkcję S). Dowód można znaleźć w dodatku A.

2.4.3. Schemat mieszany

Na koniec możemy omówić bardziej skomplikowany przypadek. Sekrets1 jest dzielony na udziały między podmioty u1, u2, zaś s2 jest dzielonyna udziały między podmioty u2, u3. Ponadto podmiot u4 ma dostęp doobu sekretów, a podmiot u5, który jest przodkiem u4, ma także dostęp dosekretu s3.

Struktura uprawnień dla takiego przypadku wygląda następująco:

• U = u1, u2, u3, u4, u5• G = s1, s2, s3• Bs1 =u5, u4, u1, u2, u4, u1, u2, u5, u4, u5, u1, u2, u5, u4, u1, u2• Bs2 =u5, u4, u2, u3, u4, u2, u3, u5, u4, u5, u2, u3, u5, u4, u2, u3

• Bs3 = u5

302

Page 303: Kryptologia i Cyberbezpieczenstwo nr 6

Uogólnione struktury uprawnień z hierarchią

2.5. Bezpieczeństwo systemu hierarchicznego

Nasuwa się pytanie, w jaki sposób można badać bezpieczeństwo hie-rarchicznych schematów przydzielania kluczy. Najczęściej używanym spo-sobem są gry między tzw. wyzywającym i tzw. atakującym. Poniżej zdefi-niowano taką właśnie grę:

Definicja 2.9. Schemat przydzielania kluczy jest bezpieczny względemodzyskiwania klucza (ang. Key Recovery, za [1]), jeśli nie istnieje dzia-łający w czasie wielomianowym atakujący (ang. Adversary) A, który maniezaniedbywalną przewagę (ang. Advantage) w grze o następujących fa-zach:

1. Setup: Wyzywający (ang. Challenger) wykonuje Setup(1k, G), gdzieG = ⟨V,E⟩ jest skierowanym grafem acyklicznym i przekazuje całąinformację publiczną Pub atakującemu.

2. Attack: Atakujący dokonuje zapytania Corrupt(vi) do wyzywającego,na które tenże odpowiada atakującemu, zwracając sekretną informacjęwierzchołka vi czyli Sec(vi).

3. Break: Atakujący zwraca wierzchołek v∗ wraz z odgadniętym klu-czem prywatnym Pr(v∗)′. Wierzchołek v∗ musi spełniać warunek: dlakażdego vi zachodzi v∗ ∈ Desc(vi) (nie należy do zbioru potomków)

Przewagę w tej grze, dalej zwaną grą KR, definiujemy jako:

AdvKRA = P(Pr(v∗)′ = Pr(v∗))

Definicja 2.10. Schemat przydzielania kluczy jest bezpieczny względemodzyskiwania klucza ustalonego wierzchołka v, jeśli nie istnieje dzia-łający w czasie wielomianowym atakujący A, który ma niezaniedbywalnąprzewagę w grze opisanej wyżej z następującą modyfikacją, że atakującyzwraca w fazie Break wierzchołek v∗ = v. Grę tę będziemy nazywać dalejgrą SKRv.

Innymi słowy, wierzchołek v∗ zwrócony w fazie Break jest już znanyw fazie Setup i wyzywający może wykorzystać tę informację.

3. Zastosowania iloczynu dwuliniowego

3.1. Definicja iloczynu dwuliniowego

Poniższą definicję przytaczamy za [2], [8].

303

Page 304: Kryptologia i Cyberbezpieczenstwo nr 6

A. Pragacz

Definicja 3.1. Niech będą dane grupy cykliczne G1 i G2, obie tego samegorzędu q. W przypadku grupy G1 będziemy stosować notację addytywną,a w przypadku G2 notację multiplikatywną.

Iloczyn dwuliniowy na grupie G1 o wartościach w grupie G2 definiujemyjako funkcję G1 ×G1 → G2 o następujących własnościach:

1. ∀a, b ∈ Z ∀P,Q ∈ G1 e(aP, bQ) = e(P,Q)ab (dwuliniowość)2. dla każdego P będącego generatorem e(P, P ) = 1 (niezdegenerowal-

ność)3. e jest efektywnie obliczalna

Konstrukcję takiego iloczynu z użyciem tzw. iloczynu Weila, definiowa-nym w grupie punktów n-torsyjnych krzywej eliptycznej nad ciałem skoń-czonym można znaleźć w [2], [8].

Jednym z najbardziej znanych przykładów użycia jest schematBoneha-Franklina ([2]), będący schematem asymetrycznego szyfrowania.

3.2. Dwuliniowy Problem Diffiego-Hellmana i jego warianty

Definicja 3.2. Generator parametrów BDH:Niech k będzie parametrem bezpieczeństwa. Wówczas niech G będzie takąfunkcją, że:

G(1k) = ⟨q,G1, G2, e⟩

gdzie G1 jest grupą cykliczną, G2 jest grupą cykliczną, obie są rzędu q,natomiast e : G1 × G1 → G2 jest iloczynem dwuliniowym zdefiniowanymna tych grupach.

Należy rozumieć tutaj, że G(1k) generuje nam „opis” grup G1, G2oraz iloczynu dwuliniowego e, który ma rozmiar wielomianowy względemk (czyli nie są np. generowane wszystkie elementy grupy G1). „Opis” gruppozwala na wyznaczenie w czasie wielomianowym przykładowych generato-rów, zaś „opis” iloczynu e pozwala na obliczenie e w czasie wielomianowym.k jest przekazywane do G jako ciąg k jedynek. dzięki tej sztuczce notacyj-nej można powiedzieć, że G jest wielomianowy względem k, gdyż rozmiardanych wejściowych to właśnie k.

Definicja 3.3. Obliczeniowy dwuliniowy problem Diffiego-Hell-mana (BCDH):Niech będą dane cykliczne grupy G1 i G2, obie rzędu q. Ponadto niechbędzie zdefiniowany iloczyn dwuliniowy e na G1 i G2. Dla zadanego ge-neratora P ∈ G1 i losowych a, b, c ∈ Z∗q oblicz e(P, P )abc na podstawie

304

Page 305: Kryptologia i Cyberbezpieczenstwo nr 6

Uogólnione struktury uprawnień z hierarchią

wyłącznie P , aP , bP i cP . Innymi słowami:

BCDHG1,G2,e(P, aP, bP, cP ) = e(P, P )abc

Definicja 3.4. Obliczeniowy dwuliniowy kwadratowy problemDiffiego-Hellmana (BSCDH):Niech będą dane cykliczne grupy G1 i G2, obie rzędu q. Ponadto niech bę-dzie zdefiniowany iloczyn dwuliniowy e na G1 i G2. Dla zadanego genera-tora P ∈ G1 i losowych a, b ∈ Z∗q oblicz e(P, P )a

2b na podstawie wyłącznieP , aP i bP . Innymi słowami:

BCDHG1,G2,e(P, aP, bP ) = e(P, P )a2b

Definicja 3.5. Obliczeniowy dwuliniowy odwrócony problemDiffiego-Hellmana (BICDH):Niech będą dane cykliczne grupy G1 i G2, obie rzędu q. Ponadto niechbędzie zdefiniowany iloczyn dwuliniowy e na G1 i G2. Dla zadanego ge-neratora P ∈ G1 i losowych a, b ∈ Z∗q oblicz e(P, P )a

−1b na podstawiewyłącznie P , aP i bP Innymi słowami:

BCDHG1,G2,e(P, aP, bP ) = e(P, P )a−1b

Twierdzenie 3.6. Problemy BCDH, BSCDH, BICDH są obliczenioworównoważne.

Dowód tego faktu można znaleźć w dodatku B.

Definicja 3.7. Decyzyjny dwuliniowy problem Diffiego-Hellmana(BDDH):Niech będą dane cykliczne grupy G1 i G2, obie rzędu q. Ponadto niech bę-dzie zdefiniowany iloczyn dwuliniowy e na G1 i G2. Dla zadanego genera-tora P ∈ G1 i losowych a, b, c, d ∈ Z∗q zadecyduj, czy e(P, P )d = e(P, P )abc,na podstawie wyłącznie P , aP , bP , cP i e(P, P )d. Innymi słowami:

BDDHG1,G2,e(P, aP, bP, cP, e(P, P )d) =

1 gdy e(P, P )abc = e(P, P )d

0 w p.p.

Definicja 3.8. Dwuliniowe założenie Diffiego-Hellmana (ang. Bili-near Diffie-Hellman, BDH):

305

Page 306: Kryptologia i Cyberbezpieczenstwo nr 6

A. Pragacz

Dwuliniowy problem Diffiego-Hellmana (obliczenie e(P, P )abc na podstawiewyłącznie P , aP , bP i cP ) jest trudny.

Formalnie mówiąc, zdefiniujmy przewagę (ang. advantage) dla algo-rytmu A rozwiązującego problem BCDH.

AdvBCDHA (k) = P

(AG1,G2,e(P, aP, bP, cP )

∣∣∣ ⟨q,G1, G2, e⟩ ← G(1k)

a, b, c← Z∗q , P ← G1

)

Wówczas przewaga

ϵBCDH = AdvBCDH(k) = maxAAdvBCDHA (k)

jest zaniedbywalna.

Definicja 3.9. Decyzyjne dwuliniowe założenie Diffiego-Hellmana(ang. Decisional Bilinear Diffie-Hellman, DBDH):Decyzyjny dwuliniowy problem Diffiego-Hellmana (rozstrzygnięciee(P, P )d = e(P, P )abc na podstawie wyłącznie P , aP , bP , cP i e(P, P )d)jest trudny.

Formalnie mówiąc, zdefiniujmy przewagę (ang. advantage) dla algo-rytmu A rozwiązującego problem BDDH.

ρ1 = P

(AG1,G2,e(P, aP, bP, cP, e(P, P )d)

= 1

∣∣∣∣∣ ⟨q,G1, G2, e⟩ ← G(1k)

a, b, c←R Z∗q , d = abc, P ← G1

)

ρ0 = P

(AG1,G2,e(P, aP, bP, cP, e(P, P )d) = 1

∣∣∣∣∣ ⟨q,G1, G2, e⟩ ← G(1k)

a, b, c, d←R Z∗q , P ← G1

)

AdvBDDHA (k) = |ρ0 − ρ1|

Wówczas przewaga

ϵBDDH = AdvBDDH(k) = maxAAdvBDDHA (k)

jest zaniedbywalna.

306

Page 307: Kryptologia i Cyberbezpieczenstwo nr 6

Uogólnione struktury uprawnień z hierarchią

3.3. Schemat pierwszy: Liu et al.

W tym systemie [4] zakładamy, że każdy podmiot jest wierzchołkiemDAGu. Ten system opiera się na użyciu iloczynu dwuliniowego e : G1 ×G1 → G2, ale wykorzystuje go w inny sposób (można odnaleźć pewnepodobieństwo do schematu Boneha-Franklina [2]).

Każdy „zasób” t (w naszej terminologii sekret) ma swój klucz pry-watny DKt ∈ N.

Dostęp do niego mogą uzyskać podmioty Si. Każdy podmiot jest iden-tyfikowany przez publiczne QSi = H1(IDSi)

Niech będą dane funkcje haszujące H1 : 0, 1∗ → G1, H2 : G2 →0, 1∗. Podczas tworzenia kluczy wybierane jest α ∈ Z∗q , r ∈R Z∗q , gdzieq = |G1|. Następnie upubliczniane jest P0 ∈ G1, U = rP0, Ppub = αP0. Dlakażdego podmiotu obliczany jest jego prywatny klucz DSi = αQSi . Dlakażdego zasobu jest generowana publiczna funkcja:

FDKt = DKt ⊕

∏Sjmadostępdot

(x⊕H2(grSj ))

gSj = e(QSj , Ppub)

Obliczenie klucza DKt odbywa się następująco:

DKt = FDKt(H2(e(DSi , U)))

Wystarczy bowiem, że tylko jedno z wyrażeń x⊕H2(grSj ) się wyzeruje,co spowoduje wyzerowanie całego iloczynu a w konsekwencji:

FDKt(H2(e(DSi , U))) = DKt ⊕ 0 = DKt

Dowód bezpieczeństwa można znaleźć w [4].

3.4. Schemat drugi

W tym przypadku ograniczamy się do hierarchii drzewiastej (każdypodmiot z wyjątkiem jednego ma swój podmiot nadrzędny, czyli rodzica).

Niech 1k będzie parametrem bezpieczeństwa. Dane jest drzewo T =⟨V,E⟩ reprezentujące hierarchię podmiotów (każdemu podmiotowi odpo-wiada wierzchołek).

Procedura Setup(1k, T ):

1. oblicza G(1k) = ⟨q,G1, G2, e⟩

307

Page 308: Kryptologia i Cyberbezpieczenstwo nr 6

A. Pragacz

2. wyznacza dwa losowe generatory Q,P ∈R G1 o tej własności, żee(Q,P ) nie jest elementem neutralnym G2.

3. upublicznia informację: q,G1, G2, e, Q, P4. Dla każdego wierzchołka v w porządku preorder:

(a) wybiera losowo sv ∈R Z∗q(b) wylicza ukrytą informację

Sec(v) =svQ dla korzeniasvSec(u) gdy rodzicem v jest u

(c) Ukryta informacja Sec(v) jest przekazywana do wierzchołka vprzez zaufany kanał.

5. Dla każdej pary v, u dla której v ≺ u, w porządku od najkrótszejodległości między v i u do najdłuższej:(a) oblicza kluczy publiczny (z użyciem wcześniej wylosowanego sv):

Pub(v, u) =svP gdy u jest rodzicem vsvPub(w, v) gdy pewne w ≺ u jest rodzicem v

(b) upublicznia Pub(v, u)

W powyższym schemacie klucz prywatny efektywnie może obliczyćjedynie wierzchołek v bądź wierzchołek u będący przodkiem v.

Klucz prywatny dla v to

Pr(v) = DeriveKey(v, v) = e(Sec(v), P )

W przypadku, jeśli u będący przodkiem v chce obliczyć klucz prywatny v:

Pr(v) = DeriveKey(v, u) = e(Sec(u), Pub(v, u))

3.4.1. Przykład

Aby uczynić powyższą definicję schematu przydzielania kluczy czytel-niejszą, zaprezentujmy ją na przykładowym drzewie.

Na tym drzewie wykonujemy opisaną wcześniej proceduręSetup(1k, T ),gdzie 1k będzie parametrem bezpieczeństwa. W wyniku jej każdy z wierz-chołków otrzymuje swoją informację ukrytą, co zostało zaprezentowane narysunku 1.

Ponadto w repozytorium kluczy publicznych zostają umieszczone klu-cze publiczne, ukazane na rysunku 2. Każdy z tych kluczy jest dostępnydla każdego podmiotu.

308

Page 309: Kryptologia i Cyberbezpieczenstwo nr 6

Uogólnione struktury uprawnień z hierarchią

Rysunek 1. Drzewo T z przypisaną do każdego wierzchołka jego informacją ukrytą. Dlauproszczenia przyjęto, że si = svi . Należy zwrócić uwagę, że dana informacja ukryta

jest znana tylko danemu wierzchołkowi

Zobrazujmy obliczanie kluczy na przykładzie. Przyjmijmy, że wierz-chołek v1 chce obliczyć klucz prywatny wierzchołka v9. Wówczas bie-rze swoją informacje ukrytą Sec(v1) = s1s0Q oraz klucz publicznyPub(v9, v1) = s9s3P i oblicza:

e(Sec(v1), Pub(v9, v1)) = e(s1s0Q, s9s3P ) = e(Q,P )s9s3s1s0 = Pr(v9)

3.4.2. Bezpieczeństwo

Twierdzenie 3.10. Schemat zaproponowany w niniejsze pracy jest bez-pieczny względem odzyskiwania klucza (KR), jeśli decyzyjne dwuliniowezałożenie Diffiego-Hellmana jest prawdziwe.

Przedstawimy tu jedynie schemat dowodu, wzorowany na pracy [1].Posłużymy się najpierw grą SKRv∗ w celu udowodnienia bezpieczeń-

stwa wyżej opisanego schematu.

309

Page 310: Kryptologia i Cyberbezpieczenstwo nr 6

A. Pragacz

Rysunek 2. Drzewo T z kluczami publicznymi wierzchołków. Klucze publiczne, któresą używane do obliczania klucza prywatnego danego wierzchołka zostały umieszczoneobok tego wierzchołka. Przykładowo, Pub(v9, v1) = s9s3P . Dla uproszczenia przyjęto

że si = svi

Dla uproszczenia przyjmujemy że q,G1, G2, e, Q, P są już ustalone i żeQ = P .

Niech v′ będzie pewnym wierzchołkiem z T .Niech sv,u ∈R Z∗q będzie losowo wybrany dla każdego v ≺ u.

Zdefiniujmy RandomSetup(1k, T, v′) analogicznie do Setup(1k, T ) z tąróżnicą że Sec(v′) = ⊥ (jest nie zdefiniowany) oraz:

Pub(v, u) =

sv,uP gdy rodzicem v jest u = v′

sv,wPub(w, v) gdy pewne v′ = w ≺ u jest rodzicem vsvP gdy rodzicem v jest u = v′

svPub(w, v) gdy pewne v′ = w ≺ u jest rodzicem v

Zdefiniujmy BDHSetup(1k, T, v′, aP, bP ) analogicznie do Setup(1k, T ) z tą

310

Page 311: Kryptologia i Cyberbezpieczenstwo nr 6

Uogólnione struktury uprawnień z hierarchią

różnicą że:

Sec(v) =

⊥ dla v = v′

svQ dla korzeniasvbP gdy rodzicem v jest v′

svSec(u) gdy rodzicem v jest u = v′

Pub(v, u) =

svaP gdy rodzicem v jest u = v′

sv,wPub(w, v) gdy pewne v′ = w ≺ u jest rodzicem vsvP gdy rodzicem v jest u = v′

svPub(w, v) gdy pewne v′ = w ≺ u jest rodzicem v

Łatwo zauważyć, że jeśli użyjemy BDHSetup zamiast Setup do inicja-lizacji systemu, to Sec(v′) = a−1bP i w konsekwencji Pr(v′) = e(P, P )a

−1b.Zdefiniujemy dwie gry, G oraz G′ w następujący sposób:

• Gra G0: Gra SKRv∗, gdzie w fazie Setup jest wykonywana proceduraSetup(1k, T )

• Gra G1: Gra SKRv∗, gdzie w fazie Setup jest wykonywana proceduraRandomSetup(1k, T, r) gdzie r to korzeń T .Będziemy oznaczać przez Tj zdarzenie takie że Pr(v∗) = Pr(v∗)′

w grze Gj .

Lemat 3.11. Niech ϵBDDH będzie zdefiniowany tak jak w (12). Wówczas:

|P(T0)− P(T1)| ≤ ϵBDDH

Dowód. Niech będzie dany algorytm A, który jest w stanie rozróżnić mię-dzy grą G0 i G1. Wówczas skonstruujemy algorytm B taki, że jest w sta-nie rozróżnić, czy dla zadanych parametrów P , aP , bP, e(P, P )c będziepotrafił zadecydować czy e(P, P )c = e(P, P )a

−1b. W konsekwencji, korzy-stając z faktu 3.6, możemy zbudować algorytm B′ taki że dla zadanychparametrów P , a′P , b′P, c′P, e(P, P )d

′będzie potrafił zadecydować, czy

e(P, P )d′

= e(P, P )a′b′c′ .

Przeprowadźmy zatem konstrukcję B. Algorytm otrzymuje na wejściuparametry „środowiskowe”G1,G2, e oraz właściwe parametry x, y, z ∈ G1,w ∈ G2 (w domyśle x = P , y = aP , z = bP , w = e(P, P )c). Algorytm tenbędzie „interpolować” zachowanie między grą G0 i grą G1 w następującysposób:

1. Setup:Wyzywający:

311

Page 312: Kryptologia i Cyberbezpieczenstwo nr 6

A. Pragacz

(a) wykonuje procedurę BDHSetup(1k, T, r, y, z)(b) ustala Pr(r) = w(c) przekazuje atakującemu informację publiczną:

⟨q,G1, G2, e, x, x, Pub⟩

2. Attack:Algorytm A jako atakujący wykonuje zapytania Corrupt(vi). Wy-zywający odpowiada, zwracając mu informacją ukrytą Sec(vi). Za-uważmy, że A nie może pytać o v ∈ Anc(v∗), w szczególności o r.

3. Break:Algorytm A zwraca ⟨v∗, P r(v∗)′⟩Po zakończeniu fazy Break algorytm B oblicza Pr(v∗) (np. na podsta-

wie wcześniej wyznaczonego Sec(v∗), lub jeśli v∗ = r, to Pr(v∗) = w).Następnie B zwraca 1 jeśli Pr(v∗)′ = Pr(v∗) a 0 w przeciwnym przy-

padku. Stąd:

ϵBDDH ≥ AdvBDDHB′

= |P(B′ zwrócił 1|d′ jest losowe )− P(B′ zwrócił 1|d′ = a′b′c′)|= |P(B zwrócił 1|c jest losowe )− P(B zwrócił 1|c = a−1b)|= |P(T1)− P(T0)|

Dalej dowód przebiega analogicznie jak w [1].

4. Podsumowanie

W niniejszej pracy zdefiniowaliśmy ogólną strukturę uprawnień orazopisaliśmy przykładowe rodzaje takich struktur: progowe, hierarchicznei mieszane.

Opisaliśmy również dwa przykładowe systemy przydzielania kluczy(jeden oparty na pracy Liu et al., drugi autorski) oparte na iloczynie dwuli-niowym definiowanym w grupie punktów n-torsyjnych krzywej eliptycznejnad ciałem skończonym.

312

Page 313: Kryptologia i Cyberbezpieczenstwo nr 6

Uogólnione struktury uprawnień z hierarchią

A. Dowód równoważności relacji ≼ i ≤SPokażemy teraz, że relacja ≼ (definiująca) jest równoważna relacji ≤S

(indukowanej przez wcześniej zdefiniowaną funkcję S).Niech G = ⟨V,E⟩ będzie DAGiem odpowiadającym relacji ≼. Ozna-

czymy dalej Zbiór przodków:

A≼u = Anc(u) = v ∈ U : u ≼ v

Będziemy dalej pomijać ≼ w zapisie (tj. Au = A≼u )

Lemat A.1. Zachodzi równoważność: Ay ⊆ Ax ⇔ y ∈ Ax

Dowód. (⇒) wynika natychmiast z definicji.(⇐) Dowód przez sprzeczność. Niech Ay ⊆ Ax. Wówczas zachodzi jedenz wymienionych przypadków:

• Ax ( Ay. Jest to równoważne y ≺ x, skąd mamy że y ∈ Ax, co dajepożądaną sprzeczność.

• x i y są względem siebie nieporównywalne (x ≼ y i y ≼ x). Wówczasmamy dwa przypadki:

– Istnieje takie w będące najmniejszym wspólnym przodkiem (x ≺w oraz y ≺ w) i zachodzi Aw = Ax ∩ Ay. Z poprzedniego pod-punktu wiemy, że y ∈ Aw, co w konsekwencji daje nam że y ∈ Ax.

– Nie istnieje żaden wspólny przodek x i y, stąd Ax i Ay są roz-łączne, co dowodzi y ∈ Ax.

Lemat A.2. NiechBsi będzie zdefiniowana jak w równaniu (10). Wówczasdla każdego ui, uj ∈ U:

ui ≼ uj ⇔ Bsj ⊆ Bsi

Dowód. Możemy zdefiniować Bsi jako:

Bsi = U ⊆ U : U ∩A≼ui = ∅

Wówczas łatwo zauważyć, że:

ui ≼ uj ⇔ Auj ⊆ Aui ⇔ Bsj ⊆ Bsi

Lemat A.3. NiechBsi będzie zdefiniowana jak w równaniu (10). Wówczasdla każdegoui, uj ∈ U:

Bsj ⊆ Bsi ⇔ ∀uk ∈ U ui ∈ Bsk ⇒ uj ∈ Bsk

313

Page 314: Kryptologia i Cyberbezpieczenstwo nr 6

A. Pragacz

Dowód. (⇒) niech ui ∈ Bsk . Wówczas Bsi ⊆ Bsk , czyli Bsj ⊆ Bsi ⊆Bsk , co daje nam ostatecznie uj ∈ Bsk (⇐) Dowód przez sprzeczność.Załóżmy, że Bsj ⊆ Bsi . Jest to równoważne Auj ⊆ Aui i w konsekwencjirównież uj ∈ Aui (korzystamy tutaj z lematu A.1). W konsekwencji uj ∈Bsi . Jednak ponieważ ui ∈ Bsi , stąd z prawej strony równoważności(tezy) mamy, że uj ∈ Bsi , co prowadzi nas do pożądanej sprzeczności.

Fakt A.4. Relacja ≼ (definiująca) jest równoważna relacji ≤S (indukowa-nej przez wcześniej zdefiniowaną funkcję S), tj.

ui ≼ uj ⇔ ui≤Suj

Dowód.

ui ≼ uj ⇔ (korzystamy z lematu A.2)

⇔ Buj ⊆ Bui

⇔ (korzystamy z lematu A.3)

⇔ ∀uk ∈ U ui ∈ Bsk ⇒ uj ∈ Bsk

⇔ s ∈ G : ui ∈ Bs ⊆ s ∈ G : uj ∈ Bs⇔ S(ui) ⊆ S(uj)⇔ ui≤Suj

B. Dowód równoważności problemów BCDH i BICDH

Przystąpimy teraz do pokazania zależności między wyżej opisanymiproblemami:

Twierdzenie B.1. BSCDHG1,G2,e =P BCDHG1,G2,e

Dowód. Pokażemy, że powyższe problemy są równoważne poprzez wielo-mianowe redukcje.

• BSCDHG1,G2,e ≤P BCDHG1,G2,e

BCDHG1,G2,e(P, aP, aP, bP ) = e(P, P )a2b

= BSCDHG1,G2,e(P, aP, bP )

314

Page 315: Kryptologia i Cyberbezpieczenstwo nr 6

Uogólnione struktury uprawnień z hierarchią

• BCDHG1,G2,e ≤P BSCDHG1,G2,eNiech:

x = BSCDHG1,G2,e(2P, aP, cP )

= BSCDHG1,G2,e(2P,a

2(2P ),

c

2(2P ))

= e(2P, 2P )a24 ·c2

= e(P, P )12a2c

y = BSCDHG1,G2,e(2P, bP, cP )

= e(P, P )12 b2c

z = BSCDHG1,G2,e(2P, aP + bP, cP )

= e(P, P )12 (a+b)

2c

= e(P, P )12a2c+abc+ 12 b

2c

wówczas:BCDHG1,G2,e = z(xy)−1

Twierdzenie B.2. BICDHG1,G2,e =P BSCDHG1,G2,e

Dowód. Pokażemy, że powyższe problemy są równoważne poprzez wielo-mianowe redukcje.

• BICDHG1,G2,e ≤P BSCDHG1,G2,e

BSCDHG1,G2,e(aP, P, bP ) = BSCDHG1,G2,e(aP,1a

(aP ),b

a(aP ))

= e(aP, aP )1a2ba

= e(P, P )1a b

= BICDHG1,G2,e(P, aP, bP )

• BSCDHG1,G2,e ≤P BICDHG1,G2,e

BICDHG1,G2,e(aP, P, bP ) = BICDHG1,G2,e(aP,1a

(aP ),b

a(aP ))

= e(aP, aP )aba

= e(aP, aP )b

= e(P, P )a2b

= BSCDHG1,G2,e(P, aP, bP )

315

Page 316: Kryptologia i Cyberbezpieczenstwo nr 6

A. Pragacz

Wniosek B.3. BCDHG1,G2,e =P BICDHG1,G2,e

Dowód. Wynika natychmiastowo z B.2, B.1 i przechodniości relacji =P

Literatura

[1] M. J. Atallah, M. Blanton, N. Fazio, K. B. Frikken, Dynamicand Efficient Key Management for Access Hierarchies, ACM Transac-tions on Information and System Security, Vol. 12, No. 3, Article 18,January 2009.

[2] D. Boneh, M. Franklin, Identity-Based Encryption from the WeilPairing, SIAM J. of Computing, Vol. 32, No. 3, pp. 586–615, 2003

[3] Announcing the Advanced Encryption Standard (AES) Federal Infor-mation Processing Standards Publication 197, United States NationalInstitute of Standards and Technology (NIST). November 26, 2001.

[4] C-H Liu, Y-F Chung, T-S Chen, S-D Wang, An Id-based AccessControl In A Hierarchical Key management For Mobile Agent, Inter-national Journal of Innovative Computing, Information and ControlVolume 7, Number 3, March 2011

[5] S. J. MacKinnon, P. D. Taylor, H. Meijer, S. G. Akl, AnOptimal Algorithm for assigning cryptographic keys to control accessin a Hierarchy, IEEE Transactions on Computers, vol C-34, no. 9(1985)

[6] A. Shamir, How to share a secret, Communications of the ACM,Volume 22 Issue 11, Nov. 1979, 612–613

[7] J. H Silverman, it The Arithmetic of Elliptic Curves, 2nd Edition,Springer (2009)

[8] L. C. Washington, Elliptic curves. Number theory and Cryptogra-phy, Chapman & Hall/CRC(2003)

GENERALIZED ACCESS STRUCTURES WITHHIERARCHY

Abstract. Access structures are used in cases associated with situations when one ormore entities are trying to get a resource. We will present a generalization to the caseof access structures many resources, which allows for a nice description of thresholdsand hierarchical schemes. We will also present the use of the so-called bilinear product,defined in the group of n-torsion points of an elliptic curve over a finite field on twoexemplary hierarchical allocation key schemes.

Keywords: access structures, privileges, secret sharing, threshold scheme, hierarchy,Weil pairing, bilinear pairing, groups, elliptic curves, monotonic structures.

Page 317: Kryptologia i Cyberbezpieczenstwo nr 6

V. PRAKTYCZNE ZASTOSOWANIAKRYPTOLOGII

PROGRAMY JEDNORAZOWE: KRÓTKIEWPROWADZENIE

Tomasz Kazana

Instytut Informatyki, Wydział Matematyki, Informatyki i MechanikiUniwersytet Warszawski

Streszczenie. Niniejszy dokument stanowi skróconą wersję pracy „One-time Programswith Limited Memory” autorstwa Konrada Durnogi, Stefana Dziembowskiego, TomaszaKazany oraz Michała Zająca, prezentowanej na konferencji INSCRYPT 2013 [11].Praca bada pojęcie programów jednorazowych wprowadzonych na konferencjiCRYPTO’08 przez Shafi Goldwasser et al. Program jednorazowy to urządzenie zawie-rające program C oraz posiadające własność, iż może być on wykonany tylko raz, nawybranym wejściu. Goldwasser et al. pokazali jak zaimplementować programy jednora-zowe, używając specyficznych rozwiązań sprzętowych, tzw. OTM-ów. (ang. One-TimeMemory).Ta praca podaje inną implementację programów jednorazowych, działającą w tzw. mo-delu obliczeń SBA. Charakterystyczne cechy tego modelu to ograniczona pamięć, wyciekioraz użycie losowej wyroczni.

Słowa kluczowe: funkcje pseudolosowe; urządzenia jednorazowe; programy jednora-zowe; zaciemnianie obwodów.

1. Wprowadzenie

Pojęcie jednorazowych programów zostało wprowadzone przez Gol-dwasser et al [20]. Nieformalnie mówiąc, program jednorazowy to urządze-nie D zawierające program w C, który posiada następujące własność: pro-gram C może być wykonany na co najwyżej jednym wejściu. Innymi słowy,każdy użytkownik, nawet złośliwy, który uzyskuje dostęp do D, powinienbyć w stanie nauczyć się wartości C(x) dla dokładnie jednego wybranegoprzez siebie x. Jak twierdzi Goldwasser et al, programy jednorazowe mająogromny potencjał zastosowań w ochronie oprogramowania, tokenów elek-tronicznych i elektronicznych środków pieniężnych.

Zwróćmy uwagę na następującą obserwację: bezpieczeństwo progra-mów jednorazowych nie może być oparte tylko na oprogramowaniu. Innymisłowy, musi zawsze zawierać pewne założenia o właściwościach fizycznychurządzenia D. Istotnie, jeśli zakłada się, że cała zawartość C w D możebyć swobodnie czytana, to przeciwnik może tworzyć swoje własne kopie

Page 318: Kryptologia i Cyberbezpieczenstwo nr 6

T. Kazana

D i obliczyć C tyle razy, ile chce. Stąd naturalne pytanie jakie „własnościfizyczne” są potrzebne do stworzenia programów jednorazowych. Oczywi-ście, trywialny sposób to po prostu założyć, że D jest w pełni zaufany, czyliprzeciwnik nie może odczytać lub zmodyfikować jego zawartość. Oczywi-ście wówczas, można po prostu umieścić dowolny program C na D, dodającdodatkowe instrukcje, aby umożliwić tylko jedno wykonanie C. Niestety,okazuje się, że takie założenie jest często nierealne. Liczne prace nad tzw.wyciekami (ang. leakage) i wirusami pokazują, że w praktyce stworzenieurządzenia odpornego na wycieki i wirusy jest trudne, jeśli nie niemożliwe.Dlatego pożądane jest, aby oprzeć programy jednorazowe na słabszych za-łożeniach fizycznych.

Konstrukcja Goldwasser et al. opiera się na następującym założe-niu fizycznym: D jest wyposażony w specjalne gadżety, tzw. OTM (ang.One-Time Memory). Przed umieszczeniem OTM w D, gadżet OTM możezostać zainicjalizowany z parą wartości (K0, K1).Program C, który jestprzechowywany na D może później poprosić OTM o dokładnie jedną z war-tościKi. Główną cechą bezpieczeństwa OTM jest to, że w żadnym wypadkunie jest możliwe jednoczesne poznanie zarówno K0 jak i K1. Technicznie,może to być zrealizowane przez (a) przechowywanie na każdym OTM flagiu początkowo ustawionej na 0, która zmienia swą wartość na 1 po pierw-szym zapytaniu do tego OTM, oraz (b) dodanie wymogu, że jeśli u = 1,to OTM nie odpowiada na żadne zapytania. Okazuje się, że przy założeniuo posiadaniu OTM w D, można skonstruować ogólny kompilator, któryprzekształca dowolny program C (w postaci układu logicznego) do jedno-razowego programu. To jest właśnie główny wynik pracy Goldwasser etal [20]: zamiast nierealistycznych założeń o całym D, zakłada ona tylkoistnienie bezpiecznych gadżetów OTM. Bezpiecznych, tzn. odpornych nawycieki i manipulacje.

W naszej pracy staramy podejść do problemu inaczej. Nie zakładamyistnienia żadnych dodatkowych bezpiecznych gadżetów. W zamian za to,przyjmujemy, że urządzenie ma ograniczoną pamieć wewnętrzną oraz (ak-tywny) przeciwnik ma pewne ograniczenie na rozmiar wycieku. Te założe-nia formalnie opisuje model SBA.

W pełnej wersji pracy [11] pokazujemy dokładną konstrukcję i dowódna istnienie programów jednorazowych w modelu SBA.

318

Page 319: Kryptologia i Cyberbezpieczenstwo nr 6

Programy jednorazowe: krótkie wprowadzenie

2. SBA model

2.1. Wstęp

SBA model – wprowadzony w pracy [15] – dotyczy problemów kryp-tograficznych w środowisku z wyciekami informacji oraz aktywnym prze-ciwnikiem. Zaczniemy od wyjaśnień intuicyjnych.

Rozważamy ogólny schemat: istnieje długi ciąg bitów R (w zamia-rze tajny), z którego potrafimy coś obliczyć (powiedzmy f(R)), a chcemyaby pozostało to sekretem. W trakcie eksperymentu pojawi się przeciwnik,który czegoś o R się dowie, ale prawie zawsze okaże się ta wiedza zbyt mała,aby wnioskować coś na temat f(R).

We współczesnej kryptografii istnieje trend konstruowania protokołówodpornych na podobnych przeciwników. Zwykle albo zakładamy iż prze-ciwnik jest pasywny, co oznacza, że nie wpływa na R w trakcie wykonaniaobliczeń przez uczciwego użytkownika, a jedynie wybiera funkcję g i po-znaje g(R)1. Oczywiście g nie może być dowolne, bo wówczas gdy g = f ,to przeciwnik poznaje cały sekret od razu. Ta uwaga sugeruje, że rozsądnejest przyjęcie założenia, że g musi być wybrane z jakiejś (możliwie sze-rokiej) klasy, do której nie należy f . Przykładem jest założenie, że zbiórwartości g jest istotnie mniejszy niż f , tzn. |g(R)| ≪ |f(R)|. Przykładyprac o atakach pasywnych: [1, 4, 5, 8–10, 17–19, 21–26]. Inne założenie totak zwany przeciwnik aktywny2, który może złośliwie podmieniać R nawybrane R′ czy wręcz zmieniać algorytm liczenia funkcji z f na wybranef ′. Przykłady prac z tej dziedziny: [2, 3, 6, 7, 12, 13, 16].

W SBA3 modelu podjęta jest próba połączenia tych dwóch paradyg-matów. To znaczy opisany niżej model zakłada, że istnieje aktywny wirus(Asmall), który dodatkowo może spowodować wybrany wyciek. Przy pew-nych ograniczeniach pokazujemy, że skonstruowane schematy wciąż pozo-stają bezpieczne.

2.2. Motywacja dla SBA-modelu

Model SBA próbuje wypełnić lukę między światem praktyków i teo-retyków. Z jednej strony bezpieczeństwo jest w pełni udowodnione, ale jakzwykle w kryptografii, przyjmuje się przy tym pewne założenia postulo-wane przez praktyków, którzy wierzą, że pewne konstrukcje są bezpieczne.

1 Popularnie mówiąc: przeciwnik powoduje wyciek g.2 Popularnie mówiąc: przeciwnik jest wirusem.3 Skrót SBA pochodzi od Small and Big Adversary.

319

Page 320: Kryptologia i Cyberbezpieczenstwo nr 6

T. Kazana

Konkretnie, korzystamy z założenia o istnieniu losowej wyroczni, próbują-cym uchwycić ideę funkcji haszujących.

2.3. Losowa wyrocznia

Losowa wyrocznia (ang. random oracle) to program, który na dowolnezapytanie odpowiada losowo (a więc prawdopodobieństwo wyniku obliczeńjest jednostajnie rozłożone na przeciwdziedzinie), chyba że dane zapytaniepojawiło się już wcześniej. Wówczas losowa wyrocznia odpowiada tak samo,jak wcześniej.

2.4. Formalna definicja SBA–modelu

Przez przeciwnika będziemy rozumieć parę algorytmów A =(Asmall,Abig), które uruchamiane są jednocześnie oraz mogą się komu-nikować. Oba algorytmy mają dostęp do wspólnej losowej wyroczni H.Zakładamy, iż tylko Asmall ma bezpośredni dostęp do tajnego ciągu bitówR. Wynikiem obliczeń przeciwnika jest wynik obliczeń Abig. A więc celemprzeciwnika jest, aby algorytm Abig obliczył jakiś sekret zależny od R.4

Bedziemy oznaczać AH(·)(R) =(AH(·)big AH(·)small(R)

)jednoczesne

wykonanie Abig oraz Asmall, gdzie Asmall na wejściu dostaje R i oba al-gorytmy mają dostęp do losowej wyroczni H(·). Jak wspomniano wyżej,wyjście tak opisanego A jest definiowane jako wyjście samego Abig.

W większości twierdzeń będziemy twierdzić, że A nie jest w stanieczegoś policzyć, o ile spełnione są następujące założenia (dla konkretnychs, c oraz q podawanych w twierdzeniach):

• Asmall ma ograniczoną pamięć przez s.• Komunikacja od Asmall do Abig jest ograniczona przez c. 5 W drugą

stronę jest nieograniczona.• Liczba pytań jakie Asmall i Abig mogą łącznie zadać losowej wyroczni

jest ograniczona przez q.

4 Zwykle Asmall może łatwo obliczyć sekret ponieważ ma dostęp do R. Wracającdo intuicji: należy myśleć, że Asmall to mały wirus zainstalowany na urządzeniuzawierającym R, a dopieroAbig to prawdziwy przeciwnik, który chce poznać sekret.

5 Intuicyjnie założenia dotyczące Asmall wydają się rozsądne, gdyż Asmall to wirus,a ten jest ograniczony przez zewnętrzne urządzenie na którym jest zainstalowany.Innymi słowy, aby je spełnić, wystarczy odpowiednio przygotować urządzenie, naktórym przechowywany jest R.

320

Page 321: Kryptologia i Cyberbezpieczenstwo nr 6

Programy jednorazowe: krótkie wprowadzenie

W wyżej wymionym przypadku będziemy pisać, że A jest (s, c, q) ograni-czony.

Czasem, poza R, przeciwnik A może mieć dodatkowe wejście x. Wów-czas zakładamy, że dane x początkowo znajduje się na wejściu Abig.

3. Programy jednorazowe (OTP)

Idea Tajny ciąg R zawiera opis pewnego programu C, który może zostaćwykonany tylko raz, dla wybranego wejścia. Innymi słowy, dowolny użyt-kownik (również złośliwy) dostaje urządzenie z programem, ale nie wie, coto za program. Pokazujemy, że jedyne czego się dowie to wartość C(x) dladokładnie jednego x.

Definicja Niech C : 0, 1n → 0, 1m będzie programem (rozumianymjako obwód logiczny). Ciąg bitów RC to pewien ciąg bitów, generowany z Cprzez efektywny niedeterministyczny algorytm używający H. Algorytm Djest (c, s, ϵ)–one-time programem dla klasy wszystkich funkcji 0, 1n →0, 1m, gdy:

• Algorytm D dla danego RC oraz x ∈ 0, 1n oblicza C(x), nawet gdyjest (s, c, q) ograniczony.

• Istnieje symulator S z dostępem do wyroczni jednokrotnego dostępuobliczającej C (ale bez dostępu do RC) taki, że dla dowolnego prze-ciwnika A mającego dostęp do RC i (s, c, q)–ograniczonego nie da sięodróżnić wyniku obliczeń S od wyniku obliczeń A z prawdopodobień-stem większym niż ϵ.6

Wynik Dla dowolnych (n,m) istnieje (c, s, ϵ)–program jednorazowy dlaklasy wszystkich funkcji 0, 1n → 0, 1m w SBA–modelu z paramteramic, s, ϵ opisanymi w pełnej wersji pracy [11].Wynik na tle dziedziny Pojęcie One-time program zostało wprowadzoneprzez Goldwasser et al. w [20]. Autorzy dowodzą tam istnienia OTP w mo-delu z założeniami o tzw. OTM (one-time memory), szczegóły w [20].Konstrukcja Szczegóły konstrukcji można znaleźć w pełnej wersji pracy[11]. Tutaj przedstawimy tylko pewne intuicje i „smak” idei.

Głównym pomysłem technicznym jest próba symulowania rozwiąza-nia zaproponowanego przez Goldwasser et al., ale bez OTM-ów używanych

6 Bardziej precyzyjnie: nie istnieje żaden algorytm (odróżniacz), który odróżnia wy-żej opisane wyniki obliczeń z prawdopodobieństwem większym niż 12+ϵ, jeśli liczbajego pytań do wyroczni jest ograniczona przez q.

321

Page 322: Kryptologia i Cyberbezpieczenstwo nr 6

T. Kazana

w oryginalnej konstrukcji. Zamiast OTM-ów używamy – w dość zaskaku-jący i nietrywialny sposób – idei losowych funkcji jednorazowych, wziętychz [15].

Dzięki ograniczeniom pamięci wewnętrznej urządzenia, pokazujemy,że nie jest możliwe obliczenie losowej funkcji jednorazowej f na więcejniż jednym wejściu. To już pozwala nam na symulowanie OTM-ów, gdyżjako zawartość pamięci OTMa, przyjmujemy f(0) oraz f(1). Wartości tesą losowe i nie mamy nad nimi kontroli. Nie jest to jednak problem, gdyżw konstrukcji Goldwasser et al. klucze trzymane w OTM-ach też są losowe.

Literatura

[1] A. Akavia, S. Goldwasser, and V. Vaikuntanathan, Simultane-ous hardcore bits and cryptography against memory attacks, In TCC,2009.

[2] J. Alwen, Y. Dodis, M. Naor, G. Segev, S. Walfish, and D.Wichs, Public-key encryption in the bounded-retrieval model, In EU-ROCRYPT, 2010.

[3] J. Alwen, Y. Dodis, and D. Wichs, Leakage-resilient public-keycryptography in the boundedretrieval model, In CRYPTO, 2009.

[4] Z. Brakerski and S. Goldwasser, Circular and leakage resilientpublic-key encryption under subgroup indistinguishability (or: Quadra-tic residuosity strikes back), CRYPTO, 2010.

[5] Z. Brakerski, Y. T. Kalai, J. Katz, and V. Vaikuntanathan,Cryptography resilient to continual memory leakage, FOCS, 2010.

[6] D. Cash, Y. Z. Ding, Y. Dodis, W. Lee, R. J. Lipton, andS. Walfish, Intrusion-resilient key exchange in the bounded retrievalmodel, In TCC, 2007.

[7] G. D. Crescenzo, R. J. Lipton, and S. Walfish, Perfectly securepassword protocols in the bounded retrieval model, In TCC, 2006.

[8] F. Davi, S. Dziembowski, and D. Venturi, Leakage-resilient sto-rage, SCN, 2010.

[9] Y. Dodis, S. Goldwasser, Y. T. Kalai, C. Peikert, and V. Va-ikuntanathan, Public-key encryption schemes with auxiliary inputs,In TCC, 2010.

[10] Y. Dodis, K. Haralambiev, A. Lopez-Alt, and D. Wichs, Cryp-tography against continuous memory attacks, FOCS, 2010.

[11] K. Durnoga, S. Dziembowski, T. Kazana, and M. Zajac,One-time programs with limited memory, In INSCRYPT, 2013.

322

Page 323: Kryptologia i Cyberbezpieczenstwo nr 6

Programy jednorazowe: krótkie wprowadzenie

[12] S. Dziembowski, Intrusion-resilience via the bounded-storage model,In TCC, 2006.

[13] S. Dziembowski, On forward-secure storage, In CRYPTO, 2006.[14] S. Dziembowski, T. Kazana, and D. Wichs, Key-evolution sche-mes resilient to space-bounded leakage, In CRYPTO, pages 335.353,2011.

[15] S. Dziembowski, T. Kazana, and D. Wichs, One-time computableself-erasing functions, In TCC, pages 125.143, 2011.

[16] S. Dziembowski and K. Pietrzak, Intrusion-resilient secret sha-ring, In FOCS, pages 227.237, 2007.

[17] S. Dziembowski and K. Pietrzak, Leakage-resilient cryptography,In FOCS, 2008.

[18] ECRYPT. The Side Channel Cryptanalysis Loungehttp://www.crypto.rub.de/en sclounge.html.

[19] S. Faust, E. Kiltz, K. Pietrzak, and G. N. Rothblum,Leakage-resilient signatures, In TCC, 2010.

[20] S. Goldwasser, Y. T. Kalai, and G. N. Rothblum, One-timeprograms In D. Wagner, editor, CRYPTO, volume 5157 of LNCS, pa-ges 39.56, 2008.

[21] Y. Ishai, A. Sahai, and D.Wagner, Private Circuits: Securing Har-dware against Probing Attacks, In CRYPTO, 2003.

[22] J. Katz and V. Vaikuntanathan, Signature schemes with boundedleakage resilience, In ASIACRYPT, pages 703.720, 2009.

[23] S. Micali and L. Reyzin, Physically observable cryptography (exten-ded abstract), In TCC, 2004.

[24] M. Naor and G. Segev, Public-key cryptosystems resilient to keyleakage, In Advances in Cryptology - CRYPTO, August 2009.

[25] K. Pietrzak, A leakage-resilient mode of operation,In EURO-CRYPT, 2009.

[26] F.-X. Standaert, T. Malkin, and M. Yung, A unified frameworkfor the analysis of side-channel key recovery attacks, In EUROCRYPT,2009.

ONE-TIME PROGRAMS WITH LIMITED MEMORY

Abstract.We reinvestigate a notion of one-time programs introduced in the CRYPTO2008 paper by Goldwasser et al. A one-time program is a device containing a program C,with the property that the program C can be executed on at most one input. Goldwasseret al. show how to implement one-time programs on devices equipped with specialhardware gadgets called one-time memory tokens.

323

Page 324: Kryptologia i Cyberbezpieczenstwo nr 6

T. Kazana

We provide an alternative construction that does not rely on the hardware gadgets.Instead, it is based on the following assumptions: (1) the total amount of data that canleak from the device is bounded, and (2) the total memory on the device (available bothto the honest user and to the attacker) is also restricted, which is essentially the modelused recently by Dziembowski et al. (TCC 2011, CRYPTO 2011) to construct one-timecomputable pseudorandom functions and key-evolution schemes.

Keywords: pseudorandom functions; one-time device; one-time program; circuit gar-bling.

Page 325: Kryptologia i Cyberbezpieczenstwo nr 6

METODY EKSPLORACJI DANYCHW ANALIZIE RUCHU OBSERWOWANEGO

PRZEZ SYSTEMY HONEYPOT

Krzysztof Cabaj, Michał Buda

Instytut Informatyki Politechniki Warszawskiej

Streszczenie. Od kilku lat systemy HoneyPot są coraz szerzej wykorzystywane w celuszybkiego zdobywania informacji dotyczących nowych ataków pojawiających się w Inter-necie. Mimo dużej liczby badań dotyczących nowych systemów HoneyPot, brakuje opro-gramowania umożliwiającego analiza danych przez nie uzyskanych. W artykule znajdujesię opis systemu WebHP/HPMS (ang. HoneyPot Management System) umożliwiającegoanalizę z wykorzystaniem metod eksploracji danych, zastosowanych technik oraz rezul-taty pierwszych eksperymentów. Uzyskane wyniki są obiecujące, ponieważ w natłokuuzyskanych danych wykryte wzorce umożliwiły szybką identyfikację nowych zagrożeń.

Słowa kluczowe: systemy HoneyPot, analiza danych, eksploracja danych

Potrzeba wdrażania i utrzymywania systemów ochrony informacji,między innymi systemów: zapór ogniowych, wykrywania włamań czy anty-wirusowych, jest dzisiaj bezdyskusyjna. Aktualnie większość systemów tegotypu wykorzystuje wiedzę uzyskaną z analizy różnego typu zagrożeń, roz-powszechnianą w postaci reguł, sygnatur czy szczepionek. Dane do analizypochodzą z zaatakowanych maszyn użytkowników, jak również coraz czę-ściej z systemów będących pułapkami na atakujących, nazywanych syste-mami HoneyPot. Na rynku komercyjnym i w środowisku oprogramowaniaopartego na otwartym kodzie dostępne są różnego typu systemy Honey-Pot, poczynając od prostych symulatorów pojedynczych wybranych usług,poprzez symulatory całych sieci a kończąc na systemach monitorującychzintegrowanych na rzeczywistym sprzęcie z popularnym oprogramowaniemsystemowym i użytkowym.

Wdrożenie systemu HoneyPot jest relatywnie proste, jednak w związkuz ilością danych uzyskiwanych z tego typu systemów coraz większym pro-blemem staje się ich szybka analiza. Motywacją do prezentowanych pracbadawczych była obserwacja braku na rynku narzędzi pozwalających wy-ciągać wnioski z zarejestrowanych danych, które ułatwiłyby stworzenie no-wych sygnatur i reguł dla używanych systemów bezpieczeństwa. W artykuleznajduje się opis zaproponowanej i zaimplementowanej w eksperymental-nym systemie HPMS (ang. HoneyPot Management System) metody ana-lizy danych. Danymi wejściowymi w tym systemie są żądania skierowane do

Page 326: Kryptologia i Cyberbezpieczenstwo nr 6

K. Cabaj, M. Buda

serwera WWW. Ich analiza wykonywana jest za pomocą metod eksploracjidanych. Wykorzystano tu autorskie algorytmy podziału danych i dalszejanalizy wyników częściowych. Zaletą użytego w HPMS wykrywania wzor-ców z wykorzystaniem metody zbiorów częstych jest czytelność, łatwośći intuicyjność zrozumienia uzyskanych wzorców. W pracy zostanie dokład-nie omówiona zaproponowana metoda oraz wnioski z wdrożenia prototypusystemu w sieci Instytutu Informatyki Politechniki Warszawskiej. Dodat-kowo zostaną przedstawione wyniki uzyskane z eksperymentów na rzeczy-wistych danych uzyskanych z prawie rocznego okresu działania systemuHPMS, które potwierdzają przydatność metody. W tym czasie, międzyinnymi, wykryto maszyny dokonujące masowych ataków na serwer, poja-wienie się w ruchu sieciowym aktywności związanej z nowym skanerempodatności jak również ataki niedawno wykrytego robaka „The Moon”.

Praca posiada następujący układ. Rozdział pierwszy poświęcony jestwprowadzeniu do idei systemów HoneyPot. Drugi rozdział zawiera opismetod eksploracji danych, z naciskiem na metodę zbiorów częstych wyko-rzystywaną w opisywanym systemie HMPS. Następny rozdział poświęconyjest opisowi prototypowej instalacji systemu WebHP wraz z systemem za-rządzania i analizy danych HPMS. Kolejny, czwarty rozdział zawiera opiseksperymentów oraz uzyskanych wyników przeprowadzonych na danychzebranych przez system WebHP. Ostatni piąty rozdział zawiera, krótkiepodsumowanie wykonanych prac wraz z zarysowaniem kierunków dalszychprac.

1. Systemy HoneyPot

Systemy HoneyPot są narzędziem umożliwiającym poznanie sposobówdziałania oraz motywacji atakujących. System HoneyPot nie jest określo-nym rozwiązaniem sprzętowo programowym i w zależności od potrzebymoże być zbudowany na różne sposoby. Jedyną wspólną cechą jest to, żesystem HoneyPot nie posiada żadnej produkcyjnej roli w organizacji, którago uruchamia [8]. Jego jedynym zadaniem jest oczekiwanie na atak z ze-wnątrz. W razie wystąpienia ataku wszelkie informacje, które mogą byćprzydatne do analizy ataku są zbierane. W zależności od potrzeb, syste-mem HoneyPot może być program symulujący pewną usługę, specjalnieskonfigurowana maszyna zawierająca rzeczywiste oprogramowanie lub fik-cyjnie stworzony cały fragment sieci z maszyn, łączy i urządzeń siecio-wych. Wyczerpujący opis najpopularniejszych systemów HoneyPot wrazz propozycją ich taksonomii można znaleźć w pracy [10]. Systemy Honey-Pot można podzielić na wysokiej i niskiej interakcji. Pierwsze z nich są

326

Page 327: Kryptologia i Cyberbezpieczenstwo nr 6

Metody eksploracji danych w analizie ruchu . . .

skierowane głównie na atakujących samodzielnie wyszukujących podatno-ści w określonym systemie. W takim przypadku dany zasób musi wydawaćsię interesujący dla atakującego aby zachęcił go do zbadania podatnościi próby ich wykorzystania. Drugi rodzaj systemów, który jest wykorzysty-wany w związku z niniejszą pracą, skierowany jest głównie do rejestrowa-nia automatycznych prób zbierania informacji i ataków. W tym przypadkunie trzeba się dokładać specjalnych starań aby system HoneyPot wydawałsię interesujący. W wielu przypadkach nawet nie trzeba próbować ogłaszaćjego istnienia z wykorzystaniem systemu DNS czy z pomocą linków z innychstron. Wystarczy samo podłączenie do sieci Internet. Jak pokazują badaniapo bardzo krótkim czasie zostaną nawiązane pierwsze połączenia. Systemtaki bardzo szybko zostanie rozpoznany jako system HoneyPot przez czło-wieka, jednak doskonale nadaje się do zbierania informacji dotyczącychautomatycznych i masowych aktywności pojawiających się w Internecie.Od początku 21 wieku systemy HoneyPot cieszą się niesłabnącym zainte-resowaniem co skutkuje dużą liczbą prac badawczych. Jak pokazuję praceprzeglądowe [4, 9] większość aktualnie prowadzonych badań związanych jestz rozwijaniem nowych rodzajów systemów HoneyPot, sposobów ich ukry-wania oraz detekcji [6]. Niestety niewiele uwagi poświęcanej jest analizieoraz wizualizacji danych uzyskanych za pomocą tych systemów.

Więcej szczegółów dotyczących zaimplementowanego i wdrożonegosystemu HoneyPot, który był źródłem rzeczywistych danych do analizyznajduje się w rozdziale trzecim. Rozdział czwarty poświęcony jest omó-wieniu wyników uzyskanych z analizy danych, które reprezentują różnegotypu aktywności zaobserwowane przez wdrożony system.

2. Metody eksploracji danych

Posiadanie ogromnych zbiorów danych przez różne organizacje spowo-dowało rozwój technik umożliwiających ich analizę. Jedną z możliwych dozastosowania metod jest wykorzystanie odkrywania wiedzy (ang. Know-ledge Discovery in Databases) zakładające, że w danych kryje się jakaśistotna, w związku z ich wielkością niezauważalna na pierwszy rzut oka,interesująca dla ich posiadacza wiedza. Eksploracja danych jest jednymz najważniejszych etapów całego procesu odkrywania wiedzy polegającymna wykorzystaniu określonych algorytmów do właściwej analizy danych,często utożsamiana z całym procesem odkrywania wiedzy. Pozostałe, częstopomijane a nie mniej ważne etapy związane są z przygotowaniem wstęp-nym danych, przygotowaniem uzyskanych wyników do prezentacji czło-wiekowi oraz weryfikacją i zastosowaniem wykrytej wiedzy. Wśród stoso-wanych algorytmów eksploracji danych najczęściej wymieniane podejścia

327

Page 328: Kryptologia i Cyberbezpieczenstwo nr 6

K. Cabaj, M. Buda

związane są z grupowaniem (ang. clustering) oraz klasyfikacją (ang. clas-sification). Niniejsza praca opisuje praktyczne wykorzystanie mniej popu-larnego, a w wielu przypadkach bardzo przydatnego podejścia wykrywa-nia wzorców częstych (ang. frequent patterns discovery). W zależności odprzyjętej reprezentacji danych wzorcem częstym może być podzbiór [1], se-kwencja elementów [2] czy nawet podgraf [11]. Na potrzeby opisywanychw niniejszym artykule eksperymentów skorzystano z używanego podczasanalizy koszykowej wzorca jakim jest zbiór częsty. Pierwsze opisane zasto-sowania tej metody miały określić jakie produkty klienci kupują łącznie,np. w celu zaproponowania odpowiedniej ceny lub rozmieszczenia w skle-pie. Na potrzeby tych analiz każde pojedyncze klienckie zakupy, nazywanetransakcją, reprezentowane są jako zbiór, w którym elementy odpowiadająposzczególnym zakupionym produktom. Zgodnie z definicją zapropono-waną w pracy [1], zbiorem częstym nazywany jest podzbiór występującyco najmniej w określonej przez analizującego minimalnej liczbie transak-cji. Zwyczajowo parametr ten nazywany jest minimalnym wsparciem (ang.minimal support). Na uwagę zasługuje jeszcze jeden, często powodującapewne nieporozumienia, fakt związany z istnieniem różnych algorytmówdo wykrywania tego samego rodzaju wzorca. Przykładowo, wykorzystanyw niniejszej pracy wzorzec - zbiór częsty - może być wykrywany za pomocąalgorytmu Apriori [1], lub z wykorzystaniem różnego typu drzew FP-Tree[7], CATS [5].

Rozpatrzmy przykładowy zbiór transakcji przedstawiony w tablicy Ta-bela 1. W każdym wierszu tabeli znajduje się jeden zbiór odpowiadający ko-lejnym transakcjom. Dla ułatwienia omawiania przykładu elementy trans-akcji są identyfikowane za pomocą pojedynczych liter. W implementowa-nych rozwiązaniach w celu zapewnienia możliwie szybkiego i efektywnegoporównywania elementów zbiorów są one reprezentowane w postaci liczbcałkowitych. W ramach etapu przygotowania wstępnego danych, właściwedane podlegające analizie zostają przetransformowane od postaci dogodnejdo dalszej analizy przez algorytmy eksploracji danych. Więcej szczegółówdotyczących tego typu procesu znajduje się w sekcji trzeciej niniejszegoartykułu.

Przy założonym parametrze minimalnego wsparcia o wartości 3,w przedstawionym przykładowym zbiorze danych zbiorami częstymi będąmiędzy innymi podzbiory ”ab”, ”efg” oraz ”g”. Zbiór ”ab” występujew transakcjach 1, 2 i 3 a ”efg” i ”g” w transakcjach 3, 4 i 5. Podzbiór”abc” nie jest zbiorem częstym ponieważ występuje jedynie w transak-cjach 1 i 3, czyli jego wsparcie o wartości dwa jest mniejsze niż założonypróg minimalnego wsparcia o wartości trzy.

328

Page 329: Kryptologia i Cyberbezpieczenstwo nr 6

Metody eksploracji danych w analizie ruchu . . .

Tabela 1Przykładowy zbiór danych wykorzystywanych przez algorytmywykrywania zbiorów częstych. Dla parametru minSup = 3maksymalnymi zbiorami częstymi są ”ab” oraz ”efg”

Identyfikator transakcji Zawartość

1 (a, b, c)

2 (a, b)

3 (a, b, c, d, e, f, g)

4 (e, f, g, h)

5 (e, f, g, h, i)

Jak łatwo można zauważyć, jeśli zbiorem częstym jest podzbiór ”efg”to zbiorami częstymi także będą jego wszelkie podzbiory - ”ef”, ”fg”, ”eg”,”e”, ”f” i ”g”. Jeśli skorzystamy z algorytmu wykrywającego wszystkiemożliwe zbiory częste w wyniku uzyskamy zbiór częsty jak i jego wszystkiepodzbiory. Z tego powodu często podczas wykrywania uzyskujemy jedy-nie maksymalne zbioru częste, czyli takie zbiory częste, których wszystkienadzbiory nie są zbiorami częstymi. W omawianym wcześniej przykładzie,maksymalnymi zbiorami częstymi są zbiory ”ab” oraz ”efg”.

Największą zaletą zastosowania tego typu wzorców jest zmniejszenieliczby informacji, które musi przeanalizować analityk. Nawet w prostymprzykładzie zaprezentowanym powyżej z sześciu transakcji otrzymujemydwa wzorce. Przy rzeczywistych danych z tysięcy zarejestrowanych transak-cji uzyskamy kilkadziesiąt wzorców. Dodatkowo pewne nieistotne zmienneelementy analizowanych danych zostaną usunięte, prezentując jedynie naj-istotniejsze, najczęściej pojawiające się elementy. W kolejnym rozdzialezostanie omówiony zaimplementowany system, umożliwiający wykrywanieomówionych powyżej wzorców w danych zebranych przez systemy Honey-Pot.

3. System WebHP/HPMS

Rozdział ten zawiera dokładny opis zaimplementowanego i wdrożo-nego systemu HoneyPot dedykowanego atakom na aplikacje Webowe wrazz systemem analizy danych, wykorzystującym mechanizmy eksploracji da-nych. System posiada dwa podstawowe podsystemy - WebHP oraz HPMS(ang. HoneyPot Management System).

Podsystem WebHP jest odpowiedzialny za zbieranie danych dotyczą-cych całego ruchu dochodzącego do sensorów. Jest zaimplementowany w ję-zyku php i uruchomiony pod kontrolą specjalnie skonfigurowanego serwera

329

Page 330: Kryptologia i Cyberbezpieczenstwo nr 6

K. Cabaj, M. Buda

Rysunek 1. Schemat wdrożonej w Instytucie Informatyki Politechniki Warszawskiejinstalacji HoneyPot, składającego się z sensorów WebHP wraz z systemem HPMS

Apache. Wszelka aktywność skierowana do tak przygotowanego serweraWWW zostaje zarejestrowana i po wstępnej analizie zapisana w bazie da-nych. Aktualnie wdrożony system uruchomiony jest na dwóch niezależnychmaszynach i kilku najaktywniejszych portach, między innymi 80, 8080 oraz5000. System HPMS jest odpowiedzialny za cykliczne wykonywanie analizoraz prezentację uzyskanych wyników analitykowi. Jest on zaimplemento-wany w języku Python, a Webowy interfejs użytkownika zaimplemento-wano z użyciem środowiska Django. Rysunek 1 prezentuje schemat aktu-alnie wdrożonej w Instytucie Informatyki konfiguracji sensorów WebHPi systemu HPMS wraz z najważniejszymi przepływami danych.

Najistotniejszą częścią wdrożonego systemu jest mechanizm analizyzaobserwowanego przez sensory ruchu z wykorzystaniem metod eksploracjidanych. Do tego celu wykorzystany został mechanizm wykrywania zbio-rów częstych. Zgodnie z opisem w poprzednim rozdziale wykrywanie tegowzorca wymaga reprezentacji danych w postaci zbiorów. Z tego powodupierwszym etapem analizy jest proces przygotowania wstępnego danych.Transakcją w tym przypadku jest każde pojedyncze połączenie zarejestro-wane przez sensor i reprezentowane jako zbiór. Elementami wchodzącymi

330

Page 331: Kryptologia i Cyberbezpieczenstwo nr 6

Metody eksploracji danych w analizie ruchu . . .

w skład tego zbioru są identyfikatory odpowiadające występującym w żą-daniu protokołu HTTP kolejnym atrybutom, rozszerzonym o pewne meta-dane związane z połączeniem, przykładowo adresem klienta. Dodatkowo,zawarty w żądaniu URL został potraktowany nie jako jeden ciąg a zbiórkilku elementów, każdy odpowiadający części oddzielonej znakiem ’/’. Ta-kie podejście pozwoliło wykrywać przykładowo skanowania w których wie-lokrotnie występowały żądania dotyczące tego samego pliku umieszczonegow różnych lokalizacjach. W wyniku tych operacji każde połączenie reprezen-towane jest jako zbiór liczb naturalnych. Dodatkowo, w bazie danych prze-chowywana jest informacja pozwalająca w późniejszym czasie (po wykryciuwzorców) dokonać mapowania odwrotnego, tj. zamienić identyfikatory po-szczególnych atrybutów na postać tekstową zrozumiałą dla człowieka. Ta-bela 2 prezentuje przykładowy zbiór danych w postaci uzyskanej z systemuWebHP oraz po wykonaniu procesu przekształcenia wstępnego danych. Dlacelów omówienia systemu, tabela prezentuje jedynie fragment analizowa-nych danych: adresy nawiązujących połączenia oraz żądane URI. W zaim-plementowanym systemie z każdą transakcja może być związanych nawetdo kilkudziesięciu różnych parametrów. W dalszej części pracy (na Ry-sunku 2) zaprezentowany jest przykładowy zrzut ekranu z systemu HPMSpokazujący przykładowe atrybuty wchodzące w skład wykrytych zbiorówczęstych dla rzeczywistych danych.

W tak przygotowanych danych zostają wykryte maksymalne zbioryczęste z wykorzystaniem algorytmu Max Miner [3]. Dla danych przedsta-wionych w tabeli 2 i parametrowi minimal support ustalonemu na war-tość 3 zostaną wykryte dwa zbiory częste. Pierwszy (REMOTE ADDR=217.11.XX.YY, URI TOKEN=scripts, URI TOKEN=setup.php) repre-zentuje aktywność z adresu 217.11.XX.YY skierowaną na aplikacjęposiadającą plik setup.php w katalogu scripts. Drugi zbiór częsty(URI TOKEN=webman, URI TOKEN=info.cgi?host=) reprezentuje ska-nowanie przeprowadzane z różnych adresów, o czym świadczy brak ele-mentu zbioru związanego z adresem IP. Skanujące maszyny próbują wy-kryć czy w danej domenie jest pliki info.cgi znajdujący się w kataloguwebman. Biorąc pod uwagę stały napływ nowych danych do systemu Ho-neyPot oraz mając na uwadze zmiany aktywności różnych działań w czasiechcieliśmy stworzyć system pozwalający je wykrywać. Algorytmy wykry-wania zbiorów częstych dokonują wykrywania wzorców w całym dostępnymzbiorze danych. W związku z tym, wszystkie nadchodzące dane dzielimy zewzględu na czas ich zarejestrowania i na takich fragmentach danych doko-nujemy wykrywania wzorców częstych. W aktualnej wersji systemu HPMScyklicznie, co godzinę, sześć godzin, raz na dobę oraz tygodniowo wykony-wane jest wykrywanie zbiorów częstych. Zastosowanie różnych interwałów

331

Page 332: Kryptologia i Cyberbezpieczenstwo nr 6

K. Cabaj, M. Buda

Tabela 2Przykładowy zbiór danych uzyskany przez sensor WebHP w formie zbliżonej dosurowych danych oraz w formie dogodnej do analizy wykorzystującej wyszukiwanie

zbiorów częstych

Identyfikator Dane w formie zbliżonej Dane w postaci dogodnejTransakcji do surowych danych do analizy – jako zbiory

REMOTE ADDR=217.11.XX.YY

URI TOKEN=phpmyadmin1 (1, 2, 3, 4)

URI TOKEN=scripts

URI TOKEN=setup.php

REMOTE ADDR=217.11.XX.YY

URI TOKEN=phpMyAdmin2 (1, 5, 3, 4)

URI TOKEN=scripts

URI TOKEN=setup.php

REMOTE ADDR=219.129.AA.BB

3 URI TOKEN=webman (6, 7, 8)

URI TOKEN=info.cgi?host=

REMOTE ADDR=217.11.XX.YY

URI TOKEN=pma4 (1, 9, 3, 4)

URI TOKEN=scripts

URI TOKEN=setup.php

REMOTE ADDR=58.20.CC.DD

5 URI TOKEN=webman (10, 7, 8)

URI TOKEN=info.cgi?host=

REMOTE ADDR=211.27.EE.FF

6 URI TOKEN=webman (11, 7, 8)

URI TOKEN=info.cgi?host=

czasowych pozwala wykrywać aktywności o różnej częstotliwości. Przykła-dowo, wzorce wykryte w czasie jednej godziny reprezentują dość agresywnezachowania, natomiast zastosowanie analizy okresu tygodnia pozwala wy-kryć np. utajone wolne skanowania. Wykrycie pewnego wzorca w okresieo krótszym interwale implikuje, że zostanie on wykryty także w dłuższyminterwale. Aby nie dopuścić do sytuacji, że liczne, wcześniej wykryte wzorcew krótszym interwale przysłonią nam nowe, mniej liczne wykryte w dłuż-szym interwale, przy prezentacji uzyskanych wyników, najpierw pokazy-wane są nowe wzorce, a później znajduje się lista już wcześniej wykrytych.Dodatkowo, wprowadzenie statystyki dotyczącej ile razy dany wzorzec zo-stał wykryty w interwałach o określonej długości ułatwia analitykowi ocenęz jakim rodzajem aktywności związany jest dany wzorzec. Przykładowo,wzorce dotyczące dość intensywnej aktywności w najkrótszym interwalepowtarzające się przez kilka sąsiadujących ze sobą interwałów mogą świad-

332

Page 333: Kryptologia i Cyberbezpieczenstwo nr 6

Metody eksploracji danych w analizie ruchu . . .

czyć o próbie przeprowadzenia ataku odmowy usługi. Rysunek 2 prezentujeprzykładowy zrzut ekranu z wykrytymi dwoma zbiorami częstymi.

Rysunek 2. Zrzut ekranu z systemu HPMS prezentujący dwa przykładowe zbiory

4. Przeprowadzone eksperymenty

Wykorzystując oprogramowanie opisane w poprzednim punkcie w ra-mach przeprowadzonych eksperymentów cały ruch zarejestrowany przezsystem HoneyPot pomiędzy pierwszym marca 2014 a końcem kwietnia 2014został przeanalizowany w celu wykrycia wzorców. W tym czasie zostało za-rejestrowanych ponad 25 tysięcy połączeń do trzech sensorów WebHP. Napotrzeby tych eksperymentów parametr minimalnego wsparcia przyjmo-wał wartość pięć - w wykorzystanej implementacji oznacza to, że pięcio-krotne wystąpienie jakiegoś podzbioru oznacza uznanie go za zbiór częsty.

333

Page 334: Kryptologia i Cyberbezpieczenstwo nr 6

K. Cabaj, M. Buda

W uzyskanych danych zostały wykryte maksymalne zbiory częste. W wy-niku uzyskano niecałe 1050 wzorców, z czego ponad 320 wystąpiło jedyniejednokrotnie, co może sugerować, że te zbiory częste powstały z przypadko-wego połączenia zebranych danych. W aktualnej implementacji nie zasto-sowano żadnego filtrowania uzyskanych zbiorów, przykładowo ze względuna wystąpienie lub brak wystąpienia określonych atrybutów w wykrytymzbiorze. Z tego powodu wykryto szereg niezbyt istotnych wzorców, przy-kładowo zbiór, który zawiera jedynie atrybuty powiązane z odpowiedziąserwera związaną z brakiem danej strony. Interpretacją takiego zachowa-nia jest złączenie w jeden zbiór częsty pięciu niezależnych połączeń z róż-nych maszyn, których jedyną cechą wspólną jest to, że nie powiodło sięotrzymanie żądanej strony z powodu jej braku na serwerze. Jednak wielez wykrytych wzorców odpowiadało istotnym i powtarzalnym aktywnościomobserwowanym przez wdrożoną instalację systemu HoneyPot.

Przykładowo około 10 marca zaobserwowana została wzmożona ak-tywność na jednym z sensorów symulującym udostępnienie w Internecie do-stępu do aplikacji „PHP My Admin”. Rysunek 3 przedstawia zrzut ekranuz systemu HPMS zawierający całą aktywność zaobserwowaną w marcu2014.

Rysunek 3. Zrzut ekranu z systemu HPMS prezentujący wykres aktywnościobserwowanej przez system w marcu 2014

Równocześnie 10 marca o godzinie 3:00, podsystem wykrywania zbio-rów częstych, wykrył 7 zbiorów, zawierających ten sam zdalny adres. Ana-liza wszystkich uzyskanych zbiorów częstych w czasie omawianego ekspe-rymentu pokazała, że sześć zbiorów częstych zostało wykrytych 87 razy

334

Page 335: Kryptologia i Cyberbezpieczenstwo nr 6

Metody eksploracji danych w analizie ruchu . . .

w okresach o długości 1 godziny i ich sumaryczne wsparcie jest zawszerówne 1332. Dodatkowo wszystkie zostały pierwszy raz wykryte między2:00 a 3:00 10 marca a ostatni raz między 4:00 a 5:00 14 marca. Zrzutekranu pokazujący dwa przykładowo wykryte zbiory częste z tej aktywno-ści zaprezentowany jest na rysunku 4.

Rysunek 4. Zrzut ekranu z systemu HPMS prezentujący dwa zbiory częste wykryte poraz pierwszy 10 marca między godziną 2:00 a 3:00

Manualna analiza wszystkich zarejestrowanych danych wykazała, żeadres atakującego 172.212.XX.YY został zarejestrowany 8076 razy, pierw-szy raz o 2:06 10 marca a ostatni o 5:17 14 marca 2014. Dane te potwier-dzają bardzo dużą dokładność wykrytych automatycznie wzorców, możnazauważyć, że 6 * 1332 = 7992, a czas początku i końca wykrycia aktywnościjest prawie identyczny. Podczas analizy danych z tych dwóch miesięcy wy-kryto jeszcze kilka adresów, które masowo próbowały dokonywać atakówna wybrane sensory systemu HoneyPot. Wykrycie faktu masowego atakuz jednego adresu IP jest możliwe za pomocą dostępnych już od lat syste-

335

Page 336: Kryptologia i Cyberbezpieczenstwo nr 6

K. Cabaj, M. Buda

mów analizujących logi serwerów lub zapór ogniowych. Jednak zastosowa-nie zaproponowanej metody wykorzystującej zbiory częste pozwala wykry-wać bardziej finezyjne zmiany w postępowaniu atakujących. Przykładowo,w okresie dokonywania analizy wykryto ponad 25 zbiorów częstych zawie-rających atrybut związany z jednym adresem IP - 217.11.XX.YY. Analizauzyskanych wyników pokazała, że w czasie dwutygodniowej aktywności,podczas ataków wielokrotnie były zmieniane adresy serwerów i nazwy pli-ków zawierających ściąganego po infekcji oprogramowania bota. Tak nie-wielkich z punktu widzenia ruchu sieciowego a bardzo istotnych z punktuwidzenia zmian postępowania atakującego nie byłyby w stanie wykryć me-tody bazujące na prostym zliczaniu ruchu pochodzącego od wybranegoadresu IP.

Omawiane do tej pory wzorce dotyczyły pojedynczych adresów dodat-kowo wykazujących dość intensywną działalność. Dopiero przy analizie da-nych występujących rzadziej można zaobserwować zalety zaproponowanejmetody. Przykładem ciekawej aktywności wykrytej przez zaimplemento-wany system, jest skanowanie w poszukiwaniu podatnych na atak urządzeńtypu NAS (ang. Network Attached Storage) firmy Synology. Rysunek 5przedstawia wykryty przez system analizy zbiór częsty reprezentujący danąaktywność.

Rysunek 5. Zrzut ekranu z systemu HPMS prezentujący zbiór częsty związanyz poszukiwaniem podatnych urządzeń firmy Synology

W przeciwieństwie do poprzednio prezentowanych zbiorów częstych,które występowały tylko w okresach o jednakowej długości, można za-obserwować, że zbiór ten został wykryty odpowiednio 5 razy w okresach1-godzinnych, 12 w okresach 6h a nawet dwa razy w okresach dobowych. Tainformacja, wraz z brakiem w wykrytym zbiorze częstym atrybutów związa-nych z adresem źródłowym, może potwierdzać, że zaprezentowany wzorzecdotyczy aktywności spowodowanej przez wiele niezależnych maszyn. Jeśliweźmiemy pod uwagę, że w okresie analizy zaobserwowano ponad 25 ty-sięcy zdarzeń, najprawdopodobniej te 119 powiązanych z poszukiwaniemdanego adresu URL, związanego jednoznacznie z podatnym urządzeniem

336

Page 337: Kryptologia i Cyberbezpieczenstwo nr 6

Metody eksploracji danych w analizie ruchu . . .

firmy Synology, zostałoby pominiętych. Na uwagę zasługuje jeszcze jedenzestaw meta-informacji związany z wykrytym wzorcem - zapisanie czasukiedy pierwszy i ostatni raz został zaobserwowany. Na zaprezentowanymprzykładzie, pierwszy wzorzec dotyczący urządzeń firmy Synology zostałwykryty 6 kwietnia w okresie 6 godzinnym między 12 a 18. Pokrywa się toz czasem uruchomienia sensora dla tego zagrożenia (port nr 5000), którenastąpiło w sobotę 5 kwietnia.

Analiza uzyskanych danych pokazała jeszcze rzadsze zdarzenia, którezostały wykryte przez zaproponowany system oraz potem zweryfikowanejednoznacznie przez analityka jako powiązane z działalnością atakujących.Na rysunku 6 zaprezentowany jest wykryty wzorzec reprezentujący skano-wania związane z robakiem „The Moon” atakującym urządzenia sieciowefirmy Linksys. Odpytania dotyczące adresu URL „HNAP1” związane sąz próbą pobrania informacji dotyczących dokładnej konfiguracji urządzeniai pozwalających zweryfikować, czy jest ono podatne na atak przepełnieniabufora w jednym ze skryptów interfejsu graficznego.

Rysunek 6. Zrzut ekranu z systemu HPMS prezentujący zbiór częsty związanyz aktywnością robaka „The Moon”

W przypadku tego wzorca w czasie eksperymentu zaobserwowano 47 zda-rzeń i wszystkie były obserwowane w oknach siedmiodniowych. Dodatkowoz informacji powiązanych z tym wzorcem można zaobserwować, że okołopołowy kwietnia aktywność tego zagrożenia przestała być praktycznie ob-serwowalna. Potwierdza to manualna analiza wszystkich dostępnych da-nych, w której w okresie od 15 do 29 kwietnia wykryto jedynie czteryzarejestrowane zdarzenia tego typu - po dwa 20 i 23 kwietnia.

5. Podsumowanie

W artykule został omówiony zaproponowany i wdrożony w InstytucieInformatyki Politechniki Warszawskiej prototyp systemu HoneyPot dedy-kowany aplikacjom Webowym wraz z systemem analizy wyników wykorzy-stującym metody eksploracji danych. Wykorzystując zaimplementowane

337

Page 338: Kryptologia i Cyberbezpieczenstwo nr 6

K. Cabaj, M. Buda

oprogramowanie, wstępnej analizie zostały poddane wszystkie zarejestro-wane dane od początku marca do ostatnich dni kwietnia - razem ponad25 tysięcy rekordów. System automatycznie wykrył około 1050 wzorców.Wśród wykrytych wzorców znajdowały się takie, które dotyczyły masowychaktywności, przykładowo zawierających ponad 8000 transakcji. Jednak sys-tem także wykrył wzorce, w porównaniu z poprzednimi występujące nie takczęsto, a związane z kilkudziesięcioma połączeniami, jednak powtarzają-cymi się przez okres kilku tygodni. Wśród uzyskanych wyników w związkuze specyfiką działania wykorzystanej metody znalazły się nieistotne wzorce,przykładowo takie, które związane są z kodem błędu w przypadku brakuna serwerze żądanego zasobu od różnych, niepowiązanych ze sobą klientów.Jednak po ich manualnym odsianiu pozostałe wzorce okazały się bardzo cie-kawe. Wśród nich wykryte zostały masowe próby ataków na różne aplikacje,skanowania w poszukiwaniu podatnych maszyn a nawet aktywność roba-ków internetowych. Pierwsze eksperymenty potwierdzają wstępne założe-nia i motywacje do zastosowania tego rodzaju algorytmów. Wykorzystaniewykrywania wzorców w danych wydatnie zmniejszyło liczbę danych, któremusi przeanalizować manualnie analityk. Dodatkowo, możliwości wykryciapowtarzalnych, ale relatywnie rzadkich zdarzeń, jak omawiane skanowaniaw celu wykrycia urządzeń firmy Synology lub Linksys, zmniejsza szansę ichpominięcia przez analityka.

Autorzy zdecydowali się nie porównywać wyników uzyskanych z omó-wionego systemu z dokładnością i wykrywalnością oferowaną przezdostępne systemy antywirusowe i wykrywania włamań. Na decyzjęmiał fakt iż większość wykrytych zdarzeń dotyczyła zagrożeń klasy„zero-day-exploit” – wcześniej nie znanych producentom oprogramowaniabezpieczeństwa. W związku z tym na pewno nie byłyby one wykryte przezsystemu bazujące na manualnie przygotowywanych szczepionkach syste-mów antywirusowych czy regułach systemów IDS/IPS.

Na podstawie doświadczeń z przeprowadzonych eksperymentów roz-poczęte zostały prace pozwalające dokonać filtracji nieistotnych wzorców,jak również połączyć różne wzorce, przykładowo związane z jednym adre-sem IP lub zasobem URL. Dodatkowo rozważane jest zastosowanie bardziejskomplikowanych wzorców, przykładowo sekwencji częstych oraz epizodów.

Literatura

[1] R. Agrawal, T. Imielinski, A Swami, Mining Association RulesBetween Sets of Items in Large Databases, Proceedings of ACM SIG-MOD Int. Conf. Management of Data, (1993).

338

Page 339: Kryptologia i Cyberbezpieczenstwo nr 6

Metody eksploracji danych w analizie ruchu . . .

[2] R. Agrawal, R. Srikant, Mining Sequential Patterns: Generali-zations and Performance Improvements, In Proceedings of the FifthInternational Conference on Extending Database Technology (EDBT),(1996).

[3] R. J. Bayardo, Efficiently mining long patterns from databases, InProc. 1998 ACM-SIGMOD Int. Conf. Management of Data (SIG-MOD’98), Seattle, WA, pp. 85–93, (1998).

[4] M. L. Bringer, C. A. Chelmecki, H. Fujinoki, A Survey: RecentAdvances and Future Trends in Honeypot Research, I. J. ComputerNetwork and Information Security, 10, 63–75, (2012).

[5] W. Cheung, O. Zaiane, Incremental Mining of Frequent PatternsWithout Candidate Generation or Support Constraint, 7th Interna-tional Database Engineering and Applications Symposium (IDEAS2003), Hong Kong, China. IEEE Computer Society, (2003).

[6] X. Fu, W. Yu, D. Cheng, X. Tan, K. Streff, and S. Graham,On Recognizing Virtual Honeypots and Countermeasures, Proceedingsof the IEEE International Symposium on Dependable, Autonomic andSecure Computing, pp. 211-218, (2006).

[7] J. Han, J. Pei, Y. Yin, Mining Frequent Patterns without Candi-date Generation, Proceedings of the 2000 ACM SIGMOD internatio-nal conference on Management of data, Dallas, Texas, United States,(2000).

[8] The Honeynet Project, Know Your Enemy, learning aboutsecurity threats, Addison-Wesley, ISBN 0-321-16646-9, (2004).

[9] N. Provos, T. Holz, Praise for virtual HoneyPots, Pearson Educa-tion, ISBN 978-0-321-33632-3, (2007).

[10] C. Seifert, I. Welch, P. Komisarczuk, Taxonomy of Honeypots,CS Technical Report TR-06-12, School of Mathematics, Statistics andComputer Science, Victoria University of Wellington, New Zealand.,(2006).

[11] Ł. Skonieczny, Mining for Unconnected Frequent Graphs with Di-rect Subgraph Isomorphism Tests, w: Man-Machine Interactions / K.A. Cyran i in. (red.), Advances in Intelligent and Soft Compu-ting, vol. 59, 2009, Springer, ISBN 978-3-642-00562-6, ss. 523–531,DOI:10.1007/978-3-642-00563-3-55

339

Page 340: Kryptologia i Cyberbezpieczenstwo nr 6

K. Cabaj, M. Buda

ANALYSIS OF THE HONEYPOT SYSTEM DATA USINGDATA MINING TECHNIQUES

Abstract. The HoneyPot systems are used From several years to gather data con-cerning novel attacks appearing in the Internet. Despite the fact that new types ofHoneyPots are developed, there is a lack of analytical software, which can be used foranalysis of data provided by this kind of systems. The article contains a description ofthe WebHP/HPMS (HoneyPot Management System) which allows analysis of Honey-Pot gathered data. Additionally, the article presents used data mining techniques andconducted experiments. Preliminary results appeared to be very promising. In the vastamounts of data, discovered patterns rapidly reveal signs of new types of attacks.

Keywords: HoneyPot systems, data analysis, data mining

Page 341: Kryptologia i Cyberbezpieczenstwo nr 6

AKCELERACJA OBLICZEŃKRYPTOGRAFICZNYCH

Z WYKORZYSTANIEM PROCESORÓW GPU

Patryk Bęza, Jakub Gocławski, Paweł Mral,Piotr Sapiecha∗

Politechnika Warszawska,Wydział Matematyki i Nauk Informacyjnych∗Wydział Elektroniki i Technik Informacyjnych

Streszczenie. Problem spełnialności formuł rachunku zdań SAT jest jednym z fun-damentalnych oraz otwartych zadań we współczesnej informatyce. Jest on problememNP-zupełnym. To znaczy, że wszystkie problemy z klasy NP możemy sprowadzić doproblemu SAT w czasie wielomianowym. Co ciekawe, wśród problemów z klasy NPistnieje wiele takich, które są ściśle związanych z kryptologią, na przykład: faktoryza-cja liczb – ważna dla RSA, łamanie kluczy szyfrów symetrycznych, znajdowanie kolizjifunkcji skrótu i wiele innych. Odkrycie wielomianowego algorytmu dla SAT skutkowa-łoby rozwiązaniem problemu milenijnego: P vs. NP. Cel ten wydaje się bardzo trudnydo osiągnięcia – nie wiadomo nawet czy jest możliwy. Mając nieco mniejsze aspiracjemożemy projektować algorytmy heurystyczne lub losowe dla SAT. W związku z tym,głównym celem autorów pracy jest przedstawienie projektu równoległego SAT Solverabazującego na algorytmie WalkSAT, w tym procesu jego implementacji z wykorzysta-niem środowiska programistycznego OpenCL oraz komputera wyposażonego w kartygraficzne NVIDIA Tesla. Wraz z dynamicznym rozwojem technologii procesorów typuGPU oraz układów FPGA, jak również przenośnością rozwiązań stworzonych wOpenCL,kierunek takich prac staje się interesujący ze względu na uzyskiwaną efektywność obli-czeniową, jak również szybkość prototypowania rozwiązań.

Słowa kluczowe: spełnialność formuł logicznych, SAT Solver, WalkSAT, karty gra-ficzne, kryptoanaliza, OpenCL, obliczenia równoległe.

Problem spełnialności formuł rachunku zdań (problem SAT) od zawszewzbudzał zainteresowanie nie tylko matematyków, ale również programi-stów, którzy szukali (i dalej szukają) szybkich algorytmów, opartych naróżnych heurystykach, rozwiązujących ten problem. Pojawienie się nowychtechnologii i ulepszanie starych, pozwala na mierzenie się z coraz więk-szymi zadaniami problemu SAT. Zwiększenie taktowania procesorów jestjednym ze sposobów na wzrost liczby wykonywanych rozkazów maszyno-wych w jednostce czasu. Niestety, zwiększanie częstotliwości taktowaniaprocesora wiąże się między innymi z koniecznością jeszcze większej minia-turyzacji układów scalonych, co powodowałoby problemy natury mechanikikwantowej (efekt tunelowy) [2, 3]. Z tego powodu, zamiast zwiększać mocobliczeniową jednego procesora, dokładane są kolejne procesory, tak aby

Page 342: Kryptologia i Cyberbezpieczenstwo nr 6

P. Bęza, J. Gocławski, P. Mral, P. Sapiecha

obliczenia były prowadzone równolegle na wielu procesorach. Jednym zesposobów na osiągnięcie masowej równoległości są multiprocesory używanew kartach graficznych.

1. Wstęp

Istnieje wiele zastosowań rozwiązań problemu spełnialności formuł ra-chunku zdań (Satisfiability, SAT). Jest to problem NP-zupełny, a to zna-czy że każdy z problemów z klasy NP (np. problem: kliki, komiwojażera,plecakowy) można zredukować do problemu SAT w czasie wielomianowym.W zastosowaniach kryptograficznych wiele problemów można sprowadzićdo problemu SAT (np. faktoryzację liczb, łamanie klucza szyfru symetrycz-nego, kolizje funkcji skrótu). Znane są metody transformowania układówszyfrujących do postaci formuł logicznych zapisanej w szczególnej postaci,nazywanej postacią CNF (Conjuctive Normal Form) [13]. Dla problemówkryptograficznych, jeśli dla zadanej formuły istnieje co najmniej jedno war-tościowanie, będzie interesować nas znalezienie co najmniej jednego z nich(a nie tylko odpowiedź, że takie istnieje). W praktyce takie wartościowaniemoże odpowiadać na przykład wartości klucza użytego w szyfrowaniu sy-metrycznym [1]. Znalezienie odpowiedniego wartościowania może być więcrównoważne złamaniu szyfru, to znaczy uczynienia go niezdolnym do za-pewnienia poufności szyfrowanych wiadomości.

Co roku odbywa się konkurs na najlepszy SAT Solver w kilku katego-riach [5]:

• SAT + UNSAT,• SAT,• Certified UNSAT,

w ramach których wydzielono podkategorie, w zależności od rodzaju da-nych wejściowych zapisanych w postaci CNF, czyli koniunkcyjnej postacinormalnej (koniunkcja alternatyw literałów formuły logicznej). Wyróżniasię następujące rodzaje danych wejściowych:

• Application – praktyczne problemy „z życia wzięte”,• Hard combinatorial – trudne problemy kombinatoryczne,• Random – problemy losowe.

Programowanie równoległe polega na wykonywaniu obliczeń w taki sposób,aby wiele instrukcji było wykonywanych jednocześnie. Taka forma progra-mowania coraz bardziej zyskuje na znaczeniu, ze względu na zbliżanie siędo granicy uniemożliwiającej dalsze zwiększanie częstotliwości taktowania

342

Page 343: Kryptologia i Cyberbezpieczenstwo nr 6

Akceleracja obliczeń kryptograficznych z wykorzystaniem procesorów GPU . . .

procesorów (która wiąże się z większą miniaturyzacją, która z kolei możepowodować efekt tunelowy [2, 3]). Z tego względu, do przeprowadzeniaobliczeń wykorzystuje się wiele procesorów równocześnie. Jednym ze spo-sobów uruchomienia tysięcy wątków jednocześnie jest użycie kart graficz-nych zgodnych z jedną z dwóch (lub obiema) technologiami przetwarza-nia równoległego na GPU – OpenCL [27] oraz CUDA [4]. Programowanierównoległe jest oczywiście trudniejsze w implementacji na poziomie algo-rytmów od programowania sekwencyjnego, gdyż współbieżność może nietylko zwiększyć wydajność programu, ale także wprowadzić nowe miejsca,w których można popełnić błąd. Pojawiają się problemy typu: zagłodzenie,zakleszczenie, wyścig i tym podobne.

W pracy tej, zostanie przedstawiona aplikacja GPUWalksat realizu-jąca równoległy SAT Solver (bazujący na algorytmie WalkSAT), zaimple-mentowana z wykorzystaniem środowiska programistycznego OpenCL orazprocesorów GPU (kart typu NVIDIA Tesla).

2. Problem spełnialności SAT

Problem spełnialności formuł rachunku zdań (SAT) jest problememNP-zupełnym. Dowód NP-zupełności problemu SAT został opublikowanyw roku 1971, przez Amerykanina, profesora Stephena Arthura Cooka, zaco między innymi, 11 lat później, został nagrodzony Nagrodą Turinga [14].

Sformułowanie problemu:Wejście: Poprawnie zapisana formuła rachunku zdań F o n zmiennych.Wyjście: Czy istnieje X ∈ 0, 1n taki, że F (X) = 1?

Przykład: Dla formuły rachunku zdań:

F (A,B,C) = (A ∨B) ∧ (B ∨ C) ∧ ¬B,

którą można w następujący sposób przedstawić za pomocą bramek logicz-nych: odpowiedzią na tak postawione pytanie jest TAK. Jedynym rozwią-zaniem jest wektor:

X = (A,B,C) = (1, 0, 1)

taki, że:F (1, 0, 1) = (1 ∨ 0) ∧ (0 ∨ 1) ∧ ¬0 = 1

343

Page 344: Kryptologia i Cyberbezpieczenstwo nr 6

P. Bęza, J. Gocławski, P. Mral, P. Sapiecha

3. Zastowania w kryptografii

Jednym z głównych zastosowań problemu SAT w kryptografii są atakialgebraiczne na szyfry strumieniowe –Keeloq oraz blokowe –DES. Ideą ata-ków algebraicznych jest przekształcenie ataku na system kryptograficznyw rozwiązanie układu równań wielomianowych. Głównym problemem tegopodejścia jest fakt, że rozwiązanie układu równań wielomianowych nadskończonym ciałem jest problemem NP-zupełnym [26]. Jednak redukcjatego problemu do problemu SAT daje możliwość uzyskania skutecznychataków.

4. Algorytmy stosowane w SAT Solverach

W związku z dużą złożonością algorytmu brutalnego rozwiązującegoproblem SAT, który wymagałby sprawdzenia wszystkich możliwych 2n

wartościowań, trwają poszukiwania algorytmów o lepszych złożonościach.Opracowanie algorytmu o złożoności wielomianowej byłoby równoważne zudowodnieniem, że P = NP , a zatem rozwiązaniem jednego z siedmiuproblemów milenijnych ogłoszonych w 2000 roku przez Instytut Matema-tyczny Claya [19]. Powstało wiele algorytmów skracających czas potrzebnydo otrzymania wyniku. Najpopularniejszym z nich jest algorytm DPLL(DavisPutnamLogemannLoveland algorithm) używany w odnoszących suk-cesy SAT Solverach takich jak MiniSat [6], Chaff [7] czy Glucose [8].

Algorytm ten, jest algorytmem z powrotami (backtracking) działają-cym poprzez wybór literału, przypisanie mu wartości logicznej, uproszcze-nie formuły, a następnie rekursywne sprawdzenie czy uproszczona formułajest spełnialna. Jeśli kolejne wywołania zwrócą odpowiedź twierdzącą ozna-cza to, że początkowa formuła jest spełnialna, w przeciwnym przypadkupodobne rekursywne sprawdzenie jest wykonywane przy założeniu prze-ciwnej wartości logicznej. Krok uproszczenia przede wszystkim polega nausunięciu klauzul, które stają się prawdziwe przy obecnym wartościowaniuformuły oraz tych literałów znajdujących się w pozostałych klauzulach,

344

Page 345: Kryptologia i Cyberbezpieczenstwo nr 6

Akceleracja obliczeń kryptograficznych z wykorzystaniem procesorów GPU . . .

które stały się fałszywe. Mimo to, pesymistyczna złożoność tego algorytmujest jednak nadal wykładnicza

Obecnie opracowywane są struktury danych oraz heurystyki pozwa-lające usprawnić działanie tego typu SAT Solverów. Znaczny wpływ napoprawę skuteczności ma też zastosowanie strategii pozwalających na ucze-nie się algorytmu oraz nawracanie o więcej niż jeden węzeł w przypadkuwykrycia konfliktu backjumping [13].

Kolejnym podejściem do rozwiązania problemu SAT są algorytmyprzeszukiwania lokalnego, wśród których szczególną wydajnością wyróż-niają się algorytmWalksat [9] oraz rodzina algorytmów Novelty [10]. Opie-rają się one danym początkowym wartościowaniu zmiennych formuły lo-gicznej, dla którego przy pomocy różnych heurystyk wybierane są zmie-niane, których wartości są następnie zmieniane na przeciwne. W ten sposóbalgorytm minimalizują liczbę niespełnionych klauzul zbliżając się tym sa-mym do rozwiązania. Dodatkowo wprowadzana jest pewna losowość celemuniknięcia utknięcia w lokalnym minimum.

5. SAT Solvery równoległe

Podjęto także próby zrównoleglenia SAT Solverów. W tej dziedziniewarty wspomnienia jest GrADSAT [15] stworzony na Uniwersytecie Kali-fornijskim w Santa Barbara, który wykorzystuje solver zChaff oraz archi-tekturę typu mater-slave zrealizowaną na siatce (grid). Problem dzielonyjest w nim na podprzestrzenie i rozwiązywany przez niezależnych klientówdzielących między sobą zbiór nauczonych klauzul. Podobnie zrealizowanotakże gNovelty+ (v.2) z tą różnicą, że tu każdy klient używa algorytmugNovelty+ do rozwiązania problemu [16].

Inne podejście zastosowano w SAT Solverze ManySAT [17], stworzo-nym przez Microsoft Research przy współpracy z Universite dArtois, wktórym to uruchamianych jest równolegle wiele instancji algorytmu DPLL.Jednak każda z instancji używa innych heurystyk, strategii restartów orazsposobów uczenia. Strategia ta dała bardzo dobre efekty i w 2009r. Many-SAT został zwycięzcą konkursu SAT.

W GPU4SAT powstałym na Universite de Reims Champagne-Arden-ne autorzy proponują sprowadzenie problemu SAT do mnożenia macierzyi wykorzystanie procesorów graficznych do zrównoleglenia tej operacji [11].Wykorzystywane jest tu podejście niezupełne, a kolejne wartościowaniawybierane są za pomocą heurystyk.

Z kolei PGSAT zaprojektowany na Uniwersytecie w Bolonii jest zrów-nolegloną wersją algorytmu GSAT (algorytm zachłanny) [18]. Każdy wą-tek otrzymuje własne wartościowanie zmiennych, a następnie przy pomocy

345

Page 346: Kryptologia i Cyberbezpieczenstwo nr 6

P. Bęza, J. Gocławski, P. Mral, P. Sapiecha

funkcji oceny wybierana jest najlepsza zmienna do zamiany. Proces powta-rzany jest aż do otrzymania wartościowania spełniającego zadaną formułę.

6. Procesory GPU

Początek historii procesorów graficznych, w skrócie GPU, sięga histo-rii pierwszych komputerów, których wynik działania pojawiał się na ekra-nie. Pierwsze karty graficzne miały za zadanie jedynie wyświetlać znakialfanumeryczne. Z czasem możliwe stało się użycie ekranów, na którychmożna było wyświetlać i zmieniać kolory pojedynczych pikseli. Wyświetla-nie wyników działania komputera przestało ograniczać się do wyświetlaniasymboli alfanumerycznych i poszerzyło się o możliwość wyświetlania obra-zów, wykresów, diagramów i innych, graficznych, sposobów reprezentacjidanych.

Dziś karty graficzne weszły na kolejny etap rozwoju, w którym zaczętowykorzystywać ich możliwości obliczeniowe do wsparcia obliczeń dotych-czas wykonywanych jedynie na procesorze głównym (CPU). Producenciniektórych kart graficznych rozszerzyli możliwości wykorzystania GPU dorównoległego przetwarzania danych, udostępniając własny język programo-wania oraz interfejs programistyczny (API), umożliwiający programowa-nie równoległego przetwarzania danych, niekoniecznie związanych z grafikąkomputerową.

Karty graficzne zostały docenione przez twórców jednego z najszyb-szych komputerów znajdujących się na Ziemi. Amerykański superkomputerTitan o mocy obliczeniowej 17,59 PFLOPS, znajdujący się w Oak RidgeNational Laboratory, który od listopada 2012 do czerwca 2013, był naj-szybszym superkomputerem na świecie1, wykorzystuje do obliczeń, poza18688 procesorami AMD Opteron 6274 CPU, taką samą liczbę kart gra-ficznych NVIDIA Tesla K20X2 [20, 21]. Pracownicy instytutu wOak Ridge,przed otrzymaniem dostępu do potężnej mocy obliczeniowej superkompu-tera, przechodzą szkolenie z programowania kart graficznych, tak aby jaknajwydajniej wykorzystywać każdy cykl zegara multiprocesora karty gra-ficznej. [23]

1 w czasie pisania tego artykułu jest plasowany na drugiej pozycji w rankingu naj-szybszych superkomputerów, za chińskim Tianhe-2

2 w czasie pisania tego artykułu cena za sztukę to około 3000$ [22]

346

Page 347: Kryptologia i Cyberbezpieczenstwo nr 6

Akceleracja obliczeń kryptograficznych z wykorzystaniem procesorów GPU . . .

7. OpenCL vs CUDA

Dwie, obecnie najpopularniejsze, technologie wspierające równoległeprogramowanie przy użyciu procesorów graficznych to OpenCL i CUDA [4,27]. Pierwsza z nich jest wieloplatformowym, otwartym standardem, to zna-czy zastosowanie OpenCL nie ogranicza się do jednej platformy sprzętowej,jak w przypadku CUDA, dedykowanej jedynie dla sprzętu amerykańskiejfirmy NVIDIA (która również angażuje się w projekt OpenCL). Używająctechnologii CUDA jesteśmy ograniczeni do programowania sprzętu firmyNVIDIA, natomiast OpenCL działa na wielu innych środowiskach (takichjak FPGA, CPU, DSP), obsługując również część urządzeń NVIDII.

Pisząc kod zarówno w CUDA, jak i OpenCL, programista pisze z per-spektywy wykonania pojedynczego wątku. Pojęcie wątku może być myl-nie rozumiane przez programistów, którzy programowali wątki jedynie naCPU (na przykład korzystając z popularnej implementacji POSIX wątkówo nazwie pthreads), ponieważ wątki na GPU charakteryzują się tym, żewykonują się jednocześnie, pod warunkiem, że realizują dokładnie ten samkod programu dla (potencjalnie) różnych danych. Dla przykładu: jeśli uży-jemy instrukcji if-else, tak, że w i-tym wątku wykonuje się warunkowoinstrukcja Ai, a w wątku j = i instrukcja Aj = Ai, to taki program niebędzie wykonywał się równolegle na GPU. Jest to ograniczenie względemwątków znanych z CPU, jednak dzięki niemu jest możliwe uruchomienieznacznie większej liczby wątków3 niż na zwykłym procesorze komputera.Przedstawiony sposób działania programu jest nazwany działaniem SIMD,tzn. Single Instruction, Multiple Data i jest jedną z kategorii wyróżnionychw Taksonomii Flynna.

CUDA

Aby najlepiej oddać czym jest CUDA warto odwołać się do twórcówtej technologii, czyli do firmy NVIDIA, która na swojej stronie interneto-wej opisuje technologię CUDA następująco: “CUDA to opracowana przezfirmę NVIDIA równoległa architektura obliczeniowa, która zapewnia ra-dykalny wzrost wydajności obliczeń, dzięki wykorzystaniu mocy układówGPU (Graphics Processing Unit - jednostka przetwarzania graficznego) [4].Określenie wzrostu wydajności radykalnym wydaje się uzasadnione w świe-tle przykładowych aplikacji udostępnianych przez firmę NVIDIA, napisa-nych zarówno w wersji na CPU, jak i GPU w celu porównania wydajności

3 rzędu tysięcy

347

Page 348: Kryptologia i Cyberbezpieczenstwo nr 6

P. Bęza, J. Gocławski, P. Mral, P. Sapiecha

[28]. Przyspieszeni a niektórych wersji aplikacji na GPU jest rzędu kilku-dziesięciu razy względem tych na CPU.

Firma NVIDIA, w ramach wsparcia technologii CUDA, dostarcza śro-dowisko programistyczne, składające się m.in. z: kompilatora nvcc, debug-gera cuda-gdb oraz profilera, to znaczy aplikacji umożliwiającej pomiarwydajności (na przykład poprzez śledzenie czasu zajętości multiprocesorakarty graficznej).

Istnieje szeroki wybór kart graficznych firmy NVIDIA opartych o różnemikroarchitektury. Ich nazwy, w kolejności ich powstania to: Tesla, Fermi,Kepler, Maxwell i Pascal. Chcąc programować w technologii CUDA wartomieć sprzęt z możliwie najwyższym numerem compute capability, ponie-waż karty graficzne z wyższym compute capability są wzbogacone o nowefunkcje i mechanizmy CUDA4.

Jedną z najnowszych i najdroższych kart graficznych NVIDII jest NVI-DIA Tesla K40 i kosztuje około 5000$ za sztukę [24]. Istnieją projekty, któremają wykorzystywać moc obliczeniową tej karty. W Texas Advanced Com-puting Center w Austin, w stanie Teksas, ma powstać centrum o nazwieMaverick, służące do zdalnej wizualizacji i analizy danych (Remote Visu-alization and Data Analysis) z wykorzystaniem między innymi 132 kartTesla K40 [25].

OpenCL

Idea działania OpenCL jest bardzo zbliżona do architektury CUDA.Dynamiczny sposób kompilacji kodu wykonywanego na maszynie (to jestpo uruchomieniu programu), idea działania wątków podzielonych na bloki iwiele innych mechanizmów jest takich jak w CUDA. Różnice między tymitechnologiami polegają na innych interfejsach programistycznych (API),to znaczy w funkcjach obsługujących sprzęt. OpenCL wydaje się być niecobardziej niskopoziomowym podejściem w kodowaniu niż CUDA. Ponadtoistotną różnicą względem CUDA jest otwartość OpenCL. Zarówno podwzględem otwartości kodu całego projektu, jak i otwartości na inne urzą-dzenia, nie tylko karty graficzne.OpenCL potrafi obsługiwać wiele urządzeńjednocześnie (tak jak CUDA), jednak urządzenia mogą być urządzeniamiróżnych typów (nie tylko GPU). Co więcej, dzięki aplikacji VirtualCL mo-żemy łatwo zrównoleglić wykonanie programów napisanych w OpenCL, nawiele komputerów połączonych w sieć [29].

4 na przykład przed powstaniem architektury o nazwie Fermi nie było możliwe ko-rzystanie z rekurencji

348

Page 349: Kryptologia i Cyberbezpieczenstwo nr 6

Akceleracja obliczeń kryptograficznych z wykorzystaniem procesorów GPU . . .

Aby zrozumieć szczegółowy, niskopoziomowy sposób działania archi-tektury OpenCL warto przeanalizować jak OpenCL korzysta ze sprzętu, naktórym są wykonywane programy napisane w języku OpenCL C. Niestety,w ogólności, szczegółowa analiza wykonania kodu napisanego na platformywspierające OpenCL jest utrudniona z powodu szerokiej gamy urządzeńwspierających OpenCL. Każda architektura sprzętowa wspierana przezOpenCL ma inną budowę i specyfikę działania, dlatego do opisu działaniaOpenCL wygodnie jest użyć pojęć będących abstrakcyjnym ujęciem fak-tycznej realizacji sprzętowej (można to nazwać enkapsulacją/hermetyzacjąsprzętowego wykonania aplikacji). Szczegółowa realizacja wykonania pro-gramu (to jest na przykład obsługa przydziału wątków do poszczególnychprocesorów sprzętowych, kolejność alokowania pamięci i tak dalej) jest za-leżna od konkretnego sprzętu i implementacji standardu OpenCL przezproducenta sprzętu na którym wykonywany jest program. W celu przepro-wadzenia dokładnej analizy sprzętowej wykonania programu, należy zapo-znać się ze specyfikacją producenta sprzętu, na którym jest on uruchamiany(o ile jest udostępniona) [30].

Prosty schemat bloków złożonych z wątków programu w architekturzeOpenCL przedstawia poniższy

Jeśli program wykonuje się na karcie graficznej, to wątki wykonująsię w blokach na jednostkach obliczeniowych (compute units), będącychczęścią multiprocesora karty graficznej.

OpenCL ma do dyspozycji kilka rodzajów pamięci (w kolejności ro-snącej szybkości dostępu):

• pamięć globalną – rzędu gigabajtów,• pamięć stałych – to jest wydzieloną częścią globalną z optymaliza-

cjami, z racji niezmienności danych,• pamięć lokalna – współdzielona między wątkami w jednym wątku,

rzędu kilkudziesięciu kilobajtów,• pamięć prywatna – niewspółdzielona pamięć dla jednego wątku.

349

Page 350: Kryptologia i Cyberbezpieczenstwo nr 6

P. Bęza, J. Gocławski, P. Mral, P. Sapiecha

8. Implementacja

Proponowane przez nas rozwiązanie, czyli implementacja SAT Solverana karcie graficznej (GPU), korzysta z algorytmuWalkSAT, a uruchamianejest na 3 kartach NVIDIA Tesla M2070 dostępnych w laboratorium Wy-działu MiNI PW.

Ogólne założenia implementacji sprowadzają się do tego, by urucho-mić jak najwięcej instancji algorytmu WalkSAT na jak największej liczbiewątków na karcie graficznej (dokładniej: na każdej z trzech dostępnychkart graficznych). Każda instancja algorytmu otrzymuje inne wartościo-wanie początkowe, które jest dla niej punktem startowym obliczeń. Jeśliktórakolwiek instancja algorytmu znajdzie wartościowanie spełniające za-daną formułę logiczną, obliczenia są przerywane, a wyniki są zapisywanedo pliku.

Im mniejszy problem, tym więcej instancji algorytmu można urucho-mić i tym szybciej zostanie rozwiązany.

9. Architektura rozwiązania

Program dzieli są na dwa główne moduły: moduł uruchamiany naprocesorze głównym komputera (CPU) oraz na moduł uruchamiany nakarcie graficznej (GPU).

350

Page 351: Kryptologia i Cyberbezpieczenstwo nr 6

Akceleracja obliczeń kryptograficznych z wykorzystaniem procesorów GPU . . .

Moduł CPU

Program GPUWalksat rozpoczyna wykonanie od przygotowania da-nych dla karty graficznej, które odbywa się na CPU. W tym module wy-czytywana jest formuła logiczna CNF zapisana w formacie DIMACS. Na jejpostawie, przygotowywane są struktury danych dla GPU oraz konfiguro-wane jest środowisko OpenCL. W celu wykorzystania wszystkich 3 dostęp-nych kart NVIDIA Tesla, uruchamiane są 3 niezależne wątki POSIX-owena CPU, tak aby każdy miał przypisaną do siebie jedną z kart graficznych.Każdy z wątków przeprowadza wspominaną konfigurację dla przypisanejdo siebie karty graficznej.

Struktury danych

W ramach przygotowania środowiska, tworzone są struktury danych,które następnie przekazywane są do środowiska OpenCL (moduł GPU).W ich skład wchodzą:

• klauzule tworzące formułę logiczną (potrzebne do sprawdzania speł-nialności),

• mapowanie zmienna-¿klauzula (potrzebne do szybkiego znajdowaniaklauzul zawierających daną zmienną logiczną),

• wartościowania dla każdego wątku na karcie graficznej,• inne struktury pomocnicze potrzebne do realizacji powyższych struk-

tur.

Warto zaznaczyć, że wszystkie struktury oprócz wartościowań, sąwspólne z perspektywy wątków na GPU. Jedynie wartościowania są przy-dzielane dla każdego wątku osobno - dla każdego wątku losowane jest innewartościowanie początkowe, które przekazywane jest w osobnej strukturzedanych.

W czasie konfigurowania środowiska OpenCL dobierana jest takżeoptymalna liczba wątków do uruchomienia na jednej karcie graficznej. „Wą-skim gardłem” obliczeń na GPU jest dostępna pamięć operacyjna, którejprzy większych problemach zaczyna szybko brakować. W tym celu należyoptymalizować struktury danych oraz liczbę wątków do uruchomienia naGPU. Ich liczba zależy od wielkości problemu według zasady: im większyproblem, tym więcej pamięci operacyjnej na niego potrzeba, a w konse-kwencji – tym mniej wątków na GPU można uruchomić.

Po wykonaniu wszystkich powyższych czynności, mając już skonfigu-rowane środowisko OpenCL pod kątem danego problemu do rozwiązania,

351

Page 352: Kryptologia i Cyberbezpieczenstwo nr 6

P. Bęza, J. Gocławski, P. Mral, P. Sapiecha

kompilowany i uruchamiany jest kernel, czyli kod wykonywany na karciegraficznej.

Po zakończeniu obliczeń przez moduł GPU, wykonywanie programuwraca na CPU, gdzie odczytywane są znalezione na GPU wartościowaniaoraz weryfikowana jest ich poprawność.

Moduł GPU

W środowisku OpenCL kod wykonywany na urządzeniu nazywany jestkernelem. Implementuje się go w języku zbliżonym do klasycznego C z kil-koma rozszerzeniami specyficznymi dla OpenCL. Każdą instrukcję rozważasię z perspektywy pojedynczego wątku (w sensie GPU, a nie CPU).

Wątek na karcie graficznej otrzymuje dane przygotowane dla niegowcześniej przez moduł CPU, opisane w sekcji Struktury danych. Następ-nie, korzystając z wylosowanego dla niego wartościowania początkowego,uruchamia pętlę algorytmu WalkSAT. Wartościowanie jest modyfikowanezgodnie z heurystyką algorytmu aż do momentu znalezienia rozwiązaniaprzez dany wątek lub którykolwiek inny.

Synchronizacja

Wątki na GPU są od siebie w znacznej części całkowicie niezależne.Korzystają z niektórych współdzielonych struktury danych, przechowywa-nych w pamięci globalnej karty graficznej, jednak dostęp do niej jest auto-matycznie synchronizowany i kontrolowany przez kartę graficzną. Ponadto,jeśli jakiś wątek znajdzie wartościowanie spełniające zadaną formułę lo-giczną, ustawia flagę w pamięci globalnej, aby poinformować inne wątki,że powinny skończyć obliczenia. Flaga ta jest sprawdzana co ustaloną liczbęobrotów pętli algorytmu, tak aby niepotrzebnie nie spowalniać obliczeń.

10. Testy

Aplikacja GPUWalksat została poddana trzem rodzajom testów:

• testom funkcjonalnym, których zadaniem było sprawdzenie, czy zo-stanie znalezione rozwiązanie problemu, który wiadomo, że jest speł-nialny,• testom wydajnościowym, których celem było zmierzenie czasu rozwią-

zywania problemów,• testom porównawczym, których celem było porównanie aplikacji z in-

nymi SAT Solverami.

352

Page 353: Kryptologia i Cyberbezpieczenstwo nr 6

Akceleracja obliczeń kryptograficznych z wykorzystaniem procesorów GPU . . .

Środowisko testowe

Aplikacja GPUWalksat była uruchamiana na klastrze obliczeniowymdostępnym na Wydziale MiNI PW, złożonym z 3 kart NVIDIA TeslaM2070. W trakcie testów porównawczych, SAT Solvery działające naCPU uruchamiane były na komputerze osobistym z procesorem Intel Corei7-3770 o taktowaniu 3.40 Ghz.

Wyniki testów

Testy funkcjonalne polegały na rozwiązaniu formuły złożonej z prawde Morgana o różnych stopniu złożoności. Rozwiązania zostały znalezionepoprawnie. Ponadto przetestowano działanie programu na formule, o którejwiadomo, że nie posiada rozwiązania. Zgodnie z oczekiwaniami, programnie znalazł rozwiązania w określonym z góry czasie.Testy wydajnościowe i porównawcze polegały na znalezieniu rozwiąza-nia problemów różnych typów. Zmierzony czas porównany został z czasemznajdowania rozwiązania dla tych samych problemów przez dwa inne SATSolvery:

• WalkSAT CPU – implementacja algorytmu WalkSAT, jednowątkowa,na CPU,

• miniSAT – jeden z najlepszych i najbardziej znanych SAT Solverów,oparty na algorytmie DPLL, działający na CPU.

11. Wnioski

Testy funkcjonalne, wydajnościowe i porównawcze przeprowadzone nawielu przykładach pochodzących z SAT Competition [5] wykazały, że apli-kacja GPUWalksat łącząca algorytm przeszukiwania lokalnego z wykorzy-staniem kart graficznych pozwala znacznie przyspieszyć obliczenia dla pew-nej grupy problemów. Na szczególną uwagę zasługują problemy losowe,a wśród nich 5-SAT o rozkładzie jednostajnym o 120 zmiennych i 2556klauzulach, dla którego po uruchomieniu na klastrze obliczeniowym skła-dającym się z trzech kart NVIDIA Tesla M2070, rozwiązanie zostało zna-lezione w 68,195 s, podczas gdy obliczenia CPUWalksata oraz Minisatamusiały zostać przerwane ze względu na maksymalny zakładany czas obli-czeń, tj. 15 minut. Większość problemów nadal efektywniej rozwiązywanajest przez SAT Solvery oparte na algorytmie DPLL. W grupie tej znaj-duje się między innymi problem znajdywania rozwiązania dla quasi-grupy

353

Page 354: Kryptologia i Cyberbezpieczenstwo nr 6

P. Bęza, J. Gocławski, P. Mral, P. Sapiecha

Tabela 1Wyniki zbiorcze testów wydajnościowych i porównawczych

n — liczba zmiennych, m — liczba klauzul

Nazwa pliku WalkSATn m GPUWalksat miniSAT

z CNF CPU

f100 100 400 0,02 s 0,099 s 0,004 s

f300 300 1200 0,03 s 1,313 s 0,028 s

f500 500 2150 0,57 s 11,104 s > 5 min

2000 2000 8000 11,48 s 99,567s > 5 min

f10k 10000 40000 7,45 s > 5 min > 5 min

fact 25 52 52 187 0,008 s 0,046 s 0,004 s

hard 100 100 800 0,008 s 0,534 s 0,004 s

3colorflat 200 600 600 2237 0,090 s 7,877 s 0,012 s

f16b 56893 658v 2563c 658 2563 342,59 s 33,512 s 0,008 s

5colormorph 100 500 500 3100 > 5 min 25,951 s 0,004 s

quasigroup 343 343 68083 > 5 min 32,689 s 0,024 s

sgen1-sat-140-100 140 336 > 15 min 0,635 s 10,368 s

unif-k5-r21.3 120 2556 > 15 min 68,195 s > 15 min

mający 343 zmienne i 68083 klauzul, dla którego to GPUWalksat znalazłrozwiązanie po 32,689 s, podczas gdy Minisat zakończył obliczenia w zale-dwie 0,024 s.

Przedstawiona aplikacja może być zoptymalizowana na wiele sposobóww celu osiągnięcia lepszych efektów. Po pierwsze poprzez użycie modeluSIMD w bardziej dokładny sposób oraz poprzez optymalne wykorzystanieróżnych typów pamięci dostępnych w architekturze GPU w celu zmniejsze-nia kosztów dostępu do pamięci. Poprawę wydajności można także uzyskaćskupiając się na wybranym problemie, poprzez stworzenie struktur danychoraz preprocesora odpowiadających specyfice danego zagadnienia. W tymprzypadku parametry algorytmuWalksat również powinny zostać przeana-lizowane i odpowiednio dobrane.

Użycie środowiska OpenCL pozwala także na przeniesienie zaprezen-towanego rozwiązania na układy FPGA, które zapewniają wysoką efektyw-ność.

354

Page 355: Kryptologia i Cyberbezpieczenstwo nr 6

Akceleracja obliczeń kryptograficznych z wykorzystaniem procesorów GPU . . .

Literatura

[1] T. Eibach, E. Pilz, and G. Volkel, Attacking Bivium UsingSAT Solvers, University of Ulm, Institute of Theoretical ComputerSciencehttp://www.uni-ulm.de/fileadmin/website uni ulm/iui.inst.190/Mitarbeiter/eibach/Attacking-Bivium-Using-SAT-Solvers.pdf,01.02.2014.

[2] M. Luisier, A. Schenk, IEEE TRANSACTIONS ON ELECTRONDEVICES,http://www.iis.ee.ethz.ch/ schenk/04495122.pdf, 24.04.2014.

[3] S. Anthony, 7nm, 5nm, 3nm: The new materials and transistors thatwill take us to the limits of Moores law,http://www.extremetech.com/computing/162376-7nm-5nm-3nm-the--new-materials-and-transistors-that-will-take-us-to-the-limits-of-moo-res-law, 24.04.2014.

[4] NVIDIA Website,http://www.nvidia.pl/object/cuda-parallel-computing-pl.html,24.04.2014.

[5] SAT Competition, Strona internetowa konkursu SAT Competition,http://www.satcompetition.org/, 01.05.2014.

[6] N. Een, N. Sorensson, An Extensible SAT-solver, [W:] SAT,pod red. Enrico Giunchiglia, Armando Tacchella, Springer, 2003,s. 502–518.

[7] C. F. Madigan, S. Malik, M. W. Moskewicz, L. Zhang, Y.Zhao, Chaff: Engineering an Efficient SAT Solver, 39th Design Auto-mation Conference (DAC 2001), ACM, 2001.

[8] Glucose, The Glucose SAT Solver.http://www.labri.fr/perso/lsimon/glucose/, 17.04.2014.

[9] WalkSAT, WalkSAT Home Page,http://www.cs.rochester.edu/u/kautz/walksat/, 17.04.2014.

[10] H. H. Hoos, D. A. D. Tompkins, Novelty+ and Adaptive Novelty+,https://cs.uwaterloo.ca/ dtompkin/papers/satcomp04-novp.pdf, Uni-versity of British Columbia, 2004.

[11] H. Deleau, Ch. Jaillet, M. Krajecki, GPU4SAT: solving theSAT problem on GPU,CReSTIC SysCom, Universitae de Reims Champagne-Ardenne, 2008.

[12] V. W. Marek, Introduction to Mathematics of Satisfiability, CRCPress, 2008.

[13] G. V. Bard, Algorithms for Solving Linear and Polynomial Systemsof Equations over Finite Fields with Applications to Cryptanalysis,Rozprawa doktorska, 2007.

355

Page 356: Kryptologia i Cyberbezpieczenstwo nr 6

P. Bęza, J. Gocławski, P. Mral, P. Sapiecha

[14] S. Cook, The complexity of theorem proving procedures, Proceedingsof the Third Annual ACM Symposium on Theory of Computing, 1971,s. 151–158.

[15] W. Chrabakh, R. Wolski, GrADSAT: A Parallel SAT Solver forthe Grid, University of California Santa Barbara, 2003.

[16] D.N. Pham, C. Gretton, gNovelty+ (v.2) [W:] Solver description,SAT competition, 2009.

[17] Y. Hamadi, S. Jabbour, L. Sais,ManySAT: A Parallel SAT Solver,Journal on Satisfiability, Boolean Modeling and Computation, JSAT6, 2009, s. 245–262

[18] A. Roli, Criticality and Parallelism in Structured SAT Instances,[W:] CP’02. Volume 2470 of LNCS., pod red. P. V. Hentenryck, 2002,s.714–719.

[19] Instytut Matematyczny Claya http://www.claymath.org/millennium,07.05.2014.

[20] top500.org, Titan – Cray XK7 , Opteron 6274 16C 2.200GHz, CrayGemini interconnect, NVIDIA K20x,http://www.top500.org/system/177975, 05.02.2014.

[21] top500.org, Oak Ridge Claims No. 1 Position on Latest TOP500 Listwith Titan,http://www.top500.org/blog/lists/2012/11/press-release/,05.02.2014.

[22] amazon.com, http://www.amazon.com/nVidia-K20X-NVIDIA-Tesla/dp/B00CX35KU2, 28.04.2014.

[23] Oak Ridge Computing Facility, https://www.olcf.ornl.gov/support/,24.04.2014.

[24] computer store – newegg.com,http://www.newegg.com/Product/Product.aspx?Item=N82E16814132015, 24.04.2014.

[25] Texas Advanced Computing Center, https://www.tacc.utexas.edu/news/press-releases/2013/tacc-to-deploy-maverick, 28.04.2014.

[26] M. Voros, Algebraic attack on stream ciphers, praca magisterska,Bratislava, 2007.

[27] Khronos Group – OpenCL, http://www.khronos.org/opencl/,28.04.2014.

[28] CUDA Examples,http://www.nvidia.pl/object/gpu-computing-applications-pl.html,28.04.2014.

[29] VirtualCL, http://www.mosix.org/txt vcl.html/, 28.04.2014.

356

Page 357: Kryptologia i Cyberbezpieczenstwo nr 6

Akceleracja obliczeń kryptograficznych z wykorzystaniem procesorów GPU . . .

[30] Timo Stich, OpenCL on NVIDIA GPUs,http://sa09.idav.ucdavis.edu/docs/SA09 NVIDIA IHV talk.pdf,09.02.2014.

ACCELERATION OF CRYPTOGRAPHICCALCULATIONS USING GPUS

Abstract. The boolean satisfiability problem SAT is one of the fundamental and opentasks in present-day information science. This problem is NP-complete. It means thatall NP problems can be reduced to SAT in polynomial time. Interestingly, among NPproblems, there are many closely related to cryptology, for example: factorization ofnumbers – important for RSA, breaking keys of symmetric ciphers, finding collisions ofhash functions and many others. The discovery of the polynomial algorithm for SATwould result in resolving one of Millennium Prize Problems: P vs. NP. This objectiveseems to be hard to achieve – it’s unknown if it is even possible. With slightly loweraspirations, we can design heuristic or random algorithms for SAT. Therefore, the maingoal of our study is to present a project of parallel SAT Solver based onWalkSAT algo-rithm, including its implementation using the OpenCL programming environment and acomputer equipped with NVIDIA Tesla graphics cards. With the rapid development ofGPU technology and FPGAs, as well as portability of solutions created in OpenCL, thedirection of such works becomes interesting because of computational efficiency gained,as well as solution prototyping rate.

Keywords: satisfiability, SAT Solver, WalkSAT, graphics processing unit, cryptoana-lysis, OpenCL, parallel computing.

Page 358: Kryptologia i Cyberbezpieczenstwo nr 6
Page 359: Kryptologia i Cyberbezpieczenstwo nr 6

MODELLING THE SOFTWARE TESTINGPROCESS

Kazimierz Worwa

Faculty of Cybernetics, Military University of Technology, 00-908 Warszawa,Kaliskiego 2, Poland [email protected]

Abstract. An approach to formal modelling the program testing process is proposedin the paper. Considerations are based on some program reliability-growth model thatis constructed for assumed scheme of the program testing process. In this model theprogram under the testing is characterized by means of so-called characteristic matrixand the program testing process is determined by means of so-called testing strategy. Theformula for determining the mean value of the predicted number of errors encounteredduring the program testing is obtained. This formula can be used if the characteristicmatrix and the testing strategy are known. Formulae for evaluating this value when theprogram characteristic matrix is not known are also proposed in the paper.Keywords: software testing, software reliability, software reliability models.

1. Introduction

The testing of a newly developed program, prior to its practical use,is a commonly followed practice. The program testing process involves theexecution of the program with many sets of input data with the inten-tion of finding errors. Testing is done to lower the chances of in-servicefailures which are defined as an unacceptable departure from a programoperation. A long period of testing results in increasing the chances of de-tecting program errors and decreasing the chances of in-service failures,but it also results in increasing the cost of the program testing process.It is known that testing is the most significant money consuming stageof the program development. A cost of the program testing process canmake even more than 50% of the total cost of the program development,especially for complex program systems [12, 17]. Considering the essentialimpact of the testing cost on the whole program development cost, thetesting process ought to be prudently planned and organized. Decisionsrelative to the testing process organization should be made on the basis ofresults of testing efficiency analysis. In order to make such analysis easierit may be convenient to evaluate the number of program errors that couldbe encountered during the program testing process. The knowledge of thisevaluation results makes it possible to evaluate the duration and the cost ofthe program testing process, e.g. by means of formal, mathematical expres-sions. Such estimations can be very useful in practice, e.g. for comparing

Page 360: Kryptologia i Cyberbezpieczenstwo nr 6

K. Worwa

the effectiveness of different ways of program testing process organizations(i.e. in order to find an optimal organization).

For the purpose of the rational prediction of the program testing pro-cess duration software reliability-growth models are recommended in thispaper. These models can provide a first program reliability-estimate andsupport project management in planning further development processes.Therefore many software reliability-growth models have been proposed inthe literature [1–5, 7–9, 11, 13–14, 18, 20, 24–26]. The number of modelsthat have actually been employed to assist with software development pro-jects is, however, much smaller. The reason for this is that none of thesemodels give sufficiently accurate estimates of reliability. This seems to bechiefly due to the fact that the authors of the various models have paidlittle or no attention to the manner in which a software is tested. Softwarereliability modelling has become one of the most important aspects in so-ftware reliability engineering since Jelinski-Moranda [10] and Schooman[16] models appeared. Various methodologies have been adopted to modelsoftware reliability behaviour. The most of existing work on software re-liability modelling is focused on continuous-time base, which assumes thatsoftware reliability behaviour can be measured in terms of time. It may bea calendar time, a clock time or a CPU execution time [1, 3, 7–9, 11, 13–14,17, 20, 24, 26]. Although this assumption is appropriate for a wide scope ofsoftware systems, there are many systems, which are essentially differentfrom this assumption. For example, reliability behaviour of a reservationsoftware system should be measured in terms of how many reservations aresuccessful, rather than how long the software operates without any failure.Similarly, reliability behaviour of a bank transaction processing softwaresystem should be assessed in terms of how many transactions are successful,etc. Obviously, for these systems, the time base of reliability measurementis essentially discrete rather than continuous. Models that are based ona discrete-time approach are called input-domain or run-domain models[2, 4–5, 22–23, 25]. They usually express reliability as the probability thatan execution of the software is successful. The paper [2] has been proposedthe terms a run and run reliability and a conceptual framework of softwarerun reliability modelling. A run is a minimum execution unit of softwareand run reliability means the probability that software successfully performa run. The concrete sense of a run is subject to application context. Forexample, a run can correspond to execution of a test case, of a programpath, etc.

This paper attempts to describe a new discrete-time softwarereliability-growth model for some scheme of the program testing and to

360

Page 361: Kryptologia i Cyberbezpieczenstwo nr 6

Modelling the software testing process

determine a formula to evaluate the predicted number of program errorsencountered during the testing process.

2. The program testing scheme

An organization of a program testing process depends on the pro-gram testing strategy which was selected for the testing. In particular, thisstrategy defines the way of the testing process realization and the set ofprogram input data which is used for the testing. It is assumed that theprogram testing process consists of a number of organizational units of theprogram testing phase that are called the testing stages. Every stage of theprogram testing process consists of the two following steps of testing:

— testing of the program under consideration with a prepared set ofprogram input data (tests),

— comparison of the results with the expected outputs for the data usedand removing all errors encountered during testing.

It is noteworthy that all program faults discovered during the first step ofsome testing stage are only registered and removed only this step is finished.Such organization of the testing stage means that testing and debugging areperformed in different steps (not simultaneously) and consequently someprogram fault can be observed more than once in the testing stage. Thepaper [25] has been underlined that above definition of the testing schemeis used in the most mathematical models of software testing.

Let S mean the program testing strategy which is defined as follows

S = (K, (L1, L2, . . . , Lk, . . . , LK)) (1)

where: K – the number of stages of the program testing process,Lk – the number of program input data used in the k-th program testingstage, Lk > 0, k = 1,K

Execution of the program under the testing process with one inputdata set (test case) will be called a run in this paper. The run can besuccessful, if program execution did not lead to encounter any programerrors or not successful, if program execution was incorrect, i.e. some errorswere encountered.

Let S denote the set of all strategies that have the form (1). Thestrategy (1) defines a program testing scheme. In accordance with thisscheme, the process of removing program errors which were encounteredduring the k-th program testing stage can be started after the executionof the program on all Lk tests is finished.

361

Page 362: Kryptologia i Cyberbezpieczenstwo nr 6

K. Worwa

According to assumed testing scheme a situation that a number ofdifferent tests of all Lk tests executed during the k-th stage encounter thesame error in the program under the testing is possible. So, according to thenote mentioned above, a situation that several runs will lead to encounterthe same program error is possible.

Let pnm define the probability of an event that n errors will be enco-untered during a single stage of the program testing if there are m teststhat have incorrect execution in that stage. If we assume that every exe-cution of the program with a single test can lead to encounter at most oneprogram error, we will have

0 ≤ pnm ≤ 1 if n ≤ m, n ≥ 0 (2)

where in particularp00 = p11 = 1

pnm = 0 if n > m(3)

and∞∑n=0

pnm = 1, m ∈ 0, 1, 2, . . .. (4)

Probabilities pnm, n ∈ 0, 1, 2, . . . ,m, m ∈ 0, 1, 2, . . ., form an infinitematrix P = [pnm] as follows

P =

1 0 0 0 0 . . .0 1 p12 p13 p14 . . .0 0 p22 p23 p24 . . .0 0 0 p33 p34 . . .0 0 0 0 p44 . . ....

......

......

. . .

, (5)

where values pnm are defined by (2)–(4).The matrix P contains the values 0 below the main diagonal because –

in accordance with earlier assumption that every execution of the programwith a single test can lead to encounter at most one program error – it isnot possible to encounter more different errors than the number of incorrectruns.

The values of probabilities pnm for every program testing stage onlydepend on the number of tests which are used during that stage.

The values of probabilities pnm that form the matrix P depend ona logical structure of the program. In particular, an important impact onthese probabilities has:

362

Page 363: Kryptologia i Cyberbezpieczenstwo nr 6

Modelling the software testing process

— number of paths that have been identified in the program,— degree of covering individual paths, that can be measured by number

of program instructions that belong to two or more paths,— length of individual paths, measured by number of program instruc-

tions that are executed in case of path activation.

The matrix P will be called the characteristic matrix of the program undertesting.

3. Program reliability coefficient

Let Mk(S, P ) denote the number of runs which lead to incorrect exe-cution of the program under the testing, i.e. to encounter program errors,during the k-th stage of program testing process according to the testingstrategy S and the characteristic matrix P .

Let Nk(S, P ) mean the total number of errors encountered duringthe k-th stage of program testing process in accordance with the testingstrategy S and the characteristic matrix P .

While planning the program testing process it is reasonable to treat thevalues Mk(S, P ) and Nk(S, P ), k = 1,K, as random variables, Nk(S, P ) ≤Mk(S, P ), k = 1,K.

Joint distribution of the random variables Nk(S, P ), Mk(S, P ) can bedetermined as follows:

PrNk(S, P ) = nk,Mk(S, P ) = mk= PrNk(S, P ) = nk/Mk(S, P ) = mkPrMk(S, P ) = mk

(6)

Probability distribution of the random variable Nk(S, P ) can be de-termined as a marginal distribution in a distribution of two-dimensionalrandom variable (Nk(S, P ),Mk(S, P )):

PrNk(S, P ) = nk

=Lk∑mk=0

PrNk(S, P ) = nk/Mk(S, P ) = mkPrMk(S, P ) = mk(7)

Let N(S, P ) mean the total number of errors encountered during the pro-cess of the program testing in accordance with the testing strategy S andthe characteristic matrix P . The value N(S, P ) is a random variableand can be determined as follows:

N(S, P ) =K∑k=1

Nk(S, P ). (8)

363

Page 364: Kryptologia i Cyberbezpieczenstwo nr 6

K. Worwa

Taking into account assumed testing scheme probability distribution of therandom variable N(S,P) has the form:

PrN(S, P ) = nk

=∑

n1+n2+...+nk=n

PrN1(S, P ) = n1, N2(S, P ) = n2, . . . , NK(S, P ) = nK,

n = 0, 1, 2, . . .(9)

where probabilities PrN1(S, P ) = n1, N2(S, P ) = n2, . . . , NK(S, P ) =nK determine joint distribution of K-dimentional random variable(N1(S, P ), N2(S, P ), . . . , NK(S, P )).

Probability distribution PrN1(S, P ) = n1, N2(S, P ) = n2, . . . ,NK(S, P ) = nK can be determined as follows [21]

PrN1(S, P ) = n1, N2(S, P ) = n2, . . . , NK(S, P ) = nK

=K∏k=1

Lk∑mk=0

PrNk(S, P ) = nk/Mk(S, P ) = mk

· PrMk(S, P ) = nk/Ni(S, P ) = ni, i = 1, k − 1

(10)

where

PrMk(S, P ) = mk/Ni(S, P ) = ni, i = 1, k − 1= PrMk(S, P ) = mk/N1(S, P ) = n1, N2(S, P ) = n2,

. . . , Nk−1(S, P ) = nk−1

(11)

and N0(S, P ) = 0.According to earlier denotations we have

pnm = PrNk(S) = n|Mk(S)=m, k = 1,K − 1, (12)

so formula (10) takes a form:

PrN1(S, P ) = n1, N2(S, P ) = n2, . . . , NK(S, P ) = nK

=K∏k=1

Lk∑mk=0

pnkmkPrMk(S, P ) = mk/Ni(S, P ) = ni, i = 1, k − 1(13)

364

Page 365: Kryptologia i Cyberbezpieczenstwo nr 6

Modelling the software testing process

By the substitution of this equation into (9), we get:

PrN(S, P ) = n =∑

n1+n2+...+nK=n

PrN1(S, P ) = n1, N2(S, P ) = n2

, . . . , NK(S, P ) = nK

=∑

n1+n2+...+nK=n

K∏k=1

Lk∑mk=0

pnkmkPrMk(S, P ) = mk/Ni(S, P ) = ni,

i = 1, k − 1(14)

As a result of program testing process execution, in accordance withthe assumed testing strategy S, N(S, P ) program errors will be encoun-tered. Successful removing these errors will increase the level of programreliability. The number of encountered errors N(S, P ) depends on both as-sumed testing strategy and initial level of program reliability, i.e. reliabilityof the program at the beginning of the program testing process.

It is very well known that in spite of successful testing phase realizationthe program can still contain some errors. Bearing this fact in mind it isrationally to describe a result X(S, P ) of one program execution, afterfinishing the testing process according to strategy S, as follows:

X(S, P ) =

1 if an execution of the program with characteristic

matrix P ,that was tested in accordance with thestrategy S, is correct;

0 otherwise.

Planning the phase of program testing process it is rationally to treatamounts N(S, P ) and X(S, P ) as dependent random variables, because theresult X(S, P ) of program execution for some input data set, after finishingthe testing according to strategy S, depends on a number of errors N(S, P )encountered during this process.

Let r(S, P ) mean a probability of a correct execution of the programwith the characteristic matrix P , after finishing the testing process accor-ding to the strategy S, i.e.

r(S, P ) = PrX(S, P ) = 1. (15)

The probability r(S, P ) will be treated as a program reliability measure inthe paper.

365

Page 366: Kryptologia i Cyberbezpieczenstwo nr 6

K. Worwa

We can write:

r(S, P ) =L(S)∑n=0

r(S, P )|N(S,P )=n · PrN(S, P ) = n, (16)

where: r(S, P )|N(S,P )=n – conditional probability of a correct execution ofthe program with the characteristic matrix P if the testing process, accor-ding to the strategy S, leaded to encounter N(S, P ) = n program errors;L(S) – a total number of runs that are performed during testing the pro-gram according to the strategy S, i.e.

L(S) =K∑k=1

Lk. (17)

By substitution of expression (14) into (16), we get

r(S, P ) =L(S)∑n=0

r(S, P )|N(S,P )=n

=∑

n1+n2+...+nK=n

K∏k=1

Lk∑mk=0

pnkmkPrMk(S, P ) = mk/Ni(S, P ) = ni

i = 1, k − 1.(18)

If a number of errors is encountered in the program and they aresuccessfully corrected, the program reliability level will increase. We willdescribe it as follows:

r(S, P )|N(S,P )=n = r + ∆r(P, n), (19)

where: r – an initial value of the program reliability coefficient, i.e. value ofthe program reliability coefficient at the beginning of the program testingprocess,∆r(P, n) – an increase of the reliability coefficient value of the programwith the characteristic matrix P , as a result of encountering and removingn errors.

On the basis of facts described in literature (see e.g. [13, 17, 19]) it isassumed that the increase ∆r(P, n) is of the form:

∆r(P, n) = (1− r)(1− eαn), (20)

366

Page 367: Kryptologia i Cyberbezpieczenstwo nr 6

Modelling the software testing process

where α is a parameter that characterizes both the internal structure of theprogram under testing and the impact of one error removal on the increaseof the program reliability.

It should be stated that evaluating values of both parameters r and αrelies on the testing history of the software in practice.

Thus, by substituting the last equation into (19), we get:

r(S, P )|N(S,P )=n = 1− (1− r)e−αm. (21)

It is easy to notice that assumed testing scheme, such that probability ofsuccessful performance of one run remains constant during testing stage,leads to the so-called Bernoulli scheme. Consequently, conditional proba-bilities from (18) can be determined by means the binominal distributionas follows:

PrMk(S, P ) = mk/Ni(S, P ) = ni, i = 1, k − 1

=(Lkmk

)[e−α

∑k=1

i=1ni(1− r)]mk [1− e−α

∑k=1

i=1ni(1− r)]Lk−mk ,

mk ∈ 0, 1, 2, · · · , Lk, k = 1,K.

(22)

Substituting (21) and (22) into (18), we get the following expression for theprogram reliability coefficient r(S, P ), after finishing the testing processaccording to the strategy S:

r(S, P ) = 1− (1− r)A(S, P ), (23)

where

A(S, P ) =L1∑n1=0

L2∑n2=0

. . .

LK∑nK=0

e−α∑K

k=1nkK∏k=1

Lk∑mk=0

pnkmkAmk

( k−1∑i=1

ni, Lk

)(24)

and

Amk

( k−1∑i=1

ni, Lk

)=(Lkmk

)[e−α

∑k−1i=1ni(1− r)]mk [1− e−α

∑k−1i=1ni(1− r)]Lk−mk ,

mk ∈ 0, 1, 2, · · ·Lk, k = 1,K.

(25)

367

Page 368: Kryptologia i Cyberbezpieczenstwo nr 6

K. Worwa

The quantity Amk(∑k−1

i=1 ni, Lk), mk ∈ 0, 1, 2, · · · , Lk, ni ∈

0, 1, 2, · · · , Lk, k ∈ 1, 2, · · · ,K, means probability that mk runs of allLk runs performed during the k-th testing stage will be incorrect, i.e. willlead to encounter errors on condition that in the previous k − 1 testingstages

∑k−1i=1 ni errors were encountered and removed.

It is easy to check that

Lk∑mk=0

Amk

( k−1∑i=1

ni, Lk

)= [1−e−α

∑k−1i=1ni(1−r)+e−α

∑k−1i=1ni(1−r)]Lk = 1

and

Lk∑nk=0

Lk∑mk=0

pnkmkAmk

( k−1∑i=1

niLk

)=

Lk∑mk=0

Amk

( k−1∑i=1

ni, Lk

) Lk∑nk=0

pnkmk

=Lk∑mk=0

Amk

( k−1∑i=1

ni, Lk

)= 1.

The increase of the program reliability coefficient ∆r(S, P ) = r(S, P )− r,as a result of testing phase realization according to the strategy S, is ofthe form:

∆r(S, P ) = (1− r)(1−A(S, P )), (26)

where the quantity A(S, P ) is determined by (24).Let S′, S′′ ∈ S denote the following program testing strategies:

S′ = (L, (l, l, · · · , l)L times

), (27)

S′′ = (1, L). (28)

It could be said that the above strategies S′ and S′′ are extreme forms ofthe testing strategy (1). In particular, if the testing strategy has the formS′ than it means that in every testing stage the program under testingprocess is executed only once. Therefore, if the program execution encoun-ters any fault it will be removed immediately, i.e. before next testing stagewill be started. For the strategy S′ becomes impossible to observe repeatedappearances of faults in any testing stage. Thus this strategy is very pro-fitable from point of view of potential increase the program reliability, butrather inefficient from economical aspect of the program testing process.

368

Page 369: Kryptologia i Cyberbezpieczenstwo nr 6

Modelling the software testing process

If the testing strategy has the form S′′ than it means that program testingphase consists of only one testing stage containing all tests. Obviously, thisstrategy is very attractive because of low cost of program testing process,but probably it would not guarantee the sufficient increase of the programreliability.If the strategies S′ or S′′ are used the formulae for program reliabilitycoefficient r(S, P ) will take the simplified forms:

r(S′, P )r(S′) = 1− (1−)1∑n1=0

e−αn1(1− r)n1r1−n1

1∑n2=0

e−αn2 [e−αn1(1− r)]n2 [1− e−αn1(1− r)]1−n2

. . .1∑

nK=0

e−αnK [e−α∑K−1m=1

nm(1− r)]nK [1− e−α∑K−1m=1

nm(1− r)]1−nk

(29)and

r(S′′, P ) =L∑n=0

e−αnL∑m=0

pnm

(Lm

)(1− r)mrL−m. (30)

The main advantage of using the strategy S′ consists in avoiding the po-ssibility of encountering the same program error by different tests duringindividual testing stages. From one hand, it makes possible to increase inthe effectiveness of the testing process that could me measured, for exam-ple, by a total number of encountered fault with relation to total numberof tests, which were used in the testing process. From the other hand, themain disadvantage of this strategy is connected with its economic ineffecti-veness because of both high cost and long duration of the testing process.Practical application of the strategy S′′ can be connected with the effectof recapturing the same program errors by different tests during individualtesting stages. Obviously, this effect can meaningfully decrease in the ef-fectiveness of the testing process. In particular, if the program under thetesting process has an incorrect instruction at the beginning of its sourcecode then it is possible that all tests used in some testing stage will encoun-ter the same program error, related to this incorrect instruction. Because ofmentioned reasons, every practical testing strategy has character of somecompromise between the strategies S′ and S′′.Let P mean the set of all matrices that have form P , i.e:

P = P = [pnm], n,m ∈ 0, 1, 2, . . . : probabilities pnmmeet constraints defined by (2)− (4),

369

Page 370: Kryptologia i Cyberbezpieczenstwo nr 6

K. Worwa

where every individual program is characterized only by one characteristicmatrix P ∈ P .Let P ∗, P ∗∗ denote characteristic matrices of the program under the testingthat have form:

P ∗ =

1 0 0 0 . . .0 1 0 0 . . .0 0 1 0 . . .0 0 0 1 . . .0 0 0 1 . . ....

......

.... . .

, P ∗∗ =

1 0 0 0 . . .0 1 1 1 . . .0 0 0 0 . . .0 0 0 0 . . .0 0 0 1 . . ....

......

.... . .

. (31)

It can be proved [23] that if P ∗, P ∗∗ ∈ P are the matrices of the form (31)then

∆r(S, P ∗) = maxP∈P

∆r(S, P ) (32)

and

∆r(S, P ∗∗) = minP∈P

∆r(S, P ). (33)

The dependencies (32) and (33) make possible to obtain the following eva-luation of the program reliability coefficient value for any program testingstrategy S ∈ S:

r(S, P ∗∗) ≤ r(S, P ) ≤ r(S, P ∗). (34)

Double inequality (34) is a direct conclusion from (32) and (33). This in-equality enables to two-side rough estimate of the program reliability co-efficient value after the finishing the program testing process, accordingto the testing strategy S. This estimate is better, i.e. more precise, than0 ≤ r(S, P ) ≤ 1 and may be useful in situation when the probabilities pnm,that define the program characteristic matrix P , can not be determined inpractice.

4. Evaluating the mean value of the number of errorsencountered during the program testing process

Substituting (22) into (14), we get the following expression for pro-bability distribution of the total number of errors encountered during theprogram testing process, in accordance with the testing strategy S and the

370

Page 371: Kryptologia i Cyberbezpieczenstwo nr 6

Modelling the software testing process

characteristic matrix P :

PrN(S, P ) = n

=∑

n1+n2+···+nK=nPrN1(S) = n1, N2(S) = n2, · · · , Nk(S) = nK

=∑

n1+n2+···+nK=n

K∏l=1

Ll∑ml=0

pn1m1Am1

( l−1∑i=1

ni, L1

), n = 0, L(S)

(35)

where the quantities Am1(∑l−1

i=1 ni, L1)

and L(S) are determined by (25)and (17), respectively.The knowledge of the probability distribution function (35) makes possibleto obtain a formula for the mean value of the number of errors encounteredduring the program testing process according to the strategy S. We have

E[N(S, P )] =L(S)∑n=0

nPrN(S, P ) = n, (36)

and then, according to (35):

E[N(S, P )] =L(S)∑n=0

n∑

n1+n2+···+nK=n

K∏l=1

L1∑m1=0

pn1m1Am1

( l−1∑i=1

ni, L1

)

=K∑k=1

L1∑n1=0

L2∑n2=0

. . .

LK∑nK=0

nk

K∏l=1

n1∑m1=0

pn1m1Am1

( l−1∑i=1

ni, L1

).

(37)The formula (37) will be simplified if the program characteristic matrix Pis of the form (31), i.e.:

E[N(S, P ∗)]

= (1− r)K∑k=1

Lk

L1∑n1=0

L2∑n2=0

. . .

Lk−1∑nk−1=0

e−α∑k−1i=1nik−1∏l=1

A∗n1

( l−1∑i=1

ni, L1

),

(38)and

E[N(S, P ∗∗)]

=K∑k=1

1∑n1=0

A∗∗n1(0, L1) . . .1∑

nk−1=0

A∗∗nk−1

( k−2∑i=1

ni, Lk−1

)A∗∗1

( k−1∑i=1

ni, Lk

),

(39)

371

Page 372: Kryptologia i Cyberbezpieczenstwo nr 6

K. Worwa

where

A∗n1

( l−1∑i=1

ni, L1

)= [e−α

∑l−1i=1ni(1− r)]n1 [1− e−α

∑l−1i=1ni(1− r)]L1−n1

(40)and

A∗∗nk

( k−1∑i=1

ni, Lk

)= 1− [1− e−α

∑k−1i=1ni(1− r)]Lknk1− e−α

∑k−1i−1ni(1− r)Lk(1−nk),

(41)For example, if P = P ∗ and S = (2, (1, 1)), we will have

E[N(S, P ∗)] = (1− r)[1 + r + e−α(1− r)].

In practice, the formula (37) for evaluating the mean value of the numberof errors encountered during the program testing process can be used ifthe program characteristic matrix P is known. If the probabilities pnkmk ,nkmk ∈ 0, 1, 2, . . . , Lk, k = 1,K, are unknown, it is possible to determinethe boundary values of this evaluation.Let P ∗, P ∗∗ denote characteristic matrices of the program under the testingof forms (31). Then, as proved in [23], for both any program testing strategyS and any characteristic matrix P is:

E[N(S, P ∗∗)] ≤ E[N(S, P )] ≤ E[N(S, P ∗)], (42)

where the quantities E[N(S, P ∗)] and E[N(S, P ∗∗)] are determined by (38)and (39), respectively.

5. Conclusions

In order to apply the methodology proposed in this paper, softwarerun reliability data must be available. Compared to the amount of softwarereliability data reported in the literature, the amount of discrete-timesoftware reliability data is rather limited in relation to continuous-timesoftware reliability data, although some authors have published their owndata.It is noteworthy that the parameters (including r, α and probabilities thatform the characteristic matrix P ) of the presented in the paper program

372

Page 373: Kryptologia i Cyberbezpieczenstwo nr 6

Modelling the software testing process

reliability-growth model can be evaluated by using a process known as lifetesting or statistical-usage testing, in which long-term behaviour of thesoftware is observed and values of these parameters are estimated on thebasis of the observations (see e.g. [6, 17]).Sensible estimation of the values such parameters as r, α and pnm requiresa suitable data base of facts that contains information about similar formerprograms under testing. As far as the data base of facts is concerned, itis an important component of the software engineering. data base of factsmaintenance is especially useful if a software development process is stablein a domain sense. The fundamental information that creates this data baseof facts concerns the backgrounds, the circumstances, the reasons and thetime of the program errors encounter. Detailed analysis of data includedin the data base of facts enables better understanding mutual relations be-tween the types of software and the amount of program errors encounteredduring development process. Such mathematical and statistical methodsas regression analysis, variation analysis, least square method, maximumlikelihood method etc. are the most popular for estimating the values ofparameters that are commonly used in software reliability models. Thepractical usefulness of the parameter estimation methods mentioned abovecan be confirmed by the results of researches described in several papers(see e.g. [6, 13, 17]).

References

[1] S. Basu, N. Ebrahimi, Bayesian software reliability models based onmartingale processes, Technometrics, Vol. 45, pp. 150–158, 2003.

[2] K.Y. Cai, Towards a conceptual framework of software run reliabilitymodeling, Information Science, Vol. 126, No. 6, pp. 137–163, 2000.

[3] M. Chen, A.P. Mathur, V. Rego, Effect of testing techniqueson software reliability estimates obtained using a time-domain model,IEEE Transactions on Reliability, Vol. 44, No. 1, pp. 97–103, 1995.

[4] T.Y. Chen, Y.T. Yu, On the relationship between partition and ran-dom testing, IEEE Transactions on Software Engineering, Vol. 20, No.12, pp. 977–980, 1994.

[5] T.Y. Chen, Y.T. Yu, On the expected number of failures detected bysubdomain testing and random testing, IEEE Transactions on SoftwareEngineering, Vol. 22, No. 2, pp. 109–119, 1996.

[6] R.H. Cobb, H.D. Mills, Engineering software under statistical qu-ality control, IEEE Software, Vol. 16, pp. 44–54, 1990.

373

Page 374: Kryptologia i Cyberbezpieczenstwo nr 6

K. Worwa

[7] A. Csenki, Bayes predictive analysis of a fundamental software relia-bility model, IEEE Transactions on Software Engineering, Vol. 39, No.2, pp. 177–183, 1990.

[8] O. Gaudoin, Software reliability models with two debugging rates,International Journal of Reliability, Vol. 6, No. 1, pp. 31–42, 1999.

[9] Y. Hayakawa, G. Telfar, Mixed poisson-type processes with appli-cation in software reliability, Mathematical and Computer Modelling,Vol. 31, pp. 151–156, 2000.

[10] Z. Jelinski, P.B. Moranda, Software Reliability Research, Statisti-cal Computer Performance Evaluation, Academic Press, New York,1972.

[11] D.R. Jeske, H. Pham, On the maximum likelihood estimates for theGoel-Okumoto software reliability model, The American Statistician,Vol. 3, pp. 219–222, 2001.

[12] E. Kit, Software testing in the real world, ACM Press Books, 1995.[13] J.D. Musa, A. Iannino, K. Okumoto, Software reliability. Measu-rement, prediction, application, McGraw-Hill, Inc., 1987.

[14] K. Sawada, H. Sandoh, Continuous model for software reliability de-monstration testing considering damage size of software failures, Ma-thematical and Computer Modelling, Vol. 31, pp. 321–326, 2000.

[15] G.J. Schick, R.W. Wolverton, An Analysis of Competing So-ftware Reliability Models, IEEE Transactions on Software Engineering,SE-4, No. 2, pp. 104–120, 1978.

[16] M.L. Shooman, Probabilistic Models for Software Reliability Predic-tion, Statistical Computer Performance Evaluation. Academic Press,New York, 1972.

[17] T.A. Thayer, M. Lipov, E.C. Nelson, Software reliability,North-Holland Publishing Company, Amsterdam, 1978.

[18] K. Tokuno, S. Yamada, An imperfect debugging model with twotypes of hazard rates for software reliability measurement and asses-sment, Mathematical and Computer Modelling, Vol. 31, pp. 343–352,2000.

[19] M. Trachtenberg, A general theory of software reliability modeling,IEEE Transactions on Software Engineering, Vol. 39, No. 1, pp. 92–96,1990.

[20] J.A. Whittaker, K. Rekab, M.G. Thomason, A Markov chainmodel for predicting the reliability of multi-build software, Informationand Software Technology, Vol. 42, pp. 889–894, 2000.

[21] K. Worwa, Estimation of the program testing strategy. Part 1 – Thesame errors can be encountered, Cybernetics Research and Develop-ment, No. 3-4, pp. 155–173, 1995.

374

Page 375: Kryptologia i Cyberbezpieczenstwo nr 6

Modelling the software testing process

[22] K. Worwa, Estimation of the program testing strategy. Part 2 – Thesame errors can not be encountered, Cybernetics Research and Deve-lopment, No. 3-4, pp. 175–188, 1995.

[23] K. Worwa, Modelling and estimation of software reliability growthduring the testing process, Publishers of Warsaw Technical University,Warsaw (in Polish), 2000.

[24] S. Yamada, T. Fujiwara, Testing-domain dependent software relia-bility growth models and their comparisons of goodness-of-fit, Interna-tional Journal of Reliability, No. 3, pp. 205–218, 2001.

[25] M.C. Yang, A. Chao, Reliability-estimation & stopping-rules forsoftware testing, based on repeated appearances of bugs. IEEE Trans-actions on Reliability, Vol. 44, No. 2, pp. 315–321, 1995.

[26] X. Zhang, H. Pham, Comparisons of nonhomogeneous Poisson pro-cess software reliability models and its applications, International Jour-nal of Systems Science, No. 9, 2000, pp. 1115–1123.

MODELOWANIE PROCESU TESTOWANIAOPROGRAMOWANIA

Streszczenie. Przedmiotem zawartych w artykule rozważań jest modelowanie procesutestowania programu, ze szczególnym uwzględnieniem modelowania wzrostu niezawod-ności programu w procesie jego testowania. W rozpatrywanym modelu testowany pro-gram charakteryzowany jest za pomocą tzw. macierzy charakterystycznej programu. Nabazie skonstruowanego modelu wyprowadzona została zależność na wartość oczekiwanąliczby błędów, wykrycie których spodziewane jest w wyniku realizacji procesu testowa-nia, realizowanego w oparciu o przyjętą strategię testowania. Otrzymana zależność możebyć wykorzystana w praktyce, jeżeli macierz charakterystyczna programu jest znana. Dlaprzypadku, gdy macierz ta nie jest znana skonstruowane zostało w artykule obustronneoszacowanie tej wartości oczekiwanej.

Słowa kluczowe: testowanie oprogramowania, niezawodność oprogramowania, modeleniezawodności oprogramowania.

Page 376: Kryptologia i Cyberbezpieczenstwo nr 6
Page 377: Kryptologia i Cyberbezpieczenstwo nr 6

MODEL LABORATORYJNY DO BADAŃFEDERACYJNYCH SYSTEMÓW

CYBERBEZPIECZEŃSTWA

Adam E. Patkowski

Instytut Teleinformatyki i Automatyki Wydział Cybernetyki [email protected]

Streszczenie.W opracowaniu naszkicowano możliwości budowy najprostszego systemuobrony federacyjnej przed atakami DDoS. Przedstawiono również wybrane rozwiązaniatechniczne dla takiego systemu i zaprezentowano tani model laboratoryjny do badań jegowłaściwości oraz zachowania się. Adekwatność modelu osiągana jest dzięki wykorzysty-waniu w badaniach, jako tła, ruchu sieciowego zarejestrowanego w reprezentatywnychlub docelowych sieciach. Wskazano możliwości badań z wykorzystaniem tego modelui uzyskania odpowiedzi na pytania potencjalnych uczestników federacji.

Słowa kluczowe: bezpieczeństwo, cyberatak, DoS, DDoS, domena, federacja, adapta-cja, FoS, IDS, model.

1. Wstęp

W WAT od dawna prowadzone są prace nad sposobami obronyprzed cyberatakami wymierzonymi w systemy teleinformatyczne woj-skowe1, pewne systemy przemysłowe2, czy ogólnie3 państwowe systemytzw. infrastruktury krytycznej. Poszukiwano między innymi możliwości od-pierania ataków prowadzących do odmowy usługi (Denial od Service – DoSlub rozproszonych ataków Distribted DoS – DDoS). W polu szczególnejuwagi znalazły się między innymi sposoby tworzenia dużych mechanizmówobronnych powstających z połączenia i współpracy systemów należącychdo różnych podmiotów. Intencją takiego połączenia – federacji systemówFoS (Federation of Systems) było osiągnięcie efektu synergii w cyberobro-nie.

Istotną cechą łączącą członków FoS jest to, że są oni zwykle na siebieskazani – współpraca wynika z realizowanego zadania (w przypadku woj-

1 Program Badawczy Zamawiany Nr PBZ–MNiSW–DBO–02/I/2007 Zaawansowanemetody i techniki tworzenia świadomości sytuacyjnej w działaniach sieciocentrycz-nych.

2 Projekt Rozwojowy DOBR/0074/R/ID 1/2012/03. System zapewnienia bezpiecz-nej komunikacji IP w obszarze zarządzania siecią elektroenergetyczną. BIPSE.

3 Projekt Rozwojowy Nr 0 R00 0125 11. System ochrony sieci teleinformatycznychprzed działaniami nieuprawnionymi. SOPAS.

Page 378: Kryptologia i Cyberbezpieczenstwo nr 6

A. E. Patkowski

skowych systemów sprzęganych na potrzeby misji) lub po prostu z bezpo-średniego sąsiedztwa systemów w topologii sieci. W przypadku systemówzabezpieczeń wejście do federacji wymaga zwykle rezygnacji w pewnymstopniu z własnej suwerenności w dziedzinie bezpieczeństwa na rzecz ogól-nego bezpieczeństwa federacji.

Wśród problemów związanych z implementacją obrony federacyjnejw polskiej cyberprzestrzeni, za główne trzeba uznać brak środków na pod-jęcie centralnie zarządzanego przedsięwzięcia budowania takiego systemui brak regulacji prawnych, wymuszających włączenie się do niego niezależ-nych podmiotów gospodarczych. Nie ma zatem warunków, które pozwoli-łyby utworzyć dużą federację obronną np. dla infrastruktury krytycznej.Potrzebne były rozwiązania prowadzące do osiągnięcia skutecznej wspól-nej obrony, które z jednej strony byłyby tanie, a z drugiej nie wymagałybyznacznych zmian istniejących poszczególnych systemów obrony i zapewnia-łyby, że ich wprowadzenie nie obniży jakości usług sieciowych świadczonychprzez każdy ze sfederowanych systemów. Inaczej mówiąc „przede wszyst-kim nie szkodzić”. Jedno z możliwych rozwiązań, sformułowanych w trak-cie prowadzonych prac zdaje się być atrakcyjną pod względem biznesowymofertą dla partnerów gospodarczych.

O ile idea federacji systemów jest dość prosta, to odpowiedzi na pyta-nia o skuteczność obrony oraz o zagrożenia negatywnym oddziaływaniemna procesy biznesowe właścicieli systemów nie są łatwe. W szczególnościnie poddają się metodom analitycznym. Podjęto więc próby znalezienia me-tody badania skuteczności i wpływu wprowadzenia sfederalizowanej obronyna konkretne systemy.

Główne problemy organizacyjne tworzenia federacji to uzgodnieniamiędzy uczestnikami dotyczące wzajemnych zobowiązań i ochrony inte-resów oraz czas zobowiązań. W [7] wskazano, że możliwe jest zabudowa-nie federacji do której łatwo przystąpić i ją opuścić, co więcej – możliwyjest stopniowy rozwój takiej organizacji. W niniejszym opracowaniu przed-stawiono niektóre rozwiązania prostego systemu obrony federacyjnej po-zbawionego centralnego zarządzania. W najprostszym przypadku taka fe-deracja może powstać tylko dzięki dwustronnym umowom pomiędzy jejniektórymi członkami. Istotą jest sprowadzenie wzajemnych świadczeń fe-deracyjnych do obsługi prostych „zleceń blokowania”. Taki system możestać się podstawą obrony przed atakami DDoS w skali kraju.

Przedstawiono również możliwości i narzędzie – model laboratoryjny– do badania zachowania się takich systemów ochrony w warunkach zdal-nych ataków. Badania za pomocą nagranego ruchu sieciowego w wybranychsystemach można prowadzić bez ingerencji w systemy „produkcyjne” z za-chowaniem należytej adekwatności.

378

Page 379: Kryptologia i Cyberbezpieczenstwo nr 6

Model laboratoryjny do badań federacyjnych systemów cyberbezpieczeństwa

2. Domeny i odpieranie ataku DDoS

Obecnie sieci telekomunikacyjne stanowiące infrastrukturę Internetu,stanowią połączenie wielu podsieci, których dysponentami (właścicielamii zarządcami) są różne podmioty. Ogólnie za zarządcę podsieci uznaje siępodmiot, który legalnie ma prawo podejmować suwerenne decyzje wpły-wające na ruch sieciowy. Obszary podlegające administracji pojedynczegozarządcy/dysponenta dla których stosuje się wspólną politykę bezpieczeń-stwa nazwano domenami.

Zarządca domeny zwykle realizuje własną koncepcję utrzymania bez-pieczeństwa, dając lub zabraniając dostępu do zasobów informacyjnychoraz zezwalając lub blokując przepływ różnych informacji. Spisany zbiórogólnych zasad służących z intencji podniesieniu bezpieczeństwa nazywa siępolityką bezpieczeństwa. Szczegółowe zbiory zasad sformułowane w sfor-malizowanej postaci dla poszczególnych urządzeń nazywane są „policy”.W przypadku zapór sieciowych mówi się o „konfiguracjach” zawierają-cych „reguły”. Zbiory zasad (czy reguł) tworzone są lokalnie w celu za-pewnienia bezpieczeństwa interesom podmiotu właścicielskiego. Podmiotyadministrujące domenami zwykle niechętnie akceptują zasady lub reguły,których celem jest bezpieczeństwo obcych zasobów, obawiając się skutkówubocznych – niekorzystnego wpływu na własne bezpieczeństwo. Wiele pod-miotów gospodarczych jest konkurentami na rynku i ma raczej motywacjędo walki niż współpracy.

Zasoby informacyjne instytucji państwowych oraz ważnych dla ży-cia publicznego organizacji często stają się celem ataków podejmowanychz różnych pobudek: politycznych, terrorystycznych, a także czysto komer-cyjnych. Szczególnie trudny do ochrony jest atrybut dostępności zasobówinformacyjnych. Przyczyną są szerokie możliwości i łatwość wykonywaniaataków przeciążeniowych, należących do klasy tak zwanych ataków pro-wadzących do odmowy usługi (tzw. DoS: Denial of Service). Najbardziejrozpowszechnionymi sposobami realizacji ataków DoS są ataki rozproszoneDistributed Denial of Service (DDoS: [8], [4], [3], [10], liczne opisy możnaznaleźć w [12]).

Przez atak informatyczny rozumie się celowe oddziaływanie napast-nika na zasoby informacyjne ofiary prowadzące do negatywnych skutkówdla interesów ofiary. Atakiem zdalnym, albo cyberatakiem nazywa się atakinformatyczny, w którym medium takiego oddziaływania jest ruch sieciowy:dane przekazywane między urządzeniami teleinformatycznymi. Na Rys. 1przedstawiono ilustrację przepływu ruchu sieciowego w trakcie ataków (np.rozproszonych ataków przeciążeniowych DDoS) prowadzonych ze stacji ro-boczych rozlokowanych w różnych domenach w Internecie (tzw. botnet)

379

Page 380: Kryptologia i Cyberbezpieczenstwo nr 6

A. E. Patkowski

na komputer oznaczony Serwer C. W sieci występują również klienci usługświadczonych przez Serwer C. Można też wskazać domeny o różnych spe-cjalnościach, np. domeny szkieletowe (Tier-1) lub hurtowych/regionalnychi detalicznych/lokalnych dostawców Internetu (Tier-2 i 3).

Rysunek 1. Polskie i zagraniczne źródła wrogiego ruchu w ataku DDoS (na Serwer C)w domenach w Internecie

Tradycyjnie te hierarchiczne połączenia wyobrażane są (jak na Rys. 1)jako rodzaj lasu, jednak w rzeczywistości są dużo bardziej skompliko-wane, co wynika z tzw. połączeń tranzytowych między operatorami, po-łączeń peeringowych, oraz grupowania możliwości połączeń peeringowychw tzw. międzyoperatorskich punktach wymiany ruchu (IX). W przypadkuataków zdalnych interesująca jest znajomość tras, którymi wrogi ruchdociera od napastnika do celu ataku. Na szczęście efektywny, aktualnystan połączeń, czyli trasy między poszczególnymi lokalizacjami, możnarozpoznać przeprowadzając badanie, np. za pomocą komendy tracero-ute.

Traceroute odnotowuje jednak tylko urządzenia zmniejszające wartośćpola „hops” w pakietach. Spośród przedstawionych na Rys. 2, w Polsceumiejscowione są routery leżące na „polskiej” trasie oraz tylko pierwszychsześć (od źródła „localhost” licząc) routerów na każdej z pozostałych tras.Niestety ten sposób (traceroute) identyfikowania połączeń i tras nie po-zwala na rozpoznanie najbardziej interesującej cechy – rozmieszczenia fil-trów sieciowych należących do poszczególnych domen. Przez filtry sieciowe

380

Page 381: Kryptologia i Cyberbezpieczenstwo nr 6

Model laboratoryjny do badań federacyjnych systemów cyberbezpieczeństwa

rozumie się wszelkie urządzenia przekazujące ruch sieciowy zdolne do selek-cji tego ruchu. Interesujące są urządzenia filtrujące w warstwie trzeciej (L3modelu ISO/OSI), w tym także listy ACL routerów i routery realizującetzw. „blackholing”.

Rysunek 2. Trasy z localhost” do wybranych lokalizacji wyznaczone za pomocątraceroute: Hongkong, New world telecom (http://www.nwtgigalink.com/lg.html)203.98.129.6; USA, Level 3 Communications (http://vger.kernel.org/traceroute.html)209.132.180.67; Anglia, Cerberus Networks Ltd. (http://www.erik.co.uk/lg/)46.37.33.143; Rosja, TeliaSonera (http://lg.telia.ru/) 81.228.10.74; RPA,TruTeq Wireless (http://services.truteq.com/) 160.124.109.65; Polska, Home.pl

(https://home.pl/test) 212.85.96.1

Na Rys. 3 przedstawiono model połączeń międzydomenowych w sieciInternet, zredukowany do elementów interesujących z punktu widzeniaobrony federacyjnej pewnego serwera w sieci. Zgodnie z ideą opisaną w [6]wynikającą z założeń obrony przed atakami DDoS, wykrywać ataki trzebajak najbliżej celu, zaś odpierać je – filtrując ruch – należy jak najdalej odcelu. Ten efekt odległego filtrowania, o nazwie „pushback”4 jest szczególnieważny w przypadku ataków przeciążeniowych na łącza (nastawionych natzw. wysycanie pasma). Podkreślić należy, że w dobie powszechnego wy-korzystania połączeń SSL (czy TLS) symptomy większości ataków możnarozpoznać dopiero w pobliżu celu, gdy pakiety opuszczą już tunel krypto-graficzny.

Idea odpierania ataków DDoS dla federacji narodowych zmierza po-nadto do tego, by blokowanie ruchu sieciowego adresowanego do atakowa-nego serwera odbywało się na granicach obszaru wewnątrz którego znaj-

4 W [10] zaproponowano tę nazwę w 2011 r. prezentując koncepcję podobną dorozwijanej w pracach WAT od 2009 r. ([2], potem [5] itp.).

381

Page 382: Kryptologia i Cyberbezpieczenstwo nr 6

A. E. Patkowski

duje się większość jego klientów. Większość napastników powinna znajdo-wać poza zaporami. Zakłada się wówczas, że federacja jest podobszaremsieci, w którym znajduje się większość klientów chronionych usług. W ra-zie ataku DDoS na cyberprzestrzeń kraju zapewne większość atakującychkomputerów będzie poza granicami geograficznymi i poza tą cyberprze-strzenią rozumianą jako domeny zarządzane przez podmioty prowadzącedziałalność gospodarczą w Polsce.

Dla skutecznego odpierania ataku DDoS nie trzeba blokować całegowrogiego ruchu – wystarczy wyciąć go tylko na tyle, aby zniknęło zjawi-sko przeciążania, tzn. by miara dostępności atakowanych usług osiągnęłaminimalną akceptowalną wartość.

W systemie obrony rozpoznawanie ataku odbywa się w pobliżu celuataku, z wykorzystaniem mechanizmów wykrywania ataków (IDS) pracują-cych m.in. w warstwie aplikacji serwera. W niniejszym opracowaniu pomijasię rozwiązania tych mechanizmów, przyjmując tylko, że na ich wyjściu ge-nerowane są reguły dynamiczne z warunkami określanymi dla protokołóww warstwie L3. Te dynamiczne reguły wysyłane są do odległych zapór, naktórych zachodzić będzie blokowanie ruchu. Np. wykrycie ataku z jakiegośadresu IP może spowodować wygenerowanie reguły nakazującej blokowaćpakiety nadchodzące z tego adresu.

Przez regułę rozumie się tu pojedynczą implikację „warunek → reak-cja” stanowiącą element tzw. zbioru konfiguracji zapory sieciowej. Konfigu-racja jest uporządkowanym zbiorem zadanych reguł. Filtrowanie jednostekruchu sieciowego (w warstwie L3 – pakietów) polega na sprawdzaniu dlakażdej nadchodzącej jednostki kolejnych reguł z konfiguracji. Jeśli któryśz nich jest spełniony, to zostaje zastosowana „reakcja” i sprawdzanie koń-czy się. Reakcja w dynamicznych regułach generowanych przez IDS to za-wsze „drop”, czyli zaniechanie przekazania pakietu na interfejs wyjściowyzapory (zablokowanie). Zaznaczyć należy, że to krótkie przypomnienie jestznacznym uproszczeniem i pomija np. oddzielne konfiguracje stosowane dlakażdego z interfejsów (zob. [15]).

Pomimo, że środki i sposoby realizacji zaznaczonych na Rys. 3 urzą-dzeń realizujących funkcje generowania reguł nie są tu rozważane, możnazasygnalizować, że w ostatecznym przypadku, gdy nie udaje się zidentyfi-kować ruchu stanowiącego medium ataku a stwierdzono nagłe załamaniesię zdolności świadczenia usługi przez serwer można:

— wygenerować reguły blokujące ruch z adresów IP wszystkich nadawcówpakietów, które dotarły do serwera w ostatnim czasie przed załama-niem; zabieg ten nie będzie skuteczny w przypadku ataków z fałszo-waniem adresu nadawcy (spoofing, np. w ataku SYNflood) lub atakówruchem odbitym (reflected attacks);

382

Page 383: Kryptologia i Cyberbezpieczenstwo nr 6

Model laboratoryjny do badań federacyjnych systemów cyberbezpieczeństwa

Rysunek 3. Model poglądowy tras wrogiego ruchu do celu ataku przez zaporyposzczególnych domen

— albo wysłać regułę blokującą cały ruch do atakowanej usługi na ser-werze niezależnie od adresu nadawcy.

W tym ostatnim przypadku sukces zostanie osiągnięty, jeżeli napastnicysą zlokalizowani głównie poza granicą federacji – blokada nie będzie prze-szkadzać klientom wewnątrz FoS. Ceną odparcia ataku będzie odcięcie odusług klientów zlokalizowanych w topologii sieci poza federacją.

Reguły służące do odpierania ataku DDoS przestają być potrzebne pozakończeniu tego ataku. Ogólnie: reguły dynamiczne powinny być szybkoaplikowalne i szybko usuwalne. Pewne komplikacje pojawiają się w przy-padku ataków o zmiennym natężeniu wrogiego ruchu.

3. Samoadaptująca się konfiguracja zapory

Dla osiągnięcia efektu odsuwania (pushback) filtrowania w domenachskuteczne może okazać się zastosowanie mechanizmu samoadaptującego.Może on polegać na wyłączaniu z konfiguracji zapory tych reguł dynamicz-

383

Page 384: Kryptologia i Cyberbezpieczenstwo nr 6

A. E. Patkowski

nych, których częstość stosowania spadnie poniżej pewnej zadanej wartościprogowej. W najprostszej realizacji – gdy w pewnym ustalonym czasie re-guła nie zostanie zastosowana ani razu. Przez „zastosowanie reguły” rozu-mie się wykrycie w ruchu sieciowym informacji spełniającej warunek reguły.To „zastosowanie” każdej reguły może być zliczane a wartość licznika możestanowić podstawę do automatycznego usuwania reguły z zapory. W efek-cie reguła znajduje się w konfiguracji zapory tylko tak długo, jak długo najej podstawie odrzucane są pakiety. Inaczej mówiąc – reguła sama znikaz konfiguracji, gdy przestaje być używana. Ten sposób działania ma kilkaistotnych zalet:

1. Nie wymaga centralnego sterowania.2. Zapewnia samoistne zniknięcie reguł, które nie są już potrzebne, bez

potrzeby ich odwoływania.3. Pozwala wykorzystać już istniejące zapory.4. Pozwala na zachowanie wszystkich dotychczasowych lokalnych reguł

(zasad bezpieczeństwa) w tych zaporach i autonomii w decyzjach o za-kresie reguł akceptowanych z zewnątrz. Lokalne reguły zapór nie koli-dują z regułami dynamicznymi.

5. Daje możliwość stopniowego dołączania (i odłączania) kolejnych pod-sieci do systemu.

6. Nie wymaga dodatkowych, poza licznikami, mechanizmów oceny efek-tywności poszczególnych reguł.

Dla sprawdzenia rozwiązania zapory z samoistnym wyłączaniem nieuży-wanych reguł wybrano system Vyatta ([18]) w wersjach 6.2 i 6.5 (por.[13]). Do tego badania okazał się on całkowicie wystarczający, pomimo za-trzymania jego rozwoju i zamknięciu kodu po przejęciu projektu Vyattaprzez firmę Brocade w listopadzie 2012 roku ([20], [11]). W dalszych pra-cach zapewne bazowym systemem będzie VyOS ([19]) – bezpłatne otwar-toźródłowe oprogramowanie z funkcją routera, zbudowane na podstawieDebian Linux. Na Rys. 4 zaprezentowano ogólne algorytmy działań reali-zowanych przez system zapory po nadejściu nowej reguły (A: zmiana konfi-guracji), po nadejściu kolejnego pakietu (B: sprawdzanie reguł) oraz wyko-nywanego co pewien czas sprawdzania, czy reguły dynamiczne są używane(C: usuwanie nieużywanych reguł).

W przypadku testowanego systemu Vyatta naszkicowany na Rys. 4algorytm B realizowany jest przez standardowe mechanizmy zliczania speł-nień warunku każdej z reguł. Nie wymaga dodatkowego oprogramowania.

384

Page 385: Kryptologia i Cyberbezpieczenstwo nr 6

Model laboratoryjny do badań federacyjnych systemów cyberbezpieczeństwa

Rysunek 4. Przykład związanych z dynamicznymi regułami algorytmów zapory: A –akceptacja nowych reguł; B – sprawdzanie pakietu; C – okresowe badanie aktualności

reguł

Wartości takich dopasowań można poznać, wpisując komendę z konsoliVyatta:

show firewall name FW0 statistics

(gdzie FW0 jest identyfikatorem konfiguracji). Odpowiedź składa się z ko-lejnych wierszy, każdy dla jednej reguły, gdzie pierwsza liczba w wierszujest numerem reguły, zaś druga stanowi wartość licznika zastosowań tej re-guły. Podobne mechanizmy nie są jakąś szczególną właściwością Vyatta –są udostępniane przez większość urządzeń z listami ACL, ponieważ są wbu-dowane w iptables. Wywołanie iptables z opcją „-nvL” udostępnia licznikitrafień dla każdej z reguł.

Algorytm A wymaga oprogramowania lokalnego w tych implementa-cjach, w których wymagane jest badanie akceptowalności, w przeciwnym(także i w testowanym) przypadku za jego realizację wystarczą komendydopisania nowej reguły wydana w połączeniu SSH. Przez „dołączenie dokonfiguracji” należy w takim wypadku rozumieć wprowadzenie reguły dozbioru konfiguracyjnego oraz reorganizację porządku reguł w razie po-trzeby. W przypadku Vyatta algorytm A powinien zarządzać również nada-waniem numerów regułom; dla reguł dynamicznych zastosowano numery od

385

Page 386: Kryptologia i Cyberbezpieczenstwo nr 6

A. E. Patkowski

1 do 999, ostatnią regułą jest automatyczna reguła 10000 (z reakcją „dropall); na czas testów wprowadzono regułę o numerze 9999 („accept all”).

Algorytm C w testowanych systemach Vyatta wymaga na wstępie włą-czenia nieskończonej pętli sprawdzania liczników. Ponieważ nie ma specjal-nych wymagań czasowych tę operację, nie ma potrzeby budowania specjal-nego oprogramowania – wystarczą proste rozwiązania skryptowe. Do testówużyto trzech skryptów:

kwant.sh#!/bin/vbash#twhile [ 1 ]; docat kwant.cmd | ssh -t -t vyatta@localhostsleep 15#sleep 360sdone

kwant.cmdshow firewall name FW0 statistics | ./sc.shclear firewall name FW0 countersexit

sc.sh#!/bin/vbash#wywolanie: show firewall name FW0 statistics |

./ten skrypt.shread x y z/opt/vyatta/sbin/vyatta-cfg-cmd-wrapper beginwhile [ "$x" != "9999" -a "$x" != "10000" ]do# echo "regula $x pakietow $y"

if [ $x -eq $x 2>/dev/null ] #czy liczba (ign.komunikat err)

thenif [ ! -z $x ] #czy nie pusty ciagthenif [ $y == "0" ] #czy zerowy licznikthen

386

Page 387: Kryptologia i Cyberbezpieczenstwo nr 6

Model laboratoryjny do badań federacyjnych systemów cyberbezpieczeństwa

echo "regula $x pakietow $y" #log: usuniecie \reguly

/opt/vyatta/sbin/vyatta-cfg-cmd-wrapper delete \firewall name FW0 rule $xfififiread x y zdone/opt/vyatta/sbin/vyatta-cfg-cmd-wrapper commit/opt/vyatta/sbin/vyatta-cfg-cmd-wrapper end

Należy podkreślić, że przedstawiony sposób realizacji algorytmu C,w postaci skryptów symulujących ręczne wydawanie komend przez połą-czenie SSH, jest co najmniej mało elegancki, ale za to łatwy w realizacjii dobrze ilustrujący ideę działania. Najmniej rozrzutnym funkcjonalnie roz-wiązaniem, nie angażującym warstw pośrednich oprogramowania, wydajesię wykonanie oprogramowania bezpośrednio współpracującego z aplikacjąiptables lub wręcz z frameworkiem netfilter ([15]).

W przedstawionym modelu nie uwzględniono środków zapewniającychochronę interesów właściciela zapory przed negatywnymi skutkami przyję-cia „złych” reguł (w algorytmie A). Nie jest to skomplikowany problem –reguły są proste i poddające się sprawdzaniu. Każda nadesłana reguła możebyć poddana weryfikacji. Zapewne wystarczy sprawdzenie, czy z pewnościąoddziaływanie reguły jest ograniczone do wpływania tylko na ruch, któregojedną ze stron (identyfikowaną przez adres źródłowy lub docelowy) jest zle-ceniodawca reguły. Nie należy oczywiście zapominać o sprawdzeniach syn-taktycznych reguł, sprawdzeniach, czy identyczna reguła już nie istniejelub czy liczba reguł dynamicznych nie osiągnęła dopuszczalnej ze względuna wydajność wartości. Zmiany wartości interwału czasowego (w kwant.sh;w przykładzie ustawiony na 15 sekund) dają możliwość zmian minimalnejczęstości zastosowań, przy której reguły są usuwane, a pośrednio ograni-czania liczby obecnych w konfiguracji reguł dynamicznych.

Sprawdzanie funkcjonalne opisanych tu mechanizmów zrealizowanow przygotowanym modelu laboratoryjnym prostych systemów zapór FoS.

4. Model laboratoryjny systemu zapór FoS

Na potrzeby badania rozwiązań rozwojowych systemów FoS dla kon-kretnych środowisk zbudowano zestaw testowy wykorzystując maszyny wir-tualne w systemie VMWare Workstation. Na Rys. 5 przedstawiono model

387

Page 388: Kryptologia i Cyberbezpieczenstwo nr 6

A. E. Patkowski

laboratoryjny systemu FoS, w którym można sprawdzać zachowanie od jed-nej do trzech zapór takiego systemu, a także budowanych urządzeń IDS iIIdS. Na Rys. 5 badane zapory to systemy Vyatta ([18]) – jeden pracującyw trybie „bridge”, drugi w trybie „firewall” z dodatkowymi usługami. Poodłączeniu Vyatta firewall i przełącznika Net3 można, wykorzystując po-łączenia zaznaczone linią przerywaną, badać pojedynczą zaporę (Vyattabridge). Wszystkie trzy zapory wykorzystano dotąd tylko przy sprawdza-niu, czy zachodzi efekt pushback, przy wprowadzeniu do wszystkich zapórreguł blokowania ruchu wysyłanego z komputerów oznaczonych na Rys. 5jako „Windows klient” do „Windows serwer”.

Nie badano jeszcze żadnych rozwiązań IIdS (Intruder IdentificationSystem – systemu identyfikującego ataki we współpracy z serwerem). JakoIDS (Intrusion Detection System) rozważano zaadaptowany system Snort[16].

Rysunek 5. Schemat modelu laboratoryjnego do testów połączeń szeregowych domen

Bardzo ważną rolę w docelowych badaniach efektywności FoS pełnigenerator ruchu pokazany na Rys. 5. O ile ruch testowy, symulujący atakigenerowany będzie z któregoś z komputerów oznaczonych jako „Windowsklient” (można na nich w razie potrzeby używać zarówno Windows, jaki Linuxa), o tyle ruch sieciowy stanowiący tło ataku powinien odpowiadaćnaturalnemu, reprezentatywnemu ruchowi w docelowym środowisku. Mato szczególne znaczenie dla badań nad mechanizmami wykrywania atakówi generowania reguł (IDS i IIdS na rysunku). Ta możliwość jest równieżważna w przypadku zapór działających z analizą stanu (stateful).

388

Page 389: Kryptologia i Cyberbezpieczenstwo nr 6

Model laboratoryjny do badań federacyjnych systemów cyberbezpieczeństwa

Dla zapewnienia adekwatności ruchu generowanego do ruchu oczeki-wanego w warunkach rzeczywistych, zaproponowano wykorzystanie zapisurzeczywistego ruchu zarejestrowanego w odpowiednich punktach obserwa-cji w docelowym (lub reprezentatywnym wzorcowym) systemie. Sposób po-zyskiwania i odtwarzania zapisu ruchu jest technicznie nieskomplikowanyi został przedstawiony na Rys. 6 i Rys. 7 odpowiednio.

Rysunek 6. Nagrywanie ruchu sieciowego z wykorzystaniem A – huba, B – TAPa, C –routera

Urządzenie rejestrujące powinno być przyłączone do „zewnętrznego”,a zatem bardziej odległego od obiektów chronionych, interfejsu zapory sie-ciowej. Preferowane jest użycie TAPa – neutralnego urządzenia zdejmują-cego cały ruch sieciowy do rejestracji. Możliwe jest także wykorzystaniewłaściwości niektórych przełączników (switchów) pozwalających na prze-kierowanie kopii całego obsługiwanego ruchu sieciowego na tzw. port mo-nitorujący. Na Rys. 6 nie uwzględniono metody zapisu ruchu z portu mo-nitorującego – ten sposób może prowadzić utraty pakietów w momentachszczytowych natężeń ruchu.

Dla ilustracji na Rys. 8 przedstawiono pulpit komputera (z systememBackTrack5) pełniącego rolę generatora ruchu. Jego dwa interfejsy przeka-zują odtwarzany ruch sieciowy do interfejsów badanego obiektu. Wykorzy-stano uniwersalne narzędzia uniksowej biblioteki Pcap [17]. Odtwarzany za

5 Od 2014 r. Kali Linux.

389

Page 390: Kryptologia i Cyberbezpieczenstwo nr 6

A. E. Patkowski

Rysunek 7. Badania z użyciem zapisu ruchu sieciowego: A – jako ruchu testowego; B –jako tła dla ruchu testowego

pomocą programu TCPreplay ruch został wcześniej zapisany za pomocąTCPdump w sieci dydaktycznej jednej z wyższych uczelni warszawskich6.Zapis rozdzielono na zapisy poszczególnych interfejsów za pomocą pro-gramu TCPprep zapewniając, że pakiety zarejestrowane z linii Tx i Rxzostaną podane na właściwe interfejsy badanego obiektu przybywając dońz odpowiednich kierunków (zob. [17] i [21]).

Na pulpicie pokazanym na Rys. 8 widoczne są dwa okna – dwóch pra-cujących instancji programu Etherape ([14]). Każda z nich zobrazowujepakiety widoczne na jednym z interfejsów, zarówno wchodzące, jak i wy-chodzące. Program Etherape zobrazowuje każdy docierający do interfejsupakiet w postaci odcinka łączącego dwa punkty na okręgu, przy każdymz punktów zapisywany jest adres (celu albo źródła); barwa odcinka i napi-sów zależy od protokołu (legenda znajduje się na lewej krawędzi okna) zaśgrubość odcinka zależy od objętości przesyłanych danych.

Włączenie rejestracji za pomocą TCPdump w badanym obiekcie(Rys. 7) pozwala na sprawdzenie poprawności odtwarzania – np. za po-mocą liczby nadchodzących pakietów. Badanie wykazuje oczywiście zu-pełną zgodność z liczbą pakietów w odtwarzanym pliku zapisu ruchu.

6 Wyższa Szkoła Informatyki Stosowanej i Zarządzania.

390

Page 391: Kryptologia i Cyberbezpieczenstwo nr 6

Model laboratoryjny do badań federacyjnych systemów cyberbezpieczeństwa

Rysunek 8. Zobrazowanie odtwarzanego zapisu ruchu sieciowego

5. Użyteczność modelu

Przedstawiony model laboratoryjny pozwolił zweryfikować wnioskio skuteczności uzyskiwania efektu „pushback” i możliwości automatycz-nego, stopniowego, adaptującego się do siły i przenikalności ataku, odcina-nia stref sieci.

Model używany w badaniach jest adekwatny do środowisk sieciowychi panujących w nich warunków w miejscu i czasie rejestracji ruchu do ba-dań. Po zebraniu zapisów ruchu sieciowego na „ścieżkach podejścia” odnajdalszych osiągalnych w praktyce zapór do chronionego obiektu, możnadokonać rzetelnej oceny skutków budowania rozproszonego systemu cy-berobrony federacyjnej. Ocena ta pozwoli uzyskać odpowiedzi na pytaniainteresujące właściciela chronionych obiektów – czy wzięcie udziału w fe-deracji będzie opłacalne i w jakich sytuacjach (głównie dla jakich ataków)obrona FoS może zawieść.

W niniejszym opracowaniu tylko zaznaczono bardzo ważny elementzwalczania ataków, jakim jest IDS i/lub IIdS. To te mechanizmy służądo rozpoznawania ataków i generowania niskopoziomowych (w rozumieniumodelu ISO/OSI) dynamicznych reguł dla odległych zapór FoS. W modeluprzedstawionym na Rys. 5 można prowadzić badania zachowania się takich

391

Page 392: Kryptologia i Cyberbezpieczenstwo nr 6

A. E. Patkowski

urządzeń. Model pozwala na badania rozpoznawania różnych zdalnych ata-ków na tle rzeczywistego ruchu zarejestrowanego w różnych środowiskach.

Odpowiedzi na pytania interesujące właściciela ochranianych zasobówmogą być mało użyteczne na potrzeby rozwiania wątpliwości właścicielidomen i zapór pośrednich. Ponieważ będą to zwykle dostawcy Internetu(detaliczni lub hurtowi), dla nich najważniejsze będzie utrzymanie poziomuzapewnianych usług i jak najmniejsze odchylenia od rutyny. Inżynierowiezwykle jak ognia unikają zmiany w działających środowiskach, szczególnie,gdy ich wymagana dostępność musi przekraczać 99,5%. Zasadniczym pyta-niem właściciela odległej domeny jest pytanie, czy wprowadzenie „obcych”reguł w jego zaporach lub wręcz cudzych zapór nie spowoduje dostrzegal-nych zmian w działaniu okolicznych systemów. W szczególności dysponentazapory sieciowej interesuje, czy przyjęcie dynamicznych reguł do realizacjinie wpłynie negatywnie na inne rodzaje przekazywanego ruchu. Lub czytaka możliwość w ogóle występuje. W opisywanym modelu badanie neu-tralności wprowadzanych zmian jest możliwe – wymaga tylko posiadaniazapisu reprezentatywnego ruchu w punkcie instalacji zapory. Idea badaniajest stosunkowo prosta i polega na rejestrowaniu na wyjściu systemu zapór(np. w komputerze oznaczonym na Rys. 5 jako IDS) charakterystyk ilo-ściowych ruchu: zliczeniu pakietów poszczególnych typów docierających domiejsca pomiaru podczas odtwarzania zapisu. Porównywanie wartości ta-kiego wektora wyznaczonej dla przebiegu bez użycia dynamicznych reguł(wzorcowego) z wartością otrzymaną podczas przebiegu z badanymi re-gułami pozwala formułować wnioski dotyczące neutralności wprowadzaniatych reguł.

Można wyobrazić sobie również badanie neutralności zbliżone do idei„fuzzingu mutacyjnego” znanej z testów bezpieczeństwa oprogramowaniaczy testów penetracyjnych – polegające na powtarzaniu badania z licz-nymi, różnymi kombinacjami reguł dynamicznych, nawet pozbawionymisensownego celu. Jeśli podczas któregoś z takich badań wystąpi nietypowezachowanie, następuje analiza jego przyczyn.

Z punktu widzenia właściciela zapory groźbę stanowi także zwiększe-nie liczby reguł, co może prowadzić do przeciążenia zapory i co najmniejzwiększyć opóźnienia w ruchu sieciowym i ich fluktuację (tzw. jitter). Coprawda wykorzystywany w przedstawianym modelu laboratoryjnym pro-gram TCPreplay pozwala na odtwarzanie ruchu sieciowego z zachowaniemchronologii pakietów z dużą dokładnością, to jednak nieznany jest wpływi zakłócenia czasowe wynikające z pracy w środowisku maszyn wirtualnych.Ocena tego wpływu nie została dotąd wykonana.

392

Page 393: Kryptologia i Cyberbezpieczenstwo nr 6

Model laboratoryjny do badań federacyjnych systemów cyberbezpieczeństwa

6. Uwagi końcowe

Zbudowanie modelu zgodnie z Rys. 5 i wykonanie prób z generowaniemruchu testowego pozwoliło na praktyczne potwierdzenie efektu „pushback”w zaporach sieciowych współpracujących w ramach federacji domen. Po-twierdzono również inne przesłanki stanowiące podstawy rozwiązania pro-ponowanego w [6]. Powstały z wykorzystaniem środowiska maszyn wirtu-alnych model laboratoryjny stanowi tanie i łatwe w obsłudze narzędzie doróżnych badań, może zostać wykorzystany do:

— sprawdzenia skutków przyłączenia się do federacji dla kolejnychpodmiotów-dysponentów domen;

— badania zdalnych ataków i obrony przed nimi w warunkach rzeczywi-stego ruchu sieciowego;

— badania skuteczności rozwiązań służących do wykrywania ataków(IDS).

Problemem w prowadzeniu badań jest możliwość pozyskiwania i wykorzy-stania zapisów ruchu sieciowego. Właściciele sieci komputerowych bardzoniechętnie godzą się na rejestrację ruchu i udostępnianie zapisów obcympodmiotom nawet na potrzeby badań przez nich zleconych. A już w żad-nym wypadku nie pozwalają na zachowywanie tych zapisów, ani na użycieich w innych badaniach. Jest to wynikiem obawy o wrażliwe informacje,które być może znajdują się w zapisach i mogłyby być z nich wydobyte.Formalnie odmowy motywowane są obowiązującą „polityką bezpieczeństwainformacji”.

Wnioski z budowy modelu potwierdzają leżące w obszarze rozwiązańtechnicznych cechy federacji przedstawionej w [6], która:

1. Nie wymaga centralnego sterowania.2. Pozwala wykorzystać już istniejące urządzenia lub łatwo dodać proste

konstrukcje.3. Zapewnia automatyczne odsuwanie filtrowania tak daleko od celu

ataku, jak to możliwe.

Prostota tych rozwiązań pozwala spodziewać się cech tej propozycji istot-nych ze względów organizacyjnych:

4. Pozwala zarządcy każdej domeny i zapory na zachowanie lokalnychreguł (zasad bezpieczeństwa) w podsieciach i autonomii w decyzjacho zakresie reguł akceptowanych z zewnątrz.

5. Nie wymaga wielostronnych uzgodnień – między dysponentem domenyzawierającej potencjalny cel ataku, a dysponentem każdej z zapór sie-ciowych, która ma być używana w FoS powinna zostać nawiązana

393

Page 394: Kryptologia i Cyberbezpieczenstwo nr 6

A. E. Patkowski

umowa dotycząca zlecania reguł. Dysponent zapory udostępnia me-chanizm przyjmujący żądania przyjęcia reguł od dysponenta serwera(a właściwie z jego IDS lub IIdS) i wprowadza je do konfiguracji za-pory.

6. Daje możliwość stopniowego dołączania (i odłączania) kolejnych do-men i podsieci. Dołączenie kolejnej zapory lub jej wycofanie z użytkufederacji nie wpływa na innych uczestników federacji poza stronamizwiązanych z tą zaporą umów, nie wprowadza więc dodatkowych biu-rokratycznych lub prawnych komplikacji.

Podkreślić należy, że zbiór dwustronnych umów już prowadzi do powstaniafederacji systemów należących do stron tych umów. Nie zamyka to drogido wprowadzania innych mechanizmów ochronnych, wspólnego sterowania,centralnej dystrybucji najnowszych sygnatur ataków itd.

Minimalnym środkiem do uniknięcia sporów między stronami jestprzestrzeganie „zasady własnego ruchu” polegającej na tym, że reguły po-chodzące od podmiotu X mogą powodować blokowanie wyłącznie takiegoruchu, który jest generowany z pul adresów należących do X albo jestadresowany do adresów należących do pul adresów, których właścicielemjest X. To, przy odpornym na podszywanie i niezaprzeczalnym protokoleprzekazywania reguł, wyłącza odpowiedzialność pośrednika - dysponentazapory, gdyż blokowanie ruchu następuje przez realizację prawa jednej zestron, której to realizacji pośrednik jest tylko wykonawcą. Możliwe są inne,bardziej rozbudowane modele współpracy federacyjnej, w których dopusz-czalne jest generowanie reguł w imieniu i na potrzeby innych podmiotów– bez przestrzegania zasady własnego ruchu. W niniejszym opracowaniurozważano jednak tylko najprostszy model.

Konkluzją ogólniejszej natury jest spostrzeżenie, że popularne stwier-dzenie „W Internecie nie ma granic” jest fałszywe. Po prostu jeszcze niema jeszcze wspólnej „CyberStraży” Granicznej.

Literatura

[1] AC/322 – D(2007)0050 – AS1 Report of the Examination of the lessonslearned from the recent Cyber Attacks, 02 październik 2007.

[2] M. Amanowicz, A.E. Patkowski, Zaawansowane metody i tech-niki tworzenia świadomości sytuacyjnej w systemach sieciocentrycz-nych. Metody i techniki ochrony systemu przed działaniami nieupraw-nionymi (Cyber Defence), Opis zadania badawczego nr 12203. WIŁ2009.

394

Page 395: Kryptologia i Cyberbezpieczenstwo nr 6

Model laboratoryjny do badań federacyjnych systemów cyberbezpieczeństwa

[3] CISCO, Defeating DDOS Attacks, CISCO White Papers, CISCO 2004.[4] Four Steps to Defeat a DDoS Attack, Imperva White Paper, Imperva

2011.[5] A.E. Patkowski, Specyfikacja mechanizmów wykrywania działań nie-uprawnionych typu DDoS oraz sposobów reagowania na nie w środowi-sku federacyjnym, Sprawozdanie z realizacji zadania projektu rozwo-jowego Nr 0 R00 0125 11: System ochrony sieci teleinformatycznychprzed działaniami nieuprawnionymi, WIŁ 2011.

[6] A.E Patkowski, Cyber Defence – rozproszona obrona przed atakamiDDoS, Biuletyn Instytutu Automatyki i Robotyki nr 31, str. 3–15,Warszawa 2011.

[7] A.E. Patkowski, Obrona federacyjna cyberprzestrzeni przed atakamiterrorystycznymi, W: ”Terroryzm a bezpieczeństwo państwa w erzeglobalizmu”, red.: Jakubczak R., Radziejowski R. WAT, Warszawa2011.

[8] C. Patrikakis, M. Masikos, O. Zouraraki, Distributed Denial ofService Attacks, The Internet Protocol Journal”, Vol. 7, No. 4, CISCO,December 2004.

[9] R. Mahajan, S.M. Bellovin, S. Floyd, J. Ioannidis, V. Pa-xson, and S. Shenker, Controlling High Bandwidth Aggregates inthe Network, ACM SIGCOMM Computer Communication Review.Volume 32 Issue 3, July 2002.

[10] T.H. Nguyen, C.T. Doan, V.Q. Nguyen, T.H.T. Nguyen, andM.P. Doan, Distributed defense of distributed DoS using pushbackand communicate mechanism, In Advanced Technologies for Commu-nications (ATC), 2011 4th International Conference on, pages 178–182,2011.

[11] Brocade – Network Provider for Data Centers Everywhere,http://www.brocade.com/

[12] Common Attack Pattern Enumeration and Classification, CAPECList, http://capec.mitre.org/data/index.html The MITRE Corpora-tion.

[13] DistroWatch.com: Vyatta,http://distrowatch.com/table.php?distribution=vyatta

[14] Etherape. A graphical network monitor,http://etherape.sourceforge.net/

[15] netfilter. firewalling, NAT, and packet manglingfor linux,http://www.netfilter.org/

[16] SNORT c⃝ Users Manual 2.9.7, The Snort Project, October 13, 2014,http://www.snort.org

395

Page 396: Kryptologia i Cyberbezpieczenstwo nr 6

A. E. Patkowski

[17] Tcpreplay tcpprep, tcpreplay, tcprewrite, tcpbridge, flowreplay. Pcapediting & replay tools for *NIX, http://tcpreplay.synfin.net

[18] VYATTA. The easy tutorial, WWW.OPENMANIAK.COM,http://openmaniak.com/vyatta.php

[19] Vyos, http://vyos.net/wiki/Main Page[20] Washi: VyOS – otwartoźródłowy fork Vyatta Core,

http://www.virtual-it.pl/5209-vyos-otwartozrodlowy-fork-vyatta-core.html. Virtual-IT.pl. 13.09.2014.

[21] XModulo. Linux FAQs, tips and tutorials,http://xmodulo.com/how-to-capture-and-replay-network-traffic-on-linux.html

A LABORATORY MODEL FOR STUDYINGFEDERATIONS OF CYBER DEFENSE SYSTEMS

Abstract. The paper outlines the possibility of building the simplest federal defensesystem against DDoS attacks. It also presents some technical solutions of such a systemand presents a not expensive laboratory model for testing its properties and behavior.The adequacy of the model is achieved by using in research a network traffic which hasbeen registered in representative (or target) networks. Some possibilities of tests and toget answers to questions of potential federation participants were indicated.

Keywords: security, cyber attack, DoS, DDoS, domain, federation, adaptation, FoS,IDS, model.

Page 397: Kryptologia i Cyberbezpieczenstwo nr 6

NATO IN THE NEW STRATEGICENVIRONMENT: CYBER ATTACKS NOW

COVERED BY ARTICLE 5 OF THE NORTHATLANTIC TREATY

Grzegorz Kostrzewa-Zorbas

Institute of Organisation and Management, Faculty of Cybernetics,Military University of Technology, Warsaw, Poland

Abstract. The greatest change ever in the defence policy and military strategy ofthe North Atlantic Treaty Organisation occurred in 2014 in response to a series ofmajor cyber attacks against NATO member states and partner states - Estonia in 2007,the United States and Georgia in 2008, and others in later years - and to a generaltransformation of the security environment in which cyberwar and other threats tocybersecurity gain rapidly in importance. At the 2014 Wales Summit, NATO recognisedthat cyber defence is part of its central task of collective defence and that Article 5 ofthe North Atlantic Treaty - ”The Parties agree that an armed attack against one ormore of them in Europe or North America shall be considered an attack against themall . . .” - can be invoked in the case of cyber attacks. This statement is the first and onlyexpansion of the meaning of Article 5 and the first and only addition of a new type ofwarfare to the policy and strategy of NATO. After the change, the Alliance must face newchallenges not less urgent and difficult than the old ones of kinetic warfare or weaponsof mass destruction. This article addresses the broadest strategic context of the change.An analysis is made in the light of the global strategic thought and of the developmentof warfare through history. By entering the new strategic space of cyber warfare, NATOproves itself to be among the world’s most modern and advanced powers while, at thesame time, it returns to the ancient - and lasting - tenet of strategy: information is notinferior to force. This way the Alliance moves away from Carl von Clausewitz and closerto Sun Zi. The recognition of cyberspace as a strategic space also corresponds to anotherinfluential idea in the heritage of strategy: the concept of the ”great common” the controlof which is the key to the power over the world and over war and peace worldwide. AlfredThayer Mahan considered the global ocean to be the ”great common” crossed by vitaltrade routes and by navies competing for superiority. Now cyberspace is as open, vitaland fragile as the maritime space was in Mahan’s vision. Cyberwar also creates a promiseand a temptation of a decisive strike - the first and last strike in a war - circumventingall military defences and paralysing the enemy country. It is a new version - less lethal ornot, dependent on the tactics of cyber attacks in a cyber offensive - of the idea of strategicbombing and of the entire concept of air power, especially by its visionary Giulio Douhet,and then of nuclear strategy. Finally, the article provides two practical recommendationsregarding the policy and structure of the North Atlantic Alliance in unfolding newera. Now NATO needs a speedy follow-on to the breakthrough decision of the WalesSummit. Cyber defence should be fully integrated into the next Strategic Concept whichis expected in or around 2020 but could be worked out sooner because of the acceleratingtransition of the security environment. NATO should also consider establishing a globalCyber Command to maintain the initiative and to assure the credibility of the enlargedmeaning of Article 5 of the North Atlantic Treaty. This credibility will be immediately,continuously and comprehensively tested by many players of the global game.

Page 398: Kryptologia i Cyberbezpieczenstwo nr 6

G. Kostrzewa-Zorbas

Keywords: NATO, North Atlantic Treaty, cyberdefence, cyberdefense, cybersecurity,cybernetics, information technology, cyberwar, cyber war, cyber warfare, informationwar, information warfare, cyberattack, cyber attack, cryptology, strategy, strategic con-cept, Poland, United States, USA, Estonia, Georgia, Sun Zi, Sun Tsu, Clausewitz, Ma-han, Douhet, strategic bombardment, nuclear strategy

1. Introduction

The greatest change ever in the defence policy and military strategyof the North Atlantic Treaty Organisation occurred in 2014 in response toa series of major cyber attacks against NATO member states and part-ner states – Estonia in 2007, the United States and Georgia in 2008, andothers in later years – and to a general transformation of the security envi-ronment in which cyberwar and other threats to cybersecurity gain rapidlyin importance. At the 2014 Wales Summit, NATO recognised that cyberdefence is part of its central task of collective defence and that Article 5of the North Atlantic Treaty – “The Parties agree that an armed attackagainst one or more of them in Europe or North America shall be conside-red an attack against them all . . . ” – can be invoked in the case of cyberattacks. This statement is the first and only expansion of the meaning ofArticle 5 and the first and only addition of a new type of warfare to thepolicy and strategy of NATO. After the change, the Alliance must face newchallenges not less urgent and difficult than the old ones of kinetic warfareor weapons of mass destruction.

This article addresses the broadest strategic context of the change.An analysis is made in the light of the global strategic thought and ofthe development of warfare through history. By entering the new strategicspace of cyber warfare, NATO proves itself to be among the world’s mostmodern and advanced powers while, at the same time, it returns to theancient – and lasting – tenet of strategy: information is not inferior toforce. This way the Alliance moves away from Carl von Clausewitz andcloser to Sun Zi.

The recognition of cyberspace as a strategic space also correspondsto another influential idea in the heritage of strategy: the concept of the“great common” the control of which is the key to the power over the worldand over war and peace worldwide. Alfred Thayer Mahan considered theglobal ocean to be the “great common” crossed by vital trade routes andby navies competing for superiority. Now cyberspace is as open, vital andfragile as the maritime space was in Mahan’s vision.

Cyberwar also creates a promise and a temptation of a decisive strike– the first and last strike in a war – circumventing all military defences

398

Page 399: Kryptologia i Cyberbezpieczenstwo nr 6

NATO in the New Strategic Environment: Cyber Attacks Now Covered by . . .

and paralysing the enemy country. It is a new version – less lethal or not,dependent on the tactics of cyber attacks in a cyber offensive – of the ideaof strategic bombing and of the entire concept of air power, especially byits visionary Giulio Douhet, and then of nuclear strategy.

Finally, the article provides two practical recommendations regardingthe policy and structure of the North Atlantic Alliance in the unfoldingnew era. Now NATO needs a speedy follow-on to the breakthrough deci-sion of the Wales Summit. Cyber defence should be fully integrated intothe next Strategic Concept which is expected in or around 2020 but couldbe worked out sooner because of the accelerating transition of the securityenvironment. NATO should also consider establishing a global Cyber Com-mand to maintain the initiative and to assure the credibility of the enlargedmeaning of Article 5 of the North Atlantic Treaty. This credibility will beimmediately, continuously and comprehensively tested by many players ofthe global game.

2. A turning point in the history of NATO

NATO entered a new strategic era on 4–5 September 2014, when theNorth Atlantic Council, convened on the top level of Heads of State andGovernment at the Welsh seaport city of Newport in the United Kingdom,issued theWales Summit Declaration. The breakthrough decision on cyberattacks and collective defence is stated and justified in paragraph 72 thatalso defines the international legal framework and outlines an EnhancedCyber Defence Policy, whereas paragraph 73 lists several related concreteactivities and actions of the Alliance, many of which began before thebreakthrough and will be continued or enhanced after it:

“72. As the Alliance looks to the future, cyber threats and attackswill continue to become more common, sophisticated, and poten-tially damaging. To face this evolving challenge, we have endorsedan Enhanced Cyber Defence Policy, contributing to the fulfillmentof the Alliance’s core tasks. The policy reaffirms the principles ofthe indivisibility of Allied security and of prevention, detection, re-silience, recovery, and defence. It recalls that the fundamental cy-ber defence responsibility of NATO is to defend its own networks,and that assistance to Allies should be addressed in accordancewith the spirit of solidarity, emphasizing the responsibility of Al-lies to develop the relevant capabilities for the protection of natio-nal networks. Our policy also recognises that international law,including international humanitarian law and the UN Charter,

399

Page 400: Kryptologia i Cyberbezpieczenstwo nr 6

G. Kostrzewa-Zorbas

applies in cyberspace. Cyber attacks can reach a thresholdthat threatens national and Euro-Atlantic prosperity, se-curity, and stability. Their impact could be as harmful tomodern societies as a conventional attack. We affirm the-refore that cyber defence is part of NATO’s core task ofcollective defence. A decision as to when a cyber attackwould lead to the invocation of Article 5 would be takenby the North Atlantic Council on a case-by-case basis.

73. We are committed to developing further our national cyberdefence capabilities, and we will enhance the cyber security ofnational networks upon which NATO depends for its core tasks,in order to help make the Alliance resilient and fully protected.Close bilateral and multinational cooperation plays a keyrole in enhancing the cyber defence capabilities of the Al-liance. We will continue to integrate cyber defence intoNATO operations and operational and contingency plan-ning, and enhance information sharing and situationalawareness among Allies. Strong partnerships play a keyrole in addressing cyber threats and risks. We will the-refore continue to engage actively on cyber issues withrelevant partner nations on a case-by-case basis and withother international organisations, including the EU, asagreed, and will intensify our cooperation with industrythrough a NATO Industry Cyber Partnership. Technologi-cal innovations and expertise from the private sector are crucial toenable NATO and Allies to achieve the Enhanced Cyber DefencePolicy’s objectives. We will improve the level of NATO’s cyber de-fence education, training, and exercise activities. We will developthe NATO cyber range capability, building, as a first step, on theEstonian cyber range capability, while taking into considerationthe capabilities and requirements of the NATO CIS School [Com-munications and Information Systems School] and other NATOtraining and education bodies.”1

The Enhanced Cyber Defence Policy, endorsed and outlined in paragraph72 of the Wales Summit Declaration above, had already been approved

1 Wales Summit Declaration Issued by the Heads of State and Government Partici-pating in the Meeting of the North Atlantic Council in Wales, 4–5 September 2014(emphasis added).http://www.nato.int/cps/en/natohq/official texts 112964.htmLast accessed 21 December 2014.

400

Page 401: Kryptologia i Cyberbezpieczenstwo nr 6

NATO in the New Strategic Environment: Cyber Attacks Now Covered by . . .

by the defence ministers of the Alliance’s member countries in Brussels on3–4 June 2014. Its full content remains not public. Only three years earlier,in 2011, the original version – called Defending the Networks: The NATOPolicy on Cyber Defence – had been prepared and announced on the orderof NATO’s 2010 Lisbon Summit2.

Never before 2014 the North Atlantic Alliance devoted so much at-tention and energy to cyber defence. Its importance was recognised andappreciated at the Wales Summit even under the pressure of the gravestinternational security crisis in Europe since the Cold War: the Russian mi-litary aggression against Ukraine, the related threats to other NATO part-ners and to the Alliance itself, and the breakdown of many post-Cold Warsecurity standards and mechanisms. An effective short-term and long-termresponse to this dangerous crisis was – and is – rightly the first priority ofthe Alliance. Cyber defence, however, achieved a high position next to thetop.

3. Back to the future: from Clausewitz to Sun Zi

The Western military philosophy and strategy developed through hi-story far from the most influential strategic thinker in the world – Sun Zi(Sun Tsu in an older and still popular transcription) of ancient China. Histreatise The Art of War is the most universally read and studied work onstrategy. (All quotations from Sun Zi below are based on the classic andmost popular English translation by Samuel B. Griffith [31].) By recogni-sing and appreciating the major role of cyberspace in warfare and security,NATO becomes more modern and advanced, but also – paradoxically –closer to the ancient and classic global heritage of strategy. It was Sun Ziwho underscored, at the very beginning of the recorded strategic thought,the centrality of information and intellect – not physical force:

“Generally in war the best policy is to take a state intact;to ruin it is inferior to this. . . .

For to win one hundred victories in one hundred battles is not theacme of skill. To subdue the enemy without fighting is theacme of skill.

2 North Atlantic Treaty Organisation, Defending the Networks: The NATO Policyon Cyber Defence, [Brussels:] 2011.http://www.nato.int/nato static/assets/pdf/pdf 2011 08/20110819 110819-po-licy-cyberdefence.pdfLast accessed 21 December 2014.

401

Page 402: Kryptologia i Cyberbezpieczenstwo nr 6

G. Kostrzewa-Zorbas

Thus, what is of supreme importance in war is to attackthe enemy strategy.” [31]

Sun Zi’s recommendation “to attack the enemy strategy” has a verybroad meaning. It includes knowing the strengths and weaknesses of theenemy, learning all the significant information the enemy possesses, and –even more ambitiously – taking over the control of the enemy’s mind, espe-cially the collective or institutional mind, like the authorities of a state ora coalition, or the command of a national or multinational military force.This is one of the maximum objectives, in offence or offensive defence,not only of intelligence activities – and, to a limited extent, of psycholo-gical operations – but also of cyber attacks and cyber campaigns, and ofcryptology.

NATO’s current shift contradicts some of the fundamental assump-tions of the Western civilisation’s most influential strategist and philoso-pher of war: Carl von Clausewitz of the 19th century Prussia. His treatiseOn War is regarded as the West’s equivalent of Sun Zi’s The Art of War.(All quotations from Clausewitz below are based on the scholarly Englishtranslation by Michael Howard and Peter Paret, based on a true versionof the original, not distorted by ideologues of German militarism [3].) The“common heritage and civilisation of their peoples” – the safeguarding ofwhich the NATO member states pledged in the Preamble to the NorthAtlantic Treaty – is evolving and adopting new ways to survive.

Clausewitz assumed, among others, the superiority of physical forceover information and intellect, and the superiority of defence over attack –another dogma widely rejected in the world, especially today’s world. Hemade the thesis on the centrality of physical force in warfare a part of thevery definition of war:

“War is . . .an act of force to compel our enemy to do our will.. . .

Combat is the only effective force in war; its aim is todestroy the enemy’s forces as a means to a further end.That holds good even if no actual fighting occurs, because theoutcome rests on the assumption that if it came to fighting, theenemy would be destroyed. It follows that the destruction of theenemy’s force underlies all military actions; all plans are ultima-tely based on it . . .The decision by arms is for all majorand minor operations in war what cash payment is incommerce. Regardless how complex the relationship be-tween the two parties, regardless how rarely settlementsactually occur, they can never be entirely absent.” [3]

402

Page 403: Kryptologia i Cyberbezpieczenstwo nr 6

NATO in the New Strategic Environment: Cyber Attacks Now Covered by . . .

New means – cyber means – can achieve exactly the aim defined byClausewitz above. Today – as the Wales Summit Declaration states orimplies – “force” can be cyber power, “combat” can take place in the cyberspace, and “arms” can be cyber weapons. Due to the rise of cyberwar –together with other global conditions – the Western civilisation is nowlearning from the strategic thought of the Far East. Cyberwar contributesthis way to the convergence and globalisation of warfare and security.

4. The fifth strategic space – the decisive space?

Four strategic spaces emerged prior to cyberspace. In each of them,warfare takes place and wars can be decided. The first strategic spacewas the land, the second was the sea – which gained a central positionduring the era of global empires – and two more were added in the 20thcentury: the airspace and the outer space. Now in the 21st century, NATOcontributes to the addition of the cyberspace. The current change in theAlliance’s policy and strategy will probably resolve the present worldwidedispute whether cyberspace – or information space – plays an autonomousstrategic role. Even more spaces compete, or will likely compete in thenear future, for a similar recognition. After cyberspace proper, the nextdebate will probably be about the mind space: an extension of cyberspaceinto the human minds, with electronic, photonic and other artificial devicesintegrated with the brain and the nervous system of humans. Then maycome the biospace: biological and especially genetic space, controlled andengineered by advanced biotechnology. All these spaces – actual or potential– are also called “the domains of warfare,” cyberspace becoming the fifthactual domain. Always an important question arises if a single space ordomain is decisive – if a strategic advantage in it guarantees a strategicadvantage everywhere, and therefore a war victory.

A wider change in the strategic thinking of the nations of the Westand of the whole world preceded NATO’s shift and accelerates following it.Cyberwar had prominently appeared in general national security strategiesand national defence (military) strategies – besides specialised national cy-ber security strategies – of many NATO members and partners, and othernations, in the early 21st century, expanding exponentially after around2010. (An exponential growth is clearly visible in a selection of official stra-tegic documents provided in the “Sources” section below.) This cyberwartsunami resembles the rise of the air power idea and practice in 1914–1918– during the First World War.

403

Page 404: Kryptologia i Cyberbezpieczenstwo nr 6

G. Kostrzewa-Zorbas

The then rising air forces and air strategists quickly made a bold pro-mise that air power alone can and will win major wars, by the means ofstrategic bombing. The boldest and purest visions were developed by theItalian strategist Giulio Douhet in The Command of the Air of 1921 [10].Before the era of nuclear weapons, he already envisioned an equivalent tothe nuclear first strike – a single strike deciding the result of a whole war.Douhet proposed the employment of a combination of conventional andchemical weapons. Not the destructive force of explosives and toxins, ho-wever, but the uniqueness of the new strategic space justified the promise.The appeal of the new dimension, freedom and independence unique toairspace resembled the appeal of cyberspace today:

“The airplane has complete freedom of action and di-rection; it can fly to and from any point of the compass in theshortest time . . . . Nothing man can do on the surface of the earthcan interfere with a plane in flight, moving freely in the thirddimension. All the influences that have conditioned andcharacterized warfare from the beginning are powerlessto affect aerial action. By virtue of this new weapon, the re-percussions of war are no longer limited by the farthest artilleryrange of surface guns, but can be directly felt for hundreds andhundreds of miles over all the lands and seas of nations at war.No longer can areas exist in which life can be lived in safety andtranquillity, nor can the battlefield any longer be limited to actualcombatants.

. . .both the army and navy may well possess aerial means to aidand integrate their respective military and naval operations; butthat does not preclude the possibility, the practicability, even thenecessity, of having an air force capable of accomplishingwar missions solely with its own means, to the completeexclusion of both army and navy.

. . . the decision in this kind of war must depend upon smashing thematerial and moral resources of a people caught up in a frightfulcataclysm which haunts them everywhere without cease until thefinal collapse of all social organization. Mercifully, the decisionwill be quick . . . since the decisive blows will be directed atcivilians, that element of the countries at war least able to sustainthem.

A complete breakdown of the social structure cannot but takeplace in a country subject to . . . merciless pounding from the air

404

Page 405: Kryptologia i Cyberbezpieczenstwo nr 6

NATO in the New Strategic Environment: Cyber Attacks Now Covered by . . .

. . . to put an end to horror and suffering, the people themselves,driven by the instinct of self-preservation, would rise up and de-mand an end to the war – this before their army and navyhad time to mobilize at all!” [10]

Douhet did not call for aggressive wars but advocated offensive defence si-milar to the later concept of nuclear retaliation. The promise of decisivenessof airspace was tested before and during the Second World War with mixedand uncertain results. Cyber campaigns – for offence or defence, to breakpeace or to restore peace – can now also be based on a newer and morecomplex air power concept that replaced strategic bombing: the conceptof air campaign, best formulated by John A. Warden of the United StatesAir Force in The Air Campaign: Planning for Combat, first published in1988 and revised in 1998 in the light of new experiences [34].

Another promise of decisiveness appeared at the end of the SecondWorld War and during the Cold War with the conquest of outer space, theinvention of nuclear weapons and the building of missiles flying throughouter space and supported by outer space-based intelligence, reconnais-sance, communications and other assets [11]. Indeed, the Cold War didnot turn into a global hot war, but the cause and effect relationship isuncertain. The cyberwar concepts of retaliation and deterrence, however,correspond more to nuclear than conventional military strategy. Accordingto many nuclear strategists and theorists of international relations, nuc-lear weapons are “equalisers” of states in warfare and therefore politics.The international game becomes more democratic with nuclear prolifera-tion [29]. Small states and non-state players – like terrorist organisations– can advance to the rank of major players due to the possession of evenminor nuclear arsenals.

All these ideas spread from the classic nuclear thought to the deve-loping cyber thought. The pro-Western Israel and the anti-Western NorthKorea may serve as perfect examples of small states that became big play-ers in both nuclear and cyber warfare. Estonia – a very small state in anextremely difficult local geostrategic environment – strives to be a cyberfortress for the West. Private groups armed with cyber weapons may fightlike equals with a superpower nation of the United States and with thestrongest alliance on Earth – the North Atlantic Alliance. Or they maytake revenge on China and Russia for aggressive military actions or forhuman rights abuses.

Maritime superiority is the decisive step to the power over the worldaccording to the American strategist Alfred Thayer Mahan in The Influ-ence of Sea Power Upon History, first published in 1890 [19]. Mahan’s

405

Page 406: Kryptologia i Cyberbezpieczenstwo nr 6

G. Kostrzewa-Zorbas

explanation of the key role of the global ocean in the life of humankind canbe directly applied to cyberspace with an analogous conclusion on worldhegemony. Today the open Internet and other large components of the glo-bal cyberspace constitute a new “great common” or “wide common” likethe original one:

“The first and most obvious light in which the sea pre-sents itself from the political and social point of view isthat of a great highway; or better, perhaps, of a widecommon, over which men may pass in all directions, buton which some well-worn paths show that controlling reasons haveled them to choose certain lines of travel rather than others. Theselines of travel are called trade routes; and the reasons which havedetermined them are to be sought in the history of the world.

. . . it is the possession of that overbearing power on the sea whichdrives the enemy’s flag from it, or allows it to appear only asa fugitive; and which, by controlling the great common, closesthe highways by which commerce moves to and from the enemy’sshores. This overbearing power can only be exercised by greatnavies . . .” [19]

Countries and civilisations, and the economic, political and militarylife of the world, are becoming even more concentrated around cyberspace– and more dependent on it – than around the global ocean. NATO can,thanks to its strong maritime foundation – beside the nuclear one – easilyunderstand and appreciate cyberspace as an additional strategic priorityfor the 21st century. No other entity is both willing and able to keep thenew great common open.

5. The first ever addition of a new type of warfare toNATO’s strategy

Nuclear weapons and nuclear warfare were present in the strategyof NATO from its very beginning. Immediately after the signing of theNorth Atlantic Treaty on 4 April 1949 and its entry into force on 24August 1949, the Alliance developed The Strategic Concept for the De-fense of the North Atlantic Area – secret at that time, declassified onlyafter the Cold War [21]. On 29 August 1949, the Soviet Union conduc-ted its first nuclear weapon test, revealed to the world by the UnitedStates on 23 September 1949. The first Strategic Concept was drafted

406

Page 407: Kryptologia i Cyberbezpieczenstwo nr 6

NATO in the New Strategic Environment: Cyber Attacks Now Covered by . . .

by the Alliance’s military authorities in the fall of 1949 and finally ap-proved by the North Atlantic Council on 6 January 1950. NATO plan-ned to use all available means in all then existing strategic spaces ordomains:

“IV MILITARY MEASURESTO IMPLEMENT DEFENSE CONCEPT

Basic Undertakings

7. Over-all defense plans must provide in advance of war emer-gency, specifically for the following basic undertakings in furthe-rance of the common objective to defend the North Atlantic area.The successful conduct of these undertakings should be assuredby close coordination of military action as set forth in over-allplans.

(a) Insure the ability to carry out strategic bombingpromptly by all means possible with all types of weapons,without exception. This is primarily a U.S. responsibility assi-sted as practicable by other nations.

(b) Arrest and counter as soon as practicable the enemy offensi-ves against North Atlantic Treaty powers by all means available,including air, naval, land and psychological operations. . . ”3.

The expression “all types of weapons, without exception” meant firstof all “the atomic bomb” as stated in drafts since October 1949. Diplomatsthen agreed to change the explicit wording with no change of the intendedmeaning4.

3 The Strategic Concept for the Defense of the North Atlantic Area, approved by theNorth Atlantic Defense Committee on 1 December 1949, [approved by the NorthAtlantic Council on 6 January 1950,] in NATO Strategy Documents 1949-1969,Edited by Dr. Gregory W. Pedlow, Chief, Historical Office, Supreme HeadquartersAllied Powers Europe, in Collaboration with NATO International Staff CentralArchives, [Brussels: North Atlantic Treaty Organisation, 1997], pp. 5–6 (emphasisadded).http://www.nato.int/docu/stratdoc/eng/a491201a.pdfLast accessed 21 December 2014.

4 Gregory W. Pedlow, ”The Evolution of NATO Strategy 1949-1969,” in NATOStrategy Documents 1949-1969, Edited by Dr. Gregory W. Pedlow, Chief, Histo-rical Office, Supreme Headquarters Allied Powers Europe, in Collaboration withNATO International Staff Central Archives, [Brussels: North Atlantic Treaty Or-ganisation, 1997], pp. XI-XIII.http://www.nato.int/docu/stratdoc/eng/intro.pdfLast accessed 21 December 2014.

407

Page 408: Kryptologia i Cyberbezpieczenstwo nr 6

G. Kostrzewa-Zorbas

Therefore, the current inclusion of cyber attacks and cyber defenceinto the extent of collective defence is the first ever addition of a new typeof warfare to the responsibility and strategy of NATO, dominated earlierby kinetic warfare and nuclear, chemical and biological weapons of massdestruction. Preoccupied with weapons based on chemical, thermal, nuc-lear, electromagnetic and kinetic energy, and on radioactive, chemical andbiological agents, the Alliance tended to underestimate the information di-mension of warfare. Now the balance is restored. One of the reasons forthis breakthrough was the force multiplier capability of information. Ano-ther – the interaction of cyberspace with physical reality. A cyber weaponcan release kinetic and other energy from the military arsenal and otherresources of an attacked state or alliance. Cyberspace is autonomous butinterconnected with all the other strategic spaces.

6. Cyberwar is an integral part of warfare in general

There are two different major components to the breakthrough of theWales Summit. First, the openly stated recognition that cyber attacks canbe armed attacks. Second, the implied recognition that cyberwar is nota detached kind and field of warfare but an integral part of warfare ingeneral. Cyberwar remains distinct and autonomous like naval warfare orair warfare. Strong connections and interactions exist, however, betweencyberspace and the sea, airspace, outer space and land.

Whoever launches cyber attacks on NATO or its member countries,cannot count on an exclusively cyber nature of the Alliance’s reaction. Acombat response can come through any strategic space, with any kind ofweapons under the condition of proportionality. Cyberspace ceased to bea sanctuary for cyber warriors. All warriors are now equal under the lawand in operational plans.

7. Recommendation 1: Next Strategic Concept soonerthan around 2020

NATO needs to quickly and fully integrate cyber warfare, cyber de-fence and cyber weapons into its Strategic Concept. There is a regular cycleof revisions approximately every ten years, but Wales Summit breakthro-ugh justifies an exception. The work could and should be completed inabout two or three years from now.

Because of the ethical and legal novelty and complexity of the matter,NATO should also clearly define the necessary political, humanitarian and

408

Page 409: Kryptologia i Cyberbezpieczenstwo nr 6

NATO in the New Strategic Environment: Cyber Attacks Now Covered by . . .

international law guidelines and limitations of cyber defence. This can beaccomplished, in part, with the use of the already published half-officialTallinn Manual on the International Law Applicable to Cyber Warfare [32].

8. Recommendation 2: NATO Cyber Command

Cyber defence requires the establishment of a NATO Cyber Commandwith a global reach and on the highest reasonable level: directly under Al-lied Command Operations. All the structural innovations outlined in para-graph 73 of the Wales Summit Declaration may not prove sufficient in thecoming years. The existing Cyber Defence Committee – known as the De-fence Policy and Planning Committee (Cyber Defence) before April 2014– and the NATO Cooperative Cyber Defence Centre of Excellence establi-shed in Tallinn, Estonia have responsibilities different from a command. Sowill have a NATO military cyber training centre planned also in Tallinn.

“In a chosen country of Central Europe, NATO should create a new– corresponding to new challenges – headquarters with tasks covering thewhole of Europe or the world. It should be a battle command directly subor-dinated to the Allied Command Operations, ACO, in Mons, Belgium. Themost justified choice would be a European missile and air defense com-mand or a global cyberwar command” – I suggested before the WalesSummit [15]. Not another research, planning or training institution, but acombat command is indeed necessary to fully implement theWales SummitDeclaration. Among the Central European member countries, Poland hasthe greatest potential to host and support a NATO Cyber Command. Amajor asset within this potential is the Military University of Technologyin Warsaw – the largest military research and teaching university in theEuropean part of NATO and in the entire European Union.

Within NATO, the United States was the first member country tocreate a combat cyber command. Established in 2009 and fully opera-tional since 2010, the United States Cyber Command (USCYBERCOM),located at Fort George G. Meade in Maryland near Annapolis and Wa-shington, DC, is a Subordinate Unified Command under the United StatesStrategic Command (USSTRATCOM), a top-level Functional CombatantCommand. The Netherlands was the first European member nation thatfollowed – in the year of the Wales Summit. Outside of the Alliance, twostates – Israel and Russia – are preparing their cyber commands, whileIndia is considering a similar plan.

409

Page 410: Kryptologia i Cyberbezpieczenstwo nr 6

G. Kostrzewa-Zorbas

9. Conclusions

Today the North Atlantic Alliance needs a visible credibility of itsdefence policy and military strategy expanded into cyber defence at theWales Summit of 2014. The Wales Summit Declaration includes the firstand only expansion of the meaning of Article 5 of the North Atlantic Tre-aty and the first and only addition of a new type of warfare to the policyand strategy of the Alliance in its 65 years of history. Credibility can beassured by maintaining the initiative, especially by follow-on conceptualand organisational moves: integrating cyber defence into the NATO Stra-tegic Concept and by establishing a NATO Cyber Command. Initiative isa universal strategic principle, although Clausewitz never appreciated it:

“Tactical initiative can rarely be expanded into a major victory,but a strategic one has often brought the whole war to an end ata stroke. On the other hand, the use of this device assumes major,decisive and exceptional mistakes on the enemy’s part” [3].

The perfectly stable and predictable world of Clausewitz no longerexists, if it ever existed. Losing the initiative in cyber warfare would be amajor, decisive and exceptional mistake on NATO’s part. Sun Zi soundsmuch more convincing on both the unpredictable and the speed in warfare:

“Generally, in battle, use the normal force to engage; use theextraordinary to win. . .

Speed is the essence of war” [31].

Speed is, in particular, the essence of cyberwar. Speed is also the es-sence of cyber defence and cyber security, and of the cyber peace the NorthAtlantic Alliance decided to guarantee.

10. Sources

10.1 Current Documents

[Australia.] Australian Government. Cyber Security Strategy. [Canberra:]2009.http ://www.ag.gov.au/RightsAndProtections/CyberSecurity/Documents/AG%20Cyber%20Security%20Strategy%20−%20for%20website.pdf

[Australia.] Australian Government, Department of Defence. DefenceWhite Paper 2013. [Canberra:] 2013.

410

Page 411: Kryptologia i Cyberbezpieczenstwo nr 6

NATO in the New Strategic Environment: Cyber Attacks Now Covered by . . .

http ://www.nationalsecurity.gov.au/Mediaandpublications/Publications/Pages/dafault.aspx# dwp

[Australia.] Australian Government, Department of the Prime Minister andCabinet. Strong and Secure: A Strategy for Australia’s National Security.[Canberra:] 2013.http : //apo.org.au/files/Resource/dpmc nationalsecuritystrategyjan2013.pdf

[Canada.] [Ministry of] National Defence. Canada First Defence Strategy.[Ottawa:] 2008.http : //www.forces.gc.ca/assets/FORCES Internet/docs/en/about/CFDS− SDCD− eng.pdf

[Canada.] Government of Canada. Canada’s Cyber Security Strategy: Fora Stronger and More Prosperous Canada. [Ottawa:] 2010.http://www.publicsafety.gc.ca/cnt/rsrcs/pblctns/cbr-scrt-strtgy/index-eng.aspx

[Estonia.] Ministry of Economic Affairs and Communication. Cyber Secu-rity Strategy 2014-2017. [Tallinn:] 2014.https : //www.mkm.ee/sites/default/files/cyber security strategy 2014−2017 public version.pdf

[Estonia.] Estonian Ministry of Defence. National Defence Strategy [of] Es-tonia. [Tallinn:] 2011.http : //www.kaitseministeerium.ee/files/kmin/img/files/KM riigikaitsestrateegia eng%282%29.pdf

[Estonia.] Parliament of Estonia. National Security Concept of Estonia.[Tallinn:] 12 May 2010.http : //www.kaitseministeerium.ee/files/kmin/img/files/NationalSecurity Concept of Estonia.pdf

[European Union.] European Commission and the High Representative ofthe European Union for Foreign Affairs and Security Policy. CybersecurityStrategy of the European Union: An Open, Safe and Secure Cyberspace.Brussels, 7 February 2013.http://ec.europa.eu/digital-agenda/en/news/eu-cybersecurity-plan-protect-open-internet-and-online-freedom-and-opportunity-cyber-security

[European Union.] European Commission. Proposal for a Directive of theEuropean Parliament and of the Council Concerning Measures to Ensurea High Common Level of Network and Information Security Across the

411

Page 412: Kryptologia i Cyberbezpieczenstwo nr 6

G. Kostrzewa-Zorbas

Union. Brussels, 7 February 2013.http://eur-lex.europa.eu/legal-content/EN/TXT/PDF/?uri=CELEX:52013PC0048&from=EN

[France.] Republic of France. Minister of Defence. Defence and NationalSecurity 2013: Twelve Key Points. White Paper. [Paris: 2013.]www.defense.gouv.fr/content/download/207914/2305785/file/LB-fiche%2012pts-UK.pdf

[France.] Republic of France. Prime Minister; French Network and Informa-tion Security Agency. Information Systems Defence and Security: France’sStrategy. Paris: February 2011.http : //www.ssi.gouv.fr/IMG/pdf/2011− 02− 15 Information systemdefence and security − France s strategy.pdf

[Germany.] Cyber Security Strategy for Germany. Berlin: Federal Ministryof the Interior, February 2011.https : //www.bsi.bund.de/SharedDocs/Downloads/EN/BSI/Publications/CyberSecurity/Cyber Security Strategy for Germany.pdf?

blob = publicationFile

[Germany.] German Ministry of Defence. Defence Policy Guidelines: Sa-feguarding National Interests – Assuming International Responsibility –Shaping Security Together. Berlin, 27 May 2011.www.bmvg.de/resource/resource/MzEzNTM4MmUzMzMyMmUzMTM1MzMyZTM2MzIzMDMwMzAzMDMwMzAzMDY3NmY2ODMyNjEzMTc2NjgyMDIwMjAyMDIw/110527%20VPR%20engl.pdf

[Japan.] Information Security Policy Council. Cybersecurity Strategy: To-wards a World-leading, Resilient and Vigorous Cyberspace. [Tokyo:] 10June 2013.http://www.nisc.go.jp/active/kihon/pdf/cybersecuritystrategy-en.pdf

[Japan.] Ministry of Defense. Defense of Japan 2014. [Tokyo:] 2014.http : //www.mod.go.jp/e/publ/w paper/2014.html

[Japan.] Government of Japan. National Security Strategy. [Tokyo:] 17 De-cember 2013.http://www.cas.go.jp/jp/siryou/131217anzenhoshou/nss-e.pdf

[Netherlands] Ministry of Defence. The Defence Cyber Strategy. [The Ha-gue: 27 June 2012.]https : //ccdcoe.org/strategies/Defence Cyber Strategy NDL.pdf

412

Page 413: Kryptologia i Cyberbezpieczenstwo nr 6

NATO in the New Strategic Environment: Cyber Attacks Now Covered by . . .

[Netherlands] [Government of the Netherlands.] International SecurityStrategy: A Secure Netherlands in a Secure World. [The Hague: 21 June2013.]http://www.government.nl/news/2013/06/21/a-secure-netherlands-in-a-secure-world.html

[Netherlands] National Coordinator for Security and Counterterrorism. Na-tional Cyber Security Strategy 2: From Awareness to Capability. [The Ha-gue: 2013.]https://english.nctv.nl/Images/national-cyber-security-strategy-2 tcm92-520278.pdf

[Netherlands] Ministry of Defence. Netherlands Defence Doctrine. [The Ha-gue: 20 November 2013.]www.defensie.nl/binaries/defence/documents/publications/2013/11/20/defence-doctrine-en/defensie-doctrine en.pdf

[North Atlantic Treaty Organisation.] Active Engagement, Modern De-fence: Strategic Concept for the Defence and Security of the Members ofthe North Atlantic Treaty Organisation adopted by Heads of State andGovernment in Lisbon [19–20 November 2010].http : //www.nato.int/cps/en/natolive/official texts 68580.htm

[North Atlantic Treaty Organisation.] Wales Summit Declaration Issuedby the Heads of State and Government Participating in the Meeting of theNorth Atlantic Council in Wales, 4–5 September 2014.http : //www.nato.int/cps/en/natohq/official texts 112964.htm

[Poland.] Republic of Poland. Ministry of Administration and Digitisationand Internal Security Agency. Cyberspace Protection Policy of the Repu-blic of Poland. Warsaw, 25 June 2013.www.cert.gov.pl/download/3/162/PolitykaOchronyCyberprzestrzeniRP148x210wersjaang.pdf

[Poland.] Ministry of National Defence. Defence Strategy of the Republic ofPoland. Sector Strategy of the National Security Strategy of the Republicof Poland. Warsaw: 2009.http://en.mon.gov.pl/z/pliki/dokumenty/rozne/2014/02/strategiaobronnosci eng.pdf

[Poland.] President of the Republic of Poland. National Security Strategyof The Republic of Poland. Warsaw: 5 November 2014.http://www.bbn.gov.pl/ftp/dok/NSS RP.pdf

413

Page 414: Kryptologia i Cyberbezpieczenstwo nr 6

G. Kostrzewa-Zorbas

[United Kingdom of Great Britain and Northern Ireland.] HM Government.A Strong Britain in an Age of Uncertainty: The National Security Strategy.London: October 2010.https://www.gov.uk/government/uploads/system/uploads/attachmentdata/file/61936/national-security-strategy.pdf

[United Kingdom of Great Britain and Northern Ireland.] The UK CyberSecurity Strategy: Protecting and Promoting the UK in a Digital World.London: Cabinet Office, November 2011.https://www.gov.uk/government/uploads/system/uploads/attachmentdata/file/60961/uk-cyber-security-strategy-final.pdf

[United States of America.] Department of Defense. Department of DefenseStrategy for Operating in Cyberspace. [Washington, DC: The Pentagon,July 2011.]http://www.defense.gov/news/d20110714cyber.pdf

[United States of America.] President of the United States. InternationalStrategy for Cyberspace: Prosperity, Security, and Openness in a Networ-ked World. Washington, DC: The White House, May 2011.http://www.whitehouse.gov/sites/default/files/rss viewer/internationalstrategy for cyberspace.pdf

[United States of America.] President of the United States. National Secu-rity Strategy. Washington, DC: The White House, May 2010.http://www.whitehouse.gov/sites/default/files/rss viewer/nationalsecurity strategy.pdf

[United States of America.] Department of Defense. Quadrennial DefenseReview 2014. [Washington, DC: The Pentagon, 2014.]http://www.defense.gov/pubs/2014 Quadrennial Defense Review.pdf

[United States of America.] Department of Defense. Sustaining U.S. GlobalLeadership: Priorities for 21st Century Defense. [Washington, DC: ThePentagon, January 2012.]http://www.defense.gov/news/Defense Strategic Guidance.pdf

References

[1] R. Buchan, “Cyber Attacks: Unlawful Uses of Force or ProhibitedInterventions?”, Journal of Conflict and Security Law, (Oxford, UK:Oxford University Press), Vol. 17, Issue 2 (Summer 2012).

414

Page 415: Kryptologia i Cyberbezpieczenstwo nr 6

NATO in the New Strategic Environment: Cyber Attacks Now Covered by . . .

[2] S.J. Cimbala, Nuclear Weapons in the Information Age, New York:Continuum International Publishing Group, 2012.

[3] C. von Clausewitz, On War, Edited and Translated by MichaelHoward and Peter Paret, Princeton, NJ: Princeton University Press,1984.

[4] E. A. Cohen, “Technology and Warfare”, In Strategy in the Contem-porary World: An Introduction to Strategic Studies, Edited by JohnBaylis, James J. Wirtz, and C.S. Gray, 4th Edition, Oxford, UK:Oxford University Press, 2013.

[5] Cyberpower and National Security, Edited by F.D. Kramer, S.H. Starr,and L.K. Wentz, Washington, DC: National Defense University Press;Potomac Books, 2009.

[6] Cyberwar, Netwar and the Revolution in Military Affairs Edited by E.Halpin, P. Trevorrow, D. Webb, and S. Wright, Houndmills, Basing-stoke, Hampshire, UK: Palgrave Macmillan, 2006.

[7] Cyberwar and Information Warfare Edited by Daniel Ventre, London:ISTE, 2011.

[8] C.C. Demchak, Wars of Disruption and Resilience: Cybered Con-flict, Power, and National Security, Athens, GA: University of GeorgiaPress, 2011.

[9] H.H. Dinniss, Cyber Warfare and the Laws of War, New York: Cam-bridge University Press, 2012.

[10] G. Douhet, The Command of the Air, Translated by D. Ferrari,Washington, DC: Office of Air Force History, 1983.

[11] L. Freedman, The Evolution of Nuclear Strategy, 3rd Edition, Ho-undmills, Basingstoke, Hampshire, UK: Palgrave Macmillan, 2003.

[12] W.T. Hagestad, 21st century Chinese Cyberwarfare: An Examina-tion of the Chinese Cyberthreat from Fundamentals of Communist Po-licy Regarding Information Warfare through the Broad Range of Mi-litary, Civilian and Commercially Supported Cyberattack Threat Vec-tors, Ely, Cambridgeshire, UK: IT Governance Publishing, 2012.

[13] L.J. Janczewski and A.M. Colarik (Editors), Cyber Warfare andCyber Terrorism, Hershey, PA: IGI Global, 2007.

[14] L. Kello. “The Meaning of the Cyber Revolution: Perils to Theoryand Statecraft”, International Security, Vol. 38, No. 2 (Fall 2013).

[15] G. Kostrzewa-Zorbas, “A Plan for NATO: Central Europe Indi-stinguishable from Western Europe”, Aspen Review Central Europe(Prague, Czech Republic), No. 2/2014.

[16] A. Kott, C. Wang, and R.F. Erbacher (Editors), Cyber Defenseand Situational Awareness, New York, NY: Springer Science+BusinessMedia, 2014.

415

Page 416: Kryptologia i Cyberbezpieczenstwo nr 6

G. Kostrzewa-Zorbas

[17] M.C. Libicki, Conquest in Cyberspace: National Security and Infor-mation Warfare, New York: Cambridge University Press, 2007.

[18] M.C. Libicki, Cyberdeterrence and Cyberwar Santa Monica, CA:RAND Corporation, 2009.

[19] A.T. Mahan, The Influence of Sea Power Upon History, 1660–1783,New York: Dover Publications, 1987.

[20] National Cyber Security Framework Manual Edited by A. Klimburg,Tallinn, Estonia: NATO Cooperative Cyber Defence Centre of Excel-lence, 2012.

[21] NATO Strategy Documents 1949–1969. Edited by Dr. G.W. Pedlow,Chief, Historical Office, Supreme Headquarters Allied Powers Europe,in Collaboration with NATO International Staff Central Archives.[Brussels: North Atlantic Treaty Organisation, 1997.]

[22] M.E. O’Connell, “Cyber Security without Cyber War”, Journal ofConflict and Security Law (Oxford, UK: Oxford University Press), Vol.17, Issue 2 (Summer 2012).

[23] W.A. Owens, K.W. Dam, and H.S. Lin (Editors), Technology,Policy, Law, and Ethics Regarding U.S. Acquisition and Use of Cybe-rattack Capabilities, National Research Council of the National Aca-demies, Washington, DC: National Academies Press, 2009.

[24] C. Paul, I.R. Porche, and E. Axelband, The Other Quiet Profes-sionals: Lessons for Future Cyber Forces from the Evolution of SpecialForces, Santa Monica, CA: RAND Corporation, 2014.

[25] D.S. Reveron (Editor), Cyberspace and National Security: Threats,Opportunities, and Power in a Virtual World, Washington, DC: Geo-rgetown University Press, 2012.

[26] J. Rivera, “A Theory of Cyberwarfare”, Georgetown Security StudiesReview, Vol. 2, No. 2 (June 2014).

[27] N. Robinson, A. Walczak, S.-C. Brune, A. Esterle, P. Ro-driguez, it Stocktaking Study of Military Cyber Defence Capabilitiesin the European Union (milCyberCAP): Unclassified Summary SantaMonica, CA: RAND Corporation, 2013.

[28] M. Roscini, Cyber Operations and the Use of Force in InternationalLaw, Oxford, UK: Oxford University Press, 2014.

[29] S.D. Sagan and K.N. Waltz The Spread of Nuclear Weapons: AnEnduring Debate, 3rd Edition, New York: W.W. Norton, 2013.

[30] J.B. Sheldon, “The Rise of Cyberpower”, In Strategy in the Con-temporary World: An Introduction to Strategic Studies, Edited by J.Baylis, J.J. Wirtz, and C.S. Gray, 4th Edition, Oxford, UK: OxfordUniversity Press, 2013.

416

Page 417: Kryptologia i Cyberbezpieczenstwo nr 6

NATO in the New Strategic Environment: Cyber Attacks Now Covered by . . .

[31] Sun Tsu [Sun Zi], The Art of War, Translated and with an Introduc-tion by S.B. Griffith. London: Oxford University Press, 1963.

[32] Tallinn Manual on the International Law Applicable to Cyber WarfarePrepared by the International Group of Experts at the Invitation of theNATO Cooperative Cyber Defence Centre of Excellence General EditorM.N. Schmitt, Cambridge, UK: Cambridge University Press, 2013.

[33] N. Tsagourias, “Cyber Attacks, Self-defence and the Problem of At-tribution”, Journal of Conflict and Security Law (Oxford, UK: OxfordUniversity Press), Vol. 17, Issue 2 (Summer 2012).

[34] J.A. Warden, The Air Campaign: Planning for Combat, Revised Edi-tion. San Jose, CA: to Excel, 1998.

NATO W NOWYM ŚRODOWISKUSTRATEGICZNYM:

CYBERATAKI PODLEGAJĄ JUŻ ARTYKUŁOWI 5TRAKTATU PÓŁNOCNOATLANTYCKIEGO

Streszczenie. Największa zmiana w dziejach polityki obronnej i strategii wojskowejSojuszu Północnoatlantyckiego nastąpiła w 2014 roku w odpowiedzi na serię cybera-taków przeciw państwom członkowskim i partnerskim NATO – Estonii w 2007 roku,Stanom Zjednoczonym i Gruzji w 2008 roku, i innym w latach późniejszych – oraz naogólną transformację środowiska bezpieczeństwa, w którym wojna cybernetyczna i innezagrożenia dla cyberbezpieczeństwa szybko zyskują na znaczeniu. Na szczycie w Walii w2014 roku NATO uznało, że cyberobrona jest częścią zbiorowej obrony jako centralnegozadania sojuszu i że artykuł 5 Traktatu Północnoatlantyckiego – „Strony zgadzają się,że zbrojna napaść na jedną lub więcej z nich w Europie lub Ameryce Północnej, będzieuznana za napaść przeciwko nim wszystkim . . . ” – może być przywołany w przypadkucyberataków. To oświadczenie jest pierwszym i jedynym rozszerzeniem znaczenia arty-kułu 5 oraz pierwszym i jedynym dodaniem nowego rodzaju wojny do polityki i strategiiNATO. Po tej zmianie sojusz musi stawic czoła nowym wyzwaniom, pilnym i trudnymnie mniej od starych wyzwań wojny kinetycznej lub broni masowego rażenia. Artykuł do-tyczy najszerszego strategicznego kontekstu zmiany. Analiza jest prowadzona w świetleglobalnej myśli strategicznej i rozwoju wojny poprzez dzieje. Wchodząc w nową prze-strzeń strategiczną cyberowjny, NATO wykazuje, że należy do najbardziej nowoczesnychi zaawansowanych potęg świata, a jednocześnie wraca do starożytnej – i trwałej – za-sady strategii: informacja nie jest podrzędna wobec siły. Tak sojusz odchodzi od Carlavon Clausewitza i zbliża się do Sun Zi. Uznanie cyberprzestrzeni za przestrzeń strate-giczną nawiązuje również do innej wpływowej idei dziedzictwa strategii: do koncepcji„wielkiego terenu publicznego” (“the great common”), władza nad którym daje kluczdo władzy nad światem, i nad wojną i pokojem w świecie. Alfred Thayer Mahan uważałocean światowy za „wielki teren publiczny”, przecinany przez żywotne szlaki handlowei floty konkurujące o wyższość. Dziś cyberprzestrzeń jest tak otwarta, żywotna i łatwado podboju, jak przestrzeń morska była w wizji Mahana. Wojna cybernetyczna takżerodzi obietnicę i pokusę rozstrzygającego uderzenia – pierwszego i zarazem ostatniegona wojnie – które pozwala obejść wszystkie elementy obrony przeciwnika i sparaliżowaćwrogi kraj. To nowa wersja – mniej lub równie śmiercionośna, zależnie od taktyki cybe-rataków podczas ofensywy cybernetycznej – idei bombardowania strategicznego i całejkoncepcji siły powietrznej według jej wizjonera Giulio Douhet, a potem według strategii

417

Page 418: Kryptologia i Cyberbezpieczenstwo nr 6

G. Kostrzewa-Zorbas

nuklearnej. Na koniec artykuł podaje dwie praktyczne rekomendacje co do polityki istruktury Sojuszu Północnoatlantyckiego na rozwijającą się nową erę. Potrzebny jestteraz szybki ciąg dalszy przełomowej decyzji Szczytu w Walii. Cyberobrona powinnazostać w pełni włączona – jako integralna część – do następnej Koncepcji Strategicz-nej NATO. Nowa Koncepcja Strategiczna jest spodziewana w roku 2020 lub zbliżonym,ale może być opracowana wcześniej z powodu przyśpieszającej przemiany środowiskabezpieczeństwa. NATO powinno również rozważyć ustanowienie globalnego DowództwaCybernetycznego dla utrzymania inicjatywy i dla zapewnienia wiarygodności artykułu5 Traktatu Północnoatlantyckiego w rozszerzonym znaczeniu. Ta wiarygodność będzienatychmiast, ciągle i wszechstronnie testowana przez wielu graczy globalnej gry.

Słowa kluczowe: NATO, Traktat Północnoatlantycki, cyberobrona, cyberbezpieczeń-stwo, cybernetyka, informatyka, cyberwojna, wojna cybernetyczna, wojna informacyjna,cyberatak, atak cybernetyczny, kryptologia, strategia, koncepcja strategiczna, Polska,Stany Zjednoczone, USA, Estonia, Gruzja, Sun Zi, Sun Tsu, Clausewitz, Mahan, Do-uhet, bombardowanie strategiczne, strategia nuklearna, strategia jądrowa