Skip to content

Instantly share code, notes, and snippets.

Avatar
🇿🇦

Daniel van Flymen dvf

🇿🇦
View GitHub Profile
@dvf
dvf / blockchain.py
Last active Jun 24, 2019
Step 7: Transaction Endpoint
View blockchain.py
import hashlib
import json
from textwrap import dedent
from time import time
from uuid import uuid4
from flask import Flask, jsonify, request
...
@dvf
dvf / blockchain.py
Last active Jun 16, 2019
Blockchain: Step 1
View blockchain.py
class Blockchain(object):
def __init__(self):
self.chain = []
self.current_transactions = []
def new_block(self):
# Creates a new Block and adds it to the chain
pass
def new_transaction(self):
@dvf
dvf / MD5.js
Created May 19, 2019
MD5 Algorithm for Google Sheets
View MD5.js
function MD5 (input) {
var digest = Utilities.computeDigest(Utilities.DigestAlgorithm.MD5, input);
var output = "";
for (i = 0; i < digest.length; i++) {
var h = digest[i];
if (h < 0) { h += 256; }
if (h.toString(16).length == 1) { output += '0'; }
output += h.toString(16);
}
return output;
@dvf
dvf / blockchain.py
Last active Oct 30, 2018
Blockchain: Step 2
View blockchain.py
block = {
'index': 1,
'timestamp': 1506057125.900785,
'transactions': [
{
'sender': "8527147fe1f5426f9dd545de4b27ee00",
'recipient': "a77f5cdfa2934df3954a5c7c7da5df1f",
'amount': 5,
}
],
@dvf
dvf / blockchain.py
Created Sep 23, 2017
Step 2.1: Creating a Transaction
View blockchain.py
class Blockchain(object):
...
def new_transaction(self, sender, recipient, amount):
"""
Creates a new transaction to go into the next mined Block
:param sender: <str> Address of the Sender
:param recipient: <str> Address of the Recipient
:param amount: <int> Amount
@dvf
dvf / blockchain.py
Created Sep 23, 2017
Step 5: Complete Class
View blockchain.py
import hashlib
import json
from textwrap import dedent
from time import time
from uuid import uuid4
class Blockchain(object):
def __init__(self):
self.current_transactions = []
@dvf
dvf / blockchain.py
Last active Apr 8, 2018
Step 4: Proof of Work
View blockchain.py
import hashlib
import json
from time import time
from uuid import uuid4
class Blockchain(object):
...
@dvf
dvf / blockchain.py
Last active Feb 22, 2018
Creating a simple Blockchain in Python
View blockchain.py
class Blockchain(object):
def __init__(self):
self.current_transactions = []
self.chain = []
def new_block(self):
# Creates a new Block in the Blockchain
pass
def new_transaction(self):
@dvf
dvf / blockchain.py
Created Sep 23, 2017
Step 9: Consensus (Retrieve Chain)
View blockchain.py
@app.route('/chain', methods=['GET'])
def full_chain():
response = {
'chain': blockchain.chain,
'length': len(blockchain.chain),
}
return jsonify(response), 200
View keybase.md

Keybase proof

I hereby claim:

  • I am dvf on github.
  • I am dvf (https://keybase.io/dvf) on keybase.
  • I have a public key ASDMxnfzs4Am9pp5c7i38JACvJCMGlWHABqecGuzoGqr3Qo

To claim this, I am signing this object: