-
Notifications
You must be signed in to change notification settings - Fork 85
Jargon file and glossary
lock height
For coinbase coins (outputs), they must be locked for a while (1440 confirmations or around 24 hours, is the value used by Floonet and Mainnet) or else chain reorganisations will cause a lot of trouble.
mmr
Merkle Mountain Range
pmmr
Pruneable Merkle Mountain Range
output
contains:
OutputFeatures - currently a Boolean == coinbase or not ("Options for an output's structure or use")
Commitment - `rG+vH` The homomorphic commitment representing the output's amount
SwitchCommitHash - `blake2(rJ)` The switch commitment hash, a 160 bit length blake2 hash of blind*J
RangeProof - A proof that the commitment is in the right range
input
A reference to an output being spent by a transaction.
switch commitment
a hash of something, like the blinding pubkey
grins
, milligrins
used to denominate coins (chosen by popular vote on the mailing list)
kernel
the core piece of a transaction, and one that must be kept also when transactions are merged.
A kernel consists of the sum of the commitments of that tx, rangeproofs and a tx fee.
pre-image
A is a preimage of B if B = hash(A)
sumtree
used before - replaced with something similar (MMR-ish) but without including any sums
C
is a Pedersen commitment (homomorphic commitment) (defined here). C = rG+vH
G
and H
are fixed nothing-up-my-sleeve elliptic curve group generators / generator points, from which we can create an elliptic curve. Often referred to as "curves" to keep explanations easier to follow. (TODO: explain how G and H are related)
v
is the amount.
r
is a secret random blinding key
rJ
switch commitment. Kept private. Derived from wallet private keys.
kG
(Excess values?)
bJ
(to be verified)
is a public key on generator J, with b = blind, J=curve generator? ("compute b (by solving dlog) [...] and you know nothing about x
Also look at Lemma 4.1 in
https://eprint.iacr.org/2017/604 or Lemma 1 in https://eprint.iacr.org/
2013/606.pdf." /Tim Ruffing)
r + hash(vH + rG || v || r)
Discussed here as a possible solution both to QC and wallet restore. Too good? This idea come out as a reaction after we tried to cut out grins Switch Commitments.
Basics
- Getting Started
- User Documentation
- MimbleWimble
- FAQ
- Planned releases (Roadmap)
- Code of Conduct
Contributing
- Contributing Guide
- Code Structure
- Code coverage and metrics
- Code Reviews and Audits
- Adding repos to /mimblewimble
Development
Mining
Infrastructure
Exchange integrations
R&D
Grin Community
Grin Governance
Risk Management
Grin Internals
- Block Header Data Structure
- Detailed validation logic
- P2P Protocol
Misc