Reddit Reddit reviews Cryptography: A Very Short Introduction (Very Short Introductions Book 68)

We found 1 Reddit comments about Cryptography: A Very Short Introduction (Very Short Introductions Book 68). Here are the top ones, ranked by their Reddit score.

Computers & Technology
Books
Web Encryption
Computer Security & Encryption
Cryptography: A Very Short Introduction (Very Short Introductions Book 68)
Check price on Amazon

1 Reddit comment about Cryptography: A Very Short Introduction (Very Short Introductions Book 68):

u/scrambledhelix · 2 pointsr/AskNetsec

Based on some of your responses to other answers, it seems like you want to know a lot more about encryption than just the keys: TLS for instance is a protocol for initiating an encrypted session, and has little to do with your original question directly. Applied Cryptography is an excellent and authoritative source, but I’d also recommend the shorter, more concise “Cryptography ” from the Very Short Introduction series for beginners. But in short:

A symmetric key is a specific constant applied to a message with a encryption algorithm. Say we take the ASCII decimal value of each letter in the message “The Eagle has landed” => [84, 104, 101, 32, 69, 97, 103, 108, 101, 32, 104, 97, 115, 32, 108, 97, 110, 100, 101, 100]. The algorithm (we call it the cipher, here) is to multiply each character by “x” to encrypt the message; to decrypt the message we divide by “x”. In this case, the value of “x” is the key.

An asymmetric key is different in that it is a one-way operation. Here, “x” is broken into two parts, and where encryption takes place with one part, you need the other to decrypt. By encrypting the message, you make the message practically unrecoverable without the private key. This is effected in many encryption schemes by using a modulus, which is the operation such that “1 x n mod 3 = 1, 2 x n mod 3 = 2, and 3 x n mod 3 = 0”. The idea being, if counting an ordered set of numbers to whatever, every time you count up to the modulus value, wrap around again and continue from 0. One of the most basic asymmetric operations that works this way is using the modulus 33, where one part of the key is 3 and the other 7; let the public key be (33, 3) and the private key be (33, 7).

As before, we take the message and encrypt it with an algorithm. In this case however, our algorithm is the ascii value of the char to the power of the public key, modulo 33, or (where ‘c’ is the character value), c^3 mod 33. This gives us [24, 26, 8, 32, 27, 25, 31, 3, 8, 32, 26, 25, 4, 32, 3, 25, 11, 1, 8, 1] for the message. Notice that you can’t invert this algorithm — a modulus can’t be “reversed” by any means mathematically. What you can do though is apply the same algorithm with the other key, “7”, and this will result in the original. A short proof of this can be found here.

Since it’s the same operation, note that you can use either 3 or 7 as your public key — the choice of which is public and which is private is arbitrary.

When discussing protocols like TLS, this is instead specifying how to set up an encrypted channel for communication, which often involves an initial stage of passing messages using a combination of symmetric and asymmetric keys to establish a secure line of communication, with an initial, temporary key created on-the-fly for that particular session, and which is thrown away following each “block” of messages. Since this gets outside of your original question, I won’t go into it here.