Take the 2-minute tour ×
Information Security Stack Exchange is a question and answer site for Information security professionals. It's 100% free, no registration required.

Let's say I'm running a BitMessage node. One possible attack against me would be to upload illegal content to my node, and once someone knows it's there, to tip off the authorities, who would then search my computer and discover illegal content.

However, all the content is supposed to be encrypted, and unless you have the private key because the message was addressed to you (or you want to try all possible combinations of all public keys to look for broadcast messages) then you can't actually read the content.

That being said, an attacker could send a message to other nodes that had an unencrypted payload. Receiving nodes assume all messages are encrypted, and they try to decrypt every message with all of its private keys (or public keys of broadcast senders you want to subscribe to). In order to defend against such an attack, the receiving node has to be able to reject messages that have an unencrypted payload.

Is this possible? Will a test for randomness work? What if the data was zipped, would that still work?

Edit

@Gilles - it's true that they could upload any message, even encrypted, and give the cops the key. However, then you have plausible deniability.

However, there are ways to undermine plausible deniability. First, an attacker can do what I described above and find some way to transmit lots of unencrypted content. They could perhaps even release a customized BitMessage client that lets you read the messages easily. Second, I can just send encrypted broadcast messages on the network and publicize the heck out of my BitMessage address, so everyone who wants to subscribe will find it easy to do so. In both cases all you need to "read" the illegal content off my hard drive is a free and easily available piece of software.

The only way to fight that is with a BitMessage address blacklist, which isn't feasible because in order to check if a message should be blacklisted, I have to attempt decryption using every known blacklisted public key. That would bring the network to a crawl.

Now let me ask you, if you had gigabytes of CP images on your hard drive, but you didn't have any software installed that could view them, even though you knew about the existence of said software if you wanted to view it, do you think any judge would not find you guilty of possession?

I don't see how this isn't a fundamental flaw in the BitMessage protocol. (Technically it's a flaw in our laws, I realize that, but such protocols exist and are necessary because of such law.)

share|improve this question
    
What if someone uploads encrypted data to you with a key that he knows, and notifies the authorities and gives them the key? –  Gilles Aug 13 '13 at 21:07
add comment

1 Answer

There are a few problems with the assumption that Bitmessage could be used as a kind of "Trojan horse" to introduce illicit content to your machine:

  • Individual nodes contain a mix of content from other users on the network. Therefore it is unlikely that an arbitrary node will have all of the necessary pieces to reassemble illicit content.

  • Content is only cached for two days, after this time the pieces of
    content are removed from all nodes.

  • Bitmessage uses public key cryptography, such that only a recipient of a message is capable of decrypting it. Law enforcement should not be able to decipher the content on your machine unless you are the recipient.

share|improve this answer
    
I think this is incorrect. re point #1: Each node eventually contains all messages from the last 2 days. Re point #3: this is only true for person-to-person messages, but the BitMessage protocol also supports Broadcast messages, which anyone can read if you choose to subscribe. There are also mailing-lists and decentralized-mailing-lists (aka Channels) both of which use broadcast messages and are intended to be ready by any subscriber. –  Scott Whitlock Aug 15 '13 at 1:31
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.