Hypertext Transfer Protocol Secure or HTTPS is an extension of the HTTP protocol. HTTPS secures the data transfer between client and server by encrypting all of the information communicated.
What is cryptography? 🔗 Simply put, Cryptography provides a method for secure communication. It stops unauthorized parties, commonly referred to as adversaries or hackers, from gaining access to the secret messages communicated between authorized parties.
In cryptography, the one-time pad, or OTP is a way of encrypting information so securely that it’s impossible to be cracked.
If you’re familiar with the laws of thermodynamics, you may recognize the second law as the one that deals with entropy.
Elliptic Curve Cryptography (ECC) is a modern public-key encryption technique famous for being smaller, faster, and more efficient than incumbents.
With quantum computers getting more powerful each year, many worry about the safety of modern encryption standards.
Bcrypt is a key derivation function, which can be thought of as a special kind of hash function.
Lattice-based cryptography, an important contender in the race for quantum-safe encryption, describes constructions of cryptographic primitives that involve mathematical lattices.
Adi Shamir’s Secret Sharing is a cryptographic algorithm that allows distinct parties to jointly share ownership of a single secret by holding shares.
HMACs and MACs are authentication codes and are often the backbone of JWT authentication systems. A Message Authentication Code (MAC) is a string of bits that depends on a secret key and is sent with a message to prove the message wasn’t tampered with.
PGP, or its open-source alternative, GPG, is a program used to encrypt data such that only an authorized party can decrypt it.
Scrypt is a slow-by-design key derivation function designed to create strong cryptographic keys. Simply put, the purpose of the Scrypt hash is to create a fingerprint of its input data but to do it very slowly.
SHA-2 (Secure Hash Algorithm 2), of which SHA-256 is a part, is one of the most popular hash algorithms around.
White-box cryptography combines methods of encryption and obfuscation to embed secret keys within application code. The goal is to combine code and keys in such a way that the two are indistinguishable to an attacker, and the new “white-box” program can be safely run in an insecure environment.
Want to encrypt text with a password or private key in Python? AES-256 is a solid symmetric cipher that is commonly used to encrypt data for oneself.
Politicians in the United States have been claiming recently that end-to-end encryption is certainly too dangerous to permit.
The purpose of cryptography is to keep information private, and the purpose of open-source is to make code public… So we shouldn’t open-source our cryptography algorithms right?
Building a from-scratch server or using a lightweight framework is empowering. With that power comes responsibility, specifically the responsibility to securely store user’s passwords.
If you are getting into cryptography, or just trying to understand the fundamentals, you may have noticed that the exclusive or (XOR) operation is used quite often, especially in ciphers.
Quantum Computing 🔗 Quantum computing may not be coming quite as fast as some in the field had certainly feared (or perhaps hoped).
AES, or “Advanced Encryption Standard”, is an encryption specification that uses the Rijndael cipher as its symmetric key ciphering algorithm.
Hash functions are used to securely store passwords, find duplicate records, quickly store and retrieve data, among other useful computational tasks.
A Key Derivation Function, or KDF, is a cryptographic algorithm that derives one or more secret keys from a secret value.
Many new developers are jumping right into writing code, usually for those fat paychecks, without learning much about the history of Computer Science.
While encryption does involve various methods of encoding data, the two are absolutely not interchangeable. In fact, if you get them mixed up it can result in serious data breaches and security vulnerabilities.