{"id":670,"date":"2008-08-15T09:01:32","date_gmt":"2008-08-15T09:01:32","guid":{"rendered":"http:\/\/scientopia.org\/blogs\/goodmath\/2008\/08\/15\/introducing-cryptanalysis\/"},"modified":"2008-08-15T09:01:32","modified_gmt":"2008-08-15T09:01:32","slug":"introducing-cryptanalysis","status":"publish","type":"post","link":"http:\/\/www.goodmath.org\/blog\/2008\/08\/15\/introducing-cryptanalysis\/","title":{"rendered":"Introducing Cryptanalysis"},"content":{"rendered":"<p> To understand why serious encryption algorithms are so complex, and why it&#8217;s<br \/>\nso important to be careful with the critical secrets that make an encryption<br \/>\nsystem work, it&#8217;s useful to understand something about how people break<br \/>\nencryption systems. The study of this is called <em>cryptanalysis<\/em>, and it&#8217;s<br \/>\nan amazingly fascinating field of applied mathematics. I&#8217;m going to be<br \/>\ninterspersing information about cryptanalysis with my cryptography posts. One<br \/>\nthing to remember here is that we&#8217;ll be talking about it mainly in the context<br \/>\nof how you can break an encryption system &#8211; but cryptanalysis is also used for<br \/>\ndesigning cryposystems, because you can only design a successful cryptosystem by<br \/>\nthinking about how it can defeat the ways that it could be broken.<\/p>\n<p> One caveat: I&#8217;m going to be describing cryptanalysis in terms of how I understand it, which is sometimes different from classical descriptions by cryptanalysists. My<br \/>\nunderstanding is strongly rooted in computation and information theory, rather than pure math. So sometimes my presentation will be a bit different, but hopefully by staying in the ground where I&#8217;m most comfortable, I can do a better job of making it comprehensible.<\/p>\n<p><!--more--><\/p>\n<p> To be a bit formal for a moment, a simple cryptosystem consists of<br \/>\ntwo functions:<\/p>\n<ol>\n<li> C = En(P, K)<\/li>\n<li> P = De(C, K)<\/li>\n<\/ol>\n<p> Where C is encrypted text (called the <em>cipher-text<\/em>), P is the unencrypted text (called the <em>clear-text<\/em>), K is the secret key at the heart of the system. We typically think of K as being something like a password, but it doesn&#8217;t have to be &#8211; in a simple substitution cipher, K is the mapping from clear-text characters to cipher characters.<\/p>\n<p> A good cryptosystem is one where it&#8217;s easy to generate the cipher-text given<br \/>\nthe clear-text and the secret key; easy to generate the clear-text given the<br \/>\ncipher-text and the secret key; and very hard to figure out the secret key, even<br \/>\ngiven a large number of clear-text\/cipher-text pairs.<\/p>\n<p> When we analyze cryptosystems to try to divine their secrets, we<br \/>\ncan look at them in terms of a number of different <em>attack scenarios<\/em>. What I mean by attack scenario is that we&#8217;re looking at a cryptosystem<br \/>\nthat we want to break. An attack scenario is a way of describing<br \/>\nwhat kind of information the agent trying to crack the cryptosystem<br \/>\nhas access to. For example, some of the common scenarios discussed<br \/>\ninclude:<\/p>\n<ol>\n<li> Cipher-only: we can watch encrypted messages sent from one user<br \/>\nto another, giving us a large library of encrypted text. But we don&#8217;t know<br \/>\nany of the clear-text.<\/li>\n<li> Known clear-text: we have a library of encrypted text, like we did in<br \/>\ncipher-only, and in addition, we have some collection of clear-text\/cipher-text<br \/>\npairs.<\/li>\n<li> Chosen clear-text: we have a library of encrypted text, like we did in<br \/>\ncipher-only, and in addition, we can select a finite set of clear-texts,<br \/>\nand have them encrypted.<\/li>\n<li> Iterated chosen clear-text (also sometimes called &#8220;black-box&#8221;):<br \/>\nlike chosen clear-text, but instead of<br \/>\nonly being able to select a set of texts exactly once, we can submit<br \/>\na set of texts, get back the cipher-text, and then based on what we learn<br \/>\nfrom earlier sets of plain\/cipher-text pairs, we can select more sets of<br \/>\nclear-text to encrypt.<\/li>\n<\/ol>\n<p> These scenarios all assume that you know the basic cryptosystem. In<br \/>\ngeneral, that&#8217;s a reasonable assumption. If you don&#8217;t have a clue<br \/>\nabout what kind of cryptosystem was used to encrypt a cipher-text,<br \/>\nthings get <em>much<\/em> harder. There are some tricks that you can use<br \/>\nto make a guess at what kind of cryptosystem was used, but for non-trivial<br \/>\ncryptography, you&#8217;re often pretty much honked if you don&#8217;t have any idea of<br \/>\nwhat sort of crypto was used.<\/p>\n<p> To give you a sense of what it&#8217;s like to attack a cryptosystem,<br \/>\nI&#8217;ll walk through a simple example. Below is a simple cipher-text,<br \/>\nencrypted using a simple substititution, with spaces and punctuation<br \/>\npreserved.<\/p>\n<pre>\nb czfbczc bh bu gqlvh hbxz hl uhgih vd xt lkp qrly. lpz\nhjbpy hjgh b jgaz plhbfzc bp xt hbxz qilkubpy hjz qrlyludjziz bu hjgh hjziz giz\ng kjlrz rlh lm hziibmbf ufbzpfz qrlyu lvh hjziz: ligf, djgitpyvrg, gzhblrlyt,\nevuh hl pgxz g mzk. qvh hjziz bu plh pzgirt ul xvfj lvh hjziz czcbfghzc hl xghj\n- gpc bp dgihbfvrgi hl hjz xbuvuz lm xghj. b hjbpw hjgh hjgh bu g cgxp ujgxz,\nqzfgvuz bp xt zodzibzpfz, lpz lm hjz xluh frzgi kgtu lm bczphbmtbpy g figfwdlh\nbu hjilvyj xghj. pl xghhzi hjz udzfbmbf uvqezfh, hjz figfwdlhu grkgtu zbhjzi\ngalbc li ufizk vd hjz xghj. kjzhjzi bh'u hjz \"xzifvit fgvuzu gvhbux\" mlrwu, hjz\nazrbwlauwbgpu, fizghblpbuhu, grh-xzcbfbpz svgfwu, izdvqrbfgp dlrruhziu, li\nufbzphlrlybuhu - tlv fgp grkgtu izflypbnz hjz figfwdlhu qt hjzbi xghj. ul b gx\nylbpy hl cl xt qzuh hl dilabcz g albfz lm xghjzxghbfgr ugpbht - qlhj qt ujlkbpy\nkjgh'u kilpy kbhj hjz qgc xghj urld dvxdzc lvh qt hjz rllpbzu, gpc qt ujlkbpy\njlk yllc xghj kliwu.\n<\/pre>\n<p> The first question &#8211; and this is <em>always<\/em> the first question in<br \/>\nan attempt to break an encryption &#8211; is: &#8220;What do we know?&#8221;<\/p>\n<p> In this case, we know quite a lot:<\/p>\n<ol>\n<li> The clear-text is english text.<\/li>\n<li> The encryption is a simple substitution, which preserves<br \/>\nspaces and punctuation, but not case.<\/li>\n<\/ol>\n<p>\t That might not look like a lot, but it&#8217;s actually huge. Knowing<br \/>\nthat the clear-text is english gives us a huge amount of information<br \/>\nthat we can use to break it. Knowing that work-breaks are preserved<br \/>\nmakes it nearly trivial to solve.<\/p>\n<p> To break it, we&#8217;ll use a simple form of <em>frequency analysis<\/em>. Frequency analysis is a great technique for attacking simple ciphers. The<br \/>\nidea of it is that we know a huge amount of information about patterns<br \/>\nin human languages. Different letters don&#8217;t appear equally frequently in<br \/>\nEnglish; for example, there are a lot more &#8220;E&#8221;s than &#8220;U&#8221;s. <\/p>\n<p> A lot of people mistakenly think that frequency analysis means <em>only<\/em> using the specific frequency of individual letters. That&#8217;s not true. A good<br \/>\nfrequency analysis based attack on a cryptosystem uses not just the frequency of<br \/>\nparticular letters, but of <em>groups<\/em> of letters, relationships between<br \/>\nletters, and frequencies of words.<\/p>\n<p> So let&#8217;s start deciphering that message. To try to make it easier<br \/>\nto see how we&#8217;re decrypting, as we figure out letters, I&#8217;ll write<br \/>\nthe message with the clear-text and the cipher-text tangled &#8211; clear-text<br \/>\nletters will be uppercase, and cipher-text letters will be lowercase. When<br \/>\nwe figure out that a cipher-text letter &#8220;a&#8221; encodes to a particular<br \/>\nclear-text letter &#8220;B&#8221;, we&#8217;ll write that as &#8220;a\/B&#8221;.<\/p>\n<p> We&#8217;ll start off with a nice word-based frequency trick. There are only two<br \/>\ncommon one-letter words in english: &#8220;A&#8221; and &#8220;I&#8221;, and &#8220;I&#8221; occurs more frequently<br \/>\nat the beginning of a sentence than &#8220;A&#8221;. So there&#8217;s a good chance that a single<br \/>\nletter word that occurs frequently, including at the beginning of sentences is<br \/>\n&#8220;I&#8221;. So we&#8217;ll try that here: there are two one-letter words in the cipher-text:<br \/>\n&#8220;b&#8221; and &#8220;g&#8221;, and &#8220;b&#8221; occurs at the beginning of sentences. So we&#8217;ll try &#8220;B\/I&#8221;<br \/>\nand &#8220;G\/A&#8221;:<\/p>\n<pre>\nI czfIczc Ih Iu Aqlvh hIxz hl uhAih vd xt lkp qrly. lpz\nhjIpy hjAh I jAaz plhIfzc Ip xt hIxz qilkuIpy hjz qrlyludjziz Iu hjAh hjziz Aiz\nA kjlrz rlh lm hziiImIf ufIzpfz qrlyu lvh hjziz: liAf, djAitpyvrA, AzhIlrlyt,\nevuh hl pAxz A mzk. qvh hjziz Iu plh pzAirt ul xvfj lvh hjziz czcIfAhzc hl xAhj\n- Apc Ip dAihIfvrAi hl hjz xIuvuz lm xAhj. I hjIpw hjAh hjAh Iu A cAxp ujAxz,\nqzfAvuz Ip xt zodziIzpfz, lpz lm hjz xluh frzAi kAtu lm IczphImtIpy A fiAfwdlh\nIu hjilvyj xAhj. pl xAhhzi hjz udzfImIf uvqezfh, hjz fiAfwdlhu ArkAtu zIhjzi\nAalIc li ufizk vd hjz xAhj. kjzhjzi Ih'u hjz \"xzifvit fAvuzu AvhIux\" mlrwu, hjz\nazrIwlauwIApu, fizAhIlpIuhu, Arh-xzcIfIpz svAfwu, izdvqrIfAp dlrruhziu, li\nufIzphlrlyIuhu - tlv fAp ArkAtu izflypInz hjz fiAfwdlhu qt hjzIi xAhj. ul I Ax\nylIpy hl cl xt qzuh hl dilaIcz A alIfz lm xAhjzxAhIfAr uApIht - qlhj qt ujlkIpy\nkjAh'u kilpy kIhj hjz qAc xAhj urld dvxdzc lvh qt hjz rllpIzu, Apc qt ujlkIpy\njlk yllc xAhj kliwu.\n<\/pre>\n<p> Now, in the first sentence, we see two two-letter words side by side starting with &#8220;I&#8221;. There are only three common two-letter words starting with &#8220;I&#8221;: &#8220;if&#8221;, &#8220;is&#8221;, and &#8220;it&#8221;. Since it&#8217;s a pair of words, we can consider the<br \/>\ndifferent permutations: &#8220;it is&#8221;, &#8220;it if&#8221;, &#8220;if it&#8221;, &#8220;if is&#8221;, &#8220;is if&#8221;, and &#8220;is it&#8221;. &#8220;it if&#8221; and &#8220;if is&#8221; are both very unlikely. We can&#8217;t discard them out<br \/>\nof hand, but we can consider them very unlikely. &#8220;is it&#8221; would usually imply<br \/>\na question, but there&#8217;s no question mark. So it&#8217;s probably either &#8220;if it&#8221;, or &#8220;it is&#8221;. Looking into the next line, where we see &#8220;hjAh&#8221;, we can say that &#8220;h\/F&#8221; is very unlikely, because there are very few words in english that start and end with an &#8220;f&#8221;, but a lot that start and end with a T. So we&#8217;ll guess that the phrase is &#8220;it is&#8221;, and &#8220;h\/T&#8221; and &#8220;u\/S&#8221;.<\/p>\n<pre>\nI czfIczc IT IS AqlvT TIxz Tl STAiT vd xt lkp qrly. lpz\nTjIpy TjAT I jAaz plTIfzc Ip xt TIxz qilkSIpy Tjz qrlylSdjziz IS TjAT Tjziz Aiz\nA kjlrz rlT lm TziiImIf SfIzpfz qrlyS lvT Tjziz: liAf, djAitpyvrA, AzTIlrlyt,\nevST Tl pAxz A mzk. qvT Tjziz IS plT pzAirt Sl xvfj lvT Tjziz czcIfATzc Tl xATj\n- Apc Ip dAiTIfvrAi Tl Tjz xISvSz lm xATj. I TjIpw TjAT TjAT IS A cAxp SjAxz,\nqzfAvSz Ip xt zodziIzpfz, lpz lm Tjz xlST frzAi kAtS lm IczpTImtIpy A fiAfwdlT\nIS Tjilvyj xATj. pl xATTzi Tjz SdzfImIf SvqezfT, Tjz fiAfwdlTS ArkAtS zITjzi\nAalIc li Sfizk vd Tjz xATj. kjzTjzi IT'S Tjz \"xzifvit fAvSzS AvTISx\" mlrwS, Tjz\nazrIwlaSwIApS, fizATIlpISTS, ArT-xzcIfIpz svAfwS, izdvqrIfAp dlrrSTziS, li\nSfIzpTlrlyISTS - tlv fAp ArkAtS izflypInz Tjz fiAfwdlTS qt TjzIi xATj. Sl I Ax\nylIpy Tl cl xt qzST Tl dilaIcz A alIfz lm xATjzxATIfAr SApITt - qlTj qt SjlkIpy\nkjAT'S kilpy kITj Tjz qAc xATj Srld dvxdzc lvT qt Tjz rllpIzS, Apc qt SjlkIpy\njlk yllc xATj kliwS.\n<\/pre>\n<p> Now, we see &#8220;Tl&#8221; in the first line. There&#8217;s only one common two-letter<br \/>\nword starting with &#8220;T&#8221;: &#8220;to&#8221;. So we&#8217;ll do &#8220;l\/O&#8221;. We also see &#8220;STAiT&#8221;,<br \/>\nwhich looks like it&#8217;s probably &#8220;start&#8221;; and we see that &#8220;i&#8221; occurs very frequently in the cipher-text; &#8220;R&#8221; is one of the most common consonants in english. So we&#8217;ll also add &#8220;i\/R&#8221;.<\/p>\n<pre>\nI czfIczc IT IS AqOvT TIxz TO START vd xt Okp qrOy. Opz\nTjIpy TjAT I jAaz pOTIfzc Ip xt TIxz qROkSIpy Tjz qrOyOSdjzRz IS TjAT TjzRz ARz\nA kjOrz rOT Om TzRRImIf SfIzpfz qrOyS OvT TjzRz: ORAf, djARtpyvrA, AzTIOrOyt,\nevST TO pAxz A mzk. qvT TjzRz IS pOT pzARrt SO xvfj OvT TjzRz czcIfATzc TO xATj\n- Apc Ip dARTIfvrAR TO Tjz xISvSz Om xATj. I TjIpw TjAT TjAT IS A cAxp SjAxz,\nqzfAvSz Ip xt zodzRIzpfz, Opz Om Tjz xOST frzAR kAtS Om IczpTImtIpy A fRAfwdOT\nIS TjROvyj xATj. pO xATTzR Tjz SdzfImIf SvqezfT, Tjz fRAfwdOTS ArkAtS zITjzR\nAaOIc OR SfRzk vd Tjz xATj. kjzTjzR IT'S Tjz \"xzRfvRt fAvSzS AvTISx\" mOrwS, Tjz\nazrIwOaSwIApS, fRzATIOpISTS, ArT-xzcIfIpz svAfwS, RzdvqrIfAp dOrrSTzRS, OR\nSfIzpTOrOyISTS - tOv fAp ArkAtS RzfOypInz Tjz fRAfwdOTS qt TjzIR xATj. SO I Ax\nyOIpy TO cO xt qzST TO dROaIcz A aOIfz Om xATjzxATIfAr SApITt - qOTj qt SjOkIpy\nkjAT'S kROpy kITj Tjz qAc xATj SrOd dvxdzc OvT qt Tjz rOOpIzS, Apc qt SjOkIpy\njOk yOOc xATj kORwS.\n<\/pre>\n<p> We&#8217;re starting to see some really good progress. Some short words are<br \/>\nstarting to pop up, and lots of places where the correct word is pretty obvious.<br \/>\nFor example, &#8220;TjAT&#8221; is clearly &#8220;THAT&#8221;, so we know &#8220;j\/H&#8221;. And we see lots of<br \/>\nthree letter words, starting with &#8220;T&#8221;. The most common three-letter word<br \/>\nstarting with &#8220;T&#8221; is &#8220;the&#8221;, and we see lots of three-letter words with &#8220;T&#8221;<br \/>\nfollowed by &#8220;j&#8221;; if our guess that &#8220;j&#8221; encodes &#8220;H&#8221; is correct, that means that<br \/>\n&#8220;z&#8221; almost certainly encodes &#8220;E&#8221;.<\/p>\n<pre> I cEfIcEc IT IS AqOvT TIxE TO START vd xt Okp qrOy. OpE THIpy THAT I HAaE\npOTIfEc Ip xt TIxE qROkSIpy THE qrOyOSdHERE IS THAT THERE ARE A kHOrE rOT Om\nTERRImIf SfIEpfE qrOyS OvT THERE: ORAf, dHARtpyvrA, AETIOrOyt, evST TO pAxE A\nmEk. qvT THERE IS pOT pEARrt SO xvfH OvT THERE cEcIfATEc TO xATH - Apc Ip\ndARTIfvrAR TO THE xISvSE Om xATH. I THIpw THAT THAT IS A cAxp SHAxE, qEfAvSE Ip\nxt EodERIEpfE, OpE Om THE xOST frEAR kAtS Om IcEpTImtIpy A fRAfwdOT IS THROvyH\nxATH. pO xATTER THE SdEfImIf SvqeEfT, THE fRAfwdOTS ArkAtS EITHER AaOIc OR SfREk\nvd THE xATH. kHETHER IT'S THE \"xERfvRt fAvSES AvTISx\" mOrwS, THE aErIwOaSwIApS,\nfREATIOpISTS, ArT-xEcIfIpE svAfwS, REdvqrIfAp dOrrSTERS, OR SfIEpTOrOyISTS - tOv\nfAp ArkAtS REfOypInE THE fRAfwdOTS qt THEIR xATH. SO I Ax yOIpy TO cO xt qEST TO\ndROaIcE A aOIfE Om xATHExATIfAr SApITt - qOTH qt SHOkIpy kHAT'S kROpy kITH THE\nqAc xATH SrOd dvxdEc OvT qt THE rOOpIES, Apc qt SHOkIpy HOk yOOc xATH kORwS.\n<\/pre>\n<p> Looking very good. We can see from things like &#8220;OvT&#8221; that &#8220;v&#8221; is cipher for &#8220;U&#8221;; from &#8220;HAaE&#8221;, we can guess that &#8220;a&#8221; is cipher for &#8220;V&#8221;; from &#8220;OpE&#8221;, we can guess that &#8220;p&#8221; is cipher for &#8220;N&#8221;.<\/p>\n<pre>\nI cEfIcEc IT IS AqOUT TIxE TO START Ud xt OkN qrOy. ONE\nTHINy THAT I HAVE NOTIfEc IN xt TIxE qROkSINy THE qrOyOSdHERE IS THAT THERE ARE\nA kHOrE rOT Om TERRImIf SfIENfE qrOyS OUT THERE: ORAf, dHARtNyUrA, AETIOrOyt,\neUST TO NAxE A mEk. qUT THERE IS NOT NEARrt SO xUfH OUT THERE cEcIfATEc TO xATH\n- ANc IN dARTIfUrAR TO THE xISUSE Om xATH. I THINw THAT THAT IS A cAxN SHAxE,\nqEfAUSE IN xt EodERIENfE, ONE Om THE xOST frEAR kAtS Om IcENTImtINy A fRAfwdOT\nIS THROUyH xATH. NO xATTER THE SdEfImIf SUqeEfT, THE fRAfwdOTS ArkAtS EITHER\nAVOIc OR SfREk Ud THE xATH. kHETHER IT'S THE \"xERfURt fAUSES AUTISx\" mOrwS, THE\nVErIwOVSwIANS, fREATIONISTS, ArT-xEcIfINE sUAfwS, REdUqrIfAN dOrrSTERS, OR\nSfIENTOrOyISTS - tOU fAN ArkAtS REfOyNInE THE fRAfwdOTS qt THEIR xATH. SO I Ax\nyOINy TO cO xt qEST TO dROVIcE A VOIfE Om xATHExATIfAr SANITt - qOTH qt SHOkINy\nkHAT'S kRONy kITH THE qAc xATH SrOd dUxdEc OUT qt THE rOONIES, ANc qt SHOkINy\nHOk yOOc xATH kORwS.\n<\/pre>\n<p> From &#8220;SfIENfE&#8221;, we can guess that &#8220;f&#8221; is cipher for &#8220;C&#8221;;<br \/>\nfrom &#8220;xATH&#8221;, &#8220;TIxE&#8221;, and &#8220;NAxE&#8221; we can guess that &#8220;x&#8221; is cipher for M.<br \/>\nWe can see &#8220;NEARrt&#8221;, which should be either &#8220;NEARBY&#8221; or &#8220;NEARLY&#8221;; L occurs<br \/>\nmuch more frequently than B, and some of the other instances of &#8220;r&#8221; appear likely to be &#8220;L&#8221;s. <\/p>\n<pre>\nI cECIcEc IT IS AqOUT TIME TO START Ud MY OkN qLOy. ONE\nTHINy THAT I HAVE NOTICEc IN MY TIME qROkSINy THE qLOyOSdHERE IS THAT THERE ARE\nA kHOLE LOT Om TERRImIC SCIENCE qLOyS OUT THERE: ORAC, dHARYNyULA, AETIOLOyY,\neUST TO NAME A mEk. qUT THERE IS NOT NEARLY SO MUCH OUT THERE cEcICATEc TO MATH\n- ANc IN dARTICULAR TO THE MISUSE Om MATH. I THINw THAT THAT IS A cAMN SHAME,\nqECAUSE IN MY EodERIENCE, ONE Om THE MOST CLEAR kAYS Om IcENTImYINy A CRACwdOT\nIS THROUyH MATH. NO MATTER THE SdECImIC SUqeECT, THE CRACwdOTS ALkAYS EITHER\nAVOIc OR SCREk Ud THE MATH. kHETHER IT'S THE \"MERCURY CAUSES AUTISM\" mOLwS, THE\nVELIwOVSwIANS, CREATIONISTS, ALT-MEcICINE sUACwS, REdUqLICAN dOLLSTERS, OR\nSCIENTOLOyISTS - YOU CAN ALkAYS RECOyNInE THE CRACwdOTS qY THEIR MATH. SO I AM\nyOINy TO cO MY qEST TO dROVIcE A VOICE Om MATHEMATICAL SANITY - qOTH qY SHOkINy\nkHAT'S kRONy kITH THE qAc MATH SLOd dUMdEc OUT qY THE LOONIES, ANc qY SHOkINy\nHOk yOOc MATH kORwS.\n<\/pre>\n<p> You should be able to finish it from here: there are a ton of obvious<br \/>\nsubstittions now: &#8220;c\/D&#8221;, &#8220;q\/B&#8221;, &#8220;y\/G&#8221;, &#8220;d\/P&#8221;, &#8220;m\/F&#8221;, etc. You should also<br \/>\nnow really understand why simple substition is such a poor encryption technique: look how easily we just cracked that! In fact, there&#8217;s a<br \/>\ncryptanalysis proof that on average, you need less that 50 characters of<br \/>\ncipher-text to decode a simple substitution for english.<\/p>\n<p> (The clear-text is the text of the first-ever post on the original version<br \/>\nof this blog, with contractions and paragraph breaks removed.)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>To understand why serious encryption algorithms are so complex, and why it&#8217;s so important to be careful with the critical secrets that make an encryption system work, it&#8217;s useful to understand something about how people break encryption systems. The study of this is called cryptanalysis, and it&#8217;s an amazingly fascinating field of applied mathematics. I&#8217;m [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[84],"tags":[],"class_list":["post-670","post","type-post","status-publish","format-standard","hentry","category-encryption"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p4lzZS-aO","jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"http:\/\/www.goodmath.org\/blog\/wp-json\/wp\/v2\/posts\/670","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.goodmath.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.goodmath.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.goodmath.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.goodmath.org\/blog\/wp-json\/wp\/v2\/comments?post=670"}],"version-history":[{"count":0,"href":"http:\/\/www.goodmath.org\/blog\/wp-json\/wp\/v2\/posts\/670\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.goodmath.org\/blog\/wp-json\/wp\/v2\/media?parent=670"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.goodmath.org\/blog\/wp-json\/wp\/v2\/categories?post=670"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.goodmath.org\/blog\/wp-json\/wp\/v2\/tags?post=670"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}