Background on security

Slides:



Advertisements
Similar presentations
SECURITY AND VERIFICATION Lecture 4: Cryptography proofs in context Tamara Rezk INDES TEAM, INRIA January 24 th, 2012.
Advertisements

ITIS 6200/ Secure multiparty computation – Alice has x, Bob has y, we want to calculate f(x, y) without disclosing the values – We can only do.
CS555Topic 241 Cryptography CS 555 Topic 24: Secure Function Evaluation.
CS555Topic 191 Cryptography CS 555 Topic 19: Formalization of Public Key Encrpytion.
1 Cryptanalysis-tolerant CPA crypt. ● Suppose E, E’ are two encryption schemes which on of them is CPA - secure  E.g., a standard and a proprietary, a.
Security Definitions in Computational Cryptography
1 Introduction CSE 5351: Introduction to cryptography Reading assignment: Chapter 1 of Katz & Lindell.
Foundations of Cryptography Lecture 13 Lecturer: Moni Naor.
Introduction to Modern Cryptography, Lecture 12 Secure Multi-Party Computation.
Lecture 3.3: Public Key Cryptography III CS 436/636/736 Spring 2012 Nitesh Saxena.
7. Asymmetric encryption-
David Evans CS588: Security and Privacy University of Virginia Computer Science Lecture 11: Birthday Paradoxes.
CS426Fall 2010/Lecture 351 Computer Security CS 426 Lecture 35 Commitment & Zero Knowledge Proofs.
CMSC 414 Computer and Network Security Lecture 6 Jonathan Katz.
CMSC 414 Computer (and Network) Security Lecture 2 Jonathan Katz.
CMSC 414 Computer and Network Security Lecture 7 Jonathan Katz.
The RSA Cryptosystem and Factoring Integers (II) Rong-Jaye Chen.
Co-operative Private Equality Test(CPET) Ronghua Li and Chuan-Kun Wu (received June 21, 2005; revised and accepted July 4, 2005) International Journal.
A Designer’s Guide to KEMs Alex Dent
Asymmetric Cryptography part 1 & 2 Haya Shulman Many thanks to Amir Herzberg who donated some of the slides from
RC4 1 RC4 RC4 2 RC4  Invented by Ron Rivest o “RC” is “Ron’s Code” or “Rivest Cipher”  A stream cipher  Generate keystream byte at a step o Efficient.
1 Lecture #10 Public Key Algorithms HAIT Summer 2005 Shimrit Tzur-David.
Intro To Encryption Exercise 1. Monoalphabetic Ciphers Examples:  Caesar Cipher  At Bash  PigPen (Will be demonstrated)  …
CMSC 414 Computer and Network Security Lecture 6 Jonathan Katz.
CMSC 414 Computer and Network Security Lecture 7 Jonathan Katz.
Fall 2010/Lecture 311 CS 426 (Fall 2010) Public Key Encryption and Digital Signatures.
1 CIS 5371 Cryptography 9. Data Integrity Techniques.
CS555Spring 2012/Topic 41 Cryptography CS 555 Topic 4: Computational Approach to Cryptography.
Cramer-Shoup is Plaintext Aware in the Standard Model Alexander W. Dent Information Security Group Royal Holloway, University of London.
Computer Science CSC 474Dr. Peng Ning1 CSC 474 Information Systems Security Topic 2.5 Public Key Algorithms.
0x1A Great Papers in Computer Security
Public Key Model 8. Cryptography part 2.
1 CIS 5371 Cryptography 8. Asymmetric encryption-.
CMSC 414 Computer and Network Security Lecture 3 Jonathan Katz.
8. Data Integrity Techniques
Cryptography Lecture 8 Stefan Dziembowski
Secure Database System. Introduction Database-as-a-Service is gaining popularity – Amazon Relational Database Service (RDS) – Microsoft SQL Azure DB Service.
Secure Cloud Database. Introduction Cloud computing – IT as a service from third party service provider Security in cloud environment – Adversary corrupts.
10/1/2015 9:38:06 AM1AIIS. OUTLINE Introduction Goals In Cryptography Secrete Key Cryptography Public Key Cryptograpgy Digital Signatures 2 10/1/2015.
Secure Cloud Database using Multiparty Computation.
Secure Incremental Maintenance of Distributed Association Rules.
Public Key Encryption and the RSA Public Key Algorithm CSCI 5857: Encoding and Encryption.
Public-Key Cryptography CS110 Fall Conventional Encryption.
Wai Kit Wong 1, Ben Kao 2, David W. Cheung 2, Rongbin Li 2, Siu Ming Yiu 2 1 Hang Seng Management College, Hong Kong 2 University of Hong Kong.
Tools for Privacy Preserving Distributed Data Mining
Wai Kit Wong, Ben Kao, David W. Cheung, Rongbin Li, Siu Ming Yiu.
1 Lect. 13 : Public Key Encryption RSA ElGamal. 2 Shamir Rivest Adleman RSA Public Key Systems  RSA is the first public key cryptosystem  Proposed in.
Secure Cloud Database with Sense of Security. Introduction Cloud computing – IT as a service from third party service provider Security in cloud environment.
Classical Crypto By: Luong-Sorin VA, IMIT Dith Nimol, IMIT.
CMSC 414 Computer and Network Security Lecture 5 Jonathan Katz.
IND-CPA and IND-CCA Concepts Summary  Basic Encryption Security Definition: IND-CPA  Strong Encryption Security Definition: IND-CCA  IND-CPA, IND-CCA.
Secure Database System. Introduction Demand of secure database systems – Cloud computing Database-as-a-Service Current cloud database systems – Amazon.
15-499Page :Algorithms and Applications Cryptography I – Introduction – Terminology – Some primitives – Some protocols.
Secure Query Processing in an Untrusted (Cloud) Environment.
CS426Fall 2010/Lecture 251 Computer Security CS 426 Lecture 26 Review of Some Mid-Term Problems.
Security in Outsourced Association Rule Mining. Agenda  Introduction  Approximate randomized technique  Encryption  Summary and future work.
Tae-Joon Kim Jong yun Jun
Introduction to Elliptic Curve Cryptography CSCI 5857: Encoding and Encryption.
Cryptography Lecture 3 Arpita Patra © Arpita Patra.
Cryptography services Lecturer: Dr. Peter Soreanu Students: Raed Awad Ahmad Abdalhalim
Multi-Party Computation r n parties: P 1,…,P n  P i has input s i  Parties want to compute f(s 1,…,s n ) together  P i doesn’t want any information.
MPC Cloud Database with Sense of Security. Introduction Cloud computing – IT as a service from third party service provider Security in cloud environment.
Topic 36: Zero-Knowledge Proofs
Security in Outsourcing of Association Rule Mining
Authenticated encryption
Modern symmetric-key Encryption
Cryptography Lecture 26.
Cryptography Lecture 4.
Cryptography Lecture 22.
Cryptography Lecture 25.
Presentation transcript:

Background on security

Definition of security Attacker’s knowledge/capability The attacker observes a set of encrypted values only – Ciphertext-only attack (COA) Suitable for most real life applications The attacker can generate the encrypted values of any plaintext of his choice – chosen-plaintext attack (CPA) Baseline for public key cryptosystem. The attacker can use the public key to generate as many as he wants Attacker’s goal To derive information about the plaintext, any information is fine – semantic security E.g., knowing one’s salary > 50k/month but not exact value may be a security concern (A malicious data mining service provider) To return a wrong answer to the user - integrity

Some facts There isn’t really a formal method to prove the security against COA People prefer provable security There is always a brute-force attack w.r.t. CPA Try all the keys and find the one that matches all plaintext-ciphertext pairs. Security under CPA means the attack is a (proven) hard problem

Views from crypto We do not know what the attacker knows Better prepare for the worst Require provable semantic security under a strong attack model (at least CPA)

Semantic security Definition: no information about the plaintext (except the size) is leaked to the attacker An proven equivalent definition – indistinguishability (IND) Given two encrypted values, the attacker cannot distinguish them Remark: Semantic security under CPA is often written as IND-CPA

Security game IND-XXX can be modeled as a game The attacker generates two messages m0 and m1 and send them to the key owner The key owner randomly chooses 1 message and encrypts it, c = E(mi) With c, the attacker guesses which plain message c corresponds to Secure if Pr(guess correct) <= 0.5 + ε Where ε is a negligible value, often in the form of 1/xk Note: x is a constant, k is key length

Security vs performance In general (but not proven), a more secure scheme is more expensive Fact 1: Non-deterministic encryption must be required for semantic security Deterministic encryption E(x1) = E(x2) iff x1 = x2 One-to-one mapping Onto function most of the time Simple attack The attacker generates g0 = E(m0), g1 = E(m1) If gi = c, answer i Pr(guess correct) = 100% 1 a 1 2 b 2 3 c 3 d

Security vs performance Non-deterministic encryption One-to-many mapping Problem: Ciphertext is longer Storage cost and processing cost are thus higher 1 a 1 b c d 2 2 e f g 3 3 h

Example RSA is a deterministic function RSA is not semantic secure Public key: <e, n>, private key <d, n> E(x) = xe mod n D(y) = yd mod n RSA is not semantic secure

RSA with padding When the industry refer to RSA, is it actually RSA with padding The padding scheme is optimal asymmetric encryption padding (OAEP) Proven IND-CCA2 (a high security definition) Example of simpler padding Encryption: Input: m Generate random r Let c = r xor m Ciphertext: c||E(r) Decryption y = c||E(r) Recover r from D(E(r)) Decrypted message: m = c xor r This padding doubles the size of an encrypted value

Secure database (SDB) problem Data Owner (DO) Service provider (SP) DB DB Database should be encrypted Compute query on encrypted data Query Query Return an encrypted answer Answer Answer

(In)-feasibility of IND in SDB problem Security game: The attacker generates two queries q0 and q1 and send them to the DO The DO randomly chooses 1 query and executes it with SP The (encrypted) result r is observed by the attacker With r, the attacker guesses which query r corresponds to

Attacker’s strategy Pick q0 = “SELECT count(*)” Pick q1 = “SELECT *” If r is just an encrypted value, it is q0 If r is a table, it is q1 To prevent the above attack, at least make the query results indistinguishable by its size  each query result is at least Ω(n) where n is number of tuples Decryption cost by DO is then Ω(n) - not better than computing the query using a linear scan

Remark: Fully homormophic encryption with IND-CPA in SDB Selection processing requires the SP to observe whether an encrypted tuple satisfies the query condition or not All operations in terms of circuit can be supported (AND, OR, NOT) All input and output are encrypted Cannot jump to an encrypted address Discussion paper: Shiyuan Wang, Divyakant Agrawal, and Amr El Abbadi. Is homomorphic encryption the holy grail for database queries on encrypted data? Technical report, Department of Computer Science, UCSB 2012

Implication of knowing the result of a branch operation Unknown process Jump to b Jump to a Plain data: 10, 20, 21, 22, 23 Plain data: 24, 27, 28, 29, 40 Knowledge of plaintext from CPA

Implication of knowing the result of a branch operation Attack: Pick a = 50, b = 7 Unknown process Attacker answer: c = a Jump to b Jump to a Plain data: 10, 20, 21, 22, 23 Plain data: 24, 27, 28, 29, 40 E(c)

Re-writing the query may help If (x>10) { y = 20; } else { y = 100; } r = cmp_grt(x, 10) // return 1 if x > 10, 0 otherwise y = 20 + 80 * r Cannot solve all problems!

Leakage of knowing branch result in practice Assume now we allow the SP to observe the branch (i.e., comparison) results, what kind of information is leaked? Locality of data Derived knowledge – COA: 1. q2  q1 2. q2  t1[Y], t3[Y]  q1 3. t5[Y]  t1[Y], t3[Y] t9[Y] Result of cmp(Y, E(q1)) E(t1) E(t3) E(t5) E(t7) E(t10) Result of cmp(Y, E(q2)) E(t1) E(t3) E(t9) E(t13) So, we just protect the exact values in our scheme. And the use of index may make sense

Another way to prove IND (in SMC) Proof by simulation Background Each party received several messages from the other party Can they use these information to observe anything about the other party? Alice: Secret x = 3 Bob: Secret y = 7 Secure sum Result: x+y = 10

Simulation Say Bob is the attacker now Is there any difference on the messages Bob received if Alice provides different input? Indistinguishable Alice: Secret x = 3 Bob: Secret y = 7 Secure sum Result: x+y = 10

Secure Sum Public parameter: n=100 Alice: Secret x = 3 Bob: Secret y = 7 Generate r1 = 70 Send m1 = r1+x mod n= 73 Generate r2 = 50 Send m2 = r2+y+m1 mod n= 30 Keep m2-r1 as share Alice: Secret a = 60 Bob: Secret b = 50 Keep r2 as share Result: x+y = 10

Bob’s view Public parameter: n=100 Bob: Secret y = 7 Simulation: For any value of x Generate r1’ = m1 – x mod n The message m1 can be generated Send m1 = r1+x mod n= 73 Simulation succeeds. This protocol is secure w.r.t. IND. Result: x+y = 10

A not secure example Note: since it must be a specific XA so that YA = gXA Simulation fails. Observed: YA, XB How to derive XA? Bob Key agreement protocol Public parameters: p, g Note: This protocol is not for protecting parties’ input from the other party

Relaxed security definition Also the approach of our paper Bounded leakage of protocols Can be proven by the simulations Used a lot by Chris Clifton from Purdue University Jaideep Vaidya and Chris Clifton, Secure Set Intersection Cardinality with Application to Association Rule Mining, JCS 13(4), 2005. Jaideep Vaidya and Chris Clifton, Privacy-Preserving K-Means Clustering over Vertically Partitioned Data, SIGKDD, 2003. Murat Kantarcioglu and Chris Clifton, Privacy Preserving Data Mining of Association Rules on Horizontally Partitioned Data, TKDE 16(9), 2004.

Proof of relaxed definition Attacker’s knowledge Its own input Messages in the protocol Leaked knowledge If the above is enough to simulate the execution of the protocol, there is not other information leak Then, argue the leaked knowledge is not very harmful