From b89928b43331069ec1b61a437b66673b715164c1 Mon Sep 17 00:00:00 2001 From: Tait Hoyem <44244401+TTWNO@users.noreply.github.com> Date: Mon, 6 Apr 2020 04:02:51 +0000 Subject: [PATCH] Add files for blog post 3 of INTP; add .terminal CSS class. The blog post dates are a lie. --- 2 | 315 +++++++++++++++ _includes/footer.html | 2 + _layouts/post.html | 2 + _posts/2020-04-02-rsa3.md | 146 +++++++ _posts/2020-04-06-rsa4.md | 345 ++++++++++++++++ _sass/main.scss | 18 + _site/2 | 349 ++++++++++++++++ _site/2020-01-23-sql-joins.html | 4 + _site/2020/01/22/padding-and-margin.html | 4 + _site/2020/01/26/rsa1.html | 4 + _site/2020/02/19/rsa2.html | 4 + _site/2020/04/02/rsa3.html | 182 +++++++++ _site/2020/04/06/rsa4.html | 381 ++++++++++++++++++ _site/README.md | 21 + _site/assets/css/style.css | 6 + _site/assets/css/style.css.map | 4 +- _site/assets/img/alice-sign-to-bob.png | Bin 0 -> 22372 bytes _site/assets/img/alice-to-bob.png | Bin 0 -> 28397 bytes _site/assets/img/ec.png | Bin 0 -> 31679 bytes _site/assets/img/keyring.jpg | Bin 0 -> 68309 bytes _site/assets/img/public-key-example1.svg | 201 ++++++++++ _site/assets/img/wget-log | 12 + _site/blog/index.html | 20 + _site/feed.xml | 486 ++++++++++++++++++++++- _site/robots.txt | 2 +- _site/sitemap.xml | 24 +- assets/img/alice-sign-to-bob.png | Bin 0 -> 22372 bytes assets/img/alice-to-bob.png | Bin 0 -> 28397 bytes assets/img/ec.png | Bin 0 -> 31679 bytes assets/img/keyring.jpg | Bin 0 -> 68309 bytes assets/img/public-key-example1.svg | 201 ++++++++++ assets/img/wget-log | 12 + 32 files changed, 2731 insertions(+), 14 deletions(-) create mode 100644 2 create mode 100644 _includes/footer.html create mode 100644 _posts/2020-04-02-rsa3.md create mode 100644 _posts/2020-04-06-rsa4.md create mode 100644 _site/2 create mode 100644 _site/2020/04/02/rsa3.html create mode 100644 _site/2020/04/06/rsa4.html create mode 100644 _site/assets/img/alice-sign-to-bob.png create mode 100644 _site/assets/img/alice-to-bob.png create mode 100644 _site/assets/img/ec.png create mode 100644 _site/assets/img/keyring.jpg create mode 100644 _site/assets/img/public-key-example1.svg create mode 100644 _site/assets/img/wget-log create mode 100644 assets/img/alice-sign-to-bob.png create mode 100644 assets/img/alice-to-bob.png create mode 100644 assets/img/ec.png create mode 100644 assets/img/keyring.jpg create mode 100644 assets/img/public-key-example1.svg create mode 100644 assets/img/wget-log diff --git a/2 b/2 new file mode 100644 index 0000000..2f51542 --- /dev/null +++ b/2 @@ -0,0 +1,315 @@ +--- +title: How To Encrypt Your Own Documents Using gpg +layout: post +author: tait +--- + +If you have ever wanted to garuntee the utmost security of your emails and documents, then this is the guide for you! +It should be noted that in some circles the tools used are more common than in others. +These are the everyday tools of many privacy advocates and computer nerds. + +If you have never used Linux however, then the method of doing this will be rather unfamiliar. +This tutorial will be done on an [Arch Linux](https://archlinux.org/) machine, +but it should be the same on Ubuntu, Fedora, CentOS, Debian, +OpenBSD, FreeBSD, MacOSX, etc. +The only operating system that does not include these tools by default (or easily accessible) is Windows. + +*Let us...begin!* + +## Glossary + +* [**ASCII armour**](https://en.wikipedia.org/wiki/Binary-to-text_encoding#ASCII_armor) --- A way to encode **OpenPGP** documents so they are readable by humans. These files end in .asc +* **(Open)PGP** --- An open standard for encoding pulbic keys and encrypted documents. +* **GPG** --- GNUPrivacyGaurd is an implementation of **OpenPGP**. It is installed by default on most Linux distrobutions. + +## Step 0: Setup + +We will be using the utility `gpg` for this tutorial. + +The other thing to note: The character '$' (dollar sign) is usually not typed when shown in a command. +It simply indicates that you do not need administrative privilages to run these commands. + +Test to see if you get this output in your terminal. + +
+$ gpg --version
+
+gpg (GnuPG) 2.2.20
+libgcrypt 1.8.5
+Copyright (C) 2020 Free Software Foundation, Inc.
+License GPLv3+: GNU GPL version 3 or later 
+
+...
+
+ +If this is not successful look into how to install these tools on your system. + +## Step 1: Get/Create A Public Key! + +### Get Somebody Else's +Step one is having somebody to send your encrypted message to. Maybe this is a friend, a journalist, or a whistleblower. + +To encrypt a document with somebody's public key, you need to first obtain it. +My public key is available [at this link](/public-key.asc), and you can use it to send me encrypted stuff. + +If you are on a linux terminal, you can use the `curl` or `wget` command to download it. + +wget: +
+$ wget https://tait.tech/public-key.asc
+
+ +Curl: +
+$ curl https://tait.tech/public-key.asc -o public-key.asc
+
+ +### Make Your Own (optional) + +The following section is quite long, +so if you don't want to create your own keypair, +then feel free to skip to [Step #2](#step-2-import-public-key). + +If you want to encrypt your own documents, +or you want others to be able to send you encrypted messages, +then you can create your own public/private key pair. +You can use these to encrypt your documents, +and you can send our public key to others so that they can securely communicate with yourself. + +Run the following command in your terminal, and follow the steps I outline to get you started. + +
+$ gpg --full-gen-key
+
+ +This will produce the following dialog: + +
+gpg (GnuPG) 2.2.20; Copyright (C) 2020 Free Software Foundation, Inc.
+This is free software: you are free to change and redistribute it.
+There is NO WARRANTY, to the extent permitted by law.
+
+Please select what kind of key you want:
+  (1) RSA and RSA (default)
+  (2) DSA and Elgamal
+  (3) DSA (sign only)
+  (4) RSA (sign only)
+  (14) Existing key from card
+Your selection? 
+
+ +Select the option `1`. You want two keys, both RSA. + +Next we will select the key size: +
+RSA keys may be between 1024 and 4096 bits long.
+What keysize do you want? (2048) 
+
+ +Type the number 2048. + +Next it will ask you how long you want the key to be valid. + +
+Requested keysize is 2048 bits
+Please specify how long the key should be valid.
+          0 = key does not expire
+       <n>  = key expires in n days
+       <n>w = key expires in n weeks
+       <n>m = key expires in n months
+       <n>y = key expires in n years
+Key is valid for? (0)
+
+ +Type the number 1. This will enable you time to test it, +but it will make the key expire within 24 hours so that if you accidentally +share your private key, or delete your VM and no longer have access to it, you will be fine. + +It will ask your if you are sure about the expiry date. + +
+Key expires at Tue Apr  7 02:24:23 2020 UTC
+Is this correct? (y/N) 
+
+ +Type `y` to confirm your choice. + +Now `gpg` is going to ask you to create a user id to indetify this key. +Use some test data for now. +User input is in bold, feel free to follow along or to put your own test data in. + +Once you are more comfortable with the tools, +then you can create a public/private keypair that you will keep for some time. + +
+GnuPG needs to construct a user ID to identify your key.
+
+Real name: Mr. Tester
+Email address: test@test.org
+Comment: for testing only
+You selected this USER-ID:
+    "Mr. Tester (for testing only) "
+
+Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O
+
+ +It will then ask you for a password. +If you are simply using this for test purposes, +then you can feel free to set it to something like "test". +When create a long-term use pulbic key make sure to make the password *very* secure. + +During the process of creating your key, `gpg` may warn you with this message: + +
+We need to generate a lot of random bytes. It is a good idea to perform
+some other action (type on the keyboard, move the mouse, utilize the
+disks) during the prime generation; this gives the random number
+generator a better chance to gain enough entropy.
+
+ +If this happens, feel free to smash your keyboard (lightly), +watch a YouTube video on the machine, +browse the web with [w3m](http://w3m.sourceforge.net/), +etc. until the key is generated. + +You will know it is done when you see this message (or something similar): + +
+gpg: key EACCC490291EA7CE marked as ultimately trusted
+gpg: revocation certificate stored as '/home/tait/.config/gnupg/openpgp-revocs.d/FFA7D7525C6546983F1152D8EACCC490291EA7CE.rev'
+public and secret key created and signed.
+
+pub   rsa2048 2020-04-06 [SC] [expires: 2020-04-07]
+      FFA7D7525C6546983F1152D8EACCC490291EA7CE
+      uid                      Mr. Tester (for testing only) 
+      sub   rsa2048 2020-04-06 [E] [expires: 2020-04-07]
+
+ +Tada! You have your own public/private keypair! + +Sharing a keypair that will expire soon is not a good idea, +however, if you are ready, then you can use this command to generate a public key file to share with others. + +Feel free to substitute "Mr. Tester" for any other identifying part of your key. +Remember that to use the email, you must enclose it in < and >. + +
+$ gpg --export --armour "Mr. Tester" > public-key.asc
+
+ +To use the email as the identifier: +
+$ gpg --export --armour "" > public-key.asc
+
+ +## Step 2: Import Public Key + +This list of keys that `gpg` keeps on tap so to speak, is called our "keyring". +Your will need to import a new public key to encrypt files with `gpg`. + +If you already created your own public key, then this step is not necessary unless you want to also encrypt something for me :) + +
+ A keyring holding eight allen keys. +
+ A keyring holding eight allen keys. +
+
+ +To import a public key to use for encrypting files, use the `--import` option of `gpg`. Like so: + +
+$ gpg --import public-key.asc
+gpg: key 64FB4E386953BEAD: public key "Tait Hoyem " imported
+gpg: Total number processed: 1
+gpg:               imported: 1
+
+ +Now that we have imported a public key, we can make a message to send! + +## Step 3: Have A Message To Encrypt + +We can make a new file which holds some important, secret data. +Feel free to use a graphical editor if you have one, if not, `nano` works alright too. +Feel free to encrypt this and send it to me to see if it works! + +
+  Rules Of A Good Life:
+
+  1. Wash your hands!
+  2. Work hard!
+  3. Be firm.
+  5. Have good friends!
+
+ +Save this file as something like `test-pgp.txt`, and we'll use that name later :) + +## Step 4: Encrypt A Message + +Now that we have a message to send and person to send to, +all we have to do is encrypt this message and it'll be on its merry way! +To do so, we must specify two new options to `gpg`. + +The first is `--recipient`. +This tells `gpg` to encrypt using a certina public key that we have in our keyring. +We can use the person's name, email address, or the key's uid. + +The second is `--encrypt`. +Put the file name after this option. + +We will also specify the `--armour` option to use ASCII armoured files. + +### On With It! + +Ok, yes! +Let's encrypt our document now. + +We will be using my name to identify the key. +In the very strange case you have two keys in your keyring named after me, this will fail... +But at that point I have other questions. + +This is the big one! + +
+$ gpg --recipient "Tait Hoyem" --encrypt --armour test-gpg.txt
+
+ +"But there is no output!" you might say! +Yes, that is because our new (encrypted) file has already been saved. +Let's look at it with cat. + +
+$ cat test-gpg.txt.asc
+-----BEGIN PGP MESSAGE-----
+
+hQIMA2mJuYb8vkIlAQ/9FDmXJgW2vI7p9sznKvHhQk7uTZvoWC3hCeqHoO3BSElP
+XR1BNAkJ+bykB30M+9u+XDyRtTwazjvNPmYfQnIh0Q+BQZigDWbEd1R47jbzm7Tu
+0eZKKapgEidfecULtaECX1sR3qPt1m9oZjyUR1rzNd8tezZlCu2pjdNZrkta2Bdm
+Hh1xDS43Bw7PMQqraJsHwqr0M1GLDbMzPes2ZU5y4jEmXZ0PZdJ7kgjR8dvhLBfi
+MU+4kYnnemQEztXBOjKidhyOntKiLjenvD00tVHrOuQoWuWCHGiqR24qSwVjeb9G
+079gqH1VWi3fk2cwFA9f3TLvJqUwatyE0Hcba0U1d2Voz/C9JEQjT6FHuaCqQL6b
+p7B7m2DwpywFGJpAn6ksrEYqHaLVWiEGmdMmHYuHxMw8+cqoSwbYymCZTwMBAuJe
+Pr1VO9uNo+Vj5r8IX7ACcSsrjf0XkVzfX6ySsPbyOlGXnwzWSOM3Dk2Z9MqDORbj
+0/7vJTnDctPuc91Rlp3YnJlZKWMcNfPMKMtvpljd2XuVwub+C4vGWXa9XLbRXmJo
+cnEFT6SB11AKjytE2Urt62CCrYjJPBneabxbCztnBs+vQSx7Fj0LK6v4Euik/Xm/
+9aKmZZW8306c9Zwgpp9glWjLMCDNxJRGdKRjZsnkt9hOEYsP1irTegystK6u4eHS
+mwHX931ENOJsnPfQZCZ9b41Q9doZQ/N/WHstQO8MtA3HIN1sW3wYkGzOLKj4gJfm
+bqR/TzQmXyLT1xZa+/yTscaV0P4OlI4vcii/k4DgeSeQVWp9o9DbZFxSCsdYVvPu
+jaDMzZnIKoax1GFz/coUAHFQub2rLzaQ5DDbvrkX++UrAjuUtRcSFH0TKhahZmCF
+nv117moLfK22Mst/
+=bw8T
+-----END PGP MESSAGE-----
+
+ +## Step 5: Finale! + +Ladies and gentleman, we have done it! +We have encrypted our very own document. + +Feel free to send it to [my email (tait@tait.tech)](mailto:tait@tait.tech). +I am happy to verify if it worked. + +For more information on this subject, check out [gnugp.org's guide](https://www.gnupg.org/gph/en/manual/c14.html) on using GPG. +They are the ones that make these tools available, +and the [GNU Project](https://www.gnu.org/) has been instrumental in creating the open-source world as it exists today. + diff --git a/_includes/footer.html b/_includes/footer.html new file mode 100644 index 0000000..5e0ea02 --- /dev/null +++ b/_includes/footer.html @@ -0,0 +1,2 @@ + diff --git a/_layouts/post.html b/_layouts/post.html index caf3bc9..06d3c61 100644 --- a/_layouts/post.html +++ b/_layouts/post.html @@ -7,3 +7,5 @@ layout: default
{{ content }}
+ +{% include footer.html %} diff --git a/_posts/2020-04-02-rsa3.md b/_posts/2020-04-02-rsa3.md new file mode 100644 index 0000000..4dd28ce --- /dev/null +++ b/_posts/2020-04-02-rsa3.md @@ -0,0 +1,146 @@ +--- +title: "How Asymetric Encryption Works" +layout: post +author: tait +--- +In a few previous articles I have explained [why encryption may be important to you](/2020/01/26/rsa1.html) and [how the theory behind encryption works](/2020/02/19/rsa2.html). I did not yet explain the system of asymetric cryptography, however. That is what this article is for. + +Previously, we talked about how *symetric* encryption works. This is by having a shared key that both parties use to simultaniously encrypt, and decrypt the data. (See Ceasar Cipher for example). + +## Public-key, or Asymetric Encryption + +Asymetric encryption is based on the idea of having multiple keys instead of only one shared key. +For example: instead of encrypting with one key, and decrypting with that same key (like our ROT ciphers we talked about previously), we can use one key to *encrypt* the information, and a different key to *decrypt* the information. + +
+ Alice sending her message to Bob using Bob's public key. Bob decrypts the message with his private key. +
+ Alice sending her message to Bob using Bob's public key. Bob decrypts the message with his private key. +
+
+ +In the picture above, see how Alice uses Bob's public key to encrypt some data, +then sends it to Bob for him to decrypt with his private key? +That is the essense of public-key encryption. + +The great thing about public-key encryption is that your public key is *public*! There is no need to be afraid of sending this everywhere! +You can attach it at the end of all your emails, the end of your forum posts, [a link to it on your low-power webserver](/public-key.asc) (wink). +There are even things called [keyservers](http://keys.gnupg.net/) that will save your public key on them for retrival in case somebody wants to verify your public key. + +Anything encrypted with your public key can only be decrypted with your private key. +Provided you never, *NEVER* share your private key with anyone ever, we can assume that all messages sent to you encrypted with your public key will never be read by anyone else. + +Asymetric encryption, however, often contains four keys instead of two. Why is this? + +#### Verification of Author + +One interesting thing about keys pairs is that not only can the private key decrypt anything the public key encrypts, +but the public key can decrypt anything the private key encrypts. + +Now why would one want to encrypt a message that can be decrypted by anyone? + +
+ Alice sending a message to bob which is 'signed' with her private key. This allows Bob to know only Alice could have sent it! +
+ Alice sending a message to bob which is 'signed' with her private key. This allows Bob to know only Alice could have sent it! +
+
+ Note: Although the picture shows otherwise, the text is not sent in the plain. It is encrypted with Alice's private key. +
+
+ +This is how you can verify that the person who says they wrote the message really did indeed write the message! +If their private key was never shared with anyone else, then the message must have come from them! + +For maximum security, these methods are often layered. +First, signing with the sender's private key, +ensuring only they could have sent it--- +then encrypted with the recipient's pulbic key, +making sure only the reciever can read it. + +Note that both sides must first have eachother's public keys to do this. +This is easy if they communicate often, but when first contacting somebody, +people will generally send their encrypted message along with the their own pulbic key attached in a seperate file. + +### What This Means + +Notice neither Alice nor Bob had to share any comprimsing information over the network? +This is why public-key encryption is so powerful! + +Alice and Bob can both safely send their public keys in the open. +They can even send them over the insecure HTTP, or FTP protocols. + +Whilst not sending any encryption-breaking messages, +Alice and Bob now have a way to communicate securely. +If you trust nothing and no one, this is your perfered method of security. + + +Check out this [Computerphile video](https://www.youtube.com/watch?v=GSIDS_lvRv4) if you want the simplified explaination. + +### The Algorithms + +The two biggest "implementations" of public-key cryptography vary only in the mathamatical equations used to generate the numbers, +and how the numbers are ["trapdoored"](https://en.wikipedia.org/wiki/Trapdoor_function) to decrypt if you have the correct key. + +I will discuss the differences in approach here. +If you want to skip to the next article where I show you how to encrypt your own documents using RSA, see [this link](/2020/04/06/rsa4.html). + +### RSA + +The mathamatic center of the RSA system was developed over the course of a year or so. +Three men were involved. Ron Rivest, Adi Shamir, and Leonard Aldeman. +They worked as a kind of "team": Each idea by Rivest and Shamir were critisized by the mathamatician on their team: Mr. Aldeman. + +One night, after consuming +["liberal quantities of Manischewitz wine"](https://www.math.uchicago.edu/~may/VIGRE/VIGRE2007/REUPapers/FINALAPP/Calderbank.pdf) +Rivest had trouble sleeping. +After taking long gazes into the abyss of his math textbook, he came up with an idea which would change cryptography forever. +By the next morning, an academic mathamatical paper was nearly finished. +He named it after himself and the two others that had been helping him along this whole time. *Rivest, Shamir, Aldeman*. + +Key sizes of RSA range from 1024-bit to 4096-bit. +1024-bit keys are considered somewhat insecure. +However, +it should be noted that every bit doubles the complexity of the key, +so 2048 is [2^1024](https://www.wolframalpha.com/input/?i=2%5E1024) times more complex than 1024. + +### Eliptic-Curve (EC) + +Eliptic-Curve (EC) is a family of algorithms that use the [Eliptic curve](https://en.wikipedia.org/wiki/Elliptic_curve) mathamatical structure to generate the numbers for the keys. +EC can effectivly provide the security of an RSA key [one order of magnitude larger](https://www.youtube.com/watch?v=NF1pwjL9-DE) than an RSA key. + +
+ A picture of an eliptic curve. +
+ An eliptic curve structure. +
+
+ +It's fast; it's secure! Perfect right? + +Of course not! + +One problem is that due to the smaller key size, +it can more easily be broken by brute-force. +This is why EC is mostly used for temporary communication (like HTTPS), not permenant communication (like having an encrypted email conversation with a journalist). + +The other problem is that a certain EC algrorithm called P-256 is suspected to be introduced with malice to National Institute of Standards and Technology (NIST) +[by the NSA](https://www.schneier.com/essays/archives/2007/11/did_nsa_put_a_secret.html). +Supposedly, the NSA is able to crack anything encrypted with this algorithm. +I will let the experts argure about that. + +Other well-known EC algorithms that are more-or-less trusted as secure do exist though. +The premeire one being Curve25519. +The reference implementation of [this algrorithm](https://cr.yp.to/ecdh.html) is also [public-domain](https://fairuse.stanford.edu/overview/public-domain/welcome/), +so it is easy for devlopers to work into their own applications without worrying about copywrite. + +## Conslusion + +In this article we went over some basic points: + +1. Public-key encryption enables secure communication over insecure networks. +2. RSA is considered the standard for extra-seure communication. +3. EC is a newer, faster, more transient encryption method. + +To learn how to use RSA keys to encrypt your own communications, check out [this other aritcle I wrote](/2020/04/06/rsa4.html). + diff --git a/_posts/2020-04-06-rsa4.md b/_posts/2020-04-06-rsa4.md new file mode 100644 index 0000000..453bfa6 --- /dev/null +++ b/_posts/2020-04-06-rsa4.md @@ -0,0 +1,345 @@ +--- +title: How To Encrypt Your Own Documents Using gpg +layout: post +author: tait +--- + +If you have ever wanted to garuntee the utmost security of your emails and documents, then this is the guide for you! +It should be noted that in some circles the tools used are more common than in others. +These are the everyday tools of many privacy advocates and computer nerds. + +If you have never used Linux however, then the method of doing this will be rather unfamiliar. +This tutorial will be done on an [Arch Linux](https://archlinux.org/) machine, +but it should be the same on Ubuntu, Fedora, CentOS, Debian, +OpenBSD, FreeBSD, MacOSX, etc. +The only operating system that does not include these tools by default (or easily accessible) is Windows. + +This tutorial makes heavy use of the terminal. +You have been warned. + +*Let us...begin!* + +## Glossary + +* [**ASCII armour**](https://en.wikipedia.org/wiki/Binary-to-text_encoding#ASCII_armor) --- A way to encode **OpenPGP** documents so they are readable by humans. These files end in .asc +* **(Open)PGP** --- An open standard for encoding pulbic keys and encrypted documents. +* **GPG** --- GNUPrivacyGaurd is an implementation of **OpenPGP**. It is installed by default on most Linux distrobutions. + +## Step 0: Setup + +We will be using the utility `gpg` for this tutorial. + +The other thing to note: The character '$' (dollar sign) is usually not typed when shown in a command. +It simply indicates that you do not need administrative privilages to run these commands. + +Test to see if you get this output in your terminal. + +
+$ gpg --version
+
+gpg (GnuPG) 2.2.20
+libgcrypt 1.8.5
+Copyright (C) 2020 Free Software Foundation, Inc.
+License GPLv3+: GNU GPL version 3 or later 
+
+...
+
+ +If this is not successful look into how to install these tools on your system. + +## Step 1: Get/Create A Public Key! + +### Get Somebody Else's +Step one is having somebody to send your encrypted message to. Maybe this is a friend, a journalist, or a whistleblower. + +To encrypt a document with somebody's public key, you need to first obtain it. +My public key is available [at this link](/public-key.asc), and you can use it to send me encrypted stuff. + +If you are on a linux terminal, you can use the `curl` or `wget` command to download it. + +wget: +
+$ wget https://tait.tech/public-key.asc
+
+ +Curl: +
+$ curl https://tait.tech/public-key.asc -o public-key.asc
+
+ +### Make Your Own (optional) + +The following section is quite long, +so if you don't want to create your own keypair, +then feel free to skip to [Step #2](#step-2-import-public-key). + +If you want to encrypt your own documents, +or you want others to be able to send you encrypted messages, +then you can create your own public/private key pair. +You can use these to encrypt your documents, +and you can send our public key to others so that they can securely communicate with yourself. + +Run the following command in your terminal, and follow the steps I outline to get you started. + +
+$ gpg --full-gen-key
+
+ +This will produce the following dialog: + +
+gpg (GnuPG) 2.2.20; Copyright (C) 2020 Free Software Foundation, Inc.
+This is free software: you are free to change and redistribute it.
+There is NO WARRANTY, to the extent permitted by law.
+
+Please select what kind of key you want:
+  (1) RSA and RSA (default)
+  (2) DSA and Elgamal
+  (3) DSA (sign only)
+  (4) RSA (sign only)
+  (14) Existing key from card
+Your selection? 
+
+ +Select the option `1`. You want two keys, both RSA. + +Next we will select the key size: +
+RSA keys may be between 1024 and 4096 bits long.
+What keysize do you want? (2048) 
+
+ +Type the number 2048. + +Next it will ask you how long you want the key to be valid. + +
+Requested keysize is 2048 bits
+Please specify how long the key should be valid.
+          0 = key does not expire
+       <n>  = key expires in n days
+       <n>w = key expires in n weeks
+       <n>m = key expires in n months
+       <n>y = key expires in n years
+Key is valid for? (0)
+
+ +Type the number 1. This will enable you time to test it, +but it will make the key expire within 24 hours so that if you accidentally +share your private key, or delete your VM and no longer have access to it, you will be fine. + +It will ask your if you are sure about the expiry date. + +
+Key expires at Tue Apr  7 02:24:23 2020 UTC
+Is this correct? (y/N) 
+
+ +Type `y` to confirm your choice. + +Now `gpg` is going to ask you to create a user id to indetify this key. +Use some test data for now. +User input is in bold, feel free to follow along or to put your own test data in. + +Once you are more comfortable with the tools, +then you can create a public/private keypair that you will keep for some time. + +
+GnuPG needs to construct a user ID to identify your key.
+
+Real name: Mr. Tester
+Email address: test@test.org
+Comment: for testing only
+You selected this USER-ID:
+    "Mr. Tester (for testing only) "
+
+Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O
+
+ +It will then ask you for a password. +If you are simply using this for test purposes, +then you can feel free to set it to something like "test". +When create a long-term use pulbic key make sure to make the password *very* secure. + +During the process of creating your key, `gpg` may warn you with this message: + +
+We need to generate a lot of random bytes. It is a good idea to perform
+some other action (type on the keyboard, move the mouse, utilize the
+disks) during the prime generation; this gives the random number
+generator a better chance to gain enough entropy.
+
+ +If this happens, feel free to smash your keyboard (lightly), +watch a YouTube video on the machine, +browse the web with [w3m](http://w3m.sourceforge.net/), +etc. until the key is generated. + +You will know it is done when you see this message (or something similar): + +
+gpg: key EACCC490291EA7CE marked as ultimately trusted
+gpg: revocation certificate stored as '/home/tait/.config/gnupg/openpgp-revocs.d/FFA7D7525C6546983F1152D8EACCC490291EA7CE.rev'
+public and secret key created and signed.
+
+pub   rsa2048 2020-04-06 [SC] [expires: 2020-04-07]
+      FFA7D7525C6546983F1152D8EACCC490291EA7CE
+      uid                      Mr. Tester (for testing only) 
+      sub   rsa2048 2020-04-06 [E] [expires: 2020-04-07]
+
+ +Tada! You have your own public/private keypair! + +Sharing a keypair that will expire soon is not a good idea, +however, if you are ready, then you can use this command to generate a public key file to share with others. + +Feel free to substitute "Mr. Tester" for any other identifying part of your key. +Remember that to use the email, you must enclose it in < and >. + +
+$ gpg --export --armour "Mr. Tester" > public-key.asc
+
+ +To use the email as the identifier: +
+$ gpg --export --armour "" > public-key.asc
+
+ +## Step 2: Import Public Key + +This list of keys that `gpg` keeps on tap so to speak, is called our "keyring". +Your will need to import a new public key to encrypt files with `gpg`. + +If you already created your own public key, then this step is not necessary unless you want to also encrypt something for me :) + +
+ A keyring holding eight allen keys. +
+ A keyring holding eight allen keys. +
+
+ +To import a public key to use for encrypting files, use the `--import` option of `gpg`. Like so: + +
+$ gpg --import public-key.asc
+gpg: key 64FB4E386953BEAD: public key "Tait Hoyem " imported
+gpg: Total number processed: 1
+gpg:               imported: 1
+
+ +Now that we have imported a public key, we can make a message to send! + +## Step 3: Have A Message To Encrypt + +You can make a new file which holds some important, secret data. +Feel free to use a graphical editor if you have one, if not, `nano` works alright too. + +
+  Rules Of A Good Life:
+
+  1. Wash your hands!
+  2. Work hard!
+  3. Be firm.
+  5. Have good friends!
+
+ +Save this file as something like `test-pgp.txt`, and we'll use that name later. + +## Step 4: Encrypt A Message + +Now that we have a message to send and person to send to, +all we have to do is encrypt this message and it'll be on its merry way! +To do so, we must specify two new options to `gpg`. + +The first is `--recipient`. +This tells `gpg` to encrypt using a certin public key that we have in our keyring. +You can use the person's name, email address, or the key's uid. + +The second is `--encrypt`. + +You will also specify the `--armour` option to use ASCII armoured files. Put this option after `--encrypt`, and put the file name after `--armour`. See below. + +You can either use your own public key name to encrypt a document (allowng only you to decrypt it), +or you can use my public key that we imported earlier (allowing only me to decrypt it). +Either way works fine. + +This is the big one! + +
+$ gpg --recipient "Tait Hoyem" --encrypt --armour test-gpg.txt
+
+ +"But there is no output!" you might say! +Yes, that is because our new (encrypted) file has already been saved. +Let's look at it with cat. + +
+$ cat test-gpg.txt.asc
+-----BEGIN PGP MESSAGE-----
+
+hQIMA2mJuYb8vkIlAQ/9FDmXJgW2vI7p9sznKvHhQk7uTZvoWC3hCeqHoO3BSElP
+XR1BNAkJ+bykB30M+9u+XDyRtTwazjvNPmYfQnIh0Q+BQZigDWbEd1R47jbzm7Tu
+0eZKKapgEidfecULtaECX1sR3qPt1m9oZjyUR1rzNd8tezZlCu2pjdNZrkta2Bdm
+Hh1xDS43Bw7PMQqraJsHwqr0M1GLDbMzPes2ZU5y4jEmXZ0PZdJ7kgjR8dvhLBfi
+MU+4kYnnemQEztXBOjKidhyOntKiLjenvD00tVHrOuQoWuWCHGiqR24qSwVjeb9G
+079gqH1VWi3fk2cwFA9f3TLvJqUwatyE0Hcba0U1d2Voz/C9JEQjT6FHuaCqQL6b
+p7B7m2DwpywFGJpAn6ksrEYqHaLVWiEGmdMmHYuHxMw8+cqoSwbYymCZTwMBAuJe
+Pr1VO9uNo+Vj5r8IX7ACcSsrjf0XkVzfX6ySsPbyOlGXnwzWSOM3Dk2Z9MqDORbj
+0/7vJTnDctPuc91Rlp3YnJlZKWMcNfPMKMtvpljd2XuVwub+C4vGWXa9XLbRXmJo
+cnEFT6SB11AKjytE2Urt62CCrYjJPBneabxbCztnBs+vQSx7Fj0LK6v4Euik/Xm/
+9aKmZZW8306c9Zwgpp9glWjLMCDNxJRGdKRjZsnkt9hOEYsP1irTegystK6u4eHS
+mwHX931ENOJsnPfQZCZ9b41Q9doZQ/N/WHstQO8MtA3HIN1sW3wYkGzOLKj4gJfm
+bqR/TzQmXyLT1xZa+/yTscaV0P4OlI4vcii/k4DgeSeQVWp9o9DbZFxSCsdYVvPu
+jaDMzZnIKoax1GFz/coUAHFQub2rLzaQ5DDbvrkX++UrAjuUtRcSFH0TKhahZmCF
+nv117moLfK22Mst/
+=bw8T
+-----END PGP MESSAGE-----
+
+ +## Step 5: Decryption (optional) + +If you created your own public/private keypair in step 1, +and you encryped using `--recipient "Your Test Name"`, +then you can decrypt your document as well! + +You will need to specify `--decrypt`, and that's all folks! + +
+$ gpg --decrypt test-gpg.txt.asc
+
+ +A password dialog will then come up asking for your previously created password. +As long as you remember your password from before and enter it correctly: voila! + +
+gpg: encrypted with 4096-bit RSA key, ID 6989B986FCBE4225, created 2020-01-02
+      "Tait Hoyem "
+Rules Of A Good Life:
+
+1. Wash your hands!
+2. Work hard!
+3. Be firm.
+5. Have good friends!
+
+ +## Step 6: Finale! + +Ladies and gentleman, you have done it! +You have encrypted our very own document. +(And maybe even decrypted it yourself too :) + +If you encrypted using my public key, +feel free to send it to [my email](mailto:tait@tait.tech). +I am happy to verify if it worked. + +For more information on this subject, check out [gnugp.org's guide](https://www.gnupg.org/gph/en/manual/c14.html) on using GPG. +They are the ones that make these tools available, +and the [GNU Project](https://www.gnu.org/) has been instrumental in creating the open-source world as it exists today. +Give 'em some love, eh! + +Thank you so much for sticking through this whole thing! +Let me know if there is anything that doesn't make sense. +I am happy to improve this guide as time goes on if that is necessary. + +Happy hacking :) diff --git a/_sass/main.scss b/_sass/main.scss index 5b7a079..1ed42f9 100644 --- a/_sass/main.scss +++ b/_sass/main.scss @@ -209,3 +209,21 @@ figcaption { font-size: .8em; text-decoration: italic; } + +footer { + border-top: $line-under; + margin-bottom: 100px; +} + +.terminal { + line-height: 1em; + overflow: scroll; + padding: 10px; + color: #00FF41; + margin: 0px; + background-color: #151515; +} + +.small-image { + width: 100%; +} diff --git a/_site/2 b/_site/2 new file mode 100644 index 0000000..26ccb5f --- /dev/null +++ b/_site/2 @@ -0,0 +1,349 @@ + + + + + How To Encrypt Your Own Documents Using gpg + + + + +
+ + +

How To Encrypt Your Own Documents Using gpg

+

+ +
+ If you have ever wanted to garuntee the utmost security of your emails and documents, then this is the guide for you! +It should be noted that in some circles the tools used are more common than in others. +These are the everyday tools of many privacy advocates and computer nerds. + +If you have never used Linux however, then the method of doing this will be rather unfamiliar. +This tutorial will be done on an [Arch Linux](https://archlinux.org/) machine, +but it should be the same on Ubuntu, Fedora, CentOS, Debian, +OpenBSD, FreeBSD, MacOSX, etc. +The only operating system that does not include these tools by default (or easily accessible) is Windows. + +*Let us...begin!* + +## Glossary + +* [**ASCII armour**](https://en.wikipedia.org/wiki/Binary-to-text_encoding#ASCII_armor) --- A way to encode **OpenPGP** documents so they are readable by humans. These files end in .asc +* **(Open)PGP** --- An open standard for encoding pulbic keys and encrypted documents. +* **GPG** --- GNUPrivacyGaurd is an implementation of **OpenPGP**. It is installed by default on most Linux distrobutions. + +## Step 0: Setup + +We will be using the utility `gpg` for this tutorial. + +The other thing to note: The character '$' (dollar sign) is usually not typed when shown in a command. +It simply indicates that you do not need administrative privilages to run these commands. + +Test to see if you get this output in your terminal. + +
+$ gpg --version
+
+gpg (GnuPG) 2.2.20
+libgcrypt 1.8.5
+Copyright (C) 2020 Free Software Foundation, Inc.
+License GPLv3+: GNU GPL version 3 or later 
+
+...
+
+ +If this is not successful look into how to install these tools on your system. + +## Step 1: Get/Create A Public Key! + +### Get Somebody Else's +Step one is having somebody to send your encrypted message to. Maybe this is a friend, a journalist, or a whistleblower. + +To encrypt a document with somebody's public key, you need to first obtain it. +My public key is available [at this link](/public-key.asc), and you can use it to send me encrypted stuff. + +If you are on a linux terminal, you can use the `curl` or `wget` command to download it. + +wget: +
+$ wget https://tait.tech/public-key.asc
+
+ +Curl: +
+$ curl https://tait.tech/public-key.asc -o public-key.asc
+
+ +### Make Your Own (optional) + +The following section is quite long, +so if you don't want to create your own keypair, +then feel free to skip to [Step #2](#step-2-import-public-key). + +If you want to encrypt your own documents, +or you want others to be able to send you encrypted messages, +then you can create your own public/private key pair. +You can use these to encrypt your documents, +and you can send our public key to others so that they can securely communicate with yourself. + +Run the following command in your terminal, and follow the steps I outline to get you started. + +
+$ gpg --full-gen-key
+
+ +This will produce the following dialog: + +
+gpg (GnuPG) 2.2.20; Copyright (C) 2020 Free Software Foundation, Inc.
+This is free software: you are free to change and redistribute it.
+There is NO WARRANTY, to the extent permitted by law.
+
+Please select what kind of key you want:
+  (1) RSA and RSA (default)
+  (2) DSA and Elgamal
+  (3) DSA (sign only)
+  (4) RSA (sign only)
+  (14) Existing key from card
+Your selection? 
+
+ +Select the option `1`. You want two keys, both RSA. + +Next we will select the key size: +
+RSA keys may be between 1024 and 4096 bits long.
+What keysize do you want? (2048) 
+
+ +Type the number 2048. + +Next it will ask you how long you want the key to be valid. + +
+Requested keysize is 2048 bits
+Please specify how long the key should be valid.
+          0 = key does not expire
+       <n>  = key expires in n days
+       <n>w = key expires in n weeks
+       <n>m = key expires in n months
+       <n>y = key expires in n years
+Key is valid for? (0)
+
+ +Type the number 1. This will enable you time to test it, +but it will make the key expire within 24 hours so that if you accidentally +share your private key, or delete your VM and no longer have access to it, you will be fine. + +It will ask your if you are sure about the expiry date. + +
+Key expires at Tue Apr  7 02:24:23 2020 UTC
+Is this correct? (y/N) 
+
+ +Type `y` to confirm your choice. + +Now `gpg` is going to ask you to create a user id to indetify this key. +Use some test data for now. +User input is in bold, feel free to follow along or to put your own test data in. + +Once you are more comfortable with the tools, +then you can create a public/private keypair that you will keep for some time. + +
+GnuPG needs to construct a user ID to identify your key.
+
+Real name: Mr. Tester
+Email address: test@test.org
+Comment: for testing only
+You selected this USER-ID:
+    "Mr. Tester (for testing only) "
+
+Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O
+
+ +It will then ask you for a password. +If you are simply using this for test purposes, +then you can feel free to set it to something like "test". +When create a long-term use pulbic key make sure to make the password *very* secure. + +During the process of creating your key, `gpg` may warn you with this message: + +
+We need to generate a lot of random bytes. It is a good idea to perform
+some other action (type on the keyboard, move the mouse, utilize the
+disks) during the prime generation; this gives the random number
+generator a better chance to gain enough entropy.
+
+ +If this happens, feel free to smash your keyboard (lightly), +watch a YouTube video on the machine, +browse the web with [w3m](http://w3m.sourceforge.net/), +etc. until the key is generated. + +You will know it is done when you see this message (or something similar): + +
+gpg: key EACCC490291EA7CE marked as ultimately trusted
+gpg: revocation certificate stored as '/home/tait/.config/gnupg/openpgp-revocs.d/FFA7D7525C6546983F1152D8EACCC490291EA7CE.rev'
+public and secret key created and signed.
+
+pub   rsa2048 2020-04-06 [SC] [expires: 2020-04-07]
+      FFA7D7525C6546983F1152D8EACCC490291EA7CE
+      uid                      Mr. Tester (for testing only) 
+      sub   rsa2048 2020-04-06 [E] [expires: 2020-04-07]
+
+ +Tada! You have your own public/private keypair! + +Sharing a keypair that will expire soon is not a good idea, +however, if you are ready, then you can use this command to generate a public key file to share with others. + +Feel free to substitute "Mr. Tester" for any other identifying part of your key. +Remember that to use the email, you must enclose it in < and >. + +
+$ gpg --export --armour "Mr. Tester" > public-key.asc
+
+ +To use the email as the identifier: +
+$ gpg --export --armour "" > public-key.asc
+
+ +## Step 2: Import Public Key + +This list of keys that `gpg` keeps on tap so to speak, is called our "keyring". +Your will need to import a new public key to encrypt files with `gpg`. + +If you already created your own public key, then this step is not necessary unless you want to also encrypt something for me :) + +
+ A keyring holding eight allen keys. +
+ A keyring holding eight allen keys. +
+
+ +To import a public key to use for encrypting files, use the `--import` option of `gpg`. Like so: + +
+$ gpg --import public-key.asc
+gpg: key 64FB4E386953BEAD: public key "Tait Hoyem " imported
+gpg: Total number processed: 1
+gpg:               imported: 1
+
+ +Now that we have imported a public key, we can make a message to send! + +## Step 3: Have A Message To Encrypt + +We can make a new file which holds some important, secret data. +Feel free to use a graphical editor if you have one, if not, `nano` works alright too. +Feel free to encrypt this and send it to me to see if it works! + +
+  Rules Of A Good Life:
+
+  1. Wash your hands!
+  2. Work hard!
+  3. Be firm.
+  5. Have good friends!
+
+ +Save this file as something like `test-pgp.txt`, and we'll use that name later :) + +## Step 4: Encrypt A Message + +Now that we have a message to send and person to send to, +all we have to do is encrypt this message and it'll be on its merry way! +To do so, we must specify two new options to `gpg`. + +The first is `--recipient`. +This tells `gpg` to encrypt using a certina public key that we have in our keyring. +We can use the person's name, email address, or the key's uid. + +The second is `--encrypt`. +Put the file name after this option. + +We will also specify the `--armour` option to use ASCII armoured files. + +### On With It! + +Ok, yes! +Let's encrypt our document now. + +We will be using my name to identify the key. +In the very strange case you have two keys in your keyring named after me, this will fail... +But at that point I have other questions. + +This is the big one! + +
+$ gpg --recipient "Tait Hoyem" --encrypt --armour test-gpg.txt
+
+ +"But there is no output!" you might say! +Yes, that is because our new (encrypted) file has already been saved. +Let's look at it with cat. + +
+$ cat test-gpg.txt.asc
+-----BEGIN PGP MESSAGE-----
+
+hQIMA2mJuYb8vkIlAQ/9FDmXJgW2vI7p9sznKvHhQk7uTZvoWC3hCeqHoO3BSElP
+XR1BNAkJ+bykB30M+9u+XDyRtTwazjvNPmYfQnIh0Q+BQZigDWbEd1R47jbzm7Tu
+0eZKKapgEidfecULtaECX1sR3qPt1m9oZjyUR1rzNd8tezZlCu2pjdNZrkta2Bdm
+Hh1xDS43Bw7PMQqraJsHwqr0M1GLDbMzPes2ZU5y4jEmXZ0PZdJ7kgjR8dvhLBfi
+MU+4kYnnemQEztXBOjKidhyOntKiLjenvD00tVHrOuQoWuWCHGiqR24qSwVjeb9G
+079gqH1VWi3fk2cwFA9f3TLvJqUwatyE0Hcba0U1d2Voz/C9JEQjT6FHuaCqQL6b
+p7B7m2DwpywFGJpAn6ksrEYqHaLVWiEGmdMmHYuHxMw8+cqoSwbYymCZTwMBAuJe
+Pr1VO9uNo+Vj5r8IX7ACcSsrjf0XkVzfX6ySsPbyOlGXnwzWSOM3Dk2Z9MqDORbj
+0/7vJTnDctPuc91Rlp3YnJlZKWMcNfPMKMtvpljd2XuVwub+C4vGWXa9XLbRXmJo
+cnEFT6SB11AKjytE2Urt62CCrYjJPBneabxbCztnBs+vQSx7Fj0LK6v4Euik/Xm/
+9aKmZZW8306c9Zwgpp9glWjLMCDNxJRGdKRjZsnkt9hOEYsP1irTegystK6u4eHS
+mwHX931ENOJsnPfQZCZ9b41Q9doZQ/N/WHstQO8MtA3HIN1sW3wYkGzOLKj4gJfm
+bqR/TzQmXyLT1xZa+/yTscaV0P4OlI4vcii/k4DgeSeQVWp9o9DbZFxSCsdYVvPu
+jaDMzZnIKoax1GFz/coUAHFQub2rLzaQ5DDbvrkX++UrAjuUtRcSFH0TKhahZmCF
+nv117moLfK22Mst/
+=bw8T
+-----END PGP MESSAGE-----
+
+ +## Step 5: Finale! + +Ladies and gentleman, we have done it! +We have encrypted our very own document. + +Feel free to send it to [my email (tait@tait.tech)](mailto:tait@tait.tech). +I am happy to verify if it worked. + +For more information on this subject, check out [gnugp.org's guide](https://www.gnupg.org/gph/en/manual/c14.html) on using GPG. +They are the ones that make these tools available, +and the [GNU Project](https://www.gnu.org/) has been instrumental in creating the open-source world as it exists today. + + +
+ + + + +
+ + diff --git a/_site/2020-01-23-sql-joins.html b/_site/2020-01-23-sql-joins.html index 9ab1367..d2f8c50 100644 --- a/_site/2020-01-23-sql-joins.html +++ b/_site/2020-01-23-sql-joins.html @@ -191,6 +191,10 @@ + + + diff --git a/_site/2020/01/22/padding-and-margin.html b/_site/2020/01/22/padding-and-margin.html index c407bb3..1f17234 100644 --- a/_site/2020/01/22/padding-and-margin.html +++ b/_site/2020/01/22/padding-and-margin.html @@ -76,6 +76,10 @@ + + + diff --git a/_site/2020/01/26/rsa1.html b/_site/2020/01/26/rsa1.html index 0fb56d7..bfd7371 100644 --- a/_site/2020/01/26/rsa1.html +++ b/_site/2020/01/26/rsa1.html @@ -82,6 +82,10 @@ Japan lags slightly behind with 80 percent encrypted traffic.

+ + + diff --git a/_site/2020/02/19/rsa2.html b/_site/2020/02/19/rsa2.html index c65e2cb..96778b0 100644 --- a/_site/2020/02/19/rsa2.html +++ b/_site/2020/02/19/rsa2.html @@ -174,6 +174,10 @@ I will discuss this more in another article, but for the technically inclined: + + + diff --git a/_site/2020/04/02/rsa3.html b/_site/2020/04/02/rsa3.html new file mode 100644 index 0000000..0183d6d --- /dev/null +++ b/_site/2020/04/02/rsa3.html @@ -0,0 +1,182 @@ + + + + + How Asymetric Encryption Works + + + + +
+ + +

How Asymetric Encryption Works

+

Thursday, April 02 2020

+ +
+

In a few previous articles I have explained why encryption may be important to you and how the theory behind encryption works. I did not yet explain the system of asymetric cryptography, however. That is what this article is for.

+ +

Previously, we talked about how symetric encryption works. This is by having a shared key that both parties use to simultaniously encrypt, and decrypt the data. (See Ceasar Cipher for example).

+ +

Public-key, or Asymetric Encryption

+ +

Asymetric encryption is based on the idea of having multiple keys instead of only one shared key. +For example: instead of encrypting with one key, and decrypting with that same key (like our ROT ciphers we talked about previously), we can use one key to encrypt the information, and a different key to decrypt the information.

+ +
+ Alice sending her message to Bob using Bob's public key. Bob decrypts the message with his private key. +
+ Alice sending her message to Bob using Bob's public key. Bob decrypts the message with his private key. +
+
+ +

In the picture above, see how Alice uses Bob’s public key to encrypt some data, +then sends it to Bob for him to decrypt with his private key? +That is the essense of public-key encryption.

+ +

The great thing about public-key encryption is that your public key is public! There is no need to be afraid of sending this everywhere! +You can attach it at the end of all your emails, the end of your forum posts, a link to it on your low-power webserver (wink). +There are even things called keyservers that will save your public key on them for retrival in case somebody wants to verify your public key.

+ +

Anything encrypted with your public key can only be decrypted with your private key. +Provided you never, NEVER share your private key with anyone ever, we can assume that all messages sent to you encrypted with your public key will never be read by anyone else.

+ +

Asymetric encryption, however, often contains four keys instead of two. Why is this?

+ +

Verification of Author

+ +

One interesting thing about keys pairs is that not only can the private key decrypt anything the public key encrypts, +but the public key can decrypt anything the private key encrypts.

+ +

Now why would one want to encrypt a message that can be decrypted by anyone?

+ +
+ Alice sending a message to bob which is 'signed' with her private key. This allows Bob to know only Alice could have sent it! +
+ Alice sending a message to bob which is 'signed' with her private key. This allows Bob to know only Alice could have sent it! +
+
+ Note: Although the picture shows otherwise, the text is not sent in the plain. It is encrypted with Alice's private key. +
+
+ +

This is how you can verify that the person who says they wrote the message really did indeed write the message! +If their private key was never shared with anyone else, then the message must have come from them!

+ +

For maximum security, these methods are often layered. +First, signing with the sender’s private key, +ensuring only they could have sent it— +then encrypted with the recipient’s pulbic key, +making sure only the reciever can read it.

+ +

Note that both sides must first have eachother’s public keys to do this. +This is easy if they communicate often, but when first contacting somebody, +people will generally send their encrypted message along with the their own pulbic key attached in a seperate file.

+ +

What This Means

+ +

Notice neither Alice nor Bob had to share any comprimsing information over the network? +This is why public-key encryption is so powerful!

+ +

Alice and Bob can both safely send their public keys in the open. +They can even send them over the insecure HTTP, or FTP protocols.

+ +

Whilst not sending any encryption-breaking messages, +Alice and Bob now have a way to communicate securely. +If you trust nothing and no one, this is your perfered method of security.

+ +

Check out this Computerphile video if you want the simplified explaination.

+ +

The Algorithms

+ +

The two biggest “implementations” of public-key cryptography vary only in the mathamatical equations used to generate the numbers, +and how the numbers are “trapdoored” to decrypt if you have the correct key.

+ +

I will discuss the differences in approach here. +If you want to skip to the next article where I show you how to encrypt your own documents using RSA, see this link.

+ +

RSA

+ +

The mathamatic center of the RSA system was developed over the course of a year or so. +Three men were involved. Ron Rivest, Adi Shamir, and Leonard Aldeman. +They worked as a kind of “team”: Each idea by Rivest and Shamir were critisized by the mathamatician on their team: Mr. Aldeman.

+ +

One night, after consuming +“liberal quantities of Manischewitz wine” +Rivest had trouble sleeping. +After taking long gazes into the abyss of his math textbook, he came up with an idea which would change cryptography forever. +By the next morning, an academic mathamatical paper was nearly finished. +He named it after himself and the two others that had been helping him along this whole time. Rivest, Shamir, Aldeman.

+ +

Key sizes of RSA range from 1024-bit to 4096-bit. +1024-bit keys are considered somewhat insecure. +However, +it should be noted that every bit doubles the complexity of the key, +so 2048 is 2^1024 times more complex than 1024.

+ +

Eliptic-Curve (EC)

+ +

Eliptic-Curve (EC) is a family of algorithms that use the Eliptic curve mathamatical structure to generate the numbers for the keys. +EC can effectivly provide the security of an RSA key one order of magnitude larger than an RSA key.

+ +
+ A picture of an eliptic curve. +
+ An eliptic curve structure. +
+
+ +

It’s fast; it’s secure! Perfect right?

+ +

Of course not!

+ +

One problem is that due to the smaller key size, +it can more easily be broken by brute-force. +This is why EC is mostly used for temporary communication (like HTTPS), not permenant communication (like having an encrypted email conversation with a journalist).

+ +

The other problem is that a certain EC algrorithm called P-256 is suspected to be introduced with malice to National Institute of Standards and Technology (NIST) +by the NSA. +Supposedly, the NSA is able to crack anything encrypted with this algorithm. +I will let the experts argure about that.

+ +

Other well-known EC algorithms that are more-or-less trusted as secure do exist though. +The premeire one being Curve25519. +The reference implementation of this algrorithm is also public-domain, +so it is easy for devlopers to work into their own applications without worrying about copywrite.

+ +

Conslusion

+ +

In this article we went over some basic points:

+ +
    +
  1. Public-key encryption enables secure communication over insecure networks.
  2. +
  3. RSA is considered the standard for extra-seure communication.
  4. +
  5. EC is a newer, faster, more transient encryption method.
  6. +
+ +

To learn how to use RSA keys to encrypt your own communications, check out this other aritcle I wrote.

+ + +
+ + + + +
+ + diff --git a/_site/2020/04/06/rsa4.html b/_site/2020/04/06/rsa4.html new file mode 100644 index 0000000..bfff5d9 --- /dev/null +++ b/_site/2020/04/06/rsa4.html @@ -0,0 +1,381 @@ + + + + + How To Encrypt Your Own Documents Using gpg + + + + +
+ + +

How To Encrypt Your Own Documents Using gpg

+

Monday, April 06 2020

+ +
+

If you have ever wanted to garuntee the utmost security of your emails and documents, then this is the guide for you! +It should be noted that in some circles the tools used are more common than in others. +These are the everyday tools of many privacy advocates and computer nerds.

+ +

If you have never used Linux however, then the method of doing this will be rather unfamiliar. +This tutorial will be done on an Arch Linux machine, +but it should be the same on Ubuntu, Fedora, CentOS, Debian, +OpenBSD, FreeBSD, MacOSX, etc. +The only operating system that does not include these tools by default (or easily accessible) is Windows.

+ +

This tutorial makes heavy use of the terminal. +You have been warned.

+ +

Let us…begin!

+ +

Glossary

+ + + +

Step 0: Setup

+ +

We will be using the utility gpg for this tutorial.

+ +

The other thing to note: The character ‘$’ (dollar sign) is usually not typed when shown in a command. +It simply indicates that you do not need administrative privilages to run these commands.

+ +

Test to see if you get this output in your terminal.

+ +
+$ gpg --version
+
+gpg (GnuPG) 2.2.20
+libgcrypt 1.8.5
+Copyright (C) 2020 Free Software Foundation, Inc.
+License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>
+
+...
+
+ +

If this is not successful look into how to install these tools on your system.

+ +

Step 1: Get/Create A Public Key!

+ +

Get Somebody Else’s

+

Step one is having somebody to send your encrypted message to. Maybe this is a friend, a journalist, or a whistleblower.

+ +

To encrypt a document with somebody’s public key, you need to first obtain it. +My public key is available at this link, and you can use it to send me encrypted stuff.

+ +

If you are on a linux terminal, you can use the curl or wget command to download it.

+ +

wget:

+
+$ wget https://tait.tech/public-key.asc
+
+ +

Curl:

+
+$ curl https://tait.tech/public-key.asc -o public-key.asc
+
+ +

Make Your Own (optional)

+ +

The following section is quite long, +so if you don’t want to create your own keypair, +then feel free to skip to Step #2.

+ +

If you want to encrypt your own documents, +or you want others to be able to send you encrypted messages, +then you can create your own public/private key pair. +You can use these to encrypt your documents, +and you can send our public key to others so that they can securely communicate with yourself.

+ +

Run the following command in your terminal, and follow the steps I outline to get you started.

+ +
+$ gpg --full-gen-key
+
+ +

This will produce the following dialog:

+ +
+gpg (GnuPG) 2.2.20; Copyright (C) 2020 Free Software Foundation, Inc.
+This is free software: you are free to change and redistribute it.
+There is NO WARRANTY, to the extent permitted by law.
+
+Please select what kind of key you want:
+  (1) RSA and RSA (default)
+  (2) DSA and Elgamal
+  (3) DSA (sign only)
+  (4) RSA (sign only)
+  (14) Existing key from card
+Your selection? 
+
+ +

Select the option 1. You want two keys, both RSA.

+ +

Next we will select the key size:

+
+RSA keys may be between 1024 and 4096 bits long.
+What keysize do you want? (2048) 
+
+ +

Type the number 2048.

+ +

Next it will ask you how long you want the key to be valid.

+ +
+Requested keysize is 2048 bits
+Please specify how long the key should be valid.
+          0 = key does not expire
+       <n>  = key expires in n days
+       <n>w = key expires in n weeks
+       <n>m = key expires in n months
+       <n>y = key expires in n years
+Key is valid for? (0)
+
+ +

Type the number 1. This will enable you time to test it, +but it will make the key expire within 24 hours so that if you accidentally +share your private key, or delete your VM and no longer have access to it, you will be fine.

+ +

It will ask your if you are sure about the expiry date.

+ +
+Key expires at Tue Apr  7 02:24:23 2020 UTC
+Is this correct? (y/N) 
+
+ +

Type y to confirm your choice.

+ +

Now gpg is going to ask you to create a user id to indetify this key. +Use some test data for now. +User input is in bold, feel free to follow along or to put your own test data in.

+ +

Once you are more comfortable with the tools, +then you can create a public/private keypair that you will keep for some time.

+ +
+GnuPG needs to construct a user ID to identify your key.
+
+Real name: Mr. Tester
+Email address: test@test.org
+Comment: for testing only
+You selected this USER-ID:
+    "Mr. Tester (for testing only) <test@test.org>"
+
+Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O
+
+ +

It will then ask you for a password. +If you are simply using this for test purposes, +then you can feel free to set it to something like “test”. +When create a long-term use pulbic key make sure to make the password very secure.

+ +

During the process of creating your key, gpg may warn you with this message:

+ +
+We need to generate a lot of random bytes. It is a good idea to perform
+some other action (type on the keyboard, move the mouse, utilize the
+disks) during the prime generation; this gives the random number
+generator a better chance to gain enough entropy.
+
+ +

If this happens, feel free to smash your keyboard (lightly), +watch a YouTube video on the machine, +browse the web with w3m, +etc. until the key is generated.

+ +

You will know it is done when you see this message (or something similar):

+ +
+gpg: key EACCC490291EA7CE marked as ultimately trusted
+gpg: revocation certificate stored as '/home/tait/.config/gnupg/openpgp-revocs.d/FFA7D7525C6546983F1152D8EACCC490291EA7CE.rev'
+public and secret key created and signed.
+
+pub   rsa2048 2020-04-06 [SC] [expires: 2020-04-07]
+      FFA7D7525C6546983F1152D8EACCC490291EA7CE
+      uid                      Mr. Tester (for testing only) <test@test.org>
+      sub   rsa2048 2020-04-06 [E] [expires: 2020-04-07]
+
+ +

Tada! You have your own public/private keypair!

+ +

Sharing a keypair that will expire soon is not a good idea, +however, if you are ready, then you can use this command to generate a public key file to share with others.

+ +

Feel free to substitute “Mr. Tester” for any other identifying part of your key. +Remember that to use the email, you must enclose it in < and >.

+ +
+$ gpg --export --armour "Mr. Tester" > public-key.asc
+
+ +

To use the email as the identifier:

+
+$ gpg --export --armour "<test@test.org>" > public-key.asc
+
+ +

Step 2: Import Public Key

+ +

This list of keys that gpg keeps on tap so to speak, is called our “keyring”. +Your will need to import a new public key to encrypt files with gpg.

+ +

If you already created your own public key, then this step is not necessary unless you want to also encrypt something for me :)

+ +
+ A keyring holding eight allen keys. +
+ A keyring holding eight allen keys. +
+
+ +

To import a public key to use for encrypting files, use the --import option of gpg. Like so:

+ +
+$ gpg --import public-key.asc
+gpg: key 64FB4E386953BEAD: public key "Tait Hoyem <tait.hoyem@protonmail.com>" imported
+gpg: Total number processed: 1
+gpg:               imported: 1
+
+ +

Now that we have imported a public key, we can make a message to send!

+ +

Step 3: Have A Message To Encrypt

+ +

You can make a new file which holds some important, secret data. +Feel free to use a graphical editor if you have one, if not, nano works alright too.

+ +
+  Rules Of A Good Life:
+
+  1. Wash your hands!
+  2. Work hard!
+  3. Be firm.
+  5. Have good friends!
+
+ +

Save this file as something like test-pgp.txt, and we’ll use that name later.

+ +

Step 4: Encrypt A Message

+ +

Now that we have a message to send and person to send to, +all we have to do is encrypt this message and it’ll be on its merry way! +To do so, we must specify two new options to gpg.

+ +

The first is --recipient. +This tells gpg to encrypt using a certin public key that we have in our keyring. +You can use the person’s name, email address, or the key’s uid.

+ +

The second is --encrypt.

+ +

You will also specify the --armour option to use ASCII armoured files. Put this option after --encrypt, and put the file name after --armour. See below.

+ +

You can either use your own public key name to encrypt a document (allowng only you to decrypt it), +or you can use my public key that we imported earlier (allowing only me to decrypt it). +Either way works fine.

+ +

This is the big one!

+ +
+$ gpg --recipient "Tait Hoyem" --encrypt --armour test-gpg.txt
+
+ +

“But there is no output!” you might say! +Yes, that is because our new (encrypted) file has already been saved. +Let’s look at it with cat.

+ +
+$ cat test-gpg.txt.asc
+-----BEGIN PGP MESSAGE-----
+
+hQIMA2mJuYb8vkIlAQ/9FDmXJgW2vI7p9sznKvHhQk7uTZvoWC3hCeqHoO3BSElP
+XR1BNAkJ+bykB30M+9u+XDyRtTwazjvNPmYfQnIh0Q+BQZigDWbEd1R47jbzm7Tu
+0eZKKapgEidfecULtaECX1sR3qPt1m9oZjyUR1rzNd8tezZlCu2pjdNZrkta2Bdm
+Hh1xDS43Bw7PMQqraJsHwqr0M1GLDbMzPes2ZU5y4jEmXZ0PZdJ7kgjR8dvhLBfi
+MU+4kYnnemQEztXBOjKidhyOntKiLjenvD00tVHrOuQoWuWCHGiqR24qSwVjeb9G
+079gqH1VWi3fk2cwFA9f3TLvJqUwatyE0Hcba0U1d2Voz/C9JEQjT6FHuaCqQL6b
+p7B7m2DwpywFGJpAn6ksrEYqHaLVWiEGmdMmHYuHxMw8+cqoSwbYymCZTwMBAuJe
+Pr1VO9uNo+Vj5r8IX7ACcSsrjf0XkVzfX6ySsPbyOlGXnwzWSOM3Dk2Z9MqDORbj
+0/7vJTnDctPuc91Rlp3YnJlZKWMcNfPMKMtvpljd2XuVwub+C4vGWXa9XLbRXmJo
+cnEFT6SB11AKjytE2Urt62CCrYjJPBneabxbCztnBs+vQSx7Fj0LK6v4Euik/Xm/
+9aKmZZW8306c9Zwgpp9glWjLMCDNxJRGdKRjZsnkt9hOEYsP1irTegystK6u4eHS
+mwHX931ENOJsnPfQZCZ9b41Q9doZQ/N/WHstQO8MtA3HIN1sW3wYkGzOLKj4gJfm
+bqR/TzQmXyLT1xZa+/yTscaV0P4OlI4vcii/k4DgeSeQVWp9o9DbZFxSCsdYVvPu
+jaDMzZnIKoax1GFz/coUAHFQub2rLzaQ5DDbvrkX++UrAjuUtRcSFH0TKhahZmCF
+nv117moLfK22Mst/
+=bw8T
+-----END PGP MESSAGE-----
+
+ +

Step 5: Decryption (optional)

+ +

If you created your own public/private keypair in step 1, +and you encryped using --recipient "Your Test Name", +then you can decrypt your document as well!

+ +

You will need to specify --decrypt, and that’s all folks!

+ +
+$ gpg --decrypt test-gpg.txt.asc
+
+ +

A password dialog will then come up asking for your previously created password. +As long as you remember your password from before and enter it correctly: voila!

+ +
+gpg: encrypted with 4096-bit RSA key, ID 6989B986FCBE4225, created 2020-01-02
+      "Tait Hoyem <tait.hoyem@protonmail.com>"
+Rules Of A Good Life:
+
+1. Wash your hands!
+2. Work hard!
+3. Be firm.
+5. Have good friends!
+
+ +

Step 6: Finale!

+ +

Ladies and gentleman, you have done it! +You have encrypted our very own document. +(And maybe even decrypted it yourself too :)

+ +

If you encrypted using my public key, +feel free to send it to my email. +I am happy to verify if it worked.

+ +

For more information on this subject, check out gnugp.org’s guide on using GPG. +They are the ones that make these tools available, +and the GNU Project has been instrumental in creating the open-source world as it exists today. +Give ‘em some love, eh!

+ +

Thank you so much for sticking through this whole thing! +Let me know if there is anything that doesn’t make sense. +I am happy to improve this guide as time goes on if that is necessary.

+ +

Happy hacking :)

+ +
+ + + + +
+ + diff --git a/_site/README.md b/_site/README.md index 63909df..111c6c2 100644 --- a/_site/README.md +++ b/_site/README.md @@ -1,2 +1,23 @@ # tait.tech The uncompiled version of my website. Compiled files in _site + +### To compile + +To compile the files, simply use the bundle Ruby gem. + +``` +bundle exec jekyll build +``` + +to compile once. If you decide you want to actually have changes appear instantly, use the following + +``` +bundle exec jekyll watch +``` + +To run a local web server to view the changes on: +``` +bundle exec jekyll server -w +``` + +This will watch for the latest changes, compile them, and make them available on localhost:4000 diff --git a/_site/assets/css/style.css b/_site/assets/css/style.css index b948edb..8d7d1d5 100644 --- a/_site/assets/css/style.css +++ b/_site/assets/css/style.css @@ -79,4 +79,10 @@ sup { margin: 0; padding: 0; } figcaption { font-size: .8em; text-decoration: italic; } +footer { border-top: 1px solid #aaa; margin-bottom: 100px; } + +.terminal { line-height: 1em; overflow: scroll; padding: 10px; color: #00FF41; margin: 0px; background-color: #151515; } + +.small-image { width: 100%; } + /*# sourceMappingURL=style.css.map */ \ No newline at end of file diff --git a/_site/assets/css/style.css.map b/_site/assets/css/style.css.map index 3a04af5..27647c7 100644 --- a/_site/assets/css/style.css.map +++ b/_site/assets/css/style.css.map @@ -7,8 +7,8 @@ ], "sourcesContent": [ "@import \"main\";\n", - "$normal-text-color: #444444;\n$nav-link-color: #333;\n$nav-link-hover-color: black;\n$link-color: #47a;\n$visited-link-color: #941452;\n\n$last-p-padd: 1.5em;\n$nav-padd: 1em;\n$line-under: 1px solid #aaa; \n\nbody {\n background-color: #fefefe;\n padding: 15px;\n margin: auto;\n max-width: 600px;\n font-family: -apple-system, helvetica, arial, sans-serif;\n}\n#wrapper {\n color: $normal-text-color;\n font-size: 14px;\n}\n#main-name {\n color: rgba(0, 0, 0, 0.8);\n}\nh1, h2, h3, h4, h5, h6 {\n}\nh1 {\n font-size: 2.5em;\n}\nh2 {\n font-size: 1.3em;\n}\nh4 {\n}\na {\n text-decoration: underline;\n color: $link-color;\n} \na:visited {\n color: $visited-link-color;\n}\na.nav-link,\na.post-title-link {\n color: $nav-link-color;\n text-decoration: none;\n}\na.citation-link {\n text-decoration: none;\n}\n\nlabel {\n font-size: .8em;\n}\n\n#menu,\nlabel[for=\"menu\"]{\n display: none;\n}\n\nnav {\n padding: $nav-padd 0px;\n margin: 0px;\n}\nnav a:first-of-type {\n margin-left: 0;\n}\nnav a {\n margin: 1em;\n color: $nav-link-color;\n font-weight: bold;\n font-style: none;\n}\nnav a.on-page {\n color: #888;\n}\nnav a:hover {\n text-decoration: underline; \n}\n\nli {\n margin: .5em;\n}\n\n#main-img {\n width: 100%;\n}\np {\n line-height: 1.5;\n padding: .1em 0;\n}\n.line-under {\n padding-bottom: $last-p-padd;\n border-bottom: $line-under;\n}\n.article a:hover {\n color: rgba(0, 0, 0, 0.5);\n}\n.post-date {\n text-transform: uppercase;\n font-weight: bold;\n color: rgba(0, 0, 0, 0.5);\n}\n\n.post-desc {\n color: rgba(0, 0, 0, .7);\n padding: 10px;\n font-weight: lighter;\n}\n\np.post-excerpt {\n margin-top: 0;\n padding-top: 10px;\n}\n\n\ntable,\ntable tr,\ntable td,\ntable th{\n border: 1px solid rgba(0, 0, 0, 0.5);\n border-collapse: collapse;\n padding: 5px;\n font-weight: normal;\n}\ntable th {\n font-weight: bold;\n}\ntable {\n width: 75%;\n margin: auto;\n}\n\ntable.post-list,\ntable.post-list tr,\ntable.post-list td {\n width: 100%;\n border: none;\n padding-left: 0;\n}\nimg {\n display: block;\n width: 55%;\n margin-left: auto;\n margin-right: auto;\n}\n\nblockquote {\n font-style: italic;\n}\n\n@media screen and (max-width: 600px){\n #menu,\n label[for=\"menu\"]{\n display: inline-block;\n font-size: 20px;\n }\n body {\n width: 90%;\n }\n #info {\n margin: 0 7px;\n }\n .menu-content {\n max-height: 0;\n overflow: hidden;\n }\n nav {\n width: 100%;\n }\n nav a {\n display: block;\n padding-left: 0;\n margin-left: 0;\n }\n input#menu{\n display: none;\n }\n input:checked ~ .menu-content {\n max-height: 100%;\n border-bottom: $line-under;\n color: red;\n }\n}\n\n.contact-info {\n width: 90%;\n margin: auto;\n word-wrap: break-word;\n}\n.contact-info p {\n margin: 7px;\n padding: 0;\n}\n\n.mono {\n font-family: monospace;\n}\n\n.bold {\n font-weight: bold;\n}\n\nsup {\n margin: 0;\n padding: 0;\n}\n\nfigcaption {\n font-size: .8em;\n text-decoration: italic;\n}\n" + "$normal-text-color: #444444;\n$nav-link-color: #333;\n$nav-link-hover-color: black;\n$link-color: #47a;\n$visited-link-color: #941452;\n\n$last-p-padd: 1.5em;\n$nav-padd: 1em;\n$line-under: 1px solid #aaa; \n\nbody {\n background-color: #fefefe;\n padding: 15px;\n margin: auto;\n max-width: 600px;\n font-family: -apple-system, helvetica, arial, sans-serif;\n}\n#wrapper {\n color: $normal-text-color;\n font-size: 14px;\n}\n#main-name {\n color: rgba(0, 0, 0, 0.8);\n}\nh1, h2, h3, h4, h5, h6 {\n}\nh1 {\n font-size: 2.5em;\n}\nh2 {\n font-size: 1.3em;\n}\nh4 {\n}\na {\n text-decoration: underline;\n color: $link-color;\n} \na:visited {\n color: $visited-link-color;\n}\na.nav-link,\na.post-title-link {\n color: $nav-link-color;\n text-decoration: none;\n}\na.citation-link {\n text-decoration: none;\n}\n\nlabel {\n font-size: .8em;\n}\n\n#menu,\nlabel[for=\"menu\"]{\n display: none;\n}\n\nnav {\n padding: $nav-padd 0px;\n margin: 0px;\n}\nnav a:first-of-type {\n margin-left: 0;\n}\nnav a {\n margin: 1em;\n color: $nav-link-color;\n font-weight: bold;\n font-style: none;\n}\nnav a.on-page {\n color: #888;\n}\nnav a:hover {\n text-decoration: underline; \n}\n\nli {\n margin: .5em;\n}\n\n#main-img {\n width: 100%;\n}\np {\n line-height: 1.5;\n padding: .1em 0;\n}\n.line-under {\n padding-bottom: $last-p-padd;\n border-bottom: $line-under;\n}\n.article a:hover {\n color: rgba(0, 0, 0, 0.5);\n}\n.post-date {\n text-transform: uppercase;\n font-weight: bold;\n color: rgba(0, 0, 0, 0.5);\n}\n\n.post-desc {\n color: rgba(0, 0, 0, .7);\n padding: 10px;\n font-weight: lighter;\n}\n\np.post-excerpt {\n margin-top: 0;\n padding-top: 10px;\n}\n\n\ntable,\ntable tr,\ntable td,\ntable th{\n border: 1px solid rgba(0, 0, 0, 0.5);\n border-collapse: collapse;\n padding: 5px;\n font-weight: normal;\n}\ntable th {\n font-weight: bold;\n}\ntable {\n width: 75%;\n margin: auto;\n}\n\ntable.post-list,\ntable.post-list tr,\ntable.post-list td {\n width: 100%;\n border: none;\n padding-left: 0;\n}\nimg {\n display: block;\n width: 55%;\n margin-left: auto;\n margin-right: auto;\n}\n\nblockquote {\n font-style: italic;\n}\n\n@media screen and (max-width: 600px){\n #menu,\n label[for=\"menu\"]{\n display: inline-block;\n font-size: 20px;\n }\n body {\n width: 90%;\n }\n #info {\n margin: 0 7px;\n }\n .menu-content {\n max-height: 0;\n overflow: hidden;\n }\n nav {\n width: 100%;\n }\n nav a {\n display: block;\n padding-left: 0;\n margin-left: 0;\n }\n input#menu{\n display: none;\n }\n input:checked ~ .menu-content {\n max-height: 100%;\n border-bottom: $line-under;\n color: red;\n }\n}\n\n.contact-info {\n width: 90%;\n margin: auto;\n word-wrap: break-word;\n}\n.contact-info p {\n margin: 7px;\n padding: 0;\n}\n\n.mono {\n font-family: monospace;\n}\n\n.bold {\n font-weight: bold;\n}\n\nsup {\n margin: 0;\n padding: 0;\n}\n\nfigcaption {\n font-size: .8em;\n text-decoration: italic;\n}\n\nfooter {\n border-top: $line-under; \n margin-bottom: 100px;\n}\n\n.terminal {\n line-height: 1em;\n overflow: scroll;\n padding: 10px; \n color: #00FF41;\n margin: 0px;\n background-color: #151515;\n}\n\n.small-image {\n width: 100%;\n}\n" ], "names": [], - "mappings": "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" + "mappings": "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" } \ No newline at end of file diff --git a/_site/assets/img/alice-sign-to-bob.png b/_site/assets/img/alice-sign-to-bob.png new file mode 100644 index 0000000000000000000000000000000000000000..cfce6bf8cda25fca0ce7d8f9647f1a0bf6ce3454 GIT binary patch literal 22372 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

L>eP|Wb)zxP7X#xWkEUkxBK1}^czZ38_B5>LJ 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 literal 0 HcmV?d00001 diff --git a/_site/assets/img/ec.png b/_site/assets/img/ec.png new file mode 100644 index 0000000000000000000000000000000000000000..c7532a227a5282e5c042a5b7ada992683d0641e7 GIT binary patch literal 31679 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 W2?3h^JvCs1KvH7zqE*6%KmP}qAiu2u literal 0 HcmV?d00001 diff --git a/_site/assets/img/keyring.jpg b/_site/assets/img/keyring.jpg new file mode 100644 index 0000000000000000000000000000000000000000..279c46d5b4aa2ce7c894ca63bee8d1a4bae5057f GIT binary patch literal 68309 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

|xra~Io0W-H%sKTSYe6N- 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 Y)9~q0ZFyj^xsb>VXFz*X4LhIz+1*rEOaK4? literal 0 HcmV?d00001 diff --git a/_site/assets/img/public-key-example1.svg b/_site/assets/img/public-key-example1.svg new file mode 100644 index 0000000..a9220e8 --- /dev/null +++ b/_site/assets/img/public-key-example1.svg @@ -0,0 +1,201 @@ + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + 鮑伯 + 你好! + + + Hello + Bob! + + + + + + 鮑伯的 + 私有密鑰 + + + Bob's + Private Key + + + + + 加密 + Encrypt + + + 6EB6957008E03CE4 + + + + + 鮑伯 + 你好! + + + Hello + Bob! + + + + + 解密 + Decrypt + + + + + 鮑伯的 + 公開金鑰 + + + Bob's + Public Key + + + + 愛麗斯 + Alice + + + + 鮑伯 + Bob + + + + + + + + diff --git a/_site/assets/img/wget-log b/_site/assets/img/wget-log new file mode 100644 index 0000000..6e8c91c --- /dev/null +++ b/_site/assets/img/wget-log @@ -0,0 +1,12 @@ +--2020-04-02 20:52:24-- https://www.google.com/url?sa=i +Loaded CA certificate '/etc/ssl/certs/ca-certificates.crt' +Resolving www.google.com (www.google.com)... 172.217.3.196, 2607:f8b0:400a:809::2004 +Connecting to www.google.com (www.google.com)|172.217.3.196|:443... connected. +HTTP request sent, awaiting response... 200 OK +Length: unspecified [text/html] +Saving to: 'url?sa=i' + + url?sa=i [<=> ] 0 --.-KB/s url?sa=i [ <=> ] 1.38K --.-KB/s in 0s + +2020-04-02 20:52:24 (10.1 MB/s) - 'url?sa=i' saved [1414] + diff --git a/_site/blog/index.html b/_site/blog/index.html index a919e30..00191c9 100644 --- a/_site/blog/index.html +++ b/_site/blog/index.html @@ -26,6 +26,26 @@ + + + + + + + +
+

How To Encrypt Your Own Documents Using gpg

+ +

If you have ever wanted to garuntee the utmost security of your emails and documents, then this is the guide for you! +It should be noted that in some circles the tools used are more common than in others. +These are the everyday tools of many privacy advocates and computer nerds.

+
+
+

How Asymetric Encryption Works

+ +

In a few previous articles I have explained why encryption may be important to you and how the theory behind encryption works. I did not yet explain the system of asymetric cryptography, however. That is what this article is for.

+
+

How Does Encryption Work, in Theory?

diff --git a/_site/feed.xml b/_site/feed.xml index f835fb3..eb14a55 100644 --- a/_site/feed.xml +++ b/_site/feed.xml @@ -1,4 +1,484 @@ -Jekyll2020-03-10T22:25:54+00:00/feed.xmlHow Does Encryption Work, in Theory?2020-02-19T00:00:00+00:002020-02-19T00:00:00+00:00/2020/02/19/rsa2<p>There are many kinds of encryption used in our everyday communication. Online and offline, over the internet and in person. In this article, I will explain the basics of how encryption should work in theory. I explain in <a href="/2020/01/26/rsa1.html">this article</a> why encryption is important, and why <em>you</em> should care about it.</p> +Jekyll2020-04-06T03:53:39+00:00http://localhost:4000/feed.xmlHow To Encrypt Your Own Documents Using gpg2020-04-06T00:00:00+00:002020-04-06T00:00:00+00:00http://localhost:4000/2020/04/06/rsa4<p>If you have ever wanted to garuntee the utmost security of your emails and documents, then this is the guide for you! +It should be noted that in some circles the tools used are more common than in others. +These are the everyday tools of many privacy advocates and computer nerds.</p> + +<p>If you have never used Linux however, then the method of doing this will be rather unfamiliar. +This tutorial will be done on an <a href="https://archlinux.org/">Arch Linux</a> machine, +but it should be the same on Ubuntu, Fedora, CentOS, Debian, +OpenBSD, FreeBSD, MacOSX, etc. +The only operating system that does not include these tools by default (or easily accessible) is Windows.</p> + +<p>This tutorial makes heavy use of the terminal. +You have been warned.</p> + +<p><em>Let us…begin!</em></p> + +<h2 id="glossary">Glossary</h2> + +<ul> + <li><a href="https://en.wikipedia.org/wiki/Binary-to-text_encoding#ASCII_armor"><strong>ASCII armour</strong></a> — A way to encode <strong>OpenPGP</strong> documents so they are readable by humans. These files end in .asc</li> + <li><strong>(Open)PGP</strong> — An open standard for encoding pulbic keys and encrypted documents.</li> + <li><strong>GPG</strong> — GNUPrivacyGaurd is an implementation of <strong>OpenPGP</strong>. It is installed by default on most Linux distrobutions.</li> +</ul> + +<h2 id="step-0-setup">Step 0: Setup</h2> + +<p>We will be using the utility <code class="highlighter-rouge">gpg</code> for this tutorial.</p> + +<p>The other thing to note: The character ‘$’ (dollar sign) is usually not typed when shown in a command. +It simply indicates that you do not need administrative privilages to run these commands.</p> + +<p>Test to see if you get this output in your terminal.</p> + +<pre class="terminal"> +$ gpg --version + +gpg (GnuPG) 2.2.20 +libgcrypt 1.8.5 +Copyright (C) 2020 Free Software Foundation, Inc. +License GPLv3+: GNU GPL version 3 or later &lt;https://gnu.org/licenses/gpl.html&gt; + +... +</pre> + +<p>If this is not successful look into how to install these tools on your system.</p> + +<h2 id="step-1-getcreate-a-public-key">Step 1: Get/Create A Public Key!</h2> + +<h3 id="get-somebody-elses">Get Somebody Else’s</h3> +<p>Step one is having somebody to send your encrypted message to. Maybe this is a friend, a journalist, or a whistleblower.</p> + +<p>To encrypt a document with somebody’s public key, you need to first obtain it. +My public key is available <a href="/public-key.asc">at this link</a>, and you can use it to send me encrypted stuff.</p> + +<p>If you are on a linux terminal, you can use the <code class="highlighter-rouge">curl</code> or <code class="highlighter-rouge">wget</code> command to download it.</p> + +<p>wget:</p> +<pre class="terminal"> +$ wget https://tait.tech/public-key.asc +</pre> + +<p>Curl:</p> +<pre class="terminal"> +$ curl https://tait.tech/public-key.asc -o public-key.asc +</pre> + +<h3 id="make-your-own-optional">Make Your Own (optional)</h3> + +<p>The following section is quite long, +so if you don’t want to create your own keypair, +then feel free to skip to <a href="#step-2-import-public-key">Step #2</a>.</p> + +<p>If you want to encrypt your own documents, +or you want others to be able to send you encrypted messages, +then you can create your own public/private key pair. +You can use these to encrypt your documents, +and you can send our public key to others so that they can securely communicate with yourself.</p> + +<p>Run the following command in your terminal, and follow the steps I outline to get you started.</p> + +<pre class="terminal"> +$ gpg --full-gen-key +</pre> + +<p>This will produce the following dialog:</p> + +<pre class="terminal"> +gpg (GnuPG) 2.2.20; Copyright (C) 2020 Free Software Foundation, Inc. +This is free software: you are free to change and redistribute it. +There is NO WARRANTY, to the extent permitted by law. + +Please select what kind of key you want: + (1) RSA and RSA (default) + (2) DSA and Elgamal + (3) DSA (sign only) + (4) RSA (sign only) + (14) Existing key from card +Your selection? +</pre> + +<p>Select the option <code class="highlighter-rouge">1</code>. You want two keys, both RSA.</p> + +<p>Next we will select the key size:</p> +<pre class="terminal"> +RSA keys may be between 1024 and 4096 bits long. +What keysize do you want? (2048) +</pre> + +<p>Type the number 2048.</p> + +<p>Next it will ask you how long you want the key to be valid.</p> + +<pre class="terminal"> +Requested keysize is 2048 bits +Please specify how long the key should be valid. + 0 = key does not expire + &lt;n&gt; = key expires in n days + &lt;n&gt;w = key expires in n weeks + &lt;n&gt;m = key expires in n months + &lt;n&gt;y = key expires in n years +Key is valid for? (0) +</pre> + +<p>Type the number 1. This will enable you time to test it, +but it will make the key expire within 24 hours so that if you accidentally +share your private key, or delete your VM and no longer have access to it, you will be fine.</p> + +<p>It will ask your if you are sure about the expiry date.</p> + +<pre class="terminal"> +Key expires at Tue Apr 7 02:24:23 2020 UTC +Is this correct? (y/N) +</pre> + +<p>Type <code class="highlighter-rouge">y</code> to confirm your choice.</p> + +<p>Now <code class="highlighter-rouge">gpg</code> is going to ask you to create a user id to indetify this key. +Use some test data for now. +User input is in bold, feel free to follow along or to put your own test data in.</p> + +<p>Once you are more comfortable with the tools, +then you can create a public/private keypair that you will keep for some time.</p> + +<pre class="terminal"> +GnuPG needs to construct a user ID to identify your key. + +Real name: <b>Mr. Tester</b> +Email address: <b>test@test.org</b> +Comment: <b>for testing only</b> +You selected this USER-ID: + "Mr. Tester (for testing only) &lt;test@test.org&gt;" + +Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? <b>O</b> +</pre> + +<p>It will then ask you for a password. +If you are simply using this for test purposes, +then you can feel free to set it to something like “test”. +When create a long-term use pulbic key make sure to make the password <em>very</em> secure.</p> + +<p>During the process of creating your key, <code class="highlighter-rouge">gpg</code> may warn you with this message:</p> + +<pre class="terminal"> +We need to generate a lot of random bytes. It is a good idea to perform +some other action (type on the keyboard, move the mouse, utilize the +disks) during the prime generation; this gives the random number +generator a better chance to gain enough entropy. +</pre> + +<p>If this happens, feel free to smash your keyboard (lightly), +watch a YouTube video on the machine, +browse the web with <a href="http://w3m.sourceforge.net/">w3m</a>, +etc. until the key is generated.</p> + +<p>You will know it is done when you see this message (or something similar):</p> + +<pre class="terminal"> +gpg: key EACCC490291EA7CE marked as ultimately trusted +gpg: revocation certificate stored as '/home/tait/.config/gnupg/openpgp-revocs.d/FFA7D7525C6546983F1152D8EACCC490291EA7CE.rev' +public and secret key created and signed. + +pub rsa2048 2020-04-06 [SC] [expires: 2020-04-07] + FFA7D7525C6546983F1152D8EACCC490291EA7CE + uid Mr. Tester (for testing only) &lt;test@test.org&gt; + sub rsa2048 2020-04-06 [E] [expires: 2020-04-07] +</pre> + +<p>Tada! You have your own public/private keypair!</p> + +<p>Sharing a keypair that will expire soon is not a good idea, +however, if you are ready, then you can use this command to generate a public key file to share with others.</p> + +<p>Feel free to substitute “Mr. Tester” for any other identifying part of your key. +Remember that to use the email, you must enclose it in &lt; and &gt;.</p> + +<pre class="terminal"> +$ gpg --export --armour "Mr. Tester" &gt; public-key.asc +</pre> + +<p>To use the email as the identifier:</p> +<pre class="terminal"> +$ gpg --export --armour "&lt;test@test.org&gt;" &gt; public-key.asc +</pre> + +<h2 id="step-2-import-public-key">Step 2: Import Public Key</h2> + +<p>This list of keys that <code class="highlighter-rouge">gpg</code> keeps on tap so to speak, is called our “keyring”. +Your will need to import a new public key to encrypt files with <code class="highlighter-rouge">gpg</code>.</p> + +<p>If you already created your own public key, then this step is not necessary unless you want to also encrypt something for me :)</p> + +<figure> + <img src="/assets/img/keyring.jpg" alt="A keyring holding eight allen keys." /> + <figcaption> + A keyring holding eight allen keys. + </figcaption> +</figure> + +<p>To import a public key to use for encrypting files, use the <code class="highlighter-rouge">--import</code> option of <code class="highlighter-rouge">gpg</code>. Like so:</p> + +<pre class="terminal"> +$ gpg --import public-key.asc +gpg: key 64FB4E386953BEAD: public key "Tait Hoyem &lt;tait.hoyem@protonmail.com&gt;" imported +gpg: Total number processed: 1 +gpg: imported: 1 +</pre> + +<p>Now that we have imported a public key, we can make a message to send!</p> + +<h2 id="step-3-have-a-message-to-encrypt">Step 3: Have A Message To Encrypt</h2> + +<p>You can make a new file which holds some important, secret data. +Feel free to use a graphical editor if you have one, if not, <code class="highlighter-rouge">nano</code> works alright too.</p> + +<pre class="terminal"> + Rules Of A Good Life: + + 1. Wash your hands! + 2. Work hard! + 3. Be firm. + 5. Have good friends! +</pre> + +<p>Save this file as something like <code class="highlighter-rouge">test-pgp.txt</code>, and we’ll use that name later.</p> + +<h2 id="step-4-encrypt-a-message">Step 4: Encrypt A Message</h2> + +<p>Now that we have a message to send and person to send to, +all we have to do is encrypt this message and it’ll be on its merry way! +To do so, we must specify two new options to <code class="highlighter-rouge">gpg</code>.</p> + +<p>The first is <code class="highlighter-rouge">--recipient</code>. +This tells <code class="highlighter-rouge">gpg</code> to encrypt using a certin public key that we have in our keyring. +You can use the person’s name, email address, or the key’s uid.</p> + +<p>The second is <code class="highlighter-rouge">--encrypt</code>.</p> + +<p>You will also specify the <code class="highlighter-rouge">--armour</code> option to use ASCII armoured files. Put this option after <code class="highlighter-rouge">--encrypt</code>, and put the file name after <code class="highlighter-rouge">--armour</code>. See below.</p> + +<p>You can either use your own public key name to encrypt a document (allowng only you to decrypt it), +or you can use my public key that we imported earlier (allowing only me to decrypt it). +Either way works fine.</p> + +<p>This is the big one!</p> + +<pre class="terminal"> +$ gpg --recipient "Tait Hoyem" --encrypt --armour test-gpg.txt +</pre> + +<p>“But there is no output!” you might say! +Yes, that is because our new (encrypted) file has already been saved. +Let’s look at it with cat.</p> + +<pre class="terminal"> +$ cat test-gpg.txt.asc +-----BEGIN PGP MESSAGE----- + +hQIMA2mJuYb8vkIlAQ/9FDmXJgW2vI7p9sznKvHhQk7uTZvoWC3hCeqHoO3BSElP +XR1BNAkJ+bykB30M+9u+XDyRtTwazjvNPmYfQnIh0Q+BQZigDWbEd1R47jbzm7Tu +0eZKKapgEidfecULtaECX1sR3qPt1m9oZjyUR1rzNd8tezZlCu2pjdNZrkta2Bdm +Hh1xDS43Bw7PMQqraJsHwqr0M1GLDbMzPes2ZU5y4jEmXZ0PZdJ7kgjR8dvhLBfi +MU+4kYnnemQEztXBOjKidhyOntKiLjenvD00tVHrOuQoWuWCHGiqR24qSwVjeb9G +079gqH1VWi3fk2cwFA9f3TLvJqUwatyE0Hcba0U1d2Voz/C9JEQjT6FHuaCqQL6b +p7B7m2DwpywFGJpAn6ksrEYqHaLVWiEGmdMmHYuHxMw8+cqoSwbYymCZTwMBAuJe +Pr1VO9uNo+Vj5r8IX7ACcSsrjf0XkVzfX6ySsPbyOlGXnwzWSOM3Dk2Z9MqDORbj +0/7vJTnDctPuc91Rlp3YnJlZKWMcNfPMKMtvpljd2XuVwub+C4vGWXa9XLbRXmJo +cnEFT6SB11AKjytE2Urt62CCrYjJPBneabxbCztnBs+vQSx7Fj0LK6v4Euik/Xm/ +9aKmZZW8306c9Zwgpp9glWjLMCDNxJRGdKRjZsnkt9hOEYsP1irTegystK6u4eHS +mwHX931ENOJsnPfQZCZ9b41Q9doZQ/N/WHstQO8MtA3HIN1sW3wYkGzOLKj4gJfm +bqR/TzQmXyLT1xZa+/yTscaV0P4OlI4vcii/k4DgeSeQVWp9o9DbZFxSCsdYVvPu +jaDMzZnIKoax1GFz/coUAHFQub2rLzaQ5DDbvrkX++UrAjuUtRcSFH0TKhahZmCF +nv117moLfK22Mst/ +=bw8T +-----END PGP MESSAGE----- +</pre> + +<h2 id="step-5-decryption-optional">Step 5: Decryption (optional)</h2> + +<p>If you created your own public/private keypair in step 1, +and you encryped using <code class="highlighter-rouge">--recipient "Your Test Name"</code>, +then you can decrypt your document as well!</p> + +<p>You will need to specify <code class="highlighter-rouge">--decrypt</code>, and that’s all folks!</p> + +<pre class="terminal"> +$ gpg --decrypt test-gpg.txt.asc +</pre> + +<p>A password dialog will then come up asking for your previously created password. +As long as you remember your password from before and enter it correctly: voila!</p> + +<pre class="terminal"> +gpg: encrypted with 4096-bit RSA key, ID 6989B986FCBE4225, created 2020-01-02 + "Tait Hoyem &lt;tait.hoyem@protonmail.com&gt;" +Rules Of A Good Life: + +1. Wash your hands! +2. Work hard! +3. Be firm. +5. Have good friends! +</pre> + +<h2 id="step-6-finale">Step 6: Finale!</h2> + +<p>Ladies and gentleman, you have done it! +You have encrypted our very own document. +(And maybe even decrypted it yourself too :)</p> + +<p>If you encrypted using my public key, +feel free to send it to <a href="mailto:tait@tait.tech">my email</a>. +I am happy to verify if it worked.</p> + +<p>For more information on this subject, check out <a href="https://www.gnupg.org/gph/en/manual/c14.html">gnugp.org’s guide</a> on using GPG. +They are the ones that make these tools available, +and the <a href="https://www.gnu.org/">GNU Project</a> has been instrumental in creating the open-source world as it exists today. +Give ‘em some love, eh!</p> + +<p>Thank you so much for sticking through this whole thing! +Let me know if there is anything that doesn’t make sense. +I am happy to improve this guide as time goes on if that is necessary.</p> + +<p>Happy hacking :)</p>taitIf you have ever wanted to garuntee the utmost security of your emails and documents, then this is the guide for you! It should be noted that in some circles the tools used are more common than in others. These are the everyday tools of many privacy advocates and computer nerds.How Asymetric Encryption Works2020-04-02T00:00:00+00:002020-04-02T00:00:00+00:00http://localhost:4000/2020/04/02/rsa3<p>In a few previous articles I have explained <a href="/2020/01/26/rsa1.html">why encryption may be important to you</a> and <a href="/2020/02/19/rsa2.html">how the theory behind encryption works</a>. I did not yet explain the system of asymetric cryptography, however. That is what this article is for.</p> + +<p>Previously, we talked about how <em>symetric</em> encryption works. This is by having a shared key that both parties use to simultaniously encrypt, and decrypt the data. (See Ceasar Cipher for example).</p> + +<h2 id="public-key-or-asymetric-encryption">Public-key, or Asymetric Encryption</h2> + +<p>Asymetric encryption is based on the idea of having multiple keys instead of only one shared key. +For example: instead of encrypting with one key, and decrypting with that same key (like our ROT ciphers we talked about previously), we can use one key to <em>encrypt</em> the information, and a different key to <em>decrypt</em> the information.</p> + +<figure> + <img src="/assets/img/alice-to-bob.png" alt="Alice sending her message to Bob using Bob's public key. Bob decrypts the message with his private key." /> + <figcaption> + Alice sending her message to Bob using Bob's public key. Bob decrypts the message with his private key. + </figcaption> +</figure> + +<p>In the picture above, see how Alice uses Bob’s public key to encrypt some data, +then sends it to Bob for him to decrypt with his private key? +That is the essense of public-key encryption.</p> + +<p>The great thing about public-key encryption is that your public key is <em>public</em>! There is no need to be afraid of sending this everywhere! +You can attach it at the end of all your emails, the end of your forum posts, <a href="/public-key.asc">a link to it on your low-power webserver</a> (wink). +There are even things called <a href="http://keys.gnupg.net/">keyservers</a> that will save your public key on them for retrival in case somebody wants to verify your public key.</p> + +<p>Anything encrypted with your public key can only be decrypted with your private key. +Provided you never, <em>NEVER</em> share your private key with anyone ever, we can assume that all messages sent to you encrypted with your public key will never be read by anyone else.</p> + +<p>Asymetric encryption, however, often contains four keys instead of two. Why is this?</p> + +<h4 id="verification-of-author">Verification of Author</h4> + +<p>One interesting thing about keys pairs is that not only can the private key decrypt anything the public key encrypts, +but the public key can decrypt anything the private key encrypts.</p> + +<p>Now why would one want to encrypt a message that can be decrypted by anyone?</p> + +<figure> + <img src="/assets/img/alice-sign-to-bob.png" alt="Alice sending a message to bob which is 'signed' with her private key. This allows Bob to know only Alice could have sent it!" /> + <figcaption> + Alice sending a message to bob which is 'signed' with her private key. This allows Bob to know only Alice could have sent it! + <br /> + <br /> + Note: Although the picture shows otherwise, the text is not sent in the plain. It is encrypted with Alice's private key. + </figcaption> +</figure> + +<p>This is how you can verify that the person who says they wrote the message really did indeed write the message! +If their private key was never shared with anyone else, then the message must have come from them!</p> + +<p>For maximum security, these methods are often layered. +First, signing with the sender’s private key, +ensuring only they could have sent it— +then encrypted with the recipient’s pulbic key, +making sure only the reciever can read it.</p> + +<p>Note that both sides must first have eachother’s public keys to do this. +This is easy if they communicate often, but when first contacting somebody, +people will generally send their encrypted message along with the their own pulbic key attached in a seperate file.</p> + +<h3 id="what-this-means">What This Means</h3> + +<p>Notice neither Alice nor Bob had to share any comprimsing information over the network? +This is why public-key encryption is so powerful!</p> + +<p>Alice and Bob can both safely send their public keys in the open. +They can even send them over the insecure HTTP, or FTP protocols.</p> + +<p>Whilst not sending any encryption-breaking messages, +Alice and Bob now have a way to communicate securely. +If you trust nothing and no one, this is your perfered method of security.</p> + +<p>Check out this <a href="https://www.youtube.com/watch?v=GSIDS_lvRv4">Computerphile video</a> if you want the simplified explaination.</p> + +<h3 id="the-algorithms">The Algorithms</h3> + +<p>The two biggest “implementations” of public-key cryptography vary only in the mathamatical equations used to generate the numbers, +and how the numbers are <a href="https://en.wikipedia.org/wiki/Trapdoor_function">“trapdoored”</a> to decrypt if you have the correct key.</p> + +<p>I will discuss the differences in approach here. +If you want to skip to the next article where I show you how to encrypt your own documents using RSA, see <a href="/2020/04/06/rsa4.html">this link</a>.</p> + +<h3 id="rsa">RSA</h3> + +<p>The mathamatic center of the RSA system was developed over the course of a year or so. +Three men were involved. Ron Rivest, Adi Shamir, and Leonard Aldeman. +They worked as a kind of “team”: Each idea by Rivest and Shamir were critisized by the mathamatician on their team: Mr. Aldeman.</p> + +<p>One night, after consuming +<a href="https://www.math.uchicago.edu/~may/VIGRE/VIGRE2007/REUPapers/FINALAPP/Calderbank.pdf">“liberal quantities of Manischewitz wine”</a> +Rivest had trouble sleeping. +After taking long gazes into the abyss of his math textbook, he came up with an idea which would change cryptography forever. +By the next morning, an academic mathamatical paper was nearly finished. +He named it after himself and the two others that had been helping him along this whole time. <em>Rivest, Shamir, Aldeman</em>.</p> + +<p>Key sizes of RSA range from 1024-bit to 4096-bit. +1024-bit keys are considered somewhat insecure. +However, +it should be noted that every bit doubles the complexity of the key, +so 2048 is <a href="https://www.wolframalpha.com/input/?i=2%5E1024">2^1024</a> times more complex than 1024.</p> + +<h3 id="eliptic-curve-ec">Eliptic-Curve (EC)</h3> + +<p>Eliptic-Curve (EC) is a family of algorithms that use the <a href="https://en.wikipedia.org/wiki/Elliptic_curve">Eliptic curve</a> mathamatical structure to generate the numbers for the keys. +EC can effectivly provide the security of an RSA key <a href="https://www.youtube.com/watch?v=NF1pwjL9-DE">one order of magnitude larger</a> than an RSA key.</p> + +<figure> + <img src="/assets/img/ec.png" alt="A picture of an eliptic curve." class="small-image" /> + <figcaption> + An eliptic curve structure. + </figcaption> +</figure> + +<p>It’s fast; it’s secure! Perfect right?</p> + +<p>Of course not!</p> + +<p>One problem is that due to the smaller key size, +it can more easily be broken by brute-force. +This is why EC is mostly used for temporary communication (like HTTPS), not permenant communication (like having an encrypted email conversation with a journalist).</p> + +<p>The other problem is that a certain EC algrorithm called P-256 is suspected to be introduced with malice to National Institute of Standards and Technology (NIST) +<a href="https://www.schneier.com/essays/archives/2007/11/did_nsa_put_a_secret.html">by the NSA</a>. +Supposedly, the NSA is able to crack anything encrypted with this algorithm. +I will let the experts argure about that.</p> + +<p>Other well-known EC algorithms that are more-or-less trusted as secure do exist though. +The premeire one being Curve25519. +The reference implementation of <a href="https://cr.yp.to/ecdh.html">this algrorithm</a> is also <a href="https://fairuse.stanford.edu/overview/public-domain/welcome/">public-domain</a>, +so it is easy for devlopers to work into their own applications without worrying about copywrite.</p> + +<h2 id="conslusion">Conslusion</h2> + +<p>In this article we went over some basic points:</p> + +<ol> + <li>Public-key encryption enables secure communication over insecure networks.</li> + <li>RSA is considered the standard for extra-seure communication.</li> + <li>EC is a newer, faster, more transient encryption method.</li> +</ol> + +<p>To learn how to use RSA keys to encrypt your own communications, check out <a href="/2020/04/06/rsa4.html">this other aritcle I wrote</a>.</p>taitIn a few previous articles I have explained why encryption may be important to you and how the theory behind encryption works. I did not yet explain the system of asymetric cryptography, however. That is what this article is for.How Does Encryption Work, in Theory?2020-02-19T00:00:00+00:002020-02-19T00:00:00+00:00http://localhost:4000/2020/02/19/rsa2<p>There are many kinds of encryption used in our everyday communication. Online and offline, over the internet and in person. In this article, I will explain the basics of how encryption should work in theory. I explain in <a href="/2020/01/26/rsa1.html">this article</a> why encryption is important, and why <em>you</em> should care about it.</p> <p>We will start by looking at in-person, offline encryption.</p> @@ -139,7 +619,7 @@ I will discuss this more in another article, but for the technically inclined:&l <ol> <li><a href="https://en.wikipedia.org/wiki/RSA_(cryptosystem)">RSA</a>/<a href="https://en.wikipedia.org/wiki/Elliptic-curve_cryptography">EC</a> provides <em>very</em> large cryptographic keys. It would be impossible for a human to encrypt or decrypt a message manually.</li> <li><a href="https://www.youtube.com/watch?v=GSIDS_lvRv4">Asymetric cryptography</a> provides four keys, instead of just one; stopping evesdroppers from listening in on your secret conversations—even if you do not have the chance to exchange keys in advance.</li> -</ol>taitThere are many kinds of encryption used in our everyday communication. Online and offline, over the internet and in person. In this article, I will explain the basics of how encryption should work in theory. I explain in this article why encryption is important, and why you should care about it.Is Encryption Worth It?2020-01-26T00:00:00+00:002020-01-26T00:00:00+00:00/2020/01/26/rsa1<p>What is the most embarassing thing you have typed into Google search? What is the most personal secret you told a friend in confidence? What is your bank password? What is your business’s secret to stay ahead of the competition?</p> +</ol>taitThere are many kinds of encryption used in our everyday communication. Online and offline, over the internet and in person. In this article, I will explain the basics of how encryption should work in theory. I explain in this article why encryption is important, and why you should care about it.Is Encryption Worth It?2020-01-26T00:00:00+00:002020-01-26T00:00:00+00:00http://localhost:4000/2020/01/26/rsa1<p>What is the most embarassing thing you have typed into Google search? What is the most personal secret you told a friend in confidence? What is your bank password? What is your business’s secret to stay ahead of the competition?</p> <p>Now at first these questions may seem not completely related. There is a point though: You likely sent all of this information over the internet.</p> @@ -188,7 +668,7 @@ Japan lags slightly behind with 80 percent encrypted traffic.</p> <h3 id="what-about-rsa">What about RSA?</h3> -<p>RSA is an encryption method named after the initials of the inventors’ sir names: Ron <strong>R</strong>ivest, Adi <strong>S</strong>hamir, and Leonard <strong>A</strong>dleman. It uses the mathematical “factoring problem” to secure communication. The details of this specific type of encryption will be discussed in an article soon to come.</p>taitWhat is the most embarassing thing you have typed into Google search? What is the most personal secret you told a friend in confidence? What is your bank password? What is your business’s secret to stay ahead of the competition?Padding And Margin2020-01-22T00:00:00+00:002020-01-22T00:00:00+00:00/2020/01/22/padding-and-margin<p>Many people have expressed confusion over how padding and margins work in HTML/CSS. I have been one of those people. In this short article I will explain what the differences are between the two, and how it may affect the functionality of your site.</p> +<p>RSA is an encryption method named after the initials of the inventors’ sir names: Ron <strong>R</strong>ivest, Adi <strong>S</strong>hamir, and Leonard <strong>A</strong>dleman. It uses the mathematical “factoring problem” to secure communication. The details of this specific type of encryption will be discussed in an article soon to come.</p>taitWhat is the most embarassing thing you have typed into Google search? What is the most personal secret you told a friend in confidence? What is your bank password? What is your business’s secret to stay ahead of the competition?Padding And Margin2020-01-22T00:00:00+00:002020-01-22T00:00:00+00:00http://localhost:4000/2020/01/22/padding-and-margin<p>Many people have expressed confusion over how padding and margins work in HTML/CSS. I have been one of those people. In this short article I will explain what the differences are between the two, and how it may affect the functionality of your site.</p> <p>Here is an image from the World Wide Web Consortium (W3C) who sets the standards for the web.</p> diff --git a/_site/robots.txt b/_site/robots.txt index e087884..d297064 100644 --- a/_site/robots.txt +++ b/_site/robots.txt @@ -1 +1 @@ -Sitemap: /sitemap.xml +Sitemap: http://localhost:4000/sitemap.xml diff --git a/_site/sitemap.xml b/_site/sitemap.xml index f106344..bb891d5 100644 --- a/_site/sitemap.xml +++ b/_site/sitemap.xml @@ -1,30 +1,38 @@ -/2020/01/22/padding-and-margin.html +http://localhost:4000/2020/01/22/padding-and-margin.html 2020-01-22T00:00:00+00:00 -/2020/01/26/rsa1.html +http://localhost:4000/2020/01/26/rsa1.html 2020-01-26T00:00:00+00:00 -/2020/02/19/rsa2.html +http://localhost:4000/2020/02/19/rsa2.html 2020-02-19T00:00:00+00:00 -/2020-01-23-sql-joins.html +http://localhost:4000/2020/04/02/rsa3.html +2020-04-02T00:00:00+00:00 -/podcast/ +http://localhost:4000/2020/04/06/rsa4.html +2020-04-06T00:00:00+00:00 -/blog/ +http://localhost:4000/2020-01-23-sql-joins.html -/links/ +http://localhost:4000/podcast/ -/ +http://localhost:4000/blog/ + + +http://localhost:4000/links/ + + +http://localhost:4000/ diff --git a/assets/img/alice-sign-to-bob.png b/assets/img/alice-sign-to-bob.png new file mode 100644 index 0000000000000000000000000000000000000000..cfce6bf8cda25fca0ce7d8f9647f1a0bf6ce3454 GIT binary patch literal 22372 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

L>eP|Wb)zxP7X#xWkEUkxBK1}^czZ38_B5>LJ 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 literal 0 HcmV?d00001 diff --git a/assets/img/ec.png b/assets/img/ec.png new file mode 100644 index 0000000000000000000000000000000000000000..c7532a227a5282e5c042a5b7ada992683d0641e7 GIT binary patch literal 31679 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 W2?3h^JvCs1KvH7zqE*6%KmP}qAiu2u literal 0 HcmV?d00001 diff --git a/assets/img/keyring.jpg b/assets/img/keyring.jpg new file mode 100644 index 0000000000000000000000000000000000000000..279c46d5b4aa2ce7c894ca63bee8d1a4bae5057f GIT binary patch literal 68309 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

|xra~Io0W-H%sKTSYe6N- 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 Y)9~q0ZFyj^xsb>VXFz*X4LhIz+1*rEOaK4? literal 0 HcmV?d00001 diff --git a/assets/img/public-key-example1.svg b/assets/img/public-key-example1.svg new file mode 100644 index 0000000..a9220e8 --- /dev/null +++ b/assets/img/public-key-example1.svg @@ -0,0 +1,201 @@ + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + 鮑伯 + 你好! + + + Hello + Bob! + + + + + + 鮑伯的 + 私有密鑰 + + + Bob's + Private Key + + + + + 加密 + Encrypt + + + 6EB6957008E03CE4 + + + + + 鮑伯 + 你好! + + + Hello + Bob! + + + + + 解密 + Decrypt + + + + + 鮑伯的 + 公開金鑰 + + + Bob's + Public Key + + + + 愛麗斯 + Alice + + + + 鮑伯 + Bob + + + + + + + + diff --git a/assets/img/wget-log b/assets/img/wget-log new file mode 100644 index 0000000..6e8c91c --- /dev/null +++ b/assets/img/wget-log @@ -0,0 +1,12 @@ +--2020-04-02 20:52:24-- https://www.google.com/url?sa=i +Loaded CA certificate '/etc/ssl/certs/ca-certificates.crt' +Resolving www.google.com (www.google.com)... 172.217.3.196, 2607:f8b0:400a:809::2004 +Connecting to www.google.com (www.google.com)|172.217.3.196|:443... connected. +HTTP request sent, awaiting response... 200 OK +Length: unspecified [text/html] +Saving to: 'url?sa=i' + + url?sa=i [<=> ] 0 --.-KB/s url?sa=i [ <=> ] 1.38K --.-KB/s in 0s + +2020-04-02 20:52:24 (10.1 MB/s) - 'url?sa=i' saved [1414] +