[BSIP-0008] Modifications for readability

This commit is contained in:
Fabian Schuh 2015-12-16 16:46:20 +01:00
parent 052a6d740e
commit ef12addf7d
2 changed files with 30 additions and 23 deletions

View file

@ -18,5 +18,5 @@ Number | Title | Owner | Type
[4](bsip-0004.md) | Distribute Market Fees on Core Asset to Referral Program | Danial Larimer | Protocol | Draft [4](bsip-0004.md) | Distribute Market Fees on Core Asset to Referral Program | Danial Larimer | Protocol | Draft
[5](bsip-0005.md) | Expiring Votes for Witnesses | Danial Larimer | Protocol | Draft [5](bsip-0005.md) | Expiring Votes for Witnesses | Danial Larimer | Protocol | Draft
[6](bsip-0006.md) | Market Maker Incentivization | Danial Larimer | Protocol | Draft [6](bsip-0006.md) | Market Maker Incentivization | Danial Larimer | Protocol | Draft
[7](bsip-0007.md) | Privacy (STEALTH) Mode | Danial Larimer | Informational | Draft [7](bsip-0007.md) | Privacy (STEALTH) Mode | Danial Larimer | Protocol | Draft
[8](bsip-0008.md) | Fee Backed Assets (FBA) | Danial Larimer | Informational | Draft [8](bsip-0008.md) | Fee Backed Assets (FBA) | Danial Larimer | Protocol | Draft

View file

@ -3,7 +3,7 @@
Authors: Daniel Larimer <Dan@cryptonomex.com> Authors: Daniel Larimer <Dan@cryptonomex.com>
Fabian Schuh <Fabian@BitShares.org> Fabian Schuh <Fabian@BitShares.org>
Status: Draft Status: Draft
Type: Informational Type: Protocol
Created: 2015-12-16 Created: 2015-12-16
Discussion: <https://github.com/cryptonomex/graphene/issues/452> Discussion: <https://github.com/cryptonomex/graphene/issues/452>
<https://bitsharestalk.org/index.php/topic,20104.0.html> <https://bitsharestalk.org/index.php/topic,20104.0.html>
@ -17,18 +17,21 @@ privacy. This feature helps set BitShares apart from most other crypto
currencies and offers tremendous value to the users who are most interested in currencies and offers tremendous value to the users who are most interested in
privacy, liberty, and freedom. privacy, liberty, and freedom.
In practise they combine the techniques of *blinding* for the transfer amount In practise they combine the techniques of *blinding signatures* to hide the
and *stealth addresses* (similar to TITAN in BitShares 1) to hide involved amount of a transfer and *stealth addresses* (similar to TITAN in BitShares 1)
parties. to hide involved parties.
# Specifications # Specifications
This proposal involves creating a new front-end feature on the account page in This proposal involves creating a new front-end feature on the account page in
the wallet to enter the *privacy mode*. Here, users will be able to create the web wallet to allow users to enter the *privacy mode*. Here, users will be
*private accounts* which are nothing but labeled private keys. They will also be able to create *private accounts* which are labeled private keys. They will
able to manage *private contacts* which are nothing more than labeled public also be able to manage *private contacts* which are labeled public keys. Neither
keys. Neither private accounts nor private contacts are tracked on the private accounts nor private contacts are tracked on the blockchain since those
blockchain since those keys are not used directly. keys are not used directly. Instead, each transaction will derive a
transaction-specific address from the private contact's public key. A off-chain
memo helps the receiver identify the deposit and derive the corresponding
transaction-specific private key from the private account.
Users will be able to monitor their private balances and take the following Users will be able to monitor their private balances and take the following
actions: actions:
@ -39,25 +42,29 @@ actions:
* Register a new account using a private balance. * Register a new account using a private balance.
* Receive a private transfer from a 3rd party given a transfer receipt. * Receive a private transfer from a 3rd party given a transfer receipt.
These features are already available on the blockchain level using *address
authorities* and *key authorities* and indicating that a transaction to that
account has to be made in private.
# Implementation Aspects # Implementation Aspects
## Backup Considerations ## Backup Considerations
Because private transfers are not recoverable from blockchain data alone, Because private transfers are not recoverable from blockchain data alone,
backups of your wallet after receiving a new private transfer are required. backups of your wallet after receiving a new private transfer are *required*.
## Javascript Implementation ## Javascript Implementation
This proposal will require the use of this library to perform the necessary This proposal will require the use of a JavaScript library to perform the
crypto operations in javascript (see [1]). necessary crypto operations in the web wallet (see [1]).
# Funding # Funding
BitSharestalk.org forum user `onceuponatime` has proposed to fund the BitSharestalk.org forum user `onceuponatime` has proposed to fund the
development and implementation of this feature in full as a private investor and development and implementation of this feature in full as a private investor and
at zero cost to BitShares holders. at zero cost to BitShares shareholders.
Contract between `onceuponatime` and Cryptonomex: ## Contract between `onceuponatime` and Cryptonomex:
The purpose of this contract is to develop a Privacy Mode feature, Privacy Mode The purpose of this contract is to develop a Privacy Mode feature, Privacy Mode
fee accumulation account, Maintenance Account, Initialization Package, and GUI fee accumulation account, Maintenance Account, Initialization Package, and GUI
@ -74,14 +81,14 @@ Contract between `onceuponatime` and Cryptonomex:
* Receive a private transfer from a 3rd party given a transfer receipt. * Receive a private transfer from a 3rd party given a transfer receipt.
3. Each of these services shall charge a fee initially set at 3x the standard 3. Each of these services shall charge a fee initially set at 3x the standard
transfer fee, but which may be adjusted from time to time by the owner(s) of transfer fee, but which may be adjusted from time to time by the owner(s) of
the Privacy Mode fees account the Privacy Mode's management account
4. Fees shall be automatically distributed by the blockchain to the following 4. Fees shall be automatically distributed by the blockchain to the following
accounts: accounts:
* 20% to the BitShares network. * 20% to the BitShares network.
* 20% to a Maintenance Account. * 20% to a Maintenance Account.
* 60% to holder(s) of the Privacy Mode Fees accumulation account * 60% to holder(s) of the Privacy Mode Fees accumulation account
5. The Maintenance Account shall be controlled by five specified manager 5. The Maintenance Account shall be controlled by five specified manager
accounts in a 3 of 5 multisig configuration. These managers will control accounts in a 3 of 5 multisig configuration. These managers will control
the allocation of this fund to future maintenance and upgrade tasks. the allocation of this fund to future maintenance and upgrade tasks.
6. The Initialization Package shall modify the blockchain to make the Privacy 6. The Initialization Package shall modify the blockchain to make the Privacy
Mode feature available to users. Mode feature available to users.
@ -99,11 +106,11 @@ Contract between `onceuponatime` and Cryptonomex:
# Management Account # Management Account
The STEALTH asset will be issued by the "management account" for this feature. The STEALTH asset will be issued by the "management account" for this feature
`Onceuponatime` will be the initial owner of the issued asset (not the issuer). (as created by the initialization package). `Onceuponatime` will be the initial
This management account will have multi-sig authority assigned to the 5 largest owner of the issued asset (not the issuer). This management account will have
STEALTH holders weighted proportional to stake and will have the power to set 3-of-5 multi-signature authority assigned to the 5 *largest* STEALTH holders
the fee. weighted proportional to stake and will have the power to set the fee.
# Roadmap # Roadmap