Commit Graph

2453 Commits

Author SHA1 Message Date
Jack Grigg ff8695de03 zcash_address: Add failing test showing unified::Address encoding bug 2021-05-25 21:24:47 +01:00
str4d c2b57048bf
Update components/zcash_address/README.md
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2021-05-25 16:37:25 +01:00
Jack Grigg e982d7211f zcash_address: Implement Unified Address encoding / decoding 2021-05-20 22:50:59 +01:00
Jack Grigg 6717cd821c Move F4Jumble implementation into zcash_address 2021-05-20 22:50:59 +01:00
Jack Grigg ae2b8bfd6d zcash_address: Replace Orchard address encodings with Unified Addresses
This commit removes the now-undefined Orchard encoding logic, and adds
the general Bech32m encoding/decoding logic for Unified Addresses. The
internal data format of Unified Addresses is not correct in this commit.
2021-05-20 22:50:59 +01:00
str4d d50bb12a97
Merge pull request #334 from str4d/dependency-updates
Dependency updates
2021-05-20 17:48:52 +01:00
Jack Grigg 9f7398cd05 zcash_address: Add convert::ToAddress helper trait 2021-05-20 14:54:27 +01:00
Jack Grigg ce8797e4b1 zcash_address: impl {Clone, Copy, Eq, Hash} for ZcashAddress 2021-05-20 14:54:27 +01:00
Jack Grigg ff07eeaabb zcash_address: Document ZcashAddress::convert 2021-05-20 14:54:27 +01:00
Jack Grigg b9f704955a zcash_address: Move ZcashAddress::convert into root
Using two separate `impl ZcashAddress` blocks resulted in separate
blocks in the documentation, which is unnecessary.
2021-05-20 14:54:27 +01:00
Jack Grigg c7fcee27a2 zcash_address: Add ZcashAddress::try_from_encoded method
This places parsing documentation front and centre, while also making
it clear that `str::parse` is the anticipated main entry point.
2021-05-20 14:54:27 +01:00
Jack Grigg f7b1058171 zcash_address: Extend MaybeZcash heuristics to 64-byte addresses 2021-05-20 14:54:27 +01:00
Jack Grigg a366460157 zcash_address: ZcashAddress::convert() -> T: FromAddress
This enables easy conversion of an encoded Zcash address to a target
type, with automatic handling of Zcash address types that are not
supported by the target.
2021-05-20 14:54:27 +01:00
Jack Grigg ec77175d2b zcash_address: Add address-encoding support
This provides round-trip encoding for Zcash addresses.
2021-05-20 14:54:27 +01:00
Jack Grigg c754363c07 zcash_address: Initial empty library crate 2021-05-20 14:54:25 +01:00
str4d 6fab0c82a7
Merge pull request #383 from nuttycom/feature/f4jumble
Implement F4Jumble
2021-05-20 14:53:13 +01:00
str4d 35dadc7f6c
f4jumble: Test both directions against test vectors 2021-05-20 14:16:39 +01:00
Jack Grigg 49d946fb5a Remove wasm32-unknown-unknown from build checks
By default `getrandom` 0.2 does not compile on unsupported targets; it
is necessary to enable its `js` feature flag specifically when targeting
`wasm32-unknown-unknown`. Since we don't expose that flag ourselves
(instead relying on the downstream user to do this) we can't directly
test this ourselves. `wasm32-wasi` is fully-supported, so we continue to
test builds against that target to ensure we retain WASM compatibility.
2021-05-19 18:29:37 +01:00
Jack Grigg 9a80ae5cd1 bitvec 0.20 2021-05-19 18:29:37 +01:00
Jack Grigg 5623e02a7c Migrate to ff 0.9 et al. 2021-05-19 18:29:37 +01:00
Kris Nuttycombe 1dcba34167 Add checks against f4jumble test vectors. 2021-05-19 08:50:50 -06:00
Kris Nuttycombe 774d166fff Use VALID_LENGTH constant for f4jumble proptest generation. 2021-05-19 08:29:10 -06:00
Kris Nuttycombe 4346ca9e50 Apply suggestions from code review
Co-authored-by: str4d <jack@electriccoin.co>
2021-05-19 08:29:10 -06:00
Kris Nuttycombe 69ce777dd1 Use macros for personalization & iterator for g function.
Co-authored-by: str4d <jack@electriccoin.co>
2021-05-19 08:29:01 -06:00
Kris Nuttycombe 08a3fb9639 Implement F4Jumble 2021-05-19 08:28:58 -06:00
str4d 1b0f2060dd
Improve documentation of builder::Progress 2021-05-18 13:45:48 +01:00
Aditya Kulkarni f3aded9c84 Send builder progress 2021-05-17 09:44:42 -07:00
Kris Nuttycombe fd47ee3652 Fix missing method in in-memory wallet prototype. 2021-05-14 15:09:36 -06:00
Kris Nuttycombe 5540f36344
Merge pull request #10 from gmale/autoshield-poc-daa-taddr3
Changes to support internal ECC release
2021-05-14 14:49:04 -06:00
Kris Nuttycombe 8e3e7de50c Minor code cleanup. 2021-05-14 14:17:42 -06:00
Kevin Gorham bd65b01eb3
Remove drop accounts function. 2021-05-07 04:18:45 -04:00
Kevin Gorham 3828a814b5
Relax fk constraints. 2021-05-04 17:37:17 -04:00
str4d 05bd98b796
Merge pull request #380 from narodnik/jubjub_fr_random
Replace redundant code with call to Field::random() which does the same as the code.
2021-05-04 04:33:37 +01:00
Daira Hopwood da431a0eb2
rustfmt fix 2021-05-03 14:08:06 +01:00
narodnik 618a6165c7 Replace redundant code with call to Field::random() which does the same as the code. 2021-05-03 13:34:13 +02:00
Kevin Gorham 5a5100395a
Drop accounts table instead.
We need to recreate the table each time it is cleared to handle any migrations. This is mostly a stop-gap measure until the migrations and table creations are handled by the same code.
2021-04-30 23:06:28 -04:00
Kevin Gorham 08a5cfa80b
Add clear function for the accounts table. 2021-04-30 22:45:01 -04:00
Kevin Gorham 74434f370c
Fix: get rewind height when there are no unspent notes.
Previously, this function was not properly returning an optional.
2021-04-22 16:26:57 -04:00
Kevin Gorham 7fc2d9725c
Placeholder commit: just get things working.
Clean up later but for now don't allow nullable accountIds and also delete more data, during a rewind.
2021-04-20 10:13:47 -04:00
Kevin Gorham c1bc06964f Add get_all_nullifiers. 2021-04-16 14:27:18 -06:00
Kevin Gorham bb68744df1 Ensure that rewinds go far enough to properly restore incremental witness state. 2021-04-16 14:27:18 -06:00
Kris Nuttycombe 9b3025de4d Add ZIP-321 request based sends to zcash_client_backend. 2021-04-16 14:26:53 -06:00
Kevin Gorham 8e16d93f94 Update accounts table create statement.
This PR makes the opinionated change that T-addrs are required
to be supported when using the zcash_client_sqlite backend.
2021-04-16 14:26:53 -06:00
Kevin Gorham bdf56925e9 Insert into accounts table with taddrs. 2021-04-16 14:26:53 -06:00
Kevin Gorham 5595ca225c Add public key derivations and related tests. 2021-04-16 14:26:53 -06:00
Kris Nuttycombe 665c4c7aff Figure out the account ID for z->t spends. 2021-04-16 14:26:53 -06:00
Kris Nuttycombe 13cd7498b7 Store vout as part of store_decrypted_tx 2021-04-16 14:26:53 -06:00
Kris Nuttycombe 8828276361 Query for unspent utxos checks to ensure that spending tx is mined.
Also make it an error to try to send a memo to a transparent address.
2021-04-16 14:26:51 -06:00
Kris Nuttycombe b88ee47e36 Add confirmation depth to shield_funds 2021-04-16 14:23:28 -06:00
Kris Nuttycombe a3bc1e3e63 Rename get_spendable -> get_unspent 2021-04-16 14:23:28 -06:00