Пример #1
0
def test_generate_different_keys(default_params):
    seed2 = 'Seed' + '0' * (48 - len('Seed'))
    seed3 = 'seeeed' + '0' * (48 - len('seeeed'))

    sk1, pk1 = BlsCryptoSignerIndyCrypto.generate_keys(default_params)
    sk3, pk3 = BlsCryptoSignerIndyCrypto.generate_keys(default_params, seed2)
    sk4, pk4 = BlsCryptoSignerIndyCrypto.generate_keys(default_params, seed3)
    assert sk1 != sk3 != sk4
    assert pk1 != pk3 != pk4
def test_generate_different_keys(default_params):
    seed2 = 'Seed' + '0' * (32 - len('Seed'))
    seed3 = 'seeeed' + '0' * (32 - len('seeeed'))
    seed4 = 'Seed' + '0' * (31 - len('Seed'))

    sk1, pk1, _ = BlsCryptoSignerIndyCrypto.generate_keys(default_params)
    sk2, pk2, _ = BlsCryptoSignerIndyCrypto.generate_keys(default_params, seed2)
    sk3, pk3, _ = BlsCryptoSignerIndyCrypto.generate_keys(default_params, seed3)
    sk4, pk4, _ = BlsCryptoSignerIndyCrypto.generate_keys(default_params, seed4)
    assert sk1 != sk2 != sk3 != sk4
    assert pk1 != pk2 != pk3 != pk4
def test_generate_different_keys(default_params):
    seed2 = 'Seed' + '0' * (32 - len('Seed'))
    seed3 = 'seeeed' + '0' * (32 - len('seeeed'))
    seed4 = 'Seed' + '0' * (31 - len('Seed'))

    sk1, pk1, _ = BlsCryptoSignerIndyCrypto.generate_keys(default_params)
    sk2, pk2, _ = BlsCryptoSignerIndyCrypto.generate_keys(default_params, seed2)
    sk3, pk3, _ = BlsCryptoSignerIndyCrypto.generate_keys(default_params, seed3)
    sk4, pk4, _ = BlsCryptoSignerIndyCrypto.generate_keys(default_params, seed4)
    assert sk1 != sk2 != sk3 != sk4
    assert pk1 != pk2 != pk3 != pk4
Пример #4
0
def test_generate_keys_no_seed(default_params):
    sk, pk = BlsCryptoSignerIndyCrypto.generate_keys(default_params)
    assert sk
    assert isinstance(sk, str)
    assert pk
    assert isinstance(pk, str)
    assert sk != pk
Пример #5
0
def test_generate_keys_bytes_seed(default_params, seed):
    seed = seed.encode()
    sk, pk = BlsCryptoSignerIndyCrypto.generate_keys(default_params, seed)
    assert sk
    assert isinstance(sk, str)
    assert pk
    assert isinstance(pk, str)
    assert sk != pk
def test_generate_keys_str_seed(default_params, seed, bls_verifier):
    sk, pk, key_proof = BlsCryptoSignerIndyCrypto.generate_keys(default_params, seed)
    assert sk
    assert isinstance(sk, str)
    assert pk
    assert isinstance(pk, str)
    assert sk != pk
    assert bls_verifier.verify_key_proof_of_possession(key_proof, pk)
Пример #7
0
def test_generate_keys_str_seed_32bit(default_params):
    seed = 'Seed' + '0' * (32 - len('Seed'))
    sk, pk = BlsCryptoSignerIndyCrypto.generate_keys(default_params, seed)
    assert sk
    assert isinstance(sk, str)
    assert pk
    assert isinstance(pk, str)
    assert sk != pk
Пример #8
0
def test_generate_keys_bytes_seed_48bit(default_params):
    seed = 'Seed' + '0' * (48 - len('Seed'))
    seed = seed.encode()
    sk, pk = BlsCryptoSignerIndyCrypto.generate_keys(default_params, seed)
    assert sk
    assert isinstance(sk, str)
    assert pk
    assert isinstance(pk, str)
    assert sk != pk
Пример #9
0
def test_generate_keys_str_seed(default_params, seed, bls_verifier):
    sk, pk, key_proof = BlsCryptoSignerIndyCrypto.generate_keys(
        default_params, seed)
    assert sk
    assert isinstance(sk, str)
    assert pk
    assert isinstance(pk, str)
    assert sk != pk
    assert bls_verifier.verify_key_proof_of_possession(key_proof, pk)
Пример #10
0
 def _create_bls_crypto_signer(self, sk: str, pk: str,
                               group_params: GroupParams):
     sk_bls = IndyCryptoBlsUtils.bls_from_str(sk,
                                              cls=SignKey)  # type: SignKey
     pk_bls = IndyCryptoBlsUtils.bls_from_str(pk,
                                              cls=VerKey)  # type: VerKey
     return BlsCryptoSignerIndyCrypto(sk=sk_bls,
                                      pk=pk_bls,
                                      params=group_params)
Пример #11
0
def test_generate_keys_no_seed(default_params, bls_verifier):
    sk, pk, key_proof = BlsCryptoSignerIndyCrypto.generate_keys(default_params)
    assert sk
    assert isinstance(sk, SignKey)
    assert pk
    assert isinstance(pk, VerKey)
    assert key_proof
    assert isinstance(key_proof, ProofOfPossession)
    assert sk != pk
    assert bls_verifier.verify_key_proof_of_possession(key_proof, pk)
def test_generate_keys_str_seed_32bit_for_nodes(default_params):
    seeds = []
    nodes_count = 4
    for i in range(1, nodes_count + 1):
        name = "Node" + str(i)
        seed = ('0' * (32 - len(name)) + name)
        seeds.append(seed)

    pks = set()
    for i in range(nodes_count):
        sk, pk, _ = BlsCryptoSignerIndyCrypto.generate_keys(default_params, seeds[i])
        pks.add(pk)

    assert len(pks) == nodes_count
def test_generate_keys_str_seed_32bit_for_nodes(default_params):
    seeds = []
    nodes_count = 4
    for i in range(1, nodes_count + 1):
        name = "Node" + str(i)
        seed = ('0' * (32 - len(name)) + name)
        seeds.append(seed)

    pks = set()
    for i in range(nodes_count):
        sk, pk, _ = BlsCryptoSignerIndyCrypto.generate_keys(default_params, seeds[i])
        pks.add(pk)
        print(pk)

    assert len(pks) == nodes_count
Пример #14
0
def bls_signer2(keys2, default_params):
    sk, vk, key_proof = keys2
    return BlsCryptoSignerIndyCrypto(sk, vk, default_params)
Пример #15
0
def keys2(default_params):
    return BlsCryptoSignerIndyCrypto.generate_keys(default_params)
Пример #16
0
 def _create_bls_crypto_signer(self, sk, pk, group_params):
     return BlsCryptoSignerIndyCrypto(sk=sk, pk=pk, params=group_params)
def test_verify_incorrect_keys(default_params, seed, bls_verifier):
    seed = seed.encode()
    sk, pk, key_proof = BlsCryptoSignerIndyCrypto.generate_keys(default_params, seed)
    key_proof = key_proof.upper()
    assert not bls_verifier.verify_key_proof_of_possession(key_proof, pk)
def test_generate_keys_with_incorrect_seed(default_params):
    seed_len = 40
    incorrect_seed = 'Seed' + '0' * (seed_len - len('Seed'))
    with pytest.raises(IndyCryptoError) as e:
        BlsCryptoSignerIndyCrypto.generate_keys(default_params, incorrect_seed)
        assert e.error_code == ErrorCode.CommonInvalidStructure
Пример #19
0
def test_generate_keys_with_incorrect_seed(default_params):
    seed_len = 40
    incorrect_seed = 'Seed' + '0' * (seed_len - len('Seed'))
    with pytest.raises(IndyCryptoError) as e:
        BlsCryptoSignerIndyCrypto.generate_keys(default_params, incorrect_seed)
        assert e.error_code == ErrorCode.CommonInvalidStructure
Пример #20
0
def bls_signer2(keys2, default_params):
    return BlsCryptoSignerIndyCrypto(*keys2, default_params)
Пример #21
0
def test_verify_incorrect_keys(default_params, seed, bls_verifier):
    seed = seed.encode()
    sk, pk, _ = BlsCryptoSignerIndyCrypto.generate_keys(default_params, seed)
    _, _, key_proof = BlsCryptoSignerIndyCrypto.generate_keys(
        default_params, "1" * len(seed))
    assert not bls_verifier.verify_key_proof_of_possession(key_proof, pk)
def keys2(default_params):
    return BlsCryptoSignerIndyCrypto.generate_keys(default_params)