Move from ed25519 to PyNaCl
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
"""Test configuration and global fixtures
|
||||
"""
|
||||
|
||||
from ed25519 import SigningKey
|
||||
from nacl.signing import SigningKey
|
||||
import pytest
|
||||
from _pytest.fixtures import SubRequest
|
||||
|
||||
|
@@ -3,7 +3,7 @@
|
||||
from datetime import datetime, timedelta
|
||||
from typing import Any, Dict
|
||||
|
||||
from ed25519 import SigningKey
|
||||
from nacl.signing import SigningKey
|
||||
import pytest
|
||||
from pytest_mock.plugin import MockerFixture
|
||||
|
||||
@@ -213,11 +213,11 @@ def test_sign_different_author(identity: Identity) -> None:
|
||||
def test_sign_new_identity() -> None:
|
||||
"""Test if signing a document with a different entity also sets the author"""
|
||||
|
||||
key_seed = (
|
||||
other_key_seed = (
|
||||
b'`_\x8dm\x18\xeem\xe3\\\xeb_\x1aw)\xcd\xb7\xd8\xd9\xdd\xad\x86\x9a#wQ"F\x95\xa1\x178r'
|
||||
)
|
||||
key = SigningKey(key_seed)
|
||||
identity = Identity('name', sign_key=key)
|
||||
identity = Identity('name', sign_key=SigningKey(other_key_seed))
|
||||
assert str(identity) == '@name.bu5seaewd4p7cx7ot4ue3m6wpigfa5hmowxgeophe2so72roao5wq'
|
||||
|
||||
document = Es4Document.from_json(VALID_DOCUMENT)
|
||||
document.author = identity
|
||||
|
@@ -2,7 +2,7 @@
|
||||
"""
|
||||
|
||||
import bip39
|
||||
from ed25519 import SigningKey, create_keypair
|
||||
from nacl.signing import SigningKey
|
||||
import pytest
|
||||
from pytest_mock.plugin import MockerFixture
|
||||
|
||||
@@ -27,7 +27,8 @@ TEST_MNEMONIC = bip39.encode_bytes(TEST_SEED)
|
||||
def test_init_bad_name(name: str) -> None:
|
||||
"""Test if initialisation is not possible with an invalid name"""
|
||||
|
||||
sign, verify = create_keypair()
|
||||
sign = SigningKey.generate()
|
||||
verify = sign.verify_key
|
||||
|
||||
with pytest.raises(ValidationError) as ctx:
|
||||
Identity(name, verify_key=verify, sign_key=sign)
|
||||
@@ -38,8 +39,8 @@ def test_init_bad_name(name: str) -> None:
|
||||
def test_init_key_mismatch() -> None:
|
||||
"""Test if initialisation fails if the signing and verifying keys don’t match"""
|
||||
|
||||
sign1, _ = create_keypair()
|
||||
_, verify2 = create_keypair()
|
||||
sign1 = SigningKey.generate()
|
||||
verify2 = SigningKey.generate().verify_key
|
||||
|
||||
with pytest.raises(ValidationError) as ctx:
|
||||
Identity('name', verify_key=verify2, sign_key=sign1)
|
||||
@@ -89,12 +90,12 @@ def test_from_address() -> None:
|
||||
"""Test loading an identity from an author address"""
|
||||
|
||||
skey = SigningKey(TEST_SEED)
|
||||
vkey = skey.get_verifying_key()
|
||||
vkey = skey.verify_key
|
||||
identity = Identity.from_address('@test.bcz76z52y5dlpohtkmpuj3jsdcvfmebzpcgfmtmhu4u7hlexzreya')
|
||||
|
||||
assert identity.name == 'test'
|
||||
assert identity.sign_key is None
|
||||
assert identity.verify_key.to_bytes() == vkey.to_bytes()
|
||||
assert identity.verify_key == vkey
|
||||
|
||||
|
||||
def test_from_invalid_address() -> None:
|
||||
@@ -110,9 +111,8 @@ def test_generate(mocker: MockerFixture) -> None:
|
||||
"""Test the generate property"""
|
||||
|
||||
skey = SigningKey(TEST_SEED)
|
||||
vkey = skey.get_verifying_key()
|
||||
|
||||
mocker.patch('earthsnake.identity.create_keypair', return_value=(skey, vkey))
|
||||
mocker.patch('earthsnake.identity.SigningKey.generate', return_value=skey)
|
||||
identity = Identity.generate('test')
|
||||
|
||||
assert str(identity) == '@test.bcz76z52y5dlpohtkmpuj3jsdcvfmebzpcgfmtmhu4u7hlexzreya'
|
||||
@@ -145,7 +145,7 @@ def test_from_mnemonic() -> None:
|
||||
|
||||
assert identity.name == name
|
||||
assert identity.sign_key
|
||||
assert identity.sign_key.to_seed() == TEST_SEED
|
||||
assert identity.sign_key.encode() == TEST_SEED
|
||||
assert str(identity) == f'@{name}.bcz76z52y5dlpohtkmpuj3jsdcvfmebzpcgfmtmhu4u7hlexzreya'
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user