コード例 #1
0
ファイル: hd.py プロジェクト: Dirbaio/btcmagic
def random_xpriv():
    priv = ecdsa.random_priv()
    chaincode = convert.random_bytes(32)
    return {
        'depth': 0,
        'fingerprint': b'\x00'*4,
        'i': 0,
        'chaincode': chaincode,
        'priv': priv
    }
コード例 #2
0
ファイル: test_ecdsa.py プロジェクト: Dirbaio/btcmagic
    def test_all(self):
        for _ in range(10):
            msghash = convert.random_bytes(32)
            priv = ecdsa.random_priv()
            pub = ecdsa.priv_to_pub(priv)
            sig = ecdsa.sign(msghash, priv)
            self.assertTrue(
                ecdsa.verify(msghash, sig, pub),
                "Verification error"
            )

            self.assertEqual(
                pub,
                ecdsa.recover(msghash, sig),
                "Recovery failed"
            )
コード例 #3
0
ファイル: test_ecdsa.py プロジェクト: Dirbaio/btcmagic
 def test_serialize(self):
     for _ in range(10):
         priv = ecdsa.random_priv()
         pub = ecdsa.priv_to_pub(priv)
         self.assertEqual(pub, ecdsa.deserialize_pub(ecdsa.serialize_pub(pub, compressed=False)))
         self.assertEqual(pub, ecdsa.deserialize_pub(ecdsa.serialize_pub(pub, compressed=True)))
コード例 #4
0
ファイル: test_ecdsa.py プロジェクト: Dirbaio/btcmagic
 def test_serialize(self):
     for _ in range(10):
         priv = ecdsa.random_priv()
         ser = ecdsa.serialize_priv(priv)
         priv2 = ecdsa.deserialize_priv(ser)
         self.assertEqual(priv, priv2)