HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
mimblewimble
grin
Rust2017–2019
mimblewimble / grin

grin

Minimal implementation of the Mimblewimble protocol.

16Distinct people
19Mentions
0Explicit recommenders
5.1KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Minimal implementation of the Mimblewimble protocol.

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 1:49:46 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by month19 dated mentions

Observed mentions: 2017-11-20 01:33:26 UTC to 2019-06-19 18:59:30 UTC.

02468102017-11-01 00:00:00 UTC to 2017-12-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsNov 20172017-12-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2018-01-01 00:00:00 UTC to 2018-02-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2018-02-01 00:00:00 UTC to 2018-03-01 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 comments2018-03-01 00:00:00 UTC to 2018-04-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2018-04-01 00:00:00 UTC to 2018-05-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-05-01 00:00:00 UTC to 2018-06-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-06-01 00:00:00 UTC to 2018-07-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-07-01 00:00:00 UTC to 2018-08-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-08-01 00:00:00 UTC to 2018-09-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsAug 20182018-09-01 00:00:00 UTC to 2018-10-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-10-01 00:00:00 UTC to 2018-11-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2018-11-01 00:00:00 UTC to 2018-12-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2018-12-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2019-01-01 00:00:00 UTC to 2019-02-01 00:00:00 UTC (exclusive): 9 mentions; 2 submissions, 7 comments2019-02-01 00:00:00 UTC to 2019-03-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-03-01 00:00:00 UTC to 2019-04-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-04-01 00:00:00 UTC to 2019-05-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-05-01 00:00:00 UTC to 2019-06-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-06-01 00:00:00 UTC to 2019-07-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsJun 2019

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Nov 20172017-11-01 00:00:00 UTC2017-12-01 00:00:00 UTC101
Dec 20172017-12-01 00:00:00 UTC2018-01-01 00:00:00 UTC101
Jan 20182018-01-01 00:00:00 UTC2018-02-01 00:00:00 UTC202
Feb 20182018-02-01 00:00:00 UTC2018-03-01 00:00:00 UTC110
Mar 20182018-03-01 00:00:00 UTC2018-04-01 00:00:00 UTC101
Apr 20182018-04-01 00:00:00 UTC2018-05-01 00:00:00 UTC000
May 20182018-05-01 00:00:00 UTC2018-06-01 00:00:00 UTC000
Jun 20182018-06-01 00:00:00 UTC2018-07-01 00:00:00 UTC000
Jul 20182018-07-01 00:00:00 UTC2018-08-01 00:00:00 UTC000
Aug 20182018-08-01 00:00:00 UTC2018-09-01 00:00:00 UTC000
Sep 20182018-09-01 00:00:00 UTC2018-10-01 00:00:00 UTC000
Oct 20182018-10-01 00:00:00 UTC2018-11-01 00:00:00 UTC101
Nov 20182018-11-01 00:00:00 UTC2018-12-01 00:00:00 UTC101
Dec 20182018-12-01 00:00:00 UTC2019-01-01 00:00:00 UTC101
Jan 20192019-01-01 00:00:00 UTC2019-02-01 00:00:00 UTC927
Feb 20192019-02-01 00:00:00 UTC2019-03-01 00:00:00 UTC000
Mar 20192019-03-01 00:00:00 UTC2019-04-01 00:00:00 UTC000
Apr 20192019-04-01 00:00:00 UTC2019-05-01 00:00:00 UTC000
May 20192019-05-01 00:00:00 UTC2019-06-01 00:00:00 UTC000
Jun 20192019-06-01 00:00:00 UTC2019-07-01 00:00:00 UTC101

From the project README

An excerpt from the repository, fetched Nov 13, 2026.

Read the project’s introduction
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: Telegram: Grin Development Chat: Keybase, more instructions on how to join here. 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. License Apache License v2.0.
Read the full README on GitHub

What Hacker News says

19 sources
Only storing the merkle tree is useful for SPV nodes. The actual full nodes need to store the full chain to verify blocks (or else you could double spend). In mimblewibmle, the full nodes has visibility over interactive transactions only while joined of the network. The final artifact is a combined tx that spans the whole block -- ie: you throw away lots of tx detail and use the kernel for validation. The grin wiki explains the basis of MW protocol: https://github.com/mimblewimble/grin/blob/master/doc/intro.m... The original whitepaper is : https://github.com/mimblewimble/docs/wiki/MimbleWimble-Origi... Two implementations of this (slightly different) today are: https://grin-tech.org/ and https://www.beam.mw/
In US academics say their shardy blockchain will be 10X faster than Visa
From their "Grin for Bitcoiners" article [0]: There are 3 main properties of Grin transactions that make them private: - There are no addresses. - There are no amounts. - 2 transactions, one spending the other, can be merged in a block to form only one, removing all intermediary information. The 2 first properties mean that all transactions are indistinguishable from one another. Unless you directly participated in the transaction, all inputs and outputs look like random pieces of data (in lingo, they're all random curve points). Moreover, there are no more transactions in a block. A Grin block looks just like one giant transaction and all original association between inputs and outputs is lost. So I think "No more amounts" is simply trying to say that the concept of a
Read the rest
globally-accessible transaction on the blockchain with a verifiable transaction amount is now gone. Now it's just blocks, which can be many transactions coalesced together. From later on that page "It's as if when Alice gives money to Bob, and then Bob gives it all to Carol, Bob was never involved and his transaction is actually never even seen on the blockchain." It is not trying to say that this currency is not countable or something like that (how would that even work?) [0] https://github.com/mimblewimble/grin/blob/master/doc/grin4bi...
In Grin – A private and lightweight mimblewimble blockchain
Grin gives strong anonymity guarantees but maintains most of the other public verification properties of a traditional blockchain like Bitcoin. It also includes some cool scalability optimizations to the Bitcoin-style of blockchain. Anonymity is maintained with a cool trick called a blinding factor, where a secret value is drummed up for each transaction and used to obfuscate the data that is publicly displayed on the blockchain. Combining that with range proofs allows all involved parties to verify that the transaction was completed for the specified amount, and that no money was created out of thin air. Scalability is boosted with transaction cut-through - a neat trick that lets unnecessary “intermediate” transactions get eliminated when a miner assembles a block. This means that nodes on the network can store the entire chain state rea
Read the rest
lly efficiently because all you need to know are the total coins in circulation, the UTXO set, and the kernels for each transaction. I can’t do the whole thing justice in this tl;dr, so read the technical explanation here for more info if it piques your interest: https://github.com/mimblewimble/grin/blob/master/doc/intro.m...
In Grin – A private and lightweight mimblewimble blockchain
It may scale really, really well "The state a given node in a MimbleWimble blockchain needs to maintain is very small (on the order of a few gigabytes for a bitcoin-sized blockchain, and potentially optimizable to a few hundreds of megabytes)." https://github.com/mimblewimble/grin/blob/master/doc/intro.m... Also, anonymous transactions. Downside: you cannot "send coins to an address" as in bitcoin, you must have interaction with the other party to create a transaction.
In Grin – A private and lightweight mimblewimble blockchain
I read the tech spec and it amazes me that there are people who can come up with this stuff. Completely obvious in hindsight. From the crib notes[1]: > Grin's emission rate is linear, meaning it never drops. This sounds more like a real currency, although, without limited supply this thing won't be going to the moon. The deflationary nature of cryptocurrencies thus far has been my main criticism as their viability of currencies (inflation encourages spending, which increases liquidity). [1]: https://github.com/mimblewimble/grin/blob/master/doc/grin4bi...
In Grin – A private and lightweight mimblewimble blockchain
> That’s not stopping projects from working on it. To support that... Grin contains a phenomenal amount of cryptography: https://github.com/mimblewimble/grin Bulletproofs implementation in rust (small proof sizes): https://github.com/dalek-cryptography/bulletproofs ...with tons of really well done cryptography by that group (dalek): https://github.com/dalek-cryptography Pairing based crypto library used in the second largest distribution of Ethereum (and maybe zcash?): https://github.com/paritytech/bn These libraries have prompted me to start learning rust (albeit slowly as I'm using Go and C at work).
In Simple Encrypted Arithmetic Library goes open source

Showing the 15 most recent of 19 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.