<story><title>A thorough PGP tutorial</title><url>http://futureboy.us/pgp.html</url></story><parent_chain></parent_chain><comment><author>jarrett</author><text>There have been several calls in recent weeks for a nice UX wrapping GPG. I&amp;#x27;m thinking of what Cryptocat aims to be, but with a sound implementation resting on GPG. The crypto community seems supportive of this idea.&lt;p&gt;I&amp;#x27;m not saying I&amp;#x27;d be the one to implement this, but at the vert least, I&amp;#x27;d like to start collecting ideas. Maybe I or someone else could realize them eventually. So let&amp;#x27;s talk. Please post your thoughts on what would make for a good, user-friendly, and secure wrapper around GPG. Thoughts from security specialists would be especially appreciated.&lt;p&gt;I&amp;#x27;ll get the ball rolling with a few basic requirements:&lt;p&gt;* No roll-your-own crypto. Absolutely none. All algorithms must be provided by a mature, universally trusted library. (And those algorithms must of course be GPG, since that&amp;#x27;s the whole point of the project.)&lt;p&gt;* Don&amp;#x27;t use any libraries that, while sound, expose a low-level API such that we could unwittingly &lt;i&gt;call the API in unsound ways.&lt;/i&gt; An example of this would be OpenSSL. (Just an example; obviously OpenSSL != GPG.) See this for a discussion of the library misuse problem: &lt;a href=&quot;https://news.ycombinator.com/item?id=4779015&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;news.ycombinator.com&amp;#x2F;item?id=4779015&lt;/a&gt;&lt;p&gt;* Users should have to understand as little as possible about the inner workings of PGP&amp;#x2F;GPG. However, in any instance where hiding details would compromise security, details must not be hidden. For example, people need to understand the &lt;i&gt;implications&lt;/i&gt; of signing someone&amp;#x27;s key. We don&amp;#x27;t hide that part from them. But they shouldn&amp;#x27;t have to fiddle with text files and command lines. We do hide that part.&lt;p&gt;* A &amp;quot;good user experience&amp;quot; is more than just a GUI. We already have GPG GUIs. User experience doesn&amp;#x27;t start when the user first boots the program. It starts at the moment a person first hears about GPG and wants to learn more. Thus, good UX is as much about documentation (including the product homepage) as it is about software.</text></comment>
<story><title>A thorough PGP tutorial</title><url>http://futureboy.us/pgp.html</url></story><parent_chain></parent_chain><comment><author>epistasis</author><text>The barriers to modern cryptography seem to be far more social and psychological than technical.&lt;p&gt;It seems as though many of the web-of-trust issues that impeded PGP 15+ years ago could be helped by current day social networking practices, if a social network pushed it. PGP&amp;#x2F;GPG could be used under the hood, as long as the user never has to deal with an actual file anywhere unless they wanted to.&lt;p&gt;The consequences of evil twin attacks [1] may be worse, but if the &amp;#x27;verify&amp;#x27; action was not as casual as mere friending, then perhaps it would be less susceptible.&lt;p&gt;Are any startups working from this angle?&lt;p&gt;[1] &lt;a href=&quot;http://my.safaribooksonline.com/book/-/9781597495455/chapter-4dot-evil-twin-attacks/chapter_4_evil_twin_attacks#X2ludGVybmFsX0J2ZGVwRmxhc2hSZWFkZXI/eG1saWQ9OTc4MTU5NzQ5NTQ1NS82Mw==&quot; rel=&quot;nofollow&quot;&gt;http:&amp;#x2F;&amp;#x2F;my.safaribooksonline.com&amp;#x2F;book&amp;#x2F;-&amp;#x2F;9781597495455&amp;#x2F;chapter...&lt;/a&gt;</text></comment>