start the transition to stakes
This commit is contained in:
parent
e4dc016b8a
commit
cab3f8fbd0
2 changed files with 65 additions and 28 deletions
44
index.html
44
index.html
|
@ -90,6 +90,7 @@
|
||||||
* [Assumptions](#assumptions)
|
* [Assumptions](#assumptions)
|
||||||
* [Conventions and Terminology](#conventions-and-terminology)
|
* [Conventions and Terminology](#conventions-and-terminology)
|
||||||
* [Blockchain](#blockchain)
|
* [Blockchain](#blockchain)
|
||||||
|
* [Stakes](#stakes)
|
||||||
* [Claims](#claims)
|
* [Claims](#claims)
|
||||||
* [Properties](#claim-properties)
|
* [Properties](#claim-properties)
|
||||||
* [Example Claim](#example-claim)
|
* [Example Claim](#example-claim)
|
||||||
|
@ -236,11 +237,17 @@ fixme final polish checklist:
|
||||||
<dt>metadata</dt>
|
<dt>metadata</dt>
|
||||||
<dd>Information about the contents of a stream (e.g. creator, description, stream descriptor hash, etc). Metadata is stored in the blockchain.</dd>
|
<dd>Information about the contents of a stream (e.g. creator, description, stream descriptor hash, etc). Metadata is stored in the blockchain.</dd>
|
||||||
|
|
||||||
<dt>claim</dt>
|
|
||||||
<dd>A single metadata entry in the blockchain.</dd>
|
|
||||||
|
|
||||||
<dt>name</dt>
|
<dt>name</dt>
|
||||||
<dd>A human-readable UTF8 string that is associated with a published claim.</dd>
|
<dd>A human-readable UTF8 string that is associated with a stream.</dd>
|
||||||
|
|
||||||
|
<dt>stake</dt>
|
||||||
|
<dd>An entry in the blockchain that commits credits toward a name.</dd>
|
||||||
|
|
||||||
|
<dt>claim</dt>
|
||||||
|
<dd>A stake that contains metadata about a stream or channel.</dd>
|
||||||
|
|
||||||
|
<dt>support</dt>
|
||||||
|
<dd>A stake that lends its credits to bolster an existing claim.</dd>
|
||||||
|
|
||||||
<dt>channel</dt>
|
<dt>channel</dt>
|
||||||
<dd>The unit of pseudonymous publisher identity. Claims may be part of a channel.</dd>
|
<dd>The unit of pseudonymous publisher identity. Claims may be part of a channel.</dd>
|
||||||
|
@ -261,9 +268,22 @@ fixme final polish checklist:
|
||||||
|
|
||||||
<p>The LBRY blockchain is a fork of the <a href="https://bitcoin.org/bitcoin.pdf">Bitcoin</a> blockchain, with substantial modifications. This document will not cover or specify any aspects of LBRY that are identical to Bitcoin, and will instead focus on the differences.</p>
|
<p>The LBRY blockchain is a fork of the <a href="https://bitcoin.org/bitcoin.pdf">Bitcoin</a> blockchain, with substantial modifications. This document will not cover or specify any aspects of LBRY that are identical to Bitcoin, and will instead focus on the differences.</p>
|
||||||
|
|
||||||
<h3 id="claims">Claims</h3>
|
<h3 id="stakes">Stakes</h3>
|
||||||
|
|
||||||
<p>A <em>claim</em> is a single entry in the blockchain that stores metadata. There are two types of claims:</p>
|
<p>A <em>stake</em> is a a single entry in the blockchain that commits credits toward a name. The two types of stakes are <a href="#claims"><em>claims</em></a> and <a href="#supports"><em>supports</em></a>.</p>
|
||||||
|
|
||||||
|
<p>All stakes have these properties:</p>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
<dt>id</dt>
|
||||||
|
<dd>A 20-byte hash unique among all stakes. See <a href="#stake-identifier-generation">Stake Identifier Generation</a>.</dd>
|
||||||
|
<dt>amount</dt>
|
||||||
|
<dd>A quantity of tokens used to back the stake. See <a href="#controlling">Controlling</a>.</dd>
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<h4 id="claims">Claims</h4>
|
||||||
|
|
||||||
|
<p>A <em>claim</em> is a stake that stores metadata. There are two types of claims:</p>
|
||||||
|
|
||||||
<dl>
|
<dl>
|
||||||
<dt>stream</dt>
|
<dt>stream</dt>
|
||||||
|
@ -274,15 +294,11 @@ fixme final polish checklist:
|
||||||
|
|
||||||
<h4 id="claim-properties">Properties</h4>
|
<h4 id="claim-properties">Properties</h4>
|
||||||
|
|
||||||
<p>Claims have four properties:</p>
|
<p>In addition to the properties that all stakes have, claims have two more properties:</p>
|
||||||
|
|
||||||
<dl>
|
<dl>
|
||||||
<dt>claim_id</dt>
|
|
||||||
<dd>A 20-byte hash unique among all claims. See <a href="#claim-identifier-generation">Claim Identifier Generation</a>.</dd>
|
|
||||||
<dt>name</dt>
|
<dt>name</dt>
|
||||||
<dd>A normalized UTF-8 string of up to 255 bytes used to address the claim. See <a href="#urls">URLs</a> and <a href="#normalization">Normalization</a>.</dd>
|
<dd>A normalized UTF-8 string of up to 255 bytes used to address the claim. See <a href="#urls">URLs</a> and <a href="#normalization">Normalization</a>.</dd>
|
||||||
<dt>amount</dt>
|
|
||||||
<dd>A quantity of tokens used to stake the claim. See <a href="#controlling">Controlling</a>.</dd>
|
|
||||||
<dt>value</dt>
|
<dt>value</dt>
|
||||||
<dd>Metadata about a stream or a channel. See <a href="#metadata">Metadata</a>.</dd>
|
<dd>Metadata about a stream or a channel. See <a href="#metadata">Metadata</a>.</dd>
|
||||||
</dl>
|
</dl>
|
||||||
|
@ -329,9 +345,11 @@ fixme final polish checklist:
|
||||||
|
|
||||||
<h4 id="supports">Supports</h4>
|
<h4 id="supports">Supports</h4>
|
||||||
|
|
||||||
<p>A <em>support</em> is an additional transaction type that lends its <em>amount</em> to an existing claim.</p>
|
<p>A <em>support</em> is a stake that lends its <em>amount</em> to an existing claim.</p>
|
||||||
|
|
||||||
<p>A support contains only a <code>claimID</code> and an <code>amount</code>, no other properties. Supports function analogously to claims in terms of <a href="#claim-operations">Claim Operations</a> and <a href="#claim-statuses">Claim Statuses</a>, with the exception that they cannot be updated or themselves supported.</p>
|
<p>Supports have one extra property on top of the basic stake properties: a <code>claim_id</code>. This is the ID of the claim that the support is bolstering.</p>
|
||||||
|
|
||||||
|
<p>Supports function analogously to claims in terms of <a href="#claim-operations">Claim Operations</a> and <a href="#claim-statuses">Claim Statuses</a>, with the exception that they cannot be updated or themselves supported.</p>
|
||||||
|
|
||||||
<h4 id="claimtrie">Claimtrie</h4>
|
<h4 id="claimtrie">Claimtrie</h4>
|
||||||
|
|
||||||
|
|
45
index.md
45
index.md
|
@ -25,6 +25,7 @@
|
||||||
* [Assumptions](#assumptions)
|
* [Assumptions](#assumptions)
|
||||||
* [Conventions and Terminology](#conventions-and-terminology)
|
* [Conventions and Terminology](#conventions-and-terminology)
|
||||||
* [Blockchain](#blockchain)
|
* [Blockchain](#blockchain)
|
||||||
|
* [Stakes](#stakes)
|
||||||
* [Claims](#claims)
|
* [Claims](#claims)
|
||||||
* [Properties](#claim-properties)
|
* [Properties](#claim-properties)
|
||||||
* [Example Claim](#example-claim)
|
* [Example Claim](#example-claim)
|
||||||
|
@ -170,11 +171,17 @@ This document assumes that the reader is familiar with Bitcoin and blockchain te
|
||||||
<dt>metadata</dt>
|
<dt>metadata</dt>
|
||||||
<dd>Information about the contents of a stream (e.g. creator, description, stream descriptor hash, etc). Metadata is stored in the blockchain.</dd>
|
<dd>Information about the contents of a stream (e.g. creator, description, stream descriptor hash, etc). Metadata is stored in the blockchain.</dd>
|
||||||
|
|
||||||
<dt>claim</dt>
|
|
||||||
<dd>A single metadata entry in the blockchain.</dd>
|
|
||||||
|
|
||||||
<dt>name</dt>
|
<dt>name</dt>
|
||||||
<dd>A human-readable UTF8 string that is associated with a published claim.</dd>
|
<dd>A human-readable UTF8 string that is associated with a stream.</dd>
|
||||||
|
|
||||||
|
<dt>stake</dt>
|
||||||
|
<dd>An entry in the blockchain that commits credits toward a name.</dd>
|
||||||
|
|
||||||
|
<dt>claim</dt>
|
||||||
|
<dd>A stake that contains metadata about a stream or channel.</dd>
|
||||||
|
|
||||||
|
<dt>support</dt>
|
||||||
|
<dd>A stake that lends its credits to bolster an existing claim.</dd>
|
||||||
|
|
||||||
<dt>channel</dt>
|
<dt>channel</dt>
|
||||||
<dd>The unit of pseudonymous publisher identity. Claims may be part of a channel.</dd>
|
<dd>The unit of pseudonymous publisher identity. Claims may be part of a channel.</dd>
|
||||||
|
@ -195,9 +202,23 @@ The LBRY blockchain is a public, proof-of-work blockchain. It serves three key p
|
||||||
|
|
||||||
The LBRY blockchain is a fork of the [Bitcoin](https://bitcoin.org/bitcoin.pdf) blockchain, with substantial modifications. This document will not cover or specify any aspects of LBRY that are identical to Bitcoin, and will instead focus on the differences.
|
The LBRY blockchain is a fork of the [Bitcoin](https://bitcoin.org/bitcoin.pdf) blockchain, with substantial modifications. This document will not cover or specify any aspects of LBRY that are identical to Bitcoin, and will instead focus on the differences.
|
||||||
|
|
||||||
### Claims
|
### Stakes
|
||||||
|
|
||||||
A _claim_ is a single entry in the blockchain that stores metadata. There are two types of claims:
|
A _stake_ is a a single entry in the blockchain that commits credits toward a name. The two types of stakes are [_claims_](#claims) and [_supports_](#supports).
|
||||||
|
|
||||||
|
All stakes have these properties:
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
<dt>id</dt>
|
||||||
|
<dd>A 20-byte hash unique among all stakes. See <a href="#stake-identifier-generation">Stake Identifier Generation</a>.</dd>
|
||||||
|
<dt>amount</dt>
|
||||||
|
<dd>A quantity of tokens used to back the stake. See <a href="#controlling">Controlling</a>.</dd>
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
|
||||||
|
#### Claims
|
||||||
|
|
||||||
|
A _claim_ is a stake that stores metadata. There are two types of claims:
|
||||||
|
|
||||||
<dl>
|
<dl>
|
||||||
<dt>stream</dt>
|
<dt>stream</dt>
|
||||||
|
@ -208,15 +229,11 @@ A _claim_ is a single entry in the blockchain that stores metadata. There are tw
|
||||||
|
|
||||||
#### Properties {#claim-properties}
|
#### Properties {#claim-properties}
|
||||||
|
|
||||||
Claims have four properties:
|
In addition to the properties that all stakes have, claims have two more properties:
|
||||||
|
|
||||||
<dl>
|
<dl>
|
||||||
<dt>claim_id</dt>
|
|
||||||
<dd>A 20-byte hash unique among all claims. See <a href="#claim-identifier-generation">Claim Identifier Generation</a>.</dd>
|
|
||||||
<dt>name</dt>
|
<dt>name</dt>
|
||||||
<dd>A normalized UTF-8 string of up to 255 bytes used to address the claim. See <a href="#urls">URLs</a> and <a href="#normalization">Normalization</a>.</dd>
|
<dd>A normalized UTF-8 string of up to 255 bytes used to address the claim. See <a href="#urls">URLs</a> and <a href="#normalization">Normalization</a>.</dd>
|
||||||
<dt>amount</dt>
|
|
||||||
<dd>A quantity of tokens used to stake the claim. See <a href="#controlling">Controlling</a>.</dd>
|
|
||||||
<dt>value</dt>
|
<dt>value</dt>
|
||||||
<dd>Metadata about a stream or a channel. See <a href="#metadata">Metadata</a>.</dd>
|
<dd>Metadata about a stream or a channel. See <a href="#metadata">Metadata</a>.</dd>
|
||||||
</dl>
|
</dl>
|
||||||
|
@ -261,9 +278,11 @@ There are three claim operations: _create_, _update_, and _abandon_.
|
||||||
|
|
||||||
#### Supports
|
#### Supports
|
||||||
|
|
||||||
A _support_ is an additional transaction type that lends its _amount_ to an existing claim.
|
A _support_ is a stake that lends its _amount_ to an existing claim.
|
||||||
|
|
||||||
A support contains only a `claimID` and an `amount`, no other properties. Supports function analogously to claims in terms of [Claim Operations](#claim-operations) and [Claim Statuses](#claim-statuses), with the exception that they cannot be updated or themselves supported.
|
Supports have one extra property on top of the basic stake properties: a `claim_id`. This is the ID of the claim that the support is bolstering.
|
||||||
|
|
||||||
|
Supports function analogously to claims in terms of [Claim Operations](#claim-operations) and [Claim Statuses](#claim-statuses), with the exception that they cannot be updated or themselves supported.
|
||||||
|
|
||||||
#### Claimtrie
|
#### Claimtrie
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue