0.6.3 (2019-08-07)
- Detect and don't attempt to recover from PoisonError (#345)
0.6.2 (2019-08-07)
- chain/state: Avoid panicking in update_consensus_state (#342)
0.6.1 (2019-08-06)
abscissa
crate v0.3 (#338)- Refactor
Session
to remove code duplication (#337) - Remove signal handlers (#336)
- Double signing - allow some block ID switches (#335)
- Consider signed
<nil>
votes to be double signs (#334)
0.6.0 (2019-07-30)
This release is tested against tendermint v0.31 and known to be compatible with tendermint v0.32.
The validator state files use an incompatible syntax from Tendermint KMS v0.5. It has been changed to match the conventions used by the rest of Tendermint, where integer values are stored in strings rather than JSON integers.
When upgrading, you will need to either delete existing state files
(they will be recreated automatically), or ensure the integer height
and
round
fields contained within these files are quoted in strings, e.g.
{"height":"123456","round":"0",...}
.
The previous parser for tmkms.toml
ignored unknown attributes in the
config file. This means it would often ignore syntax errors, spelling mistakes,
or attributes in the wrong location when parsing files.
This has been changed to explicitly reject such fields, however please be aware if your config file contained invalid syntax, it will now be rejected by the parser and the KMS will no longer boot.
We suggest validating the configuration in a staging or other noncritical deployment of the KMS in order to ensure your configuration does not contain accidental misconfigurations which were previously uncaught.
See #282 for more information.
This release contains many improvements for users of the yubihsm
backend:
- New
yubihsm-server
feature: this release includes support for the KMS exposing an HTTP service which is compatible with Yubico'syubihsm-connector
service. This allows for concurrently administering a YubiHSM2 while the KMS is running, either throughtmkms yubihsm
(see additional notes below) or via Yubico'syubihsm-shell
. - Loopback support for
tmkms yubihsm
: the CLI functionality in the KMS for administering YubiHSMs can now be configured to connect to the KMS's ownyubihsm-server
. Additionally it can also be configured to use a different authentication key, and to prompt for a password as opposed to using one in the configuration file.
For more information on these changes, please see the "yubihsm-server feature" section in the Tendermint KMS YubiHSM docs:
https://github.com/tendermint/kms/blob/master/README.yubihsm.md
tendermint
crate v0.10.0 (#328)- Double signing logging improvements (#322, #319, #317)
- Log
tendermint::consensus::State
height/round/step (#316) yubihsm keys import
: base64 support (#306)yubihsm
: Support for reading password from a file (#305)softsign
: Fix private key decoding +import
command (#304)softsign
: Add subcommand; movekeygen
under it (#303)yubihsm setup
: usehkd32
crate to derive key hierarchy (#302)yubihsm setup
: Collect 256-bits entropy from both RNGs (#300)abscissa
crate v0.2 (#294)- Log durations for each signing operation (#283)
- Add
serde(deny_unknown_fields)
to all config structs (#282) tmkms yubihsm keys list
: Use chain-specific formatters (#275)yubihsm-server
: Allow CLI commands to use loopback connection (#274)yubihsm-server
: Optionalyubihsm-connector
compatibility (#273)- Send
RemoteSignerError
response to validator on double sign (#249) - Logging improvements (#271)
- yubihsm: Mark imported
priv_validator.json
keys as re-exportable (#248) - ledger: Add init commands (#242)
- Add
max_height
support for stopping chains at specific heights (#238) - Chain-specific keyrings / multitenancy (#232)
- ledger: Use
ledger-tendermint
backend (#225)
0.5.0 (2019-03-13)
tendermint
crate v0.5.0 (#220)- Optional peer ID verification (#219)
- Bump subtle-encoding dependency to v0.3.3 (#217)
- Allow setting config path via
TMKMS_CONFIG_FILE
env var (#215) - yubihsm: Add back HTTP connector support (#208)
- Initial Tendermint
[chain]
registry in tmkms.toml (#205) - Disable 'softsign' backend by default (#203)
- State tracking for double sign protection (#193, thanks @zmanian!)
0.4.0 (2019-03-05)
tendermint
crate v0.3.0 (#200)- yubihsm: Support for exporting/importing wrapped (encrypted) keys (#197)
- yubihsm setup (#180, #186)
- Ledger integration (#176)
0.3.0 (2019-01-23)
0.2.4 (2019-01-18)
- Refactor client/tests to always dial out to tendermint/gaiad (#149, #150)
- Migrate to rust 2018 edition (#138)
0.2.3 (2018-12-08)
- Lower reconnect delay to 1s (#136)
0.2.2 (2018-12-03)
0.2.1 (2018-11-27)
- Encode node (and softwign) private keys as Base64 (#127)
- Add integration tests for yubihsm subcommands (#121)
- Fix
tmkms yubihsm keys import
command (#113)
0.2.0 (2018-11-20)
- Add
tmkms yubihsm keys import
command (#107) - Simplify
tmkms.toml
syntax (#106) - Minor clarifications/fixes (#103)
0.1.0 (2018-11-13)
- Initial validator signing support (#95, #91, #86, #80, #55)
- Extract
tendermint
crate as a reusable Rust library (#82) - Support for Bech32-formatted Cosmos keys/addresses (#71)
- Validator signing via Unix domain socket IPC (#63)
- Initial "preview" release