Horcrux Encrypted Messaging
CC Attribution 4.0 International:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Perla, Joseph
"Nation states can break some encryption, hack your device, and spy on all communications with their dragnets. How do you send secure messages leveraging adversarial nation-states?
 So the idea behind Horcrups encrypted messaging is that we, since the revelations of Edward Snowden, have learned about massive drag net monitoring of different communication channels that the NSA has access to. And also probably every other major nation state has access to messaging platforms either directly on the back end through zero day vulnerabilities. They potentially have infiltrated the crypto systems as well so that even some things that we think are secure they have access to. And so they have access to a lot more messages than we originally thought they'd have access to. But one thing that is happening now is that it's not entirely one pole world where the US is running everything. We see increasingly that Russia and China are running their own sophisticated technology stacks and they have their own equivalents to the NSA that are swine on their own citizens and other citizens. But there is probably maybe the NSA and probably no country that has access to everybody's platform. And this is the key part of the system that we're relying on. Fundamentally, how do we send a message from one person to another knowing that these security administrations have pretty deep access to any given one messaging system? Well, if we can split take our message and split it up into multiple separate messages that we send on every possible messaging system that we think is independently secure, one in US, one in China, one in Russia, then if unless some system has able to attack and penetrate all of those messaging platforms, then we can make sure that that's secure. And I just described a specific way to do that in a way that's pretty simple and has a lot of security guarantees, even if things like private private and public key encryption are hacked. So here's basically a visualization of the design. So you'll start with each of the center and the recipient have each having what we call a magic wand, which is basically just a simple device that where you can type in a message and then encrypt that into multiple sub messages, or we call them horcruxes. So imagine like a really simple device manufactured in the US or in China, and it doesn't have Bluetooth, it doesn't have Wi-Fi, it doesn't have any external access, but you can type in a short message and click encrypt and it'll show you three different other messages, one or two, at least two different other messages that you can send on independent messaging channels. So you'll type on this device, hello, hello, Arthur, and then it'll give you a scrambled text and another scrambled text, and then you'll send that first scrambled text on one channel. For example, you could send it to the signal app on an iPhone. And then the second message, which is also a scramble, will be sent through, say, WeChat on Huawei, and that's more of a Chinese centered application. And so the idea is maybe the NSA of the US has some kind of back doors into signal or something like that, or back doors into iPhone, but they might not have a back door on the highest model in Huawei, which the Chinese bureaucrats may use, and they may be using WeChat to communicate with each other. The basic idea is somewhere like the elites in the US are using signal to chat in an encrypted way, our bureaucrats, our congresspeople are talking, and our financial people are talking on signal, and the Chinese state has some secure method that the NSA is not spying on in China. And so if we can send messages on both of these channels, then there isn't any one government that can reassemble the whole message. So basically we send the message on these two different platforms, it's received on the recipient's end, and then they can take each scramble message and put it together onto, again, their magic wand, and that again doesn't have internet access in any way, and then assemble that message that says hello, Arthur. And we can go into the details of how this is designed to be very simple and very secure. But that's the fundamental idea. If you separate the messages out, it's going to be hard to figure out exactly, and maybe even impossible for any, for almost any government even to access. So I'm going to scroll over here. So the main secret, main thing that's going to make this very trustable is that we're not using any kind of complicated RSA, like prime factor based encryption that which could be broken. Maybe the NSA has quantum computers that can break some of these encryptions that they haven't released publicly. So we're going to use a very simple encryption. It's called a one-time pad. The nice thing about a one-time pad though is that one-time pad is perfect secrecy. It gives you no information about it. There's no, you know, fastest computer ever in the world can't hack, can't figure, can't crack a one-time pad. So by using the one-time pad in the magic wand to encrypt the Horcruxes, we have perfect secrecy such that even if you break half of the Horcruxes, are almost all of the Horcruxes, as long as one is securely sent and hidden, then the cracked Horcruxes reveal no information about the message. The other important thing about using a one-time pad is that it's a very simple, very simple encryption system. A lot of crypto systems have been broken, for example, SSL and Heartbleed, such that they had programming errors in the way that they were implemented. If anything is, you know, uses non-trivial math, there are many different ways that the different matrices could be corrupted or just, you know, some of the loops could be set up such that there's a way to sneak it a bug. We want the magic wand to be very simple, maybe even programmed into hardware and do something very simple. So the one-time pad just uses XOR and it can take a zero and a one XOR it and it's a very simple function, varies it to audit the code to do that and we can trust fully and audit fully that the magic wand is very simple and that you can both encrypt and decrypt very safely. Here's a visualization of maybe, you know, possibly the different Venn diagrams of what is already cracked. Probably a lot of email servers and email lines and maybe very simple basic SSL is already very accessible to the NSA and to some of the hackers in Russia and China. And WeChat probably is very compromised by China and possibly none of others, perhaps that they don't want other countries to be able to access the WeChat so it's private citizens and that might be very safe. So, you know, as we investigate more we might find out that there is some number of different channels that you can use such that there isn't any one entity except the sender and receiver which can find and get all the messages and then figure out what the different Horcruxes are to say to decrypt it. And there's other things you could do because you can basically with the one-time pads very simple to break it up into any number of Horcruxes you could send it along all the different channels. You could even send a Horcrux in plain sight using Stegonography. Stegonography is the the art of hiding an encrypted message in plain sight. For example, you can put it into a photo and just into the noise values of a photo. So, any anybody who's trying to read what your Horcruxes say won't even know how many Horcruxes you have and where they are. And then even if they hack your signal account they will know that you also hid one of the Horcruxes in an image that you tweeted in some of the subpixel values. So, whereas you're a receiver you could have pre-planned a way for them to receive messages that they could start to reassemble the messages in a way that an attacker might not be able to figure out. The other really nice thing you can do with this is a lot of people including Jeff Bezos has been attacked with zero-day attacks on the OS itself which means that even the most secure messaging apps like Signal or Threema who are both open source now, they are vulnerable to the operating system and there's really nothing you can do to get around that. They're very complicated applications. However, Horcruxes can give you an option to mitigate that a little bit because instead of relying on any one single app or any one single app running on one single OS you could break up your message into equally secure pieces and send it on multiple OSes. So now you've at least increased the cost of an attack. So, instead of having to just crack the WhatsApp or crack the iPhone now an attacker would have to use attacks both on an iPhone and Android phone and you know whatever email server and be able to spend many millions more dollars on zero-day attacks to find you and even then they won't even necessarily an attacker won't necessarily know if spending a million dollars on a zero-day attack for an iPhone for your iPhone will get you to go get them all the Horcruxes. Maybe it only get them one of the Horcruxes but you've hidden those other Horcruxes somewhere they haven't even realized where they are yet. So you've increased the cost super linearly of cracking a phone in a way where if if anybody was relying on one single messaging app or one single OS it just has no way of preventing. I'll go into the magic wand. So the magic wand ideal in an ideal world is a very simple piece of hardware simple eating screen no network ports no USB no Wi-Fi no easy way to like accidentally have a side channel attack and all it does is is you can type a message and maybe the only way it can communicate is through a QR code maybe you can scan a QR code to actually get the message from that magic wand into your signal app and then you just send that and I've actually built a demo that works with it it's very simple and then possibly if you want something less secure you could have that app use the local Bluetooth connection but that does open possible new channels of attack although you would make it that would make it easier to use. Another option to make it even easier to use is to instead of using a separate piece of hardware you could actually have a magic wand app on one device and this is this is what I kind of tested and made a demo of obviously that's much less secure because you put your risk back into one single OS that is connection to the internet and as you know zero-day vulnerabilities are a major issue but you still get some of the benefits if your attacker only has access to the network and doesn't have access to zero days or doesn't know how to find your device then an attacker that only has access to the network might not be able to to gain access to your phone in which case you might be able to use the magic wand as an app on your phone and just send it through different messaging apps. So I go over different threat models that this involves for example that it could be a nation state observer that's looking at your cipher text perhaps they have a passive attack to like read your messages or maybe they can even modify your messages they can maybe compel providers to to provide information on the decryption key so that anything encrypted with a private encryption key that they have access to they would be able to read. Obviously this doesn't cover every case but it covers a lot of cases and then there's a lot of different ways that this could fail for example you do need every Horcrux to reassemble the message which is a positive and that the attacker would need to receive it or to get all your messages but it's also a downside because if you if they could take they could denial service one of the channels and then you lose one of the Horcruxes and now your receiver can't receive the message and normally when you when you do that when you lose availability then people use less secure means. One way to avoid relying on all the Horcruxes is to use a much more complicated encryption system instead of using one time pad you could switch to some mere secret sharing which is maybe you only need m of n of the Horcruxes in order to reassemble the message that's totally something that you can do it's a little more complicated to program so it does leave potentially the possibility of some software bugs much more complicated than XOR but it is a way to get some more robustness in sending the messages. One vulnerability is probably the magic wand would be manufactured in China which could leave a potential possibility that China could some the Chinese government could put in a not very good random number generator for the one time pads into that device if they could put in other pieces of code or maybe even bug the device so if you're not familiar with that code or maybe even bug the device so there is a risk there of not having many you know a piece of manufacturing of the magic wand done in in your country of trusted choice. Yeah and there's a bunch of different on this website Horcrux and crypto messaging.jprola.com you there's a bunch of different ways that things could be attacked but I'm curious to see if anybody has any questions about how this could work and what what they would like to see and basically I'm telling people about this to realize that there are other possibilities to get around some of the massive massive security vulnerabilities that we're starting to see through a very deep network access and very deep zero-day vulnerabilities on OSes.
 So the idea behind Horcrups encrypted messaging is that we, since the revelations of Edward  Snowden, have learned about massive drag net monitoring of different communication channels  that the NSA has access to. And also probably every other major nation state has access to messaging  platforms either directly on the back end through zero day vulnerabilities. They potentially have  infiltrated the crypto systems as well so that even some things that we think are secure they  have access to. And so they have access to a lot more messages than we originally thought  they'd have access to. But one thing that is happening now is that it's not entirely  one pole world where the US is running everything. We see increasingly that Russia and China are  running their own sophisticated technology stacks and they have their own equivalents to the NSA  that are swine on their own citizens and other citizens. But there is probably maybe the NSA  and probably no country that has access to everybody's platform. And this is the key part of the  system that we're relying on. Fundamentally, how do we send a message from one person to another  knowing that these security administrations have pretty deep access to any given one messaging  system? Well, if we can split take our message and split it up into multiple separate messages  that we send on every possible messaging system that we think is independently secure,  one in US, one in China, one in Russia, then if unless some system has able to attack and  penetrate all of those messaging platforms, then we can make sure that that's secure. And I just  described a specific way to do that in a way that's pretty simple and has a lot of security guarantees,  even if things like private private and public key encryption are hacked.  So here's basically a visualization of the design. So you'll start with each of the center and the  recipient have each having what we call a magic wand, which is basically just a simple device  that where you can type in a message and then encrypt that into multiple sub messages,  or we call them horcruxes. So imagine like a really simple device manufactured in the US or  in China, and it doesn't have Bluetooth, it doesn't have Wi-Fi, it doesn't have any external access,  but you can type in a short message and click encrypt and it'll show you three different other  messages, one or two, at least two different other messages that you can send on independent  messaging channels. So you'll type on this device, hello, hello, Arthur, and then it'll give you a  scrambled text and another scrambled text, and then you'll send that first scrambled text on one  channel. For example, you could send it to the signal app on an iPhone. And then the second  message, which is also a scramble, will be sent through, say, WeChat on Huawei, and that's more of  a Chinese centered application. And so the idea is maybe the NSA of the US has some kind of back doors  into signal or something like that, or back doors into iPhone, but they might not have a back door  on the highest model in Huawei, which the Chinese bureaucrats may use, and they may be using WeChat  to communicate with each other. The basic idea is somewhere like the elites in the US are using  signal to chat in an encrypted way, our bureaucrats, our congresspeople are talking, and our financial  people are talking on signal, and the Chinese state has some secure method that the NSA is not  spying on in China. And so if we can send messages on both of these channels, then there isn't any  one government that can reassemble the whole message. So basically we send the message on these two  different platforms, it's received on the recipient's end, and then they can take each scramble  message and put it together onto, again, their magic wand, and that again doesn't have internet  access in any way, and then assemble that message that says hello, Arthur. And we can go into the  details of how this is designed to be very simple and very secure. But that's the fundamental idea.  If you separate the messages out, it's going to be hard to figure out exactly, and maybe even  impossible for any, for almost any government even to access. So I'm going to scroll over here.  So the main secret, main thing that's going to make this very trustable is that we're not using  any kind of complicated RSA, like prime factor based encryption that which could be broken.  Maybe the NSA has quantum computers that can break some of these encryptions that they haven't  released publicly. So we're going to use a very simple encryption. It's called a one-time pad.  The nice thing about a one-time pad though is that one-time pad is perfect secrecy.  It gives you no information about it. There's no, you know, fastest computer ever in the world can't  hack, can't figure, can't crack a one-time pad. So by using the one-time pad in the magic wand to  encrypt the Horcruxes, we have perfect secrecy such that even if you break half of the Horcruxes,  are almost all of the Horcruxes, as long as one is securely sent and hidden, then the  cracked Horcruxes reveal no information about the message. The other important thing about  using a one-time pad is that it's a very simple, very simple encryption system. A lot of crypto  systems have been broken, for example, SSL and Heartbleed, such that they had programming errors  in the way that they were implemented. If anything is, you know, uses non-trivial math, there are  many different ways that the different matrices could be corrupted or just, you know, some of the  loops could be set up such that there's a way to sneak it a bug. We want the magic wand to be  very simple, maybe even programmed into hardware and do something very simple. So the one-time  pad just uses XOR and it can take a zero and a one XOR it and it's a very simple function,  varies it to audit the code to do that and we can trust fully and audit fully that the magic  wand is very simple and that you can both encrypt and decrypt very safely. Here's a visualization  of maybe, you know, possibly the different Venn diagrams of what is already cracked. Probably  a lot of email servers and email lines and maybe very simple basic SSL is already very accessible  to the NSA and to some of the hackers in Russia and China. And WeChat probably is very compromised  by China and possibly none of others, perhaps that they don't want other countries to be able  to access the WeChat so it's private citizens and that might be very safe. So, you know, as we  investigate more we might find out that there is some number of different channels that you can use  such that there isn't any one entity except the sender and receiver which can find and get all  the messages and then figure out what the different Horcruxes are to say to decrypt it.  And there's other things you could do because you can basically with the one-time pads very simple  to break it up into any number of Horcruxes you could send it along all the different channels.  You could even send a Horcrux in plain sight using Stegonography. Stegonography is the  the art of hiding an encrypted message in plain sight. For example, you can put it into a photo  and just into the noise values of a photo. So, any anybody who's trying to read what your Horcruxes  say won't even know how many Horcruxes you have and where they are. And then even if they hack  your signal account they will know that you also hid one of the Horcruxes in an image that you  tweeted in some of the subpixel values. So, whereas you're a receiver you could have pre-planned a  way for them to receive messages that they could start to reassemble the messages in a way that  an attacker might not be able to figure out. The other really nice thing you can do with this is  a lot of people including Jeff Bezos has been attacked with zero-day attacks on the OS itself  which means that even the most secure messaging apps like Signal or Threema who are both open  source now, they are vulnerable to the operating system and there's really nothing you can do  to get around that. They're very complicated applications. However, Horcruxes can give you  an option to mitigate that a little bit because instead of relying on any one single app or  any one single app running on one single OS you could break up your message into equally secure  pieces and send it on multiple OSes. So now you've at least increased the cost of an attack. So,  instead of having to just crack the WhatsApp or crack the iPhone now an attacker would have to  use attacks both on an iPhone and Android phone and you know whatever email server and be able to  spend many millions more dollars on zero-day attacks to find you and even then they won't  even necessarily an attacker won't necessarily know if spending a million dollars on a zero-day attack  for an iPhone for your iPhone will get you to go get them all the Horcruxes. Maybe it only get them  one of the Horcruxes but you've hidden those other Horcruxes somewhere they haven't even realized  where they are yet. So you've increased the cost super linearly of cracking a phone  in a way where if if anybody was relying on one single messaging app or one single OS it just  has no way of preventing. I'll go into the magic wand. So the magic wand ideal in an ideal world  is a very simple piece of hardware simple eating screen no network ports no USB no Wi-Fi no easy  way to like accidentally have a side channel attack and all it does is is you can type a message and  maybe the only way it can communicate is through a QR code maybe you can scan a QR code to actually  get the message from that magic wand into your signal app and then you just send that and I've  actually built a demo that works with it it's very simple and then possibly if you want something  less secure you could have that app use the local Bluetooth connection but that does open possible  new channels of attack although you would make it that would make it easier to use.  Another option to make it even easier to use is to instead of using a separate piece of hardware  you could actually have a magic wand app on one device and this is this is what I kind of  tested and made a demo of obviously that's much less secure because you put your risk back into  one single OS that is connection to the internet and as you know zero-day vulnerabilities are a  major issue but you still get some of the benefits if your attacker only has access to the network  and doesn't have access to zero days or doesn't know how to find your device then an attacker  that only has access to the network might not be able to to gain access to your phone in which case  you might be able to use the magic wand as an app on your phone and just send it through different  messaging apps.  So I go over different threat models that this involves for example that it could be a nation  state observer that's looking at your cipher text perhaps they have a passive attack to like  read your messages or maybe they can even modify your messages they can maybe compel providers to  to provide information on the decryption key so that anything encrypted with a private encryption  key that they have access to they would be able to read. Obviously this doesn't cover every case  but it covers a lot of cases and then there's a lot of different ways that this could fail  for example you do need every Horcrux to reassemble the message which is a positive and that the  attacker would need to receive it or to get all your messages but it's also a downside because  if you if they could take they could denial service one of the channels and then you lose one of the  Horcruxes and now your receiver can't receive the message and normally when you when you do that when  you lose availability then people use less secure means. One way to avoid relying on all the Horcruxes  is to use a much more complicated encryption system instead of using one time pad you could switch to  some mere secret sharing which is maybe you only need m of n of the Horcruxes in order to  reassemble the message that's totally something that you can do it's a little more complicated to  program so it does leave potentially the possibility of some software bugs much more complicated than  XOR but it is a way to get some more robustness in sending the messages.  One vulnerability is probably the magic wand would be manufactured in China which  could leave a potential possibility that China could some the Chinese government could  put in a not very good random number generator for the one time pads into that device if they could  put in other pieces of code or maybe even bug the device so if you're not familiar with that  code or maybe even bug the device so there is a risk there of not having many you know a piece of  manufacturing of the magic wand done in in your country of trusted choice.  Yeah and there's a bunch of different on this website Horcrux and crypto messaging.jprola.com  you there's a bunch of different ways that things could be attacked but I'm curious to  see if anybody has any questions about how this could work and what what they would like to see  and basically I'm telling people about this to realize that there are other possibilities to  get around some of the massive massive security vulnerabilities that we're starting to see through  a very deep network access and very deep zero-day vulnerabilities on OSes.
rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_0_47.png rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_48_143.png rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_144_191.png rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_192_239.png rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_240_287.png rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_288_12263.png rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_12264_12359.png rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_12360_12563.png rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_12564_13859.png rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_13860_16391.png rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_16392_17783.png rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_17784_18683.png rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_18684_19871.png rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_19872_23387.png rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_23388_23435.png rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_23436_23483.png rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_23484_23531.png rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_23532_24287.png rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_24288_24335.png rc3-kreaturworks-221-eng-Horcrux_Encrypted_Messaging_hd_24336_24556.png