<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Crypto on Insignificant Bits</title>
    <link>https://bobcopeland.com/blog/tags/crypto/</link>
    <description>Recent content in Crypto on Insignificant Bits</description>
    <generator>Hugo</generator>
    <language>en-US</language>
    <lastBuildDate>Thu, 31 Dec 2015 23:57:47 +0000</lastBuildDate>
    <atom:link href="https://bobcopeland.com/blog/tags/crypto/feed.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>sae.py</title>
      <link>https://bobcopeland.com/blog/2015/12/sae-py/</link>
      <pubDate>Thu, 31 Dec 2015 23:57:47 +0000</pubDate>
       <guid isPermaLink="false">http://bobcopeland.com/blog/?p=2250</guid> 
      <description>&lt;p&gt;For a while now, I&amp;rsquo;ve wanted an easy way to decrypt a mesh packet capture when I know the SAE passphrase. This would be quite handy for debugging.&lt;/p&gt;
&lt;p&gt;I reasoned that, if I knew the shared secret, and had captured the over-the-air exchange, it should be possible to make such a tool, right? We know everything each station knows in that case, don&amp;rsquo;t we?&lt;/p&gt;
&lt;p&gt;So I spent a bit of time last week reimplementing &lt;a href=&#34;https://github.com/bcopeland/wifi-crypto/blob/master/sae.py&#34;&gt;SAE in python&lt;/a&gt; to come to grips with its various steps. And I found my reasoning was flawed.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Now (mostly) encrypted</title>
      <link>https://bobcopeland.com/blog/2015/11/now-mostly-encrypted/</link>
      <pubDate>Wed, 18 Nov 2015 01:52:51 +0000</pubDate>
       <guid isPermaLink="false">http://bobcopeland.com/blog/?p=2233</guid> 
      <description>&lt;p&gt;I signed up for the &lt;a href=&#34;https://letsencrypt.org&#34;&gt;let&amp;rsquo;s encrypt beta&lt;/a&gt; and got my cert setup today. I let my old CA-purchased cert lapse when it came for re-up a couple of years ago, so happy there&amp;rsquo;s soon to be a free alternative.&lt;/p&gt;
&lt;p&gt;Enjoy the HTTPS! (Except for some stray mixed content I need to kill &amp;ndash; sorry for that.)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Footprint, Part 2</title>
      <link>https://bobcopeland.com/blog/2013/08/footprint-part-2/</link>
      <pubDate>Mon, 12 Aug 2013 14:28:18 +0000</pubDate>
       <guid isPermaLink="false">http://bobcopeland.com/blog/?p=1967</guid> 
      <description>&lt;p&gt;My recent &lt;a href=&#34;https://bobcopeland.com/blog/2013/08/footprint/&#34;&gt;posting of ASCII art&lt;/a&gt; was intentionally subtle, perhaps overly so. If you haven&amp;rsquo;t figured it out by now, it is a C program that announces the birth of our second child. When compiled and executed, it prints:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Ian Yit-Sing Copeland
Born 5 August, 2013 at 02:49
Weight 6 lbs 11 oz&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;In this post, I will explain how I created it.&lt;/p&gt;
&lt;p&gt;Like many a C practitioner, I&amp;rsquo;ve always found &lt;a href=&#34;http://ioccc.org/&#34;&gt;International Obfuscated C Code Contest&lt;/a&gt; entries to be at once entertaining and mystifying. While I don&amp;rsquo;t consider this effort to be near the level of IOCCC entries, I thought it might be fun to try my own IOCCC-lite ASCII art program.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How I nearly cracked it</title>
      <link>https://bobcopeland.com/blog/2011/12/how-i-nearly-cracked-it/</link>
      <pubDate>Mon, 26 Dec 2011 20:39:33 +0000</pubDate>
       <guid isPermaLink="false">http://bobcopeland.com/blog/?p=1743</guid> 
      <description>&lt;p&gt;Here&amp;rsquo;s my methodology for part 1 of the Can You Crack It puzzle.&lt;/p&gt;
&lt;p&gt;(Spoilers below)&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;eb 04 af c2 bf a3 81 ec  00 01 00 00 31 c9 88 0c
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;0c fe c1 75 f9 31 c0 ba  ef be ad de 02 04 0c 00
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;d0 c1 ca 08 8a 1c 0c 8a  3c 04 88 1c 04 88 3c 0c
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;fe c1 75 e8 e9 5c 00 00  00 89 e3 81 c3 04 00 00
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;00 5c 58 3d 41 41 41 41  75 43 58 3d 42 42 42 42
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;75 3b 5a 89 d1 89 e6 89  df 29 cf f3 a4 89 de 89
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;d1 89 df 29 cf 31 c0 31  db 31 d2 fe c0 02 1c 06
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;8a 14 06 8a 34 1e 88 34  06 88 14 1e 00 f2 30 f6
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;8a 1c 16 8a 17 30 da 88  17 47 49 75 de 31 db 89
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;d8 fe c0 cd 80 90 90 e8  9d ff ff ff 41 41 41 41
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Anyone who has stared long and hard at x86 hexdumps before will immediately think &amp;ldquo;I know this, this is an intel system!&amp;rdquo; The value 0xdeadbeef in little-endian format is a dead-giveaway, as are the 0x90 (NOP) instructions. I know a couple of ways to go from a block of machine code to the corresponding code. One way, like scripts/decodecode in the kernel, is to make a .S file with .byte directives, assemble it, and run objdump over the object file.&lt;/p&gt;</description>
    </item>
    <item>
      <title>I can nearly crack it</title>
      <link>https://bobcopeland.com/blog/2011/12/i-can-nearly-crack-it/</link>
      <pubDate>Wed, 07 Dec 2011 21:29:37 +0000</pubDate>
       <guid isPermaLink="false">http://bobcopeland.com/blog/?p=1738</guid> 
      <description>&lt;p&gt;The GCHQ (that&amp;rsquo;s British for NSA) has been running a marketing gimmick to find new people to read your tweets. On &lt;a href=&#34;http://canyoucrackit.co.uk/&#34;&gt;this website&lt;/a&gt;, you will find an enigmatic hexdump, and a prompt for a keyword. Supposedly if you get it correct, then you get forwarded to their job site. I don&amp;rsquo;t care about the job aspect, but I do enjoy a good puzzle.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ll add my details and methodology in a follow-up post after the clock runs out, so as not to spoil anything for casual readers who want to take their own look. There are a few good clues in the hexdump if you have previously spent any time looking at real ones.&lt;/p&gt;</description>
    </item>
    <item>
      <title>New GPG key</title>
      <link>https://bobcopeland.com/blog/2011/10/new-gpg-key-2/</link>
      <pubDate>Tue, 11 Oct 2011 17:34:59 +0000</pubDate>
       <guid isPermaLink="false">http://bobcopeland.com/blog/?p=1709</guid> 
      <description>&lt;p&gt;My &lt;a href=&#34;https://bobcopeland.com/blog/2010/01/new-gpg-key/&#34;&gt;previous key&lt;/a&gt; isn&amp;rsquo;t yet two years old, but given the &lt;a href=&#34;https://lwn.net/Articles/461236/&#34;&gt;recent kernel.org reboot&lt;/a&gt;, I created a new keypair today. The fingerprint is:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;11FB F4D3 92A6 F32B CB4E  2E07 8411 1007 23B2 B915
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;The old key will be valid for a little while longer. As for korg, perhaps it&amp;rsquo;s time I used github anyway. My OMFS tree is over there now, lonely and waiting for me to feed him some patches.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
