In this repo you'll find an introduction to the Hypertext Transfer Protocol Secure (HTTPS). To make it very simple, HTTPS is nothing more then HTTP send encrypted using a version of the Transport Layer Security (TLS) protocol. Therefore there is a brief introduction into the latest 2 versions - TLS 1.2 and 1.3. In the process of TLS communication, X.509 certificates are used to validate the server and optionally the client as well. Therefore there is a section about X.509 certificates as well.
-
4.1. Introduction to Cryptography
4.6. Message Authentication Code (MAC)
4.7. Digital Signatures
4.8. Forward Secrecy
-
5.3. Certificate Signature Structure
5.4. Verifying the Chain of Trust
5.5. Certificate File Formats and File Extensions
-
7.2. TLS 1.3 Session Resumption and PSK
7.3. TLS 1.3 0-RTT Data
There is also a glossary:
A. Glossary
The sources are specific references (HTML anchors) to the sections of the source material, which are identified by superscript UTF-8 numbers (⁰¹²³⁴⁵⁶⁷⁸⁹
). If one sentence has multiple sources for the information provided, they are separated by ᐟ
. So e.g. ¹⁵³ᐟ²⁸ references source number 153 and 28 in the "Sources" markdown file:
B. Sources
The "References" contains each used source material once without anchors:
C. References
I have to thank the manufactures of my PC hardware and my PC for not breaking down or crashing while writing this having 40 GB of commmited memory. 🔥
No seriously, most of the Cryptopgraphic Methods section comes from the Encryption, Authentication Survival Guide from the ZYTRAX, Inc. website and the company gave me permission to use their material, so a big thankyou to ZYTRAX, Inc. 🙏
I also want to thank the security.stackexchange user mti2935 for pointing out that the certificates on wikipedia were printed using OpenSSL. 🙏
You can leave all your money here:
As a human being i will have made and will make a lot of mistakes of all kinds. Fortunately for digital stuff, mistakes can be corrected. If you find language errors (i'm not a native english speaker and hate commas), technical inaccuracies, wrong or unfullfilling sources, or just have suggestions to enhance the quality of this writing, you can create issues or better, pull requests. It'll take time, but i probably will come back to those every few month.
On my profile page you'll find a mail address as a logged in github user.
The materials herein are all © 2020 goulashsoup (Github user).
This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.