Solving Weakened Cryptanalysis Problems for the Bivium Keystream Generator in the Volunteer Computing Project Oleg Zaikin, Alexander Semenov,

Slides:



Advertisements
Similar presentations
Hybrid BDD and All-SAT Method for Model Checking Orna Grumberg Joint work with Assaf Schuster and Avi Yadgar Technion – Israel Institute of Technology.
Advertisements

Complexity ©D.Moshkovits 1 Where Can We Draw The Line? On the Hardness of Satisfiability Problems.
Xiutao Feng Institute of Software Chinese Academy of Sciences A Byte-Based Guess and Determine Attack on SOSEMANUK.
Proofs from SAT Solvers Yeting Ge ACSys NYU Nov
Properties of SLUR Formulae Ondřej Čepek, Petr Kučera, Václav Vlček Charles University in Prague SOFSEM 2012 January 23, 2012.
By Claudia Fiorini, Enrico Martinelli, Fabio Massacci
Searching for the Minimal Bézout Number Lin Zhenjiang, Allen Dept. of CSE, CUHK 3-Oct-2005
Introduction to Cryptography and Security Mechanisms: Unit 5 Theoretical v Practical Security Dr Keith Martin McCrea
1 Boolean Satisfiability in Electronic Design Automation (EDA ) By Kunal P. Ganeshpure.
Efficient Statistical Pruning for Maximum Likelihood Decoding Radhika Gowaikar Babak Hassibi California Institute of Technology July 3, 2003.
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 21 Instructor: Paul Beame.
SAT-Based Decision Procedures for Subsets of First-Order Logic
AAAI00 Austin, Texas Generating Satisfiable Problem Instances Dimitris Achlioptas Microsoft Carla P. Gomes Cornell University Henry Kautz University of.
Analysis of Algorithms CS 477/677
Jan 6-10th, 2007VLSI Design A Reduced Complexity Algorithm for Minimizing N-Detect Tests Kalyana R. Kantipudi Vishwani D. Agrawal Department of Electrical.
1 Discrete Structures CS 280 Example application of probability: MAX 3-SAT.
1 CS 4700: Foundations of Artificial Intelligence Carla P. Gomes Module: Satisfiability (Reading R&N: Chapter 7)
Session 6: Introduction to cryptanalysis part 1. Contents Problem definition Symmetric systems cryptanalysis Particularities of block ciphers cryptanalysis.
Daniel Kroening and Ofer Strichman Decision Procedure
SAT Solver Math Foundations of Computer Science. 2 Boolean Expressions  A Boolean expression is a Boolean function  Any Boolean function can be written.
Graph-based consensus clustering for class discovery from gene expression data Zhiwen Yum, Hau-San Wong and Hongqiang Wang Bioinformatics, 2007.
Exercise problems for students taking the Programming Parallel Computers course. Janusz Kowalik Piotr Arlukowicz Tadeusz Puzniakowski Informatics Institute.
1 Growth of Functions CS 202 Epp, section ??? Aaron Bloomfield.
Boolean Satisfiability and SAT Solvers
ORGANIZING AND ADMINISTERING OF VOLUNTEER DISTRIBUTED COMPUTING PROJECT Oleg Zaikin, Nikolay Khrapov Institute for System Dynamics and Control.
Application of Finite Geometry LDPC code on the Internet Data Transport Wu Yuchun Oct 2006 Huawei Hisi Company Ltd.
MBSat Satisfiability Program and Heuristics Brief Overview VLSI Testing B Marc Boulé April 2001 McGill University Electrical and Computer Engineering.
The Complexity of Optimization Problems. Summary -Complexity of algorithms and problems -Complexity classes: P and NP -Reducibility -Karp reducibility.
NP Complexity By Mussie Araya. What is NP Complexity? Formal Definition: NP is the set of decision problems solvable in polynomial time by a non- deterministic.
Major objective of this course is: Design and analysis of modern algorithms Different variants Accuracy Efficiency Comparing efficiencies Motivation thinking.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
EMIS 8373: Integer Programming NP-Complete Problems updated 21 April 2009.
© 2013 Toshiba Corporation An Estimation of Computational Complexity for the Section Finding Problem on Algebraic Surfaces Chiho Mihara (TOSHIBA Corp.)
CSCI 3160 Design and Analysis of Algorithms Tutorial 10 Chengyu Lin.
Surya Bhupatiraju MIT PRIMES May 20 th, 2012 On the Complexity of the Marginal Consistency Problem.
Explorations in Artificial Intelligence Prof. Carla P. Gomes Module Logic Representations.
ICCS 2009 IDB Workshop, 18 th February 2010, Madrid 1 Training Workshop on the ICCS 2009 database Weighting and Variance Estimation picture.
BOINC Projects promotion – experience Oleg Zaikin Institute for System Dynamics and Control Theory SB RAS, Irkutsk, Russia.
NP-COMPLETE PROBLEMS. Admin  Two more assignments…  No office hours on tomorrow.
On the Relation between SAT and BDDs for Equivalence Checking Sherief Reda Rolf Drechsler Alex Orailoglu Computer Science & Engineering Dept. University.
1/19 Minimizing weighted completion time with precedence constraints Nikhil Bansal (IBM) Subhash Khot (NYU)
NP-Complete problems.
NP-Complete Problems Algorithm : Design & Analysis [23]
1 IDGF International Desktop Grid Federation PORTING APPLICATION TO THE BOINC DESKTOP GRID: ISA RAS EXPERIENCE Mikhail Posypkin Oleg Zaikin Nikolay Khrapov.
DES Analysis and Attacks CSCI 5857: Encoding and Encryption.
Tommy Messelis * Stefaan Haspeslagh Patrick De Causmaecker *
1/16 Seeing through M IST given a Small Fraction of an RSA Private Key Colin D. Walter Comodo Research Lab (Bradford, UK)
Satisfiability and SAT Solvers CS 270 Math Foundations of CS Jeremy Johnson.
NPC.
Custom Computing Machines for the Set Covering Problem Paper Written By: Christian Plessl and Marco Platzner Swiss Federal Institute of Technology, 2002.
Complexity ©D.Moshkovits 1 2-Satisfiability NOTE: These slides were created by Muli Safra, from OPICS/sat/)
Instructor: Shengyu Zhang 1. Optimization Very often we need to solve an optimization problem.  Maximize the utility/payoff/gain/…  Minimize the cost/penalty/loss/…
The Search for Systems of Diagonal Latin Squares Using the Project Oleg Zaikin, Stepan Kochemazov Matrosov Institute for System Dynamics and Control.
CluBORun: tool for utilizing idle resources of computing clusters in volunteer computing. Maxim Manzyuk, Oleg Zaikin, Mikhail Posypkin Volgograd state.
What kinds of problems are suitable to be solved by desktop grid environment? Alexander Afanasyev The Institute for Information Transmission Problems (Kharkevich.
© 2012 IBM Corporation Perfect Hashing and CNF Encodings of Cardinality Constraints Yael Ben-Haim Alexander Ivrii Oded Margalit Arie Matsliah SAT 2012.
Finite state machine optimization
Finite state machine optimization
Hybrid BDD and All-SAT Method for Model Checking
Oleg Zaikin, Alexander Semenov, Mikhail Posypkin
Intro to Theory of Computation
A Boolean Paradigm in Multi-Valued Logic Synthesis
CS154, Lecture 16: More NP-Complete Problems; PCPs
Where Can We Draw The Line?
Canonical Computation without Canonical Data Structure
Canonical Computation Without Canonical Data Structure
Resolution Proofs for Combinational Equivalence
Canonical Computation without Canonical Data Structure
NP-COMPLETE Prof. Manjusha Amritkar Assistant Professor Department of Information Technology Hope Foundation’s International Institute of Information.
Canonical Computation without Canonical Data Structure
Presentation transcript:

Solving Weakened Cryptanalysis Problems for the Bivium Keystream Generator in the Volunteer Computing Project Oleg Zaikin, Alexander Semenov, Ilya Otpuschennikov ISDCT SB RAS, Irkutsk, Russia

SAT approach There are many practically important problems for which the existence of effective (polynomial) algorithms of their solving has not been proven. Most of these problems are NP-hard. However, many of their special cases arise in practical applications: planning of production; designing and verification of hardware; proving of program correctness. 2

SAT approach Therefore it is very important to have methods for their solving that don't have polynomial complexity, but are effective in practice. Such methods can cope with the numerous special cases of NP-hard problems of huge dimensions. One of the most efficient (in terms of software implementations) is SAT approach. 3

SAT approach SAT approach is based on reducibility of the considered original problem to a Boolean satisfiability problem (SAT), usually in the form of equation CNF=1. Solution of SAT problem is an Boolean vector – assignments of CNF variables which force CNF to become 1. From this assignments one can easily get solution of an original problem. 4

SAT approach Example of CNF with 3 clauses over 5 variables: This CNF is satisfiable, for example on (11001). Real hard SAT problem can consist of thousands variables and millions clauses. Real SAT problem can be unsatisfiable. 5

Logical cryptanalysis In logical cryptanalysis an original problem is reduced to a SAT problem, then after solving SAT problem we can easily obtain secret key from satisfying assignment. Term appeared in 2000 in the paper “Logical Cryptanalysis as a SAT Problem” of Italian researchers Massaci and Mararo. They reduced DES cryptanalysis problem to a SAT problem and successfully solved some weakened problems of DES with the help of SAT solvers. 6

Bivium cipher The Bivium stream cipher uses two shift registers of a special kind. The first register contains 93 cells and the second one contains 84 cells. Cryptanalysis problem: Based on the known fragment of keystream (200 bits) we search for the values of all 177 bits of registers cells. 7

Bivium schema 8

Bivium SAT encoding We used TranAlg tool (developed in ISDCT SB RAS) for constructing SAT encoding for Bivium cryptanalysis problem. Constructed CNF consists of 642 variables and 9560 clauses. First 177 variables encode register state (we need to find it), last 200 encode known keystream. First 177 variables are special: other variables depends on them. 9

Logical cryptanalysis of Bivium cipher Monte Carlo method: choose a set of K variables, solve a small randomly chosen subset of subproblems from 2^K, then make estimation for 2^K. For example, randomly choose and solve 1000 subproblems from 2^40, calculated average time (for 1000 subproblems) and multiply it to 2^40. In a SAT problem encoding cryptanalysis problem for Bivium there is usually 1 satisfying assignment. So, we have to solve about half subproblems (in average) to find this assignment. 10

Logical cryptanalysis of Bivium cipher German researchers (Eibach, Pilz, Vokel) made estimation for Bivium logical cryptanalysis (2008) × 10^13 seconds on one CPU core, set of 45 variables (“manually” found set) Our estimation (2015) × 10^10 seconds on one CPU core, set of 55 variables (automatically found set) 11

Estimations for Bivium We used MPI program PDSAT with tabu search optimization algorithm. PDSAT started from first 177 variables (they encodes register state) then it can add/remove any of these 177 variables. 12

Why weakened cryptanalysis problems? By BiviumK we denote a weakened problem for Bivium with known values of K variables (in corresponding SAT problem) encoding last K cells of the second shift register. Eibach et al solved several Bivium33 problems. It’s quite easy problem (it requires about 1 minute on 1 CPU core). 13

Why weakened cryptanalysis problems? With the help of sets found by PDSAT we solved several Bivium16, Bivum14 and Bivium12 problems (for every such problems own estimation procedure required). Bivium10 is quite hard problem. For Bivium10 we found a set of 40 variables with estimation 6.7 × 10^8 seconds on one CPU core. Estimation for 1000 cluster cores: 186 hours. 14

Solving Bivium10 We launched 3 Bivium10 problems on cluster with time limit 0.01 second for every subproblem. Each problem was running about 2 days on 960 cluster CPU cores. About 1.2 % of subproblems were interrupted (more then 1 billion subproblems). These subproblems were solved in 15

Volunteer computing project Started on September 2011 by ISDCT SB RAS and IITP RAS. Goal - solve hard large-scale problems that can be effectively reduced to SAT. Solved problems: A5/1 logical cryptanalysis problem; New pairs of orthogonal diagonal Latin squares of order 10. App versions: windows, linux

Solving scheme While finding parameters of decomposition we take into account peculiarities of the original problems CNF encoding of the original problem is decomposed into a set of independent CNFs

Solving Bivium10 problems in 3 Bivium10 problems were solved, each for about 2 weeks.

Estimation VS real time For Bivium10 we have similar comparisons.

Conclusions Checking estimations obtained for slightly weakened problem cryptanalysis problems is very important We used cluster for searching decompositions for Bivium10 and for solving small independent subrpoblems We used for solving “hard” independent subproblems for Bivium10 and Bivium9 Results for Bivium10 and Bivium9 show good precise of our estimations, so we can hope than estimation for non-weakened variant is precise too Volunteer computing – is a good tool for solving such weakened problems

Thank you for your attention! 21