updated README.md
This commit is contained in:
parent
092f877fe1
commit
9d9ab04c55
20
README.md
20
README.md
@ -1,6 +1,16 @@
|
|||||||
# Decrypting/Encrypting using a dice-generated One-Time Pad
|
# 🎲 Dice One-Time Pads:
|
||||||
|
A technique to make uncrackable encrypted messages using two six-sided die.
|
||||||
|
### 📄 [Main Instructions](https://code.lexza.ch/Lexzach/dice-one-time-pad/raw/branch/main/Instructions/dice-one-time-pad.pdf)
|
||||||
|
### 🔢 [Alternate Chart](https://code.lexza.ch/Lexzach/dice-one-time-pad/raw/branch/main/Instructions/alternate-chart.pdf)
|
||||||
|
If you have a less security critical use of this One-Time Pad technique, you can use the [program written in Go](https://code.lexza.ch/Lexzach/dice-one-time-pad/src/branch/main/Go) within this repository to greatly speed up the key generation, encryption, and decryption process. This program is 100% compatible with the manual method, but is less secure because of the [CSPRNG](https://en.wikipedia.org/wiki/Cryptographically_secure_pseudorandom_number_generator) utilized as opposed to the (effectively) true random numbers of a dice.
|
||||||
|
|
||||||
Using dice, one can generate a One-Time Pad and encrypt a message that is impossible to decrypt without the One-Time Pad given to a recipient.
|
### How does this all work?
|
||||||
|
([Wikipedia](https://en.wikipedia.org/wiki/One-time_pad))<br>
|
||||||
### [Main Instructions](https://code.lexza.ch/Lexzach/dice-one-time-pad/raw/branch/main/Instructions/dice-one-time-pad.pdf)
|
One-time pads are a method of encryption which, if done right, result in a message that is *literally impossible* to decrypt without the key. The absolute beauty of this encryption method is that it's *extremely* easy to implement ***by hand***.<br>
|
||||||
### [Alternate Chart](https://code.lexza.ch/Lexzach/dice-one-time-pad/raw/branch/main/Instructions/alternate-chart.pdf)
|
However, there are four conditions that must be true for this encryption method to truly be unbreakable:
|
||||||
|
- The key must be as long as the message you wish to encrypt.
|
||||||
|
- The key must be generated using truly random methods. (which the Go program is ***not***)
|
||||||
|
- The key must never be reused.
|
||||||
|
- The key must be kept a complete secret.
|
||||||
|
<br><br>
|
||||||
|
In order to comply with the second condition, two regular 6 sided die will be used to generate the key for encryption and decryption.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user