Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>The most secure encryption algorithm is using a one-time pad generated using a perfect entropy source.</p> <p>Edit (by Jerry -- really too long to fit in a comment): Yes, there are a few types of attacks to which (at least a typical implementation of) a one-time pad is vulnerable. One is the ability to <em>change</em> a message, even though you don't know what it was to start with.</p> <p>Just for example, consider a system being used to transmit ballots where people have voted in a primary election. For simplicity, we'll assume a particular election has two candidates, so (before encryption) a zero bit means a vote for one candidate, and a one bit a vote for the other.</p> <p>These ballots are then encrypted with a one-time pad, which means there's no way for me to figure out whether the original value was a 0 or a 1 -- <strong>but</strong> the attacker doesn't necessarily care. Flipping the bit <em>changes</em> the vote, regardless of its original value. Flipping the bits in all (or even many of) the ballots make the "winner" of the primary the <em>weaker</em> of the two candidates -- the one preferred by fewer of that party's voters.</p> <p>In the final election, voters in that party are (somewhat) less likely to vote at all because they can't vote for the person they really favor. A few may even dislike the "winner" of the primary enough that they'll vote for the other party's candidate instead. In a close election, this could well be enough to let that other party's candidate win.</p> <p><strong>By Matti:</strong> <em>Changing</em> the message is entirely different from <em>decryption</em>, and there are other ways to combat that. For example, you could sign the message to prevent that. Of course we're still only talking about probabilities, but that's what cryptography is all about. You can decode a one-time pad message if you're extremely lucky, but extreme luck is usually not considered a factor.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload