Skip to content
/ whisper Public

decentralized storage for whispers and logging on the blockchain

Notifications You must be signed in to change notification settings

shkr/whisper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

About

decentralized storage for whispers and logging on the blockchain

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages