Bevy+Ratutui powered Monitoring of Pico-Strike devices
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Yeet Noise and roll own crypto

+482 -392
+439 -321
Cargo.lock
··· 25 25 26 26 [[package]] 27 27 name = "aead" 28 - version = "0.5.2" 28 + version = "0.6.0-rc.10" 29 29 source = "registry+https://github.com/rust-lang/crates.io-index" 30 - checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0" 30 + checksum = "6b657e772794c6b04730ea897b66a058ccd866c16d1967da05eeeecec39043fe" 31 31 dependencies = [ 32 - "crypto-common", 33 - "generic-array", 32 + "crypto-common 0.2.1", 33 + "inout", 34 34 ] 35 35 36 36 [[package]] ··· 50 50 51 51 [[package]] 52 52 name = "android-activity" 53 - version = "0.6.0" 53 + version = "0.6.1" 54 54 source = "registry+https://github.com/rust-lang/crates.io-index" 55 - checksum = "ef6978589202a00cd7e118380c448a08b6ed394c3a8df3a430d0898e3a42d046" 55 + checksum = "0f2a1bb052857d5dd49572219344a7332b31b76405648eabac5bc68978251bcd" 56 56 dependencies = [ 57 57 "android-properties", 58 58 "bitflags 2.11.0", 59 59 "cc", 60 - "cesu8", 61 60 "jni", 62 - "jni-sys", 63 61 "libc", 64 62 "log", 65 63 "ndk", 66 64 "ndk-context", 67 65 "ndk-sys", 68 66 "num_enum", 69 - "thiserror 1.0.69", 67 + "thiserror 2.0.18", 70 68 ] 71 69 72 70 [[package]] ··· 154 152 "polling", 155 153 "rustix", 156 154 "slab", 157 - "windows-sys 0.61.2", 155 + "windows-sys", 158 156 ] 159 157 160 158 [[package]] ··· 213 211 dependencies = [ 214 212 "backtrace", 215 213 ] 214 + 215 + [[package]] 216 + name = "base16ct" 217 + version = "1.0.0" 218 + source = "registry+https://github.com/rust-lang/crates.io-index" 219 + checksum = "fd307490d624467aa6f74b0eabb77633d1f758a7b25f12bceb0b22e08d9726f6" 216 220 217 221 [[package]] 218 222 name = "base64" ··· 690 694 ] 691 695 692 696 [[package]] 693 - name = "blake2" 694 - version = "0.10.6" 697 + name = "block-buffer" 698 + version = "0.10.4" 695 699 source = "registry+https://github.com/rust-lang/crates.io-index" 696 - checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe" 700 + checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" 697 701 dependencies = [ 698 - "digest", 702 + "generic-array", 699 703 ] 700 704 701 705 [[package]] 702 706 name = "block-buffer" 703 - version = "0.10.4" 707 + version = "0.12.0" 704 708 source = "registry+https://github.com/rust-lang/crates.io-index" 705 - checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" 709 + checksum = "cdd35008169921d80bc60d3d0ab416eecb028c4cd653352907921d95084790be" 706 710 dependencies = [ 707 - "generic-array", 711 + "hybrid-array", 708 712 ] 709 713 710 714 [[package]] ··· 765 769 766 770 [[package]] 767 771 name = "cc" 768 - version = "1.2.57" 772 + version = "1.2.58" 769 773 source = "registry+https://github.com/rust-lang/crates.io-index" 770 - checksum = "7a0dd1ca384932ff3641c8718a02769f1698e7563dc6974ffd03346116310423" 774 + checksum = "e1e928d4b69e3077709075a938a05ffbedfa53a84c8f766efbf8220bb1ff60e1" 771 775 dependencies = [ 772 776 "find-msvc-tools", 773 777 "jobserver", 774 778 "libc", 775 779 "shlex", 776 780 ] 777 - 778 - [[package]] 779 - name = "cesu8" 780 - version = "1.1.0" 781 - source = "registry+https://github.com/rust-lang/crates.io-index" 782 - checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" 783 781 784 782 [[package]] 785 783 name = "cfg-if" ··· 795 793 796 794 [[package]] 797 795 name = "chacha20" 798 - version = "0.9.1" 796 + version = "0.10.0" 799 797 source = "registry+https://github.com/rust-lang/crates.io-index" 800 - checksum = "c3613f74bd2eac03dad61bd53dbe620703d4371614fe0bc3b9f04dd36fe4e818" 798 + checksum = "6f8d983286843e49675a4b7a2d174efe136dc93a18d69130dd18198a6c167601" 801 799 dependencies = [ 802 800 "cfg-if", 803 801 "cipher", 804 - "cpufeatures", 802 + "cpufeatures 0.3.0", 805 803 ] 806 804 807 805 [[package]] 808 806 name = "chacha20poly1305" 809 - version = "0.10.1" 807 + version = "0.11.0-rc.3" 810 808 source = "registry+https://github.com/rust-lang/crates.io-index" 811 - checksum = "10cd79432192d1c0f4e1a0fef9527696cc039165d729fb41b3f4f4f354c2dc35" 809 + checksum = "1c9ed179664f12fd6f155f6dd632edf5f3806d48c228c67ff78366f2a0eb6b5e" 812 810 dependencies = [ 813 811 "aead", 814 812 "chacha20", 815 813 "cipher", 816 814 "poly1305", 817 - "zeroize", 818 815 ] 819 816 820 817 [[package]] 821 818 name = "cipher" 822 - version = "0.4.4" 819 + version = "0.5.1" 823 820 source = "registry+https://github.com/rust-lang/crates.io-index" 824 - checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" 821 + checksum = "e34d8227fe1ba289043aeb13792056ff80fd6de1a9f49137a5f499de8e8c78ea" 825 822 dependencies = [ 826 - "crypto-common", 823 + "block-buffer 0.12.0", 824 + "crypto-common 0.2.1", 827 825 "inout", 828 - "zeroize", 829 826 ] 830 827 831 828 [[package]] 829 + name = "cmov" 830 + version = "0.5.2" 831 + source = "registry+https://github.com/rust-lang/crates.io-index" 832 + checksum = "de0758edba32d61d1fd9f4d69491b47604b91ee2f7e6b33de7e54ca4ebe55dc3" 833 + 834 + [[package]] 832 835 name = "cobs" 833 836 version = "0.3.0" 834 837 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 915 918 checksum = "32b13ea120a812beba79e34316b3942a857c86ec1593cb34f27bb28272ce2cca" 916 919 917 920 [[package]] 921 + name = "const-oid" 922 + version = "0.10.2" 923 + source = "registry+https://github.com/rust-lang/crates.io-index" 924 + checksum = "a6ef517f0926dd24a1582492c791b6a4818a4d94e789a334894aa15b0d12f55c" 925 + 926 + [[package]] 918 927 name = "convert_case" 919 928 version = "0.10.0" 920 929 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 924 933 ] 925 934 926 935 [[package]] 936 + name = "cpubits" 937 + version = "0.1.0" 938 + source = "registry+https://github.com/rust-lang/crates.io-index" 939 + checksum = "5ef0c543070d296ea414df2dd7625d1b24866ce206709d8a4a424f28377f5861" 940 + 941 + [[package]] 927 942 name = "cpufeatures" 928 943 version = "0.2.17" 929 944 source = "registry+https://github.com/rust-lang/crates.io-index" 930 945 checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" 946 + dependencies = [ 947 + "libc", 948 + ] 949 + 950 + [[package]] 951 + name = "cpufeatures" 952 + version = "0.3.0" 953 + source = "registry+https://github.com/rust-lang/crates.io-index" 954 + checksum = "8b2a41393f66f16b0823bb79094d54ac5fbd34ab292ddafb9a0456ac9f87d201" 931 955 dependencies = [ 932 956 "libc", 933 957 ] ··· 990 1014 ] 991 1015 992 1016 [[package]] 1017 + name = "crypto-bigint" 1018 + version = "0.7.3" 1019 + source = "registry+https://github.com/rust-lang/crates.io-index" 1020 + checksum = "42a0d26b245348befa0c121944541476763dcc46ede886c88f9d12e1697d27c3" 1021 + dependencies = [ 1022 + "cpubits", 1023 + "ctutils", 1024 + "getrandom 0.4.2", 1025 + "hybrid-array", 1026 + "num-traits", 1027 + "rand_core 0.10.0", 1028 + "subtle", 1029 + "zeroize", 1030 + ] 1031 + 1032 + [[package]] 993 1033 name = "crypto-common" 994 1034 version = "0.1.7" 995 1035 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1000 1040 ] 1001 1041 1002 1042 [[package]] 1043 + name = "crypto-common" 1044 + version = "0.2.1" 1045 + source = "registry+https://github.com/rust-lang/crates.io-index" 1046 + checksum = "77727bb15fa921304124b128af125e7e3b968275d1b108b379190264f4423710" 1047 + dependencies = [ 1048 + "getrandom 0.4.2", 1049 + "hybrid-array", 1050 + "rand_core 0.10.0", 1051 + ] 1052 + 1053 + [[package]] 1003 1054 name = "csscolorparser" 1004 1055 version = "0.6.2" 1005 1056 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1017 1068 dependencies = [ 1018 1069 "dispatch2", 1019 1070 "nix 0.31.2", 1020 - "windows-sys 0.61.2", 1071 + "windows-sys", 1021 1072 ] 1022 1073 1023 1074 [[package]] 1024 - name = "curve25519-dalek" 1025 - version = "4.1.3" 1075 + name = "ctutils" 1076 + version = "0.4.0" 1026 1077 source = "registry+https://github.com/rust-lang/crates.io-index" 1027 - checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be" 1078 + checksum = "1005a6d4446f5120ef475ad3d2af2b30c49c2c9c6904258e3bb30219bebed5e4" 1028 1079 dependencies = [ 1029 - "cfg-if", 1030 - "cpufeatures", 1031 - "curve25519-dalek-derive", 1032 - "fiat-crypto", 1033 - "rustc_version", 1080 + "cmov", 1034 1081 "subtle", 1035 1082 ] 1036 1083 1037 1084 [[package]] 1038 - name = "curve25519-dalek-derive" 1039 - version = "0.1.1" 1040 - source = "registry+https://github.com/rust-lang/crates.io-index" 1041 - checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" 1042 - dependencies = [ 1043 - "proc-macro2", 1044 - "quote", 1045 - "syn 2.0.117", 1046 - ] 1047 - 1048 - [[package]] 1049 1085 name = "darling" 1050 1086 version = "0.23.0" 1051 1087 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1086 1122 checksum = "5729f5117e208430e437df2f4843f5e5952997175992d1414f94c57d61e270b4" 1087 1123 1088 1124 [[package]] 1125 + name = "der" 1126 + version = "0.8.0" 1127 + source = "registry+https://github.com/rust-lang/crates.io-index" 1128 + checksum = "71fd89660b2dc699704064e59e9dba0147b903e85319429e131620d022be411b" 1129 + dependencies = [ 1130 + "const-oid", 1131 + "zeroize", 1132 + ] 1133 + 1134 + [[package]] 1089 1135 name = "deranged" 1090 1136 version = "0.5.8" 1091 1137 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1118 1164 ] 1119 1165 1120 1166 [[package]] 1167 + name = "dhkem" 1168 + version = "0.1.0-rc.0" 1169 + source = "git+https://github.com/RustCrypto/KEMs?rev=2d277162e0c5ed1c53bb315d0c0dace394cba70a#2d277162e0c5ed1c53bb315d0c0dace394cba70a" 1170 + dependencies = [ 1171 + "elliptic-curve", 1172 + "hkdf", 1173 + "k256", 1174 + "kem", 1175 + "rand_core 0.10.0", 1176 + "zeroize", 1177 + ] 1178 + 1179 + [[package]] 1121 1180 name = "digest" 1122 1181 version = "0.10.7" 1123 1182 source = "registry+https://github.com/rust-lang/crates.io-index" 1124 1183 checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" 1125 1184 dependencies = [ 1126 - "block-buffer", 1127 - "crypto-common", 1128 - "subtle", 1185 + "block-buffer 0.10.4", 1186 + "crypto-common 0.1.7", 1187 + ] 1188 + 1189 + [[package]] 1190 + name = "digest" 1191 + version = "0.11.2" 1192 + source = "registry+https://github.com/rust-lang/crates.io-index" 1193 + checksum = "4850db49bf08e663084f7fb5c87d202ef91a3907271aff24a94eb97ff039153c" 1194 + dependencies = [ 1195 + "block-buffer 0.12.0", 1196 + "crypto-common 0.2.1", 1197 + "ctutils", 1129 1198 ] 1130 1199 1131 1200 [[package]] ··· 1162 1231 checksum = "117240f60069e65410b3ae1bb213295bd828f707b5bec6596a1afc8793ce0cbc" 1163 1232 1164 1233 [[package]] 1234 + name = "ecdsa" 1235 + version = "0.17.0-rc.16" 1236 + source = "registry+https://github.com/rust-lang/crates.io-index" 1237 + checksum = "91bbdd377139884fafcad8dc43a760a3e1e681aa26db910257fa6535b70e1829" 1238 + dependencies = [ 1239 + "der", 1240 + "elliptic-curve", 1241 + "signature", 1242 + "zeroize", 1243 + ] 1244 + 1245 + [[package]] 1165 1246 name = "either" 1166 1247 version = "1.15.0" 1167 1248 source = "registry+https://github.com/rust-lang/crates.io-index" 1168 1249 checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" 1169 1250 1170 1251 [[package]] 1252 + name = "elliptic-curve" 1253 + version = "0.14.0-rc.29" 1254 + source = "registry+https://github.com/rust-lang/crates.io-index" 1255 + checksum = "e84043d573efd4ac9d2d125817979a379204bf7e328b25a4a30487e8d100e618" 1256 + dependencies = [ 1257 + "base16ct", 1258 + "crypto-bigint", 1259 + "crypto-common 0.2.1", 1260 + "digest 0.11.2", 1261 + "hkdf", 1262 + "hybrid-array", 1263 + "rand_core 0.10.0", 1264 + "rustcrypto-ff", 1265 + "rustcrypto-group", 1266 + "sec1", 1267 + "subtle", 1268 + "zeroize", 1269 + ] 1270 + 1271 + [[package]] 1171 1272 name = "embedded-io" 1172 1273 version = "0.4.0" 1173 1274 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1203 1304 checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" 1204 1305 dependencies = [ 1205 1306 "libc", 1206 - "windows-sys 0.61.2", 1307 + "windows-sys", 1207 1308 ] 1208 1309 1209 1310 [[package]] 1210 1311 name = "euclid" 1211 - version = "0.22.13" 1312 + version = "0.22.14" 1212 1313 source = "registry+https://github.com/rust-lang/crates.io-index" 1213 - checksum = "df61bf483e837f88d5c2291dcf55c67be7e676b3a51acc48db3a7b163b91ed63" 1314 + checksum = "f1a05365e3b1c6d1650318537c7460c6923f1abdd272ad6842baa2b509957a06" 1214 1315 dependencies = [ 1215 1316 "num-traits", 1216 1317 ] ··· 1263 1364 checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" 1264 1365 1265 1366 [[package]] 1266 - name = "fiat-crypto" 1267 - version = "0.2.9" 1268 - source = "registry+https://github.com/rust-lang/crates.io-index" 1269 - checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" 1270 - 1271 - [[package]] 1272 1367 name = "filedescriptor" 1273 1368 version = "0.8.3" 1274 1369 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1417 1512 "cfg-if", 1418 1513 "libc", 1419 1514 "r-efi 6.0.0", 1515 + "rand_core 0.10.0", 1420 1516 "wasip2", 1421 1517 "wasip3", 1422 1518 ] ··· 1499 1595 checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" 1500 1596 1501 1597 [[package]] 1598 + name = "hkdf" 1599 + version = "0.13.0-rc.5" 1600 + source = "registry+https://github.com/rust-lang/crates.io-index" 1601 + checksum = "cbb55385998ae66b8d2d5143c05c94b9025ab863966f0c94ce7a5fde30105092" 1602 + dependencies = [ 1603 + "hmac", 1604 + ] 1605 + 1606 + [[package]] 1607 + name = "hmac" 1608 + version = "0.13.0-rc.6" 1609 + source = "registry+https://github.com/rust-lang/crates.io-index" 1610 + checksum = "60017b071c523c9e5a55dd1253582bff6150c5e96a7e8511e419de1ab5ee97f9" 1611 + dependencies = [ 1612 + "digest 0.11.2", 1613 + ] 1614 + 1615 + [[package]] 1616 + name = "hybrid-array" 1617 + version = "0.4.8" 1618 + source = "registry+https://github.com/rust-lang/crates.io-index" 1619 + checksum = "8655f91cd07f2b9d0c24137bd650fe69617773435ee5ec83022377777ce65ef1" 1620 + dependencies = [ 1621 + "subtle", 1622 + "typenum", 1623 + "zeroize", 1624 + ] 1625 + 1626 + [[package]] 1502 1627 name = "id-arena" 1503 1628 version = "2.3.0" 1504 1629 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1539 1664 1540 1665 [[package]] 1541 1666 name = "inout" 1542 - version = "0.1.4" 1667 + version = "0.2.2" 1543 1668 source = "registry+https://github.com/rust-lang/crates.io-index" 1544 - checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01" 1669 + checksum = "4250ce6452e92010fdf7268ccc5d14faa80bb12fc741938534c58f16804e03c7" 1545 1670 dependencies = [ 1546 - "generic-array", 1671 + "hybrid-array", 1547 1672 ] 1548 1673 1549 1674 [[package]] 1550 1675 name = "instability" 1551 - version = "0.3.11" 1676 + version = "0.3.12" 1552 1677 source = "registry+https://github.com/rust-lang/crates.io-index" 1553 - checksum = "357b7205c6cd18dd2c86ed312d1e70add149aea98e7ef72b9fdf0270e555c11d" 1678 + checksum = "5eb2d60ef19920a3a9193c3e371f726ec1dafc045dac788d0fb3704272458971" 1554 1679 dependencies = [ 1555 1680 "darling", 1556 1681 "indoc", ··· 1576 1701 1577 1702 [[package]] 1578 1703 name = "itoa" 1579 - version = "1.0.17" 1704 + version = "1.0.18" 1580 1705 source = "registry+https://github.com/rust-lang/crates.io-index" 1581 - checksum = "92ecc6618181def0457392ccd0ee51198e065e016d1d527a7ac1b6dc7c1f09d2" 1706 + checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" 1582 1707 1583 1708 [[package]] 1584 1709 name = "jiff" ··· 1592 1717 "portable-atomic", 1593 1718 "portable-atomic-util", 1594 1719 "serde_core", 1595 - "windows-sys 0.61.2", 1720 + "windows-sys", 1596 1721 ] 1597 1722 1598 1723 [[package]] ··· 1623 1748 1624 1749 [[package]] 1625 1750 name = "jni" 1626 - version = "0.21.1" 1751 + version = "0.22.4" 1627 1752 source = "registry+https://github.com/rust-lang/crates.io-index" 1628 - checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" 1753 + checksum = "5efd9a482cf3a427f00d6b35f14332adc7902ce91efb778580e180ff90fa3498" 1629 1754 dependencies = [ 1630 - "cesu8", 1631 1755 "cfg-if", 1632 1756 "combine", 1633 - "jni-sys", 1757 + "jni-macros", 1758 + "jni-sys 0.4.1", 1634 1759 "log", 1635 - "thiserror 1.0.69", 1760 + "simd_cesu8", 1761 + "thiserror 2.0.18", 1636 1762 "walkdir", 1637 - "windows-sys 0.45.0", 1763 + "windows-link", 1764 + ] 1765 + 1766 + [[package]] 1767 + name = "jni-macros" 1768 + version = "0.22.4" 1769 + source = "registry+https://github.com/rust-lang/crates.io-index" 1770 + checksum = "a00109accc170f0bdb141fed3e393c565b6f5e072365c3bd58f5b062591560a3" 1771 + dependencies = [ 1772 + "proc-macro2", 1773 + "quote", 1774 + "rustc_version", 1775 + "simd_cesu8", 1776 + "syn 2.0.117", 1638 1777 ] 1639 1778 1640 1779 [[package]] 1641 1780 name = "jni-sys" 1642 - version = "0.3.0" 1781 + version = "0.3.1" 1643 1782 source = "registry+https://github.com/rust-lang/crates.io-index" 1644 - checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" 1783 + checksum = "41a652e1f9b6e0275df1f15b32661cf0d4b78d4d87ddec5e0c3c20f097433258" 1784 + dependencies = [ 1785 + "jni-sys 0.4.1", 1786 + ] 1787 + 1788 + [[package]] 1789 + name = "jni-sys" 1790 + version = "0.4.1" 1791 + source = "registry+https://github.com/rust-lang/crates.io-index" 1792 + checksum = "c6377a88cb3910bee9b0fa88d4f42e1d2da8e79915598f65fb0c7ee14c878af2" 1793 + dependencies = [ 1794 + "jni-sys-macros", 1795 + ] 1796 + 1797 + [[package]] 1798 + name = "jni-sys-macros" 1799 + version = "0.4.1" 1800 + source = "registry+https://github.com/rust-lang/crates.io-index" 1801 + checksum = "38c0b942f458fe50cdac086d2f946512305e5631e720728f2a61aabcd47a6264" 1802 + dependencies = [ 1803 + "quote", 1804 + "syn 2.0.117", 1805 + ] 1645 1806 1646 1807 [[package]] 1647 1808 name = "jobserver" ··· 1655 1816 1656 1817 [[package]] 1657 1818 name = "js-sys" 1658 - version = "0.3.91" 1819 + version = "0.3.92" 1659 1820 source = "registry+https://github.com/rust-lang/crates.io-index" 1660 - checksum = "b49715b7073f385ba4bc528e5747d02e66cb39c6146efb66b781f131f0fb399c" 1821 + checksum = "cc4c90f45aa2e6eacbe8645f77fdea542ac97a494bcd117a67df9ff4d611f995" 1661 1822 dependencies = [ 1823 + "cfg-if", 1824 + "futures-util", 1662 1825 "once_cell", 1663 1826 "wasm-bindgen", 1664 1827 ] 1665 1828 1666 1829 [[package]] 1830 + name = "k256" 1831 + version = "0.14.0-rc.8" 1832 + source = "registry+https://github.com/rust-lang/crates.io-index" 1833 + checksum = "f7d2c6c227649d5ec80eaae541f1736232641a0bcdb3062a52b34edb42054158" 1834 + dependencies = [ 1835 + "cpubits", 1836 + "ecdsa", 1837 + "elliptic-curve", 1838 + ] 1839 + 1840 + [[package]] 1667 1841 name = "kasuari" 1668 1842 version = "0.4.12" 1669 1843 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1672 1846 "hashbrown 0.16.1", 1673 1847 "portable-atomic", 1674 1848 "thiserror 2.0.18", 1849 + ] 1850 + 1851 + [[package]] 1852 + name = "kem" 1853 + version = "0.3.0-rc.6" 1854 + source = "registry+https://github.com/rust-lang/crates.io-index" 1855 + checksum = "e3ae2c3347ff4a7af4f679a9e397c2c7e6034a00b773dd2dd3c001d7f40897c9" 1856 + dependencies = [ 1857 + "crypto-common 0.2.1", 1858 + "rand_core 0.10.0", 1675 1859 ] 1676 1860 1677 1861 [[package]] ··· 1706 1890 1707 1891 [[package]] 1708 1892 name = "line-clipping" 1709 - version = "0.3.5" 1893 + version = "0.3.7" 1710 1894 source = "registry+https://github.com/rust-lang/crates.io-index" 1711 - checksum = "5f4de44e98ddbf09375cbf4d17714d18f39195f4f4894e8524501726fd9a8a4a" 1895 + checksum = "3f50e8f47623268b5407192d26876c4d7f89d686ca130fdc53bced4814cd29f8" 1712 1896 dependencies = [ 1713 1897 "bitflags 2.11.0", 1714 1898 ] ··· 1836 2020 1837 2021 [[package]] 1838 2022 name = "mio" 1839 - version = "1.1.1" 2023 + version = "1.2.0" 1840 2024 source = "registry+https://github.com/rust-lang/crates.io-index" 1841 - checksum = "a69bcab0ad47271a0234d9422b131806bf3968021e5dc9328caf2d4cd58557fc" 2025 + checksum = "50b7e5b27aa02a74bac8c3f23f448f8d87ff11f92d3aac1a6ed369ee08cc56c1" 1842 2026 dependencies = [ 1843 2027 "libc", 1844 2028 "log", 1845 2029 "wasi", 1846 - "windows-sys 0.61.2", 2030 + "windows-sys", 1847 2031 ] 1848 2032 1849 2033 [[package]] ··· 1853 2037 checksum = "c3f42e7bbe13d351b6bead8286a43aac9534b82bd3cc43e47037f012ebfd62d4" 1854 2038 dependencies = [ 1855 2039 "bitflags 2.11.0", 1856 - "jni-sys", 2040 + "jni-sys 0.3.1", 1857 2041 "log", 1858 2042 "ndk-sys", 1859 2043 "num_enum", ··· 1872 2056 source = "registry+https://github.com/rust-lang/crates.io-index" 1873 2057 checksum = "ee6cda3051665f1fb8d9e08fc35c96d5a244fb1be711a03b71118828afc9a873" 1874 2058 dependencies = [ 1875 - "jni-sys", 2059 + "jni-sys 0.3.1", 1876 2060 ] 1877 2061 1878 2062 [[package]] ··· 1922 2106 source = "registry+https://github.com/rust-lang/crates.io-index" 1923 2107 checksum = "7957b9740744892f114936ab4a57b3f487491bbeafaf8083688b16841a4240e5" 1924 2108 dependencies = [ 1925 - "windows-sys 0.61.2", 2109 + "windows-sys", 1926 2110 ] 1927 2111 1928 2112 [[package]] 1929 2113 name = "num-conv" 1930 - version = "0.2.0" 2114 + version = "0.2.1" 1931 2115 source = "registry+https://github.com/rust-lang/crates.io-index" 1932 - checksum = "cf97ec579c3c42f953ef76dbf8d55ac91fb219dde70e49aa4a6b7d74e9919050" 2116 + checksum = "c6673768db2d862beb9b39a78fdcb1a69439615d5794a1be50caa9bc92c81967" 1933 2117 1934 2118 [[package]] 1935 2119 name = "num-derive" ··· 1954 2138 1955 2139 [[package]] 1956 2140 name = "num_enum" 1957 - version = "0.7.5" 2141 + version = "0.7.6" 1958 2142 source = "registry+https://github.com/rust-lang/crates.io-index" 1959 - checksum = "b1207a7e20ad57b847bbddc6776b968420d38292bbfe2089accff5e19e82454c" 2143 + checksum = "5d0bca838442ec211fa11de3a8b0e0e8f3a4522575b5c4c06ed722e005036f26" 1960 2144 dependencies = [ 1961 2145 "num_enum_derive", 1962 2146 "rustversion", ··· 1964 2148 1965 2149 [[package]] 1966 2150 name = "num_enum_derive" 1967 - version = "0.7.5" 2151 + version = "0.7.6" 1968 2152 source = "registry+https://github.com/rust-lang/crates.io-index" 1969 - checksum = "ff32365de1b6743cb203b710788263c44a03de03802daf96092f2da4fe6ba4d7" 2153 + checksum = "680998035259dcfcafe653688bf2aa6d3e2dc05e98be6ab46afb089dc84f1df8" 1970 2154 dependencies = [ 1971 2155 "proc-macro-crate", 1972 2156 "proc-macro2", ··· 2014 2198 checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" 2015 2199 2016 2200 [[package]] 2017 - name = "opaque-debug" 2018 - version = "0.3.1" 2019 - source = "registry+https://github.com/rust-lang/crates.io-index" 2020 - checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" 2021 - 2022 - [[package]] 2023 2201 name = "ordered-float" 2024 2202 version = "4.6.0" 2025 2203 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 2103 2281 checksum = "89815c69d36021a140146f26659a81d6c2afa33d216d736dd4be5381a7362220" 2104 2282 dependencies = [ 2105 2283 "pest", 2106 - "sha2", 2284 + "sha2 0.10.9", 2107 2285 ] 2108 2286 2109 2287 [[package]] ··· 2195 2373 "hermit-abi", 2196 2374 "pin-project-lite", 2197 2375 "rustix", 2198 - "windows-sys 0.61.2", 2376 + "windows-sys", 2199 2377 ] 2200 2378 2201 2379 [[package]] 2202 2380 name = "poly1305" 2203 - version = "0.8.0" 2381 + version = "0.9.0-rc.6" 2204 2382 source = "registry+https://github.com/rust-lang/crates.io-index" 2205 - checksum = "8159bd90725d2df49889a078b54f4f79e87f1f8a8444194cdca81d38f5393abf" 2383 + checksum = "19feddcbdf17fad33f40041c7f9e768faf19455f32a6d52ba1b8b65ffc7b1cae" 2206 2384 dependencies = [ 2207 - "cpufeatures", 2208 - "opaque-debug", 2385 + "cpufeatures 0.3.0", 2209 2386 "universal-hash", 2210 2387 ] 2211 2388 ··· 2217 2394 2218 2395 [[package]] 2219 2396 name = "portable-atomic-util" 2220 - version = "0.2.5" 2397 + version = "0.2.6" 2221 2398 source = "registry+https://github.com/rust-lang/crates.io-index" 2222 - checksum = "7a9db96d7fa8782dd8c15ce32ffe8680bbd1e978a43bf51a34d39483540495f5" 2399 + checksum = "091397be61a01d4be58e7841595bd4bfedb15f1cd54977d79b8271e94ed799a3" 2223 2400 dependencies = [ 2224 2401 "portable-atomic", 2225 2402 ] ··· 2267 2444 source = "registry+https://github.com/rust-lang/crates.io-index" 2268 2445 checksum = "e67ba7e9b2b56446f1d419b1d807906278ffa1a658a8a5d8a39dcb1f5a78614f" 2269 2446 dependencies = [ 2270 - "toml_edit 0.25.4+spec-1.1.0", 2447 + "toml_edit 0.25.8+spec-1.1.0", 2271 2448 ] 2272 2449 2273 2450 [[package]] ··· 2343 2520 dependencies = [ 2344 2521 "getrandom 0.3.4", 2345 2522 ] 2523 + 2524 + [[package]] 2525 + name = "rand_core" 2526 + version = "0.10.0" 2527 + source = "registry+https://github.com/rust-lang/crates.io-index" 2528 + checksum = "0c8d0fd677905edcbeedbf2edb6494d676f0e98d54d5cf9bda0b061cb8fb8aba" 2346 2529 2347 2530 [[package]] 2348 2531 name = "rand_distr" ··· 2509 2692 ] 2510 2693 2511 2694 [[package]] 2695 + name = "rustcrypto-ff" 2696 + version = "0.14.0-rc.0" 2697 + source = "registry+https://github.com/rust-lang/crates.io-index" 2698 + checksum = "c5db129183b2c139d7d87d08be57cba626c715789db17aec65c8866bfd767d1f" 2699 + dependencies = [ 2700 + "rand_core 0.10.0", 2701 + "subtle", 2702 + ] 2703 + 2704 + [[package]] 2705 + name = "rustcrypto-group" 2706 + version = "0.14.0-rc.0" 2707 + source = "registry+https://github.com/rust-lang/crates.io-index" 2708 + checksum = "57c4b1463f274a3ff6fb2f44da43e576cb9424367bd96f185ead87b52fe00523" 2709 + dependencies = [ 2710 + "rand_core 0.10.0", 2711 + "rustcrypto-ff", 2712 + "subtle", 2713 + ] 2714 + 2715 + [[package]] 2512 2716 name = "rustix" 2513 2717 version = "1.1.4" 2514 2718 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 2518 2722 "errno", 2519 2723 "libc", 2520 2724 "linux-raw-sys", 2521 - "windows-sys 0.61.2", 2725 + "windows-sys", 2522 2726 ] 2523 2727 2524 2728 [[package]] ··· 2536 2740 [[package]] 2537 2741 name = "sachy-config" 2538 2742 version = "0.1.0" 2539 - source = "git+https://tangled.org/sachy.dev/sachy-embed-core#ee60e727e6d412cd13009809eb08f51a9b441b44" 2743 + source = "git+https://tangled.org/sachy.dev/sachy-embed-core#00bd55bcd7e7534f6d44dcef02d42b3a1badf962" 2540 2744 dependencies = [ 2541 2745 "base64ct", 2542 2746 "miette", 2543 - "toml_edit 0.25.4+spec-1.1.0", 2747 + "toml_edit 0.25.8+spec-1.1.0", 2748 + ] 2749 + 2750 + [[package]] 2751 + name = "sachy-crypto" 2752 + version = "0.1.0" 2753 + source = "git+https://tangled.org/sachy.dev/sachy-embed-core#00bd55bcd7e7534f6d44dcef02d42b3a1badf962" 2754 + dependencies = [ 2755 + "chacha20poly1305", 2756 + "dhkem", 2757 + "elliptic-curve", 2758 + "k256", 2759 + "sha2 0.11.0-rc.5", 2544 2760 ] 2545 2761 2546 2762 [[package]] 2547 2763 name = "sachy-fmt" 2548 2764 version = "0.1.0" 2549 - source = "git+https://tangled.org/sachy.dev/sachy-embed-core#ee60e727e6d412cd13009809eb08f51a9b441b44" 2765 + source = "git+https://tangled.org/sachy.dev/sachy-embed-core#00bd55bcd7e7534f6d44dcef02d42b3a1badf962" 2550 2766 2551 2767 [[package]] 2552 2768 name = "sachy-mdns" 2553 2769 version = "0.1.0" 2554 - source = "git+https://tangled.org/sachy.dev/sachy-embed-core#ee60e727e6d412cd13009809eb08f51a9b441b44" 2770 + source = "git+https://tangled.org/sachy.dev/sachy-embed-core#00bd55bcd7e7534f6d44dcef02d42b3a1badf962" 2555 2771 dependencies = [ 2556 2772 "sachy-fmt", 2557 - "winnow", 2773 + "winnow 0.7.15", 2558 2774 ] 2559 2775 2560 2776 [[package]] ··· 2571 2787 version = "1.2.0" 2572 2788 source = "registry+https://github.com/rust-lang/crates.io-index" 2573 2789 checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" 2790 + 2791 + [[package]] 2792 + name = "sec1" 2793 + version = "0.8.0" 2794 + source = "registry+https://github.com/rust-lang/crates.io-index" 2795 + checksum = "f46b9a5ab87780a3189a1d704766579517a04ad59de653b7aad7d38e8a15f7dc" 2796 + dependencies = [ 2797 + "base16ct", 2798 + "ctutils", 2799 + "der", 2800 + "hybrid-array", 2801 + "subtle", 2802 + "zeroize", 2803 + ] 2574 2804 2575 2805 [[package]] 2576 2806 name = "semver" ··· 2628 2858 checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" 2629 2859 dependencies = [ 2630 2860 "cfg-if", 2631 - "cpufeatures", 2632 - "digest", 2861 + "cpufeatures 0.2.17", 2862 + "digest 0.10.7", 2863 + ] 2864 + 2865 + [[package]] 2866 + name = "sha2" 2867 + version = "0.11.0-rc.5" 2868 + source = "registry+https://github.com/rust-lang/crates.io-index" 2869 + checksum = "7c5f3b1e2dc8aad28310d8410bd4d7e180eca65fca176c52ab00d364475d0024" 2870 + dependencies = [ 2871 + "cfg-if", 2872 + "cpufeatures 0.2.17", 2873 + "digest 0.11.2", 2633 2874 ] 2634 2875 2635 2876 [[package]] ··· 2679 2920 ] 2680 2921 2681 2922 [[package]] 2923 + name = "signature" 2924 + version = "3.0.0-rc.10" 2925 + source = "registry+https://github.com/rust-lang/crates.io-index" 2926 + checksum = "7f1880df446116126965eeec169136b2e0251dba37c6223bcc819569550edea3" 2927 + dependencies = [ 2928 + "rand_core 0.10.0", 2929 + ] 2930 + 2931 + [[package]] 2932 + name = "simd_cesu8" 2933 + version = "1.1.1" 2934 + source = "registry+https://github.com/rust-lang/crates.io-index" 2935 + checksum = "94f90157bb87cddf702797c5dadfa0be7d266cdf49e22da2fcaa32eff75b2c33" 2936 + dependencies = [ 2937 + "rustc_version", 2938 + "simdutf8", 2939 + ] 2940 + 2941 + [[package]] 2942 + name = "simdutf8" 2943 + version = "0.1.5" 2944 + source = "registry+https://github.com/rust-lang/crates.io-index" 2945 + checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" 2946 + 2947 + [[package]] 2682 2948 name = "siphasher" 2683 2949 version = "1.0.2" 2684 2950 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 2715 2981 ] 2716 2982 2717 2983 [[package]] 2718 - name = "snow" 2719 - version = "0.10.0" 2720 - source = "registry+https://github.com/rust-lang/crates.io-index" 2721 - checksum = "599b506ccc4aff8cf7844bc42cf783009a434c1e26c964432560fb6d6ad02d82" 2722 - dependencies = [ 2723 - "blake2", 2724 - "chacha20poly1305", 2725 - "curve25519-dalek", 2726 - "getrandom 0.3.4", 2727 - "rustc_version", 2728 - "subtle", 2729 - ] 2730 - 2731 - [[package]] 2732 2984 name = "socket2" 2733 2985 version = "0.6.3" 2734 2986 source = "registry+https://github.com/rust-lang/crates.io-index" 2735 2987 checksum = "3a766e1110788c36f4fa1c2b71b387a7815aa65f88ce0229841826633d93723e" 2736 2988 dependencies = [ 2737 2989 "libc", 2738 - "windows-sys 0.61.2", 2990 + "windows-sys", 2739 2991 ] 2740 2992 2741 2993 [[package]] ··· 2770 3022 "bytes", 2771 3023 "color-eyre", 2772 3024 "crossterm", 3025 + "dhkem", 2773 3026 "futures-concurrency", 2774 3027 "jiff", 2775 3028 "postcard", 2776 3029 "rapidhash", 2777 3030 "ratatui", 2778 3031 "sachy-config", 3032 + "sachy-crypto", 2779 3033 "sachy-mdns", 2780 3034 "serde", 2781 - "snow", 2782 3035 "socket2", 2783 3036 "striker-proto", 2784 3037 ] ··· 2869 3122 2870 3123 [[package]] 2871 3124 name = "terminal_size" 2872 - version = "0.4.3" 3125 + version = "0.4.4" 2873 3126 source = "registry+https://github.com/rust-lang/crates.io-index" 2874 - checksum = "60b8cb979cb11c32ce1603f8137b22262a9d131aaa5c37b5678025f22b8becd0" 3127 + checksum = "230a1b821ccbd75b185820a1f1ff7b14d21da1e442e22c0863ea5f08771a8874" 2875 3128 dependencies = [ 2876 3129 "rustix", 2877 - "windows-sys 0.60.2", 3130 + "windows-sys", 2878 3131 ] 2879 3132 2880 3133 [[package]] ··· 2923 3176 "pest", 2924 3177 "pest_derive", 2925 3178 "phf", 2926 - "sha2", 3179 + "sha2 0.10.9", 2927 3180 "signal-hook", 2928 3181 "siphasher", 2929 3182 "terminfo", ··· 3031 3284 3032 3285 [[package]] 3033 3286 name = "toml_datetime" 3034 - version = "1.0.0+spec-1.1.0" 3287 + version = "1.1.0+spec-1.1.0" 3035 3288 source = "registry+https://github.com/rust-lang/crates.io-index" 3036 - checksum = "32c2555c699578a4f59f0cc68e5116c8d7cabbd45e1409b989d4be085b53f13e" 3289 + checksum = "97251a7c317e03ad83774a8752a7e81fb6067740609f75ea2b585b569a59198f" 3037 3290 dependencies = [ 3038 3291 "serde_core", 3039 3292 ] ··· 3047 3300 "indexmap", 3048 3301 "toml_datetime 0.7.5+spec-1.1.0", 3049 3302 "toml_parser", 3050 - "winnow", 3303 + "winnow 0.7.15", 3051 3304 ] 3052 3305 3053 3306 [[package]] 3054 3307 name = "toml_edit" 3055 - version = "0.25.4+spec-1.1.0" 3308 + version = "0.25.8+spec-1.1.0" 3056 3309 source = "registry+https://github.com/rust-lang/crates.io-index" 3057 - checksum = "7193cbd0ce53dc966037f54351dbbcf0d5a642c7f0038c382ef9e677ce8c13f2" 3310 + checksum = "16bff38f1d86c47f9ff0647e6838d7bb362522bdf44006c7068c2b1e606f1f3c" 3058 3311 dependencies = [ 3059 3312 "indexmap", 3060 - "toml_datetime 1.0.0+spec-1.1.0", 3313 + "toml_datetime 1.1.0+spec-1.1.0", 3061 3314 "toml_parser", 3062 3315 "toml_writer", 3063 - "winnow", 3316 + "winnow 1.0.0", 3064 3317 ] 3065 3318 3066 3319 [[package]] 3067 3320 name = "toml_parser" 3068 - version = "1.0.9+spec-1.1.0" 3321 + version = "1.1.0+spec-1.1.0" 3069 3322 source = "registry+https://github.com/rust-lang/crates.io-index" 3070 - checksum = "702d4415e08923e7e1ef96cd5727c0dfed80b4d2fa25db9647fe5eb6f7c5a4c4" 3323 + checksum = "2334f11ee363607eb04df9b8fc8a13ca1715a72ba8662a26ac285c98aabb4011" 3071 3324 dependencies = [ 3072 - "winnow", 3325 + "winnow 1.0.0", 3073 3326 ] 3074 3327 3075 3328 [[package]] 3076 3329 name = "toml_writer" 3077 - version = "1.0.6+spec-1.1.0" 3330 + version = "1.1.0+spec-1.1.0" 3078 3331 source = "registry+https://github.com/rust-lang/crates.io-index" 3079 - checksum = "ab16f14aed21ee8bfd8ec22513f7287cd4a91aa92e44edfe2c17ddd004e92607" 3332 + checksum = "d282ade6016312faf3e41e57ebbba0c073e4056dab1232ab1cb624199648f8ed" 3080 3333 3081 3334 [[package]] 3082 3335 name = "tracing" ··· 3204 3457 3205 3458 [[package]] 3206 3459 name = "unicode-segmentation" 3207 - version = "1.12.0" 3460 + version = "1.13.2" 3208 3461 source = "registry+https://github.com/rust-lang/crates.io-index" 3209 - checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" 3462 + checksum = "9629274872b2bfaf8d66f5f15725007f635594914870f65218920345aa11aa8c" 3210 3463 3211 3464 [[package]] 3212 3465 name = "unicode-truncate" ··· 3239 3492 3240 3493 [[package]] 3241 3494 name = "universal-hash" 3242 - version = "0.5.1" 3495 + version = "0.6.1" 3243 3496 source = "registry+https://github.com/rust-lang/crates.io-index" 3244 - checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea" 3497 + checksum = "f4987bdc12753382e0bec4a65c50738ffaabc998b9cdd1f952fb5f39b0048a96" 3245 3498 dependencies = [ 3246 - "crypto-common", 3247 - "subtle", 3499 + "crypto-common 0.2.1", 3500 + "ctutils", 3248 3501 ] 3249 3502 3250 3503 [[package]] ··· 3255 3508 3256 3509 [[package]] 3257 3510 name = "uuid" 3258 - version = "1.22.0" 3511 + version = "1.23.0" 3259 3512 source = "registry+https://github.com/rust-lang/crates.io-index" 3260 - checksum = "a68d3c8f01c0cfa54a75291d83601161799e4a89a39e0929f4b0354d88757a37" 3513 + checksum = "5ac8b6f42ead25368cf5b098aeb3dc8a1a2c05a3eee8a9a1a68c640edbfc79d9" 3261 3514 dependencies = [ 3262 3515 "atomic", 3263 3516 "getrandom 0.4.2", ··· 3334 3587 3335 3588 [[package]] 3336 3589 name = "wasm-bindgen" 3337 - version = "0.2.114" 3590 + version = "0.2.115" 3338 3591 source = "registry+https://github.com/rust-lang/crates.io-index" 3339 - checksum = "6532f9a5c1ece3798cb1c2cfdba640b9b3ba884f5db45973a6f442510a87d38e" 3592 + checksum = "6523d69017b7633e396a89c5efab138161ed5aafcbc8d3e5c5a42ae38f50495a" 3340 3593 dependencies = [ 3341 3594 "cfg-if", 3342 3595 "once_cell", ··· 3347 3600 3348 3601 [[package]] 3349 3602 name = "wasm-bindgen-futures" 3350 - version = "0.4.64" 3603 + version = "0.4.65" 3351 3604 source = "registry+https://github.com/rust-lang/crates.io-index" 3352 - checksum = "e9c5522b3a28661442748e09d40924dfb9ca614b21c00d3fd135720e48b67db8" 3605 + checksum = "2d1faf851e778dfa54db7cd438b70758eba9755cb47403f3496edd7c8fc212f0" 3353 3606 dependencies = [ 3354 - "cfg-if", 3355 - "futures-util", 3356 3607 "js-sys", 3357 - "once_cell", 3358 3608 "wasm-bindgen", 3359 - "web-sys", 3360 3609 ] 3361 3610 3362 3611 [[package]] 3363 3612 name = "wasm-bindgen-macro" 3364 - version = "0.2.114" 3613 + version = "0.2.115" 3365 3614 source = "registry+https://github.com/rust-lang/crates.io-index" 3366 - checksum = "18a2d50fcf105fb33bb15f00e7a77b772945a2ee45dcf454961fd843e74c18e6" 3615 + checksum = "4e3a6c758eb2f701ed3d052ff5737f5bfe6614326ea7f3bbac7156192dc32e67" 3367 3616 dependencies = [ 3368 3617 "quote", 3369 3618 "wasm-bindgen-macro-support", ··· 3371 3620 3372 3621 [[package]] 3373 3622 name = "wasm-bindgen-macro-support" 3374 - version = "0.2.114" 3623 + version = "0.2.115" 3375 3624 source = "registry+https://github.com/rust-lang/crates.io-index" 3376 - checksum = "03ce4caeaac547cdf713d280eda22a730824dd11e6b8c3ca9e42247b25c631e3" 3625 + checksum = "921de2737904886b52bcbb237301552d05969a6f9c40d261eb0533c8b055fedf" 3377 3626 dependencies = [ 3378 3627 "bumpalo", 3379 3628 "proc-macro2", ··· 3384 3633 3385 3634 [[package]] 3386 3635 name = "wasm-bindgen-shared" 3387 - version = "0.2.114" 3636 + version = "0.2.115" 3388 3637 source = "registry+https://github.com/rust-lang/crates.io-index" 3389 - checksum = "75a326b8c223ee17883a4251907455a2431acc2791c98c26279376490c378c16" 3638 + checksum = "a93e946af942b58934c604527337bad9ae33ba1d5c6900bbb41c2c07c2364a93" 3390 3639 dependencies = [ 3391 3640 "unicode-ident", 3392 3641 ] ··· 3427 3676 3428 3677 [[package]] 3429 3678 name = "web-sys" 3430 - version = "0.3.91" 3679 + version = "0.3.92" 3431 3680 source = "registry+https://github.com/rust-lang/crates.io-index" 3432 - checksum = "854ba17bb104abfb26ba36da9729addc7ce7f06f5c0f90f3c391f8461cca21f9" 3681 + checksum = "84cde8507f4d7cfcb1185b8cb5890c494ffea65edbe1ba82cfd63661c805ed94" 3433 3682 dependencies = [ 3434 3683 "js-sys", 3435 3684 "wasm-bindgen", ··· 3463 3712 dependencies = [ 3464 3713 "getrandom 0.3.4", 3465 3714 "mac_address", 3466 - "sha2", 3715 + "sha2 0.10.9", 3467 3716 "thiserror 1.0.69", 3468 3717 "uuid", 3469 3718 ] ··· 3554 3803 source = "registry+https://github.com/rust-lang/crates.io-index" 3555 3804 checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" 3556 3805 dependencies = [ 3557 - "windows-sys 0.61.2", 3806 + "windows-sys", 3558 3807 ] 3559 3808 3560 3809 [[package]] ··· 3571 3820 3572 3821 [[package]] 3573 3822 name = "windows-sys" 3574 - version = "0.45.0" 3575 - source = "registry+https://github.com/rust-lang/crates.io-index" 3576 - checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" 3577 - dependencies = [ 3578 - "windows-targets 0.42.2", 3579 - ] 3580 - 3581 - [[package]] 3582 - name = "windows-sys" 3583 - version = "0.60.2" 3584 - source = "registry+https://github.com/rust-lang/crates.io-index" 3585 - checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" 3586 - dependencies = [ 3587 - "windows-targets 0.53.5", 3588 - ] 3589 - 3590 - [[package]] 3591 - name = "windows-sys" 3592 3823 version = "0.61.2" 3593 3824 source = "registry+https://github.com/rust-lang/crates.io-index" 3594 3825 checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" ··· 3597 3828 ] 3598 3829 3599 3830 [[package]] 3600 - name = "windows-targets" 3601 - version = "0.42.2" 3831 + name = "winnow" 3832 + version = "0.7.15" 3602 3833 source = "registry+https://github.com/rust-lang/crates.io-index" 3603 - checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" 3834 + checksum = "df79d97927682d2fd8adb29682d1140b343be4ac0f08fd68b7765d9c059d3945" 3604 3835 dependencies = [ 3605 - "windows_aarch64_gnullvm 0.42.2", 3606 - "windows_aarch64_msvc 0.42.2", 3607 - "windows_i686_gnu 0.42.2", 3608 - "windows_i686_msvc 0.42.2", 3609 - "windows_x86_64_gnu 0.42.2", 3610 - "windows_x86_64_gnullvm 0.42.2", 3611 - "windows_x86_64_msvc 0.42.2", 3836 + "memchr", 3612 3837 ] 3613 3838 3614 3839 [[package]] 3615 - name = "windows-targets" 3616 - version = "0.53.5" 3617 - source = "registry+https://github.com/rust-lang/crates.io-index" 3618 - checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" 3619 - dependencies = [ 3620 - "windows-link", 3621 - "windows_aarch64_gnullvm 0.53.1", 3622 - "windows_aarch64_msvc 0.53.1", 3623 - "windows_i686_gnu 0.53.1", 3624 - "windows_i686_gnullvm", 3625 - "windows_i686_msvc 0.53.1", 3626 - "windows_x86_64_gnu 0.53.1", 3627 - "windows_x86_64_gnullvm 0.53.1", 3628 - "windows_x86_64_msvc 0.53.1", 3629 - ] 3630 - 3631 - [[package]] 3632 - name = "windows_aarch64_gnullvm" 3633 - version = "0.42.2" 3634 - source = "registry+https://github.com/rust-lang/crates.io-index" 3635 - checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" 3636 - 3637 - [[package]] 3638 - name = "windows_aarch64_gnullvm" 3639 - version = "0.53.1" 3640 - source = "registry+https://github.com/rust-lang/crates.io-index" 3641 - checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" 3642 - 3643 - [[package]] 3644 - name = "windows_aarch64_msvc" 3645 - version = "0.42.2" 3646 - source = "registry+https://github.com/rust-lang/crates.io-index" 3647 - checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" 3648 - 3649 - [[package]] 3650 - name = "windows_aarch64_msvc" 3651 - version = "0.53.1" 3652 - source = "registry+https://github.com/rust-lang/crates.io-index" 3653 - checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" 3654 - 3655 - [[package]] 3656 - name = "windows_i686_gnu" 3657 - version = "0.42.2" 3658 - source = "registry+https://github.com/rust-lang/crates.io-index" 3659 - checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" 3660 - 3661 - [[package]] 3662 - name = "windows_i686_gnu" 3663 - version = "0.53.1" 3664 - source = "registry+https://github.com/rust-lang/crates.io-index" 3665 - checksum = "960e6da069d81e09becb0ca57a65220ddff016ff2d6af6a223cf372a506593a3" 3666 - 3667 - [[package]] 3668 - name = "windows_i686_gnullvm" 3669 - version = "0.53.1" 3670 - source = "registry+https://github.com/rust-lang/crates.io-index" 3671 - checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" 3672 - 3673 - [[package]] 3674 - name = "windows_i686_msvc" 3675 - version = "0.42.2" 3676 - source = "registry+https://github.com/rust-lang/crates.io-index" 3677 - checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" 3678 - 3679 - [[package]] 3680 - name = "windows_i686_msvc" 3681 - version = "0.53.1" 3682 - source = "registry+https://github.com/rust-lang/crates.io-index" 3683 - checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" 3684 - 3685 - [[package]] 3686 - name = "windows_x86_64_gnu" 3687 - version = "0.42.2" 3688 - source = "registry+https://github.com/rust-lang/crates.io-index" 3689 - checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" 3690 - 3691 - [[package]] 3692 - name = "windows_x86_64_gnu" 3693 - version = "0.53.1" 3694 - source = "registry+https://github.com/rust-lang/crates.io-index" 3695 - checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" 3696 - 3697 - [[package]] 3698 - name = "windows_x86_64_gnullvm" 3699 - version = "0.42.2" 3700 - source = "registry+https://github.com/rust-lang/crates.io-index" 3701 - checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" 3702 - 3703 - [[package]] 3704 - name = "windows_x86_64_gnullvm" 3705 - version = "0.53.1" 3706 - source = "registry+https://github.com/rust-lang/crates.io-index" 3707 - checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" 3708 - 3709 - [[package]] 3710 - name = "windows_x86_64_msvc" 3711 - version = "0.42.2" 3712 - source = "registry+https://github.com/rust-lang/crates.io-index" 3713 - checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" 3714 - 3715 - [[package]] 3716 - name = "windows_x86_64_msvc" 3717 - version = "0.53.1" 3718 - source = "registry+https://github.com/rust-lang/crates.io-index" 3719 - checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650" 3720 - 3721 - [[package]] 3722 3840 name = "winnow" 3723 - version = "0.7.15" 3841 + version = "1.0.0" 3724 3842 source = "registry+https://github.com/rust-lang/crates.io-index" 3725 - checksum = "df79d97927682d2fd8adb29682d1140b343be4ac0f08fd68b7765d9c059d3945" 3843 + checksum = "a90e88e4667264a994d34e6d1ab2d26d398dcdca8b7f52bec8668957517fc7d8" 3726 3844 dependencies = [ 3727 3845 "memchr", 3728 3846 ] ··· 3817 3935 3818 3936 [[package]] 3819 3937 name = "zerocopy" 3820 - version = "0.8.42" 3938 + version = "0.8.47" 3821 3939 source = "registry+https://github.com/rust-lang/crates.io-index" 3822 - checksum = "f2578b716f8a7a858b7f02d5bd870c14bf4ddbbcf3a4c05414ba6503640505e3" 3940 + checksum = "efbb2a062be311f2ba113ce66f697a4dc589f85e78a4aea276200804cea0ed87" 3823 3941 dependencies = [ 3824 3942 "zerocopy-derive", 3825 3943 ] 3826 3944 3827 3945 [[package]] 3828 3946 name = "zerocopy-derive" 3829 - version = "0.8.42" 3947 + version = "0.8.47" 3830 3948 source = "registry+https://github.com/rust-lang/crates.io-index" 3831 - checksum = "7e6cc098ea4d3bd6246687de65af3f920c430e236bee1e3bf2e441463f08a02f" 3949 + checksum = "0e8bc7269b54418e7aeeef514aa68f8690b8c0489a06b0136e5f57c4c5ccab89" 3832 3950 dependencies = [ 3833 3951 "proc-macro2", 3834 3952 "quote",
+5 -6
Cargo.toml
··· 47 47 serde.workspace = true 48 48 postcard.workspace = true 49 49 jiff = "0.2.18" 50 - snow = { version = "0.10", default-features = false, features = [ 51 - "use-curve25519", 52 - "use-chacha20poly1305", 53 - "use-blake2", 54 - "use-getrandom", 55 - ] } 50 + sachy-crypto = { git = "https://tangled.org/sachy.dev/sachy-embed-core" } 51 + dhkem = { version = "0.1.0-rc.0", features = ["ecdh", "k256"] } 52 + 53 + [patch.crates-io] 54 + dhkem = { git = "https://github.com/RustCrypto/KEMs", rev = "2d277162e0c5ed1c53bb315d0c0dace394cba70a" } 56 55 57 56 [build-dependencies] 58 57 sachy-config = { git = "https://tangled.org/sachy.dev/sachy-embed-core", package = "sachy-config" }
-1
src/device/components.rs
··· 21 21 pub address: String, 22 22 pub port: u16, 23 23 pub ip: IpAddr, 24 - pub encryption: String, 25 24 } 26 25 27 26 #[derive(Debug, Component, Default, Clone, Copy)]
+1 -4
src/device/setup.rs
··· 54 54 address: instance.srv.target.to_string(), 55 55 port: instance.srv.port, 56 56 ip: instance.ip, 57 - encryption: instance.encryption.to_string(), 58 57 }; 59 58 60 59 if !unique.0.contains(&device_addr) { ··· 85 84 host: Label<'a>, 86 85 srv: &'a SRV<'a>, 87 86 ip: IpAddr, 88 - encryption: &'a str, 89 87 } 90 88 91 89 #[derive(Debug, Default)] ··· 129 127 if let InstanceBuilder { 130 128 name: Some(name), 131 129 srv: Some(srv), 132 - txt: Some(txt), 133 130 ip: Some(ip), 131 + .. 134 132 } = builder 135 133 { 136 134 return Some(InstanceDetails { 137 135 host: name, 138 136 srv, 139 137 ip, 140 - encryption: txt, 141 138 }); 142 139 } 143 140 }
+37 -60
src/net.rs
··· 1 1 use std::{ 2 2 io::{Read, Write}, 3 3 net::{SocketAddr, TcpStream}, 4 - sync::{Arc, LazyLock, Mutex, OnceLock}, 5 4 time::Duration, 6 5 }; 7 6 ··· 12 11 ecs::{resource::Resource, system::Commands}, 13 12 tasks::IoTaskPool, 14 13 }; 14 + 15 15 use futures_concurrency::future::Race; 16 - use snow::{Builder, TransportState, params::NoiseParams}; 16 + use sachy_crypto::{ClientHandshake, TransportState}; 17 17 18 18 use crate::constants::NOISE_PSK; 19 19 20 - static PARAMS: LazyLock<NoiseParams> = 21 - LazyLock::new(|| "Noise_XXpsk3_25519_ChaChaPoly_BLAKE2s".parse().unwrap()); 22 - static LOCAL_PRIVATE_KEY: OnceLock<snow::Keypair> = OnceLock::new(); 23 - 24 20 pub enum StrikeUpdateState { 25 21 Disconnected, 26 22 Connecting, ··· 50 46 let (resp_tx, resp_rx) = async_channel::bounded(64); 51 47 52 48 io.spawn(async move { 53 - let mut read_buf = vec![0u8; 4096]; 54 - let mut enc_buf = vec![0u8; 4096]; 55 - let mut write_buf = vec![0u8; 4096]; 56 - 57 49 while let Ok(StrikeAction::Connect(addr)) = signal_rx.recv().await { 58 50 let net_fut = async { 59 51 loop { ··· 66 58 resp_tx.send(StrikeUpdateState::Connected).await.ok(); 67 59 stream.write_with(|s| s.set_nodelay(true)).await.ok(); 68 60 69 - let Ok(transport) = noise_handshake(&stream).await else { 61 + let Ok(transport) = transport_handshake(&stream).await else { 70 62 resp_tx.send(StrikeUpdateState::Disconnected).await.ok(); 71 63 continue; 72 64 }; 73 65 74 - let transport_access = Arc::new(Mutex::new(transport)); 66 + let (mut send_state, mut recv_state) = transport.split(); 75 67 76 68 let read_fut = async { 77 - while let Ok(buh) = recv(&stream).await { 78 - if let Ok(decrypted) = { 79 - transport_access 80 - .lock() 81 - .unwrap() 82 - .read_message(&buh, &mut read_buf) 83 - } && let Ok(data) = 84 - striker_proto::receive_response(&mut read_buf[..decrypted]) 85 - && resp_tx 86 - .send(StrikeUpdateState::Updating(data)) 87 - .await 88 - .is_err() 89 - { 90 - break; 69 + while let Ok(mut buh) = recv(&stream) 70 + .await 71 + && { 72 + recv_state 73 + .decrypt(&mut buh, b"pico-strike") 74 + .is_ok() 91 75 } 92 - } 76 + && let Ok(data) = striker_proto::receive_response(&mut buh) 77 + && resp_tx 78 + .send(StrikeUpdateState::Updating(data)) 79 + .await 80 + .is_ok() 81 + {} 93 82 }; 94 83 95 84 let write_fut = async { 96 - while let Ok(req) = req_rx.recv().await { 97 - if let Ok(payload) = striker_proto::send_request(req, &mut write_buf) 98 - && let Ok(encrypted) = { 99 - transport_access 100 - .lock() 101 - .unwrap() 102 - .write_message(payload, &mut enc_buf) 103 - } 104 - && send(&stream, &enc_buf[..encrypted]).await.is_err() 105 - { 106 - break; 107 - }; 85 + let mut payload = vec![0u8; 4096]; 86 + while let Ok(req) = req_rx.recv().await 87 + && striker_proto::send_request(req, &mut payload) 88 + .map(|written| written.len()) 89 + .map_err(|e| color_eyre::eyre::eyre!(e)) 90 + .and_then(|written| { 91 + payload.truncate(written); 92 + send_state.encrypt(&mut payload, b"pico-strike")?; 93 + Ok(()) 94 + }) 95 + .is_ok() 96 + && send(&stream, &payload).await.is_ok() 97 + { 98 + payload.resize_with(4096, Default::default); 108 99 } 109 100 }; 110 101 ··· 147 138 } 148 139 } 149 140 150 - async fn noise_handshake(tcp: &Async<TcpStream>) -> color_eyre::Result<TransportState> { 151 - let builder = Builder::new(PARAMS.clone()); 152 - let static_key = LOCAL_PRIVATE_KEY.get_or_init(|| builder.generate_keypair().unwrap()); 153 - 154 - let mut noise = builder 155 - .local_private_key(&static_key.private)? 156 - .psk(3, &NOISE_PSK)? 157 - .build_initiator()?; 158 - 159 - let mut payload = vec![0u8; 2048]; 160 - 161 - // -> e 162 - let len = noise.write_message(&[], &mut payload)?; 163 - 164 - send(tcp, &payload[..len]).await?; 141 + async fn transport_handshake(tcp: &Async<TcpStream>) -> color_eyre::Result<TransportState> { 142 + let (encap, handshake) = ClientHandshake::send(); 165 143 166 - // <- e, ee, s, es 167 - noise.read_message(&recv(tcp).await?, &mut payload)?; 144 + tcp.write_with(|mut tcp| tcp.write_all(encap.serialize().as_bytes())) 145 + .await?; 168 146 169 - // -> s, se 170 - let len = noise.write_message(&[], &mut payload)?; 147 + let mut payload = vec![0u8; 1024]; 171 148 172 - send(tcp, &payload[..len]).await?; 149 + let read = tcp.read_with(|mut tcp| tcp.read(&mut payload)).await?; 173 150 174 - let transport = noise.into_transport_mode()?; 151 + let transport = handshake.finish(&payload[..read], &NOISE_PSK)?; 175 152 176 153 Ok(transport) 177 154 }