Understanding Elliptic Curve Cryptography

It’s getting tough but you can not avoid this modern cryptography technology called elliptic curve cryptography (ECC). The basic expression looks as simple as...

OTP (One Time Password) Card

I had to issue an OTP card so that I can change the maximum amount of bank transfer in the banking app. To strengthen...

RSA – public key cryptosystem

RSA is a very famous public key cryptosystem and I think it’s one of the greatest inventions of software engineering/information technology. It shouldn’t hurt...

GMP for big integer arithmetic

Now I’m back to my cryptography study after a long rest. My next target is RSA algorithm which requires big integer arithmetics. I decided...

Server Name Indication (SNI)

Now that I could link OpenSSL library to my program, I tried to use it for a simple client connection to a TLS server....

Linking with OpenSSL

I struggled to link with OpenSSL library. I thought this is a good opportunity to learn more about cmake. However, I couldn’t find a...

SHA256

Now that I had SeverHello which contains a cipher suite to be used in key exchange, I can start serious algorithms instead of tedious...

Client Hello

I have managed to set up basic c++ and boost environment as in the previous post. I found in the default compiler setting, c++11...

Learning TLS (aka SSL)

To understand the modern HTTP with security layer including encryption algorithm and key exchange rituals, I decided to learn TLS (Transport Layer Security) protocol...