From 9efe8d1ed5ee210ae644b7118f1d674a2de5f3e8 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Sat, 22 Jul 2017 14:16:10 +0200 Subject: Add fast-path SHA256 functions for integral types --- tests/sha256/driver.cxx | 37 +++++++++++++++++++++++++------------ 1 file changed, 25 insertions(+), 12 deletions(-) (limited to 'tests/sha256') diff --git a/tests/sha256/driver.cxx b/tests/sha256/driver.cxx index 5686898..2d2f963 100644 --- a/tests/sha256/driver.cxx +++ b/tests/sha256/driver.cxx @@ -26,18 +26,31 @@ main () assert (string (sha256 ("123", 3).string ()) == "a665a45920422f9d417e4867efdc4fb8a04a1f3fff1fa07e998e86f7f7a27ae3"); - sha256 h; - h.append ("1"); - h.append (string ("2")); - h.append ("3", 1); - - auto& b (h.binary ()); - assert (b[0] == 0x20 && b[31] == 0x9d); - - string s (h.string ()); - assert (s == - "204d9db65789fbede7829ed77f72ba1f0fe21a833d95abad4849b82f33a69b9d"); - + { + sha256 h; + h.append ("1"); + h.append (string ("2")); + h.append ("3", 1); + + auto& b (h.binary ()); + assert (b[0] == 0x20 && b[31] == 0x9d); + + string s (h.string ()); + assert (s == + "204d9db65789fbede7829ed77f72ba1f0fe21a833d95abad4849b82f33a69b9d"); + } + + // Test fast path. + // + { + char c ('X'); + sha256 h; + h.append (c); + assert (string (h.string ()) == sha256 (&c, 1).string ()); + } + + // + // string fp ("F4:9D:C0:02:C6:B6:62:06:A5:48:AE:87:35:32:95:64:C2:B8:C9:6D:9B:" "28:85:6D:EF:CA:FA:7F:04:B5:4F:A6"); -- cgit v1.1