Post
Topic
Board Development & Technical Discussion
Re: Crypto security question
by
achow101
on 23/01/2016, 14:35:35 UTC
Hi - looking for a bit of tech help

Pre-conditions:

1. Alice has encrypted the text "red" with her private key, and stores the ciphertext on a public ledger.
First of all, encryption is done with the public key while decryption is done with the private key.

2. Her public key is known.
3. Bob knows that Alice has stored a ciphertext corresponding with either "red" or "white" on the ledger.

My Question:

Using the public key, the ciphertext, and knowing the possible cleartext values, is it possible for Bob to determine the value which has been stored?
Depending on the algorithm used, yes it may be possible. Most modern algorithms introduce randomness into the encryption so that others cannot know that the same message was sent twice. With those algorithms, encrypting the same message will result in different ciphertexts. However, for algorithms that don't have that randomness, then encrypting the same message with the same public key will result in the same ciphertext. Bob can then encrypt using Alice's public keys the possible cleartext values and compare them to the ciphertext. If they match, then he has found the right cleartext.

To put the question another way: If required could Alice prove that the cleartext value is "Red" without using her private key?

So long as she used an algorithm which produces the same ciphertext with the same plaintext, then yes. Otherwise, no.