Fully Bideniable Interactive Encryption
eprint.iacr.org
eprint.iacr.org
Edit: Here's a direct link https://hackaday.com/category/biography/
Marie Curie only got her first Novel Prize because Pierre Curie refused to accept it unless it was shared with his wife.
Does the faking algorithm for the scheme proposed in the paper require any of the private information as input? In other words: given a ciphertext only, can I come up with keys and randomness to provide an arbitrary plaintext?
OTP for example does have this property, I can just simply XOR the plaintext I want to have with the ciphertext and claim that this is the key.
Edit: this question is relevant as if the private information is needed, it might limit your options once you do give them fake stuff. If some party can prove that the fake plaintext/key pair you gave them is indeed fake, then you should be able to walk back on your claims and say that you never had the plaintext or forgot the password or whatever.
I haven't read far enough to be able to answer the first part of your question (does faking require access to the real ciphertext) but based on the symmetry of the definition of bideniability, that would be surprising.
[1] see https://github.com/cabalamat/stes/blob/master/SPECIFICATION
A practical problem I see is that even if everyone used this everywhere, an attacker has no reason to believe any forceably decrypted plaintext.
The disclosing party would have had to beforehand craft a fake plaintext that was credible enough to trick an alerted attacker based on its contents alone.
"When the communicating parties have common secret key, deniable encryption can be simple. For instance, the one-time pad (OTP) scheme is perfectly deniable: having sent c = k ⊕ m, the parties can claim that they sent any plaintext m0 by claiming that k0 = c ⊕ m0 is their true key. In fact, it turns out that the key size in any deniable encryption scheme has to be at least as large as the size of a plaintext (since there should exist a different key for any possible fake plaintext), and in this sense OTP is “the best possible” symmetric-key deniable encryption.
But what if no pre-shared secret key is available? Is it possible to communicate fully deniably even in this case?"
Here's the abstract of the Canetti paper:
"Consider a situation in which the transmission of encrypted messages is intercepted by an adversary who can later ask the sender to reveal the random choices (and also the secret key, if one exists) used in generating the ciphertext, thereby exposing the cleartext. An encryption scheme is deniable if the sender can generate ‘fake random choices’ that will make the ciphertext ‘look like’ an encryption of a different cleartext, thus keeping the real cleartext private. Analogous requirements can be formulated with respect to attacking the receiver and with respect to attacking both parties. Deniable encryption has several applications: It can be incorporated in current protocols for incoercible (“receipt-free”) voting, in a way that eliminates the need for physically secure communication channels. It also underlies recent protocols for general incoercible multiparty computation (with no physical security assumptions). Deniable encryption also provides a simplified and elegant construction of an adaptively secure multiparty protocol. In this paper we introduce and define deniable encryption and propose constructions of such schemes. Our constructions, while demonstrating that deniability is obtainable in principle, achieve only a limited level of it. Whether they can be improved is an interesting open problem."
I'm not sure how the paper under discussion relates to those applications, if at all.
I'm not sure I buy the argument you appear to be making that a single principal can use a fake OTP to achieve deniability with any encryption scheme, but that this breaks down when both sender and receiver are coerced. If the fake plaintexts don't match it comes down to one person's word against another. The consequences of that scenario are outside the scope of "deniable encryption". It sounds a bit like a prisoner's dilemma situation.
But the key defining feature of "deniable encryption" is of deniability within a specified encryption scheme.
> To address this issue, Canetti et al. introduced the notion of deniable encryption, in which a party may send a ciphertext c which is an encryption of message m, and later, for any plaintext m2!=m, the party can reveal fake keys and randomness with respect to which c appears to be an encryption of m2
This is only really possible if your key is as big as m2, which in practise for many applications it would not be.
For example, I send you the message "CIA" encrypted using this scheme. Theoretically, it should be impossible for any third party to prove that I send "CIA", because I can give up a different decryption key that decodes the ciphertext to, say, "NSA". Similarly, on the receiving end, you can give up a different decryption key that decodes the ciphertext to, say, "FBI".
This scheme also means it is impossible for a third party to discover who is giving up the 'truth' in such scenarios (for example if I told the truth and decrypted the ciphertext into "CIA", while you lied and decrypted the ciphertext into "FBI", the third party has no way to know which one is correct, or if either of them are fake).
Mono-deniable gives a duress code only to the sender, or only to the recipient.
The paper claims an additional category of bi-deniability, such that your duress code and your counterparty's duress code produce different plaintexts, rather than the same plaintext. It is unclear from the abstract whether it is possible to have a bi-deniable scheme without this property (which does not also require prior coordination between parties).
As others note, it parses as bi-deniable -- it can decrypt on both ends into two plaintexts with plausbility.
But yes, I initially parsed it as Biden-y-able, which is surprisingly fitting [1] given Biden's ability to get away with any gaffe[2], which is analogous to what bideniable encryption gets you. So, a good mnemonic at least...
(Relatedly, I used to think git reflog parsed as re-flog "because you're only using this if you did something so stupid you want to flog yourself twice".)
[1] I hate the word "apropos".
[2] https://www.theatlantic.com/politics/archive/2014/09/why-joe...