In How does public key encryption work?, it was explained that there needs to be a way of reliably associating public keys with their owners. Using someone’s public key to encrypt a message intended for them requires knowing that it is indeed their public key.
Certificate authorities are the solution to this problem. A certificate authority (a “CA”) is an organization that issues digital certificates. A digital certification is an electronic document that certifies ownership of […]
Cryptographic hash algorithms are important mathematical functions used widely in software, particularly in secure protocols such as SSL/TLS and SSH.
A hash algorithm is supplied a block of data, known as the message, and produces a much smaller hash value, known as the message digest, or simply the digest. The same message will always result in the same digest. Different messages produce different digests.
An important feature of hash algorithms is that given a particular digest, it is extremely […]
OpenSSL is one of the most widely deployed software libraries in the world, and is a critical part of the Internet’s security infrastructure. It is an open source implementation of the Secure Sockets Layer (SSL 2/3) and Transport Layer Security (TLS), and is used in many web servers and web browsers.
Heartbleed - the catastrophic security flaw uncovered during 2014 - put OpenSSL in the news and […]
Public key encryption is briefly explained in the first post of this series, here, but it is of such importance in SSL/TLS and SSH that a more detailed explanation is necessary.
Public key encryption, or asymmetric encryption, is a special class of algorithms that uses two separate but related keys, the keypair. One key, known as the private key, is kept secret, and the other key, the public key, is made widely available. Typically, the […]
The first post in our series about new secure network protocols concerns the most important concept required for understanding security, encryption.
Encryption is the process of encoding information in such a way that only parties who are authorized to read the encrypted information are able to read it. Its goal is to keep information secure from eavesdroppers, or secret.
The unencrypted information is known as the plaintext, while the encrypted information is called the ciphertext. To obtain the […]
This blog series will explain how secure network protocols work. It will explain what encryption is, what cryptographic hashes are, and how they are both used to secure data transmission. Public key encryption, which is extremely widely used today, will be explained.
The two most popular secure network protocols, SSL/TLS and SSH, will also be examined in detail and compared.
The proposed blog posts in the series are shown below. There may be additional topics explored as the series […]