Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix validator raw hash #326

Merged
merged 33 commits into from
Oct 13, 2022
Merged

fix validator raw hash #326

merged 33 commits into from
Oct 13, 2022

Conversation

tzemanovic
Copy link
Member

moved from anoma/anoma#1246

based on #325

closes #200

Gianmarco Fraccaroli and others added 28 commits August 4, 2022 16:45
* tomas/update-bin-names:
  cli: update binary names dispatch for namada
  [ci] docker use rust:1.61.0
  update wasm checksums
  [ci] run specific step in docker container
* tomas/update-changelog-config:
  update the changelog config to namada repo
* tomas/e2e-fix-cmd-assert:
  changelog: add #247
  test/e2e: update assert_success/failure to first consume output
* tomas/remove-abci:
  [ci] wasm checksums update
  ledger: debug log some ABCI++ requests
  ledger: make prepare_proposal and process_proposal stateless
  ledger: refactor tx_queue
  scripts/get_tendermint: update for ABCI++ temp fork release
  test/e2e/ledger: enable ignored tests for ABCI++ workaround
  shell: process transaction when `ProcessProposal` hasn't (non-validator)
  make: remove "*-abci-plus-plus"
  all: remove "ABCI" conditional compilation
  deps: remove ABCI dependencies, use ABCI++ as default
* fraccaman+tomas/ci-e2e-validator-logs:
  [ci] improve e2e log upload to add validator logs
* tomas/expectrl-switch-from-fork:
  changelog: add #1142
  switch from a fork to expectrl v0.5.2
@tzemanovic tzemanovic marked this pull request as ready for review August 12, 2022 07:27
tzemanovic added a commit that referenced this pull request Aug 21, 2022
* tomas/fix-validator-raw-hash:
  update wasm checksums
  client/utils: switch off validator's p2p addr strict mode in localhost
  test/e2e: add test for double signing slashing
  shell: fix slashing log msg
  ledger/shell: fix validator look-up from tm raw hash
  tests/PoS: fix the validator's raw hash to correspond to consensus key
  PoS: fix the validator's raw hash to correspond to consensus key
  tendermint: fix address written to TM to correspond to consensus key
tzemanovic added a commit that referenced this pull request Aug 21, 2022
tzemanovic added a commit that referenced this pull request Aug 21, 2022
- Updated tx_prelude proof_of_stake module for validator raw hash fix
- Updated `key::tm_consensus_key_raw_hash` to handle secp256k1
- Updated `e2e::ledger_tests::double_signing_gets_slashed` key type passed to `write_tendermint_node_key`

* tomas/fix-validator-raw-hash:
  update wasm checksums
  client/utils: switch off validator's p2p addr strict mode in localhost
  test/e2e: add test for double signing slashing
  shell: fix slashing log msg
  ledger/shell: fix validator look-up from tm raw hash
  tests/PoS: fix the validator's raw hash to correspond to consensus key
  PoS: fix the validator's raw hash to correspond to consensus key
  tendermint: fix address written to TM to correspond to consensus key
@tzemanovic
Copy link
Member Author

tzemanovic commented Aug 22, 2022

there was one more issue with the changes - the validation was still using the raw hash derived from address instead of consensus key - fixed in 9b78a0b

@tzemanovic tzemanovic force-pushed the tomas/fix-validator-raw-hash branch 2 times, most recently from cc27333 to 9b78a0b Compare August 22, 2022 08:33
tzemanovic added a commit that referenced this pull request Aug 24, 2022
- Updated tx_bond, tx_unbond and tx_withdraw and their tests to the new
  tx API

* tomas/fix-validator-raw-hash:
  update wasm checksums
  pos: update validator raw hash validation
  changelog: add #326
  client/utils: switch off validator's p2p addr strict mode in localhost
  test/e2e: add test for double signing slashing
  shell: fix slashing log msg
  ledger/shell: fix validator look-up from tm raw hash
  tests/PoS: fix the validator's raw hash to correspond to consensus key
  PoS: fix the validator's raw hash to correspond to consensus key
  tendermint: fix address written to TM to correspond to consensus key
@tzemanovic tzemanovic mentioned this pull request Aug 24, 2022
tzemanovic added a commit that referenced this pull request Sep 23, 2022
- Updated tx_bond, tx_unbond and tx_withdraw and their tests to the new
  tx API

* tomas/fix-validator-raw-hash:
  update wasm checksums
  pos: update validator raw hash validation
  changelog: add #326
  client/utils: switch off validator's p2p addr strict mode in localhost
  test/e2e: add test for double signing slashing
  shell: fix slashing log msg
  ledger/shell: fix validator look-up from tm raw hash
  tests/PoS: fix the validator's raw hash to correspond to consensus key
  PoS: fix the validator's raw hash to correspond to consensus key
  tendermint: fix address written to TM to correspond to consensus key
tzemanovic added a commit that referenced this pull request Sep 23, 2022
- Updated PosActions impl moved from vm_env into tx_prelude

* tomas/fix-validator-raw-hash:
  update wasm checksums
  pos: update validator raw hash validation
  changelog: add #326
  client/utils: switch off validator's p2p addr strict mode in localhost
  test/e2e: add test for double signing slashing
  shell: fix slashing log msg
  ledger/shell: fix validator look-up from tm raw hash
  tests/PoS: fix the validator's raw hash to correspond to consensus key
  PoS: fix the validator's raw hash to correspond to consensus key
  tendermint: fix address written to TM to correspond to consensus key
juped added a commit that referenced this pull request Sep 29, 2022
* draft: (394 commits)
  Revert "Update getting-started.md"
  Update getting-started.md
  changelog: add #442
  rustdoc: fix outdated links
  make build-doc: only build rustdoc in this command
  [ci] remove drone
  ci: double the build-and-test timeout
  [ci] download masp paramters
  [ci] improve automation tool, add pls spawn devnet command
  [ci] added dev documentation build, added rust doc build
  I removed the limitation.
  I removed the limitation.
  encoding_spec: rm ":" from fragment links in e.g. `ed25519::PublicKey`
  docs/dev: update encoding spec generation
  update wasm checksums
  changelog: add #380
  changelog: add #384
  shared/storage: fix the height recorded for a new epoch
  shared: Add pre/post to VpEnv and use them to provide default impls
  changelog: add #1249
  test/ledger: update last_epoch assertion
  ledger: fix last_epoch to only change when committing block
  changelog: add #337
  Specify --target-dir when building wasms
  changelog: add #335
  wasm checksums update
  test/vm_host_env: refactor prefix iter tests with new `iter_prefix` fn
  storage_api: build a nicer `iter_prefix` function on top of StorageRead
  changelog: add #334
  wasm checksums update
  storage_api: add default borsh encoded read/write impl and handle errors
  update wasm checksums
  pos: update validator raw hash validation
  changelog: add #326
  changelog: add #331
  changelog: add #324
  changelog: add #318
  update wasm checksums
  fix missing StorageWrite for Storage merkle tree update
  storage: remove unnecessary clone
  add more comments for StorageRead lifetime with an example usage
  add <'iter> lifetime to StorageRead trait to get around lack of GATs
  ledger: impl StorageWrite for Storage
  ledger: factor out TxEnv write methods into a new StorageWrite trait
  [fix] use fetch-depth: 0 on tag pipeline
  Namada 0.7.1
  fix spelling of 'features' in Cargo.toml
  realign cargo/wasm integrity
  changelog: add #278
  test: allow to sign and verify secp256k1
  client: add check on validator consensus key
  shared: optional secp256k1 signing and verification to avoid wasm bloat
  pick scheme for generating validator keys
  must use ed25519 for validator consensus key and node ID
  update rustdoc on PKH
  make fmt
  deps: enable secp256k1 in tendermint-rs
  handle secp256k1 in key_to_tendermint()
  fmt && clippy
  use heliaxdev/libsecp256k1 crate fork as dependency for now
  release: update release.toml for namada repo
  new test for zeroizing secp256k1 keys
  wrap libsecp256k1::SecretKey in a Box within SecretKey struct
  add a test to zeroize secp256k1
  fix bug in supplying args to test_genesis_validators()
  make validator_key_to_json() compatible with ed25519 and secp256k1 keys
  fix bug to prevent generating keys with common SchemeType
  fix bug where we were generating a key with common scheme
  make fmt
  fix unit test test_toml_roundtrip to supply good validator keys
  e2e test_genesis_validators(): make each validator have different key scheme
  fix some comments
  fix bug in supplying keypair to Tendermint
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  update wasm checksums
  remove Result layering for id_from_pk
  drop 'Consensus' from SchemeType enum variants
  incorporate options into key generation functions
  command line options for specifying key scheme
  initial commit for supporting secp256k1 keys
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  ledger/pos: implement PosReadOnly using StorageRead trait
  ledger/tx: inherit StorageRead in TxEnv
  ledger/storage: impl StorageRead for Storage
  ledger/vp: impl StorageRead for WASM VPs pre and post state
  ledger/native_vp: implement StorageRead for pre and post state
  ledger: add StorageRead trait with extensible error type
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  pos: fix bond zero amount error msg
  pos/validation: refactor accumulation of changes
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  remove Result layering for id_from_pk
  ...
juped added a commit that referenced this pull request Oct 4, 2022
* draft: (394 commits)
  Revert "Update getting-started.md"
  Update getting-started.md
  changelog: add #442
  rustdoc: fix outdated links
  make build-doc: only build rustdoc in this command
  [ci] remove drone
  ci: double the build-and-test timeout
  [ci] download masp paramters
  [ci] improve automation tool, add pls spawn devnet command
  [ci] added dev documentation build, added rust doc build
  I removed the limitation.
  I removed the limitation.
  encoding_spec: rm ":" from fragment links in e.g. `ed25519::PublicKey`
  docs/dev: update encoding spec generation
  update wasm checksums
  changelog: add #380
  changelog: add #384
  shared/storage: fix the height recorded for a new epoch
  shared: Add pre/post to VpEnv and use them to provide default impls
  changelog: add #1249
  test/ledger: update last_epoch assertion
  ledger: fix last_epoch to only change when committing block
  changelog: add #337
  Specify --target-dir when building wasms
  changelog: add #335
  wasm checksums update
  test/vm_host_env: refactor prefix iter tests with new `iter_prefix` fn
  storage_api: build a nicer `iter_prefix` function on top of StorageRead
  changelog: add #334
  wasm checksums update
  storage_api: add default borsh encoded read/write impl and handle errors
  update wasm checksums
  pos: update validator raw hash validation
  changelog: add #326
  changelog: add #331
  changelog: add #324
  changelog: add #318
  update wasm checksums
  fix missing StorageWrite for Storage merkle tree update
  storage: remove unnecessary clone
  add more comments for StorageRead lifetime with an example usage
  add <'iter> lifetime to StorageRead trait to get around lack of GATs
  ledger: impl StorageWrite for Storage
  ledger: factor out TxEnv write methods into a new StorageWrite trait
  [fix] use fetch-depth: 0 on tag pipeline
  Namada 0.7.1
  fix spelling of 'features' in Cargo.toml
  realign cargo/wasm integrity
  changelog: add #278
  test: allow to sign and verify secp256k1
  client: add check on validator consensus key
  shared: optional secp256k1 signing and verification to avoid wasm bloat
  pick scheme for generating validator keys
  must use ed25519 for validator consensus key and node ID
  update rustdoc on PKH
  make fmt
  deps: enable secp256k1 in tendermint-rs
  handle secp256k1 in key_to_tendermint()
  fmt && clippy
  use heliaxdev/libsecp256k1 crate fork as dependency for now
  release: update release.toml for namada repo
  new test for zeroizing secp256k1 keys
  wrap libsecp256k1::SecretKey in a Box within SecretKey struct
  add a test to zeroize secp256k1
  fix bug in supplying args to test_genesis_validators()
  make validator_key_to_json() compatible with ed25519 and secp256k1 keys
  fix bug to prevent generating keys with common SchemeType
  fix bug where we were generating a key with common scheme
  make fmt
  fix unit test test_toml_roundtrip to supply good validator keys
  e2e test_genesis_validators(): make each validator have different key scheme
  fix some comments
  fix bug in supplying keypair to Tendermint
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  update wasm checksums
  remove Result layering for id_from_pk
  drop 'Consensus' from SchemeType enum variants
  incorporate options into key generation functions
  command line options for specifying key scheme
  initial commit for supporting secp256k1 keys
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  ledger/pos: implement PosReadOnly using StorageRead trait
  ledger/tx: inherit StorageRead in TxEnv
  ledger/storage: impl StorageRead for Storage
  ledger/vp: impl StorageRead for WASM VPs pre and post state
  ledger/native_vp: implement StorageRead for pre and post state
  ledger: add StorageRead trait with extensible error type
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  pos: fix bond zero amount error msg
  pos/validation: refactor accumulation of changes
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  remove Result layering for id_from_pk
  ...
juped added a commit that referenced this pull request Oct 4, 2022
* draft: (394 commits)
  Revert "Update getting-started.md"
  Update getting-started.md
  changelog: add #442
  rustdoc: fix outdated links
  make build-doc: only build rustdoc in this command
  [ci] remove drone
  ci: double the build-and-test timeout
  [ci] download masp paramters
  [ci] improve automation tool, add pls spawn devnet command
  [ci] added dev documentation build, added rust doc build
  I removed the limitation.
  I removed the limitation.
  encoding_spec: rm ":" from fragment links in e.g. `ed25519::PublicKey`
  docs/dev: update encoding spec generation
  update wasm checksums
  changelog: add #380
  changelog: add #384
  shared/storage: fix the height recorded for a new epoch
  shared: Add pre/post to VpEnv and use them to provide default impls
  changelog: add #1249
  test/ledger: update last_epoch assertion
  ledger: fix last_epoch to only change when committing block
  changelog: add #337
  Specify --target-dir when building wasms
  changelog: add #335
  wasm checksums update
  test/vm_host_env: refactor prefix iter tests with new `iter_prefix` fn
  storage_api: build a nicer `iter_prefix` function on top of StorageRead
  changelog: add #334
  wasm checksums update
  storage_api: add default borsh encoded read/write impl and handle errors
  update wasm checksums
  pos: update validator raw hash validation
  changelog: add #326
  changelog: add #331
  changelog: add #324
  changelog: add #318
  update wasm checksums
  fix missing StorageWrite for Storage merkle tree update
  storage: remove unnecessary clone
  add more comments for StorageRead lifetime with an example usage
  add <'iter> lifetime to StorageRead trait to get around lack of GATs
  ledger: impl StorageWrite for Storage
  ledger: factor out TxEnv write methods into a new StorageWrite trait
  [fix] use fetch-depth: 0 on tag pipeline
  Namada 0.7.1
  fix spelling of 'features' in Cargo.toml
  realign cargo/wasm integrity
  changelog: add #278
  test: allow to sign and verify secp256k1
  client: add check on validator consensus key
  shared: optional secp256k1 signing and verification to avoid wasm bloat
  pick scheme for generating validator keys
  must use ed25519 for validator consensus key and node ID
  update rustdoc on PKH
  make fmt
  deps: enable secp256k1 in tendermint-rs
  handle secp256k1 in key_to_tendermint()
  fmt && clippy
  use heliaxdev/libsecp256k1 crate fork as dependency for now
  release: update release.toml for namada repo
  new test for zeroizing secp256k1 keys
  wrap libsecp256k1::SecretKey in a Box within SecretKey struct
  add a test to zeroize secp256k1
  fix bug in supplying args to test_genesis_validators()
  make validator_key_to_json() compatible with ed25519 and secp256k1 keys
  fix bug to prevent generating keys with common SchemeType
  fix bug where we were generating a key with common scheme
  make fmt
  fix unit test test_toml_roundtrip to supply good validator keys
  e2e test_genesis_validators(): make each validator have different key scheme
  fix some comments
  fix bug in supplying keypair to Tendermint
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  update wasm checksums
  remove Result layering for id_from_pk
  drop 'Consensus' from SchemeType enum variants
  incorporate options into key generation functions
  command line options for specifying key scheme
  initial commit for supporting secp256k1 keys
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  ledger/pos: implement PosReadOnly using StorageRead trait
  ledger/tx: inherit StorageRead in TxEnv
  ledger/storage: impl StorageRead for Storage
  ledger/vp: impl StorageRead for WASM VPs pre and post state
  ledger/native_vp: implement StorageRead for pre and post state
  ledger: add StorageRead trait with extensible error type
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  pos: fix bond zero amount error msg
  pos/validation: refactor accumulation of changes
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  remove Result layering for id_from_pk
  ...
juped added a commit that referenced this pull request Oct 4, 2022
* draft: (394 commits)
  Revert "Update getting-started.md"
  Update getting-started.md
  changelog: add #442
  rustdoc: fix outdated links
  make build-doc: only build rustdoc in this command
  [ci] remove drone
  ci: double the build-and-test timeout
  [ci] download masp paramters
  [ci] improve automation tool, add pls spawn devnet command
  [ci] added dev documentation build, added rust doc build
  I removed the limitation.
  I removed the limitation.
  encoding_spec: rm ":" from fragment links in e.g. `ed25519::PublicKey`
  docs/dev: update encoding spec generation
  update wasm checksums
  changelog: add #380
  changelog: add #384
  shared/storage: fix the height recorded for a new epoch
  shared: Add pre/post to VpEnv and use them to provide default impls
  changelog: add #1249
  test/ledger: update last_epoch assertion
  ledger: fix last_epoch to only change when committing block
  changelog: add #337
  Specify --target-dir when building wasms
  changelog: add #335
  wasm checksums update
  test/vm_host_env: refactor prefix iter tests with new `iter_prefix` fn
  storage_api: build a nicer `iter_prefix` function on top of StorageRead
  changelog: add #334
  wasm checksums update
  storage_api: add default borsh encoded read/write impl and handle errors
  update wasm checksums
  pos: update validator raw hash validation
  changelog: add #326
  changelog: add #331
  changelog: add #324
  changelog: add #318
  update wasm checksums
  fix missing StorageWrite for Storage merkle tree update
  storage: remove unnecessary clone
  add more comments for StorageRead lifetime with an example usage
  add <'iter> lifetime to StorageRead trait to get around lack of GATs
  ledger: impl StorageWrite for Storage
  ledger: factor out TxEnv write methods into a new StorageWrite trait
  [fix] use fetch-depth: 0 on tag pipeline
  Namada 0.7.1
  fix spelling of 'features' in Cargo.toml
  realign cargo/wasm integrity
  changelog: add #278
  test: allow to sign and verify secp256k1
  client: add check on validator consensus key
  shared: optional secp256k1 signing and verification to avoid wasm bloat
  pick scheme for generating validator keys
  must use ed25519 for validator consensus key and node ID
  update rustdoc on PKH
  make fmt
  deps: enable secp256k1 in tendermint-rs
  handle secp256k1 in key_to_tendermint()
  fmt && clippy
  use heliaxdev/libsecp256k1 crate fork as dependency for now
  release: update release.toml for namada repo
  new test for zeroizing secp256k1 keys
  wrap libsecp256k1::SecretKey in a Box within SecretKey struct
  add a test to zeroize secp256k1
  fix bug in supplying args to test_genesis_validators()
  make validator_key_to_json() compatible with ed25519 and secp256k1 keys
  fix bug to prevent generating keys with common SchemeType
  fix bug where we were generating a key with common scheme
  make fmt
  fix unit test test_toml_roundtrip to supply good validator keys
  e2e test_genesis_validators(): make each validator have different key scheme
  fix some comments
  fix bug in supplying keypair to Tendermint
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  update wasm checksums
  remove Result layering for id_from_pk
  drop 'Consensus' from SchemeType enum variants
  incorporate options into key generation functions
  command line options for specifying key scheme
  initial commit for supporting secp256k1 keys
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  ledger/pos: implement PosReadOnly using StorageRead trait
  ledger/tx: inherit StorageRead in TxEnv
  ledger/storage: impl StorageRead for Storage
  ledger/vp: impl StorageRead for WASM VPs pre and post state
  ledger/native_vp: implement StorageRead for pre and post state
  ledger: add StorageRead trait with extensible error type
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  pos: fix bond zero amount error msg
  pos/validation: refactor accumulation of changes
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  remove Result layering for id_from_pk
  ...
juped added a commit that referenced this pull request Oct 6, 2022
* draft: (394 commits)
  Revert "Update getting-started.md"
  Update getting-started.md
  changelog: add #442
  rustdoc: fix outdated links
  make build-doc: only build rustdoc in this command
  [ci] remove drone
  ci: double the build-and-test timeout
  [ci] download masp paramters
  [ci] improve automation tool, add pls spawn devnet command
  [ci] added dev documentation build, added rust doc build
  I removed the limitation.
  I removed the limitation.
  encoding_spec: rm ":" from fragment links in e.g. `ed25519::PublicKey`
  docs/dev: update encoding spec generation
  update wasm checksums
  changelog: add #380
  changelog: add #384
  shared/storage: fix the height recorded for a new epoch
  shared: Add pre/post to VpEnv and use them to provide default impls
  changelog: add #1249
  test/ledger: update last_epoch assertion
  ledger: fix last_epoch to only change when committing block
  changelog: add #337
  Specify --target-dir when building wasms
  changelog: add #335
  wasm checksums update
  test/vm_host_env: refactor prefix iter tests with new `iter_prefix` fn
  storage_api: build a nicer `iter_prefix` function on top of StorageRead
  changelog: add #334
  wasm checksums update
  storage_api: add default borsh encoded read/write impl and handle errors
  update wasm checksums
  pos: update validator raw hash validation
  changelog: add #326
  changelog: add #331
  changelog: add #324
  changelog: add #318
  update wasm checksums
  fix missing StorageWrite for Storage merkle tree update
  storage: remove unnecessary clone
  add more comments for StorageRead lifetime with an example usage
  add <'iter> lifetime to StorageRead trait to get around lack of GATs
  ledger: impl StorageWrite for Storage
  ledger: factor out TxEnv write methods into a new StorageWrite trait
  [fix] use fetch-depth: 0 on tag pipeline
  Namada 0.7.1
  fix spelling of 'features' in Cargo.toml
  realign cargo/wasm integrity
  changelog: add #278
  test: allow to sign and verify secp256k1
  client: add check on validator consensus key
  shared: optional secp256k1 signing and verification to avoid wasm bloat
  pick scheme for generating validator keys
  must use ed25519 for validator consensus key and node ID
  update rustdoc on PKH
  make fmt
  deps: enable secp256k1 in tendermint-rs
  handle secp256k1 in key_to_tendermint()
  fmt && clippy
  use heliaxdev/libsecp256k1 crate fork as dependency for now
  release: update release.toml for namada repo
  new test for zeroizing secp256k1 keys
  wrap libsecp256k1::SecretKey in a Box within SecretKey struct
  add a test to zeroize secp256k1
  fix bug in supplying args to test_genesis_validators()
  make validator_key_to_json() compatible with ed25519 and secp256k1 keys
  fix bug to prevent generating keys with common SchemeType
  fix bug where we were generating a key with common scheme
  make fmt
  fix unit test test_toml_roundtrip to supply good validator keys
  e2e test_genesis_validators(): make each validator have different key scheme
  fix some comments
  fix bug in supplying keypair to Tendermint
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  update wasm checksums
  remove Result layering for id_from_pk
  drop 'Consensus' from SchemeType enum variants
  incorporate options into key generation functions
  command line options for specifying key scheme
  initial commit for supporting secp256k1 keys
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  ledger/pos: implement PosReadOnly using StorageRead trait
  ledger/tx: inherit StorageRead in TxEnv
  ledger/storage: impl StorageRead for Storage
  ledger/vp: impl StorageRead for WASM VPs pre and post state
  ledger/native_vp: implement StorageRead for pre and post state
  ledger: add StorageRead trait with extensible error type
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  pos: fix bond zero amount error msg
  pos/validation: refactor accumulation of changes
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  remove Result layering for id_from_pk
  ...
juped added a commit that referenced this pull request Oct 6, 2022
* draft: (394 commits)
  Revert "Update getting-started.md"
  Update getting-started.md
  changelog: add #442
  rustdoc: fix outdated links
  make build-doc: only build rustdoc in this command
  [ci] remove drone
  ci: double the build-and-test timeout
  [ci] download masp paramters
  [ci] improve automation tool, add pls spawn devnet command
  [ci] added dev documentation build, added rust doc build
  I removed the limitation.
  I removed the limitation.
  encoding_spec: rm ":" from fragment links in e.g. `ed25519::PublicKey`
  docs/dev: update encoding spec generation
  update wasm checksums
  changelog: add #380
  changelog: add #384
  shared/storage: fix the height recorded for a new epoch
  shared: Add pre/post to VpEnv and use them to provide default impls
  changelog: add #1249
  test/ledger: update last_epoch assertion
  ledger: fix last_epoch to only change when committing block
  changelog: add #337
  Specify --target-dir when building wasms
  changelog: add #335
  wasm checksums update
  test/vm_host_env: refactor prefix iter tests with new `iter_prefix` fn
  storage_api: build a nicer `iter_prefix` function on top of StorageRead
  changelog: add #334
  wasm checksums update
  storage_api: add default borsh encoded read/write impl and handle errors
  update wasm checksums
  pos: update validator raw hash validation
  changelog: add #326
  changelog: add #331
  changelog: add #324
  changelog: add #318
  update wasm checksums
  fix missing StorageWrite for Storage merkle tree update
  storage: remove unnecessary clone
  add more comments for StorageRead lifetime with an example usage
  add <'iter> lifetime to StorageRead trait to get around lack of GATs
  ledger: impl StorageWrite for Storage
  ledger: factor out TxEnv write methods into a new StorageWrite trait
  [fix] use fetch-depth: 0 on tag pipeline
  Namada 0.7.1
  fix spelling of 'features' in Cargo.toml
  realign cargo/wasm integrity
  changelog: add #278
  test: allow to sign and verify secp256k1
  client: add check on validator consensus key
  shared: optional secp256k1 signing and verification to avoid wasm bloat
  pick scheme for generating validator keys
  must use ed25519 for validator consensus key and node ID
  update rustdoc on PKH
  make fmt
  deps: enable secp256k1 in tendermint-rs
  handle secp256k1 in key_to_tendermint()
  fmt && clippy
  use heliaxdev/libsecp256k1 crate fork as dependency for now
  release: update release.toml for namada repo
  new test for zeroizing secp256k1 keys
  wrap libsecp256k1::SecretKey in a Box within SecretKey struct
  add a test to zeroize secp256k1
  fix bug in supplying args to test_genesis_validators()
  make validator_key_to_json() compatible with ed25519 and secp256k1 keys
  fix bug to prevent generating keys with common SchemeType
  fix bug where we were generating a key with common scheme
  make fmt
  fix unit test test_toml_roundtrip to supply good validator keys
  e2e test_genesis_validators(): make each validator have different key scheme
  fix some comments
  fix bug in supplying keypair to Tendermint
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  update wasm checksums
  remove Result layering for id_from_pk
  drop 'Consensus' from SchemeType enum variants
  incorporate options into key generation functions
  command line options for specifying key scheme
  initial commit for supporting secp256k1 keys
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  ledger/pos: implement PosReadOnly using StorageRead trait
  ledger/tx: inherit StorageRead in TxEnv
  ledger/storage: impl StorageRead for Storage
  ledger/vp: impl StorageRead for WASM VPs pre and post state
  ledger/native_vp: implement StorageRead for pre and post state
  ledger: add StorageRead trait with extensible error type
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  pos: fix bond zero amount error msg
  pos/validation: refactor accumulation of changes
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  remove Result layering for id_from_pk
  ...
juped added a commit that referenced this pull request Oct 6, 2022
* draft: (394 commits)
  Revert "Update getting-started.md"
  Update getting-started.md
  changelog: add #442
  rustdoc: fix outdated links
  make build-doc: only build rustdoc in this command
  [ci] remove drone
  ci: double the build-and-test timeout
  [ci] download masp paramters
  [ci] improve automation tool, add pls spawn devnet command
  [ci] added dev documentation build, added rust doc build
  I removed the limitation.
  I removed the limitation.
  encoding_spec: rm ":" from fragment links in e.g. `ed25519::PublicKey`
  docs/dev: update encoding spec generation
  update wasm checksums
  changelog: add #380
  changelog: add #384
  shared/storage: fix the height recorded for a new epoch
  shared: Add pre/post to VpEnv and use them to provide default impls
  changelog: add #1249
  test/ledger: update last_epoch assertion
  ledger: fix last_epoch to only change when committing block
  changelog: add #337
  Specify --target-dir when building wasms
  changelog: add #335
  wasm checksums update
  test/vm_host_env: refactor prefix iter tests with new `iter_prefix` fn
  storage_api: build a nicer `iter_prefix` function on top of StorageRead
  changelog: add #334
  wasm checksums update
  storage_api: add default borsh encoded read/write impl and handle errors
  update wasm checksums
  pos: update validator raw hash validation
  changelog: add #326
  changelog: add #331
  changelog: add #324
  changelog: add #318
  update wasm checksums
  fix missing StorageWrite for Storage merkle tree update
  storage: remove unnecessary clone
  add more comments for StorageRead lifetime with an example usage
  add <'iter> lifetime to StorageRead trait to get around lack of GATs
  ledger: impl StorageWrite for Storage
  ledger: factor out TxEnv write methods into a new StorageWrite trait
  [fix] use fetch-depth: 0 on tag pipeline
  Namada 0.7.1
  fix spelling of 'features' in Cargo.toml
  realign cargo/wasm integrity
  changelog: add #278
  test: allow to sign and verify secp256k1
  client: add check on validator consensus key
  shared: optional secp256k1 signing and verification to avoid wasm bloat
  pick scheme for generating validator keys
  must use ed25519 for validator consensus key and node ID
  update rustdoc on PKH
  make fmt
  deps: enable secp256k1 in tendermint-rs
  handle secp256k1 in key_to_tendermint()
  fmt && clippy
  use heliaxdev/libsecp256k1 crate fork as dependency for now
  release: update release.toml for namada repo
  new test for zeroizing secp256k1 keys
  wrap libsecp256k1::SecretKey in a Box within SecretKey struct
  add a test to zeroize secp256k1
  fix bug in supplying args to test_genesis_validators()
  make validator_key_to_json() compatible with ed25519 and secp256k1 keys
  fix bug to prevent generating keys with common SchemeType
  fix bug where we were generating a key with common scheme
  make fmt
  fix unit test test_toml_roundtrip to supply good validator keys
  e2e test_genesis_validators(): make each validator have different key scheme
  fix some comments
  fix bug in supplying keypair to Tendermint
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  update wasm checksums
  remove Result layering for id_from_pk
  drop 'Consensus' from SchemeType enum variants
  incorporate options into key generation functions
  command line options for specifying key scheme
  initial commit for supporting secp256k1 keys
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  ledger/pos: implement PosReadOnly using StorageRead trait
  ledger/tx: inherit StorageRead in TxEnv
  ledger/storage: impl StorageRead for Storage
  ledger/vp: impl StorageRead for WASM VPs pre and post state
  ledger/native_vp: implement StorageRead for pre and post state
  ledger: add StorageRead trait with extensible error type
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  pos: fix bond zero amount error msg
  pos/validation: refactor accumulation of changes
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  remove Result layering for id_from_pk
  ...
juped added a commit that referenced this pull request Oct 6, 2022
* draft: (394 commits)
  Revert "Update getting-started.md"
  Update getting-started.md
  changelog: add #442
  rustdoc: fix outdated links
  make build-doc: only build rustdoc in this command
  [ci] remove drone
  ci: double the build-and-test timeout
  [ci] download masp paramters
  [ci] improve automation tool, add pls spawn devnet command
  [ci] added dev documentation build, added rust doc build
  I removed the limitation.
  I removed the limitation.
  encoding_spec: rm ":" from fragment links in e.g. `ed25519::PublicKey`
  docs/dev: update encoding spec generation
  update wasm checksums
  changelog: add #380
  changelog: add #384
  shared/storage: fix the height recorded for a new epoch
  shared: Add pre/post to VpEnv and use them to provide default impls
  changelog: add #1249
  test/ledger: update last_epoch assertion
  ledger: fix last_epoch to only change when committing block
  changelog: add #337
  Specify --target-dir when building wasms
  changelog: add #335
  wasm checksums update
  test/vm_host_env: refactor prefix iter tests with new `iter_prefix` fn
  storage_api: build a nicer `iter_prefix` function on top of StorageRead
  changelog: add #334
  wasm checksums update
  storage_api: add default borsh encoded read/write impl and handle errors
  update wasm checksums
  pos: update validator raw hash validation
  changelog: add #326
  changelog: add #331
  changelog: add #324
  changelog: add #318
  update wasm checksums
  fix missing StorageWrite for Storage merkle tree update
  storage: remove unnecessary clone
  add more comments for StorageRead lifetime with an example usage
  add <'iter> lifetime to StorageRead trait to get around lack of GATs
  ledger: impl StorageWrite for Storage
  ledger: factor out TxEnv write methods into a new StorageWrite trait
  [fix] use fetch-depth: 0 on tag pipeline
  Namada 0.7.1
  fix spelling of 'features' in Cargo.toml
  realign cargo/wasm integrity
  changelog: add #278
  test: allow to sign and verify secp256k1
  client: add check on validator consensus key
  shared: optional secp256k1 signing and verification to avoid wasm bloat
  pick scheme for generating validator keys
  must use ed25519 for validator consensus key and node ID
  update rustdoc on PKH
  make fmt
  deps: enable secp256k1 in tendermint-rs
  handle secp256k1 in key_to_tendermint()
  fmt && clippy
  use heliaxdev/libsecp256k1 crate fork as dependency for now
  release: update release.toml for namada repo
  new test for zeroizing secp256k1 keys
  wrap libsecp256k1::SecretKey in a Box within SecretKey struct
  add a test to zeroize secp256k1
  fix bug in supplying args to test_genesis_validators()
  make validator_key_to_json() compatible with ed25519 and secp256k1 keys
  fix bug to prevent generating keys with common SchemeType
  fix bug where we were generating a key with common scheme
  make fmt
  fix unit test test_toml_roundtrip to supply good validator keys
  e2e test_genesis_validators(): make each validator have different key scheme
  fix some comments
  fix bug in supplying keypair to Tendermint
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  update wasm checksums
  remove Result layering for id_from_pk
  drop 'Consensus' from SchemeType enum variants
  incorporate options into key generation functions
  command line options for specifying key scheme
  initial commit for supporting secp256k1 keys
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  ledger/pos: implement PosReadOnly using StorageRead trait
  ledger/tx: inherit StorageRead in TxEnv
  ledger/storage: impl StorageRead for Storage
  ledger/vp: impl StorageRead for WASM VPs pre and post state
  ledger/native_vp: implement StorageRead for pre and post state
  ledger: add StorageRead trait with extensible error type
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  pos: fix bond zero amount error msg
  pos/validation: refactor accumulation of changes
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  remove Result layering for id_from_pk
  ...
juped added a commit that referenced this pull request Oct 6, 2022
* draft: (394 commits)
  Revert "Update getting-started.md"
  Update getting-started.md
  changelog: add #442
  rustdoc: fix outdated links
  make build-doc: only build rustdoc in this command
  [ci] remove drone
  ci: double the build-and-test timeout
  [ci] download masp paramters
  [ci] improve automation tool, add pls spawn devnet command
  [ci] added dev documentation build, added rust doc build
  I removed the limitation.
  I removed the limitation.
  encoding_spec: rm ":" from fragment links in e.g. `ed25519::PublicKey`
  docs/dev: update encoding spec generation
  update wasm checksums
  changelog: add #380
  changelog: add #384
  shared/storage: fix the height recorded for a new epoch
  shared: Add pre/post to VpEnv and use them to provide default impls
  changelog: add #1249
  test/ledger: update last_epoch assertion
  ledger: fix last_epoch to only change when committing block
  changelog: add #337
  Specify --target-dir when building wasms
  changelog: add #335
  wasm checksums update
  test/vm_host_env: refactor prefix iter tests with new `iter_prefix` fn
  storage_api: build a nicer `iter_prefix` function on top of StorageRead
  changelog: add #334
  wasm checksums update
  storage_api: add default borsh encoded read/write impl and handle errors
  update wasm checksums
  pos: update validator raw hash validation
  changelog: add #326
  changelog: add #331
  changelog: add #324
  changelog: add #318
  update wasm checksums
  fix missing StorageWrite for Storage merkle tree update
  storage: remove unnecessary clone
  add more comments for StorageRead lifetime with an example usage
  add <'iter> lifetime to StorageRead trait to get around lack of GATs
  ledger: impl StorageWrite for Storage
  ledger: factor out TxEnv write methods into a new StorageWrite trait
  [fix] use fetch-depth: 0 on tag pipeline
  Namada 0.7.1
  fix spelling of 'features' in Cargo.toml
  realign cargo/wasm integrity
  changelog: add #278
  test: allow to sign and verify secp256k1
  client: add check on validator consensus key
  shared: optional secp256k1 signing and verification to avoid wasm bloat
  pick scheme for generating validator keys
  must use ed25519 for validator consensus key and node ID
  update rustdoc on PKH
  make fmt
  deps: enable secp256k1 in tendermint-rs
  handle secp256k1 in key_to_tendermint()
  fmt && clippy
  use heliaxdev/libsecp256k1 crate fork as dependency for now
  release: update release.toml for namada repo
  new test for zeroizing secp256k1 keys
  wrap libsecp256k1::SecretKey in a Box within SecretKey struct
  add a test to zeroize secp256k1
  fix bug in supplying args to test_genesis_validators()
  make validator_key_to_json() compatible with ed25519 and secp256k1 keys
  fix bug to prevent generating keys with common SchemeType
  fix bug where we were generating a key with common scheme
  make fmt
  fix unit test test_toml_roundtrip to supply good validator keys
  e2e test_genesis_validators(): make each validator have different key scheme
  fix some comments
  fix bug in supplying keypair to Tendermint
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  update wasm checksums
  remove Result layering for id_from_pk
  drop 'Consensus' from SchemeType enum variants
  incorporate options into key generation functions
  command line options for specifying key scheme
  initial commit for supporting secp256k1 keys
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  ledger/pos: implement PosReadOnly using StorageRead trait
  ledger/tx: inherit StorageRead in TxEnv
  ledger/storage: impl StorageRead for Storage
  ledger/vp: impl StorageRead for WASM VPs pre and post state
  ledger/native_vp: implement StorageRead for pre and post state
  ledger: add StorageRead trait with extensible error type
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  pos: fix bond zero amount error msg
  pos/validation: refactor accumulation of changes
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  remove Result layering for id_from_pk
  ...
juped added a commit that referenced this pull request Oct 7, 2022
* draft: (394 commits)
  Revert "Update getting-started.md"
  Update getting-started.md
  changelog: add #442
  rustdoc: fix outdated links
  make build-doc: only build rustdoc in this command
  [ci] remove drone
  ci: double the build-and-test timeout
  [ci] download masp paramters
  [ci] improve automation tool, add pls spawn devnet command
  [ci] added dev documentation build, added rust doc build
  I removed the limitation.
  I removed the limitation.
  encoding_spec: rm ":" from fragment links in e.g. `ed25519::PublicKey`
  docs/dev: update encoding spec generation
  update wasm checksums
  changelog: add #380
  changelog: add #384
  shared/storage: fix the height recorded for a new epoch
  shared: Add pre/post to VpEnv and use them to provide default impls
  changelog: add #1249
  test/ledger: update last_epoch assertion
  ledger: fix last_epoch to only change when committing block
  changelog: add #337
  Specify --target-dir when building wasms
  changelog: add #335
  wasm checksums update
  test/vm_host_env: refactor prefix iter tests with new `iter_prefix` fn
  storage_api: build a nicer `iter_prefix` function on top of StorageRead
  changelog: add #334
  wasm checksums update
  storage_api: add default borsh encoded read/write impl and handle errors
  update wasm checksums
  pos: update validator raw hash validation
  changelog: add #326
  changelog: add #331
  changelog: add #324
  changelog: add #318
  update wasm checksums
  fix missing StorageWrite for Storage merkle tree update
  storage: remove unnecessary clone
  add more comments for StorageRead lifetime with an example usage
  add <'iter> lifetime to StorageRead trait to get around lack of GATs
  ledger: impl StorageWrite for Storage
  ledger: factor out TxEnv write methods into a new StorageWrite trait
  [fix] use fetch-depth: 0 on tag pipeline
  Namada 0.7.1
  fix spelling of 'features' in Cargo.toml
  realign cargo/wasm integrity
  changelog: add #278
  test: allow to sign and verify secp256k1
  client: add check on validator consensus key
  shared: optional secp256k1 signing and verification to avoid wasm bloat
  pick scheme for generating validator keys
  must use ed25519 for validator consensus key and node ID
  update rustdoc on PKH
  make fmt
  deps: enable secp256k1 in tendermint-rs
  handle secp256k1 in key_to_tendermint()
  fmt && clippy
  use heliaxdev/libsecp256k1 crate fork as dependency for now
  release: update release.toml for namada repo
  new test for zeroizing secp256k1 keys
  wrap libsecp256k1::SecretKey in a Box within SecretKey struct
  add a test to zeroize secp256k1
  fix bug in supplying args to test_genesis_validators()
  make validator_key_to_json() compatible with ed25519 and secp256k1 keys
  fix bug to prevent generating keys with common SchemeType
  fix bug where we were generating a key with common scheme
  make fmt
  fix unit test test_toml_roundtrip to supply good validator keys
  e2e test_genesis_validators(): make each validator have different key scheme
  fix some comments
  fix bug in supplying keypair to Tendermint
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  update wasm checksums
  remove Result layering for id_from_pk
  drop 'Consensus' from SchemeType enum variants
  incorporate options into key generation functions
  command line options for specifying key scheme
  initial commit for supporting secp256k1 keys
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  ledger/pos: implement PosReadOnly using StorageRead trait
  ledger/tx: inherit StorageRead in TxEnv
  ledger/storage: impl StorageRead for Storage
  ledger/vp: impl StorageRead for WASM VPs pre and post state
  ledger/native_vp: implement StorageRead for pre and post state
  ledger: add StorageRead trait with extensible error type
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  pos: fix bond zero amount error msg
  pos/validation: refactor accumulation of changes
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  remove Result layering for id_from_pk
  ...
juped added a commit that referenced this pull request Oct 7, 2022
* draft: (394 commits)
  Revert "Update getting-started.md"
  Update getting-started.md
  changelog: add #442
  rustdoc: fix outdated links
  make build-doc: only build rustdoc in this command
  [ci] remove drone
  ci: double the build-and-test timeout
  [ci] download masp paramters
  [ci] improve automation tool, add pls spawn devnet command
  [ci] added dev documentation build, added rust doc build
  I removed the limitation.
  I removed the limitation.
  encoding_spec: rm ":" from fragment links in e.g. `ed25519::PublicKey`
  docs/dev: update encoding spec generation
  update wasm checksums
  changelog: add #380
  changelog: add #384
  shared/storage: fix the height recorded for a new epoch
  shared: Add pre/post to VpEnv and use them to provide default impls
  changelog: add #1249
  test/ledger: update last_epoch assertion
  ledger: fix last_epoch to only change when committing block
  changelog: add #337
  Specify --target-dir when building wasms
  changelog: add #335
  wasm checksums update
  test/vm_host_env: refactor prefix iter tests with new `iter_prefix` fn
  storage_api: build a nicer `iter_prefix` function on top of StorageRead
  changelog: add #334
  wasm checksums update
  storage_api: add default borsh encoded read/write impl and handle errors
  update wasm checksums
  pos: update validator raw hash validation
  changelog: add #326
  changelog: add #331
  changelog: add #324
  changelog: add #318
  update wasm checksums
  fix missing StorageWrite for Storage merkle tree update
  storage: remove unnecessary clone
  add more comments for StorageRead lifetime with an example usage
  add <'iter> lifetime to StorageRead trait to get around lack of GATs
  ledger: impl StorageWrite for Storage
  ledger: factor out TxEnv write methods into a new StorageWrite trait
  [fix] use fetch-depth: 0 on tag pipeline
  Namada 0.7.1
  fix spelling of 'features' in Cargo.toml
  realign cargo/wasm integrity
  changelog: add #278
  test: allow to sign and verify secp256k1
  client: add check on validator consensus key
  shared: optional secp256k1 signing and verification to avoid wasm bloat
  pick scheme for generating validator keys
  must use ed25519 for validator consensus key and node ID
  update rustdoc on PKH
  make fmt
  deps: enable secp256k1 in tendermint-rs
  handle secp256k1 in key_to_tendermint()
  fmt && clippy
  use heliaxdev/libsecp256k1 crate fork as dependency for now
  release: update release.toml for namada repo
  new test for zeroizing secp256k1 keys
  wrap libsecp256k1::SecretKey in a Box within SecretKey struct
  add a test to zeroize secp256k1
  fix bug in supplying args to test_genesis_validators()
  make validator_key_to_json() compatible with ed25519 and secp256k1 keys
  fix bug to prevent generating keys with common SchemeType
  fix bug where we were generating a key with common scheme
  make fmt
  fix unit test test_toml_roundtrip to supply good validator keys
  e2e test_genesis_validators(): make each validator have different key scheme
  fix some comments
  fix bug in supplying keypair to Tendermint
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  update wasm checksums
  remove Result layering for id_from_pk
  drop 'Consensus' from SchemeType enum variants
  incorporate options into key generation functions
  command line options for specifying key scheme
  initial commit for supporting secp256k1 keys
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  ledger/pos: implement PosReadOnly using StorageRead trait
  ledger/tx: inherit StorageRead in TxEnv
  ledger/storage: impl StorageRead for Storage
  ledger/vp: impl StorageRead for WASM VPs pre and post state
  ledger/native_vp: implement StorageRead for pre and post state
  ledger: add StorageRead trait with extensible error type
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  pos: fix bond zero amount error msg
  pos/validation: refactor accumulation of changes
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  remove Result layering for id_from_pk
  ...
juped added a commit that referenced this pull request Oct 7, 2022
* draft: (394 commits)
  Revert "Update getting-started.md"
  Update getting-started.md
  changelog: add #442
  rustdoc: fix outdated links
  make build-doc: only build rustdoc in this command
  [ci] remove drone
  ci: double the build-and-test timeout
  [ci] download masp paramters
  [ci] improve automation tool, add pls spawn devnet command
  [ci] added dev documentation build, added rust doc build
  I removed the limitation.
  I removed the limitation.
  encoding_spec: rm ":" from fragment links in e.g. `ed25519::PublicKey`
  docs/dev: update encoding spec generation
  update wasm checksums
  changelog: add #380
  changelog: add #384
  shared/storage: fix the height recorded for a new epoch
  shared: Add pre/post to VpEnv and use them to provide default impls
  changelog: add #1249
  test/ledger: update last_epoch assertion
  ledger: fix last_epoch to only change when committing block
  changelog: add #337
  Specify --target-dir when building wasms
  changelog: add #335
  wasm checksums update
  test/vm_host_env: refactor prefix iter tests with new `iter_prefix` fn
  storage_api: build a nicer `iter_prefix` function on top of StorageRead
  changelog: add #334
  wasm checksums update
  storage_api: add default borsh encoded read/write impl and handle errors
  update wasm checksums
  pos: update validator raw hash validation
  changelog: add #326
  changelog: add #331
  changelog: add #324
  changelog: add #318
  update wasm checksums
  fix missing StorageWrite for Storage merkle tree update
  storage: remove unnecessary clone
  add more comments for StorageRead lifetime with an example usage
  add <'iter> lifetime to StorageRead trait to get around lack of GATs
  ledger: impl StorageWrite for Storage
  ledger: factor out TxEnv write methods into a new StorageWrite trait
  [fix] use fetch-depth: 0 on tag pipeline
  Namada 0.7.1
  fix spelling of 'features' in Cargo.toml
  realign cargo/wasm integrity
  changelog: add #278
  test: allow to sign and verify secp256k1
  client: add check on validator consensus key
  shared: optional secp256k1 signing and verification to avoid wasm bloat
  pick scheme for generating validator keys
  must use ed25519 for validator consensus key and node ID
  update rustdoc on PKH
  make fmt
  deps: enable secp256k1 in tendermint-rs
  handle secp256k1 in key_to_tendermint()
  fmt && clippy
  use heliaxdev/libsecp256k1 crate fork as dependency for now
  release: update release.toml for namada repo
  new test for zeroizing secp256k1 keys
  wrap libsecp256k1::SecretKey in a Box within SecretKey struct
  add a test to zeroize secp256k1
  fix bug in supplying args to test_genesis_validators()
  make validator_key_to_json() compatible with ed25519 and secp256k1 keys
  fix bug to prevent generating keys with common SchemeType
  fix bug where we were generating a key with common scheme
  make fmt
  fix unit test test_toml_roundtrip to supply good validator keys
  e2e test_genesis_validators(): make each validator have different key scheme
  fix some comments
  fix bug in supplying keypair to Tendermint
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  update wasm checksums
  remove Result layering for id_from_pk
  drop 'Consensus' from SchemeType enum variants
  incorporate options into key generation functions
  command line options for specifying key scheme
  initial commit for supporting secp256k1 keys
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  ledger/pos: implement PosReadOnly using StorageRead trait
  ledger/tx: inherit StorageRead in TxEnv
  ledger/storage: impl StorageRead for Storage
  ledger/vp: impl StorageRead for WASM VPs pre and post state
  ledger/native_vp: implement StorageRead for pre and post state
  ledger: add StorageRead trait with extensible error type
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  pos: fix bond zero amount error msg
  pos/validation: refactor accumulation of changes
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  remove Result layering for id_from_pk
  ...
juped added a commit that referenced this pull request Oct 10, 2022
* draft: (394 commits)
  Revert "Update getting-started.md"
  Update getting-started.md
  changelog: add #442
  rustdoc: fix outdated links
  make build-doc: only build rustdoc in this command
  [ci] remove drone
  ci: double the build-and-test timeout
  [ci] download masp paramters
  [ci] improve automation tool, add pls spawn devnet command
  [ci] added dev documentation build, added rust doc build
  I removed the limitation.
  I removed the limitation.
  encoding_spec: rm ":" from fragment links in e.g. `ed25519::PublicKey`
  docs/dev: update encoding spec generation
  update wasm checksums
  changelog: add #380
  changelog: add #384
  shared/storage: fix the height recorded for a new epoch
  shared: Add pre/post to VpEnv and use them to provide default impls
  changelog: add #1249
  test/ledger: update last_epoch assertion
  ledger: fix last_epoch to only change when committing block
  changelog: add #337
  Specify --target-dir when building wasms
  changelog: add #335
  wasm checksums update
  test/vm_host_env: refactor prefix iter tests with new `iter_prefix` fn
  storage_api: build a nicer `iter_prefix` function on top of StorageRead
  changelog: add #334
  wasm checksums update
  storage_api: add default borsh encoded read/write impl and handle errors
  update wasm checksums
  pos: update validator raw hash validation
  changelog: add #326
  changelog: add #331
  changelog: add #324
  changelog: add #318
  update wasm checksums
  fix missing StorageWrite for Storage merkle tree update
  storage: remove unnecessary clone
  add more comments for StorageRead lifetime with an example usage
  add <'iter> lifetime to StorageRead trait to get around lack of GATs
  ledger: impl StorageWrite for Storage
  ledger: factor out TxEnv write methods into a new StorageWrite trait
  [fix] use fetch-depth: 0 on tag pipeline
  Namada 0.7.1
  fix spelling of 'features' in Cargo.toml
  realign cargo/wasm integrity
  changelog: add #278
  test: allow to sign and verify secp256k1
  client: add check on validator consensus key
  shared: optional secp256k1 signing and verification to avoid wasm bloat
  pick scheme for generating validator keys
  must use ed25519 for validator consensus key and node ID
  update rustdoc on PKH
  make fmt
  deps: enable secp256k1 in tendermint-rs
  handle secp256k1 in key_to_tendermint()
  fmt && clippy
  use heliaxdev/libsecp256k1 crate fork as dependency for now
  release: update release.toml for namada repo
  new test for zeroizing secp256k1 keys
  wrap libsecp256k1::SecretKey in a Box within SecretKey struct
  add a test to zeroize secp256k1
  fix bug in supplying args to test_genesis_validators()
  make validator_key_to_json() compatible with ed25519 and secp256k1 keys
  fix bug to prevent generating keys with common SchemeType
  fix bug where we were generating a key with common scheme
  make fmt
  fix unit test test_toml_roundtrip to supply good validator keys
  e2e test_genesis_validators(): make each validator have different key scheme
  fix some comments
  fix bug in supplying keypair to Tendermint
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  update wasm checksums
  remove Result layering for id_from_pk
  drop 'Consensus' from SchemeType enum variants
  incorporate options into key generation functions
  command line options for specifying key scheme
  initial commit for supporting secp256k1 keys
  clean and simplify code in id_from_pk()
  allow CL specification of a specific key scheme for the TxInitValidator
  improve write_tendermint_node_key() to produce the proper json given the underlying key scheme
  convert from common to underlying key type in id_from_pk() when constructing the TendermintNodeId
  ledger/pos: implement PosReadOnly using StorageRead trait
  ledger/tx: inherit StorageRead in TxEnv
  ledger/storage: impl StorageRead for Storage
  ledger/vp: impl StorageRead for WASM VPs pre and post state
  ledger/native_vp: implement StorageRead for pre and post state
  ledger: add StorageRead trait with extensible error type
  change variable names in fns try_to_sk() and try_to_sig() to reduce confusion
  pos: fix bond zero amount error msg
  pos/validation: refactor accumulation of changes
  clean up code implementing Serialize/Deserialize, comment on certain implementations
  remove Result layering for id_from_pk
  ...
@juped juped merged commit 80838b5 into main Oct 13, 2022
@juped juped deleted the tomas/fix-validator-raw-hash branch October 13, 2022 06:51
phy-chain pushed a commit to phy-chain/namada that referenced this pull request Mar 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Some Byzantine validators may not be getting slashed
2 participants