Top Banner
Bitmessage:An Analysis Vikram Reddy Pareddy CSc 8222 Department of Computer Science, Georgia State University
27
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Bitmessage

Bitmessage:An

Analysis

Vikram Reddy Pareddy

CSc 8222

Department of Computer Science, Georgia State University

Page 2: Bitmessage

Email

• SMTP – 1981

• Simple Protocol - designed mainly for academic

and government use.

• No data protection strategies included

Page 3: Bitmessage

SMTP

Page 4: Bitmessage

Improvements on SMTP

• Sender Policy Framework(SPF) – It is an email

validation system that tries to prevent spam by

detecting spoofing, by verifying sender’s IP

address. The domain administrators are expected

to designate hosts in that domain that are

legitimate hosts.

• Domain Keys Identified Mail(DKIM) – It is a

method of associating a domain name to the

email message to make someone responsible for

the email. This responsibility is set by using digital

signatures.

Page 5: Bitmessage

Secure Email

• PGP – 1991 – Phil Zimmerman

• It uses signing, encryption, certificates etc. to

create secure environments – for email or for

encrypted file systems etc.

• Public key authentication – decentralized

• Web of Trust

Page 6: Bitmessage

Web of Trust

Page 7: Bitmessage

Assumptions in Web of Trust

• In order to verify the key, the assumption made is

that everyone signs the key of others

• Also everyone submits these signatures to the key

servers.

Page 8: Bitmessage

Idea of PGP

Page 9: Bitmessage

Off the record messaging

• Cryptographic protocol used to provide strong

encryption for instant messaging and email

• It uses a combination of AES symmetric key

encryption, Diffie-Hellman key exchange, and

SHA-1 hash function.

Page 10: Bitmessage

Advantages of OTR systems

• Encryption

• Authentication

• Deniable Encryption

• Perfect Forward Secrecy

Page 11: Bitmessage

Invisible Internet Project

• Provides a layer that serves secure

communication/data transfer mechanism

• Introduced in 2003 as a beta software

• Not reviewed yet

• No anonymity guaranteed

Page 12: Bitmessage

Issues with protocols based

on SMTP

Page 13: Bitmessage

Bitcoin

• Open source decentralized Peer to Peer currency

• No central authority

• Not designed for anonymity

• Proof of work

• Mining

Page 14: Bitmessage

Bitmessage

• Based on Bitcoin, although it is designed to

handle a different application

• It differs from the protocols based on SMTP as it is

based on the concept of EGE or “Everyone Gets

Everything”

• Using this concept, Bitmessage can not only mask

the message body but also the metadata

associated with the message i.e. the sender and

receiver

Page 15: Bitmessage

EGE

• No end points to a message

• Encrypt the message and drop it into the block

chain of messages

• All the active users try to decrypt the message.

• Only the intended recipient will be able to decrypt

the message.

Page 16: Bitmessage

Other services of Bitmessage

Broadcasting

• Since Bitmessage is based on the concept of

EGE, broadcasting a message comes naturally

• The users have to get the password of the

channel from some forum or word of mouth – and

then they will be able to decrypt the messages

using the password

Page 17: Bitmessage

Chans

• Chans or channels are anonymous chat rooms

• Users can simply encrypt using the public key of

the chat room and post it

• Completely anonymous

Page 18: Bitmessage

Perfect Forward Secrecy

• An intruder can store all the encrypted

conversations and later when he eventually

breaks or somehow gets the private key, all the

previously encrypted information is lost

• This is a concern in almost all the PKI systems

• In Bitmessage this concern is even more

pronounced as anyone can store the block chains

easily

Page 19: Bitmessage

• Bitmessage doesn’t provide PFS

• However, this can be supported in Bitmessage

using and implementation of key rotation

• Every message that is sent has to be sent using a

new key. These are called ephemeral keys

Page 20: Bitmessage

Message Retention

• In Bitmessage, the messages are retained for two days before they are deleted

• The sender expects an acknowledgement from the receiver which confirms the delivery of the message

• If the receiver doesn’t check his mailbox in two days that the message was sent, the messae is lost and the sender has to send it again

This concept is being improved using the Time-to-live concept

Page 21: Bitmessage

Streams

• According to Prof. Tom Rodden of Univ of Nottingham, 2.8 million mails are being sent per second across the world.

• If Bitmessage is expected to store all these messages, it has to implement some concept compared to the normal block chain used by bitcoin

• For this, Bitmessage uses Streams.

• Streams are a way to self-segregate the messages when the volume of the messages is too high

Page 22: Bitmessage

• When the volume of messages become too high,

the client can divide the block chain into child

streams

• Problem: Inter stream messaging is not possible

in Bitmessage.

• If the receiver of the message is in a different

stream, the sender has to create an address in

that other stream in order to send the message.

Page 23: Bitmessage

Conclusion

• Bitmessage completely redesigns the email

system

• It is completely anonymous

• There are a few issues that still exist such as

Perfect Forward Secrecy and the question of

scalability

Page 24: Bitmessage

Future Work

• An MIT graduate has developed a new protocol

based on Bitmessage

• This message is called Bitmask or Bitmessage

2.0. This protocol uses bandwidth based metrics

instead of proof of work

• A protocol called LibertyMail is being developed

which is again based on Bitmessage system

Page 25: Bitmessage

Idea

• Currently, Bitmessage, like bitcoin in the beginning has only one client, Bitmessage-Qt

• This is a standalone client in the system which is used independent of any mail client

• The problem with this kind of client is that it downloads all the block chain into the individual system

• While this is a hindrance only when downloading the client for the first time, it is still a hindrance

Page 26: Bitmessage

• Bitcoin overcomes this hindrance by using a thin client based architecture

• Electrum is an example

• Electrum has its multiple servers located across the world.

• A person who wants to use a bitcoin client can generate the keys on his local machine and send it to the electrum server which posts it onto the block chain

Page 27: Bitmessage

• Electrum uses passphrase based electrum client

that creates deterministic addresses based on the

seed value.

• The idea of my project is to use a similar

architecture in Bitmessage.

• Using this architecture, we can still mask the

metadata