Skip to content
Minimal implementation of the Mimblewimble protocol.
Rust Other
  1. Rust 99.7%
  2. Other 0.3%
Branch: master
Clone or download
austinabell and antiochp Build block header from pre pow data and proof (#3178)
* Implement validation and generation of block header by proof and pre pow

* Optimize

* handle missed ser result errors and test invalid pre_pow

* switch to specific error mapping

* clean import
Latest commit 4152d9f Jan 23, 2020
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.cargo windows cargo settings (#2632) Feb 26, 2019
.ci [2.x.x] CI Improvements (#2963) Jul 23, 2019
.github Update contributing guidelines (#2563) Feb 19, 2019
.hooks chore: pre-commit hook - format all staged files, re-add then commit (#… Oct 7, 2019
api Fix return code in peers API (#3186) Jan 21, 2020
chain Bug fix for highest_index in output API. (#3200) Jan 21, 2020
config Update License to 2020 (#3196) Jan 20, 2020
core Build block header from pre pow data and proof (#3178) Jan 23, 2020
doc [Done][doc] Chinese Translation (#3122) Jan 8, 2020
etc Update License to 2020 (#3196) Jan 20, 2020
keychain Update License to 2020 (#3196) Jan 20, 2020
p2p Update License to 2020 (#3196) Jan 20, 2020
pool Update License to 2020 (#3196) Jan 20, 2020
servers Update License to 2020 (#3196) Jan 20, 2020
src Update License to 2020 (#3196) Jan 20, 2020
store Update License to 2020 (#3196) Jan 20, 2020
util Update License to 2020 (#3196) Jan 20, 2020
.editorconfig [1.1.0] Merge master into 1.1.0 (#2720) Apr 1, 2019
.gitignore Node API v2 (#3094) Dec 6, 2019
CODE_OF_CONDUCT.md Many typo fixes (#1158) Jun 13, 2018
CONTRIBUTING.md Remove old website for grin.mw (#3195) Jan 17, 2020
Cargo.lock Remove unused crates (#3185) Jan 15, 2020
Cargo.toml versioning for master Dec 20, 2019
LICENSE Create LICENSE Jun 29, 2017
README.md Fixing misleading privacy claim (#3127) Nov 26, 2019
SECURITY.md Remove old website for grin.mw (#3195) Jan 17, 2020
azure-pipelines.yml [2.x.x] CI Improvements (#2963) Jul 23, 2019
rustfmt.toml cannot use unstable rustfmt features outside nightly toolchain (#1338) Aug 10, 2018

README.md

Build Status Coverage Status Chat Support Documentation Wiki Release Version License

Grin

Grin is an in-progress implementation of the Mimblewimble protocol. Many characteristics are still undefined but the following constitutes a first set of choices:

  • Clean and minimal implementation, and aiming to stay as such.
  • Follows the Mimblewimble protocol, which provides hidden amounts and scaling advantages.
  • Cuckoo Cycle proof of work in two variants named Cuckaroo (ASIC-resistant) and Cuckatoo (ASIC-targeted).
  • Relatively fast block time: one minute.
  • Fixed block reward over time with a decreasing dilution.
  • Transaction fees are based on the number of Outputs created/destroyed and total transaction size.
  • Smooth curve for difficulty adjustments.

To learn more, read our introduction to Mimblewimble and Grin.

Status

Grin is live with mainnet. Still, much is left to be done and contributions are welcome (see below). Check our mailing list archives for the latest status.

Contributing

To get involved, read our contributing docs.

Find us:

Getting Started

To learn more about the technology, read our introduction.

To build and try out Grin, see the build docs.

Philosophy

Grin likes itself small and easy on the eyes. It wants to be inclusive and welcoming for all walks of life, without judgement. Grin is terribly ambitious, but not at the detriment of others, rather to further us all. It may have strong opinions to stay in line with its objectives, which doesn't mean disrespect of others' ideas.

We believe in pull requests, data and scientific research. We do not believe in unfounded beliefs.

Credits

Tom Elvis Jedusor for the first formulation of Mimblewimble.

Andrew Poelstra for his related work and improvements.

John Tromp for the Cuckoo Cycle proof of work.

J.K. Rowling for making it despite extraordinary adversity.

License

Apache License v2.0.

You can’t perform that action at this time.