Skip to content

Instantly share code, notes, and snippets.


Matthieu Riou matthieu

View GitHub Profile
matthieu / eth-split
Last active Dec 28, 2020
Calling the Ethereum splitting contract using BlockCypher
View eth-split
# Contract at:
# See also
$ cat split.json
"private": "...",
"gas_amount": 200000,
"params": ["3f071e84604d712ee034d776ed8f6405e1444c48", "34de916d2afc28564b118a4f2723d0274b223f32"],
matthieu / bc-contract-doc
Created Jul 12, 2016
Contract creation with BlockCypher
View bc-contract-doc
# The contract API includes the following endpoints (API token always required):
# POST /v1/eth/main/contracts
# Creates a new contract. Expects the solidity definition, the private key paying for the publication, the name of the
# contract to be published, the gas amount to use and eventual constructor parameters. The solidity code is compiled
# and the contract creation transaction built and broadcasted. Both the code and the ABI are saved for further
# retrieval. If invoked without contracts to publish, simply compiles and returns the result of compilation.
# Otherwise, along with the compilation results, will return the contract address and creation transaction hash and the
# contract methods will be exposed as endpoints (see below).
View gist:4c98575af988f3e6b194
Verifying I am +matthieu on my passcard.
matthieu / gist:f18b54cb91c31d39ba54
Last active Aug 29, 2015
Validate the tosign data returned by BlockCypher
View gist:f18b54cb91c31d39ba54
# create the transaction
$ curl -d '{"inputs": [{"addresses": ["mtWg6ccLiZWw2Et7E5UqmHsYgrAi5wqiov"]}],
"outputs":[{"addresses": ["mzUqjgiGc3Mqh5zMiP5vXDNd7Hwx3K1xCU"], "value": 25000}]}' \
"tx": {
"block_height": -1,
"hash": "568acff13300b471d384e16a1a6d449be704e97b819f051dc4f1fb246726e471",
"addresses": [

Keybase proof

I hereby claim:

  • I am matthieu on github.
  • I am mriou ( on keybase.
  • I have a public key whose fingerprint is 45B8 A602 A54E FB5E 0DEC 4970 E272 A45F 78F3 61CB

To claim this, I am signing this object:

matthieu /
Last active Aug 29, 2015
Decrypts and send the send_a_candy JSON to BlockCypher to create a microtransaction
openssl enc -d -aes-256-cbc -base64 -in send_a_candy.json.aes256 2>&1 | \
curl -H "Content-Type: application/json" -d @-$1
matthieu / encrypt_send_a_candy
Last active Aug 29, 2015
Encrypt a JSON file before POSTing to BlockCypher
View encrypt_send_a_candy
$ openssl enc -aes-256-cbc -base64 -in send_a_candy.json -out send_a_candy.json.aes256
matthieu / new_address_curl
Last active Aug 29, 2015
Get a new address and keys from BlockCypher
View new_address_curl
$ curl -X POST
"private": "da01587298ff1721a968539e87329abe18f9b20cb46124eb650671662d3acd1a",
"public": "02d47eaaca7f9b96a977c996396d1668a729155c02a18a37429ca5be9cfda91893",
"address": "1PjfjXBM4GQs8FaNFESiUZzQwVxMHXdBXG",
"wif": "L4XV4V5ACQmrtJn7ombma3sdqNrn1T9FFfwjLUaHVmd7Qz5iNHTt"
matthieu / send_a_candy.json
Created Mar 11, 2015
Partial JSON to POST to BlockCypher for a candy-size microtransaction
View send_a_candy.json
"from_private": "da01587298ff1721a968539e87329abe18f9b20cb46124eb650671662d3acd1a",
"value_satoshis": 2000000,
"token": "37048cd01f250eca918ab55b658de3ec"
matthieu / gist:d78bd39a6709c5be3dcd
Created Mar 7, 2015
Sending op_return transactions with BlockCypher
View gist:d78bd39a6709c5be3dcd
<!DOCTYPE html>
<html lang="en">
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Block Cypher</title>
<!-- Bootstrap -->
<link href="css/bootstrap.css" rel="stylesheet">
You can’t perform that action at this time.