Subscribe to wiki

Share wiki

Whisper

Social Profiles:

Whisper

Whisper is a protocol for secure, peer-to-peer messaging on the network. Whisper is designed to provide a secure and private communication channel for and users on the Ethereum network.[1][5]

Overview

Whisper is a protocol for building on the system supporting blockchain technology that allows messaging between . It provides a simple API that we can use to send an encrypted message through the Ethereum blockchain and receive and decrypted messages with the hash key.

Whisper is being built as a protocol, meaning that it lays the foundation for higher-level implementations, , built on it, with different variations, using different features of the protocol, and different settings. Whisper protocol implementation builds on top of the RLPx transport protocol that is internally used by Ethereum for communication between nodes. [5]

Whisper supports the and Parity clients. It can be used for DApps publish-subscribe coordination signaling and building secure, untraceable decentralized communication.[2][6]

Whisper conceals the content of messages and the identities of senders and receivers from observers. Messages on Whisper have a time-to-live (TTLT) timer, which means they expire after a certain period. The system relies on a double layer of data encryption.[4]

The whole concept of the Ethereum Whisper communication protocol revolves around three objectives:[3]

  • providing users with a flexible system

  • launching a secure communication channel on Ethereum

  • most importantly, guaranteeing the users’ anonymity online.

Initially, Whisper was developed as part of Ethereum's broader goals to enable private and secure messaging between decentralized applications (DApps). However, its adoption has slowed over time, and it has mostly remained in a proof-of-concept phase rather than achieving widespread implementation. Whisper’s full functionality is still available, although many developers now prefer alternative communication protocols.

Whisper as one of Ethereum's 3 pillars for Web 3.0

Most recently published ‘Dapps: What Web 3.0 Looks Like’. Here we are introduced to the Internet as a “zero-trust interaction system” made possible by a decentralized and encrypted information publication system, a pseudonymous low-level messaging system and a consensus engine.[7]

In the Ethereum ecosystem, is implemented in the form of three pillars, of which one is the Ethereum Whisper protocol, which is designed to bring about the emergence of DApps, and by extension Web 3.0, by acting as a secure and decentralized messaging protocol.

  1. The first pillar is  technology, which is run on the Ethereum blockchain as a trusted immutable backend. With smart contracts, the code of the is executed on top of a trusted P2P protocol, instead of a web server.
  2. The second pillar, decentralized storage, can be found in the form of Swarm. This allows the off-chain parts of DApps, such as web interfaces and larger pieces of data, to be stored in a decentralized manner, eliminating the need for centralized file storage or databases.
  3. The third element of the Web 3.0 vision involves privacy-focused secure messaging. There are a number of situations in which DApps need to communicate through a message bus outside the context of blockchain transactions. Message buses allow applications or users to interchange messages point-to-point or in a broadcast fashion. Traditionally, this has been achieved by centralized message servers. Reasons for DApps to keep communication off-chain include:
  • Privacy

  • Temporary limits for the validity of a message (a time-to-live property)

  • The cost of on-chain transactions

In Ethereum, the Whisper protocol is designed to take on the role of a secure off-chain message bus.[5]
Calleum-Labs-1068x628.webp

Technology

The Whisper protocol uses a combination of public key cryptography and a distributed hash table (DHT) to ensure that messages are both secure and private. Each user on the network is assigned a unique public key, which is used to encrypt messages sent to them. The DHT is used to securely distribute and store these encrypted messages, allowing for peer-to-peer communication without the need for a centralized server.

One of the key features of Whisper is its support for “topics” or “channels,” which allow users to subscribe to specific types of messages or conversations. This makes it easy for and users to create and participate in specific communities or groups on the Ethereum network.

Whisper is also designed to be lightweight and efficient, making it well-suited for use on mobile devices and other resource-constrained platforms. This makes it an attractive solution for dApps and other projects that need to provide secure, private messaging capabilities to users on the go.[1]

The system relies on a double layer of data encryption:[3]

  • Symmetric encryption allows transmitting one-to-many communications using a single encryption and decryption key. The recipients of a message can decrypt the messages sent to them.
  • Asymmetric encryption employs public keys for encryption and private keys for decryption. When communicating with another person, the system uses this type of encryption.

Whisper uses the ssh protocol string of devp2p. When sending an encrypted message, the message content can be encrypted by default either asymmetrically or symmetrically.

Asymmetric cryptography, also known as public key cryptography, uses public and private keys to encrypt and decrypt data. One key is public and it is shared with everyone. The other is a private key; only the owner can see or access private key information. When encrypting the Whisper message, it uses the standard Integrated Encryption Scheme with the SECP-256k1 public key to encrypt a message; the other key is used for decryption. Symmetric cryptography (also known as the secret key), on the other hand, uses the hash key with the AES GCM algorithm with a random 96-bit nonce for both encryption and decryption. It typically facilitates one-to-many messages. The sender and receiver use the same symmetric key to encrypt and decrypt the message.[2]

See something wrong?

Average Rating

Based on over 2 ratings

How was your experience?

Give this wiki a quick rating to let us know!

Edited By

Generated avatar for Anonymous userJaewon_Cho

Edited On

October 19, 2024

REFERENCES

[1]

Medium - What is Ethereum Whisper?

Sep 15, 2024

[2]

Coding bootcamps - How to Handle Ethereum Messages with Whisper

Sep 15, 2024

[3]

Crypto advanture - What is Ethereum Whisper? A Guide for Beginners

Sep 15, 2024

[4]

Reddit - What is Ethereum Whisper? A Guide for Beginners

Sep 15, 2024

[5]

Myceyptopedia - What is Ethereum Whisper? A Detailed Guide

Sep 15, 2024

[6]

SitePoint - Ethereum Messaging: Explaining Whisper and Status.im

Oct 19, 2024

[7]

gavwood.com - ĐApps: What Web 3.0 Looks Like

Oct 19, 2024