コード例 #1
0
ファイル: test_ECC.py プロジェクト: Legrandin/pycryptodome
    def test_public_key(self):

        p521 = _curves['p521']
        point = EccPoint(p521.Gx, p521.Gy, 'p521')
        key = EccKey(curve="P-384", point=point)
        self.failIf(key.has_private())
        self.assertEqual(key.pointQ, point)
コード例 #2
0
ファイル: test_ECC.py プロジェクト: Legrandin/pycryptodome
    def test_private_key(self):

        p384 = _curves['p384']

        key = EccKey(curve="P-384", d=1)
        self.assertEqual(key.d, 1)
        self.failUnless(key.has_private())
        self.assertEqual(key.pointQ.x, p384.Gx)
        self.assertEqual(key.pointQ.y, p384.Gy)

        point = EccPoint(p384.Gx, p384.Gy, "p384")
        key = EccKey(curve="P-384", d=1, point=point)
        self.assertEqual(key.d, 1)
        self.failUnless(key.has_private())
        self.assertEqual(key.pointQ, point)

        # Other names
        key = EccKey(curve="p384", d=1)
        key = EccKey(curve="secp384r1", d=1)
        key = EccKey(curve="prime384v1", d=1)
コード例 #3
0
ファイル: test_ECC.py プロジェクト: Legrandin/pycryptodome
    def test_private_key(self):

        p521 = _curves['p521']

        key = EccKey(curve="P-521", d=1)
        self.assertEqual(key.d, 1)
        self.failUnless(key.has_private())
        self.assertEqual(key.pointQ.x, p521.Gx)
        self.assertEqual(key.pointQ.y, p521.Gy)

        point = EccPoint(p521.Gx, p521.Gy, "p521")
        key = EccKey(curve="P-521", d=1, point=point)
        self.assertEqual(key.d, 1)
        self.failUnless(key.has_private())
        self.assertEqual(key.pointQ, point)

        # Other names
        key = EccKey(curve="p521", d=1)
        key = EccKey(curve="secp521r1", d=1)
        key = EccKey(curve="prime521v1", d=1)
コード例 #4
0
ファイル: test_ECC.py プロジェクト: shubhanus/taiga
    def test_private_key(self):

        key = EccKey(curve="P-256", d=1)
        self.assertEqual(key.d, 1)
        self.assertTrue(key.has_private())
        self.assertEqual(key.pointQ.x, _curve.Gx)
        self.assertEqual(key.pointQ.y, _curve.Gy)

        point = EccPoint(_curve.Gx, _curve.Gy)
        key = EccKey(curve="P-256", d=1, point=point)
        self.assertEqual(key.d, 1)
        self.assertTrue(key.has_private())
        self.assertEqual(key.pointQ, point)

        # Other names
        key = EccKey(curve="secp256r1", d=1)
        key = EccKey(curve="prime256v1", d=1)
コード例 #5
0
    def test_public_key(self):

        point = EccPoint(_curves['p224'].Gx, _curves['p224'].Gy, curve='P-224')
        key = EccKey(curve="P-224", point=point)
        self.assertFalse(key.has_private())
        self.assertEqual(key.pointQ, point)
コード例 #6
0
ファイル: test_ECC.py プロジェクト: ssdred1250/iconnex
 def test_invalid_curve(self):
     self.assertRaises(ValueError, lambda: EccKey(curve="P-522", d=1))
コード例 #7
0
 def test_invalid_seed(self):
     self.assertRaises(ValueError, lambda: EccKey(curve="ed25519", seed=b'H' * 31))
コード例 #8
0
ファイル: test_ECC.py プロジェクト: ssdred1250/iconnex
    def test_private_key(self):

        p521 = _curves['p521']

        key = EccKey(curve="P-521", d=1)
        self.assertEqual(key.d, 1)
        self.failUnless(key.has_private())
        self.assertEqual(key.pointQ.x, p521.Gx)
        self.assertEqual(key.pointQ.y, p521.Gy)

        point = EccPoint(p521.Gx, p521.Gy, "p521")
        key = EccKey(curve="P-521", d=1, point=point)
        self.assertEqual(key.d, 1)
        self.failUnless(key.has_private())
        self.assertEqual(key.pointQ, point)

        # Other names
        key = EccKey(curve="p521", d=1)
        key = EccKey(curve="secp521r1", d=1)
        key = EccKey(curve="prime521v1", d=1)
コード例 #9
0
ファイル: test_ECC.py プロジェクト: ssdred1250/iconnex
    def test_public_key_derived(self):

        priv_key = EccKey(curve="P-521", d=3)
        pub_key = priv_key.public_key()
        self.failIf(pub_key.has_private())
        self.assertEqual(priv_key.pointQ, pub_key.pointQ)
コード例 #10
0
 def test_public_key_derived(self):
     priv_key = EccKey(curve="ed25519", seed=b'H'*32)
     pub_key = priv_key.public_key()
     self.assertFalse(pub_key.has_private())
     self.assertEqual(priv_key.pointQ, pub_key.pointQ)
コード例 #11
0
ファイル: test_ECC.py プロジェクト: ssdred1250/iconnex
 def test_invalid_d(self):
     self.assertRaises(ValueError, lambda: EccKey(curve="P-384", d=0))
     self.assertRaises(
         ValueError, lambda: EccKey(curve="P-384", d=_curves['p384'].order))
コード例 #12
0
ファイル: serialization.py プロジェクト: JJK96/SDM
def serialize_public_key(public_key: ECC.EccKey):
    return public_key.export_key(format='DER')
コード例 #13
0
ファイル: test_ECC.py プロジェクト: shubhanus/taiga
    def test_public_key(self):

        point = EccPoint(_curve.Gx, _curve.Gy)
        key = EccKey(curve="P-256", point=point)
        self.assertFalse(key.has_private())
        self.assertEqual(key.pointQ, point)
コード例 #14
0
def get_ec_private_key_bytes(key: EccKey) -> bytes:
    assert key.has_private()

    modulus_bytes = key.pointQ.size_in_bytes()

    return key.d.to_bytes(modulus_bytes, "big")
コード例 #15
0
def exportKeyToFileEncrypted(key: ECC.EccKey, path, password):
    with open(path, "wt") as file:
        file.write(
            key.export_key(format="PEM",
                           passphrase=password,
                           protection="PBKDF2WithHMAC-SHA1AndAES128-CBC"))
コード例 #16
0
def exportKeyToFile(key: ECC.EccKey, path):
    with open(path, "wt") as file:
        file.write(key.export_key(format="PEM"))
コード例 #17
0
 def test_public_key(self):
     p521 = _curves['p521']
     point = EccPoint(p521.Gx, p521.Gy, 'p521')
     key = EccKey(curve="P-384", point=point)
     self.failIf(key.has_private())
     self.assertEqual(key.pointQ, point)
コード例 #18
0
 def __init__(self, key: ECC.EccKey, verify_only=False):
     self._key = key
     if not verify_only:
         assert key.has_private()
コード例 #19
0
ファイル: test_ECC.py プロジェクト: ssdred1250/iconnex
    def test_public_key(self):

        point = EccPoint(_curves['p256'].Gx, _curves['p256'].Gy)
        key = EccKey(curve="P-256", point=point)
        self.failIf(key.has_private())
        self.assertEqual(key.pointQ, point)
コード例 #20
0
ファイル: test_ECC.py プロジェクト: ssdred1250/iconnex
    def test_private_key(self):

        p384 = _curves['p384']

        key = EccKey(curve="P-384", d=1)
        self.assertEqual(key.d, 1)
        self.failUnless(key.has_private())
        self.assertEqual(key.pointQ.x, p384.Gx)
        self.assertEqual(key.pointQ.y, p384.Gy)

        point = EccPoint(p384.Gx, p384.Gy, "p384")
        key = EccKey(curve="P-384", d=1, point=point)
        self.assertEqual(key.d, 1)
        self.failUnless(key.has_private())
        self.assertEqual(key.pointQ, point)

        # Other names
        key = EccKey(curve="p384", d=1)
        key = EccKey(curve="secp384r1", d=1)
        key = EccKey(curve="prime384v1", d=1)
コード例 #21
0
ファイル: test_ECC.py プロジェクト: shubhanus/taiga
    def test_public_key_derived(self):

        priv_key = EccKey(curve="P-256", d=3)
        pub_key = priv_key.public_key()
        self.assertFalse(pub_key.has_private())
        self.assertEqual(priv_key.pointQ, pub_key.pointQ)
コード例 #22
0
 def test_public_key(self):
     point = EccPoint(_curves['ed25519'].Gx, _curves['ed25519'].Gy, curve='ed25519')
     key = EccKey(curve="ed25519", point=point)
     self.assertFalse(key.has_private())
     self.assertEqual(key.pointQ, point)