tbip70.py - electrum - Electrum Bitcoin wallet
HTML git clone https://git.parazyd.org/electrum
DIR Log
DIR Files
DIR Refs
DIR Submodules
---
tbip70.py (1041B)
---
1 #!/usr/bin/env python3
2 # create a BIP70 payment request signed with a certificate
3 # FIXME: the code here is outdated, and no longer working
4
5 import tlslite
6
7 from electrum.transaction import Transaction
8 from electrum import paymentrequest
9 from electrum import paymentrequest_pb2 as pb2
10 from electrum.bitcoin import address_to_script
11
12 chain_file = 'mychain.pem'
13 cert_file = 'mycert.pem'
14 amount = 1000000
15 address = "18U5kpCAU4s8weFF8Ps5n8HAfpdUjDVF64"
16 memo = "blah"
17 out_file = "payreq"
18
19
20 with open(chain_file, 'r') as f:
21 chain = tlslite.X509CertChain()
22 chain.parsePemList(f.read())
23
24 certificates = pb2.X509Certificates()
25 certificates.certificate.extend(map(lambda x: str(x.bytes), chain.x509List))
26
27 with open(cert_file, 'r') as f:
28 rsakey = tlslite.utils.python_rsakey.Python_RSAKey.parsePEM(f.read())
29
30 script = address_to_script(address)
31
32 pr_string = paymentrequest.make_payment_request(amount, script, memo, rsakey)
33
34 with open(out_file,'wb') as f:
35 f.write(pr_string)
36
37 print("Payment request was written to file '%s'"%out_file)