def pre_prepare_incorrect(state_root, request): if request.param == 'state_root': params = create_pre_prepare_params(state_root=generate_state_root()) elif request.param == 'ledger_id': params = create_pre_prepare_params(state_root=state_root, ledger_id=DOMAIN_LEDGER_ID) elif request.param == 'timestamp': params = create_pre_prepare_params(state_root=state_root, timestamp=get_utc_epoch() + 1000) elif request.param == 'txn_root': params = create_pre_prepare_params(state_root=state_root, txn_root=generate_state_root()) return PrePrepare(*params)
def pre_prepare_incorrect(state_root, request): if request.param == 'state_root': params = create_pre_prepare_params(state_root=generate_state_root()) elif request.param == 'ledger_id': params = create_pre_prepare_params(state_root=state_root, ledger_id=DOMAIN_LEDGER_ID) elif request.param == 'timestamp': params = create_pre_prepare_params(state_root=state_root, timestamp=get_utc_epoch() + 1000) elif request.param == 'txn_root': params = create_pre_prepare_params(state_root=state_root, txn_root=generate_state_root()) return PrePrepare(*params)
def pre_prepare_with_incorrect_bls(multi_signature): multi_signature.signature = base58.b58encode( b"somefakesignaturesomefakesignaturesomefakesignature").decode("utf-8") params = create_pre_prepare_params( state_root=multi_signature.value.state_root_hash, bls_multi_sig=multi_signature) return PrePrepare(*params)
def pre_prepare_with_incorrect_bls_pool_ledger(multi_signature): multi_signature.signature = base58.b58encode(b"somefakesignaturesomefakesignaturesomefakesignature").decode("utf-8") params = create_pre_prepare_params(state_root=multi_signature.value.state_root_hash, pool_state_root=multi_signature.value.pool_state_root_hash, bls_multi_sig=multi_signature, ledger_id=POOL_LEDGER_ID) return PrePrepare(*params)
def pre_prepare_with_incorrect_bls_pool_ledger(multi_signature): multi_signature.signature = base58.b58encode( b"somefakesignaturesomefakesignaturesomefakesignature") params = create_pre_prepare_params( state_root=multi_signature.value.state_root_hash, bls_multi_sig=multi_signature, ledger_id=POOL_LEDGER_ID) return PrePrepare(*params)
def test_update_pre_prepare_after_ordered(bls_bft_replicas, state_root, quorums): key = (0, 0) process_commits_for_key(key, state_root, bls_bft_replicas) process_ordered(key, bls_bft_replicas, state_root, quorums) params = create_pre_prepare_params(state_root) params_initial = copy(params) for bls_bft_replica in bls_bft_replicas: params = bls_bft_replica.update_pre_prepare(params, DOMAIN_LEDGER_ID) assert params != params_initial
def test_update_pre_prepare_after_ordered(bls_bft_replicas, state_root, fake_multi_sig): for bls_bft_replica in bls_bft_replicas: bls_bft_replica._bls_latest_multi_sig = fake_multi_sig params = create_pre_prepare_params(state_root) params_initial = copy(params) for bls_bft_replica in bls_bft_replicas: params = bls_bft_replica.update_pre_prepare(params, DOMAIN_LEDGER_ID) assert params != params_initial
def pre_prepare(replica, pool_state_root, fake_state_root_hash, fake_multi_sig, request): params = create_pre_prepare_params(state_root=fake_state_root_hash, view_no=replica.viewNo, pool_state_root=pool_state_root) pp = PrePrepare(*params) if request.param: setattr(pre_prepare, f.BLS_MULTI_SIG.nm, fake_multi_sig) return pp
def test_update_pre_prepare_after_ordered(bls_bft_replicas, state_root, fake_multi_sig): for bls_bft_replica in bls_bft_replicas: bls_bft_replica._bls_latest_multi_sig = fake_multi_sig params = create_pre_prepare_params(state_root) params_initial = copy(params) for bls_bft_replica in bls_bft_replicas: params = bls_bft_replica.update_pre_prepare(params, DOMAIN_LEDGER_ID) assert params != params_initial
def test_validate_commit_signature_without_pool_state_root(bls_bft_replicas, multi_signature): key = (0, 0) params = create_pre_prepare_params(state_root=multi_signature.value.state_root_hash) pre_prepare = PrePrepare(*params) setattr(pre_prepare, f.BLS_MULTI_SIG.nm, multi_signature) for sender_bls_bft in bls_bft_replicas: commit = create_commit_bls_sig(sender_bls_bft, key, pre_prepare) for verifier_bls_bft in bls_bft_replicas: assert verifier_bls_bft.validate_commit(commit, sender_bls_bft.node_id, pre_prepare) is None
def pre_prepare_no_bls(state_root, pool_state_root): params = create_pre_prepare_params(state_root=state_root, pool_state_root=pool_state_root) return PrePrepare(*params)
def test_update_pre_prepare_first_time(bls_bft_replicas, state_root): params = create_pre_prepare_params(state_root) params_initial = copy(params) for bls_bft_replica in bls_bft_replicas: params = bls_bft_replica.update_pre_prepare(params, DOMAIN_LEDGER_ID) assert params == params_initial
def test_update_pre_prepare_first_time(bls_bft_replicas, state_root): params = create_pre_prepare_params(state_root) params_initial = copy(params) for bls_bft_replica in bls_bft_replicas: params = bls_bft_replica.update_pre_prepare(params, DOMAIN_LEDGER_ID) assert params == params_initial
def pre_prepare_no_bls(state_root): params = create_pre_prepare_params(state_root=state_root) return PrePrepare(*params)
def pre_prepare_with_bls_pool_ledger(multi_signature): params = create_pre_prepare_params( state_root=multi_signature.value.state_root_hash, bls_multi_sig=multi_signature, ledger_id=POOL_LEDGER_ID) return PrePrepare(*params)
def pre_prepare_with_bls_pool_ledger(multi_signature): params = create_pre_prepare_params(state_root=multi_signature.value.state_root_hash, pool_state_root=multi_signature.value.pool_state_root_hash, bls_multi_sig=multi_signature, ledger_id=POOL_LEDGER_ID) return PrePrepare(*params)
def pre_prepare_with_bls(multi_signature): params = create_pre_prepare_params(state_root=multi_signature.value.state_root_hash, pool_state_root=multi_signature.value.pool_state_root_hash, bls_multi_sig=multi_signature) return PrePrepare(*params)
def test_update_pre_prepare_after_ordered_pool_ledger(bls_bft_replicas, state_root): params = create_pre_prepare_params(state_root) params_initial = copy(params) for bls_bft_replica in bls_bft_replicas: params = bls_bft_replica.update_pre_prepare(params, POOL_LEDGER_ID) assert params == params_initial
def fake_pre_prepare_with_bls_pool_ledger(fake_multi_sig): params = create_pre_prepare_params( state_root=fake_multi_sig.value.state_root_hash, bls_multi_sig=fake_multi_sig, ledger_id=POOL_LEDGER_ID) return PrePrepare(*params)
def fake_pre_prepare_with_bls(fake_multi_sig): params = create_pre_prepare_params( state_root=fake_multi_sig.value.state_root_hash, bls_multi_sig=fake_multi_sig) return PrePrepare(*params)
def fake_pre_prepare_with_bls(fake_multi_sig): params = create_pre_prepare_params(state_root=fake_multi_sig.value.state_root_hash, pool_state_root=fake_multi_sig.value.pool_state_root_hash, bls_multi_sig=fake_multi_sig) return PrePrepare(*params)
def pre_prepare_with_bls(multi_signature): params = create_pre_prepare_params( state_root=multi_signature.value.state_root_hash, bls_multi_sig=multi_signature) return PrePrepare(*params)
def fake_pre_prepare_with_bls_pool_ledger(fake_multi_sig): params = create_pre_prepare_params(state_root=fake_multi_sig.value.state_root_hash, pool_state_root=fake_multi_sig.value.pool_state_root_hash, bls_multi_sig=fake_multi_sig, ledger_id=POOL_LEDGER_ID) return PrePrepare(*params)