slides

advertisement
On Minimal Assumptions for
Sender-Deniable Public Key
Encryption
Dana Dachman-Soled
University of Maryland
Deniable Public Key Encryption
[Canetti, Dwork, Naor, Ostrovsky, 97]
π‘π‘˜
𝑐 = πΈπ‘›π‘π‘π‘˜ (π‘š; π‘Ÿ)
Sender
Receiver
sπ‘˜
Outputs: π·π‘’π‘π‘ π‘˜ 𝑐 = π‘š
For any π‘š′ in the message space, can produce a fake opening
(π‘Ÿ′, π‘ π‘˜′) explaining the transcript as an encryption of π‘š′ .
Sender-Deniable Public Key Encryption
[Canetti, Dwork, Naor, Ostrovsky, 97]
π‘π‘˜
𝑐 = πΈπ‘›π‘π‘π‘˜ (π‘š; π‘Ÿ)
Sender
Receiver
sπ‘˜
Outputs: π·π‘’π‘π‘ π‘˜ 𝑐 = π‘š
Applications:
definition
Receiver-Deniable
Key
For Analogous
any π‘š′ in the
messageforspace,
can produce aPublic
fake opening
• After the fact incoercibility
Encryption
π‘Ÿ′ explaining the transcript
as an encryption of π‘š′ .
• Adaptive security
What is known?
• Receiver-Deniable PKE and thus Deniable PKE is
impossible [Bendlin, Nielsen, Nordholt, Orlandi, 11].
• Sender-Deniable encryption with weak security from
standard assumptions [Canetti, Dwork, Naor, Ostrovsky,
97].
• Bi-Deniable encryption in the multi-distributional model
constructed by [O’Neill, Peikert, Waters, 11]
• [Sahai, Waters 14] achieve Sender-Deniable public key
encryption from indistinguishability obfuscation (IO).
– Non-black box use of underlying primitives.
– Requires strong assumptions (FHE + multilinear maps).
Our Goal
• Understand minimal assumptions necessary
for sender-deniable public key encryption.
• Necessity of non-black-box techniques.
Is there a black-box construction of senderdeniable public key encryption from
simulatable public key encryption?
Underlying primitive we consider
Simulatable Public Key Encryption
Algorithms (π‘œπΊπ‘’π‘›, π‘ŸπΊπ‘’π‘›), (π‘œπΈπ‘›π‘, π‘ŸπΈπ‘›π‘)
(π‘ŸπΊ , pk)
s.t. π‘œπΊπ‘’π‘› π‘ŸπΊ = π‘π‘˜
“Oblivious”
(π‘π‘˜, π‘ŸπΈ , 𝑐)
s.t. π‘œπΈπ‘›π‘ π‘π‘˜, π‘ŸπΈ = 𝑐
≈
(π‘Ÿ ′ 𝐺 , pk)
s.t. 𝐺𝑒𝑛 π‘ŸπΊ = π‘π‘˜
π‘Ÿ ′ 𝐺 = π‘ŸπΊπ‘’π‘› π‘π‘˜
(π‘π‘˜, π‘Ÿ ′ 𝐸 , 𝑐)
s.t. 𝐸𝑛𝑐 π‘π‘˜, π‘ŸπΈ = 𝑐
π‘Ÿ ′ 𝐸 = π‘ŸπΈπ‘›π‘ π‘π‘˜, 𝑐
Why this primitive? Simulatable PKE is sufficient for related primitives:
Intuition:
• Bi-deniable
Can generate
encryption
a public
in the
key/ciphertext
multi-distributional
honestly
model
and claim
[OPW11]
that it
• 1/poly-secure
was
sender-deniable
generated obliviously.
encryption [CDNO97]
• Non-committing encryption [CFGN96].
Weak Sender-Deniable PKEfrom
Simulatable PKE
Simplification of [CDNO97] construction:
πΈπ‘π‘˜
(0π‘˜ )
Obliv.
Obliv
Obliv
πΈπ‘π‘˜
(0π‘˜ )
Obliv.
...
πΈπ‘π‘˜
(0π‘˜ )
Obliv
Obliv
k ciphertexts
ToToencrypt
a 0,
setsay
odd
number
of ciphertexts
to oblivious.
deny, lie
and
that
an honestly
generated
ciphertext was generated
To encrypt a 1, set an even number
of ciphertexts to oblivious.
obliviously.
Polynomial security: Real and Fake openings can be distinguished with 1/poly
Problem: Cannot lie and claim that an obliviously generated ciphertext was
advantage
generated non-obliviously.
Super-polynomial security: Real and Fake openings can only be distinguished with
Only achieves O(k) security, where k is the number of queries made by encryption.
negligible advantage
Our Results
Theorem: There is no black-box construction of sender-deniable
public key encryption with super-polynomial security from
simulatable public key encryption.
More specifically: Every black-box construction of a senderdeniable PKE scheme from simulatable PKE which makes π‘š
queries to the simulatable PKE cannot achieve security better
than O(π‘š4 ).
Nearly tight with [CDNO97] construction.
Some Proof Intuition
Oracle separation: Oracle relative to which Simulatable PKE
exists, Sender-Deniable PKE does not exist.
Our oracle:
Important: random string
is unlikely to be in the
range
• 𝐺: 0,1 𝑛 → 0,1 3𝑛 takes inputs π‘ π‘˜ and outputs
π‘π‘˜.of 𝐺 or 𝐹 π‘π‘˜,∗ .
• 𝐹: 0,1 4𝑛 → 0,1 12𝑛 takes inputs (π‘π‘˜, π‘₯) and outputs 𝑦.
• 𝐹 −1 : 0,1 13𝑛 → 0,1 𝑛 takes inputs (π‘ π‘˜, 𝑦 )and returns π‘₯ if
𝐺(π‘ π‘˜) = π‘π‘˜ and 𝐹(π‘π‘˜, π‘₯) = 𝑦 and ⊥ otherwise.
Simulatable PKE relative to oracle:
• First π‘˜ bits of input x is plaintext.
• Public keys and ciphertexts are indistinguishable from
random strings:
π‘œπΊπ‘’π‘›(π‘ŸπΊ ), π‘œπΈπ‘›π‘(π‘ŸπΈ ) output π‘ŸπΊ , π‘ŸπΈ .
π‘ŸπΊπ‘’π‘›(π‘π‘˜), π‘ŸπΈπ‘›π‘(π‘π‘˜, 𝑐) output π‘π‘˜ and 𝑐 itself.
Some Proof Intuition
Impossibility of Sender-Deniable Encryption:
In a super-polynomially-secure scheme, should be
able to run deny an unbounded polynomial 𝑝
number of times and have that:
•
π‘Ÿ0 , 𝑐 = πΈπ‘›π‘π‘π‘˜ 𝑏; π‘Ÿ0
original randomness
• π‘Ÿ1 = π·π‘’π‘›π‘¦π‘π‘˜ π‘Ÿ0 , 1 − 𝑏 , 𝑐 looks fresh
• (π‘Ÿ2 = π·π‘’π‘›π‘¦π‘π‘˜ π‘Ÿ1 , 𝑏 , 𝑐) looks fresh
...
• (π‘Ÿπ‘ = π·π‘’π‘›π‘¦π‘π‘˜ π‘Ÿπ‘−1 , 1 − 𝑏 , 𝑐) looks fresh
In the oracle case: We consider sequences of Sender views
𝑉𝑖𝑒𝑀𝑆0 , 𝑉𝑖𝑒𝑀𝑆1 , … , 𝑉𝑖𝑒𝑀𝑆𝑝 . Each view contains the input
bit, random tape, oracle queries + responses.
Some Proof Intuition
• Correctness of encryption guarantees:
– If Sender’s view is an encryption of a bit b, then Receiver’s
view sampled conditioned on Sender’s view will be a
decryption of the same bit b w.h.p.
𝑉𝑖𝑒𝑀𝑅 | 𝑉𝑖𝑒𝑀𝑆
– Using [Impagliazzo, Rudich, 89]-type
techniques:
𝑄 is the set of likely intersection
• 𝑆 can use Eve algorithm to findqueries
set 𝑄 of
likely intersection
between
𝑆, 𝑅 given 𝑆’squeries
view.
between 𝑆 and 𝑅:
𝑉𝑖𝑒𝑀𝑅 𝑉𝑖𝑒𝑀𝑆 , 𝑄 ≈ 𝑉𝑖𝑒𝑀𝑅 π‘π‘˜, 𝑐, 𝑄
– Note that (π‘π‘˜, 𝑐) are fixed.
– The only way to change the distribution of 𝑉𝑖𝑒𝑀𝑅 | 𝑉𝑖𝑒𝑀𝑆 ,
𝑄 is to change the set 𝑄.
– Distribution must change in each iteration.
A First Attempt
Consider the set 𝑄0 generated by 𝑆 from its real 𝑉𝑖𝑒𝑀𝑆0 .
Let 𝑄𝑖 be the set corresponding to fake 𝑉𝑖𝑒𝑀𝑆𝑖 .
“Claim”: Q 𝑖 ⊆ 𝑄0
Therefore, in order to change distribution over
Receiver’s view, queries must be removed each time.
• There are at most poly number of queries in real 𝑄0 so
deny can be run at most a polynomial number of times
before it fails. So cannot get super-polynomial security.
• “Claim”: Intuitively, this is what happens in [CDNO97]
construction.
•
•
•
•
Problem
• “Claim” is false! It is possible that 𝑄𝑖 βˆ– 𝑄0 ≠ ∅.
• Toy Example:
12n encryptions
To encrypt a 0:
𝐸(π‘π‘˜, 0π‘˜ )
𝐸(π‘π‘˜, 0π‘˜ )
𝐸(π‘π‘˜, 0π‘˜ )
𝐸(π‘π‘˜, 0π‘˜ )
Obliv
𝐸(π‘π‘˜, 0π‘˜ )
To encrypt a 1:
Compute 𝑐 ∗ = 𝐹(π‘π‘˜, π‘Ÿ ∗ ); Say 𝑐 ∗ = 01. . .10, length 12𝑛 bits.
𝐸(π‘π‘˜, 0π‘˜ )
Obliv
π‘˜ ; π‘Ÿ . 0.
Decrypt:
Note:Decrypt
In 0 case,
12n
intersection
ciphertexts.queries
If theywill
all consist
output of
0π‘˜ 0
, output
𝑖
∗
∗
∗
Otherwise,
In 1 case,
compute
intersection
𝑐 and queries
decrypt will
to get
contain
π‘Ÿ . Output
π‘Ÿ .
1.
Problem
• “Claim” is false! It is possible 𝑄𝑖 βˆ– 𝑄0 ≠ ∅.
• Toy Example:
Can claim an encryption of 0 is an encryption of 1:
In the process will add an arbitrary query to set of intersection queries.
𝐸(π‘π‘˜, 0π‘˜ )
𝐸(π‘π‘˜, 0π‘˜ )
𝐸(π‘π‘˜, 0π‘˜ )
𝐸(π‘π‘˜, 0π‘˜ )
Obliv
𝐸(π‘π‘˜, 0π‘˜ )
Compute 𝑐 ∗ = 𝐹(π‘π‘˜, π‘Ÿ ∗ ); Say 𝑐 ∗ = 01. . .10
𝐸(π‘π‘˜, 0π‘˜ )
Obliv
Note: Intersection queries now include, π‘Ÿ ∗ .
Some Proof Intuition
• Main technical part of proof is to deal with the
case that 𝑄𝑖 βˆ– 𝑄0 ≠ ∅.
• Use an information compression argument to
show that w.h.p. over choice of oracle, we
cannot have a sequence of openings with too
many new queries.
Some Proof Intuition
• Since Eve makes a polynomial number of queries: Can
encode a sequence of openings with a short string. So
total possible number of encodings is small.
– Intuition: To encode a query π‘ž ∈ 𝑄𝑖 , use its index in the
Eve algorithm.
• For a fixed encoding, probability randomly chosen
oracle is consistent with the encoded sequence of
openings is small.
– Follows from property of oracle that a random string is
unlikely to be in image of 𝐹(π‘π‘˜,∗).
• Since number of encodings is small, prob. a randomly
chosen oracle is consistent with any sequence is small.
Open Problems
• Extend impossibility result to trapdoor
permutations.
• Extend impossibility results to multiple round
encryption schemes.
• Construct sender-deniable public key
encryption without relying on IO?
Thank you!
Download