Git Product home page Git Product logo

pyethsaletool's Introduction

Sale documents:

Notes:

  1. Purchase minimum is 0.01 BTC
  2. Soft purchase maximum is 3000000000 ETH; this script enforces 1500 BTC. If your purchase is larger, contact [email protected]
  3. Please don't try to purchase ether directly into a contract address that you intend to create post-genesis. We know that at least some of you are clever enough to try this, but we take no responsibility for what happens when we change the protocol or the way that contract addresses are generated. Additionally, right now contract addresses depend on sender address and nonce only, so you're not really getting any extra security.
  4. Be sure not to lose your wallet or your password. Modern psychological understanding of human memory suggests that coming up with a new password in your head and then not using it for the six months before genesis will likely lead to you forgetting the password, so consider writing the password down.
  5. DON'T LOSE YOUR WALLET OR YOUR PASSWORD
  6. DON'T LOSE YOUR WALLET OR YOUR PASSWORD
  7. DON'T LOSE YOUR WALLET OR YOUR PASSWORD

Instructions:

  1. python pyethsaletool.py genwallet, enter a password and email
  2. Make sure you write down the password or otherwise keep it safe, and make sure you backup your wallet file (saved at ethwallet.json by default, you can use -w to save it somewhere else)
  3. Send BTC into the intermediate address provided
  4. Use python pyethsaletool.py finalize to send the BTC from the intermediate address to the exodus

Alternative cold wallet setup:

  1. Install pyethereum on a cold wallet device
  2. Use cat /dev/urandom | head -c 1000 | pyethtool -b sha3 > priv.key on the CWD to make a private key
  3. cat priv.key | pyethtool -s privtoaddr to get your address
  4. Copy the address to an online laptop, and switch to the laptop for the remaining steps
  5. python pyethsaletool.py genwallet, enter a password and email
  6. Make sure you write down the password or otherwise keep it safe, and make sure you backup your wallet file (saved at ethwallet.json by default, you can use -w to save it somewhere else)
  7. Send BTC into the intermediate address provided
  8. python pyethsaletool.py finalize <addr>, substituting <addr> with the address generated on the CWD

Additional instructions:

  • To recover the private key of your BTC intermediate address, use python pyethsaletool.py getbtcprivkey
  • To show your BTC intermediate address, use python pyethsaletool.py getbtcaddress
  • To recover your ETH privkey, use python pyethsaletool.py getethprivkey
  • To show your ETH address, use python pyethsaletool.py getethaddress
  • Use -w /path/to/wallet.json if you want to point to a specific wallet file or save your wallet at a specific location

pyethsaletool's People

Contributors

tgerring avatar vbuterin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pyethsaletool's Issues

assumes immediate confirmation from interim address

This code assumes that the btc sent to the funding address was confirmed in the immediately preceding block. The intent is to give the customer the benefit of the doubt, and credit them with a rate when they started the process, not when it finally finished.

I have found sequential confirmations was not the case with the factom sale.

It is a bummer that blockchain.info does not give the txid of the inputs being spent. this would make the code fixable.

https://github.com/ethereum/pyethsaletool/blob/master/genesis_block_generator.py#L92

factom is using multiple methods to create and validate the genesis block, which should highlight outliers like this.

Where is the bitcoin module?

python pyethsaletool.py genwallet testpassword [email protected] # command line input
Traceback (most recent call last): File "pyethsaletool.py", line 9, in <module> from bitcoin import * ImportError: No module named bitcoin

Where can I find the bitcoin module?

genesis_block_generator hitting blockchain.info request quotas

Gathered history: 9012
Processed transactions: 50
Processed transactions: 100
Processed transactions: 150
Processed transactions: 200
Processed transactions: 250
Processed transactions: 300
Processed transactions: 350
Processed transactions: 400
Traceback (most recent call last):
  File "genesis_block_generator.py", line 137, in <module>
    print json.dumps(evaluate(), indent=4)
  File "genesis_block_generator.py", line 129, in evaluate
    th = get_txs_and_heights(outs)
  File "genesis_block_generator.py", line 69, in get_txs_and_heights
    txs[h] = fetchtx(h)
  File "genesis_block_generator.py", line 50, in new_method
    c[str(arg)] = method(arg)
  File "/usr/local/lib/python2.7/site-packages/bitcoin/bci.py", line 341, in fetchtx
    return f(*args)
  File "/usr/local/lib/python2.7/site-packages/bitcoin/bci.py", line 268, in bci_fetchtx
    data = make_request('https://blockchain.info/rawtx/'+txhash+'?format=hex')
  File "/usr/local/lib/python2.7/site-packages/bitcoin/bci.py", line 23, in make_request
    raise Exception(p)
Exception: Quota Exceeded (Req Count Limit)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.