Heuristic Optimisation in Design and Analysis John A Clark University of York, UK

Slides:



Advertisements
Similar presentations
Cryptography encryption authentication digital signatures
Advertisements

Local optimization technique G.Anuradha. Introduction The evaluation function defines a quality measure score landscape/response surface/fitness landscape.
G5BAIM Artificial Intelligence Methods
Cryptography, Attacks and Countermeasures Lecture 3 - Stream Ciphers
1 Application of Combinatorial Mathematics to Cryptology: A Personal Journey Ed Dawson Information Security Institute Queensland University of Technology.
FTP Biostatistics II Model parameter estimations: Confronting models with measurements.
Variance reduction techniques. 2 Introduction Simulation models should be coded such that they are efficient. Efficiency in terms of programming ensures.
Tuesday, May 14 Genetic Algorithms Handouts: Lecture Notes Question: when should there be an additional review session?
Gizem ALAGÖZ. Simulation optimization has received considerable attention from both simulation researchers and practitioners. Both continuous and discrete.
CPSC 322, Lecture 16Slide 1 Stochastic Local Search Variants Computer Science cpsc322, Lecture 16 (Textbook Chpt 4.8) February, 9, 2009.
Spie98-1 Evolutionary Algorithms, Simulated Annealing, and Tabu Search: A Comparative Study H. Youssef, S. M. Sait, H. Adiche
Evolutionary Computational Intelligence Lecture 10a: Surrogate Assisted Ferrante Neri University of Jyväskylä.
Genetic algorithms for neural networks An introduction.
Two-Stage Optimisation in the Design of Boolean Functions John A Clark and Jeremy L Jacob Dept. of Computer Science University of York, UK
Ryan Kinworthy 2/26/20031 Chapter 7- Local Search part 1 Ryan Kinworthy CSCE Advanced Constraint Processing.
Optimization via Search CPSC 315 – Programming Studio Spring 2009 Project 2, Lecture 4 Adapted from slides of Yoonsuck Choe.
MAE 552 – Heuristic Optimization Lecture 6 February 6, 2002.
Exploiting the Search Process John A Clark Dept. of Computer Science University of York, UK
Assumptions in the Use of Heuristic Optimisation in Cryptography John A Clark Dept. of Computer Science University of York, UK
Evolving Boolean Functions Satisfying Multiple Criteria John A Clark, Jeremy L Jacob and Susan Stepney (University of York,UK) Subhamoy Maitra (Indian.
Oded Regev Tel-Aviv University On Lattices, Learning with Errors, Learning with Errors, Random Linear Codes, Random Linear Codes, and Cryptography and.
MAE 552 – Heuristic Optimization
1 Protocols are programs too The meta-heuristic search for security protocols By John A. Clark.
Fault Injection and a Timing Channel on an Analysis Technique John A Clark and Jeremy L Jacob Dept. of Computer Science University of York, UK
The Evolution of Protocol Security and Insecurity John A Clark Dept. of Computer Science University of York, UK Canterbury.
Planning operation start times for the manufacture of capital products with uncertain processing times and resource constraints D.P. Song, Dr. C.Hicks.
Protocols are Programs Too: Using GAs to Evolve Secure Protocols John A Clark Dept. of Computer Science University of York, UK
Session 6: Introduction to cryptanalysis part 1. Contents Problem definition Symmetric systems cryptanalysis Particularities of block ciphers cryptanalysis.
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 25 Instructor: Paul Beame.
Challenging Assumptions in the Use of Heuristic Search Techniques in Cryptography John A Clark Dept. of Computer Science University of York, UK
Making and Breaking Security Protocols with Heuristic Optimisation John A Clark Dept. of Computer Science University of York, UK
Problem Warping and Computational Dynamics in the Solution of NP-hard Problems John A Clark Dept. of Computer Science University of York, UK
Cramer-Shoup is Plaintext Aware in the Standard Model Alexander W. Dent Information Security Group Royal Holloway, University of London.
Introduction to Simulated Annealing 22c:145 Simulated Annealing  Motivated by the physical annealing process  Material is heated and slowly cooled.
Optimization via Search CPSC 315 – Programming Studio Spring 2008 Project 2, Lecture 4 Adapted from slides of Yoonsuck Choe.
Metaheuristics The idea: search the solution space directly. No math models, only a set of algorithmic steps, iterative method. Find a feasible solution.
Elements of the Heuristic Approach
D Goforth - COSC 4117, fall Note to 4 th year students  students interested in doing masters degree and those who intend to apply for OGS/NSERC.
Genetic Algorithm.
Evolving a Sigma-Pi Network as a Network Simulator by Justin Basilico.
Genetic Algorithms CS121 Spring 2009 Richard Frankel Stanford University 1.
Stochastic Algorithms Some of the fastest known algorithms for certain tasks rely on chance Stochastic/Randomized Algorithms Two common variations – Monte.
Slides are based on Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems.
1 Local search and optimization Local search= use single current state and move to neighboring states. Advantages: –Use very little memory –Find often.
Heuristic Optimization Methods
Optimization in Engineering Design Georgia Institute of Technology Systems Realization Laboratory Mixed Integer Problems Most optimization algorithms deal.
Dr.Abeer Mahmoud ARTIFICIAL INTELLIGENCE (CS 461D) Dr. Abeer Mahmoud Computer science Department Princess Nora University Faculty of Computer & Information.
1 Simulated Annealing Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations.
Simulated Annealing.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
GENETIC ALGORITHM A biologically inspired model of intelligence and the principles of biological evolution are applied to find solutions to difficult problems.
2005MEE Software Engineering Lecture 11 – Optimisation Techniques.
Taguchi. Abstraction Optimisation of manufacturing processes is typically performed utilising mathematical process models or designed experiments. However,
Local Search Pat Riddle 2012 Semester 2 Patricia J Riddle Adapted from slides by Stuart Russell,
EE749 I ntroduction to Artificial I ntelligence Genetic Algorithms The Simple GA.
Optimization Problems
Learning and Acting with Bayes Nets Chapter 20.. Page 2 === A Network and a Training Data.
D Nagesh Kumar, IIScOptimization Methods: M8L5 1 Advanced Topics in Optimization Evolutionary Algorithms for Optimization and Search.
An Introduction to Simulated Annealing Kevin Cannons November 24, 2005.
Optimization in Engineering Design 1 Introduction to Non-Linear Optimization.
1 Simulated Annealing Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations.
Onlinedeeneislam.blogspot.com1 Design and Analysis of Algorithms Slide # 1 Download From
Escaping Local Optima. Where are we? Optimization methods Complete solutions Partial solutions Exhaustive search Hill climbing Exhaustive search Hill.
Genetic Algorithms An Evolutionary Approach to Problem Solving.
 Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems n Introduction.
School of Computer Science & Engineering
C.-S. Shieh, EC, KUAS, Taiwan
School of Computer Science & Engineering
More on Search: A* and Optimization
Chapter 20. Learning and Acting with Bayes Nets
Presentation transcript:

Heuristic Optimisation in Design and Analysis John A Clark University of York, UK

Overview Basic idea. Brief introduction to heuristic optimisation techniques Examples in design and analysis of cryptosystems and also protocols Further work

Use of Optimisation Techniques Combinatorial optimisation techniques can be used beneficially in a variety of design and analysis tasks: –Real cryptosystem design. –Real cryptanalysis. –Real protocol synthesis.

Design and Analysis as Optimisation Let DS be the design space or search space Let f(y) be a function over the design space that signifies how good (bad) a candidate y is. –measuring goodness we talk in terms of a fitness function –(measuring badness we talk in terms of a cost function) Find z in DS such that f(z)=sup{f(y):y in DS} Traditional techniques such as hill-climbing tend to get stuck in local optima. Need ability to escape from these to achieve global optimum.

Simulated Annealing A local search technique. Current candidate x. At each temperature consider 1000 moves Always accept improving moves Accept worsening moves probabilistically. Gets harder to do this the worse the move. Gets harder as Temp decreases. Temperature cycle

Boolean Function Design Boolean functions used as components of cryptosystems Want to generate functions with ‘nice properties’, e.g. one which cannot be approximated well by any linear Boolean function g (since this can help cryptanalysis)

Boolean Function Design Can calculate the non-linearity (i.e. fitness) of a given function b (by assessing how well it is approximated by each of the 2 n linear functions. Random generation does not perform well. Random generation +hill-climbing gets improvements (e.g. with neighbouring functions obtained by altering the result of one b(x) value) Genetic algorithms have been tried too. Simulated annealing works very well and seems to be able to get other nice properties too (given suitable cost functions)

Boolean Function Design Consider a Boolean function b of three variables A neighbour could be obtained by flipping one of result values.

Maliciously….. Can use these techniques to generate cryptographic elements (e.g. S- Boxes) with good public properties using an honest fitness function –honestFit(x) But also can try to hide useful (but privately known) properties using a malicious fitness function –trapFit(x) Now take combination and do both at the same time Want as low as you can get away with for the next N years! The resulting good properties must still be obvious.

Maliciously….. Publicly good solutions with high trapdoor bias found by annealing and combined honest and trapdoor cost functions. Publicly good solutions, e.g. Boolean functions with same very high non-linearity Publicly good solutions found by annealing and honest cost function Using different cost functions results in solutions being found in different areas of the search space. You can actually tell whether someone has used the cost function they say they have

Cryptanalysis: Pointcheval’s Scheme Zero knowledge protocol based on NP-hard problem A and the histogram are public. If you can recover secret s then the system is broken

Pointcheval’s Scheme Need cost function to indicate how good an x-candidate vector y is. Examples of factors we might like to consider: Non-negativity of Ay elements and histogram agreement Could give negativity punishment of costNeg(y)=|-3|+|-1| =4 Could give histogram punishment of costHist(y)= |3-2|+|1-0|| =2 Now take weighted sum of these costs cost(y)=w 1 costNeg(y)+w 2 costHist(y)

Profiling Annealing Simulated annealing can make progress with this scheme, typically getting solutions with around 80% of the vector entries correct (but don’t know which 80%!!!) But this throws away a lot of information – better to monitor the search process as it cools down. –Observing the process shows that within a temperature cycle proportion of time spent by a variable taking a particular value (-1 say) may tend to be very high, e.g. 95%. –The search process is clearly intent on setting that variable to –1. Accept this and “fix the value” – don’t attempt to move it again. –95% is a reasonable threshold. Can use 98% etc. –Allows efficiency gains since now we consider only non-fixed variables. Also seems to work better than standard annealing in terms of results

Thermo-statistical Trajectories But there is a much stronger observation to make…. Some variables are fixed by this process before others.Why? –Because it is difficult for those variables not to take their fixed values – the search process just doesn’t want to allow it. –There is something about the problem instance that encourages this… –The search process wants to take those values because THEY ARE THE CORRECT ONES. –With certain cost functions and problems the FIRST 50% OF VARIABLE VALUES FIXED IN THIS WAY ARE CORRECT. –Thus, within a few minutes you have half the key. Not always this successful but most cost functions and problems give 25%+ initial correctness.

Radical Viewpoint Analysis Take different viewpoints on the same problem, i.e. different cost functions –cost1(y)=5 costNeg(y)+1 costHist(y) –cost2(y)=3 costNeg(y)+3 costHist(y) –cost3(y)=1 costNeg(y)+5 costHist(y) The cost surface is now different in each case but we still have –cost=0 => problem solved. Now use these to converge on candidate solutions –For suitable chosen functions results typically have between 75-92% correct values. –Now consider those values on which they agree. By taking a large number of different cost functions you can reduce the number of values on which they agree wrongly almost to 0. The rest on which they agree are correct.

Evolving Protocols Recent IEEE S&P Oakland paper using genetic algorithms to evolve abstract protocols (with proofs!). Fitness function is based on number of stated goals met at each message. Random bits strings can be decoded as protocols expressed in BAN-logic formalism and executed. When a receiver gets a message he uses BAN inference rules to update his belief state according to what he knows already and what is in the message. –this is a form of abstract execution

Future Work Genetic Quantum Programming –Applications of quantum search seem to be based on known algorithms, e.g. Grover’s search. –We are currently investigating the evolution of quantum programs (essentially sequences of unitary transformations/matrices) to solve particular problems/evolve new algorithms. –Applications to the evolution of new quantum cryptanalysis techniques? Integrating quantum search and traditional optimisation: –At its simplest let QS find a good starting point and then use traditional techniques to hill climb. Others possible. Statistical profiling of traditional optimisation techniques – potentially a very rich seam to mine (both in analysis and design).