<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>0xDEADBEEF &#187; Descriptions</title>
	<atom:link href="http://deadbeef.psychotomy.net/category/descriptions/feed/" rel="self" type="application/rss+xml" />
	<link>http://deadbeef.psychotomy.net</link>
	<description>Geek Chic?  Or just Geek!</description>
	<lastBuildDate>Sat, 30 Mar 2013 04:06:15 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Soundex</title>
		<link>http://deadbeef.psychotomy.net/2008/09/soundex/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=soundex</link>
		<comments>http://deadbeef.psychotomy.net/2008/09/soundex/#comments</comments>
		<pubDate>Thu, 18 Sep 2008 18:37:37 +0000</pubDate>
		<dc:creator>attriel</dc:creator>
				<category><![CDATA[Codes]]></category>
		<category><![CDATA[Descriptions]]></category>
		<category><![CDATA[Soundex]]></category>

		<guid isPermaLink="false">http://deadbeef.psychotomy.net/?p=36</guid>
		<description><![CDATA[Soundex is not technically a Cipher or Code. It&#8217;s invention was for census data. The idea behind Soundex (or SNDX, although not usually referenced in that manner) is to provide a representation of a name that will match for any minor variations that do not greatly alter the pronounciation. Pronunciation. Whichever. The idea being that [...]]]></description>
				<content:encoded><![CDATA[<p>Soundex is not technically a Cipher or Code.  It&#8217;s invention was for census data.</p>
<p>The idea behind Soundex (or SNDX, although not usually referenced in that manner) is to provide a representation of a name that will match for any minor variations that do not greatly alter the pronounciation.  Pronunciation.  Whichever.</p>
<p>The idea being that Robert and Rupert will be represented the same (<a title="Wikipedia reference" href="http://en.wikipedia.org/wiki/Soundex" target="_blank">R163</a>) but Rubin will differ (R150).  Because it was intended for names, it&#8217;s function is limited outside that scope.  The original soundex structure calls for first letter followed by 3 digits, making the algorithm questionable for large words.</p>
<ol>
<li>Keep first letter of word or name, this is the first value in the Soundex value</li>
<li>For remaining letters, convert all consonants with the table after the jump.</li>
<li>All adjacent duplicate digits are collapsed into a single instance of each</li>
<li>All remaining characters (vowels) are dropped</li>
<li>The first three numbers are the remainder of the Soundex Value</li>
</ol>
<p><span id="more-36"></span></p>
<blockquote>
<ul>
<li>B F P V =&gt; 1</li>
<li>C G J K Q S X Z =&gt; 2</li>
<li>D T =&gt; 3</li>
<li>L =&gt; 4</li>
<li>M N =&gt; 5</li>
<li>R =&gt; 6</li>
</ul>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://deadbeef.psychotomy.net/2008/09/soundex/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DES Overview</title>
		<link>http://deadbeef.psychotomy.net/2008/06/des-overview/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=des-overview</link>
		<comments>http://deadbeef.psychotomy.net/2008/06/des-overview/#comments</comments>
		<pubDate>Fri, 13 Jun 2008 04:10:21 +0000</pubDate>
		<dc:creator>attriel</dc:creator>
				<category><![CDATA[Crypts]]></category>
		<category><![CDATA[Descriptions]]></category>
		<category><![CDATA[DES]]></category>

		<guid isPermaLink="false">http://deadbeef.psychotomy.net/?p=15</guid>
		<description><![CDATA[Many people would have put this first, I realize.  Actually, had I thought of it, I might have too. But I also think it makes a great deal of sense now.  Because now I can link the bits to their posts.  WHEE! Setup (Initial Permutation) Do 16x: Process Key (Key Manipulations) Process L &#38; R [...]]]></description>
				<content:encoded><![CDATA[<p>Many people would have put this first, I realize.  Actually, had I thought of it, I might have too.</p>
<p>But I also think it makes a great deal of sense now.  Because now I can link the bits to their posts.  WHEE!</p>
<p style="padding-left: 30px;">Setup (<a title="Set Up" href="http://deadbeef.psychotomy.net/?p=10">Initial Permutation</a>)<br />
Do 16x:</p>
<p style="padding-left: 60px;">Process Key (<a title="Process Key" href="http://deadbeef.psychotomy.net/?p=11">Key Manipulations</a>)<br />
Process L &amp; R with K through f (<a title="Process Values" href="http://deadbeef.psychotomy.net/?p=12">Main Algorithm</a>)</p>
<p style="padding-left: 30px;">Done<br />
Finish (<a title="Finish" href="http://deadbeef.psychotomy.net/?p=13">Final Permutation</a>)</p>
<p>FINI</p>
<p>The demonstrated versions are going to be HUGE!  And start Tuesday!</p>
]]></content:encoded>
			<wfw:commentRss>http://deadbeef.psychotomy.net/2008/06/des-overview/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DES: Final Permutation</title>
		<link>http://deadbeef.psychotomy.net/2008/06/des-final-permutation/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=des-final-permutation</link>
		<comments>http://deadbeef.psychotomy.net/2008/06/des-final-permutation/#comments</comments>
		<pubDate>Tue, 10 Jun 2008 16:36:11 +0000</pubDate>
		<dc:creator>attriel</dc:creator>
				<category><![CDATA[Crypts]]></category>
		<category><![CDATA[Descriptions]]></category>
		<category><![CDATA[DES]]></category>

		<guid isPermaLink="false">http://deadbeef.psychotomy.net/?p=13</guid>
		<description><![CDATA[After 16 cycles are complete, we take the L(16) and R(16), catenate them, and use the following Final Permutation to generate our encrypted 64-bit data block 40 8 48 16 56 24 64 32 39 7 47 15 55 23 63 31 38 6 46 14 54 22 62 30 37 5 45 13 53 [...]]]></description>
				<content:encoded><![CDATA[<p>After 16 cycles are complete, we take the L(16) and R(16), catenate them, and use the following Final Permutation to generate our encrypted 64-bit data block</p>
<p><code>40 8 48 16 56 24 64 32<br />
39 7 47 15 55 23 63 31<br />
38 6 46 14 54 22 62 30<br />
37 5 45 13 53 21 61 29<br />
36 4 44 12 52 20 60 28<br />
35 3 43 11 51 19 59 27<br />
34 2 42 10 50 18 58 26<br />
33 1 41 9 49 17 57 25</code></p>
]]></content:encoded>
			<wfw:commentRss>http://deadbeef.psychotomy.net/2008/06/des-final-permutation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DES: Main Algorithm</title>
		<link>http://deadbeef.psychotomy.net/2008/06/des-main-algorithm/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=des-main-algorithm</link>
		<comments>http://deadbeef.psychotomy.net/2008/06/des-main-algorithm/#comments</comments>
		<pubDate>Thu, 05 Jun 2008 16:36:36 +0000</pubDate>
		<dc:creator>attriel</dc:creator>
				<category><![CDATA[Crypts]]></category>
		<category><![CDATA[Descriptions]]></category>
		<category><![CDATA[DES]]></category>

		<guid isPermaLink="false">http://deadbeef.psychotomy.net/?p=12</guid>
		<description><![CDATA[Given the initial L(0) and R(0), we then develop L(1) and R(1) L(i+1) = R(i) R(i+1) = L XOR f(R(i),K(i+1)) For function f, R(i) is expanded from 32-bit to 48-bit R&#8217;(i) 32 1 2 3 4 5 4 5 6 7 8 9 8 9 10 11 12 13 12 13 14 15 16 17 [...]]]></description>
				<content:encoded><![CDATA[<p>Given the initial L(0) and R(0), we then develop L(1) and R(1)</p>
<p>L(i+1) = R(i)<br />
R(i+1) = L XOR f(R(i),K(i+1))</p>
<p>For function f, R(i) is expanded from 32-bit to 48-bit R&#8217;(i)</p>
<p>32 1 2 3 4 5<br />
4 5 6 7 8 9<br />
8 9 10 11 12 13<br />
12 13 14 15 16 17<br />
16 17 18 19 20 21<br />
20 21 22 23 24 25<br />
24 25 26 27 28 29<br />
28 29 30 31 32 1</p>
<p>R&#8217;(i) XOR K(i+1) (RK(i))is then broken into 8 6-bit chunks and permuted through S tables. (See <a href="http://deadbeef.psychotomy.net/?p=14">S-Table post</a>)</p>
<p>This permutation is then FURTHER permuted, which gives us the result (F(i)) of f(R(i),K(i+1))</p>
<p>16 7 20 21<br />
29 12 28 17<br />
1 15 23 26<br />
5 18 31 10<br />
2 8 24 14<br />
32 27 3 9<br />
19 13 30 6<br />
22 11 4 25</p>
<p>F(i) is then XOR’d with L(i) (from WAAAY back), giving us the R(i+1).</p>
]]></content:encoded>
			<wfw:commentRss>http://deadbeef.psychotomy.net/2008/06/des-main-algorithm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DES: S-Tables</title>
		<link>http://deadbeef.psychotomy.net/2008/06/des-s-tables/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=des-s-tables</link>
		<comments>http://deadbeef.psychotomy.net/2008/06/des-s-tables/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 18:37:56 +0000</pubDate>
		<dc:creator>attriel</dc:creator>
				<category><![CDATA[Crypts]]></category>
		<category><![CDATA[Descriptions]]></category>
		<category><![CDATA[DES]]></category>

		<guid isPermaLink="false">http://deadbeef.psychotomy.net/?p=14</guid>
		<description><![CDATA[The 6-bits from RK(i) are then further mixed RK(i,0)RK(i,5) and RK(i,1..4), which provides a 4-bit response The first and last bits define which ROW, and the middle 4-bits define the COLUMN S(1) RC 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 00 01 10 11 Full listings [...]]]></description>
				<content:encoded><![CDATA[<p>The 6-bits from RK(i) are then further mixed RK(i,0)RK(i,5) and RK(i,1..4), which provides a 4-bit response</p>
<p>The first and last bits define which ROW, and the middle 4-bits define the COLUMN</p>
<p>S(1)</p>
<p>RC  0000  0001  0010  0011  0100  0101  0110  0111  1000  1001  1010  1011  1100  1101  1110  1111</p>
<p>00</p>
<p>01</p>
<p>10</p>
<p>11</p>
<p>Full listings after the break</p>
<p><span id="more-14"></span></p>
<p>S1<br />
14 4 13 1 2 15 11 8 3 10 6 12 5 9 0 7<br />
0 15 7 4 14 2 13 1 10 6 12 11 9 5 3 8<br />
4 1 14 8 13 6 2 11 15 12 9 7 3 10 5 0<br />
15 12 8 2 4 9 1 7 5 11 3 14 10 0 6 13</p>
<p>S2<br />
15 1 8 14 6 11 3 4 9 7 2 13 12 0 5 10<br />
3 13 4 7 15 2 8 14 12 0 1 10 6 9 11 5<br />
0 14 7 11 10 4 13 1 5 8 12 6 9 3 2 15<br />
13 8 10 1 3 15 4 2 11 6 7 12 0 5 14 9</p>
<p>S3<br />
10 0 9 14 6 3 15 5 1 13 12 7 11 4 2 8<br />
13 7 0 9 3 4 6 10 2 8 5 14 12 11 15 1<br />
13 6 4 9 8 15 3 0 11 1 2 12 5 10 14 7<br />
1 10 13 0 6 9 8 7 4 15 14 3 11 5 2 12</p>
<p>S4<br />
7 13 14 3 0 6 9 10 1 2 8 5 11 12 4 15<br />
13 8 11 5 6 15 0 3 4 7 2 12 1 10 14 9<br />
10 6 9 0 12 11 7 13 15 1 3 14 5 2 8 4<br />
3 15 0 6 10 1 13 8 9 4 5 11 12 7 2 14</p>
<p>S5<br />
2 12 4 1 7 10 11 6 8 5 3 15 13 0 14 9<br />
14 11 2 12 4 7 13 1 5 0 15 10 3 9 8 6<br />
4 2 1 11 10 13 7 8 15 9 12 5 6 3 0 14<br />
11 8 12 7 1 14 2 13 6 15 0 9 10 4 5 3</p>
<p>S6<br />
12 1 10 15 9 2 6 8 0 13 3 4 14 7 5 11<br />
10 15 4 2 7 12 9 5 6 1 13 14 0 11 3 8<br />
9 14 15 5 2 8 12 3 7 0 4 10 1 13 11 6<br />
4 3 2 12 9 5 15 10 11 14 1 7 6 0 8 13</p>
<p>S7<br />
4 11 2 14 15 0 8 13 3 12 9 7 5 10 6 1<br />
13 0 11 7 4 9 1 10 14 3 5 12 2 15 8 6<br />
1 4 11 13 12 3 7 14 10 15 6 8 0 5 9 2<br />
6 11 13 8 1 4 10 7 9 5 0 15 14 2 3 12</p>
<p>S8<br />
13 2 8 4 6 15 11 1 10 9 3 14 5 0 12 7<br />
1 15 13 8 10 3 7 4 12 5 6 11 0 14 9 2<br />
7 11 4 1 9 12 14 2 0 6 10 13 15 3 5 8<br />
2 1 14 7 4 10 8 13 15 12 9 0 3 5 6 11</p>
]]></content:encoded>
			<wfw:commentRss>http://deadbeef.psychotomy.net/2008/06/des-s-tables/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DES: Key (K) Manipulations</title>
		<link>http://deadbeef.psychotomy.net/2008/04/des-key-k-manipulations/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=des-key-k-manipulations</link>
		<comments>http://deadbeef.psychotomy.net/2008/04/des-key-k-manipulations/#comments</comments>
		<pubDate>Thu, 24 Apr 2008 13:07:52 +0000</pubDate>
		<dc:creator>attriel</dc:creator>
				<category><![CDATA[Crypts]]></category>
		<category><![CDATA[Descriptions]]></category>
		<category><![CDATA[DES]]></category>

		<guid isPermaLink="false">http://deadbeef.psychotomy.net/?p=11</guid>
		<description><![CDATA[In order to encrypt our data, we start with a 64-bit key (KEY). This key is, actually, only 56 bits, with every 8th bit for parity. From this 64-bit KEY we need to define two 24-bit blocks (C and D) C(0) 57 49 41 33 25 17 9 1 58 50 42 34 26 18 [...]]]></description>
				<content:encoded><![CDATA[<p>In order to encrypt our data, we start with a 64-bit key (KEY).  This key is, actually, only 56 bits, with every 8th bit for parity.</p>
<p>From this 64-bit KEY we need to define two 24-bit blocks (C and D)</p>
<p>C(0)<code><br />
57 49 41 33 25 17 9<br />
1 58 50 42 34 26 18<br />
10 2 59 51 43 35 27<br />
19 11 3 60 52 44 36<br />
</code><br />
D(0)<code><br />
63 55 47 39 31 23 15<br />
7 62 54 46 38 30 22<br />
14 6 61 53 45 37 29<br />
21 13 5 28 20 12 4</code></p>
<p>From here, each C/D 1..16 are generated by Left Rotating the previous C/D according to the following table:<br />
<code> 1 1<br />
2 1<br />
3 2<br />
4 2<br />
5 2<br />
6 2<br />
7 2<br />
8 2<br />
9 1<br />
10 2<br />
11 2<br />
12 2<br />
13 2<br />
14 2<br />
15 2<br />
16 1</code></p>
<p>Thus C(1) is LR(1) C(0), D(15) is LR(2) D(14), etc</p>
<p>We then catenate C and D (making it one longer block), and can now define our K with the following 56-to-48 bit conversion table</p>
<p>K(1)<code></code></p>
<p><code>14 17 11 24 1 5<br />
3 28 15 6 21 10<br />
23 19 12 4 26 8<br />
16 7 27 20 13 2<br />
41 52 31 37 47 55<br />
30 40 51 45 33 48<br />
44 49 39 56 34 53<br />
46 42 50 36 29 32</code></p>
]]></content:encoded>
			<wfw:commentRss>http://deadbeef.psychotomy.net/2008/04/des-key-k-manipulations/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DES: Initial Permutation</title>
		<link>http://deadbeef.psychotomy.net/2008/04/des-initial-permutation/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=des-initial-permutation</link>
		<comments>http://deadbeef.psychotomy.net/2008/04/des-initial-permutation/#comments</comments>
		<pubDate>Thu, 24 Apr 2008 12:51:24 +0000</pubDate>
		<dc:creator>attriel</dc:creator>
				<category><![CDATA[Crypts]]></category>
		<category><![CDATA[Descriptions]]></category>
		<category><![CDATA[DES]]></category>

		<guid isPermaLink="false">http://deadbeef.psychotomy.net/?p=10</guid>
		<description><![CDATA[DES operates on 64-bit blocks of data, equivalent to 8-characters. The first step in a DES encryption is to munge the initial block to create two new datablocks L(0) 58 50 42 34 26 18 10 2 60 52 44 36 28 20 12 4 62 54 46 38 30 22 14 6 64 56 [...]]]></description>
				<content:encoded><![CDATA[<p>DES operates on 64-bit blocks of data, equivalent to 8-characters.</p>
<p>The first step in a DES encryption is to munge the initial block to create two new datablocks</p>
<p>L(0)<br />
<code>58 50 42 34 26 18 10 2<br />
60 52 44 36 28 20 12 4<br />
62 54 46 38 30 22 14 6<br />
64 56 48 40 32 24 16 8</code></p>
<p><code><code>R(0)</code><br />
57 49 41 33 25 17 9 1<br />
59 51 43 35 27 19 11 3<br />
61 53 45 37 29 21 13 5<br />
63 55 47 39 31 23 15 7</code></p>
]]></content:encoded>
			<wfw:commentRss>http://deadbeef.psychotomy.net/2008/04/des-initial-permutation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Data Encryption Standard (DES) pt 0</title>
		<link>http://deadbeef.psychotomy.net/2008/04/data-encryption-standard-des-pt-0/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=data-encryption-standard-des-pt-0</link>
		<comments>http://deadbeef.psychotomy.net/2008/04/data-encryption-standard-des-pt-0/#comments</comments>
		<pubDate>Sun, 20 Apr 2008 20:36:10 +0000</pubDate>
		<dc:creator>attriel</dc:creator>
				<category><![CDATA[Crypts]]></category>
		<category><![CDATA[Descriptions]]></category>
		<category><![CDATA[DES]]></category>

		<guid isPermaLink="false">http://deadbeef.psychotomy.net/?p=9</guid>
		<description><![CDATA[I had gone through DES before, but in the end it&#8217;s such a LARGE process that the description was huge. The example was going to go on for days, or be virtually useless. So, now I&#8217;m redoing it in a series of posts, with the intent that the smaller chunkiness will permit semi-reasonable walkthrough. I [...]]]></description>
				<content:encoded><![CDATA[<p>I had gone through DES before, but in the end it&#8217;s such a LARGE process that the description was huge.  The example was going to go on for days, or be virtually useless.  </p>
<p>So, now I&#8217;m redoing it in a series of posts, with the intent that the smaller chunkiness will permit semi-reasonable walkthrough.</p>
<p>I can still foresee some issues herein, but they may be less insurmountable</p>
]]></content:encoded>
			<wfw:commentRss>http://deadbeef.psychotomy.net/2008/04/data-encryption-standard-des-pt-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Simple Ciphers</title>
		<link>http://deadbeef.psychotomy.net/2008/04/simple-ciphers/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=simple-ciphers</link>
		<comments>http://deadbeef.psychotomy.net/2008/04/simple-ciphers/#comments</comments>
		<pubDate>Sun, 06 Apr 2008 23:03:39 +0000</pubDate>
		<dc:creator>attriel</dc:creator>
				<category><![CDATA[cyphers]]></category>
		<category><![CDATA[Descriptions]]></category>

		<guid isPermaLink="false">http://deadbeef.psychotomy.net/?p=4</guid>
		<description><![CDATA[A simple cipher substitutes one letter for another, one-to-one generally. Technically &#8216;simple ciphers&#8217; covers three common setups, but as they are fundamentally the same, I&#8217;m including both. The first is &#8220;ROT-13 encoding,&#8221; which despite it&#8217;s name isn&#8217;t really an encoding. ROT-13 substitutes each letter with the letter 13 away (half an alphabet), which eliminates the [...]]]></description>
				<content:encoded><![CDATA[<p>A simple cipher substitutes one letter for another, one-to-one generally. Technically &#8216;simple ciphers&#8217; covers three common setups, but as they are fundamentally the same, I&#8217;m including both.</p>
<p>The first is &#8220;ROT-13 encoding,&#8221; which despite it&#8217;s name isn&#8217;t really an encoding. ROT-13 substitutes each letter with the letter 13 away (half an alphabet), which eliminates the need to define a direction in the shift. A becomes M, M becomes A. D becomes P, P becomes D.</p>
<p>Second is a &#8220;Rotation Cipher,&#8221; more commonly known as a &#8220;Caesar Cipher,&#8221; which is actually a more general version of ROT-13. A Rotation Cipher would generally be named with a direction and a number. ROT Right 5, or ROT-L-9. ROT-13 is a special case because L and R would be identical (26 letters, 13 is halfway around, either direction). Rotation Ciphers are frequently put on &#8220;secret decoder rings.&#8221;</p>
<p>The third is the generic case of &#8220;substitution cipher.&#8221; In this instance, A may be mapped to X and then B to C, there is no relation between mappings. This can either be a 13-letter table (where, then, X would map to A and C to B) or a full 26 (C may map to A, and X would become I).</p>
<p>In terms of data security, none of these is any good. These are more useful for either pre-coding a message for actual encoding or encryption, or for passing insecure data. There are ways to complicate these techniques (which I will work up separately), which make them more secure.</p>
<p>The basic use for a Simple Cipher is to make data require some level of work to read (to slow someone down), and to make for ready manual processing. With the &#8220;decoder ring&#8221;, anyone can easily tick through an arbitrarily long message with a consistent time per letter, and a consistent process.</p>
<p>(This is a post I&#8217;m migrating from the first edition of this blog)</p>
]]></content:encoded>
			<wfw:commentRss>http://deadbeef.psychotomy.net/2008/04/simple-ciphers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
