The Zcash Foundation is pleased to announce the release of FROST v2.0.0. This release includes a number of important changes and improvements to the FROST reference implementation.
The release introduces some breaking changes, motivated either by the goal of simplifying the API or to address issues. In particular, we changed the deserialization of elliptic curve points (Element) to return an error; this was due to a requirement in the FROST specification to check that the identity is not being serialized or de-serialised and returning an error if that is the case. This requirement was not being followed in previous versions of the FROST reference implementation. We are not aware of any possible security issues that could be caused by this; however, we consider this change the right thing to do as a defense-in-depth mechanism. Thanks to Jason Huang for reporting this issue.
Another important breaking change is simplifications to serialization and deserialization of structs that wrapped Scalar or Elements. This allows replacing code that looked like X::deserialize(bytes.try_into().unwrap()) into X::deserialize(&bytes), which is much simpler.
There are some other smaller breaking changes which are documented in the CHANGELOG.
We have added a number of new features such as refresh share functionality in the Trusted Dealer scenario and a new verify_signature_share() function in frost-core which allows verifying individual signature shares. The same functionality for Distributed Key Generation is being developed and will be included in a future release.
This release also adds no-std support to all crates except frost-ed448. This allows the usage of the crates in restricted environments such as embedded devices. Refer to the CHANGELOG for details.
We have also made a number of improvements to our documentation, including updates and improvements to the FROST demo documentation.
You can see a full copy of all of the included changes in the v2.0.0 Release Notes on GitHub. Thanks to StackOverflowExcept1on for their multiple contributions.
The post FROST 2.0.0 Release appeared first on Zcash Foundation.