Skip to content

Instantly share code, notes, and snippets.

@davidbongcc
davidbongcc / bitcoin-merkle-proofs.js
Created August 18, 2020 16:51 — forked from eddmann/bitcoin-merkle-proofs.js
Bitcoin Internals: Verifying Merkle Roots using Merkle Proofs in JavaScript
const fetchLatestBlock = () =>
fetch(`https://blockchain.info/q/latesthash?cors=true`)
.then(r => r.text());
const fetchMerkleRootAndTransactions = block =>
fetch(`https://blockchain.info/rawblock/${block}?cors=true`)
.then(r => r.json())
.then(d => [d.mrkl_root, d.tx.map(t => t.hash)]);
const random = arr =>
pragma solidity ^0.4.21;
import "../../node_modules/zeppelin-solidity/contracts/token/ERC20/ERC20.sol";
import "../../node_modules/zeppelin-solidity/contracts/ownership/Ownable.sol";
import "../webshop/Webshop.sol";
contract Escrow is Ownable {
enum PaymentStatus { Pending, Completed, Refunded }
event PaymentCreation(uint indexed orderId, address indexed customer, uint value);
@davidbongcc
davidbongcc / hash.py
Created February 11, 2019 07:34 — forked from spalladino/hash.py
Solution for Coursera Cryptography 1 course Week 3 programming assignment
from hashlib import sha256
from sys import argv
with open(argv[1], "rb") as f:
blocks = []
block = f.read(1024)
while block:
blocks.append(block)
block = f.read(1024)