diff --git a/_data/links.yml b/_data/links.yml index addaa4e..03c709e 100644 --- a/_data/links.yml +++ b/_data/links.yml @@ -20,19 +20,33 @@ - name: Podcast value: /podcast/ label: Out Of Sight -- heading: Security Links +- heading: Secure Service Links values: - - name: ToxID - value: tox:26EF54FC97D51C086BBD8D2A9FCF31E6BBAC06042862D566C450160B4F1BEC5C9B76E0B7FB01 - label: 26EF54FC97D51C086BBD8D2A9FCF31E6BBAC06042862D566C450160B4F1BEC5C9B76E0B7FB01 - - name: Public Key - value: https://tait.tech/public-key.asc - label: INHERIT -- heading: Other Links + - name: Signal + value: https://signal.org + label: INHERIT + - name: Tox + value: https://tox.chat + label: INHERIT + - name: Protonmail + value: https://protonmail.com + label: INHERIT +- heading: Linux Links values: - name: Arch Linux Wiki value: https://wiki.archlinux.org/ label: INHERIT + - name: Gentoo Wiki + value: https://wiki.gentoo.org/wiki/Main_Page + label: INHERIT + - name: Luke Smith + value: https://lukesmith.xyz + label: INHERIT + - name: Brian Lunduke + value: https://lunduke.com + label: INHERIT +- heading: Interesting Links + values: - name: Suckless value: https://suckless.org label: INHERIT @@ -42,20 +56,11 @@ - name: Edward Snowden value: https://www.biography.com/activist/edward-snowden label: INHERIT - - name: Gentoo Wiki - value: https://wiki.gentoo.org/wiki/Main_Page +- heading: Best Websites in Existence + values: + - name: Gregory Gundersen + value: https://gregorygundersen.com label: INHERIT - - name: Luke Smith - value: https://lukesmith.xyz + - name: The Best Website + value: https://thebestmotherfucking.website label: INHERIT -- heading: Secure Service Links - values: - - name: Signal - value: https://signal.org - label: INHERIT - - name: Tox - value: https://tox.chat - label: INHERIT - - name: Protonmail - value: https://protonmail.com - label: INHERIT diff --git a/_includes/nav.html b/_includes/nav.html index 3b0d298..791116d 100644 --- a/_includes/nav.html +++ b/_includes/nav.html @@ -3,7 +3,7 @@ diff --git a/_posts/2020-01-26-rsa1.md b/_posts/2020-01-26-rsa1.md index 3f52576..cbc8a3f 100644 --- a/_posts/2020-01-26-rsa1.md +++ b/_posts/2020-01-26-rsa1.md @@ -1,5 +1,5 @@ --- -title: "RSA Part 1: Why?" +title: "Is Encryption Worth It?" layout: post author: tait --- @@ -51,5 +51,5 @@ This is just the data we know of. You can disable the [telemetry](https://en.wik ### What about RSA? -RSA is an encryption method named after the initials of the inventors' sir names: Ron **R**ivest, Adi **S**hamir, and Leonard **A**dleman. It uses the mathematical "factoring problem" to secure communication. The details of this specific type of encryption will be discussed in part 2 of this series on RSA. +RSA is an encryption method named after the initials of the inventors' sir names: Ron **R**ivest, Adi **S**hamir, and Leonard **A**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. diff --git a/_posts/2020-02-19-rsa2.md b/_posts/2020-02-19-rsa2.md new file mode 100644 index 0000000..b9f02b2 --- /dev/null +++ b/_posts/2020-02-19-rsa2.md @@ -0,0 +1,108 @@ +--- +author: tait +layout: post +title: "How Does Encryption Work, in Theory?" +--- + + +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 [this article](/2020/01/26/rsa1.html) why encryption is important, and why *you* should care about it. + +We will start by looking at in-person, offline encryption. + +## Cryptography We Do Everyday +We encrypt things all the time without even thinking about it. +If you spend a significant amount of time with the same group of friends, your will tend of develop common codes that may not make sense to others outside the group. +For example: for years, my family called sombody falling from a sitting position "doing a Don". There is a story of course---We knew a guy named Don who fell from his plastic beach chair in a rather hilarious way; "doing a Don" was born. + +These kind of minor dialects in speech are cryptographic in their own way. The truth is though, that we use cryptography much more than that! + +> "Is cryptography any different than talking? +> We say something other than what we mean, and then expect everyone is able to decipher the true meaning behind the words. +> Only, I never do..." --- Adapted from a scene in [The Imitation Game (p. 39-40)](https://www.benedictcumberbatch.co.uk/wordpress/wp-content/uploads/ScreenplayTIG.pdf) + +How many times have you hinted, flirted, and innuendoed to try to say "I find you very physically attractive"? +Have you told your friend that always stinks to wear more deoderent? +Have you ever had someone say the words "I'm fine" when you know *for certain* that they are indeed not okay? + +Words Said | Meaning +--- | --- +What can you do? | I don't want to talk about this anymore. +I don't want to overstay my welcome. | I want to go home now. +I don't like them and don't know why. | They threaten my ego. +Creepy | Unattractive and friendly + +All of these scenarios are perfect examples of ~~lies~~ encryption! If we have the key to these codes, we can start to understand what people really mean. +Hopefully I have convinced you that you use ~~deceit~~ cryptography on a regular basis in your life, so let us consider what a basic encryption method might be: + +## Grade-School Encryption +Back when I was in middle school I used to pass notes like these: + +PIC + +This is a messege encrypted using the Caesar cipher. This encryption technique was used by Julius Caesar during the reign of the Roman Empire to "encrypt messeges of military significance."[1] +This is one of the oldest and simplest methods of encryption known to us today. + +![A diagram of a Ceasar Shift algorithm. A <-> N, B <-> O, et cetera.](/assets/img/ceasar13.png) + +You can try this out yourself by moving some letters forward in the alphabet. +An 'A' turns into a 'B', 'B' into 'C', 'C' into 'D', et cetera. +In this case, "Hello!" would become "Ifmmp!" +That is just using a shift of one. You can use a shift of seven, for example, and then you would shift letters like so: + +- `A -> +7 -> H` +- `Q -> +7 -> X` +- `T -> +7 -> A` + +We should wrap-around to the beginning of the alphabet if there are no letters left. + +## Example of a Caesar Cipher +Let's setup a little story to illustrate the problems of encryption. We will have three characters: + +* Alice, a little girl with feelings for Bob +* Bob, a young boy with an addiction to pancakes +* Eve, a wee jealous girl scout who sits between Bob and Alice + +Alice really likes Bob and wants to tell Bob her feelings, so she writes "I love you, Bob! Please eat healthier!" on a sticky note. +She passes it to Eve, so Eve can pass it to Alice's love interest. +However, in an unfortunate turn of events Eve reads the note herself, and decides not to give it to Bob. + +Oh the horror! Alice is without young love! How could she remedy this so that Bob can read her messege, but evil Eve can not? +Let's use the Caesar cipher to fix this problem. + +Let us assume that Alice and Bob already have a shared key, 7 for example. To encrypt this messege, we should shift our letters seven letters forward in the alphabet---just like the example above. + +PIC2 + +Now Alice's messege reads "P svcl fvb, Ivi! Wslhzl lha olhsaoply!" + +Now, when Alice sends her Romeo a little note, all he has to do is decrypt the text by shifting the letters down by 7. +[Here is a site](https://www.xarg.org/tools/caesar-cipher/) which can do longer pieces of text for you instead of doing it manually. + +## Problems + +Before the two love-birds start smooching on the branch of a big pine tree in the schoolyard, perhaps we should consider some problems with the Ceasar cipher. + +#### It is Very Easy to Break + +Even Eve with her measly grade 4 math skills could easily start going through this messege with pen and paper and figure out any combination in a couple hours at maximum. +Imagine how easy this is for a computer? +This could be broken in a few microseconds even on an older processor like the Intel Core 2 Duo. + +#### No Secure Way of Sharing Keys + +We assumed in our previous example that Bob and Alice already have a shared key (seven) to encrypt and decrypt all of their messeges. +If Bob and Alice did not have a previous friendship and time to share secrets of this sort, there is no way to share their key with eachother without Eve also knowing. +This would defeat the entire purpose of obscuring the messege in the first place. + +#### Universal Vulnerability of Messeges + +Every messege sent between the two parties uses the same code to encrypt and decrypt. If someone finds out the code once, all previous communications are comprimised. + +## Better Encryption Methods + +To combat the issues with easily breakable, shared-key cryptography, we can turn to the beautiful beast that is [Asymetric Cryptography](https://en.wikipedia.org/wiki/Public-key_cryptography). +I will discuss this more in another article, but for the technically inclined: + +1. [RSA](https://en.wikipedia.org/wiki/RSA_(cryptosystem))/[EC](https://en.wikipedia.org/wiki/Elliptic-curve_cryptography) provides *very* large cryptographic keys. It would be impossible for a human to encrypt or decrypt a messege manually. +2. [Asymetric cryptography](https://www.youtube.com/watch?v=GSIDS_lvRv4) provides four keys, instead of just one; stopping evesdroppers from listening in on your secret conversations---even if you do not have the change to exchange keys in advance. + diff --git a/_sass/main.scss b/_sass/main.scss index 761357a..7782b2f 100644 --- a/_sass/main.scss +++ b/_sass/main.scss @@ -1,7 +1,9 @@ -$normal-text-color: #111; +$normal-text-color: #444444; $nav-link-color: #333; $nav-link-hover-color: black; -$link-color: #444; +$link-color: #47a; +$visited-link-color: #941452; + $last-p-padd: 1.5em; $nav-padd: 1em; $line-under: 1px solid #aaa; @@ -23,7 +25,7 @@ body { h1, h2, h3, h4, h5, h6 { } h1 { - font-size: 1.5em; + font-size: 2.5em; } h2 { font-size: 1.3em; @@ -31,9 +33,21 @@ h2 { h4 { } a { - text-decoration: none; + text-decoration: underline; color: $link-color; +} +a:visited { + color: $visited-link-color; } +a.nav-link, +a.post-title-link { + color: $nav-link-color; + text-decoration: none; +} +a.citation-link { + text-decoration: none; +} + label { font-size: .8em; } @@ -71,18 +85,13 @@ li { width: 100%; } p { - padding: .5em 0; - line-height: 1.4em; + line-height: 1.5; + padding: .1em 0; } .line-under { padding-bottom: $last-p-padd; border-bottom: $line-under; } -.article { -} -.article a { - text-decoration: underline; -} .article a:hover { color: rgba(0, 0, 0, 0.5); } @@ -113,6 +122,9 @@ table th{ padding: 5px; font-weight: normal; } +table th { + font-weight: bold; +} table { width: 75%; margin: auto; @@ -187,3 +199,8 @@ blockquote { .bold { font-weight: bold; } + +sup { + margin: 0; + padding: 0; +} diff --git a/_site/2020-01-23-sql-joins.html b/_site/2020-01-23-sql-joins.html index c72e895..9ab1367 100644 --- a/_site/2020-01-23-sql-joins.html +++ b/_site/2020-01-23-sql-joins.html @@ -13,13 +13,13 @@ diff --git a/_site/2020/01/22/padding-and-margin.html b/_site/2020/01/22/padding-and-margin.html index d6676e0..c407bb3 100644 --- a/_site/2020/01/22/padding-and-margin.html +++ b/_site/2020/01/22/padding-and-margin.html @@ -13,13 +13,13 @@ diff --git a/_site/2020/01/26/rsa1.html b/_site/2020/01/26/rsa1.html index 804cdec..0fb56d7 100644 --- a/_site/2020/01/26/rsa1.html +++ b/_site/2020/01/26/rsa1.html @@ -2,7 +2,7 @@ - RSA Part 1: Why? + Is Encryption Worth It? @@ -13,18 +13,18 @@ -

RSA Part 1: Why?

+

Is Encryption Worth It?

Sunday, January 26 2020

@@ -77,7 +77,7 @@ Japan lags slightly behind with 80 percent encrypted traffic.

What about RSA?

-

RSA is an encryption method named after the initials of the inventors’ sir names: Ron Rivest, Adi Shamir, and Leonard Adleman. It uses the mathematical “factoring problem” to secure communication. The details of this specific type of encryption will be discussed in part 2 of this series on RSA.

+

RSA is an encryption method named after the initials of the inventors’ sir names: Ron Rivest, Adi Shamir, and Leonard Adleman. 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.

diff --git a/_site/2020/02/19/rsa2.html b/_site/2020/02/19/rsa2.html new file mode 100644 index 0000000..bd40cdc --- /dev/null +++ b/_site/2020/02/19/rsa2.html @@ -0,0 +1,165 @@ + + + + + How Does Encryption Work, in Theory? + + + + +
+ + +

How Does Encryption Work, in Theory?

+

Wednesday, February 19 2020

+ +
+

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 this article why encryption is important, and why you should care about it.

+ +

We will start by looking at in-person, offline encryption.

+ +

Cryptography We Do Everyday

+

We encrypt things all the time without even thinking about it. +If you spend a significant amount of time with the same group of friends, your will tend of develop common codes that may not make sense to others outside the group. +For example: for years, my family called sombody falling from a sitting position “doing a Don”. There is a story of course—We knew a guy named Don who fell from his plastic beach chair in a rather hilarious way; “doing a Don” was born.

+ +

These kind of minor dialects in speech are cryptographic in their own way. The truth is though, that we use cryptography much more than that!

+ +
+

“Is cryptography any different than talking? +We say something other than what we mean, and then expect everyone is able to decipher the true meaning behind the words. +Only, I never do…” — Adapted from a scene in The Imitation Game (p. 39-40)

+
+ +

How many times have you hinted, flirted, and innuendoed to try to say “I find you very physically attractive”? +Have you told your friend that always stinks to wear more deoderent? +Have you ever had someone say the words “I’m fine” when you know for certain that they are indeed not okay?

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Words SaidMeaning
What can you do?I don’t want to talk about this anymore.
I don’t want to overstay my welcome.I want to go home now.
I don’t like them and don’t know why.They threaten my ego.
CreepyUnattractive and friendly
+ +

All of these scenarios are perfect examples of lies encryption! If we have the key to these codes, we can start to understand what people really mean. +Hopefully I have convinced you that you use deceit cryptography on a regular basis in your life, so let us consider what a basic encryption method might be:

+ +

Grade-School Encryption

+

Back when I was in middle school I used to pass notes like these:

+ +

PIC

+ +

This is a messege encrypted using the Caesar cipher. This encryption technique was used by Julius Caesar during the reign of the Roman Empire to “encrypt messeges of military significance.”[1] +This is one of the oldest and simplest methods of encryption known to us today.

+ +

A diagram of a Ceasar Shift algorithm. A <-> N, B <-> O, et cetera.

+ +

You can try this out yourself by moving some letters forward in the alphabet. +An ‘A’ turns into a ‘B’, ‘B’ into ‘C’, ‘C’ into ‘D’, et cetera. +In this case, “Hello!” would become “Ifmmp!” +That is just using a shift of one. You can use a shift of seven, for example, and then you would shift letters like so:

+ + + +

We should wrap-around to the beginning of the alphabet if there are no letters left.

+ +

Example of a Caesar Cipher

+

Let’s setup a little story to illustrate the problems of encryption. We will have three characters:

+ + + +

Alice really likes Bob and wants to tell Bob her feelings, so she writes “I love you, Bob! Please eat healthier!” on a sticky note. +She passes it to Eve, so Eve can pass it to Alice’s love interest. +However, in an unfortunate turn of events Eve reads the note herself, and decides not to give it to Bob.

+ +

Oh the horror! Alice is without young love! How could she remedy this so that Bob can read her messege, but evil Eve can not? +Let’s use the Caesar cipher to fix this problem.

+ +

Let us assume that Alice and Bob already have a shared key, 7 for example. To encrypt this messege, we should shift our letters seven letters forward in the alphabet—just like the example above.

+ +

PIC2

+ +

Now Alice’s messege reads “P svcl fvb, Ivi! Wslhzl lha olhsaoply!”

+ +

Now, when Alice sends her Romeo a little note, all he has to do is decrypt the text by shifting the letters down by 7. +Here is a site which can do longer pieces of text for you instead of doing it manually.

+ +

Problems

+ +

Before the two love-birds start smooching on the branch of a big pine tree in the schoolyard, perhaps we should consider some problems with the Ceasar cipher.

+ +

It is Very Easy to Break

+ +

Even Eve with her measly grade 4 math skills could easily start going through this messege with pen and paper and figure out any combination in a couple hours at maximum. +Imagine how easy this is for a computer? +This could be broken in a few microseconds even on an older processor like the Intel Core 2 Duo.

+ +

No Secure Way of Sharing Keys

+ +

We assumed in our previous example that Bob and Alice already have a shared key (seven) to encrypt and decrypt all of their messeges. +If Bob and Alice did not have a previous friendship and time to share secrets of this sort, there is no way to share their key with eachother without Eve also knowing. +This would defeat the entire purpose of obscuring the messege in the first place.

+ +

Universal Vulnerability of Messeges

+ +

Every messege sent between the two parties uses the same code to encrypt and decrypt. If someone finds out the code once, all previous communications are comprimised.

+ +

Better Encryption Methods

+ +

To combat the issues with easily breakable, shared-key cryptography, we can turn to the beautiful beast that is Asymetric Cryptography. +I will discuss this more in another article, but for the technically inclined:

+ +
    +
  1. RSA/EC provides very large cryptographic keys. It would be impossible for a human to encrypt or decrypt a messege manually.
  2. +
  3. Asymetric cryptography provides four keys, instead of just one; stopping evesdroppers from listening in on your secret conversations—even if you do not have the change to exchange keys in advance.
  4. +
+ + +
+ +
+ + diff --git a/_site/assets/css/style.css b/_site/assets/css/style.css index 844f8dd..01f56e3 100644 --- a/_site/assets/css/style.css +++ b/_site/assets/css/style.css @@ -1,14 +1,20 @@ body { background-color: #fefefe; padding: 15px; margin: auto; max-width: 600px; font-family: -apple-system, helvetica, arial, sans-serif; } -#wrapper { color: #111; font-size: 14px; } +#wrapper { color: #444444; font-size: 14px; } #main-name { color: rgba(0, 0, 0, 0.8); } -h1 { font-size: 1.5em; } +h1 { font-size: 2.5em; } h2 { font-size: 1.3em; } -a { text-decoration: none; color: #444; } +a { text-decoration: underline; color: #47a; } + +a:visited { color: #941452; } + +a.nav-link, a.post-title-link { color: #333; text-decoration: none; } + +a.citation-link { text-decoration: none; } label { font-size: .8em; } @@ -28,12 +34,10 @@ li { margin: .5em; } #main-img { width: 100%; } -p { padding: .5em 0; line-height: 1.4em; } +p { line-height: 1.5; padding: .1em 0; } .line-under { padding-bottom: 1.5em; border-bottom: 1px solid #aaa; } -.article a { text-decoration: underline; } - .article a:hover { color: rgba(0, 0, 0, 0.5); } .post-date { text-transform: uppercase; font-weight: bold; color: rgba(0, 0, 0, 0.5); } @@ -44,6 +48,8 @@ p.post-excerpt { margin-top: 0; padding-top: 10px; } table, table tr, table td, table th { border: 1px solid rgba(0, 0, 0, 0.5); border-collapse: collapse; padding: 5px; font-weight: normal; } +table th { font-weight: bold; } + table { width: 75%; margin: auto; } table.post-list, table.post-list tr, table.post-list td { width: 100%; border: none; padding-left: 0; } @@ -69,4 +75,6 @@ blockquote { font-style: italic; } .bold { font-weight: bold; } +sup { margin: 0; padding: 0; } + /*# 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 41a8f5a..7264d44 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: #111;\n$nav-link-color: #333;\n$nav-link-hover-color: black;\n$link-color: #444;\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: 1.5em;\n}\nh2 {\n font-size: 1.3em;\n}\nh4 {\n}\na {\n text-decoration: none;\n color: $link-color;\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 padding: .5em 0;\n line-height: 1.4em;\n}\n.line-under {\n padding-bottom: $last-p-padd;\n border-bottom: $line-under;\n}\n.article {\n}\n.article a {\n text-decoration: underline;\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 {\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" + "$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" ], "names": [], - "mappings": "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" + "mappings": "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" } \ No newline at end of file diff --git a/_site/assets/img/ceasar13.png b/_site/assets/img/ceasar13.png new file mode 100644 index 0000000..8f3d905 Binary files /dev/null and b/_site/assets/img/ceasar13.png differ diff --git a/_site/blog/index.html b/_site/blog/index.html index a9f5d94..a919e30 100644 --- a/_site/blog/index.html +++ b/_site/blog/index.html @@ -13,13 +13,13 @@ @@ -28,7 +28,16 @@ -

RSA Part 1: Why?

+

How Does Encryption Work, in Theory?

+ 19 February 2020 +

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 this article why encryption is important, and why you should care about it.

+
+ + + + + +

Is Encryption Worth It?

26 January 2020

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?

@@ -37,7 +46,7 @@ -

Padding And Margin

+

Padding And Margin

22 January 2020

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.

diff --git a/_site/feed.xml b/_site/feed.xml index 045e833..d2a2656 100644 --- a/_site/feed.xml +++ b/_site/feed.xml @@ -1,4 +1,131 @@ -Jekyll2020-02-06T02:49:03+00:00http://localhost:4000/feed.xmlRSA Part 1: Why?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> +Jekyll2020-02-23T21:50:34+00:00http://localhost:4000/feed.xmlHow 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> + +<h2 id="cryptography-we-do-everyday">Cryptography We Do Everyday</h2> +<p>We encrypt things all the time without even thinking about it. +If you spend a significant amount of time with the same group of friends, your will tend of develop common codes that may not make sense to others outside the group. +For example: for years, my family called sombody falling from a sitting position “doing a Don”. There is a story of course—We knew a guy named Don who fell from his plastic beach chair in a rather hilarious way; “doing a Don” was born.</p> + +<p>These kind of minor dialects in speech are cryptographic in their own way. The truth is though, that we use cryptography much more than that!</p> + +<blockquote> + <p>“Is cryptography any different than talking? +We say something other than what we mean, and then expect everyone is able to decipher the true meaning behind the words. +Only, I never do…” — Adapted from a scene in <a href="https://www.benedictcumberbatch.co.uk/wordpress/wp-content/uploads/ScreenplayTIG.pdf">The Imitation Game (p. 39-40)</a></p> +</blockquote> + +<p>How many times have you hinted, flirted, and innuendoed to try to say “I find you very physically attractive”? +Have you told your friend that always stinks to wear more deoderent? +Have you ever had someone say the words “I’m fine” when you know <em>for certain</em> that they are indeed not okay?</p> + +<table> + <thead> + <tr> + <th>Words Said</th> + <th>Meaning</th> + </tr> + </thead> + <tbody> + <tr> + <td>What can you do?</td> + <td>I don’t want to talk about this anymore.</td> + </tr> + <tr> + <td>I don’t want to overstay my welcome.</td> + <td>I want to go home now.</td> + </tr> + <tr> + <td>I don’t like them and don’t know why.</td> + <td>They threaten my ego.</td> + </tr> + <tr> + <td>Creepy</td> + <td>Unattractive and friendly</td> + </tr> + </tbody> +</table> + +<p>All of these scenarios are perfect examples of <del>lies</del> encryption! If we have the key to these codes, we can start to understand what people really mean. +Hopefully I have convinced you that you use <del>deceit</del> cryptography on a regular basis in your life, so let us consider what a basic encryption method might be:</p> + +<h2 id="grade-school-encryption">Grade-School Encryption</h2> +<p>Back when I was in middle school I used to pass notes like these:</p> + +<p>PIC</p> + +<p>This is a messege encrypted using the Caesar cipher. This encryption technique was used by Julius Caesar during the reign of the Roman Empire to “encrypt messeges of military significance.”<a class="citation-link" href="https://en.wikipedia.org/wiki/Caesar_chipher/">[1]</a> +This is one of the oldest and simplest methods of encryption known to us today.</p> + +<p><img src="/assets/img/ceasar13.png" alt="A diagram of a Ceasar Shift algorithm. A &lt;-&gt; N, B &lt;-&gt; O, et cetera." /></p> + +<p>You can try this out yourself by moving some letters forward in the alphabet. +An ‘A’ turns into a ‘B’, ‘B’ into ‘C’, ‘C’ into ‘D’, et cetera. +In this case, “Hello!” would become “Ifmmp!” +That is just using a shift of one. You can use a shift of seven, for example, and then you would shift letters like so:</p> + +<ul> + <li><code class="highlighter-rouge">A -&gt; +7 -&gt; H</code></li> + <li><code class="highlighter-rouge">Q -&gt; +7 -&gt; X</code></li> + <li><code class="highlighter-rouge">T -&gt; +7 -&gt; A</code></li> +</ul> + +<p>We should wrap-around to the beginning of the alphabet if there are no letters left.</p> + +<h2 id="example-of-a-caesar-cipher">Example of a Caesar Cipher</h2> +<p>Let’s setup a little story to illustrate the problems of encryption. We will have three characters:</p> + +<ul> + <li>Alice, a little girl with feelings for Bob</li> + <li>Bob, a young boy with an addiction to pancakes</li> + <li>Eve, a wee jealous girl scout who sits between Bob and Alice</li> +</ul> + +<p>Alice really likes Bob and wants to tell Bob her feelings, so she writes “I love you, Bob! Please eat healthier!” on a sticky note. +She passes it to Eve, so Eve can pass it to Alice’s love interest. +However, in an unfortunate turn of events Eve reads the note herself, and decides not to give it to Bob.</p> + +<p>Oh the horror! Alice is without young love! How could she remedy this so that Bob can read her messege, but evil Eve can not? +Let’s use the Caesar cipher to fix this problem.</p> + +<p>Let us assume that Alice and Bob already have a shared key, 7 for example. To encrypt this messege, we should shift our letters seven letters forward in the alphabet—just like the example above.</p> + +<p>PIC2</p> + +<p>Now Alice’s messege reads “P svcl fvb, Ivi! Wslhzl lha olhsaoply!”</p> + +<p>Now, when Alice sends her Romeo a little note, all he has to do is decrypt the text by shifting the letters down by 7. +<a href="https://www.xarg.org/tools/caesar-cipher/">Here is a site</a> which can do longer pieces of text for you instead of doing it manually.</p> + +<h2 id="problems">Problems</h2> + +<p>Before the two love-birds start smooching on the branch of a big pine tree in the schoolyard, perhaps we should consider some problems with the Ceasar cipher.</p> + +<h4 id="it-is-very-easy-to-break">It is Very Easy to Break</h4> + +<p>Even Eve with her measly grade 4 math skills could easily start going through this messege with pen and paper and figure out any combination in a couple hours at maximum. +Imagine how easy this is for a computer? +This could be broken in a few microseconds even on an older processor like the Intel Core 2 Duo.</p> + +<h4 id="no-secure-way-of-sharing-keys">No Secure Way of Sharing Keys</h4> + +<p>We assumed in our previous example that Bob and Alice already have a shared key (seven) to encrypt and decrypt all of their messeges. +If Bob and Alice did not have a previous friendship and time to share secrets of this sort, there is no way to share their key with eachother without Eve also knowing. +This would defeat the entire purpose of obscuring the messege in the first place.</p> + +<h4 id="universal-vulnerability-of-messeges">Universal Vulnerability of Messeges</h4> + +<p>Every messege sent between the two parties uses the same code to encrypt and decrypt. If someone finds out the code once, all previous communications are comprimised.</p> + +<h2 id="better-encryption-methods">Better Encryption Methods</h2> + +<p>To combat the issues with easily breakable, shared-key cryptography, we can turn to the beautiful beast that is <a href="https://en.wikipedia.org/wiki/Public-key_cryptography">Asymetric Cryptography</a>. +I will discuss this more in another article, but for the technically inclined:</p> + +<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 messege 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 change 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: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> @@ -47,7 +174,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 part 2 of this series on RSA.</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>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/index.html b/_site/index.html index e396ddd..51a8c17 100644 --- a/_site/index.html +++ b/_site/index.html @@ -13,13 +13,13 @@ diff --git a/_site/links/index.html b/_site/links/index.html index 16e4a75..d527556 100644 --- a/_site/links/index.html +++ b/_site/links/index.html @@ -13,13 +13,13 @@ @@ -77,26 +77,33 @@ -

Security Links

+

Secure Service Links

-

ToxID - - +

Signal - + + + https://signal.org + +

+ +

Tox - + - 26EF54FC97D51C086BBD8D2A9FCF31E6BBAC06042862D566C450160B4F1BEC5C9B76E0B7FB01 + https://tox.chat

-

Public Key - - +

Protonmail - + - https://tait.tech/public-key.asc + https://protonmail.com

-

Other Links

+

Linux Links

Arch Linux Wiki - @@ -106,6 +113,32 @@

+

Gentoo Wiki - + + + https://wiki.gentoo.org/wiki/Main_Page + +

+ +

Luke Smith - + + + https://lukesmith.xyz + +

+ +

Brian Lunduke - + + + https://lunduke.com + +

+ +
+ +

Interesting Links

+
+

Suckless - @@ -127,43 +160,22 @@

-

Gentoo Wiki - - - - https://wiki.gentoo.org/wiki/Main_Page - -

- -

Luke Smith - - - - https://lukesmith.xyz - -

-
-

Secure Service Links

+

Best Websites in Existence

-

Signal - - - - https://signal.org - -

- -

Tox - - +

Gregory Gundersen - + - https://tox.chat + https://gregorygundersen.com

-

Protonmail - - +

The Best Website - + - https://protonmail.com + https://thebestmotherfucking.website

diff --git a/_site/podcast/index.html b/_site/podcast/index.html index f68ca81..e966303 100644 --- a/_site/podcast/index.html +++ b/_site/podcast/index.html @@ -13,13 +13,13 @@ diff --git a/_site/site.zip b/_site/site.zip deleted file mode 100644 index 05a4aba..0000000 Binary files a/_site/site.zip and /dev/null differ diff --git a/_site/sitemap.xml b/_site/sitemap.xml index 96b3a17..b53fdbf 100644 --- a/_site/sitemap.xml +++ b/_site/sitemap.xml @@ -9,6 +9,10 @@ 2020-01-26T00:00:00+00:00 +http://localhost:4000/2020/02/19/rsa2.html +2020-02-19T00:00:00+00:00 + + http://localhost:4000/2020-01-23-sql-joins.html diff --git a/assets/img/ceasar13.png b/assets/img/ceasar13.png new file mode 100644 index 0000000..8f3d905 Binary files /dev/null and b/assets/img/ceasar13.png differ diff --git a/blog/index.html b/blog/index.html index 52b1560..b2e5cdd 100644 --- a/blog/index.html +++ b/blog/index.html @@ -6,7 +6,7 @@ title: Blog {% for post in site.posts %} -

{{ post.title }}

+

{{ post.title }}

{{ post.excerpt }}
diff --git a/site.zip b/site.zip deleted file mode 100644 index 05a4aba..0000000 Binary files a/site.zip and /dev/null differ