Category Archives: Encryption

AES CBC Mode – Chosen Plaintext Attack

Years ago when I set out to learn cryptography for my work as a software developer, I found it interesting that unlike many other aspects of software engineering the “Don’ts” vastly exceed the “Do’s”. To make things worse, the Don’ts of cryptography tend to lead to security vulnerabilities in our software which are in a… Read More »

Why HTTPS Matters

Recently I changed my web site over to being exclusively served via HTTPS (HTTP Secure). This post details the reasons for the change over from HTTP to HTTPS. Privacy (Confidentiality) When accessing a site via HTTPS, no information (except IP Address and Port Number of the web server) sent between client and server can be… Read More »

Asymmetric Cryptography in Practice

Encryption can be broken into either symmetric or asymmetric. Symmetric key cryptography is where the same cryptographic key is used for encryption and decryption. Asymmetric key (public-key) cryptography is where one key (the public key) is used for encryption and another key (the private key) is used for decryption. With the sort of added power… Read More »

Compression and Encryption: Order Matters

Compression then encryption or the other way around? Sometimes we need to compress a file in order to make it easier to transmit. Sometimes we need to encrypt the contents of a file in order to protect that information from prying eyes. Sometimes we need to apply both compression and encryption to a file. At… Read More »