Wednesday, September 17, 2025
HomeEthereumBackground on the mechanics of the ether pre-sale

Background on the mechanics of the ether pre-sale


Through the run-up to the ether sale we will probably be releasing a collection of weblog posts relating to our improvement plans and meant organizational construction. At the moment we describe a number of the background particulars of the ether sale module.  The sale module will probably be displayed on our web site at https://www.ethereum.org at some point of the sale.


What’s it?

The ether sale is an HTML/JavaScript internet software that permits folks and organizations to pre-purchase ether tokens with bitcoin. Ether could also be bought by events all for utilizing it of their improvement of distributed functions on the Ethereum platform or just to pay for the usage of functions on the platform as soon as the genesis block is launched.  The applying runs largely contained in the browser, together with pseudo random quantity era (PRNG) and encryption/decryption of consumer secrets and techniques.

Moreover, we will probably be making out there a standalone pure Python software that can be utilized from a command line interface to buy ether in lieu of utilizing the web site retailer.


Web site workflow:

  1. After agreeing to the shop’s Phrases and Situations, the client enters the specified quantity of ether to buy, their e mail deal with, a password to make use of for encryption, and generates a “random” seed forming the idea for his or her transaction-specific bitcoin & Ethereum addresses.
  2. The consumer purchaser sends fee in bitcoin to the generated deal with which is displayed on the shop web page and likewise supplied in a downloadable encrypted pockets file. When the browser, which is monitoring the bitcoin blockchain, sees sufficient funds have been despatched to this generated deal with, the browser creates a brand new transaction forwarding the bitcoin to the genesis sale deal with. This transaction is signed by the client’s browser and submitted to the bitcoin community. No transaction information is saved on the any servers as a result of the Bitcoin blockchain serves as the acquisition database.
  3. After the transaction has been efficiently submitted, the consumer purchaser is once more prompted to obtain a backup copy of their encrypted pockets along with being emailed one other backup file.  The client ought to be conscious that holding the pockets as an e mail attachment in an e mail account for any time frame represents a vulnerability.  The e-mail attachment ought to be downloaded to a secure laptop on the earliest alternative and the e-mail ought to be expunged from the e-mail system.


(What follows is technical info, the GUI now we have developed abstracts all of that is in a really user-friendly method)


Pockets encryption course of: 

  1. Randomgen a SEED.
  2. BKPKEY = sha3(SEED + “x02″)[:16]
  3. KEY = pbkdf2(PW)
  4. ENCSEED = encrypt(KEY, SEED)
  5. WALLET = [ ENCSEED, BKPKEY ] (plus non-sensitive information like ethereum and bitcoin deal with)

The BTC and ETH privkeys and addresses are derived from the SEED.


Seed restoration course of: 

  1. WALLET + PW restoration:  (regular)
  2. KEY = pbkdf2(PW)
  3. SEED = decrypt(KEY, ENCSEED)


Overview of web site steps for making an ether buy:

  1. Purchaser clicks “Purchase Ether” and agrees to the Phrases & Situations
  2. Purchaser enters preliminary buy info

    1. Purchaser enters the quantity of ether they’d prefer to buy
    2. Purchaser enters e mail deal with because the vacation spot for pockets backup file
    3. Purchaser enters passphrase, which serves as an encryption seed. A really robust passphrase is extremely advisable

  3. Purchaser generates entropy by shifting their mouse or tapping their display. A “seed” is constructed primarily based on this generated entropy in addition to different random system inputs. When the specified entropy size is achieved the pockets is generated utilizing the seed.  The pockets comprises:

    1. a person BTC deal with to ship the funds to
    2. a person ETH deal with
    3. an encrypted seed
    4. a backup encrypted seed

  4. The browser sale app checks the newly created BTC deal with to see if funds arrive. Earlier than sending any funds, the client has a chance to obtain the pockets. If an issue happens between transactions, any funds ship to the client’s private deposit deal with will probably be accessible with the passphrase. If the unspent stability of the BTC deal with > 0.01 BTC, the browser sale app generates a signed transaction from the newly created BTC deal with with 2 particular outputs:

    1. an output of the whole unspent stability minus miners payment to the primary sale BTC deal with–this btc deal with is the place all of the funds go, it’s a hard and fast, identified BTC deal with.
    2. an output of 10000 satoshi to a BTC deal with generated from the (string) ETH deal with–this bitcoin deal with is for confirming ethereum addresses and is exclusive for each transaction.

  5. The browser sale app prompts the purchaser to obtain their pockets once more & and likewise sends the client an e mail containing a backup for the ether pockets.  The identical warning as acknowledged above applies.  Don’t go away the pockets as an e mail attachment in an e mail system.  Obtain as quickly as doable and be certain that the e-mail is expunged.
  6. The browser sale app will show the variety of bitcoin transaction confirmations


In order that’s it! Though there’s plenty of technical issues taking place within the background, the GUI now we have developed will make the method a click on by click on operation.

RELATED ARTICLES

Most Popular

Recent Comments