<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>End To End on Eccentric Authentication</title>
    <link>/categories/end-to-end/</link>
    <description>Recent content in End To End on Eccentric Authentication</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <lastBuildDate>Sun, 17 Jul 2016 00:00:00 +0000</lastBuildDate>
    <atom:link href="/categories/end-to-end/index.xml" rel="self" type="application/rss+xml" />
    
    <item>
      <title>End to End Encryption is useless</title>
      <link>/blog/2016/07/17/end-to-end-encryption-is-useless</link>
      <pubDate>Sun, 17 Jul 2016 00:00:00 +0000</pubDate>
      
      <guid>/blog/2016/07/17/end-to-end-encryption-is-useless</guid>
      <description>&lt;p&gt;There is a lot of news about end-to-end encryption. Every chat app and&lt;br /&gt;
their neighbours are implementing it, even the big names: the Russians&lt;br /&gt;
with Telegram, the Americans with Allo, Facetime, Skype, Whatsapp and&lt;br /&gt;
what not. So that&amp;rsquo;s good, isn&amp;rsquo;t it?&lt;/p&gt;

&lt;p&gt;Yes, end to end encryption is good! It makes sure that your message,&lt;br /&gt;
your love letter, voip or telephone call can only be read by the one you&lt;br /&gt;
intend it for and no one else.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;End to end encryption is easy&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;End to end encryption is easy. All the tools have been&lt;br /&gt;
written in the last 30 years. As programmer, just use the latest&lt;br /&gt;
version, follow some do&amp;rsquo;s and don&amp;rsquo;ts and you&amp;rsquo;re done. Your users can&lt;br /&gt;
generate and exchange keys and enjoy privacy of end to end encryption.&lt;/p&gt;

&lt;p&gt;Google, Facebook, Apple, VKontakte, they provide the ways for people&lt;br /&gt;
to find each other. Just sign up at their platform, create an acccount&lt;br /&gt;
and you&amp;rsquo;re done. With some platforms, signing up is implicit as your&lt;br /&gt;
phone number is your identity. Easy and secure, right?&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Who holds the address book?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;No. Regrettably it might not be so secure. You see, what happens is&lt;br /&gt;
this: If I were to send a private message to a friend, I need his&lt;br /&gt;
public key to encrypt it. Now, public keys are those big unwieldy&lt;br /&gt;
numbers around 200-300 digits long. No way he&amp;rsquo;s going to read it over the&lt;br /&gt;
telephone to me, let alone that I can type it in without errors. I&lt;br /&gt;
need to get that key some other way.&lt;/p&gt;

&lt;p&gt;No problem, my device asks the service for the public key of my&lt;br /&gt;
friend. I encrypt the message using that key and hand the encrypted&lt;br /&gt;
message to the service for delivery.&lt;/p&gt;

&lt;p&gt;Wait &amp;hellip; a &amp;hellip; minute.&lt;/p&gt;

&lt;p&gt;Let&amp;rsquo;s state that again: I use the key I get from THEM to encrypt a&lt;br /&gt;
message and hand it to THEM for delivery to my friend - without any&lt;br /&gt;
verification. That&amp;rsquo;s a classic Man-in-the-Middle attack scenario.&lt;/p&gt;

&lt;p&gt;Here is how that attack goes: I request the platform to provide me the&lt;br /&gt;
key of my friend but instead of handing me that one, they could send&lt;br /&gt;
me a different key - one of their own. I&amp;rsquo;d encrypt the message and&lt;br /&gt;
hand it to them. Now they decrypt the message, store it, hand it to&lt;br /&gt;
NSA or whatever. Then they re-encrypt it with my friend&amp;rsquo;s real public&lt;br /&gt;
key and send it on for delivery. I&amp;rsquo;d be none the wiser, nor is my&lt;br /&gt;
friend.&lt;/p&gt;

&lt;p&gt;The problem is threefold:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;I use the address book of the platform to fetch my friend&amp;rsquo;s key;&lt;br /&gt;&lt;/li&gt;
&lt;li&gt;I use them to deliver the message to my friend;&lt;br /&gt;&lt;/li&gt;
&lt;li&gt;I use their software to write and encrypt the message.&lt;br /&gt;
&lt;br /&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This means, I have to trust the platform to do all three correctly to&lt;br /&gt;
be sure that only my friend is able to read my message, not them. If&lt;br /&gt;
they mess with either the address book or their software I&amp;rsquo;m using,&lt;br /&gt;
they can read or even modify my messages to my friend.&lt;/p&gt;

&lt;p&gt;Aside: This is already a step ahead from the unencrypted past. In the&lt;br /&gt;
past &lt;em&gt;almost everyone&lt;/em&gt; could read my message to my friend. My ISP,&lt;br /&gt;
every network operator along the path up to my friend&amp;rsquo;s ISP could read&lt;br /&gt;
along, and the spies who wiretap the cables. Now only the message&lt;br /&gt;
platform can read along - if they would decide to do so. So I would&lt;br /&gt;
have to trust a lot less people. But I still have to trust the platform.&lt;/p&gt;

&lt;p&gt;Is that trust warranted?&lt;/p&gt;

&lt;p&gt;That&amp;rsquo;s a question that each of us has to answer. For the stuff I write&lt;br /&gt;
to my colleagues - if the boss is OK with that - it&amp;rsquo;s ok for me&lt;br /&gt;
too. It&amp;rsquo;s his decision, I can only advise. On he other hand, pillow&lt;br /&gt;
talk to my wife, I don&amp;rsquo;t want that to leave the bedroom ever, so I&lt;br /&gt;
wouldn&amp;rsquo;t trust these platforms for that, so on business trips I&amp;rsquo;ll&lt;br /&gt;
have to refrain from pillow talk.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Solutions&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The key to solve this trust issue is to separate the three&lt;br /&gt;
components: address book, delivery platform and client software.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;We need End to End Authentication&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;What we need is End to End Authentication, a way for end points, like&lt;br /&gt;
you and me, to verify that there is no tampering with the public keys&lt;br /&gt;
of our communication partners.&lt;/p&gt;

&lt;p&gt;With that verification in place, it eliminates the risk of a Man in&lt;br /&gt;
the Middle-attack by the platform operators. With the push from&lt;br /&gt;
governments to backdoor communications, this could be a welcome&lt;br /&gt;
improvement.&lt;/p&gt;

&lt;p&gt;How to achieve end to end authentication? There are many ways. This&lt;br /&gt;
website is devoted to one proposal: eccentric authentication. It&amp;rsquo;s a&lt;br /&gt;
protocol designed to make people interact publicly while remaining&lt;br /&gt;
anonymous. The key exchange happens transparant as part of the&lt;br /&gt;
interaction, no explicit actions are needed to validate keys.&lt;/p&gt;

&lt;p&gt;But there are many more ways to exchange keys in a way that instills&lt;br /&gt;
confidence that there is no hidden tampering. Expect more in future&lt;br /&gt;
blogs. Or read those alreade there&amp;hellip;&lt;/p&gt;
</description>
    </item>
    
  </channel>
</rss>