This repository has been archived by the owner on May 2, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdummy_transaction.py
96 lines (83 loc) · 2.72 KB
/
dummy_transaction.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Thu Apr 4 14:09:35 2019
@author: gaurava
"""
from json import dumps, loads
import os
from uuid import uuid4
import requests
from flask import Flask, jsonify, request
from blspy import PrivateKey
from block import Block
from transaction import Transaction
from flask.logging import default_handler
os.system("clear")
app = Flask(__name__)
import random
# Generate a globally unique address for this node
node_identifier = str(uuid4()).replace('-', '')
@app.route('/send', methods=['POST'])
def create_transaction():
values = request.get_json()
print(values)
try:
to = values.get("node")
except:
return jsonify("bad request, parameters not found"), 401
if to is None:
to = "127.0.0.1:5001"
seed = bytes([0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])
from_sk = PrivateKey.from_seed(seed)
from_pk = from_sk.get_public_key()
amount = random.randint(1, 100)
seed = []
for i in range(0, 32):
seed.append(random.randint(0, 254))
seed = bytes(seed)
to_sk = PrivateKey.from_seed(seed)
to_pk = to_sk.get_public_key()
tx = Transaction(str(from_pk.serialize(), "ISO-8859-1"), str(to_pk.serialize(), "ISO-8859-1"), amount, from_sk)
print(tx.verify_signature())
url = "http://" + to + "/transactions/new"
response = requests.post(url, json=tx.jsonify_Transaction())
print(response.status_code)
return jsonify("transaction created and sent to destination"), 200
@app.route('/block', methods=['GET'])
def create_block():
# msg = dumps({
# "index": self.index,
# "harvester": self.harvester,
# "previous_hash": self.previous_hash,
# "txn": txn_hash,
# "signature": "",
# "signers": "",
# "timestamp": self.timestamp,
# })
_block = Block(2, "har", "33", [], "33", "23", "42424")
url = "http://localhost:4999/send"
response = requests.post(url, json=_block.jsonify_block())
print(response.status_code)
print(response.json())
return _block.jsonify_block(), 200
def temp_fxn():
dictionary = dict()
dictionary["1"] = "1"
dictionary["2"] = "2"
values = dumps({"dict": dictionary, "d": "sdsds"})
print(values)
dictionary_1 = loads(values)["dict"]
print(dictionary_1["1"])
pass
if __name__ == '__main__':
from argparse import ArgumentParser
parser = ArgumentParser()
parser.add_argument('-p', '--port', default=4999, type=int, help='port to listen on')
args = parser.parse_args()
port = args.port
app.logger.removeHandler(default_handler)
app.run(host='0.0.0.0', port=port)
# temp_fxn()