diff --git a/.changeset/six-geckos-yell.md b/.changeset/six-geckos-yell.md
new file mode 100644
index 0000000000..cbd578bc17
--- /dev/null
+++ b/.changeset/six-geckos-yell.md
@@ -0,0 +1,5 @@
+---
+'@penumbra-zone/wasm': minor
+---
+
+Update wasm deps to latest
diff --git a/packages/wasm/crate/Cargo.lock b/packages/wasm/crate/Cargo.lock
index 37ce4a1299..aa2b3b9ff4 100644
--- a/packages/wasm/crate/Cargo.lock
+++ b/packages/wasm/crate/Cargo.lock
@@ -70,6 +70,12 @@ dependencies = [
  "memchr",
 ]
 
+[[package]]
+name = "allocator-api2"
+version = "0.2.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f"
+
 [[package]]
 name = "android-tzdata"
 version = "0.1.1"
@@ -85,15 +91,6 @@ dependencies = [
  "libc",
 ]
 
-[[package]]
-name = "ansi_term"
-version = "0.12.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2"
-dependencies = [
- "winapi",
-]
-
 [[package]]
 name = "anyhow"
 version = "1.0.86"
@@ -126,6 +123,7 @@ dependencies = [
  "blake2",
  "derivative",
  "digest 0.10.7",
+ "rayon",
  "sha2 0.10.8",
 ]
 
@@ -143,6 +141,7 @@ dependencies = [
  "hashbrown 0.13.2",
  "itertools 0.10.5",
  "num-traits",
+ "rayon",
  "zeroize",
 ]
 
@@ -155,7 +154,6 @@ dependencies = [
  "ark-bls12-377",
  "ark-ec",
  "ark-ff",
- "ark-r1cs-std",
  "ark-std",
 ]
 
@@ -175,6 +173,7 @@ dependencies = [
  "num-bigint",
  "num-traits",
  "paste",
+ "rayon",
  "rustc_version",
  "zeroize",
 ]
@@ -215,6 +214,7 @@ dependencies = [
  "ark-relations",
  "ark-serialize",
  "ark-std",
+ "rayon",
 ]
 
 [[package]]
@@ -228,6 +228,7 @@ dependencies = [
  "ark-std",
  "derivative",
  "hashbrown 0.13.2",
+ "rayon",
 ]
 
 [[package]]
@@ -302,6 +303,7 @@ checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185"
 dependencies = [
  "num-traits",
  "rand",
+ "rayon",
 ]
 
 [[package]]
@@ -560,9 +562,9 @@ dependencies = [
 
 [[package]]
 name = "cc"
-version = "1.1.6"
+version = "1.1.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2aba8f4e9906c7ce3c73463f62a7f0c65183ada1a2d47e397cc8810827f9694f"
+checksum = "26a5c3fd7bfa1ce3897a3a3501d362b2d87b7f2583ebcb4a949ec25911025cbc"
 
 [[package]]
 name = "cfg-if"
@@ -670,6 +672,31 @@ dependencies = [
  "libc",
 ]
 
+[[package]]
+name = "crossbeam-deque"
+version = "0.8.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
+dependencies = [
+ "crossbeam-epoch",
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "crossbeam-epoch"
+version = "0.9.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
+dependencies = [
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "crossbeam-utils"
+version = "0.8.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80"
+
 [[package]]
 name = "crunchy"
 version = "0.2.2"
@@ -748,37 +775,10 @@ dependencies = [
 
 [[package]]
 name = "decaf377"
-version = "0.4.0"
+version = "0.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "75bb0f9fde498b60e4563c9346bbd4527d4ff4930a43c404ceb4cf63166c9ea4"
+checksum = "2097c5f69d06259112bea2024ddc41095c5001b503448f84ac169efc7cc8fd75"
 dependencies = [
- "anyhow",
- "ark-bls12-377",
- "ark-ec",
- "ark-ed-on-bls12-377",
- "ark-ff",
- "ark-groth16",
- "ark-r1cs-std",
- "ark-relations",
- "ark-serialize",
- "ark-snark",
- "ark-std",
- "hex",
- "num-bigint",
- "once_cell",
- "thiserror",
- "tracing",
- "tracing-subscriber",
- "zeroize",
-]
-
-[[package]]
-name = "decaf377"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a80011d442d81fccfbefb5bd0d20bf70f111ca544ffed943d335dacf6a85713"
-dependencies = [
- "anyhow",
  "ark-bls12-377",
  "ark-ec",
  "ark-ed-on-bls12-377",
@@ -789,36 +789,37 @@ dependencies = [
  "ark-serialize",
  "ark-snark",
  "ark-std",
+ "cfg-if",
+ "hashbrown 0.14.5",
  "hex",
  "num-bigint",
  "once_cell",
- "thiserror",
- "tracing",
- "tracing-subscriber",
+ "rand_core",
+ "subtle",
  "zeroize",
 ]
 
 [[package]]
 name = "decaf377-fmd"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "ark-ff",
  "ark-serialize",
  "bitvec",
  "blake2b_simd 1.0.2",
- "decaf377 0.5.0",
+ "decaf377",
  "rand_core",
  "thiserror",
 ]
 
 [[package]]
 name = "decaf377-ka"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "ark-ff",
- "decaf377 0.5.0",
+ "decaf377",
  "hex",
  "rand_core",
  "thiserror",
@@ -828,20 +829,20 @@ dependencies = [
 
 [[package]]
 name = "decaf377-rdsa"
-version = "0.9.0"
+version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2356bb010273c2b6e4e928b2bb442ddaa255ec242c16ff46cf9c3811fefa5ace"
+checksum = "437967a34e0699b50b986a72ce6c4e2e5930bde85ec8f3749701f7e50d6d32b0"
 dependencies = [
  "ark-ff",
  "ark-serialize",
  "blake2b_simd 0.5.11",
- "byteorder",
- "decaf377 0.5.0",
+ "decaf377",
  "digest 0.9.0",
  "hex",
  "rand_core",
  "serde",
  "thiserror",
+ "zeroize",
 ]
 
 [[package]]
@@ -1269,6 +1270,10 @@ name = "hashbrown"
 version = "0.14.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
+dependencies = [
+ "ahash",
+ "allocator-api2",
+]
 
 [[package]]
 name = "heck"
@@ -1672,9 +1677,9 @@ checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683"
 
 [[package]]
 name = "indexed_db_futures"
-version = "0.4.1"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6cc2083760572ee02385ab8b7c02c20925d2dd1f97a1a25a8737a238608f1152"
+checksum = "43315957678a70eb21fb0d2384fe86dde0d6c859a01e24ce127eb65a0143d28c"
 dependencies = [
  "accessory",
  "cfg-if",
@@ -1872,33 +1877,12 @@ dependencies = [
  "syn 2.0.72",
 ]
 
-[[package]]
-name = "matchers"
-version = "0.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f099785f7595cc4b4553a174ce30dd7589ef93391ff414dbb67f62392b9e0ce1"
-dependencies = [
- "regex-automata 0.1.10",
-]
-
 [[package]]
 name = "memchr"
 version = "2.7.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
 
-[[package]]
-name = "merlin"
-version = "3.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58c38e2799fc0978b65dfff8023ec7843e2330bb462f19198840b34b6582397d"
-dependencies = [
- "byteorder",
- "keccak",
- "rand_core",
- "zeroize",
-]
-
 [[package]]
 name = "metrics"
 version = "0.22.3"
@@ -1924,20 +1908,6 @@ version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "defc4c55412d89136f966bbb339008b474350e5e6e78d2714439c386b3137a03"
 
-[[package]]
-name = "num"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23"
-dependencies = [
- "num-bigint",
- "num-complex",
- "num-integer",
- "num-iter",
- "num-rational",
- "num-traits",
-]
-
 [[package]]
 name = "num-bigint"
 version = "0.4.6"
@@ -1948,15 +1918,6 @@ dependencies = [
  "num-traits",
 ]
 
-[[package]]
-name = "num-complex"
-version = "0.4.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495"
-dependencies = [
- "num-traits",
-]
-
 [[package]]
 name = "num-conv"
 version = "0.1.0"
@@ -1983,28 +1944,6 @@ dependencies = [
  "num-traits",
 ]
 
-[[package]]
-name = "num-iter"
-version = "0.1.45"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf"
-dependencies = [
- "autocfg",
- "num-integer",
- "num-traits",
-]
-
-[[package]]
-name = "num-rational"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824"
-dependencies = [
- "num-bigint",
- "num-integer",
- "num-traits",
-]
-
 [[package]]
 name = "num-traits"
 version = "0.2.19"
@@ -2139,8 +2078,8 @@ dependencies = [
 
 [[package]]
 name = "penumbra-asset"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "anyhow",
  "ark-ff",
@@ -2152,7 +2091,7 @@ dependencies = [
  "bech32",
  "blake2b_simd 1.0.2",
  "bytes",
- "decaf377 0.5.0",
+ "decaf377",
  "decaf377-fmd",
  "decaf377-rdsa",
  "derivative",
@@ -2177,8 +2116,8 @@ dependencies = [
 
 [[package]]
 name = "penumbra-auction"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "anyhow",
  "ark-ff",
@@ -2191,7 +2130,7 @@ dependencies = [
  "bech32",
  "bitvec",
  "blake2b_simd 1.0.2",
- "decaf377 0.5.0",
+ "decaf377",
  "decaf377-rdsa",
  "hex",
  "metrics",
@@ -2222,8 +2161,8 @@ dependencies = [
 
 [[package]]
 name = "penumbra-community-pool"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "anyhow",
  "ark-ff",
@@ -2252,8 +2191,8 @@ dependencies = [
 
 [[package]]
 name = "penumbra-compact-block"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "anyhow",
  "ark-ff",
@@ -2283,8 +2222,8 @@ dependencies = [
 
 [[package]]
 name = "penumbra-dex"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "anyhow",
  "ark-ff",
@@ -2298,7 +2237,7 @@ dependencies = [
  "base64 0.21.7",
  "bincode",
  "blake2b_simd 1.0.2",
- "decaf377 0.5.0",
+ "decaf377",
  "decaf377-fmd",
  "decaf377-ka",
  "decaf377-rdsa",
@@ -2336,8 +2275,8 @@ dependencies = [
 
 [[package]]
 name = "penumbra-distributions"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "anyhow",
  "async-trait",
@@ -2352,15 +2291,15 @@ dependencies = [
 
 [[package]]
 name = "penumbra-fee"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "anyhow",
  "ark-ff",
  "async-trait",
  "blake2b_simd 1.0.2",
  "bytes",
- "decaf377 0.5.0",
+ "decaf377",
  "decaf377-rdsa",
  "im",
  "metrics",
@@ -2376,8 +2315,8 @@ dependencies = [
 
 [[package]]
 name = "penumbra-governance"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "anyhow",
  "ark-ff",
@@ -2391,7 +2330,7 @@ dependencies = [
  "base64 0.21.7",
  "blake2b_simd 1.0.2",
  "bytes",
- "decaf377 0.5.0",
+ "decaf377",
  "decaf377-rdsa",
  "futures",
  "ibc-types",
@@ -2425,8 +2364,8 @@ dependencies = [
 
 [[package]]
 name = "penumbra-ibc"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "anyhow",
  "ark-ff",
@@ -2460,8 +2399,8 @@ dependencies = [
 
 [[package]]
 name = "penumbra-keys"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "aes",
  "anyhow",
@@ -2476,7 +2415,7 @@ dependencies = [
  "blake2b_simd 1.0.2",
  "bytes",
  "chacha20poly1305",
- "decaf377 0.5.0",
+ "decaf377",
  "decaf377-fmd",
  "decaf377-ka",
  "decaf377-rdsa",
@@ -2504,8 +2443,8 @@ dependencies = [
 
 [[package]]
 name = "penumbra-num"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "anyhow",
  "ark-ff",
@@ -2519,7 +2458,7 @@ dependencies = [
  "bech32",
  "blake2b_simd 1.0.2",
  "bytes",
- "decaf377 0.5.0",
+ "decaf377",
  "decaf377-fmd",
  "decaf377-rdsa",
  "derivative",
@@ -2540,8 +2479,8 @@ dependencies = [
 
 [[package]]
 name = "penumbra-proof-params"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "anyhow",
  "ark-ec",
@@ -2553,7 +2492,7 @@ dependencies = [
  "ark-snark",
  "ark-std",
  "bech32",
- "decaf377 0.5.0",
+ "decaf377",
  "lazy_static",
  "num-bigint",
  "once_cell",
@@ -2566,8 +2505,8 @@ dependencies = [
 
 [[package]]
 name = "penumbra-proto"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "anyhow",
  "async-trait",
@@ -2593,8 +2532,8 @@ dependencies = [
 
 [[package]]
 name = "penumbra-sct"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "anyhow",
  "ark-ff",
@@ -2606,7 +2545,7 @@ dependencies = [
  "blake2b_simd 1.0.2",
  "bytes",
  "chrono",
- "decaf377 0.5.0",
+ "decaf377",
  "decaf377-rdsa",
  "hex",
  "im",
@@ -2626,8 +2565,8 @@ dependencies = [
 
 [[package]]
 name = "penumbra-shielded-pool"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "anyhow",
  "ark-ff",
@@ -2642,7 +2581,7 @@ dependencies = [
  "blake2b_simd 1.0.2",
  "bytes",
  "chacha20poly1305",
- "decaf377 0.5.0",
+ "decaf377",
  "decaf377-fmd",
  "decaf377-ka",
  "decaf377-rdsa",
@@ -2677,8 +2616,8 @@ dependencies = [
 
 [[package]]
 name = "penumbra-stake"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "anyhow",
  "ark-ff",
@@ -2690,7 +2629,7 @@ dependencies = [
  "base64 0.21.7",
  "bech32",
  "bitvec",
- "decaf377 0.5.0",
+ "decaf377",
  "decaf377-rdsa",
  "hex",
  "once_cell",
@@ -2718,8 +2657,8 @@ dependencies = [
 
 [[package]]
 name = "penumbra-tct"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "ark-ed-on-bls12-377",
  "ark-ff",
@@ -2728,7 +2667,7 @@ dependencies = [
  "ark-serialize",
  "async-trait",
  "blake2b_simd 1.0.2",
- "decaf377 0.5.0",
+ "decaf377",
  "derivative",
  "futures",
  "hash_hasher",
@@ -2746,8 +2685,8 @@ dependencies = [
 
 [[package]]
 name = "penumbra-transaction"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "anyhow",
  "ark-ff",
@@ -2757,7 +2696,7 @@ dependencies = [
  "blake2b_simd 1.0.2",
  "bytes",
  "chacha20poly1305",
- "decaf377 0.5.0",
+ "decaf377",
  "decaf377-fmd",
  "decaf377-ka",
  "decaf377-rdsa",
@@ -2797,11 +2736,12 @@ dependencies = [
 
 [[package]]
 name = "penumbra-txhash"
-version = "0.79.0"
-source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.0#54d114c668bd8ec78762ac7d682610b356f57fc8"
+version = "0.79.3"
+source = "git+https://github.com/penumbra-zone/penumbra.git?tag=v0.79.3#51158181a690118dfa443397525347ec1c4fcb99"
 dependencies = [
  "anyhow",
  "blake2b_simd 1.0.2",
+ "getrandom",
  "hex",
  "penumbra-proto",
  "penumbra-tct",
@@ -2816,7 +2756,7 @@ dependencies = [
  "ark-ff",
  "base64 0.22.1",
  "console_error_panic_hook",
- "decaf377 0.5.0",
+ "decaf377",
  "hex",
  "indexed_db_futures",
  "penumbra-asset",
@@ -2918,53 +2858,34 @@ checksum = "da544ee218f0d287a911e9c99a39a8c9bc8fcad3cb8db5959940044ecfc67265"
 
 [[package]]
 name = "poseidon-parameters"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58236ff8bf455c13046c92f041e887c4fd0e64819387a81177d6c70ebeb41711"
-dependencies = [
- "anyhow",
- "ark-ff",
- "num-integer",
-]
-
-[[package]]
-name = "poseidon-paramgen"
-version = "0.4.0"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a69506f91189a68bff6c0e4f8c2beaf6b053430be7743059a0110477e9c28fda"
+checksum = "f6df50e93cde74d26eb66c9674fccde32172e915a420fe2a73fda39ab377f709"
 dependencies = [
- "anyhow",
- "ark-ff",
- "ark-std",
- "getrandom",
- "merlin",
- "num",
- "num-bigint",
- "poseidon-parameters",
- "rand_core",
+ "decaf377",
 ]
 
 [[package]]
 name = "poseidon-permutation"
-version = "0.5.0"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a022268b53cec1e99c4bd8c81be249709e971b78a433d9f5556e31f3cd7730b0"
+checksum = "03c4e1e8d622017ece288f1a1b06f0bfeaacaa4166fa155a91103317299452e2"
 dependencies = [
  "ark-ff",
  "ark-r1cs-std",
  "ark-relations",
  "ark-std",
+ "decaf377",
  "poseidon-parameters",
 ]
 
 [[package]]
 name = "poseidon377"
-version = "0.6.0"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11dbcae1c9e4624576dd7631a1f2419a18afeaeef104263d70b6f20256ea5b72"
+checksum = "ae0544874afdaf74b69efc90795c66ea7a494faeb2981a0585d46c757ee2fa94"
 dependencies = [
  "ark-ec",
- "ark-ed-on-bls12-377",
  "ark-ff",
  "ark-groth16",
  "ark-r1cs-std",
@@ -2972,13 +2893,9 @@ dependencies = [
  "ark-serialize",
  "ark-snark",
  "ark-std",
- "decaf377 0.4.0",
- "num-bigint",
- "once_cell",
+ "decaf377",
  "poseidon-parameters",
- "poseidon-paramgen",
  "poseidon-permutation",
- "tracing",
 ]
 
 [[package]]
@@ -3149,6 +3066,26 @@ dependencies = [
  "rand_core",
 ]
 
+[[package]]
+name = "rayon"
+version = "1.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
+dependencies = [
+ "either",
+ "rayon-core",
+]
+
+[[package]]
+name = "rayon-core"
+version = "1.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
+dependencies = [
+ "crossbeam-deque",
+ "crossbeam-utils",
+]
+
 [[package]]
 name = "redox_syscall"
 version = "0.5.3"
@@ -3166,17 +3103,8 @@ checksum = "b91213439dad192326a0d7c6ee3955910425f441d7038e0d6933b0aec5c4517f"
 dependencies = [
  "aho-corasick",
  "memchr",
- "regex-automata 0.4.7",
- "regex-syntax 0.8.4",
-]
-
-[[package]]
-name = "regex-automata"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
-dependencies = [
- "regex-syntax 0.6.29",
+ "regex-automata",
+ "regex-syntax",
 ]
 
 [[package]]
@@ -3187,15 +3115,9 @@ checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df"
 dependencies = [
  "aho-corasick",
  "memchr",
- "regex-syntax 0.8.4",
+ "regex-syntax",
 ]
 
-[[package]]
-name = "regex-syntax"
-version = "0.6.29"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
-
 [[package]]
 name = "regex-syntax"
 version = "0.8.4"
@@ -3381,11 +3303,12 @@ dependencies = [
 
 [[package]]
 name = "serde_json"
-version = "1.0.120"
+version = "1.0.121"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4e0d21c9a8cae1235ad58a00c11cb40d4b1e5c784f1ef2c537876ed6ffd8b7c5"
+checksum = "4ab380d7d9f22ef3f21ad3e6c1ebe8e4fc7a2000ccba2e4d71fc96f15b2cb609"
 dependencies = [
  "itoa",
+ "memchr",
  "ryu",
  "serde",
 ]
@@ -3484,15 +3407,6 @@ dependencies = [
  "keccak",
 ]
 
-[[package]]
-name = "sharded-slab"
-version = "0.1.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6"
-dependencies = [
- "lazy_static",
-]
-
 [[package]]
 name = "signature"
 version = "2.2.0"
@@ -3552,9 +3466,9 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
 
 [[package]]
 name = "subtle"
-version = "2.4.1"
+version = "2.6.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601"
+checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292"
 
 [[package]]
 name = "subtle-encoding"
@@ -3691,16 +3605,6 @@ dependencies = [
  "syn 2.0.72",
 ]
 
-[[package]]
-name = "thread_local"
-version = "1.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c"
-dependencies = [
- "cfg-if",
- "once_cell",
-]
-
 [[package]]
 name = "time"
 version = "0.3.36"
@@ -3734,9 +3638,9 @@ dependencies = [
 
 [[package]]
 name = "tokio"
-version = "1.39.1"
+version = "1.39.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d040ac2b29ab03b09d4129c2f5bbd012a3ac2f79d38ff506a4bf8dd34b0eac8a"
+checksum = "daa4fb1bc778bd6f04cbfc4bb2d06a7396a8f299dc33ea1900cedaa316f467b1"
 dependencies = [
  "backtrace",
  "pin-project-lite",
@@ -3755,9 +3659,9 @@ dependencies = [
 
 [[package]]
 name = "toml_datetime"
-version = "0.6.6"
+version = "0.6.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf"
+checksum = "f8fb9f64314842840f1d940ac544da178732128f1c78c21772e876579e0da1db"
 
 [[package]]
 name = "toml_edit"
@@ -3826,47 +3730,13 @@ dependencies = [
  "valuable",
 ]
 
-[[package]]
-name = "tracing-log"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f751112709b4e791d8ce53e32c4ed2d353565a795ce84da2285393f41557bdf2"
-dependencies = [
- "log",
- "once_cell",
- "tracing-core",
-]
-
-[[package]]
-name = "tracing-serde"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1"
-dependencies = [
- "serde",
- "tracing-core",
-]
-
 [[package]]
 name = "tracing-subscriber"
 version = "0.2.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0e0d2eaa99c3c2e41547cfa109e910a68ea03823cccad4a0525dcbc9b01e8c71"
 dependencies = [
- "ansi_term",
- "chrono",
- "lazy_static",
- "matchers",
- "regex",
- "serde",
- "serde_json",
- "sharded-slab",
- "smallvec",
- "thread_local",
- "tracing",
  "tracing-core",
- "tracing-log",
- "tracing-serde",
 ]
 
 [[package]]
@@ -3901,9 +3771,9 @@ checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
 
 [[package]]
 name = "universal-hash"
-version = "0.4.1"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f214e8f697e925001e66ec2c6e37a4ef93f0f78c2eed7814394e10c62025b05"
+checksum = "8326b2c654932e3e4f9196e69d08fdf7cfd718e1dc6f66b347e6024a0c961402"
 dependencies = [
  "generic-array",
  "subtle",
@@ -3911,9 +3781,9 @@ dependencies = [
 
 [[package]]
 name = "uuid"
-version = "1.6.1"
+version = "1.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e395fcf16a7a3d8127ec99782007af141946b4795001f876d54fb0d55978560"
+checksum = "81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314"
 dependencies = [
  "getrandom",
  "wasm-bindgen",
@@ -3927,9 +3797,9 @@ checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d"
 
 [[package]]
 name = "version_check"
-version = "0.9.4"
+version = "0.9.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
+checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
 
 [[package]]
 name = "wasi"
@@ -4038,28 +3908,6 @@ dependencies = [
  "wasm-bindgen",
 ]
 
-[[package]]
-name = "winapi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
-dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
-]
-
-[[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-
-[[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-
 [[package]]
 name = "windows-core"
 version = "0.52.0"
diff --git a/packages/wasm/crate/Cargo.toml b/packages/wasm/crate/Cargo.toml
index 0a5d8a291d..98d2273b55 100644
--- a/packages/wasm/crate/Cargo.toml
+++ b/packages/wasm/crate/Cargo.toml
@@ -14,39 +14,39 @@ default = ["console_error_panic_hook"]
 mock-database = []
 
 [dependencies]
-penumbra-auction = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.0", package = "penumbra-auction", default-features = false }
-penumbra-asset = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.0", package = "penumbra-asset" }
-penumbra-compact-block = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.0", package = "penumbra-compact-block", default-features = false }
-penumbra-dex = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.0", package = "penumbra-dex", default-features = false }
-penumbra-fee = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.0", package = "penumbra-fee", default-features = false }
-penumbra-governance = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.0", package = "penumbra-governance", default-features = false }
-penumbra-keys = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.0", package = "penumbra-keys" }
-penumbra-num = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.0", package = "penumbra-num" }
-penumbra-proof-params = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.0", package = "penumbra-proof-params", default-features = false }
-penumbra-proto = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.0", package = "penumbra-proto", default-features = false }
-penumbra-sct = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.0", package = "penumbra-sct", default-features = false }
-penumbra-shielded-pool = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.0", package = "penumbra-shielded-pool", default-features = false }
-penumbra-stake = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.0", package = "penumbra-stake", default-features = false }
-penumbra-tct = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.0", package = "penumbra-tct" }
-penumbra-transaction = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.0", package = "penumbra-transaction", default-features = false }
+penumbra-auction = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.3", package = "penumbra-auction", default-features = false }
+penumbra-asset = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.3", package = "penumbra-asset" }
+penumbra-compact-block = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.3", package = "penumbra-compact-block", default-features = false }
+penumbra-dex = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.3", package = "penumbra-dex", default-features = false }
+penumbra-fee = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.3", package = "penumbra-fee", default-features = false }
+penumbra-governance = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.3", package = "penumbra-governance", default-features = false }
+penumbra-keys = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.3", package = "penumbra-keys" }
+penumbra-num = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.3", package = "penumbra-num" }
+penumbra-proof-params = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.3", package = "penumbra-proof-params", default-features = false }
+penumbra-proto = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.3", package = "penumbra-proto", default-features = false }
+penumbra-sct = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.3", package = "penumbra-sct", default-features = false }
+penumbra-shielded-pool = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.3", package = "penumbra-shielded-pool", default-features = false }
+penumbra-stake = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.3", package = "penumbra-stake", default-features = false }
+penumbra-tct = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.3", package = "penumbra-tct" }
+penumbra-transaction = { git = "https://github.com/penumbra-zone/penumbra.git", tag = "v0.79.3", package = "penumbra-transaction", default-features = false }
 
 anyhow = "1.0.86"
 ark-ff = { version = "0.4.2", features = ["std"] }
 base64 = "0.22.1"
 console_error_panic_hook = { version = "0.1.7", optional = true }
-decaf377 = { version = "0.5.0", features = ["r1cs"] }
+decaf377 = { version = "0.10.1", features = ["r1cs"] }
 hex = "0.4.3"
-indexed_db_futures = "0.4.1"
+indexed_db_futures = "0.5.0"
 prost = "0.12.6"
 rand_core = { version = "0.6.4", features = ["getrandom"] }
 regex = { version = "1.10.5" }
 serde = { version = "1.0.204", features = ["derive"] }
 serde-wasm-bindgen = "0.6.5"
-thiserror = "1.0.61"
+thiserror = "1.0.63"
 wasm-bindgen = "0.2.92"
 wasm-bindgen-futures = "0.4.42"
 web-sys = { version = "0.3.69", features = ["console"] }
 
 [dev-dependencies]
 wasm-bindgen-test = "0.3.42"
-serde_json = "1.0.120"
+serde_json = "1.0.121"
diff --git a/packages/wasm/crate/src/planner.rs b/packages/wasm/crate/src/planner.rs
index e21e370a92..80b58fe815 100644
--- a/packages/wasm/crate/src/planner.rs
+++ b/packages/wasm/crate/src/planner.rs
@@ -2,7 +2,6 @@ use std::collections::BTreeMap;
 use std::mem;
 
 use anyhow::anyhow;
-use ark_ff::UniformRand;
 use decaf377::{Fq, Fr};
 use penumbra_asset::asset::{Id, Metadata};
 use penumbra_asset::Value;