The PubSub implementation for go-libp2p
https://github.com/libp2p/specs/tree/master/pubsub
fba434025b
Previously, there was no non-breaking upgrade path to enable message signing by default while still providing a way to disable it. This patch breaks the options into: 1. WithMessageSigning - actually enable message signing. 2. WithStrictSignatureVerification - enforce strict signature verification. 3. WithMessageAuthor - set the message author (independent of signing). Now, users can explicitly set all three options and any changes we make to the defaults will never override these explicit settings. This patch *also* enables *signing* by default but not strict signature verification. We obviously can't enable verification by default yet but I see no reason not to enable signing. Basically, we're either hurting performance or security by default. Security issues are generally only noticed once it's too late. Performance issues can be caught ahead of time. |
||
---|---|---|
.gx | ||
ci | ||
pb | ||
.gitignore | ||
.travis.yml | ||
LICENSE | ||
Makefile | ||
README.md | ||
codecov.yml | ||
comm.go | ||
floodsub.go | ||
floodsub_test.go | ||
gossipsub.go | ||
gossipsub_test.go | ||
mcache.go | ||
mcache_test.go | ||
notify.go | ||
package.json | ||
pubsub.go | ||
randomsub.go | ||
sign.go | ||
sign_test.go | ||
subscription.go |
README.md
go-libp2p-pubsub
A pubsub system with flooding and gossiping variants.
PubSub is a work in progress, with floodsub as an initial protocol, followed by gossipsub (spec, gossipsub.go).
Table of Contents
Install
go get github.com/libp2p/go-libp2p-pubsub
Usage
To be used for messaging in p2p instrastructure (as part of libp2p) such as IPFS, Ethereum, other blockchains, etc.
Implementations
See libp2p/specs/pubsub#Implementations.
Contribute
Contributions welcome. Please check out the issues.
Check out our contributing document for more information on how we work, and about contributing in general. Please be aware that all interactions related to multiformats are subject to the IPFS Code of Conduct.
Small note: If editing the README, please conform to the standard-readme specification.
License
MIT © Jeromy Johnson