diff --git a/Cargo.lock b/Cargo.lock index 0c1403a..e20e014 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4,9 +4,9 @@ version = 3 [[package]] name = "addr2line" -version = "0.19.0" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97" +checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" dependencies = [ "gimli", ] @@ -19,9 +19,9 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" [[package]] name = "aes" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "433cfd6710c9986c576a25ca913c39d66a6474107b406f34f91d4a8923395241" +checksum = "ac1f845298e95f983ff1944b728ae08b8cebab80d684f0a832ed0fc74dfa27e2" dependencies = [ "cfg-if", "cipher", @@ -34,7 +34,7 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" dependencies = [ - "getrandom 0.2.9", + "getrandom 0.2.10", "once_cell", "version_check", ] @@ -249,9 +249,9 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] name = "backtrace" -version = "0.3.67" +version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "233d376d6d185f2a3093e58f283f60f880315b6c60075b01f36b3b85154564ca" +checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" dependencies = [ "addr2line", "cc", @@ -265,7 +265,7 @@ dependencies = [ [[package]] name = "bbs_plus" version = "0.16.0" -source = "git+https://github.com/docknetwork/crypto#c39cafd6b769b689e268947ad8d55538fc5d6a8a" +source = "git+https://github.com/docknetwork/crypto#652b6893691b154c2f0e3836cc032fe7da50e954" dependencies = [ "ark-ec", "ark-ff", @@ -289,6 +289,18 @@ version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" +[[package]] +name = "bitvec" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" +dependencies = [ + "funty", + "radium", + "tap", + "wyz", +] + [[package]] name = "blake2" version = "0.10.6" @@ -309,15 +321,15 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.12.0" +version = "3.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535" +checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1" [[package]] name = "bytecheck" -version = "0.6.10" +version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13fe11640a23eb24562225322cd3e452b93a3d4091d62fab69c70542fcd17d1f" +checksum = "8b6372023ac861f6e6dc89c8344a8f398fb42aaba2b5dbc649ca0c0e9dbcb627" dependencies = [ "bytecheck_derive", "ptr_meta", @@ -326,9 +338,9 @@ dependencies = [ [[package]] name = "bytecheck_derive" -version = "0.6.10" +version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e31225543cb46f81a7e224762764f4a6a0f097b1db0b175f69e8065efaa42de5" +checksum = "a7ec4c6f261935ad534c0c22dbef2201b45918860eb1c574b972bd213a76af61" dependencies = [ "proc-macro2", "quote", @@ -349,9 +361,12 @@ checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be" [[package]] name = "cc" -version = "1.0.79" +version = "1.0.83" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f" +checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" +dependencies = [ + "libc", +] [[package]] name = "cfg-if" @@ -372,7 +387,7 @@ dependencies = [ [[package]] name = "coconut-crypto" version = "0.5.0" -source = "git+https://github.com/docknetwork/crypto#c39cafd6b769b689e268947ad8d55538fc5d6a8a" +source = "git+https://github.com/docknetwork/crypto#652b6893691b154c2f0e3836cc032fe7da50e954" dependencies = [ "ark-ec", "ark-ff", @@ -401,9 +416,9 @@ dependencies = [ [[package]] name = "corosensei" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9847f90f32a50b0dcbd68bc23ff242798b13080b97b0569f6ed96a45ce4cf2cd" +checksum = "80128832c58ea9cbd041d2a759ec449224487b2c1e400453d99d244eead87a8e" dependencies = [ "autocfg", "cfg-if", @@ -414,9 +429,9 @@ dependencies = [ [[package]] name = "cpufeatures" -version = "0.2.6" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "280a9f2d8b3a38871a3c8a46fb80db65e5e5ed97da80c4d08bf27fb63e35e181" +checksum = "a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1" dependencies = [ "libc", ] @@ -443,12 +458,12 @@ dependencies = [ [[package]] name = "darling" -version = "0.14.4" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850" +checksum = "0209d94da627ab5605dcccf08bb18afa5009cfbef48d8a8b7d7bdbc79be25c5e" dependencies = [ - "darling_core 0.14.4", - "darling_macro 0.14.4", + "darling_core 0.20.3", + "darling_macro 0.20.3", ] [[package]] @@ -467,15 +482,15 @@ dependencies = [ [[package]] name = "darling_core" -version = "0.14.4" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0" +checksum = "177e3443818124b357d8e76f53be906d60937f0d3a90773a664fa63fa253e621" dependencies = [ "fnv", "ident_case", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.31", ] [[package]] @@ -491,23 +506,23 @@ dependencies = [ [[package]] name = "darling_macro" -version = "0.14.4" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e" +checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5" dependencies = [ - "darling_core 0.14.4", + "darling_core 0.20.3", "quote", - "syn 1.0.109", + "syn 2.0.31", ] [[package]] name = "dashmap" -version = "5.4.0" +version = "5.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "907076dfda823b0b36d2a1bb5f90c96660a5bbcd7729e10727f07858f22c4edc" +checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" dependencies = [ "cfg-if", - "hashbrown 0.12.3", + "hashbrown 0.14.0", "lock_api", "once_cell", "parking_lot_core", @@ -526,9 +541,9 @@ dependencies = [ [[package]] name = "digest" -version = "0.10.6" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ "block-buffer", "crypto-common", @@ -547,7 +562,7 @@ dependencies = [ [[package]] name = "dock_crypto_utils" version = "0.15.0" -source = "git+https://github.com/docknetwork/crypto#c39cafd6b769b689e268947ad8d55538fc5d6a8a" +source = "git+https://github.com/docknetwork/crypto#652b6893691b154c2f0e3836cc032fe7da50e954" dependencies = [ "ark-ec", "ark-ff", @@ -579,7 +594,7 @@ dependencies = [ "console_error_panic_hook", "dlmalloc", "dock_crypto_utils", - "getrandom 0.2.9", + "getrandom 0.2.10", "js-sys", "legogroth16", "oblivious_transfer_protocols", @@ -602,7 +617,7 @@ dependencies = [ [[package]] name = "dock_merlin" version = "2.0.0" -source = "git+https://github.com/docknetwork/crypto#c39cafd6b769b689e268947ad8d55538fc5d6a8a" +source = "git+https://github.com/docknetwork/crypto#652b6893691b154c2f0e3836cc032fe7da50e954" dependencies = [ "ark-serialize", "ark-std", @@ -615,9 +630,9 @@ dependencies = [ [[package]] name = "either" -version = "1.8.1" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91" +checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" [[package]] name = "enum-iterator" @@ -641,23 +656,23 @@ dependencies = [ [[package]] name = "enumset" -version = "1.0.12" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19be8061a06ab6f3a6cf21106c873578bf01bd42ad15e0311a9c76161cb1c753" +checksum = "e875f1719c16de097dee81ed675e2d9bb63096823ed3f0ca827b7dea3028bbbb" dependencies = [ "enumset_derive", ] [[package]] name = "enumset_derive" -version = "0.6.1" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03e7b551eba279bf0fa88b83a46330168c1560a52a94f5126f892f0b364ab3e0" +checksum = "e08b6c6ab82d70f08844964ba10c7babb716de2ecaeab9be5717918a5177d3af" dependencies = [ - "darling 0.14.4", + "darling 0.20.3", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.31", ] [[package]] @@ -675,6 +690,12 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "funty" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" + [[package]] name = "generic-array" version = "0.14.7" @@ -700,9 +721,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.9" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c85e1d9ab2eadba7e5040d4e09cbd6d072b76a557ad64e797c2cb9d4da21d7e4" +checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427" dependencies = [ "cfg-if", "js-sys", @@ -713,9 +734,9 @@ dependencies = [ [[package]] name = "gimli" -version = "0.27.2" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0a93d233ebf96623465aad4046a8d3aa4da22d4f4beba5388838c8a434bbb4" +checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" [[package]] name = "hashbrown" @@ -735,6 +756,12 @@ dependencies = [ "ahash 0.8.3", ] +[[package]] +name = "hashbrown" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a" + [[package]] name = "ident_case" version = "1.0.1" @@ -781,15 +808,15 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.6" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6" +checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38" [[package]] name = "js-sys" -version = "0.3.60" +version = "0.3.63" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49409df3e3bf0856b916e2ceaca09ee28e6871cf7d9ce97a692cacfdb2a25a47" +checksum = "2f37a4a5928311ac501dee68b3c7613a1037d0edb30c8e5427bd832d55d1b790" dependencies = [ "wasm-bindgen", ] @@ -818,7 +845,7 @@ checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" [[package]] name = "legogroth16" version = "0.10.0" -source = "git+https://github.com/docknetwork/crypto#c39cafd6b769b689e268947ad8d55538fc5d6a8a" +source = "git+https://github.com/docknetwork/crypto#652b6893691b154c2f0e3836cc032fe7da50e954" dependencies = [ "ark-ec", "ark-ff", @@ -837,9 +864,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.141" +version = "0.2.147" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3304a64d199bb964be99741b7a14d26972741915b3649639149b2479bb46f4b5" +checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3" [[package]] name = "lock_api" @@ -853,12 +880,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.17" +version = "0.4.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" -dependencies = [ - "cfg-if", -] +checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" [[package]] name = "mach" @@ -871,9 +895,9 @@ dependencies = [ [[package]] name = "memchr" -version = "2.5.0" +version = "2.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" +checksum = "8f232d6ef707e1956a43342693d2a31e72989554d58299d7a88738cc95b0d35c" [[package]] name = "memmap2" @@ -895,9 +919,9 @@ dependencies = [ [[package]] name = "miniz_oxide" -version = "0.6.2" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa" +checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" dependencies = [ "adler", ] @@ -923,9 +947,9 @@ dependencies = [ [[package]] name = "num-bigint" -version = "0.4.3" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f93ab6289c7b344a8a9f60f88d80aa20032336fe78da341afc91c8a2341fc75f" +checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" dependencies = [ "autocfg", "num-integer", @@ -975,18 +999,18 @@ dependencies = [ [[package]] name = "num-traits" -version = "0.2.15" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" +checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2" dependencies = [ "autocfg", ] [[package]] name = "object" -version = "0.30.3" +version = "0.32.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea86265d3d3dcb6a27fc51bd29a4bf387fae9d2986b823079d4986af253eb439" +checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" dependencies = [ "memchr", ] @@ -994,7 +1018,7 @@ dependencies = [ [[package]] name = "oblivious_transfer_protocols" version = "0.3.0" -source = "git+https://github.com/docknetwork/crypto#c39cafd6b769b689e268947ad8d55538fc5d6a8a" +source = "git+https://github.com/docknetwork/crypto#652b6893691b154c2f0e3836cc032fe7da50e954" dependencies = [ "aes", "ark-ec", @@ -1016,9 +1040,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.17.1" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3" +checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" [[package]] name = "parking_lot_core" @@ -1035,9 +1059,9 @@ dependencies = [ [[package]] name = "paste" -version = "1.0.12" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f746c4065a8fa3fe23974dd82f15431cc8d40779821001404d10d2e79ca7d79" +checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" [[package]] name = "percent-encoding" @@ -1047,9 +1071,9 @@ checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" [[package]] name = "pin-project-lite" -version = "0.2.9" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" +checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" [[package]] name = "ppv-lite86" @@ -1083,9 +1107,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.56" +version = "1.0.66" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b63bdb0cd06f1f4dedf69b254734f9b45af66e4a031e42a7480257d9898b435" +checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9" dependencies = [ "unicode-ident", ] @@ -1093,7 +1117,7 @@ dependencies = [ [[package]] name = "proof_system" version = "0.22.0" -source = "git+https://github.com/docknetwork/crypto#c39cafd6b769b689e268947ad8d55538fc5d6a8a" +source = "git+https://github.com/docknetwork/crypto#652b6893691b154c2f0e3836cc032fe7da50e954" dependencies = [ "ark-ec", "ark-ff", @@ -1139,13 +1163,19 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.26" +version = "1.0.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc" +checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" dependencies = [ "proc-macro2", ] +[[package]] +name = "radium" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" + [[package]] name = "rand" version = "0.7.3" @@ -1245,10 +1275,11 @@ dependencies = [ [[package]] name = "rkyv" -version = "0.7.41" +version = "0.7.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21499ed91807f07ae081880aabb2ccc0235e9d88011867d984525e9a4c3cfa3e" +checksum = "0200c8230b013893c0b2d6213d6ec64ed2b9be2e0e016682b7224ff82cff5c58" dependencies = [ + "bitvec", "bytecheck", "hashbrown 0.12.3", "indexmap", @@ -1256,13 +1287,15 @@ dependencies = [ "rend", "rkyv_derive", "seahash", + "tinyvec", + "uuid", ] [[package]] name = "rkyv_derive" -version = "0.7.41" +version = "0.7.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac1c672430eb41556291981f45ca900a0239ad007242d1cb4b4167af842db666" +checksum = "b2e06b915b5c230a17d7a736d1e2e63ee753c256a8614ef3f5147b13a4f5541d" dependencies = [ "proc-macro2", "quote", @@ -1271,9 +1304,9 @@ dependencies = [ [[package]] name = "rustc-demangle" -version = "0.1.22" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4a36c42d1873f9a77c53bde094f9664d9891bc604a45b4798fd2c389ed12e5b" +checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" [[package]] name = "rustc_version" @@ -1286,14 +1319,14 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.13" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041" +checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741" [[package]] name = "saver" version = "0.13.0" -source = "git+https://github.com/docknetwork/crypto#c39cafd6b769b689e268947ad8d55538fc5d6a8a" +source = "git+https://github.com/docknetwork/crypto#652b6893691b154c2f0e3836cc032fe7da50e954" dependencies = [ "ark-ec", "ark-ff", @@ -1314,7 +1347,7 @@ dependencies = [ [[package]] name = "schnorr_pok" version = "0.14.0" -source = "git+https://github.com/docknetwork/crypto#c39cafd6b769b689e268947ad8d55538fc5d6a8a" +source = "git+https://github.com/docknetwork/crypto#652b6893691b154c2f0e3836cc032fe7da50e954" dependencies = [ "ark-ec", "ark-ff", @@ -1335,9 +1368,9 @@ checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" [[package]] name = "scopeguard" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] name = "seahash" @@ -1348,7 +1381,7 @@ checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" [[package]] name = "secret_sharing_and_dkg" version = "0.7.0" -source = "git+https://github.com/docknetwork/crypto#c39cafd6b769b689e268947ad8d55538fc5d6a8a" +source = "git+https://github.com/docknetwork/crypto#652b6893691b154c2f0e3836cc032fe7da50e954" dependencies = [ "ark-ec", "ark-ff", @@ -1365,15 +1398,15 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.17" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed" +checksum = "b0293b4b29daaf487284529cc2f5675b8e57c61f70167ba415a463651fd6a918" [[package]] name = "serde" -version = "1.0.159" +version = "1.0.188" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c04e8343c3daeec41f58990b9d77068df31209f2af111e059e9fe9646693065" +checksum = "cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e" dependencies = [ "serde_derive", ] @@ -1391,20 +1424,20 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.159" +version = "1.0.188" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c614d17805b093df4b147b51339e7e44bf05ef59fba1e45d83500bcfb4d8585" +checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.13", + "syn 2.0.31", ] [[package]] name = "serde_json" -version = "1.0.95" +version = "1.0.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d721eca97ac802aa7777b701877c8004d950fc142651367300d21c1cc0194744" +checksum = "693151e1ac27563d6dbcec9dee9fbd5da8539b20fa14ad3752b2e6d363ace360" dependencies = [ "itoa", "ryu", @@ -1435,9 +1468,9 @@ dependencies = [ [[package]] name = "sha2" -version = "0.10.6" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0" +checksum = "479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8" dependencies = [ "cfg-if", "cpufeatures", @@ -1462,9 +1495,9 @@ checksum = "f27f6278552951f1f2b8cf9da965d10969b2efdea95a6ec47987ab46edfe263a" [[package]] name = "smallvec" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" +checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9" [[package]] name = "strsim" @@ -1474,9 +1507,9 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" [[package]] name = "subtle" -version = "2.4.1" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" +checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" [[package]] name = "syn" @@ -1491,39 +1524,45 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.13" +version = "2.0.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c9da457c5285ac1f936ebd076af6dac17a61cfe7826f2076b4d015cf47bc8ec" +checksum = "718fa2415bcb8d8bd775917a1bf12a7931b6dfa890753378538118181e0cb398" dependencies = [ "proc-macro2", "quote", "unicode-ident", ] +[[package]] +name = "tap" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" + [[package]] name = "target-lexicon" -version = "0.12.6" +version = "0.12.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ae9980cab1db3fceee2f6c6f643d5d8de2997c58ee8d25fb0cc8a9e9e7348e5" +checksum = "9d0e916b1148c8e263850e1ebcbd046f333e0683c724876bb0da63ea4373dc8a" [[package]] name = "thiserror" -version = "1.0.40" +version = "1.0.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac" +checksum = "9d6d7a740b8a666a7e828dd00da9c0dc290dff53154ea77ac109281de90589b7" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.40" +version = "1.0.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f" +checksum = "49922ecae66cc8a249b77e68d1d0623c1b2c514f0060c27cdc68bd62a1219d35" dependencies = [ "proc-macro2", "quote", - "syn 2.0.13", + "syn 2.0.31", ] [[package]] @@ -1555,20 +1594,20 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.23" +version = "0.1.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4017f8f45139870ca7e672686113917c71c7a6e02d4924eda67186083c03081a" +checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.31", ] [[package]] name = "tracing-core" -version = "0.1.30" +version = "0.1.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24eb03ba0eab1fd845050058ce5e616558e8f8d8fca633e6b163fe25c797213a" +checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a" [[package]] name = "typenum" @@ -1584,9 +1623,9 @@ checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" [[package]] name = "unicode-ident" -version = "1.0.8" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4" +checksum = "301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c" [[package]] name = "unicode-normalization" @@ -1599,19 +1638,25 @@ dependencies = [ [[package]] name = "url" -version = "2.4.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb" +checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5" dependencies = [ "form_urlencoded", "idna", "percent-encoding", ] +[[package]] +name = "uuid" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79daa5ed5740825c40b389c5e50312b9c86df53fccd33f281df655642b43869d" + [[package]] name = "vb_accumulator" version = "0.17.0" -source = "git+https://github.com/docknetwork/crypto#c39cafd6b769b689e268947ad8d55538fc5d6a8a" +source = "git+https://github.com/docknetwork/crypto#652b6893691b154c2f0e3836cc032fe7da50e954" dependencies = [ "ark-ec", "ark-ff", @@ -1665,7 +1710,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.13", + "syn 2.0.31", "wasm-bindgen-shared", ] @@ -1694,9 +1739,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.33" +version = "0.4.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23639446165ca5a5de86ae1d8896b737ae80319560fbaa4c2887b7da6e7ebd7d" +checksum = "2d1985d03709c53167ce907ff394f5316aa22cb4e12761295c5dc57dacb6297e" dependencies = [ "cfg-if", "js-sys", @@ -1722,7 +1767,7 @@ checksum = "e128beba882dd1eb6200e1dc92ae6c5dbaa4311aa7bb211ca035779e5efc39f8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.13", + "syn 2.0.31", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -1735,9 +1780,9 @@ checksum = "ed9d5b4305409d1fc9482fee2d7f9bcbf24b3972bf59817ef757e23982242a93" [[package]] name = "wasm-bindgen-test" -version = "0.3.33" +version = "0.3.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09d2fff962180c3fadf677438054b1db62bee4aa32af26a45388af07d1287e1d" +checksum = "c9e636f3a428ff62b3742ebc3c70e254dfe12b8c2b469d688ea59cdd4abcf502" dependencies = [ "console_error_panic_hook", "js-sys", @@ -1749,9 +1794,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-test-macro" -version = "0.3.33" +version = "0.3.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4683da3dfc016f704c9f82cf401520c4f1cb3ee440f7f52b3d6ac29506a49ca7" +checksum = "f18c1fad2f7c4958e7bcce014fa212f59a65d5e3721d0f77e6c0b27ede936ba3" dependencies = [ "proc-macro2", "quote", @@ -1880,9 +1925,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.60" +version = "0.3.63" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bcda906d8be16e728fd5adc5b729afad4e444e106ab28cd1c7256e54fa61510f" +checksum = "3bdd9ef4e984da1187bf8110c5cf5b845fbc87a23602cdf912386a76fcd3a7c2" dependencies = [ "js-sys", "wasm-bindgen", @@ -1925,24 +1970,24 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" dependencies = [ "windows_aarch64_gnullvm", - "windows_aarch64_msvc 0.48.0", - "windows_i686_gnu 0.48.0", - "windows_i686_msvc 0.48.0", - "windows_x86_64_gnu 0.48.0", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", "windows_x86_64_gnullvm", - "windows_x86_64_msvc 0.48.0", + "windows_x86_64_msvc 0.48.5", ] [[package]] name = "windows_aarch64_gnullvm" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" [[package]] name = "windows_aarch64_msvc" @@ -1952,9 +1997,9 @@ checksum = "cd761fd3eb9ab8cc1ed81e56e567f02dd82c4c837e48ac3b2181b9ffc5060807" [[package]] name = "windows_aarch64_msvc" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" [[package]] name = "windows_i686_gnu" @@ -1964,9 +2009,9 @@ checksum = "cab0cf703a96bab2dc0c02c0fa748491294bf9b7feb27e1f4f96340f208ada0e" [[package]] name = "windows_i686_gnu" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" [[package]] name = "windows_i686_msvc" @@ -1976,9 +2021,9 @@ checksum = "8cfdbe89cc9ad7ce618ba34abc34bbb6c36d99e96cae2245b7943cd75ee773d0" [[package]] name = "windows_i686_msvc" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" [[package]] name = "windows_x86_64_gnu" @@ -1988,15 +2033,15 @@ checksum = "b4dd9b0c0e9ece7bb22e84d70d01b71c6d6248b81a3c60d11869451b4cb24784" [[package]] name = "windows_x86_64_gnu" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" [[package]] name = "windows_x86_64_gnullvm" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" [[package]] name = "windows_x86_64_msvc" @@ -2006,9 +2051,18 @@ checksum = "ff1e4aa646495048ec7f3ffddc411e1d829c026a2ec62b39da15c1055e406eaa" [[package]] name = "windows_x86_64_msvc" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" + +[[package]] +name = "wyz" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" +dependencies = [ + "tap", +] [[package]] name = "zeroize" @@ -2027,5 +2081,5 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.13", + "syn 2.0.31", ] diff --git a/tests/js/proofSystem.spec.ts b/tests/js/proofSystem.spec.ts index 34b006e..55da180 100644 --- a/tests/js/proofSystem.spec.ts +++ b/tests/js/proofSystem.spec.ts @@ -78,6 +78,8 @@ import { bbsSign, generatePoKBBSSignatureWitness, generateSetupParamForPSSignatureParameters, + generateSetupParamForBBSSignatureParameters, + generatePoKBBSSignatureStatementFromParamRefs, } from "../../lib"; import { BbsSigParams, PSSigParams } from "../../lib/types"; @@ -792,7 +794,7 @@ describe("Proving equality of openings of Pedersen commitments", () => { }); }); -describe("Reusing setup params of BBS+ and accumulator", () => { +describe("Reusing setup params of BBS, BBS+ and accumulator", () => { const messageCount = 5; let sigParams1: BbsPlusSigParams, sigParams2: BbsPlusSigParams, @@ -800,6 +802,12 @@ describe("Reusing setup params of BBS+ and accumulator", () => { sigSk2: Uint8Array, sigPk1: Uint8Array, sigPk2: Uint8Array; + let sigParams3: BbsSigParams, + sigParams4: BbsSigParams, + sigSk3: Uint8Array, + sigSk4: Uint8Array, + sigPk3: Uint8Array, + sigPk4: Uint8Array; let messages1: Uint8Array[], messages2: Uint8Array[], messages3: Uint8Array[], @@ -815,6 +823,10 @@ describe("Reusing setup params of BBS+ and accumulator", () => { await initializeWasm(); [sigParams1, sigSk1, sigPk1] = setupSignerBBSPlus(messageCount); [sigParams2, sigSk2, sigPk2] = setupSignerBBSPlus(messageCount); + + [sigParams3, sigSk3, sigPk3] = setupSignerBBS(messageCount); + [sigParams4, sigSk4, sigPk4] = setupSignerBBS(messageCount); + messages1 = setupMessages(messageCount, "Message1", true); messages2 = setupMessages(messageCount, "Message2", true); messages3 = setupMessages(messageCount, "Message3", true); @@ -829,37 +841,37 @@ describe("Reusing setup params of BBS+ and accumulator", () => { accumPk2 = generateAccumulatorPublicKey(accumSk2, accumParams2); }); - it("generate and verify a proof of knowledge using setup parameters", () => { + function check(signFunc, setupParamsForSigParamsFunc, setupParamsForPkFunc, sigStmtFunc, sigWitFunc) { const memberIndex = 0; const nonMemberIndex = 1; - const sig1 = bbsPlusSignG1(messages1, sigSk1, sigParams1, false); - const sig2 = bbsPlusSignG1(messages2, sigSk1, sigParams1, false); - const sig3 = bbsPlusSignG1(messages3, sigSk2, sigParams2, false); - const sig4 = bbsPlusSignG1(messages4, sigSk2, sigParams2, false); + const sig1 = signFunc(messages1, sigSk1, sigParams1, false); + const sig2 = signFunc(messages2, sigSk1, sigParams1, false); + const sig3 = signFunc(messages3, sigSk2, sigParams2, false); + const sig4 = signFunc(messages4, sigSk2, sigParams2, false); let posAccumulator1 = positiveAccumulatorInitialize(accumParams1); let posAccumulator2 = positiveAccumulatorInitialize(accumParams2); posAccumulator1 = positiveAccumulatorAdd( - posAccumulator1, - messages1[memberIndex], - accumSk1 + posAccumulator1, + messages1[memberIndex], + accumSk1 ); posAccumulator1 = positiveAccumulatorAdd( - posAccumulator1, - messages2[memberIndex], - accumSk1 + posAccumulator1, + messages2[memberIndex], + accumSk1 ); posAccumulator2 = positiveAccumulatorAdd( - posAccumulator2, - messages3[memberIndex], - accumSk2 + posAccumulator2, + messages3[memberIndex], + accumSk2 ); posAccumulator2 = positiveAccumulatorAdd( - posAccumulator2, - messages4[memberIndex], - accumSk2 + posAccumulator2, + messages4[memberIndex], + accumSk2 ); const initialElements1 = [ @@ -874,92 +886,92 @@ describe("Reusing setup params of BBS+ and accumulator", () => { ]; let uniAccumulator1 = getUniversalAccum( - initialElements1, - accumSk1, - accumParams1, - 100 + initialElements1, + accumSk1, + accumParams1, + 100 ); let uniAccumulator2 = getUniversalAccum( - initialElements2, - accumSk2, - accumParams2, - 100 + initialElements2, + accumSk2, + accumParams2, + 100 ); const nonMemPrk = generateNonMembershipProvingKey(); const memPrk = accumulatorDeriveMembershipProvingKeyFromNonMembershipKey( - nonMemPrk + nonMemPrk ); const [revealedMsgs1, unrevealedMsgs1] = getRevealedUnrevealed( - messages1, - new Set() + messages1, + new Set() ); const [revealedMsgs2, unrevealedMsgs2] = getRevealedUnrevealed( - messages2, - new Set() + messages2, + new Set() ); const [revealedMsgs3, unrevealedMsgs3] = getRevealedUnrevealed( - messages3, - new Set() + messages3, + new Set() ); const [revealedMsgs4, unrevealedMsgs4] = getRevealedUnrevealed( - messages4, - new Set() + messages4, + new Set() ); const posWitness1 = positiveAccumulatorMembershipWitness( - posAccumulator1, - messages1[memberIndex], - accumSk1 + posAccumulator1, + messages1[memberIndex], + accumSk1 ); const posWitness2 = positiveAccumulatorMembershipWitness( - posAccumulator1, - messages2[memberIndex], - accumSk1 + posAccumulator1, + messages2[memberIndex], + accumSk1 ); const posWitness3 = positiveAccumulatorMembershipWitness( - posAccumulator2, - messages3[memberIndex], - accumSk2 + posAccumulator2, + messages3[memberIndex], + accumSk2 ); const posWitness4 = positiveAccumulatorMembershipWitness( - posAccumulator2, - messages4[memberIndex], - accumSk2 + posAccumulator2, + messages4[memberIndex], + accumSk2 ); let d = universalAccumulatorComputeD(messages1[nonMemberIndex], []); const uniWitness1 = universalAccumulatorNonMembershipWitness( - uniAccumulator1, - d, - messages1[nonMemberIndex], - accumSk1, - accumParams1 + uniAccumulator1, + d, + messages1[nonMemberIndex], + accumSk1, + accumParams1 ); d = universalAccumulatorComputeD(messages2[nonMemberIndex], []); const uniWitness2 = universalAccumulatorNonMembershipWitness( - uniAccumulator1, - d, - messages2[nonMemberIndex], - accumSk1, - accumParams1 + uniAccumulator1, + d, + messages2[nonMemberIndex], + accumSk1, + accumParams1 ); d = universalAccumulatorComputeD(messages3[nonMemberIndex], []); const uniWitness3 = universalAccumulatorNonMembershipWitness( - uniAccumulator2, - d, - messages3[nonMemberIndex], - accumSk2, - accumParams2 + uniAccumulator2, + d, + messages3[nonMemberIndex], + accumSk2, + accumParams2 ); d = universalAccumulatorComputeD(messages4[nonMemberIndex], []); const uniWitness4 = universalAccumulatorNonMembershipWitness( - uniAccumulator2, - d, - messages4[nonMemberIndex], - accumSk2, - accumParams2 + uniAccumulator2, + d, + messages4[nonMemberIndex], + accumSk2, + accumParams2 ); const posAccumulated1 = positiveAccumulatorGetAccumulated(posAccumulator1); @@ -969,95 +981,95 @@ describe("Reusing setup params of BBS+ and accumulator", () => { const allSetupParams: Uint8Array[] = []; allSetupParams.push( - generateSetupParamForBBSPlusSignatureParametersG1(sigParams1) + setupParamsForSigParamsFunc(sigParams1) ); - allSetupParams.push(generateSetupParamForBBSPlusPublicKeyG2(sigPk1)); + allSetupParams.push(setupParamsForPkFunc(sigPk1)); allSetupParams.push( - generateSetupParamForBBSPlusSignatureParametersG1(sigParams2) + setupParamsForSigParamsFunc(sigParams2) ); - allSetupParams.push(generateSetupParamForBBSPlusPublicKeyG2(sigPk2)); + allSetupParams.push(setupParamsForPkFunc(sigPk2)); allSetupParams.push(generateSetupParamForVbAccumulatorParams(accumParams1)); allSetupParams.push(generateSetupParamForVbAccumulatorPublicKey(accumPk1)); allSetupParams.push(generateSetupParamForVbAccumulatorParams(accumParams2)); allSetupParams.push(generateSetupParamForVbAccumulatorPublicKey(accumPk2)); allSetupParams.push( - generateSetupParamForVbAccumulatorMemProvingKey(memPrk) + generateSetupParamForVbAccumulatorMemProvingKey(memPrk) ); allSetupParams.push( - generateSetupParamForVbAccumulatorNonMemProvingKey(nonMemPrk) + generateSetupParamForVbAccumulatorNonMemProvingKey(nonMemPrk) ); - const statement1 = generatePoKBBSPlusSignatureStatementFromParamRefs( - 0, - 1, - revealedMsgs1, - false + const statement1 = sigStmtFunc( + 0, + 1, + revealedMsgs1, + false ); - const statement2 = generatePoKBBSPlusSignatureStatementFromParamRefs( - 0, - 1, - revealedMsgs2, - false + const statement2 = sigStmtFunc( + 0, + 1, + revealedMsgs2, + false ); - const statement3 = generatePoKBBSPlusSignatureStatementFromParamRefs( - 2, - 3, - revealedMsgs3, - false + const statement3 = sigStmtFunc( + 2, + 3, + revealedMsgs3, + false ); - const statement4 = generatePoKBBSPlusSignatureStatementFromParamRefs( - 2, - 3, - revealedMsgs4, - false + const statement4 = sigStmtFunc( + 2, + 3, + revealedMsgs4, + false ); const statement5 = generateAccumulatorMembershipStatementFromParamRefs( - 4, - 5, - 8, - posAccumulated1 + 4, + 5, + 8, + posAccumulated1 ); const statement6 = generateAccumulatorMembershipStatementFromParamRefs( - 4, - 5, - 8, - posAccumulated1 + 4, + 5, + 8, + posAccumulated1 ); const statement7 = generateAccumulatorMembershipStatementFromParamRefs( - 6, - 7, - 8, - posAccumulated2 + 6, + 7, + 8, + posAccumulated2 ); const statement8 = generateAccumulatorMembershipStatementFromParamRefs( - 6, - 7, - 8, - posAccumulated2 + 6, + 7, + 8, + posAccumulated2 ); const statement9 = generateAccumulatorNonMembershipStatementFromParamRefs( - 4, - 5, - 9, - uniAccumulated1 + 4, + 5, + 9, + uniAccumulated1 ); const statement10 = generateAccumulatorNonMembershipStatementFromParamRefs( - 4, - 5, - 9, - uniAccumulated1 + 4, + 5, + 9, + uniAccumulated1 ); const statement11 = generateAccumulatorNonMembershipStatementFromParamRefs( - 6, - 7, - 9, - uniAccumulated2 + 6, + 7, + 9, + uniAccumulated2 ); const statement12 = generateAccumulatorNonMembershipStatementFromParamRefs( - 6, - 7, - 9, - uniAccumulated2 + 6, + 7, + 9, + uniAccumulated2 ); const statements: Uint8Array[] = []; @@ -1077,57 +1089,57 @@ describe("Reusing setup params of BBS+ and accumulator", () => { const proofSpec = generateProofSpecG1(statements, [], allSetupParams); expect(isProofSpecG1Valid(proofSpec)).toEqual(true); - const witness1 = generatePoKBBSPlusSignatureWitness( - sig1, - unrevealedMsgs1, - false + const witness1 = sigWitFunc( + sig1, + unrevealedMsgs1, + false ); - const witness2 = generatePoKBBSPlusSignatureWitness( - sig2, - unrevealedMsgs2, - false + const witness2 = sigWitFunc( + sig2, + unrevealedMsgs2, + false ); - const witness3 = generatePoKBBSPlusSignatureWitness( - sig3, - unrevealedMsgs3, - false + const witness3 = sigWitFunc( + sig3, + unrevealedMsgs3, + false ); - const witness4 = generatePoKBBSPlusSignatureWitness( - sig4, - unrevealedMsgs4, - false + const witness4 = sigWitFunc( + sig4, + unrevealedMsgs4, + false ); const witness5 = generateAccumulatorMembershipWitness( - messages1[memberIndex], - posWitness1 + messages1[memberIndex], + posWitness1 ); const witness6 = generateAccumulatorMembershipWitness( - messages2[memberIndex], - posWitness2 + messages2[memberIndex], + posWitness2 ); const witness7 = generateAccumulatorMembershipWitness( - messages3[memberIndex], - posWitness3 + messages3[memberIndex], + posWitness3 ); const witness8 = generateAccumulatorMembershipWitness( - messages4[memberIndex], - posWitness4 + messages4[memberIndex], + posWitness4 ); const witness9 = generateAccumulatorNonMembershipWitness( - messages1[nonMemberIndex], - uniWitness1 + messages1[nonMemberIndex], + uniWitness1 ); const witness10 = generateAccumulatorNonMembershipWitness( - messages2[nonMemberIndex], - uniWitness2 + messages2[nonMemberIndex], + uniWitness2 ); const witness11 = generateAccumulatorNonMembershipWitness( - messages3[nonMemberIndex], - uniWitness3 + messages3[nonMemberIndex], + uniWitness3 ); const witness12 = generateAccumulatorNonMembershipWitness( - messages4[nonMemberIndex], - uniWitness4 + messages4[nonMemberIndex], + uniWitness4 ); const witnesses: Uint8Array[] = []; @@ -1148,5 +1160,13 @@ describe("Reusing setup params of BBS+ and accumulator", () => { const res = verifyCompositeProofG1(proof, proofSpec); expect(res.verified).toBe(true); + } + + it("generate and verify a proof of knowledge with BBS+ and accumulator using setup parameters", () => { + check(bbsPlusSignG1, generateSetupParamForBBSPlusSignatureParametersG1, generateSetupParamForBBSPlusPublicKeyG2, generatePoKBBSPlusSignatureStatementFromParamRefs, generatePoKBBSPlusSignatureWitness) + }); + + it("generate and verify a proof of knowledge with BBS and accumulator using setup parameters", () => { + check(bbsSign, generateSetupParamForBBSSignatureParameters, generateSetupParamForBBSPlusPublicKeyG2, generatePoKBBSSignatureStatementFromParamRefs, generatePoKBBSSignatureWitness) }); });