During the period of the sale of ether, we will publish a series of blog articles concerning our development plans and our targeted organizational structure. Today, we describe some of the background details of the ether sales module. The sales module will be displayed on our website at for the duration of the sale.
What is this?
The sale of ether is an HTML / JavaScript web application which allows people and organizations to prepare ether tokens with Bitcoin. Ether can be purchased by interested parties to use it in their development of applications distributed on the Ethereum platform or simply to pay the use of applications on the platform once the Genesis block has been released. The application runs mainly inside the browser, including the generation of pseudo random numbers (PRNG) and encryption / decryption of user secrets.
In addition, we will provide a pure python autonomous application which can be used from a command line interface to buy Ether instead of using the website shop.
Website workflow:
- After accepting the terms and conditions of the store, the buyer enters the amount of ether desired to buy, his email address, a password to use for encryption and generates a “random” seed forming the base of their Bitcoin and Ethereum addresses specific to transactions.
- THE user The buyer sends a payment in Bitcoin to the generated address that is displayed on the store page and also supplied in a downloadable encrypted wallet file. When the browser, which monitors the Bitcoin blockchain, sees enough funds was sent to this address generated, the browser creates a new transaction transferring Bitcoin to the sales address Genesis. This transaction is signed by the buyer’s browser and subject to the Bitcoin network. No transaction data is stored on THE All servers because the Bitcoin blockchain serves as a purchasing database.
- Once the transaction has been successfully subject, the user The buyer is again invited to download a backup copy of their encrypted wallet in addition to being sent by e-mail another backup file. The buyer must be aware that maintaining the portfolio as an e-mail attachment to an email account for any time of time represents vulnerability. The e-mail attachment must be downloaded to a safe computer on the first occasion and the email must be deleted from the mail system.
(The following are the technical information, the graphical interface that we have developed sums up all of this is very friendly)
Portfolio encryption process:
- Randomgen a seed.
- Bkpkey = sha3 (seed + “\ x02”) (: 16)
- Key = PBKDF2 (PW)
- Ride = ecrypt (key, seed)
- Wallet = (row, bkpkey) (more non -sensitive data like Ethereum and Bitcoin address)
BTC and ETH priviles and addresses are derived from the seed.
Seed recovery process:
- Wallet + PW recovery: (normal)
- Key = PBKDF2 (PW)
- Seed = Decrypt (key, incent)
Overview of website steps to make an ether purchase:
- The buyer clicks on “Buy ether” and accepts the general conditions
- The buyer is entering the initial purchase information
- The buyer enters the amount of the ether they would like to buy
- The buyer enters the email address as a destination for the portfolio backup file
- The buyer enters a secret sentence, which serves as an encryption seed. A very strong secret sentence is highly recommended
- The buyer generates entropy by moving their mouse or pressing his screen. A “seed” is built according to this entropy generated as well as other random system entries. When the desired entropy length is reached, the wallet is generated using the seed. The portfolio contains:
- an individual BTC address to send funds to
- an individual ethn address
- A encrypted seed
- A encrypted backup seed
- The browser sales application checks the newly created BTC address to see if the funds arrive. Before sending funds, the buyer can download the portfolio. If a problem occurs between transactions, the funds sent to the buyer’s personal deposit address will be accessible with the secret sentence. If the unspeaking balance of the BTC address> 0.01 BTC, the browser sales application generates a transaction signed from the newly created BTC address with 2 specific outings:
- A production of the non -spent balance total less the fees of minors at the main sales BTC address – this BTC address is where all the funds go, it is a fixed and known BTC address.
- An exit from 10,000 Satoshi to a BTC address generated from the address (String) ETH – This Bitcoin address is to confirm Ethereum addresses and is unique for each transaction.
- The browser sales application encourages the buyer to download his portfolio & And also sends the buyer an e-mail containing a backup for the ether portfolio. The same caution as that indicated above applies. Do not leave the wallet as an e-mail attachment in a messaging system. Download as soon as possible and make sure that the email is deleted.
- The browser sales application will display the number of Bitcoin transaction confirmations
So that’s it! Although there are many technical things in the background, the graphical interface that we have developed will make the process one click by click.