Homomorphic Encryption

Preview:

DESCRIPTION

 

Citation preview

FUTUR­­ISTIC­APPROACH­TOWARDS­DATA­SECURITY­THROUGH

HOMOMORPHIC­­­ENCRYPTION

By:Swapnil Patil

CONTENTS

• Introduction.

• An Analogy.

• Algorithm.

• A Homomorphic symmetric encryption.

• Problems.

• Revolutions.

• Implementation.

• References.

INTRODUCTION

• Homomorphic­encryption is a form of encryption which

allows specific types of computations to be carried out

on ciphertext and obtain an encrypted result which decrypted

matches the result of operations performed on the plaintext.

• For instance, one person could add two encrypted numbers

and then another person could decrypt the result, without

either of them being able to find the value of the individual

numbers.

• Earlier there was Somewhat Homomorphic

Encryption technique. This encryption used low

polynomial degree, which was its big drawback.

• In June 2009, “Gentry” proposed the first efficient

Fully Homomorphic Encryption technique.  It is

efficient in the sense that all algorithms run in

polynomial time.

An Analogy: Alice’s Jewellery Store

• Alice’s workers need to assemble raw materials into jewellery

• But Alice is worried about theft

How can the workers process the raw materials without having access

to them?

• Alice puts materials in locked glove box

• For which only she has the key

• Workers assemble jewellery in the box

• Alice unlocks box to get “results

ALGORITHM

• Three procedures: KeyGen, Enc, Dec

• (sk,pk) KeyGen($)

• Generate random public/secret key-pair

• c Encpk(m)

• Encrypt a message with the public key

• m Decsk(c)

• Decrypt a ciphertext with the secret key

• E.g., RSA: cme mod N, mcd mod N

• (N,e) public key, d secret key

• Works for MULT gates (mod N)

• C*=C1 x C2 x…… XCn=(m1 X m2 X…..X mn)(mod N)

THE ANALOGY• Enc: putting things inside the box• Anyone can do this (imagine a mail-drop)• ci Encpk(mi)

• Dec: Taking things out of the box• Only Alice can do it, requires the key• m* Decsk(c*)

• Eval: Assembling the jewelry• Anyone can do it, computing on ciphertext• c* Evalpk(P, c1,…,cn)

• m* = P(m1,…,mn) is “the ring”, made from “raw materials” m1,…,mn

A HOMOMORPHIC SYMMETRIC ENCRYPTION

• Shared secret key: odd number p

• To encrypt a bit m:

• Choose at random large q, small r

• We choose r ~ 2n, p ~ 2n (and q ~ 2n )

• Output c = pq + 2r + m

• Ciphertext is close to a multiple of p

• To decrypt c:

• Output m = (c mod p) mod 2

2r+m much smaller than p

2 5

FROM “SOMEWHAT” TO “FULLY”• Theorem [Gentry’09]: Convert “bootstrappable” →

FHE.

FHE­= Can eval all fns.

“Bootstrappable”

Augmented Decryption ckt.

Dec Dec

NAND

c1 sk skc2

PROBLEMS

• Ciphertext grows with each operation

• Noise grows with each operation

• Threat for increasing cybercrimes through encrypted malwares

REVOLUTIONS ….• Wireless Sensor/Mesh Network.

• Obfuscation Technology.

• IBM HELib.

IMPLEMENTATION……

• Example 1: Private Search

• You: Encrypt the query, send to Google

(Google does not know the key, cannot “see” the query)

• Private­search: Encrypted query------- Encrypted

Result

• You: Decrypt Query , Recover the search result

• Private Cloud Computing

input: x program: PEncrypt x

Enc(x), P → Enc(P(x))

IMPLEMENTATION……

REFERENCES….

• IEEE XPLORE

• Wikipedia.org

• Securityexplore.com

• Handbook of applied cryptography by Alfred j. Menezes

• Webcrawler.com

• www.scmagazineuk.com

Recommended