Commit Graph

735 Commits

Author SHA1 Message Date
Deirdre Connolly 13f2c229d9 Add prf_expand() and use that in sapling key derivation 2020-04-18 04:40:31 -04:00
Deirdre Connolly b3db623e29 Fill out SaplingShieldedAddress impls and some tests 2020-04-18 04:40:31 -04:00
Deirdre Connolly 451e592b28 Tidy keys::sapling, add commented out Arbitrary impl for now 2020-04-18 04:40:31 -04:00
Deirdre Connolly 7402a54379 Add bech32 2020-04-18 04:40:31 -04:00
Deirdre Connolly 743330fd0b Make several types wrap jubjub types and impl Deref 2020-04-18 04:40:31 -04:00
Deirdre Connolly 145afb7bda 2 Blakes, 2 Serious 2020-04-18 04:40:31 -04:00
Deirdre Connolly 39278a3095 Parameterize AuthorizingKey as PublicKeyBytes<SpendAuth> 2020-04-18 04:40:31 -04:00
Deirdre Connolly 097d4617df Update sapling keys derived from spending key via blake2b 2020-04-18 04:40:31 -04:00
Deirdre Connolly b167a3b96e Create our own Scalar alias for now 2020-04-18 04:40:31 -04:00
Deirdre Connolly 8add92445c Add jubjub, replace blake2 with blake2b_simd 2020-04-18 04:40:31 -04:00
Deirdre Connolly 1219f1b552 Improve FullViewingKey doc comment 2020-04-18 04:40:31 -04:00
Deirdre Connolly ebe5cce3bb Better doc comment for sapling::TranmissionKey 2020-04-18 04:40:31 -04:00
Deirdre Connolly b175d1f1ba Typo
Co-Authored-By: Daira Hopwood <daira@jacaranda.org>
2020-04-18 04:40:31 -04:00
Deirdre Connolly f5bdd449ee Derive OVK via Blake2b as PRF^expand with t=2
Co-Authored-By: Daira Hopwood <daira@jacaranda.org>
2020-04-18 04:40:31 -04:00
Deirdre Connolly 98a91ab92f Add simple FullViewingKey for now 2020-04-18 04:40:31 -04:00
Deirdre Connolly 8e42c6d8b0 Add stub for SaplingShieldedAddress 2020-04-18 04:40:31 -04:00
Deirdre Connolly e2743c0b15 Add all simple types for Sapling key derivation tree 2020-04-18 04:40:31 -04:00
Deirdre Connolly 62d30c0a33 Add blake2 dependency 2020-04-18 04:40:31 -04:00
Deirdre Connolly 21a8a29404 Better doc comments for Sprout SpendingKey fields 2020-04-15 03:22:48 -04:00
Deirdre Connolly dd930c678b Impl Display as the inverse of FromStr for SproutShieldedAddress
And add proptests for zcash (de)serialization and human-readable roundstrips.
2020-04-15 03:22:48 -04:00
Deirdre Connolly 75fbef462d Add proptest-regressions for new sprout spending key proptests 2020-04-15 03:22:48 -04:00
Deirdre Connolly e057e120bb Impl Display/FromStr/ZcashSerialize/ZcashDeserialize for Sprout SpendingKey
Includes new  field because the raw and Base58Check encoding depends on it.
2020-04-15 03:22:48 -04:00
Deirdre Connolly 6dc0830ea6 Impl Default for Network, as Mainnet 2020-04-15 03:22:48 -04:00
Deirdre Connolly e83cddf4c6 Impl Display/FromStr/ZcashSerialize/ZcashDeserialize for Sprout IncomingViewingKeys
To match the raw and Base58Check encodings as in
https://zips.z.cash/protocol/protocol.pdf#sproutinviewingkeyencoding
2020-04-15 03:22:48 -04:00
dependabot-preview[bot] 77375f3ba8 Bump pin-project from 0.4.8 to 0.4.9
Bumps [pin-project](https://github.com/taiki-e/pin-project) from 0.4.8 to 0.4.9.
- [Release notes](https://github.com/taiki-e/pin-project/releases)
- [Changelog](https://github.com/taiki-e/pin-project/blob/master/CHANGELOG.md)
- [Commits](https://github.com/taiki-e/pin-project/compare/v0.4.8...v0.4.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-14 14:07:15 -04:00
George Tankersley df79fa75e0
Implement minimal version handshaking (#295)
Co-authored-by: Deirdre Connolly <durumcrustulum@gmail.com>
Co-authored-by: Henry de Valence <hdevalence@hdevalence.ca>
2020-04-13 18:33:15 -04:00
Deirdre Connolly 05ca1c0c8a Refine JoinSplit ephemeral keys to be x25519_dalek::PublicKey
Impls PartialEq and Eq and Arbitrary on JoinSplit because PublicKey
does not impl them and we can't do it directly.

Resolves #313
2020-04-13 15:32:04 -04:00
dependabot-preview[bot] baf305b856 Bump tokio from 0.2.17 to 0.2.18
Bumps [tokio](https://github.com/tokio-rs/tokio) from 0.2.17 to 0.2.18.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-0.2.17...tokio-0.2.18)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-13 00:02:08 -04:00
dependabot-preview[bot] 8e28db07fb Bump proptest from 0.9.5 to 0.9.6
Bumps [proptest](https://github.com/altsysrq/proptest) from 0.9.5 to 0.9.6.
- [Release notes](https://github.com/altsysrq/proptest/releases)
- [Changelog](https://github.com/AltSysrq/proptest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/altsysrq/proptest/compare/0.9.5...0.9.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-12 23:48:27 -04:00
dependabot-preview[bot] dd60ce44f1 Bump thiserror from 1.0.14 to 1.0.15
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.14 to 1.0.15.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.14...1.0.15)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-12 23:47:37 -04:00
dependabot-preview[bot] 212eb229f4 Bump tokio from 0.2.16 to 0.2.17
Bumps [tokio](https://github.com/tokio-rs/tokio) from 0.2.16 to 0.2.17.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-09 17:20:13 -04:00
Deirdre Connolly 955a4ebc3c Rename SpendDescription to Spend, OutputDescription to Output 2020-04-09 17:17:21 -04:00
dependabot-preview[bot] 680ec5fae4 Bump tokio from 0.2.15 to 0.2.16
Bumps [tokio](https://github.com/tokio-rs/tokio) from 0.2.15 to 0.2.16.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-0.2.15...tokio-0.2.16)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-09 16:10:02 -04:00
dependabot-preview[bot] 3596771ce1 Bump serde from 1.0.105 to 1.0.106
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.105 to 1.0.106.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.105...v1.0.106)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-09 16:06:55 -04:00
dependabot-preview[bot] 6be165ea6c Bump tokio from 0.2.14 to 0.2.15
Bumps [tokio](https://github.com/tokio-rs/tokio) from 0.2.14 to 0.2.15.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-0.2.14...tokio-0.2.15)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-02 13:43:15 -04:00
dependabot-preview[bot] dd5b99e62a Bump ed25519-zebra from 0.2.0 to 0.2.2
Bumps [ed25519-zebra](https://github.com/ZcashFoundation/ed25519-zebra) from 0.2.0 to 0.2.2.
- [Release notes](https://github.com/ZcashFoundation/ed25519-zebra/releases)
- [Changelog](https://github.com/ZcashFoundation/ed25519-zebra/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ZcashFoundation/ed25519-zebra/compare/0.2.0...0.2.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-01 20:27:47 -07:00
dependabot-preview[bot] 0b7c01ce80 Bump tokio from 0.2.13 to 0.2.14
Bumps [tokio](https://github.com/tokio-rs/tokio) from 0.2.13 to 0.2.14.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-0.2.13...tokio-0.2.14)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-01 21:44:22 -04:00
dependabot-preview[bot] d81d330c6e Bump thiserror from 1.0.13 to 1.0.14
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.13 to 1.0.14.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.13...1.0.14)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-29 23:11:44 -04:00
Deirdre Connolly 2a7838d8e5 Clear up doc comments on SpendingKey 2020-03-28 02:42:13 -04:00
Deirdre Connolly 760edf9271 Tidy *serialize for TransparentAddress with match on network 2020-03-28 02:42:13 -04:00
Deirdre Connolly a6d511eb71 s/weird/invalid/ 2020-03-28 02:42:13 -04:00
Deirdre Connolly 2e063998fb Add a new() and impl From<[u8; 32]> for SpendingKey
Currently fills/receives 32 random bytes and forces the top 4 bits to
zero, ala clamping. If there is a nicer way to csprng'ly fill 252 bits
without clamping, that would be nicer, less bias.
2020-03-28 02:42:13 -04:00
Deirdre Connolly 5f7f851481 Add an explicit test for Display trait on SproutShieldedAddress 2020-03-28 02:42:13 -04:00
Deirdre Connolly ba25817943 Impl FromStr, tidy Debug for SproutShieldedAddress 2020-03-28 02:42:13 -04:00
Deirdre Connolly 2bd0f53647 Impl FromStr, tidy Debug and Display impls for TransparentAddress 2020-03-28 02:42:13 -04:00
Deirdre Connolly 6e4c80c6f3 Make a note to update to the crates.io version of sha2 when available 2020-03-28 02:42:13 -04:00
Deirdre Connolly fa1fa60531 Use a match on network inside SproutShieldedAddress::zcash_serialize() 2020-03-28 02:42:13 -04:00
Deirdre Connolly afccdc3af6 Fix typos and doc comments 2020-03-28 02:42:13 -04:00
Deirdre Connolly 34f4bf05cd Tidy 2020-03-28 02:42:13 -04:00
Deirdre Connolly 9a20b20070 Better doc comment for IncomingViewingKey 2020-03-28 02:42:13 -04:00