Introduction to Program Obfuscation
|
|
|
- Alannah Neal
- 10 years ago
- Views:
Transcription
1 Introduction to Program Obfuscation p. 1/26 Introduction to Program Obfuscation Yury Lifshits Saint-Petersburg State University yura/
2 Introduction to Program Obfuscation p. 2/26 Some Linguistics Obfuscate: tr.v. -cated, -cating, -cates. 1. a. To render obscure. b. To darken. 2. To confuse: his emotions obfuscated his judgment. [Lat. obfuscare, to darken : ob(intensive) + Lat. fuscare, to darken < fuscus, dark.] -obfuscation n. obfuscatory adj die Benebelung die Trübung die Verdunkelung die Verschleierung - von Tatsachen die Verwirrung In German Obfuscation is
3 Introduction to Program Obfuscation p. 3/26 Overview Introduction: Notion of obfuscation Motivation and applications Research history and commercial obfuscators State-of-the-art: Code tricks Theoretical approach & provable security Conclusions Evaluation of current results and future research
4 Introduction to Program Obfuscation p. 4/26 Notion of Obfuscation An obfuscator: An algorithm O such that for any program P, O(P ) is also a program with following properties: Functionality: The obfuscated program should have the same functionality (that is, input/output behavior) as the input program. Efficiency: The obfuscated program shouldn t be much less efficient than the input program. Obfuscation: This means that the code of the obfuscated program should be hard to understand.
5 Introduction to Program Obfuscation p. 5/26 Applications Protection of constants and data of the program Authentication schemes, e-money, license management Protection from intelligent tampering E-money, license management Algorithms Protection Defence against competitors Viruses modification Making old viruses unrecognizable Private key cryptosystems Public key cryptosystem Basic idea: public key = obfuscated encrypting algorithm of private key cryptosystem
6 Introduction to Program Obfuscation p. 6/26 Motivation to research Practical necessity Wide use of Java byte-code technology New topic: not well developed yet No single generally accepted formal definition of obfuscation exists We hope: there are good obfuscation algorithms Average code is very obfuscated; Rice s theorem; Classically hard problems Famous researchers and institutes are involved Weizmann, Princeton, Stanford; O. Goldreich, P.C. van Oorschot The International Obfuscated C Code Contest Can be approached both in theoretical & practical ways
7 Introduction to Program Obfuscation p. 7/26 Research Highlights 1997 A taxonomy of obfuscating transformations C. Collberg, C. Thomborson, D. Low 2001 Impossibility result B. Barak, O. Goldreich, R. Impagliazzo, S. Rudich, A. Sahai, S. Vadhan and K. Yang First attempt to survey L. D Anna, B. Matt, A. Reisse, T. Van Vleck, S. Schwab and P. LeBlanc. A series of Ph.D Dissertations: G. Wroblewski, D. Low, C. Wang... = Good Ph.D. topic!
8 Introduction to Program Obfuscation p. 8/26 Commercial Obfuscators Most common techniques: name mangling control flow mangling strings encryption SandMark Cloakware, Retroguard, DashO, Klassmaster, yguard & many more... Computers Programming Languages Java Development Tools Obfuscators/
9 Introduction to Program Obfuscation p. 9/26 State-of-the-Art Code transformations Pro et Contra Basic tricks Opaque predicates Flat control flow Theoretic approach Pro et Contra Blackbox security Examples of obfuscation with cryptographic security Other research directions
10 Introduction to Program Obfuscation p. 10/26 Coding transformations Advantages Easy to implement Universal Good against static analysis Disadvantages No guaranteed security Even no hope for that Weak against dynamic attacks
11 Introduction to Program Obfuscation p. 11/26 Simple tricks Split & merge variables, constants, procedures, modules Increase & decrease dimension of arrays Increase & decrease nesting Addressing & dereferencing Renaming Reordering Cloning Strings encrypting
12 Introduction to Program Obfuscation p. 12/26 Opaque predicates Reordering of blocks execution Dead code insertion Inserting new IF operators Opaque predicates: every time the same value. Difficult to discover by automatical static analysis If ((q + q 2 ) mod 2) = 0 then do real work else do dead code If (any boolean expression) then do real work do just the same else
13 Introduction to Program Obfuscation p. 13/26 Control flow flattening Write down a list of all basic blocks Split and merge some of them Enumerate them Replace all calls by indirect pointing: goto block name goto block number-th block goto v-th block Write a single dispatcher to maintain all control flow
14 Introduction to Program Obfuscation p. 14/26 Provable security Good News + Guaranteed security! based on computationally hard problems + Some positive results Bad News Now: only protection of internal constants. P computes f(x, p). Task: protect p. No hope for universal method
15 Introduction to Program Obfuscation p. 15/26 Black-box security Informally: an obfuscator should provide a virtual black-box in the sense that giving a O(P ) code to someone is equivalent to giving him a black box that computes P Just the same: anything that can be learned from the obfuscated form, could have been learned by merely observing the programs input-output behavior (i.e., by treating the program as a black-box). This definition is impossible to meet!
16 Introduction to Program Obfuscation p. 16/26 Interactive access control Directed multi-graph G Each node representing an access point (some abstract secrets & local map inside) Each edge has a password checking on it S is predefined start access point (start node) User: knows some passwords No a priori knowledge about G Begins his way from S
17 Introduction to Program Obfuscation p. 17/26 IAC task for obfuscation The user can reach an access point only by presenting credentials that can take him from the start node to that point. The user gains complete access to a function or secret available at an access point if and only if the user has reached that access point. The user does not learn anything about the structure of the graph, except what is revealed by the secrets at the access points he reached and the edges he traversed. Result[2004]: Black-box security achieved! Security based on (existence of) pseudorandom functions
18 Introduction to Program Obfuscation p. 18/26 Hiding password checking Program Π: var x:string, y:bit; input(x); y:=0; output(y); Family of Programs Π k : var x:string, y:bit; input(x); if k = w then y := 1 else y := 0; output(y); Task: make these programs indistinguishable Result[2001]: Any probabilistic polynomial algorithm can recognize the actual case with at most 1/2 + neg(size of pass) probability. Based on (existing of) one-way permutations.
19 Introduction to Program Obfuscation p. 19/26 Not in this talk Secure architectures approach new presentation forms to distribute programs Obfuscation in multiparty systems splitting program to the set of communicating programs Making disassembling harder
20 Introduction to Program Obfuscation p. 20/26 Conclusions Evaluation of the current results Important research directions Some useful links
21 Introduction to Program Obfuscation p. 21/26 Has been already done Many coding transformations Obscuring static analysis Some obfuscations with cryptographic security First steps from general method to attack-dependent obfuscation
22 Introduction to Program Obfuscation p. 22/26 Necessary to do Measuring quality of obfuscation algorithms Evaluating of existing methods Now: only code complexity metrics Study of deobfuscation algorithms Finding hard problems for code analysis Universal mathematical model Cryptographic (computational) security for obfuscation
23 Introduction to Program Obfuscation p. 23/26 Best links to start with L. D Anna, B. Matt, A. Reisse, T. Van Vleck, S. Schwab and P. LeBlanc. Self-protecting mobile agents obfuscation report. Technical Report #03-015, Network Associates Labs, June 2003: Code Obfuscation presentation by Mayur Kamat & Nishant Kumat: reddy/ee689_04/pres_mayur_nishant.pdf Obfuscators subdirectory of Dmoz.org: Development_Tools/Obfuscators/ Resources on Obfuscation (huge collection of links to related papers, books & companies): hshen2/ (resources section)
24 Introduction to Program Obfuscation p. 24/26 The End Thanks for your attention!
25 Introduction to Program Obfuscation p. 25/26 Question Time???????
26 Introduction to Program Obfuscation p. 26/26 Not covered by the talk Program Obfuscation as a part of Software Protection Operations on obfuscated code Micro-obfuscation: functions, procedures, data structures Adversary knowledge about the program Nonfunctional models of a program. Cost of the obfuscation Potential of obfuscation What can obfuscation change in the program? Different behavior on different runs (internal memory of the program). Nondeterministic nature of the obfuscator Efficiency of obfuscating transformations Obfuscatable program properties (e.g. set of all possible output values) Obfuscation by hiding small procedure in the big one (in steganographic style)
Applications of obfuscation to software and hardware systems
Applications of obfuscation to software and hardware systems Victor P. Ivannikov Institute for System Programming Russian Academy of Sciences (ISP RAS) www.ispras.ru Program obfuscation is an efficient
Guaranteed Slowdown, Generalized Encryption Scheme, and Function Sharing
Guaranteed Slowdown, Generalized Encryption Scheme, and Function Sharing Yury Lifshits July 10, 2005 Abstract The goal of the paper is to construct mathematical abstractions of different aspects of real
Design of Java Obfuscator MANGINS++ - A novel tool to secure code
J. Comp. & Math. Sci. Vol. 1 (6), 646-652 (2010) Design of Java Obfuscator MANGINS++ - A novel tool to secure code HARSHA VARDHAN RAJENDRAN, CH KALYAN CHANDRA and R. SENTHIL KUMAR School of Computing Sciences
Code Obfuscation. Mayur Kamat Nishant Kumar
Code Obfuscation Mayur Kamat Nishant Kumar Agenda Malicious Host Problem Code Obfuscation Watermarking and Tamper Proofing Market solutions Traditional Network Security Problem Hostile Network Malicious
Software Protection through Code Obfuscation
Software Protection through Code Obfuscation Dissertation submitted in partial fulfillment of the requirements for the degree of Master of Technology, Computer Engineering by Aniket Kulkarni Roll No: 121022016
Implementation of an Obfuscation Tool for C/C++ Source Code Protection on the XScale Architecture *
Implementation of an Obfuscation Tool for C/C++ Source Code Protection on the XScale Architecture * Seongje Cho, Hyeyoung Chang, and Yookun Cho 1 Dept. of Computer Science & Engineering, Dankook University,
Non-Black-Box Techniques In Crytpography. Thesis for the Ph.D degree Boaz Barak
Non-Black-Box Techniques In Crytpography Introduction Thesis for the Ph.D degree Boaz Barak A computer program (or equivalently, an algorithm) is a list of symbols a finite string. When we interpret a
Obfuscation: know your enemy
Obfuscation: know your enemy Ninon EYROLLES [email protected] Serge GUELTON [email protected] Prelude Prelude Plan 1 Introduction What is obfuscation? 2 Control flow obfuscation 3 Data flow
Surreptitious Software
Surreptitious Software Obfuscation, Watermarking, and Tamperproofing for Software Protection Christian Collberg Jasvir Nagra rw T Addison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco
Code Obfuscation Literature Survey
Code Obfuscation Literature Survey Arini Balakrishnan, Chloe Schulze CS701 Construction of Compilers, Instructor: Charles Fischer Computer Sciences Department University of Wisconsin, Madison December
Specifying Imperative Data Obfuscations
Specifying Imperative Data Obfuscations Stephen Drape, Clark Thomborson and Anirban Majumdar Department of Computer Science, The University of Auckland, New Zealand. Abstract. An obfuscation aims to transform
Software Code Protection Through Software Obfuscation
Software Code Protection Through Software Obfuscation Presented by: Sabu Emmanuel, PhD School of Computer Engineering Nanyang Technological University, Singapore E-mail: [email protected] 20, Mar,
SOURCE CODE OBFUSCATION BY MEAN OF EVOLUTIONARY ALGORITHMS
SOURCE CODE OBFUSCATION BY MEAN OF EVOLUTIONARY ALGORITHMS Sébastien Martinez 2011 Tutor : Sébastien Varrette Advisor : Benoît Bertholon University of Luxembourg, Faculty of Sciences, Technologies and
Ch.9 Cryptography. The Graduate Center, CUNY.! CSc 75010 Theoretical Computer Science Konstantinos Vamvourellis
Ch.9 Cryptography The Graduate Center, CUNY! CSc 75010 Theoretical Computer Science Konstantinos Vamvourellis Why is Modern Cryptography part of a Complexity course? Short answer:! Because Modern Cryptography
Static Analysis of Virtualization- Obfuscated Binaries
Static Analysis of Virtualization- Obfuscated Binaries Johannes Kinder School of Computer and Communication Sciences École Polytechnique Fédérale de Lausanne (EPFL), Switzerland Virtualization Obfuscation
On the Concept of Software Obfuscation in Computer Security
On the Concept of Software Obfuscation in Computer Security Nikolay Kuzurin 1, Alexander Shokurov 1, Nikolay Varnovsky 2, and Vladimir Zakharov 2 1 Institute for System Programming, Moscow, Russia 2 Lomonosov
Theory and Practice of Program Obfuscation
18 Theory and Practice of Program Obfuscation Xuesong Zhang, Fengling He and Wanli Zuo JiLin University China 1. Introduction Software piracy has long been a confusing challenge to the software industry;
Computational Soundness of Symbolic Security and Implicit Complexity
Computational Soundness of Symbolic Security and Implicit Complexity Bruce Kapron Computer Science Department University of Victoria Victoria, British Columbia NII Shonan Meeting, November 3-7, 2013 Overview
Lecture 15 - Digital Signatures
Lecture 15 - Digital Signatures Boaz Barak March 29, 2010 Reading KL Book Chapter 12. Review Trapdoor permutations - easy to compute, hard to invert, easy to invert with trapdoor. RSA and Rabin signatures.
Lecture 9 - Message Authentication Codes
Lecture 9 - Message Authentication Codes Boaz Barak March 1, 2010 Reading: Boneh-Shoup chapter 6, Sections 9.1 9.3. Data integrity Until now we ve only been interested in protecting secrecy of data. However,
Obfuscating C++ Programs via Control Flow Flattening
Obfuscating C++ Programs via Control Flow Flattening Tímea László and Ákos Kiss University of Szeged, Department of Software Engineering Árpád tér 2., H-6720 Szeged, Hungary [email protected],
Lecture 2: Complexity Theory Review and Interactive Proofs
600.641 Special Topics in Theoretical Cryptography January 23, 2007 Lecture 2: Complexity Theory Review and Interactive Proofs Instructor: Susan Hohenberger Scribe: Karyn Benson 1 Introduction to Cryptography
Overview of Cryptographic Tools for Data Security. Murat Kantarcioglu
UT DALLAS Erik Jonsson School of Engineering & Computer Science Overview of Cryptographic Tools for Data Security Murat Kantarcioglu Pag. 1 Purdue University Cryptographic Primitives We will discuss the
Cryptography and Network Security Department of Computer Science and Engineering Indian Institute of Technology Kharagpur
Cryptography and Network Security Department of Computer Science and Engineering Indian Institute of Technology Kharagpur Module No. # 01 Lecture No. # 05 Classic Cryptosystems (Refer Slide Time: 00:42)
What is Software Watermarking? Software Watermarking Through Register Allocation: Implementation, Analysis, and Attacks
hat is Software atermarking? Software atermarking Through Register Allocation: Implementation, Analysis, and Attacks Ginger Myles Christian Collberg {mylesg,collberg}@cs.arizona.edu University of Arizona
An Overview of Common Adversary Models
An Overview of Common Adversary Karl Palmskog [email protected] 2012-03-29 Introduction Requirements of Software Systems 1 Functional Correctness: partial, termination, liveness, safety,... 2 Nonfunctional
Using Evolutionary Algorithms to obfuscate code
Using Evolutionary Algorithms to obfuscate code Benoît Bertholon 1, Sébastien Varrette 2 et Pascal Bouvry 2 1 Security and Trust (SnT) interdisciplinary center, 2 Computer Science and Communication (CSC)
Lecture 11: The Goldreich-Levin Theorem
COM S 687 Introduction to Cryptography September 28, 2006 Lecture 11: The Goldreich-Levin Theorem Instructor: Rafael Pass Scribe: Krishnaprasad Vikram Hard-Core Bits Definition: A predicate b : {0, 1}
OBFUSCATING C++ PROGRAMS VIA CONTROL FLOW FLATTENING
Annales Univ. Sci. Budapest., Sect. Comp. 30 (2009) 3-19 OBFUSCATING C++ PROGRAMS VIA CONTROL FLOW FLATTENING T. László and Á. Kiss (Szeged, Hungary) Abstract. Protecting a software from unauthorized access
Block encryption. CS-4920: Lecture 7 Secret key cryptography. Determining the plaintext ciphertext mapping. CS4920-Lecture 7 4/1/2015
CS-4920: Lecture 7 Secret key cryptography Reading Chapter 3 (pp. 59-75, 92-93) Today s Outcomes Discuss block and key length issues related to secret key cryptography Define several terms related to secret
RE-TRUST. PoliTO Prototypes Overview. Paolo Falcarin, Stefano DiCarlo Alessandro Cabutto, Nicola Garazzino, Davide Barberis
RE-TRUST PoliTO Prototypes Overview Paolo Falcarin, Stefano DiCarlo Alessandro Cabutto, Nicola Garazzino, Davide Barberis RE-TRUST meeting Paris, Dec 2008 RE-TRUST Project Many prototypes developed: 1.
Obfuscation of Abstract Data-Types
Obfuscation of Abstract Data-Types Stephen Drape St John s College Thesis submitted for the degree of Doctor of Philosophy at the University of Oxford Trinity Term 2004 Obfuscation of Abstract Data Types
Developing and Investigation of a New Technique Combining Message Authentication and Encryption
Developing and Investigation of a New Technique Combining Message Authentication and Encryption Eyas El-Qawasmeh and Saleem Masadeh Computer Science Dept. Jordan University for Science and Technology P.O.
Advanced Cryptography
Family Name:... First Name:... Section:... Advanced Cryptography Final Exam July 18 th, 2006 Start at 9:15, End at 12:00 This document consists of 12 pages. Instructions Electronic devices are not allowed.
Textbooks: Matt Bishop, Introduction to Computer Security, Addison-Wesley, November 5, 2004, ISBN 0-321-24744-2.
CSET 4850 Computer Network Security (4 semester credit hours) CSET Elective IT Elective Current Catalog Description: Theory and practice of network security. Topics include firewalls, Windows, UNIX and
Paillier Threshold Encryption Toolbox
Paillier Threshold Encryption Toolbox October 23, 2010 1 Introduction Following a desire for secure (encrypted) multiparty computation, the University of Texas at Dallas Data Security and Privacy Lab created
Lecture 5 - CPA security, Pseudorandom functions
Lecture 5 - CPA security, Pseudorandom functions Boaz Barak October 2, 2007 Reading Pages 82 93 and 221 225 of KL (sections 3.5, 3.6.1, 3.6.2 and 6.5). See also Goldreich (Vol I) for proof of PRF construction.
Man at the end (MATE) attacks are an understudied
E X P E R T O P I N I O N Editor: Fei-Yue Wang, Chinese Academy of Sciences, [email protected] Toward Digital Asset Protection Christian Collberg, University of Arizona Jack Davidson, University of Virginia
CIS 6930 Emerging Topics in Network Security. Topic 2. Network Security Primitives
CIS 6930 Emerging Topics in Network Security Topic 2. Network Security Primitives 1 Outline Absolute basics Encryption/Decryption; Digital signatures; D-H key exchange; Hash functions; Application of hash
A Secure Decentralized Access Control Scheme for Data stored in Clouds
A Secure Decentralized Access Control Scheme for Data stored in Clouds Priyanka Palekar 1, Abhijeet Bharate 2, Nisar Anjum 3 1 SKNSITS, University of Pune 2 SKNSITS, University of Pune 3 SKNSITS, University
Software Reverse Engineering
Software Reverse Engineering Jacco Krijnen June 19, 2013 Abstract While reverse engineering probably started with the analysis of hardware, today it plays a significant role in the software world. We discuss
Arnab Roy Fujitsu Laboratories of America and CSA Big Data WG
Arnab Roy Fujitsu Laboratories of America and CSA Big Data WG 1 Security Analytics Crypto and Privacy Technologies Infrastructure Security 60+ members Framework and Taxonomy Chair - Sree Rajan, Fujitsu
CUNSHENG DING HKUST, Hong Kong. Computer Security. Computer Security. Cunsheng DING, HKUST COMP4631
Cunsheng DING, HKUST Lecture 08: Key Management for One-key Ciphers Topics of this Lecture 1. The generation and distribution of secret keys. 2. A key distribution protocol with a key distribution center.
Obfuscation for Cryptographic Purposes
Obfuscation for Cryptographic Purposes Dennis Hofheinz 1, John Malone-Lee 2,andMartijnStam 3 1 CWI, Amsterdam, [email protected] 2 University of Bristol, [email protected] 3 EPFL, Lausanne, [email protected]
Dr. Jinyuan (Stella) Sun Dept. of Electrical Engineering and Computer Science University of Tennessee Fall 2010
CS 494/594 Computer and Network Security Dr. Jinyuan (Stella) Sun Dept. of Electrical Engineering and Computer Science University of Tennessee Fall 2010 1 Introduction to Cryptography What is cryptography?
The Mathematics of the RSA Public-Key Cryptosystem
The Mathematics of the RSA Public-Key Cryptosystem Burt Kaliski RSA Laboratories ABOUT THE AUTHOR: Dr Burt Kaliski is a computer scientist whose involvement with the security industry has been through
Non-interactive and Reusable Non-malleable Commitment Schemes
Non-interactive and Reusable Non-malleable Commitment Schemes Ivan Damgård a Jens Groth b June 16, 2003 Abstract We consider non-malleable (NM) and universally composable (UC) commitment schemes in the
MULTIFACTOR AUTHENTICATION FOR SOFTWARE PROTECTION
Diyala Journal of Engineering Sciences Second Engineering Scientific Conference College of Engineering University of Diyala 16-17 December. 2015, pp. 479-492 ISSN 1999-8716 Printed in Iraq MULTIFACTOR
YALE UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE
YALE UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE CPSC 467a: Cryptography and Computer Security Notes 1 (rev. 1) Professor M. J. Fischer September 3, 2008 1 Course Overview Lecture Notes 1 This course is
IMPROVED SECURITY MEASURES FOR DATA IN KEY EXCHANGES IN CLOUD ENVIRONMENT
INTERNATIONAL JOURNAL OF RESEARCH IN COMPUTER APPLICATIONS AND ROBOTICS ISSN 2320-7345 IMPROVED SECURITY MEASURES FOR DATA IN KEY EXCHANGES IN CLOUD ENVIRONMENT Merlin Shirly T 1, Margret Johnson 2 1 PG
Lecture 12: Software protection techniques. Software piracy protection Protection against reverse engineering of software
Lecture topics Software piracy protection Protection against reverse engineering of software Software piracy Report by Business Software Alliance for 2001: Global economic impact of software piracy was
Privacy and Security in library RFID Issues, Practices and Architecture
Privacy and Security in library RFID Issues, Practices and Architecture David Molnar and David Wagner University of California, Berkeley CCS '04 October 2004 Overview Motivation RFID Background Library
Cryptography and Network Security
Cryptography and Network Security Spring 2012 http://users.abo.fi/ipetre/crypto/ Lecture 1: Introduction Ion Petre Department of IT, Åbo Akademi University January 10, 2012 1 Motto Unfortunately, the technical
for Malware Analysis Daniel Quist Lorie Liebrock New Mexico Tech Los Alamos National Laboratory
Visualizing Compiled Executables for Malware Analysis Daniel Quist Lorie Liebrock New Mexico Tech Los Alamos National Laboratory Overview Explanation of Problem Overview of Reverse Engineering Process
Yale University Department of Computer Science
Yale University Department of Computer Science On Backtracking Resistance in Pseudorandom Bit Generation (preliminary version) Michael J. Fischer Michael S. Paterson Ewa Syta YALEU/DCS/TR-1466 October
Adversary Modelling 1
Adversary Modelling 1 Evaluating the Feasibility of a Symbolic Adversary Model on Smart Transport Ticketing Systems Authors Arthur Sheung Chi Chan, MSc (Royal Holloway, 2014) Keith Mayes, ISG, Royal Holloway
DATA OBFUSCATION. What is data obfuscation?
DATA OBFUSCATION What data obfuscation? Data obfuscations break the data structures used in the program and encrypt literals. Th method includes modifying inheritance relations, restructuring arrays, etc.
Bypassing Local Windows Authentication to Defeat Full Disk Encryption. Ian Haken
Bypassing Local Windows Authentication to Defeat Full Disk Encryption Ian Haken Who Am I? Currently a security researcher at Synopsys, working on application security tools and Coverity s static analysis
Module 10. Coding and Testing. Version 2 CSE IIT, Kharagpur
Module 10 Coding and Testing Lesson 23 Code Review Specific Instructional Objectives At the end of this lesson the student would be able to: Identify the necessity of coding standards. Differentiate between
Lecture 3: One-Way Encryption, RSA Example
ICS 180: Introduction to Cryptography April 13, 2004 Lecturer: Stanislaw Jarecki Lecture 3: One-Way Encryption, RSA Example 1 LECTURE SUMMARY We look at a different security property one might require
Cryptosystems. Bob wants to send a message M to Alice. Symmetric ciphers: Bob and Alice both share a secret key, K.
Cryptosystems Bob wants to send a message M to Alice. Symmetric ciphers: Bob and Alice both share a secret key, K. C= E(M, K), Bob sends C Alice receives C, M=D(C,K) Use the same key to decrypt. Public
Lecture 1: Introduction. CS 6903: Modern Cryptography Spring 2009. Nitesh Saxena Polytechnic University
Lecture 1: Introduction CS 6903: Modern Cryptography Spring 2009 Nitesh Saxena Polytechnic University Outline Administrative Stuff Introductory Technical Stuff Some Pointers Course Web Page http://isis.poly.edu/courses/cs6903-s10
Introduction. Digital Signature
Introduction Electronic transactions and activities taken place over Internet need to be protected against all kinds of interference, accidental or malicious. The general task of the information technology
Network Security. Security Attacks. Normal flow: Interruption: 孫 宏 民 [email protected] Phone: 03-5742968 國 立 清 華 大 學 資 訊 工 程 系 資 訊 安 全 實 驗 室
Network Security 孫 宏 民 [email protected] Phone: 03-5742968 國 立 清 華 大 學 資 訊 工 程 系 資 訊 安 全 實 驗 室 Security Attacks Normal flow: sender receiver Interruption: Information source Information destination
Outline. CSc 466/566. Computer Security. 8 : Cryptography Digital Signatures. Digital Signatures. Digital Signatures... Christian Collberg
Outline CSc 466/566 Computer Security 8 : Cryptography Digital Signatures Version: 2012/02/27 16:07:05 Department of Computer Science University of Arizona [email protected] Copyright c 2012 Christian
Designing a Secure Client-Server System Master of Science Thesis in the Programme Software Engineering & Technology
Designing a Secure Client-Server System Master of Science Thesis in the Programme Software Engineering & Technology FREDRIK ANDERSSON Department of Computer Science and Engineering CHALMERS UNIVERSITY
Assessment Plan for CS and CIS Degree Programs Computer Science Dept. Texas A&M University - Commerce
Assessment Plan for CS and CIS Degree Programs Computer Science Dept. Texas A&M University - Commerce Program Objective #1 (PO1):Students will be able to demonstrate a broad knowledge of Computer Science
CSE331: Introduction to Networks and Security. Lecture 20 Fall 2006
CSE331: Introduction to Networks and Security Lecture 20 Fall 2006 Announcements Homework 2 has been assigned: **NEW DUE DATE** It's now due on Friday, November 3rd. Midterm 2 is Friday, November 10th
CS 361S - Network Security and Privacy Spring 2014. Homework #1
CS 361S - Network Security and Privacy Spring 2014 Homework #1 Due: 11am CST (in class), February 11, 2014 YOUR NAME: Collaboration policy No collaboration is permitted on this assignment. Any cheating
Hash Functions. Integrity checks
Hash Functions EJ Jung slide 1 Integrity checks Integrity vs. Confidentiality! Integrity: attacker cannot tamper with message! Encryption may not guarantee integrity! Intuition: attacker may able to modify
How to Prove a Theorem So No One Else Can Claim It
Proceedings of the International Congress of Mathematicians Berkeley, California, USA, 1986 How to Prove a Theorem So No One Else Can Claim It MANUEL BLUM Goldwasser, Micali, and Rackoff [GMR] define for
Penetration Testing: Lessons from the Field
Penetration Testing: Lessons from the Field CORE SECURITY TECHNOLOGIES SCS SERVICES May 2009 1 Agenda: About me: Alberto Soliño Director of Security Consulting Services at Core Security One of first five
Obfuscation by Partial Evaluation of Distorted Interpreters
Obfuscation by Partial Evaluation of Distorted Interpreters Neil D. Jones DIKU, University of Copenhagen (prof. emeritus) Joint work with Roberto Giacobazzi and Isabella Mastroeni University of Verona
k-gram Based Software Birthmarks
k-gram Based Software Birthmarks 2005 ACM Symposium on Applied Computing Ginger Myles Christian Collberg Department of Computer Science University of Arizona Tucson, AZ 85721 {mylesg,collberg}@cs.arizona.edu
Computer and Network Security. Alberto Marchetti Spaccamela
Computer and Network Security Alberto Marchetti Spaccamela Slides are strongly based on material by Amos Fiat Good crypto courses on the Web with interesting material on web site of: Ron Rivest, MIT Dan
Security in Android apps
Security in Android apps Falco Peijnenburg (3749002) August 16, 2013 Abstract Apps can be released on the Google Play store through the Google Developer Console. The Google Play store only allows apps
An Intermediate Level Obfuscation Method
An Intermediate Level Obfuscation Method Dmitriy Dunaev, László Lengyel Budapest University of Technology and Economics Department of Automation and Applied Informatics Magyar tudósok krt. 2, H-1117 Budapest,
Network Security CS 5490/6490 Fall 2015 Lecture Notes 8/26/2015
Network Security CS 5490/6490 Fall 2015 Lecture Notes 8/26/2015 Chapter 2: Introduction to Cryptography What is cryptography? It is a process/art of mangling information in such a way so as to make it
Victor Shoup Avi Rubin. fshoup,[email protected]. Abstract
Session Key Distribution Using Smart Cards Victor Shoup Avi Rubin Bellcore, 445 South St., Morristown, NJ 07960 fshoup,[email protected] Abstract In this paper, we investigate a method by which smart
Cryptographic mechanisms
General Secretariat for National Defence Central Directorate for Information Systems Security PRIME MINISTER Paris, 2007 september 14 No. 1904/SGDN/DCSSI/SDS/LCR Cryptographic mechanisms Rules and recommendations
Lecture 10: CPA Encryption, MACs, Hash Functions. 2 Recap of last lecture - PRGs for one time pads
CS 7880 Graduate Cryptography October 15, 2015 Lecture 10: CPA Encryption, MACs, Hash Functions Lecturer: Daniel Wichs Scribe: Matthew Dippel 1 Topic Covered Chosen plaintext attack model of security MACs
Network Security. Gaurav Naik Gus Anderson. College of Engineering. Drexel University, Philadelphia, PA. Drexel University. College of Engineering
Network Security Gaurav Naik Gus Anderson, Philadelphia, PA Lectures on Network Security Feb 12 (Today!): Public Key Crypto, Hash Functions, Digital Signatures, and the Public Key Infrastructure Feb 14:
Fundamentals of Computer Security
Fundamentals of Computer Security Spring 2015 Radu Sion Intro Encryption Hash Functions A Message From Our Sponsors Fundamentals System/Network Security, crypto How do things work Why How to design secure
Design Notes for an Efficient Password-Authenticated Key Exchange Implementation Using Human-Memorable Passwords
Design Notes for an Efficient Password-Authenticated Key Exchange Implementation Using Human-Memorable Passwords Author: Paul Seymer CMSC498a Contents 1 Background... 2 1.1 HTTP 1.0/1.1... 2 1.2 Password
