Cryptography

Blog

Picture a door without a lock. Pretty pointless, right? A door is useless without security. The same goes for your messages.  We need passwords and some type of security in order to keep our messages safe. That is where cryptology comes in. Cryptology is the field of science that deals with encrypting messages so that a hacker, or “the man in the middle,” will not be able to intercept them. How does cryptology work? In short, your message is encrypted, or “scrambled,” into cipher text, which is an unreadable form of data. This message is then converted back into readable text for the intended receiver, using error-correction algorithms. This process is called decryption. To better understand cryptology, we must go into some fundamental principles that serve as the foundations for many cryptographic algorithms.


One of the topics that we learned is probability. There are many ways to think about probability. Imagine a room filled with large baskets, each one filled with different stickers. In total, there are 100,000,00 stickers (1 million). If you were to walk into the room and choose a random sticker, I wouldn’t be able to determine which sticker you chose because there are so many stickers and each one is different. The chance that you chose the only  unicorn sticker is literally 1 in a million— that’s 0.000001%! The same idea applies in cryptography—it’s hard for attackers to guess what the chosen number is because there are so many numbers (possibilities). With that chosen number, encryption can take place.


Another topic that builds upon probability is secret sharing. Secret sharing is built upon the idea of deconstructing and reconstructing a message. In a simple secret sharing scheme, the original message would have to be deconstructed to satisfy privacy and correctness standards. In other words, the scrambled message should not make the initial message obvious, and we should have the original message after decrypting (with as few mistakes as possible).


Here is a simple integer sharing scheme. First, we’ll define the share algorithm, sample the inputting values, and choose the secret. After the program user decides their value of g, they must choose a value from 0 to 5^g-1. To get s2, we take the difference of s and s1, and then take the modulus of that difference. This way, if the difference dips below zero, the mod operator will make sure that s2 is still positive. Hence, we have s1 and s2 for the share algorithm to return. This rec function will be accurate if s is in the range of {0,..5^g-1}. Otherwise, we run into some problems, because the modulus (mod) will reduce s until it doesn’t fit into the set {0,..5^g-1}. This violates the correctness principle of secret sharing. Hence, we must only pick g so that all of our secrets fall into the {0,..5^g-1} set.


A function called share takes the original message (m), and breaks it into some number of shares (s). To complete the delivery of the message, the rec function then reconstructed m from the many copies of s. You may think of this as a jigsaw puzzle, where we initially break apart and then join together the puzzle pieces. This method makes your communications much more protected from hackers, for if one happens to grab your info, it will only be a piece, not the whole thing.


While working with cryptology, we learned that there is a huge complicated system to keep passwords safe. We gained a deep understanding of probability and this piece of cryptography is used often in the everyday world. Also, we learned how to keep information safe through types of cryptographic methods.

I hope you have found this blog post informative. This concludes our conspectus on cryptology.