From e4487834e8dddec6ee7a6545a0ed970abbb6df8c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D1=80=D1=82=D1=91=D0=BC=20=D0=9F=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=BE=D0=B2=20=5BArtyom=20Pavlov=5D?= <newpavlov@gmail.com> Date: Mon, 24 Mar 2025 05:12:01 +0300 Subject: [PATCH 1/2] kupyna: migrate tests to blobby --- Cargo.lock | 37 ++++------ kupyna/tests/data/kupyna256.blb | Bin 0 -> 753 bytes kupyna/tests/data/kupyna384.blb | Bin 0 -> 147 bytes kupyna/tests/data/kupyna48.blb | Bin 0 -> 74 bytes kupyna/tests/data/kupyna512.blb | Bin 0 -> 1048 bytes kupyna/tests/kup256.rs | 95 -------------------------- kupyna/tests/kup384.rs | 21 ------ kupyna/tests/kup48.rs | 19 ------ kupyna/tests/kup512.rs | 116 -------------------------------- kupyna/tests/mod.rs | 64 ++++++++++++++++++ 10 files changed, 78 insertions(+), 274 deletions(-) create mode 100644 kupyna/tests/data/kupyna256.blb create mode 100644 kupyna/tests/data/kupyna384.blb create mode 100644 kupyna/tests/data/kupyna48.blb create mode 100644 kupyna/tests/data/kupyna512.blb delete mode 100644 kupyna/tests/kup256.rs delete mode 100644 kupyna/tests/kup384.rs delete mode 100644 kupyna/tests/kup48.rs delete mode 100644 kupyna/tests/kup512.rs create mode 100644 kupyna/tests/mod.rs diff --git a/Cargo.lock b/Cargo.lock index ce047edb..835b5719 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -70,12 +70,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "byteorder" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" - [[package]] name = "cfg-if" version = "1.0.0" @@ -100,8 +94,7 @@ dependencies = [ [[package]] name = "crypto-common" version = "0.2.0-rc.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "170d71b5b14dec99db7739f6fc7d6ec2db80b78c3acb77db48392ccc3d8a9ea0" +source = "git+https://github.com/RustCrypto/traits#de72c67026c5a0aee2a9beb2c9f25f3a19ec2bc8" dependencies = [ "hybrid-array", ] @@ -109,8 +102,7 @@ dependencies = [ [[package]] name = "digest" version = "0.11.0-pre.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c478574b20020306f98d61c8ca3322d762e1ff08117422ac6106438605ea516" +source = "git+https://github.com/RustCrypto/traits#de72c67026c5a0aee2a9beb2c9f25f3a19ec2bc8" dependencies = [ "blobby", "block-buffer", @@ -208,9 +200,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.170" +version = "0.2.171" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "875b3680cb2f8f71bdcf9a30f38d48282f5d3c95cbf9b3fa57269bb5d5c06828" +checksum = "c19937216e9d3aa9956d9bb8dfc0b0c8beb6058fc4f7a4dc4d850edf86a237d6" [[package]] name = "md-5" @@ -242,9 +234,9 @@ dependencies = [ [[package]] name = "ppv-lite86" -version = "0.2.20" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" +checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" dependencies = [ "zerocopy", ] @@ -260,9 +252,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.39" +version = "1.0.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1f1914ce909e1658d9907913b4b91947430c7d9be598b15a1912935b8c04801" +checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" dependencies = [ "proc-macro2", ] @@ -370,9 +362,9 @@ checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "syn" -version = "2.0.99" +version = "2.0.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e02e925281e18ffd9d640e234264753c43edc62d64b2d4cf898f1bc5e75f3fc2" +checksum = "b09a44accad81e1ba1cd74a32461ba89dee89095ba17b32f5d03683b1b1fc2a0" dependencies = [ "proc-macro2", "quote", @@ -420,19 +412,18 @@ dependencies = [ [[package]] name = "zerocopy" -version = "0.7.35" +version = "0.8.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" +checksum = "2586fea28e186957ef732a5f8b3be2da217d65c5969d4b1e17f973ebbe876879" dependencies = [ - "byteorder", "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.7.35" +version = "0.8.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" +checksum = "a996a8f63c5c4448cd959ac1bab0aaa3306ccfd060472f85943ee0750f0169be" dependencies = [ "proc-macro2", "quote", diff --git a/kupyna/tests/data/kupyna256.blb b/kupyna/tests/data/kupyna256.blb new file mode 100644 index 0000000000000000000000000000000000000000..597acd65959e3fc73a6edf35c85e538c0a4204dc GIT binary patch literal 753 zcmZQ*U|?WmVrF4wW9Q)H;^yJy;};MV5*85^6PJ*bl9rK`lUGnwQdUt_Q`gYc($>+{ z(>E|QGBz<aGq<p`vbM3cvv=V5@-AQc*#v7NA3yb(Je&N!&Ar;YucguM!BYJ+L**Hz zjg(vA=;Z9;>gMj@>E-R?>*pU37!({58WtWA85JE98yBCDn3SB7nwFlCnU$TBo0nfu zSX5k6T2@|BSyf$ATUYPEHKpX4>+(x+s&Vr=|9{at{@T!F0z2!ZmJb`7o&@b((bPQP zPHbpwYHn$5Ywzgn>h9_7>z^=j(&Q;qr%j(RbJpxRbLY)puyE1hB}<nrU$Ju4>NRWE zt>3V5)8;K(w{73CbJy-Yd-v@>aPZLKBS()NKXLNZ=`&}~oxgDL(&Z~xuU)@!^VaP< zckkVQ@bJ;&Cr_U}fAR9w>o;%Tz5np>)8{W=zkUDl^Vjb`fB*e=xXij(dz!7t+~cX= zTBiiWI+Qc{H|I!yuwZ+b<nyrXKtI!ehgW6gr(D%S!x~&<1S^|fiLlOFcHz2^Z{FF> z_uhEEnDC{+j^eb0KcXE3N>6M!J&|89`&RtIk8?E7_nj#{^}mQ?m*$jh{YUe9#TXpU l1~OhebDvjM-s@J_i;lBJJ_{E#cbO_a7nb$k-pe1i4FJSM91j2h literal 0 HcmV?d00001 diff --git a/kupyna/tests/data/kupyna384.blb b/kupyna/tests/data/kupyna384.blb new file mode 100644 index 0000000000000000000000000000000000000000..003eeb41c05931fb8704af4e5ab6b565174e5654 GIT binary patch literal 147 zcmV;E0BrvNfIa{L0s{mE1_uZU3JVMk4i69!5)%{^78e*98XFuP9v>hfA|oUvCMPH< zDl054E-x@KGBY$aHa9pqIy*c)K0iP~LPJDFMn_0VN=r;lPESx#Qd3k_R##YAT3cLQ zUSQb*7LwRbQFU`xRD^4%QRdL?53Dxdya+)keaj0~gvU@8!`{p)Zb!unFE|n7QMe^+ BD0~0_ literal 0 HcmV?d00001 diff --git a/kupyna/tests/data/kupyna48.blb b/kupyna/tests/data/kupyna48.blb new file mode 100644 index 0000000000000000000000000000000000000000..e339ff25ec9d69c06b3e75e57e0e3e1ad14518ef GIT binary patch literal 74 zcmZQ*U|?WmVrF4wW9Q)H;^yJy;};MV5*85^6PJ*bl9rK`lUGnwQdUt_Q`gYc($>+{ d(>E|QGBz<aGq<p`vbM3cv**!IGgO{Y3IGh(3S$5O literal 0 HcmV?d00001 diff --git a/kupyna/tests/data/kupyna512.blb b/kupyna/tests/data/kupyna512.blb new file mode 100644 index 0000000000000000000000000000000000000000..5d07ac65a7ef10aecf4c0ed8e05b8b33342b490e GIT binary patch literal 1048 zcmZQ*U|?WmVrF4wW9Q)H;^yJy;};MV5*85^6PJ*bl9rK`lUGnwQdUt_Q`gYc($>+{ z(>E|QGBz<aGq<p`vbM3cvu|Lq5Pl>uQR3|HsNA@s?+U$VPH^e|w)*><=}YFMt#9`Q zXPYM6m95h}_SLdteZ&@*$JNVP58R!|YP>79;{E@Fw$HR0DRzT{qm#3XtDC!rr<b>n zub+QFU{G*KXjpheWK?uaY+QUoVp4KSYFc_mW>$7iZeD&tVNr2OX<2ziWmR=eZC!l> zL)lxYL*25B&W!fI+7+!GCTtFK5lTL2$NY<pt7q+E?dj7@Q|nc;MX&x@vasYH(|m4e z=k^m7e-0ktYiGUQ{I~vJ^T7L|v8lPGwXMCQv#YzOx37P~#7UE<Or17;#>`o>=ggfq zf5E~<i<c~2wtU6PRjb#mUAKP2#!Z{IY~8kf$Ie~5_w3!b|G>dRhmRaRcKpQ2Q>V|I zJ$L@X#Y>m3T)lSv#?4!|@7%q2|G~pYkDok!_WZ@mSFhi^efR#u$4{TXeEs(Q$IoBC z|NQ;;zkz}Gf^BiY5zf;#nuj7LFDUZQ7Peop^Yw&fzEb@wt;0go1Yb+k7Di3Y7O1oS zQ|6&GL)dE0i_-`8#)+6M-8fytzm5rLM!U4c`BLwq5@z<5)h@I4ZPre4@i}mH$+ZZB zbs=HRRYf;k`-M(?$eD3WZ1qEl=|7T^x1KIPqVU^1xMbf^?OdiwO+!8&8W=Wq?tj_- zt?BE>^bgm6g#{ZtRNMA+(#E5)E}9ck-cQ}QwBAOS@4R^1Tv^F^yD#W<g#Yfko4(?( zeAwBh17hb(3>6s~7*ezKeXffnS#+l?E^vModi#m%m7sNJ-41IuI~)3aaFE>d%brCo gYDV}^>6h~7BnzfV)Vy8ZGe?F=M$?O}Q?k_p0Q9D<iU0rr literal 0 HcmV?d00001 diff --git a/kupyna/tests/kup256.rs b/kupyna/tests/kup256.rs deleted file mode 100644 index 630b0493..00000000 --- a/kupyna/tests/kup256.rs +++ /dev/null @@ -1,95 +0,0 @@ -use hex_literal::hex; -use kupyna::{Digest, Kupyna256}; - -#[test] -fn kup256_n512() { - let input = hex!( - "000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F" - "202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F" - ); - - let result = Kupyna256::digest(&input); - - assert_eq!( - result[..], - hex!("08F4EE6F1BE6903B324C4E27990CB24EF69DD58DBE84813EE0A52F6631239875")[..], - ); -} - -#[test] -fn kup256_n1024() { - let input = hex!( - "000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F" - "202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F" - "404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F" - "606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F" - ); - - let result = Kupyna256::digest(&input); - - assert_eq!( - result[..], - hex!("0A9474E645A7D25E255E9E89FFF42EC7EB31349007059284F0B182E452BDA882")[..], - ); -} - -#[test] -fn kup256_n2048() { - let input = hex!( - "000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F" - "202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F" - "404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F" - "606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F" - "808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9F" - "A0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBF" - "C0C1C2C3C4C5C6C7C8C9CACBCCCDCECFD0D1D2D3D4D5D6D7D8D9DADBDCDDDEDF" - "E0E1E2E3E4E5E6E7E8E9EAEBECEDEEEFF0F1F2F3F4F5F6F7F8F9FAFBFCFDFEFF" - ); - - let result = Kupyna256::digest(&input); - - assert_eq!( - result[..], - hex!("D305A32B963D149DC765F68594505D4077024F836C1BF03806E1624CE176C08F")[..], - ); -} - -#[test] -fn kup256_n8() { - let input = hex!("FF"); - - let result = Kupyna256::digest(&input); - - assert_eq!( - result[..], - hex!("EA7677CA4526555680441C117982EA14059EA6D0D7124D6ECDB3DEEC49E890F4")[..], - ); -} - -#[test] -fn kup256_n760() { - let input = hex!( - "000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F" - "202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F" - "404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E" - ); - - let result = Kupyna256::digest(&input); - - assert_eq!( - result[..], - hex!("1075C8B0CB910F116BDA5FA1F19C29CF8ECC75CAFF7208BA2994B68FC56E8D16")[..], - ); -} - -#[test] -fn kup256_n0() { - let input = hex!(""); - - let result = Kupyna256::digest(&input); - - assert_eq!( - result[..], - hex!("CD5101D1CCDF0D1D1F4ADA56E888CD724CA1A0838A3521E7131D4FB78D0F5EB6")[..], - ); -} diff --git a/kupyna/tests/kup384.rs b/kupyna/tests/kup384.rs deleted file mode 100644 index 54d81851..00000000 --- a/kupyna/tests/kup384.rs +++ /dev/null @@ -1,21 +0,0 @@ -use hex_literal::hex; -use kupyna::{Digest, Kupyna384}; - -#[test] -fn kup512_n760() { - let input = hex!( - "000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F" - "202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F" - "404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E" - ); - - let result = Kupyna384::digest(&input); - - assert_eq!( - result[..], - hex!( - "D9021692D84E5175735654846BA751E6D0ED0FAC36DFBC0841287DCB0B5584C7" - "5016C3DECC2A6E47C50B2F3811E351B8" - )[..], - ); -} diff --git a/kupyna/tests/kup48.rs b/kupyna/tests/kup48.rs deleted file mode 100644 index a81ef184..00000000 --- a/kupyna/tests/kup48.rs +++ /dev/null @@ -1,19 +0,0 @@ -use hex_literal::hex; -use kupyna::{ - Digest, KupynaShortCore, - digest::{core_api::CoreWrapper, typenum::U6}, -}; - -type Kupyna48 = CoreWrapper<KupynaShortCore<U6>>; - -#[test] -fn kup48_n512() { - let input = hex!( - "000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F" - "202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F" - ); - - let result = Kupyna48::digest(&input); - - assert_eq!(result[..], hex!("2F6631239875")[..]); -} diff --git a/kupyna/tests/kup512.rs b/kupyna/tests/kup512.rs deleted file mode 100644 index 20913e2b..00000000 --- a/kupyna/tests/kup512.rs +++ /dev/null @@ -1,116 +0,0 @@ -use hex_literal::hex; -use kupyna::{Digest, Kupyna512}; - -#[test] -fn kup512_n512() { - let input = hex!( - "000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F" - "202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F" - ); - - let result = Kupyna512::digest(&input); - - assert_eq!( - result[..], - hex!( - "3813E2109118CDFB5A6D5E72F7208DCCC80A2DFB3AFDFB02F46992B5EDBE536B" - "3560DD1D7E29C6F53978AF58B444E37BA685C0DD910533BA5D78EFFFC13DE62A" - )[..], - ); -} - -#[test] -fn kup512_n1024() { - let input = hex!( - "000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F" - "202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F" - "404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F" - "606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F" - ); - - let result = Kupyna512::digest(&input); - - assert_eq!( - result[..], - hex!( - "76ED1AC28B1D0143013FFA87213B4090B356441263C13E03FA060A8CADA32B97" - "9635657F256B15D5FCA4A174DE029F0B1B4387C878FCC1C00E8705D783FD7FFE" - )[..], - ); -} - -#[test] -fn kup512_n2048() { - let input = hex!( - "000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F" - "202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F" - "404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F" - "606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F" - "808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9F" - "A0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBF" - "C0C1C2C3C4C5C6C7C8C9CACBCCCDCECFD0D1D2D3D4D5D6D7D8D9DADBDCDDDEDF" - "E0E1E2E3E4E5E6E7E8E9EAEBECEDEEEFF0F1F2F3F4F5F6F7F8F9FAFBFCFDFEFF" - ); - - let result = Kupyna512::digest(&input); - - assert_eq!( - result[..], - hex!( - "0DD03D7350C409CB3C29C25893A0724F6B133FA8B9EB90A64D1A8FA93B565566" - "11EB187D715A956B107E3BFC76482298133A9CE8CBC0BD5E1436A5B197284F7E" - )[..], - ); -} - -#[test] -fn kup512_n8() { - let input = hex!("FF"); - - let result = Kupyna512::digest(&input); - - assert_eq!( - result[..], - hex!( - "871B18CF754B72740307A97B449ABEB32B64444CC0D5A4D65830AE5456837A72" - "D8458F12C8F06C98C616ABE11897F86263B5CB77C420FB375374BEC52B6D0292" - )[..], - ); -} - -#[test] -fn kup512_n1536() { - let input = hex!( - "000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F" - "202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F" - "404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F" - "606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F" - "808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9F" - "A0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBF" - ); - - let result = Kupyna512::digest(&input); - - assert_eq!( - result[..], - hex!( - "B189BFE987F682F5F167F0D7FA565330E126B6E592B1C55D44299064EF95B1A5" - "7F3C2D0ECF17869D1D199EBBD02E8857FB8ADD67A8C31F56CD82C016CF743121" - )[..], - ); -} - -#[test] -fn kup512_n0() { - let input = hex!(""); - - let result = Kupyna512::digest(&input); - - assert_eq!( - result[..], - hex!( - "656B2F4CD71462388B64A37043EA55DBE445D452AECD46C3298343314EF04019" - "BCFA3F04265A9857F91BE91FCE197096187CEDA78C9C1C021C294A0689198538" - )[..], - ); -} diff --git a/kupyna/tests/mod.rs b/kupyna/tests/mod.rs new file mode 100644 index 00000000..82e44b2f --- /dev/null +++ b/kupyna/tests/mod.rs @@ -0,0 +1,64 @@ +use kupyna::{digest::{new_test,hash_serialization_test, dev::{feed_rand_16mib, fixed_reset_test}}, KupynaShortCore, + digest::{core_api::CoreWrapper, typenum::U6}, + Kupyna256, Kupyna384, Kupyna512, Digest, +}; +use hex_literal::hex; + +type Kupyna48 = CoreWrapper<KupynaShortCore<U6>>; + +// Test vectors from the original paper: +// https://eprint.iacr.org/2015/885.pdf +new_test!(kupyna48, "kupyna48", Kupyna48, fixed_reset_test); +new_test!(kupyna256, "kupyna256", Kupyna256, fixed_reset_test); +new_test!(kupyna384, "kupyna384", Kupyna384, fixed_reset_test); +new_test!(kupyna512, "kupyna512", Kupyna512, fixed_reset_test); + +hash_serialization_test!( + kupyna256_serialization, + Kupyna256, + hex!( + "a02347e840fa8d002ff2bf9535184ad08a0761fce78bb9875c4bbae6bfd460e2" + "d2076070b6a2b9db64b11d6bbafa0ecf20420a94d51382370256415a8e32bceb" + "0100000000000000200113000000000000000000000000000000000000000000" + "0000000000000000000000000000000000000000000000000000000000000000" + "00000000000000000000" + ) +); +hash_serialization_test!( + kupyna512_serialization, + Kupyna512, + hex!( + "601ca0ba3053d9dbf78976c62126d51da932ea8962a9f351c3703546dbc6a1ad" + "a445b95fbf44ab2687894caf6310d81d0c0fb1573f310e1a85ebb8b3d7d936d2" + "5b31ff2ce6d0158fa8d050c2e8e328f3ee362d5dc8b12758292d5c200b246666" + "3ab741319ecdb86273039cdad99887ca656c952c71860d179205b5695b052c17" + "0100000000000000400113000000000000000000000000000000000000000000" + "0000000000000000000000000000000000000000000000000000000000000000" + "0000000000000000000000000000000000000000000000000000000000000000" + "0000000000000000000000000000000000000000000000000000000000000000" + "00000000000000000000" + ) +); + +#[test] +fn kupyna256_rand() { + let mut h = Kupyna256::new(); + feed_rand_16mib(&mut h); + assert_eq!( + h.finalize(), + hex!("250067e8dd6f36ec2d184d2cf6dc243d5b45b470cc771a8541fb0357e134c2d7"), + ); +} + +#[test] +fn kupyna512_rand() { + let mut h = Kupyna512::new(); + feed_rand_16mib(&mut h); + assert_eq!( + h.finalize(), + hex!( + "1b91c76a15adade8611ae202e1a1899f12b45e21d1d342f33b5ba27987f2b826" + "9b2b1ba19c5e6663af24439965ae519a59535f7aa5356352e5134e875b4e3510" + ), + ); +} From 7a5dbc37b93ad8a369c06269f106ac80aa3a69c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D1=80=D1=82=D1=91=D0=BC=20=D0=9F=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=BE=D0=B2=20=5BArtyom=20Pavlov=5D?= <newpavlov@gmail.com> Date: Mon, 24 Mar 2025 05:13:34 +0300 Subject: [PATCH 2/2] fmt --- kupyna/tests/mod.rs | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/kupyna/tests/mod.rs b/kupyna/tests/mod.rs index 82e44b2f..8e3dbf96 100644 --- a/kupyna/tests/mod.rs +++ b/kupyna/tests/mod.rs @@ -1,8 +1,12 @@ -use kupyna::{digest::{new_test,hash_serialization_test, dev::{feed_rand_16mib, fixed_reset_test}}, KupynaShortCore, +use hex_literal::hex; +use kupyna::{ + Digest, Kupyna256, Kupyna384, Kupyna512, KupynaShortCore, digest::{core_api::CoreWrapper, typenum::U6}, - Kupyna256, Kupyna384, Kupyna512, Digest, + digest::{ + dev::{feed_rand_16mib, fixed_reset_test}, + hash_serialization_test, new_test, + }, }; -use hex_literal::hex; type Kupyna48 = CoreWrapper<KupynaShortCore<U6>>;