Exemplo n.º 1
0
    def setUpClass(cls):
        cls.privkey_hex = (
            'e9873d79c6d87dc0fb6a5778633389f4453213303da61f20bd67fc233aa33262')
        cls.privkey_bin = crypto_util.privkey_to_pyelliptic(cls.privkey_hex)

        cls.pubkey_hex = arithmetic.privkey_to_pubkey(cls.privkey_hex)
        cls.pubkey_bin = crypto_util.pubkey_to_pyelliptic(cls.pubkey_hex)
        cls.pubkey_hex_strip = cls.pubkey_hex[2:]

        cls.plaintext = "YELLOW SUBMARINE"
Exemplo n.º 2
0
    def setUpClass(cls):
        cls.privkey_hex = (
            'e9873d79c6d87dc0fb6a5778633389f4453213303da61f20bd67fc233aa33262'
        )
        cls.privkey_bin = crypto_util.privkey_to_pyelliptic(cls.privkey_hex)

        cls.pubkey_hex = arithmetic.privkey_to_pubkey(cls.privkey_hex)
        cls.pubkey_bin = crypto_util.pubkey_to_pyelliptic(cls.pubkey_hex)
        cls.pubkey_hex_strip = cls.pubkey_hex[2:]

        cls.plaintext = "YELLOW SUBMARINE"
Exemplo n.º 3
0
    def test_pubkey_to_pyelliptic(self):
        pubkey_bin_fmt = crypto_util.pubkey_to_pyelliptic(self.pubkey_hex)

        point_len = crypto_util.BTC_EC_POINT_LENGTH
        header_bin = crypto_util.BTC_CURVE_OPENSSL_ID_HEX.decode('hex')
        length_bin = crypto_util.BTC_EC_POINT_LENGTH_HEX.decode('hex')
        pubkey_bin = arithmetic.changebase(
            self.pubkey_hex_strip, 16, 256, minlen=2*point_len
        )

        self.assertEqual(pubkey_bin_fmt[:2], header_bin)
        self.assertEqual(pubkey_bin_fmt[2:4], length_bin)
        self.assertEqual(pubkey_bin_fmt[4:4+point_len], pubkey_bin[:point_len])
        self.assertEqual(pubkey_bin_fmt[4+point_len:6+point_len], length_bin)
        self.assertEqual(pubkey_bin_fmt[6+point_len:], pubkey_bin[point_len:])
Exemplo n.º 4
0
    def test_pubkey_to_pyelliptic(self):
        pubkey_bin_fmt = crypto_util.pubkey_to_pyelliptic(self.pubkey_hex)

        point_len = crypto_util.BTC_EC_POINT_LENGTH
        header_bin = crypto_util.BTC_CURVE_OPENSSL_ID_HEX.decode('hex')
        length_bin = crypto_util.BTC_EC_POINT_LENGTH_HEX.decode('hex')
        pubkey_bin = arithmetic.changebase(self.pubkey_hex_strip,
                                           16,
                                           256,
                                           minlen=2 * point_len)

        self.assertEqual(pubkey_bin_fmt[:2], header_bin)
        self.assertEqual(pubkey_bin_fmt[2:4], length_bin)
        self.assertEqual(pubkey_bin_fmt[4:4 + point_len],
                         pubkey_bin[:point_len])
        self.assertEqual(pubkey_bin_fmt[4 + point_len:6 + point_len],
                         length_bin)
        self.assertEqual(pubkey_bin_fmt[6 + point_len:],
                         pubkey_bin[point_len:])