Skip to content

Latest commit

 

History

History
103 lines (67 loc) · 3.97 KB

README.md

File metadata and controls

103 lines (67 loc) · 3.97 KB

Whisper

Openly announce secret files as whispers on blockchain

Whisper provides server client functionality for both generating eth based contracts, and managing underlying file based transactions using ipfs.

  • It's secure - reliant on blockchain for maintaining trust in contracts
  • It's massively distributed - reliant on IPFS, giving it all the functionality that comes with a distrbuted system, with...
  • It's industry grade encrypted (RSA) - None of the security risks that follow.

The documentation outlines the package dependencies, basic server/client functionalities, and a how-to on integrating it with existing systems.


Whisper-Server

This repository contains the Whisper server daemon which handles the file, encryption and transmission through ipfs, and the Web UI.

Built in GO, the server leverages a local ipfs daemon, provides file searching, hashing and encryption, and a command line interface for easy deployment. If you are looking for the server user interface code see here

Install

The server daemon is available is a go src file which can be installed with the standard "go install" command.

$ go install main.go

Dependencies

IPFS Dependency

The server requires an ipfs server to be listening for API calls. Whisper relies on the go-ipfs-api standard release, to handle file hashing.

For 101's on how cool ipfs is, running a daemon and detailed user documentation, the best place is to go is the source itself at Protocol Labs

$ ipfs daemon
Initializing daemon...
Adjusting current ulimit to 2048...
Successfully raised file descriptor limit to 2048.
Swarm listening on /ip4/10.0.1.46/tcp/4001
Swarm listening on /ip4/127.0.0.1/tcp/4001
Swarm listening on /ip4/136.25.179.164/tcp/10530
Swarm listening on /ip6/2604:5500:b:1f3:6c2c:690d:b6e1:cbf0/tcp/4001
Swarm listening on /ip6/2604:5500:b:1f3:f65c:89ff:fec3:5107/tcp/4001
Swarm listening on /ip6/::1/tcp/4001
API server listening on /ip4/127.0.0.1/tcp/5001
Gateway (readonly) server listening on /ip4/127.0.0.1/tcp/8080
Daemon is ready

Usage

After installation, the command to start the server quite simply is "server":

$ server
server started on http://localhost:9090

Whisper uses the GO http API to provide the servlet routines. The cli api is then used to provide elegant command line interfacing in a neat package.

The WebUI provides the following functionality:

Options

Usage:
  server [OPTIONS]

The start command starts the Whisper-Server

Application Options:
  -d, --dir                   Print the path for whispering files