commit 36523ad3ed4f1a22fc71187b4c0acfb9dce8d392 Author: Артём Павлов [Artyom Pavlov] Date: Fri Oct 14 17:55:45 2016 +0300 First commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..6bc8a078 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +*/target/ +*/*/target/ +Cargo.lock diff --git a/README.md b/README.md new file mode 100644 index 00000000..cc217542 --- /dev/null +++ b/README.md @@ -0,0 +1,25 @@ +# rust-crypto's hashes +Collection of cryptographic hash functions written in pure Rust. This is the part +of the rust-crypto project. + +## Contributions + +Contributions are extremely welcome. The most significant needs are help adding +documentation, implementing new algorithms, and general cleanup and improvement +of the code. By submitting a pull request you are agreeing to make you work +available under the license terms of the Rust-Crypto project. + +## License + +Rust-Crypto is dual licensed under the MIT and Apache 2.0 licenses, the same licenses +as the Rust compiler. + +## Supported algorithms +* BLAKE2 +* MD4 +* MD5 +* SHA-1 +* SHA-2 +* SHA-3 +* RIPEMD-160 +* Whirlpool diff --git a/blake2/Cargo.toml b/blake2/Cargo.toml new file mode 100644 index 00000000..86773f84 --- /dev/null +++ b/blake2/Cargo.toml @@ -0,0 +1,19 @@ +[package] +name = "blake2" +version = "0.2.0" +authors = ["The Rust-Crypto Project Developers"] +license = "MIT/Apache-2.0" +description = "BLAKE2 hash functions" +documentation = "https://docs.rs/blake2" +repository = "https://github.com/RustCrypto/hashes" +keywords = ["crypto", "blake2", "hash", "digest"] + +[dependencies] +byte-tools = "0.1" +digest = "0.2" +generic-array = "0.5" +crypto-ops = "0.1" +#crypto-mac = {path = "../../../rust-crypto-decoupled/utils/crypto-mac/"} + +[dev-dependencies] +crypto-tests = "0.1" diff --git a/blake2/LICENSE-APACHE b/blake2/LICENSE-APACHE new file mode 100644 index 00000000..78173fa2 --- /dev/null +++ b/blake2/LICENSE-APACHE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/blake2/LICENSE-MIT b/blake2/LICENSE-MIT new file mode 100644 index 00000000..66cf7556 --- /dev/null +++ b/blake2/LICENSE-MIT @@ -0,0 +1,27 @@ +Copyright (c) 2006-2009 Graydon Hoare +Copyright (c) 2009-2013 Mozilla Foundation +Copyright (c) 2016 Artyom Pavlov + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. diff --git a/blake2/benches/lib.rs b/blake2/benches/lib.rs new file mode 100644 index 00000000..642434b0 --- /dev/null +++ b/blake2/benches/lib.rs @@ -0,0 +1,69 @@ +#![no_std] +#![feature(test)] +extern crate test; +extern crate blake2; +extern crate digest; + +use test::Bencher; +use digest::Digest; +use blake2::{Blake2b512, Blake2s256}; + +#[bench] +pub fn blake2b_10(bh: &mut Bencher) { + let mut sh = Blake2b512::new(); + let bytes = [1u8; 10]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn blake2b_1k(bh: &mut Bencher) { + let mut sh = Blake2b512::new(); + let bytes = [1u8; 1024]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn blake2b_64k(bh: &mut Bencher) { + let mut sh = Blake2b512::new(); + let bytes = [1u8; 65536]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn blake2s_10(bh: &mut Bencher) { + let mut sh = Blake2s256::new(); + let bytes = [1u8; 10]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn blake2s_1k(bh: &mut Bencher) { + let mut sh = Blake2s256::new(); + let bytes = [1u8; 1024]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn blake2s_64k(bh: &mut Bencher) { + let mut sh = Blake2s256::new(); + let bytes = [1u8; 65536]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} diff --git a/blake2/examples/blake2b512sum.rs b/blake2/examples/blake2b512sum.rs new file mode 100644 index 00000000..75472039 --- /dev/null +++ b/blake2/examples/blake2b512sum.rs @@ -0,0 +1,49 @@ +extern crate blake2; + +use blake2::{Blake2b512, Digest}; +use std::env; +use std::fs; +use std::io::{self, Read}; + +const BUFFER_SIZE: usize = 1024; + +/// Print digest result as hex string and name pair +fn print_result(sum: &[u8], name: &str) { + for byte in sum { + print!("{:02x}", byte); + } + println!("\t{}", name); +} + +/// Compute digest value for given `Reader` and print it +/// On any error simply return without doing anything +fn process(reader: &mut R, name: &str) { + let mut sh = D::new(); + let mut buffer = [0u8; BUFFER_SIZE]; + loop { + let n = match reader.read(&mut buffer) { + Ok(n) => n, + Err(_) => return, + }; + sh.input(&buffer[..n]); + if n == 0 || n < BUFFER_SIZE { + break; + } + } + print_result(&sh.result(), name); +} + +fn main() { + let args = env::args(); + // Process files listed in command line arguments one by one + // If no files provided process input from stdin + if args.len() > 1 { + for path in args.skip(1) { + if let Ok(mut file) = fs::File::open(&path) { + process::(&mut file, &path); + } + } + } else { + process::(&mut io::stdin(), "-"); + } +} diff --git a/blake2/examples/blake2s256sum.rs b/blake2/examples/blake2s256sum.rs new file mode 100644 index 00000000..d5fb61d4 --- /dev/null +++ b/blake2/examples/blake2s256sum.rs @@ -0,0 +1,49 @@ +extern crate blake2; + +use blake2::{Blake2s256, Digest}; +use std::env; +use std::fs; +use std::io::{self, Read}; + +const BUFFER_SIZE: usize = 1024; + +/// Print digest result as hex string and name pair +fn print_result(sum: &[u8], name: &str) { + for byte in sum { + print!("{:02x}", byte); + } + println!("\t{}", name); +} + +/// Compute digest value for given `Reader` and print it +/// On any error simply return without doing anything +fn process(reader: &mut R, name: &str) { + let mut sh = D::new(); + let mut buffer = [0u8; BUFFER_SIZE]; + loop { + let n = match reader.read(&mut buffer) { + Ok(n) => n, + Err(_) => return, + }; + sh.input(&buffer[..n]); + if n == 0 || n < BUFFER_SIZE { + break; + } + } + print_result(&sh.result(), name); +} + +fn main() { + let args = env::args(); + // Process files listed in command line arguments one by one + // If no files provided process input from stdin + if args.len() > 1 { + for path in args.skip(1) { + if let Ok(mut file) = fs::File::open(&path) { + process::(&mut file, &path); + } + } + } else { + process::(&mut io::stdin(), "-"); + } +} diff --git a/blake2/src/blake2b.rs b/blake2/src/blake2b.rs new file mode 100644 index 00000000..12366ba9 --- /dev/null +++ b/blake2/src/blake2b.rs @@ -0,0 +1,294 @@ +use byte_tools::{copy_memory, read_u64v_le, write_u64v_le, + write_u32_le, write_u64_le}; +use crypto_ops::secure_memset; +use digest::Digest; +// use crypto_mac::{Mac, MacResult512}; +use generic_array::{GenericArray, ArrayLength}; +// use generic_array::typenum::{U64, Unsigned}; +use generic_array::typenum::U64; + +use consts::BLAKE2B_IV as IV; +use consts::{SIGMA, BLAKE2B_BLOCKBYTES, BLAKE2B_OUTBYTES, BLAKE2B_KEYBYTES, + BLAKE2B_SALTBYTES, BLAKE2B_PERSONALBYTES}; + +use core::marker::PhantomData; + +#[derive(Copy)] +pub struct Blake2b where N: ArrayLength + Copy { + h: [u64; 8], + t: [u64; 2], + f: [u64; 2], + buf: [u8; 2*BLAKE2B_BLOCKBYTES], + buflen: usize, + key: [u8; BLAKE2B_KEYBYTES], + key_length: u8, + last_node: u8, + param: Blake2bParam, + // Phantom data to tie digest length to this struct + phantom: PhantomData, +} + +pub type Blake2b512 = Blake2b; + +impl Clone for Blake2b where N: ArrayLength + Copy { + fn clone(&self) -> Blake2b { *self } +} + +#[derive(Copy, Clone)] +struct Blake2bParam { + key_length: u8, + fanout: u8, + depth: u8, + leaf_length: u32, + node_offset: u64, + node_depth: u8, + inner_length: u8, + reserved: [u8; 14], + salt: [u8; BLAKE2B_SALTBYTES], + personal: [u8; BLAKE2B_PERSONALBYTES], +} + +macro_rules! G( ($r:expr, $i:expr, $a:expr, $b:expr, $c:expr, $d:expr, $m:expr) => ({ + $a = $a.wrapping_add($b).wrapping_add($m[SIGMA[$r][2*$i+0]]); + $d = ($d ^ $a).rotate_right(32); + $c = $c.wrapping_add($d); + $b = ($b ^ $c).rotate_right(24); + $a = $a.wrapping_add($b).wrapping_add($m[SIGMA[$r][2*$i+1]]); + $d = ($d ^ $a).rotate_right(16); + $c = $c .wrapping_add($d); + $b = ($b ^ $c).rotate_right(63); +})); + +macro_rules! round( ($r:expr, $v:expr, $m:expr) => ( { + G!($r,0,$v[ 0],$v[ 4],$v[ 8],$v[12], $m); + G!($r,1,$v[ 1],$v[ 5],$v[ 9],$v[13], $m); + G!($r,2,$v[ 2],$v[ 6],$v[10],$v[14], $m); + G!($r,3,$v[ 3],$v[ 7],$v[11],$v[15], $m); + G!($r,4,$v[ 0],$v[ 5],$v[10],$v[15], $m); + G!($r,5,$v[ 1],$v[ 6],$v[11],$v[12], $m); + G!($r,6,$v[ 2],$v[ 7],$v[ 8],$v[13], $m); + G!($r,7,$v[ 3],$v[ 4],$v[ 9],$v[14], $m); + } +)); + +impl Blake2b where N: ArrayLength + Copy { + fn set_lastnode(&mut self) { + self.f[1] = 0xFFFFFFFFFFFFFFFF; + } + + fn set_lastblock(&mut self) { + if self.last_node!=0 { + self.set_lastnode(); + } + self.f[0] = 0xFFFFFFFFFFFFFFFF; + } + + fn increment_counter(&mut self, inc : u64) { + self.t[0] += inc; + self.t[1] += if self.t[0] < inc { 1 } else { 0 }; + } + + fn apply_param(&mut self) { + let mut param_bytes = [0u8; 64]; + + param_bytes[0] = N::to_u8(); + param_bytes[1] = self.param.key_length; + param_bytes[2] = self.param.fanout; + param_bytes[3] = self.param.depth; + write_u32_le(&mut param_bytes[4..8], self.param.leaf_length); + write_u64_le(&mut param_bytes[8..16], self.param.node_offset); + param_bytes[16] = self.param.node_depth; + param_bytes[17] = self.param.inner_length; + param_bytes[18..32].copy_from_slice(&self.param.reserved); + param_bytes[32..48].copy_from_slice(&self.param.salt); + param_bytes[48..].copy_from_slice(&self.param.personal); + + let mut param_words : [u64; 8] = [0; 8]; + read_u64v_le(&mut param_words, ¶m_bytes); + for (h, param_word) in self.h.iter_mut().zip(param_words.iter()) { + *h = *h ^ *param_word; + } + } + + // init xors IV with input parameter block + fn init(param: Blake2bParam, key: &[u8]) -> Blake2b { + assert!(key.len() <= BLAKE2B_KEYBYTES); + let mut b = Blake2b { + h: IV, + t: [0,0], + f: [0,0], + buf: [0; 2*BLAKE2B_BLOCKBYTES], + buflen: 0, + last_node: 0, + key: [0; BLAKE2B_KEYBYTES], + key_length: key.len() as u8, + param: param, + phantom: PhantomData, + }; + copy_memory(key, &mut b.key); + b.apply_param(); + b + } + + fn apply_key(&mut self) { + let mut block : [u8; BLAKE2B_BLOCKBYTES] = [0; BLAKE2B_BLOCKBYTES]; + copy_memory(&self.key[..self.key_length as usize], &mut block); + self.update(&block); + secure_memset(&mut block[..], 0); + } + + pub fn new_keyed(key: &[u8] ) -> Blake2b { + assert!(N::to_usize() > 0 && N::to_usize() <= BLAKE2B_OUTBYTES); + assert!(key.len() > 0 && key.len() <= BLAKE2B_KEYBYTES); + + let param = Blake2bParam { + key_length: key.len() as u8, + fanout: 1, + depth: 1, + leaf_length: 0, + node_offset: 0, + node_depth: 0, + inner_length: 0, + reserved: [0; 14], + salt: [0; BLAKE2B_SALTBYTES], + personal: [0; BLAKE2B_PERSONALBYTES], + }; + + let mut b = Blake2b::init(param, key); + b.apply_key(); + b + } + + fn compress(&mut self) { + let mut ms: [u64; 16] = [0; 16]; + let mut vs: [u64; 16] = [0; 16]; + + read_u64v_le(&mut ms, &self.buf[0..BLAKE2B_BLOCKBYTES]); + + for (v, h) in vs.iter_mut().zip(self.h.iter()) { + *v = *h; + } + + vs[ 8] = IV[0]; + vs[ 9] = IV[1]; + vs[10] = IV[2]; + vs[11] = IV[3]; + vs[12] = self.t[0] ^ IV[4]; + vs[13] = self.t[1] ^ IV[5]; + vs[14] = self.f[0] ^ IV[6]; + vs[15] = self.f[1] ^ IV[7]; + round!( 0, vs, ms ); + round!( 1, vs, ms ); + round!( 2, vs, ms ); + round!( 3, vs, ms ); + round!( 4, vs, ms ); + round!( 5, vs, ms ); + round!( 6, vs, ms ); + round!( 7, vs, ms ); + round!( 8, vs, ms ); + round!( 9, vs, ms ); + round!( 10, vs, ms ); + round!( 11, vs, ms ); + + let iter = self.h.iter_mut().zip(vs[0..8].iter().zip(vs[8..16].iter())); + for (h_elem, (v_low, v_high)) in iter { + *h_elem = *h_elem ^ *v_low ^ *v_high; + } + } + + + fn update(&mut self, input: &[u8]) { + let mut input = input; + while input.len() > 0 { + let left = self.buflen; + let fill = 2 * BLAKE2B_BLOCKBYTES - left; + + if input.len() > fill { + copy_memory(&input[0..fill], &mut self.buf[left..]); // Fill buffer + self.buflen += fill; + self.increment_counter( BLAKE2B_BLOCKBYTES as u64); + self.compress(); + + let mut halves = self.buf.chunks_mut(BLAKE2B_BLOCKBYTES); + let first_half = halves.next().unwrap(); + let second_half = halves.next().unwrap(); + copy_memory(second_half, first_half); + + self.buflen -= BLAKE2B_BLOCKBYTES; + input = &input[fill..input.len()]; + } else { // inlen <= fill + copy_memory(input, &mut self.buf[left..]); + self.buflen += input.len(); + break; + } + } + } + + fn finalize(mut self) -> GenericArray { + if self.buflen > BLAKE2B_BLOCKBYTES { + self.increment_counter(BLAKE2B_BLOCKBYTES as u64); + self.compress(); + self.buflen -= BLAKE2B_BLOCKBYTES; + + let mut halves = self.buf.chunks_mut(BLAKE2B_BLOCKBYTES); + let first_half = halves.next().unwrap(); + let second_half = halves.next().unwrap(); + copy_memory(second_half, first_half); + } + + let incby = self.buflen as u64; + self.increment_counter(incby); + self.set_lastblock(); + for b in self.buf[self.buflen..].iter_mut() { + *b = 0; + } + self.compress(); + + write_u64v_le(&mut self.buf[0..64], &self.h); + + let mut out = GenericArray::new(); + copy_memory(&self.buf[..N::to_usize()], &mut out); + out + } +} + +impl Digest for Blake2b where N: ArrayLength + Copy { + type R = N; + type B = U64; + + fn new() -> Blake2b { + assert!(N::to_usize() > 0 && N::to_usize() <= BLAKE2B_OUTBYTES); + let param = Blake2bParam { + key_length: 0, + fanout: 1, + depth: 1, + leaf_length: 0, + node_offset: 0, + node_depth: 0, + inner_length: 0, + reserved: [0; 14], + salt: [0; BLAKE2B_SALTBYTES], + personal: [0; BLAKE2B_PERSONALBYTES], + }; + + Blake2b::init(param, &[]) + } + + fn input(&mut self, input: &[u8]) { self.update(input); } + + fn result(self) -> GenericArray { self.finalize() } +} + +/* +impl Mac for Blake2b { + type R = N; + + fn input(&mut self, data: &[u8]) { + self.update(data); + } + + fn result(&mut self) -> MacResult { + MacResult::new(self.result()) + } +} +*/ \ No newline at end of file diff --git a/blake2/src/blake2s.rs b/blake2/src/blake2s.rs new file mode 100644 index 00000000..cb560c81 --- /dev/null +++ b/blake2/src/blake2s.rs @@ -0,0 +1,279 @@ +use byte_tools::{copy_memory, read_u32v_le, write_u32v_le, write_u32_le}; +use crypto_ops::secure_memset; +use digest::Digest; +//use crypto_mac::{Mac, MacResult256}; +use generic_array::{GenericArray, ArrayLength}; +// use generic_array::typenum::{U32, Unsigned}; +use generic_array::typenum::{U32, U128}; + +use consts::BLAKE2S_IV as IV; +use consts::{SIGMA, BLAKE2S_BLOCKBYTES, BLAKE2S_OUTBYTES, BLAKE2S_KEYBYTES, + BLAKE2S_SALTBYTES, BLAKE2S_PERSONALBYTES}; + +use core::marker::PhantomData; + +#[derive(Copy, Clone)] +pub struct Blake2s where N: ArrayLength + Copy { + h: [u32; 8], + t: [u32; 2], + f: [u32; 2], + buf: GenericArray, + buflen: usize, + key: [u8; BLAKE2S_KEYBYTES], + key_length: u8, + last_node: u8, + param: Blake2sParam, + // Phantom data to tie digest length to this struct + phantom: PhantomData, +} + +pub type Blake2s256 = Blake2s; + +#[derive(Copy, Clone)] +struct Blake2sParam { + key_length: u8, + fanout: u8, + depth: u8, + leaf_length: u32, + node_offset: [u8; 6], + node_depth: u8, + inner_length: u8, + salt: [u8; BLAKE2S_SALTBYTES], + personal: [u8; BLAKE2S_PERSONALBYTES], +} + +macro_rules! G( ($r:expr, $i:expr, $a:expr, $b:expr, $c:expr, $d:expr, $m:expr) => ({ + $a = $a.wrapping_add($b).wrapping_add($m[SIGMA[$r][2*$i+0]]); + $d = ($d ^ $a).rotate_right(16); + $c = $c.wrapping_add($d); + $b = ($b ^ $c).rotate_right(12); + $a = $a.wrapping_add($b).wrapping_add($m[SIGMA[$r][2*$i+1]]); + $d = ($d ^ $a).rotate_right(8); + $c = $c.wrapping_add($d); + $b = ($b ^ $c).rotate_right(7); +})); + +macro_rules! round( ($r:expr, $v:expr, $m:expr) => ( { + G!($r,0,$v[ 0],$v[ 4],$v[ 8],$v[12], $m); + G!($r,1,$v[ 1],$v[ 5],$v[ 9],$v[13], $m); + G!($r,2,$v[ 2],$v[ 6],$v[10],$v[14], $m); + G!($r,3,$v[ 3],$v[ 7],$v[11],$v[15], $m); + G!($r,4,$v[ 0],$v[ 5],$v[10],$v[15], $m); + G!($r,5,$v[ 1],$v[ 6],$v[11],$v[12], $m); + G!($r,6,$v[ 2],$v[ 7],$v[ 8],$v[13], $m); + G!($r,7,$v[ 3],$v[ 4],$v[ 9],$v[14], $m); + } +)); + +impl Blake2s where N: ArrayLength + Copy { + fn set_lastnode(&mut self) { + self.f[1] = 0xFFFFFFFF; + } + + fn set_lastblock(&mut self) { + if self.last_node!=0 { + self.set_lastnode(); + } + self.f[0] = 0xFFFFFFFF; + } + + fn increment_counter(&mut self, inc : u32) { + self.t[0] += inc; + self.t[1] += if self.t[0] < inc { 1 } else { 0 }; + } + + fn apply_param(&mut self) { + let mut param_bytes = [0u8; 32]; + + param_bytes[0] = N::to_u8(); + param_bytes[1] = self.param.key_length; + param_bytes[2] = self.param.fanout; + param_bytes[3] = self.param.depth; + write_u32_le(&mut param_bytes[4..8], self.param.leaf_length); + param_bytes[8..14].copy_from_slice(&self.param.node_offset); + param_bytes[15] = self.param.node_depth; + param_bytes[16] = self.param.inner_length; + param_bytes[16..24].copy_from_slice(&self.param.salt); + param_bytes[24..].copy_from_slice(&self.param.personal); + + let mut param_words : [u32; 8] = [0; 8]; + read_u32v_le(&mut param_words, ¶m_bytes); + for (h, param_word) in self.h.iter_mut().zip(param_words.iter()) { + *h = *h ^ *param_word; + } + } + + // init xors IV with input parameter block + fn init( param: Blake2sParam, key: &[u8] ) -> Blake2s { + assert!(key.len() <= BLAKE2S_KEYBYTES); + let mut b = Blake2s { + h: IV, + t: [0,0], + f: [0,0], + buf: GenericArray::new(), + buflen: 0, + last_node: 0, + key: [0; BLAKE2S_KEYBYTES], + key_length: key.len() as u8, + param: param, + phantom: PhantomData, + }; + copy_memory(key, &mut b.key); + b.apply_param(); + b + } + + fn apply_key(&mut self) { + let mut block : [u8; BLAKE2S_BLOCKBYTES] = [0; BLAKE2S_BLOCKBYTES]; + copy_memory(&self.key[..self.key_length as usize], &mut block); + self.update(&block); + secure_memset(&mut block[..], 0); + } + + pub fn new_keyed(key: &[u8] ) -> Blake2s { + assert!(N::to_usize() > 0 && N::to_usize() <= BLAKE2S_OUTBYTES); + assert!(key.len() > 0 && key.len() <= BLAKE2S_KEYBYTES); + + let param = Blake2sParam { + key_length: key.len() as u8, + fanout: 1, + depth: 1, + leaf_length: 0, + node_offset: [0; 6], + node_depth: 0, + inner_length: 0, + salt: [0; BLAKE2S_SALTBYTES], + personal: [0; BLAKE2S_PERSONALBYTES], + }; + + let mut b = Blake2s::init(param, key); + b.apply_key(); + b + } + + fn compress(&mut self) { + let mut ms: [u32; 16] = [0; 16]; + let mut vs: [u32; 16] = [0; 16]; + + read_u32v_le(&mut ms, &self.buf[0..BLAKE2S_BLOCKBYTES]); + + for (v, h) in vs.iter_mut().zip(self.h.iter()) { + *v = *h; + } + + vs[ 8] = IV[0]; + vs[ 9] = IV[1]; + vs[10] = IV[2]; + vs[11] = IV[3]; + vs[12] = self.t[0] ^ IV[4]; + vs[13] = self.t[1] ^ IV[5]; + vs[14] = self.f[0] ^ IV[6]; + vs[15] = self.f[1] ^ IV[7]; + round!( 0, vs, ms ); + round!( 1, vs, ms ); + round!( 2, vs, ms ); + round!( 3, vs, ms ); + round!( 4, vs, ms ); + round!( 5, vs, ms ); + round!( 6, vs, ms ); + round!( 7, vs, ms ); + round!( 8, vs, ms ); + round!( 9, vs, ms ); + + for (h_elem, (v_low, v_high)) in self.h.iter_mut().zip( vs[0..8].iter().zip(vs[8..16].iter()) ) { + *h_elem = *h_elem ^ *v_low ^ *v_high; + } + } + + fn update( &mut self, mut input: &[u8] ) { + while input.len() > 0 { + let left = self.buflen; + let fill = 2 * BLAKE2S_BLOCKBYTES - left; + + if input.len() > fill { + copy_memory(&input[0..fill], &mut self.buf[left..]); // Fill buffer + self.buflen += fill; + self.increment_counter( BLAKE2S_BLOCKBYTES as u32); + self.compress(); + + let mut halves = self.buf.chunks_mut(BLAKE2S_BLOCKBYTES); + let first_half = halves.next().unwrap(); + let second_half = halves.next().unwrap(); + copy_memory(second_half, first_half); + + self.buflen -= BLAKE2S_BLOCKBYTES; + input = &input[fill..input.len()]; + } else { // inlen <= fill + copy_memory(input, &mut self.buf[left..]); + self.buflen += input.len(); + break; + } + } + } + + fn finalize(mut self) -> GenericArray { + if self.buflen > BLAKE2S_BLOCKBYTES { + self.increment_counter(BLAKE2S_BLOCKBYTES as u32); + self.compress(); + self.buflen -= BLAKE2S_BLOCKBYTES; + + let mut halves = self.buf.chunks_mut(BLAKE2S_BLOCKBYTES); + let first_half = halves.next().unwrap(); + let second_half = halves.next().unwrap(); + copy_memory(second_half, first_half); + } + + let incby = self.buflen as u32; + self.increment_counter(incby); + self.set_lastblock(); + for b in self.buf[self.buflen..].iter_mut() { + *b = 0; + } + self.compress(); + + write_u32v_le(&mut self.buf[0..32], &self.h); + + let mut out = GenericArray::new(); + copy_memory(&self.buf[..N::to_usize()], &mut out); + out + } +} + +impl Digest for Blake2s where N: ArrayLength + Copy { + type R = N; + type B = U32; + + fn new() -> Blake2s { + assert!(N::to_usize() > 0 && N::to_usize() <= BLAKE2S_OUTBYTES); + let default_param = Blake2sParam { + key_length: 0, + fanout: 1, + depth: 1, + leaf_length: 0, + node_offset: [0; 6], + node_depth: 0, + inner_length: 0, + salt: [0; BLAKE2S_SALTBYTES], + personal: [0; BLAKE2S_PERSONALBYTES], + }; + Blake2s::init(default_param, &[]) + } + + fn input(&mut self, input: &[u8]) { self.update(input); } + + fn result(self) -> GenericArray { self.finalize() } +} + +/* +impl Mac for Blake2s { + type R = N; + + fn input(&mut self, data: &[u8]) { + self.update(data); + } + + fn result(&mut self) -> MacResult { + MacResult::new(self.result()) + } +} +*/ \ No newline at end of file diff --git a/blake2/src/consts.rs b/blake2/src/consts.rs new file mode 100644 index 00000000..05c2fa7c --- /dev/null +++ b/blake2/src/consts.rs @@ -0,0 +1,38 @@ +pub static SIGMA : [[usize; 16]; 12] = [ + [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ], + [ 14, 10, 4, 8, 9, 15, 13, 6, 1, 12, 0, 2, 11, 7, 5, 3 ], + [ 11, 8, 12, 0, 5, 2, 15, 13, 10, 14, 3, 6, 7, 1, 9, 4 ], + [ 7, 9, 3, 1, 13, 12, 11, 14, 2, 6, 5, 10, 4, 0, 15, 8 ], + [ 9, 0, 5, 7, 2, 4, 10, 15, 14, 1, 11, 12, 6, 8, 3, 13 ], + [ 2, 12, 6, 10, 0, 11, 8, 3, 4, 13, 7, 5, 15, 14, 1, 9 ], + [ 12, 5, 1, 15, 14, 13, 4, 10, 0, 7, 6, 3, 9, 2, 8, 11 ], + [ 13, 11, 7, 14, 12, 1, 3, 9, 5, 0, 15, 4, 8, 6, 2, 10 ], + [ 6, 15, 14, 9, 11, 3, 0, 8, 12, 2, 13, 7, 1, 4, 10, 5 ], + [ 10, 2, 8, 4, 7, 6, 1, 5, 15, 11, 9, 14, 3, 12, 13 , 0 ], + [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 ], + [ 14, 10, 4, 8, 9, 15, 13, 6, 1, 12, 0, 2, 11, 7, 5, 3 ], +]; + +pub static BLAKE2B_IV : [u64; 8] = [ + 0x6a09e667f3bcc908, 0xbb67ae8584caa73b, + 0x3c6ef372fe94f82b, 0xa54ff53a5f1d36f1, + 0x510e527fade682d1, 0x9b05688c2b3e6c1f, + 0x1f83d9abfb41bd6b, 0x5be0cd19137e2179, +]; + +pub const BLAKE2B_BLOCKBYTES : usize = 128; +pub const BLAKE2B_OUTBYTES : usize = 64; +pub const BLAKE2B_KEYBYTES : usize = 64; +pub const BLAKE2B_SALTBYTES : usize = 16; +pub const BLAKE2B_PERSONALBYTES : usize = 16; + +pub static BLAKE2S_IV : [u32; 8] = [ + 0x6A09E667, 0xBB67AE85, 0x3C6EF372, 0xA54FF53A, + 0x510E527F, 0x9B05688C, 0x1F83D9AB, 0x5BE0CD19 +]; + +pub const BLAKE2S_BLOCKBYTES : usize = 64; +pub const BLAKE2S_OUTBYTES : usize = 32; +pub const BLAKE2S_KEYBYTES : usize = 32; +pub const BLAKE2S_SALTBYTES : usize = 8; +pub const BLAKE2S_PERSONALBYTES : usize = 8; \ No newline at end of file diff --git a/blake2/src/lib.rs b/blake2/src/lib.rs new file mode 100644 index 00000000..0bcb2998 --- /dev/null +++ b/blake2/src/lib.rs @@ -0,0 +1,16 @@ +#![no_std] +extern crate byte_tools; +extern crate digest; +// extern crate crypto_mac; +extern crate crypto_ops; +extern crate generic_array; + +mod consts; + +mod blake2b; +pub use blake2b::{Blake2b, Blake2b512}; + +mod blake2s; +pub use blake2s::{Blake2s, Blake2s256}; + +pub use digest::Digest; diff --git a/blake2/tests/data/blake2b/1.input.bin b/blake2/tests/data/blake2b/1.input.bin new file mode 100644 index 00000000..e69de29b diff --git a/blake2/tests/data/blake2b/1.output.bin b/blake2/tests/data/blake2b/1.output.bin new file mode 100644 index 00000000..a5ee2fc2 --- /dev/null +++ b/blake2/tests/data/blake2b/1.output.bin @@ -0,0 +1 @@ +xjBY%Rr/G@XGaT^1XSdDNK:h[HUop \ No newline at end of file diff --git a/blake2/tests/data/blake2b/2.input.bin b/blake2/tests/data/blake2b/2.input.bin new file mode 100644 index 00000000..ff3bb639 --- /dev/null +++ b/blake2/tests/data/blake2b/2.input.bin @@ -0,0 +1 @@ +The quick brown fox jumps over the lazy dog \ No newline at end of file diff --git a/blake2/tests/data/blake2b/2.output.bin b/blake2/tests/data/blake2b/2.output.bin new file mode 100644 index 00000000..00fbbed6 --- /dev/null +++ b/blake2/tests/data/blake2b/2.output.bin @@ -0,0 +1 @@ +Խ}'F(6J 3;6s$z͐)n?Tws[L֩ \ No newline at end of file diff --git a/blake2/tests/data/blake2b/3.input.bin b/blake2/tests/data/blake2b/3.input.bin new file mode 100644 index 00000000..7c0b4e5f Binary files /dev/null and b/blake2/tests/data/blake2b/3.input.bin differ diff --git a/blake2/tests/data/blake2b/3.key.bin b/blake2/tests/data/blake2b/3.key.bin new file mode 100644 index 00000000..96eb299a Binary files /dev/null and b/blake2/tests/data/blake2b/3.key.bin differ diff --git a/blake2/tests/data/blake2b/3.output.bin b/blake2/tests/data/blake2b/3.output.bin new file mode 100644 index 00000000..8f531d4b --- /dev/null +++ b/blake2/tests/data/blake2b/3.output.bin @@ -0,0 +1,2 @@ +' .(ЯF[ p7*>HK; х=n +{ 7=m-F.a \ No newline at end of file diff --git a/blake2/tests/data/blake2b/mac.input.bin b/blake2/tests/data/blake2b/mac.input.bin new file mode 100644 index 00000000..c12070ca --- /dev/null +++ b/blake2/tests/data/blake2b/mac.input.bin @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/blake2/tests/data/blake2b/mac.key.bin b/blake2/tests/data/blake2b/mac.key.bin new file mode 100644 index 00000000..96eb299a Binary files /dev/null and b/blake2/tests/data/blake2b/mac.key.bin differ diff --git a/blake2/tests/data/blake2b/mac.output.bin b/blake2/tests/data/blake2b/mac.output.bin new file mode 100644 index 00000000..297e59b6 --- /dev/null +++ b/blake2/tests/data/blake2b/mac.output.bin @@ -0,0 +1 @@ +q\<Њ7]"qBB׼1'.Q!DbX}5;Apb9Ns \ No newline at end of file diff --git a/blake2/tests/data/blake2s/1.input.bin b/blake2/tests/data/blake2s/1.input.bin new file mode 100644 index 00000000..7c0b4e5f Binary files /dev/null and b/blake2/tests/data/blake2s/1.input.bin differ diff --git a/blake2/tests/data/blake2s/1.key.bin b/blake2/tests/data/blake2s/1.key.bin new file mode 100644 index 00000000..fefa1cc8 Binary files /dev/null and b/blake2/tests/data/blake2s/1.key.bin differ diff --git a/blake2/tests/data/blake2s/1.output.bin b/blake2/tests/data/blake2s/1.output.bin new file mode 100644 index 00000000..e5ca1a29 --- /dev/null +++ b/blake2/tests/data/blake2s/1.output.bin @@ -0,0 +1 @@ +?5QT[ЩX1[4$ \ No newline at end of file diff --git a/blake2/tests/data/blake2s/mac.input.bin b/blake2/tests/data/blake2s/mac.input.bin new file mode 100644 index 00000000..c12070ca --- /dev/null +++ b/blake2/tests/data/blake2s/mac.input.bin @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/blake2/tests/data/blake2s/mac.key.bin b/blake2/tests/data/blake2s/mac.key.bin new file mode 100644 index 00000000..fefa1cc8 Binary files /dev/null and b/blake2/tests/data/blake2s/mac.key.bin differ diff --git a/blake2/tests/data/blake2s/mac.output.bin b/blake2/tests/data/blake2s/mac.output.bin new file mode 100644 index 00000000..b4f93ae2 --- /dev/null +++ b/blake2/tests/data/blake2s/mac.output.bin @@ -0,0 +1 @@ +\N(E~v+O~[ȂI \ No newline at end of file diff --git a/blake2/tests/lib.rs b/blake2/tests/lib.rs new file mode 100644 index 00000000..02bde801 --- /dev/null +++ b/blake2/tests/lib.rs @@ -0,0 +1,35 @@ +#![no_std] +#[macro_use] +extern crate crypto_tests; +extern crate blake2; +extern crate digest; + +use blake2::{Blake2b512, Blake2s256}; +use crypto_tests::hash::{Test, main_test}; +use digest::Digest; + +#[test] +fn blake2b() { + let tests = new_tests!("blake2b/1", "blake2b/2"); + // Tests without key + main_test::(&tests); + // Test with key + let input = include_bytes!("data/blake2b/3.input.bin"); + let output = include_bytes!("data/blake2b/3.output.bin"); + let key = include_bytes!("data/blake2b/3.key.bin"); + + let mut sh = Blake2b512::new_keyed(key); + sh.input(input); + assert_eq!(&sh.result()[..], &output[..]); +} + +#[test] +fn blake2s() { + let input = include_bytes!("data/blake2s/1.input.bin"); + let output = include_bytes!("data/blake2s/1.output.bin"); + let key = include_bytes!("data/blake2s/1.key.bin"); + + let mut sh = Blake2s256::new_keyed(key); + sh.input(input); + assert_eq!(&sh.result()[..], output); +} diff --git a/blake2/tests/mac.rs b/blake2/tests/mac.rs new file mode 100644 index 00000000..6a8f94f7 --- /dev/null +++ b/blake2/tests/mac.rs @@ -0,0 +1,29 @@ +/* +#![no_std] +#[macro_use] +extern crate blake2; +extern crate crypto_mac; + +use blake2::{Blake2b512, Blake2s256}; +use crypto_mac::Mac; + +#[test] +fn blake2b_mac() { + let key = include_bytes!("data/blake2b/mac.key.bin"); + let input = include_bytes!("data/blake2b/mac.input.bin"); + let output = include_bytes!("data/blake2b/mac.output.bin"); + let mut d = Blake2b512::new_keyed(key); + d.input(input); + assert_eq!(d.result().code(), &output[..]); +} + +#[test] +fn blake2s_mac() { + let key = include_bytes!("data/blake2s/mac.key.bin"); + let input = include_bytes!("data/blake2s/mac.input.bin"); + let output = include_bytes!("data/blake2s/mac.output.bin"); + let mut d = Blake2s256::new_keyed(key); + d.input(input); + assert_eq!(d.result().code(), &output[..]); +} +*/ \ No newline at end of file diff --git a/md4/Cargo.toml b/md4/Cargo.toml new file mode 100644 index 00000000..e5230c8d --- /dev/null +++ b/md4/Cargo.toml @@ -0,0 +1,19 @@ +[package] +name = "md4" +version = "0.2.0" +authors = ["The Rust-Crypto Project Developers"] +license = "MIT/Apache-2.0" +description = "MD4 hash function" +documentation = "https://docs.rs/md4" +repository = "https://github.com/RustCrypto/hashes" +keywords = ["crypto", "md4", "hash", "digest"] + +[dependencies] +fake-simd = "0.1" +byte-tools = "0.1" +digest = "0.2" +digest-buffer = "0.1" +generic-array = "0.5" + +[dev-dependencies] +crypto-tests = "0.1" diff --git a/md4/LICENSE-APACHE b/md4/LICENSE-APACHE new file mode 100644 index 00000000..78173fa2 --- /dev/null +++ b/md4/LICENSE-APACHE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/md4/LICENSE-MIT b/md4/LICENSE-MIT new file mode 100644 index 00000000..fbed5b4c --- /dev/null +++ b/md4/LICENSE-MIT @@ -0,0 +1,25 @@ +Copyright (c) 2016 bacher09, Artyom Pavlov + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. diff --git a/md4/benches/lib.rs b/md4/benches/lib.rs new file mode 100644 index 00000000..5166f0f7 --- /dev/null +++ b/md4/benches/lib.rs @@ -0,0 +1,40 @@ +#![no_std] +#![feature(test)] +extern crate test; +extern crate md4; +extern crate digest; + +use test::Bencher; +use digest::Digest; +use md4::Md4; + + +#[bench] +pub fn md4_10(bh: &mut Bencher) { + let mut sh = Md4::new(); + let bytes = [1u8; 10]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn md4_1k(bh: &mut Bencher) { + let mut sh = Md4::new(); + let bytes = [1u8; 1024]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn md4_64k(bh: &mut Bencher) { + let mut sh = Md4::new(); + let bytes = [1u8; 65536]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} diff --git a/md4/examples/md4sum.rs b/md4/examples/md4sum.rs new file mode 100644 index 00000000..274885d9 --- /dev/null +++ b/md4/examples/md4sum.rs @@ -0,0 +1,49 @@ +extern crate md4; + +use md4::{Md4, Digest}; +use std::env; +use std::fs; +use std::io::{self, Read}; + +const BUFFER_SIZE: usize = 1024; + +/// Print digest result as hex string and name pair +fn print_result(sum: &[u8], name: &str) { + for byte in sum { + print!("{:02x}", byte); + } + println!("\t{}", name); +} + +/// Compute digest value for given `Reader` and print it +/// On any error simply return without doing anything +fn process(reader: &mut R, name: &str) { + let mut sh = D::new(); + let mut buffer = [0u8; BUFFER_SIZE]; + loop { + let n = match reader.read(&mut buffer) { + Ok(n) => n, + Err(_) => return, + }; + sh.input(&buffer[..n]); + if n == 0 || n < BUFFER_SIZE { + break; + } + } + print_result(&sh.result(), name); +} + +fn main() { + let args = env::args(); + // Process files listed in command line arguments one by one + // If no files provided process input from stdin + if args.len() > 1 { + for path in args.skip(1) { + if let Ok(mut file) = fs::File::open(&path) { + process::(&mut file, &path); + } + } + } else { + process::(&mut io::stdin(), "-"); + } +} diff --git a/md4/src/lib.rs b/md4/src/lib.rs new file mode 100644 index 00000000..964bd07b --- /dev/null +++ b/md4/src/lib.rs @@ -0,0 +1,147 @@ +//! The [MD4][1] hash function. +//! +//! [1]: https://en.wikipedia.org/wiki/MD4 + +#![no_std] +extern crate generic_array; +extern crate fake_simd as simd; +extern crate byte_tools; +extern crate digest; +extern crate digest_buffer; + +pub use digest::Digest; +use byte_tools::{write_u32_le, read_u32v_le}; +use digest_buffer::{DigestBuffer}; +use simd::u32x4; +use generic_array::GenericArray; +use generic_array::typenum::{U16, U64}; + +// initial values for Md4State +const S: u32x4 = u32x4(0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476); + +type BlockSize = U64; + +#[derive(Copy, Clone)] +struct Md4State { + s: u32x4, +} + +#[derive(Copy, Clone)] +pub struct Md4 { + length_bytes: u64, + buffer: DigestBuffer, + state: Md4State, +} + + +impl Md4State { + fn new() -> Md4State { + Md4State { s: S } + } + + fn process_block(&mut self, input: &[u8]) { + fn f(x: u32, y: u32, z: u32) -> u32 { + (x & y) | (!x & z) + } + + fn g(x: u32, y: u32, z: u32) -> u32 { + (x & y) | (x & z) | (y & z) + } + + fn h(x: u32, y: u32, z: u32) -> u32 { + x ^ y ^ z + } + + fn op1(a: u32, b: u32, c: u32, d: u32, k: u32, s: u32) -> u32 { + a.wrapping_add(f(b, c, d)).wrapping_add(k).rotate_left(s) + } + + fn op2(a: u32, b: u32, c: u32, d: u32, k: u32, s: u32) -> u32 { + a.wrapping_add(g(b, c, d)).wrapping_add(k).wrapping_add(0x5a827999).rotate_left(s) + } + + fn op3(a: u32, b: u32, c: u32, d: u32, k: u32, s: u32) -> u32 { + a.wrapping_add(h(b, c, d)).wrapping_add(k).wrapping_add(0x6ED9EBA1).rotate_left(s) + } + + let mut a = self.s.0; + let mut b = self.s.1; + let mut c = self.s.2; + let mut d = self.s.3; + + // load block to data + let mut data = [0u32; 16]; + read_u32v_le(&mut data, input); + + // FIXME: replace [0, 4, 8, 12] with (0..16).step_by(4) + // after stabilization + + // round 1 + for &i in [0, 4, 8, 12].iter() { + a = op1(a, b, c, d, data[i], 3); + d = op1(d, a, b, c, data[i + 1], 7); + c = op1(c, d, a, b, data[i + 2], 11); + b = op1(b, c, d, a, data[i + 3], 19); + } + + // round 2 + for i in 0..4 { + a = op2(a, b, c, d, data[i], 3); + d = op2(d, a, b, c, data[i + 4], 5); + c = op2(c, d, a, b, data[i + 8], 9); + b = op2(b, c, d, a, data[i + 12], 13); + } + + // round 3 + for &i in [0, 2, 1, 3].iter() { + a = op3(a, b, c, d, data[i], 3); + d = op3(d, a, b, c, data[i + 8], 9); + c = op3(c, d, a, b, data[i + 4], 11); + b = op3(b, c, d, a, data[i + 12], 15); + } + + self.s = self.s + u32x4(a, b, c, d); + } +} + +impl Md4 { + fn finalize(&mut self) { + let self_state = &mut self.state; + self.buffer.standard_padding(8, |d: &[u8]| { self_state.process_block(d); }); + write_u32_le(self.buffer.next(4), (self.length_bytes << 3) as u32); + write_u32_le(self.buffer.next(4), (self.length_bytes >> 29) as u32); + self_state.process_block(self.buffer.full_buffer()); + } +} + +impl Digest for Md4 { + type R = U16; + type B = BlockSize; + + fn new() -> Md4 { + Md4 { + length_bytes: 0, + buffer: Default::default(), + state: Md4State::new() + } + } + + fn input(&mut self, input: &[u8]) { + // 2^64 - ie: integer overflow is OK. + self.length_bytes += input.len() as u64; + let self_state = &mut self.state; + self.buffer.input(input, |d: &[u8]| { self_state.process_block(d);} + ); + } + + fn result(mut self) -> GenericArray { + self.finalize(); + + let mut out = GenericArray::new(); + write_u32_le(&mut out[0..4], self.state.s.0); + write_u32_le(&mut out[4..8], self.state.s.1); + write_u32_le(&mut out[8..12], self.state.s.2); + write_u32_le(&mut out[12..16], self.state.s.3); + out + } +} diff --git a/md4/tests/data/one_million_a.output.bin b/md4/tests/data/one_million_a.output.bin new file mode 100644 index 00000000..4f5878e8 --- /dev/null +++ b/md4/tests/data/one_million_a.output.bin @@ -0,0 +1 @@ +΀k^\gE N쩤 \ No newline at end of file diff --git a/md4/tests/data/test1.input.bin b/md4/tests/data/test1.input.bin new file mode 100644 index 00000000..e69de29b diff --git a/md4/tests/data/test1.output.bin b/md4/tests/data/test1.output.bin new file mode 100644 index 00000000..8c4f21de --- /dev/null +++ b/md4/tests/data/test1.output.bin @@ -0,0 +1 @@ +1j1F$^$ \ No newline at end of file diff --git a/md4/tests/data/test3.input.bin b/md4/tests/data/test3.input.bin new file mode 100644 index 00000000..f2ba8f84 --- /dev/null +++ b/md4/tests/data/test3.input.bin @@ -0,0 +1 @@ +abc \ No newline at end of file diff --git a/md4/tests/data/test3.output.bin b/md4/tests/data/test3.output.bin new file mode 100644 index 00000000..c4d49d71 --- /dev/null +++ b/md4/tests/data/test3.output.bin @@ -0,0 +1,2 @@ +Hz!R_ +zr \ No newline at end of file diff --git a/md4/tests/data/test4.input.bin b/md4/tests/data/test4.input.bin new file mode 100644 index 00000000..e407fe0e --- /dev/null +++ b/md4/tests/data/test4.input.bin @@ -0,0 +1 @@ +message digest \ No newline at end of file diff --git a/md4/tests/data/test4.output.bin b/md4/tests/data/test4.output.bin new file mode 100644 index 00000000..b332b2d6 --- /dev/null +++ b/md4/tests/data/test4.output.bin @@ -0,0 +1,2 @@ + +dTHK \ No newline at end of file diff --git a/md4/tests/data/test5.input.bin b/md4/tests/data/test5.input.bin new file mode 100644 index 00000000..e85d5b45 --- /dev/null +++ b/md4/tests/data/test5.input.bin @@ -0,0 +1 @@ +abcdefghijklmnopqrstuvwxyz \ No newline at end of file diff --git a/md4/tests/data/test5.output.bin b/md4/tests/data/test5.output.bin new file mode 100644 index 00000000..b700efee --- /dev/null +++ b/md4/tests/data/test5.output.bin @@ -0,0 +1 @@ +מ0cA- \ No newline at end of file diff --git a/md4/tests/data/test6.input.bin b/md4/tests/data/test6.input.bin new file mode 100644 index 00000000..9f75c375 --- /dev/null +++ b/md4/tests/data/test6.input.bin @@ -0,0 +1 @@ +ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789 \ No newline at end of file diff --git a/md4/tests/data/test6.output.bin b/md4/tests/data/test6.output.bin new file mode 100644 index 00000000..11a9c6b4 --- /dev/null +++ b/md4/tests/data/test6.output.bin @@ -0,0 +1 @@ +?A5'S \ No newline at end of file diff --git a/md4/tests/data/test7.input.bin b/md4/tests/data/test7.input.bin new file mode 100644 index 00000000..15e0acf5 --- /dev/null +++ b/md4/tests/data/test7.input.bin @@ -0,0 +1 @@ +12345678901234567890123456789012345678901234567890123456789012345678901234567890 \ No newline at end of file diff --git a/md4/tests/data/test7.output.bin b/md4/tests/data/test7.output.bin new file mode 100644 index 00000000..592108b3 --- /dev/null +++ b/md4/tests/data/test7.output.bin @@ -0,0 +1 @@ +;Mܜ8>{O6 \ No newline at end of file diff --git a/md4/tests/data/test8.input.bin b/md4/tests/data/test8.input.bin new file mode 100644 index 00000000..ff3bb639 --- /dev/null +++ b/md4/tests/data/test8.input.bin @@ -0,0 +1 @@ +The quick brown fox jumps over the lazy dog \ No newline at end of file diff --git a/md4/tests/data/test8.output.bin b/md4/tests/data/test8.output.bin new file mode 100644 index 00000000..1239eab2 --- /dev/null +++ b/md4/tests/data/test8.output.bin @@ -0,0 +1 @@ +ik\Gb \ No newline at end of file diff --git a/md4/tests/data/test9.input.bin b/md4/tests/data/test9.input.bin new file mode 100644 index 00000000..12e0608e --- /dev/null +++ b/md4/tests/data/test9.input.bin @@ -0,0 +1 @@ +The quick brown fox jumps over the lazy cog \ No newline at end of file diff --git a/md4/tests/data/test9.output.bin b/md4/tests/data/test9.output.bin new file mode 100644 index 00000000..698185a1 --- /dev/null +++ b/md4/tests/data/test9.output.bin @@ -0,0 +1 @@ +n g-V \ No newline at end of file diff --git a/md4/tests/lib.rs b/md4/tests/lib.rs new file mode 100644 index 00000000..1f7db633 --- /dev/null +++ b/md4/tests/lib.rs @@ -0,0 +1,19 @@ +#![no_std] +#[macro_use] +extern crate crypto_tests; +extern crate md4; + +use crypto_tests::hash::{Test, main_test, one_million_a}; + +#[test] +fn md4_main() { + // Examples from wikipedia + let tests = new_tests!("test1", "test2", "test3"); + main_test::(&tests); +} + +#[test] +fn md4_1million_a() { + let output = include_bytes!("data/one_million_a.output.bin"); + one_million_a::(output); +} diff --git a/md5/Cargo.toml b/md5/Cargo.toml new file mode 100644 index 00000000..986e0a7f --- /dev/null +++ b/md5/Cargo.toml @@ -0,0 +1,19 @@ +[package] +name = "md5" +version = "0.3.0" +authors = ["The Rust-Crypto Project Developers"] +license = "MIT/Apache-2.0" +description = "MD5 hash function" +documentation = "https://docs.rs/md5" +repository = "https://github.com/RustCrypto/rust-crypto-decoupled" +keywords = ["crypto", "md5", "hash", "digest"] + +[dependencies] +fake-simd = "0.1" +byte-tools = "0.1" +digest = "0.2" +digest-buffer = "0.1" +generic-array = "0.5" + +[dev-dependencies] +crypto-tests = "0.1" diff --git a/md5/LICENSE-APACHE b/md5/LICENSE-APACHE new file mode 100644 index 00000000..78173fa2 --- /dev/null +++ b/md5/LICENSE-APACHE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/md5/LICENSE-MIT b/md5/LICENSE-MIT new file mode 100644 index 00000000..66cf7556 --- /dev/null +++ b/md5/LICENSE-MIT @@ -0,0 +1,27 @@ +Copyright (c) 2006-2009 Graydon Hoare +Copyright (c) 2009-2013 Mozilla Foundation +Copyright (c) 2016 Artyom Pavlov + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. diff --git a/md5/benches/lib.rs b/md5/benches/lib.rs new file mode 100644 index 00000000..60171a4a --- /dev/null +++ b/md5/benches/lib.rs @@ -0,0 +1,40 @@ +#![no_std] +#![feature(test)] +extern crate test; +extern crate md5; +extern crate digest; + +use test::Bencher; +use digest::Digest; +use md5::Md5; + + +#[bench] +pub fn md5_10(bh: &mut Bencher) { + let mut sh = Md5::new(); + let bytes = [1u8; 10]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn md5_1k(bh: &mut Bencher) { + let mut sh = Md5::new(); + let bytes = [1u8; 1024]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn md5_64k(bh: &mut Bencher) { + let mut sh = Md5::new(); + let bytes = [1u8; 65536]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} diff --git a/md5/examples/md5sum.rs b/md5/examples/md5sum.rs new file mode 100644 index 00000000..c698f5f7 --- /dev/null +++ b/md5/examples/md5sum.rs @@ -0,0 +1,49 @@ +extern crate md5; + +use md5::{Md5, Digest}; +use std::env; +use std::fs; +use std::io::{self, Read}; + +const BUFFER_SIZE: usize = 1024; + +/// Print digest result as hex string and name pair +fn print_result(sum: &[u8], name: &str) { + for byte in sum { + print!("{:02x}", byte); + } + println!("\t{}", name); +} + +/// Compute digest value for given `Reader` and print it +/// On any error simply return without doing anything +fn process(reader: &mut R, name: &str) { + let mut sh = D::new(); + let mut buffer = [0u8; BUFFER_SIZE]; + loop { + let n = match reader.read(&mut buffer) { + Ok(n) => n, + Err(_) => return, + }; + sh.input(&buffer[..n]); + if n == 0 || n < BUFFER_SIZE { + break; + } + } + print_result(&sh.result(), name); +} + +fn main() { + let args = env::args(); + // Process files listed in command line arguments one by one + // If no files provided process input from stdin + if args.len() > 1 { + for path in args.skip(1) { + if let Ok(mut file) = fs::File::open(&path) { + process::(&mut file, &path); + } + } + } else { + process::(&mut io::stdin(), "-"); + } +} diff --git a/md5/src/consts.rs b/md5/src/consts.rs new file mode 100644 index 00000000..6a29b56e --- /dev/null +++ b/md5/src/consts.rs @@ -0,0 +1,27 @@ +use simd::u32x4; + +// Round 1 constants +pub static C1: [u32; 16] = [0xd76aa478, 0xe8c7b756, 0x242070db, 0xc1bdceee, + 0xf57c0faf, 0x4787c62a, 0xa8304613, 0xfd469501, + 0x698098d8, 0x8b44f7af, 0xffff5bb1, 0x895cd7be, + 0x6b901122, 0xfd987193, 0xa679438e, 0x49b40821]; + +// Round 2 constants +pub static C2: [u32; 16] = [0xf61e2562, 0xc040b340, 0x265e5a51, 0xe9b6c7aa, + 0xd62f105d, 0x02441453, 0xd8a1e681, 0xe7d3fbc8, + 0x21e1cde6, 0xc33707d6, 0xf4d50d87, 0x455a14ed, + 0xa9e3e905, 0xfcefa3f8, 0x676f02d9, 0x8d2a4c8a]; + +// Round 3 constants +pub static C3: [u32; 16] = [0xfffa3942, 0x8771f681, 0x6d9d6122, 0xfde5380c, + 0xa4beea44, 0x4bdecfa9, 0xf6bb4b60, 0xbebfbc70, + 0x289b7ec6, 0xeaa127fa, 0xd4ef3085, 0x04881d05, + 0xd9d4d039, 0xe6db99e5, 0x1fa27cf8, 0xc4ac5665]; + +// Round 4 constants +pub static C4: [u32; 16] = [0xf4292244, 0x432aff97, 0xab9423a7, 0xfc93a039, + 0x655b59c3, 0x8f0ccc92, 0xffeff47d, 0x85845dd1, + 0x6fa87e4f, 0xfe2ce6e0, 0xa3014314, 0x4e0811a1, + 0xf7537e82, 0xbd3af235, 0x2ad7d2bb, 0xeb86d391]; + +pub const S: u32x4 = u32x4(0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476); diff --git a/md5/src/lib.rs b/md5/src/lib.rs new file mode 100644 index 00000000..48ff57a1 --- /dev/null +++ b/md5/src/lib.rs @@ -0,0 +1,189 @@ +//! The [MD5][1] hash function. +//! +//! [1]: https://en.wikipedia.org/wiki/MD5 + +#![no_std] +extern crate generic_array; +extern crate fake_simd as simd; +extern crate byte_tools; +extern crate digest; +extern crate digest_buffer; + +pub use digest::Digest; +use byte_tools::{write_u32_le, read_u32v_le}; +use digest_buffer::{DigestBuffer}; +use simd::u32x4; +use generic_array::GenericArray; +use generic_array::typenum::{U16, U64}; + + +mod consts; +use consts::{C1, C2, C3, C4, S}; + +type BlockSize = U64; + +/// A structure that represents that state of a digest computation for the MD5 +/// digest function +#[derive(Copy, Clone)] +struct Md5State { + s: u32x4, +} + +impl Md5State { + fn new() -> Md5State { + Md5State { s: S } + } + + fn process_block(&mut self, input: &[u8]) { + fn f(u: u32, v: u32, w: u32) -> u32 { (u & v) | (!u & w) } + + fn g(u: u32, v: u32, w: u32) -> u32 { (u & w) | (v & !w) } + + fn h(u: u32, v: u32, w: u32) -> u32 { u ^ v ^ w } + + fn i(u: u32, v: u32, w: u32) -> u32 { v ^ (u | !w) } + + fn op_f(w: u32, x: u32, y: u32, z: u32, m: u32, s: u32) -> u32 { + w.wrapping_add(f(x, y, z)) + .wrapping_add(m) + .rotate_left(s) + .wrapping_add(x) + } + + fn op_g(w: u32, x: u32, y: u32, z: u32, m: u32, s: u32) -> u32 { + w.wrapping_add(g(x, y, z)) + .wrapping_add(m) + .rotate_left(s) + .wrapping_add(x) + } + + fn op_h(w: u32, x: u32, y: u32, z: u32, m: u32, s: u32) -> u32 { + w.wrapping_add(h(x, y, z)) + .wrapping_add(m) + .rotate_left(s) + .wrapping_add(x) + } + + fn op_i(w: u32, x: u32, y: u32, z: u32, m: u32, s: u32) -> u32 { + w.wrapping_add(i(x, y, z)) + .wrapping_add(m) + .rotate_left(s) + .wrapping_add(x) + } + + let u32x4(mut a, mut b, mut c, mut d) = self.s; + + let mut data = [0u32; 16]; + + read_u32v_le(&mut data, input); + + // FIXME: replace [0, 4, 8, 12] with (0..16).step_by(4) + // after stabilization + + // round 1 + for i in [0, 4, 8, 12].iter().cloned() { + a = op_f(a, b, c, d, data[i].wrapping_add(C1[i]), 7); + d = op_f(d, a, b, c, data[i + 1].wrapping_add(C1[i + 1]), 12); + c = op_f(c, d, a, b, data[i + 2].wrapping_add(C1[i + 2]), 17); + b = op_f(b, c, d, a, data[i + 3].wrapping_add(C1[i + 3]), 22); + } + + // round 2 + let mut t = 1; + for i in [0, 4, 8, 12].iter().cloned() { + let q = data[t & 0x0f].wrapping_add(C2[i]); + a = op_g(a, b, c, d, q, 5); + let q = data[(t + 5) & 0x0f].wrapping_add(C2[i + 1]); + d = op_g(d, a, b, c, q, 9); + let q = data[(t + 10) & 0x0f].wrapping_add(C2[i + 2]); + c = op_g(c, d, a, b, q, 14); + let q = data[(t + 15) & 0x0f].wrapping_add(C2[i + 3]); + b = op_g(b, c, d, a, q, 20); + t += 20; + } + + // round 3 + t = 5; + for i in [0, 4, 8, 12].iter().cloned() { + let q = data[t & 0x0f].wrapping_add(C3[i]); + a = op_h(a, b, c, d, q, 4); + let q = data[(t + 3) & 0x0f].wrapping_add(C3[i + 1]); + d = op_h(d, a, b, c, q, 11); + let q = data[(t + 6) & 0x0f].wrapping_add(C3[i + 2]); + c = op_h(c, d, a, b, q, 16); + let q = data[(t + 9) & 0x0f].wrapping_add(C3[i + 3]); + b = op_h(b, c, d, a, q, 23); + t += 12; + } + + // round 4 + t = 0; + for i in [0, 4, 8, 12].iter().cloned() { + let q = data[t & 0x0f].wrapping_add(C4[i]); + a = op_i(a, b, c, d, q, 6); + let q = data[(t + 7) & 0x0f].wrapping_add(C4[i + 1]); + d = op_i(d, a, b, c, q, 10); + let q = data[(t + 14) & 0x0f].wrapping_add(C4[i + 2]); + c = op_i(c, d, a, b, q, 15); + let q = data[(t + 21) & 0x0f].wrapping_add(C4[i + 3]); + b = op_i(b, c, d, a, q, 21); + t += 28; + } + + self.s = self.s + u32x4(a, b, c, d); + } +} + +/// The MD5 Digest algorithm +#[derive(Copy, Clone)] +pub struct Md5 { + length_bytes: u64, + buffer: DigestBuffer, + state: Md5State, +} + +impl Md5 { + fn finalize(&mut self) { + let self_state = &mut self.state; + self.buffer.standard_padding(8, |d: &[u8]| { + self_state.process_block(d); + }); + write_u32_le(self.buffer.next(4), (self.length_bytes << 3) as u32); + write_u32_le(self.buffer.next(4), (self.length_bytes >> 29) as u32); + self_state.process_block(self.buffer.full_buffer()); + } +} + +impl Digest for Md5 { + type R = U16; + type B = BlockSize; + + fn new() -> Md5 { + Md5 { + length_bytes: 0, + buffer: Default::default(), + state: Md5State::new(), + } + } + + fn input(&mut self, input: &[u8]) { + // Unlike Sha1 and Sha2, the length value in MD5 is defined as + // the length of the message mod 2^64 - ie: integer overflow is OK. + self.length_bytes += input.len() as u64; + let self_state = &mut self.state; + self.buffer.input(input, |d: &[u8]| { + self_state.process_block(d); + }); + } + + fn result(mut self) -> GenericArray { + self.finalize(); + + let mut out = GenericArray::new(); + write_u32_le(&mut out[0..4], self.state.s.0); + write_u32_le(&mut out[4..8], self.state.s.1); + write_u32_le(&mut out[8..12], self.state.s.2); + write_u32_le(&mut out[12..16], self.state.s.3); + out + } +} diff --git a/md5/tests/data/one_million_a.output.bin b/md5/tests/data/one_million_a.output.bin new file mode 100644 index 00000000..89c1bba8 --- /dev/null +++ b/md5/tests/data/one_million_a.output.bin @@ -0,0 +1 @@ +w֮N|p5)o! \ No newline at end of file diff --git a/md5/tests/data/test1.input.bin b/md5/tests/data/test1.input.bin new file mode 100644 index 00000000..e69de29b diff --git a/md5/tests/data/test1.output.bin b/md5/tests/data/test1.output.bin new file mode 100644 index 00000000..5656351c Binary files /dev/null and b/md5/tests/data/test1.output.bin differ diff --git a/md5/tests/data/test2.input.bin b/md5/tests/data/test2.input.bin new file mode 100644 index 00000000..ff3bb639 --- /dev/null +++ b/md5/tests/data/test2.input.bin @@ -0,0 +1 @@ +The quick brown fox jumps over the lazy dog \ No newline at end of file diff --git a/md5/tests/data/test2.output.bin b/md5/tests/data/test2.output.bin new file mode 100644 index 00000000..d19961ba --- /dev/null +++ b/md5/tests/data/test2.output.bin @@ -0,0 +1 @@ +}7+k5B \ No newline at end of file diff --git a/md5/tests/data/test3.input.bin b/md5/tests/data/test3.input.bin new file mode 100644 index 00000000..8fe2a4b5 --- /dev/null +++ b/md5/tests/data/test3.input.bin @@ -0,0 +1 @@ +The quick brown fox jumps over the lazy dog. \ No newline at end of file diff --git a/md5/tests/data/test3.output.bin b/md5/tests/data/test3.output.bin new file mode 100644 index 00000000..56bb3fd2 --- /dev/null +++ b/md5/tests/data/test3.output.bin @@ -0,0 +1 @@ + h" \ No newline at end of file diff --git a/md5/tests/lib.rs b/md5/tests/lib.rs new file mode 100644 index 00000000..76f56bd9 --- /dev/null +++ b/md5/tests/lib.rs @@ -0,0 +1,19 @@ +#![no_std] +#[macro_use] +extern crate crypto_tests; +extern crate md5; + +use crypto_tests::hash::{Test, main_test, one_million_a}; + +#[test] +fn md5_main() { + // Examples from wikipedia + let tests = new_tests!("test1", "test2", "test3"); + main_test::(&tests); +} + +#[test] +fn md5_1million_a() { + let output = include_bytes!("data/one_million_a.output.bin"); + one_million_a::(output); +} diff --git a/ripemd160/Cargo.toml b/ripemd160/Cargo.toml new file mode 100644 index 00000000..14f41fe4 --- /dev/null +++ b/ripemd160/Cargo.toml @@ -0,0 +1,18 @@ +[package] +name = "ripemd160" +version = "0.2.0" +authors = ["The Rust-Crypto Project Developers"] +license = "MIT/Apache-2.0" +description = "RIPEMD-160 hash function" +documentation = "https://docs.rs/ripemd160" +repository = "https://github.com/RustCrypto/hashes" +keywords = ["crypto", "ripemd160", "hash", "digest"] + +[dependencies] +byte-tools = "0.1" +digest = "0.2" +digest-buffer = "0.1" +generic-array = "0.5" + +[dev-dependencies] +crypto-tests = "0.1" diff --git a/ripemd160/LICENSE-APACHE b/ripemd160/LICENSE-APACHE new file mode 100644 index 00000000..78173fa2 --- /dev/null +++ b/ripemd160/LICENSE-APACHE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/ripemd160/LICENSE-MIT b/ripemd160/LICENSE-MIT new file mode 100644 index 00000000..66cf7556 --- /dev/null +++ b/ripemd160/LICENSE-MIT @@ -0,0 +1,27 @@ +Copyright (c) 2006-2009 Graydon Hoare +Copyright (c) 2009-2013 Mozilla Foundation +Copyright (c) 2016 Artyom Pavlov + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. diff --git a/ripemd160/benches/lib.rs b/ripemd160/benches/lib.rs new file mode 100644 index 00000000..984e0611 --- /dev/null +++ b/ripemd160/benches/lib.rs @@ -0,0 +1,38 @@ +#![no_std] +#![feature(test)] +extern crate test; +extern crate ripemd160; + +use test::Bencher; +use ripemd160::{Ripemd160, Digest}; + + +#[bench] +pub fn ripemd160_10(bh: &mut Bencher) { + let mut sh = Ripemd160::new(); + let bytes = [1u8; 10]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn ripemd160_1k(bh: &mut Bencher) { + let mut sh = Ripemd160::new(); + let bytes = [1u8; 1024]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn ripemd160_64k(bh: &mut Bencher) { + let mut sh = Ripemd160::new(); + let bytes = [1u8; 65536]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} diff --git a/ripemd160/src/lib.rs b/ripemd160/src/lib.rs new file mode 100644 index 00000000..3d5b2c54 --- /dev/null +++ b/ripemd160/src/lib.rs @@ -0,0 +1,375 @@ +//! An implementation of the RIPEMD-160 cryptographic hash. +//! +//! First create a `Ripemd160` object using the `Ripemd160` constructor, +//! then feed it input using the `input` or `input_str` methods, which +//! may be called any number of times. +//! +//! After the entire input has been fed to the hash read the result using +//! the `result` or `result_str` methods. +//! +//! The `Ripemd160` object may be reused to create multiple hashes by +//! calling the `reset` method. + +#![no_std] +extern crate generic_array; +extern crate byte_tools; +extern crate digest; +extern crate digest_buffer; + +pub use digest::Digest; +use byte_tools::{write_u32_le, read_u32v_le, add_bytes_to_bits}; +use digest_buffer::{DigestBuffer}; +use generic_array::GenericArray; +use generic_array::typenum::{U20, U64}; + +// Some unexported constants +const DIGEST_BUF_LEN: usize = 5; +const WORK_BUF_LEN: usize = 16; + +type BlockSize = U64; + +/// Structure representing the state of a Ripemd160 computation +#[derive(Clone, Copy)] +pub struct Ripemd160 { + h: [u32; DIGEST_BUF_LEN], + length_bits: u64, + buffer: DigestBuffer, +} + +fn circular_shift(bits: u32, word: u32) -> u32 { + word << bits as usize | word >> (32u32 - bits) as usize +} + +macro_rules! round( + ($a:expr, $b:expr, $c:expr, $d:expr, $e:expr, + $x:expr, $bits:expr, $add:expr, $round:expr) => ({ + $a = $a.wrapping_add($round).wrapping_add($x).wrapping_add($add); + $a = circular_shift($bits, $a).wrapping_add($e); + $c = circular_shift(10, $c); + }); +); + +macro_rules! process_block( + ($h:ident, $data:expr, + $( round1: h_ordering $f0:expr, $f1:expr, $f2:expr, $f3:expr, $f4:expr; + data_index $data_index1:expr; roll_shift $bits1:expr )*; + $( round2: h_ordering $g0:expr, $g1:expr, $g2:expr, $g3:expr, $g4:expr; + data_index $data_index2:expr; roll_shift $bits2:expr )*; + $( round3: h_ordering $h0:expr, $h1:expr, $h2:expr, $h3:expr, $h4:expr; + data_index $data_index3:expr; roll_shift $bits3:expr )*; + $( round4: h_ordering $i0:expr, $i1:expr, $i2:expr, $i3:expr, $i4:expr; + data_index $data_index4:expr; roll_shift $bits4:expr )*; + $( round5: h_ordering $j0:expr, $j1:expr, $j2:expr, $j3:expr, $j4:expr; + data_index $data_index5:expr; roll_shift $bits5:expr )*; + $( par_round1: h_ordering $pj0:expr, $pj1:expr, $pj2:expr, $pj3:expr, $pj4:expr; + data_index $pdata_index1:expr; roll_shift $pbits1:expr )*; + $( par_round2: h_ordering $pi0:expr, $pi1:expr, $pi2:expr, $pi3:expr, $pi4:expr; + data_index $pdata_index2:expr; roll_shift $pbits2:expr )*; + $( par_round3: h_ordering $ph0:expr, $ph1:expr, $ph2:expr, $ph3:expr, $ph4:expr; + data_index $pdata_index3:expr; roll_shift $pbits3:expr )*; + $( par_round4: h_ordering $pg0:expr, $pg1:expr, $pg2:expr, $pg3:expr, $pg4:expr; + data_index $pdata_index4:expr; roll_shift $pbits4:expr )*; + $( par_round5: h_ordering $pf0:expr, $pf1:expr, $pf2:expr, $pf3:expr, $pf4:expr; + data_index $pdata_index5:expr; roll_shift $pbits5:expr )*; + ) => ({ + let mut bb = *$h; + let mut bbb = *$h; + + // Round 1 + $( round!(bb[$f0], bb[$f1], bb[$f2], bb[$f3], bb[$f4], + $data[$data_index1], $bits1, 0x00000000, + bb[$f1] ^ bb[$f2] ^ bb[$f3]); )* + + // Round 2 + $( round!(bb[$g0], bb[$g1], bb[$g2], bb[$g3], bb[$g4], + $data[$data_index2], $bits2, 0x5a827999, + (bb[$g1] & bb[$g2]) | (!bb[$g1] & bb[$g3])); )* + + // Round 3 + $( round!(bb[$h0], bb[$h1], bb[$h2], bb[$h3], bb[$h4], + $data[$data_index3], $bits3, 0x6ed9eba1, + (bb[$h1] | !bb[$h2]) ^ bb[$h3]); )* + + // Round 4 + $( round!(bb[$i0], bb[$i1], bb[$i2], bb[$i3], bb[$i4], + $data[$data_index4], $bits4, 0x8f1bbcdc, + (bb[$i1] & bb[$i3]) | (bb[$i2] & !bb[$i3])); )* + + // Round 5 + $( round!(bb[$j0], bb[$j1], bb[$j2], bb[$j3], bb[$j4], + $data[$data_index5], $bits5, 0xa953fd4e, + bb[$j1] ^ (bb[$j2] | !bb[$j3])); )* + + // Parallel rounds: these are the same as the previous five + // rounds except that the constants have changed, we work + // with the other buffer, and they are applied in reverse + // order. + + // Parallel Round 1 + $( round!(bbb[$pj0], bbb[$pj1], bbb[$pj2], bbb[$pj3], bbb[$pj4], + $data[$pdata_index1], $pbits1, 0x50a28be6, + bbb[$pj1] ^ (bbb[$pj2] | !bbb[$pj3])); )* + + // Parallel Round 2 + $( round!(bbb[$pi0], bbb[$pi1], bbb[$pi2], bbb[$pi3], bbb[$pi4], + $data[$pdata_index2], $pbits2, 0x5c4dd124, + (bbb[$pi1] & bbb[$pi3]) | (bbb[$pi2] & !bbb[$pi3])); )* + + // Parallel Round 3 + $( round!(bbb[$ph0], bbb[$ph1], bbb[$ph2], bbb[$ph3], bbb[$ph4], + $data[$pdata_index3], $pbits3, 0x6d703ef3, + (bbb[$ph1] | !bbb[$ph2]) ^ bbb[$ph3]); )* + + // Parallel Round 4 + $( round!(bbb[$pg0], bbb[$pg1], bbb[$pg2], bbb[$pg3], bbb[$pg4], + $data[$pdata_index4], $pbits4, 0x7a6d76e9, + (bbb[$pg1] & bbb[$pg2]) | (!bbb[$pg1] & bbb[$pg3])); )* + + // Parallel Round 5 + $( round!(bbb[$pf0], bbb[$pf1], bbb[$pf2], bbb[$pf3], bbb[$pf4], + $data[$pdata_index5], $pbits5, 0x00000000, + bbb[$pf1] ^ bbb[$pf2] ^ bbb[$pf3]); )* + + // Combine results + bbb[3] = bbb[3].wrapping_add($h[1]).wrapping_add(bb[2]); + $h[1] = $h[2].wrapping_add(bb[3]).wrapping_add(bbb[4]); + $h[2] = $h[3].wrapping_add(bb[4]).wrapping_add(bbb[0]); + $h[3] = $h[4].wrapping_add(bb[0]).wrapping_add(bbb[1]); + $h[4] = $h[0].wrapping_add(bb[1]).wrapping_add(bbb[2]); + $h[0] = bbb[3]; + }); +); + +fn process_msg_block(data: &[u8], h: &mut [u32; DIGEST_BUF_LEN]) { + let mut w = [0u32; WORK_BUF_LEN]; + read_u32v_le(&mut w[0..16], data); + process_block!(h, w[..], + // Round 1 + round1: h_ordering 0, 1, 2, 3, 4; data_index 0; roll_shift 11 + round1: h_ordering 4, 0, 1, 2, 3; data_index 1; roll_shift 14 + round1: h_ordering 3, 4, 0, 1, 2; data_index 2; roll_shift 15 + round1: h_ordering 2, 3, 4, 0, 1; data_index 3; roll_shift 12 + round1: h_ordering 1, 2, 3, 4, 0; data_index 4; roll_shift 5 + round1: h_ordering 0, 1, 2, 3, 4; data_index 5; roll_shift 8 + round1: h_ordering 4, 0, 1, 2, 3; data_index 6; roll_shift 7 + round1: h_ordering 3, 4, 0, 1, 2; data_index 7; roll_shift 9 + round1: h_ordering 2, 3, 4, 0, 1; data_index 8; roll_shift 11 + round1: h_ordering 1, 2, 3, 4, 0; data_index 9; roll_shift 13 + round1: h_ordering 0, 1, 2, 3, 4; data_index 10; roll_shift 14 + round1: h_ordering 4, 0, 1, 2, 3; data_index 11; roll_shift 15 + round1: h_ordering 3, 4, 0, 1, 2; data_index 12; roll_shift 6 + round1: h_ordering 2, 3, 4, 0, 1; data_index 13; roll_shift 7 + round1: h_ordering 1, 2, 3, 4, 0; data_index 14; roll_shift 9 + round1: h_ordering 0, 1, 2, 3, 4; data_index 15; roll_shift 8; + + // Round 2 + round2: h_ordering 4, 0, 1, 2, 3; data_index 7; roll_shift 7 + round2: h_ordering 3, 4, 0, 1, 2; data_index 4; roll_shift 6 + round2: h_ordering 2, 3, 4, 0, 1; data_index 13; roll_shift 8 + round2: h_ordering 1, 2, 3, 4, 0; data_index 1; roll_shift 13 + round2: h_ordering 0, 1, 2, 3, 4; data_index 10; roll_shift 11 + round2: h_ordering 4, 0, 1, 2, 3; data_index 6; roll_shift 9 + round2: h_ordering 3, 4, 0, 1, 2; data_index 15; roll_shift 7 + round2: h_ordering 2, 3, 4, 0, 1; data_index 3; roll_shift 15 + round2: h_ordering 1, 2, 3, 4, 0; data_index 12; roll_shift 7 + round2: h_ordering 0, 1, 2, 3, 4; data_index 0; roll_shift 12 + round2: h_ordering 4, 0, 1, 2, 3; data_index 9; roll_shift 15 + round2: h_ordering 3, 4, 0, 1, 2; data_index 5; roll_shift 9 + round2: h_ordering 2, 3, 4, 0, 1; data_index 2; roll_shift 11 + round2: h_ordering 1, 2, 3, 4, 0; data_index 14; roll_shift 7 + round2: h_ordering 0, 1, 2, 3, 4; data_index 11; roll_shift 13 + round2: h_ordering 4, 0, 1, 2, 3; data_index 8; roll_shift 12; + + // Round 3 + round3: h_ordering 3, 4, 0, 1, 2; data_index 3; roll_shift 11 + round3: h_ordering 2, 3, 4, 0, 1; data_index 10; roll_shift 13 + round3: h_ordering 1, 2, 3, 4, 0; data_index 14; roll_shift 6 + round3: h_ordering 0, 1, 2, 3, 4; data_index 4; roll_shift 7 + round3: h_ordering 4, 0, 1, 2, 3; data_index 9; roll_shift 14 + round3: h_ordering 3, 4, 0, 1, 2; data_index 15; roll_shift 9 + round3: h_ordering 2, 3, 4, 0, 1; data_index 8; roll_shift 13 + round3: h_ordering 1, 2, 3, 4, 0; data_index 1; roll_shift 15 + round3: h_ordering 0, 1, 2, 3, 4; data_index 2; roll_shift 14 + round3: h_ordering 4, 0, 1, 2, 3; data_index 7; roll_shift 8 + round3: h_ordering 3, 4, 0, 1, 2; data_index 0; roll_shift 13 + round3: h_ordering 2, 3, 4, 0, 1; data_index 6; roll_shift 6 + round3: h_ordering 1, 2, 3, 4, 0; data_index 13; roll_shift 5 + round3: h_ordering 0, 1, 2, 3, 4; data_index 11; roll_shift 12 + round3: h_ordering 4, 0, 1, 2, 3; data_index 5; roll_shift 7 + round3: h_ordering 3, 4, 0, 1, 2; data_index 12; roll_shift 5; + + // Round 4 + round4: h_ordering 2, 3, 4, 0, 1; data_index 1; roll_shift 11 + round4: h_ordering 1, 2, 3, 4, 0; data_index 9; roll_shift 12 + round4: h_ordering 0, 1, 2, 3, 4; data_index 11; roll_shift 14 + round4: h_ordering 4, 0, 1, 2, 3; data_index 10; roll_shift 15 + round4: h_ordering 3, 4, 0, 1, 2; data_index 0; roll_shift 14 + round4: h_ordering 2, 3, 4, 0, 1; data_index 8; roll_shift 15 + round4: h_ordering 1, 2, 3, 4, 0; data_index 12; roll_shift 9 + round4: h_ordering 0, 1, 2, 3, 4; data_index 4; roll_shift 8 + round4: h_ordering 4, 0, 1, 2, 3; data_index 13; roll_shift 9 + round4: h_ordering 3, 4, 0, 1, 2; data_index 3; roll_shift 14 + round4: h_ordering 2, 3, 4, 0, 1; data_index 7; roll_shift 5 + round4: h_ordering 1, 2, 3, 4, 0; data_index 15; roll_shift 6 + round4: h_ordering 0, 1, 2, 3, 4; data_index 14; roll_shift 8 + round4: h_ordering 4, 0, 1, 2, 3; data_index 5; roll_shift 6 + round4: h_ordering 3, 4, 0, 1, 2; data_index 6; roll_shift 5 + round4: h_ordering 2, 3, 4, 0, 1; data_index 2; roll_shift 12; + + // Round 5 + round5: h_ordering 1, 2, 3, 4, 0; data_index 4; roll_shift 9 + round5: h_ordering 0, 1, 2, 3, 4; data_index 0; roll_shift 15 + round5: h_ordering 4, 0, 1, 2, 3; data_index 5; roll_shift 5 + round5: h_ordering 3, 4, 0, 1, 2; data_index 9; roll_shift 11 + round5: h_ordering 2, 3, 4, 0, 1; data_index 7; roll_shift 6 + round5: h_ordering 1, 2, 3, 4, 0; data_index 12; roll_shift 8 + round5: h_ordering 0, 1, 2, 3, 4; data_index 2; roll_shift 13 + round5: h_ordering 4, 0, 1, 2, 3; data_index 10; roll_shift 12 + round5: h_ordering 3, 4, 0, 1, 2; data_index 14; roll_shift 5 + round5: h_ordering 2, 3, 4, 0, 1; data_index 1; roll_shift 12 + round5: h_ordering 1, 2, 3, 4, 0; data_index 3; roll_shift 13 + round5: h_ordering 0, 1, 2, 3, 4; data_index 8; roll_shift 14 + round5: h_ordering 4, 0, 1, 2, 3; data_index 11; roll_shift 11 + round5: h_ordering 3, 4, 0, 1, 2; data_index 6; roll_shift 8 + round5: h_ordering 2, 3, 4, 0, 1; data_index 15; roll_shift 5 + round5: h_ordering 1, 2, 3, 4, 0; data_index 13; roll_shift 6; + + // Parallel Round 1 + par_round1: h_ordering 0, 1, 2, 3, 4; data_index 5; roll_shift 8 + par_round1: h_ordering 4, 0, 1, 2, 3; data_index 14; roll_shift 9 + par_round1: h_ordering 3, 4, 0, 1, 2; data_index 7; roll_shift 9 + par_round1: h_ordering 2, 3, 4, 0, 1; data_index 0; roll_shift 11 + par_round1: h_ordering 1, 2, 3, 4, 0; data_index 9; roll_shift 13 + par_round1: h_ordering 0, 1, 2, 3, 4; data_index 2; roll_shift 15 + par_round1: h_ordering 4, 0, 1, 2, 3; data_index 11; roll_shift 15 + par_round1: h_ordering 3, 4, 0, 1, 2; data_index 4; roll_shift 5 + par_round1: h_ordering 2, 3, 4, 0, 1; data_index 13; roll_shift 7 + par_round1: h_ordering 1, 2, 3, 4, 0; data_index 6; roll_shift 7 + par_round1: h_ordering 0, 1, 2, 3, 4; data_index 15; roll_shift 8 + par_round1: h_ordering 4, 0, 1, 2, 3; data_index 8; roll_shift 11 + par_round1: h_ordering 3, 4, 0, 1, 2; data_index 1; roll_shift 14 + par_round1: h_ordering 2, 3, 4, 0, 1; data_index 10; roll_shift 14 + par_round1: h_ordering 1, 2, 3, 4, 0; data_index 3; roll_shift 12 + par_round1: h_ordering 0, 1, 2, 3, 4; data_index 12; roll_shift 6; + + // Parallel Round 2 + par_round2: h_ordering 4, 0, 1, 2, 3; data_index 6; roll_shift 9 + par_round2: h_ordering 3, 4, 0, 1, 2; data_index 11; roll_shift 13 + par_round2: h_ordering 2, 3, 4, 0, 1; data_index 3; roll_shift 15 + par_round2: h_ordering 1, 2, 3, 4, 0; data_index 7; roll_shift 7 + par_round2: h_ordering 0, 1, 2, 3, 4; data_index 0; roll_shift 12 + par_round2: h_ordering 4, 0, 1, 2, 3; data_index 13; roll_shift 8 + par_round2: h_ordering 3, 4, 0, 1, 2; data_index 5; roll_shift 9 + par_round2: h_ordering 2, 3, 4, 0, 1; data_index 10; roll_shift 11 + par_round2: h_ordering 1, 2, 3, 4, 0; data_index 14; roll_shift 7 + par_round2: h_ordering 0, 1, 2, 3, 4; data_index 15; roll_shift 7 + par_round2: h_ordering 4, 0, 1, 2, 3; data_index 8; roll_shift 12 + par_round2: h_ordering 3, 4, 0, 1, 2; data_index 12; roll_shift 7 + par_round2: h_ordering 2, 3, 4, 0, 1; data_index 4; roll_shift 6 + par_round2: h_ordering 1, 2, 3, 4, 0; data_index 9; roll_shift 15 + par_round2: h_ordering 0, 1, 2, 3, 4; data_index 1; roll_shift 13 + par_round2: h_ordering 4, 0, 1, 2, 3; data_index 2; roll_shift 11; + + // Parallel Round 3 + par_round3: h_ordering 3, 4, 0, 1, 2; data_index 15; roll_shift 9 + par_round3: h_ordering 2, 3, 4, 0, 1; data_index 5; roll_shift 7 + par_round3: h_ordering 1, 2, 3, 4, 0; data_index 1; roll_shift 15 + par_round3: h_ordering 0, 1, 2, 3, 4; data_index 3; roll_shift 11 + par_round3: h_ordering 4, 0, 1, 2, 3; data_index 7; roll_shift 8 + par_round3: h_ordering 3, 4, 0, 1, 2; data_index 14; roll_shift 6 + par_round3: h_ordering 2, 3, 4, 0, 1; data_index 6; roll_shift 6 + par_round3: h_ordering 1, 2, 3, 4, 0; data_index 9; roll_shift 14 + par_round3: h_ordering 0, 1, 2, 3, 4; data_index 11; roll_shift 12 + par_round3: h_ordering 4, 0, 1, 2, 3; data_index 8; roll_shift 13 + par_round3: h_ordering 3, 4, 0, 1, 2; data_index 12; roll_shift 5 + par_round3: h_ordering 2, 3, 4, 0, 1; data_index 2; roll_shift 14 + par_round3: h_ordering 1, 2, 3, 4, 0; data_index 10; roll_shift 13 + par_round3: h_ordering 0, 1, 2, 3, 4; data_index 0; roll_shift 13 + par_round3: h_ordering 4, 0, 1, 2, 3; data_index 4; roll_shift 7 + par_round3: h_ordering 3, 4, 0, 1, 2; data_index 13; roll_shift 5; + + // Parallel Round 4 + par_round4: h_ordering 2, 3, 4, 0, 1; data_index 8; roll_shift 15 + par_round4: h_ordering 1, 2, 3, 4, 0; data_index 6; roll_shift 5 + par_round4: h_ordering 0, 1, 2, 3, 4; data_index 4; roll_shift 8 + par_round4: h_ordering 4, 0, 1, 2, 3; data_index 1; roll_shift 11 + par_round4: h_ordering 3, 4, 0, 1, 2; data_index 3; roll_shift 14 + par_round4: h_ordering 2, 3, 4, 0, 1; data_index 11; roll_shift 14 + par_round4: h_ordering 1, 2, 3, 4, 0; data_index 15; roll_shift 6 + par_round4: h_ordering 0, 1, 2, 3, 4; data_index 0; roll_shift 14 + par_round4: h_ordering 4, 0, 1, 2, 3; data_index 5; roll_shift 6 + par_round4: h_ordering 3, 4, 0, 1, 2; data_index 12; roll_shift 9 + par_round4: h_ordering 2, 3, 4, 0, 1; data_index 2; roll_shift 12 + par_round4: h_ordering 1, 2, 3, 4, 0; data_index 13; roll_shift 9 + par_round4: h_ordering 0, 1, 2, 3, 4; data_index 9; roll_shift 12 + par_round4: h_ordering 4, 0, 1, 2, 3; data_index 7; roll_shift 5 + par_round4: h_ordering 3, 4, 0, 1, 2; data_index 10; roll_shift 15 + par_round4: h_ordering 2, 3, 4, 0, 1; data_index 14; roll_shift 8; + + // Parallel Round 5 + par_round5: h_ordering 1, 2, 3, 4, 0; data_index 12; roll_shift 8 + par_round5: h_ordering 0, 1, 2, 3, 4; data_index 15; roll_shift 5 + par_round5: h_ordering 4, 0, 1, 2, 3; data_index 10; roll_shift 12 + par_round5: h_ordering 3, 4, 0, 1, 2; data_index 4; roll_shift 9 + par_round5: h_ordering 2, 3, 4, 0, 1; data_index 1; roll_shift 12 + par_round5: h_ordering 1, 2, 3, 4, 0; data_index 5; roll_shift 5 + par_round5: h_ordering 0, 1, 2, 3, 4; data_index 8; roll_shift 14 + par_round5: h_ordering 4, 0, 1, 2, 3; data_index 7; roll_shift 6 + par_round5: h_ordering 3, 4, 0, 1, 2; data_index 6; roll_shift 8 + par_round5: h_ordering 2, 3, 4, 0, 1; data_index 2; roll_shift 13 + par_round5: h_ordering 1, 2, 3, 4, 0; data_index 13; roll_shift 6 + par_round5: h_ordering 0, 1, 2, 3, 4; data_index 14; roll_shift 5 + par_round5: h_ordering 4, 0, 1, 2, 3; data_index 0; roll_shift 15 + par_round5: h_ordering 3, 4, 0, 1, 2; data_index 3; roll_shift 13 + par_round5: h_ordering 2, 3, 4, 0, 1; data_index 9; roll_shift 11 + par_round5: h_ordering 1, 2, 3, 4, 0; data_index 11; roll_shift 11; + ); +} + +impl Ripemd160 { + fn finalize(&mut self) { + let st_h = &mut self.h; + self.buffer.standard_padding(8, |d: &[u8]| { + process_msg_block(d, &mut *st_h) + }); + + write_u32_le(self.buffer.next(4), self.length_bits as u32); + write_u32_le(self.buffer.next(4), (self.length_bits >> 32) as u32); + process_msg_block(self.buffer.full_buffer(), st_h); + } +} + +impl Digest for Ripemd160 { + type R = U20; + type B = BlockSize; + + fn new() -> Ripemd160 { + Ripemd160 { + h: [0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0], + length_bits: 0, + buffer: Default::default(), + } + } + + fn input(&mut self, input: &[u8]) { + // Assumes that input.len() can be converted to u64 without overflow + self.length_bits = add_bytes_to_bits(self.length_bits, + input.len() as u64); + let st_h = &mut self.h; + self.buffer.input(input, |d: &[u8]| { + process_msg_block(d, &mut *st_h); + }); + } + + fn result(mut self) -> GenericArray { + self.finalize(); + + let mut out = GenericArray::new(); + write_u32_le(&mut out[0..4], self.h[0]); + write_u32_le(&mut out[4..8], self.h[1]); + write_u32_le(&mut out[8..12], self.h[2]); + write_u32_le(&mut out[12..16], self.h[3]); + write_u32_le(&mut out[16..20], self.h[4]); + out + } +} diff --git a/ripemd160/tests/data/one_million_a.output.bin b/ripemd160/tests/data/one_million_a.output.bin new file mode 100644 index 00000000..df195635 --- /dev/null +++ b/ripemd160/tests/data/one_million_a.output.bin @@ -0,0 +1 @@ +Rx2Ci{m7h%( \ No newline at end of file diff --git a/ripemd160/tests/data/test1.input.bin b/ripemd160/tests/data/test1.input.bin new file mode 100644 index 00000000..f2ba8f84 --- /dev/null +++ b/ripemd160/tests/data/test1.input.bin @@ -0,0 +1 @@ +abc \ No newline at end of file diff --git a/ripemd160/tests/data/test1.output.bin b/ripemd160/tests/data/test1.output.bin new file mode 100644 index 00000000..f8b90535 --- /dev/null +++ b/ripemd160/tests/data/test1.output.bin @@ -0,0 +1 @@ +]zJưZ \ No newline at end of file diff --git a/ripemd160/tests/data/test2.input.bin b/ripemd160/tests/data/test2.input.bin new file mode 100644 index 00000000..199f24ed --- /dev/null +++ b/ripemd160/tests/data/test2.input.bin @@ -0,0 +1 @@ +abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq \ No newline at end of file diff --git a/ripemd160/tests/data/test2.output.bin b/ripemd160/tests/data/test2.output.bin new file mode 100644 index 00000000..95dce17f --- /dev/null +++ b/ripemd160/tests/data/test2.output.bin @@ -0,0 +1 @@ +S8J l'b+ \ No newline at end of file diff --git a/ripemd160/tests/data/test3.input.bin b/ripemd160/tests/data/test3.input.bin new file mode 100644 index 00000000..ff3bb639 --- /dev/null +++ b/ripemd160/tests/data/test3.input.bin @@ -0,0 +1 @@ +The quick brown fox jumps over the lazy dog \ No newline at end of file diff --git a/ripemd160/tests/data/test3.output.bin b/ripemd160/tests/data/test3.output.bin new file mode 100644 index 00000000..a7dc7088 --- /dev/null +++ b/ripemd160/tests/data/test3.output.bin @@ -0,0 +1 @@ +72{Ԗqg; \ No newline at end of file diff --git a/ripemd160/tests/data/test4.input.bin b/ripemd160/tests/data/test4.input.bin new file mode 100644 index 00000000..12e0608e --- /dev/null +++ b/ripemd160/tests/data/test4.input.bin @@ -0,0 +1 @@ +The quick brown fox jumps over the lazy cog \ No newline at end of file diff --git a/ripemd160/tests/data/test4.output.bin b/ripemd160/tests/data/test4.output.bin new file mode 100644 index 00000000..07abdfba --- /dev/null +++ b/ripemd160/tests/data/test4.output.bin @@ -0,0 +1 @@ + ri 3^ wJ \ No newline at end of file diff --git a/ripemd160/tests/lib.rs b/ripemd160/tests/lib.rs new file mode 100644 index 00000000..0c2a3638 --- /dev/null +++ b/ripemd160/tests/lib.rs @@ -0,0 +1,19 @@ +#![no_std] +#[macro_use] +extern crate crypto_tests; +extern crate ripemd160; + +use crypto_tests::hash::{Test, main_test, one_million_a}; + +#[test] +fn ripemd160_main() { + // Test messages from FIPS 180-1 + let tests = new_tests!("test1", "test2", "test3", "test4"); + main_test::(&tests); +} + +#[test] +fn ripemd160_1million_a() { + let output = include_bytes!("data/one_million_a.output.bin"); + one_million_a::(output); +} diff --git a/sha1/Cargo.toml b/sha1/Cargo.toml new file mode 100644 index 00000000..13f4de34 --- /dev/null +++ b/sha1/Cargo.toml @@ -0,0 +1,19 @@ +[package] +name = "sha1" +version = "0.1.0" +authors = ["The Rust-Crypto Project Developers"] +license = "MIT/Apache-2.0" +description = "SHA-1 hash function" +#documentation = "https://docs.rs/sha1" +repository = "https://github.com/RustCrypto/hashes" +keywords = ["crypto", "sha1", "hash", "digest"] + +[dependencies] +fake-simd = "0.1" +byte-tools = "0.1" +digest = "0.2" +digest-buffer = "0.1" +generic-array = "0.5" + +[dev-dependencies] +crypto-tests = "0.1" diff --git a/sha1/LICENSE-APACHE b/sha1/LICENSE-APACHE new file mode 100644 index 00000000..78173fa2 --- /dev/null +++ b/sha1/LICENSE-APACHE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/sha1/LICENSE-MIT b/sha1/LICENSE-MIT new file mode 100644 index 00000000..66cf7556 --- /dev/null +++ b/sha1/LICENSE-MIT @@ -0,0 +1,27 @@ +Copyright (c) 2006-2009 Graydon Hoare +Copyright (c) 2009-2013 Mozilla Foundation +Copyright (c) 2016 Artyom Pavlov + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. diff --git a/sha1/benches/lib.rs b/sha1/benches/lib.rs new file mode 100644 index 00000000..f3e195c2 --- /dev/null +++ b/sha1/benches/lib.rs @@ -0,0 +1,37 @@ +#![no_std] +#![feature(test)] +extern crate test; +extern crate sha1; + +use test::Bencher; +use sha1::{Sha1, Digest}; + +#[bench] +pub fn sha1_10(bh: &mut Bencher) { + let mut sh = Sha1::new(); + let bytes = [1u8; 10]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn sha1_1k(bh: &mut Bencher) { + let mut sh = Sha1::new(); + let bytes = [1u8; 1024]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn sha1_64k(bh: &mut Bencher) { + let mut sh = Sha1::new(); + let bytes = [1u8; 65536]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} diff --git a/sha1/examples/sha1sum.rs b/sha1/examples/sha1sum.rs new file mode 100644 index 00000000..2030d2ee --- /dev/null +++ b/sha1/examples/sha1sum.rs @@ -0,0 +1,49 @@ +extern crate sha1; + +use sha1::{Sha1, Digest}; +use std::env; +use std::fs; +use std::io::{self, Read}; + +const BUFFER_SIZE: usize = 1024; + +/// Print digest result as hex string and name pair +fn print_result(sum: &[u8], name: &str) { + for byte in sum { + print!("{:02x}", byte); + } + println!("\t{}", name); +} + +/// Compute digest value for given `Reader` and print it +/// On any error simply return without doing anything +fn process(reader: &mut R, name: &str) { + let mut sh = D::new(); + let mut buffer = [0u8; BUFFER_SIZE]; + loop { + let n = match reader.read(&mut buffer) { + Ok(n) => n, + Err(_) => return, + }; + sh.input(&buffer[..n]); + if n == 0 || n < BUFFER_SIZE { + break; + } + } + print_result(&sh.result(), name); +} + +fn main() { + let args = env::args(); + // Process files listed in command line arguments one by one + // If no files provided process input from stdin + if args.len() > 1 { + for path in args.skip(1) { + if let Ok(mut file) = fs::File::open(&path) { + process::(&mut file, &path); + } + } + } else { + process::(&mut io::stdin(), "-"); + } +} diff --git a/sha1/src/consts.rs b/sha1/src/consts.rs new file mode 100644 index 00000000..374d016c --- /dev/null +++ b/sha1/src/consts.rs @@ -0,0 +1,10 @@ +pub const STATE_LEN: usize = 5; +pub const BLOCK_LEN: usize = 16; + +pub const K0: u32 = 0x5A827999u32; +pub const K1: u32 = 0x6ED9EBA1u32; +pub const K2: u32 = 0x8F1BBCDCu32; +pub const K3: u32 = 0xCA62C1D6u32; + +pub const H: [u32; STATE_LEN] = [0x67452301, 0xEFCDAB89, 0x98BADCFE, + 0x10325476, 0xC3D2E1F0]; \ No newline at end of file diff --git a/sha1/src/lib.rs b/sha1/src/lib.rs new file mode 100644 index 00000000..2919bb5e --- /dev/null +++ b/sha1/src/lib.rs @@ -0,0 +1,127 @@ +//! An implementation of the SHA-1 cryptographic hash algorithm. + +//! To use this module, first create a `Sha1` object using the `Sha1` constructor, +//! then feed it an input message using the `input` or `input_str` methods, +//! which may be called any number of times; they will buffer the input until +//! there is enough to call the block algorithm. +//! +//! After the entire input has been fed to the hash read the result using +//! the `result` or `result_str` methods. The first will return bytes, and +//! the second will return a `String` object of the same bytes represented +//! in hexadecimal form. +//! +//! The `Sha1` object may be reused to create multiple hashes by calling +//! the `reset()` method. These traits are implemented by all hash digest +//! algorithms that implement the `Digest` trait. An example of use is: +//! +//! ```rust +//! use sha1::{Sha1, Digest}; +//! +//! // create a Sha1 object +//! let mut sh = Sha1::new(); +//! +//! // write input message +//! sh.input(b"hello world"); +//! +//! // read hash digest in the form of GenericArray which is in this case +//! // equivalent to [u8; 20] +//! let output = sh.result(); +//! assert_eq!(output[..], [0x2a, 0xae, 0x6c, 0x35, 0xc9, 0x4f, 0xcf, 0xb4, 0x15, 0xdb, +//! 0xe9, 0x5f, 0x40, 0x8b, 0x9c, 0xe9, 0x1e, 0xe8, 0x46, 0xed]); +//! ``` +//! +//! # Mathematics +//! +//! The mathematics of the SHA-1 algorithm are quite interesting. In its +//! definition, The SHA-1 algorithm uses: +//! +//! * 1 binary operation on bit-arrays: +//! * "exclusive or" (XOR) +//! * 2 binary operations on integers: +//! * "addition" (ADD) +//! * "rotate left" (ROL) +//! * 3 ternary operations on bit-arrays: +//! * "choose" (CH) +//! * "parity" (PAR) +//! * "majority" (MAJ) +//! +//! Some of these functions are commonly found in all hash digest +//! algorithms, but some, like "parity" is only found in SHA-1. + +#![no_std] +extern crate generic_array; +extern crate byte_tools; +extern crate digest; +extern crate digest_buffer; +extern crate fake_simd as simd; + +pub use digest::Digest; +use byte_tools::{write_u32_be, add_bytes_to_bits}; +use digest_buffer::DigestBuffer; +use generic_array::GenericArray; +use generic_array::typenum::{U20, U64}; + +mod consts; +mod utils; + +use consts::{STATE_LEN, H}; +use utils::{sha1_digest_block}; + +type BlockSize = U64; + +/// Structure representing the state of a Sha1 computation +#[derive(Clone)] +pub struct Sha1 { + h: [u32; STATE_LEN], + length_bits: u64, + buffer: DigestBuffer, +} + +impl Sha1 { + fn finalize(&mut self) { + let st_h = &mut self.h; + self.buffer + .standard_padding(8, |d: &[u8]| sha1_digest_block(&mut *st_h, d)); + write_u32_be(self.buffer.next(4), (self.length_bits >> 32) as u32); + write_u32_be(self.buffer.next(4), self.length_bits as u32); + sha1_digest_block(st_h, self.buffer.full_buffer()); + } +} + +impl Default for Sha1 { + fn default() -> Self { Self::new() } +} + +impl Digest for Sha1 { + type R = U20; + type B = BlockSize; + + fn new() -> Sha1 { + Sha1 { + h: H, + length_bits: 0u64, + buffer: Default::default(), + } + } + + fn input(&mut self, msg: &[u8]) { + // Assumes that msg.len() can be converted to u64 without overflow + self.length_bits = add_bytes_to_bits(self.length_bits, msg.len() as u64); + let st_h = &mut self.h; + self.buffer.input(msg, |d: &[u8]| { + sha1_digest_block(st_h, d); + }); + } + + fn result(mut self) -> GenericArray { + self.finalize(); + + let mut out = GenericArray::new(); + write_u32_be(&mut out[0..4], self.h[0]); + write_u32_be(&mut out[4..8], self.h[1]); + write_u32_be(&mut out[8..12], self.h[2]); + write_u32_be(&mut out[12..16], self.h[3]); + write_u32_be(&mut out[16..20], self.h[4]); + out + } +} diff --git a/sha1/src/utils.rs b/sha1/src/utils.rs new file mode 100644 index 00000000..6472c294 --- /dev/null +++ b/sha1/src/utils.rs @@ -0,0 +1,295 @@ +use consts::{BLOCK_LEN, K0, K1, K2, K3}; +use byte_tools::{read_u32v_be}; +use simd::u32x4; + +/// Not an intrinsic, but gets the first element of a vector. +#[inline] +pub fn sha1_first(w0: u32x4) -> u32 { + w0.0 +} + +/// Not an intrinsic, but adds a word to the first element of a vector. +#[inline] +pub fn sha1_first_add(e: u32, w0: u32x4) -> u32x4 { + let u32x4(a, b, c, d) = w0; + u32x4(e.wrapping_add(a), b, c, d) +} + +/// Emulates `llvm.x86.sha1msg1` intrinsic. +fn sha1msg1(a: u32x4, b: u32x4) -> u32x4 { + let u32x4(_, _, w2, w3) = a; + let u32x4(w4, w5, _, _) = b; + a ^ u32x4(w2, w3, w4, w5) +} + +/// Emulates `llvm.x86.sha1msg2` intrinsic. +fn sha1msg2(a: u32x4, b: u32x4) -> u32x4 { + let u32x4(x0, x1, x2, x3) = a; + let u32x4(_, w13, w14, w15) = b; + + let w16 = (x0 ^ w13).rotate_left(1); + let w17 = (x1 ^ w14).rotate_left(1); + let w18 = (x2 ^ w15).rotate_left(1); + let w19 = (x3 ^ w16).rotate_left(1); + + u32x4(w16, w17, w18, w19) +} + +/// Performs 4 rounds of the message schedule update. +/* +pub fn sha1_schedule_x4(v0: u32x4, v1: u32x4, v2: u32x4, v3: u32x4) -> u32x4 { + sha1msg2(sha1msg1(v0, v1) ^ v2, v3) +} +*/ + +/// Emulates `llvm.x86.sha1nexte` intrinsic. +#[inline] +fn sha1_first_half(abcd: u32x4, msg: u32x4) -> u32x4 { + sha1_first_add(sha1_first(abcd).rotate_left(30), msg) +} + +/// Emulates `llvm.x86.sha1rnds4` intrinsic. +/// Performs 4 rounds of the message block digest. +fn sha1_digest_round_x4(abcd: u32x4, work: u32x4, i: i8) -> u32x4 { + const K0V: u32x4 = u32x4(K0, K0, K0, K0); + const K1V: u32x4 = u32x4(K1, K1, K1, K1); + const K2V: u32x4 = u32x4(K2, K2, K2, K2); + const K3V: u32x4 = u32x4(K3, K3, K3, K3); + + match i { + 0 => sha1rnds4c(abcd, work + K0V), + 1 => sha1rnds4p(abcd, work + K1V), + 2 => sha1rnds4m(abcd, work + K2V), + 3 => sha1rnds4p(abcd, work + K3V), + _ => panic!("unknown icosaround index"), + } +} + +/// Not an intrinsic, but helps emulate `llvm.x86.sha1rnds4` intrinsic. +fn sha1rnds4c(abcd: u32x4, msg: u32x4) -> u32x4 { + let u32x4(mut a, mut b, mut c, mut d) = abcd; + let u32x4(t, u, v, w) = msg; + let mut e = 0u32; + + macro_rules! bool3ary_202 { + ($a:expr, $b:expr, $c:expr) => (($c ^ ($a & ($b ^ $c)))) + } // Choose, MD5F, SHA1C + + e = e.wrapping_add(a.rotate_left(5)) + .wrapping_add(bool3ary_202!(b, c, d)) + .wrapping_add(t); + b = b.rotate_left(30); + + d = d.wrapping_add(e.rotate_left(5)) + .wrapping_add(bool3ary_202!(a, b, c)) + .wrapping_add(u); + a = a.rotate_left(30); + + c = c.wrapping_add(d.rotate_left(5)) + .wrapping_add(bool3ary_202!(e, a, b)) + .wrapping_add(v); + e = e.rotate_left(30); + + b = b.wrapping_add(c.rotate_left(5)) + .wrapping_add(bool3ary_202!(d, e, a)) + .wrapping_add(w); + d = d.rotate_left(30); + + u32x4(b, c, d, e) +} + +/// Not an intrinsic, but helps emulate `llvm.x86.sha1rnds4` intrinsic. +fn sha1rnds4p(abcd: u32x4, msg: u32x4) -> u32x4 { + let u32x4(mut a, mut b, mut c, mut d) = abcd; + let u32x4(t, u, v, w) = msg; + let mut e = 0u32; + + macro_rules! bool3ary_150 { + ($a:expr, $b:expr, $c:expr) => (($a ^ $b ^ $c)) + } // Parity, XOR, MD5H, SHA1P + + e = e.wrapping_add(a.rotate_left(5)) + .wrapping_add(bool3ary_150!(b, c, d)) + .wrapping_add(t); + b = b.rotate_left(30); + + d = d.wrapping_add(e.rotate_left(5)) + .wrapping_add(bool3ary_150!(a, b, c)) + .wrapping_add(u); + a = a.rotate_left(30); + + c = c.wrapping_add(d.rotate_left(5)) + .wrapping_add(bool3ary_150!(e, a, b)) + .wrapping_add(v); + e = e.rotate_left(30); + + b = b.wrapping_add(c.rotate_left(5)) + .wrapping_add(bool3ary_150!(d, e, a)) + .wrapping_add(w); + d = d.rotate_left(30); + + u32x4(b, c, d, e) +} + +/// Not an intrinsic, but helps emulate `llvm.x86.sha1rnds4` intrinsic. +fn sha1rnds4m(abcd: u32x4, msg: u32x4) -> u32x4 { + let u32x4(mut a, mut b, mut c, mut d) = abcd; + let u32x4(t, u, v, w) = msg; + let mut e = 0u32; + + macro_rules! bool3ary_232 { + ($a:expr, $b:expr, $c:expr) => (($a & $b) ^ ($a & $c) ^ ($b & $c)) + } // Majority, SHA1M + + e = e.wrapping_add(a.rotate_left(5)) + .wrapping_add(bool3ary_232!(b, c, d)) + .wrapping_add(t); + b = b.rotate_left(30); + + d = d.wrapping_add(e.rotate_left(5)) + .wrapping_add(bool3ary_232!(a, b, c)) + .wrapping_add(u); + a = a.rotate_left(30); + + c = c.wrapping_add(d.rotate_left(5)) + .wrapping_add(bool3ary_232!(e, a, b)) + .wrapping_add(v); + e = e.rotate_left(30); + + b = b.wrapping_add(c.rotate_left(5)) + .wrapping_add(bool3ary_232!(d, e, a)) + .wrapping_add(w); + d = d.rotate_left(30); + + u32x4(b, c, d, e) +} + +/// Process a block with the SHA-1 algorithm. +fn sha1_digest_block_u32(state: &mut [u32; 5], block: &[u32; 16]) { + + macro_rules! schedule { + ($v0:expr, $v1:expr, $v2:expr, $v3:expr) => ( + sha1msg2(sha1msg1($v0, $v1) ^ $v2, $v3) + ) + } + + macro_rules! rounds4 { + ($h0:ident, $h1:ident, $wk:expr, $i:expr) => ( + sha1_digest_round_x4($h0, sha1_first_half($h1, $wk), $i) + ) + } + + // Rounds 0..20 + // TODO: replace with `u32x4::load` + let mut h0 = u32x4(state[0], state[1], state[2], state[3]); + let mut w0 = u32x4(block[0], block[1], block[2], block[3]); + let mut h1 = sha1_digest_round_x4(h0, sha1_first_add(state[4], w0), 0); + let mut w1 = u32x4(block[4], block[5], block[6], block[7]); + h0 = rounds4!(h1, h0, w1, 0); + let mut w2 = u32x4(block[8], block[9], block[10], block[11]); + h1 = rounds4!(h0, h1, w2, 0); + let mut w3 = u32x4(block[12], block[13], block[14], block[15]); + h0 = rounds4!(h1, h0, w3, 0); + let mut w4 = schedule!(w0, w1, w2, w3); + h1 = rounds4!(h0, h1, w4, 0); + + // Rounds 20..40 + w0 = schedule!(w1, w2, w3, w4); + h0 = rounds4!(h1, h0, w0, 1); + w1 = schedule!(w2, w3, w4, w0); + h1 = rounds4!(h0, h1, w1, 1); + w2 = schedule!(w3, w4, w0, w1); + h0 = rounds4!(h1, h0, w2, 1); + w3 = schedule!(w4, w0, w1, w2); + h1 = rounds4!(h0, h1, w3, 1); + w4 = schedule!(w0, w1, w2, w3); + h0 = rounds4!(h1, h0, w4, 1); + + // Rounds 40..60 + w0 = schedule!(w1, w2, w3, w4); + h1 = rounds4!(h0, h1, w0, 2); + w1 = schedule!(w2, w3, w4, w0); + h0 = rounds4!(h1, h0, w1, 2); + w2 = schedule!(w3, w4, w0, w1); + h1 = rounds4!(h0, h1, w2, 2); + w3 = schedule!(w4, w0, w1, w2); + h0 = rounds4!(h1, h0, w3, 2); + w4 = schedule!(w0, w1, w2, w3); + h1 = rounds4!(h0, h1, w4, 2); + + // Rounds 60..80 + w0 = schedule!(w1, w2, w3, w4); + h0 = rounds4!(h1, h0, w0, 3); + w1 = schedule!(w2, w3, w4, w0); + h1 = rounds4!(h0, h1, w1, 3); + w2 = schedule!(w3, w4, w0, w1); + h0 = rounds4!(h1, h0, w2, 3); + w3 = schedule!(w4, w0, w1, w2); + h1 = rounds4!(h0, h1, w3, 3); + w4 = schedule!(w0, w1, w2, w3); + h0 = rounds4!(h1, h0, w4, 3); + + let e = sha1_first(h1).rotate_left(30); + let u32x4(a, b, c, d) = h0; + + state[0] = state[0].wrapping_add(a); + state[1] = state[1].wrapping_add(b); + state[2] = state[2].wrapping_add(c); + state[3] = state[3].wrapping_add(d); + state[4] = state[4].wrapping_add(e); +} + +/// Process a block with the SHA-1 algorithm. (See more...) +/// +/// SHA-1 is a cryptographic hash function, and as such, it operates +/// on an arbitrary number of bytes. This function operates on a fixed +/// number of bytes. If you call this function with anything other than +/// 64 bytes, then it will panic! This function takes two arguments: +/// +/// * `state` is reference to an **array** of 5 words. +/// * `block` is reference to a **slice** of 64 bytes. +/// +/// If you want the function that performs a message digest on an arbitrary +/// number of bytes, then see also the `Sha1` struct above. +/// +/// # Implementation +/// +/// First, some background. Both ARM and Intel are releasing documentation +/// that they plan to include instruction set extensions for SHA1 and SHA256 +/// sometime in the near future. Second, LLVM won't lower these intrinsics yet, +/// so these functions were written emulate these instructions. Finally, +/// the block function implemented with these emulated intrinsics turned out +/// to be quite fast! What follows is a discussion of this CPU-level view +/// of the SHA-1 algorithm and how it relates to the mathematical definition. +/// +/// The SHA instruction set extensions can be divided up into two categories: +/// +/// * message work schedule update calculation ("schedule" v., "work" n.) +/// * message block 80-round digest calculation ("digest" v., "block" n.) +/// +/// The schedule-related functions can be used to easily perform 4 rounds +/// of the message work schedule update calculation, as shown below: +/// +/// ```ignore +/// macro_rules! schedule_x4 { +/// ($v0:expr, $v1:expr, $v2:expr, $v3:expr) => ( +/// sha1msg2(sha1msg1($v0, $v1) ^ $v2, $v3) +/// ) +/// } +/// +/// macro_rules! round_x4 { +/// ($h0:ident, $h1:ident, $wk:expr, $i:expr) => ( +/// sha1rnds4($h0, sha1_first_half($h1, $wk), $i) +/// ) +/// } +/// ``` +/// +/// and also shown above is how the digest-related functions can be used to +/// perform 4 rounds of the message block digest calculation. +/// +pub fn sha1_digest_block(state: &mut [u32; 5], block: &[u8]) { + assert_eq!(block.len(), BLOCK_LEN * 4); + let mut block2 = [0u32; BLOCK_LEN]; + read_u32v_be(&mut block2[..], block); + sha1_digest_block_u32(state, &block2); +} diff --git a/sha1/tests/data/one_million_a.output.bin b/sha1/tests/data/one_million_a.output.bin new file mode 100644 index 00000000..0c759d80 --- /dev/null +++ b/sha1/tests/data/one_million_a.output.bin @@ -0,0 +1 @@ +4<ڤ+ۭ'1e4o \ No newline at end of file diff --git a/sha1/tests/data/test1.input.bin b/sha1/tests/data/test1.input.bin new file mode 100644 index 00000000..f2ba8f84 --- /dev/null +++ b/sha1/tests/data/test1.input.bin @@ -0,0 +1 @@ +abc \ No newline at end of file diff --git a/sha1/tests/data/test1.output.bin b/sha1/tests/data/test1.output.bin new file mode 100644 index 00000000..7a10ebe4 --- /dev/null +++ b/sha1/tests/data/test1.output.bin @@ -0,0 +1 @@ +>6Gj>%qxPl؝ \ No newline at end of file diff --git a/sha1/tests/data/test2.input.bin b/sha1/tests/data/test2.input.bin new file mode 100644 index 00000000..199f24ed --- /dev/null +++ b/sha1/tests/data/test2.input.bin @@ -0,0 +1 @@ +abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq \ No newline at end of file diff --git a/sha1/tests/data/test2.output.bin b/sha1/tests/data/test2.output.bin new file mode 100644 index 00000000..baf4222e --- /dev/null +++ b/sha1/tests/data/test2.output.bin @@ -0,0 +1 @@ +>D;nJQ)Fp \ No newline at end of file diff --git a/sha1/tests/data/test3.input.bin b/sha1/tests/data/test3.input.bin new file mode 100644 index 00000000..ff3bb639 --- /dev/null +++ b/sha1/tests/data/test3.input.bin @@ -0,0 +1 @@ +The quick brown fox jumps over the lazy dog \ No newline at end of file diff --git a/sha1/tests/data/test3.output.bin b/sha1/tests/data/test3.output.bin new file mode 100644 index 00000000..870b98bd --- /dev/null +++ b/sha1/tests/data/test3.output.bin @@ -0,0 +1 @@ +/z-(턞v9 \ No newline at end of file diff --git a/sha1/tests/data/test4.input.bin b/sha1/tests/data/test4.input.bin new file mode 100644 index 00000000..12e0608e --- /dev/null +++ b/sha1/tests/data/test4.input.bin @@ -0,0 +1 @@ +The quick brown fox jumps over the lazy cog \ No newline at end of file diff --git a/sha1/tests/data/test4.output.bin b/sha1/tests/data/test4.output.bin new file mode 100644 index 00000000..58e376af --- /dev/null +++ b/sha1/tests/data/test4.output.bin @@ -0,0 +1 @@ +ޟ,^:Z } \ No newline at end of file diff --git a/sha1/tests/lib.rs b/sha1/tests/lib.rs new file mode 100644 index 00000000..074619ea --- /dev/null +++ b/sha1/tests/lib.rs @@ -0,0 +1,19 @@ +#![no_std] +#[macro_use] +extern crate crypto_tests; +extern crate sha1; + +use crypto_tests::hash::{Test, main_test, one_million_a}; + +#[test] +fn sha1_main() { + // Examples from wikipedia + let tests = new_tests!("test1", "test2", "test3"); + main_test::(&tests); +} + +#[test] +fn sha1_1million_a() { + let output = include_bytes!("data/one_million_a.output.bin"); + one_million_a::(output); +} diff --git a/sha2/Cargo.toml b/sha2/Cargo.toml new file mode 100644 index 00000000..757cd24e --- /dev/null +++ b/sha2/Cargo.toml @@ -0,0 +1,19 @@ +[package] +name = "sha2" +version = "0.1.0" +authors = ["The Rust-Crypto Project Developers"] +license = "MIT/Apache-2.0" +description = "SHA-2 hash functions" +#documentation = "https://docs.rs/sha1" +repository = "https://github.com/RustCrypto/hashes" +keywords = ["crypto", "sha2", "hash", "digest"] + +[dependencies] +fake-simd = "0.1" +byte-tools = "0.1" +digest = "0.2" +digest-buffer = "0.1" +generic-array = "0.5" + +[dev-dependencies] +crypto-tests = "0.1" diff --git a/sha2/LICENSE-APACHE b/sha2/LICENSE-APACHE new file mode 100644 index 00000000..78173fa2 --- /dev/null +++ b/sha2/LICENSE-APACHE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/sha2/LICENSE-MIT b/sha2/LICENSE-MIT new file mode 100644 index 00000000..66cf7556 --- /dev/null +++ b/sha2/LICENSE-MIT @@ -0,0 +1,27 @@ +Copyright (c) 2006-2009 Graydon Hoare +Copyright (c) 2009-2013 Mozilla Foundation +Copyright (c) 2016 Artyom Pavlov + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. diff --git a/sha2/benches/lib.rs b/sha2/benches/lib.rs new file mode 100644 index 00000000..b001af5b --- /dev/null +++ b/sha2/benches/lib.rs @@ -0,0 +1,67 @@ +#![no_std] +#![feature(test)] +extern crate test; +extern crate sha2; + +use test::Bencher; +use sha2::{Digest, Sha256, Sha512}; + +#[bench] +pub fn sha256_10(bh: &mut Bencher) { + let mut sh = Sha256::new(); + let bytes = [1u8; 10]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn sha256_1k(bh: &mut Bencher) { + let mut sh = Sha256::new(); + let bytes = [1u8; 1024]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn sha256_64k(bh: &mut Bencher) { + let mut sh = Sha256::new(); + let bytes = [1u8; 65536]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn sha512_10(bh: &mut Bencher) { + let mut sh = Sha512::new(); + let bytes = [1u8; 10]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn sha512_1k(bh: &mut Bencher) { + let mut sh = Sha512::new(); + let bytes = [1u8; 1024]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn sha512_64k(bh: &mut Bencher) { + let mut sh = Sha512::new(); + let bytes = [1u8; 65536]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} diff --git a/sha2/src/consts.rs b/sha2/src/consts.rs new file mode 100644 index 00000000..01657884 --- /dev/null +++ b/sha2/src/consts.rs @@ -0,0 +1,197 @@ +use simd::u64x2; +use simd::u32x4; + +pub const STATE_LEN: usize = 8; +pub const BLOCK_LEN: usize = 16; + +/// Constants necessary for SHA-256 family of digests. +pub const K32: [u32; 64] = + [0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, + 0x923f82a4, 0xab1c5ed5, 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, + 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174, 0xe49b69c1, 0xefbe4786, + 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da, + 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, + 0x06ca6351, 0x14292967, 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, + 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85, 0xa2bfe8a1, 0xa81a664b, + 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070, + 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, + 0x5b9cca4f, 0x682e6ff3, 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, + 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2]; + +/// Constants necessary for SHA-256 family of digests. +pub const K32X4: [u32x4; 16] = [u32x4(K32[3], K32[2], K32[1], K32[0]), + u32x4(K32[7], K32[6], K32[5], K32[4]), + u32x4(K32[11], K32[10], K32[9], K32[8]), + u32x4(K32[15], K32[14], K32[13], K32[12]), + u32x4(K32[19], K32[18], K32[17], K32[16]), + u32x4(K32[23], K32[22], K32[21], K32[20]), + u32x4(K32[27], K32[26], K32[25], K32[24]), + u32x4(K32[31], K32[30], K32[29], K32[28]), + u32x4(K32[35], K32[34], K32[33], K32[32]), + u32x4(K32[39], K32[38], K32[37], K32[36]), + u32x4(K32[43], K32[42], K32[41], K32[40]), + u32x4(K32[47], K32[46], K32[45], K32[44]), + u32x4(K32[51], K32[50], K32[49], K32[48]), + u32x4(K32[55], K32[54], K32[53], K32[52]), + u32x4(K32[59], K32[58], K32[57], K32[56]), + u32x4(K32[63], K32[62], K32[61], K32[60])]; + +/// Constants necessary for SHA-512 family of digests. +pub const K64: [u64; 80] = [0x428a2f98d728ae22, + 0x7137449123ef65cd, + 0xb5c0fbcfec4d3b2f, + 0xe9b5dba58189dbbc, + 0x3956c25bf348b538, + 0x59f111f1b605d019, + 0x923f82a4af194f9b, + 0xab1c5ed5da6d8118, + 0xd807aa98a3030242, + 0x12835b0145706fbe, + 0x243185be4ee4b28c, + 0x550c7dc3d5ffb4e2, + 0x72be5d74f27b896f, + 0x80deb1fe3b1696b1, + 0x9bdc06a725c71235, + 0xc19bf174cf692694, + 0xe49b69c19ef14ad2, + 0xefbe4786384f25e3, + 0x0fc19dc68b8cd5b5, + 0x240ca1cc77ac9c65, + 0x2de92c6f592b0275, + 0x4a7484aa6ea6e483, + 0x5cb0a9dcbd41fbd4, + 0x76f988da831153b5, + 0x983e5152ee66dfab, + 0xa831c66d2db43210, + 0xb00327c898fb213f, + 0xbf597fc7beef0ee4, + 0xc6e00bf33da88fc2, + 0xd5a79147930aa725, + 0x06ca6351e003826f, + 0x142929670a0e6e70, + 0x27b70a8546d22ffc, + 0x2e1b21385c26c926, + 0x4d2c6dfc5ac42aed, + 0x53380d139d95b3df, + 0x650a73548baf63de, + 0x766a0abb3c77b2a8, + 0x81c2c92e47edaee6, + 0x92722c851482353b, + 0xa2bfe8a14cf10364, + 0xa81a664bbc423001, + 0xc24b8b70d0f89791, + 0xc76c51a30654be30, + 0xd192e819d6ef5218, + 0xd69906245565a910, + 0xf40e35855771202a, + 0x106aa07032bbd1b8, + 0x19a4c116b8d2d0c8, + 0x1e376c085141ab53, + 0x2748774cdf8eeb99, + 0x34b0bcb5e19b48a8, + 0x391c0cb3c5c95a63, + 0x4ed8aa4ae3418acb, + 0x5b9cca4f7763e373, + 0x682e6ff3d6b2b8a3, + 0x748f82ee5defb2fc, + 0x78a5636f43172f60, + 0x84c87814a1f0ab72, + 0x8cc702081a6439ec, + 0x90befffa23631e28, + 0xa4506cebde82bde9, + 0xbef9a3f7b2c67915, + 0xc67178f2e372532b, + 0xca273eceea26619c, + 0xd186b8c721c0c207, + 0xeada7dd6cde0eb1e, + 0xf57d4f7fee6ed178, + 0x06f067aa72176fba, + 0x0a637dc5a2c898a6, + 0x113f9804bef90dae, + 0x1b710b35131c471b, + 0x28db77f523047d84, + 0x32caab7b40c72493, + 0x3c9ebe0a15c9bebc, + 0x431d67c49c100d4c, + 0x4cc5d4becb3e42b6, + 0x597f299cfc657e2a, + 0x5fcb6fab3ad6faec, + 0x6c44198c4a475817]; + +/// Constants necessary for SHA-512 family of digests. +pub const K64X2: [u64x2; 40] = [u64x2(K64[1], K64[0]), + u64x2(K64[3], K64[2]), + u64x2(K64[5], K64[4]), + u64x2(K64[7], K64[6]), + u64x2(K64[9], K64[8]), + u64x2(K64[11], K64[10]), + u64x2(K64[13], K64[12]), + u64x2(K64[15], K64[14]), + u64x2(K64[17], K64[16]), + u64x2(K64[19], K64[18]), + u64x2(K64[21], K64[20]), + u64x2(K64[23], K64[22]), + u64x2(K64[25], K64[24]), + u64x2(K64[27], K64[26]), + u64x2(K64[29], K64[28]), + u64x2(K64[31], K64[30]), + u64x2(K64[33], K64[32]), + u64x2(K64[35], K64[34]), + u64x2(K64[37], K64[36]), + u64x2(K64[39], K64[38]), + u64x2(K64[41], K64[40]), + u64x2(K64[43], K64[42]), + u64x2(K64[45], K64[44]), + u64x2(K64[47], K64[46]), + u64x2(K64[49], K64[48]), + u64x2(K64[51], K64[50]), + u64x2(K64[53], K64[52]), + u64x2(K64[55], K64[54]), + u64x2(K64[57], K64[56]), + u64x2(K64[59], K64[58]), + u64x2(K64[61], K64[60]), + u64x2(K64[63], K64[62]), + u64x2(K64[65], K64[64]), + u64x2(K64[67], K64[66]), + u64x2(K64[69], K64[68]), + u64x2(K64[71], K64[70]), + u64x2(K64[73], K64[72]), + u64x2(K64[75], K64[74]), + u64x2(K64[77], K64[76]), + u64x2(K64[79], K64[78])]; + +pub static H224: [u32; STATE_LEN] = [0xc1059ed8, 0x367cd507, 0x3070dd17, + 0xf70e5939, 0xffc00b31, 0x68581511, + 0x64f98fa7, 0xbefa4fa4]; + +pub static H256: [u32; STATE_LEN] = [0x6a09e667, 0xbb67ae85, 0x3c6ef372, + 0xa54ff53a, 0x510e527f, 0x9b05688c, + 0x1f83d9ab, 0x5be0cd19]; + +pub static H384: [u64; STATE_LEN] = [0xcbbb9d5dc1059ed8, 0x629a292a367cd507, + 0x9159015a3070dd17, 0x152fecd8f70e5939, + 0x67332667ffc00b31, 0x8eb44a8768581511, + 0xdb0c2e0d64f98fa7, 0x47b5481dbefa4fa4]; + +pub static H512: [u64; STATE_LEN] = [0x6a09e667f3bcc908, 0xbb67ae8584caa73b, + 0x3c6ef372fe94f82b, 0xa54ff53a5f1d36f1, + 0x510e527fade682d1, 0x9b05688c2b3e6c1f, + 0x1f83d9abfb41bd6b, 0x5be0cd19137e2179]; + +pub static H512_TRUNC_224: [u64; STATE_LEN] = [0x8c3d37c819544da2, + 0x73e1996689dcd4d6, + 0x1dfab7ae32ff9c82, + 0x679dd514582f9fcf, + 0x0f6d2b697bd44da8, + 0x77e36f7304c48942, + 0x3f9d85a86a1d36c8, + 0x1112e6ad91d692a1]; + +pub static H512_TRUNC_256: [u64; STATE_LEN] = [0x22312194fc2bf72c, + 0x9f555fa3c84c64c2, + 0x2393b86b6f53b151, + 0x963877195940eabd, + 0x96283ee2a88effe3, + 0xbe5e1e2553863992, + 0x2b0199fc2c85b8aa, + 0x0eb72ddc81c52ca2]; diff --git a/sha2/src/lib.rs b/sha2/src/lib.rs new file mode 100644 index 00000000..61796d0e --- /dev/null +++ b/sha2/src/lib.rs @@ -0,0 +1,81 @@ +//! An implementation of the SHA-2 cryptographic hash algorithms. +//! +//! There are 6 standard algorithms specified in the SHA-2 standard: +//! +//! * `Sha224`, which is the 32-bit `Sha256` algorithm with the result truncated +//! to 224 bits. +//! * `Sha256`, which is the 32-bit `Sha256` algorithm. +//! * `Sha384`, which is the 64-bit `Sha512` algorithm with the result truncated +//! to 384 bits. +//! * `Sha512`, which is the 64-bit `Sha512` algorithm. +//! * `Sha512Trunc224`, which is the 64-bit `Sha512` algorithm with the result +//! truncated to 224 bits. +//! * `Sha512Trunc256`, which is the 64-bit `Sha512` algorithm with the result +//! truncated to 256 bits. +//! +//! Algorithmically, there are only 2 core algorithms: `Sha256` and `Sha512`. +//! All other algorithms are just applications of these with different initial +//! hash values, and truncated to different digest bit lengths. +//! +//! # Usage +//! +//! An example of using `Sha256` is: +//! +//! ```rust +//! use sha2::{Sha256, Digest}; +//! +//! // create a Sha256 object +//! let mut hasher = Sha256::new(); +//! +//! // write input message +//! hasher.input(b"hello world"); +//! +//! // read hash digest and consume hasher +//! let output = hasher.result(); +//! +//! assert_eq!(output[..], [0xb9, 0x4d, 0x27, 0xb9, 0x93, 0x4d, 0x3e, 0x08, +//! 0xa5, 0x2e, 0x52, 0xd7, 0xda, 0x7d, 0xab, 0xfa, +//! 0xc4, 0x84, 0xef, 0xe3, 0x7a, 0x53, 0x80, 0xee, +//! 0x90, 0x88, 0xf7, 0xac, 0xe2, 0xef, 0xcd, 0xe9]); +//! ``` +//! +//! An example of using `Sha512` is: +//! +//! ```rust +//! use sha2::{Sha512, Digest}; +//! +//! // create a Sha512 object +//! let mut hasher = Sha512::new(); +//! +//! // write input message +//! hasher.input(b"hello world"); +//! +//! // read hash digest and consume hasher +//! let output = hasher.result(); +//! +//! assert_eq!(output[..], [0x30, 0x9e, 0xcc, 0x48, 0x9c, 0x12, 0xd6, 0xeb, +//! 0x4c, 0xc4, 0x0f, 0x50, 0xc9, 0x02, 0xf2, 0xb4, +//! 0xd0, 0xed, 0x77, 0xee, 0x51, 0x1a, 0x7c, 0x7a, +//! 0x9b, 0xcd, 0x3c, 0xa8, 0x6d, 0x4c, 0xd8, 0x6f, +//! 0x98, 0x9d, 0xd3, 0x5b, 0xc5, 0xff, 0x49, 0x96, +//! 0x70, 0xda, 0x34, 0x25, 0x5b, 0x45, 0xb0, 0xcf, +//! 0xd8, 0x30, 0xe8, 0x1f, 0x60, 0x5d, 0xcf, 0x7d, +//! 0xc5, 0x54, 0x2e, 0x93, 0xae, 0x9c, 0xd7, 0x6f][..]); +//! ``` + +#![no_std] +extern crate generic_array; +extern crate byte_tools; +extern crate digest; +extern crate digest_buffer; +extern crate fake_simd as simd; + +mod consts; +mod sha256_utils; +mod sha512_utils; +mod sha256; +mod sha512; + +pub use digest::Digest; +pub use sha256::{Sha256, Sha224}; +pub use sha512::{Sha512, Sha384, Sha512Trunc224, Sha512Trunc256}; diff --git a/sha2/src/sha256.rs b/sha2/src/sha256.rs new file mode 100644 index 00000000..da8373b1 --- /dev/null +++ b/sha2/src/sha256.rs @@ -0,0 +1,110 @@ +use generic_array::GenericArray; +use digest::Digest; +use digest_buffer::DigestBuffer; +use generic_array::typenum::{U28, U32, U64}; +use byte_tools::{write_u32v_be, write_u32_be, add_bytes_to_bits}; + +use consts::{STATE_LEN, H224, H256}; + +use sha256_utils::sha256_digest_block; + +type BlockSize = U64; + +/// A structure that represents that state of a digest computation for the +/// SHA-2 512 family of digest functions +#[derive(Clone, Copy)] +struct Engine256State { + h: [u32; 8], +} + +impl Engine256State { + fn new(h: &[u32; STATE_LEN]) -> Engine256State { Engine256State { h: *h } } + + pub fn process_block(&mut self, data: &[u8]) { + sha256_digest_block(&mut self.h, data); + } +} + +/// A structure that keeps track of the state of the Sha-256 operation and +/// contains the logic necessary to perform the final calculations. +#[derive(Clone, Copy)] +struct Engine256 { + length_bits: u64, + buffer: DigestBuffer, + state: Engine256State, +} + +impl Engine256 { + fn new(h: &[u32; STATE_LEN]) -> Engine256 { + Engine256 { + length_bits: 0, + buffer: Default::default(), + state: Engine256State::new(h), + } + } + + fn input(&mut self, input: &[u8]) { + // Assumes that input.len() can be converted to u64 without overflow + self.length_bits = add_bytes_to_bits(self.length_bits, + input.len() as u64); + let self_state = &mut self.state; + self.buffer + .input(input, |input: &[u8]| self_state.process_block(input)); + } + + fn finish(&mut self) { + let self_state = &mut self.state; + self.buffer.standard_padding(8, |input: &[u8]| { + self_state.process_block(input) + }); + write_u32_be(self.buffer.next(4), (self.length_bits >> 32) as u32); + write_u32_be(self.buffer.next(4), self.length_bits as u32); + self_state.process_block(self.buffer.full_buffer()); + } +} + + +/// The SHA-256 hash algorithm with the SHA-256 initial hash value. +#[derive(Clone, Copy)] +pub struct Sha256 { + engine: Engine256, +} + +impl Digest for Sha256 { + type R = U32; + type B = BlockSize; + + fn new() -> Sha256 { Sha256 { engine: Engine256::new(&H256) } } + + fn input(&mut self, msg: &[u8]) { self.engine.input(msg); } + + fn result(mut self) -> GenericArray { + self.engine.finish(); + let mut out = GenericArray::new(); + write_u32v_be(&mut out, &self.engine.state.h); + out + } +} + +/// The SHA-256 hash algorithm with the SHA-224 initial hash value. The result +/// is truncated to 224 bits. +#[derive(Clone, Copy)] +pub struct Sha224 { + engine: Engine256, +} + +impl Digest for Sha224 { + type R = U28; + type B = BlockSize; + + fn new() -> Sha224 { Sha224 { engine: Engine256::new(&H224) } } + + fn input(&mut self, msg: &[u8]) { self.engine.input(msg); } + + fn result(mut self) -> GenericArray { + self.engine.finish(); + let mut out = GenericArray::new(); + write_u32v_be(&mut out[..28], &self.engine.state.h[..7]); + out + } +} diff --git a/sha2/src/sha256_utils.rs b/sha2/src/sha256_utils.rs new file mode 100644 index 00000000..fdf09e55 --- /dev/null +++ b/sha2/src/sha256_utils.rs @@ -0,0 +1,265 @@ +use simd::u32x4; +use consts::{BLOCK_LEN, K32X4}; +use byte_tools::{read_u32v_be}; + +/// Not an intrinsic, but works like an unaligned load. +#[inline] +fn sha256load(v2: u32x4, v3: u32x4) -> u32x4 { + u32x4(v3.3, v2.0, v2.1, v2.2) +} + +/// Not an intrinsic, but useful for swapping vectors. +#[inline] +fn sha256swap(v0: u32x4) -> u32x4 { + u32x4(v0.2, v0.3, v0.0, v0.1) +} + +/// Emulates `llvm.x86.sha256msg1` intrinsic. +// #[inline] +fn sha256msg1(v0: u32x4, v1: u32x4) -> u32x4 { + + // sigma 0 on vectors + #[inline] + fn sigma0x4(x: u32x4) -> u32x4 { + ((x >> u32x4( 7, 7, 7, 7)) | (x << u32x4(25, 25, 25, 25))) ^ + ((x >> u32x4(18, 18, 18, 18)) | (x << u32x4(14, 14, 14, 14))) ^ + (x >> u32x4( 3, 3, 3, 3)) + } + + v0 + sigma0x4(sha256load(v0, v1)) +} + +/// Emulates `llvm.x86.sha256msg2` intrinsic. +// #[inline] +fn sha256msg2(v4: u32x4, v3: u32x4) -> u32x4 { + + macro_rules! sigma1 { + ($a:expr) => (($a.rotate_right(17) ^ $a.rotate_right(19) ^ ($a >> 10))) + } + + let u32x4(x3, x2, x1, x0) = v4; + let u32x4(w15, w14, _, _) = v3; + + let w16 = x0.wrapping_add(sigma1!(w14)); + let w17 = x1.wrapping_add(sigma1!(w15)); + let w18 = x2.wrapping_add(sigma1!(w16)); + let w19 = x3.wrapping_add(sigma1!(w17)); + + u32x4(w19, w18, w17, w16) +} + +/* +/// Performs 4 rounds of the SHA-256 message schedule update. +fn sha256_schedule_x4(v0: u32x4, v1: u32x4, v2: u32x4, v3: u32x4) -> u32x4 { + sha256msg2(sha256msg1(v0, v1) + sha256load(v2, v3), v3) +}*/ + +/// Emulates `llvm.x86.sha256rnds2` intrinsic. +// #[inline] +fn sha256_digest_round_x2(cdgh: u32x4, abef: u32x4, wk: u32x4) -> u32x4 { + + macro_rules! big_sigma0 { + ($a:expr) => (($a.rotate_right(2) ^ $a.rotate_right(13) ^ $a.rotate_right(22))) + } + macro_rules! big_sigma1 { + ($a:expr) => (($a.rotate_right(6) ^ $a.rotate_right(11) ^ $a.rotate_right(25))) + } + macro_rules! bool3ary_202 { + ($a:expr, $b:expr, $c:expr) => (($c ^ ($a & ($b ^ $c)))) + } // Choose, MD5F, SHA1C + macro_rules! bool3ary_232 { + ($a:expr, $b:expr, $c:expr) => (($a & $b) ^ ($a & $c) ^ ($b & $c)) + } // Majority, SHA1M + + let u32x4(_, _, wk1, wk0) = wk; + let u32x4(a0, b0, e0, f0) = abef; + let u32x4(c0, d0, g0, h0) = cdgh; + + // a round + let x0 = big_sigma1!(e0) + .wrapping_add(bool3ary_202!(e0, f0, g0)) + .wrapping_add(wk0) + .wrapping_add(h0); + let y0 = big_sigma0!(a0).wrapping_add(bool3ary_232!(a0, b0, c0)); + let (a1, b1, c1, d1, e1, f1, g1, h1) = + (x0.wrapping_add(y0), a0, b0, c0, x0.wrapping_add(d0), e0, f0, g0); + + // a round + let x1 = big_sigma1!(e1) + .wrapping_add(bool3ary_202!(e1, f1, g1)) + .wrapping_add(wk1) + .wrapping_add(h1); + let y1 = big_sigma0!(a1).wrapping_add(bool3ary_232!(a1, b1, c1)); + let (a2, b2, _, _, e2, f2, _, _) = + (x1.wrapping_add(y1), a1, b1, c1, x1.wrapping_add(d1), e1, f1, g1); + + u32x4(a2, b2, e2, f2) +} + +/// Process a block with the SHA-256 algorithm. +fn sha256_digest_block_u32(state: &mut [u32; 8], block: &[u32; 16]) { + let k = &K32X4; + + macro_rules! schedule { + ($v0:expr, $v1:expr, $v2:expr, $v3:expr) => ( + sha256msg2(sha256msg1($v0, $v1) + sha256load($v2, $v3), $v3) + ) + } + + macro_rules! rounds4 { + ($abef:ident, $cdgh:ident, $rest:expr) => { + { + $cdgh = sha256_digest_round_x2($cdgh, $abef, $rest); + $abef = sha256_digest_round_x2($abef, $cdgh, sha256swap($rest)); + } + } + } + + let mut abef = u32x4(state[0], state[1], state[4], state[5]); + let mut cdgh = u32x4(state[2], state[3], state[6], state[7]); + + // Rounds 0..64 + let mut w0 = u32x4(block[3], block[2], block[1], block[0]); + rounds4!(abef, cdgh, k[0] + w0); + let mut w1 = u32x4(block[7], block[6], block[5], block[4]); + rounds4!(abef, cdgh, k[1] + w1); + let mut w2 = u32x4(block[11], block[10], block[9], block[8]); + rounds4!(abef, cdgh, k[2] + w2); + let mut w3 = u32x4(block[15], block[14], block[13], block[12]); + rounds4!(abef, cdgh, k[3] + w3); + let mut w4 = schedule!(w0, w1, w2, w3); + rounds4!(abef, cdgh, k[4] + w4); + w0 = schedule!(w1, w2, w3, w4); + rounds4!(abef, cdgh, k[5] + w0); + w1 = schedule!(w2, w3, w4, w0); + rounds4!(abef, cdgh, k[6] + w1); + w2 = schedule!(w3, w4, w0, w1); + rounds4!(abef, cdgh, k[7] + w2); + w3 = schedule!(w4, w0, w1, w2); + rounds4!(abef, cdgh, k[8] + w3); + w4 = schedule!(w0, w1, w2, w3); + rounds4!(abef, cdgh, k[9] + w4); + w0 = schedule!(w1, w2, w3, w4); + rounds4!(abef, cdgh, k[10] + w0); + w1 = schedule!(w2, w3, w4, w0); + rounds4!(abef, cdgh, k[11] + w1); + w2 = schedule!(w3, w4, w0, w1); + rounds4!(abef, cdgh, k[12] + w2); + w3 = schedule!(w4, w0, w1, w2); + rounds4!(abef, cdgh, k[13] + w3); + w4 = schedule!(w0, w1, w2, w3); + rounds4!(abef, cdgh, k[14] + w4); + w0 = schedule!(w1, w2, w3, w4); + rounds4!(abef, cdgh, k[15] + w0); + + let u32x4(a, b, e, f) = abef; + let u32x4(c, d, g, h) = cdgh; + + state[0] = state[0].wrapping_add(a); + state[1] = state[1].wrapping_add(b); + state[2] = state[2].wrapping_add(c); + state[3] = state[3].wrapping_add(d); + state[4] = state[4].wrapping_add(e); + state[5] = state[5].wrapping_add(f); + state[6] = state[6].wrapping_add(g); + state[7] = state[7].wrapping_add(h); +} + +/// Process a block with the SHA-256 algorithm. (See more...) +/// +/// Internally, this uses functions which resemble the new Intel SHA instruction +/// sets, and so it's data locality properties may improve performance. However, +/// to benefit the most from this implementation, replace these functions with +/// x86 intrinsics to get a possible speed boost. +/// +/// # Implementation +/// +/// The `Sha256` algorithm is implemented with functions that resemble the new +/// Intel SHA instruction set extensions. These intructions fall into two +/// categories: message schedule calculation, and the message block 64-round +/// digest calculation. The schedule-related instructions allow 4 rounds to be +/// calculated as: +/// +/// ```ignore +/// use std::simd::u32x4; +/// use self::crypto::sha2::{ +/// sha256msg1, +/// sha256msg2, +/// sha256load +/// }; +/// +/// fn schedule4_data(work: &mut [u32x4], w: &[u32]) { +/// +/// // this is to illustrate the data order +/// work[0] = u32x4(w[3], w[2], w[1], w[0]); +/// work[1] = u32x4(w[7], w[6], w[5], w[4]); +/// work[2] = u32x4(w[11], w[10], w[9], w[8]); +/// work[3] = u32x4(w[15], w[14], w[13], w[12]); +/// } +/// +/// fn schedule4_work(work: &mut [u32x4], t: usize) { +/// +/// // this is the core expression +/// work[t] = sha256msg2(sha256msg1(work[t - 4], work[t - 3]) + +/// sha256load(work[t - 2], work[t - 1]), +/// work[t - 1]) +/// } +/// ``` +/// +/// instead of 4 rounds of: +/// +/// ```ignore +/// fn schedule_work(w: &mut [u32], t: usize) { +/// w[t] = sigma1!(w[t - 2]) + w[t - 7] + sigma0!(w[t - 15]) + w[t - 16]; +/// } +/// ``` +/// +/// and the digest-related instructions allow 4 rounds to be calculated as: +/// +/// ```ignore +/// use std::simd::u32x4; +/// use self::crypto::sha2::{K32X4, +/// sha256rnds2, +/// sha256swap +/// }; +/// +/// fn rounds4(state: &mut [u32; 8], work: &mut [u32x4], t: usize) { +/// let [a, b, c, d, e, f, g, h]: [u32; 8] = *state; +/// +/// // this is to illustrate the data order +/// let mut abef = u32x4(a, b, e, f); +/// let mut cdgh = u32x4(c, d, g, h); +/// let temp = K32X4[t] + work[t]; +/// +/// // this is the core expression +/// cdgh = sha256rnds2(cdgh, abef, temp); +/// abef = sha256rnds2(abef, cdgh, sha256swap(temp)); +/// +/// *state = [abef.0, abef.1, cdgh.0, cdgh.1, +/// abef.2, abef.3, cdgh.2, cdgh.3]; +/// } +/// ``` +/// +/// instead of 4 rounds of: +/// +/// ```ignore +/// fn round(state: &mut [u32; 8], w: &mut [u32], t: usize) { +/// let [a, b, c, mut d, e, f, g, mut h]: [u32; 8] = *state; +/// +/// h += big_sigma1!(e) + choose!(e, f, g) + K32[t] + w[t]; d += h; +/// h += big_sigma0!(a) + majority!(a, b, c); +/// +/// *state = [h, a, b, c, d, e, f, g]; +/// } +/// ``` +/// +/// **NOTE**: It is important to note, however, that these instructions are not +/// implemented by any CPU (at the time of this writing), and so they are +/// emulated in this library until the instructions become more common, and gain +/// support in LLVM (and GCC, etc.). +pub fn sha256_digest_block(state: &mut [u32; 8], block: &[u8]) { + assert_eq!(block.len(), BLOCK_LEN * 4); + let mut block2 = [0u32; BLOCK_LEN]; + read_u32v_be(&mut block2[..], block); + sha256_digest_block_u32(state, &block2); +} \ No newline at end of file diff --git a/sha2/src/sha512.rs b/sha2/src/sha512.rs new file mode 100644 index 00000000..666dbf17 --- /dev/null +++ b/sha2/src/sha512.rs @@ -0,0 +1,173 @@ +use generic_array::GenericArray; +use digest::Digest; +use digest_buffer::DigestBuffer; +use generic_array::typenum::{U28, U32, U48, U64, U128}; +use byte_tools::{write_u64v_be, write_u32_be, write_u64_be, add_bytes_to_bits_tuple}; + +use consts::{STATE_LEN, H384, H512, H512_TRUNC_224, H512_TRUNC_256}; + +use sha512_utils::sha512_digest_block; + +type BlockSize = U128; + +/// A structure that represents that state of a digest computation for the +/// SHA-2 512 family of digest functions +#[derive(Copy, Clone)] +struct Engine512State { + h: [u64; 8], +} + +impl Engine512State { + fn new(h: &[u64; 8]) -> Engine512State { Engine512State { h: *h } } + + pub fn process_block(&mut self, data: &[u8]) { + sha512_digest_block(&mut self.h, data); + } +} + +/// A structure that keeps track of the state of the Sha-512 operation and +/// contains the logic necessary to perform the final calculations. +#[derive(Copy, Clone)] +struct Engine512 { + length_bits: (u64, u64), + buffer: DigestBuffer, + state: Engine512State, +} + +impl Engine512 { + fn new(h: &[u64; STATE_LEN]) -> Engine512 { + Engine512 { + length_bits: (0, 0), + buffer: Default::default(), + state: Engine512State::new(h), + } + } + + fn input(&mut self, input: &[u8]) { + // Assumes that input.len() can be converted to u64 without overflow + self.length_bits = add_bytes_to_bits_tuple(self.length_bits, + input.len() as u64); + let self_state = &mut self.state; + self.buffer + .input(input, |input: &[u8]| self_state.process_block(input)); + } + + fn finish(&mut self) { + let self_state = &mut self.state; + self.buffer.standard_padding(16, |input: &[u8]| { + self_state.process_block(input) + }); + match self.length_bits { + (hi, low) => { + write_u64_be(self.buffer.next(8), hi); + write_u64_be(self.buffer.next(8), low); + }, + } + self_state.process_block(self.buffer.full_buffer()); + } +} + + +/// The SHA-512 hash algorithm with the SHA-512 initial hash value. +#[derive(Copy, Clone)] +pub struct Sha512 { + engine: Engine512, +} + +impl Digest for Sha512 { + type R = U64; + type B = BlockSize; + + fn new() -> Sha512 { Sha512 { engine: Engine512::new(&H512) } } + + fn input(&mut self, msg: &[u8]) { self.engine.input(msg); } + + fn result(mut self) -> GenericArray { + self.engine.finish(); + + let mut out = GenericArray::new(); + write_u64v_be(&mut out, &self.engine.state.h[..]); + out + } +} + + + +/// The SHA-512 hash algorithm with the SHA-384 initial hash value. The result +/// is truncated to 384 bits. +#[derive(Copy, Clone)] +pub struct Sha384 { + engine: Engine512, +} + +impl Digest for Sha384 { + type R = U48; + type B = BlockSize; + + fn new() -> Sha384 { Sha384 { engine: Engine512::new(&H384) } } + + fn input(&mut self, d: &[u8]) { self.engine.input(d); } + + fn result(mut self) -> GenericArray { + self.engine.finish(); + + let mut out = GenericArray::new(); + write_u64v_be(&mut out, &self.engine.state.h[..6]); + out + } +} + + +/// The SHA-512 hash algorithm with the SHA-512/256 initial hash value. The +/// result is truncated to 256 bits. +#[derive(Clone, Copy)] +pub struct Sha512Trunc256 { + engine: Engine512, +} + +impl Digest for Sha512Trunc256 { + type R = U32; + type B = BlockSize; + + fn new() -> Sha512Trunc256 { + Sha512Trunc256 { engine: Engine512::new(&H512_TRUNC_256) } + } + + fn input(&mut self, d: &[u8]) { self.engine.input(d); } + + fn result(mut self) -> GenericArray { + self.engine.finish(); + + let mut out = GenericArray::new(); + write_u64v_be(&mut out, &self.engine.state.h[..4]); + out + } +} + + +/// The SHA-512 hash algorithm with the SHA-512/224 initial hash value. +/// The result is truncated to 224 bits. +#[derive(Clone, Copy)] +pub struct Sha512Trunc224 { + engine: Engine512, +} + +impl Digest for Sha512Trunc224 { + type R = U28; + type B = BlockSize; + + fn new() -> Sha512Trunc224 { + Sha512Trunc224 { engine: Engine512::new(&H512_TRUNC_224) } + } + + fn input(&mut self, d: &[u8]) { self.engine.input(d); } + + fn result(mut self) -> GenericArray { + self.engine.finish(); + + let mut out = GenericArray::new(); + write_u64v_be(&mut out[..24], &self.engine.state.h[..3]); + write_u32_be(&mut out[24..28], (self.engine.state.h[3] >> 32) as u32); + out + } +} diff --git a/sha2/src/sha512_utils.rs b/sha2/src/sha512_utils.rs new file mode 100644 index 00000000..69543cd2 --- /dev/null +++ b/sha2/src/sha512_utils.rs @@ -0,0 +1,285 @@ +use simd::u64x2; +use consts::{BLOCK_LEN, K64X2}; +use byte_tools::{read_u64v_be}; + +/// Not an intrinsic, but works like an unaligned load. +#[inline] +fn sha512load(v0: u64x2, v1: u64x2) -> u64x2 { + u64x2(v1.1, v0.0) +} + +/// Performs 2 rounds of the SHA-512 message schedule update. +pub fn sha512_schedule_x2(v0: u64x2, v1: u64x2, v4to5: u64x2, v7: u64x2) + -> u64x2 { + + // sigma 0 + fn sigma0(x: u64) -> u64 { + ((x << 63) | (x >> 1)) ^ ((x << 56) | (x >> 8)) ^ (x >> 7) + } + + // sigma 1 + fn sigma1(x: u64) -> u64 { + ((x << 45) | (x >> 19)) ^ ((x << 3) | (x >> 61)) ^ (x >> 6) + } + + let u64x2(w1, w0) = v0; + let u64x2(_, w2) = v1; + let u64x2(w10, w9) = v4to5; + let u64x2(w15, w14) = v7; + + let w16 = + sigma1(w14).wrapping_add(w9).wrapping_add(sigma0(w1)).wrapping_add(w0); + let w17 = + sigma1(w15).wrapping_add(w10).wrapping_add(sigma0(w2)).wrapping_add(w1); + + u64x2(w17, w16) +} + +/// Performs one round of the SHA-512 message block digest. +pub fn sha512_digest_round(ae: u64x2, bf: u64x2, cg: u64x2, dh: u64x2, + wk0: u64) + -> u64x2 { + + macro_rules! big_sigma0 { + ($a:expr) => (($a.rotate_right(28) ^ $a.rotate_right(34) ^ $a.rotate_right(39))) + } + macro_rules! big_sigma1 { + ($a:expr) => (($a.rotate_right(14) ^ $a.rotate_right(18) ^ $a.rotate_right(41))) + } + macro_rules! bool3ary_202 { + ($a:expr, $b:expr, $c:expr) => (($c ^ ($a & ($b ^ $c)))) + } // Choose, MD5F, SHA1C + macro_rules! bool3ary_232 { + ($a:expr, $b:expr, $c:expr) => (($a & $b) ^ ($a & $c) ^ ($b & $c)) + } // Majority, SHA1M + + let u64x2(a0, e0) = ae; + let u64x2(b0, f0) = bf; + let u64x2(c0, g0) = cg; + let u64x2(d0, h0) = dh; + + // a round + let x0 = big_sigma1!(e0) + .wrapping_add(bool3ary_202!(e0, f0, g0)) + .wrapping_add(wk0) + .wrapping_add(h0); + let y0 = big_sigma0!(a0).wrapping_add(bool3ary_232!(a0, b0, c0)); + let (a1, _, _, _, e1, _, _, _) = + (x0.wrapping_add(y0), a0, b0, c0, x0.wrapping_add(d0), e0, f0, g0); + + u64x2(a1, e1) +} + +/// Process a block with the SHA-512 algorithm. +pub fn sha512_digest_block_u64(state: &mut [u64; 8], block: &[u64; 16]) { + let k = &K64X2; + + macro_rules! schedule { + ($v0:expr, $v1:expr, $v4:expr, $v5:expr, $v7:expr) => ( + sha512_schedule_x2($v0, $v1, sha512load($v4, $v5), $v7) + ) + } + + macro_rules! rounds4 { + ($ae:ident, $bf:ident, $cg:ident, $dh:ident, $wk0:expr, $wk1:expr) => { + { + let u64x2(u, t) = $wk0; + let u64x2(w, v) = $wk1; + + $dh = sha512_digest_round($ae, $bf, $cg, $dh, t); + $cg = sha512_digest_round($dh, $ae, $bf, $cg, u); + $bf = sha512_digest_round($cg, $dh, $ae, $bf, v); + $ae = sha512_digest_round($bf, $cg, $dh, $ae, w); + } + } + } + + let mut ae = u64x2(state[0], state[4]); + let mut bf = u64x2(state[1], state[5]); + let mut cg = u64x2(state[2], state[6]); + let mut dh = u64x2(state[3], state[7]); + + // Rounds 0..20 + let (mut w1, mut w0) = (u64x2(block[3], block[2]), + u64x2(block[1], block[0])); + rounds4!(ae, bf, cg, dh, k[0] + w0, k[1] + w1); + let (mut w3, mut w2) = (u64x2(block[7], block[6]), + u64x2(block[5], block[4])); + rounds4!(ae, bf, cg, dh, k[2] + w2, k[3] + w3); + let (mut w5, mut w4) = (u64x2(block[11], block[10]), + u64x2(block[9], block[8])); + rounds4!(ae, bf, cg, dh, k[4] + w4, k[5] + w5); + let (mut w7, mut w6) = (u64x2(block[15], block[14]), + u64x2(block[13], block[12])); + rounds4!(ae, bf, cg, dh, k[6] + w6, k[7] + w7); + let mut w8 = schedule!(w0, w1, w4, w5, w7); + let mut w9 = schedule!(w1, w2, w5, w6, w8); + rounds4!(ae, bf, cg, dh, k[8] + w8, k[9] + w9); + + // Rounds 20..40 + w0 = schedule!(w2, w3, w6, w7, w9); + w1 = schedule!(w3, w4, w7, w8, w0); + rounds4!(ae, bf, cg, dh, k[10] + w0, k[11] + w1); + w2 = schedule!(w4, w5, w8, w9, w1); + w3 = schedule!(w5, w6, w9, w0, w2); + rounds4!(ae, bf, cg, dh, k[12] + w2, k[13] + w3); + w4 = schedule!(w6, w7, w0, w1, w3); + w5 = schedule!(w7, w8, w1, w2, w4); + rounds4!(ae, bf, cg, dh, k[14] + w4, k[15] + w5); + w6 = schedule!(w8, w9, w2, w3, w5); + w7 = schedule!(w9, w0, w3, w4, w6); + rounds4!(ae, bf, cg, dh, k[16] + w6, k[17] + w7); + w8 = schedule!(w0, w1, w4, w5, w7); + w9 = schedule!(w1, w2, w5, w6, w8); + rounds4!(ae, bf, cg, dh, k[18] + w8, k[19] + w9); + + // Rounds 40..60 + w0 = schedule!(w2, w3, w6, w7, w9); + w1 = schedule!(w3, w4, w7, w8, w0); + rounds4!(ae, bf, cg, dh, k[20] + w0, k[21] + w1); + w2 = schedule!(w4, w5, w8, w9, w1); + w3 = schedule!(w5, w6, w9, w0, w2); + rounds4!(ae, bf, cg, dh, k[22] + w2, k[23] + w3); + w4 = schedule!(w6, w7, w0, w1, w3); + w5 = schedule!(w7, w8, w1, w2, w4); + rounds4!(ae, bf, cg, dh, k[24] + w4, k[25] + w5); + w6 = schedule!(w8, w9, w2, w3, w5); + w7 = schedule!(w9, w0, w3, w4, w6); + rounds4!(ae, bf, cg, dh, k[26] + w6, k[27] + w7); + w8 = schedule!(w0, w1, w4, w5, w7); + w9 = schedule!(w1, w2, w5, w6, w8); + rounds4!(ae, bf, cg, dh, k[28] + w8, k[29] + w9); + + // Rounds 60..80 + w0 = schedule!(w2, w3, w6, w7, w9); + w1 = schedule!(w3, w4, w7, w8, w0); + rounds4!(ae, bf, cg, dh, k[30] + w0, k[31] + w1); + w2 = schedule!(w4, w5, w8, w9, w1); + w3 = schedule!(w5, w6, w9, w0, w2); + rounds4!(ae, bf, cg, dh, k[32] + w2, k[33] + w3); + w4 = schedule!(w6, w7, w0, w1, w3); + w5 = schedule!(w7, w8, w1, w2, w4); + rounds4!(ae, bf, cg, dh, k[34] + w4, k[35] + w5); + w6 = schedule!(w8, w9, w2, w3, w5); + w7 = schedule!(w9, w0, w3, w4, w6); + rounds4!(ae, bf, cg, dh, k[36] + w6, k[37] + w7); + w8 = schedule!(w0, w1, w4, w5, w7); + w9 = schedule!(w1, w2, w5, w6, w8); + rounds4!(ae, bf, cg, dh, k[38] + w8, k[39] + w9); + + let u64x2(a, e) = ae; + let u64x2(b, f) = bf; + let u64x2(c, g) = cg; + let u64x2(d, h) = dh; + + state[0] = state[0].wrapping_add(a); + state[1] = state[1].wrapping_add(b); + state[2] = state[2].wrapping_add(c); + state[3] = state[3].wrapping_add(d); + state[4] = state[4].wrapping_add(e); + state[5] = state[5].wrapping_add(f); + state[6] = state[6].wrapping_add(g); + state[7] = state[7].wrapping_add(h); +} + +/// Process a block with the SHA-512 algorithm. (See more...) +/// +/// Internally, this uses functions that resemble the new Intel SHA +/// instruction set extensions, but since no architecture seems to +/// have any designs, these may not be the final designs if and/or when +/// there are instruction set extensions with SHA-512. So to summarize: +/// SHA-1 and SHA-256 are being implemented in hardware soon (at the time +/// of this writing), but it doesn't look like SHA-512 will be hardware +/// accelerated any time soon. +/// +/// # Implementation +/// +/// These functions fall into two categories: message schedule calculation, and +/// the message block 64-round digest calculation. The schedule-related +/// functions allow 4 rounds to be calculated as: +/// +/// ```ignore +/// use std::simd::u64x2; +/// use self::crypto::sha2::{ +/// sha512msg, +/// sha512load +/// }; +/// +/// fn schedule4_data(work: &mut [u64x2], w: &[u64]) { +/// +/// // this is to illustrate the data order +/// work[0] = u64x2(w[1], w[0]); +/// work[1] = u64x2(w[3], w[2]); +/// work[2] = u64x2(w[5], w[4]); +/// work[3] = u64x2(w[7], w[6]); +/// work[4] = u64x2(w[9], w[8]); +/// work[5] = u64x2(w[11], w[10]); +/// work[6] = u64x2(w[13], w[12]); +/// work[7] = u64x2(w[15], w[14]); +/// } +/// +/// fn schedule4_work(work: &mut [u64x2], t: usize) { +/// +/// // this is the core expression +/// work[t] = sha512msg(work[t - 8], +/// work[t - 7], +/// sha512load(work[t - 4], work[t - 3]), +/// work[t - 1]); +/// } +/// ``` +/// +/// instead of 4 rounds of: +/// +/// ```ignore +/// fn schedule_work(w: &mut [u64], t: usize) { +/// w[t] = sigma1!(w[t - 2]) + w[t - 7] + sigma0!(w[t - 15]) + w[t - 16]; +/// } +/// ``` +/// +/// and the digest-related functions allow 4 rounds to be calculated as: +/// +/// ```ignore +/// use std::simd::u64x2; +/// use self::crypto::sha2::{K64X2, sha512rnd}; +/// +/// fn rounds4(state: &mut [u64; 8], work: &mut [u64x2], t: usize) { +/// let [a, b, c, d, e, f, g, h]: [u64; 8] = *state; +/// +/// // this is to illustrate the data order +/// let mut ae = u64x2(a, e); +/// let mut bf = u64x2(b, f); +/// let mut cg = u64x2(c, g); +/// let mut dh = u64x2(d, h); +/// let u64x2(w1, w0) = K64X2[2*t] + work[2*t]; +/// let u64x2(w3, w2) = K64X2[2*t + 1] + work[2*t + 1]; +/// +/// // this is the core expression +/// dh = sha512rnd(ae, bf, cg, dh, w0); +/// cg = sha512rnd(dh, ae, bf, cg, w1); +/// bf = sha512rnd(cg, dh, ae, bf, w2); +/// ae = sha512rnd(bf, cg, dh, ae, w3); +/// +/// *state = [ae.0, bf.0, cg.0, dh.0, +/// ae.1, bf.1, cg.1, dh.1]; +/// } +/// ``` +/// +/// instead of 4 rounds of: +/// +/// ```ignore +/// fn round(state: &mut [u64; 8], w: &mut [u64], t: usize) { +/// let [a, b, c, mut d, e, f, g, mut h]: [u64; 8] = *state; +/// +/// h += big_sigma1!(e) + choose!(e, f, g) + K64[t] + w[t]; d += h; +/// h += big_sigma0!(a) + majority!(a, b, c); +/// +/// *state = [h, a, b, c, d, e, f, g]; +/// } +/// ``` +/// +pub fn sha512_digest_block(state: &mut [u64; 8], block: &[u8]) { + assert_eq!(block.len(), BLOCK_LEN * 8); + let mut block2 = [0u64; BLOCK_LEN]; + read_u64v_be(&mut block2[..], block); + sha512_digest_block_u64(state, &block2); +} \ No newline at end of file diff --git a/sha2/tests/data/sha224/test1.input.bin b/sha2/tests/data/sha224/test1.input.bin new file mode 100644 index 00000000..e69de29b diff --git a/sha2/tests/data/sha224/test1.output.bin b/sha2/tests/data/sha224/test1.output.bin new file mode 100644 index 00000000..ce2f9848 --- /dev/null +++ b/sha2/tests/data/sha224/test1.output.bin @@ -0,0 +1 @@ +J*:+Ga(4*ų/ \ No newline at end of file diff --git a/sha2/tests/data/sha224/test2.input.bin b/sha2/tests/data/sha224/test2.input.bin new file mode 100644 index 00000000..ff3bb639 --- /dev/null +++ b/sha2/tests/data/sha224/test2.input.bin @@ -0,0 +1 @@ +The quick brown fox jumps over the lazy dog \ No newline at end of file diff --git a/sha2/tests/data/sha224/test2.output.bin b/sha2/tests/data/sha224/test2.output.bin new file mode 100644 index 00000000..19e6a387 --- /dev/null +++ b/sha2/tests/data/sha224/test2.output.bin @@ -0,0 +1 @@ +sר+٠2]$0X}Ë% \ No newline at end of file diff --git a/sha2/tests/data/sha224/test3.input.bin b/sha2/tests/data/sha224/test3.input.bin new file mode 100644 index 00000000..8fe2a4b5 --- /dev/null +++ b/sha2/tests/data/sha224/test3.input.bin @@ -0,0 +1 @@ +The quick brown fox jumps over the lazy dog. \ No newline at end of file diff --git a/sha2/tests/data/sha224/test3.output.bin b/sha2/tests/data/sha224/test3.output.bin new file mode 100644 index 00000000..ac8109d4 --- /dev/null +++ b/sha2/tests/data/sha224/test3.output.bin @@ -0,0 +1,2 @@ +anQ +\he>=KL \ No newline at end of file diff --git a/sha2/tests/data/sha256/one_million_a.output.bin b/sha2/tests/data/sha256/one_million_a.output.bin new file mode 100644 index 00000000..59757633 --- /dev/null +++ b/sha2/tests/data/sha256/one_million_a.output.bin @@ -0,0 +1 @@ +n\>gH m9, \ No newline at end of file diff --git a/sha2/tests/data/sha256/test1.input.bin b/sha2/tests/data/sha256/test1.input.bin new file mode 100644 index 00000000..e69de29b diff --git a/sha2/tests/data/sha256/test1.output.bin b/sha2/tests/data/sha256/test1.output.bin new file mode 100644 index 00000000..4811487e --- /dev/null +++ b/sha2/tests/data/sha256/test1.output.bin @@ -0,0 +1 @@ +Bșo$'AdLxRU \ No newline at end of file diff --git a/sha2/tests/data/sha256/test2.input.bin b/sha2/tests/data/sha256/test2.input.bin new file mode 100644 index 00000000..ff3bb639 --- /dev/null +++ b/sha2/tests/data/sha256/test2.input.bin @@ -0,0 +1 @@ +The quick brown fox jumps over the lazy dog \ No newline at end of file diff --git a/sha2/tests/data/sha256/test2.output.bin b/sha2/tests/data/sha256/test2.output.bin new file mode 100644 index 00000000..fd9179b0 --- /dev/null +++ b/sha2/tests/data/sha256/test2.output.bin @@ -0,0 +1 @@ +ר׀iʚ.OVQm \ No newline at end of file diff --git a/sha2/tests/data/sha512/test2.input.bin b/sha2/tests/data/sha512/test2.input.bin new file mode 100644 index 00000000..ff3bb639 --- /dev/null +++ b/sha2/tests/data/sha512/test2.input.bin @@ -0,0 +1 @@ +The quick brown fox jumps over the lazy dog \ No newline at end of file diff --git a/sha2/tests/data/sha512/test2.output.bin b/sha2/tests/data/sha512/test2.output.bin new file mode 100644 index 00000000..32032f84 --- /dev/null +++ b/sha2/tests/data/sha512/test2.output.bin @@ -0,0 +1 @@ +GXojs?C^iQ!׈ ׅCkd.RT9T};^ x!#?S=T \ No newline at end of file diff --git a/sha2/tests/data/sha512/test3.input.bin b/sha2/tests/data/sha512/test3.input.bin new file mode 100644 index 00000000..8fe2a4b5 --- /dev/null +++ b/sha2/tests/data/sha512/test3.input.bin @@ -0,0 +1 @@ +The quick brown fox jumps over the lazy dog. \ No newline at end of file diff --git a/sha2/tests/data/sha512/test3.output.bin b/sha2/tests/data/sha512/test3.output.bin new file mode 100644 index 00000000..382de6e6 --- /dev/null +++ b/sha2/tests/data/sha512/test3.output.bin @@ -0,0 +1 @@ +E FzTvM w{+ӧa~EcԁÚ \ No newline at end of file diff --git a/sha2/tests/data/sha512_224/test1.input.bin b/sha2/tests/data/sha512_224/test1.input.bin new file mode 100644 index 00000000..e69de29b diff --git a/sha2/tests/data/sha512_224/test1.output.bin b/sha2/tests/data/sha512_224/test1.output.bin new file mode 100644 index 00000000..df162d4c --- /dev/null +++ b/sha2/tests/data/sha512_224/test1.output.bin @@ -0,0 +1 @@ +no% Ӭʻ֠\3; \ No newline at end of file diff --git a/sha2/tests/data/sha512_224/test2.input.bin b/sha2/tests/data/sha512_224/test2.input.bin new file mode 100644 index 00000000..ff3bb639 --- /dev/null +++ b/sha2/tests/data/sha512_224/test2.input.bin @@ -0,0 +1 @@ +The quick brown fox jumps over the lazy dog \ No newline at end of file diff --git a/sha2/tests/data/sha512_224/test2.output.bin b/sha2/tests/data/sha512_224/test2.output.bin new file mode 100644 index 00000000..d88bfcc0 Binary files /dev/null and b/sha2/tests/data/sha512_224/test2.output.bin differ diff --git a/sha2/tests/data/sha512_224/test3.input.bin b/sha2/tests/data/sha512_224/test3.input.bin new file mode 100644 index 00000000..8fe2a4b5 --- /dev/null +++ b/sha2/tests/data/sha512_224/test3.input.bin @@ -0,0 +1 @@ +The quick brown fox jumps over the lazy dog. \ No newline at end of file diff --git a/sha2/tests/data/sha512_224/test3.output.bin b/sha2/tests/data/sha512_224/test3.output.bin new file mode 100644 index 00000000..4bf3fd1f --- /dev/null +++ b/sha2/tests/data/sha512_224/test3.output.bin @@ -0,0 +1 @@ +mjyI^iu.Ƌk (&tests); +} + +#[test] +fn sha2_256_main() { + let tests = new_tests!("sha256/test1", "sha256/test2", "sha256/test3"); + main_test::(&tests); +} + +#[test] +fn sha2_384_main() { + let tests = new_tests!("sha384/test1", "sha384/test2", "sha384/test3"); + main_test::(&tests); +} + +#[test] +fn sha2_512_main() { + let tests = new_tests!("sha512/test1", "sha512/test2", "sha512/test3"); + main_test::(&tests); +} + +#[test] +fn sha2_512_trunc_256_main() { + let tests = new_tests!("sha512_256/test1", "sha512_256/test2", "sha512_256/test3"); + main_test::(&tests); +} + +#[test] +fn sha2_512_trunc_224_main() { + let tests = new_tests!("sha512_224/test1", "sha512_224/test2", "sha512_224/test3"); + main_test::(&tests); +} + +#[test] +fn sha2_256_1million_a() { + let output = include_bytes!("data/sha256/one_million_a.output.bin"); + one_million_a::(output); +} + +#[test] +fn sha2_512_1million_a() { + let output = include_bytes!("data/sha512/one_million_a.output.bin"); + one_million_a::(output); +} \ No newline at end of file diff --git a/sha3/Cargo.toml b/sha3/Cargo.toml new file mode 100644 index 00000000..5722571f --- /dev/null +++ b/sha3/Cargo.toml @@ -0,0 +1,17 @@ +[package] +name = "sha3" +version = "0.2.0" +authors = ["The Rust-Crypto Project Developers"] +license = "MIT/Apache-2.0" +description = "SHA-3 (Keccak) hash function" +documentation = "https://docs.rs/sha3" +repository = "https://github.com/RustCrypto/hashes" +keywords = ["crypto", "sha3", "keccak", "hash", "digest"] + +[dependencies] +byte-tools = "0.1" +digest = "0.2" +generic-array = "0.5" + +[dev-dependencies] +crypto-tests = "0.1" diff --git a/sha3/LICENSE-APACHE b/sha3/LICENSE-APACHE new file mode 100644 index 00000000..78173fa2 --- /dev/null +++ b/sha3/LICENSE-APACHE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/sha3/LICENSE-MIT b/sha3/LICENSE-MIT new file mode 100644 index 00000000..145ea9ce --- /dev/null +++ b/sha3/LICENSE-MIT @@ -0,0 +1,28 @@ +Copyright (c) 2006-2009 Graydon Hoare +Copyright (c) 2009-2013 Mozilla Foundation +Copyright (c) 2014 Sébastien Martini +Copyright (c) 2016 Artyom Pavlov + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. diff --git a/sha3/benches/lib.rs b/sha3/benches/lib.rs new file mode 100644 index 00000000..29d5d3d3 --- /dev/null +++ b/sha3/benches/lib.rs @@ -0,0 +1,67 @@ +#![no_std] +#![feature(test)] +extern crate test; +extern crate sha3; + +use sha3::{Digest, Sha3_256, Sha3_512}; +use test::Bencher; + +#[bench] +pub fn sha3_256_10(bh: &mut Bencher) { + let mut hasher = Sha3_256::new(); + let bytes = [1u8; 10]; + bh.iter(|| { + hasher.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn sha3_256_1k(bh: &mut Bencher) { + let mut hasher = Sha3_256::new(); + let bytes = [1u8; 1024]; + bh.iter(|| { + hasher.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn sha3_256_64k(bh: &mut Bencher) { + let mut hasher = Sha3_256::new(); + let bytes = [1u8; 65536]; + bh.iter(|| { + hasher.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn sha3_512_10(bh: &mut Bencher) { + let mut hasher = Sha3_512::new(); + let bytes = [1u8; 10]; + bh.iter(|| { + hasher.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn sha3_512_1k(bh: &mut Bencher) { + let mut hasher = Sha3_512::new(); + let bytes = [1u8; 1024]; + bh.iter(|| { + hasher.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn sha3_512_64k(bh: &mut Bencher) { + let mut hasher = Sha3_512::new(); + let bytes = [1u8; 65536]; + bh.iter(|| { + hasher.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} diff --git a/sha3/src/keccak.rs b/sha3/src/keccak.rs new file mode 100644 index 00000000..b4348f63 --- /dev/null +++ b/sha3/src/keccak.rs @@ -0,0 +1,85 @@ +use byte_tools::{write_u64v_le, read_u64v_le}; + +pub const B: usize = 200; +const NROUNDS: usize = 24; +const RC: [u64; NROUNDS] = [0x0000000000000001, + 0x0000000000008082, + 0x800000000000808a, + 0x8000000080008000, + 0x000000000000808b, + 0x0000000080000001, + 0x8000000080008081, + 0x8000000000008009, + 0x000000000000008a, + 0x0000000000000088, + 0x0000000080008009, + 0x000000008000000a, + 0x000000008000808b, + 0x800000000000008b, + 0x8000000000008089, + 0x8000000000008003, + 0x8000000000008002, + 0x8000000000000080, + 0x000000000000800a, + 0x800000008000000a, + 0x8000000080008081, + 0x8000000000008080, + 0x0000000080000001, + 0x8000000080008008]; +const ROTC: [usize; 24] = [1, 3, 6, 10, 15, 21, 28, 36, 45, 55, 2, 14, 27, 41, + 56, 8, 25, 43, 62, 18, 39, 61, 20, 44]; +const PIL: [usize; 24] = [10, 7, 11, 17, 18, 3, 5, 16, 8, 21, 24, 4, 15, 23, + 19, 13, 12, 2, 20, 14, 22, 9, 6, 1]; +const M5: [usize; 10] = [0, 1, 2, 3, 4, 0, 1, 2, 3, 4]; + +#[inline] +fn rotl64(v: u64, n: usize) -> u64 { + ((v << (n % 64)) & 0xffffffffffffffff) ^ (v >> (64 - (n % 64))) +} + +// Code based on Keccak-compact64.c from ref implementation. +pub fn f(state: &mut [u8]) { + assert!(state.len() == B); + + let mut s: [u64; 25] = [0; 25]; + let mut t: [u64; 1] = [0; 1]; + let mut c: [u64; 5] = [0; 5]; + + read_u64v_le(&mut s, state); + + for rc in &RC { + // Theta + for x in 0..5 { + c[x] = s[x] ^ s[5 + x] ^ s[10 + x] ^ s[15 + x] ^ s[20 + x]; + } + for x in 0..5 { + t[0] = c[M5[x + 4]] ^ rotl64(c[M5[x + 1]], 1); + for y in 0..5 { + s[y * 5 + x] ^= t[0]; + } + } + + // Rho Pi + t[0] = s[1]; + for x in 0..24 { + c[0] = s[PIL[x]]; + s[PIL[x]] = rotl64(t[0], ROTC[x]); + t[0] = c[0]; + } + + // Chi + for y in 0..5 { + for x in 0..5 { + c[x] = s[y * 5 + x]; + } + for x in 0..5 { + s[y * 5 + x] = c[x] ^ (!c[M5[x + 1]] & c[M5[x + 2]]); + } + } + + // Iota + s[0] = s[0] ^ rc; + } + + write_u64v_le(state, &s); +} diff --git a/sha3/src/lib.rs b/sha3/src/lib.rs new file mode 100644 index 00000000..2d0ad98c --- /dev/null +++ b/sha3/src/lib.rs @@ -0,0 +1,220 @@ +//! An implementation of the SHA-3 cryptographic hash algorithms. +//! +//! There are 6 standard algorithms specified in the SHA-3 standard: +//! +//! * `SHA3-224` +//! * `SHA3-256` +//! * `SHA3-384` +//! * `SHA3-512` +//! * `SHAKE128`, an extendable output function (XOF) +//! * `SHAKE256`, an extendable output function (XOF) +//! * `Keccak224`, `Keccak256`, `Keccak384`, `Keccak512` (NIST submission +//! without padding changes) +//! +//! # Usage +//! +//! An example of using `SHA3-256` is: +//! +//! ```rust +//! use sha3::{Digest, Sha3_256}; +//! +//! // create a SHA3-256 object +//! let mut hasher = Sha3_256::new(); +//! +//! // write input message +//! hasher.input(b"abc"); +//! +//! // read hash digest +//! let out = hasher.result(); +//! +//! assert_eq!(out[..], [0x3a, 0x98, 0x5d, 0xa7, 0x4f, 0xe2, 0x25, 0xb2, +//! 0x04, 0x5c, 0x17, 0x2d, 0x6b, 0xd3, 0x90, 0xbd, +//! 0x85, 0x5f, 0x08, 0x6e, 0x3e, 0x9d, 0x52, 0x5b, +//! 0x46, 0xbf, 0xe2, 0x45, 0x11, 0x43, 0x15, 0x32]); +//! ``` + +#![no_std] +extern crate byte_tools; +extern crate digest; +extern crate generic_array; + +pub use digest::Digest; +use generic_array::{GenericArray, ArrayLength}; +use generic_array::typenum::{Unsigned, U0, U2, U4, U28, U32, + U48, U64, U72, U104, U136, U144, U168, U200}; +use core::cmp; +use core::marker::PhantomData; + +mod keccak; + +/// Generic SHA-3 hasher. Type arguments meaning: +/// N -- digest len, K -- rate and block size, M -- padding property +#[derive(Copy, Clone)] +pub struct Sha3, K: ArrayLength, M: ArrayLength> { + state: GenericArray, // B bytes + // Enqueued bytes in state for absorb phase + //Squeeze offset for squeeze phase + offset: usize, + digest_length: PhantomData, + rate: PhantomData, + ds_len: PhantomData, // 0 for keccak, 2 for shake, 4 for sha3 +} + +pub type Keccak224 = Sha3; +pub type Keccak256 = Sha3; +pub type Keccak384 = Sha3; +pub type Keccak512 = Sha3; + +#[allow(non_camel_case_types)] +pub type Sha3_224 = Sha3; +#[allow(non_camel_case_types)] +pub type Sha3_256 = Sha3; +#[allow(non_camel_case_types)] +pub type Sha3_384 = Sha3; +#[allow(non_camel_case_types)] +pub type Sha3_512 = Sha3; + +pub type Shake128 = Sha3; +pub type Shake256 = Sha3; + +impl Sha3 + where N: ArrayLength, K: ArrayLength, M: ArrayLength { + + fn finalize(&mut self) { + let ds_len = M::to_usize(); + + // All parameters are expected to be in bits. + fn pad_len(ds_len: usize, offset: usize, rate: usize) -> usize { + assert!(rate % 8 == 0 && offset % 8 == 0); + let r: i64 = rate as i64; + let m: i64 = (offset + ds_len) as i64; + let zeros = (((-m - 2) + 2 * r) % r) as usize; + assert!((m as usize + zeros + 2) % 8 == 0); + (ds_len as usize + zeros + 2) / 8 + } + + fn set_pad(offset: usize, buf: &mut [u8]) { + assert!(buf.len() as f32 >= ((offset + 2) as f32 / 8.0).ceil()); + let s = offset / 8; + let buflen = buf.len(); + buf[s] |= 1 << (offset % 8); + for i in (offset % 8) + 1..8 { + buf[s] &= !(1 << i); + } + for v in buf.iter_mut().skip(s + 1) { + *v = 0; + } + buf[buflen - 1] |= 0x80; + } + + let p_len = pad_len(ds_len, self.offset * 8, self.rate() * 8); + + // FIXME: check correctness + const BUF_LEN: usize = 1 << 8; + assert!(p_len < BUF_LEN); + let mut buf = [0; BUF_LEN]; + let mut buf = &mut buf[..p_len]; + + // Setting domain separator + if ds_len == 2 { + // 01... + buf[0] &= 0xfe; + buf[0] |= 0x2; + } else if ds_len == 4 { + // 1111... + buf[0] |= 0xf; + } + + set_pad(ds_len, &mut buf); + + self.input(&buf); + } + + fn rate(&self) -> usize { K::to_usize() } +} + +impl Digest for Sha3 + where L: ArrayLength, K: ArrayLength, M: ArrayLength { + type R = L; + type B = K; + + fn new() -> Sha3 { + Sha3 { + state: GenericArray::new(), + offset: 0, + + digest_length: Default::default(), + rate: Default::default(), + ds_len: Default::default(), + } + } + + fn input(&mut self, data: &[u8]) { + assert!(self.offset < K::to_usize()); + + let r = K::to_usize(); + let in_len = data.len(); + let mut in_pos: usize = 0; + + // Absorb + while in_pos < in_len { + let offset = self.offset; + let nread = cmp::min(r - offset, in_len - in_pos); + for i in 0..nread { + self.state[offset + i] ^= data[in_pos + i]; + } + in_pos += nread; + + if offset + nread != r { + self.offset += nread; + break; + } + + self.offset = 0; + keccak::f(&mut self.state); + } + } + + fn result(mut self) -> GenericArray { + self.finalize(); + + let r = K::to_usize(); + let out_len = Self::R::to_usize(); + assert!(self.offset < out_len); + assert!(self.offset < r); + + let mut out = GenericArray::new(); + let in_len = Self::R::to_usize(); + let mut in_pos: usize = 0; + + // Squeeze + while in_pos < in_len { + let offset = self.offset % r; + let mut nread = cmp::min(r - offset, in_len - in_pos); + if out_len != 0 { + nread = cmp::min(nread, out_len - self.offset); + } + + for i in 0..nread { + out[in_pos + i] = self.state[offset + i]; + } + in_pos += nread; + + if offset + nread != r { + self.offset += nread; + break; + } + + if out_len == 0 { + self.offset = 0; + } else { + self.offset += nread; + } + + keccak::f(&mut self.state); + } + + assert!(out_len != 0 && out_len == self.offset, "something left to squeeze"); + out + } +} diff --git a/sha3/tests/data/keccak_224/test1.input.bin b/sha3/tests/data/keccak_224/test1.input.bin new file mode 100644 index 00000000..e69de29b diff --git a/sha3/tests/data/keccak_224/test1.output.bin b/sha3/tests/data/keccak_224/test1.output.bin new file mode 100644 index 00000000..b46fbb3d --- /dev/null +++ b/sha3/tests/data/keccak_224/test1.output.bin @@ -0,0 +1,2 @@ +7P+7eUVU+H9 + \ No newline at end of file diff --git a/sha3/tests/data/keccak_256/test1.input.bin b/sha3/tests/data/keccak_256/test1.input.bin new file mode 100644 index 00000000..e69de29b diff --git a/sha3/tests/data/keccak_256/test1.output.bin b/sha3/tests/data/keccak_256/test1.output.bin new file mode 100644 index 00000000..b13b3c94 Binary files /dev/null and b/sha3/tests/data/keccak_256/test1.output.bin differ diff --git a/sha3/tests/data/keccak_256/test2.input.bin b/sha3/tests/data/keccak_256/test2.input.bin new file mode 100644 index 00000000..d50394ef --- /dev/null +++ b/sha3/tests/data/keccak_256/test2.input.bin @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sha3/tests/data/keccak_256/test2.output.bin b/sha3/tests/data/keccak_256/test2.output.bin new file mode 100644 index 00000000..ad3d6500 --- /dev/null +++ b/sha3/tests/data/keccak_256/test2.output.bin @@ -0,0 +1,2 @@ +m4 +VDijpTjoVKٗ \ No newline at end of file diff --git a/sha3/tests/data/keccak_256/test3.input.bin b/sha3/tests/data/keccak_256/test3.input.bin new file mode 100644 index 00000000..7b176930 --- /dev/null +++ b/sha3/tests/data/keccak_256/test3.input.bin @@ -0,0 +1,2 @@ +& +1v*kƽv_=ޞaBW7PU[L95$ \ No newline at end of file diff --git a/sha3/tests/data/keccak_256/test3.output.bin b/sha3/tests/data/keccak_256/test3.output.bin new file mode 100644 index 00000000..e5d5ea41 --- /dev/null +++ b/sha3/tests/data/keccak_256/test3.output.bin @@ -0,0 +1 @@ +WBqޮ[O+ *IW \ No newline at end of file diff --git a/sha3/tests/data/keccak_384/test1.input.bin b/sha3/tests/data/keccak_384/test1.input.bin new file mode 100644 index 00000000..e69de29b diff --git a/sha3/tests/data/keccak_384/test1.output.bin b/sha3/tests/data/keccak_384/test1.output.bin new file mode 100644 index 00000000..ae0a46ad Binary files /dev/null and b/sha3/tests/data/keccak_384/test1.output.bin differ diff --git a/sha3/tests/data/keccak_512/test1.input.bin b/sha3/tests/data/keccak_512/test1.input.bin new file mode 100644 index 00000000..e69de29b diff --git a/sha3/tests/data/keccak_512/test1.output.bin b/sha3/tests/data/keccak_512/test1.output.bin new file mode 100644 index 00000000..84f57d3a --- /dev/null +++ b/sha3/tests/data/keccak_512/test1.output.bin @@ -0,0 +1 @@ +BL<5F)fNgfjCyvFg5'i ڳ=6ph \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test1.input.bin b/sha3/tests/data/sha3_224/test1.input.bin new file mode 100644 index 00000000..e69de29b diff --git a/sha3/tests/data/sha3_224/test1.output.bin b/sha3/tests/data/sha3_224/test1.output.bin new file mode 100644 index 00000000..91699d5e --- /dev/null +++ b/sha3/tests/data/sha3_224/test1.output.bin @@ -0,0 +1 @@ +kNB6g۷;nEOY?[Zk \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test10.input.bin b/sha3/tests/data/sha3_224/test10.input.bin new file mode 100644 index 00000000..c98711ad --- /dev/null +++ b/sha3/tests/data/sha3_224/test10.input.bin @@ -0,0 +1 @@ +fAcu \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test10.output.bin b/sha3/tests/data/sha3_224/test10.output.bin new file mode 100644 index 00000000..94e1e7ad --- /dev/null +++ b/sha3/tests/data/sha3_224/test10.output.bin @@ -0,0 +1 @@ +=d:SWbv:|o5] \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test100.input.bin b/sha3/tests/data/sha3_224/test100.input.bin new file mode 100644 index 00000000..8ffc3c37 Binary files /dev/null and b/sha3/tests/data/sha3_224/test100.input.bin differ diff --git a/sha3/tests/data/sha3_224/test100.output.bin b/sha3/tests/data/sha3_224/test100.output.bin new file mode 100644 index 00000000..fe8e7a93 --- /dev/null +++ b/sha3/tests/data/sha3_224/test100.output.bin @@ -0,0 +1 @@ ++˩b(by8z ' \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test101.input.bin b/sha3/tests/data/sha3_224/test101.input.bin new file mode 100644 index 00000000..d64c49dd --- /dev/null +++ b/sha3/tests/data/sha3_224/test101.input.bin @@ -0,0 +1 @@ +C9`֚V \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test102.input.bin b/sha3/tests/data/sha3_224/test102.input.bin new file mode 100644 index 00000000..3aa029cf Binary files /dev/null and b/sha3/tests/data/sha3_224/test102.input.bin differ diff --git a/sha3/tests/data/sha3_224/test102.output.bin b/sha3/tests/data/sha3_224/test102.output.bin new file mode 100644 index 00000000..8073a014 --- /dev/null +++ b/sha3/tests/data/sha3_224/test102.output.bin @@ -0,0 +1 @@ +dCɣJYk4.\eq \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test103.input.bin b/sha3/tests/data/sha3_224/test103.input.bin new file mode 100644 index 00000000..20e92750 Binary files /dev/null and b/sha3/tests/data/sha3_224/test103.input.bin differ diff --git a/sha3/tests/data/sha3_224/test103.output.bin b/sha3/tests/data/sha3_224/test103.output.bin new file mode 100644 index 00000000..fd46d2c6 --- /dev/null +++ b/sha3/tests/data/sha3_224/test103.output.bin @@ -0,0 +1 @@ +"Kʆߺ>r&P2@-KX5 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test104.input.bin b/sha3/tests/data/sha3_224/test104.input.bin new file mode 100644 index 00000000..69627111 --- /dev/null +++ b/sha3/tests/data/sha3_224/test104.input.bin @@ -0,0 +1 @@ +<,R<Ĥ(-Fkc$>­A0T {#Ut!tAI/Dm`@3U{v٠IYa Xڳ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test104.output.bin b/sha3/tests/data/sha3_224/test104.output.bin new file mode 100644 index 00000000..9b013c22 --- /dev/null +++ b/sha3/tests/data/sha3_224/test104.output.bin @@ -0,0 +1,3 @@ +N(}Y${ +gqS'LJX휽ԆiI6O*Q&Tr]δjjm#Q~3PV`j̯z%K|n +!iiA8H \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test105.output.bin b/sha3/tests/data/sha3_224/test105.output.bin new file mode 100644 index 00000000..c806e9d2 --- /dev/null +++ b/sha3/tests/data/sha3_224/test105.output.bin @@ -0,0 +1 @@ +\ -:v+nP>d:zA\Bcq6 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test106.input.bin b/sha3/tests/data/sha3_224/test106.input.bin new file mode 100644 index 00000000..4bee27fe --- /dev/null +++ b/sha3/tests/data/sha3_224/test106.input.bin @@ -0,0 +1,3 @@ +dm1PLy=rgcGIGSgFXj$?\P +nWڻx ++Rpڢ |өPќO>Ks#A[N}m .Nx \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test106.output.bin b/sha3/tests/data/sha3_224/test106.output.bin new file mode 100644 index 00000000..6d76bdbc --- /dev/null +++ b/sha3/tests/data/sha3_224/test106.output.bin @@ -0,0 +1 @@ +6c‚O 2fGEN1ff` \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test107.input.bin b/sha3/tests/data/sha3_224/test107.input.bin new file mode 100644 index 00000000..69b78d43 Binary files /dev/null and b/sha3/tests/data/sha3_224/test107.input.bin differ diff --git a/sha3/tests/data/sha3_224/test107.output.bin b/sha3/tests/data/sha3_224/test107.output.bin new file mode 100644 index 00000000..c58caa83 --- /dev/null +++ b/sha3/tests/data/sha3_224/test107.output.bin @@ -0,0 +1 @@ +YK5~c!H}|~N \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test108.input.bin b/sha3/tests/data/sha3_224/test108.input.bin new file mode 100644 index 00000000..7f3ebdde Binary files /dev/null and b/sha3/tests/data/sha3_224/test108.input.bin differ diff --git a/sha3/tests/data/sha3_224/test108.output.bin b/sha3/tests/data/sha3_224/test108.output.bin new file mode 100644 index 00000000..65f57a15 --- /dev/null +++ b/sha3/tests/data/sha3_224/test108.output.bin @@ -0,0 +1 @@ +$ ό0ܾftS; ʷ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test109.input.bin b/sha3/tests/data/sha3_224/test109.input.bin new file mode 100644 index 00000000..27b98aa5 --- /dev/null +++ b/sha3/tests/data/sha3_224/test109.input.bin @@ -0,0 +1,2 @@ +O!1*8 ٫o<90gD@TW%bfHRtsy +C<`UQA%=v)~Ǡ ).!tG0A \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test109.output.bin b/sha3/tests/data/sha3_224/test109.output.bin new file mode 100644 index 00000000..a055ab6c --- /dev/null +++ b/sha3/tests/data/sha3_224/test109.output.bin @@ -0,0 +1 @@ + ҵp:vSVQ7[˹s \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test11.input.bin b/sha3/tests/data/sha3_224/test11.input.bin new file mode 100644 index 00000000..f41e1b9a --- /dev/null +++ b/sha3/tests/data/sha3_224/test11.input.bin @@ -0,0 +1 @@ +B"'a;oS \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test11.output.bin b/sha3/tests/data/sha3_224/test11.output.bin new file mode 100644 index 00000000..e254fcd5 --- /dev/null +++ b/sha3/tests/data/sha3_224/test11.output.bin @@ -0,0 +1 @@ +o¥ *.F5tV0T  \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test110.input.bin b/sha3/tests/data/sha3_224/test110.input.bin new file mode 100644 index 00000000..578ca7d1 --- /dev/null +++ b/sha3/tests/data/sha3_224/test110.input.bin @@ -0,0 +1 @@ +u8=~YQs^gb'Y / oI*{,Sa/w2e^4i])]m \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test110.output.bin b/sha3/tests/data/sha3_224/test110.output.bin new file mode 100644 index 00000000..acd23363 --- /dev/null +++ b/sha3/tests/data/sha3_224/test110.output.bin @@ -0,0 +1,2 @@ +/`c_m,;`Kp +>,%n6 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test111.input.bin b/sha3/tests/data/sha3_224/test111.input.bin new file mode 100644 index 00000000..aa83a838 --- /dev/null +++ b/sha3/tests/data/sha3_224/test111.input.bin @@ -0,0 +1 @@ +G·IHFY!P25xO,@K[j{;۠,_YeyÂq1 ,ȻS;CD^ *ףTW`unv \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test111.output.bin b/sha3/tests/data/sha3_224/test111.output.bin new file mode 100644 index 00000000..0e0d2a5f --- /dev/null +++ b/sha3/tests/data/sha3_224/test111.output.bin @@ -0,0 +1 @@ +~dNɜvc33/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test112.input.bin b/sha3/tests/data/sha3_224/test112.input.bin new file mode 100644 index 00000000..054fc217 Binary files /dev/null and b/sha3/tests/data/sha3_224/test112.input.bin differ diff --git a/sha3/tests/data/sha3_224/test112.output.bin b/sha3/tests/data/sha3_224/test112.output.bin new file mode 100644 index 00000000..fbb9a2c5 --- /dev/null +++ b/sha3/tests/data/sha3_224/test112.output.bin @@ -0,0 +1 @@ +ڊ}x4?Jޟie v1c)}Ku \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test113.input.bin b/sha3/tests/data/sha3_224/test113.input.bin new file mode 100644 index 00000000..2c446502 --- /dev/null +++ b/sha3/tests/data/sha3_224/test113.input.bin @@ -0,0 +1,2 @@ +X֩E$VgpAp@rKy͋ev|~tLZkɮLZ 2h3ɝ9R1}[]^}Z`]_\+ +#y#S2,N \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test113.output.bin b/sha3/tests/data/sha3_224/test113.output.bin new file mode 100644 index 00000000..fd268a2b --- /dev/null +++ b/sha3/tests/data/sha3_224/test113.output.bin @@ -0,0 +1 @@ +l msNN]jr5@#Tf%ꗕ30y+co J(`Yc-e'~"r_嵮 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test114.output.bin b/sha3/tests/data/sha3_224/test114.output.bin new file mode 100644 index 00000000..df788848 Binary files /dev/null and b/sha3/tests/data/sha3_224/test114.output.bin differ diff --git a/sha3/tests/data/sha3_224/test115.input.bin b/sha3/tests/data/sha3_224/test115.input.bin new file mode 100644 index 00000000..3f20aaf1 Binary files /dev/null and b/sha3/tests/data/sha3_224/test115.input.bin differ diff --git a/sha3/tests/data/sha3_224/test115.output.bin b/sha3/tests/data/sha3_224/test115.output.bin new file mode 100644 index 00000000..ddedc545 --- /dev/null +++ b/sha3/tests/data/sha3_224/test115.output.bin @@ -0,0 +1 @@ +dR{Alcgӡ.Y荜Q \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test116.input.bin b/sha3/tests/data/sha3_224/test116.input.bin new file mode 100644 index 00000000..a6fd6d89 --- /dev/null +++ b/sha3/tests/data/sha3_224/test116.input.bin @@ -0,0 +1 @@ +\hL4c򒑿&./B*ݜ3/=|41 m_HW9OG";1jnXgZUIÍv0aʫi( 9- \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test116.output.bin b/sha3/tests/data/sha3_224/test116.output.bin new file mode 100644 index 00000000..c81719a3 --- /dev/null +++ b/sha3/tests/data/sha3_224/test116.output.bin @@ -0,0 +1 @@ +)IV 2SHro1&GK^I \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test117.input.bin b/sha3/tests/data/sha3_224/test117.input.bin new file mode 100644 index 00000000..2784049e --- /dev/null +++ b/sha3/tests/data/sha3_224/test117.input.bin @@ -0,0 +1 @@ +.ooeG) ?)׬o`z2C>#ul\.*L_cbdPXeq@Jm+ODuT4i4 Za]@Wۙ1BbEtE \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test117.output.bin b/sha3/tests/data/sha3_224/test117.output.bin new file mode 100644 index 00000000..00eb1fd1 --- /dev/null +++ b/sha3/tests/data/sha3_224/test117.output.bin @@ -0,0 +1,2 @@ +#Dw +㳜FaI'ճ) \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test118.input.bin b/sha3/tests/data/sha3_224/test118.input.bin new file mode 100644 index 00000000..2077f3da --- /dev/null +++ b/sha3/tests/data/sha3_224/test118.input.bin @@ -0,0 +1 @@ +ڱG lB1uV(RBj ڲCr dhkǶzSLBc슟*qc"Jabsϣ0"${BEc`0(ãg([iiD~!b Skމ%qf$k!)= W- 5]% \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test122.output.bin b/sha3/tests/data/sha3_224/test122.output.bin new file mode 100644 index 00000000..5b306e07 --- /dev/null +++ b/sha3/tests/data/sha3_224/test122.output.bin @@ -0,0 +1 @@ +uu_FJul7^Flp \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test123.input.bin b/sha3/tests/data/sha3_224/test123.input.bin new file mode 100644 index 00000000..b010172a --- /dev/null +++ b/sha3/tests/data/sha3_224/test123.input.bin @@ -0,0 +1 @@ +eoĸ |hu Nj_s$Gx%'F3YtnJW|RLRG#y\UDlΐlwJŹL"Vu]˖:KNY| y@ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test123.output.bin b/sha3/tests/data/sha3_224/test123.output.bin new file mode 100644 index 00000000..7eb75a17 --- /dev/null +++ b/sha3/tests/data/sha3_224/test123.output.bin @@ -0,0 +1 @@ +qƞ?d,֎&K F \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test124.input.bin b/sha3/tests/data/sha3_224/test124.input.bin new file mode 100644 index 00000000..02d4a4d3 Binary files /dev/null and b/sha3/tests/data/sha3_224/test124.input.bin differ diff --git a/sha3/tests/data/sha3_224/test124.output.bin b/sha3/tests/data/sha3_224/test124.output.bin new file mode 100644 index 00000000..bc0aef6a --- /dev/null +++ b/sha3/tests/data/sha3_224/test124.output.bin @@ -0,0 +1 @@ + e9Q @! \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test125.input.bin b/sha3/tests/data/sha3_224/test125.input.bin new file mode 100644 index 00000000..1d34f83e Binary files /dev/null and b/sha3/tests/data/sha3_224/test125.input.bin differ diff --git a/sha3/tests/data/sha3_224/test125.output.bin b/sha3/tests/data/sha3_224/test125.output.bin new file mode 100644 index 00000000..cca038d9 --- /dev/null +++ b/sha3/tests/data/sha3_224/test125.output.bin @@ -0,0 +1 @@ +״ݎMNɯ3ԹRA! \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test126.input.bin b/sha3/tests/data/sha3_224/test126.input.bin new file mode 100644 index 00000000..78a544e8 --- /dev/null +++ b/sha3/tests/data/sha3_224/test126.input.bin @@ -0,0 +1,2 @@ +E\ziDtY=*t(ghFfnQhJÃ+;K]*RJh +pWF=<_+Ƨ0WjUۉVwG&{9P?S \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test126.output.bin b/sha3/tests/data/sha3_224/test126.output.bin new file mode 100644 index 00000000..ac6f1bc6 Binary files /dev/null and b/sha3/tests/data/sha3_224/test126.output.bin differ diff --git a/sha3/tests/data/sha3_224/test127.input.bin b/sha3/tests/data/sha3_224/test127.input.bin new file mode 100644 index 00000000..71c98702 Binary files /dev/null and b/sha3/tests/data/sha3_224/test127.input.bin differ diff --git a/sha3/tests/data/sha3_224/test127.output.bin b/sha3/tests/data/sha3_224/test127.output.bin new file mode 100644 index 00000000..87626974 --- /dev/null +++ b/sha3/tests/data/sha3_224/test127.output.bin @@ -0,0 +1,2 @@ +yy‚lڅTm՝) +DOw \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test128.input.bin b/sha3/tests/data/sha3_224/test128.input.bin new file mode 100644 index 00000000..dfddbc47 --- /dev/null +++ b/sha3/tests/data/sha3_224/test128.input.bin @@ -0,0 +1,4 @@ +/ŕ nc6?uu +a31(Lkv1[FC.0 ZR;k +nb +l]e,7iJtoFӲ&ޥS9:E¥-Ue \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test128.output.bin b/sha3/tests/data/sha3_224/test128.output.bin new file mode 100644 index 00000000..70e6ac1e Binary files /dev/null and b/sha3/tests/data/sha3_224/test128.output.bin differ diff --git a/sha3/tests/data/sha3_224/test129.input.bin b/sha3/tests/data/sha3_224/test129.input.bin new file mode 100644 index 00000000..6a853339 --- /dev/null +++ b/sha3/tests/data/sha3_224/test129.input.bin @@ -0,0 +1,2 @@ ++mf^!&|m2A)6+]/h +rQu#L(cf!TV_[F;F s%mni3NV'h_ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test129.output.bin b/sha3/tests/data/sha3_224/test129.output.bin new file mode 100644 index 00000000..a7a890ff --- /dev/null +++ b/sha3/tests/data/sha3_224/test129.output.bin @@ -0,0 +1 @@ +c wZ_p@Ǿ; \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test13.input.bin b/sha3/tests/data/sha3_224/test13.input.bin new file mode 100644 index 00000000..e68fe561 --- /dev/null +++ b/sha3/tests/data/sha3_224/test13.input.bin @@ -0,0 +1 @@ +[<) \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test13.output.bin b/sha3/tests/data/sha3_224/test13.output.bin new file mode 100644 index 00000000..3a88b3f7 --- /dev/null +++ b/sha3/tests/data/sha3_224/test13.output.bin @@ -0,0 +1 @@ +T"=R{K&Bִ%y* +ʵb a \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test131.output.bin b/sha3/tests/data/sha3_224/test131.output.bin new file mode 100644 index 00000000..b599c0d0 --- /dev/null +++ b/sha3/tests/data/sha3_224/test131.output.bin @@ -0,0 +1 @@ +;䙀?Y!p]\N \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test132.input.bin b/sha3/tests/data/sha3_224/test132.input.bin new file mode 100644 index 00000000..92a71ce4 --- /dev/null +++ b/sha3/tests/data/sha3_224/test132.input.bin @@ -0,0 +1 @@ +芰S\ Lz|}T73Ð1TpnGwCBsBo_ba7za- ߫^!P`2^MUO`!i+yZw53GޟCV{^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test132.output.bin b/sha3/tests/data/sha3_224/test132.output.bin new file mode 100644 index 00000000..20adb116 --- /dev/null +++ b/sha3/tests/data/sha3_224/test132.output.bin @@ -0,0 +1 @@ +!7,-Ӻ%&0E)j2Q \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test133.input.bin b/sha3/tests/data/sha3_224/test133.input.bin new file mode 100644 index 00000000..86d9e207 Binary files /dev/null and b/sha3/tests/data/sha3_224/test133.input.bin differ diff --git a/sha3/tests/data/sha3_224/test133.output.bin b/sha3/tests/data/sha3_224/test133.output.bin new file mode 100644 index 00000000..fe890997 --- /dev/null +++ b/sha3/tests/data/sha3_224/test133.output.bin @@ -0,0 +1 @@ +yf$ͨ!M8mvcA \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test134.input.bin b/sha3/tests/data/sha3_224/test134.input.bin new file mode 100644 index 00000000..8204a5b0 --- /dev/null +++ b/sha3/tests/data/sha3_224/test134.input.bin @@ -0,0 +1 @@ +Y ǩ$%ejmAXzL>;1aEϸ=2Zb_%ڛ\l *ŋ[P{&?0T8Q #ݴЇn5S6:-閸^p6tx*~Zp8m;'tS[^Q}_{"aK=)7-8WR|ݪX \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test135.output.bin b/sha3/tests/data/sha3_224/test135.output.bin new file mode 100644 index 00000000..2bf8ce0a --- /dev/null +++ b/sha3/tests/data/sha3_224/test135.output.bin @@ -0,0 +1 @@ +lgjb(-%bk&*tҠf` \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test136.input.bin b/sha3/tests/data/sha3_224/test136.input.bin new file mode 100644 index 00000000..d1749286 --- /dev/null +++ b/sha3/tests/data/sha3_224/test136.input.bin @@ -0,0 +1 @@ +qѤVC*.M/ !G2:`@gsKqxܞ9w`!qyz4Q()]7Uyoo؉kI2|q+$-R2,t AF]v=RۘIӰ֨/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test136.output.bin b/sha3/tests/data/sha3_224/test136.output.bin new file mode 100644 index 00000000..8d43d4a2 --- /dev/null +++ b/sha3/tests/data/sha3_224/test136.output.bin @@ -0,0 +1 @@ +AO8TFe \G474#B \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test137.input.bin b/sha3/tests/data/sha3_224/test137.input.bin new file mode 100644 index 00000000..1ef8a0e9 Binary files /dev/null and b/sha3/tests/data/sha3_224/test137.input.bin differ diff --git a/sha3/tests/data/sha3_224/test137.output.bin b/sha3/tests/data/sha3_224/test137.output.bin new file mode 100644 index 00000000..cdd349fc --- /dev/null +++ b/sha3/tests/data/sha3_224/test137.output.bin @@ -0,0 +1 @@ +d׈qORrӀ^nkIl Ỏ diff --git a/sha3/tests/data/sha3_224/test138.input.bin b/sha3/tests/data/sha3_224/test138.input.bin new file mode 100644 index 00000000..5adeaf84 Binary files /dev/null and b/sha3/tests/data/sha3_224/test138.input.bin differ diff --git a/sha3/tests/data/sha3_224/test138.output.bin b/sha3/tests/data/sha3_224/test138.output.bin new file mode 100644 index 00000000..2bfb83bd --- /dev/null +++ b/sha3/tests/data/sha3_224/test138.output.bin @@ -0,0 +1 @@ +,N|S}*&fK*ץjP \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test139.input.bin b/sha3/tests/data/sha3_224/test139.input.bin new file mode 100644 index 00000000..79b46f4d --- /dev/null +++ b/sha3/tests/data/sha3_224/test139.input.bin @@ -0,0 +1 @@ +&Mp$=!Iqadp`؂a]A8V@wxnUhU2pG-ы~+~ 3lN"\;#)nO(-I_|iu },lF)ps  \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test139.output.bin b/sha3/tests/data/sha3_224/test139.output.bin new file mode 100644 index 00000000..6ac3df4b --- /dev/null +++ b/sha3/tests/data/sha3_224/test139.output.bin @@ -0,0 +1 @@ +ˀ8 ;ajڳ4~!P \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test14.input.bin b/sha3/tests/data/sha3_224/test14.input.bin new file mode 100644 index 00000000..efef93b3 --- /dev/null +++ b/sha3/tests/data/sha3_224/test14.input.bin @@ -0,0 +1 @@ +F'2(/8;F \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test14.output.bin b/sha3/tests/data/sha3_224/test14.output.bin new file mode 100644 index 00000000..33f275af Binary files /dev/null and b/sha3/tests/data/sha3_224/test14.output.bin differ diff --git a/sha3/tests/data/sha3_224/test140.input.bin b/sha3/tests/data/sha3_224/test140.input.bin new file mode 100644 index 00000000..9634578b --- /dev/null +++ b/sha3/tests/data/sha3_224/test140.input.bin @@ -0,0 +1 @@ +n$ff"k2웩O ÙA¥Й'b49bS|('sekn J78j0wHi\*v %w?Ul6-Kt,,IꎗO30e \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test140.output.bin b/sha3/tests/data/sha3_224/test140.output.bin new file mode 100644 index 00000000..34464620 --- /dev/null +++ b/sha3/tests/data/sha3_224/test140.output.bin @@ -0,0 +1 @@ + z8LjzќHVmC j \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test141.input.bin b/sha3/tests/data/sha3_224/test141.input.bin new file mode 100644 index 00000000..cf209ba1 --- /dev/null +++ b/sha3/tests/data/sha3_224/test141.input.bin @@ -0,0 +1 @@ +O q<.N<*s4@6NǵZPw;o}lEX.~#Eڵ adTVBF>4wƲU7j¡jbWp|D)nm3 [`7x8<<"3^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test141.output.bin b/sha3/tests/data/sha3_224/test141.output.bin new file mode 100644 index 00000000..f0b7908f --- /dev/null +++ b/sha3/tests/data/sha3_224/test141.output.bin @@ -0,0 +1,2 @@ +Vֶ֧.=Z`=S +03m \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test142.input.bin b/sha3/tests/data/sha3_224/test142.input.bin new file mode 100644 index 00000000..bc838d1f --- /dev/null +++ b/sha3/tests/data/sha3_224/test142.input.bin @@ -0,0 +1 @@ +!g!b>GaRNlrU)hs`zy|< %ƈPꫮFyY&\#J?46L/\tHpb$m_U*TFO- tH0C") \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test142.output.bin b/sha3/tests/data/sha3_224/test142.output.bin new file mode 100644 index 00000000..20edbdee --- /dev/null +++ b/sha3/tests/data/sha3_224/test142.output.bin @@ -0,0 +1 @@ +_rQ%FhY1$gH+'n- \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test143.input.bin b/sha3/tests/data/sha3_224/test143.input.bin new file mode 100644 index 00000000..c63256ae --- /dev/null +++ b/sha3/tests/data/sha3_224/test143.input.bin @@ -0,0 +1,2 @@ + NvG WO@vgOihM 6} q365 )zZ\At[ɻLZA\y~c8ׁjTZo +[l3fYBCh \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test143.output.bin b/sha3/tests/data/sha3_224/test143.output.bin new file mode 100644 index 00000000..3c7d4115 --- /dev/null +++ b/sha3/tests/data/sha3_224/test143.output.bin @@ -0,0 +1 @@ +b8S''̃,]5I}m^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test144.input.bin b/sha3/tests/data/sha3_224/test144.input.bin new file mode 100644 index 00000000..4eb647e3 --- /dev/null +++ b/sha3/tests/data/sha3_224/test144.input.bin @@ -0,0 +1 @@ +@<:$,l xS9ڲi8\v7B;T}6|k<x357[oơOPLri r,lgc@ay6=\ߓ?$K͍~f߯ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test144.output.bin b/sha3/tests/data/sha3_224/test144.output.bin new file mode 100644 index 00000000..ceb8b7fa --- /dev/null +++ b/sha3/tests/data/sha3_224/test144.output.bin @@ -0,0 +1 @@ +Yt2y|Y \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test145.input.bin b/sha3/tests/data/sha3_224/test145.input.bin new file mode 100644 index 00000000..70f53077 --- /dev/null +++ b/sha3/tests/data/sha3_224/test145.input.bin @@ -0,0 +1,2 @@ +}[~Em&tv81vM48c_%y/kXՓ_Yn?aѰp\S(Kar72*+ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test148.input.bin b/sha3/tests/data/sha3_224/test148.input.bin new file mode 100644 index 00000000..800598b4 --- /dev/null +++ b/sha3/tests/data/sha3_224/test148.input.bin @@ -0,0 +1 @@ +v9apEZѯx)D~kú&@Ow_W#}4s#p-pVݣmZZLh2ȿy ]_[~({C^B7KUK;j*P!S \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test148.output.bin b/sha3/tests/data/sha3_224/test148.output.bin new file mode 100644 index 00000000..dd249d99 --- /dev/null +++ b/sha3/tests/data/sha3_224/test148.output.bin @@ -0,0 +1 @@ +P;K>6J صNy \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test149.input.bin b/sha3/tests/data/sha3_224/test149.input.bin new file mode 100644 index 00000000..277902c8 --- /dev/null +++ b/sha3/tests/data/sha3_224/test149.input.bin @@ -0,0 +1,2 @@ +ea M~MX.hIY X=X^x + lHC^.٫K祫yz^[ݣAe|仴NV7N nq/Tp28cks=;oN#uɹo& \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test149.output.bin b/sha3/tests/data/sha3_224/test149.output.bin new file mode 100644 index 00000000..61486c1b --- /dev/null +++ b/sha3/tests/data/sha3_224/test149.output.bin @@ -0,0 +1 @@ +)#/Ix608"{-g%X \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test15.input.bin b/sha3/tests/data/sha3_224/test15.input.bin new file mode 100644 index 00000000..49ce179d --- /dev/null +++ b/sha3/tests/data/sha3_224/test15.input.bin @@ -0,0 +1 @@ +a]з(foWm I-9Vs \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test157.output.bin b/sha3/tests/data/sha3_224/test157.output.bin new file mode 100644 index 00000000..e9bcbf32 --- /dev/null +++ b/sha3/tests/data/sha3_224/test157.output.bin @@ -0,0 +1 @@ +ܟ$zgiv,lS0 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test158.input.bin b/sha3/tests/data/sha3_224/test158.input.bin new file mode 100644 index 00000000..5a689a41 Binary files /dev/null and b/sha3/tests/data/sha3_224/test158.input.bin differ diff --git a/sha3/tests/data/sha3_224/test158.output.bin b/sha3/tests/data/sha3_224/test158.output.bin new file mode 100644 index 00000000..aee4ea2b --- /dev/null +++ b/sha3/tests/data/sha3_224/test158.output.bin @@ -0,0 +1 @@ +Fb-I@LunG@YS \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test159.input.bin b/sha3/tests/data/sha3_224/test159.input.bin new file mode 100644 index 00000000..37bfee39 Binary files /dev/null and b/sha3/tests/data/sha3_224/test159.input.bin differ diff --git a/sha3/tests/data/sha3_224/test159.output.bin b/sha3/tests/data/sha3_224/test159.output.bin new file mode 100644 index 00000000..8e79b8f9 --- /dev/null +++ b/sha3/tests/data/sha3_224/test159.output.bin @@ -0,0 +1 @@ +Wϡ79%3Ke>llW \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test16.input.bin b/sha3/tests/data/sha3_224/test16.input.bin new file mode 100644 index 00000000..84983066 --- /dev/null +++ b/sha3/tests/data/sha3_224/test16.input.bin @@ -0,0 +1 @@ +"Ky" \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test16.output.bin b/sha3/tests/data/sha3_224/test16.output.bin new file mode 100644 index 00000000..6e8f558b --- /dev/null +++ b/sha3/tests/data/sha3_224/test16.output.bin @@ -0,0 +1 @@ +l8ӿKԵ ԰` \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test160.input.bin b/sha3/tests/data/sha3_224/test160.input.bin new file mode 100644 index 00000000..e6f39601 Binary files /dev/null and b/sha3/tests/data/sha3_224/test160.input.bin differ diff --git a/sha3/tests/data/sha3_224/test160.output.bin b/sha3/tests/data/sha3_224/test160.output.bin new file mode 100644 index 00000000..8c534cc4 --- /dev/null +++ b/sha3/tests/data/sha3_224/test160.output.bin @@ -0,0 +1 @@ +0᝝7zc^ܰ#nȂ*#ɹ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test161.input.bin b/sha3/tests/data/sha3_224/test161.input.bin new file mode 100644 index 00000000..5c9ab0c5 --- /dev/null +++ b/sha3/tests/data/sha3_224/test161.input.bin @@ -0,0 +1,3 @@ +!*|3=.7x?< sٙcʓb;&NHL:[o?0)Vv_Wv~Vu3nPȡ1 +݌A|lj_:)SU[ +7E=Dzt;g1O$ğJpak8_ѻI78S0U=ZU̻=pO)+FQU|̀aMw!kHdY'A:, GzoTQ)*F L \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test162.output.bin b/sha3/tests/data/sha3_224/test162.output.bin new file mode 100644 index 00000000..26507f1a --- /dev/null +++ b/sha3/tests/data/sha3_224/test162.output.bin @@ -0,0 +1 @@ +YMo^$jksLY/i=ݟN \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test163.input.bin b/sha3/tests/data/sha3_224/test163.input.bin new file mode 100644 index 00000000..b7d86900 Binary files /dev/null and b/sha3/tests/data/sha3_224/test163.input.bin differ diff --git a/sha3/tests/data/sha3_224/test163.output.bin b/sha3/tests/data/sha3_224/test163.output.bin new file mode 100644 index 00000000..fe83d79e Binary files /dev/null and b/sha3/tests/data/sha3_224/test163.output.bin differ diff --git a/sha3/tests/data/sha3_224/test164.input.bin b/sha3/tests/data/sha3_224/test164.input.bin new file mode 100644 index 00000000..6a3e8166 Binary files /dev/null and b/sha3/tests/data/sha3_224/test164.input.bin differ diff --git a/sha3/tests/data/sha3_224/test164.output.bin b/sha3/tests/data/sha3_224/test164.output.bin new file mode 100644 index 00000000..48936825 --- /dev/null +++ b/sha3/tests/data/sha3_224/test164.output.bin @@ -0,0 +1 @@ +@Ԅ}}K0_-I3tYe \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test165.input.bin b/sha3/tests/data/sha3_224/test165.input.bin new file mode 100644 index 00000000..42ab3064 Binary files /dev/null and b/sha3/tests/data/sha3_224/test165.input.bin differ diff --git a/sha3/tests/data/sha3_224/test165.output.bin b/sha3/tests/data/sha3_224/test165.output.bin new file mode 100644 index 00000000..2fe9aa8b --- /dev/null +++ b/sha3/tests/data/sha3_224/test165.output.bin @@ -0,0 +1 @@ +>ٌH|r,NeCWOx \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test166.input.bin b/sha3/tests/data/sha3_224/test166.input.bin new file mode 100644 index 00000000..8b4dcb7b --- /dev/null +++ b/sha3/tests/data/sha3_224/test166.input.bin @@ -0,0 +1 @@ +υbؘ}گ=FEn#&͵?h]Yn:ae50MjK^+z`vq2-[ܻ-dIm̒Z#O$ XQQa^`_i=UJϮiH )u@׈5M1b@௓ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test166.output.bin b/sha3/tests/data/sha3_224/test166.output.bin new file mode 100644 index 00000000..02fb7bef Binary files /dev/null and b/sha3/tests/data/sha3_224/test166.output.bin differ diff --git a/sha3/tests/data/sha3_224/test167.input.bin b/sha3/tests/data/sha3_224/test167.input.bin new file mode 100644 index 00000000..83e7dec4 --- /dev/null +++ b/sha3/tests/data/sha3_224/test167.input.bin @@ -0,0 +1 @@ +*1&yD^Y]5Ln`_܄pB?033Ĥ2gʮOGF ~0a 'Fc>)[jL#dU{. #qRC]d*Ņ?h6y&z,~eo-;l4U| ظNgu \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test167.output.bin b/sha3/tests/data/sha3_224/test167.output.bin new file mode 100644 index 00000000..6ce0171e --- /dev/null +++ b/sha3/tests/data/sha3_224/test167.output.bin @@ -0,0 +1 @@ +|t|_sA̎ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test168.input.bin b/sha3/tests/data/sha3_224/test168.input.bin new file mode 100644 index 00000000..82f2df44 Binary files /dev/null and b/sha3/tests/data/sha3_224/test168.input.bin differ diff --git a/sha3/tests/data/sha3_224/test168.output.bin b/sha3/tests/data/sha3_224/test168.output.bin new file mode 100644 index 00000000..ddfd2c96 --- /dev/null +++ b/sha3/tests/data/sha3_224/test168.output.bin @@ -0,0 +1 @@ +]PNu811} \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test169.input.bin b/sha3/tests/data/sha3_224/test169.input.bin new file mode 100644 index 00000000..395db28a --- /dev/null +++ b/sha3/tests/data/sha3_224/test169.input.bin @@ -0,0 +1 @@ +#ks޷f+ڥ{5VEW5f);ZD P `qáJu:Iþi!(h_QdbVyBITCKퟬ}4.)6J gG8BT)}#ZqrBVA𤎄Eۥl \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test169.output.bin b/sha3/tests/data/sha3_224/test169.output.bin new file mode 100644 index 00000000..f4b5f956 --- /dev/null +++ b/sha3/tests/data/sha3_224/test169.output.bin @@ -0,0 +1 @@ +YBXU~)w2]R \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test17.input.bin b/sha3/tests/data/sha3_224/test17.input.bin new file mode 100644 index 00000000..0922640e --- /dev/null +++ b/sha3/tests/data/sha3_224/test17.input.bin @@ -0,0 +1 @@ +R!݊DW~x!v \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test17.output.bin b/sha3/tests/data/sha3_224/test17.output.bin new file mode 100644 index 00000000..d51f4533 --- /dev/null +++ b/sha3/tests/data/sha3_224/test17.output.bin @@ -0,0 +1 @@ +WRN7}{f3̒` \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test170.input.bin b/sha3/tests/data/sha3_224/test170.input.bin new file mode 100644 index 00000000..8e7c6397 Binary files /dev/null and b/sha3/tests/data/sha3_224/test170.input.bin differ diff --git a/sha3/tests/data/sha3_224/test170.output.bin b/sha3/tests/data/sha3_224/test170.output.bin new file mode 100644 index 00000000..ac6b4b30 --- /dev/null +++ b/sha3/tests/data/sha3_224/test170.output.bin @@ -0,0 +1,2 @@ +)$ +8:i3]AثÀjbl=l \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test171.input.bin b/sha3/tests/data/sha3_224/test171.input.bin new file mode 100644 index 00000000..b2695ced Binary files /dev/null and b/sha3/tests/data/sha3_224/test171.input.bin differ diff --git a/sha3/tests/data/sha3_224/test171.output.bin b/sha3/tests/data/sha3_224/test171.output.bin new file mode 100644 index 00000000..b0781938 --- /dev/null +++ b/sha3/tests/data/sha3_224/test171.output.bin @@ -0,0 +1 @@ +xMO \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test176.input.bin b/sha3/tests/data/sha3_224/test176.input.bin new file mode 100644 index 00000000..a8a0c682 Binary files /dev/null and b/sha3/tests/data/sha3_224/test176.input.bin differ diff --git a/sha3/tests/data/sha3_224/test176.output.bin b/sha3/tests/data/sha3_224/test176.output.bin new file mode 100644 index 00000000..c2eba1c4 --- /dev/null +++ b/sha3/tests/data/sha3_224/test176.output.bin @@ -0,0 +1 @@ + ‘]D΃]gvv+q \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test177.input.bin b/sha3/tests/data/sha3_224/test177.input.bin new file mode 100644 index 00000000..1f944269 --- /dev/null +++ b/sha3/tests/data/sha3_224/test177.input.bin @@ -0,0 +1,2 @@ +dj2\s/0/!yG@C TMkF2= +u[P_ 焼^r%wSd.#he\=QȒݠS~f P`?o[=8@ܛQb@j\ßMeգ [:)VX;X͔pҘw`` \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test177.output.bin b/sha3/tests/data/sha3_224/test177.output.bin new file mode 100644 index 00000000..45f6f54f --- /dev/null +++ b/sha3/tests/data/sha3_224/test177.output.bin @@ -0,0 +1 @@ +dL2(;(yqCP|EG;l \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test178.input.bin b/sha3/tests/data/sha3_224/test178.input.bin new file mode 100644 index 00000000..13c4fd0a --- /dev/null +++ b/sha3/tests/data/sha3_224/test178.input.bin @@ -0,0 +1 @@ +˾gJWGKL~/Urq5u*E1b/YpA:WgxAj0Syܲҕ^ h* -fEA:fq6YNV&JcPlSv!j2: \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test178.output.bin b/sha3/tests/data/sha3_224/test178.output.bin new file mode 100644 index 00000000..2bfe7906 --- /dev/null +++ b/sha3/tests/data/sha3_224/test178.output.bin @@ -0,0 +1 @@ +T$3޼LS@Qrj \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test179.input.bin b/sha3/tests/data/sha3_224/test179.input.bin new file mode 100644 index 00000000..5d1ef4da Binary files /dev/null and b/sha3/tests/data/sha3_224/test179.input.bin differ diff --git a/sha3/tests/data/sha3_224/test179.output.bin b/sha3/tests/data/sha3_224/test179.output.bin new file mode 100644 index 00000000..38b9eaa9 --- /dev/null +++ b/sha3/tests/data/sha3_224/test179.output.bin @@ -0,0 +1 @@ +.8]x裪䨗s'H \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test18.input.bin b/sha3/tests/data/sha3_224/test18.input.bin new file mode 100644 index 00000000..1868db3a --- /dev/null +++ b/sha3/tests/data/sha3_224/test18.input.bin @@ -0,0 +1 @@ +=.R~ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test18.output.bin b/sha3/tests/data/sha3_224/test18.output.bin new file mode 100644 index 00000000..d4706199 --- /dev/null +++ b/sha3/tests/data/sha3_224/test18.output.bin @@ -0,0 +1 @@ +\#V/@Oܱ4 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test180.input.bin b/sha3/tests/data/sha3_224/test180.input.bin new file mode 100644 index 00000000..13f88f9c --- /dev/null +++ b/sha3/tests/data/sha3_224/test180.input.bin @@ -0,0 +1,2 @@ +:~Qer ߷}vGT&ߪ{P\v5 d2ؿ_  xu,ێRZ΄% B׃N9`t/C};.*wj +RR0 2J MGj/ HCŅE5+7@jy*od \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test180.output.bin b/sha3/tests/data/sha3_224/test180.output.bin new file mode 100644 index 00000000..a0b794c9 Binary files /dev/null and b/sha3/tests/data/sha3_224/test180.output.bin differ diff --git a/sha3/tests/data/sha3_224/test181.input.bin b/sha3/tests/data/sha3_224/test181.input.bin new file mode 100644 index 00000000..21185a19 Binary files /dev/null and b/sha3/tests/data/sha3_224/test181.input.bin differ diff --git a/sha3/tests/data/sha3_224/test181.output.bin b/sha3/tests/data/sha3_224/test181.output.bin new file mode 100644 index 00000000..308305cd --- /dev/null +++ b/sha3/tests/data/sha3_224/test181.output.bin @@ -0,0 +1 @@ +heFLj# KK;tY- \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test182.input.bin b/sha3/tests/data/sha3_224/test182.input.bin new file mode 100644 index 00000000..4d216972 --- /dev/null +++ b/sha3/tests/data/sha3_224/test182.input.bin @@ -0,0 +1 @@ +WnR 0 ^5ECB=O睖cr)EWű1RhN.+_ΙepT^t|X#[4"Og 3_o]ÔoDӯˮ.AUMgY2k$H-ԓo><69~t8ZELG{ m^/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test182.output.bin b/sha3/tests/data/sha3_224/test182.output.bin new file mode 100644 index 00000000..bd308d6a --- /dev/null +++ b/sha3/tests/data/sha3_224/test182.output.bin @@ -0,0 +1 @@ + Hz \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test187.input.bin b/sha3/tests/data/sha3_224/test187.input.bin new file mode 100644 index 00000000..4b5bf01f --- /dev/null +++ b/sha3/tests/data/sha3_224/test187.input.bin @@ -0,0 +1 @@ +du ͘;e2,Eɸ;*Z"hXn'(WѢН _"ß^nJLmH?9s~<8f\&<tYcƻ=4[hG}cW U6KUq0~г7Nn: \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test187.output.bin b/sha3/tests/data/sha3_224/test187.output.bin new file mode 100644 index 00000000..0caf1278 --- /dev/null +++ b/sha3/tests/data/sha3_224/test187.output.bin @@ -0,0 +1 @@ +ʌ5 m,[5L!sB \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test188.input.bin b/sha3/tests/data/sha3_224/test188.input.bin new file mode 100644 index 00000000..05e7d072 --- /dev/null +++ b/sha3/tests/data/sha3_224/test188.input.bin @@ -0,0 +1,3 @@ +hus/rZhŪ1I>vR]=3ν!&jo~ Wy +oXye$fwS9r]2dRA_2xWj*X|)SրE6@~=\@Oo%"ȶ3 W $uk hTMQ +x^: \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test188.output.bin b/sha3/tests/data/sha3_224/test188.output.bin new file mode 100644 index 00000000..5d103a70 --- /dev/null +++ b/sha3/tests/data/sha3_224/test188.output.bin @@ -0,0 +1 @@ + R?P[QuW\5xè# \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test189.input.bin b/sha3/tests/data/sha3_224/test189.input.bin new file mode 100644 index 00000000..2fb1cb98 Binary files /dev/null and b/sha3/tests/data/sha3_224/test189.input.bin differ diff --git a/sha3/tests/data/sha3_224/test189.output.bin b/sha3/tests/data/sha3_224/test189.output.bin new file mode 100644 index 00000000..aa9360dd --- /dev/null +++ b/sha3/tests/data/sha3_224/test189.output.bin @@ -0,0 +1 @@ +W9{Gd5Vk_p(bm \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test19.input.bin b/sha3/tests/data/sha3_224/test19.input.bin new file mode 100644 index 00000000..31b8f4fa --- /dev/null +++ b/sha3/tests/data/sha3_224/test19.input.bin @@ -0,0 +1 @@ +uh=Ua@"T; ! \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test19.output.bin b/sha3/tests/data/sha3_224/test19.output.bin new file mode 100644 index 00000000..5a580c0f Binary files /dev/null and b/sha3/tests/data/sha3_224/test19.output.bin differ diff --git a/sha3/tests/data/sha3_224/test190.input.bin b/sha3/tests/data/sha3_224/test190.input.bin new file mode 100644 index 00000000..9b570e95 --- /dev/null +++ b/sha3/tests/data/sha3_224/test190.input.bin @@ -0,0 +1 @@ +SJ$qKԾ7Ȋ=.|T ׽g Z5YDc)1쪟g]5&i^؝ӌ,vΞYt2顾,qFAiъz!Ȱq^,T xA6}eKuϐ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test196.input.bin b/sha3/tests/data/sha3_224/test196.input.bin new file mode 100644 index 00000000..0c60e8fd Binary files /dev/null and b/sha3/tests/data/sha3_224/test196.input.bin differ diff --git a/sha3/tests/data/sha3_224/test196.output.bin b/sha3/tests/data/sha3_224/test196.output.bin new file mode 100644 index 00000000..285f4ce6 --- /dev/null +++ b/sha3/tests/data/sha3_224/test196.output.bin @@ -0,0 +1 @@ +c`h$n̊L /v2YML \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test197.input.bin b/sha3/tests/data/sha3_224/test197.input.bin new file mode 100644 index 00000000..be15921f --- /dev/null +++ b/sha3/tests/data/sha3_224/test197.input.bin @@ -0,0 +1 @@ +RQ2c[9:kzs!pߩF&i˻߀0rG+7KտyXb:>9樲)|Qx5a$q^ c7Syxv"F4oU4r^s|{jmGtrF}{+#P|Q},J \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test197.output.bin b/sha3/tests/data/sha3_224/test197.output.bin new file mode 100644 index 00000000..bce3b123 --- /dev/null +++ b/sha3/tests/data/sha3_224/test197.output.bin @@ -0,0 +1 @@ +0e.dht[ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test199.input.bin b/sha3/tests/data/sha3_224/test199.input.bin new file mode 100644 index 00000000..6044629d --- /dev/null +++ b/sha3/tests/data/sha3_224/test199.input.bin @@ -0,0 +1 @@ +p 'zrw|NC&hЙebVs6hzfyݝz3A:\"[!{_G2~9&-@C0;{^*ݦHYK X㐑汈)J$^a`Xv9u;%t6f#eA_6mTgCöW.@a&AI:ڐ# \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test199.output.bin b/sha3/tests/data/sha3_224/test199.output.bin new file mode 100644 index 00000000..160bbec5 --- /dev/null +++ b/sha3/tests/data/sha3_224/test199.output.bin @@ -0,0 +1 @@ +A6eˊ5tIt0PdC| \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test2.input.bin b/sha3/tests/data/sha3_224/test2.input.bin new file mode 100644 index 00000000..d50394ef --- /dev/null +++ b/sha3/tests/data/sha3_224/test2.input.bin @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test2.output.bin b/sha3/tests/data/sha3_224/test2.output.bin new file mode 100644 index 00000000..dea154d9 --- /dev/null +++ b/sha3/tests/data/sha3_224/test2.output.bin @@ -0,0 +1 @@ +pě.v㦓A:*G9 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test20.input.bin b/sha3/tests/data/sha3_224/test20.input.bin new file mode 100644 index 00000000..f825277c --- /dev/null +++ b/sha3/tests/data/sha3_224/test20.input.bin @@ -0,0 +1 @@ +P5({Mʗ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test20.output.bin b/sha3/tests/data/sha3_224/test20.output.bin new file mode 100644 index 00000000..82ec5360 --- /dev/null +++ b/sha3/tests/data/sha3_224/test20.output.bin @@ -0,0 +1 @@ +r^Z-#JrBffv8\b \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test200.input.bin b/sha3/tests/data/sha3_224/test200.input.bin new file mode 100644 index 00000000..25202dc5 Binary files /dev/null and b/sha3/tests/data/sha3_224/test200.input.bin differ diff --git a/sha3/tests/data/sha3_224/test200.output.bin b/sha3/tests/data/sha3_224/test200.output.bin new file mode 100644 index 00000000..85071b33 --- /dev/null +++ b/sha3/tests/data/sha3_224/test200.output.bin @@ -0,0 +1 @@ +`/_c3_[]7 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test201.input.bin b/sha3/tests/data/sha3_224/test201.input.bin new file mode 100644 index 00000000..19cd3f69 Binary files /dev/null and b/sha3/tests/data/sha3_224/test201.input.bin differ diff --git a/sha3/tests/data/sha3_224/test201.output.bin b/sha3/tests/data/sha3_224/test201.output.bin new file mode 100644 index 00000000..236f07e7 --- /dev/null +++ b/sha3/tests/data/sha3_224/test201.output.bin @@ -0,0 +1 @@ +\m 4.qaKGإ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test202.input.bin b/sha3/tests/data/sha3_224/test202.input.bin new file mode 100644 index 00000000..61915861 Binary files /dev/null and b/sha3/tests/data/sha3_224/test202.input.bin differ diff --git a/sha3/tests/data/sha3_224/test202.output.bin b/sha3/tests/data/sha3_224/test202.output.bin new file mode 100644 index 00000000..a3c6a98a --- /dev/null +++ b/sha3/tests/data/sha3_224/test202.output.bin @@ -0,0 +1,2 @@ + _mk|(eO*c%~{kP +8s? \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test203.input.bin b/sha3/tests/data/sha3_224/test203.input.bin new file mode 100644 index 00000000..741c4d41 Binary files /dev/null and b/sha3/tests/data/sha3_224/test203.input.bin differ diff --git a/sha3/tests/data/sha3_224/test203.output.bin b/sha3/tests/data/sha3_224/test203.output.bin new file mode 100644 index 00000000..0d74c28e --- /dev/null +++ b/sha3/tests/data/sha3_224/test203.output.bin @@ -0,0 +1 @@ +{~Ӄ>f Vm[O= \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test204.input.bin b/sha3/tests/data/sha3_224/test204.input.bin new file mode 100644 index 00000000..5a6287f2 Binary files /dev/null and b/sha3/tests/data/sha3_224/test204.input.bin differ diff --git a/sha3/tests/data/sha3_224/test204.output.bin b/sha3/tests/data/sha3_224/test204.output.bin new file mode 100644 index 00000000..72aeb369 --- /dev/null +++ b/sha3/tests/data/sha3_224/test204.output.bin @@ -0,0 +1 @@ +ƬTd^\/o!7GA)_C \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test205.input.bin b/sha3/tests/data/sha3_224/test205.input.bin new file mode 100644 index 00000000..77288138 Binary files /dev/null and b/sha3/tests/data/sha3_224/test205.input.bin differ diff --git a/sha3/tests/data/sha3_224/test205.output.bin b/sha3/tests/data/sha3_224/test205.output.bin new file mode 100644 index 00000000..92bb6fc5 --- /dev/null +++ b/sha3/tests/data/sha3_224/test205.output.bin @@ -0,0 +1 @@ +N<Mӡspg}a \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test206.input.bin b/sha3/tests/data/sha3_224/test206.input.bin new file mode 100644 index 00000000..4bff8354 Binary files /dev/null and b/sha3/tests/data/sha3_224/test206.input.bin differ diff --git a/sha3/tests/data/sha3_224/test206.output.bin b/sha3/tests/data/sha3_224/test206.output.bin new file mode 100644 index 00000000..ae90ae96 --- /dev/null +++ b/sha3/tests/data/sha3_224/test206.output.bin @@ -0,0 +1 @@ +J+気IUM5o*4[~N؉ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test207.input.bin b/sha3/tests/data/sha3_224/test207.input.bin new file mode 100644 index 00000000..167543c1 --- /dev/null +++ b/sha3/tests/data/sha3_224/test207.input.bin @@ -0,0 +1,2 @@ +O>J\_+ңE4sn;  ޯRֺ1l3R7QⳜJIW~*?Zhh03⽫s&ֽ%FX +SvЗ禦>X`(Żչ27NB)η(x"ZbS#fJ4G YU?u) CU>ot"K \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test207.output.bin b/sha3/tests/data/sha3_224/test207.output.bin new file mode 100644 index 00000000..bd8db4b8 --- /dev/null +++ b/sha3/tests/data/sha3_224/test207.output.bin @@ -0,0 +1 @@ ++g,VP״{KXQ_~M \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test208.input.bin b/sha3/tests/data/sha3_224/test208.input.bin new file mode 100644 index 00000000..c47ee536 --- /dev/null +++ b/sha3/tests/data/sha3_224/test208.input.bin @@ -0,0 +1,2 @@ +-s031(8<ʗNh@ Rk?JōГZ0Ė"ar.EWB C}t?+57]̞ߴ8Bᐤ<1c~W~`lM{c + :GkwxEM`lg)voLO'ޟ,;U~wl `2(8 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test208.output.bin b/sha3/tests/data/sha3_224/test208.output.bin new file mode 100644 index 00000000..f543908a --- /dev/null +++ b/sha3/tests/data/sha3_224/test208.output.bin @@ -0,0 +1 @@ + @ eF޿K[8nlnmk \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test209.input.bin b/sha3/tests/data/sha3_224/test209.input.bin new file mode 100644 index 00000000..8be3f738 --- /dev/null +++ b/sha3/tests/data/sha3_224/test209.input.bin @@ -0,0 +1,2 @@ +Ua=0y.& 7BJmI(׭7MT#n_7oKܹu;9f2BEJwu>pX%; vτ3:Y҇̒#Nz'A& jX.dž1#'솅 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test209.output.bin b/sha3/tests/data/sha3_224/test209.output.bin new file mode 100644 index 00000000..590f57a8 --- /dev/null +++ b/sha3/tests/data/sha3_224/test209.output.bin @@ -0,0 +1,2 @@ +/$K +sB{=TȇjqR1 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test21.input.bin b/sha3/tests/data/sha3_224/test21.input.bin new file mode 100644 index 00000000..bd6291ce --- /dev/null +++ b/sha3/tests/data/sha3_224/test21.input.bin @@ -0,0 +1 @@ +aVU@gGQ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test21.output.bin b/sha3/tests/data/sha3_224/test21.output.bin new file mode 100644 index 00000000..64eeaa91 Binary files /dev/null and b/sha3/tests/data/sha3_224/test21.output.bin differ diff --git a/sha3/tests/data/sha3_224/test210.input.bin b/sha3/tests/data/sha3_224/test210.input.bin new file mode 100644 index 00000000..12d7f2d6 --- /dev/null +++ b/sha3/tests/data/sha3_224/test210.input.bin @@ -0,0 +1 @@ +Dw≛rVUMlAG{уJ@)}^ۜm]DC`OR(ldpzjpC6s%&ST]ZܒynXՙ2$. ׭mr v#|N!+nyI͐3:wN*||2 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test210.output.bin b/sha3/tests/data/sha3_224/test210.output.bin new file mode 100644 index 00000000..01ff124d Binary files /dev/null and b/sha3/tests/data/sha3_224/test210.output.bin differ diff --git a/sha3/tests/data/sha3_224/test211.input.bin b/sha3/tests/data/sha3_224/test211.input.bin new file mode 100644 index 00000000..06b62b7f Binary files /dev/null and b/sha3/tests/data/sha3_224/test211.input.bin differ diff --git a/sha3/tests/data/sha3_224/test211.output.bin b/sha3/tests/data/sha3_224/test211.output.bin new file mode 100644 index 00000000..c993d2f9 --- /dev/null +++ b/sha3/tests/data/sha3_224/test211.output.bin @@ -0,0 +1,2 @@ +kK y0EX/לz +XLR\ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test212.input.bin b/sha3/tests/data/sha3_224/test212.input.bin new file mode 100644 index 00000000..397fbdc5 Binary files /dev/null and b/sha3/tests/data/sha3_224/test212.input.bin differ diff --git a/sha3/tests/data/sha3_224/test212.output.bin b/sha3/tests/data/sha3_224/test212.output.bin new file mode 100644 index 00000000..edcda05f --- /dev/null +++ b/sha3/tests/data/sha3_224/test212.output.bin @@ -0,0 +1 @@ +!؅S$qh,kҪb)G? diff --git a/sha3/tests/data/sha3_224/test213.input.bin b/sha3/tests/data/sha3_224/test213.input.bin new file mode 100644 index 00000000..ff7c93ec --- /dev/null +++ b/sha3/tests/data/sha3_224/test213.input.bin @@ -0,0 +1 @@ +;֤,z2)i-Ǚ ɝpZ\5+>L@fIݓΧuTj),L*v}|9jN$lgփgW68j'kQuLGH+r೔io֎^=YŬ@ó~6$JY͝(yox[';Dd5 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test213.output.bin b/sha3/tests/data/sha3_224/test213.output.bin new file mode 100644 index 00000000..4bb841dc Binary files /dev/null and b/sha3/tests/data/sha3_224/test213.output.bin differ diff --git a/sha3/tests/data/sha3_224/test214.input.bin b/sha3/tests/data/sha3_224/test214.input.bin new file mode 100644 index 00000000..17d29a30 Binary files /dev/null and b/sha3/tests/data/sha3_224/test214.input.bin differ diff --git a/sha3/tests/data/sha3_224/test214.output.bin b/sha3/tests/data/sha3_224/test214.output.bin new file mode 100644 index 00000000..82613645 --- /dev/null +++ b/sha3/tests/data/sha3_224/test214.output.bin @@ -0,0 +1 @@ +'أ X53nG7^ےƧ7 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test215.input.bin b/sha3/tests/data/sha3_224/test215.input.bin new file mode 100644 index 00000000..d082a217 Binary files /dev/null and b/sha3/tests/data/sha3_224/test215.input.bin differ diff --git a/sha3/tests/data/sha3_224/test215.output.bin b/sha3/tests/data/sha3_224/test215.output.bin new file mode 100644 index 00000000..41f3e1be --- /dev/null +++ b/sha3/tests/data/sha3_224/test215.output.bin @@ -0,0 +1 @@ +'q}p| yRuxL9 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test216.input.bin b/sha3/tests/data/sha3_224/test216.input.bin new file mode 100644 index 00000000..9b654101 --- /dev/null +++ b/sha3/tests/data/sha3_224/test216.input.bin @@ -0,0 +1,3 @@ +zjOOY#8It%.Y0bn{ى~ fDb5-Sנ/p7%Vq '™ʧߥ5R:51f^wlkFێ,ݝϺ২Uq-F=="90C;"F0A +3:R91\Fx[ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test218.output.bin b/sha3/tests/data/sha3_224/test218.output.bin new file mode 100644 index 00000000..6ed6e581 --- /dev/null +++ b/sha3/tests/data/sha3_224/test218.output.bin @@ -0,0 +1 @@ +pg9L8u.&s \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test219.input.bin b/sha3/tests/data/sha3_224/test219.input.bin new file mode 100644 index 00000000..ca1f68da Binary files /dev/null and b/sha3/tests/data/sha3_224/test219.input.bin differ diff --git a/sha3/tests/data/sha3_224/test219.output.bin b/sha3/tests/data/sha3_224/test219.output.bin new file mode 100644 index 00000000..ffc20a7a --- /dev/null +++ b/sha3/tests/data/sha3_224/test219.output.bin @@ -0,0 +1 @@ +cV2X 퐣J CE B \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test22.input.bin b/sha3/tests/data/sha3_224/test22.input.bin new file mode 100644 index 00000000..7a679902 --- /dev/null +++ b/sha3/tests/data/sha3_224/test22.input.bin @@ -0,0 +1 @@ +܏NLxD{;T6* \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test22.output.bin b/sha3/tests/data/sha3_224/test22.output.bin new file mode 100644 index 00000000..8f0e80be --- /dev/null +++ b/sha3/tests/data/sha3_224/test22.output.bin @@ -0,0 +1 @@ +4Iōp mw@7 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test220.input.bin b/sha3/tests/data/sha3_224/test220.input.bin new file mode 100644 index 00000000..dc3eba08 --- /dev/null +++ b/sha3/tests/data/sha3_224/test220.input.bin @@ -0,0 +1,4 @@ +vF8;NQ 20iPҗ +HVy +s9;(,jtg 8əpMbpO'Ͱe_PІWSp 8q/>m߳]shE9'K"</ʼ !f׉9qKxD%"}*=vQ^| +FA5eN|<7[SMd A|/cs \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test220.output.bin b/sha3/tests/data/sha3_224/test220.output.bin new file mode 100644 index 00000000..43d9663a --- /dev/null +++ b/sha3/tests/data/sha3_224/test220.output.bin @@ -0,0 +1 @@ +)b^30*t/=Uyi \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test221.input.bin b/sha3/tests/data/sha3_224/test221.input.bin new file mode 100644 index 00000000..d518e526 Binary files /dev/null and b/sha3/tests/data/sha3_224/test221.input.bin differ diff --git a/sha3/tests/data/sha3_224/test221.output.bin b/sha3/tests/data/sha3_224/test221.output.bin new file mode 100644 index 00000000..7a344fc4 --- /dev/null +++ b/sha3/tests/data/sha3_224/test221.output.bin @@ -0,0 +1 @@ ++eO`ۀp x ( \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test222.input.bin b/sha3/tests/data/sha3_224/test222.input.bin new file mode 100644 index 00000000..5bd09da0 Binary files /dev/null and b/sha3/tests/data/sha3_224/test222.input.bin differ diff --git a/sha3/tests/data/sha3_224/test222.output.bin b/sha3/tests/data/sha3_224/test222.output.bin new file mode 100644 index 00000000..60bdf0b5 Binary files /dev/null and b/sha3/tests/data/sha3_224/test222.output.bin differ diff --git a/sha3/tests/data/sha3_224/test223.input.bin b/sha3/tests/data/sha3_224/test223.input.bin new file mode 100644 index 00000000..61d516ba Binary files /dev/null and b/sha3/tests/data/sha3_224/test223.input.bin differ diff --git a/sha3/tests/data/sha3_224/test223.output.bin b/sha3/tests/data/sha3_224/test223.output.bin new file mode 100644 index 00000000..4a7ee2c0 --- /dev/null +++ b/sha3/tests/data/sha3_224/test223.output.bin @@ -0,0 +1 @@ +`/ yw9f+/3O>֛箜 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test224.input.bin b/sha3/tests/data/sha3_224/test224.input.bin new file mode 100644 index 00000000..ea14dca4 Binary files /dev/null and b/sha3/tests/data/sha3_224/test224.input.bin differ diff --git a/sha3/tests/data/sha3_224/test224.output.bin b/sha3/tests/data/sha3_224/test224.output.bin new file mode 100644 index 00000000..6f865f24 --- /dev/null +++ b/sha3/tests/data/sha3_224/test224.output.bin @@ -0,0 +1 @@ +VoøNאQ]< ] \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test225.input.bin b/sha3/tests/data/sha3_224/test225.input.bin new file mode 100644 index 00000000..39f24030 Binary files /dev/null and b/sha3/tests/data/sha3_224/test225.input.bin differ diff --git a/sha3/tests/data/sha3_224/test225.output.bin b/sha3/tests/data/sha3_224/test225.output.bin new file mode 100644 index 00000000..cf8f3581 --- /dev/null +++ b/sha3/tests/data/sha3_224/test225.output.bin @@ -0,0 +1 @@ +; 2@P&LfFGf \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test226.input.bin b/sha3/tests/data/sha3_224/test226.input.bin new file mode 100644 index 00000000..a694388a --- /dev/null +++ b/sha3/tests/data/sha3_224/test226.input.bin @@ -0,0 +1 @@ +gSm68؈̫4+zen=oBLfAqeÏǒhεf]6!TӺX13t6stdrƮzn' \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test226.output.bin b/sha3/tests/data/sha3_224/test226.output.bin new file mode 100644 index 00000000..ee4a32dd --- /dev/null +++ b/sha3/tests/data/sha3_224/test226.output.bin @@ -0,0 +1 @@ +8aG#e4nFf[Y< \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test227.input.bin b/sha3/tests/data/sha3_224/test227.input.bin new file mode 100644 index 00000000..a4b4f480 --- /dev/null +++ b/sha3/tests/data/sha3_224/test227.input.bin @@ -0,0 +1 @@ +9?]MH]7QJX6)!z8#5Rs!R*X5a& }:AvvJ"ԕzT]RDul %̏L6/ 68Oz[)?kܒV^6v=Ҡj>=DvyK=&+yV>APd%n4^QU܊!Jxj-P~35d' \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test227.output.bin b/sha3/tests/data/sha3_224/test227.output.bin new file mode 100644 index 00000000..3e1a1376 --- /dev/null +++ b/sha3/tests/data/sha3_224/test227.output.bin @@ -0,0 +1 @@ + @8ʼ;A/ix>7 V \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test228.input.bin b/sha3/tests/data/sha3_224/test228.input.bin new file mode 100644 index 00000000..9cb3e056 Binary files /dev/null and b/sha3/tests/data/sha3_224/test228.input.bin differ diff --git a/sha3/tests/data/sha3_224/test228.output.bin b/sha3/tests/data/sha3_224/test228.output.bin new file mode 100644 index 00000000..fc196b2e --- /dev/null +++ b/sha3/tests/data/sha3_224/test228.output.bin @@ -0,0 +1 @@ +5AmyV'n7P- \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test229.input.bin b/sha3/tests/data/sha3_224/test229.input.bin new file mode 100644 index 00000000..6dda249b Binary files /dev/null and b/sha3/tests/data/sha3_224/test229.input.bin differ diff --git a/sha3/tests/data/sha3_224/test229.output.bin b/sha3/tests/data/sha3_224/test229.output.bin new file mode 100644 index 00000000..4f94b02e --- /dev/null +++ b/sha3/tests/data/sha3_224/test229.output.bin @@ -0,0 +1 @@ +j5^(v"MM@?+vh]PF \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test23.input.bin b/sha3/tests/data/sha3_224/test23.input.bin new file mode 100644 index 00000000..fcc84d2d --- /dev/null +++ b/sha3/tests/data/sha3_224/test23.input.bin @@ -0,0 +1 @@ +W_B-3xm_- \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test23.output.bin b/sha3/tests/data/sha3_224/test23.output.bin new file mode 100644 index 00000000..e4d5b19c --- /dev/null +++ b/sha3/tests/data/sha3_224/test23.output.bin @@ -0,0 +1 @@ +R'#"q!==ۙ.F \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test230.input.bin b/sha3/tests/data/sha3_224/test230.input.bin new file mode 100644 index 00000000..c2b4e2b7 --- /dev/null +++ b/sha3/tests/data/sha3_224/test230.input.bin @@ -0,0 +1 @@ +8u$ ਵe@jpIn,!txoҔ֧TS5(M_@*ܒ871yoJ܁oDkx[ yhAx =;_ +b+xő3HQSY.o \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test233.output.bin b/sha3/tests/data/sha3_224/test233.output.bin new file mode 100644 index 00000000..4719896a --- /dev/null +++ b/sha3/tests/data/sha3_224/test233.output.bin @@ -0,0 +1 @@ +jJ3NҾ6:R`\ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test234.input.bin b/sha3/tests/data/sha3_224/test234.input.bin new file mode 100644 index 00000000..6e7c2d03 Binary files /dev/null and b/sha3/tests/data/sha3_224/test234.input.bin differ diff --git a/sha3/tests/data/sha3_224/test234.output.bin b/sha3/tests/data/sha3_224/test234.output.bin new file mode 100644 index 00000000..8bd88fa8 --- /dev/null +++ b/sha3/tests/data/sha3_224/test234.output.bin @@ -0,0 +1 @@ +~sp==g"A; (%C]Cg';Ŋ0DгgB5&z@+;>;\%Fnz`7"+Li15Z-9{V5H:?fex8iAͳREH)NPc%-G@Z)-к! ;4ӝ0^\V7{u +7&KVo@wE_V$1z- \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test241.output.bin b/sha3/tests/data/sha3_224/test241.output.bin new file mode 100644 index 00000000..e381c270 Binary files /dev/null and b/sha3/tests/data/sha3_224/test241.output.bin differ diff --git a/sha3/tests/data/sha3_224/test242.input.bin b/sha3/tests/data/sha3_224/test242.input.bin new file mode 100644 index 00000000..9f83b1c0 --- /dev/null +++ b/sha3/tests/data/sha3_224/test242.input.bin @@ -0,0 +1,2 @@ +arnNap]_왿iKgK}׀a^P-k?CHr{} 0)'.JYhbea p̍niŀ6! cZ$=ŇGXT@ѰLd[}" +b:V8ٚ,@o2R+7^l׀(ӈE EAuSVik?9z )69;\YנKzïh y1Nu} \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test242.output.bin b/sha3/tests/data/sha3_224/test242.output.bin new file mode 100644 index 00000000..9c6c852e --- /dev/null +++ b/sha3/tests/data/sha3_224/test242.output.bin @@ -0,0 +1 @@ +C]X~c--w* \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test243.input.bin b/sha3/tests/data/sha3_224/test243.input.bin new file mode 100644 index 00000000..aa906dac Binary files /dev/null and b/sha3/tests/data/sha3_224/test243.input.bin differ diff --git a/sha3/tests/data/sha3_224/test243.output.bin b/sha3/tests/data/sha3_224/test243.output.bin new file mode 100644 index 00000000..6c2c8246 --- /dev/null +++ b/sha3/tests/data/sha3_224/test243.output.bin @@ -0,0 +1 @@ +TIaaI)bx9\ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test244.input.bin b/sha3/tests/data/sha3_224/test244.input.bin new file mode 100644 index 00000000..d2160ac1 Binary files /dev/null and b/sha3/tests/data/sha3_224/test244.input.bin differ diff --git a/sha3/tests/data/sha3_224/test244.output.bin b/sha3/tests/data/sha3_224/test244.output.bin new file mode 100644 index 00000000..74363d62 --- /dev/null +++ b/sha3/tests/data/sha3_224/test244.output.bin @@ -0,0 +1 @@ +r-1  Ѩ^Ӵ= \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test245.input.bin b/sha3/tests/data/sha3_224/test245.input.bin new file mode 100644 index 00000000..7e958206 Binary files /dev/null and b/sha3/tests/data/sha3_224/test245.input.bin differ diff --git a/sha3/tests/data/sha3_224/test245.output.bin b/sha3/tests/data/sha3_224/test245.output.bin new file mode 100644 index 00000000..deda17f3 --- /dev/null +++ b/sha3/tests/data/sha3_224/test245.output.bin @@ -0,0 +1 @@ +hEN-"@k@r bˎ;E# \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test246.input.bin b/sha3/tests/data/sha3_224/test246.input.bin new file mode 100644 index 00000000..514589ea Binary files /dev/null and b/sha3/tests/data/sha3_224/test246.input.bin differ diff --git a/sha3/tests/data/sha3_224/test246.output.bin b/sha3/tests/data/sha3_224/test246.output.bin new file mode 100644 index 00000000..46cfd66a --- /dev/null +++ b/sha3/tests/data/sha3_224/test246.output.bin @@ -0,0 +1 @@ +Wet3AJ4E{Ώ8Æ/l \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test247.input.bin b/sha3/tests/data/sha3_224/test247.input.bin new file mode 100644 index 00000000..58ac5c4f --- /dev/null +++ b/sha3/tests/data/sha3_224/test247.input.bin @@ -0,0 +1,3 @@ +)iD}T򪛰UML PTk-1ޜhɭN… g]so c+U YŚ?a\kuٓ@cxrj:?7;bkWE`dnS= +?zc v3BaY07e?D*]rɔOp9u΅Pr,m, +]vp>C4Ã*T~yrꀒ3 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test247.output.bin b/sha3/tests/data/sha3_224/test247.output.bin new file mode 100644 index 00000000..5ce96f4d --- /dev/null +++ b/sha3/tests/data/sha3_224/test247.output.bin @@ -0,0 +1 @@ +1E"":?kO"so?&!u \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test248.input.bin b/sha3/tests/data/sha3_224/test248.input.bin new file mode 100644 index 00000000..998aaf05 --- /dev/null +++ b/sha3/tests/data/sha3_224/test248.input.bin @@ -0,0 +1,2 @@ +rEc:DNjNXWZ<'3hu Pj4=}[>PpEdrj`uvӖ?Udm W{YLy:KFCxA8SE -)A˫PڎQ1EL:%D-KzzY(]VON헕o0B^JH%oc'-mcHWuE +#3KF/Dºo2_'b*XvoM,j(`KurkyAvxU&£?æB95Pp({ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test250.output.bin b/sha3/tests/data/sha3_224/test250.output.bin new file mode 100644 index 00000000..303e1472 --- /dev/null +++ b/sha3/tests/data/sha3_224/test250.output.bin @@ -0,0 +1 @@ +%-6Պ\E~}ׁlOrR \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test251.input.bin b/sha3/tests/data/sha3_224/test251.input.bin new file mode 100644 index 00000000..e5174fd6 --- /dev/null +++ b/sha3/tests/data/sha3_224/test251.input.bin @@ -0,0 +1,3 @@ +Ki<%3lV;L8uh4GRԧ=[T82 pφX +`wVѢh9Jm󛟯WhW{*P_uǠK:5` *şeX^"Kyƾ)f-h7`Fz +%y\ܡ𚗜!Sͻ&Tn/PhZFaIeԶ>[Щm=ju{3sOD_tqi~+ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test251.output.bin b/sha3/tests/data/sha3_224/test251.output.bin new file mode 100644 index 00000000..5c0d95ac --- /dev/null +++ b/sha3/tests/data/sha3_224/test251.output.bin @@ -0,0 +1 @@ +9DfP#yuQoj}Eh*uv \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test252.input.bin b/sha3/tests/data/sha3_224/test252.input.bin new file mode 100644 index 00000000..c892fcf3 Binary files /dev/null and b/sha3/tests/data/sha3_224/test252.input.bin differ diff --git a/sha3/tests/data/sha3_224/test252.output.bin b/sha3/tests/data/sha3_224/test252.output.bin new file mode 100644 index 00000000..e1fbe902 --- /dev/null +++ b/sha3/tests/data/sha3_224/test252.output.bin @@ -0,0 +1 @@ +.?lOS9[KWCTِ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test253.input.bin b/sha3/tests/data/sha3_224/test253.input.bin new file mode 100644 index 00000000..4b98ebd2 Binary files /dev/null and b/sha3/tests/data/sha3_224/test253.input.bin differ diff --git a/sha3/tests/data/sha3_224/test253.output.bin b/sha3/tests/data/sha3_224/test253.output.bin new file mode 100644 index 00000000..5e6c7162 --- /dev/null +++ b/sha3/tests/data/sha3_224/test253.output.bin @@ -0,0 +1 @@ + A8cz2Ak4:FX \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test254.input.bin b/sha3/tests/data/sha3_224/test254.input.bin new file mode 100644 index 00000000..a29ed9a7 Binary files /dev/null and b/sha3/tests/data/sha3_224/test254.input.bin differ diff --git a/sha3/tests/data/sha3_224/test254.output.bin b/sha3/tests/data/sha3_224/test254.output.bin new file mode 100644 index 00000000..b1e337ee --- /dev/null +++ b/sha3/tests/data/sha3_224/test254.output.bin @@ -0,0 +1 @@ +WvSo~$nIeTĥ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test255.input.bin b/sha3/tests/data/sha3_224/test255.input.bin new file mode 100644 index 00000000..d414c7f0 Binary files /dev/null and b/sha3/tests/data/sha3_224/test255.input.bin differ diff --git a/sha3/tests/data/sha3_224/test255.output.bin b/sha3/tests/data/sha3_224/test255.output.bin new file mode 100644 index 00000000..79e76117 --- /dev/null +++ b/sha3/tests/data/sha3_224/test255.output.bin @@ -0,0 +1 @@ +i8:OuX0h'&}f \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test256.input.bin b/sha3/tests/data/sha3_224/test256.input.bin new file mode 100644 index 00000000..fe0c3944 Binary files /dev/null and b/sha3/tests/data/sha3_224/test256.input.bin differ diff --git a/sha3/tests/data/sha3_224/test256.output.bin b/sha3/tests/data/sha3_224/test256.output.bin new file mode 100644 index 00000000..14200d50 --- /dev/null +++ b/sha3/tests/data/sha3_224/test256.output.bin @@ -0,0 +1 @@ +hGݨyCƽ\`+ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test26.input.bin b/sha3/tests/data/sha3_224/test26.input.bin new file mode 100644 index 00000000..31e2fe3a --- /dev/null +++ b/sha3/tests/data/sha3_224/test26.input.bin @@ -0,0 +1 @@ +$==J eX`'bs^U \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test26.output.bin b/sha3/tests/data/sha3_224/test26.output.bin new file mode 100644 index 00000000..4ba5a2e8 Binary files /dev/null and b/sha3/tests/data/sha3_224/test26.output.bin differ diff --git a/sha3/tests/data/sha3_224/test27.input.bin b/sha3/tests/data/sha3_224/test27.input.bin new file mode 100644 index 00000000..c108fd88 --- /dev/null +++ b/sha3/tests/data/sha3_224/test27.input.bin @@ -0,0 +1 @@ +{Hgl:R~ԅ`  \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test27.output.bin b/sha3/tests/data/sha3_224/test27.output.bin new file mode 100644 index 00000000..974e8679 --- /dev/null +++ b/sha3/tests/data/sha3_224/test27.output.bin @@ -0,0 +1,2 @@ +_ +&Du42aizN/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test28.input.bin b/sha3/tests/data/sha3_224/test28.input.bin new file mode 100644 index 00000000..2db6987a --- /dev/null +++ b/sha3/tests/data/sha3_224/test28.input.bin @@ -0,0 +1 @@ +#WZH'zEuC'XC \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test28.output.bin b/sha3/tests/data/sha3_224/test28.output.bin new file mode 100644 index 00000000..c93df7ef --- /dev/null +++ b/sha3/tests/data/sha3_224/test28.output.bin @@ -0,0 +1 @@ +mǿsm)&=A \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test29.input.bin b/sha3/tests/data/sha3_224/test29.input.bin new file mode 100644 index 00000000..557ef3d3 --- /dev/null +++ b/sha3/tests/data/sha3_224/test29.input.bin @@ -0,0 +1 @@ +-֌|ϱpSdbF|y^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test29.output.bin b/sha3/tests/data/sha3_224/test29.output.bin new file mode 100644 index 00000000..ea9796cc --- /dev/null +++ b/sha3/tests/data/sha3_224/test29.output.bin @@ -0,0 +1 @@ +i; #rU [:4AgBo \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test3.input.bin b/sha3/tests/data/sha3_224/test3.input.bin new file mode 100644 index 00000000..6037df8c --- /dev/null +++ b/sha3/tests/data/sha3_224/test3.input.bin @@ -0,0 +1 @@ +A \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test3.output.bin b/sha3/tests/data/sha3_224/test3.output.bin new file mode 100644 index 00000000..32d1f15b --- /dev/null +++ b/sha3/tests/data/sha3_224/test3.output.bin @@ -0,0 +1 @@ +3⼴3d׉;0 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test30.input.bin b/sha3/tests/data/sha3_224/test30.input.bin new file mode 100644 index 00000000..fa7268e4 Binary files /dev/null and b/sha3/tests/data/sha3_224/test30.input.bin differ diff --git a/sha3/tests/data/sha3_224/test30.output.bin b/sha3/tests/data/sha3_224/test30.output.bin new file mode 100644 index 00000000..b6b249bb --- /dev/null +++ b/sha3/tests/data/sha3_224/test30.output.bin @@ -0,0 +1 @@ +4Mgq9Ӌ`+S \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test31.input.bin b/sha3/tests/data/sha3_224/test31.input.bin new file mode 100644 index 00000000..dc6e42e1 --- /dev/null +++ b/sha3/tests/data/sha3_224/test31.input.bin @@ -0,0 +1,2 @@ + : +8<@p , \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test31.output.bin b/sha3/tests/data/sha3_224/test31.output.bin new file mode 100644 index 00000000..140d5d49 --- /dev/null +++ b/sha3/tests/data/sha3_224/test31.output.bin @@ -0,0 +1 @@ +K}?v_),PmIxٗ? \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test32.input.bin b/sha3/tests/data/sha3_224/test32.input.bin new file mode 100644 index 00000000..032b03e0 --- /dev/null +++ b/sha3/tests/data/sha3_224/test32.input.bin @@ -0,0 +1 @@ +QlZ̵"򍠛#-B22Ã[) \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test32.output.bin b/sha3/tests/data/sha3_224/test32.output.bin new file mode 100644 index 00000000..d97110c0 Binary files /dev/null and b/sha3/tests/data/sha3_224/test32.output.bin differ diff --git a/sha3/tests/data/sha3_224/test33.input.bin b/sha3/tests/data/sha3_224/test33.input.bin new file mode 100644 index 00000000..2636bc45 --- /dev/null +++ b/sha3/tests/data/sha3_224/test33.input.bin @@ -0,0 +1 @@ +/| k~l-]~] \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test33.output.bin b/sha3/tests/data/sha3_224/test33.output.bin new file mode 100644 index 00000000..e4ae4990 --- /dev/null +++ b/sha3/tests/data/sha3_224/test33.output.bin @@ -0,0 +1 @@ +y!لX>Z `t՗ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test34.input.bin b/sha3/tests/data/sha3_224/test34.input.bin new file mode 100644 index 00000000..7aaecfde --- /dev/null +++ b/sha3/tests/data/sha3_224/test34.input.bin @@ -0,0 +1 @@ +ޏ?Kp@Ecø%1x~M ^OZ F \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test34.output.bin b/sha3/tests/data/sha3_224/test34.output.bin new file mode 100644 index 00000000..3f05a09d --- /dev/null +++ b/sha3/tests/data/sha3_224/test34.output.bin @@ -0,0 +1 @@ +W:MM OK>vG \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test35.input.bin b/sha3/tests/data/sha3_224/test35.input.bin new file mode 100644 index 00000000..8be18416 Binary files /dev/null and b/sha3/tests/data/sha3_224/test35.input.bin differ diff --git a/sha3/tests/data/sha3_224/test35.output.bin b/sha3/tests/data/sha3_224/test35.output.bin new file mode 100644 index 00000000..5e876fec --- /dev/null +++ b/sha3/tests/data/sha3_224/test35.output.bin @@ -0,0 +1 @@ +1#0Tɟz- $H~Ե?*Uݳ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test36.input.bin b/sha3/tests/data/sha3_224/test36.input.bin new file mode 100644 index 00000000..bd37ce58 --- /dev/null +++ b/sha3/tests/data/sha3_224/test36.input.bin @@ -0,0 +1 @@ ++#} }>^*"gZcxN[N \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test36.output.bin b/sha3/tests/data/sha3_224/test36.output.bin new file mode 100644 index 00000000..b4c362b2 --- /dev/null +++ b/sha3/tests/data/sha3_224/test36.output.bin @@ -0,0 +1 @@ +Gxa4 woRQx \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test37.input.bin b/sha3/tests/data/sha3_224/test37.input.bin new file mode 100644 index 00000000..3f70b9dc --- /dev/null +++ b/sha3/tests/data/sha3_224/test37.input.bin @@ -0,0 +1 @@ +Giz '4za:5bcN \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test39.input.bin b/sha3/tests/data/sha3_224/test39.input.bin new file mode 100644 index 00000000..0e5c4985 --- /dev/null +++ b/sha3/tests/data/sha3_224/test39.input.bin @@ -0,0 +1,2 @@ +k]VO8' L+k \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test43.output.bin b/sha3/tests/data/sha3_224/test43.output.bin new file mode 100644 index 00000000..2c6383f2 --- /dev/null +++ b/sha3/tests/data/sha3_224/test43.output.bin @@ -0,0 +1 @@ +l)+<ғvaw0ԡ0 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test44.input.bin b/sha3/tests/data/sha3_224/test44.input.bin new file mode 100644 index 00000000..f458e5bf --- /dev/null +++ b/sha3/tests/data/sha3_224/test44.input.bin @@ -0,0 +1,2 @@ +3p#7 +H.5F|N~I `K.n[@қz \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test44.output.bin b/sha3/tests/data/sha3_224/test44.output.bin new file mode 100644 index 00000000..c84b999f --- /dev/null +++ b/sha3/tests/data/sha3_224/test44.output.bin @@ -0,0 +1 @@ +C^UP^g)>l<\$&n \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test45.input.bin b/sha3/tests/data/sha3_224/test45.input.bin new file mode 100644 index 00000000..8484eefc --- /dev/null +++ b/sha3/tests/data/sha3_224/test45.input.bin @@ -0,0 +1,2 @@ +hTLt-, +؄Q D81'Vk28*k5 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test45.output.bin b/sha3/tests/data/sha3_224/test45.output.bin new file mode 100644 index 00000000..fce9cd51 --- /dev/null +++ b/sha3/tests/data/sha3_224/test45.output.bin @@ -0,0 +1 @@ +Pb+)n21X)6* \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test46.input.bin b/sha3/tests/data/sha3_224/test46.input.bin new file mode 100644 index 00000000..871dabcf --- /dev/null +++ b/sha3/tests/data/sha3_224/test46.input.bin @@ -0,0 +1 @@ ++0V [ڸ %]8Fr4 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test46.output.bin b/sha3/tests/data/sha3_224/test46.output.bin new file mode 100644 index 00000000..1d0ef96c --- /dev/null +++ b/sha3/tests/data/sha3_224/test46.output.bin @@ -0,0 +1 @@ +~QSIp]17:nv! \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test47.input.bin b/sha3/tests/data/sha3_224/test47.input.bin new file mode 100644 index 00000000..ba4594ad --- /dev/null +++ b/sha3/tests/data/sha3_224/test47.input.bin @@ -0,0 +1 @@ +.툁 W-scra8KεEwlʐ~~ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test47.output.bin b/sha3/tests/data/sha3_224/test47.output.bin new file mode 100644 index 00000000..49a0b4c5 --- /dev/null +++ b/sha3/tests/data/sha3_224/test47.output.bin @@ -0,0 +1,2 @@ +P7i&\B5 +S:'-?K} \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test48.input.bin b/sha3/tests/data/sha3_224/test48.input.bin new file mode 100644 index 00000000..d6259031 --- /dev/null +++ b/sha3/tests/data/sha3_224/test48.input.bin @@ -0,0 +1 @@ +CrQ֒Bu O@S,?\QNԥ0M G&6KZQٻ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test48.output.bin b/sha3/tests/data/sha3_224/test48.output.bin new file mode 100644 index 00000000..dcd44986 --- /dev/null +++ b/sha3/tests/data/sha3_224/test48.output.bin @@ -0,0 +1,2 @@ +JOca[w՛dj + \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test58.output.bin b/sha3/tests/data/sha3_224/test58.output.bin new file mode 100644 index 00000000..890e2ce6 --- /dev/null +++ b/sha3/tests/data/sha3_224/test58.output.bin @@ -0,0 +1 @@ + %2w}OxJy0֓Q:/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test59.input.bin b/sha3/tests/data/sha3_224/test59.input.bin new file mode 100644 index 00000000..62c5f7a8 --- /dev/null +++ b/sha3/tests/data/sha3_224/test59.input.bin @@ -0,0 +1 @@ +\_f..(JNktHh8wLOmPq݊A\Hփ)s \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test65.input.bin b/sha3/tests/data/sha3_224/test65.input.bin new file mode 100644 index 00000000..7b176930 --- /dev/null +++ b/sha3/tests/data/sha3_224/test65.input.bin @@ -0,0 +1,2 @@ +& +1v*kƽv_=ޞaBW7PU[L95$ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test65.output.bin b/sha3/tests/data/sha3_224/test65.output.bin new file mode 100644 index 00000000..d4ebf1de --- /dev/null +++ b/sha3/tests/data/sha3_224/test65.output.bin @@ -0,0 +1 @@ +T`o1)kRbQ%%J[Tvӈ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test73.input.bin b/sha3/tests/data/sha3_224/test73.input.bin new file mode 100644 index 00000000..3f6a3d3d Binary files /dev/null and b/sha3/tests/data/sha3_224/test73.input.bin differ diff --git a/sha3/tests/data/sha3_224/test73.output.bin b/sha3/tests/data/sha3_224/test73.output.bin new file mode 100644 index 00000000..22639df2 --- /dev/null +++ b/sha3/tests/data/sha3_224/test73.output.bin @@ -0,0 +1 @@ + ^5UGh>Y\.P \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test74.input.bin b/sha3/tests/data/sha3_224/test74.input.bin new file mode 100644 index 00000000..206cbe08 Binary files /dev/null and b/sha3/tests/data/sha3_224/test74.input.bin differ diff --git a/sha3/tests/data/sha3_224/test74.output.bin b/sha3/tests/data/sha3_224/test74.output.bin new file mode 100644 index 00000000..596c1014 --- /dev/null +++ b/sha3/tests/data/sha3_224/test74.output.bin @@ -0,0 +1 @@ +)%;>$ÿw[A;bqn \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test75.input.bin b/sha3/tests/data/sha3_224/test75.input.bin new file mode 100644 index 00000000..be1ac2da --- /dev/null +++ b/sha3/tests/data/sha3_224/test75.input.bin @@ -0,0 +1 @@ +&Vs}ʸ`._TeT, uZOM%p>";[<ᐜ ԱMpt \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test75.output.bin b/sha3/tests/data/sha3_224/test75.output.bin new file mode 100644 index 00000000..8e0f2ac0 --- /dev/null +++ b/sha3/tests/data/sha3_224/test75.output.bin @@ -0,0 +1 @@ +lN͒X _<+dJt,`8Sqq \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test76.input.bin b/sha3/tests/data/sha3_224/test76.input.bin new file mode 100644 index 00000000..fbd5dce7 --- /dev/null +++ b/sha3/tests/data/sha3_224/test76.input.bin @@ -0,0 +1 @@ +=׿YJ5'}}Z[Mm/dqQA̽{ΠRCޮ|MFv?wӄY< \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test76.output.bin b/sha3/tests/data/sha3_224/test76.output.bin new file mode 100644 index 00000000..c2f8f2b1 --- /dev/null +++ b/sha3/tests/data/sha3_224/test76.output.bin @@ -0,0 +1 @@ +L.*b(AŞ8'K \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test77.input.bin b/sha3/tests/data/sha3_224/test77.input.bin new file mode 100644 index 00000000..5fcf443c --- /dev/null +++ b/sha3/tests/data/sha3_224/test77.input.bin @@ -0,0 +1 @@ +<5@f3X6_\؏ɬX*]XѴcpNº4HԦ<#aY^| \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test77.output.bin b/sha3/tests/data/sha3_224/test77.output.bin new file mode 100644 index 00000000..1a30c279 --- /dev/null +++ b/sha3/tests/data/sha3_224/test77.output.bin @@ -0,0 +1 @@ +4 ]f:CAIҳ?!Pr \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test78.input.bin b/sha3/tests/data/sha3_224/test78.input.bin new file mode 100644 index 00000000..78d1a46e --- /dev/null +++ b/sha3/tests/data/sha3_224/test78.input.bin @@ -0,0 +1,2 @@ +d^ʆ5| + adt֑ͽeKRTi1j SƎ2NŤ֢ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test78.output.bin b/sha3/tests/data/sha3_224/test78.output.bin new file mode 100644 index 00000000..bd3ca79a Binary files /dev/null and b/sha3/tests/data/sha3_224/test78.output.bin differ diff --git a/sha3/tests/data/sha3_224/test79.input.bin b/sha3/tests/data/sha3_224/test79.input.bin new file mode 100644 index 00000000..8ec52985 --- /dev/null +++ b/sha3/tests/data/sha3_224/test79.input.bin @@ -0,0 +1,2 @@ +eK∹ tqh + *47,qΪ%ުWo1)aϛI[jIl[< \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test79.output.bin b/sha3/tests/data/sha3_224/test79.output.bin new file mode 100644 index 00000000..85c6b6a3 --- /dev/null +++ b/sha3/tests/data/sha3_224/test79.output.bin @@ -0,0 +1 @@ +|s8@<=eK],SGfP \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test8.input.bin b/sha3/tests/data/sha3_224/test8.input.bin new file mode 100644 index 00000000..4258f91d --- /dev/null +++ b/sha3/tests/data/sha3_224/test8.input.bin @@ -0,0 +1 @@ +̃ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test8.output.bin b/sha3/tests/data/sha3_224/test8.output.bin new file mode 100644 index 00000000..a7d38536 --- /dev/null +++ b/sha3/tests/data/sha3_224/test8.output.bin @@ -0,0 +1 @@ +DI|GvœX\.2,1kuzj \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test80.input.bin b/sha3/tests/data/sha3_224/test80.input.bin new file mode 100644 index 00000000..223995c9 Binary files /dev/null and b/sha3/tests/data/sha3_224/test80.input.bin differ diff --git a/sha3/tests/data/sha3_224/test80.output.bin b/sha3/tests/data/sha3_224/test80.output.bin new file mode 100644 index 00000000..e49a791f --- /dev/null +++ b/sha3/tests/data/sha3_224/test80.output.bin @@ -0,0 +1 @@ +ǰ}-x0B6+=3 % \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test81.input.bin b/sha3/tests/data/sha3_224/test81.input.bin new file mode 100644 index 00000000..5cf1dae3 --- /dev/null +++ b/sha3/tests/data/sha3_224/test81.input.bin @@ -0,0 +1 @@ + z_6z͊H|'O3k7FXG_z5{eo{恵աꀅ⮜ 1Tmj0 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test81.output.bin b/sha3/tests/data/sha3_224/test81.output.bin new file mode 100644 index 00000000..acab01fa --- /dev/null +++ b/sha3/tests/data/sha3_224/test81.output.bin @@ -0,0 +1,2 @@ +/YJUOmY:._8 + \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test82.input.bin b/sha3/tests/data/sha3_224/test82.input.bin new file mode 100644 index 00000000..5ebb1af3 --- /dev/null +++ b/sha3/tests/data/sha3_224/test82.input.bin @@ -0,0 +1 @@ + OWwJ"1%k. oYu6]Sڃc#o<^ |hw=I\" \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test82.output.bin b/sha3/tests/data/sha3_224/test82.output.bin new file mode 100644 index 00000000..d1442798 --- /dev/null +++ b/sha3/tests/data/sha3_224/test82.output.bin @@ -0,0 +1 @@ +XsE<8j>\vX{H = \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test83.input.bin b/sha3/tests/data/sha3_224/test83.input.bin new file mode 100644 index 00000000..8af74e5b --- /dev/null +++ b/sha3/tests/data/sha3_224/test83.input.bin @@ -0,0 +1,3 @@ +(bXVP Lw(a, ?o +&_?'3~rg{}!e +M2Ibv8ۭp,|&@ϋNT \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test83.output.bin b/sha3/tests/data/sha3_224/test83.output.bin new file mode 100644 index 00000000..57c9b214 --- /dev/null +++ b/sha3/tests/data/sha3_224/test83.output.bin @@ -0,0 +1 @@ +5CշQ@ۅb {8` \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test84.input.bin b/sha3/tests/data/sha3_224/test84.input.bin new file mode 100644 index 00000000..c5affa06 --- /dev/null +++ b/sha3/tests/data/sha3_224/test84.input.bin @@ -0,0 +1,2 @@ +cH);w wTNQfȁitnB?vj  >;oytp +z}(L;xp=+xan \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test84.output.bin b/sha3/tests/data/sha3_224/test84.output.bin new file mode 100644 index 00000000..d4d220d1 --- /dev/null +++ b/sha3/tests/data/sha3_224/test84.output.bin @@ -0,0 +1 @@ +6xOIXص%݉:>]ߥ[OZ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test85.input.bin b/sha3/tests/data/sha3_224/test85.input.bin new file mode 100644 index 00000000..cffc8df4 Binary files /dev/null and b/sha3/tests/data/sha3_224/test85.input.bin differ diff --git a/sha3/tests/data/sha3_224/test85.output.bin b/sha3/tests/data/sha3_224/test85.output.bin new file mode 100644 index 00000000..f2a5ab88 --- /dev/null +++ b/sha3/tests/data/sha3_224/test85.output.bin @@ -0,0 +1 @@ +Aj`f.O|Q,WG \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test86.input.bin b/sha3/tests/data/sha3_224/test86.input.bin new file mode 100644 index 00000000..7db9b52d Binary files /dev/null and b/sha3/tests/data/sha3_224/test86.input.bin differ diff --git a/sha3/tests/data/sha3_224/test86.output.bin b/sha3/tests/data/sha3_224/test86.output.bin new file mode 100644 index 00000000..d4eece33 --- /dev/null +++ b/sha3/tests/data/sha3_224/test86.output.bin @@ -0,0 +1 @@ +nGfN"!2]uW \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test87.input.bin b/sha3/tests/data/sha3_224/test87.input.bin new file mode 100644 index 00000000..4ab2eb77 --- /dev/null +++ b/sha3/tests/data/sha3_224/test87.input.bin @@ -0,0 +1 @@ +hn ij)/3͚J1zI/\v镬Ȼ{xЁ%]9GY ΂"AM%FR \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test87.output.bin b/sha3/tests/data/sha3_224/test87.output.bin new file mode 100644 index 00000000..a4f56949 --- /dev/null +++ b/sha3/tests/data/sha3_224/test87.output.bin @@ -0,0 +1 @@ ++)A UX>*Op> \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test88.input.bin b/sha3/tests/data/sha3_224/test88.input.bin new file mode 100644 index 00000000..98c75ade --- /dev/null +++ b/sha3/tests/data/sha3_224/test88.input.bin @@ -0,0 +1 @@ +drN1Tt?4dK6޽dۧ\>@邻p0418FvO/E5;)o';oV< \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test88.output.bin b/sha3/tests/data/sha3_224/test88.output.bin new file mode 100644 index 00000000..4659dfaf Binary files /dev/null and b/sha3/tests/data/sha3_224/test88.output.bin differ diff --git a/sha3/tests/data/sha3_224/test89.input.bin b/sha3/tests/data/sha3_224/test89.input.bin new file mode 100644 index 00000000..e0db0dc8 --- /dev/null +++ b/sha3/tests/data/sha3_224/test89.input.bin @@ -0,0 +1 @@ + Xf_CB 1Ͱ"ƃ z>RWYLﴧ(F2I'uOJOd= чDL͟!@@NmE+TB} \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test89.output.bin b/sha3/tests/data/sha3_224/test89.output.bin new file mode 100644 index 00000000..064b232f --- /dev/null +++ b/sha3/tests/data/sha3_224/test89.output.bin @@ -0,0 +1 @@ +ұ8kk]P m^@ ;2 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test9.input.bin b/sha3/tests/data/sha3_224/test9.input.bin new file mode 100644 index 00000000..dbdc2b7a --- /dev/null +++ b/sha3/tests/data/sha3_224/test9.input.bin @@ -0,0 +1 @@ +JO $Q%& \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test9.output.bin b/sha3/tests/data/sha3_224/test9.output.bin new file mode 100644 index 00000000..f3c86e1f --- /dev/null +++ b/sha3/tests/data/sha3_224/test9.output.bin @@ -0,0 +1 @@ +8lpX;4Pq麔y D@ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test90.input.bin b/sha3/tests/data/sha3_224/test90.input.bin new file mode 100644 index 00000000..79e91444 Binary files /dev/null and b/sha3/tests/data/sha3_224/test90.input.bin differ diff --git a/sha3/tests/data/sha3_224/test90.output.bin b/sha3/tests/data/sha3_224/test90.output.bin new file mode 100644 index 00000000..b0a2ac8e --- /dev/null +++ b/sha3/tests/data/sha3_224/test90.output.bin @@ -0,0 +1 @@ +FH3u+K߭<牢rkH \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test91.input.bin b/sha3/tests/data/sha3_224/test91.input.bin new file mode 100644 index 00000000..ea51e82c --- /dev/null +++ b/sha3/tests/data/sha3_224/test91.input.bin @@ -0,0 +1 @@ +au,KWJ~@N=]RL ܰ:2uܭrS7yy&]|%yx< \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test91.output.bin b/sha3/tests/data/sha3_224/test91.output.bin new file mode 100644 index 00000000..14197619 Binary files /dev/null and b/sha3/tests/data/sha3_224/test91.output.bin differ diff --git a/sha3/tests/data/sha3_224/test92.input.bin b/sha3/tests/data/sha3_224/test92.input.bin new file mode 100644 index 00000000..47f32cf6 --- /dev/null +++ b/sha3/tests/data/sha3_224/test92.input.bin @@ -0,0 +1 @@ +5pc wNVS^GPw5DpFOdv*#zIRc '|Qs~z\U_ \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test92.output.bin b/sha3/tests/data/sha3_224/test92.output.bin new file mode 100644 index 00000000..b5a1e505 --- /dev/null +++ b/sha3/tests/data/sha3_224/test92.output.bin @@ -0,0 +1 @@ +?1?tt? \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test93.input.bin b/sha3/tests/data/sha3_224/test93.input.bin new file mode 100644 index 00000000..203ee257 --- /dev/null +++ b/sha3/tests/data/sha3_224/test93.input.bin @@ -0,0 +1,2 @@ +/#@[r,YlE8^^cJ +*r>ݵ+g2aDʇ嚣f \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test95.input.bin b/sha3/tests/data/sha3_224/test95.input.bin new file mode 100644 index 00000000..6ad6df94 Binary files /dev/null and b/sha3/tests/data/sha3_224/test95.input.bin differ diff --git a/sha3/tests/data/sha3_224/test95.output.bin b/sha3/tests/data/sha3_224/test95.output.bin new file mode 100644 index 00000000..6f0d837e Binary files /dev/null and b/sha3/tests/data/sha3_224/test95.output.bin differ diff --git a/sha3/tests/data/sha3_224/test96.input.bin b/sha3/tests/data/sha3_224/test96.input.bin new file mode 100644 index 00000000..33b94cb1 --- /dev/null +++ b/sha3/tests/data/sha3_224/test96.input.bin @@ -0,0 +1 @@ +&kyNHl7 7i+{t "a+6dc?$3ᘎŬXpyz `vR9 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test96.output.bin b/sha3/tests/data/sha3_224/test96.output.bin new file mode 100644 index 00000000..cf9663e8 --- /dev/null +++ b/sha3/tests/data/sha3_224/test96.output.bin @@ -0,0 +1,2 @@ +'GLx8tG +., M \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test97.input.bin b/sha3/tests/data/sha3_224/test97.input.bin new file mode 100644 index 00000000..86781ad4 Binary files /dev/null and b/sha3/tests/data/sha3_224/test97.input.bin differ diff --git a/sha3/tests/data/sha3_224/test97.output.bin b/sha3/tests/data/sha3_224/test97.output.bin new file mode 100644 index 00000000..e16341f0 --- /dev/null +++ b/sha3/tests/data/sha3_224/test97.output.bin @@ -0,0 +1 @@ +^)jMէ4V9v6 \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test98.input.bin b/sha3/tests/data/sha3_224/test98.input.bin new file mode 100644 index 00000000..840e1d6b --- /dev/null +++ b/sha3/tests/data/sha3_224/test98.input.bin @@ -0,0 +1,2 @@ +8 +5,ߨdx}:ugK]Zcfnm$RW~ؚLDL?$ Plp˼+*r?Dൢɬj I \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test98.output.bin b/sha3/tests/data/sha3_224/test98.output.bin new file mode 100644 index 00000000..7bf1d9b5 --- /dev/null +++ b/sha3/tests/data/sha3_224/test98.output.bin @@ -0,0 +1 @@ +s/o8!a!L_! \ No newline at end of file diff --git a/sha3/tests/data/sha3_224/test99.input.bin b/sha3/tests/data/sha3_224/test99.input.bin new file mode 100644 index 00000000..47b8b282 Binary files /dev/null and b/sha3/tests/data/sha3_224/test99.input.bin differ diff --git a/sha3/tests/data/sha3_224/test99.output.bin b/sha3/tests/data/sha3_224/test99.output.bin new file mode 100644 index 00000000..bfd98e02 Binary files /dev/null and b/sha3/tests/data/sha3_224/test99.output.bin differ diff --git a/sha3/tests/data/sha3_256/test1.input.bin b/sha3/tests/data/sha3_256/test1.input.bin new file mode 100644 index 00000000..e69de29b diff --git a/sha3/tests/data/sha3_256/test1.output.bin b/sha3/tests/data/sha3_256/test1.output.bin new file mode 100644 index 00000000..12b9147f --- /dev/null +++ b/sha3/tests/data/sha3_256/test1.output.bin @@ -0,0 +1,2 @@ +fQGVabM;I +KCJ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test10.input.bin b/sha3/tests/data/sha3_256/test10.input.bin new file mode 100644 index 00000000..c98711ad --- /dev/null +++ b/sha3/tests/data/sha3_256/test10.input.bin @@ -0,0 +1 @@ +fAcu \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test10.output.bin b/sha3/tests/data/sha3_256/test10.output.bin new file mode 100644 index 00000000..a17e8cf5 --- /dev/null +++ b/sha3/tests/data/sha3_256/test10.output.bin @@ -0,0 +1 @@ +nȽr)evidF נƇp| \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test100.input.bin b/sha3/tests/data/sha3_256/test100.input.bin new file mode 100644 index 00000000..8ffc3c37 Binary files /dev/null and b/sha3/tests/data/sha3_256/test100.input.bin differ diff --git a/sha3/tests/data/sha3_256/test100.output.bin b/sha3/tests/data/sha3_256/test100.output.bin new file mode 100644 index 00000000..e88bc139 --- /dev/null +++ b/sha3/tests/data/sha3_256/test100.output.bin @@ -0,0 +1 @@ +smQMx[]@ٍ8"[#C \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test101.input.bin b/sha3/tests/data/sha3_256/test101.input.bin new file mode 100644 index 00000000..d64c49dd --- /dev/null +++ b/sha3/tests/data/sha3_256/test101.input.bin @@ -0,0 +1 @@ +C_ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test102.input.bin b/sha3/tests/data/sha3_256/test102.input.bin new file mode 100644 index 00000000..3aa029cf Binary files /dev/null and b/sha3/tests/data/sha3_256/test102.input.bin differ diff --git a/sha3/tests/data/sha3_256/test102.output.bin b/sha3/tests/data/sha3_256/test102.output.bin new file mode 100644 index 00000000..0f5fbf8a Binary files /dev/null and b/sha3/tests/data/sha3_256/test102.output.bin differ diff --git a/sha3/tests/data/sha3_256/test103.input.bin b/sha3/tests/data/sha3_256/test103.input.bin new file mode 100644 index 00000000..20e92750 Binary files /dev/null and b/sha3/tests/data/sha3_256/test103.input.bin differ diff --git a/sha3/tests/data/sha3_256/test103.output.bin b/sha3/tests/data/sha3_256/test103.output.bin new file mode 100644 index 00000000..3bd94f2a --- /dev/null +++ b/sha3/tests/data/sha3_256/test103.output.bin @@ -0,0 +1,2 @@ +(:9@( +y{#`P[z \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test104.input.bin b/sha3/tests/data/sha3_256/test104.input.bin new file mode 100644 index 00000000..69627111 --- /dev/null +++ b/sha3/tests/data/sha3_256/test104.input.bin @@ -0,0 +1 @@ +<,R<Ĥ(-Fkc$>­A0T {#Ut!tAI/Dm`@3U{v٠IYa Xڳ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test104.output.bin b/sha3/tests/data/sha3_256/test104.output.bin new file mode 100644 index 00000000..2e739fc5 --- /dev/null +++ b/sha3/tests/data/sha3_256/test104.output.bin @@ -0,0 +1 @@ +>S-L<\}'DSk \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test105.input.bin b/sha3/tests/data/sha3_256/test105.input.bin new file mode 100644 index 00000000..12b383e4 --- /dev/null +++ b/sha3/tests/data/sha3_256/test105.input.bin @@ -0,0 +1,2 @@ +W뗙LwS]Mh<>gqS'LJX휽ԆiI6O*Q&Tr]δjjm#Q~3PV`j̯z%K|n +!iiA8H \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test105.output.bin b/sha3/tests/data/sha3_256/test105.output.bin new file mode 100644 index 00000000..25492259 --- /dev/null +++ b/sha3/tests/data/sha3_256/test105.output.bin @@ -0,0 +1 @@ +`$gH5.e;8\O fb \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test106.input.bin b/sha3/tests/data/sha3_256/test106.input.bin new file mode 100644 index 00000000..4bee27fe --- /dev/null +++ b/sha3/tests/data/sha3_256/test106.input.bin @@ -0,0 +1,3 @@ +dm1PLy=rgcGIGSgFXj$?\P +nWڻx ++Rpڢ |өPќO>Ks#A[N}m .Nx \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test106.output.bin b/sha3/tests/data/sha3_256/test106.output.bin new file mode 100644 index 00000000..4d2d336d --- /dev/null +++ b/sha3/tests/data/sha3_256/test106.output.bin @@ -0,0 +1 @@ + ;ᴮs+Gיn3*h6z \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test107.input.bin b/sha3/tests/data/sha3_256/test107.input.bin new file mode 100644 index 00000000..69b78d43 Binary files /dev/null and b/sha3/tests/data/sha3_256/test107.input.bin differ diff --git a/sha3/tests/data/sha3_256/test107.output.bin b/sha3/tests/data/sha3_256/test107.output.bin new file mode 100644 index 00000000..e9311e03 --- /dev/null +++ b/sha3/tests/data/sha3_256/test107.output.bin @@ -0,0 +1 @@ +:m882H?\oχn Mܥ# \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test108.input.bin b/sha3/tests/data/sha3_256/test108.input.bin new file mode 100644 index 00000000..7f3ebdde Binary files /dev/null and b/sha3/tests/data/sha3_256/test108.input.bin differ diff --git a/sha3/tests/data/sha3_256/test108.output.bin b/sha3/tests/data/sha3_256/test108.output.bin new file mode 100644 index 00000000..68eefbf6 --- /dev/null +++ b/sha3/tests/data/sha3_256/test108.output.bin @@ -0,0 +1 @@ +q\Wv,FT?o/'q \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test109.input.bin b/sha3/tests/data/sha3_256/test109.input.bin new file mode 100644 index 00000000..27b98aa5 --- /dev/null +++ b/sha3/tests/data/sha3_256/test109.input.bin @@ -0,0 +1,2 @@ +O!1*8 ٫o<90gD@TW%bfHRtsy +C<`UQA%=v)~Ǡ ).!tG0A \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test109.output.bin b/sha3/tests/data/sha3_256/test109.output.bin new file mode 100644 index 00000000..c844d108 --- /dev/null +++ b/sha3/tests/data/sha3_256/test109.output.bin @@ -0,0 +1 @@ +[#!, -Hw><ݵ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test11.input.bin b/sha3/tests/data/sha3_256/test11.input.bin new file mode 100644 index 00000000..f41e1b9a --- /dev/null +++ b/sha3/tests/data/sha3_256/test11.input.bin @@ -0,0 +1 @@ +B"'a;oS \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test11.output.bin b/sha3/tests/data/sha3_256/test11.output.bin new file mode 100644 index 00000000..04fa6033 --- /dev/null +++ b/sha3/tests/data/sha3_256/test11.output.bin @@ -0,0 +1 @@ +1r[!:|EXKϣB$U \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test110.input.bin b/sha3/tests/data/sha3_256/test110.input.bin new file mode 100644 index 00000000..578ca7d1 --- /dev/null +++ b/sha3/tests/data/sha3_256/test110.input.bin @@ -0,0 +1 @@ +u8=~YQs^gb'Y / oI*{,Sa/w2e^4i])]m \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test110.output.bin b/sha3/tests/data/sha3_256/test110.output.bin new file mode 100644 index 00000000..2f0ca039 --- /dev/null +++ b/sha3/tests/data/sha3_256/test110.output.bin @@ -0,0 +1,2 @@ ++\ +uV΋/hk_ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test111.input.bin b/sha3/tests/data/sha3_256/test111.input.bin new file mode 100644 index 00000000..aa83a838 --- /dev/null +++ b/sha3/tests/data/sha3_256/test111.input.bin @@ -0,0 +1 @@ +G·IHFY!P25xO,@K[j{;۠,_YeyÂq1 ,ȻS;CD^ *ףTW`unv \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test111.output.bin b/sha3/tests/data/sha3_256/test111.output.bin new file mode 100644 index 00000000..e48df1a0 --- /dev/null +++ b/sha3/tests/data/sha3_256/test111.output.bin @@ -0,0 +1,2 @@ +[ +o~] ןTLh"F`?? \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test112.input.bin b/sha3/tests/data/sha3_256/test112.input.bin new file mode 100644 index 00000000..054fc217 Binary files /dev/null and b/sha3/tests/data/sha3_256/test112.input.bin differ diff --git a/sha3/tests/data/sha3_256/test112.output.bin b/sha3/tests/data/sha3_256/test112.output.bin new file mode 100644 index 00000000..30f74a4b --- /dev/null +++ b/sha3/tests/data/sha3_256/test112.output.bin @@ -0,0 +1,2 @@ +xൣLL~T +ude8|R \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test113.input.bin b/sha3/tests/data/sha3_256/test113.input.bin new file mode 100644 index 00000000..2c446502 --- /dev/null +++ b/sha3/tests/data/sha3_256/test113.input.bin @@ -0,0 +1,2 @@ +X֩E$VgpAp@rKy͋ev|~tLZkɮLZ 2h3ɝ9R1}[]^}Z`]_\+ +#y#S2,N \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test113.output.bin b/sha3/tests/data/sha3_256/test113.output.bin new file mode 100644 index 00000000..51c8b976 --- /dev/null +++ b/sha3/tests/data/sha3_256/test113.output.bin @@ -0,0 +1 @@ +B0Z% bk]2oxѾ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test114.input.bin b/sha3/tests/data/sha3_256/test114.input.bin new file mode 100644 index 00000000..d1cefe00 --- /dev/null +++ b/sha3/tests/data/sha3_256/test114.input.bin @@ -0,0 +1 @@ +t9mgյ, N?K>msNN]jr5@#Tf%ꗕ30y+co J(`Yc-e'~"r_嵮 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test114.output.bin b/sha3/tests/data/sha3_256/test114.output.bin new file mode 100644 index 00000000..11c864ee --- /dev/null +++ b/sha3/tests/data/sha3_256/test114.output.bin @@ -0,0 +1 @@ +k>N<]'8W^I. \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test115.input.bin b/sha3/tests/data/sha3_256/test115.input.bin new file mode 100644 index 00000000..3f20aaf1 Binary files /dev/null and b/sha3/tests/data/sha3_256/test115.input.bin differ diff --git a/sha3/tests/data/sha3_256/test115.output.bin b/sha3/tests/data/sha3_256/test115.output.bin new file mode 100644 index 00000000..1ec70c30 --- /dev/null +++ b/sha3/tests/data/sha3_256/test115.output.bin @@ -0,0 +1 @@ +50Oe?Ɠ8a-Zp. \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test116.input.bin b/sha3/tests/data/sha3_256/test116.input.bin new file mode 100644 index 00000000..a6fd6d89 --- /dev/null +++ b/sha3/tests/data/sha3_256/test116.input.bin @@ -0,0 +1 @@ +\hL4c򒑿&./B*ݜ3/=|41 m_HW9OG";1jnXgZUIÍv0aʫi( 9- \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test116.output.bin b/sha3/tests/data/sha3_256/test116.output.bin new file mode 100644 index 00000000..cc5a8c02 --- /dev/null +++ b/sha3/tests/data/sha3_256/test116.output.bin @@ -0,0 +1 @@ +J{ъE$\ ?cJu6(+L; \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test117.input.bin b/sha3/tests/data/sha3_256/test117.input.bin new file mode 100644 index 00000000..2784049e --- /dev/null +++ b/sha3/tests/data/sha3_256/test117.input.bin @@ -0,0 +1 @@ +.ooeG) ?)׬o`z2C>#ul\.*L_cbdPXeq@Jm+ODuT4i4 Za]@Wۙ1BbEtE \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test117.output.bin b/sha3/tests/data/sha3_256/test117.output.bin new file mode 100644 index 00000000..e7ef9a2f --- /dev/null +++ b/sha3/tests/data/sha3_256/test117.output.bin @@ -0,0 +1 @@ +䳱)JUojjPv=Q3I7#> \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test118.input.bin b/sha3/tests/data/sha3_256/test118.input.bin new file mode 100644 index 00000000..2077f3da --- /dev/null +++ b/sha3/tests/data/sha3_256/test118.input.bin @@ -0,0 +1 @@ +ڱG lB1uV(RBj ڲCr dhkǶzSLBc슟*qc"Jabsϣ0"${BEc`0(ãg([iiD~!b Skމ%qf$k!)= W- 5]% \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test122.output.bin b/sha3/tests/data/sha3_256/test122.output.bin new file mode 100644 index 00000000..793e386c --- /dev/null +++ b/sha3/tests/data/sha3_256/test122.output.bin @@ -0,0 +1 @@ +m-D[r%C2e\X \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test123.input.bin b/sha3/tests/data/sha3_256/test123.input.bin new file mode 100644 index 00000000..b010172a --- /dev/null +++ b/sha3/tests/data/sha3_256/test123.input.bin @@ -0,0 +1 @@ +eoĸ |hu Nj_s$Gx%'F3YtnJW|RLRG#y\UDlΐlwJŹL"Vu]˖:KNY| y@ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test123.output.bin b/sha3/tests/data/sha3_256/test123.output.bin new file mode 100644 index 00000000..356597bd --- /dev/null +++ b/sha3/tests/data/sha3_256/test123.output.bin @@ -0,0 +1 @@ +(q`(ZQ(9=G Cس \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test124.input.bin b/sha3/tests/data/sha3_256/test124.input.bin new file mode 100644 index 00000000..02d4a4d3 Binary files /dev/null and b/sha3/tests/data/sha3_256/test124.input.bin differ diff --git a/sha3/tests/data/sha3_256/test124.output.bin b/sha3/tests/data/sha3_256/test124.output.bin new file mode 100644 index 00000000..c79034e0 --- /dev/null +++ b/sha3/tests/data/sha3_256/test124.output.bin @@ -0,0 +1 @@ +rrio!ު$|X&|ۡ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test125.input.bin b/sha3/tests/data/sha3_256/test125.input.bin new file mode 100644 index 00000000..1d34f83e Binary files /dev/null and b/sha3/tests/data/sha3_256/test125.input.bin differ diff --git a/sha3/tests/data/sha3_256/test125.output.bin b/sha3/tests/data/sha3_256/test125.output.bin new file mode 100644 index 00000000..6333cfd1 --- /dev/null +++ b/sha3/tests/data/sha3_256/test125.output.bin @@ -0,0 +1 @@ +:b 9֘vp{3\4:q\\ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test126.input.bin b/sha3/tests/data/sha3_256/test126.input.bin new file mode 100644 index 00000000..78a544e8 --- /dev/null +++ b/sha3/tests/data/sha3_256/test126.input.bin @@ -0,0 +1,2 @@ +E\ziDtY=*t(ghFfnQhJÃ+;K]*RJh +pWF=<_+Ƨ0WjUۉVwG&{9P?S \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test126.output.bin b/sha3/tests/data/sha3_256/test126.output.bin new file mode 100644 index 00000000..9d0e779e --- /dev/null +++ b/sha3/tests/data/sha3_256/test126.output.bin @@ -0,0 +1 @@ +x.ow_Lə~?k PX@4P \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test127.input.bin b/sha3/tests/data/sha3_256/test127.input.bin new file mode 100644 index 00000000..71c98702 Binary files /dev/null and b/sha3/tests/data/sha3_256/test127.input.bin differ diff --git a/sha3/tests/data/sha3_256/test127.output.bin b/sha3/tests/data/sha3_256/test127.output.bin new file mode 100644 index 00000000..53fc7898 --- /dev/null +++ b/sha3/tests/data/sha3_256/test127.output.bin @@ -0,0 +1,2 @@ +k!~i%mV9 ba +@* \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test128.input.bin b/sha3/tests/data/sha3_256/test128.input.bin new file mode 100644 index 00000000..dfddbc47 --- /dev/null +++ b/sha3/tests/data/sha3_256/test128.input.bin @@ -0,0 +1,4 @@ +/ŕ nc6?uu +a31(Lkv1[FC.0 ZR;k +nb +l]e,7iJtoFӲ&ޥS9:E¥-Ue \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test128.output.bin b/sha3/tests/data/sha3_256/test128.output.bin new file mode 100644 index 00000000..22a14291 --- /dev/null +++ b/sha3/tests/data/sha3_256/test128.output.bin @@ -0,0 +1,2 @@ + + ıQ]C5[.7DQJB) \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test129.input.bin b/sha3/tests/data/sha3_256/test129.input.bin new file mode 100644 index 00000000..6a853339 --- /dev/null +++ b/sha3/tests/data/sha3_256/test129.input.bin @@ -0,0 +1,2 @@ ++mf^!&|m2A)6+]/h +rQu#L(cf!TV_[F;F s%mni3NV'h_ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test129.output.bin b/sha3/tests/data/sha3_256/test129.output.bin new file mode 100644 index 00000000..19d44ff7 Binary files /dev/null and b/sha3/tests/data/sha3_256/test129.output.bin differ diff --git a/sha3/tests/data/sha3_256/test13.input.bin b/sha3/tests/data/sha3_256/test13.input.bin new file mode 100644 index 00000000..e68fe561 --- /dev/null +++ b/sha3/tests/data/sha3_256/test13.input.bin @@ -0,0 +1 @@ +[<) \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test13.output.bin b/sha3/tests/data/sha3_256/test13.output.bin new file mode 100644 index 00000000..e1ae83da --- /dev/null +++ b/sha3/tests/data/sha3_256/test13.output.bin @@ -0,0 +1 @@ +/oeުx%A fNѢ^Oxy \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test130.input.bin b/sha3/tests/data/sha3_256/test130.input.bin new file mode 100644 index 00000000..0169cf31 --- /dev/null +++ b/sha3/tests/data/sha3_256/test130.input.bin @@ -0,0 +1,2 @@ +P,ܫb3Hj)ử +'41DYH"=R{K&Bִ%y* +ʵb a \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test131.output.bin b/sha3/tests/data/sha3_256/test131.output.bin new file mode 100644 index 00000000..03be9e4b --- /dev/null +++ b/sha3/tests/data/sha3_256/test131.output.bin @@ -0,0 +1,2 @@ +qv?+" Pk +:kXdT=V \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test132.input.bin b/sha3/tests/data/sha3_256/test132.input.bin new file mode 100644 index 00000000..92a71ce4 --- /dev/null +++ b/sha3/tests/data/sha3_256/test132.input.bin @@ -0,0 +1 @@ +芰S\ Lz|}T73Ð1TpnGwCBsBo_ba7za- ߫^!P`2^MUO`!i+yZw53GޟCV{^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test132.output.bin b/sha3/tests/data/sha3_256/test132.output.bin new file mode 100644 index 00000000..664dd7fd --- /dev/null +++ b/sha3/tests/data/sha3_256/test132.output.bin @@ -0,0 +1,2 @@ +rI3  +**!Ah[sbImǼ3Y \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test133.input.bin b/sha3/tests/data/sha3_256/test133.input.bin new file mode 100644 index 00000000..86d9e207 Binary files /dev/null and b/sha3/tests/data/sha3_256/test133.input.bin differ diff --git a/sha3/tests/data/sha3_256/test133.output.bin b/sha3/tests/data/sha3_256/test133.output.bin new file mode 100644 index 00000000..c43e6b4f --- /dev/null +++ b/sha3/tests/data/sha3_256/test133.output.bin @@ -0,0 +1 @@ +~%wOCF76%T̽,a܋' \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test134.input.bin b/sha3/tests/data/sha3_256/test134.input.bin new file mode 100644 index 00000000..8204a5b0 --- /dev/null +++ b/sha3/tests/data/sha3_256/test134.input.bin @@ -0,0 +1 @@ +Y ǩ$%ejmAXzL>;1aEϸ=2Zb_%ڛ\l *ŋ[P{&?0T8Q #ݴЇn5S6:-閸^p6tx*~Zp8m;'tS[^Q}_{"aK=)7-8WR|ݪX \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test135.output.bin b/sha3/tests/data/sha3_256/test135.output.bin new file mode 100644 index 00000000..a7954c69 --- /dev/null +++ b/sha3/tests/data/sha3_256/test135.output.bin @@ -0,0 +1 @@ +> :*?@ıF\ry \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test136.input.bin b/sha3/tests/data/sha3_256/test136.input.bin new file mode 100644 index 00000000..d1749286 --- /dev/null +++ b/sha3/tests/data/sha3_256/test136.input.bin @@ -0,0 +1 @@ +qѤVC*.M/ !G2:`@gsKqxܞ9w`!qyz4Q()]7Uyoo؉kI2|q+$-R2,t AF]v=RۘIӰ֨/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test136.output.bin b/sha3/tests/data/sha3_256/test136.output.bin new file mode 100644 index 00000000..a7611357 --- /dev/null +++ b/sha3/tests/data/sha3_256/test136.output.bin @@ -0,0 +1 @@ + N=Yw|skYgy5 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test137.input.bin b/sha3/tests/data/sha3_256/test137.input.bin new file mode 100644 index 00000000..1ef8a0e9 Binary files /dev/null and b/sha3/tests/data/sha3_256/test137.input.bin differ diff --git a/sha3/tests/data/sha3_256/test137.output.bin b/sha3/tests/data/sha3_256/test137.output.bin new file mode 100644 index 00000000..f9f1f42c --- /dev/null +++ b/sha3/tests/data/sha3_256/test137.output.bin @@ -0,0 +1 @@ +g?A7U ΰw(cdŜȩw2 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test138.input.bin b/sha3/tests/data/sha3_256/test138.input.bin new file mode 100644 index 00000000..5adeaf84 Binary files /dev/null and b/sha3/tests/data/sha3_256/test138.input.bin differ diff --git a/sha3/tests/data/sha3_256/test138.output.bin b/sha3/tests/data/sha3_256/test138.output.bin new file mode 100644 index 00000000..d9e86d23 --- /dev/null +++ b/sha3/tests/data/sha3_256/test138.output.bin @@ -0,0 +1,2 @@ +$2;kKHX-s^w'" +PGb \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test139.input.bin b/sha3/tests/data/sha3_256/test139.input.bin new file mode 100644 index 00000000..79b46f4d --- /dev/null +++ b/sha3/tests/data/sha3_256/test139.input.bin @@ -0,0 +1 @@ +&Mp$=!Iqadp`؂a]A8V@wxnUhU2pG-ы~+~ 3lN"\;#)nO(-I_|iu },lF)ps  \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test139.output.bin b/sha3/tests/data/sha3_256/test139.output.bin new file mode 100644 index 00000000..ff117420 --- /dev/null +++ b/sha3/tests/data/sha3_256/test139.output.bin @@ -0,0 +1 @@ +WT.I] /G7 Z& \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test14.input.bin b/sha3/tests/data/sha3_256/test14.input.bin new file mode 100644 index 00000000..efef93b3 --- /dev/null +++ b/sha3/tests/data/sha3_256/test14.input.bin @@ -0,0 +1 @@ +F'2(/8;F \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test14.output.bin b/sha3/tests/data/sha3_256/test14.output.bin new file mode 100644 index 00000000..2b56b16d --- /dev/null +++ b/sha3/tests/data/sha3_256/test14.output.bin @@ -0,0 +1 @@ +(q>Oݴ&L:$&ja \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test140.input.bin b/sha3/tests/data/sha3_256/test140.input.bin new file mode 100644 index 00000000..9634578b --- /dev/null +++ b/sha3/tests/data/sha3_256/test140.input.bin @@ -0,0 +1 @@ +n$ff"k2웩O ÙA¥Й'b49bS|('sekn J78j0wHi\*v %w?Ul6-Kt,,IꎗO30e \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test140.output.bin b/sha3/tests/data/sha3_256/test140.output.bin new file mode 100644 index 00000000..08f07432 --- /dev/null +++ b/sha3/tests/data/sha3_256/test140.output.bin @@ -0,0 +1 @@ +aPzP @,V9LP \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test141.input.bin b/sha3/tests/data/sha3_256/test141.input.bin new file mode 100644 index 00000000..cf209ba1 --- /dev/null +++ b/sha3/tests/data/sha3_256/test141.input.bin @@ -0,0 +1 @@ +O q<.N<*s4@6NǵZPw;o}lEX.~#Eڵ adTVBF>4wƲU7j¡jbWp|D)nm3 [`7x8<<"3^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test141.output.bin b/sha3/tests/data/sha3_256/test141.output.bin new file mode 100644 index 00000000..30fe83a8 --- /dev/null +++ b/sha3/tests/data/sha3_256/test141.output.bin @@ -0,0 +1 @@ +GaRNlrU)hs`zy|< %ƈPꫮFyY&\#J?46L/\tHpb$m_U*TFO- tH0C") \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test142.output.bin b/sha3/tests/data/sha3_256/test142.output.bin new file mode 100644 index 00000000..72eec2d7 --- /dev/null +++ b/sha3/tests/data/sha3_256/test142.output.bin @@ -0,0 +1 @@ +Ɯ^:ay+ƶqeQYRQ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test143.input.bin b/sha3/tests/data/sha3_256/test143.input.bin new file mode 100644 index 00000000..c63256ae --- /dev/null +++ b/sha3/tests/data/sha3_256/test143.input.bin @@ -0,0 +1,2 @@ + NvG WO@vgOihM 6} q365 )zZ\At[ɻLZA\y~c8ׁjTZo +[l3fYBCh \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test143.output.bin b/sha3/tests/data/sha3_256/test143.output.bin new file mode 100644 index 00000000..601f1f9d --- /dev/null +++ b/sha3/tests/data/sha3_256/test143.output.bin @@ -0,0 +1 @@ +<|`WWx4WA 9gz" \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test144.input.bin b/sha3/tests/data/sha3_256/test144.input.bin new file mode 100644 index 00000000..4eb647e3 --- /dev/null +++ b/sha3/tests/data/sha3_256/test144.input.bin @@ -0,0 +1 @@ +@<:$,l xS9ڲi8\v7B;T}6|k<x357[oơOPLri r,lgc@ay6=\ߓ?$K͍~f߯ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test144.output.bin b/sha3/tests/data/sha3_256/test144.output.bin new file mode 100644 index 00000000..a6a151b6 --- /dev/null +++ b/sha3/tests/data/sha3_256/test144.output.bin @@ -0,0 +1 @@ +劔~~-/- ,`k=, \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test145.input.bin b/sha3/tests/data/sha3_256/test145.input.bin new file mode 100644 index 00000000..70f53077 --- /dev/null +++ b/sha3/tests/data/sha3_256/test145.input.bin @@ -0,0 +1,2 @@ +}[~Em&tv81vM48c_%y/kXՓ_Yn?aѰp\SQaN&ch=Y[U \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test148.input.bin b/sha3/tests/data/sha3_256/test148.input.bin new file mode 100644 index 00000000..800598b4 --- /dev/null +++ b/sha3/tests/data/sha3_256/test148.input.bin @@ -0,0 +1 @@ +v9apEZѯx)D~kú&@Ow_W#}4s#p-pVݣmZZLh2ȿy ]_[~({C^B7KUK;j*P!S \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test148.output.bin b/sha3/tests/data/sha3_256/test148.output.bin new file mode 100644 index 00000000..a76eb97f --- /dev/null +++ b/sha3/tests/data/sha3_256/test148.output.bin @@ -0,0 +1 @@ +ʌ?Y}jk.hT?&h} \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test149.input.bin b/sha3/tests/data/sha3_256/test149.input.bin new file mode 100644 index 00000000..277902c8 --- /dev/null +++ b/sha3/tests/data/sha3_256/test149.input.bin @@ -0,0 +1,2 @@ +ea M~MX.hIY X=X^x + lHC^.٫K祫yz^[ݣAe|仴NV7N nq/Tp28cks=;oN#uɹo& \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test149.output.bin b/sha3/tests/data/sha3_256/test149.output.bin new file mode 100644 index 00000000..1be0d10e --- /dev/null +++ b/sha3/tests/data/sha3_256/test149.output.bin @@ -0,0 +1 @@ +p\k;g$8Qp7Ѣ9 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test15.input.bin b/sha3/tests/data/sha3_256/test15.input.bin new file mode 100644 index 00000000..49ce179d --- /dev/null +++ b/sha3/tests/data/sha3_256/test15.input.bin @@ -0,0 +1 @@ +a]з(foWm I-9Vs \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test157.output.bin b/sha3/tests/data/sha3_256/test157.output.bin new file mode 100644 index 00000000..d1a3ca38 --- /dev/null +++ b/sha3/tests/data/sha3_256/test157.output.bin @@ -0,0 +1 @@ + )8` \IҭȨeq6?O \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test158.input.bin b/sha3/tests/data/sha3_256/test158.input.bin new file mode 100644 index 00000000..5a689a41 Binary files /dev/null and b/sha3/tests/data/sha3_256/test158.input.bin differ diff --git a/sha3/tests/data/sha3_256/test158.output.bin b/sha3/tests/data/sha3_256/test158.output.bin new file mode 100644 index 00000000..10cd2837 --- /dev/null +++ b/sha3/tests/data/sha3_256/test158.output.bin @@ -0,0 +1 @@ +M0` `픠Ҽuq Ǎ!໮*6m \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test159.input.bin b/sha3/tests/data/sha3_256/test159.input.bin new file mode 100644 index 00000000..37bfee39 Binary files /dev/null and b/sha3/tests/data/sha3_256/test159.input.bin differ diff --git a/sha3/tests/data/sha3_256/test159.output.bin b/sha3/tests/data/sha3_256/test159.output.bin new file mode 100644 index 00000000..febd3bc8 --- /dev/null +++ b/sha3/tests/data/sha3_256/test159.output.bin @@ -0,0 +1 @@ +;rvOz9{@$Vo,u=`K \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test16.input.bin b/sha3/tests/data/sha3_256/test16.input.bin new file mode 100644 index 00000000..84983066 --- /dev/null +++ b/sha3/tests/data/sha3_256/test16.input.bin @@ -0,0 +1 @@ +"Ky" \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test16.output.bin b/sha3/tests/data/sha3_256/test16.output.bin new file mode 100644 index 00000000..838d00bb --- /dev/null +++ b/sha3/tests/data/sha3_256/test16.output.bin @@ -0,0 +1 @@ +;m!DiNœR<<t$ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test160.input.bin b/sha3/tests/data/sha3_256/test160.input.bin new file mode 100644 index 00000000..e6f39601 Binary files /dev/null and b/sha3/tests/data/sha3_256/test160.input.bin differ diff --git a/sha3/tests/data/sha3_256/test160.output.bin b/sha3/tests/data/sha3_256/test160.output.bin new file mode 100644 index 00000000..4306631d --- /dev/null +++ b/sha3/tests/data/sha3_256/test160.output.bin @@ -0,0 +1 @@ +f% X/ ;fdMY1;FC]/n \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test161.input.bin b/sha3/tests/data/sha3_256/test161.input.bin new file mode 100644 index 00000000..5c9ab0c5 --- /dev/null +++ b/sha3/tests/data/sha3_256/test161.input.bin @@ -0,0 +1,3 @@ +!*|3=.7x?< sٙcʓb;&NHL:[o?0)Vv_Wv~Vu3nPȡ1 +݌A|lj_:)SU[ +7E=Dzt;g1O$ğJpak8_ѻI78S0U=ZU̻=pO)+FQU|̀aMw!kHdY'A:, GzoTQ)*F L \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test162.output.bin b/sha3/tests/data/sha3_256/test162.output.bin new file mode 100644 index 00000000..8ad021d4 --- /dev/null +++ b/sha3/tests/data/sha3_256/test162.output.bin @@ -0,0 +1,2 @@ +D6rlϳ}:ǐbq +O] \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test163.input.bin b/sha3/tests/data/sha3_256/test163.input.bin new file mode 100644 index 00000000..b7d86900 Binary files /dev/null and b/sha3/tests/data/sha3_256/test163.input.bin differ diff --git a/sha3/tests/data/sha3_256/test163.output.bin b/sha3/tests/data/sha3_256/test163.output.bin new file mode 100644 index 00000000..73edfa37 --- /dev/null +++ b/sha3/tests/data/sha3_256/test163.output.bin @@ -0,0 +1 @@ ++*O?SClll&JC.> \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test164.input.bin b/sha3/tests/data/sha3_256/test164.input.bin new file mode 100644 index 00000000..6a3e8166 Binary files /dev/null and b/sha3/tests/data/sha3_256/test164.input.bin differ diff --git a/sha3/tests/data/sha3_256/test164.output.bin b/sha3/tests/data/sha3_256/test164.output.bin new file mode 100644 index 00000000..3632bca1 --- /dev/null +++ b/sha3/tests/data/sha3_256/test164.output.bin @@ -0,0 +1 @@ +b5 ',Ѡ|=l0 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test165.input.bin b/sha3/tests/data/sha3_256/test165.input.bin new file mode 100644 index 00000000..42ab3064 Binary files /dev/null and b/sha3/tests/data/sha3_256/test165.input.bin differ diff --git a/sha3/tests/data/sha3_256/test165.output.bin b/sha3/tests/data/sha3_256/test165.output.bin new file mode 100644 index 00000000..42ce14d1 --- /dev/null +++ b/sha3/tests/data/sha3_256/test165.output.bin @@ -0,0 +1 @@ +a{A.OV6.aPRv2ػ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test166.input.bin b/sha3/tests/data/sha3_256/test166.input.bin new file mode 100644 index 00000000..8b4dcb7b --- /dev/null +++ b/sha3/tests/data/sha3_256/test166.input.bin @@ -0,0 +1 @@ +υbؘ}گ=FEn#&͵?h]Yn:ae50MjK^+z`vq2-[ܻ-dIm̒Z#O$ XQQa^`_i=UJϮiH )u@׈5M1b@௓ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test166.output.bin b/sha3/tests/data/sha3_256/test166.output.bin new file mode 100644 index 00000000..a7321ac5 --- /dev/null +++ b/sha3/tests/data/sha3_256/test166.output.bin @@ -0,0 +1 @@ +A\]A%6Y85+@B:6U \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test167.input.bin b/sha3/tests/data/sha3_256/test167.input.bin new file mode 100644 index 00000000..83e7dec4 --- /dev/null +++ b/sha3/tests/data/sha3_256/test167.input.bin @@ -0,0 +1 @@ +*1&yD^Y]5Ln`_܄pB?033Ĥ2gʮOGF ~0a 'Fc>)[jL#dU{. #qRC]d*Ņ?h6y&z,~eo-;l4U| ظNgu \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test167.output.bin b/sha3/tests/data/sha3_256/test167.output.bin new file mode 100644 index 00000000..6c51dc95 --- /dev/null +++ b/sha3/tests/data/sha3_256/test167.output.bin @@ -0,0 +1 @@ +hK$3!ao9rpd}ά2r \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test168.input.bin b/sha3/tests/data/sha3_256/test168.input.bin new file mode 100644 index 00000000..82f2df44 Binary files /dev/null and b/sha3/tests/data/sha3_256/test168.input.bin differ diff --git a/sha3/tests/data/sha3_256/test168.output.bin b/sha3/tests/data/sha3_256/test168.output.bin new file mode 100644 index 00000000..dbd3b5e2 --- /dev/null +++ b/sha3/tests/data/sha3_256/test168.output.bin @@ -0,0 +1 @@ +P*vdgϘ,v|+ڍSAoJ s/k \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test169.input.bin b/sha3/tests/data/sha3_256/test169.input.bin new file mode 100644 index 00000000..395db28a --- /dev/null +++ b/sha3/tests/data/sha3_256/test169.input.bin @@ -0,0 +1 @@ +#ks޷f+ڥ{5VEW5f);ZD P `qáJu:Iþi!(h_QdbVyBITCKퟬ}4.)6J gG8BT)}#ZqrBVA𤎄Eۥl \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test169.output.bin b/sha3/tests/data/sha3_256/test169.output.bin new file mode 100644 index 00000000..b40dfb3d --- /dev/null +++ b/sha3/tests/data/sha3_256/test169.output.bin @@ -0,0 +1 @@ +U(B7=Nd*78_n \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test17.input.bin b/sha3/tests/data/sha3_256/test17.input.bin new file mode 100644 index 00000000..0922640e --- /dev/null +++ b/sha3/tests/data/sha3_256/test17.input.bin @@ -0,0 +1 @@ +R!݊DW~x!v \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test17.output.bin b/sha3/tests/data/sha3_256/test17.output.bin new file mode 100644 index 00000000..0973819d --- /dev/null +++ b/sha3/tests/data/sha3_256/test17.output.bin @@ -0,0 +1 @@ +,~|VƎȒ~I*k+x"[ig \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test170.input.bin b/sha3/tests/data/sha3_256/test170.input.bin new file mode 100644 index 00000000..8e7c6397 Binary files /dev/null and b/sha3/tests/data/sha3_256/test170.input.bin differ diff --git a/sha3/tests/data/sha3_256/test170.output.bin b/sha3/tests/data/sha3_256/test170.output.bin new file mode 100644 index 00000000..73273c5f --- /dev/null +++ b/sha3/tests/data/sha3_256/test170.output.bin @@ -0,0 +1 @@ +#,j8LV+rA \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test171.input.bin b/sha3/tests/data/sha3_256/test171.input.bin new file mode 100644 index 00000000..b2695ced Binary files /dev/null and b/sha3/tests/data/sha3_256/test171.input.bin differ diff --git a/sha3/tests/data/sha3_256/test171.output.bin b/sha3/tests/data/sha3_256/test171.output.bin new file mode 100644 index 00000000..5b154d7e --- /dev/null +++ b/sha3/tests/data/sha3_256/test171.output.bin @@ -0,0 +1 @@ +ܼ%A7l*=tgt4_ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test172.input.bin b/sha3/tests/data/sha3_256/test172.input.bin new file mode 100644 index 00000000..0bed356d Binary files /dev/null and b/sha3/tests/data/sha3_256/test172.input.bin differ diff --git a/sha3/tests/data/sha3_256/test172.output.bin b/sha3/tests/data/sha3_256/test172.output.bin new file mode 100644 index 00000000..b2344a6c --- /dev/null +++ b/sha3/tests/data/sha3_256/test172.output.bin @@ -0,0 +1 @@ +1{/+S @XH;s Le \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test173.input.bin b/sha3/tests/data/sha3_256/test173.input.bin new file mode 100644 index 00000000..2f94c433 Binary files /dev/null and b/sha3/tests/data/sha3_256/test173.input.bin differ diff --git a/sha3/tests/data/sha3_256/test173.output.bin b/sha3/tests/data/sha3_256/test173.output.bin new file mode 100644 index 00000000..b04827a1 --- /dev/null +++ b/sha3/tests/data/sha3_256/test173.output.bin @@ -0,0 +1 @@ +)`pH~1UO0_́>2݆ƶ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test174.input.bin b/sha3/tests/data/sha3_256/test174.input.bin new file mode 100644 index 00000000..e7197248 --- /dev/null +++ b/sha3/tests/data/sha3_256/test174.input.bin @@ -0,0 +1 @@ + { 4k9˭Ig׭هow MH75p\$*CqoNmVk3dIف M۽7`T՝Ew8A?-oRzJU1PO ha$\KReT֪cH9) \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test174.output.bin b/sha3/tests/data/sha3_256/test174.output.bin new file mode 100644 index 00000000..0ffbb313 --- /dev/null +++ b/sha3/tests/data/sha3_256/test174.output.bin @@ -0,0 +1 @@ +DvS~y6(FƑoMKW$ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test175.input.bin b/sha3/tests/data/sha3_256/test175.input.bin new file mode 100644 index 00000000..cf11b984 Binary files /dev/null and b/sha3/tests/data/sha3_256/test175.input.bin differ diff --git a/sha3/tests/data/sha3_256/test175.output.bin b/sha3/tests/data/sha3_256/test175.output.bin new file mode 100644 index 00000000..3e895599 --- /dev/null +++ b/sha3/tests/data/sha3_256/test175.output.bin @@ -0,0 +1 @@ +jPhy$ƉN YCY \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test176.input.bin b/sha3/tests/data/sha3_256/test176.input.bin new file mode 100644 index 00000000..a8a0c682 Binary files /dev/null and b/sha3/tests/data/sha3_256/test176.input.bin differ diff --git a/sha3/tests/data/sha3_256/test176.output.bin b/sha3/tests/data/sha3_256/test176.output.bin new file mode 100644 index 00000000..089f9f06 --- /dev/null +++ b/sha3/tests/data/sha3_256/test176.output.bin @@ -0,0 +1 @@ +w4ֲ; U/G0x,ŋG M \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test177.input.bin b/sha3/tests/data/sha3_256/test177.input.bin new file mode 100644 index 00000000..1f944269 --- /dev/null +++ b/sha3/tests/data/sha3_256/test177.input.bin @@ -0,0 +1,2 @@ +dj2\s/0/!yG@C TMkF2= +u[P_ 焼^r%wSd.#he\=QȒݠS~f P`?o[=8@ܛQb@j\ßMeգ [:)VX;X͔pҘw`` \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test177.output.bin b/sha3/tests/data/sha3_256/test177.output.bin new file mode 100644 index 00000000..3c5846f2 --- /dev/null +++ b/sha3/tests/data/sha3_256/test177.output.bin @@ -0,0 +1 @@ +#hzj:@ݓ = \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test178.input.bin b/sha3/tests/data/sha3_256/test178.input.bin new file mode 100644 index 00000000..13c4fd0a --- /dev/null +++ b/sha3/tests/data/sha3_256/test178.input.bin @@ -0,0 +1 @@ +˾gJWGKL~/Urq5u*E1b/YpA:WgxAj0Syܲҕ^ h* -fEA:fq6YNV&JcPlSv!j2: \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test178.output.bin b/sha3/tests/data/sha3_256/test178.output.bin new file mode 100644 index 00000000..0cf767db --- /dev/null +++ b/sha3/tests/data/sha3_256/test178.output.bin @@ -0,0 +1 @@ +-f]N;Ի=8s\KiC^| \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test179.input.bin b/sha3/tests/data/sha3_256/test179.input.bin new file mode 100644 index 00000000..5d1ef4da Binary files /dev/null and b/sha3/tests/data/sha3_256/test179.input.bin differ diff --git a/sha3/tests/data/sha3_256/test179.output.bin b/sha3/tests/data/sha3_256/test179.output.bin new file mode 100644 index 00000000..b90cf22a --- /dev/null +++ b/sha3/tests/data/sha3_256/test179.output.bin @@ -0,0 +1 @@ + TtR2b4@_%A;Vg<̲S \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test18.input.bin b/sha3/tests/data/sha3_256/test18.input.bin new file mode 100644 index 00000000..1868db3a --- /dev/null +++ b/sha3/tests/data/sha3_256/test18.input.bin @@ -0,0 +1 @@ +=.R~ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test18.output.bin b/sha3/tests/data/sha3_256/test18.output.bin new file mode 100644 index 00000000..f1fad233 --- /dev/null +++ b/sha3/tests/data/sha3_256/test18.output.bin @@ -0,0 +1 @@ +DZ.i-!9`ag6W~Rl \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test180.input.bin b/sha3/tests/data/sha3_256/test180.input.bin new file mode 100644 index 00000000..13f88f9c --- /dev/null +++ b/sha3/tests/data/sha3_256/test180.input.bin @@ -0,0 +1,2 @@ +:~Qer ߷}vGT&ߪ{P\v5 d2ؿ_  xu,ێRZ΄% B׃N9`t/C};.*wj +RR0 2J MGj/ HCŅE5+7@jy*od \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test180.output.bin b/sha3/tests/data/sha3_256/test180.output.bin new file mode 100644 index 00000000..2ccf7172 --- /dev/null +++ b/sha3/tests/data/sha3_256/test180.output.bin @@ -0,0 +1 @@ +S5J8|5b# tv- \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test181.input.bin b/sha3/tests/data/sha3_256/test181.input.bin new file mode 100644 index 00000000..21185a19 Binary files /dev/null and b/sha3/tests/data/sha3_256/test181.input.bin differ diff --git a/sha3/tests/data/sha3_256/test181.output.bin b/sha3/tests/data/sha3_256/test181.output.bin new file mode 100644 index 00000000..9607a88d --- /dev/null +++ b/sha3/tests/data/sha3_256/test181.output.bin @@ -0,0 +1 @@ +Ezk1C*D¼'Ćϐk \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test182.input.bin b/sha3/tests/data/sha3_256/test182.input.bin new file mode 100644 index 00000000..4d216972 --- /dev/null +++ b/sha3/tests/data/sha3_256/test182.input.bin @@ -0,0 +1 @@ +WnR 0 ^5ECB=O睖cr)EWű1RhN.+_ΙepT^t|X#[4"Og 3_o]ÔoDӯˮ.AUMgY2k$H-ԓo><69~t8ZELG{ m^/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test182.output.bin b/sha3/tests/data/sha3_256/test182.output.bin new file mode 100644 index 00000000..b9838b59 --- /dev/null +++ b/sha3/tests/data/sha3_256/test182.output.bin @@ -0,0 +1 @@ + [mýzG{kb(%* \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test183.input.bin b/sha3/tests/data/sha3_256/test183.input.bin new file mode 100644 index 00000000..765853e5 Binary files /dev/null and b/sha3/tests/data/sha3_256/test183.input.bin differ diff --git a/sha3/tests/data/sha3_256/test183.output.bin b/sha3/tests/data/sha3_256/test183.output.bin new file mode 100644 index 00000000..37b87d5f --- /dev/null +++ b/sha3/tests/data/sha3_256/test183.output.bin @@ -0,0 +1 @@ +O0Ȑ@IasS颲4J m^Oe \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test184.input.bin b/sha3/tests/data/sha3_256/test184.input.bin new file mode 100644 index 00000000..e67c2c3b Binary files /dev/null and b/sha3/tests/data/sha3_256/test184.input.bin differ diff --git a/sha3/tests/data/sha3_256/test184.output.bin b/sha3/tests/data/sha3_256/test184.output.bin new file mode 100644 index 00000000..a33b9020 --- /dev/null +++ b/sha3/tests/data/sha3_256/test184.output.bin @@ -0,0 +1 @@ +EYgsmgP5bBM \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test185.input.bin b/sha3/tests/data/sha3_256/test185.input.bin new file mode 100644 index 00000000..6b3f4c0a Binary files /dev/null and b/sha3/tests/data/sha3_256/test185.input.bin differ diff --git a/sha3/tests/data/sha3_256/test185.output.bin b/sha3/tests/data/sha3_256/test185.output.bin new file mode 100644 index 00000000..72d1a795 --- /dev/null +++ b/sha3/tests/data/sha3_256/test185.output.bin @@ -0,0 +1 @@ +U9*ZFVx/<$7Ĥ bG \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test186.input.bin b/sha3/tests/data/sha3_256/test186.input.bin new file mode 100644 index 00000000..b0e30563 Binary files /dev/null and b/sha3/tests/data/sha3_256/test186.input.bin differ diff --git a/sha3/tests/data/sha3_256/test186.output.bin b/sha3/tests/data/sha3_256/test186.output.bin new file mode 100644 index 00000000..e5adae69 --- /dev/null +++ b/sha3/tests/data/sha3_256/test186.output.bin @@ -0,0 +1 @@ +mcAMוRڬ }cSl?d( \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test187.input.bin b/sha3/tests/data/sha3_256/test187.input.bin new file mode 100644 index 00000000..4b5bf01f --- /dev/null +++ b/sha3/tests/data/sha3_256/test187.input.bin @@ -0,0 +1 @@ +du ͘;e2,Eɸ;*Z"hXn'(WѢН _"ß^nJLmH?9s~<8f\&<tYcƻ=4[hG}cW U6KUq0~г7Nn: \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test187.output.bin b/sha3/tests/data/sha3_256/test187.output.bin new file mode 100644 index 00000000..fe3a4a4b --- /dev/null +++ b/sha3/tests/data/sha3_256/test187.output.bin @@ -0,0 +1 @@ + =Ԃ< Uo9z \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test188.input.bin b/sha3/tests/data/sha3_256/test188.input.bin new file mode 100644 index 00000000..05e7d072 --- /dev/null +++ b/sha3/tests/data/sha3_256/test188.input.bin @@ -0,0 +1,3 @@ +hus/rZhŪ1I>vR]=3ν!&jo~ Wy +oXye$fwS9r]2dRA_2xWj*X|)SրE6@~=\@Oo%"ȶ3 W $uk hTMQ +x^: \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test188.output.bin b/sha3/tests/data/sha3_256/test188.output.bin new file mode 100644 index 00000000..c272fa25 --- /dev/null +++ b/sha3/tests/data/sha3_256/test188.output.bin @@ -0,0 +1 @@ +k^75iʌ?;Q܊Ai \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test189.input.bin b/sha3/tests/data/sha3_256/test189.input.bin new file mode 100644 index 00000000..2fb1cb98 Binary files /dev/null and b/sha3/tests/data/sha3_256/test189.input.bin differ diff --git a/sha3/tests/data/sha3_256/test189.output.bin b/sha3/tests/data/sha3_256/test189.output.bin new file mode 100644 index 00000000..3b12bcea --- /dev/null +++ b/sha3/tests/data/sha3_256/test189.output.bin @@ -0,0 +1,2 @@ +#; C*f +kq,o,/1j \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test19.input.bin b/sha3/tests/data/sha3_256/test19.input.bin new file mode 100644 index 00000000..31b8f4fa --- /dev/null +++ b/sha3/tests/data/sha3_256/test19.input.bin @@ -0,0 +1 @@ +uh=Ua@"T; ! \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test19.output.bin b/sha3/tests/data/sha3_256/test19.output.bin new file mode 100644 index 00000000..70158284 Binary files /dev/null and b/sha3/tests/data/sha3_256/test19.output.bin differ diff --git a/sha3/tests/data/sha3_256/test190.input.bin b/sha3/tests/data/sha3_256/test190.input.bin new file mode 100644 index 00000000..9b570e95 --- /dev/null +++ b/sha3/tests/data/sha3_256/test190.input.bin @@ -0,0 +1 @@ +SJ$qKԾ7Ȋ=.|T ׽g Z5YDc)1쪟g]5&i^؝ӌ,vΞYt2顾,qFAiъz!Ȱq^,T |jeyLQJؑ}^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test191.input.bin b/sha3/tests/data/sha3_256/test191.input.bin new file mode 100644 index 00000000..fabb738c Binary files /dev/null and b/sha3/tests/data/sha3_256/test191.input.bin differ diff --git a/sha3/tests/data/sha3_256/test191.output.bin b/sha3/tests/data/sha3_256/test191.output.bin new file mode 100644 index 00000000..be0948b7 --- /dev/null +++ b/sha3/tests/data/sha3_256/test191.output.bin @@ -0,0 +1 @@ += tɢP"n@o,9 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test192.input.bin b/sha3/tests/data/sha3_256/test192.input.bin new file mode 100644 index 00000000..179b26ff Binary files /dev/null and b/sha3/tests/data/sha3_256/test192.input.bin differ diff --git a/sha3/tests/data/sha3_256/test192.output.bin b/sha3/tests/data/sha3_256/test192.output.bin new file mode 100644 index 00000000..e329d4a3 --- /dev/null +++ b/sha3/tests/data/sha3_256/test192.output.bin @@ -0,0 +1 @@ +sU`p1-jO؝ 1Ș' \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test193.input.bin b/sha3/tests/data/sha3_256/test193.input.bin new file mode 100644 index 00000000..dc8291dd --- /dev/null +++ b/sha3/tests/data/sha3_256/test193.input.bin @@ -0,0 +1 @@ +~Kt6@qN)9w/ |1WW¦իR=đi.!؀;!;P%nVR\hf+Emz~|_/icqYds ?ǔ̂GVcG  ejȢ1N/Яk9Jr?DMXf=GWɖyp2 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test193.output.bin b/sha3/tests/data/sha3_256/test193.output.bin new file mode 100644 index 00000000..30c842a1 --- /dev/null +++ b/sha3/tests/data/sha3_256/test193.output.bin @@ -0,0 +1 @@ +!`d+XmZ+Yԙpkn5M \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test194.input.bin b/sha3/tests/data/sha3_256/test194.input.bin new file mode 100644 index 00000000..c5a3fbc4 Binary files /dev/null and b/sha3/tests/data/sha3_256/test194.input.bin differ diff --git a/sha3/tests/data/sha3_256/test194.output.bin b/sha3/tests/data/sha3_256/test194.output.bin new file mode 100644 index 00000000..329451c5 --- /dev/null +++ b/sha3/tests/data/sha3_256/test194.output.bin @@ -0,0 +1 @@ +dd=7;48^ZKq \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test195.input.bin b/sha3/tests/data/sha3_256/test195.input.bin new file mode 100644 index 00000000..02673ece --- /dev/null +++ b/sha3/tests/data/sha3_256/test195.input.bin @@ -0,0 +1,3 @@ +kMETm0熥u~ 1 + S15]2FS G0l -+E-OgkѨ&YA # +&`o̺Т 46Nl٧#M|ʼn uN[=`zImg{I,qxUWMK \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test195.output.bin b/sha3/tests/data/sha3_256/test195.output.bin new file mode 100644 index 00000000..87b7fd1e Binary files /dev/null and b/sha3/tests/data/sha3_256/test195.output.bin differ diff --git a/sha3/tests/data/sha3_256/test196.input.bin b/sha3/tests/data/sha3_256/test196.input.bin new file mode 100644 index 00000000..0c60e8fd Binary files /dev/null and b/sha3/tests/data/sha3_256/test196.input.bin differ diff --git a/sha3/tests/data/sha3_256/test196.output.bin b/sha3/tests/data/sha3_256/test196.output.bin new file mode 100644 index 00000000..3dabf20a --- /dev/null +++ b/sha3/tests/data/sha3_256/test196.output.bin @@ -0,0 +1 @@ +&8)KUxκ.zg[whS \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test197.input.bin b/sha3/tests/data/sha3_256/test197.input.bin new file mode 100644 index 00000000..be15921f --- /dev/null +++ b/sha3/tests/data/sha3_256/test197.input.bin @@ -0,0 +1 @@ +RQ2c[9:kzs!pߩF&i˻߀0rG+7KտyXb:>9樲)|Qx5a$q^ c7Syxv"F4oU4r^s|{jmGtrF}{+#P|Q},J \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test197.output.bin b/sha3/tests/data/sha3_256/test197.output.bin new file mode 100644 index 00000000..b4a9aa6c --- /dev/null +++ b/sha3/tests/data/sha3_256/test197.output.bin @@ -0,0 +1 @@ +؂ 0l\#!QQ6a`= \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test198.input.bin b/sha3/tests/data/sha3_256/test198.input.bin new file mode 100644 index 00000000..fd28078b --- /dev/null +++ b/sha3/tests/data/sha3_256/test198.input.bin @@ -0,0 +1,2 @@ +שC:;Jz:^4WmmS -1p a(3OCס՜~kdoj5(YϹF +wR*\֬nabf~ S!eU͏4ݛqoG k"P<&Uwa*؋jg(hg!stY){2;ηa":Up^Drܪ7# 5\b \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test198.output.bin b/sha3/tests/data/sha3_256/test198.output.bin new file mode 100644 index 00000000..18ec4f5c --- /dev/null +++ b/sha3/tests/data/sha3_256/test198.output.bin @@ -0,0 +1 @@ +7O3WQv<,Y^u \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test199.input.bin b/sha3/tests/data/sha3_256/test199.input.bin new file mode 100644 index 00000000..6044629d --- /dev/null +++ b/sha3/tests/data/sha3_256/test199.input.bin @@ -0,0 +1 @@ +p 'zrw|NC&hЙebVs6hzfyݝz3A:\"[!{_G2~9&-@C0;{^*ݦHYK X㐑汈)J$^a`Xv9u;%t6f#eA_6mTgCöW.@a&AI:ڐ# \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test199.output.bin b/sha3/tests/data/sha3_256/test199.output.bin new file mode 100644 index 00000000..831e80b6 --- /dev/null +++ b/sha3/tests/data/sha3_256/test199.output.bin @@ -0,0 +1 @@ +|^DQ +H@B~W ] \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test2.input.bin b/sha3/tests/data/sha3_256/test2.input.bin new file mode 100644 index 00000000..d50394ef --- /dev/null +++ b/sha3/tests/data/sha3_256/test2.input.bin @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test2.output.bin b/sha3/tests/data/sha3_256/test2.output.bin new file mode 100644 index 00000000..3f16ebc5 --- /dev/null +++ b/sha3/tests/data/sha3_256/test2.output.bin @@ -0,0 +1,2 @@ +gp59pӅ72ybR|ူ X-ٲ + \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test20.input.bin b/sha3/tests/data/sha3_256/test20.input.bin new file mode 100644 index 00000000..f825277c --- /dev/null +++ b/sha3/tests/data/sha3_256/test20.input.bin @@ -0,0 +1 @@ +P5({Mʗ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test20.output.bin b/sha3/tests/data/sha3_256/test20.output.bin new file mode 100644 index 00000000..459e58a2 --- /dev/null +++ b/sha3/tests/data/sha3_256/test20.output.bin @@ -0,0 +1,2 @@ +ϽҍD1vfφOR98CEf|. + \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test200.input.bin b/sha3/tests/data/sha3_256/test200.input.bin new file mode 100644 index 00000000..25202dc5 Binary files /dev/null and b/sha3/tests/data/sha3_256/test200.input.bin differ diff --git a/sha3/tests/data/sha3_256/test200.output.bin b/sha3/tests/data/sha3_256/test200.output.bin new file mode 100644 index 00000000..f7f3d55b --- /dev/null +++ b/sha3/tests/data/sha3_256/test200.output.bin @@ -0,0 +1 @@ +6wxbޏdmZt.{ei \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test201.input.bin b/sha3/tests/data/sha3_256/test201.input.bin new file mode 100644 index 00000000..19cd3f69 Binary files /dev/null and b/sha3/tests/data/sha3_256/test201.input.bin differ diff --git a/sha3/tests/data/sha3_256/test201.output.bin b/sha3/tests/data/sha3_256/test201.output.bin new file mode 100644 index 00000000..22b322fe --- /dev/null +++ b/sha3/tests/data/sha3_256/test201.output.bin @@ -0,0 +1 @@ + y1n+jiL>3ǣv\y4m> \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test202.input.bin b/sha3/tests/data/sha3_256/test202.input.bin new file mode 100644 index 00000000..61915861 Binary files /dev/null and b/sha3/tests/data/sha3_256/test202.input.bin differ diff --git a/sha3/tests/data/sha3_256/test202.output.bin b/sha3/tests/data/sha3_256/test202.output.bin new file mode 100644 index 00000000..48c78354 --- /dev/null +++ b/sha3/tests/data/sha3_256/test202.output.bin @@ -0,0 +1 @@ +.A9I@t7Z MV,bI} \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test203.input.bin b/sha3/tests/data/sha3_256/test203.input.bin new file mode 100644 index 00000000..741c4d41 Binary files /dev/null and b/sha3/tests/data/sha3_256/test203.input.bin differ diff --git a/sha3/tests/data/sha3_256/test203.output.bin b/sha3/tests/data/sha3_256/test203.output.bin new file mode 100644 index 00000000..53a1705e --- /dev/null +++ b/sha3/tests/data/sha3_256/test203.output.bin @@ -0,0 +1 @@ +ϐ`>Ns[J\_+ңE4sn;  ޯRֺ1l3R7QⳜJIW~*?Zhh03⽫s&ֽ%FX +SvЗ禦>X`(Żչ27NB)η(x"ZbS#fJ4G YU?u) CU>ot"K \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test207.output.bin b/sha3/tests/data/sha3_256/test207.output.bin new file mode 100644 index 00000000..69919871 --- /dev/null +++ b/sha3/tests/data/sha3_256/test207.output.bin @@ -0,0 +1 @@ +Ɇ'aIp3zl@"Y.& \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test208.input.bin b/sha3/tests/data/sha3_256/test208.input.bin new file mode 100644 index 00000000..c47ee536 --- /dev/null +++ b/sha3/tests/data/sha3_256/test208.input.bin @@ -0,0 +1,2 @@ +-s031(8<ʗNh@ Rk?JōГZ0Ė"ar.EWB C}t?+57]̞ߴ8Bᐤ<1c~W~`lM{c + :GkwxEM`lg)voLO'ޟ,;U~wl `2(8 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test208.output.bin b/sha3/tests/data/sha3_256/test208.output.bin new file mode 100644 index 00000000..e31d6ba6 --- /dev/null +++ b/sha3/tests/data/sha3_256/test208.output.bin @@ -0,0 +1 @@ +"LȠ8薜T.욳&o")uA \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test209.input.bin b/sha3/tests/data/sha3_256/test209.input.bin new file mode 100644 index 00000000..8be3f738 --- /dev/null +++ b/sha3/tests/data/sha3_256/test209.input.bin @@ -0,0 +1,2 @@ +Ua=0y.& 7BJmI(׭7MT#n_7oKܹu;9f2BEJwu>pX%; vτ3:Y҇̒#Nz'A& jX.dž1#'솅 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test209.output.bin b/sha3/tests/data/sha3_256/test209.output.bin new file mode 100644 index 00000000..ab544f05 --- /dev/null +++ b/sha3/tests/data/sha3_256/test209.output.bin @@ -0,0 +1 @@ +㷦F)zgw8鱟n \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test21.input.bin b/sha3/tests/data/sha3_256/test21.input.bin new file mode 100644 index 00000000..bd6291ce --- /dev/null +++ b/sha3/tests/data/sha3_256/test21.input.bin @@ -0,0 +1 @@ +aVU@gGQ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test21.output.bin b/sha3/tests/data/sha3_256/test21.output.bin new file mode 100644 index 00000000..ab5dabe6 --- /dev/null +++ b/sha3/tests/data/sha3_256/test21.output.bin @@ -0,0 +1 @@ +,aR{):A+#  \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test210.input.bin b/sha3/tests/data/sha3_256/test210.input.bin new file mode 100644 index 00000000..12d7f2d6 --- /dev/null +++ b/sha3/tests/data/sha3_256/test210.input.bin @@ -0,0 +1 @@ +Dw≛rVUMlAG{уJ@)}^ۜm]DC`OR(ldpzjpC6s%&ST]ZܒynXՙ2$. ׭mr v#|N!+nyI͐3:wN*||2 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test210.output.bin b/sha3/tests/data/sha3_256/test210.output.bin new file mode 100644 index 00000000..46afbfa9 Binary files /dev/null and b/sha3/tests/data/sha3_256/test210.output.bin differ diff --git a/sha3/tests/data/sha3_256/test211.input.bin b/sha3/tests/data/sha3_256/test211.input.bin new file mode 100644 index 00000000..06b62b7f Binary files /dev/null and b/sha3/tests/data/sha3_256/test211.input.bin differ diff --git a/sha3/tests/data/sha3_256/test211.output.bin b/sha3/tests/data/sha3_256/test211.output.bin new file mode 100644 index 00000000..c68207c6 --- /dev/null +++ b/sha3/tests/data/sha3_256/test211.output.bin @@ -0,0 +1 @@ +ȟ+4a'―DJ< \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test212.input.bin b/sha3/tests/data/sha3_256/test212.input.bin new file mode 100644 index 00000000..397fbdc5 Binary files /dev/null and b/sha3/tests/data/sha3_256/test212.input.bin differ diff --git a/sha3/tests/data/sha3_256/test212.output.bin b/sha3/tests/data/sha3_256/test212.output.bin new file mode 100644 index 00000000..b6af067b --- /dev/null +++ b/sha3/tests/data/sha3_256/test212.output.bin @@ -0,0 +1 @@ +5ײKpeIb,(t6 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test213.input.bin b/sha3/tests/data/sha3_256/test213.input.bin new file mode 100644 index 00000000..ff7c93ec --- /dev/null +++ b/sha3/tests/data/sha3_256/test213.input.bin @@ -0,0 +1 @@ +;֤,z2)i-Ǚ ɝpZ\5+>L@fIݓΧuTj),L*v}|9jN$lgփgW68j'kQuLGH+r೔io֎^=YŬ@ó~6$JY͝(yox[';Dd5 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test213.output.bin b/sha3/tests/data/sha3_256/test213.output.bin new file mode 100644 index 00000000..f215b387 Binary files /dev/null and b/sha3/tests/data/sha3_256/test213.output.bin differ diff --git a/sha3/tests/data/sha3_256/test214.input.bin b/sha3/tests/data/sha3_256/test214.input.bin new file mode 100644 index 00000000..17d29a30 Binary files /dev/null and b/sha3/tests/data/sha3_256/test214.input.bin differ diff --git a/sha3/tests/data/sha3_256/test214.output.bin b/sha3/tests/data/sha3_256/test214.output.bin new file mode 100644 index 00000000..30487239 --- /dev/null +++ b/sha3/tests/data/sha3_256/test214.output.bin @@ -0,0 +1 @@ +H"!'c^Rf \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test215.input.bin b/sha3/tests/data/sha3_256/test215.input.bin new file mode 100644 index 00000000..d082a217 Binary files /dev/null and b/sha3/tests/data/sha3_256/test215.input.bin differ diff --git a/sha3/tests/data/sha3_256/test215.output.bin b/sha3/tests/data/sha3_256/test215.output.bin new file mode 100644 index 00000000..e22c2bb4 Binary files /dev/null and b/sha3/tests/data/sha3_256/test215.output.bin differ diff --git a/sha3/tests/data/sha3_256/test216.input.bin b/sha3/tests/data/sha3_256/test216.input.bin new file mode 100644 index 00000000..9b654101 --- /dev/null +++ b/sha3/tests/data/sha3_256/test216.input.bin @@ -0,0 +1,3 @@ +zjOOY#8It%.Y0bn{ى~ fDb5-Sנ/p7%Vq '™ʧߥ5R:51f^wlkFێ,ݝϺ২Uq-F=="90C;"F0A +3:R91\Fx[ P \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test217.input.bin b/sha3/tests/data/sha3_256/test217.input.bin new file mode 100644 index 00000000..31e71eaa Binary files /dev/null and b/sha3/tests/data/sha3_256/test217.input.bin differ diff --git a/sha3/tests/data/sha3_256/test217.output.bin b/sha3/tests/data/sha3_256/test217.output.bin new file mode 100644 index 00000000..3621a6c1 --- /dev/null +++ b/sha3/tests/data/sha3_256/test217.output.bin @@ -0,0 +1 @@ +ۡǟU3!R-lw0V^q3B \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test218.input.bin b/sha3/tests/data/sha3_256/test218.input.bin new file mode 100644 index 00000000..e9dedef4 --- /dev/null +++ b/sha3/tests/data/sha3_256/test218.input.bin @@ -0,0 +1 @@ +-'C= al"e6\;a9**jp^kwYwIlp'zC@tAѵ{{]we[B`yR)Ѩۆ^SĴ1sEB0@)oF_5jmwf jB;TM9 +loÀk·<+4V)0O5> \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test218.output.bin b/sha3/tests/data/sha3_256/test218.output.bin new file mode 100644 index 00000000..6d2364ec --- /dev/null +++ b/sha3/tests/data/sha3_256/test218.output.bin @@ -0,0 +1 @@ +EnSp"Utü77 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test219.input.bin b/sha3/tests/data/sha3_256/test219.input.bin new file mode 100644 index 00000000..ca1f68da Binary files /dev/null and b/sha3/tests/data/sha3_256/test219.input.bin differ diff --git a/sha3/tests/data/sha3_256/test219.output.bin b/sha3/tests/data/sha3_256/test219.output.bin new file mode 100644 index 00000000..c52eeaf6 --- /dev/null +++ b/sha3/tests/data/sha3_256/test219.output.bin @@ -0,0 +1 @@ +7j1+$yC+x8ewAy(uP2\x \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test22.input.bin b/sha3/tests/data/sha3_256/test22.input.bin new file mode 100644 index 00000000..7a679902 --- /dev/null +++ b/sha3/tests/data/sha3_256/test22.input.bin @@ -0,0 +1 @@ +܏NLxD{;T6* \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test22.output.bin b/sha3/tests/data/sha3_256/test22.output.bin new file mode 100644 index 00000000..869ed194 --- /dev/null +++ b/sha3/tests/data/sha3_256/test22.output.bin @@ -0,0 +1 @@ +?)vpg)͕X-򩾹.' 6ZD \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test220.input.bin b/sha3/tests/data/sha3_256/test220.input.bin new file mode 100644 index 00000000..dc3eba08 --- /dev/null +++ b/sha3/tests/data/sha3_256/test220.input.bin @@ -0,0 +1,4 @@ +vF8;NQ 20iPҗ +HVy +s9;(,jtg 8əpMbpO'Ͱe_PІWSp 8q/>m߳]shE9'K"</ʼ !f׉9qKxD%"}*=vQ^| +FA5eN|<7[SMd A|/cs \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test220.output.bin b/sha3/tests/data/sha3_256/test220.output.bin new file mode 100644 index 00000000..1fc02695 --- /dev/null +++ b/sha3/tests/data/sha3_256/test220.output.bin @@ -0,0 +1 @@ +77A.Bq:נu&G}? \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test221.input.bin b/sha3/tests/data/sha3_256/test221.input.bin new file mode 100644 index 00000000..d518e526 Binary files /dev/null and b/sha3/tests/data/sha3_256/test221.input.bin differ diff --git a/sha3/tests/data/sha3_256/test221.output.bin b/sha3/tests/data/sha3_256/test221.output.bin new file mode 100644 index 00000000..e06d41a2 --- /dev/null +++ b/sha3/tests/data/sha3_256/test221.output.bin @@ -0,0 +1 @@ +Y+rVoKda!rs` )&5F \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test222.input.bin b/sha3/tests/data/sha3_256/test222.input.bin new file mode 100644 index 00000000..5bd09da0 Binary files /dev/null and b/sha3/tests/data/sha3_256/test222.input.bin differ diff --git a/sha3/tests/data/sha3_256/test222.output.bin b/sha3/tests/data/sha3_256/test222.output.bin new file mode 100644 index 00000000..f02ef313 --- /dev/null +++ b/sha3/tests/data/sha3_256/test222.output.bin @@ -0,0 +1 @@ +jXOJ͏]&)1 r%%R# \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test223.input.bin b/sha3/tests/data/sha3_256/test223.input.bin new file mode 100644 index 00000000..61d516ba Binary files /dev/null and b/sha3/tests/data/sha3_256/test223.input.bin differ diff --git a/sha3/tests/data/sha3_256/test223.output.bin b/sha3/tests/data/sha3_256/test223.output.bin new file mode 100644 index 00000000..37ef9aff --- /dev/null +++ b/sha3/tests/data/sha3_256/test223.output.bin @@ -0,0 +1 @@ +Oݰ1j ;i|Y !]EHʴ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test224.input.bin b/sha3/tests/data/sha3_256/test224.input.bin new file mode 100644 index 00000000..ea14dca4 Binary files /dev/null and b/sha3/tests/data/sha3_256/test224.input.bin differ diff --git a/sha3/tests/data/sha3_256/test224.output.bin b/sha3/tests/data/sha3_256/test224.output.bin new file mode 100644 index 00000000..6733253e --- /dev/null +++ b/sha3/tests/data/sha3_256/test224.output.bin @@ -0,0 +1 @@ +f4:4!ti2O6[42s/Gz) \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test225.input.bin b/sha3/tests/data/sha3_256/test225.input.bin new file mode 100644 index 00000000..39f24030 Binary files /dev/null and b/sha3/tests/data/sha3_256/test225.input.bin differ diff --git a/sha3/tests/data/sha3_256/test225.output.bin b/sha3/tests/data/sha3_256/test225.output.bin new file mode 100644 index 00000000..1786c595 Binary files /dev/null and b/sha3/tests/data/sha3_256/test225.output.bin differ diff --git a/sha3/tests/data/sha3_256/test226.input.bin b/sha3/tests/data/sha3_256/test226.input.bin new file mode 100644 index 00000000..a694388a --- /dev/null +++ b/sha3/tests/data/sha3_256/test226.input.bin @@ -0,0 +1 @@ +gSm68؈̫4+zen=oBLfAqeÏǒhεf]6!TӺX13t6stdrƮzn' \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test226.output.bin b/sha3/tests/data/sha3_256/test226.output.bin new file mode 100644 index 00000000..4a65bfdd --- /dev/null +++ b/sha3/tests/data/sha3_256/test226.output.bin @@ -0,0 +1 @@ +Ks=*=!#詊Ư5ru \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test227.input.bin b/sha3/tests/data/sha3_256/test227.input.bin new file mode 100644 index 00000000..a4b4f480 --- /dev/null +++ b/sha3/tests/data/sha3_256/test227.input.bin @@ -0,0 +1 @@ +9?]MH]7QJX6)!z8#5Rs!R*X5a& }:AvvJ"ԕzT]RDul %̏L6/ 68Oz[)?kܒV^6v=Ҡj>=DvyK=&+yV>APd%n4^QU܊!Jxj-P~35d' \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test227.output.bin b/sha3/tests/data/sha3_256/test227.output.bin new file mode 100644 index 00000000..1c7dd14c --- /dev/null +++ b/sha3/tests/data/sha3_256/test227.output.bin @@ -0,0 +1 @@ +G`r%ʲ'Hdhr}4!6{ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test228.input.bin b/sha3/tests/data/sha3_256/test228.input.bin new file mode 100644 index 00000000..9cb3e056 Binary files /dev/null and b/sha3/tests/data/sha3_256/test228.input.bin differ diff --git a/sha3/tests/data/sha3_256/test228.output.bin b/sha3/tests/data/sha3_256/test228.output.bin new file mode 100644 index 00000000..e696e5b5 --- /dev/null +++ b/sha3/tests/data/sha3_256/test228.output.bin @@ -0,0 +1 @@ +2I7`}Wtw(ŻV]o+S+kD \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test229.input.bin b/sha3/tests/data/sha3_256/test229.input.bin new file mode 100644 index 00000000..6dda249b Binary files /dev/null and b/sha3/tests/data/sha3_256/test229.input.bin differ diff --git a/sha3/tests/data/sha3_256/test229.output.bin b/sha3/tests/data/sha3_256/test229.output.bin new file mode 100644 index 00000000..94cf25f7 --- /dev/null +++ b/sha3/tests/data/sha3_256/test229.output.bin @@ -0,0 +1 @@ +ֶ…tQlĀ\aeag! \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test23.input.bin b/sha3/tests/data/sha3_256/test23.input.bin new file mode 100644 index 00000000..fcc84d2d --- /dev/null +++ b/sha3/tests/data/sha3_256/test23.input.bin @@ -0,0 +1 @@ +W_B-3xm_- \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test23.output.bin b/sha3/tests/data/sha3_256/test23.output.bin new file mode 100644 index 00000000..609ae078 --- /dev/null +++ b/sha3/tests/data/sha3_256/test23.output.bin @@ -0,0 +1 @@ ++N `tʻU:\jVy0 a[3|k \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test230.input.bin b/sha3/tests/data/sha3_256/test230.input.bin new file mode 100644 index 00000000..c2b4e2b7 --- /dev/null +++ b/sha3/tests/data/sha3_256/test230.input.bin @@ -0,0 +1 @@ +8u$ ਵe@jpIn,!txoҔ֧TS5(M_@*ܒ871yoJ܁oDkx[ yhAx =;_ +b+xő3HQSY.o \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test233.output.bin b/sha3/tests/data/sha3_256/test233.output.bin new file mode 100644 index 00000000..0bfdc431 Binary files /dev/null and b/sha3/tests/data/sha3_256/test233.output.bin differ diff --git a/sha3/tests/data/sha3_256/test234.input.bin b/sha3/tests/data/sha3_256/test234.input.bin new file mode 100644 index 00000000..6e7c2d03 Binary files /dev/null and b/sha3/tests/data/sha3_256/test234.input.bin differ diff --git a/sha3/tests/data/sha3_256/test234.output.bin b/sha3/tests/data/sha3_256/test234.output.bin new file mode 100644 index 00000000..8ca4bafd --- /dev/null +++ b/sha3/tests/data/sha3_256/test234.output.bin @@ -0,0 +1 @@ +:IW*#f|%G5D:Ex~s \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test235.input.bin b/sha3/tests/data/sha3_256/test235.input.bin new file mode 100644 index 00000000..a4bf95bb Binary files /dev/null and b/sha3/tests/data/sha3_256/test235.input.bin differ diff --git a/sha3/tests/data/sha3_256/test235.output.bin b/sha3/tests/data/sha3_256/test235.output.bin new file mode 100644 index 00000000..cee48cf9 --- /dev/null +++ b/sha3/tests/data/sha3_256/test235.output.bin @@ -0,0 +1 @@ +;LOj1yT0S< ?W \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test236.input.bin b/sha3/tests/data/sha3_256/test236.input.bin new file mode 100644 index 00000000..adc0f660 Binary files /dev/null and b/sha3/tests/data/sha3_256/test236.input.bin differ diff --git a/sha3/tests/data/sha3_256/test236.output.bin b/sha3/tests/data/sha3_256/test236.output.bin new file mode 100644 index 00000000..87c62986 --- /dev/null +++ b/sha3/tests/data/sha3_256/test236.output.bin @@ -0,0 +1 @@ +k=zƥ˅@Uy4&>:. 5̅ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test237.input.bin b/sha3/tests/data/sha3_256/test237.input.bin new file mode 100644 index 00000000..39e5194b Binary files /dev/null and b/sha3/tests/data/sha3_256/test237.input.bin differ diff --git a/sha3/tests/data/sha3_256/test237.output.bin b/sha3/tests/data/sha3_256/test237.output.bin new file mode 100644 index 00000000..30f96c9c --- /dev/null +++ b/sha3/tests/data/sha3_256/test237.output.bin @@ -0,0 +1 @@ +]?6^:„;dZ&[$f \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test238.input.bin b/sha3/tests/data/sha3_256/test238.input.bin new file mode 100644 index 00000000..3a765047 Binary files /dev/null and b/sha3/tests/data/sha3_256/test238.input.bin differ diff --git a/sha3/tests/data/sha3_256/test238.output.bin b/sha3/tests/data/sha3_256/test238.output.bin new file mode 100644 index 00000000..58b2ee00 --- /dev/null +++ b/sha3/tests/data/sha3_256/test238.output.bin @@ -0,0 +1 @@ +mg_CdYrwŹR$=}; \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test239.input.bin b/sha3/tests/data/sha3_256/test239.input.bin new file mode 100644 index 00000000..78398edd Binary files /dev/null and b/sha3/tests/data/sha3_256/test239.input.bin differ diff --git a/sha3/tests/data/sha3_256/test239.output.bin b/sha3/tests/data/sha3_256/test239.output.bin new file mode 100644 index 00000000..527a4f10 --- /dev/null +++ b/sha3/tests/data/sha3_256/test239.output.bin @@ -0,0 +1 @@ +C*UAb8;_L;f ʱ&nk \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test24.input.bin b/sha3/tests/data/sha3_256/test24.input.bin new file mode 100644 index 00000000..6edeea70 --- /dev/null +++ b/sha3/tests/data/sha3_256/test24.input.bin @@ -0,0 +1 @@ +T]Wi~,)ȫ5`o \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test24.output.bin b/sha3/tests/data/sha3_256/test24.output.bin new file mode 100644 index 00000000..5daba052 --- /dev/null +++ b/sha3/tests/data/sha3_256/test24.output.bin @@ -0,0 +1,2 @@ +jLlo6QL +֗3 At|zˁ;[ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test240.input.bin b/sha3/tests/data/sha3_256/test240.input.bin new file mode 100644 index 00000000..4344db77 Binary files /dev/null and b/sha3/tests/data/sha3_256/test240.input.bin differ diff --git a/sha3/tests/data/sha3_256/test240.output.bin b/sha3/tests/data/sha3_256/test240.output.bin new file mode 100644 index 00000000..a1ce2357 --- /dev/null +++ b/sha3/tests/data/sha3_256/test240.output.bin @@ -0,0 +1,2 @@ +Z!HWYہY5e=4/ +. \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test241.input.bin b/sha3/tests/data/sha3_256/test241.input.bin new file mode 100644 index 00000000..30304e7b --- /dev/null +++ b/sha3/tests/data/sha3_256/test241.input.bin @@ -0,0 +1,2 @@ +_΁ XW@>A; (%C]Cg';Ŋ0DгgB5&z@+;>;\%Fnz`7"+Li15Z-9{V5H:?fex8iAͳREH)NPc%-G@Z)-к! ;4ӝ0^\V7{u +7&KVo@wE_V$1z- \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test241.output.bin b/sha3/tests/data/sha3_256/test241.output.bin new file mode 100644 index 00000000..eff65361 --- /dev/null +++ b/sha3/tests/data/sha3_256/test241.output.bin @@ -0,0 +1 @@ +| |-P~:%FpT|k \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test242.input.bin b/sha3/tests/data/sha3_256/test242.input.bin new file mode 100644 index 00000000..9f83b1c0 --- /dev/null +++ b/sha3/tests/data/sha3_256/test242.input.bin @@ -0,0 +1,2 @@ +arnNap]_왿iKgK}׀a^P-k?CHr{} 0)'.JYhbea p̍niŀ6! cZ$=ŇGXT@ѰLd[}" +b:V8ٚ,@o2R+7^l׀(ӈE EAuSVik?9z )69;\YנKzïh y1Nu} \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test242.output.bin b/sha3/tests/data/sha3_256/test242.output.bin new file mode 100644 index 00000000..016b56d2 --- /dev/null +++ b/sha3/tests/data/sha3_256/test242.output.bin @@ -0,0 +1 @@ + S!2);GFJjaՇ#r \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test243.input.bin b/sha3/tests/data/sha3_256/test243.input.bin new file mode 100644 index 00000000..aa906dac Binary files /dev/null and b/sha3/tests/data/sha3_256/test243.input.bin differ diff --git a/sha3/tests/data/sha3_256/test243.output.bin b/sha3/tests/data/sha3_256/test243.output.bin new file mode 100644 index 00000000..acb8c08a --- /dev/null +++ b/sha3/tests/data/sha3_256/test243.output.bin @@ -0,0 +1,2 @@ +f} C}XɃZ +s21^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test244.input.bin b/sha3/tests/data/sha3_256/test244.input.bin new file mode 100644 index 00000000..d2160ac1 Binary files /dev/null and b/sha3/tests/data/sha3_256/test244.input.bin differ diff --git a/sha3/tests/data/sha3_256/test244.output.bin b/sha3/tests/data/sha3_256/test244.output.bin new file mode 100644 index 00000000..939b5a7e --- /dev/null +++ b/sha3/tests/data/sha3_256/test244.output.bin @@ -0,0 +1 @@ +H $UXy!7ۑ?E7={ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test245.input.bin b/sha3/tests/data/sha3_256/test245.input.bin new file mode 100644 index 00000000..7e958206 Binary files /dev/null and b/sha3/tests/data/sha3_256/test245.input.bin differ diff --git a/sha3/tests/data/sha3_256/test245.output.bin b/sha3/tests/data/sha3_256/test245.output.bin new file mode 100644 index 00000000..1c4e1546 --- /dev/null +++ b/sha3/tests/data/sha3_256/test245.output.bin @@ -0,0 +1,2 @@ +$ +l*~_C>ۧ#i:47z \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test246.input.bin b/sha3/tests/data/sha3_256/test246.input.bin new file mode 100644 index 00000000..514589ea Binary files /dev/null and b/sha3/tests/data/sha3_256/test246.input.bin differ diff --git a/sha3/tests/data/sha3_256/test246.output.bin b/sha3/tests/data/sha3_256/test246.output.bin new file mode 100644 index 00000000..7d3b5c05 --- /dev/null +++ b/sha3/tests/data/sha3_256/test246.output.bin @@ -0,0 +1 @@ +*СٹdhTL:[UWYl \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test247.input.bin b/sha3/tests/data/sha3_256/test247.input.bin new file mode 100644 index 00000000..58ac5c4f --- /dev/null +++ b/sha3/tests/data/sha3_256/test247.input.bin @@ -0,0 +1,3 @@ +)iD}T򪛰UML PTk-1ޜhɭN… g]so c+U YŚ?a\kuٓ@cxrj:?7;bkWE`dnS= +?zc v3BaY07e?D*]rɔOp9u΅Pr,m, +]vp>C4Ã*T~yrꀒ3 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test247.output.bin b/sha3/tests/data/sha3_256/test247.output.bin new file mode 100644 index 00000000..53cd3ca9 --- /dev/null +++ b/sha3/tests/data/sha3_256/test247.output.bin @@ -0,0 +1 @@ +Xih5{[*3ϻeR=. Ѥ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test248.input.bin b/sha3/tests/data/sha3_256/test248.input.bin new file mode 100644 index 00000000..998aaf05 --- /dev/null +++ b/sha3/tests/data/sha3_256/test248.input.bin @@ -0,0 +1,2 @@ +rEc:DNjNXWZ<'3hu Pj4=}[>PpEdrj`uvӖ?Udm W{YLy:KFCxA8SE -)A˫PڎQ1EL:%D-KzzY(]VON헕o0B^JH%oc'-mcHWuE +#3KF/Dºo2_'b*XvoM,j(`KurkyAvxU&£?æB95Pp({ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test250.output.bin b/sha3/tests/data/sha3_256/test250.output.bin new file mode 100644 index 00000000..4c2234ce Binary files /dev/null and b/sha3/tests/data/sha3_256/test250.output.bin differ diff --git a/sha3/tests/data/sha3_256/test251.input.bin b/sha3/tests/data/sha3_256/test251.input.bin new file mode 100644 index 00000000..e5174fd6 --- /dev/null +++ b/sha3/tests/data/sha3_256/test251.input.bin @@ -0,0 +1,3 @@ +Ki<%3lV;L8uh4GRԧ=[T82 pφX +`wVѢh9Jm󛟯WhW{*P_uǠK:5` *şeX^"Kyƾ)f-h7`Fz +%y\ܡ𚗜!Sͻ&Tn/PhZFaIeԶ>[Щm=ju{3sOD_tqi~+ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test251.output.bin b/sha3/tests/data/sha3_256/test251.output.bin new file mode 100644 index 00000000..86a973d4 --- /dev/null +++ b/sha3/tests/data/sha3_256/test251.output.bin @@ -0,0 +1 @@ +k qd$/,Ť)6OG \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test252.input.bin b/sha3/tests/data/sha3_256/test252.input.bin new file mode 100644 index 00000000..c892fcf3 Binary files /dev/null and b/sha3/tests/data/sha3_256/test252.input.bin differ diff --git a/sha3/tests/data/sha3_256/test252.output.bin b/sha3/tests/data/sha3_256/test252.output.bin new file mode 100644 index 00000000..a96581f6 --- /dev/null +++ b/sha3/tests/data/sha3_256/test252.output.bin @@ -0,0 +1 @@ +2\Yʹ6$L JWKkA \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test253.input.bin b/sha3/tests/data/sha3_256/test253.input.bin new file mode 100644 index 00000000..4b98ebd2 Binary files /dev/null and b/sha3/tests/data/sha3_256/test253.input.bin differ diff --git a/sha3/tests/data/sha3_256/test253.output.bin b/sha3/tests/data/sha3_256/test253.output.bin new file mode 100644 index 00000000..7c18e359 Binary files /dev/null and b/sha3/tests/data/sha3_256/test253.output.bin differ diff --git a/sha3/tests/data/sha3_256/test254.input.bin b/sha3/tests/data/sha3_256/test254.input.bin new file mode 100644 index 00000000..a29ed9a7 Binary files /dev/null and b/sha3/tests/data/sha3_256/test254.input.bin differ diff --git a/sha3/tests/data/sha3_256/test254.output.bin b/sha3/tests/data/sha3_256/test254.output.bin new file mode 100644 index 00000000..5ee18b29 --- /dev/null +++ b/sha3/tests/data/sha3_256/test254.output.bin @@ -0,0 +1 @@ +ϴ?|Zw8;&GI Y `J \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test255.input.bin b/sha3/tests/data/sha3_256/test255.input.bin new file mode 100644 index 00000000..d414c7f0 Binary files /dev/null and b/sha3/tests/data/sha3_256/test255.input.bin differ diff --git a/sha3/tests/data/sha3_256/test255.output.bin b/sha3/tests/data/sha3_256/test255.output.bin new file mode 100644 index 00000000..d785ac6d --- /dev/null +++ b/sha3/tests/data/sha3_256/test255.output.bin @@ -0,0 +1 @@ +5  6:9 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test256.input.bin b/sha3/tests/data/sha3_256/test256.input.bin new file mode 100644 index 00000000..fe0c3944 Binary files /dev/null and b/sha3/tests/data/sha3_256/test256.input.bin differ diff --git a/sha3/tests/data/sha3_256/test256.output.bin b/sha3/tests/data/sha3_256/test256.output.bin new file mode 100644 index 00000000..4630a4ae --- /dev/null +++ b/sha3/tests/data/sha3_256/test256.output.bin @@ -0,0 +1 @@ +5"{52 m@:;K#^cR \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test26.input.bin b/sha3/tests/data/sha3_256/test26.input.bin new file mode 100644 index 00000000..31e2fe3a --- /dev/null +++ b/sha3/tests/data/sha3_256/test26.input.bin @@ -0,0 +1 @@ +$==J eX`'bs^U \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test26.output.bin b/sha3/tests/data/sha3_256/test26.output.bin new file mode 100644 index 00000000..2bae27c2 --- /dev/null +++ b/sha3/tests/data/sha3_256/test26.output.bin @@ -0,0 +1 @@ +K_ȅՅ9$zki~ + \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test27.input.bin b/sha3/tests/data/sha3_256/test27.input.bin new file mode 100644 index 00000000..c108fd88 --- /dev/null +++ b/sha3/tests/data/sha3_256/test27.input.bin @@ -0,0 +1 @@ +{Hgl:R~ԅ`  \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test27.output.bin b/sha3/tests/data/sha3_256/test27.output.bin new file mode 100644 index 00000000..9a3cf8e9 --- /dev/null +++ b/sha3/tests/data/sha3_256/test27.output.bin @@ -0,0 +1 @@ +Wjk6S'fD029CL(ЯD, \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test28.input.bin b/sha3/tests/data/sha3_256/test28.input.bin new file mode 100644 index 00000000..2db6987a --- /dev/null +++ b/sha3/tests/data/sha3_256/test28.input.bin @@ -0,0 +1 @@ +#WZH'zEuC'XC \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test28.output.bin b/sha3/tests/data/sha3_256/test28.output.bin new file mode 100644 index 00000000..601b9fab --- /dev/null +++ b/sha3/tests/data/sha3_256/test28.output.bin @@ -0,0 +1 @@ +|eմ۷dft2ڐ5Ci< \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test29.input.bin b/sha3/tests/data/sha3_256/test29.input.bin new file mode 100644 index 00000000..557ef3d3 --- /dev/null +++ b/sha3/tests/data/sha3_256/test29.input.bin @@ -0,0 +1 @@ +-֌|ϱpSdbF|y^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test29.output.bin b/sha3/tests/data/sha3_256/test29.output.bin new file mode 100644 index 00000000..b3723fd9 --- /dev/null +++ b/sha3/tests/data/sha3_256/test29.output.bin @@ -0,0 +1 @@ +mdbmZOTTZ6.u?U'J.  \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test3.input.bin b/sha3/tests/data/sha3_256/test3.input.bin new file mode 100644 index 00000000..6037df8c --- /dev/null +++ b/sha3/tests/data/sha3_256/test3.input.bin @@ -0,0 +1 @@ +A \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test3.output.bin b/sha3/tests/data/sha3_256/test3.output.bin new file mode 100644 index 00000000..ce5755ce --- /dev/null +++ b/sha3/tests/data/sha3_256/test3.output.bin @@ -0,0 +1 @@ +9ne=&bT1/MqH.r \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test30.input.bin b/sha3/tests/data/sha3_256/test30.input.bin new file mode 100644 index 00000000..fa7268e4 Binary files /dev/null and b/sha3/tests/data/sha3_256/test30.input.bin differ diff --git a/sha3/tests/data/sha3_256/test30.output.bin b/sha3/tests/data/sha3_256/test30.output.bin new file mode 100644 index 00000000..0e13f0a5 --- /dev/null +++ b/sha3/tests/data/sha3_256/test30.output.bin @@ -0,0 +1 @@ +`1+Ѳyg$y^I@#{EE'!Ě \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test31.input.bin b/sha3/tests/data/sha3_256/test31.input.bin new file mode 100644 index 00000000..dc6e42e1 --- /dev/null +++ b/sha3/tests/data/sha3_256/test31.input.bin @@ -0,0 +1,2 @@ + : +8<@p , \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test31.output.bin b/sha3/tests/data/sha3_256/test31.output.bin new file mode 100644 index 00000000..950add2d --- /dev/null +++ b/sha3/tests/data/sha3_256/test31.output.bin @@ -0,0 +1 @@ +%]K  F|0hZ@Cu \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test32.input.bin b/sha3/tests/data/sha3_256/test32.input.bin new file mode 100644 index 00000000..032b03e0 --- /dev/null +++ b/sha3/tests/data/sha3_256/test32.input.bin @@ -0,0 +1 @@ +QlZ̵"򍠛#-B22Ã[) \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test32.output.bin b/sha3/tests/data/sha3_256/test32.output.bin new file mode 100644 index 00000000..55f6081d --- /dev/null +++ b/sha3/tests/data/sha3_256/test32.output.bin @@ -0,0 +1,2 @@ +9`6 +O=$Bz-}>z]`$S-S# \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test33.input.bin b/sha3/tests/data/sha3_256/test33.input.bin new file mode 100644 index 00000000..2636bc45 --- /dev/null +++ b/sha3/tests/data/sha3_256/test33.input.bin @@ -0,0 +1 @@ +/| k~l-]~] \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test33.output.bin b/sha3/tests/data/sha3_256/test33.output.bin new file mode 100644 index 00000000..049ccbc7 --- /dev/null +++ b/sha3/tests/data/sha3_256/test33.output.bin @@ -0,0 +1 @@ +/_qYNmM \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test34.input.bin b/sha3/tests/data/sha3_256/test34.input.bin new file mode 100644 index 00000000..7aaecfde --- /dev/null +++ b/sha3/tests/data/sha3_256/test34.input.bin @@ -0,0 +1 @@ +ޏ?Kp@Ecø%1x~M ^OZ F \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test34.output.bin b/sha3/tests/data/sha3_256/test34.output.bin new file mode 100644 index 00000000..791f677b --- /dev/null +++ b/sha3/tests/data/sha3_256/test34.output.bin @@ -0,0 +1 @@ +W8:Nlpy:4ot \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test35.input.bin b/sha3/tests/data/sha3_256/test35.input.bin new file mode 100644 index 00000000..8be18416 Binary files /dev/null and b/sha3/tests/data/sha3_256/test35.input.bin differ diff --git a/sha3/tests/data/sha3_256/test35.output.bin b/sha3/tests/data/sha3_256/test35.output.bin new file mode 100644 index 00000000..bb305c05 --- /dev/null +++ b/sha3/tests/data/sha3_256/test35.output.bin @@ -0,0 +1 @@ +`;nղѼƎ {~W_Zh \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test36.input.bin b/sha3/tests/data/sha3_256/test36.input.bin new file mode 100644 index 00000000..bd37ce58 --- /dev/null +++ b/sha3/tests/data/sha3_256/test36.input.bin @@ -0,0 +1 @@ ++#} }>^*"gZcxN[N \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test36.output.bin b/sha3/tests/data/sha3_256/test36.output.bin new file mode 100644 index 00000000..fa2ebed5 --- /dev/null +++ b/sha3/tests/data/sha3_256/test36.output.bin @@ -0,0 +1 @@ +9Qx1oBez(Vw^L \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test37.input.bin b/sha3/tests/data/sha3_256/test37.input.bin new file mode 100644 index 00000000..3f70b9dc --- /dev/null +++ b/sha3/tests/data/sha3_256/test37.input.bin @@ -0,0 +1 @@ +Giz '4za:5bc*g̙@WNSϞsrf \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test4.input.bin b/sha3/tests/data/sha3_256/test4.input.bin new file mode 100644 index 00000000..2ab26bf6 --- /dev/null +++ b/sha3/tests/data/sha3_256/test4.input.bin @@ -0,0 +1 @@ +| \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test4.output.bin b/sha3/tests/data/sha3_256/test4.output.bin new file mode 100644 index 00000000..77f75ce4 --- /dev/null +++ b/sha3/tests/data/sha3_256/test4.output.bin @@ -0,0 +1 @@ +"4^KAfq*PѶc,@ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test40.input.bin b/sha3/tests/data/sha3_256/test40.input.bin new file mode 100644 index 00000000..a01e31cc --- /dev/null +++ b/sha3/tests/data/sha3_256/test40.input.bin @@ -0,0 +1 @@ +.?QIasgN ;04F} \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test40.output.bin b/sha3/tests/data/sha3_256/test40.output.bin new file mode 100644 index 00000000..2bd9d929 --- /dev/null +++ b/sha3/tests/data/sha3_256/test40.output.bin @@ -0,0 +1 @@ +V/;b"j:%܉s-makA \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test41.input.bin b/sha3/tests/data/sha3_256/test41.input.bin new file mode 100644 index 00000000..f6eb82cd --- /dev/null +++ b/sha3/tests/data/sha3_256/test41.input.bin @@ -0,0 +1,2 @@ +z.§4vtD +em%Ee0)Dk \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test41.output.bin b/sha3/tests/data/sha3_256/test41.output.bin new file mode 100644 index 00000000..af1b9347 --- /dev/null +++ b/sha3/tests/data/sha3_256/test41.output.bin @@ -0,0 +1 @@ +Jtf ϤOH\!sjO` \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test42.input.bin b/sha3/tests/data/sha3_256/test42.input.bin new file mode 100644 index 00000000..b9beab77 --- /dev/null +++ b/sha3/tests/data/sha3_256/test42.input.bin @@ -0,0 +1 @@ +ȍ'g"ˬ1ŌxeՀ}Fr; {· \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test42.output.bin b/sha3/tests/data/sha3_256/test42.output.bin new file mode 100644 index 00000000..8e69b43c --- /dev/null +++ b/sha3/tests/data/sha3_256/test42.output.bin @@ -0,0 +1 @@ +կ"ߚ o $ g c`y\-} \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test43.input.bin b/sha3/tests/data/sha3_256/test43.input.bin new file mode 100644 index 00000000..a09cd949 --- /dev/null +++ b/sha3/tests/data/sha3_256/test43.input.bin @@ -0,0 +1 @@ +?PEɱ>k]VO8' L+k \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test43.output.bin b/sha3/tests/data/sha3_256/test43.output.bin new file mode 100644 index 00000000..8c3a2179 --- /dev/null +++ b/sha3/tests/data/sha3_256/test43.output.bin @@ -0,0 +1,3 @@ + +RyefdU +(?a Ut׬]"&*/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test44.input.bin b/sha3/tests/data/sha3_256/test44.input.bin new file mode 100644 index 00000000..f458e5bf --- /dev/null +++ b/sha3/tests/data/sha3_256/test44.input.bin @@ -0,0 +1,2 @@ +3p#7 +H.5F|N~I `K.n[@қz \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test44.output.bin b/sha3/tests/data/sha3_256/test44.output.bin new file mode 100644 index 00000000..2f952ea1 --- /dev/null +++ b/sha3/tests/data/sha3_256/test44.output.bin @@ -0,0 +1 @@ +zۺ(g-=v?ݧ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test45.input.bin b/sha3/tests/data/sha3_256/test45.input.bin new file mode 100644 index 00000000..8484eefc --- /dev/null +++ b/sha3/tests/data/sha3_256/test45.input.bin @@ -0,0 +1,2 @@ +hTLt-, +؄Q D81'Vk28*k5 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test45.output.bin b/sha3/tests/data/sha3_256/test45.output.bin new file mode 100644 index 00000000..d77644da --- /dev/null +++ b/sha3/tests/data/sha3_256/test45.output.bin @@ -0,0 +1 @@ +u/'1Zӫb00Zx \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test46.input.bin b/sha3/tests/data/sha3_256/test46.input.bin new file mode 100644 index 00000000..871dabcf --- /dev/null +++ b/sha3/tests/data/sha3_256/test46.input.bin @@ -0,0 +1 @@ ++0V [ڸ %]8Fr4 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test46.output.bin b/sha3/tests/data/sha3_256/test46.output.bin new file mode 100644 index 00000000..7391f64e --- /dev/null +++ b/sha3/tests/data/sha3_256/test46.output.bin @@ -0,0 +1 @@ +!Y f'G).kN \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test47.input.bin b/sha3/tests/data/sha3_256/test47.input.bin new file mode 100644 index 00000000..ba4594ad --- /dev/null +++ b/sha3/tests/data/sha3_256/test47.input.bin @@ -0,0 +1 @@ +.툁 W-scra8KεEwlʐ~~ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test47.output.bin b/sha3/tests/data/sha3_256/test47.output.bin new file mode 100644 index 00000000..dfb4b697 Binary files /dev/null and b/sha3/tests/data/sha3_256/test47.output.bin differ diff --git a/sha3/tests/data/sha3_256/test48.input.bin b/sha3/tests/data/sha3_256/test48.input.bin new file mode 100644 index 00000000..d6259031 --- /dev/null +++ b/sha3/tests/data/sha3_256/test48.input.bin @@ -0,0 +1 @@ +CrQ֒Bu O@S,?\QNԥ0M G&6KZQٻ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test48.output.bin b/sha3/tests/data/sha3_256/test48.output.bin new file mode 100644 index 00000000..7616d55b --- /dev/null +++ b/sha3/tests/data/sha3_256/test48.output.bin @@ -0,0 +1,2 @@ +:a+ +pݝfyi \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test49.input.bin b/sha3/tests/data/sha3_256/test49.input.bin new file mode 100644 index 00000000..a2e03996 --- /dev/null +++ b/sha3/tests/data/sha3_256/test49.input.bin @@ -0,0 +1 @@ +Q_oVN'|ЌV$W)؜$ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test49.output.bin b/sha3/tests/data/sha3_256/test49.output.bin new file mode 100644 index 00000000..253ce7ff --- /dev/null +++ b/sha3/tests/data/sha3_256/test49.output.bin @@ -0,0 +1 @@ +4`~ ,V\pbZr>HAl7 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test5.input.bin b/sha3/tests/data/sha3_256/test5.input.bin new file mode 100644 index 00000000..ef149867 --- /dev/null +++ b/sha3/tests/data/sha3_256/test5.input.bin @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test5.output.bin b/sha3/tests/data/sha3_256/test5.output.bin new file mode 100644 index 00000000..93ba8bcb --- /dev/null +++ b/sha3/tests/data/sha3_256/test5.output.bin @@ -0,0 +1 @@ +Ņ%`̇?|Jn(Qgb$ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test50.input.bin b/sha3/tests/data/sha3_256/test50.input.bin new file mode 100644 index 00000000..b0fcd9fc --- /dev/null +++ b/sha3/tests/data/sha3_256/test50.input.bin @@ -0,0 +1 @@ +p4`7he^T| \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test56.input.bin b/sha3/tests/data/sha3_256/test56.input.bin new file mode 100644 index 00000000..42a4636a Binary files /dev/null and b/sha3/tests/data/sha3_256/test56.input.bin differ diff --git a/sha3/tests/data/sha3_256/test56.output.bin b/sha3/tests/data/sha3_256/test56.output.bin new file mode 100644 index 00000000..55314126 --- /dev/null +++ b/sha3/tests/data/sha3_256/test56.output.bin @@ -0,0 +1 @@ +cX7.TY.[! \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test57.input.bin b/sha3/tests/data/sha3_256/test57.input.bin new file mode 100644 index 00000000..d9160dc4 --- /dev/null +++ b/sha3/tests/data/sha3_256/test57.input.bin @@ -0,0 +1,2 @@ +W%,?s!3VԼ*Aqa 3)}w +ASGf \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test57.output.bin b/sha3/tests/data/sha3_256/test57.output.bin new file mode 100644 index 00000000..33627274 --- /dev/null +++ b/sha3/tests/data/sha3_256/test57.output.bin @@ -0,0 +1,2 @@ +9zھBM \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test58.output.bin b/sha3/tests/data/sha3_256/test58.output.bin new file mode 100644 index 00000000..14af9a6a --- /dev/null +++ b/sha3/tests/data/sha3_256/test58.output.bin @@ -0,0 +1,2 @@ +Z* +y1 O%XE1"yji \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test59.input.bin b/sha3/tests/data/sha3_256/test59.input.bin new file mode 100644 index 00000000..62c5f7a8 --- /dev/null +++ b/sha3/tests/data/sha3_256/test59.input.bin @@ -0,0 +1 @@ +\_f..(JNktHh8wLOmPq݊A\HQ96P artg \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test69.input.bin b/sha3/tests/data/sha3_256/test69.input.bin new file mode 100644 index 00000000..3d5df4c5 --- /dev/null +++ b/sha3/tests/data/sha3_256/test69.input.bin @@ -0,0 +1 @@ +6_,9D^~}AY+CKG4_bV'5J󴴿 tObPy@pk \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test69.output.bin b/sha3/tests/data/sha3_256/test69.output.bin new file mode 100644 index 00000000..bc5ea41a --- /dev/null +++ b/sha3/tests/data/sha3_256/test69.output.bin @@ -0,0 +1 @@ +` KR3lxvZvUF \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test7.input.bin b/sha3/tests/data/sha3_256/test7.input.bin new file mode 100644 index 00000000..20cda512 --- /dev/null +++ b/sha3/tests/data/sha3_256/test7.input.bin @@ -0,0 +1 @@ + N) \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test7.output.bin b/sha3/tests/data/sha3_256/test7.output.bin new file mode 100644 index 00000000..34e02ef0 --- /dev/null +++ b/sha3/tests/data/sha3_256/test7.output.bin @@ -0,0 +1 @@ + u}JrF(P-8RetKV5 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test70.input.bin b/sha3/tests/data/sha3_256/test70.input.bin new file mode 100644 index 00000000..fb003ff3 --- /dev/null +++ b/sha3/tests/data/sha3_256/test70.input.bin @@ -0,0 +1 @@ +wcʘ[ʺT(oa(M])`q{Ik%(I,L,kt۶\*Q1lw \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test70.output.bin b/sha3/tests/data/sha3_256/test70.output.bin new file mode 100644 index 00000000..95e93fa6 --- /dev/null +++ b/sha3/tests/data/sha3_256/test70.output.bin @@ -0,0 +1 @@ +O0U/Hu0FH[s0 5 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test71.input.bin b/sha3/tests/data/sha3_256/test71.input.bin new file mode 100644 index 00000000..45546141 --- /dev/null +++ b/sha3/tests/data/sha3_256/test71.input.bin @@ -0,0 +1 @@ +ʎT#LmSsK _y: PB.ɍ~pD{#اw`YOr \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test71.output.bin b/sha3/tests/data/sha3_256/test71.output.bin new file mode 100644 index 00000000..b0d3a322 --- /dev/null +++ b/sha3/tests/data/sha3_256/test71.output.bin @@ -0,0 +1 @@ +zԻSCMq-tfTۥ#9.vn \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test72.input.bin b/sha3/tests/data/sha3_256/test72.input.bin new file mode 100644 index 00000000..34b52d0b Binary files /dev/null and b/sha3/tests/data/sha3_256/test72.input.bin differ diff --git a/sha3/tests/data/sha3_256/test72.output.bin b/sha3/tests/data/sha3_256/test72.output.bin new file mode 100644 index 00000000..85eb3b72 --- /dev/null +++ b/sha3/tests/data/sha3_256/test72.output.bin @@ -0,0 +1 @@ +Zc#*+ #Wa})>?w&BqR \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test73.input.bin b/sha3/tests/data/sha3_256/test73.input.bin new file mode 100644 index 00000000..3f6a3d3d Binary files /dev/null and b/sha3/tests/data/sha3_256/test73.input.bin differ diff --git a/sha3/tests/data/sha3_256/test73.output.bin b/sha3/tests/data/sha3_256/test73.output.bin new file mode 100644 index 00000000..6bf3fe51 Binary files /dev/null and b/sha3/tests/data/sha3_256/test73.output.bin differ diff --git a/sha3/tests/data/sha3_256/test74.input.bin b/sha3/tests/data/sha3_256/test74.input.bin new file mode 100644 index 00000000..206cbe08 Binary files /dev/null and b/sha3/tests/data/sha3_256/test74.input.bin differ diff --git a/sha3/tests/data/sha3_256/test74.output.bin b/sha3/tests/data/sha3_256/test74.output.bin new file mode 100644 index 00000000..686fde32 --- /dev/null +++ b/sha3/tests/data/sha3_256/test74.output.bin @@ -0,0 +1 @@ +lGKy-ķuLFdQh |X \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test75.input.bin b/sha3/tests/data/sha3_256/test75.input.bin new file mode 100644 index 00000000..be1ac2da --- /dev/null +++ b/sha3/tests/data/sha3_256/test75.input.bin @@ -0,0 +1 @@ +&Vs}ʸ`._TeT, uZOM%p>";[<ᐜ ԱMpt \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test75.output.bin b/sha3/tests/data/sha3_256/test75.output.bin new file mode 100644 index 00000000..b4e20199 --- /dev/null +++ b/sha3/tests/data/sha3_256/test75.output.bin @@ -0,0 +1 @@ +kfLlPi=Ӷ}%+ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test76.input.bin b/sha3/tests/data/sha3_256/test76.input.bin new file mode 100644 index 00000000..fbd5dce7 --- /dev/null +++ b/sha3/tests/data/sha3_256/test76.input.bin @@ -0,0 +1 @@ +=׿YJ5'}}Z[Mm/dqQA̽{ΠRCޮ|MFv?wӄY< \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test76.output.bin b/sha3/tests/data/sha3_256/test76.output.bin new file mode 100644 index 00000000..8922cbbd --- /dev/null +++ b/sha3/tests/data/sha3_256/test76.output.bin @@ -0,0 +1 @@ +/!}{h;Ǧ>pϟ|3%Q(($ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test77.input.bin b/sha3/tests/data/sha3_256/test77.input.bin new file mode 100644 index 00000000..5fcf443c --- /dev/null +++ b/sha3/tests/data/sha3_256/test77.input.bin @@ -0,0 +1 @@ +<5@f3X6_\؏ɬX*]XѴcpNº4HԦ<#aY^| \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test77.output.bin b/sha3/tests/data/sha3_256/test77.output.bin new file mode 100644 index 00000000..46051e8f --- /dev/null +++ b/sha3/tests/data/sha3_256/test77.output.bin @@ -0,0 +1,2 @@ + / +=6,xuۜU \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test78.input.bin b/sha3/tests/data/sha3_256/test78.input.bin new file mode 100644 index 00000000..78d1a46e --- /dev/null +++ b/sha3/tests/data/sha3_256/test78.input.bin @@ -0,0 +1,2 @@ +d^ʆ5| + adt֑ͽeKRTi1j SƎ2NŤ֢ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test78.output.bin b/sha3/tests/data/sha3_256/test78.output.bin new file mode 100644 index 00000000..a4f4bc28 --- /dev/null +++ b/sha3/tests/data/sha3_256/test78.output.bin @@ -0,0 +1,2 @@ +3 +Gty 4Co*o* \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test79.input.bin b/sha3/tests/data/sha3_256/test79.input.bin new file mode 100644 index 00000000..8ec52985 --- /dev/null +++ b/sha3/tests/data/sha3_256/test79.input.bin @@ -0,0 +1,2 @@ +eK∹ tqh + *47,qΪ%ުWo1)aϛI[jIl[< \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test79.output.bin b/sha3/tests/data/sha3_256/test79.output.bin new file mode 100644 index 00000000..66cb26a0 --- /dev/null +++ b/sha3/tests/data/sha3_256/test79.output.bin @@ -0,0 +1 @@ +A?۪pu׺@Z/[#! \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test8.input.bin b/sha3/tests/data/sha3_256/test8.input.bin new file mode 100644 index 00000000..4258f91d --- /dev/null +++ b/sha3/tests/data/sha3_256/test8.input.bin @@ -0,0 +1 @@ +̃ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test8.output.bin b/sha3/tests/data/sha3_256/test8.output.bin new file mode 100644 index 00000000..e4d8172e --- /dev/null +++ b/sha3/tests/data/sha3_256/test8.output.bin @@ -0,0 +1 @@ +@ɤCs!/3ѸP"Í/ߤ=ml \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test84.input.bin b/sha3/tests/data/sha3_256/test84.input.bin new file mode 100644 index 00000000..c5affa06 --- /dev/null +++ b/sha3/tests/data/sha3_256/test84.input.bin @@ -0,0 +1,2 @@ +cH);w wTNQfȁitnB?vj  >;oytp +z}(L;xp=+xan \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test84.output.bin b/sha3/tests/data/sha3_256/test84.output.bin new file mode 100644 index 00000000..1d969f18 --- /dev/null +++ b/sha3/tests/data/sha3_256/test84.output.bin @@ -0,0 +1 @@ +YE=|\žl0ĝ\ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test85.input.bin b/sha3/tests/data/sha3_256/test85.input.bin new file mode 100644 index 00000000..cffc8df4 Binary files /dev/null and b/sha3/tests/data/sha3_256/test85.input.bin differ diff --git a/sha3/tests/data/sha3_256/test85.output.bin b/sha3/tests/data/sha3_256/test85.output.bin new file mode 100644 index 00000000..3a80f178 --- /dev/null +++ b/sha3/tests/data/sha3_256/test85.output.bin @@ -0,0 +1 @@ +FB"[ A6Yh/8Ky2]mz \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test86.input.bin b/sha3/tests/data/sha3_256/test86.input.bin new file mode 100644 index 00000000..7db9b52d Binary files /dev/null and b/sha3/tests/data/sha3_256/test86.input.bin differ diff --git a/sha3/tests/data/sha3_256/test86.output.bin b/sha3/tests/data/sha3_256/test86.output.bin new file mode 100644 index 00000000..93e7d414 --- /dev/null +++ b/sha3/tests/data/sha3_256/test86.output.bin @@ -0,0 +1 @@ +GW!W&j'mY&/{Jצ}Aׂ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test87.input.bin b/sha3/tests/data/sha3_256/test87.input.bin new file mode 100644 index 00000000..4ab2eb77 --- /dev/null +++ b/sha3/tests/data/sha3_256/test87.input.bin @@ -0,0 +1 @@ +hn ij)/3͚J1zI/\v镬Ȼ{xЁ%]9GY ΂"AM%FR \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test87.output.bin b/sha3/tests/data/sha3_256/test87.output.bin new file mode 100644 index 00000000..cc84256a --- /dev/null +++ b/sha3/tests/data/sha3_256/test87.output.bin @@ -0,0 +1 @@ +4Se#,U?CȬmK4KӖ4 \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test88.input.bin b/sha3/tests/data/sha3_256/test88.input.bin new file mode 100644 index 00000000..98c75ade --- /dev/null +++ b/sha3/tests/data/sha3_256/test88.input.bin @@ -0,0 +1 @@ +drN1Tt?4dK6޽dۧ\>@邻p0418FvO/E5;)o';oV< \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test88.output.bin b/sha3/tests/data/sha3_256/test88.output.bin new file mode 100644 index 00000000..ea3c3887 --- /dev/null +++ b/sha3/tests/data/sha3_256/test88.output.bin @@ -0,0 +1 @@ +..W)8x)޴w2OU/D \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test89.input.bin b/sha3/tests/data/sha3_256/test89.input.bin new file mode 100644 index 00000000..e0db0dc8 --- /dev/null +++ b/sha3/tests/data/sha3_256/test89.input.bin @@ -0,0 +1 @@ + Xf_CB 1Ͱ"ƃ z>RWYLﴧ(F2I'uOJOd= чDL͟!@@NmE+TB} \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test89.output.bin b/sha3/tests/data/sha3_256/test89.output.bin new file mode 100644 index 00000000..1804ade7 --- /dev/null +++ b/sha3/tests/data/sha3_256/test89.output.bin @@ -0,0 +1 @@ ++FL\H)_Ei}ۍdRL \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test9.input.bin b/sha3/tests/data/sha3_256/test9.input.bin new file mode 100644 index 00000000..dbdc2b7a --- /dev/null +++ b/sha3/tests/data/sha3_256/test9.input.bin @@ -0,0 +1 @@ +JO $Q%& \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test9.output.bin b/sha3/tests/data/sha3_256/test9.output.bin new file mode 100644 index 00000000..4e9df047 --- /dev/null +++ b/sha3/tests/data/sha3_256/test9.output.bin @@ -0,0 +1 @@ +O z\dN\UXTzRA!eߺ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test90.input.bin b/sha3/tests/data/sha3_256/test90.input.bin new file mode 100644 index 00000000..79e91444 Binary files /dev/null and b/sha3/tests/data/sha3_256/test90.input.bin differ diff --git a/sha3/tests/data/sha3_256/test90.output.bin b/sha3/tests/data/sha3_256/test90.output.bin new file mode 100644 index 00000000..9ee31996 --- /dev/null +++ b/sha3/tests/data/sha3_256/test90.output.bin @@ -0,0 +1 @@ +?06Y'U2`<;~ap~ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test91.input.bin b/sha3/tests/data/sha3_256/test91.input.bin new file mode 100644 index 00000000..ea51e82c --- /dev/null +++ b/sha3/tests/data/sha3_256/test91.input.bin @@ -0,0 +1 @@ +au,KWJ~@N=]RL ܰ:2uܭrS7yy&]|%yx< \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test91.output.bin b/sha3/tests/data/sha3_256/test91.output.bin new file mode 100644 index 00000000..3efd528e Binary files /dev/null and b/sha3/tests/data/sha3_256/test91.output.bin differ diff --git a/sha3/tests/data/sha3_256/test92.input.bin b/sha3/tests/data/sha3_256/test92.input.bin new file mode 100644 index 00000000..47f32cf6 --- /dev/null +++ b/sha3/tests/data/sha3_256/test92.input.bin @@ -0,0 +1 @@ +5pc wNVS^GPw5DpFOdv*#zIRc '|Qs~z\U_ \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test92.output.bin b/sha3/tests/data/sha3_256/test92.output.bin new file mode 100644 index 00000000..0012e1c8 --- /dev/null +++ b/sha3/tests/data/sha3_256/test92.output.bin @@ -0,0 +1,2 @@ +WĺDa +նvLƉO \ No newline at end of file diff --git a/sha3/tests/data/sha3_256/test93.input.bin b/sha3/tests/data/sha3_256/test93.input.bin new file mode 100644 index 00000000..203ee257 --- /dev/null +++ b/sha3/tests/data/sha3_256/test93.input.bin @@ -0,0 +1,2 @@ +/#@[r,YlE8^^cJ +*r>ݵ+g2aDʇ­A0T {#Ut!tAI/Dm`@3U{v٠IYa Xڳ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test103.output.bin b/sha3/tests/data/sha3_384/test103.output.bin new file mode 100644 index 00000000..039c416f --- /dev/null +++ b/sha3/tests/data/sha3_384/test103.output.bin @@ -0,0 +1,2 @@ + +NNx|te}گ%Sk`xSt"9h} \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test104.input.bin b/sha3/tests/data/sha3_384/test104.input.bin new file mode 100644 index 00000000..12b383e4 --- /dev/null +++ b/sha3/tests/data/sha3_384/test104.input.bin @@ -0,0 +1,2 @@ +W뗙LwS]Mh<>gqS'LJX휽ԆiI6O*Q&Tr]δjjm#Q~3PV`j̯z%K|n +!iiA8H \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test104.output.bin b/sha3/tests/data/sha3_384/test104.output.bin new file mode 100644 index 00000000..bc554d2c --- /dev/null +++ b/sha3/tests/data/sha3_384/test104.output.bin @@ -0,0 +1 @@ +уu+&>(kGyq s3D;^r+: \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test105.input.bin b/sha3/tests/data/sha3_384/test105.input.bin new file mode 100644 index 00000000..4bee27fe --- /dev/null +++ b/sha3/tests/data/sha3_384/test105.input.bin @@ -0,0 +1,3 @@ +dm1PLy=rgcGIGSgFXj$?\P +nWڻx ++Rpڢ |өPќO>Ks#A[N}m .Nx \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test105.output.bin b/sha3/tests/data/sha3_384/test105.output.bin new file mode 100644 index 00000000..0527d99a --- /dev/null +++ b/sha3/tests/data/sha3_384/test105.output.bin @@ -0,0 +1,2 @@ +jD&H< i[+Oz''/v8  5 +fc \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test106.input.bin b/sha3/tests/data/sha3_384/test106.input.bin new file mode 100644 index 00000000..69b78d43 Binary files /dev/null and b/sha3/tests/data/sha3_384/test106.input.bin differ diff --git a/sha3/tests/data/sha3_384/test106.output.bin b/sha3/tests/data/sha3_384/test106.output.bin new file mode 100644 index 00000000..2b8e33b4 --- /dev/null +++ b/sha3/tests/data/sha3_384/test106.output.bin @@ -0,0 +1 @@ +=߉w-_et \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test113.input.bin b/sha3/tests/data/sha3_384/test113.input.bin new file mode 100644 index 00000000..d1cefe00 --- /dev/null +++ b/sha3/tests/data/sha3_384/test113.input.bin @@ -0,0 +1 @@ +t9mgյ, N?K>msNN]jr5@#Tf%ꗕ30y+co J(`Yc-e'~"r_嵮 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test113.output.bin b/sha3/tests/data/sha3_384/test113.output.bin new file mode 100644 index 00000000..e032f4bc --- /dev/null +++ b/sha3/tests/data/sha3_384/test113.output.bin @@ -0,0 +1 @@ +^}ɘ;we ueIo5e{k| \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test114.input.bin b/sha3/tests/data/sha3_384/test114.input.bin new file mode 100644 index 00000000..3f20aaf1 Binary files /dev/null and b/sha3/tests/data/sha3_384/test114.input.bin differ diff --git a/sha3/tests/data/sha3_384/test114.output.bin b/sha3/tests/data/sha3_384/test114.output.bin new file mode 100644 index 00000000..f3c8bd52 --- /dev/null +++ b/sha3/tests/data/sha3_384/test114.output.bin @@ -0,0 +1 @@ +\XZTFbQHټsCH} dVXhPJhv \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test115.input.bin b/sha3/tests/data/sha3_384/test115.input.bin new file mode 100644 index 00000000..a6fd6d89 --- /dev/null +++ b/sha3/tests/data/sha3_384/test115.input.bin @@ -0,0 +1 @@ +\hL4c򒑿&./B*ݜ3/=|41 m_HW9OG";1jnXgZUIÍv0aʫi( 9- \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test115.output.bin b/sha3/tests/data/sha3_384/test115.output.bin new file mode 100644 index 00000000..ae9ebeb8 --- /dev/null +++ b/sha3/tests/data/sha3_384/test115.output.bin @@ -0,0 +1 @@ +7`9ʤ a#z̀{ׯE7+٨ڣS \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test116.input.bin b/sha3/tests/data/sha3_384/test116.input.bin new file mode 100644 index 00000000..2784049e --- /dev/null +++ b/sha3/tests/data/sha3_384/test116.input.bin @@ -0,0 +1 @@ +.ooeG) ?)׬o`z2C>#ul\.*L_cbdPXeq@Jm+ODuT4i4 Za]@Wۙ1BbEtE \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test116.output.bin b/sha3/tests/data/sha3_384/test116.output.bin new file mode 100644 index 00000000..8b276755 --- /dev/null +++ b/sha3/tests/data/sha3_384/test116.output.bin @@ -0,0 +1 @@ +@_MAm5Xw3;S l\$FZbr \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test117.input.bin b/sha3/tests/data/sha3_384/test117.input.bin new file mode 100644 index 00000000..2077f3da --- /dev/null +++ b/sha3/tests/data/sha3_384/test117.input.bin @@ -0,0 +1 @@ +ڱG lB1uV(RBj ڲCr dhkǶzSLBc슟*qc"Jabsϣ0"${BEc`0(ãg([iiD~!b Skމ%qf$k!)= W- 5]% \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test121.output.bin b/sha3/tests/data/sha3_384/test121.output.bin new file mode 100644 index 00000000..211a8e5f --- /dev/null +++ b/sha3/tests/data/sha3_384/test121.output.bin @@ -0,0 +1 @@ +bp8Gf\KQC\t'0ObV`SJꉾ}Q \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test122.input.bin b/sha3/tests/data/sha3_384/test122.input.bin new file mode 100644 index 00000000..b010172a --- /dev/null +++ b/sha3/tests/data/sha3_384/test122.input.bin @@ -0,0 +1 @@ +eoĸ |hu Nj_s$Gx%'F3YtnJW|RLRG#y\UDlΐlwJŹL"Vu]˖:KNY| y@ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test122.output.bin b/sha3/tests/data/sha3_384/test122.output.bin new file mode 100644 index 00000000..9cc589c8 --- /dev/null +++ b/sha3/tests/data/sha3_384/test122.output.bin @@ -0,0 +1 @@ +'%Zf!w"2)8e0q[kjR(`Y] \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test123.input.bin b/sha3/tests/data/sha3_384/test123.input.bin new file mode 100644 index 00000000..02d4a4d3 Binary files /dev/null and b/sha3/tests/data/sha3_384/test123.input.bin differ diff --git a/sha3/tests/data/sha3_384/test123.output.bin b/sha3/tests/data/sha3_384/test123.output.bin new file mode 100644 index 00000000..db089bfb --- /dev/null +++ b/sha3/tests/data/sha3_384/test123.output.bin @@ -0,0 +1 @@ +:͔Jl7 =e봎 r*TסvF+[m8c \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test124.input.bin b/sha3/tests/data/sha3_384/test124.input.bin new file mode 100644 index 00000000..1d34f83e Binary files /dev/null and b/sha3/tests/data/sha3_384/test124.input.bin differ diff --git a/sha3/tests/data/sha3_384/test124.output.bin b/sha3/tests/data/sha3_384/test124.output.bin new file mode 100644 index 00000000..34fe6013 Binary files /dev/null and b/sha3/tests/data/sha3_384/test124.output.bin differ diff --git a/sha3/tests/data/sha3_384/test125.input.bin b/sha3/tests/data/sha3_384/test125.input.bin new file mode 100644 index 00000000..78a544e8 --- /dev/null +++ b/sha3/tests/data/sha3_384/test125.input.bin @@ -0,0 +1,2 @@ +E\ziDtY=*t(ghFfnQhJÃ+;K]*RJh +pWF=<_+Ƨ0WjUۉVwG&{9P?S \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test125.output.bin b/sha3/tests/data/sha3_384/test125.output.bin new file mode 100644 index 00000000..a04f8571 --- /dev/null +++ b/sha3/tests/data/sha3_384/test125.output.bin @@ -0,0 +1 @@ +YiF.;z(7}hkԣ.,Lqhh_!V]#  \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test126.input.bin b/sha3/tests/data/sha3_384/test126.input.bin new file mode 100644 index 00000000..71c98702 Binary files /dev/null and b/sha3/tests/data/sha3_384/test126.input.bin differ diff --git a/sha3/tests/data/sha3_384/test126.output.bin b/sha3/tests/data/sha3_384/test126.output.bin new file mode 100644 index 00000000..8a53fa13 --- /dev/null +++ b/sha3/tests/data/sha3_384/test126.output.bin @@ -0,0 +1 @@ +#3[!a {\@0zrRhx \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test127.input.bin b/sha3/tests/data/sha3_384/test127.input.bin new file mode 100644 index 00000000..dfddbc47 --- /dev/null +++ b/sha3/tests/data/sha3_384/test127.input.bin @@ -0,0 +1,4 @@ +/ŕ nc6?uu +a31(Lkv1[FC.0 ZR;k +nb +l]e,7iJtoFӲ&ޥS9:E¥-Ue \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test127.output.bin b/sha3/tests/data/sha3_384/test127.output.bin new file mode 100644 index 00000000..0cac7086 --- /dev/null +++ b/sha3/tests/data/sha3_384/test127.output.bin @@ -0,0 +1 @@ +8ttQCJ:b6YC@= \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test128.input.bin b/sha3/tests/data/sha3_384/test128.input.bin new file mode 100644 index 00000000..6a853339 --- /dev/null +++ b/sha3/tests/data/sha3_384/test128.input.bin @@ -0,0 +1,2 @@ ++mf^!&|m2A)6+]/h +rQu#L(cf!TV_[F;F s%mni3NV'h_ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test128.output.bin b/sha3/tests/data/sha3_384/test128.output.bin new file mode 100644 index 00000000..29b83f09 --- /dev/null +++ b/sha3/tests/data/sha3_384/test128.output.bin @@ -0,0 +1 @@ + 846$v%]!\tbO.sfۥ4q9 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test129.input.bin b/sha3/tests/data/sha3_384/test129.input.bin new file mode 100644 index 00000000..0169cf31 --- /dev/null +++ b/sha3/tests/data/sha3_384/test129.input.bin @@ -0,0 +1,2 @@ +P,ܫb3Hj)ử +'41DYH"=R{K&Bִ%y* +ʵb a \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test130.output.bin b/sha3/tests/data/sha3_384/test130.output.bin new file mode 100644 index 00000000..847c8faf Binary files /dev/null and b/sha3/tests/data/sha3_384/test130.output.bin differ diff --git a/sha3/tests/data/sha3_384/test131.input.bin b/sha3/tests/data/sha3_384/test131.input.bin new file mode 100644 index 00000000..92a71ce4 --- /dev/null +++ b/sha3/tests/data/sha3_384/test131.input.bin @@ -0,0 +1 @@ +芰S\ Lz|}T73Ð1TpnGwCBsBo_ba7za- ߫^!P`2^MUO`!i+yZw53GޟCV{^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test131.output.bin b/sha3/tests/data/sha3_384/test131.output.bin new file mode 100644 index 00000000..8a6942bb --- /dev/null +++ b/sha3/tests/data/sha3_384/test131.output.bin @@ -0,0 +1,3 @@ + n~ ;zT[³ˑ{> +`eIU~5 +66Y \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test132.input.bin b/sha3/tests/data/sha3_384/test132.input.bin new file mode 100644 index 00000000..86d9e207 Binary files /dev/null and b/sha3/tests/data/sha3_384/test132.input.bin differ diff --git a/sha3/tests/data/sha3_384/test132.output.bin b/sha3/tests/data/sha3_384/test132.output.bin new file mode 100644 index 00000000..7e8b8cf3 --- /dev/null +++ b/sha3/tests/data/sha3_384/test132.output.bin @@ -0,0 +1 @@ +3Ȭ[q{Žo|5K(ƁXeQڸW \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test133.input.bin b/sha3/tests/data/sha3_384/test133.input.bin new file mode 100644 index 00000000..8204a5b0 --- /dev/null +++ b/sha3/tests/data/sha3_384/test133.input.bin @@ -0,0 +1 @@ +Y ǩ$%ejmAXzL>;1aEϸ=2Zb_%ڛ\l *ŋ[P{&?0T8Q #ݴЇn5S6:-閸^p6tx*~Zp8m;'tS[^Q}_{"aK=)7-8WR|ݪX \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test134.output.bin b/sha3/tests/data/sha3_384/test134.output.bin new file mode 100644 index 00000000..12b6cca5 --- /dev/null +++ b/sha3/tests/data/sha3_384/test134.output.bin @@ -0,0 +1 @@ +Ge ;=VW@;v(j')\f>Ȟ  \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test135.input.bin b/sha3/tests/data/sha3_384/test135.input.bin new file mode 100644 index 00000000..d1749286 --- /dev/null +++ b/sha3/tests/data/sha3_384/test135.input.bin @@ -0,0 +1 @@ +qѤVC*.M/ !G2:`@gsKqxܞ9w`!qyz4Q()]7Uyoo؉kI2|q+$-R2,t AF]v=RۘIӰ֨/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test135.output.bin b/sha3/tests/data/sha3_384/test135.output.bin new file mode 100644 index 00000000..560659cf --- /dev/null +++ b/sha3/tests/data/sha3_384/test135.output.bin @@ -0,0 +1,2 @@ +!M<(+ Χ/Qm +@=qn @Ut e-N׫N<0cft9E \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test140.input.bin b/sha3/tests/data/sha3_384/test140.input.bin new file mode 100644 index 00000000..cf209ba1 --- /dev/null +++ b/sha3/tests/data/sha3_384/test140.input.bin @@ -0,0 +1 @@ +O q<.N<*s4@6NǵZPw;o}lEX.~#Eڵ adTVBF>4wƲU7j¡jbWp|D)nm3 [`7x8<<"3^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test140.output.bin b/sha3/tests/data/sha3_384/test140.output.bin new file mode 100644 index 00000000..a2183db6 --- /dev/null +++ b/sha3/tests/data/sha3_384/test140.output.bin @@ -0,0 +1,2 @@ +z8Bӱ' ۦ5Sv0Q}1}e +[` \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test141.input.bin b/sha3/tests/data/sha3_384/test141.input.bin new file mode 100644 index 00000000..bc838d1f --- /dev/null +++ b/sha3/tests/data/sha3_384/test141.input.bin @@ -0,0 +1 @@ +!g!b>GaRNlrU)hs`zy|< %ƈPꫮFyY&\#J?46L/\tHpb$m_U*TFO- tH0C") \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test141.output.bin b/sha3/tests/data/sha3_384/test141.output.bin new file mode 100644 index 00000000..9cd5f48e --- /dev/null +++ b/sha3/tests/data/sha3_384/test141.output.bin @@ -0,0 +1 @@ +]@岜`:G-~ =x$Ŧ&N(s1ށxbq \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test142.input.bin b/sha3/tests/data/sha3_384/test142.input.bin new file mode 100644 index 00000000..c63256ae --- /dev/null +++ b/sha3/tests/data/sha3_384/test142.input.bin @@ -0,0 +1,2 @@ + NvG WO@vgOihM 6} q365 )zZ\At[ɻLZA\y~c8ׁjTZo +[l3fYBCh \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test142.output.bin b/sha3/tests/data/sha3_384/test142.output.bin new file mode 100644 index 00000000..df140488 Binary files /dev/null and b/sha3/tests/data/sha3_384/test142.output.bin differ diff --git a/sha3/tests/data/sha3_384/test143.input.bin b/sha3/tests/data/sha3_384/test143.input.bin new file mode 100644 index 00000000..4eb647e3 --- /dev/null +++ b/sha3/tests/data/sha3_384/test143.input.bin @@ -0,0 +1 @@ +@<:$,l xS9ڲi8\v7B;T}6|k<x357[oơOPLri r,lgc@ay6=\ߓ?$K͍~f߯ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test143.output.bin b/sha3/tests/data/sha3_384/test143.output.bin new file mode 100644 index 00000000..9afa5be3 --- /dev/null +++ b/sha3/tests/data/sha3_384/test143.output.bin @@ -0,0 +1,3 @@ +] +-ybr¨<9,X&fLQ)qC +X( \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test144.input.bin b/sha3/tests/data/sha3_384/test144.input.bin new file mode 100644 index 00000000..70f53077 --- /dev/null +++ b/sha3/tests/data/sha3_384/test144.input.bin @@ -0,0 +1,2 @@ +}[~Em&tv81vM48c_%y/kXՓ_Yn?aѰp\S \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test146.input.bin b/sha3/tests/data/sha3_384/test146.input.bin new file mode 100644 index 00000000..9950b95c Binary files /dev/null and b/sha3/tests/data/sha3_384/test146.input.bin differ diff --git a/sha3/tests/data/sha3_384/test146.output.bin b/sha3/tests/data/sha3_384/test146.output.bin new file mode 100644 index 00000000..9439f98b --- /dev/null +++ b/sha3/tests/data/sha3_384/test146.output.bin @@ -0,0 +1 @@ +Rه|) j^@_D:Tnvj`66ڇ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test147.input.bin b/sha3/tests/data/sha3_384/test147.input.bin new file mode 100644 index 00000000..800598b4 --- /dev/null +++ b/sha3/tests/data/sha3_384/test147.input.bin @@ -0,0 +1 @@ +v9apEZѯx)D~kú&@Ow_W#}4s#p-pVݣmZZLh2ȿy ]_[~({C^B7KUK;j*P!S \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test147.output.bin b/sha3/tests/data/sha3_384/test147.output.bin new file mode 100644 index 00000000..1ee06a96 --- /dev/null +++ b/sha3/tests/data/sha3_384/test147.output.bin @@ -0,0 +1 @@ +l(OѳmiD{}8_ZOY`KbiΡ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test148.input.bin b/sha3/tests/data/sha3_384/test148.input.bin new file mode 100644 index 00000000..277902c8 --- /dev/null +++ b/sha3/tests/data/sha3_384/test148.input.bin @@ -0,0 +1,2 @@ +ea M~MX.hIY X=X^x + lHC^.٫K祫yz^[ݣAe|仴NV7N nq/Tp28cks=;oN#uɹo& \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test148.output.bin b/sha3/tests/data/sha3_384/test148.output.bin new file mode 100644 index 00000000..359cdbfd --- /dev/null +++ b/sha3/tests/data/sha3_384/test148.output.bin @@ -0,0 +1 @@ +86X%l5U*x#$Ī<+';vo \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test149.input.bin b/sha3/tests/data/sha3_384/test149.input.bin new file mode 100644 index 00000000..3f36959a --- /dev/null +++ b/sha3/tests/data/sha3_384/test149.input.bin @@ -0,0 +1 @@ +KD&]LrLb-4kClM`O)n}`RrO OQԿzelToQmb?'oϴNFÜ4BRF/#Hky:!e78+yD; \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test149.output.bin b/sha3/tests/data/sha3_384/test149.output.bin new file mode 100644 index 00000000..b68230ea --- /dev/null +++ b/sha3/tests/data/sha3_384/test149.output.bin @@ -0,0 +1 @@ +n$uc;[higIiLe@te/?nFF \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test15.input.bin b/sha3/tests/data/sha3_384/test15.input.bin new file mode 100644 index 00000000..84983066 --- /dev/null +++ b/sha3/tests/data/sha3_384/test15.input.bin @@ -0,0 +1 @@ +"Ky" \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test15.output.bin b/sha3/tests/data/sha3_384/test15.output.bin new file mode 100644 index 00000000..9f3ceff5 --- /dev/null +++ b/sha3/tests/data/sha3_384/test15.output.bin @@ -0,0 +1,2 @@ + +o'ӗ TzÐ(iH~u1ŭKNNZzKȍ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test150.input.bin b/sha3/tests/data/sha3_384/test150.input.bin new file mode 100644 index 00000000..a3a69849 Binary files /dev/null and b/sha3/tests/data/sha3_384/test150.input.bin differ diff --git a/sha3/tests/data/sha3_384/test150.output.bin b/sha3/tests/data/sha3_384/test150.output.bin new file mode 100644 index 00000000..91eeda41 --- /dev/null +++ b/sha3/tests/data/sha3_384/test150.output.bin @@ -0,0 +1 @@ +.&*8orRgiq y'鶺6PX<5B7bU3J \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test151.input.bin b/sha3/tests/data/sha3_384/test151.input.bin new file mode 100644 index 00000000..da338b71 --- /dev/null +++ b/sha3/tests/data/sha3_384/test151.input.bin @@ -0,0 +1 @@ +\,yf/j֖|2ns fq]nĞpѠe$ev˞+쑏m C7'ɩ;lۨVTjPgzx)Ԕ~{ m72MRDoTܣ9)qnH \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test151.output.bin b/sha3/tests/data/sha3_384/test151.output.bin new file mode 100644 index 00000000..44f5e934 --- /dev/null +++ b/sha3/tests/data/sha3_384/test151.output.bin @@ -0,0 +1 @@ +ڀoq(mot*֎VcNvVHz3P)6n) \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test152.input.bin b/sha3/tests/data/sha3_384/test152.input.bin new file mode 100644 index 00000000..83c5bb98 Binary files /dev/null and b/sha3/tests/data/sha3_384/test152.input.bin differ diff --git a/sha3/tests/data/sha3_384/test152.output.bin b/sha3/tests/data/sha3_384/test152.output.bin new file mode 100644 index 00000000..98425429 --- /dev/null +++ b/sha3/tests/data/sha3_384/test152.output.bin @@ -0,0 +1 @@ +x8Y2;|_ ?xeA`0`C5^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test153.input.bin b/sha3/tests/data/sha3_384/test153.input.bin new file mode 100644 index 00000000..42d81f91 Binary files /dev/null and b/sha3/tests/data/sha3_384/test153.input.bin differ diff --git a/sha3/tests/data/sha3_384/test153.output.bin b/sha3/tests/data/sha3_384/test153.output.bin new file mode 100644 index 00000000..5fa76a55 Binary files /dev/null and b/sha3/tests/data/sha3_384/test153.output.bin differ diff --git a/sha3/tests/data/sha3_384/test154.input.bin b/sha3/tests/data/sha3_384/test154.input.bin new file mode 100644 index 00000000..3021be05 Binary files /dev/null and b/sha3/tests/data/sha3_384/test154.input.bin differ diff --git a/sha3/tests/data/sha3_384/test154.output.bin b/sha3/tests/data/sha3_384/test154.output.bin new file mode 100644 index 00000000..b2780409 --- /dev/null +++ b/sha3/tests/data/sha3_384/test154.output.bin @@ -0,0 +1 @@ +y*0&1gm_cߘ j {n]c[H^k([3oNa \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test155.input.bin b/sha3/tests/data/sha3_384/test155.input.bin new file mode 100644 index 00000000..b111e4ed Binary files /dev/null and b/sha3/tests/data/sha3_384/test155.input.bin differ diff --git a/sha3/tests/data/sha3_384/test155.output.bin b/sha3/tests/data/sha3_384/test155.output.bin new file mode 100644 index 00000000..2da036b2 --- /dev/null +++ b/sha3/tests/data/sha3_384/test155.output.bin @@ -0,0 +1 @@ + ::";uCkg5Q?F'Rh-3 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test156.input.bin b/sha3/tests/data/sha3_384/test156.input.bin new file mode 100644 index 00000000..e0ed0030 --- /dev/null +++ b/sha3/tests/data/sha3_384/test156.input.bin @@ -0,0 +1 @@ ++RlZuecyhelbE\LCf1՜Q,xk골HU1 P4(l蒞cnmc2 F**b >a]з(foWm I-9Vs \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test156.output.bin b/sha3/tests/data/sha3_384/test156.output.bin new file mode 100644 index 00000000..99a7f37f --- /dev/null +++ b/sha3/tests/data/sha3_384/test156.output.bin @@ -0,0 +1 @@ +i{U=;Uѕ}&wV#fZo)a=v4Fw˅EF \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test157.input.bin b/sha3/tests/data/sha3_384/test157.input.bin new file mode 100644 index 00000000..5a689a41 Binary files /dev/null and b/sha3/tests/data/sha3_384/test157.input.bin differ diff --git a/sha3/tests/data/sha3_384/test157.output.bin b/sha3/tests/data/sha3_384/test157.output.bin new file mode 100644 index 00000000..4532a361 --- /dev/null +++ b/sha3/tests/data/sha3_384/test157.output.bin @@ -0,0 +1 @@ +ȃ@bi\{i/MȂ$c\3JٖĆV&><D soqN& \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test158.input.bin b/sha3/tests/data/sha3_384/test158.input.bin new file mode 100644 index 00000000..37bfee39 Binary files /dev/null and b/sha3/tests/data/sha3_384/test158.input.bin differ diff --git a/sha3/tests/data/sha3_384/test158.output.bin b/sha3/tests/data/sha3_384/test158.output.bin new file mode 100644 index 00000000..b66e8d1d Binary files /dev/null and b/sha3/tests/data/sha3_384/test158.output.bin differ diff --git a/sha3/tests/data/sha3_384/test159.input.bin b/sha3/tests/data/sha3_384/test159.input.bin new file mode 100644 index 00000000..e6f39601 Binary files /dev/null and b/sha3/tests/data/sha3_384/test159.input.bin differ diff --git a/sha3/tests/data/sha3_384/test159.output.bin b/sha3/tests/data/sha3_384/test159.output.bin new file mode 100644 index 00000000..9aff43ee --- /dev/null +++ b/sha3/tests/data/sha3_384/test159.output.bin @@ -0,0 +1 @@ +jۛf22xuó Xdcq - B@5sU \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test16.input.bin b/sha3/tests/data/sha3_384/test16.input.bin new file mode 100644 index 00000000..0922640e --- /dev/null +++ b/sha3/tests/data/sha3_384/test16.input.bin @@ -0,0 +1 @@ +R!݊DW~x!v \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test16.output.bin b/sha3/tests/data/sha3_384/test16.output.bin new file mode 100644 index 00000000..99e54409 --- /dev/null +++ b/sha3/tests/data/sha3_384/test16.output.bin @@ -0,0 +1 @@ +.2QR$|bdD8wŎTb㞑z㄃~y0kw \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test160.input.bin b/sha3/tests/data/sha3_384/test160.input.bin new file mode 100644 index 00000000..5c9ab0c5 --- /dev/null +++ b/sha3/tests/data/sha3_384/test160.input.bin @@ -0,0 +1,3 @@ +!*|3=.7x?< sٙcʓb;&NHL:[o?0)Vv_Wv~Vu3nPȡ1 +݌A|lj_:)SU[ +7E=Dzt;g1O$ğJpak8_ѻI78S0U=ZU̻=pO)+FQU|̀aMw!kHdY'A:, GzoTQ)*F L \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test161.output.bin b/sha3/tests/data/sha3_384/test161.output.bin new file mode 100644 index 00000000..e7d60ca8 --- /dev/null +++ b/sha3/tests/data/sha3_384/test161.output.bin @@ -0,0 +1 @@ + K_ A`״· u;AӲRge>600 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test162.input.bin b/sha3/tests/data/sha3_384/test162.input.bin new file mode 100644 index 00000000..b7d86900 Binary files /dev/null and b/sha3/tests/data/sha3_384/test162.input.bin differ diff --git a/sha3/tests/data/sha3_384/test162.output.bin b/sha3/tests/data/sha3_384/test162.output.bin new file mode 100644 index 00000000..734af4b0 --- /dev/null +++ b/sha3/tests/data/sha3_384/test162.output.bin @@ -0,0 +1 @@ +>?5@˾<o~ZC{&so(S*ntv)ĪbVSsӋ( \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test163.input.bin b/sha3/tests/data/sha3_384/test163.input.bin new file mode 100644 index 00000000..6a3e8166 Binary files /dev/null and b/sha3/tests/data/sha3_384/test163.input.bin differ diff --git a/sha3/tests/data/sha3_384/test163.output.bin b/sha3/tests/data/sha3_384/test163.output.bin new file mode 100644 index 00000000..2ad73645 --- /dev/null +++ b/sha3/tests/data/sha3_384/test163.output.bin @@ -0,0 +1,2 @@ +|F kZ1Gg٩)1D<]78 +gT.EW# D \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test164.input.bin b/sha3/tests/data/sha3_384/test164.input.bin new file mode 100644 index 00000000..42ab3064 Binary files /dev/null and b/sha3/tests/data/sha3_384/test164.input.bin differ diff --git a/sha3/tests/data/sha3_384/test164.output.bin b/sha3/tests/data/sha3_384/test164.output.bin new file mode 100644 index 00000000..93002dfb Binary files /dev/null and b/sha3/tests/data/sha3_384/test164.output.bin differ diff --git a/sha3/tests/data/sha3_384/test165.input.bin b/sha3/tests/data/sha3_384/test165.input.bin new file mode 100644 index 00000000..8b4dcb7b --- /dev/null +++ b/sha3/tests/data/sha3_384/test165.input.bin @@ -0,0 +1 @@ +υbؘ}گ=FEn#&͵?h]Yn:ae50MjK^+z`vq2-[ܻ-dIm̒Z#O$ XQQa^`_i=UJϮiH )u@׈5M1b@௓ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test165.output.bin b/sha3/tests/data/sha3_384/test165.output.bin new file mode 100644 index 00000000..8192a99d Binary files /dev/null and b/sha3/tests/data/sha3_384/test165.output.bin differ diff --git a/sha3/tests/data/sha3_384/test166.input.bin b/sha3/tests/data/sha3_384/test166.input.bin new file mode 100644 index 00000000..83e7dec4 --- /dev/null +++ b/sha3/tests/data/sha3_384/test166.input.bin @@ -0,0 +1 @@ +*1&yD^Y]5Ln`_܄pB?033Ĥ2gʮOGF ~0a 'Fc>)[jL#dU{. #qRC]d*Ņ?h6y&z,~eo-;l4U| ظNgu \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test166.output.bin b/sha3/tests/data/sha3_384/test166.output.bin new file mode 100644 index 00000000..c9626130 --- /dev/null +++ b/sha3/tests/data/sha3_384/test166.output.bin @@ -0,0 +1 @@ +3R OWFcUNWU:X(Z-Ӊ6FTc \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test167.input.bin b/sha3/tests/data/sha3_384/test167.input.bin new file mode 100644 index 00000000..82f2df44 Binary files /dev/null and b/sha3/tests/data/sha3_384/test167.input.bin differ diff --git a/sha3/tests/data/sha3_384/test167.output.bin b/sha3/tests/data/sha3_384/test167.output.bin new file mode 100644 index 00000000..76fe0dd2 --- /dev/null +++ b/sha3/tests/data/sha3_384/test167.output.bin @@ -0,0 +1 @@ +ˏrFQv{b&~i|e0泌xYK:Ōt \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test168.input.bin b/sha3/tests/data/sha3_384/test168.input.bin new file mode 100644 index 00000000..395db28a --- /dev/null +++ b/sha3/tests/data/sha3_384/test168.input.bin @@ -0,0 +1 @@ +#ks޷f+ڥ{5VEW5f);ZD P `qáJu:Iþi!(h_QdbVyBITCKퟬ}4.)6J gG8BT)}#ZqrBVA𤎄Eۥl \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test168.output.bin b/sha3/tests/data/sha3_384/test168.output.bin new file mode 100644 index 00000000..646fdce9 --- /dev/null +++ b/sha3/tests/data/sha3_384/test168.output.bin @@ -0,0 +1 @@ +wmp"Y+WSN/Wnt}VePEHͩs \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test169.input.bin b/sha3/tests/data/sha3_384/test169.input.bin new file mode 100644 index 00000000..8e7c6397 Binary files /dev/null and b/sha3/tests/data/sha3_384/test169.input.bin differ diff --git a/sha3/tests/data/sha3_384/test169.output.bin b/sha3/tests/data/sha3_384/test169.output.bin new file mode 100644 index 00000000..9f2fad1b --- /dev/null +++ b/sha3/tests/data/sha3_384/test169.output.bin @@ -0,0 +1 @@ +D!G[>fwtXg=]gVJ.es \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test17.input.bin b/sha3/tests/data/sha3_384/test17.input.bin new file mode 100644 index 00000000..1868db3a --- /dev/null +++ b/sha3/tests/data/sha3_384/test17.input.bin @@ -0,0 +1 @@ +=.R~ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test17.output.bin b/sha3/tests/data/sha3_384/test17.output.bin new file mode 100644 index 00000000..e1823fc2 --- /dev/null +++ b/sha3/tests/data/sha3_384/test17.output.bin @@ -0,0 +1 @@ +Sr|7@ƘiV rPcEa{L)~x>26&2 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test170.input.bin b/sha3/tests/data/sha3_384/test170.input.bin new file mode 100644 index 00000000..b2695ced Binary files /dev/null and b/sha3/tests/data/sha3_384/test170.input.bin differ diff --git a/sha3/tests/data/sha3_384/test170.output.bin b/sha3/tests/data/sha3_384/test170.output.bin new file mode 100644 index 00000000..aff679a4 --- /dev/null +++ b/sha3/tests/data/sha3_384/test170.output.bin @@ -0,0 +1 @@ +Q5YM s*א[b7n g'>&CChfGGк5 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test171.input.bin b/sha3/tests/data/sha3_384/test171.input.bin new file mode 100644 index 00000000..0bed356d Binary files /dev/null and b/sha3/tests/data/sha3_384/test171.input.bin differ diff --git a/sha3/tests/data/sha3_384/test171.output.bin b/sha3/tests/data/sha3_384/test171.output.bin new file mode 100644 index 00000000..c804e098 --- /dev/null +++ b/sha3/tests/data/sha3_384/test171.output.bin @@ -0,0 +1 @@ +>Ψ-T^nbB7PCMgxScW+/:Jsv1ģ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test172.input.bin b/sha3/tests/data/sha3_384/test172.input.bin new file mode 100644 index 00000000..2f94c433 Binary files /dev/null and b/sha3/tests/data/sha3_384/test172.input.bin differ diff --git a/sha3/tests/data/sha3_384/test172.output.bin b/sha3/tests/data/sha3_384/test172.output.bin new file mode 100644 index 00000000..9ed98de0 --- /dev/null +++ b/sha3/tests/data/sha3_384/test172.output.bin @@ -0,0 +1 @@ +oe*rQ3N7f|n^7pR*%f#iFr{ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test173.input.bin b/sha3/tests/data/sha3_384/test173.input.bin new file mode 100644 index 00000000..e7197248 --- /dev/null +++ b/sha3/tests/data/sha3_384/test173.input.bin @@ -0,0 +1 @@ + { 4k9˭Ig׭هow MH75p\$*CqoNmVk3dIف M۽7`T՝Ew8A?-oRzJU1PO ha$\KReT֪cH9) \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test173.output.bin b/sha3/tests/data/sha3_384/test173.output.bin new file mode 100644 index 00000000..2e730e96 --- /dev/null +++ b/sha3/tests/data/sha3_384/test173.output.bin @@ -0,0 +1 @@ +j sW6xu $QfOu" GȽ/<69~t8ZELG{ m^/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test181.output.bin b/sha3/tests/data/sha3_384/test181.output.bin new file mode 100644 index 00000000..19710719 --- /dev/null +++ b/sha3/tests/data/sha3_384/test181.output.bin @@ -0,0 +1 @@ +{ V'ҍiQ҈{@T{,gx|ǐ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test182.input.bin b/sha3/tests/data/sha3_384/test182.input.bin new file mode 100644 index 00000000..765853e5 Binary files /dev/null and b/sha3/tests/data/sha3_384/test182.input.bin differ diff --git a/sha3/tests/data/sha3_384/test182.output.bin b/sha3/tests/data/sha3_384/test182.output.bin new file mode 100644 index 00000000..dc4cec62 --- /dev/null +++ b/sha3/tests/data/sha3_384/test182.output.bin @@ -0,0 +1 @@ +w2ڶEPmS֝v`$ArNZe7 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test183.input.bin b/sha3/tests/data/sha3_384/test183.input.bin new file mode 100644 index 00000000..e67c2c3b Binary files /dev/null and b/sha3/tests/data/sha3_384/test183.input.bin differ diff --git a/sha3/tests/data/sha3_384/test183.output.bin b/sha3/tests/data/sha3_384/test183.output.bin new file mode 100644 index 00000000..11eddfe6 --- /dev/null +++ b/sha3/tests/data/sha3_384/test183.output.bin @@ -0,0 +1,2 @@ +;5U{Z]FpT84B +TYM/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test184.input.bin b/sha3/tests/data/sha3_384/test184.input.bin new file mode 100644 index 00000000..6b3f4c0a Binary files /dev/null and b/sha3/tests/data/sha3_384/test184.input.bin differ diff --git a/sha3/tests/data/sha3_384/test184.output.bin b/sha3/tests/data/sha3_384/test184.output.bin new file mode 100644 index 00000000..c1eb896d --- /dev/null +++ b/sha3/tests/data/sha3_384/test184.output.bin @@ -0,0 +1 @@ +7ICG&3r)2{A.aMOCn7 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test185.input.bin b/sha3/tests/data/sha3_384/test185.input.bin new file mode 100644 index 00000000..b0e30563 Binary files /dev/null and b/sha3/tests/data/sha3_384/test185.input.bin differ diff --git a/sha3/tests/data/sha3_384/test185.output.bin b/sha3/tests/data/sha3_384/test185.output.bin new file mode 100644 index 00000000..f58e612e --- /dev/null +++ b/sha3/tests/data/sha3_384/test185.output.bin @@ -0,0 +1 @@ +qTEZ 5\ , ;Fʲ7{v K?F \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test186.input.bin b/sha3/tests/data/sha3_384/test186.input.bin new file mode 100644 index 00000000..4b5bf01f --- /dev/null +++ b/sha3/tests/data/sha3_384/test186.input.bin @@ -0,0 +1 @@ +du ͘;e2,Eɸ;*Z"hXn'(WѢН _"ß^nJLmH?9s~<8f\&<tYcƻ=4[hG}cW U6KUq0~г7Nn: \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test186.output.bin b/sha3/tests/data/sha3_384/test186.output.bin new file mode 100644 index 00000000..5f723e0d Binary files /dev/null and b/sha3/tests/data/sha3_384/test186.output.bin differ diff --git a/sha3/tests/data/sha3_384/test187.input.bin b/sha3/tests/data/sha3_384/test187.input.bin new file mode 100644 index 00000000..05e7d072 --- /dev/null +++ b/sha3/tests/data/sha3_384/test187.input.bin @@ -0,0 +1,3 @@ +hus/rZhŪ1I>vR]=3ν!&jo~ Wy +oXye$fwS9r]2dRA_2xWj*X|)SրE6@~=\@Oo%"ȶ3 W $uk hTMQ +x^: \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test187.output.bin b/sha3/tests/data/sha3_384/test187.output.bin new file mode 100644 index 00000000..256a32cd --- /dev/null +++ b/sha3/tests/data/sha3_384/test187.output.bin @@ -0,0 +1 @@ +lB|P4 O~1ǢkAmxCH\6' \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test188.input.bin b/sha3/tests/data/sha3_384/test188.input.bin new file mode 100644 index 00000000..2fb1cb98 Binary files /dev/null and b/sha3/tests/data/sha3_384/test188.input.bin differ diff --git a/sha3/tests/data/sha3_384/test188.output.bin b/sha3/tests/data/sha3_384/test188.output.bin new file mode 100644 index 00000000..7ecca820 --- /dev/null +++ b/sha3/tests/data/sha3_384/test188.output.bin @@ -0,0 +1,2 @@ +rPZJB"˷#tm +?9Mn)ylXf/XL \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test189.input.bin b/sha3/tests/data/sha3_384/test189.input.bin new file mode 100644 index 00000000..9b570e95 --- /dev/null +++ b/sha3/tests/data/sha3_384/test189.input.bin @@ -0,0 +1 @@ +SJ$qKԾ7Ȋ=.|T ׽g Z5YDc)1쪟g]5&i^؝ӌ,vΞYt2顾,qFAiъz!Ȱq^,T e!m>T1w|S086 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test195.input.bin b/sha3/tests/data/sha3_384/test195.input.bin new file mode 100644 index 00000000..0c60e8fd Binary files /dev/null and b/sha3/tests/data/sha3_384/test195.input.bin differ diff --git a/sha3/tests/data/sha3_384/test195.output.bin b/sha3/tests/data/sha3_384/test195.output.bin new file mode 100644 index 00000000..fc4cd68c --- /dev/null +++ b/sha3/tests/data/sha3_384/test195.output.bin @@ -0,0 +1,2 @@ +HYfzw|wAq0$w<ċ3|i +Ԟy:S \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test196.input.bin b/sha3/tests/data/sha3_384/test196.input.bin new file mode 100644 index 00000000..be15921f --- /dev/null +++ b/sha3/tests/data/sha3_384/test196.input.bin @@ -0,0 +1 @@ +RQ2c[9:kzs!pߩF&i˻߀0rG+7KտyXb:>9樲)|Qx5a$q^ c7Syxv"F4oU4r^s|{jmGtrF}{+#P|Q},J \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test196.output.bin b/sha3/tests/data/sha3_384/test196.output.bin new file mode 100644 index 00000000..58b6ceee --- /dev/null +++ b/sha3/tests/data/sha3_384/test196.output.bin @@ -0,0 +1 @@ +K8ImEnALu-( =>s!Y9e͎ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test197.input.bin b/sha3/tests/data/sha3_384/test197.input.bin new file mode 100644 index 00000000..fd28078b --- /dev/null +++ b/sha3/tests/data/sha3_384/test197.input.bin @@ -0,0 +1,2 @@ +שC:;Jz:^4WmmS -1p a(3OCס՜~kdoj5(YϹF +wR*\֬nabf~ S!eU͏4ݛqoG k"P<&Uwa*؋jg(hg!stY){2;ηa":Up^Drܪ7# 5\b \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test197.output.bin b/sha3/tests/data/sha3_384/test197.output.bin new file mode 100644 index 00000000..324e822e --- /dev/null +++ b/sha3/tests/data/sha3_384/test197.output.bin @@ -0,0 +1 @@ + ){1_[J얦{[XSg \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test198.input.bin b/sha3/tests/data/sha3_384/test198.input.bin new file mode 100644 index 00000000..6044629d --- /dev/null +++ b/sha3/tests/data/sha3_384/test198.input.bin @@ -0,0 +1 @@ +p 'zrw|NC&hЙebVs6hzfyݝz3A:\"[!{_G2~9&-@C0;{^*ݦHYK X㐑汈)J$^a`Xv9u;%t6f#eA_6mTgCöW.@a&AI:ڐ# \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test198.output.bin b/sha3/tests/data/sha3_384/test198.output.bin new file mode 100644 index 00000000..f97cf1fd --- /dev/null +++ b/sha3/tests/data/sha3_384/test198.output.bin @@ -0,0 +1 @@ +uux܋tx,𦵷"NSͳ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test199.input.bin b/sha3/tests/data/sha3_384/test199.input.bin new file mode 100644 index 00000000..25202dc5 Binary files /dev/null and b/sha3/tests/data/sha3_384/test199.input.bin differ diff --git a/sha3/tests/data/sha3_384/test199.output.bin b/sha3/tests/data/sha3_384/test199.output.bin new file mode 100644 index 00000000..c906b9be --- /dev/null +++ b/sha3/tests/data/sha3_384/test199.output.bin @@ -0,0 +1 @@ +)>kBAXWAýS~J1{Uʴ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test2.input.bin b/sha3/tests/data/sha3_384/test2.input.bin new file mode 100644 index 00000000..6037df8c --- /dev/null +++ b/sha3/tests/data/sha3_384/test2.input.bin @@ -0,0 +1 @@ +A \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test2.output.bin b/sha3/tests/data/sha3_384/test2.output.bin new file mode 100644 index 00000000..0f218d09 --- /dev/null +++ b/sha3/tests/data/sha3_384/test2.output.bin @@ -0,0 +1,2 @@ + z]J k 9 e +W}7߆vL. \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test20.input.bin b/sha3/tests/data/sha3_384/test20.input.bin new file mode 100644 index 00000000..bd6291ce --- /dev/null +++ b/sha3/tests/data/sha3_384/test20.input.bin @@ -0,0 +1 @@ +aVU@gGQ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test20.output.bin b/sha3/tests/data/sha3_384/test20.output.bin new file mode 100644 index 00000000..e5f467d5 --- /dev/null +++ b/sha3/tests/data/sha3_384/test20.output.bin @@ -0,0 +1 @@ +Qnu,VE?1l}z;yA; X-/qK \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test200.input.bin b/sha3/tests/data/sha3_384/test200.input.bin new file mode 100644 index 00000000..19cd3f69 Binary files /dev/null and b/sha3/tests/data/sha3_384/test200.input.bin differ diff --git a/sha3/tests/data/sha3_384/test200.output.bin b/sha3/tests/data/sha3_384/test200.output.bin new file mode 100644 index 00000000..864e6fd3 --- /dev/null +++ b/sha3/tests/data/sha3_384/test200.output.bin @@ -0,0 +1,2 @@ +']U `סmW7JC\'lDpٹ + \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test201.input.bin b/sha3/tests/data/sha3_384/test201.input.bin new file mode 100644 index 00000000..61915861 Binary files /dev/null and b/sha3/tests/data/sha3_384/test201.input.bin differ diff --git a/sha3/tests/data/sha3_384/test201.output.bin b/sha3/tests/data/sha3_384/test201.output.bin new file mode 100644 index 00000000..5c71e28e --- /dev/null +++ b/sha3/tests/data/sha3_384/test201.output.bin @@ -0,0 +1 @@ +Jɽq}YEv'ӯ|# l r8Nf8}Mv \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test202.input.bin b/sha3/tests/data/sha3_384/test202.input.bin new file mode 100644 index 00000000..741c4d41 Binary files /dev/null and b/sha3/tests/data/sha3_384/test202.input.bin differ diff --git a/sha3/tests/data/sha3_384/test202.output.bin b/sha3/tests/data/sha3_384/test202.output.bin new file mode 100644 index 00000000..a8af4f26 --- /dev/null +++ b/sha3/tests/data/sha3_384/test202.output.bin @@ -0,0 +1 @@ +?>L4C۶mPC ]}l|C~H^hE \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test203.input.bin b/sha3/tests/data/sha3_384/test203.input.bin new file mode 100644 index 00000000..5a6287f2 Binary files /dev/null and b/sha3/tests/data/sha3_384/test203.input.bin differ diff --git a/sha3/tests/data/sha3_384/test203.output.bin b/sha3/tests/data/sha3_384/test203.output.bin new file mode 100644 index 00000000..61b7ccb9 --- /dev/null +++ b/sha3/tests/data/sha3_384/test203.output.bin @@ -0,0 +1 @@ +w~Ih"rUg*&!]x'U~^%X A \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test204.input.bin b/sha3/tests/data/sha3_384/test204.input.bin new file mode 100644 index 00000000..77288138 Binary files /dev/null and b/sha3/tests/data/sha3_384/test204.input.bin differ diff --git a/sha3/tests/data/sha3_384/test204.output.bin b/sha3/tests/data/sha3_384/test204.output.bin new file mode 100644 index 00000000..75002506 --- /dev/null +++ b/sha3/tests/data/sha3_384/test204.output.bin @@ -0,0 +1,2 @@ +, Jg +YWQLND~ v3 lDXxSJ{ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test205.input.bin b/sha3/tests/data/sha3_384/test205.input.bin new file mode 100644 index 00000000..4bff8354 Binary files /dev/null and b/sha3/tests/data/sha3_384/test205.input.bin differ diff --git a/sha3/tests/data/sha3_384/test205.output.bin b/sha3/tests/data/sha3_384/test205.output.bin new file mode 100644 index 00000000..c3d6b633 --- /dev/null +++ b/sha3/tests/data/sha3_384/test205.output.bin @@ -0,0 +1,2 @@ +-Wr<~}@0Z,~?Y_[ +x<67m+ wi \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test206.input.bin b/sha3/tests/data/sha3_384/test206.input.bin new file mode 100644 index 00000000..167543c1 --- /dev/null +++ b/sha3/tests/data/sha3_384/test206.input.bin @@ -0,0 +1,2 @@ +O>J\_+ңE4sn;  ޯRֺ1l3R7QⳜJIW~*?Zhh03⽫s&ֽ%FX +SvЗ禦>X`(Żչ27NB)η(x"ZbS#fJ4G YU?u) CU>ot"K \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test206.output.bin b/sha3/tests/data/sha3_384/test206.output.bin new file mode 100644 index 00000000..94b5d37e --- /dev/null +++ b/sha3/tests/data/sha3_384/test206.output.bin @@ -0,0 +1 @@ +qUϋyaaɯŭH ՛#@tG(Q'\- \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test207.input.bin b/sha3/tests/data/sha3_384/test207.input.bin new file mode 100644 index 00000000..c47ee536 --- /dev/null +++ b/sha3/tests/data/sha3_384/test207.input.bin @@ -0,0 +1,2 @@ +-s031(8<ʗNh@ Rk?JōГZ0Ė"ar.EWB C}t?+57]̞ߴ8Bᐤ<1c~W~`lM{c + :GkwxEM`lg)voLO'ޟ,;U~wl `2(8 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test207.output.bin b/sha3/tests/data/sha3_384/test207.output.bin new file mode 100644 index 00000000..ef62c63f --- /dev/null +++ b/sha3/tests/data/sha3_384/test207.output.bin @@ -0,0 +1 @@ +QQ;G$؝Mơn3BmPL|C]Ie \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test208.input.bin b/sha3/tests/data/sha3_384/test208.input.bin new file mode 100644 index 00000000..8be3f738 --- /dev/null +++ b/sha3/tests/data/sha3_384/test208.input.bin @@ -0,0 +1,2 @@ +Ua=0y.& 7BJmI(׭7MT#n_7oKܹu;9f2BEJwu>pX%; vτ3:Y҇̒#Nz'A& jX.dž1#'솅 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test208.output.bin b/sha3/tests/data/sha3_384/test208.output.bin new file mode 100644 index 00000000..7a58af30 --- /dev/null +++ b/sha3/tests/data/sha3_384/test208.output.bin @@ -0,0 +1,2 @@ +!V' +_\^!-$?2wme< \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test209.input.bin b/sha3/tests/data/sha3_384/test209.input.bin new file mode 100644 index 00000000..12d7f2d6 --- /dev/null +++ b/sha3/tests/data/sha3_384/test209.input.bin @@ -0,0 +1 @@ +Dw≛rVUMlAG{уJ@)}^ۜm]DC`OR(ldpzjpC6s%&ST]ZܒynXՙ2$. ׭mr v#|N!+nyI͐3:wN*||2 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test209.output.bin b/sha3/tests/data/sha3_384/test209.output.bin new file mode 100644 index 00000000..77347a9e --- /dev/null +++ b/sha3/tests/data/sha3_384/test209.output.bin @@ -0,0 +1 @@ +Yw)L'a@]K;=M-Vӂ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test21.input.bin b/sha3/tests/data/sha3_384/test21.input.bin new file mode 100644 index 00000000..7a679902 --- /dev/null +++ b/sha3/tests/data/sha3_384/test21.input.bin @@ -0,0 +1 @@ +܏NLxD{;T6* \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test21.output.bin b/sha3/tests/data/sha3_384/test21.output.bin new file mode 100644 index 00000000..da35c077 --- /dev/null +++ b/sha3/tests/data/sha3_384/test21.output.bin @@ -0,0 +1 @@ +ħ~L@fIݓΧuTj),L*v}|9jN$lgփgW68j'kQuLGH+r೔io֎^=YŬ@ó~6$JY͝(yox[';Dd5 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test212.output.bin b/sha3/tests/data/sha3_384/test212.output.bin new file mode 100644 index 00000000..563175f5 --- /dev/null +++ b/sha3/tests/data/sha3_384/test212.output.bin @@ -0,0 +1 @@ +$^3 1Ӥ!&'uM=+W9C+E@ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test213.input.bin b/sha3/tests/data/sha3_384/test213.input.bin new file mode 100644 index 00000000..17d29a30 Binary files /dev/null and b/sha3/tests/data/sha3_384/test213.input.bin differ diff --git a/sha3/tests/data/sha3_384/test213.output.bin b/sha3/tests/data/sha3_384/test213.output.bin new file mode 100644 index 00000000..71f0a4ce --- /dev/null +++ b/sha3/tests/data/sha3_384/test213.output.bin @@ -0,0 +1 @@ +ɃEr^ ^g󽰺D~9P7ԅ0) \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test214.input.bin b/sha3/tests/data/sha3_384/test214.input.bin new file mode 100644 index 00000000..d082a217 Binary files /dev/null and b/sha3/tests/data/sha3_384/test214.input.bin differ diff --git a/sha3/tests/data/sha3_384/test214.output.bin b/sha3/tests/data/sha3_384/test214.output.bin new file mode 100644 index 00000000..6cf067a3 --- /dev/null +++ b/sha3/tests/data/sha3_384/test214.output.bin @@ -0,0 +1 @@ +>~MKPBPݍGfӿA[a}@փ' \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test215.input.bin b/sha3/tests/data/sha3_384/test215.input.bin new file mode 100644 index 00000000..9b654101 --- /dev/null +++ b/sha3/tests/data/sha3_384/test215.input.bin @@ -0,0 +1,3 @@ +zjOOY#8It%.Y0bn{ى~ fDb5-Sנ/p7%Vq '™ʧߥ5R:51f^wlkFێ,ݝϺ২Uq-F=="90C;"F0A +3:R91\Fx[ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test217.output.bin b/sha3/tests/data/sha3_384/test217.output.bin new file mode 100644 index 00000000..7e15ce0e --- /dev/null +++ b/sha3/tests/data/sha3_384/test217.output.bin @@ -0,0 +1,2 @@ +l +F+$!ț޹ٌ.dhŕkR \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test218.input.bin b/sha3/tests/data/sha3_384/test218.input.bin new file mode 100644 index 00000000..ca1f68da Binary files /dev/null and b/sha3/tests/data/sha3_384/test218.input.bin differ diff --git a/sha3/tests/data/sha3_384/test218.output.bin b/sha3/tests/data/sha3_384/test218.output.bin new file mode 100644 index 00000000..3c15b4cb --- /dev/null +++ b/sha3/tests/data/sha3_384/test218.output.bin @@ -0,0 +1 @@ +>P v(t $ NGaw`T \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test219.input.bin b/sha3/tests/data/sha3_384/test219.input.bin new file mode 100644 index 00000000..dc3eba08 --- /dev/null +++ b/sha3/tests/data/sha3_384/test219.input.bin @@ -0,0 +1,4 @@ +vF8;NQ 20iPҗ +HVy +s9;(,jtg 8əpMbpO'Ͱe_PІWSp 8q/>m߳]shE9'K"</ʼ !f׉9qKxD%"}*=vQ^| +FA5eN|<7[SMd A|/cs \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test219.output.bin b/sha3/tests/data/sha3_384/test219.output.bin new file mode 100644 index 00000000..a0501e48 Binary files /dev/null and b/sha3/tests/data/sha3_384/test219.output.bin differ diff --git a/sha3/tests/data/sha3_384/test22.input.bin b/sha3/tests/data/sha3_384/test22.input.bin new file mode 100644 index 00000000..fcc84d2d --- /dev/null +++ b/sha3/tests/data/sha3_384/test22.input.bin @@ -0,0 +1 @@ +W_B-3xm_- \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test22.output.bin b/sha3/tests/data/sha3_384/test22.output.bin new file mode 100644 index 00000000..ac9c2496 --- /dev/null +++ b/sha3/tests/data/sha3_384/test22.output.bin @@ -0,0 +1 @@ +Q]z5Tbٯ'9*hYJ\MjC %mNt* \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test220.input.bin b/sha3/tests/data/sha3_384/test220.input.bin new file mode 100644 index 00000000..d518e526 Binary files /dev/null and b/sha3/tests/data/sha3_384/test220.input.bin differ diff --git a/sha3/tests/data/sha3_384/test220.output.bin b/sha3/tests/data/sha3_384/test220.output.bin new file mode 100644 index 00000000..54b92c2a Binary files /dev/null and b/sha3/tests/data/sha3_384/test220.output.bin differ diff --git a/sha3/tests/data/sha3_384/test221.input.bin b/sha3/tests/data/sha3_384/test221.input.bin new file mode 100644 index 00000000..5bd09da0 Binary files /dev/null and b/sha3/tests/data/sha3_384/test221.input.bin differ diff --git a/sha3/tests/data/sha3_384/test221.output.bin b/sha3/tests/data/sha3_384/test221.output.bin new file mode 100644 index 00000000..e2898b70 --- /dev/null +++ b/sha3/tests/data/sha3_384/test221.output.bin @@ -0,0 +1 @@ +]Oo-v1ɡ C{12zD_fc \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test222.input.bin b/sha3/tests/data/sha3_384/test222.input.bin new file mode 100644 index 00000000..61d516ba Binary files /dev/null and b/sha3/tests/data/sha3_384/test222.input.bin differ diff --git a/sha3/tests/data/sha3_384/test222.output.bin b/sha3/tests/data/sha3_384/test222.output.bin new file mode 100644 index 00000000..1d83e56c --- /dev/null +++ b/sha3/tests/data/sha3_384/test222.output.bin @@ -0,0 +1 @@ +$JID=OnHtF{ɞ3ZЗA}kxSy%9- \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test223.input.bin b/sha3/tests/data/sha3_384/test223.input.bin new file mode 100644 index 00000000..ea14dca4 Binary files /dev/null and b/sha3/tests/data/sha3_384/test223.input.bin differ diff --git a/sha3/tests/data/sha3_384/test223.output.bin b/sha3/tests/data/sha3_384/test223.output.bin new file mode 100644 index 00000000..70afdc02 Binary files /dev/null and b/sha3/tests/data/sha3_384/test223.output.bin differ diff --git a/sha3/tests/data/sha3_384/test224.input.bin b/sha3/tests/data/sha3_384/test224.input.bin new file mode 100644 index 00000000..39f24030 Binary files /dev/null and b/sha3/tests/data/sha3_384/test224.input.bin differ diff --git a/sha3/tests/data/sha3_384/test224.output.bin b/sha3/tests/data/sha3_384/test224.output.bin new file mode 100644 index 00000000..96b432f4 --- /dev/null +++ b/sha3/tests/data/sha3_384/test224.output.bin @@ -0,0 +1 @@ +<u?nFl32$XCv6nU!gɦ-@^X뮑 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test225.input.bin b/sha3/tests/data/sha3_384/test225.input.bin new file mode 100644 index 00000000..a694388a --- /dev/null +++ b/sha3/tests/data/sha3_384/test225.input.bin @@ -0,0 +1 @@ +gSm68؈̫4+zen=oBLfAqeÏǒhεf]6!TӺX13t6stdrƮzn' \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test225.output.bin b/sha3/tests/data/sha3_384/test225.output.bin new file mode 100644 index 00000000..b56c18da --- /dev/null +++ b/sha3/tests/data/sha3_384/test225.output.bin @@ -0,0 +1,2 @@ +(q%3R~RnnM>nȊ +e/B2gTmL \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test226.input.bin b/sha3/tests/data/sha3_384/test226.input.bin new file mode 100644 index 00000000..a4b4f480 --- /dev/null +++ b/sha3/tests/data/sha3_384/test226.input.bin @@ -0,0 +1 @@ +9?]MH]7QJX6)!z8#5Rs!R*X5a& }:AvvJ"ԕzT]RDul %̏L6/ 68Oz[)?kܒV^6v=Ҡj>=DvyK=&+yV>APd%n4^QU܊!Jxj-P~35d' \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test226.output.bin b/sha3/tests/data/sha3_384/test226.output.bin new file mode 100644 index 00000000..b72c2e69 --- /dev/null +++ b/sha3/tests/data/sha3_384/test226.output.bin @@ -0,0 +1 @@ +%Mf;&;:}'|Q!o%G(X@~Ty 8^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test227.input.bin b/sha3/tests/data/sha3_384/test227.input.bin new file mode 100644 index 00000000..9cb3e056 Binary files /dev/null and b/sha3/tests/data/sha3_384/test227.input.bin differ diff --git a/sha3/tests/data/sha3_384/test227.output.bin b/sha3/tests/data/sha3_384/test227.output.bin new file mode 100644 index 00000000..5faa2673 --- /dev/null +++ b/sha3/tests/data/sha3_384/test227.output.bin @@ -0,0 +1 @@ +9H*:^y{~X}=\#CPR7p){ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test228.input.bin b/sha3/tests/data/sha3_384/test228.input.bin new file mode 100644 index 00000000..6dda249b Binary files /dev/null and b/sha3/tests/data/sha3_384/test228.input.bin differ diff --git a/sha3/tests/data/sha3_384/test228.output.bin b/sha3/tests/data/sha3_384/test228.output.bin new file mode 100644 index 00000000..9919aa5b --- /dev/null +++ b/sha3/tests/data/sha3_384/test228.output.bin @@ -0,0 +1 @@ +W.@]@w%zc4I@5G-ف%y2r)NNf \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test229.input.bin b/sha3/tests/data/sha3_384/test229.input.bin new file mode 100644 index 00000000..c2b4e2b7 --- /dev/null +++ b/sha3/tests/data/sha3_384/test229.input.bin @@ -0,0 +1 @@ +8u$ ਵe@jpIn,!txoҔ֧TS5(M_@*ܒ871yoJ܁oDkx[ yhAxF9jZag:17"* \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test232.input.bin b/sha3/tests/data/sha3_384/test232.input.bin new file mode 100644 index 00000000..263e6e48 --- /dev/null +++ b/sha3/tests/data/sha3_384/test232.input.bin @@ -0,0 +1,2 @@ +m"y3-=6OW? k] =;_ +b+xő3HQSY.o \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test232.output.bin b/sha3/tests/data/sha3_384/test232.output.bin new file mode 100644 index 00000000..b3affff9 --- /dev/null +++ b/sha3/tests/data/sha3_384/test232.output.bin @@ -0,0 +1 @@ +}&\kz!d-UmS4nȄH JM \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test233.input.bin b/sha3/tests/data/sha3_384/test233.input.bin new file mode 100644 index 00000000..6e7c2d03 Binary files /dev/null and b/sha3/tests/data/sha3_384/test233.input.bin differ diff --git a/sha3/tests/data/sha3_384/test233.output.bin b/sha3/tests/data/sha3_384/test233.output.bin new file mode 100644 index 00000000..613180f4 --- /dev/null +++ b/sha3/tests/data/sha3_384/test233.output.bin @@ -0,0 +1,2 @@ +J1{sɱhw7=A +]O g̪$O :G \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test234.input.bin b/sha3/tests/data/sha3_384/test234.input.bin new file mode 100644 index 00000000..a4bf95bb Binary files /dev/null and b/sha3/tests/data/sha3_384/test234.input.bin differ diff --git a/sha3/tests/data/sha3_384/test234.output.bin b/sha3/tests/data/sha3_384/test234.output.bin new file mode 100644 index 00000000..ef12f104 --- /dev/null +++ b/sha3/tests/data/sha3_384/test234.output.bin @@ -0,0 +1 @@ +3kL+Sel&y 4̣g1_߿}ͤ"㟓08 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test235.input.bin b/sha3/tests/data/sha3_384/test235.input.bin new file mode 100644 index 00000000..adc0f660 Binary files /dev/null and b/sha3/tests/data/sha3_384/test235.input.bin differ diff --git a/sha3/tests/data/sha3_384/test235.output.bin b/sha3/tests/data/sha3_384/test235.output.bin new file mode 100644 index 00000000..286c180d --- /dev/null +++ b/sha3/tests/data/sha3_384/test235.output.bin @@ -0,0 +1 @@ +B"ē]B‘@CxEVӍ v~Bv(-4j \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test236.input.bin b/sha3/tests/data/sha3_384/test236.input.bin new file mode 100644 index 00000000..39e5194b Binary files /dev/null and b/sha3/tests/data/sha3_384/test236.input.bin differ diff --git a/sha3/tests/data/sha3_384/test236.output.bin b/sha3/tests/data/sha3_384/test236.output.bin new file mode 100644 index 00000000..2238afcd --- /dev/null +++ b/sha3/tests/data/sha3_384/test236.output.bin @@ -0,0 +1 @@ +`tՓRp/)薻 H4)Y]o[Xxj%ufK \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test237.input.bin b/sha3/tests/data/sha3_384/test237.input.bin new file mode 100644 index 00000000..3a765047 Binary files /dev/null and b/sha3/tests/data/sha3_384/test237.input.bin differ diff --git a/sha3/tests/data/sha3_384/test237.output.bin b/sha3/tests/data/sha3_384/test237.output.bin new file mode 100644 index 00000000..7f59ed78 --- /dev/null +++ b/sha3/tests/data/sha3_384/test237.output.bin @@ -0,0 +1 @@ +nF<CkDvNz#Ij~x=y~2MV3 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test238.input.bin b/sha3/tests/data/sha3_384/test238.input.bin new file mode 100644 index 00000000..78398edd Binary files /dev/null and b/sha3/tests/data/sha3_384/test238.input.bin differ diff --git a/sha3/tests/data/sha3_384/test238.output.bin b/sha3/tests/data/sha3_384/test238.output.bin new file mode 100644 index 00000000..c201deb4 Binary files /dev/null and b/sha3/tests/data/sha3_384/test238.output.bin differ diff --git a/sha3/tests/data/sha3_384/test239.input.bin b/sha3/tests/data/sha3_384/test239.input.bin new file mode 100644 index 00000000..4344db77 Binary files /dev/null and b/sha3/tests/data/sha3_384/test239.input.bin differ diff --git a/sha3/tests/data/sha3_384/test239.output.bin b/sha3/tests/data/sha3_384/test239.output.bin new file mode 100644 index 00000000..d54d3060 Binary files /dev/null and b/sha3/tests/data/sha3_384/test239.output.bin differ diff --git a/sha3/tests/data/sha3_384/test24.input.bin b/sha3/tests/data/sha3_384/test24.input.bin new file mode 100644 index 00000000..792f0571 --- /dev/null +++ b/sha3/tests/data/sha3_384/test24.input.bin @@ -0,0 +1 @@ +˰'YC=oA; (%C]Cg';Ŋ0DгgB5&z@+;>;\%Fnz`7"+Li15Z-9{V5H:?fex8iAͳREH)NPc%-G@Z)-к! ;4ӝ0^\V7{u +7&KVo@wE_V$1z- \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test240.output.bin b/sha3/tests/data/sha3_384/test240.output.bin new file mode 100644 index 00000000..152dd756 --- /dev/null +++ b/sha3/tests/data/sha3_384/test240.output.bin @@ -0,0 +1 @@ +ڦe)Ec׽MF/R'2+>o \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test241.input.bin b/sha3/tests/data/sha3_384/test241.input.bin new file mode 100644 index 00000000..9f83b1c0 --- /dev/null +++ b/sha3/tests/data/sha3_384/test241.input.bin @@ -0,0 +1,2 @@ +arnNap]_왿iKgK}׀a^P-k?CHr{} 0)'.JYhbea p̍niŀ6! cZ$=ŇGXT@ѰLd[}" +b:V8ٚ,@o2R+7^l׀(ӈE EAuSVik?9z )69;\YנKzïh y1Nu} \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test241.output.bin b/sha3/tests/data/sha3_384/test241.output.bin new file mode 100644 index 00000000..552b3672 --- /dev/null +++ b/sha3/tests/data/sha3_384/test241.output.bin @@ -0,0 +1 @@ +cx {co*CY˾vf}U5Kqz I1mqO \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test242.input.bin b/sha3/tests/data/sha3_384/test242.input.bin new file mode 100644 index 00000000..aa906dac Binary files /dev/null and b/sha3/tests/data/sha3_384/test242.input.bin differ diff --git a/sha3/tests/data/sha3_384/test242.output.bin b/sha3/tests/data/sha3_384/test242.output.bin new file mode 100644 index 00000000..6b883194 --- /dev/null +++ b/sha3/tests/data/sha3_384/test242.output.bin @@ -0,0 +1,2 @@ ++TqXR9T +7tyPGn"].C2Um4A\} \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test243.input.bin b/sha3/tests/data/sha3_384/test243.input.bin new file mode 100644 index 00000000..d2160ac1 Binary files /dev/null and b/sha3/tests/data/sha3_384/test243.input.bin differ diff --git a/sha3/tests/data/sha3_384/test243.output.bin b/sha3/tests/data/sha3_384/test243.output.bin new file mode 100644 index 00000000..d26e2117 Binary files /dev/null and b/sha3/tests/data/sha3_384/test243.output.bin differ diff --git a/sha3/tests/data/sha3_384/test244.input.bin b/sha3/tests/data/sha3_384/test244.input.bin new file mode 100644 index 00000000..7e958206 Binary files /dev/null and b/sha3/tests/data/sha3_384/test244.input.bin differ diff --git a/sha3/tests/data/sha3_384/test244.output.bin b/sha3/tests/data/sha3_384/test244.output.bin new file mode 100644 index 00000000..dd8bac57 Binary files /dev/null and b/sha3/tests/data/sha3_384/test244.output.bin differ diff --git a/sha3/tests/data/sha3_384/test245.input.bin b/sha3/tests/data/sha3_384/test245.input.bin new file mode 100644 index 00000000..514589ea Binary files /dev/null and b/sha3/tests/data/sha3_384/test245.input.bin differ diff --git a/sha3/tests/data/sha3_384/test245.output.bin b/sha3/tests/data/sha3_384/test245.output.bin new file mode 100644 index 00000000..cd316b29 --- /dev/null +++ b/sha3/tests/data/sha3_384/test245.output.bin @@ -0,0 +1 @@ +Mbf扛_^iʾA(̟,Rd RDxO\ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test246.input.bin b/sha3/tests/data/sha3_384/test246.input.bin new file mode 100644 index 00000000..58ac5c4f --- /dev/null +++ b/sha3/tests/data/sha3_384/test246.input.bin @@ -0,0 +1,3 @@ +)iD}T򪛰UML PTk-1ޜhɭN… g]so c+U YŚ?a\kuٓ@cxrj:?7;bkWE`dnS= +?zc v3BaY07e?D*]rɔOp9u΅Pr,m, +]vp>C4Ã*T~yrꀒ3 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test246.output.bin b/sha3/tests/data/sha3_384/test246.output.bin new file mode 100644 index 00000000..fff90352 --- /dev/null +++ b/sha3/tests/data/sha3_384/test246.output.bin @@ -0,0 +1 @@ +cx:B^哏ʦ0eDMWIf_&Ÿ9"8. \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test247.input.bin b/sha3/tests/data/sha3_384/test247.input.bin new file mode 100644 index 00000000..998aaf05 --- /dev/null +++ b/sha3/tests/data/sha3_384/test247.input.bin @@ -0,0 +1,2 @@ +rEc:DNjNXWZ<'3hu Pj4=}[>PpEdrj`uvӖ?Udm W{YLy:KFCxA8SE -)A˫PڎQ1EL:%D-KzzY(]VON헕o0B^JH%oc'-mcHWuE +#3KF/Dºo2_'b*XvoM,j(`KurkyAvxU&£?æB95Pp({ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test249.output.bin b/sha3/tests/data/sha3_384/test249.output.bin new file mode 100644 index 00000000..318f21bb Binary files /dev/null and b/sha3/tests/data/sha3_384/test249.output.bin differ diff --git a/sha3/tests/data/sha3_384/test25.input.bin b/sha3/tests/data/sha3_384/test25.input.bin new file mode 100644 index 00000000..31e2fe3a --- /dev/null +++ b/sha3/tests/data/sha3_384/test25.input.bin @@ -0,0 +1 @@ +$==J eX`'bs^U \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test25.output.bin b/sha3/tests/data/sha3_384/test25.output.bin new file mode 100644 index 00000000..eed82545 --- /dev/null +++ b/sha3/tests/data/sha3_384/test25.output.bin @@ -0,0 +1 @@ +=L\@y\Xz6{?k*}KޟeS%% \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test250.input.bin b/sha3/tests/data/sha3_384/test250.input.bin new file mode 100644 index 00000000..e5174fd6 --- /dev/null +++ b/sha3/tests/data/sha3_384/test250.input.bin @@ -0,0 +1,3 @@ +Ki<%3lV;L8uh4GRԧ=[T82 pφX +`wVѢh9Jm󛟯WhW{*P_uǠK:5` *şeX^"Kyƾ)f-h7`Fz +%y\ܡ𚗜!Sͻ&Tn/PhZFaIeԶ>[Щm=ju{3sOD_tqi~+ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test250.output.bin b/sha3/tests/data/sha3_384/test250.output.bin new file mode 100644 index 00000000..0bd1dd16 Binary files /dev/null and b/sha3/tests/data/sha3_384/test250.output.bin differ diff --git a/sha3/tests/data/sha3_384/test251.input.bin b/sha3/tests/data/sha3_384/test251.input.bin new file mode 100644 index 00000000..c892fcf3 Binary files /dev/null and b/sha3/tests/data/sha3_384/test251.input.bin differ diff --git a/sha3/tests/data/sha3_384/test251.output.bin b/sha3/tests/data/sha3_384/test251.output.bin new file mode 100644 index 00000000..5c857119 --- /dev/null +++ b/sha3/tests/data/sha3_384/test251.output.bin @@ -0,0 +1 @@ + Qǻc~-?[ȴ1&T= X \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test252.input.bin b/sha3/tests/data/sha3_384/test252.input.bin new file mode 100644 index 00000000..4b98ebd2 Binary files /dev/null and b/sha3/tests/data/sha3_384/test252.input.bin differ diff --git a/sha3/tests/data/sha3_384/test252.output.bin b/sha3/tests/data/sha3_384/test252.output.bin new file mode 100644 index 00000000..e7d5f2da --- /dev/null +++ b/sha3/tests/data/sha3_384/test252.output.bin @@ -0,0 +1 @@ +^ mz-nDإZ#vҸ,gX zw aB \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test253.input.bin b/sha3/tests/data/sha3_384/test253.input.bin new file mode 100644 index 00000000..a29ed9a7 Binary files /dev/null and b/sha3/tests/data/sha3_384/test253.input.bin differ diff --git a/sha3/tests/data/sha3_384/test253.output.bin b/sha3/tests/data/sha3_384/test253.output.bin new file mode 100644 index 00000000..c688337c --- /dev/null +++ b/sha3/tests/data/sha3_384/test253.output.bin @@ -0,0 +1 @@ +mեKJz^>aG㴈3E2;Yv9Q'> \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test254.input.bin b/sha3/tests/data/sha3_384/test254.input.bin new file mode 100644 index 00000000..d414c7f0 Binary files /dev/null and b/sha3/tests/data/sha3_384/test254.input.bin differ diff --git a/sha3/tests/data/sha3_384/test254.output.bin b/sha3/tests/data/sha3_384/test254.output.bin new file mode 100644 index 00000000..bfa14e07 --- /dev/null +++ b/sha3/tests/data/sha3_384/test254.output.bin @@ -0,0 +1 @@ +(?PW.UMv֔O,Iy]&>{+G2SBW \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test255.input.bin b/sha3/tests/data/sha3_384/test255.input.bin new file mode 100644 index 00000000..fe0c3944 Binary files /dev/null and b/sha3/tests/data/sha3_384/test255.input.bin differ diff --git a/sha3/tests/data/sha3_384/test255.output.bin b/sha3/tests/data/sha3_384/test255.output.bin new file mode 100644 index 00000000..f0903fc2 --- /dev/null +++ b/sha3/tests/data/sha3_384/test255.output.bin @@ -0,0 +1 @@ +v+5sϪܧHhQO=o]xch5~d/^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test26.input.bin b/sha3/tests/data/sha3_384/test26.input.bin new file mode 100644 index 00000000..c108fd88 --- /dev/null +++ b/sha3/tests/data/sha3_384/test26.input.bin @@ -0,0 +1 @@ +{Hgl:R~ԅ`  \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test26.output.bin b/sha3/tests/data/sha3_384/test26.output.bin new file mode 100644 index 00000000..9d74441e --- /dev/null +++ b/sha3/tests/data/sha3_384/test26.output.bin @@ -0,0 +1 @@ +w)Pr`f5nPJ*%>qЭƨ<, \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test27.input.bin b/sha3/tests/data/sha3_384/test27.input.bin new file mode 100644 index 00000000..2db6987a --- /dev/null +++ b/sha3/tests/data/sha3_384/test27.input.bin @@ -0,0 +1 @@ +#WZH'zEuC'XC \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test27.output.bin b/sha3/tests/data/sha3_384/test27.output.bin new file mode 100644 index 00000000..faa7cb55 --- /dev/null +++ b/sha3/tests/data/sha3_384/test27.output.bin @@ -0,0 +1 @@ +7K1}FohjkTxxy&ȡ<88r:Xo9l \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test28.input.bin b/sha3/tests/data/sha3_384/test28.input.bin new file mode 100644 index 00000000..557ef3d3 --- /dev/null +++ b/sha3/tests/data/sha3_384/test28.input.bin @@ -0,0 +1 @@ +-֌|ϱpSdbF|y^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test28.output.bin b/sha3/tests/data/sha3_384/test28.output.bin new file mode 100644 index 00000000..6453c9c8 --- /dev/null +++ b/sha3/tests/data/sha3_384/test28.output.bin @@ -0,0 +1 @@ +dz;ŐgͶi)=O \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test29.input.bin b/sha3/tests/data/sha3_384/test29.input.bin new file mode 100644 index 00000000..fa7268e4 Binary files /dev/null and b/sha3/tests/data/sha3_384/test29.input.bin differ diff --git a/sha3/tests/data/sha3_384/test29.output.bin b/sha3/tests/data/sha3_384/test29.output.bin new file mode 100644 index 00000000..65ba74d9 --- /dev/null +++ b/sha3/tests/data/sha3_384/test29.output.bin @@ -0,0 +1 @@ ++?xVʸQ8˦`K2,_V( \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test3.input.bin b/sha3/tests/data/sha3_384/test3.input.bin new file mode 100644 index 00000000..2ab26bf6 --- /dev/null +++ b/sha3/tests/data/sha3_384/test3.input.bin @@ -0,0 +1 @@ +| \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test3.output.bin b/sha3/tests/data/sha3_384/test3.output.bin new file mode 100644 index 00000000..82d615a3 --- /dev/null +++ b/sha3/tests/data/sha3_384/test3.output.bin @@ -0,0 +1 @@ +F yHڬL߆*qQ/w`w4 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test30.input.bin b/sha3/tests/data/sha3_384/test30.input.bin new file mode 100644 index 00000000..dc6e42e1 --- /dev/null +++ b/sha3/tests/data/sha3_384/test30.input.bin @@ -0,0 +1,2 @@ + : +8<@p , \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test30.output.bin b/sha3/tests/data/sha3_384/test30.output.bin new file mode 100644 index 00000000..5a03a0a9 --- /dev/null +++ b/sha3/tests/data/sha3_384/test30.output.bin @@ -0,0 +1 @@ +Z).pRg?6YpC3=JZ.,: D \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test31.input.bin b/sha3/tests/data/sha3_384/test31.input.bin new file mode 100644 index 00000000..032b03e0 --- /dev/null +++ b/sha3/tests/data/sha3_384/test31.input.bin @@ -0,0 +1 @@ +QlZ̵"򍠛#-B22Ã[) \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test31.output.bin b/sha3/tests/data/sha3_384/test31.output.bin new file mode 100644 index 00000000..8bc382d0 Binary files /dev/null and b/sha3/tests/data/sha3_384/test31.output.bin differ diff --git a/sha3/tests/data/sha3_384/test32.input.bin b/sha3/tests/data/sha3_384/test32.input.bin new file mode 100644 index 00000000..2636bc45 --- /dev/null +++ b/sha3/tests/data/sha3_384/test32.input.bin @@ -0,0 +1 @@ +/| k~l-]~] \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test32.output.bin b/sha3/tests/data/sha3_384/test32.output.bin new file mode 100644 index 00000000..4ac36700 --- /dev/null +++ b/sha3/tests/data/sha3_384/test32.output.bin @@ -0,0 +1 @@ +z/"jYPK"ը_q]G$ml \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test33.input.bin b/sha3/tests/data/sha3_384/test33.input.bin new file mode 100644 index 00000000..7aaecfde --- /dev/null +++ b/sha3/tests/data/sha3_384/test33.input.bin @@ -0,0 +1 @@ +ޏ?Kp@Ecø%1x~M ^OZ F \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test33.output.bin b/sha3/tests/data/sha3_384/test33.output.bin new file mode 100644 index 00000000..91e9986a --- /dev/null +++ b/sha3/tests/data/sha3_384/test33.output.bin @@ -0,0 +1 @@ +2ȡqԹQó2,Q_ᛃT5]ale-$E*/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test34.input.bin b/sha3/tests/data/sha3_384/test34.input.bin new file mode 100644 index 00000000..8be18416 Binary files /dev/null and b/sha3/tests/data/sha3_384/test34.input.bin differ diff --git a/sha3/tests/data/sha3_384/test34.output.bin b/sha3/tests/data/sha3_384/test34.output.bin new file mode 100644 index 00000000..0557e42b --- /dev/null +++ b/sha3/tests/data/sha3_384/test34.output.bin @@ -0,0 +1 @@ +sD>9\N^*"gZcxN[N \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test35.output.bin b/sha3/tests/data/sha3_384/test35.output.bin new file mode 100644 index 00000000..a5a3eff3 --- /dev/null +++ b/sha3/tests/data/sha3_384/test35.output.bin @@ -0,0 +1 @@ +n`f=,:7%?⚜(%rl]d\IVSIy]N* \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test36.input.bin b/sha3/tests/data/sha3_384/test36.input.bin new file mode 100644 index 00000000..3f70b9dc --- /dev/null +++ b/sha3/tests/data/sha3_384/test36.input.bin @@ -0,0 +1 @@ +Giz '4za:5bc \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test4.input.bin b/sha3/tests/data/sha3_384/test4.input.bin new file mode 100644 index 00000000..ef149867 --- /dev/null +++ b/sha3/tests/data/sha3_384/test4.input.bin @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test4.output.bin b/sha3/tests/data/sha3_384/test4.output.bin new file mode 100644 index 00000000..a29df40c --- /dev/null +++ b/sha3/tests/data/sha3_384/test4.output.bin @@ -0,0 +1 @@ ++`K$UeDQ֫O5f%&L~B \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test40.input.bin b/sha3/tests/data/sha3_384/test40.input.bin new file mode 100644 index 00000000..f6eb82cd --- /dev/null +++ b/sha3/tests/data/sha3_384/test40.input.bin @@ -0,0 +1,2 @@ +z.§4vtD +em%Ee0)Dk \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test40.output.bin b/sha3/tests/data/sha3_384/test40.output.bin new file mode 100644 index 00000000..fdbd1857 --- /dev/null +++ b/sha3/tests/data/sha3_384/test40.output.bin @@ -0,0 +1,2 @@ + +ۜF2ǡSHBgiU } ~dF \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test41.input.bin b/sha3/tests/data/sha3_384/test41.input.bin new file mode 100644 index 00000000..b9beab77 --- /dev/null +++ b/sha3/tests/data/sha3_384/test41.input.bin @@ -0,0 +1 @@ +ȍ'g"ˬ1ŌxeՀ}Fr; {· \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test41.output.bin b/sha3/tests/data/sha3_384/test41.output.bin new file mode 100644 index 00000000..ae48457e Binary files /dev/null and b/sha3/tests/data/sha3_384/test41.output.bin differ diff --git a/sha3/tests/data/sha3_384/test42.input.bin b/sha3/tests/data/sha3_384/test42.input.bin new file mode 100644 index 00000000..a09cd949 --- /dev/null +++ b/sha3/tests/data/sha3_384/test42.input.bin @@ -0,0 +1 @@ +?PEɱ>k]VO8' L+k \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test42.output.bin b/sha3/tests/data/sha3_384/test42.output.bin new file mode 100644 index 00000000..a31f828d Binary files /dev/null and b/sha3/tests/data/sha3_384/test42.output.bin differ diff --git a/sha3/tests/data/sha3_384/test43.input.bin b/sha3/tests/data/sha3_384/test43.input.bin new file mode 100644 index 00000000..f458e5bf --- /dev/null +++ b/sha3/tests/data/sha3_384/test43.input.bin @@ -0,0 +1,2 @@ +3p#7 +H.5F|N~I `K.n[@қz \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test43.output.bin b/sha3/tests/data/sha3_384/test43.output.bin new file mode 100644 index 00000000..e325e388 Binary files /dev/null and b/sha3/tests/data/sha3_384/test43.output.bin differ diff --git a/sha3/tests/data/sha3_384/test44.input.bin b/sha3/tests/data/sha3_384/test44.input.bin new file mode 100644 index 00000000..8484eefc --- /dev/null +++ b/sha3/tests/data/sha3_384/test44.input.bin @@ -0,0 +1,2 @@ +hTLt-, +؄Q D81'Vk28*k5 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test44.output.bin b/sha3/tests/data/sha3_384/test44.output.bin new file mode 100644 index 00000000..93ed4400 --- /dev/null +++ b/sha3/tests/data/sha3_384/test44.output.bin @@ -0,0 +1 @@ +,A;94hoc<~))w-/R> \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test55.input.bin b/sha3/tests/data/sha3_384/test55.input.bin new file mode 100644 index 00000000..42a4636a Binary files /dev/null and b/sha3/tests/data/sha3_384/test55.input.bin differ diff --git a/sha3/tests/data/sha3_384/test55.output.bin b/sha3/tests/data/sha3_384/test55.output.bin new file mode 100644 index 00000000..5ff66e40 --- /dev/null +++ b/sha3/tests/data/sha3_384/test55.output.bin @@ -0,0 +1 @@ +{*7^ϯ1D?Yn4x@zuO \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test56.input.bin b/sha3/tests/data/sha3_384/test56.input.bin new file mode 100644 index 00000000..d9160dc4 --- /dev/null +++ b/sha3/tests/data/sha3_384/test56.input.bin @@ -0,0 +1,2 @@ +W%,?s!3VԼ*Aqa 3)}w +ASGf \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test56.output.bin b/sha3/tests/data/sha3_384/test56.output.bin new file mode 100644 index 00000000..ad5a3ded --- /dev/null +++ b/sha3/tests/data/sha3_384/test56.output.bin @@ -0,0 +1,2 @@ +k.ʪ +Şr?*xQg ,c#k{".> \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test57.input.bin b/sha3/tests/data/sha3_384/test57.input.bin new file mode 100644 index 00000000..2e68ef4c --- /dev/null +++ b/sha3/tests/data/sha3_384/test57.input.bin @@ -0,0 +1,2 @@ +Ak\ܟQ6׫ +PTu֏N9ӰTkCZj<ڍT> \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test57.output.bin b/sha3/tests/data/sha3_384/test57.output.bin new file mode 100644 index 00000000..e1eae201 --- /dev/null +++ b/sha3/tests/data/sha3_384/test57.output.bin @@ -0,0 +1 @@ +U'4mQ%_7{_>5p)[9paL \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test58.input.bin b/sha3/tests/data/sha3_384/test58.input.bin new file mode 100644 index 00000000..62c5f7a8 --- /dev/null +++ b/sha3/tests/data/sha3_384/test58.input.bin @@ -0,0 +1 @@ +\_f..(JNkqCM \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test60.input.bin b/sha3/tests/data/sha3_384/test60.input.bin new file mode 100644 index 00000000..be665bc7 --- /dev/null +++ b/sha3/tests/data/sha3_384/test60.input.bin @@ -0,0 +1 @@ +/1s!2攏! v>tHh8wLOmPq݊A\H_/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test64.input.bin b/sha3/tests/data/sha3_384/test64.input.bin new file mode 100644 index 00000000..7b176930 --- /dev/null +++ b/sha3/tests/data/sha3_384/test64.input.bin @@ -0,0 +1,2 @@ +& +1v*kƽv_=ޞaBW7PU[L95$ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test64.output.bin b/sha3/tests/data/sha3_384/test64.output.bin new file mode 100644 index 00000000..0c34ffdf --- /dev/null +++ b/sha3/tests/data/sha3_384/test64.output.bin @@ -0,0 +1 @@ +B;4Ӽ@7,~ݺ:"$jj+ #TГL=)Ԟ_ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test65.input.bin b/sha3/tests/data/sha3_384/test65.input.bin new file mode 100644 index 00000000..9977841a Binary files /dev/null and b/sha3/tests/data/sha3_384/test65.input.bin differ diff --git a/sha3/tests/data/sha3_384/test65.output.bin b/sha3/tests/data/sha3_384/test65.output.bin new file mode 100644 index 00000000..d64dd536 --- /dev/null +++ b/sha3/tests/data/sha3_384/test65.output.bin @@ -0,0 +1 @@ +f,HQL~bvπNY١[ :+:#:Rn \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test66.input.bin b/sha3/tests/data/sha3_384/test66.input.bin new file mode 100644 index 00000000..a45b4b08 --- /dev/null +++ b/sha3/tests/data/sha3_384/test66.input.bin @@ -0,0 +1 @@ +BN'9Uط[ۡ*B^,7hEm?m<Lk)v]=7 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test66.output.bin b/sha3/tests/data/sha3_384/test66.output.bin new file mode 100644 index 00000000..d3782ee1 --- /dev/null +++ b/sha3/tests/data/sha3_384/test66.output.bin @@ -0,0 +1 @@ +_TgI%dTT JG_9P<ûgis \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test67.input.bin b/sha3/tests/data/sha3_384/test67.input.bin new file mode 100644 index 00000000..195db410 --- /dev/null +++ b/sha3/tests/data/sha3_384/test67.input.bin @@ -0,0 +1 @@ +G+T'4}Xsdd%O!?-52/#˪N!(N.rxY \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test67.output.bin b/sha3/tests/data/sha3_384/test67.output.bin new file mode 100644 index 00000000..0036719b --- /dev/null +++ b/sha3/tests/data/sha3_384/test67.output.bin @@ -0,0 +1,2 @@ +UA+?B +b]^%=' iNvQ(oy( \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test68.input.bin b/sha3/tests/data/sha3_384/test68.input.bin new file mode 100644 index 00000000..3d5df4c5 --- /dev/null +++ b/sha3/tests/data/sha3_384/test68.input.bin @@ -0,0 +1 @@ +6_,9D^~}AY+CKG4_bV'5J󴴿 tObPy@pk \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test68.output.bin b/sha3/tests/data/sha3_384/test68.output.bin new file mode 100644 index 00000000..109b84db --- /dev/null +++ b/sha3/tests/data/sha3_384/test68.output.bin @@ -0,0 +1 @@ +4gzfh [1>҉y@ٿ N;rtGF \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test69.input.bin b/sha3/tests/data/sha3_384/test69.input.bin new file mode 100644 index 00000000..fb003ff3 --- /dev/null +++ b/sha3/tests/data/sha3_384/test69.input.bin @@ -0,0 +1 @@ +wcʘ[ʺT(oa(M])`q{Ik%(I,L,kt۶\*Q1lw \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test69.output.bin b/sha3/tests/data/sha3_384/test69.output.bin new file mode 100644 index 00000000..eca6a1de --- /dev/null +++ b/sha3/tests/data/sha3_384/test69.output.bin @@ -0,0 +1 @@ +xN)+ZoR·L)4qY+"=L&[zP̨@1Cz \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test7.input.bin b/sha3/tests/data/sha3_384/test7.input.bin new file mode 100644 index 00000000..4258f91d --- /dev/null +++ b/sha3/tests/data/sha3_384/test7.input.bin @@ -0,0 +1 @@ +̃ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test7.output.bin b/sha3/tests/data/sha3_384/test7.output.bin new file mode 100644 index 00000000..7eeab555 --- /dev/null +++ b/sha3/tests/data/sha3_384/test7.output.bin @@ -0,0 +1 @@ +Izrڣ T6qˏcP Aׁm`aj \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test70.input.bin b/sha3/tests/data/sha3_384/test70.input.bin new file mode 100644 index 00000000..45546141 --- /dev/null +++ b/sha3/tests/data/sha3_384/test70.input.bin @@ -0,0 +1 @@ +ʎT#LmSsK _y: PB.ɍ~pD{#اw`YOr \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test70.output.bin b/sha3/tests/data/sha3_384/test70.output.bin new file mode 100644 index 00000000..324a4ae9 --- /dev/null +++ b/sha3/tests/data/sha3_384/test70.output.bin @@ -0,0 +1 @@ +k|ɭk\Vfᱴii.4_SXn^V \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test71.input.bin b/sha3/tests/data/sha3_384/test71.input.bin new file mode 100644 index 00000000..34b52d0b Binary files /dev/null and b/sha3/tests/data/sha3_384/test71.input.bin differ diff --git a/sha3/tests/data/sha3_384/test71.output.bin b/sha3/tests/data/sha3_384/test71.output.bin new file mode 100644 index 00000000..afd061a9 --- /dev/null +++ b/sha3/tests/data/sha3_384/test71.output.bin @@ -0,0 +1,2 @@ +e + oRTK(7LwFX)08r ( \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test72.input.bin b/sha3/tests/data/sha3_384/test72.input.bin new file mode 100644 index 00000000..3f6a3d3d Binary files /dev/null and b/sha3/tests/data/sha3_384/test72.input.bin differ diff --git a/sha3/tests/data/sha3_384/test72.output.bin b/sha3/tests/data/sha3_384/test72.output.bin new file mode 100644 index 00000000..6941e49c Binary files /dev/null and b/sha3/tests/data/sha3_384/test72.output.bin differ diff --git a/sha3/tests/data/sha3_384/test73.input.bin b/sha3/tests/data/sha3_384/test73.input.bin new file mode 100644 index 00000000..206cbe08 Binary files /dev/null and b/sha3/tests/data/sha3_384/test73.input.bin differ diff --git a/sha3/tests/data/sha3_384/test73.output.bin b/sha3/tests/data/sha3_384/test73.output.bin new file mode 100644 index 00000000..a4bcfa6b Binary files /dev/null and b/sha3/tests/data/sha3_384/test73.output.bin differ diff --git a/sha3/tests/data/sha3_384/test74.input.bin b/sha3/tests/data/sha3_384/test74.input.bin new file mode 100644 index 00000000..be1ac2da --- /dev/null +++ b/sha3/tests/data/sha3_384/test74.input.bin @@ -0,0 +1 @@ +&Vs}ʸ`._TeT, uZOM%p>";[<ᐜ ԱMpt \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test74.output.bin b/sha3/tests/data/sha3_384/test74.output.bin new file mode 100644 index 00000000..7e5d18e0 Binary files /dev/null and b/sha3/tests/data/sha3_384/test74.output.bin differ diff --git a/sha3/tests/data/sha3_384/test75.input.bin b/sha3/tests/data/sha3_384/test75.input.bin new file mode 100644 index 00000000..fbd5dce7 --- /dev/null +++ b/sha3/tests/data/sha3_384/test75.input.bin @@ -0,0 +1 @@ +=׿YJ5'}}Z[Mm/dqQA̽{ΠRCޮ|MFv?wӄY< \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test75.output.bin b/sha3/tests/data/sha3_384/test75.output.bin new file mode 100644 index 00000000..86922c79 --- /dev/null +++ b/sha3/tests/data/sha3_384/test75.output.bin @@ -0,0 +1,2 @@ +9u1=n/7ЁͰ)r{:|Xލ0h0 ++rEE \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test76.input.bin b/sha3/tests/data/sha3_384/test76.input.bin new file mode 100644 index 00000000..5fcf443c --- /dev/null +++ b/sha3/tests/data/sha3_384/test76.input.bin @@ -0,0 +1 @@ +<5@f3X6_\؏ɬX*]XѴcpNº4HԦ<#aY^| \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test76.output.bin b/sha3/tests/data/sha3_384/test76.output.bin new file mode 100644 index 00000000..b01fb5b0 --- /dev/null +++ b/sha3/tests/data/sha3_384/test76.output.bin @@ -0,0 +1 @@ +/t}d2OGBHCIbaqU'$$@' \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test77.input.bin b/sha3/tests/data/sha3_384/test77.input.bin new file mode 100644 index 00000000..78d1a46e --- /dev/null +++ b/sha3/tests/data/sha3_384/test77.input.bin @@ -0,0 +1,2 @@ +d^ʆ5| + adt֑ͽeKRTi1j SƎ2NŤ֢ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test77.output.bin b/sha3/tests/data/sha3_384/test77.output.bin new file mode 100644 index 00000000..6d425671 --- /dev/null +++ b/sha3/tests/data/sha3_384/test77.output.bin @@ -0,0 +1 @@ +qK4i̘ٚY+^HcrbP+wG7v >߽ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test78.input.bin b/sha3/tests/data/sha3_384/test78.input.bin new file mode 100644 index 00000000..8ec52985 --- /dev/null +++ b/sha3/tests/data/sha3_384/test78.input.bin @@ -0,0 +1,2 @@ +eK∹ tqh + *47,qΪ%ުWo1)aϛI[jIl[< \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test78.output.bin b/sha3/tests/data/sha3_384/test78.output.bin new file mode 100644 index 00000000..b95e377c --- /dev/null +++ b/sha3/tests/data/sha3_384/test78.output.bin @@ -0,0 +1 @@ +"td [? {I rVdɈab \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test79.input.bin b/sha3/tests/data/sha3_384/test79.input.bin new file mode 100644 index 00000000..223995c9 Binary files /dev/null and b/sha3/tests/data/sha3_384/test79.input.bin differ diff --git a/sha3/tests/data/sha3_384/test79.output.bin b/sha3/tests/data/sha3_384/test79.output.bin new file mode 100644 index 00000000..f91d4b22 --- /dev/null +++ b/sha3/tests/data/sha3_384/test79.output.bin @@ -0,0 +1 @@ +wx6F҈)J0ieb QKy[NyY A \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test8.input.bin b/sha3/tests/data/sha3_384/test8.input.bin new file mode 100644 index 00000000..dbdc2b7a --- /dev/null +++ b/sha3/tests/data/sha3_384/test8.input.bin @@ -0,0 +1 @@ +JO $Q%& \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test8.output.bin b/sha3/tests/data/sha3_384/test8.output.bin new file mode 100644 index 00000000..8329fc80 --- /dev/null +++ b/sha3/tests/data/sha3_384/test8.output.bin @@ -0,0 +1,2 @@ +Ûo +i&5ZKƤF@ȽoH ]`7t|# \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test80.input.bin b/sha3/tests/data/sha3_384/test80.input.bin new file mode 100644 index 00000000..5cf1dae3 --- /dev/null +++ b/sha3/tests/data/sha3_384/test80.input.bin @@ -0,0 +1 @@ + z_6z͊H|'O3k7FXG_z5{eo{恵աꀅ⮜ 1Tmj0 \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test80.output.bin b/sha3/tests/data/sha3_384/test80.output.bin new file mode 100644 index 00000000..aad6ba99 --- /dev/null +++ b/sha3/tests/data/sha3_384/test80.output.bin @@ -0,0 +1 @@ +\;shX-޿j+rKQLJ̺ ŕn#GKne.# \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test81.input.bin b/sha3/tests/data/sha3_384/test81.input.bin new file mode 100644 index 00000000..5ebb1af3 --- /dev/null +++ b/sha3/tests/data/sha3_384/test81.input.bin @@ -0,0 +1 @@ + OWwJ"1%k. oYu6]Sڃc#o<^ |hw=I\" \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test81.output.bin b/sha3/tests/data/sha3_384/test81.output.bin new file mode 100644 index 00000000..60aa315d --- /dev/null +++ b/sha3/tests/data/sha3_384/test81.output.bin @@ -0,0 +1 @@ +^:a[i3Y1Ûqe7]*x41*͙ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test82.input.bin b/sha3/tests/data/sha3_384/test82.input.bin new file mode 100644 index 00000000..8af74e5b --- /dev/null +++ b/sha3/tests/data/sha3_384/test82.input.bin @@ -0,0 +1,3 @@ +(bXVP Lw(a, ?o +&_?'3~rg{}!e +M2Ibv8ۭp,|&@ϋNT \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test82.output.bin b/sha3/tests/data/sha3_384/test82.output.bin new file mode 100644 index 00000000..40d705a6 --- /dev/null +++ b/sha3/tests/data/sha3_384/test82.output.bin @@ -0,0 +1 @@ +3TqިeքaԞZȄj%IvZ( Ԟ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test83.input.bin b/sha3/tests/data/sha3_384/test83.input.bin new file mode 100644 index 00000000..c5affa06 --- /dev/null +++ b/sha3/tests/data/sha3_384/test83.input.bin @@ -0,0 +1,2 @@ +cH);w wTNQfȁitnB?vj  >;oytp +z}(L;xp=+xan \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test83.output.bin b/sha3/tests/data/sha3_384/test83.output.bin new file mode 100644 index 00000000..54dd3589 --- /dev/null +++ b/sha3/tests/data/sha3_384/test83.output.bin @@ -0,0 +1,2 @@ +8qdAxhs2 +@_cꥫ-S~b \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test84.input.bin b/sha3/tests/data/sha3_384/test84.input.bin new file mode 100644 index 00000000..cffc8df4 Binary files /dev/null and b/sha3/tests/data/sha3_384/test84.input.bin differ diff --git a/sha3/tests/data/sha3_384/test84.output.bin b/sha3/tests/data/sha3_384/test84.output.bin new file mode 100644 index 00000000..f1334d35 Binary files /dev/null and b/sha3/tests/data/sha3_384/test84.output.bin differ diff --git a/sha3/tests/data/sha3_384/test85.input.bin b/sha3/tests/data/sha3_384/test85.input.bin new file mode 100644 index 00000000..7db9b52d Binary files /dev/null and b/sha3/tests/data/sha3_384/test85.input.bin differ diff --git a/sha3/tests/data/sha3_384/test85.output.bin b/sha3/tests/data/sha3_384/test85.output.bin new file mode 100644 index 00000000..420322b3 --- /dev/null +++ b/sha3/tests/data/sha3_384/test85.output.bin @@ -0,0 +1 @@ +OG3J{6't\+"R~Dv b \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test86.input.bin b/sha3/tests/data/sha3_384/test86.input.bin new file mode 100644 index 00000000..4ab2eb77 --- /dev/null +++ b/sha3/tests/data/sha3_384/test86.input.bin @@ -0,0 +1 @@ +hn ij)/3͚J1zI/\v镬Ȼ{xЁ%]9GY ΂"AM%FR \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test86.output.bin b/sha3/tests/data/sha3_384/test86.output.bin new file mode 100644 index 00000000..86762e05 --- /dev/null +++ b/sha3/tests/data/sha3_384/test86.output.bin @@ -0,0 +1 @@ +HjAeTRΉo2Mv6eX5RzBN$0@ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test87.input.bin b/sha3/tests/data/sha3_384/test87.input.bin new file mode 100644 index 00000000..98c75ade --- /dev/null +++ b/sha3/tests/data/sha3_384/test87.input.bin @@ -0,0 +1 @@ +drN1Tt?4dK6޽dۧ\>@邻p0418FvO/E5;)o';oV< \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test87.output.bin b/sha3/tests/data/sha3_384/test87.output.bin new file mode 100644 index 00000000..04c8e325 --- /dev/null +++ b/sha3/tests/data/sha3_384/test87.output.bin @@ -0,0 +1 @@ +<%u7,ku.m=&z %.[ߨ+yLͤ۴ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test88.input.bin b/sha3/tests/data/sha3_384/test88.input.bin new file mode 100644 index 00000000..e0db0dc8 --- /dev/null +++ b/sha3/tests/data/sha3_384/test88.input.bin @@ -0,0 +1 @@ + Xf_CB 1Ͱ"ƃ z>RWYLﴧ(F2I'uOJOd= чDL͟!@@NmE+TB} \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test88.output.bin b/sha3/tests/data/sha3_384/test88.output.bin new file mode 100644 index 00000000..bb88dd17 --- /dev/null +++ b/sha3/tests/data/sha3_384/test88.output.bin @@ -0,0 +1,2 @@ +ʍ t"ZĈ.+恜м +!KtG4yS[( \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test89.input.bin b/sha3/tests/data/sha3_384/test89.input.bin new file mode 100644 index 00000000..79e91444 Binary files /dev/null and b/sha3/tests/data/sha3_384/test89.input.bin differ diff --git a/sha3/tests/data/sha3_384/test89.output.bin b/sha3/tests/data/sha3_384/test89.output.bin new file mode 100644 index 00000000..63c463b3 --- /dev/null +++ b/sha3/tests/data/sha3_384/test89.output.bin @@ -0,0 +1 @@ +'I#He͗5=4:Z=^XѰ >mfA| \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test9.input.bin b/sha3/tests/data/sha3_384/test9.input.bin new file mode 100644 index 00000000..c98711ad --- /dev/null +++ b/sha3/tests/data/sha3_384/test9.input.bin @@ -0,0 +1 @@ +fAcu \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test9.output.bin b/sha3/tests/data/sha3_384/test9.output.bin new file mode 100644 index 00000000..572b523f Binary files /dev/null and b/sha3/tests/data/sha3_384/test9.output.bin differ diff --git a/sha3/tests/data/sha3_384/test90.input.bin b/sha3/tests/data/sha3_384/test90.input.bin new file mode 100644 index 00000000..ea51e82c --- /dev/null +++ b/sha3/tests/data/sha3_384/test90.input.bin @@ -0,0 +1 @@ +au,KWJ~@N=]RL ܰ:2uܭrS7yy&]|%yx< \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test90.output.bin b/sha3/tests/data/sha3_384/test90.output.bin new file mode 100644 index 00000000..121ae04d --- /dev/null +++ b/sha3/tests/data/sha3_384/test90.output.bin @@ -0,0 +1 @@ +yhG=ZJŷi:DF.`("a,]>5} Ej]F<(WOg \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test92.input.bin b/sha3/tests/data/sha3_384/test92.input.bin new file mode 100644 index 00000000..203ee257 --- /dev/null +++ b/sha3/tests/data/sha3_384/test92.input.bin @@ -0,0 +1,2 @@ +/#@[r,YlE8^^cJ +*r>ݵ+g2aDʇClRjm\ \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test94.input.bin b/sha3/tests/data/sha3_384/test94.input.bin new file mode 100644 index 00000000..6ad6df94 Binary files /dev/null and b/sha3/tests/data/sha3_384/test94.input.bin differ diff --git a/sha3/tests/data/sha3_384/test94.output.bin b/sha3/tests/data/sha3_384/test94.output.bin new file mode 100644 index 00000000..7cd1abcc --- /dev/null +++ b/sha3/tests/data/sha3_384/test94.output.bin @@ -0,0 +1,2 @@ +6|˵: +1|d|nܮD|>Wc=[H \ No newline at end of file diff --git a/sha3/tests/data/sha3_384/test99.input.bin b/sha3/tests/data/sha3_384/test99.input.bin new file mode 100644 index 00000000..8ffc3c37 Binary files /dev/null and b/sha3/tests/data/sha3_384/test99.input.bin differ diff --git a/sha3/tests/data/sha3_384/test99.output.bin b/sha3/tests/data/sha3_384/test99.output.bin new file mode 100644 index 00000000..44fd79dc Binary files /dev/null and b/sha3/tests/data/sha3_384/test99.output.bin differ diff --git a/sha3/tests/data/sha3_512/test1.input.bin b/sha3/tests/data/sha3_512/test1.input.bin new file mode 100644 index 00000000..d50394ef --- /dev/null +++ b/sha3/tests/data/sha3_512/test1.input.bin @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test1.output.bin b/sha3/tests/data/sha3_512/test1.output.bin new file mode 100644 index 00000000..b4f79cc8 Binary files /dev/null and b/sha3/tests/data/sha3_512/test1.output.bin differ diff --git a/sha3/tests/data/sha3_512/test10.input.bin b/sha3/tests/data/sha3_512/test10.input.bin new file mode 100644 index 00000000..f41e1b9a --- /dev/null +++ b/sha3/tests/data/sha3_512/test10.input.bin @@ -0,0 +1 @@ +B"'a;oS \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test10.output.bin b/sha3/tests/data/sha3_512/test10.output.bin new file mode 100644 index 00000000..4cbd1346 --- /dev/null +++ b/sha3/tests/data/sha3_512/test10.output.bin @@ -0,0 +1 @@ +ZVoSuS}1MhE)f@sK(Lĥ0"WWrŊd \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test100.input.bin b/sha3/tests/data/sha3_512/test100.input.bin new file mode 100644 index 00000000..d64c49dd --- /dev/null +++ b/sha3/tests/data/sha3_512/test100.input.bin @@ -0,0 +1 @@ +C`fGi$$1q,W'^Y S \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test102.input.bin b/sha3/tests/data/sha3_512/test102.input.bin new file mode 100644 index 00000000..20e92750 Binary files /dev/null and b/sha3/tests/data/sha3_512/test102.input.bin differ diff --git a/sha3/tests/data/sha3_512/test102.output.bin b/sha3/tests/data/sha3_512/test102.output.bin new file mode 100644 index 00000000..113ef03d --- /dev/null +++ b/sha3/tests/data/sha3_512/test102.output.bin @@ -0,0 +1 @@ +0PDgT7LÖteaq0S bFM R)z,',`rDD \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test103.input.bin b/sha3/tests/data/sha3_512/test103.input.bin new file mode 100644 index 00000000..69627111 --- /dev/null +++ b/sha3/tests/data/sha3_512/test103.input.bin @@ -0,0 +1 @@ +<,R<Ĥ(-Fkc$>­A0T {#Ut!tAI/Dm`@3U{v٠IYa Xڳ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test103.output.bin b/sha3/tests/data/sha3_512/test103.output.bin new file mode 100644 index 00000000..f2366440 --- /dev/null +++ b/sha3/tests/data/sha3_512/test103.output.bin @@ -0,0 +1 @@ +(#,RGn9KX;>srv'+vح.?3j٢4h+zSb5i-,! \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test104.input.bin b/sha3/tests/data/sha3_512/test104.input.bin new file mode 100644 index 00000000..12b383e4 --- /dev/null +++ b/sha3/tests/data/sha3_512/test104.input.bin @@ -0,0 +1,2 @@ +W뗙LwS]Mh<>gqS'LJX휽ԆiI6O*Q&Tr]δjjm#Q~3PV`j̯z%K|n +!iiA8H \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test104.output.bin b/sha3/tests/data/sha3_512/test104.output.bin new file mode 100644 index 00000000..72f434c4 --- /dev/null +++ b/sha3/tests/data/sha3_512/test104.output.bin @@ -0,0 +1,2 @@ +j}^_ +sv-?c!rt-sl*5%nv7ʢPթb \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test105.input.bin b/sha3/tests/data/sha3_512/test105.input.bin new file mode 100644 index 00000000..4bee27fe --- /dev/null +++ b/sha3/tests/data/sha3_512/test105.input.bin @@ -0,0 +1,3 @@ +dm1PLy=rgcGIGSgFXj$?\P +nWڻx ++Rpڢ |өPќO>Ks#A[N}m .Nx \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test105.output.bin b/sha3/tests/data/sha3_512/test105.output.bin new file mode 100644 index 00000000..ff1bc175 --- /dev/null +++ b/sha3/tests/data/sha3_512/test105.output.bin @@ -0,0 +1 @@ +AgYb/y'OBC]6!pL=M:0>{uZ$1` \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test106.input.bin b/sha3/tests/data/sha3_512/test106.input.bin new file mode 100644 index 00000000..69b78d43 Binary files /dev/null and b/sha3/tests/data/sha3_512/test106.input.bin differ diff --git a/sha3/tests/data/sha3_512/test106.output.bin b/sha3/tests/data/sha3_512/test106.output.bin new file mode 100644 index 00000000..4dda5484 --- /dev/null +++ b/sha3/tests/data/sha3_512/test106.output.bin @@ -0,0 +1 @@ + o K_C ' ɡqU~wmr0kJrEtD#rAZhRвl \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test107.input.bin b/sha3/tests/data/sha3_512/test107.input.bin new file mode 100644 index 00000000..7f3ebdde Binary files /dev/null and b/sha3/tests/data/sha3_512/test107.input.bin differ diff --git a/sha3/tests/data/sha3_512/test107.output.bin b/sha3/tests/data/sha3_512/test107.output.bin new file mode 100644 index 00000000..1eb67ab2 --- /dev/null +++ b/sha3/tests/data/sha3_512/test107.output.bin @@ -0,0 +1 @@ +/ h7QV E,7P.9j(cjݝj dXVE\[1SVema} \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test108.input.bin b/sha3/tests/data/sha3_512/test108.input.bin new file mode 100644 index 00000000..27b98aa5 --- /dev/null +++ b/sha3/tests/data/sha3_512/test108.input.bin @@ -0,0 +1,2 @@ +O!1*8 ٫o<90gD@TW%bfHRtsy +C<`UQA%=v)~Ǡ ).!tG0A \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test108.output.bin b/sha3/tests/data/sha3_512/test108.output.bin new file mode 100644 index 00000000..aede9b6d --- /dev/null +++ b/sha3/tests/data/sha3_512/test108.output.bin @@ -0,0 +1,2 @@ +A E?-]i<}K +=.bY߫2M (F2Է?ceS \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test109.input.bin b/sha3/tests/data/sha3_512/test109.input.bin new file mode 100644 index 00000000..578ca7d1 --- /dev/null +++ b/sha3/tests/data/sha3_512/test109.input.bin @@ -0,0 +1 @@ +u8=~YQs^gb'Y / oI*{,Sa/w2e^4i])]m \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test109.output.bin b/sha3/tests/data/sha3_512/test109.output.bin new file mode 100644 index 00000000..78ce67e7 --- /dev/null +++ b/sha3/tests/data/sha3_512/test109.output.bin @@ -0,0 +1 @@ +: YÖ[R(|OۥMLYv+A:x*KO){ePKQ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test11.input.bin b/sha3/tests/data/sha3_512/test11.input.bin new file mode 100644 index 00000000..c207fd94 --- /dev/null +++ b/sha3/tests/data/sha3_512/test11.input.bin @@ -0,0 +1 @@ +؝U \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test11.output.bin b/sha3/tests/data/sha3_512/test11.output.bin new file mode 100644 index 00000000..cfaefa6a --- /dev/null +++ b/sha3/tests/data/sha3_512/test11.output.bin @@ -0,0 +1 @@ +|wΘDXh<^nļ+mo剠"^֪{"ɩrݪ22¤( \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test110.input.bin b/sha3/tests/data/sha3_512/test110.input.bin new file mode 100644 index 00000000..aa83a838 --- /dev/null +++ b/sha3/tests/data/sha3_512/test110.input.bin @@ -0,0 +1 @@ +G·IHFY!P25xO,@K[j{;۠,_YeyÂq1 ,ȻS;CD^ *ףTW`unv \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test110.output.bin b/sha3/tests/data/sha3_512/test110.output.bin new file mode 100644 index 00000000..a119ede6 --- /dev/null +++ b/sha3/tests/data/sha3_512/test110.output.bin @@ -0,0 +1 @@ +晄+Q:NolEgǨxX<:66(㪙9K‡l/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test111.input.bin b/sha3/tests/data/sha3_512/test111.input.bin new file mode 100644 index 00000000..054fc217 Binary files /dev/null and b/sha3/tests/data/sha3_512/test111.input.bin differ diff --git a/sha3/tests/data/sha3_512/test111.output.bin b/sha3/tests/data/sha3_512/test111.output.bin new file mode 100644 index 00000000..0df4f531 --- /dev/null +++ b/sha3/tests/data/sha3_512/test111.output.bin @@ -0,0 +1 @@ +"SV<3Sզ]ƺͨ>Q7I6@?ֈ^6= $ai\'_OL \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test112.input.bin b/sha3/tests/data/sha3_512/test112.input.bin new file mode 100644 index 00000000..2c446502 --- /dev/null +++ b/sha3/tests/data/sha3_512/test112.input.bin @@ -0,0 +1,2 @@ +X֩E$VgpAp@rKy͋ev|~tLZkɮLZ 2h3ɝ9R1}[]^}Z`]_\+ +#y#S2,N \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test112.output.bin b/sha3/tests/data/sha3_512/test112.output.bin new file mode 100644 index 00000000..843d3198 Binary files /dev/null and b/sha3/tests/data/sha3_512/test112.output.bin differ diff --git a/sha3/tests/data/sha3_512/test113.input.bin b/sha3/tests/data/sha3_512/test113.input.bin new file mode 100644 index 00000000..d1cefe00 --- /dev/null +++ b/sha3/tests/data/sha3_512/test113.input.bin @@ -0,0 +1 @@ +t9mgյ, N?K>msNN]jr5@#Tf%ꗕ30y+co J(`Yc-e'~"r_嵮 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test113.output.bin b/sha3/tests/data/sha3_512/test113.output.bin new file mode 100644 index 00000000..60c2fa9d --- /dev/null +++ b/sha3/tests/data/sha3_512/test113.output.bin @@ -0,0 +1 @@ + 3seqMVHc SFG*ub2's}i5?}>8hv죊 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test114.input.bin b/sha3/tests/data/sha3_512/test114.input.bin new file mode 100644 index 00000000..3f20aaf1 Binary files /dev/null and b/sha3/tests/data/sha3_512/test114.input.bin differ diff --git a/sha3/tests/data/sha3_512/test114.output.bin b/sha3/tests/data/sha3_512/test114.output.bin new file mode 100644 index 00000000..90cde9a5 --- /dev/null +++ b/sha3/tests/data/sha3_512/test114.output.bin @@ -0,0 +1 @@ +y u gH*Q5UM!o5ž/*T0&3{",[KZ$BmŜf \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test115.input.bin b/sha3/tests/data/sha3_512/test115.input.bin new file mode 100644 index 00000000..a6fd6d89 --- /dev/null +++ b/sha3/tests/data/sha3_512/test115.input.bin @@ -0,0 +1 @@ +\hL4c򒑿&./B*ݜ3/=|41 m_HW9OG";1jnXgZUIÍv0aʫi( 9- \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test115.output.bin b/sha3/tests/data/sha3_512/test115.output.bin new file mode 100644 index 00000000..9c03512f --- /dev/null +++ b/sha3/tests/data/sha3_512/test115.output.bin @@ -0,0 +1 @@ +hDǞyܖ}3IY`K +m;IrS*GkKA]i \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test116.input.bin b/sha3/tests/data/sha3_512/test116.input.bin new file mode 100644 index 00000000..2784049e --- /dev/null +++ b/sha3/tests/data/sha3_512/test116.input.bin @@ -0,0 +1 @@ +.ooeG) ?)׬o`z2C>#ul\.*L_cbdPXeq@Jm+ODuT4i4 Za]@Wۙ1BbEtE \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test116.output.bin b/sha3/tests/data/sha3_512/test116.output.bin new file mode 100644 index 00000000..72933d56 --- /dev/null +++ b/sha3/tests/data/sha3_512/test116.output.bin @@ -0,0 +1 @@ +NMĞALyJKm F!ЉO>4&E#:寋nx*n >xώ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test117.input.bin b/sha3/tests/data/sha3_512/test117.input.bin new file mode 100644 index 00000000..2077f3da --- /dev/null +++ b/sha3/tests/data/sha3_512/test117.input.bin @@ -0,0 +1 @@ +ڱG lB1uV(RBj ڲCr dhkǶzSLBc슟*qc"Jabsϣ0"${BNu1r^6{.Wgך>H] \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test119.input.bin b/sha3/tests/data/sha3_512/test119.input.bin new file mode 100644 index 00000000..63bb2b54 --- /dev/null +++ b/sha3/tests/data/sha3_512/test119.input.bin @@ -0,0 +1,2 @@ +}Qe I=Y$Sڀm}Ta~SnGgC^oeIV<a \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test12.input.bin b/sha3/tests/data/sha3_512/test12.input.bin new file mode 100644 index 00000000..e68fe561 --- /dev/null +++ b/sha3/tests/data/sha3_512/test12.input.bin @@ -0,0 +1 @@ +[<) \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test12.output.bin b/sha3/tests/data/sha3_512/test12.output.bin new file mode 100644 index 00000000..e5580ce1 --- /dev/null +++ b/sha3/tests/data/sha3_512/test12.output.bin @@ -0,0 +1 @@ +YRN30[bzbg/$xn7iS`m'-t+g43Č \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test120.input.bin b/sha3/tests/data/sha3_512/test120.input.bin new file mode 100644 index 00000000..4374360c Binary files /dev/null and b/sha3/tests/data/sha3_512/test120.input.bin differ diff --git a/sha3/tests/data/sha3_512/test120.output.bin b/sha3/tests/data/sha3_512/test120.output.bin new file mode 100644 index 00000000..c2931fe5 --- /dev/null +++ b/sha3/tests/data/sha3_512/test120.output.bin @@ -0,0 +1 @@ +3},ѓ{ `mR&D)kWG&Dz+ŕl(]e< $s \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test121.input.bin b/sha3/tests/data/sha3_512/test121.input.bin new file mode 100644 index 00000000..f8ae339b --- /dev/null +++ b/sha3/tests/data/sha3_512/test121.input.bin @@ -0,0 +1 @@ +bohiYYk=Yei-=yx!Z">Ec`0(ãg([iiD~!b Skމ%qf$k!)= W- 5]% \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test121.output.bin b/sha3/tests/data/sha3_512/test121.output.bin new file mode 100644 index 00000000..13bf712c --- /dev/null +++ b/sha3/tests/data/sha3_512/test121.output.bin @@ -0,0 +1 @@ +˾6XFr%zxg"C$ƃG\$,}`Of=!rvOAB09j \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test122.input.bin b/sha3/tests/data/sha3_512/test122.input.bin new file mode 100644 index 00000000..b010172a --- /dev/null +++ b/sha3/tests/data/sha3_512/test122.input.bin @@ -0,0 +1 @@ +eoĸ |hu Nj_s$Gx%'F3YtnJW|RLRG#y\UDlΐlwJŹL"Vu]˖:KNY| y@ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test122.output.bin b/sha3/tests/data/sha3_512/test122.output.bin new file mode 100644 index 00000000..09539862 Binary files /dev/null and b/sha3/tests/data/sha3_512/test122.output.bin differ diff --git a/sha3/tests/data/sha3_512/test123.input.bin b/sha3/tests/data/sha3_512/test123.input.bin new file mode 100644 index 00000000..02d4a4d3 Binary files /dev/null and b/sha3/tests/data/sha3_512/test123.input.bin differ diff --git a/sha3/tests/data/sha3_512/test123.output.bin b/sha3/tests/data/sha3_512/test123.output.bin new file mode 100644 index 00000000..94fea58a --- /dev/null +++ b/sha3/tests/data/sha3_512/test123.output.bin @@ -0,0 +1,2 @@ +8IҞQK'Z,O[Y䅚s +.kaRD^ڀ\R>~^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test124.input.bin b/sha3/tests/data/sha3_512/test124.input.bin new file mode 100644 index 00000000..1d34f83e Binary files /dev/null and b/sha3/tests/data/sha3_512/test124.input.bin differ diff --git a/sha3/tests/data/sha3_512/test124.output.bin b/sha3/tests/data/sha3_512/test124.output.bin new file mode 100644 index 00000000..4fec5fd1 --- /dev/null +++ b/sha3/tests/data/sha3_512/test124.output.bin @@ -0,0 +1 @@ +2C4 0e&5 }`奴r!8Y@LZ&|#m8u%x~7#A( \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test125.input.bin b/sha3/tests/data/sha3_512/test125.input.bin new file mode 100644 index 00000000..78a544e8 --- /dev/null +++ b/sha3/tests/data/sha3_512/test125.input.bin @@ -0,0 +1,2 @@ +E\ziDtY=*t(ghFfnQhJÃ+;K]*RJh +pWF=<_+Ƨ0WjUۉVwG&{9P?S \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test125.output.bin b/sha3/tests/data/sha3_512/test125.output.bin new file mode 100644 index 00000000..d04f6ca6 Binary files /dev/null and b/sha3/tests/data/sha3_512/test125.output.bin differ diff --git a/sha3/tests/data/sha3_512/test126.input.bin b/sha3/tests/data/sha3_512/test126.input.bin new file mode 100644 index 00000000..71c98702 Binary files /dev/null and b/sha3/tests/data/sha3_512/test126.input.bin differ diff --git a/sha3/tests/data/sha3_512/test126.output.bin b/sha3/tests/data/sha3_512/test126.output.bin new file mode 100644 index 00000000..a29aece5 --- /dev/null +++ b/sha3/tests/data/sha3_512/test126.output.bin @@ -0,0 +1 @@ +YxNQ҉쳪ԏ1 g=R䜵m3Mm$=.0k> \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test127.input.bin b/sha3/tests/data/sha3_512/test127.input.bin new file mode 100644 index 00000000..dfddbc47 --- /dev/null +++ b/sha3/tests/data/sha3_512/test127.input.bin @@ -0,0 +1,4 @@ +/ŕ nc6?uu +a31(Lkv1[FC.0 ZR;k +nb +l]e,7iJtoFӲ&ޥS9:E¥-Ue \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test127.output.bin b/sha3/tests/data/sha3_512/test127.output.bin new file mode 100644 index 00000000..fe0a8f2c --- /dev/null +++ b/sha3/tests/data/sha3_512/test127.output.bin @@ -0,0 +1 @@ +3) LJ3Թi["U?vFjI{xGoclg# \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test128.input.bin b/sha3/tests/data/sha3_512/test128.input.bin new file mode 100644 index 00000000..6a853339 --- /dev/null +++ b/sha3/tests/data/sha3_512/test128.input.bin @@ -0,0 +1,2 @@ ++mf^!&|m2A)6+]/h +rQu#L(cf!TV_[F;F s%mni3NV'h_ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test128.output.bin b/sha3/tests/data/sha3_512/test128.output.bin new file mode 100644 index 00000000..098cb2d3 --- /dev/null +++ b/sha3/tests/data/sha3_512/test128.output.bin @@ -0,0 +1 @@ +OEkF(XТԿv]7e?rΊ_{L[SZQ0^i"(NTy  \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test129.input.bin b/sha3/tests/data/sha3_512/test129.input.bin new file mode 100644 index 00000000..0169cf31 --- /dev/null +++ b/sha3/tests/data/sha3_512/test129.input.bin @@ -0,0 +1,2 @@ +P,ܫb3Hj)ử +'41DYH"=R{K&Bִ%y* +ʵb a \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test130.output.bin b/sha3/tests/data/sha3_512/test130.output.bin new file mode 100644 index 00000000..c489291e --- /dev/null +++ b/sha3/tests/data/sha3_512/test130.output.bin @@ -0,0 +1 @@ +ӎ. *u<;1aEϸ=2Zb_%ڛ\l *ŋ[P{&?0T8Q #ݴЇn5S6:-閸^p6tx*~Zp8m;'tS[^Q}_{"aK=)7-8WR|ݪX \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test134.output.bin b/sha3/tests/data/sha3_512/test134.output.bin new file mode 100644 index 00000000..77464a46 --- /dev/null +++ b/sha3/tests/data/sha3_512/test134.output.bin @@ -0,0 +1 @@ +A-(cU`SDAi<ĩ8؇awt;WvVBRRɷrɵ0 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test135.input.bin b/sha3/tests/data/sha3_512/test135.input.bin new file mode 100644 index 00000000..d1749286 --- /dev/null +++ b/sha3/tests/data/sha3_512/test135.input.bin @@ -0,0 +1 @@ +qѤVC*.M/ !G2:`@gsKqxܞ9w`!qyz4Q()]7Uyoo؉kI2|q+$-R2,t AF]v=RۘIӰ֨/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test135.output.bin b/sha3/tests/data/sha3_512/test135.output.bin new file mode 100644 index 00000000..d623f934 --- /dev/null +++ b/sha3/tests/data/sha3_512/test135.output.bin @@ -0,0 +1 @@ +uuOɨFkxigs-N2Yђ~D݃5'3ڭ FHgt_ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test136.input.bin b/sha3/tests/data/sha3_512/test136.input.bin new file mode 100644 index 00000000..1ef8a0e9 Binary files /dev/null and b/sha3/tests/data/sha3_512/test136.input.bin differ diff --git a/sha3/tests/data/sha3_512/test136.output.bin b/sha3/tests/data/sha3_512/test136.output.bin new file mode 100644 index 00000000..3d4b4b49 --- /dev/null +++ b/sha3/tests/data/sha3_512/test136.output.bin @@ -0,0 +1 @@ +.)7e-HlT~LrZ^;z@9w^4^* \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test137.input.bin b/sha3/tests/data/sha3_512/test137.input.bin new file mode 100644 index 00000000..5adeaf84 Binary files /dev/null and b/sha3/tests/data/sha3_512/test137.input.bin differ diff --git a/sha3/tests/data/sha3_512/test137.output.bin b/sha3/tests/data/sha3_512/test137.output.bin new file mode 100644 index 00000000..580925f7 --- /dev/null +++ b/sha3/tests/data/sha3_512/test137.output.bin @@ -0,0 +1 @@ +uSɷ_mޚ{l@G@AރԦE&ׯ{t,i}X[Nf \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test138.input.bin b/sha3/tests/data/sha3_512/test138.input.bin new file mode 100644 index 00000000..79b46f4d --- /dev/null +++ b/sha3/tests/data/sha3_512/test138.input.bin @@ -0,0 +1 @@ +&Mp$=!Iqadp`؂a]A8V@wxnUhU2pG-ы~+~ 3lN"\;#)nO(-I_|iu },lF)ps  \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test138.output.bin b/sha3/tests/data/sha3_512/test138.output.bin new file mode 100644 index 00000000..d6d4eb8f Binary files /dev/null and b/sha3/tests/data/sha3_512/test138.output.bin differ diff --git a/sha3/tests/data/sha3_512/test139.input.bin b/sha3/tests/data/sha3_512/test139.input.bin new file mode 100644 index 00000000..9634578b --- /dev/null +++ b/sha3/tests/data/sha3_512/test139.input.bin @@ -0,0 +1 @@ +n$ff"k2웩O ÙA¥Й'b49bS|('sekn J78j0wHi\*v %w?Ul6-Kt,,IꎗO30e \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test139.output.bin b/sha3/tests/data/sha3_512/test139.output.bin new file mode 100644 index 00000000..9675199a --- /dev/null +++ b/sha3/tests/data/sha3_512/test139.output.bin @@ -0,0 +1 @@ +XB,0*Ϯp"bpFb erqAny(`i! Cfʩ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test14.input.bin b/sha3/tests/data/sha3_512/test14.input.bin new file mode 100644 index 00000000..49ce179d --- /dev/null +++ b/sha3/tests/data/sha3_512/test14.input.bin @@ -0,0 +1 @@ +4wƲU7j¡jbWp|D)nm3 [`7x8<<"3^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test140.output.bin b/sha3/tests/data/sha3_512/test140.output.bin new file mode 100644 index 00000000..97492c88 --- /dev/null +++ b/sha3/tests/data/sha3_512/test140.output.bin @@ -0,0 +1 @@ +E'L/S_x#“*%]O%Q\i bȭi0#[9Tf'c \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test141.input.bin b/sha3/tests/data/sha3_512/test141.input.bin new file mode 100644 index 00000000..bc838d1f --- /dev/null +++ b/sha3/tests/data/sha3_512/test141.input.bin @@ -0,0 +1 @@ +!g!b>GaRNlrU)hs`zy|< %ƈPꫮFyY&\#J?46L/\tHpb$m_U*TFO- tH0C") \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test141.output.bin b/sha3/tests/data/sha3_512/test141.output.bin new file mode 100644 index 00000000..0f7ff7cc Binary files /dev/null and b/sha3/tests/data/sha3_512/test141.output.bin differ diff --git a/sha3/tests/data/sha3_512/test142.input.bin b/sha3/tests/data/sha3_512/test142.input.bin new file mode 100644 index 00000000..c63256ae --- /dev/null +++ b/sha3/tests/data/sha3_512/test142.input.bin @@ -0,0 +1,2 @@ + NvG WO@vgOihM 6} q365 )zZ\At[ɻLZA\y~c8ׁjTZo +[l3fYBCh \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test142.output.bin b/sha3/tests/data/sha3_512/test142.output.bin new file mode 100644 index 00000000..6607402c --- /dev/null +++ b/sha3/tests/data/sha3_512/test142.output.bin @@ -0,0 +1,2 @@ +ixKD\fFb} W-!fsɈq!,P}ob +p-7 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test143.input.bin b/sha3/tests/data/sha3_512/test143.input.bin new file mode 100644 index 00000000..4eb647e3 --- /dev/null +++ b/sha3/tests/data/sha3_512/test143.input.bin @@ -0,0 +1 @@ +@<:$,l xS9ڲi8\v7B;T}6|k<x357[oơOPLri r,lgc@ay6=\ߓ?$K͍~f߯ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test143.output.bin b/sha3/tests/data/sha3_512/test143.output.bin new file mode 100644 index 00000000..4cb5d7fb --- /dev/null +++ b/sha3/tests/data/sha3_512/test143.output.bin @@ -0,0 +1 @@ +:EwEe٦`Ua]bȾSŦH{]*91dF/4MԼ.S, \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test145.input.bin b/sha3/tests/data/sha3_512/test145.input.bin new file mode 100644 index 00000000..1c99aebc --- /dev/null +++ b/sha3/tests/data/sha3_512/test145.input.bin @@ -0,0 +1,2 @@ +k4Goa?G pU`ҷ+جS!gFmXig* +ՇH以RdWyxS@2UNHHؑWY׭$-Wgv29W&U*Y۳LJSpLS \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test145.output.bin b/sha3/tests/data/sha3_512/test145.output.bin new file mode 100644 index 00000000..d9ce0ac8 --- /dev/null +++ b/sha3/tests/data/sha3_512/test145.output.bin @@ -0,0 +1 @@ +nU!; ""BaOJJ6B?0Sj͟#KJJ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test146.input.bin b/sha3/tests/data/sha3_512/test146.input.bin new file mode 100644 index 00000000..9950b95c Binary files /dev/null and b/sha3/tests/data/sha3_512/test146.input.bin differ diff --git a/sha3/tests/data/sha3_512/test146.output.bin b/sha3/tests/data/sha3_512/test146.output.bin new file mode 100644 index 00000000..cab7ee39 Binary files /dev/null and b/sha3/tests/data/sha3_512/test146.output.bin differ diff --git a/sha3/tests/data/sha3_512/test147.input.bin b/sha3/tests/data/sha3_512/test147.input.bin new file mode 100644 index 00000000..800598b4 --- /dev/null +++ b/sha3/tests/data/sha3_512/test147.input.bin @@ -0,0 +1 @@ +v9apEZѯx)D~kú&@Ow_W#}4s#p-pVݣmZZLh2ȿy ]_[~({C^B7KUK;j*P!S \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test147.output.bin b/sha3/tests/data/sha3_512/test147.output.bin new file mode 100644 index 00000000..2b9bf20d --- /dev/null +++ b/sha3/tests/data/sha3_512/test147.output.bin @@ -0,0 +1 @@ +P*.aӥ*eџ0)rqzwQfPD^ MAWAWkNS'biS/X \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test148.input.bin b/sha3/tests/data/sha3_512/test148.input.bin new file mode 100644 index 00000000..277902c8 --- /dev/null +++ b/sha3/tests/data/sha3_512/test148.input.bin @@ -0,0 +1,2 @@ +ea M~MX.hIY X=X^x + lHC^.٫K祫yz^[ݣAe|仴NV7N nq/Tp28cks=;oN#uɹo& \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test148.output.bin b/sha3/tests/data/sha3_512/test148.output.bin new file mode 100644 index 00000000..a1e4b1aa --- /dev/null +++ b/sha3/tests/data/sha3_512/test148.output.bin @@ -0,0 +1 @@ +x(MnM'vGMP',k X\}W!ZuB \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test149.input.bin b/sha3/tests/data/sha3_512/test149.input.bin new file mode 100644 index 00000000..3f36959a --- /dev/null +++ b/sha3/tests/data/sha3_512/test149.input.bin @@ -0,0 +1 @@ +KD&]LrLb-4kClM`O)n}`RrO OQԿzelToQmb?'oϴNFÜ4BRF/#Hky:!e78+yD; \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test149.output.bin b/sha3/tests/data/sha3_512/test149.output.bin new file mode 100644 index 00000000..5cc7299d --- /dev/null +++ b/sha3/tests/data/sha3_512/test149.output.bin @@ -0,0 +1 @@ +BNKIF֦6nGUTUBHRz@W VsV"Qrͮ% \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test15.input.bin b/sha3/tests/data/sha3_512/test15.input.bin new file mode 100644 index 00000000..84983066 --- /dev/null +++ b/sha3/tests/data/sha3_512/test15.input.bin @@ -0,0 +1 @@ +"Ky" \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test15.output.bin b/sha3/tests/data/sha3_512/test15.output.bin new file mode 100644 index 00000000..67f22a81 Binary files /dev/null and b/sha3/tests/data/sha3_512/test15.output.bin differ diff --git a/sha3/tests/data/sha3_512/test150.input.bin b/sha3/tests/data/sha3_512/test150.input.bin new file mode 100644 index 00000000..a3a69849 Binary files /dev/null and b/sha3/tests/data/sha3_512/test150.input.bin differ diff --git a/sha3/tests/data/sha3_512/test150.output.bin b/sha3/tests/data/sha3_512/test150.output.bin new file mode 100644 index 00000000..26e3cd27 --- /dev/null +++ b/sha3/tests/data/sha3_512/test150.output.bin @@ -0,0 +1 @@ + rs8O?bM>05 3SaV:#-7w!]OG:DSl \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test151.input.bin b/sha3/tests/data/sha3_512/test151.input.bin new file mode 100644 index 00000000..da338b71 --- /dev/null +++ b/sha3/tests/data/sha3_512/test151.input.bin @@ -0,0 +1 @@ +\,yf/j֖|2ns fq]nĞpѠe$ev˞+쑏m C7'ɩ;lۨVTjPgzx)Ԕ~{ m72MRDoTܣ9)qnH \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test151.output.bin b/sha3/tests/data/sha3_512/test151.output.bin new file mode 100644 index 00000000..fce9c504 --- /dev/null +++ b/sha3/tests/data/sha3_512/test151.output.bin @@ -0,0 +1 @@ +xŚMk-\ʿ~5v#"I⸀d\pܚOx_A \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test152.input.bin b/sha3/tests/data/sha3_512/test152.input.bin new file mode 100644 index 00000000..83c5bb98 Binary files /dev/null and b/sha3/tests/data/sha3_512/test152.input.bin differ diff --git a/sha3/tests/data/sha3_512/test152.output.bin b/sha3/tests/data/sha3_512/test152.output.bin new file mode 100644 index 00000000..f817cdcb --- /dev/null +++ b/sha3/tests/data/sha3_512/test152.output.bin @@ -0,0 +1 @@ +MRrM6swR^\Lx]-ٸ<8+jxYx51u- \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test153.input.bin b/sha3/tests/data/sha3_512/test153.input.bin new file mode 100644 index 00000000..42d81f91 Binary files /dev/null and b/sha3/tests/data/sha3_512/test153.input.bin differ diff --git a/sha3/tests/data/sha3_512/test153.output.bin b/sha3/tests/data/sha3_512/test153.output.bin new file mode 100644 index 00000000..c8760c34 --- /dev/null +++ b/sha3/tests/data/sha3_512/test153.output.bin @@ -0,0 +1 @@ +324(H!+Wؒ WěrP6x"@˺] \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test154.input.bin b/sha3/tests/data/sha3_512/test154.input.bin new file mode 100644 index 00000000..3021be05 Binary files /dev/null and b/sha3/tests/data/sha3_512/test154.input.bin differ diff --git a/sha3/tests/data/sha3_512/test154.output.bin b/sha3/tests/data/sha3_512/test154.output.bin new file mode 100644 index 00000000..9a3f84d0 --- /dev/null +++ b/sha3/tests/data/sha3_512/test154.output.bin @@ -0,0 +1,3 @@ +Lp?\$cΌ +0S0.+G5/Z=;WN +x( \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test155.input.bin b/sha3/tests/data/sha3_512/test155.input.bin new file mode 100644 index 00000000..b111e4ed Binary files /dev/null and b/sha3/tests/data/sha3_512/test155.input.bin differ diff --git a/sha3/tests/data/sha3_512/test155.output.bin b/sha3/tests/data/sha3_512/test155.output.bin new file mode 100644 index 00000000..27151260 --- /dev/null +++ b/sha3/tests/data/sha3_512/test155.output.bin @@ -0,0 +1 @@ +7/^\54Q"O*YϑcY&`)Ha]з(foWm I-9Vs \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test156.output.bin b/sha3/tests/data/sha3_512/test156.output.bin new file mode 100644 index 00000000..91b13b21 Binary files /dev/null and b/sha3/tests/data/sha3_512/test156.output.bin differ diff --git a/sha3/tests/data/sha3_512/test157.input.bin b/sha3/tests/data/sha3_512/test157.input.bin new file mode 100644 index 00000000..5a689a41 Binary files /dev/null and b/sha3/tests/data/sha3_512/test157.input.bin differ diff --git a/sha3/tests/data/sha3_512/test157.output.bin b/sha3/tests/data/sha3_512/test157.output.bin new file mode 100644 index 00000000..80aeff7b --- /dev/null +++ b/sha3/tests/data/sha3_512/test157.output.bin @@ -0,0 +1 @@ +ڍId@p% $>.[, hQIR%F =;N$` |y+J \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test158.input.bin b/sha3/tests/data/sha3_512/test158.input.bin new file mode 100644 index 00000000..37bfee39 Binary files /dev/null and b/sha3/tests/data/sha3_512/test158.input.bin differ diff --git a/sha3/tests/data/sha3_512/test158.output.bin b/sha3/tests/data/sha3_512/test158.output.bin new file mode 100644 index 00000000..3ef530e9 --- /dev/null +++ b/sha3/tests/data/sha3_512/test158.output.bin @@ -0,0 +1,3 @@ +٤'anj6T { +bNΡIzN +cv /.::jГhrdkIa܁ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test159.input.bin b/sha3/tests/data/sha3_512/test159.input.bin new file mode 100644 index 00000000..e6f39601 Binary files /dev/null and b/sha3/tests/data/sha3_512/test159.input.bin differ diff --git a/sha3/tests/data/sha3_512/test159.output.bin b/sha3/tests/data/sha3_512/test159.output.bin new file mode 100644 index 00000000..d9a5ef07 --- /dev/null +++ b/sha3/tests/data/sha3_512/test159.output.bin @@ -0,0 +1 @@ +eؔ4ZUuTjP>̂]q26%~ ̪A%t;g1O$ğJpak8_ѻI78S0U=ZU̻=pO)+FQU|̀aMw!kHdY'A:, GzoTQ)*F L \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test161.output.bin b/sha3/tests/data/sha3_512/test161.output.bin new file mode 100644 index 00000000..2450dbb9 --- /dev/null +++ b/sha3/tests/data/sha3_512/test161.output.bin @@ -0,0 +1 @@ +.Jۜ:L_uʪVnҩM'l?p:+[ї =4i*g' \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test162.input.bin b/sha3/tests/data/sha3_512/test162.input.bin new file mode 100644 index 00000000..b7d86900 Binary files /dev/null and b/sha3/tests/data/sha3_512/test162.input.bin differ diff --git a/sha3/tests/data/sha3_512/test162.output.bin b/sha3/tests/data/sha3_512/test162.output.bin new file mode 100644 index 00000000..4dfb2ae3 --- /dev/null +++ b/sha3/tests/data/sha3_512/test162.output.bin @@ -0,0 +1,2 @@ +n{-,`,SLiƗx)xUAX2#\KnNc +E@bo3Cr% \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test163.input.bin b/sha3/tests/data/sha3_512/test163.input.bin new file mode 100644 index 00000000..6a3e8166 Binary files /dev/null and b/sha3/tests/data/sha3_512/test163.input.bin differ diff --git a/sha3/tests/data/sha3_512/test163.output.bin b/sha3/tests/data/sha3_512/test163.output.bin new file mode 100644 index 00000000..bd0dea41 --- /dev/null +++ b/sha3/tests/data/sha3_512/test163.output.bin @@ -0,0 +1 @@ + *kByZm>v&w\%(9|K$QGOHZeq.a \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test164.input.bin b/sha3/tests/data/sha3_512/test164.input.bin new file mode 100644 index 00000000..42ab3064 Binary files /dev/null and b/sha3/tests/data/sha3_512/test164.input.bin differ diff --git a/sha3/tests/data/sha3_512/test164.output.bin b/sha3/tests/data/sha3_512/test164.output.bin new file mode 100644 index 00000000..3bcc06ab --- /dev/null +++ b/sha3/tests/data/sha3_512/test164.output.bin @@ -0,0 +1 @@ +(Y_8YBue頭d},~]Wm]њ1 wY2FM>ˊ\ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test165.input.bin b/sha3/tests/data/sha3_512/test165.input.bin new file mode 100644 index 00000000..8b4dcb7b --- /dev/null +++ b/sha3/tests/data/sha3_512/test165.input.bin @@ -0,0 +1 @@ +υbؘ}گ=FEn#&͵?h]Yn:ae50MjK^+z`vq2-[ܻ-dIm̒Z#O$ XQQa^`_i=UJϮiH )u@׈5M1b@௓ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test165.output.bin b/sha3/tests/data/sha3_512/test165.output.bin new file mode 100644 index 00000000..eea26222 --- /dev/null +++ b/sha3/tests/data/sha3_512/test165.output.bin @@ -0,0 +1,2 @@ +T^S! +u(4Pet N2HOY @O."T@)Q`[~ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test166.input.bin b/sha3/tests/data/sha3_512/test166.input.bin new file mode 100644 index 00000000..83e7dec4 --- /dev/null +++ b/sha3/tests/data/sha3_512/test166.input.bin @@ -0,0 +1 @@ +*1&yD^Y]5Ln`_܄pB?033Ĥ2gʮOGF ~0a 'Fc>)[jL#dU{. #qRC]d*Ņ?h6y&z,~eo-;l4U| ظNgu \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test166.output.bin b/sha3/tests/data/sha3_512/test166.output.bin new file mode 100644 index 00000000..5a08d53f --- /dev/null +++ b/sha3/tests/data/sha3_512/test166.output.bin @@ -0,0 +1,2 @@ +l> sV$9论f +0g;U@nԁ'NJ=!v}g\(Rgho!BW L%C^4 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test17.input.bin b/sha3/tests/data/sha3_512/test17.input.bin new file mode 100644 index 00000000..1868db3a --- /dev/null +++ b/sha3/tests/data/sha3_512/test17.input.bin @@ -0,0 +1 @@ +=.R~ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test17.output.bin b/sha3/tests/data/sha3_512/test17.output.bin new file mode 100644 index 00000000..7cd398de --- /dev/null +++ b/sha3/tests/data/sha3_512/test17.output.bin @@ -0,0 +1 @@ +D g!$m=3`2 uы"՟c}ZUp˥7 )ߢ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test170.input.bin b/sha3/tests/data/sha3_512/test170.input.bin new file mode 100644 index 00000000..b2695ced Binary files /dev/null and b/sha3/tests/data/sha3_512/test170.input.bin differ diff --git a/sha3/tests/data/sha3_512/test170.output.bin b/sha3/tests/data/sha3_512/test170.output.bin new file mode 100644 index 00000000..bd8e7ebb --- /dev/null +++ b/sha3/tests/data/sha3_512/test170.output.bin @@ -0,0 +1 @@ +l=(c,d4 ͸J k_ flō*h]ULAЃm{=}Ĕ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test171.input.bin b/sha3/tests/data/sha3_512/test171.input.bin new file mode 100644 index 00000000..0bed356d Binary files /dev/null and b/sha3/tests/data/sha3_512/test171.input.bin differ diff --git a/sha3/tests/data/sha3_512/test171.output.bin b/sha3/tests/data/sha3_512/test171.output.bin new file mode 100644 index 00000000..c511bd86 --- /dev/null +++ b/sha3/tests/data/sha3_512/test171.output.bin @@ -0,0 +1 @@ + Bd%< Sh\6yڎ0bu4|Cڼ)| |~v]u \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test172.input.bin b/sha3/tests/data/sha3_512/test172.input.bin new file mode 100644 index 00000000..2f94c433 Binary files /dev/null and b/sha3/tests/data/sha3_512/test172.input.bin differ diff --git a/sha3/tests/data/sha3_512/test172.output.bin b/sha3/tests/data/sha3_512/test172.output.bin new file mode 100644 index 00000000..b3f7a88e --- /dev/null +++ b/sha3/tests/data/sha3_512/test172.output.bin @@ -0,0 +1 @@ +pAHTcNux@"6cIX//-ߢ%?6 qNb+iu_: \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test173.input.bin b/sha3/tests/data/sha3_512/test173.input.bin new file mode 100644 index 00000000..e7197248 --- /dev/null +++ b/sha3/tests/data/sha3_512/test173.input.bin @@ -0,0 +1 @@ + { 4k9˭Ig׭هow MH75p\$*CqoNmVk3dIف M۽7`T՝Ew8A?-oRzJU1PO ha$\KReT֪cH9) \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test173.output.bin b/sha3/tests/data/sha3_512/test173.output.bin new file mode 100644 index 00000000..13224e42 --- /dev/null +++ b/sha3/tests/data/sha3_512/test173.output.bin @@ -0,0 +1,2 @@ +mP~y*](9p>e +k+.h~1-)>ɣ>uL \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test174.input.bin b/sha3/tests/data/sha3_512/test174.input.bin new file mode 100644 index 00000000..cf11b984 Binary files /dev/null and b/sha3/tests/data/sha3_512/test174.input.bin differ diff --git a/sha3/tests/data/sha3_512/test174.output.bin b/sha3/tests/data/sha3_512/test174.output.bin new file mode 100644 index 00000000..aafe689a --- /dev/null +++ b/sha3/tests/data/sha3_512/test174.output.bin @@ -0,0 +1 @@ +LɦDq+b6Znj*x"Ʋ9b5cq.q8=r-9V nI \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test175.input.bin b/sha3/tests/data/sha3_512/test175.input.bin new file mode 100644 index 00000000..a8a0c682 Binary files /dev/null and b/sha3/tests/data/sha3_512/test175.input.bin differ diff --git a/sha3/tests/data/sha3_512/test175.output.bin b/sha3/tests/data/sha3_512/test175.output.bin new file mode 100644 index 00000000..f80ab2c4 --- /dev/null +++ b/sha3/tests/data/sha3_512/test175.output.bin @@ -0,0 +1 @@ +nkZ`_ k}\fLưFOM1ZyEkl?؞`9 G,wpbE \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test176.input.bin b/sha3/tests/data/sha3_512/test176.input.bin new file mode 100644 index 00000000..1f944269 --- /dev/null +++ b/sha3/tests/data/sha3_512/test176.input.bin @@ -0,0 +1,2 @@ +dj2\s/0/!yG@C TMkF2= +u[P_ 焼^r%wSd.#he\=QȒݠS~f P`?o[=8@ܛQb@j\ßMeգ [:)VX;X͔pҘw`` \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test176.output.bin b/sha3/tests/data/sha3_512/test176.output.bin new file mode 100644 index 00000000..86f019e5 --- /dev/null +++ b/sha3/tests/data/sha3_512/test176.output.bin @@ -0,0 +1 @@ +ˏb-p\4Vߚ#xI YR Sޘv;O_q%%ڨ#J \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test177.input.bin b/sha3/tests/data/sha3_512/test177.input.bin new file mode 100644 index 00000000..13c4fd0a --- /dev/null +++ b/sha3/tests/data/sha3_512/test177.input.bin @@ -0,0 +1 @@ +˾gJWGKL~/Urq5u*E1b/YpA:WgxAj0Syܲҕ^ h* -fEA:fq6YNV&JcPlSv!j2: \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test177.output.bin b/sha3/tests/data/sha3_512/test177.output.bin new file mode 100644 index 00000000..db2674f1 --- /dev/null +++ b/sha3/tests/data/sha3_512/test177.output.bin @@ -0,0 +1 @@ +Q4-՗eA}Wg{He[H;:IJIvQv}V.3| \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test178.input.bin b/sha3/tests/data/sha3_512/test178.input.bin new file mode 100644 index 00000000..5d1ef4da Binary files /dev/null and b/sha3/tests/data/sha3_512/test178.input.bin differ diff --git a/sha3/tests/data/sha3_512/test178.output.bin b/sha3/tests/data/sha3_512/test178.output.bin new file mode 100644 index 00000000..a726114c --- /dev/null +++ b/sha3/tests/data/sha3_512/test178.output.bin @@ -0,0 +1 @@ + LJsBp x9|h:e|ퟍ,r&.`/Ų~ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test179.input.bin b/sha3/tests/data/sha3_512/test179.input.bin new file mode 100644 index 00000000..13f88f9c --- /dev/null +++ b/sha3/tests/data/sha3_512/test179.input.bin @@ -0,0 +1,2 @@ +:~Qer ߷}vGT&ߪ{P\v5 d2ؿ_  xu,ێRZ΄% B׃N9`t/C};.*wj +RR0 2J MGj/ HCŅE5+7@jy*od \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test179.output.bin b/sha3/tests/data/sha3_512/test179.output.bin new file mode 100644 index 00000000..ad4d4382 --- /dev/null +++ b/sha3/tests/data/sha3_512/test179.output.bin @@ -0,0 +1,2 @@ + +] בw LITG#qÂEe7xq,s3"etbB \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test18.input.bin b/sha3/tests/data/sha3_512/test18.input.bin new file mode 100644 index 00000000..31b8f4fa --- /dev/null +++ b/sha3/tests/data/sha3_512/test18.input.bin @@ -0,0 +1 @@ +uh=Ua@"T; ! \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test18.output.bin b/sha3/tests/data/sha3_512/test18.output.bin new file mode 100644 index 00000000..c49c6a48 --- /dev/null +++ b/sha3/tests/data/sha3_512/test18.output.bin @@ -0,0 +1 @@ +G9CrJ 7qSޚ+8zl`=ܰc|z""Y,W@ P[ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test180.input.bin b/sha3/tests/data/sha3_512/test180.input.bin new file mode 100644 index 00000000..21185a19 Binary files /dev/null and b/sha3/tests/data/sha3_512/test180.input.bin differ diff --git a/sha3/tests/data/sha3_512/test180.output.bin b/sha3/tests/data/sha3_512/test180.output.bin new file mode 100644 index 00000000..c35ce098 --- /dev/null +++ b/sha3/tests/data/sha3_512/test180.output.bin @@ -0,0 +1 @@ +ޚWpnƏ~3L뷚<%@XTAd*[}`1SU3z{ yO֒?z \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test181.input.bin b/sha3/tests/data/sha3_512/test181.input.bin new file mode 100644 index 00000000..4d216972 --- /dev/null +++ b/sha3/tests/data/sha3_512/test181.input.bin @@ -0,0 +1 @@ +WnR 0 ^5ECB=O睖cr)EWű1RhN.+_ΙepT^t|X#[4"Og 3_o]ÔoDӯˮ.AUMgY2k$H-ԓo><69~t8ZELG{ m^/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test181.output.bin b/sha3/tests/data/sha3_512/test181.output.bin new file mode 100644 index 00000000..fd132bc3 --- /dev/null +++ b/sha3/tests/data/sha3_512/test181.output.bin @@ -0,0 +1 @@ +fQ]3 rS_j.PTH|cC1tN}e{Tưu hr \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test182.input.bin b/sha3/tests/data/sha3_512/test182.input.bin new file mode 100644 index 00000000..765853e5 Binary files /dev/null and b/sha3/tests/data/sha3_512/test182.input.bin differ diff --git a/sha3/tests/data/sha3_512/test182.output.bin b/sha3/tests/data/sha3_512/test182.output.bin new file mode 100644 index 00000000..dff2235d --- /dev/null +++ b/sha3/tests/data/sha3_512/test182.output.bin @@ -0,0 +1 @@ +Te"G(\݊\iO^Їn,?:I8F*[9B \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test183.input.bin b/sha3/tests/data/sha3_512/test183.input.bin new file mode 100644 index 00000000..e67c2c3b Binary files /dev/null and b/sha3/tests/data/sha3_512/test183.input.bin differ diff --git a/sha3/tests/data/sha3_512/test183.output.bin b/sha3/tests/data/sha3_512/test183.output.bin new file mode 100644 index 00000000..be024e7d Binary files /dev/null and b/sha3/tests/data/sha3_512/test183.output.bin differ diff --git a/sha3/tests/data/sha3_512/test184.input.bin b/sha3/tests/data/sha3_512/test184.input.bin new file mode 100644 index 00000000..6b3f4c0a Binary files /dev/null and b/sha3/tests/data/sha3_512/test184.input.bin differ diff --git a/sha3/tests/data/sha3_512/test184.output.bin b/sha3/tests/data/sha3_512/test184.output.bin new file mode 100644 index 00000000..80118512 --- /dev/null +++ b/sha3/tests/data/sha3_512/test184.output.bin @@ -0,0 +1 @@ +C̬zC{NܘFO$Q0EΒl[6u1"~UJ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test185.input.bin b/sha3/tests/data/sha3_512/test185.input.bin new file mode 100644 index 00000000..b0e30563 Binary files /dev/null and b/sha3/tests/data/sha3_512/test185.input.bin differ diff --git a/sha3/tests/data/sha3_512/test185.output.bin b/sha3/tests/data/sha3_512/test185.output.bin new file mode 100644 index 00000000..930b271d --- /dev/null +++ b/sha3/tests/data/sha3_512/test185.output.bin @@ -0,0 +1 @@ +940qVxk/{$}giK߰Sp1 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test186.input.bin b/sha3/tests/data/sha3_512/test186.input.bin new file mode 100644 index 00000000..4b5bf01f --- /dev/null +++ b/sha3/tests/data/sha3_512/test186.input.bin @@ -0,0 +1 @@ +du ͘;e2,Eɸ;*Z"hXn'(WѢН _"ß^nJLmH?9s~<8f\&<tYcƻ=4[hG}cW U6KUq0~г7Nn: \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test186.output.bin b/sha3/tests/data/sha3_512/test186.output.bin new file mode 100644 index 00000000..8b441a38 --- /dev/null +++ b/sha3/tests/data/sha3_512/test186.output.bin @@ -0,0 +1 @@ +XIyxmbzǠ;pe'!NC Z{ ˀa,{2 Y2>B \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test187.input.bin b/sha3/tests/data/sha3_512/test187.input.bin new file mode 100644 index 00000000..05e7d072 --- /dev/null +++ b/sha3/tests/data/sha3_512/test187.input.bin @@ -0,0 +1,3 @@ +hus/rZhŪ1I>vR]=3ν!&jo~ Wy +oXye$fwS9r]2dRA_2xWj*X|)SրE6@~=\@Oo%"ȶ3 W $uk hTMQ +x^: \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test187.output.bin b/sha3/tests/data/sha3_512/test187.output.bin new file mode 100644 index 00000000..59c7f4ad --- /dev/null +++ b/sha3/tests/data/sha3_512/test187.output.bin @@ -0,0 +1 @@ +5(`BbH"+.+L4~!;-JHtjc~)@7E \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test188.input.bin b/sha3/tests/data/sha3_512/test188.input.bin new file mode 100644 index 00000000..2fb1cb98 Binary files /dev/null and b/sha3/tests/data/sha3_512/test188.input.bin differ diff --git a/sha3/tests/data/sha3_512/test188.output.bin b/sha3/tests/data/sha3_512/test188.output.bin new file mode 100644 index 00000000..67f87d74 --- /dev/null +++ b/sha3/tests/data/sha3_512/test188.output.bin @@ -0,0 +1 @@ + ƼS,O-Q9P*ADV{uv݌ҽEc| au5' \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test189.input.bin b/sha3/tests/data/sha3_512/test189.input.bin new file mode 100644 index 00000000..9b570e95 --- /dev/null +++ b/sha3/tests/data/sha3_512/test189.input.bin @@ -0,0 +1 @@ +SJ$qKԾ7Ȋ=.|T ׽g Z5YDc)1쪟g]5&i^؝ӌ,vΞYt2顾,qFAiъz!Ȱq^,T brêM-t,Ӡi =׳*Ђ` \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test19.input.bin b/sha3/tests/data/sha3_512/test19.input.bin new file mode 100644 index 00000000..f825277c --- /dev/null +++ b/sha3/tests/data/sha3_512/test19.input.bin @@ -0,0 +1 @@ +P5({Mʗ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test19.output.bin b/sha3/tests/data/sha3_512/test19.output.bin new file mode 100644 index 00000000..e62bdd9e --- /dev/null +++ b/sha3/tests/data/sha3_512/test19.output.bin @@ -0,0 +1 @@ +ie'q,(͡>SfxcT× Q%o[ Z\zMdLuW \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test190.input.bin b/sha3/tests/data/sha3_512/test190.input.bin new file mode 100644 index 00000000..fabb738c Binary files /dev/null and b/sha3/tests/data/sha3_512/test190.input.bin differ diff --git a/sha3/tests/data/sha3_512/test190.output.bin b/sha3/tests/data/sha3_512/test190.output.bin new file mode 100644 index 00000000..dcc89c79 --- /dev/null +++ b/sha3/tests/data/sha3_512/test190.output.bin @@ -0,0 +1,2 @@ +ɂe9o2xS!%Зſ72&>dBA0V!qLT +MӇ~7]ђ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test191.input.bin b/sha3/tests/data/sha3_512/test191.input.bin new file mode 100644 index 00000000..179b26ff Binary files /dev/null and b/sha3/tests/data/sha3_512/test191.input.bin differ diff --git a/sha3/tests/data/sha3_512/test191.output.bin b/sha3/tests/data/sha3_512/test191.output.bin new file mode 100644 index 00000000..efedf463 --- /dev/null +++ b/sha3/tests/data/sha3_512/test191.output.bin @@ -0,0 +1 @@ +:^P&a?#& 9樲)|Qx5a$q^ c7Syxv"F4oU4r^s|{jmGtrF}{+#P|Q},J \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test196.output.bin b/sha3/tests/data/sha3_512/test196.output.bin new file mode 100644 index 00000000..36c710b1 --- /dev/null +++ b/sha3/tests/data/sha3_512/test196.output.bin @@ -0,0 +1 @@ +*]$_k'( {,cEe^|J-]١g'}? \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test197.input.bin b/sha3/tests/data/sha3_512/test197.input.bin new file mode 100644 index 00000000..fd28078b --- /dev/null +++ b/sha3/tests/data/sha3_512/test197.input.bin @@ -0,0 +1,2 @@ +שC:;Jz:^4WmmS -1p a(3OCס՜~kdoj5(YϹF +wR*\֬nabf~ S!eU͏4ݛqoG k"P<&Uwa*؋jg(hg!stY){2;ηa":Up^Drܪ7# 5\b \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test197.output.bin b/sha3/tests/data/sha3_512/test197.output.bin new file mode 100644 index 00000000..76c567ec --- /dev/null +++ b/sha3/tests/data/sha3_512/test197.output.bin @@ -0,0 +1,2 @@ +Сa{~0¨^˳%ՉC./$틯 +UlhM"BKO71F1G;?4 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test198.input.bin b/sha3/tests/data/sha3_512/test198.input.bin new file mode 100644 index 00000000..6044629d --- /dev/null +++ b/sha3/tests/data/sha3_512/test198.input.bin @@ -0,0 +1 @@ +p 'zrw|NC&hЙebVs6hzfyݝz3A:\"[!{_G2~9&-@C0;{^*ݦHYK X㐑汈)J$^a`Xv9u;%t6f#eA_6mTgCöW.@a&AI:ڐ# \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test198.output.bin b/sha3/tests/data/sha3_512/test198.output.bin new file mode 100644 index 00000000..e484d72c --- /dev/null +++ b/sha3/tests/data/sha3_512/test198.output.bin @@ -0,0 +1 @@ +x̚)Ѓ͹wL4_u^T^:p*=i@M"^cjGvP \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test199.input.bin b/sha3/tests/data/sha3_512/test199.input.bin new file mode 100644 index 00000000..25202dc5 Binary files /dev/null and b/sha3/tests/data/sha3_512/test199.input.bin differ diff --git a/sha3/tests/data/sha3_512/test199.output.bin b/sha3/tests/data/sha3_512/test199.output.bin new file mode 100644 index 00000000..774d3619 Binary files /dev/null and b/sha3/tests/data/sha3_512/test199.output.bin differ diff --git a/sha3/tests/data/sha3_512/test2.input.bin b/sha3/tests/data/sha3_512/test2.input.bin new file mode 100644 index 00000000..6037df8c --- /dev/null +++ b/sha3/tests/data/sha3_512/test2.input.bin @@ -0,0 +1 @@ +A \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test2.output.bin b/sha3/tests/data/sha3_512/test2.output.bin new file mode 100644 index 00000000..d85c4ea1 --- /dev/null +++ b/sha3/tests/data/sha3_512/test2.output.bin @@ -0,0 +1 @@ + (eTg ,Tn"hwzˋL ֐RV7n͚Lq9MYu'L>  \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test203.input.bin b/sha3/tests/data/sha3_512/test203.input.bin new file mode 100644 index 00000000..5a6287f2 Binary files /dev/null and b/sha3/tests/data/sha3_512/test203.input.bin differ diff --git a/sha3/tests/data/sha3_512/test203.output.bin b/sha3/tests/data/sha3_512/test203.output.bin new file mode 100644 index 00000000..c3bf2eb7 --- /dev/null +++ b/sha3/tests/data/sha3_512/test203.output.bin @@ -0,0 +1 @@ +EńVM 9ij5L^@ 07"7cna)!:m0lE! \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test204.input.bin b/sha3/tests/data/sha3_512/test204.input.bin new file mode 100644 index 00000000..77288138 Binary files /dev/null and b/sha3/tests/data/sha3_512/test204.input.bin differ diff --git a/sha3/tests/data/sha3_512/test204.output.bin b/sha3/tests/data/sha3_512/test204.output.bin new file mode 100644 index 00000000..02387b98 Binary files /dev/null and b/sha3/tests/data/sha3_512/test204.output.bin differ diff --git a/sha3/tests/data/sha3_512/test205.input.bin b/sha3/tests/data/sha3_512/test205.input.bin new file mode 100644 index 00000000..4bff8354 Binary files /dev/null and b/sha3/tests/data/sha3_512/test205.input.bin differ diff --git a/sha3/tests/data/sha3_512/test205.output.bin b/sha3/tests/data/sha3_512/test205.output.bin new file mode 100644 index 00000000..57cd0887 --- /dev/null +++ b/sha3/tests/data/sha3_512/test205.output.bin @@ -0,0 +1,2 @@ +q:!E%Qr*ǓM +(oX#j%͖ Mfe zIa.ShTHE \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test206.input.bin b/sha3/tests/data/sha3_512/test206.input.bin new file mode 100644 index 00000000..167543c1 --- /dev/null +++ b/sha3/tests/data/sha3_512/test206.input.bin @@ -0,0 +1,2 @@ +O>J\_+ңE4sn;  ޯRֺ1l3R7QⳜJIW~*?Zhh03⽫s&ֽ%FX +SvЗ禦>X`(Żչ27NB)η(x"ZbS#fJ4G YU?u) CU>ot"K \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test206.output.bin b/sha3/tests/data/sha3_512/test206.output.bin new file mode 100644 index 00000000..a5361bf1 --- /dev/null +++ b/sha3/tests/data/sha3_512/test206.output.bin @@ -0,0 +1 @@ +}wF?wt)*4D_AAǕf&y ESYN\! \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test207.input.bin b/sha3/tests/data/sha3_512/test207.input.bin new file mode 100644 index 00000000..c47ee536 --- /dev/null +++ b/sha3/tests/data/sha3_512/test207.input.bin @@ -0,0 +1,2 @@ +-s031(8<ʗNh@ Rk?JōГZ0Ė"ar.EWB C}t?+57]̞ߴ8Bᐤ<1c~W~`lM{c + :GkwxEM`lg)voLO'ޟ,;U~wl `2(8 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test207.output.bin b/sha3/tests/data/sha3_512/test207.output.bin new file mode 100644 index 00000000..eca2060d Binary files /dev/null and b/sha3/tests/data/sha3_512/test207.output.bin differ diff --git a/sha3/tests/data/sha3_512/test208.input.bin b/sha3/tests/data/sha3_512/test208.input.bin new file mode 100644 index 00000000..8be3f738 --- /dev/null +++ b/sha3/tests/data/sha3_512/test208.input.bin @@ -0,0 +1,2 @@ +Ua=0y.& 7BJmI(׭7MT#n_7oKܹu;9f2BEJwu>pX%; vτ3:Y҇̒#Nz'A& jX.dž1#'솅 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test208.output.bin b/sha3/tests/data/sha3_512/test208.output.bin new file mode 100644 index 00000000..3bd93509 Binary files /dev/null and b/sha3/tests/data/sha3_512/test208.output.bin differ diff --git a/sha3/tests/data/sha3_512/test209.input.bin b/sha3/tests/data/sha3_512/test209.input.bin new file mode 100644 index 00000000..12d7f2d6 --- /dev/null +++ b/sha3/tests/data/sha3_512/test209.input.bin @@ -0,0 +1 @@ +Dw≛rVUMlAG{уJ@)}^ۜm]DC`OR(ldpzjpC6s%&ST]ZܒynXՙ2$. ׭mr v#|N!+nyI͐3:wN*||2 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test209.output.bin b/sha3/tests/data/sha3_512/test209.output.bin new file mode 100644 index 00000000..bc1be83c --- /dev/null +++ b/sha3/tests/data/sha3_512/test209.output.bin @@ -0,0 +1 @@ + vDSx \S윴/j{RV6VenE@VmG \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test21.input.bin b/sha3/tests/data/sha3_512/test21.input.bin new file mode 100644 index 00000000..7a679902 --- /dev/null +++ b/sha3/tests/data/sha3_512/test21.input.bin @@ -0,0 +1 @@ +܏NLxD{;T6* \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test21.output.bin b/sha3/tests/data/sha3_512/test21.output.bin new file mode 100644 index 00000000..fc6c4fb7 --- /dev/null +++ b/sha3/tests/data/sha3_512/test21.output.bin @@ -0,0 +1 @@ + uBKrB;Zw.ºd +/Arĩהw'qCS \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test210.input.bin b/sha3/tests/data/sha3_512/test210.input.bin new file mode 100644 index 00000000..06b62b7f Binary files /dev/null and b/sha3/tests/data/sha3_512/test210.input.bin differ diff --git a/sha3/tests/data/sha3_512/test210.output.bin b/sha3/tests/data/sha3_512/test210.output.bin new file mode 100644 index 00000000..2c5bb936 Binary files /dev/null and b/sha3/tests/data/sha3_512/test210.output.bin differ diff --git a/sha3/tests/data/sha3_512/test211.input.bin b/sha3/tests/data/sha3_512/test211.input.bin new file mode 100644 index 00000000..397fbdc5 Binary files /dev/null and b/sha3/tests/data/sha3_512/test211.input.bin differ diff --git a/sha3/tests/data/sha3_512/test211.output.bin b/sha3/tests/data/sha3_512/test211.output.bin new file mode 100644 index 00000000..863fe511 Binary files /dev/null and b/sha3/tests/data/sha3_512/test211.output.bin differ diff --git a/sha3/tests/data/sha3_512/test212.input.bin b/sha3/tests/data/sha3_512/test212.input.bin new file mode 100644 index 00000000..ff7c93ec --- /dev/null +++ b/sha3/tests/data/sha3_512/test212.input.bin @@ -0,0 +1 @@ +;֤,z2)i-Ǚ ɝpZ\5+>L@fIݓΧuTj),L*v}|9jN$lgփgW68j'kQuLGH+r೔io֎^=YŬ@ó~6$JY͝(yox[';Dd5 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test212.output.bin b/sha3/tests/data/sha3_512/test212.output.bin new file mode 100644 index 00000000..8476cc65 --- /dev/null +++ b/sha3/tests/data/sha3_512/test212.output.bin @@ -0,0 +1,2 @@ +E3H6Cow255~ +Ӧ_/y=?rhsI *5`Ktx \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test213.input.bin b/sha3/tests/data/sha3_512/test213.input.bin new file mode 100644 index 00000000..17d29a30 Binary files /dev/null and b/sha3/tests/data/sha3_512/test213.input.bin differ diff --git a/sha3/tests/data/sha3_512/test213.output.bin b/sha3/tests/data/sha3_512/test213.output.bin new file mode 100644 index 00000000..46029eae Binary files /dev/null and b/sha3/tests/data/sha3_512/test213.output.bin differ diff --git a/sha3/tests/data/sha3_512/test214.input.bin b/sha3/tests/data/sha3_512/test214.input.bin new file mode 100644 index 00000000..d082a217 Binary files /dev/null and b/sha3/tests/data/sha3_512/test214.input.bin differ diff --git a/sha3/tests/data/sha3_512/test214.output.bin b/sha3/tests/data/sha3_512/test214.output.bin new file mode 100644 index 00000000..de481648 --- /dev/null +++ b/sha3/tests/data/sha3_512/test214.output.bin @@ -0,0 +1 @@ +?#s$ mGUGMO!oe5wiC,4#VM{/ [|SW \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test215.input.bin b/sha3/tests/data/sha3_512/test215.input.bin new file mode 100644 index 00000000..9b654101 --- /dev/null +++ b/sha3/tests/data/sha3_512/test215.input.bin @@ -0,0 +1,3 @@ +zjOOY#8It%.Y0bn{ى~ fDb5-Sנ/p7%Vq '™ʧߥ5R:51f^wlkFێ,ݝϺ২Uq-F=="90C;"F0A +3:R91\Fx[E:?s#hL,Ƀ}z,n \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test216.input.bin b/sha3/tests/data/sha3_512/test216.input.bin new file mode 100644 index 00000000..31e71eaa Binary files /dev/null and b/sha3/tests/data/sha3_512/test216.input.bin differ diff --git a/sha3/tests/data/sha3_512/test216.output.bin b/sha3/tests/data/sha3_512/test216.output.bin new file mode 100644 index 00000000..450e75ce --- /dev/null +++ b/sha3/tests/data/sha3_512/test216.output.bin @@ -0,0 +1 @@ +6:(qèvykZ.ԚD1޵Ì"Ԝ8Ӫ437Q%& \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test217.input.bin b/sha3/tests/data/sha3_512/test217.input.bin new file mode 100644 index 00000000..e9dedef4 --- /dev/null +++ b/sha3/tests/data/sha3_512/test217.input.bin @@ -0,0 +1 @@ +-'C= al"e6\;a9**jp^kwYwIlp'zC@tAѵ{{]we[B`yR)Ѩۆ^SĴ1sEB0@)oF_5jmwf jB;TM9 +loÀk·<+4V)0O5> \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test217.output.bin b/sha3/tests/data/sha3_512/test217.output.bin new file mode 100644 index 00000000..358a9cdc --- /dev/null +++ b/sha3/tests/data/sha3_512/test217.output.bin @@ -0,0 +1 @@ +aR M9PD&>2WgҠ"Y3~7(pڸE}X\A1[SvS=wBC \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test218.input.bin b/sha3/tests/data/sha3_512/test218.input.bin new file mode 100644 index 00000000..ca1f68da Binary files /dev/null and b/sha3/tests/data/sha3_512/test218.input.bin differ diff --git a/sha3/tests/data/sha3_512/test218.output.bin b/sha3/tests/data/sha3_512/test218.output.bin new file mode 100644 index 00000000..c1e7814c --- /dev/null +++ b/sha3/tests/data/sha3_512/test218.output.bin @@ -0,0 +1 @@ +G A\%!jIMa< `u,)50A,|#G*1} \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test219.input.bin b/sha3/tests/data/sha3_512/test219.input.bin new file mode 100644 index 00000000..dc3eba08 --- /dev/null +++ b/sha3/tests/data/sha3_512/test219.input.bin @@ -0,0 +1,4 @@ +vF8;NQ 20iPҗ +HVy +s9;(,jtg 8əpMbpO'Ͱe_PІWSp 8q/>m߳]shE9'K"</ʼ !f׉9qKxD%"}*=vQ^| +FA5eN|<7[SMd A|/cs \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test219.output.bin b/sha3/tests/data/sha3_512/test219.output.bin new file mode 100644 index 00000000..f3d8c0b1 --- /dev/null +++ b/sha3/tests/data/sha3_512/test219.output.bin @@ -0,0 +1 @@ +mgwNf@O+z%"|g1cH=fZ5S^\G]zCx>+Ґ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test22.input.bin b/sha3/tests/data/sha3_512/test22.input.bin new file mode 100644 index 00000000..fcc84d2d --- /dev/null +++ b/sha3/tests/data/sha3_512/test22.input.bin @@ -0,0 +1 @@ +W_B-3xm_- \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test22.output.bin b/sha3/tests/data/sha3_512/test22.output.bin new file mode 100644 index 00000000..27b667e0 --- /dev/null +++ b/sha3/tests/data/sha3_512/test22.output.bin @@ -0,0 +1,2 @@ + dw65ldT~GZL[TiqFO|?t2QQ㻣 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test222.input.bin b/sha3/tests/data/sha3_512/test222.input.bin new file mode 100644 index 00000000..61d516ba Binary files /dev/null and b/sha3/tests/data/sha3_512/test222.input.bin differ diff --git a/sha3/tests/data/sha3_512/test222.output.bin b/sha3/tests/data/sha3_512/test222.output.bin new file mode 100644 index 00000000..43a51607 Binary files /dev/null and b/sha3/tests/data/sha3_512/test222.output.bin differ diff --git a/sha3/tests/data/sha3_512/test223.input.bin b/sha3/tests/data/sha3_512/test223.input.bin new file mode 100644 index 00000000..ea14dca4 Binary files /dev/null and b/sha3/tests/data/sha3_512/test223.input.bin differ diff --git a/sha3/tests/data/sha3_512/test223.output.bin b/sha3/tests/data/sha3_512/test223.output.bin new file mode 100644 index 00000000..f5720ddb --- /dev/null +++ b/sha3/tests/data/sha3_512/test223.output.bin @@ -0,0 +1 @@ + E/5F\tuCVBI,Tjy~s2l$ :=%,6ΆڜU9- \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test224.input.bin b/sha3/tests/data/sha3_512/test224.input.bin new file mode 100644 index 00000000..39f24030 Binary files /dev/null and b/sha3/tests/data/sha3_512/test224.input.bin differ diff --git a/sha3/tests/data/sha3_512/test224.output.bin b/sha3/tests/data/sha3_512/test224.output.bin new file mode 100644 index 00000000..3b87d734 --- /dev/null +++ b/sha3/tests/data/sha3_512/test224.output.bin @@ -0,0 +1,2 @@ +u*2r] ]k(nY۱0pMC,+ș0 E +&ar@Ch$G \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test225.input.bin b/sha3/tests/data/sha3_512/test225.input.bin new file mode 100644 index 00000000..a694388a --- /dev/null +++ b/sha3/tests/data/sha3_512/test225.input.bin @@ -0,0 +1 @@ +gSm68؈̫4+zen=oBLfAqeÏǒhεf]6!TӺX13t6stdrƮzn' \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test225.output.bin b/sha3/tests/data/sha3_512/test225.output.bin new file mode 100644 index 00000000..25daf00b --- /dev/null +++ b/sha3/tests/data/sha3_512/test225.output.bin @@ -0,0 +1 @@ +rBKUlt.9g?!рldqdV"RNd^{|[k徹"^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test226.input.bin b/sha3/tests/data/sha3_512/test226.input.bin new file mode 100644 index 00000000..a4b4f480 --- /dev/null +++ b/sha3/tests/data/sha3_512/test226.input.bin @@ -0,0 +1 @@ +9?]MH]7QJX6)!z8#5Rs!R*X5a& }:AvvJ"ԕzT]RDul %̏L6/ 68Oz[)?kܒV^6v=Ҡj>=DvyK=&+yV>APd%n4^QU܊!Jxj-P~35d' \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test226.output.bin b/sha3/tests/data/sha3_512/test226.output.bin new file mode 100644 index 00000000..f9621ab9 --- /dev/null +++ b/sha3/tests/data/sha3_512/test226.output.bin @@ -0,0 +1 @@ +9v؜MFNE_C{dQ29~N^h0EJ${r@`| \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test227.input.bin b/sha3/tests/data/sha3_512/test227.input.bin new file mode 100644 index 00000000..9cb3e056 Binary files /dev/null and b/sha3/tests/data/sha3_512/test227.input.bin differ diff --git a/sha3/tests/data/sha3_512/test227.output.bin b/sha3/tests/data/sha3_512/test227.output.bin new file mode 100644 index 00000000..35256f95 --- /dev/null +++ b/sha3/tests/data/sha3_512/test227.output.bin @@ -0,0 +1 @@ +D~oBb7v5g$_;yItgD !L9&ՔE}zA \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test228.input.bin b/sha3/tests/data/sha3_512/test228.input.bin new file mode 100644 index 00000000..6dda249b Binary files /dev/null and b/sha3/tests/data/sha3_512/test228.input.bin differ diff --git a/sha3/tests/data/sha3_512/test228.output.bin b/sha3/tests/data/sha3_512/test228.output.bin new file mode 100644 index 00000000..d89acb73 --- /dev/null +++ b/sha3/tests/data/sha3_512/test228.output.bin @@ -0,0 +1 @@ +~~(0#j=M0 ,6ťdLiʰ_"c3nLK \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test229.input.bin b/sha3/tests/data/sha3_512/test229.input.bin new file mode 100644 index 00000000..c2b4e2b7 --- /dev/null +++ b/sha3/tests/data/sha3_512/test229.input.bin @@ -0,0 +1 @@ +8u$ ਵe@jpIn,!txoҔ֧TS5(M_@*ܒ871yoJ܁oDkx[ yhAx +hA~ֺz`+O \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test23.input.bin b/sha3/tests/data/sha3_512/test23.input.bin new file mode 100644 index 00000000..6edeea70 --- /dev/null +++ b/sha3/tests/data/sha3_512/test23.input.bin @@ -0,0 +1 @@ +T]Wi~,)ȫ5`o \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test23.output.bin b/sha3/tests/data/sha3_512/test23.output.bin new file mode 100644 index 00000000..6087a99b Binary files /dev/null and b/sha3/tests/data/sha3_512/test23.output.bin differ diff --git a/sha3/tests/data/sha3_512/test230.input.bin b/sha3/tests/data/sha3_512/test230.input.bin new file mode 100644 index 00000000..606a6932 Binary files /dev/null and b/sha3/tests/data/sha3_512/test230.input.bin differ diff --git a/sha3/tests/data/sha3_512/test230.output.bin b/sha3/tests/data/sha3_512/test230.output.bin new file mode 100644 index 00000000..925d95f5 Binary files /dev/null and b/sha3/tests/data/sha3_512/test230.output.bin differ diff --git a/sha3/tests/data/sha3_512/test231.input.bin b/sha3/tests/data/sha3_512/test231.input.bin new file mode 100644 index 00000000..5ff70473 Binary files /dev/null and b/sha3/tests/data/sha3_512/test231.input.bin differ diff --git a/sha3/tests/data/sha3_512/test231.output.bin b/sha3/tests/data/sha3_512/test231.output.bin new file mode 100644 index 00000000..7dad069d --- /dev/null +++ b/sha3/tests/data/sha3_512/test231.output.bin @@ -0,0 +1 @@ +v5ל2N mF@&}W$Eggۼ!{y `-Q \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test232.input.bin b/sha3/tests/data/sha3_512/test232.input.bin new file mode 100644 index 00000000..263e6e48 --- /dev/null +++ b/sha3/tests/data/sha3_512/test232.input.bin @@ -0,0 +1,2 @@ +m"y3-=6OW? k] =;_ +b+xő3HQSY.o \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test232.output.bin b/sha3/tests/data/sha3_512/test232.output.bin new file mode 100644 index 00000000..2c7fb4f2 --- /dev/null +++ b/sha3/tests/data/sha3_512/test232.output.bin @@ -0,0 +1 @@ +!`_eA-oldbN,{`.uF>\5_8V1̐LF:m \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test233.input.bin b/sha3/tests/data/sha3_512/test233.input.bin new file mode 100644 index 00000000..6e7c2d03 Binary files /dev/null and b/sha3/tests/data/sha3_512/test233.input.bin differ diff --git a/sha3/tests/data/sha3_512/test233.output.bin b/sha3/tests/data/sha3_512/test233.output.bin new file mode 100644 index 00000000..c856f5d9 Binary files /dev/null and b/sha3/tests/data/sha3_512/test233.output.bin differ diff --git a/sha3/tests/data/sha3_512/test234.input.bin b/sha3/tests/data/sha3_512/test234.input.bin new file mode 100644 index 00000000..a4bf95bb Binary files /dev/null and b/sha3/tests/data/sha3_512/test234.input.bin differ diff --git a/sha3/tests/data/sha3_512/test234.output.bin b/sha3/tests/data/sha3_512/test234.output.bin new file mode 100644 index 00000000..7df7c008 --- /dev/null +++ b/sha3/tests/data/sha3_512/test234.output.bin @@ -0,0 +1 @@ +V1gQMa/Zܝpd#XMt]7?ўG+>(T Cǟ;~8i \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test235.input.bin b/sha3/tests/data/sha3_512/test235.input.bin new file mode 100644 index 00000000..adc0f660 Binary files /dev/null and b/sha3/tests/data/sha3_512/test235.input.bin differ diff --git a/sha3/tests/data/sha3_512/test235.output.bin b/sha3/tests/data/sha3_512/test235.output.bin new file mode 100644 index 00000000..b80285de Binary files /dev/null and b/sha3/tests/data/sha3_512/test235.output.bin differ diff --git a/sha3/tests/data/sha3_512/test236.input.bin b/sha3/tests/data/sha3_512/test236.input.bin new file mode 100644 index 00000000..39e5194b Binary files /dev/null and b/sha3/tests/data/sha3_512/test236.input.bin differ diff --git a/sha3/tests/data/sha3_512/test236.output.bin b/sha3/tests/data/sha3_512/test236.output.bin new file mode 100644 index 00000000..ff79b5fc --- /dev/null +++ b/sha3/tests/data/sha3_512/test236.output.bin @@ -0,0 +1 @@ +JX WM~ Ă*Nm 6)I)#-%{r}O# z8Wxp \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test237.input.bin b/sha3/tests/data/sha3_512/test237.input.bin new file mode 100644 index 00000000..3a765047 Binary files /dev/null and b/sha3/tests/data/sha3_512/test237.input.bin differ diff --git a/sha3/tests/data/sha3_512/test237.output.bin b/sha3/tests/data/sha3_512/test237.output.bin new file mode 100644 index 00000000..9fb2e9e9 Binary files /dev/null and b/sha3/tests/data/sha3_512/test237.output.bin differ diff --git a/sha3/tests/data/sha3_512/test238.input.bin b/sha3/tests/data/sha3_512/test238.input.bin new file mode 100644 index 00000000..78398edd Binary files /dev/null and b/sha3/tests/data/sha3_512/test238.input.bin differ diff --git a/sha3/tests/data/sha3_512/test238.output.bin b/sha3/tests/data/sha3_512/test238.output.bin new file mode 100644 index 00000000..83473eb4 Binary files /dev/null and b/sha3/tests/data/sha3_512/test238.output.bin differ diff --git a/sha3/tests/data/sha3_512/test239.input.bin b/sha3/tests/data/sha3_512/test239.input.bin new file mode 100644 index 00000000..4344db77 Binary files /dev/null and b/sha3/tests/data/sha3_512/test239.input.bin differ diff --git a/sha3/tests/data/sha3_512/test239.output.bin b/sha3/tests/data/sha3_512/test239.output.bin new file mode 100644 index 00000000..b1221655 Binary files /dev/null and b/sha3/tests/data/sha3_512/test239.output.bin differ diff --git a/sha3/tests/data/sha3_512/test24.input.bin b/sha3/tests/data/sha3_512/test24.input.bin new file mode 100644 index 00000000..792f0571 --- /dev/null +++ b/sha3/tests/data/sha3_512/test24.input.bin @@ -0,0 +1 @@ +˰'YC=oA; (%C]Cg';Ŋ0DгgB5&z@+;>;\%Fnz`7"+Li15Z-9{V5H:?fex8iAͳREH)NPc%-G@Z)-к! ;4ӝ0^\V7{u +7&KVo@wE_V$1z- \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test240.output.bin b/sha3/tests/data/sha3_512/test240.output.bin new file mode 100644 index 00000000..a5bbd784 --- /dev/null +++ b/sha3/tests/data/sha3_512/test240.output.bin @@ -0,0 +1 @@ +V{,!P_2=e,S>bЩQQ)/]EoO~oN( \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test241.input.bin b/sha3/tests/data/sha3_512/test241.input.bin new file mode 100644 index 00000000..9f83b1c0 --- /dev/null +++ b/sha3/tests/data/sha3_512/test241.input.bin @@ -0,0 +1,2 @@ +arnNap]_왿iKgK}׀a^P-k?CHr{} 0)'.JYhbea p̍niŀ6! cZ$=ŇGXT@ѰLd[}" +b:V8ٚ,@o2R+7^l׀(ӈE EAuSVik?9z )69;\YנKzïh y1Nu} \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test241.output.bin b/sha3/tests/data/sha3_512/test241.output.bin new file mode 100644 index 00000000..d4248f0c --- /dev/null +++ b/sha3/tests/data/sha3_512/test241.output.bin @@ -0,0 +1,3 @@ +*=@ *d8MR3N搙ܩ{ +ϫJ5pxVil0C- +lpKhZm \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test242.input.bin b/sha3/tests/data/sha3_512/test242.input.bin new file mode 100644 index 00000000..aa906dac Binary files /dev/null and b/sha3/tests/data/sha3_512/test242.input.bin differ diff --git a/sha3/tests/data/sha3_512/test242.output.bin b/sha3/tests/data/sha3_512/test242.output.bin new file mode 100644 index 00000000..2ccfaf66 --- /dev/null +++ b/sha3/tests/data/sha3_512/test242.output.bin @@ -0,0 +1 @@ +k~|5ݓmy4aD:B_wwBJb3?CTDI!〰ˁrI; \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test243.input.bin b/sha3/tests/data/sha3_512/test243.input.bin new file mode 100644 index 00000000..d2160ac1 Binary files /dev/null and b/sha3/tests/data/sha3_512/test243.input.bin differ diff --git a/sha3/tests/data/sha3_512/test243.output.bin b/sha3/tests/data/sha3_512/test243.output.bin new file mode 100644 index 00000000..57aa5aed --- /dev/null +++ b/sha3/tests/data/sha3_512/test243.output.bin @@ -0,0 +1 @@ +8P6lm.ÿ"1{h7y٪)A_U+y(x\f@J9 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test244.input.bin b/sha3/tests/data/sha3_512/test244.input.bin new file mode 100644 index 00000000..7e958206 Binary files /dev/null and b/sha3/tests/data/sha3_512/test244.input.bin differ diff --git a/sha3/tests/data/sha3_512/test244.output.bin b/sha3/tests/data/sha3_512/test244.output.bin new file mode 100644 index 00000000..9dd8ef3d --- /dev/null +++ b/sha3/tests/data/sha3_512/test244.output.bin @@ -0,0 +1,2 @@ +bm?5>~ASbl +;p_㘕vGV0 s.ʈ| \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test245.input.bin b/sha3/tests/data/sha3_512/test245.input.bin new file mode 100644 index 00000000..514589ea Binary files /dev/null and b/sha3/tests/data/sha3_512/test245.input.bin differ diff --git a/sha3/tests/data/sha3_512/test245.output.bin b/sha3/tests/data/sha3_512/test245.output.bin new file mode 100644 index 00000000..b6e0fa14 --- /dev/null +++ b/sha3/tests/data/sha3_512/test245.output.bin @@ -0,0 +1,2 @@ +赝HR%!y\i-d[yYDjܪ0aFBV.h +,@m\!>ƾU \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test246.input.bin b/sha3/tests/data/sha3_512/test246.input.bin new file mode 100644 index 00000000..58ac5c4f --- /dev/null +++ b/sha3/tests/data/sha3_512/test246.input.bin @@ -0,0 +1,3 @@ +)iD}T򪛰UML PTk-1ޜhɭN… g]so c+U YŚ?a\kuٓ@cxrj:?7;bkWE`dnS= +?zc v3BaY07e?D*]rɔOp9u΅Pr,m, +]vp>C4Ã*T~yrꀒ3 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test246.output.bin b/sha3/tests/data/sha3_512/test246.output.bin new file mode 100644 index 00000000..25849ba9 Binary files /dev/null and b/sha3/tests/data/sha3_512/test246.output.bin differ diff --git a/sha3/tests/data/sha3_512/test247.input.bin b/sha3/tests/data/sha3_512/test247.input.bin new file mode 100644 index 00000000..998aaf05 --- /dev/null +++ b/sha3/tests/data/sha3_512/test247.input.bin @@ -0,0 +1,2 @@ +rEc:DNjNXWZ<'3hu Pj4=}[>PpEdrj`uvӖ?Udm W{YLy:KFCxA8SE -)A˫PڎQ1EL:%D-KzzY(]VON헕o0B^JH%oc'-mcHWuE +#3KF/Dºo2_'b*XvoM,j(`KurkyAvxU&£?æB95Pp({ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test249.output.bin b/sha3/tests/data/sha3_512/test249.output.bin new file mode 100644 index 00000000..344d8ae7 Binary files /dev/null and b/sha3/tests/data/sha3_512/test249.output.bin differ diff --git a/sha3/tests/data/sha3_512/test25.input.bin b/sha3/tests/data/sha3_512/test25.input.bin new file mode 100644 index 00000000..31e2fe3a --- /dev/null +++ b/sha3/tests/data/sha3_512/test25.input.bin @@ -0,0 +1 @@ +$==J eX`'bs^U \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test25.output.bin b/sha3/tests/data/sha3_512/test25.output.bin new file mode 100644 index 00000000..d3e9dab4 --- /dev/null +++ b/sha3/tests/data/sha3_512/test25.output.bin @@ -0,0 +1 @@ +bۇӴ\MZzz/Fuwc74ז(k7wOmxt1{"'_cmbP \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test250.input.bin b/sha3/tests/data/sha3_512/test250.input.bin new file mode 100644 index 00000000..e5174fd6 --- /dev/null +++ b/sha3/tests/data/sha3_512/test250.input.bin @@ -0,0 +1,3 @@ +Ki<%3lV;L8uh4GRԧ=[T82 pφX +`wVѢh9Jm󛟯WhW{*P_uǠK:5` *şeX^"Kyƾ)f-h7`Fz +%y\ܡ𚗜!Sͻ&Tn/PhZFaIeԶ>[Щm=ju{3sOD_tqi~+ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test250.output.bin b/sha3/tests/data/sha3_512/test250.output.bin new file mode 100644 index 00000000..007f0bda --- /dev/null +++ b/sha3/tests/data/sha3_512/test250.output.bin @@ -0,0 +1 @@ + 9Cł'X'+ﻒ44 yDdYY/CcE2b=e4=f@yDB: \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test251.input.bin b/sha3/tests/data/sha3_512/test251.input.bin new file mode 100644 index 00000000..c892fcf3 Binary files /dev/null and b/sha3/tests/data/sha3_512/test251.input.bin differ diff --git a/sha3/tests/data/sha3_512/test251.output.bin b/sha3/tests/data/sha3_512/test251.output.bin new file mode 100644 index 00000000..1bb88e1b --- /dev/null +++ b/sha3/tests/data/sha3_512/test251.output.bin @@ -0,0 +1 @@ +M֥3uNڙ(z3q2u%>o.;Sl*YG \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test252.input.bin b/sha3/tests/data/sha3_512/test252.input.bin new file mode 100644 index 00000000..4b98ebd2 Binary files /dev/null and b/sha3/tests/data/sha3_512/test252.input.bin differ diff --git a/sha3/tests/data/sha3_512/test252.output.bin b/sha3/tests/data/sha3_512/test252.output.bin new file mode 100644 index 00000000..f4af0ac6 --- /dev/null +++ b/sha3/tests/data/sha3_512/test252.output.bin @@ -0,0 +1 @@ +=E8rQ k'nCsMQu^>f$ D_%zQfw.hGa \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test253.input.bin b/sha3/tests/data/sha3_512/test253.input.bin new file mode 100644 index 00000000..a29ed9a7 Binary files /dev/null and b/sha3/tests/data/sha3_512/test253.input.bin differ diff --git a/sha3/tests/data/sha3_512/test253.output.bin b/sha3/tests/data/sha3_512/test253.output.bin new file mode 100644 index 00000000..e11b1879 --- /dev/null +++ b/sha3/tests/data/sha3_512/test253.output.bin @@ -0,0 +1 @@ +Ϫ,i1[oQ$zGgߴ0<Nm>Sl^ /beOホK0pyM} \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test28.input.bin b/sha3/tests/data/sha3_512/test28.input.bin new file mode 100644 index 00000000..557ef3d3 --- /dev/null +++ b/sha3/tests/data/sha3_512/test28.input.bin @@ -0,0 +1 @@ +-֌|ϱpSdbF|y^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test28.output.bin b/sha3/tests/data/sha3_512/test28.output.bin new file mode 100644 index 00000000..886ebaca --- /dev/null +++ b/sha3/tests/data/sha3_512/test28.output.bin @@ -0,0 +1 @@ +!/`@I=bp'R)e{bKcѩ!ݽst7MnZ&3 1.X \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test29.input.bin b/sha3/tests/data/sha3_512/test29.input.bin new file mode 100644 index 00000000..fa7268e4 Binary files /dev/null and b/sha3/tests/data/sha3_512/test29.input.bin differ diff --git a/sha3/tests/data/sha3_512/test29.output.bin b/sha3/tests/data/sha3_512/test29.output.bin new file mode 100644 index 00000000..1f9a543a --- /dev/null +++ b/sha3/tests/data/sha3_512/test29.output.bin @@ -0,0 +1 @@ +St/Q \ \+V-$jt6 ePCtom:CnmVG̓5 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test3.input.bin b/sha3/tests/data/sha3_512/test3.input.bin new file mode 100644 index 00000000..2ab26bf6 --- /dev/null +++ b/sha3/tests/data/sha3_512/test3.input.bin @@ -0,0 +1 @@ +| \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test3.output.bin b/sha3/tests/data/sha3_512/test3.output.bin new file mode 100644 index 00000000..d4cf273d --- /dev/null +++ b/sha3/tests/data/sha3_512/test3.output.bin @@ -0,0 +1 @@ + IU h/ åu7Q0/g4- ϯ^^*"gZcxN[N \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test35.output.bin b/sha3/tests/data/sha3_512/test35.output.bin new file mode 100644 index 00000000..ce33df0a --- /dev/null +++ b/sha3/tests/data/sha3_512/test35.output.bin @@ -0,0 +1 @@ +hSBd%6ve&pi\#Zf8Jʐ`5I \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test36.input.bin b/sha3/tests/data/sha3_512/test36.input.bin new file mode 100644 index 00000000..3f70b9dc --- /dev/null +++ b/sha3/tests/data/sha3_512/test36.input.bin @@ -0,0 +1 @@ +Giz '4za:5bcN{fxInMݿ{+hy+e?|%x \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test37.input.bin b/sha3/tests/data/sha3_512/test37.input.bin new file mode 100644 index 00000000..ff0a4168 --- /dev/null +++ b/sha3/tests/data/sha3_512/test37.input.bin @@ -0,0 +1,2 @@ +Q*m).gHkf STLO.+ +3k.B \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test37.output.bin b/sha3/tests/data/sha3_512/test37.output.bin new file mode 100644 index 00000000..6729ed3f --- /dev/null +++ b/sha3/tests/data/sha3_512/test37.output.bin @@ -0,0 +1 @@ +d&aa%(hR\q}c!!^/,3C fcUzH[3 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test38.input.bin b/sha3/tests/data/sha3_512/test38.input.bin new file mode 100644 index 00000000..0e5c4985 --- /dev/null +++ b/sha3/tests/data/sha3_512/test38.input.bin @@ -0,0 +1,2 @@ +k]VO8' L+k \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test42.output.bin b/sha3/tests/data/sha3_512/test42.output.bin new file mode 100644 index 00000000..817da40f --- /dev/null +++ b/sha3/tests/data/sha3_512/test42.output.bin @@ -0,0 +1 @@ +HLg Xf|ܒ,D5ͧZUwPbb'"rdU/!ЇFj \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test43.input.bin b/sha3/tests/data/sha3_512/test43.input.bin new file mode 100644 index 00000000..f458e5bf --- /dev/null +++ b/sha3/tests/data/sha3_512/test43.input.bin @@ -0,0 +1,2 @@ +3p#7 +H.5F|N~I `K.n[@қz \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test43.output.bin b/sha3/tests/data/sha3_512/test43.output.bin new file mode 100644 index 00000000..a5f698f7 --- /dev/null +++ b/sha3/tests/data/sha3_512/test43.output.bin @@ -0,0 +1 @@ +V&[F9AշFEg5~I"f#]PmZXn%|4rU] \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test44.input.bin b/sha3/tests/data/sha3_512/test44.input.bin new file mode 100644 index 00000000..8484eefc --- /dev/null +++ b/sha3/tests/data/sha3_512/test44.input.bin @@ -0,0 +1,2 @@ +hTLt-, +؄Q D81'Vk28*k5 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test44.output.bin b/sha3/tests/data/sha3_512/test44.output.bin new file mode 100644 index 00000000..18da5f8f Binary files /dev/null and b/sha3/tests/data/sha3_512/test44.output.bin differ diff --git a/sha3/tests/data/sha3_512/test45.input.bin b/sha3/tests/data/sha3_512/test45.input.bin new file mode 100644 index 00000000..871dabcf --- /dev/null +++ b/sha3/tests/data/sha3_512/test45.input.bin @@ -0,0 +1 @@ ++0V [ڸ %]8Fr4 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test45.output.bin b/sha3/tests/data/sha3_512/test45.output.bin new file mode 100644 index 00000000..71f0ef6e Binary files /dev/null and b/sha3/tests/data/sha3_512/test45.output.bin differ diff --git a/sha3/tests/data/sha3_512/test46.input.bin b/sha3/tests/data/sha3_512/test46.input.bin new file mode 100644 index 00000000..ba4594ad --- /dev/null +++ b/sha3/tests/data/sha3_512/test46.input.bin @@ -0,0 +1 @@ +.툁 W-scra8KεEwlʐ~~ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test46.output.bin b/sha3/tests/data/sha3_512/test46.output.bin new file mode 100644 index 00000000..cd6fb74c --- /dev/null +++ b/sha3/tests/data/sha3_512/test46.output.bin @@ -0,0 +1 @@ +-Qe1~+O/Й]wX>/.Da=U5čc2] &PKqa0 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test47.input.bin b/sha3/tests/data/sha3_512/test47.input.bin new file mode 100644 index 00000000..d6259031 --- /dev/null +++ b/sha3/tests/data/sha3_512/test47.input.bin @@ -0,0 +1 @@ +CrQ֒Bu O@S,?\QNԥ0M G&6KZQٻ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test47.output.bin b/sha3/tests/data/sha3_512/test47.output.bin new file mode 100644 index 00000000..f32ed83e Binary files /dev/null and b/sha3/tests/data/sha3_512/test47.output.bin differ diff --git a/sha3/tests/data/sha3_512/test48.input.bin b/sha3/tests/data/sha3_512/test48.input.bin new file mode 100644 index 00000000..a2e03996 --- /dev/null +++ b/sha3/tests/data/sha3_512/test48.input.bin @@ -0,0 +1 @@ +Q_oVN'|ЌV$W)؜$ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test48.output.bin b/sha3/tests/data/sha3_512/test48.output.bin new file mode 100644 index 00000000..9eed1cff --- /dev/null +++ b/sha3/tests/data/sha3_512/test48.output.bin @@ -0,0 +1 @@ +~Ln 4gˣf!dK?Z_kY< %t|HoލC \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test49.input.bin b/sha3/tests/data/sha3_512/test49.input.bin new file mode 100644 index 00000000..b0fcd9fc --- /dev/null +++ b/sha3/tests/data/sha3_512/test49.input.bin @@ -0,0 +1 @@ +p4`7 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test57.output.bin b/sha3/tests/data/sha3_512/test57.output.bin new file mode 100644 index 00000000..54ca9acb --- /dev/null +++ b/sha3/tests/data/sha3_512/test57.output.bin @@ -0,0 +1 @@ +B_@5 UuMA]ѶM,3 u;ҥw!.p \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test58.input.bin b/sha3/tests/data/sha3_512/test58.input.bin new file mode 100644 index 00000000..62c5f7a8 --- /dev/null +++ b/sha3/tests/data/sha3_512/test58.input.bin @@ -0,0 +1 @@ +\_f..(JNk9]ct<IpJ||~S׻p/ h \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test59.input.bin b/sha3/tests/data/sha3_512/test59.input.bin new file mode 100644 index 00000000..ca6f7811 --- /dev/null +++ b/sha3/tests/data/sha3_512/test59.input.bin @@ -0,0 +1 @@ +qg+i׈fo:qj\[ʃf.!{3 !7mt6:J6j \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test59.output.bin b/sha3/tests/data/sha3_512/test59.output.bin new file mode 100644 index 00000000..2b394b56 --- /dev/null +++ b/sha3/tests/data/sha3_512/test59.output.bin @@ -0,0 +1,2 @@ +G -[n]e+pz.fq̟hߜəǂDQ%'% +si U \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test6.input.bin b/sha3/tests/data/sha3_512/test6.input.bin new file mode 100644 index 00000000..20cda512 --- /dev/null +++ b/sha3/tests/data/sha3_512/test6.input.bin @@ -0,0 +1 @@ + N) \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test6.output.bin b/sha3/tests/data/sha3_512/test6.output.bin new file mode 100644 index 00000000..0b42b662 Binary files /dev/null and b/sha3/tests/data/sha3_512/test6.output.bin differ diff --git a/sha3/tests/data/sha3_512/test60.input.bin b/sha3/tests/data/sha3_512/test60.input.bin new file mode 100644 index 00000000..be665bc7 --- /dev/null +++ b/sha3/tests/data/sha3_512/test60.input.bin @@ -0,0 +1 @@ +/1s!2攏! v>tHh8wLOmPq݊A\HQ2N +i¹7У)"n8!qgu)Q~7";[<ᐜ ԱMpt \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test74.output.bin b/sha3/tests/data/sha3_512/test74.output.bin new file mode 100644 index 00000000..58f112ea --- /dev/null +++ b/sha3/tests/data/sha3_512/test74.output.bin @@ -0,0 +1 @@ +)!1g-NsI;uɼA6:qʛ}%uwĶ@7p9\%Ɓi7_ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test75.input.bin b/sha3/tests/data/sha3_512/test75.input.bin new file mode 100644 index 00000000..fbd5dce7 --- /dev/null +++ b/sha3/tests/data/sha3_512/test75.input.bin @@ -0,0 +1 @@ +=׿YJ5'}}Z[Mm/dqQA̽{ΠRCޮ|MFv?wӄY< \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test75.output.bin b/sha3/tests/data/sha3_512/test75.output.bin new file mode 100644 index 00000000..672a83c0 --- /dev/null +++ b/sha3/tests/data/sha3_512/test75.output.bin @@ -0,0 +1 @@ +sKr6ױ_u%:pYup vM~a |ax` \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test76.input.bin b/sha3/tests/data/sha3_512/test76.input.bin new file mode 100644 index 00000000..5fcf443c --- /dev/null +++ b/sha3/tests/data/sha3_512/test76.input.bin @@ -0,0 +1 @@ +<5@f3X6_\؏ɬX*]XѴcpNº4HԦ<#aY^| \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test76.output.bin b/sha3/tests/data/sha3_512/test76.output.bin new file mode 100644 index 00000000..bb5f41c8 --- /dev/null +++ b/sha3/tests/data/sha3_512/test76.output.bin @@ -0,0 +1 @@ + 2,ϝcNLIwڟ`5od}}T% TD)MA]\IFPKB< \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test77.input.bin b/sha3/tests/data/sha3_512/test77.input.bin new file mode 100644 index 00000000..78d1a46e --- /dev/null +++ b/sha3/tests/data/sha3_512/test77.input.bin @@ -0,0 +1,2 @@ +d^ʆ5| + adt֑ͽeKRTi1j SƎ2NŤ֢ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test77.output.bin b/sha3/tests/data/sha3_512/test77.output.bin new file mode 100644 index 00000000..ecd46949 --- /dev/null +++ b/sha3/tests/data/sha3_512/test77.output.bin @@ -0,0 +1 @@ +l?2UdE0CD4++UsC^P)_ g Gw{324̀ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test78.input.bin b/sha3/tests/data/sha3_512/test78.input.bin new file mode 100644 index 00000000..8ec52985 --- /dev/null +++ b/sha3/tests/data/sha3_512/test78.input.bin @@ -0,0 +1,2 @@ +eK∹ tqh + *47,qΪ%ުWo1)aϛI[jIl[< \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test78.output.bin b/sha3/tests/data/sha3_512/test78.output.bin new file mode 100644 index 00000000..3ee3bf83 --- /dev/null +++ b/sha3/tests/data/sha3_512/test78.output.bin @@ -0,0 +1 @@ +jVϔ<Sbb\SM`?/n$R\FٶBH:Ǩ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test79.input.bin b/sha3/tests/data/sha3_512/test79.input.bin new file mode 100644 index 00000000..223995c9 Binary files /dev/null and b/sha3/tests/data/sha3_512/test79.input.bin differ diff --git a/sha3/tests/data/sha3_512/test79.output.bin b/sha3/tests/data/sha3_512/test79.output.bin new file mode 100644 index 00000000..c8c4f75e --- /dev/null +++ b/sha3/tests/data/sha3_512/test79.output.bin @@ -0,0 +1 @@ +G+}Ϙq;8ցwAr;<[,5^f 'vυ6=L \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test8.input.bin b/sha3/tests/data/sha3_512/test8.input.bin new file mode 100644 index 00000000..dbdc2b7a --- /dev/null +++ b/sha3/tests/data/sha3_512/test8.input.bin @@ -0,0 +1 @@ +JO $Q%& \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test8.output.bin b/sha3/tests/data/sha3_512/test8.output.bin new file mode 100644 index 00000000..4062bc2b --- /dev/null +++ b/sha3/tests/data/sha3_512/test8.output.bin @@ -0,0 +1 @@ + x}np¤~lz0=PR*LEB8;+O8Ѵ\ňƹ/e"R \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test80.input.bin b/sha3/tests/data/sha3_512/test80.input.bin new file mode 100644 index 00000000..5cf1dae3 --- /dev/null +++ b/sha3/tests/data/sha3_512/test80.input.bin @@ -0,0 +1 @@ + z_6z͊H|'O3k7FXG_z5{eo{恵աꀅ⮜ 1Tmj0 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test80.output.bin b/sha3/tests/data/sha3_512/test80.output.bin new file mode 100644 index 00000000..9fc54c04 Binary files /dev/null and b/sha3/tests/data/sha3_512/test80.output.bin differ diff --git a/sha3/tests/data/sha3_512/test81.input.bin b/sha3/tests/data/sha3_512/test81.input.bin new file mode 100644 index 00000000..5ebb1af3 --- /dev/null +++ b/sha3/tests/data/sha3_512/test81.input.bin @@ -0,0 +1 @@ + OWwJ"1%k. oYu6]Sڃc#o<^ |hw=I\" \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test81.output.bin b/sha3/tests/data/sha3_512/test81.output.bin new file mode 100644 index 00000000..57280278 --- /dev/null +++ b/sha3/tests/data/sha3_512/test81.output.bin @@ -0,0 +1 @@ +C-yCc@)fVlͬ~}t *r^<;ͱȭX> \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test82.input.bin b/sha3/tests/data/sha3_512/test82.input.bin new file mode 100644 index 00000000..8af74e5b --- /dev/null +++ b/sha3/tests/data/sha3_512/test82.input.bin @@ -0,0 +1,3 @@ +(bXVP Lw(a, ?o +&_?'3~rg{}!e +M2Ibv8ۭp,|&@ϋNT \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test82.output.bin b/sha3/tests/data/sha3_512/test82.output.bin new file mode 100644 index 00000000..43a0d1b7 --- /dev/null +++ b/sha3/tests/data/sha3_512/test82.output.bin @@ -0,0 +1 @@ +f*D`zDQCt4N5,WwmF5ZBo 98nMۼ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test83.input.bin b/sha3/tests/data/sha3_512/test83.input.bin new file mode 100644 index 00000000..c5affa06 --- /dev/null +++ b/sha3/tests/data/sha3_512/test83.input.bin @@ -0,0 +1,2 @@ +cH);w wTNQfȁitnB?vj  >;oytp +z}(L;xp=+xan \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test83.output.bin b/sha3/tests/data/sha3_512/test83.output.bin new file mode 100644 index 00000000..02c79740 --- /dev/null +++ b/sha3/tests/data/sha3_512/test83.output.bin @@ -0,0 +1 @@ +2h$ⓒݡg{z<H-P_)e|iO|}˒ 6fLi- \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test84.input.bin b/sha3/tests/data/sha3_512/test84.input.bin new file mode 100644 index 00000000..cffc8df4 Binary files /dev/null and b/sha3/tests/data/sha3_512/test84.input.bin differ diff --git a/sha3/tests/data/sha3_512/test84.output.bin b/sha3/tests/data/sha3_512/test84.output.bin new file mode 100644 index 00000000..6c335076 --- /dev/null +++ b/sha3/tests/data/sha3_512/test84.output.bin @@ -0,0 +1 @@ +eT,[4€4o-bj.fC~ƒ] I*a̺dg \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test85.input.bin b/sha3/tests/data/sha3_512/test85.input.bin new file mode 100644 index 00000000..7db9b52d Binary files /dev/null and b/sha3/tests/data/sha3_512/test85.input.bin differ diff --git a/sha3/tests/data/sha3_512/test85.output.bin b/sha3/tests/data/sha3_512/test85.output.bin new file mode 100644 index 00000000..b47df11f --- /dev/null +++ b/sha3/tests/data/sha3_512/test85.output.bin @@ -0,0 +1,2 @@ +oգ4Է*),\"l6$$r@邻p0418FvO/E5;)o';oV< \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test87.output.bin b/sha3/tests/data/sha3_512/test87.output.bin new file mode 100644 index 00000000..45352b9a --- /dev/null +++ b/sha3/tests/data/sha3_512/test87.output.bin @@ -0,0 +1,3 @@ +_d jys +qU+R?l˘a erB +z8p\ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test88.input.bin b/sha3/tests/data/sha3_512/test88.input.bin new file mode 100644 index 00000000..e0db0dc8 --- /dev/null +++ b/sha3/tests/data/sha3_512/test88.input.bin @@ -0,0 +1 @@ + Xf_CB 1Ͱ"ƃ z>RWYLﴧ(F2I'uOJOd= чDL͟!@@NmE+TB} \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test88.output.bin b/sha3/tests/data/sha3_512/test88.output.bin new file mode 100644 index 00000000..bdcab945 --- /dev/null +++ b/sha3/tests/data/sha3_512/test88.output.bin @@ -0,0 +1 @@ +zwӟQ)쒐@5nSXK[ep^3m2w|4q5: \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test89.input.bin b/sha3/tests/data/sha3_512/test89.input.bin new file mode 100644 index 00000000..79e91444 Binary files /dev/null and b/sha3/tests/data/sha3_512/test89.input.bin differ diff --git a/sha3/tests/data/sha3_512/test89.output.bin b/sha3/tests/data/sha3_512/test89.output.bin new file mode 100644 index 00000000..0a2dbed7 --- /dev/null +++ b/sha3/tests/data/sha3_512/test89.output.bin @@ -0,0 +1 @@ +/ŚCfl1ty(^f g oV+,~{?o8*w^TU.'$ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test9.input.bin b/sha3/tests/data/sha3_512/test9.input.bin new file mode 100644 index 00000000..c98711ad --- /dev/null +++ b/sha3/tests/data/sha3_512/test9.input.bin @@ -0,0 +1 @@ +fAcu \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test9.output.bin b/sha3/tests/data/sha3_512/test9.output.bin new file mode 100644 index 00000000..aea2ba2f --- /dev/null +++ b/sha3/tests/data/sha3_512/test9.output.bin @@ -0,0 +1 @@ +<lQ6z)Kr{)J9vY (M3:w;Vhu \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test90.input.bin b/sha3/tests/data/sha3_512/test90.input.bin new file mode 100644 index 00000000..ea51e82c --- /dev/null +++ b/sha3/tests/data/sha3_512/test90.input.bin @@ -0,0 +1 @@ +au,KWJ~@N=]RL ܰ:2uܭrS7yy&]|%yx< \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test90.output.bin b/sha3/tests/data/sha3_512/test90.output.bin new file mode 100644 index 00000000..08820418 --- /dev/null +++ b/sha3/tests/data/sha3_512/test90.output.bin @@ -0,0 +1,3 @@ + +g:N-# +;8R'VUJ|Uٙ0flW0q.\JWx$ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test91.input.bin b/sha3/tests/data/sha3_512/test91.input.bin new file mode 100644 index 00000000..47f32cf6 --- /dev/null +++ b/sha3/tests/data/sha3_512/test91.input.bin @@ -0,0 +1 @@ +5pc wNVS^GPw5DpFOdv*#zIRc '|Qs~z\U_ \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test91.output.bin b/sha3/tests/data/sha3_512/test91.output.bin new file mode 100644 index 00000000..2e36ff4e --- /dev/null +++ b/sha3/tests/data/sha3_512/test91.output.bin @@ -0,0 +1 @@ +4dTc뽓,sY=hg\L>~̱N%H]8U^z.Fm~;O9 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test92.input.bin b/sha3/tests/data/sha3_512/test92.input.bin new file mode 100644 index 00000000..203ee257 --- /dev/null +++ b/sha3/tests/data/sha3_512/test92.input.bin @@ -0,0 +1,2 @@ +/#@[r,YlE8^^cJ +*r>ݵ+g2aDʇf;Ifb \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test94.input.bin b/sha3/tests/data/sha3_512/test94.input.bin new file mode 100644 index 00000000..6ad6df94 Binary files /dev/null and b/sha3/tests/data/sha3_512/test94.input.bin differ diff --git a/sha3/tests/data/sha3_512/test94.output.bin b/sha3/tests/data/sha3_512/test94.output.bin new file mode 100644 index 00000000..7b4bfa89 Binary files /dev/null and b/sha3/tests/data/sha3_512/test94.output.bin differ diff --git a/sha3/tests/data/sha3_512/test95.input.bin b/sha3/tests/data/sha3_512/test95.input.bin new file mode 100644 index 00000000..33b94cb1 --- /dev/null +++ b/sha3/tests/data/sha3_512/test95.input.bin @@ -0,0 +1 @@ +&kyNHl7 7i+{t "a+6dc?$3ᘎŬXpyz `vR9 \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test95.output.bin b/sha3/tests/data/sha3_512/test95.output.bin new file mode 100644 index 00000000..dbd816e8 Binary files /dev/null and b/sha3/tests/data/sha3_512/test95.output.bin differ diff --git a/sha3/tests/data/sha3_512/test96.input.bin b/sha3/tests/data/sha3_512/test96.input.bin new file mode 100644 index 00000000..86781ad4 Binary files /dev/null and b/sha3/tests/data/sha3_512/test96.input.bin differ diff --git a/sha3/tests/data/sha3_512/test96.output.bin b/sha3/tests/data/sha3_512/test96.output.bin new file mode 100644 index 00000000..c5e939ab --- /dev/null +++ b/sha3/tests/data/sha3_512/test96.output.bin @@ -0,0 +1,2 @@ +ť&XSKg +у۝I>,JdWSF=V|x*.dibco \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test97.input.bin b/sha3/tests/data/sha3_512/test97.input.bin new file mode 100644 index 00000000..840e1d6b --- /dev/null +++ b/sha3/tests/data/sha3_512/test97.input.bin @@ -0,0 +1,2 @@ +8 +5,ߨdx}:ugK]Zcfnm$RW~ؚLDL?$ Plp˼+*r?Dൢɬj I \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test97.output.bin b/sha3/tests/data/sha3_512/test97.output.bin new file mode 100644 index 00000000..f60c9fd6 Binary files /dev/null and b/sha3/tests/data/sha3_512/test97.output.bin differ diff --git a/sha3/tests/data/sha3_512/test98.input.bin b/sha3/tests/data/sha3_512/test98.input.bin new file mode 100644 index 00000000..47b8b282 Binary files /dev/null and b/sha3/tests/data/sha3_512/test98.input.bin differ diff --git a/sha3/tests/data/sha3_512/test98.output.bin b/sha3/tests/data/sha3_512/test98.output.bin new file mode 100644 index 00000000..f740f7d2 --- /dev/null +++ b/sha3/tests/data/sha3_512/test98.output.bin @@ -0,0 +1 @@ +֫ AmGPXWau CWt]`g,kURg֦C,"U \ No newline at end of file diff --git a/sha3/tests/data/sha3_512/test99.input.bin b/sha3/tests/data/sha3_512/test99.input.bin new file mode 100644 index 00000000..8ffc3c37 Binary files /dev/null and b/sha3/tests/data/sha3_512/test99.input.bin differ diff --git a/sha3/tests/data/sha3_512/test99.output.bin b/sha3/tests/data/sha3_512/test99.output.bin new file mode 100644 index 00000000..e36f6184 --- /dev/null +++ b/sha3/tests/data/sha3_512/test99.output.bin @@ -0,0 +1,2 @@ + +(Ehˆ>.nX­A0T {#Ut!tAI/Dm`@3U{v٠IYa Xڳ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test104.output.bin b/sha3/tests/data/sha3_shake128/test104.output.bin new file mode 100644 index 00000000..32ef6aee Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test104.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test105.input.bin b/sha3/tests/data/sha3_shake128/test105.input.bin new file mode 100644 index 00000000..12b383e4 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test105.input.bin @@ -0,0 +1,2 @@ +W뗙LwS]Mh<>gqS'LJX휽ԆiI6O*Q&Tr]δjjm#Q~3PV`j̯z%K|n +!iiA8H \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test105.output.bin b/sha3/tests/data/sha3_shake128/test105.output.bin new file mode 100644 index 00000000..822adba4 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test105.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test106.input.bin b/sha3/tests/data/sha3_shake128/test106.input.bin new file mode 100644 index 00000000..4bee27fe --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test106.input.bin @@ -0,0 +1,3 @@ +dm1PLy=rgcGIGSgFXj$?\P +nWڻx ++Rpڢ |өPќO>Ks#A[N}m .Nx \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test106.output.bin b/sha3/tests/data/sha3_shake128/test106.output.bin new file mode 100644 index 00000000..34d2c7fb Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test106.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test107.input.bin b/sha3/tests/data/sha3_shake128/test107.input.bin new file mode 100644 index 00000000..69b78d43 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test107.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test107.output.bin b/sha3/tests/data/sha3_shake128/test107.output.bin new file mode 100644 index 00000000..1a31ac92 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test107.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test108.input.bin b/sha3/tests/data/sha3_shake128/test108.input.bin new file mode 100644 index 00000000..7f3ebdde Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test108.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test108.output.bin b/sha3/tests/data/sha3_shake128/test108.output.bin new file mode 100644 index 00000000..bb2090de Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test108.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test109.input.bin b/sha3/tests/data/sha3_shake128/test109.input.bin new file mode 100644 index 00000000..27b98aa5 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test109.input.bin @@ -0,0 +1,2 @@ +O!1*8 ٫o<90gD@TW%bfHRtsy +C<`UQA%=v)~Ǡ ).!tG0A \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test109.output.bin b/sha3/tests/data/sha3_shake128/test109.output.bin new file mode 100644 index 00000000..87b58ecc Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test109.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test11.input.bin b/sha3/tests/data/sha3_shake128/test11.input.bin new file mode 100644 index 00000000..f41e1b9a --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test11.input.bin @@ -0,0 +1 @@ +B"'a;oS \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test11.output.bin b/sha3/tests/data/sha3_shake128/test11.output.bin new file mode 100644 index 00000000..75da71ec --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test11.output.bin @@ -0,0 +1 @@ + ]L\#Yom]^O>Gs93ll:e{(>|jɃ 1^4nm36%vm_p}\ؽK#Pr$lL}Fn=`%ON'bZ6q4fG@K`D RCr*Ӌ"ȝ2 j<6'*1,_U3%McRmsчg/hT_ dB,M+/a{v E_r(d`)# k!JԀ>*߂+%m5N \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test110.input.bin b/sha3/tests/data/sha3_shake128/test110.input.bin new file mode 100644 index 00000000..578ca7d1 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test110.input.bin @@ -0,0 +1 @@ +u8=~YQs^gb'Y / oI*{,Sa/w2e^4i])]m \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test110.output.bin b/sha3/tests/data/sha3_shake128/test110.output.bin new file mode 100644 index 00000000..98357ee7 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test110.output.bin @@ -0,0 +1,3 @@ +҉d3_118( x.-_p0ė9fƂn GE +<!ʴ8:L!Y@fw: s{l 4o^jd"m¤+`gDϞK#5'k3 BDru.sߐ w]^6Wh0xQE`QϚ5nSXO}(T!+(}]=zf8&A?I VPշe`"t:sœcN֏|`J/C (r+)o/~XK+NKm^oD+xb.َS'%&>$a;:y&|c<+(h煝"IXctXRe!pܫaAHZӈ0p۟nui}W6#6R߃=sj5CcV2vq\3)QT +c WyW5-]{095o:`xCd,,٬^jO \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test111.input.bin b/sha3/tests/data/sha3_shake128/test111.input.bin new file mode 100644 index 00000000..aa83a838 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test111.input.bin @@ -0,0 +1 @@ +G·IHFY!P25xO,@K[j{;۠,_YeyÂq1 ,ȻS;CD^ *ףTW`unv \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test111.output.bin b/sha3/tests/data/sha3_shake128/test111.output.bin new file mode 100644 index 00000000..f33c35a3 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test111.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test112.input.bin b/sha3/tests/data/sha3_shake128/test112.input.bin new file mode 100644 index 00000000..054fc217 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test112.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test112.output.bin b/sha3/tests/data/sha3_shake128/test112.output.bin new file mode 100644 index 00000000..d1fd0924 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test112.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test113.input.bin b/sha3/tests/data/sha3_shake128/test113.input.bin new file mode 100644 index 00000000..2c446502 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test113.input.bin @@ -0,0 +1,2 @@ +X֩E$VgpAp@rKy͋ev|~tLZkɮLZ 2h3ɝ9R1}[]^}Z`]_\+ +#y#S2,N \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test113.output.bin b/sha3/tests/data/sha3_shake128/test113.output.bin new file mode 100644 index 00000000..cf8541b6 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test113.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test114.input.bin b/sha3/tests/data/sha3_shake128/test114.input.bin new file mode 100644 index 00000000..d1cefe00 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test114.input.bin @@ -0,0 +1 @@ +t9mgյ, N?K>msNN]jr5@#Tf%ꗕ30y+co J(`Yc-e'~"r_嵮 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test114.output.bin b/sha3/tests/data/sha3_shake128/test114.output.bin new file mode 100644 index 00000000..4bb28852 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test114.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test115.input.bin b/sha3/tests/data/sha3_shake128/test115.input.bin new file mode 100644 index 00000000..3f20aaf1 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test115.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test115.output.bin b/sha3/tests/data/sha3_shake128/test115.output.bin new file mode 100644 index 00000000..fb6c12ef Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test115.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test116.input.bin b/sha3/tests/data/sha3_shake128/test116.input.bin new file mode 100644 index 00000000..a6fd6d89 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test116.input.bin @@ -0,0 +1 @@ +\hL4c򒑿&./B*ݜ3/=|41 m_HW9OG";1jnXgZUIÍv0aʫi( 9- \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test116.output.bin b/sha3/tests/data/sha3_shake128/test116.output.bin new file mode 100644 index 00000000..ea85a54f Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test116.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test117.input.bin b/sha3/tests/data/sha3_shake128/test117.input.bin new file mode 100644 index 00000000..2784049e --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test117.input.bin @@ -0,0 +1 @@ +.ooeG) ?)׬o`z2C>#ul\.*L_cbdPXeq@Jm+ODuT4i4 Za]@Wۙ1BbEtE \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test117.output.bin b/sha3/tests/data/sha3_shake128/test117.output.bin new file mode 100644 index 00000000..808333d6 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test117.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test118.input.bin b/sha3/tests/data/sha3_shake128/test118.input.bin new file mode 100644 index 00000000..2077f3da --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test118.input.bin @@ -0,0 +1 @@ +ڱG lB1uV(RBj ڲCr dhkǶzSLBc슟*qc"Jabsϣ0"${B$ +8&k2mX= !jG\ +78Gė?qqߵmx0m;|>,@;yȠ|NetБ4!L5^7F`u<Yd/5wfw(P*8f ,8r1! \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test122.input.bin b/sha3/tests/data/sha3_shake128/test122.input.bin new file mode 100644 index 00000000..f8ae339b --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test122.input.bin @@ -0,0 +1 @@ +bohiYYk=Yei-=yx!Z">Ec`0(ãg([iiD~!b Skމ%qf$k!)= W- 5]% \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test122.output.bin b/sha3/tests/data/sha3_shake128/test122.output.bin new file mode 100644 index 00000000..74aa478c Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test122.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test123.input.bin b/sha3/tests/data/sha3_shake128/test123.input.bin new file mode 100644 index 00000000..b010172a --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test123.input.bin @@ -0,0 +1 @@ +eoĸ |hu Nj_s$Gx%'F3YtnJW|RLRG#y\UDlΐlwJŹL"Vu]˖:KNY| y@ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test123.output.bin b/sha3/tests/data/sha3_shake128/test123.output.bin new file mode 100644 index 00000000..bbb89344 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test123.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test124.input.bin b/sha3/tests/data/sha3_shake128/test124.input.bin new file mode 100644 index 00000000..02d4a4d3 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test124.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test124.output.bin b/sha3/tests/data/sha3_shake128/test124.output.bin new file mode 100644 index 00000000..ef4900b7 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test124.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test125.input.bin b/sha3/tests/data/sha3_shake128/test125.input.bin new file mode 100644 index 00000000..1d34f83e Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test125.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test125.output.bin b/sha3/tests/data/sha3_shake128/test125.output.bin new file mode 100644 index 00000000..b38e49b6 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test125.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test126.input.bin b/sha3/tests/data/sha3_shake128/test126.input.bin new file mode 100644 index 00000000..78a544e8 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test126.input.bin @@ -0,0 +1,2 @@ +E\ziDtY=*t(ghFfnQhJÃ+;K]*RJh +pWF=<_+Ƨ0WjUۉVwG&{9P?S \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test126.output.bin b/sha3/tests/data/sha3_shake128/test126.output.bin new file mode 100644 index 00000000..baa8f19c Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test126.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test127.input.bin b/sha3/tests/data/sha3_shake128/test127.input.bin new file mode 100644 index 00000000..71c98702 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test127.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test127.output.bin b/sha3/tests/data/sha3_shake128/test127.output.bin new file mode 100644 index 00000000..d09bb8d2 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test127.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test128.input.bin b/sha3/tests/data/sha3_shake128/test128.input.bin new file mode 100644 index 00000000..dfddbc47 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test128.input.bin @@ -0,0 +1,4 @@ +/ŕ nc6?uu +a31(Lkv1[FC.0 ZR;k +nb +l]e,7iJtoFӲ&ޥS9:E¥-Ue \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test128.output.bin b/sha3/tests/data/sha3_shake128/test128.output.bin new file mode 100644 index 00000000..823ac5c3 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test128.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test129.input.bin b/sha3/tests/data/sha3_shake128/test129.input.bin new file mode 100644 index 00000000..6a853339 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test129.input.bin @@ -0,0 +1,2 @@ ++mf^!&|m2A)6+]/h +rQu#L(cf!TV_[F;F s%mni3NV'h_ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test129.output.bin b/sha3/tests/data/sha3_shake128/test129.output.bin new file mode 100644 index 00000000..abb33e30 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test129.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test13.input.bin b/sha3/tests/data/sha3_shake128/test13.input.bin new file mode 100644 index 00000000..e68fe561 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test13.input.bin @@ -0,0 +1 @@ +[<) \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test13.output.bin b/sha3/tests/data/sha3_shake128/test13.output.bin new file mode 100644 index 00000000..ddd3e141 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test13.output.bin @@ -0,0 +1 @@ +t a)S;t{O+@@_erW){KԐ!E%6Ƌ!MÆ>xUY.4yl9)V kg:)Z "Ϙ&0bcXOM ޮuZ~ۥ;&Q`cOŧCU>&r8zRD]~ASg8 rrhbV˿P;Pw.IKI/kmz'c<<1ͬhF&zESOb_&Tp _ӗ?Uo t1Ô0 +3;(1bR KD 5*/Ʃ,uI>uՀV&R.j-?| >KqzZ)eeDa!1r9OZ'P…Ȳk aKc_Z=@yi7gIvӧ vfb \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test130.input.bin b/sha3/tests/data/sha3_shake128/test130.input.bin new file mode 100644 index 00000000..0169cf31 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test130.input.bin @@ -0,0 +1,2 @@ +P,ܫb3Hj)ử +'41DYH"=R{K&Bִ%y* +ʵb a \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test131.output.bin b/sha3/tests/data/sha3_shake128/test131.output.bin new file mode 100644 index 00000000..0fd89072 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test131.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test132.input.bin b/sha3/tests/data/sha3_shake128/test132.input.bin new file mode 100644 index 00000000..92a71ce4 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test132.input.bin @@ -0,0 +1 @@ +芰S\ Lz|}T73Ð1TpnGwCBsBo_ba7za- ߫^!P`2^MUO`!i+yZw53GޟCV{^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test132.output.bin b/sha3/tests/data/sha3_shake128/test132.output.bin new file mode 100644 index 00000000..ffac5112 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test132.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test133.input.bin b/sha3/tests/data/sha3_shake128/test133.input.bin new file mode 100644 index 00000000..86d9e207 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test133.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test133.output.bin b/sha3/tests/data/sha3_shake128/test133.output.bin new file mode 100644 index 00000000..2b5cfabe Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test133.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test134.input.bin b/sha3/tests/data/sha3_shake128/test134.input.bin new file mode 100644 index 00000000..8204a5b0 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test134.input.bin @@ -0,0 +1 @@ +Y ǩ$%ejmAXzL>;1aEϸ=2Zb_%ڛ\l *ŋ[P{&?0T8Q #ݴЇn5S6:-閸^p6tx*~Zp8m;'tS[^Q}_{"aK=)7-8WR|ݪX \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test135.output.bin b/sha3/tests/data/sha3_shake128/test135.output.bin new file mode 100644 index 00000000..19e16e5e Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test135.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test136.input.bin b/sha3/tests/data/sha3_shake128/test136.input.bin new file mode 100644 index 00000000..d1749286 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test136.input.bin @@ -0,0 +1 @@ +qѤVC*.M/ !G2:`@gsKqxܞ9w`!qyz4Q()]7Uyoo؉kI2|q+$-R2,t AF]v=RۘIӰ֨/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test136.output.bin b/sha3/tests/data/sha3_shake128/test136.output.bin new file mode 100644 index 00000000..051559d3 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test136.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test137.input.bin b/sha3/tests/data/sha3_shake128/test137.input.bin new file mode 100644 index 00000000..1ef8a0e9 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test137.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test137.output.bin b/sha3/tests/data/sha3_shake128/test137.output.bin new file mode 100644 index 00000000..6fbda9e3 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test137.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test138.input.bin b/sha3/tests/data/sha3_shake128/test138.input.bin new file mode 100644 index 00000000..5adeaf84 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test138.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test138.output.bin b/sha3/tests/data/sha3_shake128/test138.output.bin new file mode 100644 index 00000000..1796a884 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test138.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test139.input.bin b/sha3/tests/data/sha3_shake128/test139.input.bin new file mode 100644 index 00000000..79b46f4d --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test139.input.bin @@ -0,0 +1 @@ +&Mp$=!Iqadp`؂a]A8V@wxnUhU2pG-ы~+~ 3lN"\;#)nO(-I_|iu },lF)ps  \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test139.output.bin b/sha3/tests/data/sha3_shake128/test139.output.bin new file mode 100644 index 00000000..8f6101cd --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test139.output.bin @@ -0,0 +1,4 @@ +w}04L›vUeІ3v' +%ZavP<^IF>5f6GŅ#37AuBu҉e +dn#rw=F&n { & i4|92N~l 4'u-̈L`;b:7ϗc(yS,4EPl n=!"F<-F$0 +1Xfǥ #e=:sJXxKMT\,r޳)Ǵb09{Ib9[ȿ(˸%>Sᛈ/U_Pf!gho_T}Y=H4-Rcvq ɊO{q:6g!Xo \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test14.input.bin b/sha3/tests/data/sha3_shake128/test14.input.bin new file mode 100644 index 00000000..efef93b3 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test14.input.bin @@ -0,0 +1 @@ +F'2(/8;F \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test14.output.bin b/sha3/tests/data/sha3_shake128/test14.output.bin new file mode 100644 index 00000000..aefb4383 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test14.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test140.input.bin b/sha3/tests/data/sha3_shake128/test140.input.bin new file mode 100644 index 00000000..9634578b --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test140.input.bin @@ -0,0 +1 @@ +n$ff"k2웩O ÙA¥Й'b49bS|('sekn J78j0wHi\*v %w?Ul6-Kt,,IꎗO30e \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test140.output.bin b/sha3/tests/data/sha3_shake128/test140.output.bin new file mode 100644 index 00000000..cff4733e Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test140.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test141.input.bin b/sha3/tests/data/sha3_shake128/test141.input.bin new file mode 100644 index 00000000..cf209ba1 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test141.input.bin @@ -0,0 +1 @@ +O q<.N<*s4@6NǵZPw;o}lEX.~#Eڵ adTVBF>4wƲU7j¡jbWp|D)nm3 [`7x8<<"3^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test141.output.bin b/sha3/tests/data/sha3_shake128/test141.output.bin new file mode 100644 index 00000000..bbcd619e Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test141.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test142.input.bin b/sha3/tests/data/sha3_shake128/test142.input.bin new file mode 100644 index 00000000..bc838d1f --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test142.input.bin @@ -0,0 +1 @@ +!g!b>GaRNlrU)hs`zy|< %ƈPꫮFyY&\#J?46L/\tHpb$m_U*TFO- tH0C") \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test142.output.bin b/sha3/tests/data/sha3_shake128/test142.output.bin new file mode 100644 index 00000000..ec5d2225 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test142.output.bin @@ -0,0 +1 @@ +<*Jp)(B#TOht$T}uiͩuH9@zZf!}HTF/ʨqҀf|n)^_ؒt9SgV17((SibVX^Q'7 ZtN3lij9jf ik]z3RSc_dK87KfIdb= x>HA.slwofbu9:ÑZ5RoM߯~~zG%>%I?2Ozќ%Ru.I bp 'W"7)JCe5 /YV(Gj@/.9 5|FW81;&2-pP|fM ՗T;?l$_ݝ D- G S DOɴy{SsX-ym19׻HS%=gxtD1,P(l on]t5"p \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test143.input.bin b/sha3/tests/data/sha3_shake128/test143.input.bin new file mode 100644 index 00000000..c63256ae --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test143.input.bin @@ -0,0 +1,2 @@ + NvG WO@vgOihM 6} q365 )zZ\At[ɻLZA\y~c8ׁjTZo +[l3fYBCh \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test143.output.bin b/sha3/tests/data/sha3_shake128/test143.output.bin new file mode 100644 index 00000000..aa220996 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test143.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test144.input.bin b/sha3/tests/data/sha3_shake128/test144.input.bin new file mode 100644 index 00000000..4eb647e3 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test144.input.bin @@ -0,0 +1 @@ +@<:$,l xS9ڲi8\v7B;T}6|k<x357[oơOPLri r,lgc@ay6=\ߓ?$K͍~f߯ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test144.output.bin b/sha3/tests/data/sha3_shake128/test144.output.bin new file mode 100644 index 00000000..5995aa7e Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test144.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test145.input.bin b/sha3/tests/data/sha3_shake128/test145.input.bin new file mode 100644 index 00000000..70f53077 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test145.input.bin @@ -0,0 +1,2 @@ +}[~Em&tv81vM48c_%y/kXՓ_Yn?aѰp\SRRI=v̆9u*(S +@8(LK4P.Eׁ O"N=Ȝ诲 ⑔&ĐթQZ~|4%yb."=JRYЦwZTJ0'(}.C%ݫb`'ov /י*?uw[ik:PMJs<~lv mmL,gP`-{ +R4R̒O_Ep@^T˕dwX4 +CzXPl;K \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test147.input.bin b/sha3/tests/data/sha3_shake128/test147.input.bin new file mode 100644 index 00000000..9950b95c Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test147.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test147.output.bin b/sha3/tests/data/sha3_shake128/test147.output.bin new file mode 100644 index 00000000..fb8ad914 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test147.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test148.input.bin b/sha3/tests/data/sha3_shake128/test148.input.bin new file mode 100644 index 00000000..800598b4 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test148.input.bin @@ -0,0 +1 @@ +v9apEZѯx)D~kú&@Ow_W#}4s#p-pVݣmZZLh2ȿy ]_[~({C^B7KUK;j*P!S \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test148.output.bin b/sha3/tests/data/sha3_shake128/test148.output.bin new file mode 100644 index 00000000..214ad7b0 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test148.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test149.input.bin b/sha3/tests/data/sha3_shake128/test149.input.bin new file mode 100644 index 00000000..277902c8 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test149.input.bin @@ -0,0 +1,2 @@ +ea M~MX.hIY X=X^x + lHC^.٫K祫yz^[ݣAe|仴NV7N nq/Tp28cks=;oN#uɹo& \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test149.output.bin b/sha3/tests/data/sha3_shake128/test149.output.bin new file mode 100644 index 00000000..e20673b7 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test149.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test15.input.bin b/sha3/tests/data/sha3_shake128/test15.input.bin new file mode 100644 index 00000000..49ce179d --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test15.input.bin @@ -0,0 +1 @@ +a]з(foWm I-9Vs \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test157.output.bin b/sha3/tests/data/sha3_shake128/test157.output.bin new file mode 100644 index 00000000..c70486d4 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test157.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test158.input.bin b/sha3/tests/data/sha3_shake128/test158.input.bin new file mode 100644 index 00000000..5a689a41 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test158.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test158.output.bin b/sha3/tests/data/sha3_shake128/test158.output.bin new file mode 100644 index 00000000..4babe8fa --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test158.output.bin @@ -0,0 +1,4 @@ +{;}ď `\OH-!<4'ƫln}]^!Ep伕^~YjR~?iѱ] a2ϖn8PBwKE6c[βRUn N] c)M-$)loc+0 +KΧn1 [N+_2@W:)D;"ft˺l6+vB 1-D djDB)tKV'1׮;mP{g!ټ*1<=խG9VZQ5kmθ*1 +|ϺD2,rS=dMΊc, LƋ$K02v4@rcWx`Ȓ%-tkA%[A.娐Z-n( ~S`c +ɔZFa:;/iJ\͖~='(*_` |fm'YTY$\jw e_4*GEGlK $ @ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test159.input.bin b/sha3/tests/data/sha3_shake128/test159.input.bin new file mode 100644 index 00000000..37bfee39 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test159.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test159.output.bin b/sha3/tests/data/sha3_shake128/test159.output.bin new file mode 100644 index 00000000..d8dcf379 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test159.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test16.input.bin b/sha3/tests/data/sha3_shake128/test16.input.bin new file mode 100644 index 00000000..84983066 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test16.input.bin @@ -0,0 +1 @@ +"Ky" \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test16.output.bin b/sha3/tests/data/sha3_shake128/test16.output.bin new file mode 100644 index 00000000..bfb52100 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test16.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test160.input.bin b/sha3/tests/data/sha3_shake128/test160.input.bin new file mode 100644 index 00000000..e6f39601 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test160.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test160.output.bin b/sha3/tests/data/sha3_shake128/test160.output.bin new file mode 100644 index 00000000..04125a9b Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test160.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test161.input.bin b/sha3/tests/data/sha3_shake128/test161.input.bin new file mode 100644 index 00000000..5c9ab0c5 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test161.input.bin @@ -0,0 +1,3 @@ +!*|3=.7x?< sٙcʓb;&NHL:[o?0)Vv_Wv~Vu3nPȡ1 +݌A|lj_:)SU[ +7E=Dzt;g1O$ğJpak8_ѻI78S0U=ZU̻=pO)+FQU|̀aMw!kHdY'A:, GzoTQ)*F L \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test162.output.bin b/sha3/tests/data/sha3_shake128/test162.output.bin new file mode 100644 index 00000000..1880e77b Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test162.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test163.input.bin b/sha3/tests/data/sha3_shake128/test163.input.bin new file mode 100644 index 00000000..b7d86900 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test163.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test163.output.bin b/sha3/tests/data/sha3_shake128/test163.output.bin new file mode 100644 index 00000000..4ae936bc Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test163.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test164.input.bin b/sha3/tests/data/sha3_shake128/test164.input.bin new file mode 100644 index 00000000..6a3e8166 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test164.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test164.output.bin b/sha3/tests/data/sha3_shake128/test164.output.bin new file mode 100644 index 00000000..60b4d594 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test164.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test165.input.bin b/sha3/tests/data/sha3_shake128/test165.input.bin new file mode 100644 index 00000000..42ab3064 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test165.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test165.output.bin b/sha3/tests/data/sha3_shake128/test165.output.bin new file mode 100644 index 00000000..c4e02d6f Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test165.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test166.input.bin b/sha3/tests/data/sha3_shake128/test166.input.bin new file mode 100644 index 00000000..8b4dcb7b --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test166.input.bin @@ -0,0 +1 @@ +υbؘ}گ=FEn#&͵?h]Yn:ae50MjK^+z`vq2-[ܻ-dIm̒Z#O$ XQQa^`_i=UJϮiH )u@׈5M1b@௓ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test166.output.bin b/sha3/tests/data/sha3_shake128/test166.output.bin new file mode 100644 index 00000000..204bd9e7 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test166.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test167.input.bin b/sha3/tests/data/sha3_shake128/test167.input.bin new file mode 100644 index 00000000..83e7dec4 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test167.input.bin @@ -0,0 +1 @@ +*1&yD^Y]5Ln`_܄pB?033Ĥ2gʮOGF ~0a 'Fc>)[jL#dU{. #qRC]d*Ņ?h6y&z,~eo-;l4U| ظNgu \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test167.output.bin b/sha3/tests/data/sha3_shake128/test167.output.bin new file mode 100644 index 00000000..261f3972 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test167.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test168.input.bin b/sha3/tests/data/sha3_shake128/test168.input.bin new file mode 100644 index 00000000..82f2df44 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test168.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test168.output.bin b/sha3/tests/data/sha3_shake128/test168.output.bin new file mode 100644 index 00000000..007304f1 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test168.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test169.input.bin b/sha3/tests/data/sha3_shake128/test169.input.bin new file mode 100644 index 00000000..395db28a --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test169.input.bin @@ -0,0 +1 @@ +#ks޷f+ڥ{5VEW5f);ZD P `qáJu:Iþi!(h_QdbVyBITCKퟬ}4.)6J gG8BT)}#ZqrBVA𤎄Eۥl \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test169.output.bin b/sha3/tests/data/sha3_shake128/test169.output.bin new file mode 100644 index 00000000..5e2c8db0 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test169.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test17.input.bin b/sha3/tests/data/sha3_shake128/test17.input.bin new file mode 100644 index 00000000..0922640e --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test17.input.bin @@ -0,0 +1 @@ +R!݊DW~x!v \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test17.output.bin b/sha3/tests/data/sha3_shake128/test17.output.bin new file mode 100644 index 00000000..5d7d4469 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test17.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test170.input.bin b/sha3/tests/data/sha3_shake128/test170.input.bin new file mode 100644 index 00000000..8e7c6397 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test170.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test170.output.bin b/sha3/tests/data/sha3_shake128/test170.output.bin new file mode 100644 index 00000000..e7e831e9 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test170.output.bin @@ -0,0 +1 @@ +ٞ!f#uFˀ"7ڷgx0ù'A^ǩ]Ai9nMV>$]F0/qwTO!iBܦo^՟vŵ bnȜBPc5c xBP{g^-"0> FkK^Z/Y!ڇ&\7˕ߔ%_ $EYōݯ|׃$teN*!!OE/;b# -Hiw ̻@gannU~*.sب/2=HXzYUƳB* 0'!U>kǁ)2/`G\e<69~t8ZELG{ m^/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test182.output.bin b/sha3/tests/data/sha3_shake128/test182.output.bin new file mode 100644 index 00000000..7b7309de Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test182.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test183.input.bin b/sha3/tests/data/sha3_shake128/test183.input.bin new file mode 100644 index 00000000..765853e5 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test183.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test183.output.bin b/sha3/tests/data/sha3_shake128/test183.output.bin new file mode 100644 index 00000000..c9fdd1c7 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test183.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test184.input.bin b/sha3/tests/data/sha3_shake128/test184.input.bin new file mode 100644 index 00000000..e67c2c3b Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test184.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test184.output.bin b/sha3/tests/data/sha3_shake128/test184.output.bin new file mode 100644 index 00000000..869afc8f --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test184.output.bin @@ -0,0 +1,3 @@ +ads)%S~l/P^HF fD5PFrw닂{屻tP +z;v+n!.L3cja;U$,W1UnL\śz¯W vD_$%w D4eRLHCke69XH,WUXu[ Q[jl4&NnUpd/\WdQ_L5}:~5촖Y_ ^i0LZdIT@9iu)/?v82oM)K+OT@yyEa:7q`[%FfO) 6쥉LNg?Vw +LƵ l'2-O9 of:j}N.mR4TE[guvR]=3ν!&jo~ Wy +oXye$fwS9r]2dRA_2xWj*X|)SրE6@~=\@Oo%"ȶ3 W $uk hTMQ +x^: \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test188.output.bin b/sha3/tests/data/sha3_shake128/test188.output.bin new file mode 100644 index 00000000..dd9567b3 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test188.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test189.input.bin b/sha3/tests/data/sha3_shake128/test189.input.bin new file mode 100644 index 00000000..2fb1cb98 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test189.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test189.output.bin b/sha3/tests/data/sha3_shake128/test189.output.bin new file mode 100644 index 00000000..454bbd56 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test189.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test19.input.bin b/sha3/tests/data/sha3_shake128/test19.input.bin new file mode 100644 index 00000000..31b8f4fa --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test19.input.bin @@ -0,0 +1 @@ +uh=Ua@"T; ! \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test19.output.bin b/sha3/tests/data/sha3_shake128/test19.output.bin new file mode 100644 index 00000000..b8778d20 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test19.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test190.input.bin b/sha3/tests/data/sha3_shake128/test190.input.bin new file mode 100644 index 00000000..9b570e95 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test190.input.bin @@ -0,0 +1 @@ +SJ$qKԾ7Ȋ=.|T ׽g Z5YDc)1쪟g]5&i^؝ӌ,vΞYt2顾,qFAiъz!Ȱq^,T b[)^¶3n[}9pao.ZBgt 3#y=AFغ66)5+=&N AT >I^HJws&%6c`1۔غO, +%Zi߇SE#D? j[}>BS;vT߆eC1L*Ev$bah Y%×HL,lvnh)؂6`GTA7qgOn5JzG(>滺5K~ +L7,:Jop!& #斵Qx4y(3l9v™ iNӱ*~Q$ބ'k]T 9݄)f:P# '_ݾW \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test195.input.bin b/sha3/tests/data/sha3_shake128/test195.input.bin new file mode 100644 index 00000000..02673ece --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test195.input.bin @@ -0,0 +1,3 @@ +kMETm0熥u~ 1 + S15]2FS G0l -+E-OgkѨ&YA # +&`o̺Т 46Nl٧#M|ʼn uN[=`zImg{I,qxUWMK \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test195.output.bin b/sha3/tests/data/sha3_shake128/test195.output.bin new file mode 100644 index 00000000..aca0c4dd Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test195.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test196.input.bin b/sha3/tests/data/sha3_shake128/test196.input.bin new file mode 100644 index 00000000..0c60e8fd Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test196.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test196.output.bin b/sha3/tests/data/sha3_shake128/test196.output.bin new file mode 100644 index 00000000..98ea0efe --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test196.output.bin @@ -0,0 +1,3 @@ +Gl:bOz.Gr3|穦a; GW$sN@'>v, +1Bl[s ! +u|U vA2li#rQwަ'QOn˳M]HH%`q!BjG`fmYk?<!cE}ylO'hwx|/Dz-H^i".`:jKR@?dř0WEa闛V+5l="O1Qzؖ>WyޝJ~O|׭H-Gʰa-Trhs [gUƆQJ_^!OPcSqȕ/+TX(UIV> >tȠ_4QbnF?bQ[EK5a)C$S-M:DYV)Ufnf )͇/8β|` 24mFo3Yֵ?bRDHχQ} Ά唵MAJRl8lU7R \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test197.input.bin b/sha3/tests/data/sha3_shake128/test197.input.bin new file mode 100644 index 00000000..be15921f --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test197.input.bin @@ -0,0 +1 @@ +RQ2c[9:kzs!pߩF&i˻߀0rG+7KտyXb:>9樲)|Qx5a$q^ c7Syxv"F4oU4r^s|{jmGtrF}{+#P|Q},J \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test197.output.bin b/sha3/tests/data/sha3_shake128/test197.output.bin new file mode 100644 index 00000000..052a1da5 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test197.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test198.input.bin b/sha3/tests/data/sha3_shake128/test198.input.bin new file mode 100644 index 00000000..fd28078b --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test198.input.bin @@ -0,0 +1,2 @@ +שC:;Jz:^4WmmS -1p a(3OCס՜~kdoj5(YϹF +wR*\֬nabf~ S!eU͏4ݛqoG k"P<&Uwa*؋jg(hg!stY){2;ηa":Up^Drܪ7# 5\b \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test198.output.bin b/sha3/tests/data/sha3_shake128/test198.output.bin new file mode 100644 index 00000000..683a1d2c Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test198.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test199.input.bin b/sha3/tests/data/sha3_shake128/test199.input.bin new file mode 100644 index 00000000..6044629d --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test199.input.bin @@ -0,0 +1 @@ +p 'zrw|NC&hЙebVs6hzfyݝz3A:\"[!{_G2~9&-@C0;{^*ݦHYK X㐑汈)J$^a`Xv9u;%t6f#eA_6mTgCöW.@a&AI:ڐ# \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test199.output.bin b/sha3/tests/data/sha3_shake128/test199.output.bin new file mode 100644 index 00000000..6308fbd9 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test199.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test2.input.bin b/sha3/tests/data/sha3_shake128/test2.input.bin new file mode 100644 index 00000000..d50394ef --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test2.input.bin @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test2.output.bin b/sha3/tests/data/sha3_shake128/test2.output.bin new file mode 100644 index 00000000..0c710602 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test2.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test20.input.bin b/sha3/tests/data/sha3_shake128/test20.input.bin new file mode 100644 index 00000000..f825277c --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test20.input.bin @@ -0,0 +1 @@ +P5({Mʗ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test20.output.bin b/sha3/tests/data/sha3_shake128/test20.output.bin new file mode 100644 index 00000000..21bede72 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test20.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test200.input.bin b/sha3/tests/data/sha3_shake128/test200.input.bin new file mode 100644 index 00000000..25202dc5 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test200.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test200.output.bin b/sha3/tests/data/sha3_shake128/test200.output.bin new file mode 100644 index 00000000..6ab2795f Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test200.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test201.input.bin b/sha3/tests/data/sha3_shake128/test201.input.bin new file mode 100644 index 00000000..19cd3f69 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test201.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test201.output.bin b/sha3/tests/data/sha3_shake128/test201.output.bin new file mode 100644 index 00000000..f49ef415 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test201.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test202.input.bin b/sha3/tests/data/sha3_shake128/test202.input.bin new file mode 100644 index 00000000..61915861 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test202.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test202.output.bin b/sha3/tests/data/sha3_shake128/test202.output.bin new file mode 100644 index 00000000..4b87320a --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test202.output.bin @@ -0,0 +1,3 @@ +Rm$iӞf&B͸A|; &A` +ӈkP#| 8\G։Y.ݒ6{yC@e)@>!o'/&v$OLb9: \{I+~jey`˾L8?Zbպ+B1P&zPz@ p:ܲxc㪘 |,]td}M!Lzuh0:m rhE5x,V=1kW]ٽ߈xA[5xg+I C/͠WXC\ۇdk)|0̆Ӧ8zP?7ȊIdӅŊfnEghGM +8"J\_+ңE4sn;  ޯRֺ1l3R7QⳜJIW~*?Zhh03⽫s&ֽ%FX +SvЗ禦>X`(Żչ27NB)η(x"ZbS#fJ4G YU?u) CU>ot"K \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test207.output.bin b/sha3/tests/data/sha3_shake128/test207.output.bin new file mode 100644 index 00000000..2c99997f Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test207.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test208.input.bin b/sha3/tests/data/sha3_shake128/test208.input.bin new file mode 100644 index 00000000..c47ee536 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test208.input.bin @@ -0,0 +1,2 @@ +-s031(8<ʗNh@ Rk?JōГZ0Ė"ar.EWB C}t?+57]̞ߴ8Bᐤ<1c~W~`lM{c + :GkwxEM`lg)voLO'ޟ,;U~wl `2(8 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test208.output.bin b/sha3/tests/data/sha3_shake128/test208.output.bin new file mode 100644 index 00000000..acaf5acc Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test208.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test209.input.bin b/sha3/tests/data/sha3_shake128/test209.input.bin new file mode 100644 index 00000000..8be3f738 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test209.input.bin @@ -0,0 +1,2 @@ +Ua=0y.& 7BJmI(׭7MT#n_7oKܹu;9f2BEJwu>pX%; vτ3:Y҇̒#Nz'A& jX.dž1#'솅 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test209.output.bin b/sha3/tests/data/sha3_shake128/test209.output.bin new file mode 100644 index 00000000..514156da --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test209.output.bin @@ -0,0 +1 @@ +cYBf)͠7S.K}v~Z Ɨ_+{v廛wGSsV\ݯXc7x ZXWHU.ed >QDy,iGVւtrh~|L2!/9H/(Lx'>K^0G]T)?lӴXv+agV<h7ve3OcUND+ ݅BtXaCV.x! ˡ5fy3һ7-S#FXJMmM슣v -fC_[ms3r7%*,_o&%ZXKF[ ڳxDok1*H?[yũ.5g>-wj𓀆ک ǓCi4MGO} 5X6bGRʑ<>wKpeZԋԔ͖3x \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test21.input.bin b/sha3/tests/data/sha3_shake128/test21.input.bin new file mode 100644 index 00000000..bd6291ce --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test21.input.bin @@ -0,0 +1 @@ +aVU@gGQ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test21.output.bin b/sha3/tests/data/sha3_shake128/test21.output.bin new file mode 100644 index 00000000..d3caa2e7 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test21.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test210.input.bin b/sha3/tests/data/sha3_shake128/test210.input.bin new file mode 100644 index 00000000..12d7f2d6 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test210.input.bin @@ -0,0 +1 @@ +Dw≛rVUMlAG{уJ@)}^ۜm]DC`OR(ldpzjpC6s%&ST]ZܒynXՙ2$. ׭mr v#|N!+nyI͐3:wN*||2 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test210.output.bin b/sha3/tests/data/sha3_shake128/test210.output.bin new file mode 100644 index 00000000..042ee5bf Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test210.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test211.input.bin b/sha3/tests/data/sha3_shake128/test211.input.bin new file mode 100644 index 00000000..06b62b7f Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test211.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test211.output.bin b/sha3/tests/data/sha3_shake128/test211.output.bin new file mode 100644 index 00000000..a0fe3090 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test211.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test212.input.bin b/sha3/tests/data/sha3_shake128/test212.input.bin new file mode 100644 index 00000000..397fbdc5 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test212.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test212.output.bin b/sha3/tests/data/sha3_shake128/test212.output.bin new file mode 100644 index 00000000..4136c8c9 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test212.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test213.input.bin b/sha3/tests/data/sha3_shake128/test213.input.bin new file mode 100644 index 00000000..ff7c93ec --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test213.input.bin @@ -0,0 +1 @@ +;֤,z2)i-Ǚ ɝpZ\5+>L@fIݓΧuTj),L*v}|9jN$lgփgW68j'kQuLGH+r೔io֎^=YŬ@ó~6$JY͝(yox[';Dd5 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test213.output.bin b/sha3/tests/data/sha3_shake128/test213.output.bin new file mode 100644 index 00000000..a8e7155e Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test213.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test214.input.bin b/sha3/tests/data/sha3_shake128/test214.input.bin new file mode 100644 index 00000000..17d29a30 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test214.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test214.output.bin b/sha3/tests/data/sha3_shake128/test214.output.bin new file mode 100644 index 00000000..cf880a77 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test214.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test215.input.bin b/sha3/tests/data/sha3_shake128/test215.input.bin new file mode 100644 index 00000000..d082a217 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test215.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test215.output.bin b/sha3/tests/data/sha3_shake128/test215.output.bin new file mode 100644 index 00000000..1614e8f9 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test215.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test216.input.bin b/sha3/tests/data/sha3_shake128/test216.input.bin new file mode 100644 index 00000000..9b654101 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test216.input.bin @@ -0,0 +1,3 @@ +zjOOY#8It%.Y0bn{ى~ fDb5-Sנ/p7%Vq '™ʧߥ5R:51f^wlkFێ,ݝϺ২Uq-F=="90C;"F0A +3:R91\Fx[ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test218.output.bin b/sha3/tests/data/sha3_shake128/test218.output.bin new file mode 100644 index 00000000..5020492c Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test218.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test219.input.bin b/sha3/tests/data/sha3_shake128/test219.input.bin new file mode 100644 index 00000000..ca1f68da Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test219.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test219.output.bin b/sha3/tests/data/sha3_shake128/test219.output.bin new file mode 100644 index 00000000..67e803a0 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test219.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test22.input.bin b/sha3/tests/data/sha3_shake128/test22.input.bin new file mode 100644 index 00000000..7a679902 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test22.input.bin @@ -0,0 +1 @@ +܏NLxD{;T6* \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test22.output.bin b/sha3/tests/data/sha3_shake128/test22.output.bin new file mode 100644 index 00000000..ec3c2ec4 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test22.output.bin @@ -0,0 +1 @@ +_aW9N u:iq{#7֊2 ^?Aܑ 6PCAoY"r;e&幛 W6:+NXdìBED>Ȅؚu%˦QB,В䳿$HsIVJRbgK } ,ZG #P6}0ql_j`e>=۔D~"녎KٝNbՈPŵNabpՒ[ö284{KәMKzk)4*v$Kh7~fqwj.AA"實eF!*%`o|m'[G0Fvasa#)9ǟL7Mn:cbams9Ev)`[^.p=mHv}\aXpaZz^\$!I-]՘YWDϽ/_$J O %.%7%N>2h\#zd2i0'yYڪ;iYnO \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test220.input.bin b/sha3/tests/data/sha3_shake128/test220.input.bin new file mode 100644 index 00000000..dc3eba08 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test220.input.bin @@ -0,0 +1,4 @@ +vF8;NQ 20iPҗ +HVy +s9;(,jtg 8əpMbpO'Ͱe_PІWSp 8q/>m߳]shE9'K"</ʼ !f׉9qKxD%"}*=vQ^| +FA5eN|<7[SMd A|/cs \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test220.output.bin b/sha3/tests/data/sha3_shake128/test220.output.bin new file mode 100644 index 00000000..0ff99cd0 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test220.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test221.input.bin b/sha3/tests/data/sha3_shake128/test221.input.bin new file mode 100644 index 00000000..d518e526 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test221.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test221.output.bin b/sha3/tests/data/sha3_shake128/test221.output.bin new file mode 100644 index 00000000..4840547c Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test221.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test222.input.bin b/sha3/tests/data/sha3_shake128/test222.input.bin new file mode 100644 index 00000000..5bd09da0 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test222.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test222.output.bin b/sha3/tests/data/sha3_shake128/test222.output.bin new file mode 100644 index 00000000..716a191c Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test222.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test223.input.bin b/sha3/tests/data/sha3_shake128/test223.input.bin new file mode 100644 index 00000000..61d516ba Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test223.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test223.output.bin b/sha3/tests/data/sha3_shake128/test223.output.bin new file mode 100644 index 00000000..5aaeeb9b Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test223.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test224.input.bin b/sha3/tests/data/sha3_shake128/test224.input.bin new file mode 100644 index 00000000..ea14dca4 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test224.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test224.output.bin b/sha3/tests/data/sha3_shake128/test224.output.bin new file mode 100644 index 00000000..a4846abd Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test224.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test225.input.bin b/sha3/tests/data/sha3_shake128/test225.input.bin new file mode 100644 index 00000000..39f24030 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test225.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test225.output.bin b/sha3/tests/data/sha3_shake128/test225.output.bin new file mode 100644 index 00000000..d6009fb4 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test225.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test226.input.bin b/sha3/tests/data/sha3_shake128/test226.input.bin new file mode 100644 index 00000000..a694388a --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test226.input.bin @@ -0,0 +1 @@ +gSm68؈̫4+zen=oBLfAqeÏǒhεf]6!TӺX13t6stdrƮzn' \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test226.output.bin b/sha3/tests/data/sha3_shake128/test226.output.bin new file mode 100644 index 00000000..f7f0b972 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test226.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test227.input.bin b/sha3/tests/data/sha3_shake128/test227.input.bin new file mode 100644 index 00000000..a4b4f480 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test227.input.bin @@ -0,0 +1 @@ +9?]MH]7QJX6)!z8#5Rs!R*X5a& }:AvvJ"ԕzT]RDul %̏L6/ 68Oz[)?kܒV^6v=Ҡj>=DvyK=&+yV>APd%n4^QU܊!Jxj-P~35d' \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test227.output.bin b/sha3/tests/data/sha3_shake128/test227.output.bin new file mode 100644 index 00000000..c0802caa Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test227.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test228.input.bin b/sha3/tests/data/sha3_shake128/test228.input.bin new file mode 100644 index 00000000..9cb3e056 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test228.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test228.output.bin b/sha3/tests/data/sha3_shake128/test228.output.bin new file mode 100644 index 00000000..8f29bd6f Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test228.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test229.input.bin b/sha3/tests/data/sha3_shake128/test229.input.bin new file mode 100644 index 00000000..6dda249b Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test229.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test229.output.bin b/sha3/tests/data/sha3_shake128/test229.output.bin new file mode 100644 index 00000000..18064227 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test229.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test23.input.bin b/sha3/tests/data/sha3_shake128/test23.input.bin new file mode 100644 index 00000000..fcc84d2d --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test23.input.bin @@ -0,0 +1 @@ +W_B-3xm_- \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test23.output.bin b/sha3/tests/data/sha3_shake128/test23.output.bin new file mode 100644 index 00000000..b23cc705 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test23.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test230.input.bin b/sha3/tests/data/sha3_shake128/test230.input.bin new file mode 100644 index 00000000..c2b4e2b7 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test230.input.bin @@ -0,0 +1 @@ +8u$ ਵe@jpIn,!txoҔ֧TS5(M_@*ܒ871yoJ܁oDkx[ yhAxׄ|#ء),ouJQq)m> a/KI}>JѦc74~ Ak.JFE21vmIyo`r9E +r_ljSis6tzz/#ށ>I?d$:0l@hC1{Ҙoq"T \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test233.input.bin b/sha3/tests/data/sha3_shake128/test233.input.bin new file mode 100644 index 00000000..263e6e48 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test233.input.bin @@ -0,0 +1,2 @@ +m"y3-=6OW? k] =;_ +b+xő3HQSY.o \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test233.output.bin b/sha3/tests/data/sha3_shake128/test233.output.bin new file mode 100644 index 00000000..6a305b8b Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test233.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test234.input.bin b/sha3/tests/data/sha3_shake128/test234.input.bin new file mode 100644 index 00000000..6e7c2d03 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test234.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test234.output.bin b/sha3/tests/data/sha3_shake128/test234.output.bin new file mode 100644 index 00000000..2a7b18f5 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test234.output.bin @@ -0,0 +1,5 @@ + 86=zH=-%>R .f-@%+.!J +xf/w}JtM]EC⍊w0k,hc41LPNI%C/60Gyj'^<؀?{eێ(XxIUZUia+݋^ OL̇g7]?S點Lk}.Fͩ9dWJPW3&*~e׽B'lo +r1FNqHK!`IH \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test24.input.bin b/sha3/tests/data/sha3_shake128/test24.input.bin new file mode 100644 index 00000000..6edeea70 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test24.input.bin @@ -0,0 +1 @@ +T]Wi~,)ȫ5`o \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test24.output.bin b/sha3/tests/data/sha3_shake128/test24.output.bin new file mode 100644 index 00000000..9fc6033b Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test24.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test240.input.bin b/sha3/tests/data/sha3_shake128/test240.input.bin new file mode 100644 index 00000000..4344db77 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test240.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test240.output.bin b/sha3/tests/data/sha3_shake128/test240.output.bin new file mode 100644 index 00000000..347c0e01 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test240.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test241.input.bin b/sha3/tests/data/sha3_shake128/test241.input.bin new file mode 100644 index 00000000..30304e7b --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test241.input.bin @@ -0,0 +1,2 @@ +_΁ XW@>A; (%C]Cg';Ŋ0DгgB5&z@+;>;\%Fnz`7"+Li15Z-9{V5H:?fex8iAͳREH)NPc%-G@Z)-к! ;4ӝ0^\V7{u +7&KVo@wE_V$1z- \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test241.output.bin b/sha3/tests/data/sha3_shake128/test241.output.bin new file mode 100644 index 00000000..71b0487b Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test241.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test242.input.bin b/sha3/tests/data/sha3_shake128/test242.input.bin new file mode 100644 index 00000000..9f83b1c0 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test242.input.bin @@ -0,0 +1,2 @@ +arnNap]_왿iKgK}׀a^P-k?CHr{} 0)'.JYhbea p̍niŀ6! cZ$=ŇGXT@ѰLd[}" +b:V8ٚ,@o2R+7^l׀(ӈE EAuSVik?9z )69;\YנKzïh y1Nu} \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test242.output.bin b/sha3/tests/data/sha3_shake128/test242.output.bin new file mode 100644 index 00000000..811c31fb --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test242.output.bin @@ -0,0 +1,3 @@ +6Y4O| + &5xYsk)2+]׸U Oc1|!97 VW7\_Mϣ~-l3Jċp-}q*y4BKV;V}saV#+:*8j0DT{ڻ 9__5 g6Q1*jcD,&~cegEf4T?ˮIQk ĩ ,_ӽז2{]Tf0W$דlX(k'젛OmqX萮 Z 13 9 H2o!G>lVbN+l/Tם!7>' \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test243.input.bin b/sha3/tests/data/sha3_shake128/test243.input.bin new file mode 100644 index 00000000..aa906dac Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test243.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test243.output.bin b/sha3/tests/data/sha3_shake128/test243.output.bin new file mode 100644 index 00000000..e9d8c73e Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test243.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test244.input.bin b/sha3/tests/data/sha3_shake128/test244.input.bin new file mode 100644 index 00000000..d2160ac1 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test244.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test244.output.bin b/sha3/tests/data/sha3_shake128/test244.output.bin new file mode 100644 index 00000000..93749a40 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test244.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test245.input.bin b/sha3/tests/data/sha3_shake128/test245.input.bin new file mode 100644 index 00000000..7e958206 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test245.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test245.output.bin b/sha3/tests/data/sha3_shake128/test245.output.bin new file mode 100644 index 00000000..6687fb91 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test245.output.bin @@ -0,0 +1,5 @@ +jxfz )h>~o9cㄆYPoUm/7&Qbu>+Wf% ʳi)^2b`m96G,g`6o#Na<^ߧȻ~"Ңv nMx+tZ-[w{_p9<vb5Cu!J4UTgsr7k+LmN i\)%ѕ\9GvM `;£Q3eyq6d)6*I.nȗ1r + +†#"42ԏvNFYտ&dx6R{#n20:a}`Y=]3x'"MS-?MZO/2n70u9R1v )r +4<ߦp^ї >xT wC:bRƤ?#L~lИ'MIG'ns~ +ˁ{X*WColv=$4P( \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test246.input.bin b/sha3/tests/data/sha3_shake128/test246.input.bin new file mode 100644 index 00000000..514589ea Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test246.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test246.output.bin b/sha3/tests/data/sha3_shake128/test246.output.bin new file mode 100644 index 00000000..b20ce365 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test246.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test247.input.bin b/sha3/tests/data/sha3_shake128/test247.input.bin new file mode 100644 index 00000000..58ac5c4f --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test247.input.bin @@ -0,0 +1,3 @@ +)iD}T򪛰UML PTk-1ޜhɭN… g]so c+U YŚ?a\kuٓ@cxrj:?7;bkWE`dnS= +?zc v3BaY07e?D*]rɔOp9u΅Pr,m, +]vp>C4Ã*T~yrꀒ3 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test247.output.bin b/sha3/tests/data/sha3_shake128/test247.output.bin new file mode 100644 index 00000000..0e65fb7e Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test247.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test248.input.bin b/sha3/tests/data/sha3_shake128/test248.input.bin new file mode 100644 index 00000000..998aaf05 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test248.input.bin @@ -0,0 +1,2 @@ +rEc:DNjNXWZ<'3hu Pj4=}[>PpEdrj`uvӖ?Udm W{YLy:KFCxA8SE -)A˫PڎQ1EL:%D-KzzY(]VON헕o0B^JH%oc'-mcHWuE +#3KF/Dºo2_'b*XvoM,j(`KurkyAvxU&£?æB95Pp({ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test250.output.bin b/sha3/tests/data/sha3_shake128/test250.output.bin new file mode 100644 index 00000000..afeafa0a Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test250.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test251.input.bin b/sha3/tests/data/sha3_shake128/test251.input.bin new file mode 100644 index 00000000..e5174fd6 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test251.input.bin @@ -0,0 +1,3 @@ +Ki<%3lV;L8uh4GRԧ=[T82 pφX +`wVѢh9Jm󛟯WhW{*P_uǠK:5` *şeX^"Kyƾ)f-h7`Fz +%y\ܡ𚗜!Sͻ&Tn/PhZFaIeԶ>[Щm=ju{3sOD_tqi~+ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test251.output.bin b/sha3/tests/data/sha3_shake128/test251.output.bin new file mode 100644 index 00000000..53be3967 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test251.output.bin @@ -0,0 +1,3 @@ +TsΠ#@xˈ:XA,@<--m[<~5Tv6gk7|lXU!MǩlMcEsr': +gkG(~&xßvEF 3tɯAU52-7}~w섃*GgzIB"sd[e\- +* # c|0\pj N,G'4e|Y9u*<>yMT:Gg@ց}arH&$HDg<٪?Zvd-x9 #{XF[1 Oh֜Ϯer h@=?`\K_ʻFŔX(0ͩ DSm1 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test30.input.bin b/sha3/tests/data/sha3_shake128/test30.input.bin new file mode 100644 index 00000000..fa7268e4 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test30.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test30.output.bin b/sha3/tests/data/sha3_shake128/test30.output.bin new file mode 100644 index 00000000..ee936e80 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test30.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test31.input.bin b/sha3/tests/data/sha3_shake128/test31.input.bin new file mode 100644 index 00000000..dc6e42e1 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test31.input.bin @@ -0,0 +1,2 @@ + : +8<@p , \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test31.output.bin b/sha3/tests/data/sha3_shake128/test31.output.bin new file mode 100644 index 00000000..4af82760 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test31.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test32.input.bin b/sha3/tests/data/sha3_shake128/test32.input.bin new file mode 100644 index 00000000..032b03e0 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test32.input.bin @@ -0,0 +1 @@ +QlZ̵"򍠛#-B22Ã[) \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test32.output.bin b/sha3/tests/data/sha3_shake128/test32.output.bin new file mode 100644 index 00000000..4dd603b1 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test32.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test33.input.bin b/sha3/tests/data/sha3_shake128/test33.input.bin new file mode 100644 index 00000000..2636bc45 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test33.input.bin @@ -0,0 +1 @@ +/| k~l-]~] \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test33.output.bin b/sha3/tests/data/sha3_shake128/test33.output.bin new file mode 100644 index 00000000..8cf51dde Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test33.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test34.input.bin b/sha3/tests/data/sha3_shake128/test34.input.bin new file mode 100644 index 00000000..7aaecfde --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test34.input.bin @@ -0,0 +1 @@ +ޏ?Kp@Ecø%1x~M ^OZ F \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test34.output.bin b/sha3/tests/data/sha3_shake128/test34.output.bin new file mode 100644 index 00000000..0b5149b4 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test34.output.bin @@ -0,0 +1,5 @@ +=辰elS;t'LA;rrJ +{G|lPofܡ.<x$u)iq/%B +Joހ5yIlN[ H+ڜ[|3`Tz4Ɓ訔X~<~* 2ZI1] $vx6$Xŵ#0*(ry.xJ裸Z>aI"(W/@lѻIfIR#$T @Ф,dzre X{0ÿ9=M`$~-\v^:IIj"9AP+jiwݟu8(>7p;d!%%F]xf\2XM9#uf32 1&"޺`^WJ +%8ڋBc;dĐA"2+ +dOD|\ B1MFG.2Q;}vѫq#.p%/z \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test35.input.bin b/sha3/tests/data/sha3_shake128/test35.input.bin new file mode 100644 index 00000000..8be18416 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test35.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test35.output.bin b/sha3/tests/data/sha3_shake128/test35.output.bin new file mode 100644 index 00000000..fe3cb2c3 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test35.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test36.input.bin b/sha3/tests/data/sha3_shake128/test36.input.bin new file mode 100644 index 00000000..bd37ce58 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test36.input.bin @@ -0,0 +1 @@ ++#} }>^*"gZcxN[N \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test36.output.bin b/sha3/tests/data/sha3_shake128/test36.output.bin new file mode 100644 index 00000000..899fd9e9 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test36.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test37.input.bin b/sha3/tests/data/sha3_shake128/test37.input.bin new file mode 100644 index 00000000..3f70b9dc --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test37.input.bin @@ -0,0 +1 @@ +Giz '4za:5bck]VO8' L+k \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test43.output.bin b/sha3/tests/data/sha3_shake128/test43.output.bin new file mode 100644 index 00000000..589dc06a Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test43.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test44.input.bin b/sha3/tests/data/sha3_shake128/test44.input.bin new file mode 100644 index 00000000..f458e5bf --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test44.input.bin @@ -0,0 +1,2 @@ +3p#7 +H.5F|N~I `K.n[@қz \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test44.output.bin b/sha3/tests/data/sha3_shake128/test44.output.bin new file mode 100644 index 00000000..c5f22b4c Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test44.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test45.input.bin b/sha3/tests/data/sha3_shake128/test45.input.bin new file mode 100644 index 00000000..8484eefc --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test45.input.bin @@ -0,0 +1,2 @@ +hTLt-, +؄Q D81'Vk28*k5 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test45.output.bin b/sha3/tests/data/sha3_shake128/test45.output.bin new file mode 100644 index 00000000..ecca6a09 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test45.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test46.input.bin b/sha3/tests/data/sha3_shake128/test46.input.bin new file mode 100644 index 00000000..871dabcf --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test46.input.bin @@ -0,0 +1 @@ ++0V [ڸ %]8Fr4 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test46.output.bin b/sha3/tests/data/sha3_shake128/test46.output.bin new file mode 100644 index 00000000..3bca36e2 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test46.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test47.input.bin b/sha3/tests/data/sha3_shake128/test47.input.bin new file mode 100644 index 00000000..ba4594ad --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test47.input.bin @@ -0,0 +1 @@ +.툁 W-scra8KεEwlʐ~~ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test47.output.bin b/sha3/tests/data/sha3_shake128/test47.output.bin new file mode 100644 index 00000000..e6f4e2d7 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test47.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test48.input.bin b/sha3/tests/data/sha3_shake128/test48.input.bin new file mode 100644 index 00000000..d6259031 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test48.input.bin @@ -0,0 +1 @@ +CrQ֒Bu O@S,?\QNԥ0M G&6KZQٻ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test48.output.bin b/sha3/tests/data/sha3_shake128/test48.output.bin new file mode 100644 index 00000000..970e2a4f Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test48.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test49.input.bin b/sha3/tests/data/sha3_shake128/test49.input.bin new file mode 100644 index 00000000..a2e03996 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test49.input.bin @@ -0,0 +1 @@ +Q_oVN'|ЌV$W)؜$ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test49.output.bin b/sha3/tests/data/sha3_shake128/test49.output.bin new file mode 100644 index 00000000..0c031f98 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test49.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test5.input.bin b/sha3/tests/data/sha3_shake128/test5.input.bin new file mode 100644 index 00000000..ef149867 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test5.input.bin @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test5.output.bin b/sha3/tests/data/sha3_shake128/test5.output.bin new file mode 100644 index 00000000..77a37fe2 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test5.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test50.input.bin b/sha3/tests/data/sha3_shake128/test50.input.bin new file mode 100644 index 00000000..b0fcd9fc --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test50.input.bin @@ -0,0 +1 @@ +p4`7!5"莧߯u 3W)RyAؤ8bج{C12ӁmAndzfy\ en%$"¾RG'NԢq jVo=[>HjgkGAo,ʌ(+JBv7%>x\pvG=[82o(\B_:-D'I %|˺(l/[d$3ʃE!~MTOx:/d=!F, rOvE~<ߛlr}^ؽn,F-6$R&^8mKScO?3g f;TVFON)?Px% D&Xc";*^0!ۦVı~ѡ +89խj" ڊe9J{IjЎ̗m"yg?æ } \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test58.output.bin b/sha3/tests/data/sha3_shake128/test58.output.bin new file mode 100644 index 00000000..3f66a08a Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test58.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test59.input.bin b/sha3/tests/data/sha3_shake128/test59.input.bin new file mode 100644 index 00000000..62c5f7a8 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test59.input.bin @@ -0,0 +1 @@ +\_f..(JNks^]Q19Lr$ }3]5U LM?p7g;G 0-[#R@q$'2=tZ\~]20JZl 6{Pee_ޤzӊ*A~Hi([ZQ|P˹ۡU;N@.yhf+d:m_k2tHh8wLOmPq݊A\Hm +[fOL'|Y \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test71.input.bin b/sha3/tests/data/sha3_shake128/test71.input.bin new file mode 100644 index 00000000..45546141 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test71.input.bin @@ -0,0 +1 @@ +ʎT#LmSsK _y: PB.ɍ~pD{#اw`YOr \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test71.output.bin b/sha3/tests/data/sha3_shake128/test71.output.bin new file mode 100644 index 00000000..037fa372 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test71.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test72.input.bin b/sha3/tests/data/sha3_shake128/test72.input.bin new file mode 100644 index 00000000..34b52d0b Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test72.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test72.output.bin b/sha3/tests/data/sha3_shake128/test72.output.bin new file mode 100644 index 00000000..feba6584 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test72.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test73.input.bin b/sha3/tests/data/sha3_shake128/test73.input.bin new file mode 100644 index 00000000..3f6a3d3d Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test73.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test73.output.bin b/sha3/tests/data/sha3_shake128/test73.output.bin new file mode 100644 index 00000000..b4f9503f Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test73.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test74.input.bin b/sha3/tests/data/sha3_shake128/test74.input.bin new file mode 100644 index 00000000..206cbe08 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test74.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test74.output.bin b/sha3/tests/data/sha3_shake128/test74.output.bin new file mode 100644 index 00000000..0215997b Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test74.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test75.input.bin b/sha3/tests/data/sha3_shake128/test75.input.bin new file mode 100644 index 00000000..be1ac2da --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test75.input.bin @@ -0,0 +1 @@ +&Vs}ʸ`._TeT, uZOM%p>";[<ᐜ ԱMpt \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test75.output.bin b/sha3/tests/data/sha3_shake128/test75.output.bin new file mode 100644 index 00000000..f7f91740 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test75.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test76.input.bin b/sha3/tests/data/sha3_shake128/test76.input.bin new file mode 100644 index 00000000..fbd5dce7 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test76.input.bin @@ -0,0 +1 @@ +=׿YJ5'}}Z[Mm/dqQA̽{ΠRCޮ|MFv?wӄY< \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test76.output.bin b/sha3/tests/data/sha3_shake128/test76.output.bin new file mode 100644 index 00000000..be960d57 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test76.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test77.input.bin b/sha3/tests/data/sha3_shake128/test77.input.bin new file mode 100644 index 00000000..5fcf443c --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test77.input.bin @@ -0,0 +1 @@ +<5@f3X6_\؏ɬX*]XѴcpNº4HԦ<#aY^| \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test77.output.bin b/sha3/tests/data/sha3_shake128/test77.output.bin new file mode 100644 index 00000000..59014512 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test77.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test78.input.bin b/sha3/tests/data/sha3_shake128/test78.input.bin new file mode 100644 index 00000000..78d1a46e --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test78.input.bin @@ -0,0 +1,2 @@ +d^ʆ5| + adt֑ͽeKRTi1j SƎ2NŤ֢ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test78.output.bin b/sha3/tests/data/sha3_shake128/test78.output.bin new file mode 100644 index 00000000..0881f9ab Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test78.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test79.input.bin b/sha3/tests/data/sha3_shake128/test79.input.bin new file mode 100644 index 00000000..8ec52985 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test79.input.bin @@ -0,0 +1,2 @@ +eK∹ tqh + *47,qΪ%ުWo1)aϛI[jIl[< \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test79.output.bin b/sha3/tests/data/sha3_shake128/test79.output.bin new file mode 100644 index 00000000..63b1c593 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test79.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test8.input.bin b/sha3/tests/data/sha3_shake128/test8.input.bin new file mode 100644 index 00000000..4258f91d --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test8.input.bin @@ -0,0 +1 @@ +̃ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test8.output.bin b/sha3/tests/data/sha3_shake128/test8.output.bin new file mode 100644 index 00000000..859a57d5 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test8.output.bin @@ -0,0 +1,4 @@ +S{$MX4 cVgZ_|ɇpSo䅨f,}Ba!!4~ 춴K?MUrk$mG,]~ّlҔɲor]<4*ƑhMOKx)$# +]4T]'}j?932o/ӱS:8Y3?f*6rhŋBpeTzo]+rvL,zp_v2ֵ1FTw \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test80.input.bin b/sha3/tests/data/sha3_shake128/test80.input.bin new file mode 100644 index 00000000..223995c9 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test80.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test80.output.bin b/sha3/tests/data/sha3_shake128/test80.output.bin new file mode 100644 index 00000000..b75f49c7 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test80.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test81.input.bin b/sha3/tests/data/sha3_shake128/test81.input.bin new file mode 100644 index 00000000..5cf1dae3 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test81.input.bin @@ -0,0 +1 @@ + z_6z͊H|'O3k7FXG_z5{eo{恵աꀅ⮜ 1Tmj0 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test81.output.bin b/sha3/tests/data/sha3_shake128/test81.output.bin new file mode 100644 index 00000000..cc4b6b95 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test81.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test82.input.bin b/sha3/tests/data/sha3_shake128/test82.input.bin new file mode 100644 index 00000000..5ebb1af3 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test82.input.bin @@ -0,0 +1 @@ + OWwJ"1%k. oYu6]Sڃc#o<^ |hw=I\" \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test82.output.bin b/sha3/tests/data/sha3_shake128/test82.output.bin new file mode 100644 index 00000000..b28ae308 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test82.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test83.input.bin b/sha3/tests/data/sha3_shake128/test83.input.bin new file mode 100644 index 00000000..8af74e5b --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test83.input.bin @@ -0,0 +1,3 @@ +(bXVP Lw(a, ?o +&_?'3~rg{}!e +M2Ibv8ۭp,|&@ϋNT \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test83.output.bin b/sha3/tests/data/sha3_shake128/test83.output.bin new file mode 100644 index 00000000..1842f65c Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test83.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test84.input.bin b/sha3/tests/data/sha3_shake128/test84.input.bin new file mode 100644 index 00000000..c5affa06 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test84.input.bin @@ -0,0 +1,2 @@ +cH);w wTNQfȁitnB?vj  >;oytp +z}(L;xp=+xan \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test84.output.bin b/sha3/tests/data/sha3_shake128/test84.output.bin new file mode 100644 index 00000000..22af3fcf Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test84.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test85.input.bin b/sha3/tests/data/sha3_shake128/test85.input.bin new file mode 100644 index 00000000..cffc8df4 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test85.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test85.output.bin b/sha3/tests/data/sha3_shake128/test85.output.bin new file mode 100644 index 00000000..12111d2c Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test85.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test86.input.bin b/sha3/tests/data/sha3_shake128/test86.input.bin new file mode 100644 index 00000000..7db9b52d Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test86.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test86.output.bin b/sha3/tests/data/sha3_shake128/test86.output.bin new file mode 100644 index 00000000..085a9493 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test86.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test87.input.bin b/sha3/tests/data/sha3_shake128/test87.input.bin new file mode 100644 index 00000000..4ab2eb77 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test87.input.bin @@ -0,0 +1 @@ +hn ij)/3͚J1zI/\v镬Ȼ{xЁ%]9GY ΂"AM%FR \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test87.output.bin b/sha3/tests/data/sha3_shake128/test87.output.bin new file mode 100644 index 00000000..afc6ea9a Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test87.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test88.input.bin b/sha3/tests/data/sha3_shake128/test88.input.bin new file mode 100644 index 00000000..98c75ade --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test88.input.bin @@ -0,0 +1 @@ +drN1Tt?4dK6޽dۧ\>@邻p0418FvO/E5;)o';oV< \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test88.output.bin b/sha3/tests/data/sha3_shake128/test88.output.bin new file mode 100644 index 00000000..7e94a104 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test88.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test89.input.bin b/sha3/tests/data/sha3_shake128/test89.input.bin new file mode 100644 index 00000000..e0db0dc8 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test89.input.bin @@ -0,0 +1 @@ + Xf_CB 1Ͱ"ƃ z>RWYLﴧ(F2I'uOJOd= чDL͟!@@NmE+TB} \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test89.output.bin b/sha3/tests/data/sha3_shake128/test89.output.bin new file mode 100644 index 00000000..8cff37c6 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test89.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test9.input.bin b/sha3/tests/data/sha3_shake128/test9.input.bin new file mode 100644 index 00000000..dbdc2b7a --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test9.input.bin @@ -0,0 +1 @@ +JO $Q%& \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test9.output.bin b/sha3/tests/data/sha3_shake128/test9.output.bin new file mode 100644 index 00000000..20db689a Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test9.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test90.input.bin b/sha3/tests/data/sha3_shake128/test90.input.bin new file mode 100644 index 00000000..79e91444 Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test90.input.bin differ diff --git a/sha3/tests/data/sha3_shake128/test90.output.bin b/sha3/tests/data/sha3_shake128/test90.output.bin new file mode 100644 index 00000000..fb32ecc6 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test90.output.bin @@ -0,0 +1,3 @@ +k j296~xqQr*GU`*|,LdđOd G51fU Gqm{~tO7ܽW=w.jTFY_~R/pa*kdՇ.b׃^"C, _aQ8"4T_S +فh~o:5zIH~n x.tX/Ȱ* %,Y=JOѻkY6F{/VnyYLyOnύ"4ޛhRڃ #Z +_w"UaL"Q7) \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test91.input.bin b/sha3/tests/data/sha3_shake128/test91.input.bin new file mode 100644 index 00000000..ea51e82c --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test91.input.bin @@ -0,0 +1 @@ +au,KWJ~@N=]RL ܰ:2uܭrS7yy&]|%yx< \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test91.output.bin b/sha3/tests/data/sha3_shake128/test91.output.bin new file mode 100644 index 00000000..30ff3902 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test91.output.bin @@ -0,0 +1,3 @@ +tl93)6Ų&X򑄛3ǹ/C.oAu_Ky%kRJJȵ$x7; +y{u׺8ECqws d91`h7殦ŋw[0gv/ gzR%)oZ*!;uꗟeA\{.X%Qo%cgHTԊkvJYB<cnug ;"/':mQt)8'cϗ^/x5edZoVՕEt` iX2 q62b[J䶡(#LDz"=Zm۩;cDmﻜ#-8NĐ/\c]2MrT}-Uu/jQXLo;{H0Vx9}j +\dPWf_Q^†OԜє  fg-'OB?첩 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test92.input.bin b/sha3/tests/data/sha3_shake128/test92.input.bin new file mode 100644 index 00000000..47f32cf6 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test92.input.bin @@ -0,0 +1 @@ +5pc wNVS^GPw5DpFOdv*#zIRc '|Qs~z\U_ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake128/test92.output.bin b/sha3/tests/data/sha3_shake128/test92.output.bin new file mode 100644 index 00000000..e576642d Binary files /dev/null and b/sha3/tests/data/sha3_shake128/test92.output.bin differ diff --git a/sha3/tests/data/sha3_shake128/test93.input.bin b/sha3/tests/data/sha3_shake128/test93.input.bin new file mode 100644 index 00000000..203ee257 --- /dev/null +++ b/sha3/tests/data/sha3_shake128/test93.input.bin @@ -0,0 +1,2 @@ +/#@[r,YlE8^^cJ +*r>ݵ+g2aDʇ+F^zX<ö,gpLJbai +W3\ -p drv 'uLE!6J]Qp[4T0m{":Cl dmhn;Y*,)h_BVF. 0%;D'I"raMXc>aG5l#gpmZ`O槓wI_i-ȰTpӮBe%$$B:K9:lWz10`y_";u!{.Kތ`3X$T\79eCnp;ߙ4eL 5N*bd!s}p}?x0߳6Wp1z˃TO T[rXI d?`:ܣ^'Nl4gk" \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test102.input.bin b/sha3/tests/data/sha3_shake256/test102.input.bin new file mode 100644 index 00000000..3aa029cf Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test102.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test102.output.bin b/sha3/tests/data/sha3_shake256/test102.output.bin new file mode 100644 index 00000000..d64a2d37 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test102.output.bin @@ -0,0 +1,3 @@ + +9+x6U|c!Jl~yq̓>>e& Ky|Y5,CW1fɚ$M& ĨBW>L{;0Պyev^D{Atv6w_ щIYC:vT]{Q-mvqtEfXU\UnpP QkFՇ +Ä[Ych%n*S^Ejc.$JwQڬ|\uҶ9j5]O5/ݖB\mִhb!H1UeOĤ8`_,A؟As;s/υQ(/M+plN \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test103.input.bin b/sha3/tests/data/sha3_shake256/test103.input.bin new file mode 100644 index 00000000..20e92750 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test103.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test103.output.bin b/sha3/tests/data/sha3_shake256/test103.output.bin new file mode 100644 index 00000000..4064cdc5 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test103.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test104.input.bin b/sha3/tests/data/sha3_shake256/test104.input.bin new file mode 100644 index 00000000..69627111 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test104.input.bin @@ -0,0 +1 @@ +<,R<Ĥ(-Fkc$>­A0T {#Ut!tAI/Dm`@3U{v٠IYa Xڳ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test104.output.bin b/sha3/tests/data/sha3_shake256/test104.output.bin new file mode 100644 index 00000000..79d6dce3 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test104.output.bin @@ -0,0 +1,2 @@ +N}E@=C:+3{:;ޮ\B.}ߛL;[^PXeV 0aص  +56xS&PjP,.Deqt *x ޼宒 ]Zc|~ZM@?z"@/3"_!»砱ړT~91v?OD9mM2m Ђ^pt JJK]ڌ*dB/I,S6f87F_yn8}q1m6b6e$RVVw2gnzaA \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test112.input.bin b/sha3/tests/data/sha3_shake256/test112.input.bin new file mode 100644 index 00000000..054fc217 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test112.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test112.output.bin b/sha3/tests/data/sha3_shake256/test112.output.bin new file mode 100644 index 00000000..b7567c88 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test112.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test113.input.bin b/sha3/tests/data/sha3_shake256/test113.input.bin new file mode 100644 index 00000000..2c446502 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test113.input.bin @@ -0,0 +1,2 @@ +X֩E$VgpAp@rKy͋ev|~tLZkɮLZ 2h3ɝ9R1}[]^}Z`]_\+ +#y#S2,N \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test113.output.bin b/sha3/tests/data/sha3_shake256/test113.output.bin new file mode 100644 index 00000000..da003951 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test113.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test114.input.bin b/sha3/tests/data/sha3_shake256/test114.input.bin new file mode 100644 index 00000000..d1cefe00 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test114.input.bin @@ -0,0 +1 @@ +t9mgյ, N?K>msNN]jr5@#Tf%ꗕ30y+co J(`Yc-e'~"r_嵮 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test114.output.bin b/sha3/tests/data/sha3_shake256/test114.output.bin new file mode 100644 index 00000000..0e8ca873 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test114.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test115.input.bin b/sha3/tests/data/sha3_shake256/test115.input.bin new file mode 100644 index 00000000..3f20aaf1 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test115.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test115.output.bin b/sha3/tests/data/sha3_shake256/test115.output.bin new file mode 100644 index 00000000..d9649258 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test115.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test116.input.bin b/sha3/tests/data/sha3_shake256/test116.input.bin new file mode 100644 index 00000000..a6fd6d89 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test116.input.bin @@ -0,0 +1 @@ +\hL4c򒑿&./B*ݜ3/=|41 m_HW9OG";1jnXgZUIÍv0aʫi( 9- \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test116.output.bin b/sha3/tests/data/sha3_shake256/test116.output.bin new file mode 100644 index 00000000..45b8fb12 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test116.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test117.input.bin b/sha3/tests/data/sha3_shake256/test117.input.bin new file mode 100644 index 00000000..2784049e --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test117.input.bin @@ -0,0 +1 @@ +.ooeG) ?)׬o`z2C>#ul\.*L_cbdPXeq@Jm+ODuT4i4 Za]@Wۙ1BbEtE \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test117.output.bin b/sha3/tests/data/sha3_shake256/test117.output.bin new file mode 100644 index 00000000..ceaa50c8 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test117.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test118.input.bin b/sha3/tests/data/sha3_shake256/test118.input.bin new file mode 100644 index 00000000..2077f3da --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test118.input.bin @@ -0,0 +1 @@ +ڱG lB1uV(RBj ڲCr dhkǶzSLBc슟*qc"Jabsϣ0"${BEc`0(ãg([iiD~!b Skމ%qf$k!)= W- 5]% \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test122.output.bin b/sha3/tests/data/sha3_shake256/test122.output.bin new file mode 100644 index 00000000..46f2beaa Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test122.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test123.input.bin b/sha3/tests/data/sha3_shake256/test123.input.bin new file mode 100644 index 00000000..b010172a --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test123.input.bin @@ -0,0 +1 @@ +eoĸ |hu Nj_s$Gx%'F3YtnJW|RLRG#y\UDlΐlwJŹL"Vu]˖:KNY| y@ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test123.output.bin b/sha3/tests/data/sha3_shake256/test123.output.bin new file mode 100644 index 00000000..9c4c8075 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test123.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test124.input.bin b/sha3/tests/data/sha3_shake256/test124.input.bin new file mode 100644 index 00000000..02d4a4d3 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test124.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test124.output.bin b/sha3/tests/data/sha3_shake256/test124.output.bin new file mode 100644 index 00000000..e6b7805f Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test124.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test125.input.bin b/sha3/tests/data/sha3_shake256/test125.input.bin new file mode 100644 index 00000000..1d34f83e Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test125.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test125.output.bin b/sha3/tests/data/sha3_shake256/test125.output.bin new file mode 100644 index 00000000..b053c457 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test125.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test126.input.bin b/sha3/tests/data/sha3_shake256/test126.input.bin new file mode 100644 index 00000000..78a544e8 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test126.input.bin @@ -0,0 +1,2 @@ +E\ziDtY=*t(ghFfnQhJÃ+;K]*RJh +pWF=<_+Ƨ0WjUۉVwG&{9P?S \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test126.output.bin b/sha3/tests/data/sha3_shake256/test126.output.bin new file mode 100644 index 00000000..64072bab Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test126.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test127.input.bin b/sha3/tests/data/sha3_shake256/test127.input.bin new file mode 100644 index 00000000..71c98702 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test127.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test127.output.bin b/sha3/tests/data/sha3_shake256/test127.output.bin new file mode 100644 index 00000000..33701643 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test127.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test128.input.bin b/sha3/tests/data/sha3_shake256/test128.input.bin new file mode 100644 index 00000000..dfddbc47 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test128.input.bin @@ -0,0 +1,4 @@ +/ŕ nc6?uu +a31(Lkv1[FC.0 ZR;k +nb +l]e,7iJtoFӲ&ޥS9:E¥-Ue \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test128.output.bin b/sha3/tests/data/sha3_shake256/test128.output.bin new file mode 100644 index 00000000..c18d7292 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test128.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test129.input.bin b/sha3/tests/data/sha3_shake256/test129.input.bin new file mode 100644 index 00000000..6a853339 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test129.input.bin @@ -0,0 +1,2 @@ ++mf^!&|m2A)6+]/h +rQu#L(cf!TV_[F;F s%mni3NV'h_ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test129.output.bin b/sha3/tests/data/sha3_shake256/test129.output.bin new file mode 100644 index 00000000..1516f773 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test129.output.bin @@ -0,0 +1,2 @@ +㇅hoAd9cr@?(Fb]2K΋@&NMo1ن;9'PB;b$H{u\1)~`$ ro]}>SmLDJkSNMkJYVCP1+?p~8iȲE@ȓ,beaН3aYќd+Ю4'kfy|B`NmF5㽲|(Q{b:^3[hgOF2rؓ@+yo`۟l/W yʝ$ 3ݙ^L"q&7˹h9;rj#/4U=wҊC }c4[X4Ɣ3f\~¯6,$*d<Chss )v䚇,ZЍpz 8l:Py'ADZ_Xm(%{q524׫㿱d:gV n'@]ݵUc(X+-@ * d߅*&?~C=!'^m/I+M eۥ!HƈK|Zf;BFV-𮰋U)b#>+]HQ+W$0,cl46q5b"=R{K&Bִ%y* +ʵb a \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test131.output.bin b/sha3/tests/data/sha3_shake256/test131.output.bin new file mode 100644 index 00000000..ed9eceae Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test131.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test132.input.bin b/sha3/tests/data/sha3_shake256/test132.input.bin new file mode 100644 index 00000000..92a71ce4 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test132.input.bin @@ -0,0 +1 @@ +芰S\ Lz|}T73Ð1TpnGwCBsBo_ba7za- ߫^!P`2^MUO`!i+yZw53GޟCV{^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test132.output.bin b/sha3/tests/data/sha3_shake256/test132.output.bin new file mode 100644 index 00000000..a6b3ccc6 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test132.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test133.input.bin b/sha3/tests/data/sha3_shake256/test133.input.bin new file mode 100644 index 00000000..86d9e207 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test133.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test133.output.bin b/sha3/tests/data/sha3_shake256/test133.output.bin new file mode 100644 index 00000000..09602c73 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test133.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test134.input.bin b/sha3/tests/data/sha3_shake256/test134.input.bin new file mode 100644 index 00000000..8204a5b0 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test134.input.bin @@ -0,0 +1 @@ +Y ǩ$%ejmAXzL>;1aEϸ=2Zb_%ڛ\l *ŋ[P{&?0T8Q #ݴЇn5S6:-閸^p6tx*~Zp8m;'tS[^Q}_{"aK=)7-8WR|ݪX \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test135.output.bin b/sha3/tests/data/sha3_shake256/test135.output.bin new file mode 100644 index 00000000..1d76312b Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test135.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test136.input.bin b/sha3/tests/data/sha3_shake256/test136.input.bin new file mode 100644 index 00000000..d1749286 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test136.input.bin @@ -0,0 +1 @@ +qѤVC*.M/ !G2:`@gsKqxܞ9w`!qyz4Q()]7Uyoo؉kI2|q+$-R2,t AF]v=RۘIӰ֨/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test136.output.bin b/sha3/tests/data/sha3_shake256/test136.output.bin new file mode 100644 index 00000000..1b6f454c Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test136.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test137.input.bin b/sha3/tests/data/sha3_shake256/test137.input.bin new file mode 100644 index 00000000..1ef8a0e9 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test137.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test137.output.bin b/sha3/tests/data/sha3_shake256/test137.output.bin new file mode 100644 index 00000000..89ee4e66 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test137.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test138.input.bin b/sha3/tests/data/sha3_shake256/test138.input.bin new file mode 100644 index 00000000..5adeaf84 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test138.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test138.output.bin b/sha3/tests/data/sha3_shake256/test138.output.bin new file mode 100644 index 00000000..17d66b90 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test138.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test139.input.bin b/sha3/tests/data/sha3_shake256/test139.input.bin new file mode 100644 index 00000000..79b46f4d --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test139.input.bin @@ -0,0 +1 @@ +&Mp$=!Iqadp`؂a]A8V@wxnUhU2pG-ы~+~ 3lN"\;#)nO(-I_|iu },lF)ps  \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test139.output.bin b/sha3/tests/data/sha3_shake256/test139.output.bin new file mode 100644 index 00000000..5eb5f2cd Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test139.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test14.input.bin b/sha3/tests/data/sha3_shake256/test14.input.bin new file mode 100644 index 00000000..efef93b3 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test14.input.bin @@ -0,0 +1 @@ +F'2(/8;F \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test14.output.bin b/sha3/tests/data/sha3_shake256/test14.output.bin new file mode 100644 index 00000000..c0e607d0 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test14.output.bin @@ -0,0 +1,5 @@ +ie3hF:.^qKn7s +le8IʝC{ R9| +̝^P!?3{ui~g̻, 9zND6nOz -}T$qԆ=rά̒?;`Tk|M!/"b*a3 csd* Dz߽0} _lr!b,^eC +#YKqwnKT=6xevƃV]&y #DJ+"k +yc~k]GweM'̨0KUk_=KM- o&rHؔr+vWp Zk#ƇG Rb-'8/vQ/L %=P~YK=֏RB0VtbgD?m²EȪ)3&#iuJ I<9; ķ_嘋G"n4Dk' \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test140.input.bin b/sha3/tests/data/sha3_shake256/test140.input.bin new file mode 100644 index 00000000..9634578b --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test140.input.bin @@ -0,0 +1 @@ +n$ff"k2웩O ÙA¥Й'b49bS|('sekn J78j0wHi\*v %w?Ul6-Kt,,IꎗO30e \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test140.output.bin b/sha3/tests/data/sha3_shake256/test140.output.bin new file mode 100644 index 00000000..60441434 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test140.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test141.input.bin b/sha3/tests/data/sha3_shake256/test141.input.bin new file mode 100644 index 00000000..cf209ba1 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test141.input.bin @@ -0,0 +1 @@ +O q<.N<*s4@6NǵZPw;o}lEX.~#Eڵ adTVBF>4wƲU7j¡jbWp|D)nm3 [`7x8<<"3^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test141.output.bin b/sha3/tests/data/sha3_shake256/test141.output.bin new file mode 100644 index 00000000..6f09a99d Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test141.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test142.input.bin b/sha3/tests/data/sha3_shake256/test142.input.bin new file mode 100644 index 00000000..bc838d1f --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test142.input.bin @@ -0,0 +1 @@ +!g!b>GaRNlrU)hs`zy|< %ƈPꫮFyY&\#J?46L/\tHpb$m_U*TFO- tH0C") \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test142.output.bin b/sha3/tests/data/sha3_shake256/test142.output.bin new file mode 100644 index 00000000..00c4dbdf Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test142.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test143.input.bin b/sha3/tests/data/sha3_shake256/test143.input.bin new file mode 100644 index 00000000..c63256ae --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test143.input.bin @@ -0,0 +1,2 @@ + NvG WO@vgOihM 6} q365 )zZ\At[ɻLZA\y~c8ׁjTZo +[l3fYBCh \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test143.output.bin b/sha3/tests/data/sha3_shake256/test143.output.bin new file mode 100644 index 00000000..49c162c4 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test143.output.bin @@ -0,0 +1,4 @@ +ʜJK x7DLiXb86iRUb='Y|h]'u^?Ԁ9G !X8G$v|F+PImS'(k@9' L|/ogbwp'j>go??CuBu1BSOV @{l'A5I +@~\FT;$Tu2zHX viZWp^.}M%XRɀkp3>@[*8%M۾rd `pLwҾD5 hA\*yƖ)Q^Lb~{O' +amS`lMA~U~U ݢ ,GcT0ݻuo!Md^1}d6n\V>嵥 ,ܽ4ЎC~#TI Uȡ^1f{1a@SN '~yi \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test155.input.bin b/sha3/tests/data/sha3_shake256/test155.input.bin new file mode 100644 index 00000000..3021be05 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test155.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test155.output.bin b/sha3/tests/data/sha3_shake256/test155.output.bin new file mode 100644 index 00000000..31ece337 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test155.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test156.input.bin b/sha3/tests/data/sha3_shake256/test156.input.bin new file mode 100644 index 00000000..b111e4ed Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test156.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test156.output.bin b/sha3/tests/data/sha3_shake256/test156.output.bin new file mode 100644 index 00000000..ccdb4a30 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test156.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test157.input.bin b/sha3/tests/data/sha3_shake256/test157.input.bin new file mode 100644 index 00000000..e0ed0030 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test157.input.bin @@ -0,0 +1 @@ ++RlZuecyhelbE\LCf1՜Q,xk골HU1 P4(l蒞cnmc2 F**b >a]з(foWm I-9Vs \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test157.output.bin b/sha3/tests/data/sha3_shake256/test157.output.bin new file mode 100644 index 00000000..6e6a2c9a Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test157.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test158.input.bin b/sha3/tests/data/sha3_shake256/test158.input.bin new file mode 100644 index 00000000..5a689a41 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test158.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test158.output.bin b/sha3/tests/data/sha3_shake256/test158.output.bin new file mode 100644 index 00000000..4171afee Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test158.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test159.input.bin b/sha3/tests/data/sha3_shake256/test159.input.bin new file mode 100644 index 00000000..37bfee39 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test159.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test159.output.bin b/sha3/tests/data/sha3_shake256/test159.output.bin new file mode 100644 index 00000000..20d1f1c3 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test159.output.bin @@ -0,0 +1,2 @@ +9/+u#[F$ +`ObYSF7K # }Ss#5KOe!lel~ ~D%'D^{A%Rmd 9j`T1ee{V}{ss>Ly fs4"q9ux&8 QV@֧ŰEeֻEN߃ֿO3̘ZӁö, ?ҭkdx;<7ҟBmѕ %!(WC'9@@*IP:SxPڵZX eO%ո.< |w4 .X2$Q { S*q~/f~*$aj` "JȗYש~M;3p<@q(R):`uBuO!݂3AZHM =/t&7c! sطdp#l~ý6$NxTpRJ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test16.input.bin b/sha3/tests/data/sha3_shake256/test16.input.bin new file mode 100644 index 00000000..84983066 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test16.input.bin @@ -0,0 +1 @@ +"Ky" \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test16.output.bin b/sha3/tests/data/sha3_shake256/test16.output.bin new file mode 100644 index 00000000..3a6f9bc3 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test16.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test160.input.bin b/sha3/tests/data/sha3_shake256/test160.input.bin new file mode 100644 index 00000000..e6f39601 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test160.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test160.output.bin b/sha3/tests/data/sha3_shake256/test160.output.bin new file mode 100644 index 00000000..b1e06204 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test160.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test161.input.bin b/sha3/tests/data/sha3_shake256/test161.input.bin new file mode 100644 index 00000000..5c9ab0c5 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test161.input.bin @@ -0,0 +1,3 @@ +!*|3=.7x?< sٙcʓb;&NHL:[o?0)Vv_Wv~Vu3nPȡ1 +݌A|lj_:)SU[ +7E=Dzt;g1O$ğJpak8_ѻI78S0U=ZU̻=pO)+FQU|̀aMw!kHdY'A:, GzoTQ)*F L \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test162.output.bin b/sha3/tests/data/sha3_shake256/test162.output.bin new file mode 100644 index 00000000..6de7e198 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test162.output.bin @@ -0,0 +1 @@ +:D9bg?+Ai62*OYS_ȌB.7@5~%ڥAvdjlE"Z'~T6l圊eW]T&8A4NHN쓻ܗ=K~*XtrUKSezB9aa ǻsH\ߟd;@-aWtVȝ[fyϧ2dAv!Sb)v"~aML$nV%Q4n+j0W+,+ L>FkQDe :_bΝ6\ "lh\h,\ȼDs\D8@ɞU;E쒘@-wUo/S⨴rϭ8 O{YzS~{.o/O(p.ҷo \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test163.input.bin b/sha3/tests/data/sha3_shake256/test163.input.bin new file mode 100644 index 00000000..b7d86900 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test163.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test163.output.bin b/sha3/tests/data/sha3_shake256/test163.output.bin new file mode 100644 index 00000000..8aeace04 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test163.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test164.input.bin b/sha3/tests/data/sha3_shake256/test164.input.bin new file mode 100644 index 00000000..6a3e8166 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test164.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test164.output.bin b/sha3/tests/data/sha3_shake256/test164.output.bin new file mode 100644 index 00000000..915ea067 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test164.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test165.input.bin b/sha3/tests/data/sha3_shake256/test165.input.bin new file mode 100644 index 00000000..42ab3064 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test165.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test165.output.bin b/sha3/tests/data/sha3_shake256/test165.output.bin new file mode 100644 index 00000000..b89b7ae9 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test165.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test166.input.bin b/sha3/tests/data/sha3_shake256/test166.input.bin new file mode 100644 index 00000000..8b4dcb7b --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test166.input.bin @@ -0,0 +1 @@ +υbؘ}گ=FEn#&͵?h]Yn:ae50MjK^+z`vq2-[ܻ-dIm̒Z#O$ XQQa^`_i=UJϮiH )u@׈5M1b@௓ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test166.output.bin b/sha3/tests/data/sha3_shake256/test166.output.bin new file mode 100644 index 00000000..6befd876 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test166.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test167.input.bin b/sha3/tests/data/sha3_shake256/test167.input.bin new file mode 100644 index 00000000..83e7dec4 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test167.input.bin @@ -0,0 +1 @@ +*1&yD^Y]5Ln`_܄pB?033Ĥ2gʮOGF ~0a 'Fc>)[jL#dU{. #qRC]d*Ņ?h6y&z,~eo-;l4U| ظNgu \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test167.output.bin b/sha3/tests/data/sha3_shake256/test167.output.bin new file mode 100644 index 00000000..de3d48a4 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test167.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test168.input.bin b/sha3/tests/data/sha3_shake256/test168.input.bin new file mode 100644 index 00000000..82f2df44 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test168.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test168.output.bin b/sha3/tests/data/sha3_shake256/test168.output.bin new file mode 100644 index 00000000..6998e8ec Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test168.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test169.input.bin b/sha3/tests/data/sha3_shake256/test169.input.bin new file mode 100644 index 00000000..395db28a --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test169.input.bin @@ -0,0 +1 @@ +#ks޷f+ڥ{5VEW5f);ZD P `qáJu:Iþi!(h_QdbVyBITCKퟬ}4.)6J gG8BT)}#ZqrBVA𤎄Eۥl \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test169.output.bin b/sha3/tests/data/sha3_shake256/test169.output.bin new file mode 100644 index 00000000..f089aafa Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test169.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test17.input.bin b/sha3/tests/data/sha3_shake256/test17.input.bin new file mode 100644 index 00000000..0922640e --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test17.input.bin @@ -0,0 +1 @@ +R!݊DW~x!v \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test17.output.bin b/sha3/tests/data/sha3_shake256/test17.output.bin new file mode 100644 index 00000000..0653b48e Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test17.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test170.input.bin b/sha3/tests/data/sha3_shake256/test170.input.bin new file mode 100644 index 00000000..8e7c6397 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test170.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test170.output.bin b/sha3/tests/data/sha3_shake256/test170.output.bin new file mode 100644 index 00000000..9b65bb4e Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test170.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test171.input.bin b/sha3/tests/data/sha3_shake256/test171.input.bin new file mode 100644 index 00000000..b2695ced Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test171.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test171.output.bin b/sha3/tests/data/sha3_shake256/test171.output.bin new file mode 100644 index 00000000..e7df1ee2 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test171.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test172.input.bin b/sha3/tests/data/sha3_shake256/test172.input.bin new file mode 100644 index 00000000..0bed356d Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test172.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test172.output.bin b/sha3/tests/data/sha3_shake256/test172.output.bin new file mode 100644 index 00000000..2c86ba65 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test172.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test173.input.bin b/sha3/tests/data/sha3_shake256/test173.input.bin new file mode 100644 index 00000000..2f94c433 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test173.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test173.output.bin b/sha3/tests/data/sha3_shake256/test173.output.bin new file mode 100644 index 00000000..df36ea5e Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test173.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test174.input.bin b/sha3/tests/data/sha3_shake256/test174.input.bin new file mode 100644 index 00000000..e7197248 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test174.input.bin @@ -0,0 +1 @@ + { 4k9˭Ig׭هow MH75p\$*CqoNmVk3dIف M۽7`T՝Ew8A?-oRzJU1PO ha$\KReT֪cH9) \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test174.output.bin b/sha3/tests/data/sha3_shake256/test174.output.bin new file mode 100644 index 00000000..1b8e8763 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test174.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test175.input.bin b/sha3/tests/data/sha3_shake256/test175.input.bin new file mode 100644 index 00000000..cf11b984 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test175.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test175.output.bin b/sha3/tests/data/sha3_shake256/test175.output.bin new file mode 100644 index 00000000..de79c685 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test175.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test176.input.bin b/sha3/tests/data/sha3_shake256/test176.input.bin new file mode 100644 index 00000000..a8a0c682 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test176.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test176.output.bin b/sha3/tests/data/sha3_shake256/test176.output.bin new file mode 100644 index 00000000..ee3c1d73 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test176.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test177.input.bin b/sha3/tests/data/sha3_shake256/test177.input.bin new file mode 100644 index 00000000..1f944269 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test177.input.bin @@ -0,0 +1,2 @@ +dj2\s/0/!yG@C TMkF2= +u[P_ 焼^r%wSd.#he\=QȒݠS~f P`?o[=8@ܛQb@j\ßMeգ [:)VX;X͔pҘw`` \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test177.output.bin b/sha3/tests/data/sha3_shake256/test177.output.bin new file mode 100644 index 00000000..05728ba0 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test177.output.bin @@ -0,0 +1,3 @@ +=nɶq)`$:Af-F]LU1*/F)G_0ê2hCPT4uy;6e= \d/|ŕ]RwYCՏ&DVщ }u}%ґpj9䖑0 ~:Gmfj,ԫy~SDR9ΤpOfĚ~}$s3y@؈78ibbVx,#=CYb"~J@4 Ƙ[f=tJbG,[)Tt +Z&!~g2rp^f#̤LS:Qě"\>!R˾xhv +_JmQi&}1d9#Kc7tL00XFN>BdmumVrub*"M˶Boғ Z֯̇ZӇ} &>Urx 8jdBP?61KEз({ Edc% \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test178.input.bin b/sha3/tests/data/sha3_shake256/test178.input.bin new file mode 100644 index 00000000..13c4fd0a --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test178.input.bin @@ -0,0 +1 @@ +˾gJWGKL~/Urq5u*E1b/YpA:WgxAj0Syܲҕ^ h* -fEA:fq6YNV&JcPlSv!j2: \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test178.output.bin b/sha3/tests/data/sha3_shake256/test178.output.bin new file mode 100644 index 00000000..859a28d1 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test178.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test179.input.bin b/sha3/tests/data/sha3_shake256/test179.input.bin new file mode 100644 index 00000000..5d1ef4da Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test179.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test179.output.bin b/sha3/tests/data/sha3_shake256/test179.output.bin new file mode 100644 index 00000000..6c6c6e11 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test179.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test18.input.bin b/sha3/tests/data/sha3_shake256/test18.input.bin new file mode 100644 index 00000000..1868db3a --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test18.input.bin @@ -0,0 +1 @@ +=.R~ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test18.output.bin b/sha3/tests/data/sha3_shake256/test18.output.bin new file mode 100644 index 00000000..b5a71d94 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test18.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test180.input.bin b/sha3/tests/data/sha3_shake256/test180.input.bin new file mode 100644 index 00000000..13f88f9c --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test180.input.bin @@ -0,0 +1,2 @@ +:~Qer ߷}vGT&ߪ{P\v5 d2ؿ_  xu,ێRZ΄% B׃N9`t/C};.*wj +RR0 2J MGj/ HCŅE5+7@jy*od \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test180.output.bin b/sha3/tests/data/sha3_shake256/test180.output.bin new file mode 100644 index 00000000..1ed6a110 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test180.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test181.input.bin b/sha3/tests/data/sha3_shake256/test181.input.bin new file mode 100644 index 00000000..21185a19 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test181.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test181.output.bin b/sha3/tests/data/sha3_shake256/test181.output.bin new file mode 100644 index 00000000..4b4ee26b Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test181.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test182.input.bin b/sha3/tests/data/sha3_shake256/test182.input.bin new file mode 100644 index 00000000..4d216972 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test182.input.bin @@ -0,0 +1 @@ +WnR 0 ^5ECB=O睖cr)EWű1RhN.+_ΙepT^t|X#[4"Og 3_o]ÔoDӯˮ.AUMgY2k$H-ԓo><69~t8ZELG{ m^/ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test182.output.bin b/sha3/tests/data/sha3_shake256/test182.output.bin new file mode 100644 index 00000000..f9ee85e9 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test182.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test183.input.bin b/sha3/tests/data/sha3_shake256/test183.input.bin new file mode 100644 index 00000000..765853e5 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test183.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test183.output.bin b/sha3/tests/data/sha3_shake256/test183.output.bin new file mode 100644 index 00000000..68374736 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test183.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test184.input.bin b/sha3/tests/data/sha3_shake256/test184.input.bin new file mode 100644 index 00000000..e67c2c3b Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test184.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test184.output.bin b/sha3/tests/data/sha3_shake256/test184.output.bin new file mode 100644 index 00000000..700d354f Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test184.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test185.input.bin b/sha3/tests/data/sha3_shake256/test185.input.bin new file mode 100644 index 00000000..6b3f4c0a Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test185.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test185.output.bin b/sha3/tests/data/sha3_shake256/test185.output.bin new file mode 100644 index 00000000..0527ba99 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test185.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test186.input.bin b/sha3/tests/data/sha3_shake256/test186.input.bin new file mode 100644 index 00000000..b0e30563 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test186.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test186.output.bin b/sha3/tests/data/sha3_shake256/test186.output.bin new file mode 100644 index 00000000..f83f2c19 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test186.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test187.input.bin b/sha3/tests/data/sha3_shake256/test187.input.bin new file mode 100644 index 00000000..4b5bf01f --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test187.input.bin @@ -0,0 +1 @@ +du ͘;e2,Eɸ;*Z"hXn'(WѢН _"ß^nJLmH?9s~<8f\&<tYcƻ=4[hG}cW U6KUq0~г7Nn: \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test187.output.bin b/sha3/tests/data/sha3_shake256/test187.output.bin new file mode 100644 index 00000000..3fff5c6e Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test187.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test188.input.bin b/sha3/tests/data/sha3_shake256/test188.input.bin new file mode 100644 index 00000000..05e7d072 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test188.input.bin @@ -0,0 +1,3 @@ +hus/rZhŪ1I>vR]=3ν!&jo~ Wy +oXye$fwS9r]2dRA_2xWj*X|)SրE6@~=\@Oo%"ȶ3 W $uk hTMQ +x^: \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test188.output.bin b/sha3/tests/data/sha3_shake256/test188.output.bin new file mode 100644 index 00000000..6e1b91df Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test188.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test189.input.bin b/sha3/tests/data/sha3_shake256/test189.input.bin new file mode 100644 index 00000000..2fb1cb98 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test189.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test189.output.bin b/sha3/tests/data/sha3_shake256/test189.output.bin new file mode 100644 index 00000000..e8cc2fcd --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test189.output.bin @@ -0,0 +1 @@ +o(1Vmڟj>P2|E\&Ń3oV OU%{0nQի ٮA߆P_/[5Ith[a[io㓗}|9 a*u yp$f4k-\B2Ƿ=3/|Db4#c+GǏ POwʊ-\ }!xEp j;K4lyc9yWx2-p9vBQexS[v~?i+k sqX:x8e[f(oI' U(Ԃ!vbu'1'T{2yY"#vJ=H Y!>5A~OWoJ?dU|igbpP7O z@#&QP0뢧w:36 ׈cjvX %W|h>о{u*kƭ4;vעN0%642ѱd* \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test192.input.bin b/sha3/tests/data/sha3_shake256/test192.input.bin new file mode 100644 index 00000000..179b26ff Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test192.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test192.output.bin b/sha3/tests/data/sha3_shake256/test192.output.bin new file mode 100644 index 00000000..d64a5b00 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test192.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test193.input.bin b/sha3/tests/data/sha3_shake256/test193.input.bin new file mode 100644 index 00000000..dc8291dd --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test193.input.bin @@ -0,0 +1 @@ +~Kt6@qN)9w/ |1WW¦իR=đi.!؀;!;P%nVR\hf+Emz~|_/icqYds ?ǔ̂GVcG  ejȢ1N/Яk9Jr?DMXf=GWɖyp2 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test193.output.bin b/sha3/tests/data/sha3_shake256/test193.output.bin new file mode 100644 index 00000000..cca14beb Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test193.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test194.input.bin b/sha3/tests/data/sha3_shake256/test194.input.bin new file mode 100644 index 00000000..c5a3fbc4 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test194.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test194.output.bin b/sha3/tests/data/sha3_shake256/test194.output.bin new file mode 100644 index 00000000..e6e3d030 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test194.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test195.input.bin b/sha3/tests/data/sha3_shake256/test195.input.bin new file mode 100644 index 00000000..02673ece --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test195.input.bin @@ -0,0 +1,3 @@ +kMETm0熥u~ 1 + S15]2FS G0l -+E-OgkѨ&YA # +&`o̺Т 46Nl٧#M|ʼn uN[=`zImg{I,qxUWMK \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test195.output.bin b/sha3/tests/data/sha3_shake256/test195.output.bin new file mode 100644 index 00000000..5b99d9de --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test195.output.bin @@ -0,0 +1 @@ +-SMPkf!('ؼgs[S{5~ !-prfSH#)'>BmYRixӤI:DweLs9Ȩ䶈:G #qG'$.Gu@fkX<fL vmǞ]\>\bo_)#WX2B7US!M \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test196.input.bin b/sha3/tests/data/sha3_shake256/test196.input.bin new file mode 100644 index 00000000..0c60e8fd Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test196.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test196.output.bin b/sha3/tests/data/sha3_shake256/test196.output.bin new file mode 100644 index 00000000..e1ef0882 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test196.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test197.input.bin b/sha3/tests/data/sha3_shake256/test197.input.bin new file mode 100644 index 00000000..be15921f --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test197.input.bin @@ -0,0 +1 @@ +RQ2c[9:kzs!pߩF&i˻߀0rG+7KտyXb:>9樲)|Qx5a$q^ c7Syxv"F4oU4r^s|{jmGtrF}{+#P|Q},J \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test197.output.bin b/sha3/tests/data/sha3_shake256/test197.output.bin new file mode 100644 index 00000000..7a93d576 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test197.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test198.input.bin b/sha3/tests/data/sha3_shake256/test198.input.bin new file mode 100644 index 00000000..fd28078b --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test198.input.bin @@ -0,0 +1,2 @@ +שC:;Jz:^4WmmS -1p a(3OCס՜~kdoj5(YϹF +wR*\֬nabf~ S!eU͏4ݛqoG k"P<&Uwa*؋jg(hg!stY){2;ηa":Up^Drܪ7# 5\b \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test198.output.bin b/sha3/tests/data/sha3_shake256/test198.output.bin new file mode 100644 index 00000000..f8f04cca Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test198.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test199.input.bin b/sha3/tests/data/sha3_shake256/test199.input.bin new file mode 100644 index 00000000..6044629d --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test199.input.bin @@ -0,0 +1 @@ +p 'zrw|NC&hЙebVs6hzfyݝz3A:\"[!{_G2~9&-@C0;{^*ݦHYK X㐑汈)J$^a`Xv9u;%t6f#eA_6mTgCöW.@a&AI:ڐ# \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test199.output.bin b/sha3/tests/data/sha3_shake256/test199.output.bin new file mode 100644 index 00000000..930ae0d3 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test199.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test2.input.bin b/sha3/tests/data/sha3_shake256/test2.input.bin new file mode 100644 index 00000000..d50394ef --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test2.input.bin @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test2.output.bin b/sha3/tests/data/sha3_shake256/test2.output.bin new file mode 100644 index 00000000..6b0d9bbc Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test2.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test20.input.bin b/sha3/tests/data/sha3_shake256/test20.input.bin new file mode 100644 index 00000000..f825277c --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test20.input.bin @@ -0,0 +1 @@ +P5({Mʗ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test20.output.bin b/sha3/tests/data/sha3_shake256/test20.output.bin new file mode 100644 index 00000000..a3fb1ee1 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test20.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test200.input.bin b/sha3/tests/data/sha3_shake256/test200.input.bin new file mode 100644 index 00000000..25202dc5 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test200.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test200.output.bin b/sha3/tests/data/sha3_shake256/test200.output.bin new file mode 100644 index 00000000..6fe6b101 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test200.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test201.input.bin b/sha3/tests/data/sha3_shake256/test201.input.bin new file mode 100644 index 00000000..19cd3f69 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test201.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test201.output.bin b/sha3/tests/data/sha3_shake256/test201.output.bin new file mode 100644 index 00000000..fe59661e Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test201.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test202.input.bin b/sha3/tests/data/sha3_shake256/test202.input.bin new file mode 100644 index 00000000..61915861 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test202.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test202.output.bin b/sha3/tests/data/sha3_shake256/test202.output.bin new file mode 100644 index 00000000..bca2b4f2 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test202.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test203.input.bin b/sha3/tests/data/sha3_shake256/test203.input.bin new file mode 100644 index 00000000..741c4d41 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test203.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test203.output.bin b/sha3/tests/data/sha3_shake256/test203.output.bin new file mode 100644 index 00000000..3cb38049 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test203.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test204.input.bin b/sha3/tests/data/sha3_shake256/test204.input.bin new file mode 100644 index 00000000..5a6287f2 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test204.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test204.output.bin b/sha3/tests/data/sha3_shake256/test204.output.bin new file mode 100644 index 00000000..725a6293 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test204.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test205.input.bin b/sha3/tests/data/sha3_shake256/test205.input.bin new file mode 100644 index 00000000..77288138 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test205.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test205.output.bin b/sha3/tests/data/sha3_shake256/test205.output.bin new file mode 100644 index 00000000..896f7d03 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test205.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test206.input.bin b/sha3/tests/data/sha3_shake256/test206.input.bin new file mode 100644 index 00000000..4bff8354 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test206.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test206.output.bin b/sha3/tests/data/sha3_shake256/test206.output.bin new file mode 100644 index 00000000..ddb2d5fb Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test206.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test207.input.bin b/sha3/tests/data/sha3_shake256/test207.input.bin new file mode 100644 index 00000000..167543c1 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test207.input.bin @@ -0,0 +1,2 @@ +O>J\_+ңE4sn;  ޯRֺ1l3R7QⳜJIW~*?Zhh03⽫s&ֽ%FX +SvЗ禦>X`(Żչ27NB)η(x"ZbS#fJ4G YU?u) CU>ot"K \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test207.output.bin b/sha3/tests/data/sha3_shake256/test207.output.bin new file mode 100644 index 00000000..3a0b4a63 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test207.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test208.input.bin b/sha3/tests/data/sha3_shake256/test208.input.bin new file mode 100644 index 00000000..c47ee536 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test208.input.bin @@ -0,0 +1,2 @@ +-s031(8<ʗNh@ Rk?JōГZ0Ė"ar.EWB C}t?+57]̞ߴ8Bᐤ<1c~W~`lM{c + :GkwxEM`lg)voLO'ޟ,;U~wl `2(8 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test208.output.bin b/sha3/tests/data/sha3_shake256/test208.output.bin new file mode 100644 index 00000000..c383a3f6 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test208.output.bin @@ -0,0 +1 @@ +,.j TJU< :㾶Dg0jE`~S~Op="*+_kTz'zk岛ݑ2/)cSJ]J#<J>QC]|ӍH.^&SТ]߶ g-4AT??Ek6×vCeVTu_㖫qfjpE/3+GPz&wU_YH?&͑ʙb؍'M_zmh+ JuҚcaƛhFw!ja?_rv ֖ rFS2O-|7/A=JIaOYя|q/a\+-\ۗᷫ~/-@AnA,maEJwu>pX%; vτ3:Y҇̒#Nz'A& jX.dž1#'솅 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test209.output.bin b/sha3/tests/data/sha3_shake256/test209.output.bin new file mode 100644 index 00000000..879d1513 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test209.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test21.input.bin b/sha3/tests/data/sha3_shake256/test21.input.bin new file mode 100644 index 00000000..bd6291ce --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test21.input.bin @@ -0,0 +1 @@ +aVU@gGQ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test21.output.bin b/sha3/tests/data/sha3_shake256/test21.output.bin new file mode 100644 index 00000000..80bacedf Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test21.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test210.input.bin b/sha3/tests/data/sha3_shake256/test210.input.bin new file mode 100644 index 00000000..12d7f2d6 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test210.input.bin @@ -0,0 +1 @@ +Dw≛rVUMlAG{уJ@)}^ۜm]DC`OR(ldpzjpC6s%&ST]ZܒynXՙ2$. ׭mr v#|N!+nyI͐3:wN*||2 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test210.output.bin b/sha3/tests/data/sha3_shake256/test210.output.bin new file mode 100644 index 00000000..7dd79cd7 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test210.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test211.input.bin b/sha3/tests/data/sha3_shake256/test211.input.bin new file mode 100644 index 00000000..06b62b7f Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test211.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test211.output.bin b/sha3/tests/data/sha3_shake256/test211.output.bin new file mode 100644 index 00000000..2c5d2970 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test211.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test212.input.bin b/sha3/tests/data/sha3_shake256/test212.input.bin new file mode 100644 index 00000000..397fbdc5 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test212.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test212.output.bin b/sha3/tests/data/sha3_shake256/test212.output.bin new file mode 100644 index 00000000..e4f3a908 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test212.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test213.input.bin b/sha3/tests/data/sha3_shake256/test213.input.bin new file mode 100644 index 00000000..ff7c93ec --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test213.input.bin @@ -0,0 +1 @@ +;֤,z2)i-Ǚ ɝpZ\5+>L@fIݓΧuTj),L*v}|9jN$lgփgW68j'kQuLGH+r೔io֎^=YŬ@ó~6$JY͝(yox[';Dd5 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test213.output.bin b/sha3/tests/data/sha3_shake256/test213.output.bin new file mode 100644 index 00000000..704b5ad5 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test213.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test214.input.bin b/sha3/tests/data/sha3_shake256/test214.input.bin new file mode 100644 index 00000000..17d29a30 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test214.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test214.output.bin b/sha3/tests/data/sha3_shake256/test214.output.bin new file mode 100644 index 00000000..13d477b1 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test214.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test215.input.bin b/sha3/tests/data/sha3_shake256/test215.input.bin new file mode 100644 index 00000000..d082a217 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test215.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test215.output.bin b/sha3/tests/data/sha3_shake256/test215.output.bin new file mode 100644 index 00000000..bb9451da Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test215.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test216.input.bin b/sha3/tests/data/sha3_shake256/test216.input.bin new file mode 100644 index 00000000..9b654101 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test216.input.bin @@ -0,0 +1,3 @@ +zjOOY#8It%.Y0bn{ى~ fDb5-Sנ/p7%Vq '™ʧߥ5R:51f^wlkFێ,ݝϺ২Uq-F=="90C;"F0A +3:R91\Fx[ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test218.output.bin b/sha3/tests/data/sha3_shake256/test218.output.bin new file mode 100644 index 00000000..e42bdec6 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test218.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test219.input.bin b/sha3/tests/data/sha3_shake256/test219.input.bin new file mode 100644 index 00000000..ca1f68da Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test219.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test219.output.bin b/sha3/tests/data/sha3_shake256/test219.output.bin new file mode 100644 index 00000000..c9fe3ea4 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test219.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test22.input.bin b/sha3/tests/data/sha3_shake256/test22.input.bin new file mode 100644 index 00000000..7a679902 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test22.input.bin @@ -0,0 +1 @@ +܏NLxD{;T6* \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test22.output.bin b/sha3/tests/data/sha3_shake256/test22.output.bin new file mode 100644 index 00000000..818b6431 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test22.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test220.input.bin b/sha3/tests/data/sha3_shake256/test220.input.bin new file mode 100644 index 00000000..dc3eba08 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test220.input.bin @@ -0,0 +1,4 @@ +vF8;NQ 20iPҗ +HVy +s9;(,jtg 8əpMbpO'Ͱe_PІWSp 8q/>m߳]shE9'K"</ʼ !f׉9qKxD%"}*=vQ^| +FA5eN|<7[SMd A|/cs \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test220.output.bin b/sha3/tests/data/sha3_shake256/test220.output.bin new file mode 100644 index 00000000..cb8d8898 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test220.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test221.input.bin b/sha3/tests/data/sha3_shake256/test221.input.bin new file mode 100644 index 00000000..d518e526 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test221.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test221.output.bin b/sha3/tests/data/sha3_shake256/test221.output.bin new file mode 100644 index 00000000..67bf0a36 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test221.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test222.input.bin b/sha3/tests/data/sha3_shake256/test222.input.bin new file mode 100644 index 00000000..5bd09da0 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test222.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test222.output.bin b/sha3/tests/data/sha3_shake256/test222.output.bin new file mode 100644 index 00000000..a491a028 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test222.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test223.input.bin b/sha3/tests/data/sha3_shake256/test223.input.bin new file mode 100644 index 00000000..61d516ba Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test223.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test223.output.bin b/sha3/tests/data/sha3_shake256/test223.output.bin new file mode 100644 index 00000000..b7a961ca Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test223.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test224.input.bin b/sha3/tests/data/sha3_shake256/test224.input.bin new file mode 100644 index 00000000..ea14dca4 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test224.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test224.output.bin b/sha3/tests/data/sha3_shake256/test224.output.bin new file mode 100644 index 00000000..2aeae733 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test224.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test225.input.bin b/sha3/tests/data/sha3_shake256/test225.input.bin new file mode 100644 index 00000000..39f24030 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test225.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test225.output.bin b/sha3/tests/data/sha3_shake256/test225.output.bin new file mode 100644 index 00000000..15ba03c3 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test225.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test226.input.bin b/sha3/tests/data/sha3_shake256/test226.input.bin new file mode 100644 index 00000000..a694388a --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test226.input.bin @@ -0,0 +1 @@ +gSm68؈̫4+zen=oBLfAqeÏǒhεf]6!TӺX13t6stdrƮzn' \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test226.output.bin b/sha3/tests/data/sha3_shake256/test226.output.bin new file mode 100644 index 00000000..0c79eaa4 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test226.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test227.input.bin b/sha3/tests/data/sha3_shake256/test227.input.bin new file mode 100644 index 00000000..a4b4f480 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test227.input.bin @@ -0,0 +1 @@ +9?]MH]7QJX6)!z8#5Rs!R*X5a& }:AvvJ"ԕzT]RDul %̏L6/ 68Oz[)?kܒV^6v=Ҡj>=DvyK=&+yV>APd%n4^QU܊!Jxj-P~35d' \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test227.output.bin b/sha3/tests/data/sha3_shake256/test227.output.bin new file mode 100644 index 00000000..8693bbaa --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test227.output.bin @@ -0,0 +1,4 @@ +rS1cW/KCg\VgC:FxRX,[Mwd4&Q/]Sl-oU@:H +]9kDK}0)wð|IyV/ +g[wؤ\h Dx`B[;?˄j/hjq8Z)*jt4\oA":C۸Z'H:;1'#HCS(uJ7=n禋 Dûͮ~Lkib®b#' l%+զCHJQU%6P8|{ ?Ir㻱UXKrF}V*SۚRMįJa_* ~|7Mc5$[IXper}5dZ7^C59=]<#Ti&δ]^l!*--Z-f%c^Npw0ix3WΧ!Cw3-!vfڶ +3^* \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test228.input.bin b/sha3/tests/data/sha3_shake256/test228.input.bin new file mode 100644 index 00000000..9cb3e056 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test228.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test228.output.bin b/sha3/tests/data/sha3_shake256/test228.output.bin new file mode 100644 index 00000000..0a181337 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test228.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test229.input.bin b/sha3/tests/data/sha3_shake256/test229.input.bin new file mode 100644 index 00000000..6dda249b Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test229.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test229.output.bin b/sha3/tests/data/sha3_shake256/test229.output.bin new file mode 100644 index 00000000..705afa1b Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test229.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test23.input.bin b/sha3/tests/data/sha3_shake256/test23.input.bin new file mode 100644 index 00000000..fcc84d2d --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test23.input.bin @@ -0,0 +1 @@ +W_B-3xm_- \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test23.output.bin b/sha3/tests/data/sha3_shake256/test23.output.bin new file mode 100644 index 00000000..6b570c0f Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test23.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test230.input.bin b/sha3/tests/data/sha3_shake256/test230.input.bin new file mode 100644 index 00000000..c2b4e2b7 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test230.input.bin @@ -0,0 +1 @@ +8u$ ਵe@jpIn,!txoҔ֧TS5(M_@*ܒ871yoJ܁oDkx[ yhAx =;_ +b+xő3HQSY.o \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test233.output.bin b/sha3/tests/data/sha3_shake256/test233.output.bin new file mode 100644 index 00000000..2b75223c Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test233.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test234.input.bin b/sha3/tests/data/sha3_shake256/test234.input.bin new file mode 100644 index 00000000..6e7c2d03 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test234.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test234.output.bin b/sha3/tests/data/sha3_shake256/test234.output.bin new file mode 100644 index 00000000..5c317f88 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test234.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test235.input.bin b/sha3/tests/data/sha3_shake256/test235.input.bin new file mode 100644 index 00000000..a4bf95bb Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test235.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test235.output.bin b/sha3/tests/data/sha3_shake256/test235.output.bin new file mode 100644 index 00000000..0984f2b4 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test235.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test236.input.bin b/sha3/tests/data/sha3_shake256/test236.input.bin new file mode 100644 index 00000000..adc0f660 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test236.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test236.output.bin b/sha3/tests/data/sha3_shake256/test236.output.bin new file mode 100644 index 00000000..dfc2881d --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test236.output.bin @@ -0,0 +1,2 @@ +N9v@i[G/ShL]L_r­-a̚#K3 F7$O(WX7WT6lqmZHONvG}UiZj pa{@?To™k-,&zJWas"#ݺTCp5Q!7S$# pa̎f&? +'ェvs aYkuMrjaݡ97M75lL.w.y hHCAp˼Q:84c֩H-טvWi]$8k*[Kn3YA%$(4fx9-R܌ R2?PpKGKTuc]NJҞ: 9ȧkoQ Hxkj5ܢ^f1]UG>PY֡faHاעS_šɠ!ދߤaNWVClhS< \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test237.input.bin b/sha3/tests/data/sha3_shake256/test237.input.bin new file mode 100644 index 00000000..39e5194b Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test237.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test237.output.bin b/sha3/tests/data/sha3_shake256/test237.output.bin new file mode 100644 index 00000000..7b7d3266 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test237.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test238.input.bin b/sha3/tests/data/sha3_shake256/test238.input.bin new file mode 100644 index 00000000..3a765047 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test238.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test238.output.bin b/sha3/tests/data/sha3_shake256/test238.output.bin new file mode 100644 index 00000000..e1f6ff84 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test238.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test239.input.bin b/sha3/tests/data/sha3_shake256/test239.input.bin new file mode 100644 index 00000000..78398edd Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test239.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test239.output.bin b/sha3/tests/data/sha3_shake256/test239.output.bin new file mode 100644 index 00000000..ebd7e47c --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test239.output.bin @@ -0,0 +1,4 @@ +R |PM~\Q@թ֏H~}ЄWQճפXwLE1$Pav6CyMb}d Dgp>ApI2AWls/m_.0bƒ}ai+PbʡMz,1ʊ"f=R,( _ )f$U{) +5M3uPDwʎ1.\9vݒgSQҴy ϩ +q+>o!ɟ`-´\mN$oHp\En4V Gjt3/G,Y+$biQ@ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test24.input.bin b/sha3/tests/data/sha3_shake256/test24.input.bin new file mode 100644 index 00000000..6edeea70 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test24.input.bin @@ -0,0 +1 @@ +T]Wi~,)ȫ5`o \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test24.output.bin b/sha3/tests/data/sha3_shake256/test24.output.bin new file mode 100644 index 00000000..99a6d370 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test24.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test240.input.bin b/sha3/tests/data/sha3_shake256/test240.input.bin new file mode 100644 index 00000000..4344db77 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test240.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test240.output.bin b/sha3/tests/data/sha3_shake256/test240.output.bin new file mode 100644 index 00000000..38e3cb02 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test240.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test241.input.bin b/sha3/tests/data/sha3_shake256/test241.input.bin new file mode 100644 index 00000000..30304e7b --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test241.input.bin @@ -0,0 +1,2 @@ +_΁ XW@>A; (%C]Cg';Ŋ0DгgB5&z@+;>;\%Fnz`7"+Li15Z-9{V5H:?fex8iAͳREH)NPc%-G@Z)-к! ;4ӝ0^\V7{u +7&KVo@wE_V$1z- \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test241.output.bin b/sha3/tests/data/sha3_shake256/test241.output.bin new file mode 100644 index 00000000..641bb559 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test241.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test242.input.bin b/sha3/tests/data/sha3_shake256/test242.input.bin new file mode 100644 index 00000000..9f83b1c0 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test242.input.bin @@ -0,0 +1,2 @@ +arnNap]_왿iKgK}׀a^P-k?CHr{} 0)'.JYhbea p̍niŀ6! cZ$=ŇGXT@ѰLd[}" +b:V8ٚ,@o2R+7^l׀(ӈE EAuSVik?9z )69;\YנKzïh y1Nu} \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test242.output.bin b/sha3/tests/data/sha3_shake256/test242.output.bin new file mode 100644 index 00000000..87439551 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test242.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test243.input.bin b/sha3/tests/data/sha3_shake256/test243.input.bin new file mode 100644 index 00000000..aa906dac Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test243.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test243.output.bin b/sha3/tests/data/sha3_shake256/test243.output.bin new file mode 100644 index 00000000..c284c196 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test243.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test244.input.bin b/sha3/tests/data/sha3_shake256/test244.input.bin new file mode 100644 index 00000000..d2160ac1 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test244.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test244.output.bin b/sha3/tests/data/sha3_shake256/test244.output.bin new file mode 100644 index 00000000..eb642016 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test244.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test245.input.bin b/sha3/tests/data/sha3_shake256/test245.input.bin new file mode 100644 index 00000000..7e958206 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test245.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test245.output.bin b/sha3/tests/data/sha3_shake256/test245.output.bin new file mode 100644 index 00000000..1d3f3614 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test245.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test246.input.bin b/sha3/tests/data/sha3_shake256/test246.input.bin new file mode 100644 index 00000000..514589ea Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test246.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test246.output.bin b/sha3/tests/data/sha3_shake256/test246.output.bin new file mode 100644 index 00000000..89a9c29d Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test246.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test247.input.bin b/sha3/tests/data/sha3_shake256/test247.input.bin new file mode 100644 index 00000000..58ac5c4f --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test247.input.bin @@ -0,0 +1,3 @@ +)iD}T򪛰UML PTk-1ޜhɭN… g]so c+U YŚ?a\kuٓ@cxrj:?7;bkWE`dnS= +?zc v3BaY07e?D*]rɔOp9u΅Pr,m, +]vp>C4Ã*T~yrꀒ3 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test247.output.bin b/sha3/tests/data/sha3_shake256/test247.output.bin new file mode 100644 index 00000000..72083818 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test247.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test248.input.bin b/sha3/tests/data/sha3_shake256/test248.input.bin new file mode 100644 index 00000000..998aaf05 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test248.input.bin @@ -0,0 +1,2 @@ +rEc:DNjNXWZ<'3hu Pj4=}[>PpEdrj`uvӖ?Udm W{YLy:KFCxA8SE -)A˫PڎQ1EL:%D-KzzY(]VON헕o0B^JH%oc'-mcHWuE +#3KF/Dºo2_'b*XvoM,j(`KurkyAvxU&£?æB95Pp({ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test250.output.bin b/sha3/tests/data/sha3_shake256/test250.output.bin new file mode 100644 index 00000000..1961758b --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test250.output.bin @@ -0,0 +1,5 @@ +22,}f2 I"'}MC3M +8@=6[WiMLP+nad7hKLm'Fj`o\F]K޼$ð+F=DgLQײA6 xq)8LS| MP8vu:#ʜW(֕%g?4]ZWBJ{UN <6<O7FXEhXytZd&"7hۏUw6%.Kv-ZckևR-{[ +`s(6YnxC .pfa&unujM$h Iz +ʈ3/9z +N+_?Sx /5jcd;EPGerFLhpxId<:5 "]K:R10f +t:kY1̣"vpCYzϦN JΎhʳAd \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test251.input.bin b/sha3/tests/data/sha3_shake256/test251.input.bin new file mode 100644 index 00000000..e5174fd6 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test251.input.bin @@ -0,0 +1,3 @@ +Ki<%3lV;L8uh4GRԧ=[T82 pφX +`wVѢh9Jm󛟯WhW{*P_uǠK:5` *şeX^"Kyƾ)f-h7`Fz +%y\ܡ𚗜!Sͻ&Tn/PhZFaIeԶ>[Щm=ju{3sOD_tqi~+ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test251.output.bin b/sha3/tests/data/sha3_shake256/test251.output.bin new file mode 100644 index 00000000..e197b62e Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test251.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test252.input.bin b/sha3/tests/data/sha3_shake256/test252.input.bin new file mode 100644 index 00000000..c892fcf3 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test252.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test252.output.bin b/sha3/tests/data/sha3_shake256/test252.output.bin new file mode 100644 index 00000000..ec74dc8f Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test252.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test253.input.bin b/sha3/tests/data/sha3_shake256/test253.input.bin new file mode 100644 index 00000000..4b98ebd2 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test253.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test253.output.bin b/sha3/tests/data/sha3_shake256/test253.output.bin new file mode 100644 index 00000000..2335b34f Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test253.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test254.input.bin b/sha3/tests/data/sha3_shake256/test254.input.bin new file mode 100644 index 00000000..a29ed9a7 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test254.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test254.output.bin b/sha3/tests/data/sha3_shake256/test254.output.bin new file mode 100644 index 00000000..dcd7f99a --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test254.output.bin @@ -0,0 +1,3 @@ +@(9CB 09ֆC4źvt\oH!хX&u5j=ؐZ4ٳFUs=ǧ\Q0xSPE.M 5:lCi|+\NM HJUI) \NNBc}4h{-ϒ&fC㇞HKjٔXo oErqN"0F<=IIiսtLZVѓҼpT"zg.i·3`U{{Cg0ENŬ״:J @a'OU:X$-)3&M6^Mdi6;>)oefM*^8ߒk D^i YYvG]ڀb#j7B_Fk"Yb3|98|ԑ$-0M T4[1^gaх#mSd=ucĞk| +avp7M*}/DVڀ +FΘnX7A \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test255.input.bin b/sha3/tests/data/sha3_shake256/test255.input.bin new file mode 100644 index 00000000..d414c7f0 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test255.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test255.output.bin b/sha3/tests/data/sha3_shake256/test255.output.bin new file mode 100644 index 00000000..ffc59814 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test255.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test256.input.bin b/sha3/tests/data/sha3_shake256/test256.input.bin new file mode 100644 index 00000000..fe0c3944 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test256.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test256.output.bin b/sha3/tests/data/sha3_shake256/test256.output.bin new file mode 100644 index 00000000..67de75e0 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test256.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test26.input.bin b/sha3/tests/data/sha3_shake256/test26.input.bin new file mode 100644 index 00000000..31e2fe3a --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test26.input.bin @@ -0,0 +1 @@ +$==J eX`'bs^U \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test26.output.bin b/sha3/tests/data/sha3_shake256/test26.output.bin new file mode 100644 index 00000000..0ada0a78 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test26.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test27.input.bin b/sha3/tests/data/sha3_shake256/test27.input.bin new file mode 100644 index 00000000..c108fd88 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test27.input.bin @@ -0,0 +1 @@ +{Hgl:R~ԅ`  \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test27.output.bin b/sha3/tests/data/sha3_shake256/test27.output.bin new file mode 100644 index 00000000..79b605ce Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test27.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test28.input.bin b/sha3/tests/data/sha3_shake256/test28.input.bin new file mode 100644 index 00000000..2db6987a --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test28.input.bin @@ -0,0 +1 @@ +#WZH'zEuC'XC \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test28.output.bin b/sha3/tests/data/sha3_shake256/test28.output.bin new file mode 100644 index 00000000..e3046059 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test28.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test29.input.bin b/sha3/tests/data/sha3_shake256/test29.input.bin new file mode 100644 index 00000000..557ef3d3 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test29.input.bin @@ -0,0 +1 @@ +-֌|ϱpSdbF|y^ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test29.output.bin b/sha3/tests/data/sha3_shake256/test29.output.bin new file mode 100644 index 00000000..4316a43c Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test29.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test3.input.bin b/sha3/tests/data/sha3_shake256/test3.input.bin new file mode 100644 index 00000000..6037df8c --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test3.input.bin @@ -0,0 +1 @@ +A \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test3.output.bin b/sha3/tests/data/sha3_shake256/test3.output.bin new file mode 100644 index 00000000..502c769a Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test3.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test30.input.bin b/sha3/tests/data/sha3_shake256/test30.input.bin new file mode 100644 index 00000000..fa7268e4 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test30.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test30.output.bin b/sha3/tests/data/sha3_shake256/test30.output.bin new file mode 100644 index 00000000..96bd5373 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test30.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test31.input.bin b/sha3/tests/data/sha3_shake256/test31.input.bin new file mode 100644 index 00000000..dc6e42e1 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test31.input.bin @@ -0,0 +1,2 @@ + : +8<@p , \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test31.output.bin b/sha3/tests/data/sha3_shake256/test31.output.bin new file mode 100644 index 00000000..ffa83fb7 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test31.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test32.input.bin b/sha3/tests/data/sha3_shake256/test32.input.bin new file mode 100644 index 00000000..032b03e0 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test32.input.bin @@ -0,0 +1 @@ +QlZ̵"򍠛#-B22Ã[) \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test32.output.bin b/sha3/tests/data/sha3_shake256/test32.output.bin new file mode 100644 index 00000000..f7217407 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test32.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test33.input.bin b/sha3/tests/data/sha3_shake256/test33.input.bin new file mode 100644 index 00000000..2636bc45 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test33.input.bin @@ -0,0 +1 @@ +/| k~l-]~] \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test33.output.bin b/sha3/tests/data/sha3_shake256/test33.output.bin new file mode 100644 index 00000000..0141db55 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test33.output.bin @@ -0,0 +1,3 @@ +zOl{S;PU1z ':Y"ۯЎ7rg+AKLe)~Tev5 +ĉsY4>MgDw] վTF'RyvFk K7%PK< F?% +}M2rĖy43} v9L yd,|vO)#S'j緘3 B$ʸ4-iCr;%aL.>Em4tzV_}^vց:Ɣ0uyOU?Nw0 %ie{BjmgX>]G_E탤AIƁ q#ȟj@*◠^a;&M C4Y"xvr3X\g/OK w2j[(ћ'G~Xa$g".Re{ % \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test34.input.bin b/sha3/tests/data/sha3_shake256/test34.input.bin new file mode 100644 index 00000000..7aaecfde --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test34.input.bin @@ -0,0 +1 @@ +ޏ?Kp@Ecø%1x~M ^OZ F \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test34.output.bin b/sha3/tests/data/sha3_shake256/test34.output.bin new file mode 100644 index 00000000..e9a3f643 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test34.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test35.input.bin b/sha3/tests/data/sha3_shake256/test35.input.bin new file mode 100644 index 00000000..8be18416 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test35.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test35.output.bin b/sha3/tests/data/sha3_shake256/test35.output.bin new file mode 100644 index 00000000..eabc0e42 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test35.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test36.input.bin b/sha3/tests/data/sha3_shake256/test36.input.bin new file mode 100644 index 00000000..bd37ce58 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test36.input.bin @@ -0,0 +1 @@ ++#} }>^*"gZcxN[N \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test36.output.bin b/sha3/tests/data/sha3_shake256/test36.output.bin new file mode 100644 index 00000000..8e9210f3 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test36.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test37.input.bin b/sha3/tests/data/sha3_shake256/test37.input.bin new file mode 100644 index 00000000..3f70b9dc --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test37.input.bin @@ -0,0 +1 @@ +Giz '4za:5bck]VO8' L+k \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test43.output.bin b/sha3/tests/data/sha3_shake256/test43.output.bin new file mode 100644 index 00000000..244b1337 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test43.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test44.input.bin b/sha3/tests/data/sha3_shake256/test44.input.bin new file mode 100644 index 00000000..f458e5bf --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test44.input.bin @@ -0,0 +1,2 @@ +3p#7 +H.5F|N~I `K.n[@қz \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test44.output.bin b/sha3/tests/data/sha3_shake256/test44.output.bin new file mode 100644 index 00000000..d4d30ccc Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test44.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test45.input.bin b/sha3/tests/data/sha3_shake256/test45.input.bin new file mode 100644 index 00000000..8484eefc --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test45.input.bin @@ -0,0 +1,2 @@ +hTLt-, +؄Q D81'Vk28*k5 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test45.output.bin b/sha3/tests/data/sha3_shake256/test45.output.bin new file mode 100644 index 00000000..429ddbc1 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test45.output.bin @@ -0,0 +1,3 @@ +@1#nk7O@X{ݽspfD,tz瓡Bm-i[V|C> IV&orEԔȚwgS+p SNҋ虒X^sF/$v0+ תO4`@jK0H ":,'|%V>T',AbVKj5[ʠzz v +p'aKige2"8sm]`2"ha*Vu l6\\E\=FRp8Ң +Ca=q`Ms.+kopq% 0Qq>܍3mBt4$lj 'n[&x@` \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test46.input.bin b/sha3/tests/data/sha3_shake256/test46.input.bin new file mode 100644 index 00000000..871dabcf --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test46.input.bin @@ -0,0 +1 @@ ++0V [ڸ %]8Fr4 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test46.output.bin b/sha3/tests/data/sha3_shake256/test46.output.bin new file mode 100644 index 00000000..a5f41490 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test46.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test47.input.bin b/sha3/tests/data/sha3_shake256/test47.input.bin new file mode 100644 index 00000000..ba4594ad --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test47.input.bin @@ -0,0 +1 @@ +.툁 W-scra8KεEwlʐ~~ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test47.output.bin b/sha3/tests/data/sha3_shake256/test47.output.bin new file mode 100644 index 00000000..b9451404 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test47.output.bin @@ -0,0 +1,4 @@ +_e9nBXNHJ!'SLLP>_Բ-D~]<ڜ͎%tLWV)^UV j7]1Vn(;y6`;əecZЯ^IQZƃ~6-dW𣭓曂H4ű1lDBJib۳jS %uρ +ҝþ@S̷O.dm-!+|ջʏ`ja;'CE_/G2lv 1 H<+iY0] ɡ=*Ӊ4ҙZ:]XێC] :_@ۛvm) s>}nHTm|r’i϶TVߪBR HuT)>lST U("}l 9p +="6ڹQ)r%zٔ i0|K= +URMewU}s&"\㈒ _hsU1֛ԇO \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test48.input.bin b/sha3/tests/data/sha3_shake256/test48.input.bin new file mode 100644 index 00000000..d6259031 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test48.input.bin @@ -0,0 +1 @@ +CrQ֒Bu O@S,?\QNԥ0M G&6KZQٻ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test48.output.bin b/sha3/tests/data/sha3_shake256/test48.output.bin new file mode 100644 index 00000000..adbcc030 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test48.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test49.input.bin b/sha3/tests/data/sha3_shake256/test49.input.bin new file mode 100644 index 00000000..a2e03996 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test49.input.bin @@ -0,0 +1 @@ +Q_oVN'|ЌV$W)؜$ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test49.output.bin b/sha3/tests/data/sha3_shake256/test49.output.bin new file mode 100644 index 00000000..276ecc0b Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test49.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test5.input.bin b/sha3/tests/data/sha3_shake256/test5.input.bin new file mode 100644 index 00000000..ef149867 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test5.input.bin @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test5.output.bin b/sha3/tests/data/sha3_shake256/test5.output.bin new file mode 100644 index 00000000..e46d57bc Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test5.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test50.input.bin b/sha3/tests/data/sha3_shake256/test50.input.bin new file mode 100644 index 00000000..b0fcd9fc --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test50.input.bin @@ -0,0 +1 @@ +p4`7hӿV9֟,9YIH8Гf a4.8xG`Q*֏"ѫ--ઽxϷM"PoLVy @aTXZIqnZl8jeV;y,%{fN:G ?H/lw= S01"ofiήS?ziSlPg (,Љۘ妃[g2}#̔D +DM9/D}r ~hc)c GpD( \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test52.input.bin b/sha3/tests/data/sha3_shake256/test52.input.bin new file mode 100644 index 00000000..b1e48149 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test52.input.bin @@ -0,0 +1 @@ +!7Wl-cv8"C0O@+9"e \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test52.output.bin b/sha3/tests/data/sha3_shake256/test52.output.bin new file mode 100644 index 00000000..fa67abc0 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test52.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test53.input.bin b/sha3/tests/data/sha3_shake256/test53.input.bin new file mode 100644 index 00000000..6213343f --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test53.input.bin @@ -0,0 +1 @@ +򶓽 u"T/cr⃻&֍(8E/j"sE* \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test53.output.bin b/sha3/tests/data/sha3_shake256/test53.output.bin new file mode 100644 index 00000000..a933c683 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test53.output.bin @@ -0,0 +1,5 @@ +' M]s۹.hslFȞmQo)%|X x0 ݢzd>6OJ錿r5:H}ta1TId !uwVz5Di51+GTӗRXw`r]D?;E݂C;Hfz!T+|\*R9MIj@/rTw)X 砨ԉ|X$T_6. +o~q +3vsC^ZF%~9쭦u]t%Hf+j$N.Fq͗#$? D?ab-j>. +*k=Jr)z!AC#UAڝpM( D8f +SJYX$]BH |"2::ܴԓ/`a(;Hv` G.cw_ax?5|c 5?Fg6Ia35q~ь4SUI' N_4,P9ϯ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test54.input.bin b/sha3/tests/data/sha3_shake256/test54.input.bin new file mode 100644 index 00000000..3a8e346c --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test54.input.bin @@ -0,0 +1 @@ +qƢz BuoDY&B({"Iؔf!,!R \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test54.output.bin b/sha3/tests/data/sha3_shake256/test54.output.bin new file mode 100644 index 00000000..1ca25bca Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test54.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test55.input.bin b/sha3/tests/data/sha3_shake256/test55.input.bin new file mode 100644 index 00000000..077807c2 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test55.input.bin @@ -0,0 +1 @@ + Q3|*"z;/D%e5K Gil騫i{mj3 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test55.output.bin b/sha3/tests/data/sha3_shake256/test55.output.bin new file mode 100644 index 00000000..1785d953 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test55.output.bin @@ -0,0 +1,2 @@ +¯V+%Chv-;M 1ܱ_ctΫ_.Tl6|)+,Cł+Ay=j +:~3K3fD \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test58.input.bin b/sha3/tests/data/sha3_shake256/test58.input.bin new file mode 100644 index 00000000..2e68ef4c --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test58.input.bin @@ -0,0 +1,2 @@ +Ak\ܟQ6׫ +PTu֏N9ӰTkCZj<ڍT> \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test58.output.bin b/sha3/tests/data/sha3_shake256/test58.output.bin new file mode 100644 index 00000000..65feab19 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test58.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test59.input.bin b/sha3/tests/data/sha3_shake256/test59.input.bin new file mode 100644 index 00000000..62c5f7a8 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test59.input.bin @@ -0,0 +1 @@ +\_f..(JNktHh8wLOmPq݊A\HX1!hELxTʬ] -orY0#ߋXd2.$Hva+{ŻAiKx"$RU {),p]02Ҩ֎Ӧޏ7\)}VE;TjrL o8Tĉ}H$yz s![y2-a€[Ex]MHRKinmt~o39XXG{ĒAt*8Ps1<5zO`9i"b`ZqG>5Ӄ6mZ11/GɾP6 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test7.input.bin b/sha3/tests/data/sha3_shake256/test7.input.bin new file mode 100644 index 00000000..20cda512 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test7.input.bin @@ -0,0 +1 @@ + N) \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test7.output.bin b/sha3/tests/data/sha3_shake256/test7.output.bin new file mode 100644 index 00000000..4432aead Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test7.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test70.input.bin b/sha3/tests/data/sha3_shake256/test70.input.bin new file mode 100644 index 00000000..fb003ff3 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test70.input.bin @@ -0,0 +1 @@ +wcʘ[ʺT(oa(M])`q{Ik%(I,L,kt۶\*Q1lw \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test70.output.bin b/sha3/tests/data/sha3_shake256/test70.output.bin new file mode 100644 index 00000000..ac5c01a7 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test70.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test71.input.bin b/sha3/tests/data/sha3_shake256/test71.input.bin new file mode 100644 index 00000000..45546141 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test71.input.bin @@ -0,0 +1 @@ +ʎT#LmSsK _y: PB.ɍ~pD{#اw`YOr \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test71.output.bin b/sha3/tests/data/sha3_shake256/test71.output.bin new file mode 100644 index 00000000..17c31bfb Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test71.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test72.input.bin b/sha3/tests/data/sha3_shake256/test72.input.bin new file mode 100644 index 00000000..34b52d0b Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test72.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test72.output.bin b/sha3/tests/data/sha3_shake256/test72.output.bin new file mode 100644 index 00000000..66d7d033 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test72.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test73.input.bin b/sha3/tests/data/sha3_shake256/test73.input.bin new file mode 100644 index 00000000..3f6a3d3d Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test73.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test73.output.bin b/sha3/tests/data/sha3_shake256/test73.output.bin new file mode 100644 index 00000000..c129084e Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test73.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test74.input.bin b/sha3/tests/data/sha3_shake256/test74.input.bin new file mode 100644 index 00000000..206cbe08 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test74.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test74.output.bin b/sha3/tests/data/sha3_shake256/test74.output.bin new file mode 100644 index 00000000..dea5716d --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test74.output.bin @@ -0,0 +1,4 @@ +.Jsv +e!.\JIUieK]#CyC%OD2H[Jjp\Sġ/ƅD޵#@Q)b9;3Lރ1UwF"Ok +C%HcdL$M䆣x;Wg"̻>b%f%V?st7}S"A WOΪ'FK#=蹷3lϢtuɬg] ĔY,%agw42-:"jaXBHtV>,e+p&+1-}%l3/8ωـ+VT5s%6N谨xkㄽ)O[W;gֻ7k8ٮ|jmw77xFE@Vr6ma8N4f]-bܗ FxG=Z{Q";[<ᐜ ԱMpt \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test75.output.bin b/sha3/tests/data/sha3_shake256/test75.output.bin new file mode 100644 index 00000000..532a998c Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test75.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test76.input.bin b/sha3/tests/data/sha3_shake256/test76.input.bin new file mode 100644 index 00000000..fbd5dce7 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test76.input.bin @@ -0,0 +1 @@ +=׿YJ5'}}Z[Mm/dqQA̽{ΠRCޮ|MFv?wӄY< \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test76.output.bin b/sha3/tests/data/sha3_shake256/test76.output.bin new file mode 100644 index 00000000..9e698fea Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test76.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test77.input.bin b/sha3/tests/data/sha3_shake256/test77.input.bin new file mode 100644 index 00000000..5fcf443c --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test77.input.bin @@ -0,0 +1 @@ +<5@f3X6_\؏ɬX*]XѴcpNº4HԦ<#aY^| \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test77.output.bin b/sha3/tests/data/sha3_shake256/test77.output.bin new file mode 100644 index 00000000..55ceedf6 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test77.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test78.input.bin b/sha3/tests/data/sha3_shake256/test78.input.bin new file mode 100644 index 00000000..78d1a46e --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test78.input.bin @@ -0,0 +1,2 @@ +d^ʆ5| + adt֑ͽeKRTi1j SƎ2NŤ֢ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test78.output.bin b/sha3/tests/data/sha3_shake256/test78.output.bin new file mode 100644 index 00000000..bd1dde31 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test78.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test79.input.bin b/sha3/tests/data/sha3_shake256/test79.input.bin new file mode 100644 index 00000000..8ec52985 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test79.input.bin @@ -0,0 +1,2 @@ +eK∹ tqh + *47,qΪ%ުWo1)aϛI[jIl[< \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test79.output.bin b/sha3/tests/data/sha3_shake256/test79.output.bin new file mode 100644 index 00000000..2d6cc5ad Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test79.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test8.input.bin b/sha3/tests/data/sha3_shake256/test8.input.bin new file mode 100644 index 00000000..4258f91d --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test8.input.bin @@ -0,0 +1 @@ +̃ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test8.output.bin b/sha3/tests/data/sha3_shake256/test8.output.bin new file mode 100644 index 00000000..8f3d7427 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test8.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test80.input.bin b/sha3/tests/data/sha3_shake256/test80.input.bin new file mode 100644 index 00000000..223995c9 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test80.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test80.output.bin b/sha3/tests/data/sha3_shake256/test80.output.bin new file mode 100644 index 00000000..5a503f3b Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test80.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test81.input.bin b/sha3/tests/data/sha3_shake256/test81.input.bin new file mode 100644 index 00000000..5cf1dae3 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test81.input.bin @@ -0,0 +1 @@ + z_6z͊H|'O3k7FXG_z5{eo{恵աꀅ⮜ 1Tmj0 \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test81.output.bin b/sha3/tests/data/sha3_shake256/test81.output.bin new file mode 100644 index 00000000..92fdab42 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test81.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test82.input.bin b/sha3/tests/data/sha3_shake256/test82.input.bin new file mode 100644 index 00000000..5ebb1af3 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test82.input.bin @@ -0,0 +1 @@ + OWwJ"1%k. oYu6]Sڃc#o<^ |hw=I\" \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test82.output.bin b/sha3/tests/data/sha3_shake256/test82.output.bin new file mode 100644 index 00000000..72de869b --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test82.output.bin @@ -0,0 +1,9 @@ + +s8@xsIcu>ۉ.>i)$]@mzۖRqT +)Z&6mO +?,? &~+q)&n,d_qa +u]M +T gE9MΉOLb&٫G2G)D;aK}ɀ]՘9BH$uޮx=zq ٨ՁY4":vǦ0> +30<@hv +䗀[C I['g|}ڿϪ{͋Y֋B{%-ҿ +\\|N2f~a,9|vj*y֋ߠL%;\% $-ql7FCb8""Dqjs{jxIurB*2+{iKBͤQu4{*+ ,'QV5+ =c^6p'im:͜ʒ1K?jDK@] \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test83.input.bin b/sha3/tests/data/sha3_shake256/test83.input.bin new file mode 100644 index 00000000..8af74e5b --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test83.input.bin @@ -0,0 +1,3 @@ +(bXVP Lw(a, ?o +&_?'3~rg{}!e +M2Ibv8ۭp,|&@ϋNT \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test83.output.bin b/sha3/tests/data/sha3_shake256/test83.output.bin new file mode 100644 index 00000000..b17e34a7 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test83.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test84.input.bin b/sha3/tests/data/sha3_shake256/test84.input.bin new file mode 100644 index 00000000..c5affa06 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test84.input.bin @@ -0,0 +1,2 @@ +cH);w wTNQfȁitnB?vj  >;oytp +z}(L;xp=+xan \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test84.output.bin b/sha3/tests/data/sha3_shake256/test84.output.bin new file mode 100644 index 00000000..0bc771b2 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test84.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test85.input.bin b/sha3/tests/data/sha3_shake256/test85.input.bin new file mode 100644 index 00000000..cffc8df4 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test85.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test85.output.bin b/sha3/tests/data/sha3_shake256/test85.output.bin new file mode 100644 index 00000000..32a2d673 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test85.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test86.input.bin b/sha3/tests/data/sha3_shake256/test86.input.bin new file mode 100644 index 00000000..7db9b52d Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test86.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test86.output.bin b/sha3/tests/data/sha3_shake256/test86.output.bin new file mode 100644 index 00000000..77e994a0 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test86.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test87.input.bin b/sha3/tests/data/sha3_shake256/test87.input.bin new file mode 100644 index 00000000..4ab2eb77 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test87.input.bin @@ -0,0 +1 @@ +hn ij)/3͚J1zI/\v镬Ȼ{xЁ%]9GY ΂"AM%FR \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test87.output.bin b/sha3/tests/data/sha3_shake256/test87.output.bin new file mode 100644 index 00000000..c067bf23 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test87.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test88.input.bin b/sha3/tests/data/sha3_shake256/test88.input.bin new file mode 100644 index 00000000..98c75ade --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test88.input.bin @@ -0,0 +1 @@ +drN1Tt?4dK6޽dۧ\>@邻p0418FvO/E5;)o';oV< \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test88.output.bin b/sha3/tests/data/sha3_shake256/test88.output.bin new file mode 100644 index 00000000..d69e6938 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test88.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test89.input.bin b/sha3/tests/data/sha3_shake256/test89.input.bin new file mode 100644 index 00000000..e0db0dc8 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test89.input.bin @@ -0,0 +1 @@ + Xf_CB 1Ͱ"ƃ z>RWYLﴧ(F2I'uOJOd= чDL͟!@@NmE+TB} \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test89.output.bin b/sha3/tests/data/sha3_shake256/test89.output.bin new file mode 100644 index 00000000..19ce3942 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test89.output.bin @@ -0,0 +1 @@ + 1jv5q[1)R}!!VO+Cэw&"h3d;gk&;@d\&r)3a쭓q5~؄^ G&Mz;lF :]cH&Jʞ~wLN6iX.قw6Y@]հo-o).VqLhj|Asb]w>u,E&"rJ̡LmS;KAf!j(YЖ` 2 jU-) G$F Ŗ_7A6t}oGplj\`Aꆟpjd :t),4iP,+aGXVG'Iꁐ $sy >IcJWv{,-2+6BBkoˊwWV䅵n#N*O64O6$M.㲛W<&I X*c&G͎'P \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test9.input.bin b/sha3/tests/data/sha3_shake256/test9.input.bin new file mode 100644 index 00000000..dbdc2b7a --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test9.input.bin @@ -0,0 +1 @@ +JO $Q%& \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test9.output.bin b/sha3/tests/data/sha3_shake256/test9.output.bin new file mode 100644 index 00000000..23cec25b Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test9.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test90.input.bin b/sha3/tests/data/sha3_shake256/test90.input.bin new file mode 100644 index 00000000..79e91444 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test90.input.bin differ diff --git a/sha3/tests/data/sha3_shake256/test90.output.bin b/sha3/tests/data/sha3_shake256/test90.output.bin new file mode 100644 index 00000000..a50a7512 Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test90.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test91.input.bin b/sha3/tests/data/sha3_shake256/test91.input.bin new file mode 100644 index 00000000..ea51e82c --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test91.input.bin @@ -0,0 +1 @@ +au,KWJ~@N=]RL ܰ:2uܭrS7yy&]|%yx< \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test91.output.bin b/sha3/tests/data/sha3_shake256/test91.output.bin new file mode 100644 index 00000000..fbf3f05b --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test91.output.bin @@ -0,0 +1,2 @@ +kEqPAPax/K9;ɻ_ǜ\m a_BV"iinCaz jF.+5bA0UlQ0c6Iv5Q27#UYDWzHA !ocf(`}-oNmv}-mH1a%ʱӅ'Y4^Qy %no14x(VԶ`KOb$aL`Kw +P/fg1oi}EĹF~LE2lA7ր4iL<!qU܏UbWx`:u8RMT=J 4R//a㦃Nf4u]m\Mv5f3Ӱ"2P׼E9rMj,qXI:}pijsQXߟf h}t{8 #e͙s^%f~${ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test92.input.bin b/sha3/tests/data/sha3_shake256/test92.input.bin new file mode 100644 index 00000000..47f32cf6 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test92.input.bin @@ -0,0 +1 @@ +5pc wNVS^GPw5DpFOdv*#zIRc '|Qs~z\U_ \ No newline at end of file diff --git a/sha3/tests/data/sha3_shake256/test92.output.bin b/sha3/tests/data/sha3_shake256/test92.output.bin new file mode 100644 index 00000000..9acd62eb Binary files /dev/null and b/sha3/tests/data/sha3_shake256/test92.output.bin differ diff --git a/sha3/tests/data/sha3_shake256/test93.input.bin b/sha3/tests/data/sha3_shake256/test93.input.bin new file mode 100644 index 00000000..203ee257 --- /dev/null +++ b/sha3/tests/data/sha3_shake256/test93.input.bin @@ -0,0 +1,2 @@ +/#@[r,YlE8^^cJ +*r>ݵ+g2aDʇ(&tests); +} + +#[test] +fn keccak_256() { + let tests = + new_tests!("keccak_256/test1", "keccak_256/test2", "keccak_256/test3"); + main_test::(&tests); +} + +#[test] +fn keccak_384() { + let tests = new_tests!("keccak_384/test1"); + main_test::(&tests); +} + +#[test] +fn keccak_512() { + let tests = new_tests!("keccak_512/test1"); + main_test::(&tests); +} + +#[test] +fn sha3_224() { + let tests = new_tests!("sha3_224/test1", + "sha3_224/test2", + "sha3_224/test3", + "sha3_224/test4", + "sha3_224/test5", + "sha3_224/test6", + "sha3_224/test7", + "sha3_224/test8", + "sha3_224/test9", + "sha3_224/test10", + "sha3_224/test11", + "sha3_224/test12", + "sha3_224/test13", + "sha3_224/test14", + "sha3_224/test15", + "sha3_224/test16", + "sha3_224/test17", + "sha3_224/test18", + "sha3_224/test19", + "sha3_224/test20", + "sha3_224/test21", + "sha3_224/test22", + "sha3_224/test23", + "sha3_224/test24", + "sha3_224/test25", + "sha3_224/test26", + "sha3_224/test27", + "sha3_224/test28", + "sha3_224/test29", + "sha3_224/test30", + "sha3_224/test31", + "sha3_224/test32", + "sha3_224/test33", + "sha3_224/test34", + "sha3_224/test35", + "sha3_224/test36", + "sha3_224/test37", + "sha3_224/test38", + "sha3_224/test39", + "sha3_224/test40", + "sha3_224/test41", + "sha3_224/test42", + "sha3_224/test43", + "sha3_224/test44", + "sha3_224/test45", + "sha3_224/test46", + "sha3_224/test47", + "sha3_224/test48", + "sha3_224/test49", + "sha3_224/test50", + "sha3_224/test51", + "sha3_224/test52", + "sha3_224/test53", + "sha3_224/test54", + "sha3_224/test55", + "sha3_224/test56", + "sha3_224/test57", + "sha3_224/test58", + "sha3_224/test59", + "sha3_224/test60", + "sha3_224/test61", + "sha3_224/test62", + "sha3_224/test63", + "sha3_224/test64", + "sha3_224/test65", + "sha3_224/test66", + "sha3_224/test67", + "sha3_224/test68", + "sha3_224/test69", + "sha3_224/test70", + "sha3_224/test71", + "sha3_224/test72", + "sha3_224/test73", + "sha3_224/test74", + "sha3_224/test75", + "sha3_224/test76", + "sha3_224/test77", + "sha3_224/test78", + "sha3_224/test79", + "sha3_224/test80", + "sha3_224/test81", + "sha3_224/test82", + "sha3_224/test83", + "sha3_224/test84", + "sha3_224/test85", + "sha3_224/test86", + "sha3_224/test87", + "sha3_224/test88", + "sha3_224/test89", + "sha3_224/test90", + "sha3_224/test91", + "sha3_224/test92", + "sha3_224/test93", + "sha3_224/test94", + "sha3_224/test95", + "sha3_224/test96", + "sha3_224/test97", + "sha3_224/test98", + "sha3_224/test99", + "sha3_224/test100", + "sha3_224/test101", + "sha3_224/test102", + "sha3_224/test103", + "sha3_224/test104", + "sha3_224/test105", + "sha3_224/test106", + "sha3_224/test107", + "sha3_224/test108", + "sha3_224/test109", + "sha3_224/test110", + "sha3_224/test111", + "sha3_224/test112", + "sha3_224/test113", + "sha3_224/test114", + "sha3_224/test115", + "sha3_224/test116", + "sha3_224/test117", + "sha3_224/test118", + "sha3_224/test119", + "sha3_224/test120", + "sha3_224/test121", + "sha3_224/test122", + "sha3_224/test123", + "sha3_224/test124", + "sha3_224/test125", + "sha3_224/test126", + "sha3_224/test127", + "sha3_224/test128", + "sha3_224/test129", + "sha3_224/test130", + "sha3_224/test131", + "sha3_224/test132", + "sha3_224/test133", + "sha3_224/test134", + "sha3_224/test135", + "sha3_224/test136", + "sha3_224/test137", + "sha3_224/test138", + "sha3_224/test139", + "sha3_224/test140", + "sha3_224/test141", + "sha3_224/test142", + "sha3_224/test143", + "sha3_224/test144", + "sha3_224/test145", + "sha3_224/test146", + "sha3_224/test147", + "sha3_224/test148", + "sha3_224/test149", + "sha3_224/test150", + "sha3_224/test151", + "sha3_224/test152", + "sha3_224/test153", + "sha3_224/test154", + "sha3_224/test155", + "sha3_224/test156", + "sha3_224/test157", + "sha3_224/test158", + "sha3_224/test159", + "sha3_224/test160", + "sha3_224/test161", + "sha3_224/test162", + "sha3_224/test163", + "sha3_224/test164", + "sha3_224/test165", + "sha3_224/test166", + "sha3_224/test167", + "sha3_224/test168", + "sha3_224/test169", + "sha3_224/test170", + "sha3_224/test171", + "sha3_224/test172", + "sha3_224/test173", + "sha3_224/test174", + "sha3_224/test175", + "sha3_224/test176", + "sha3_224/test177", + "sha3_224/test178", + "sha3_224/test179", + "sha3_224/test180", + "sha3_224/test181", + "sha3_224/test182", + "sha3_224/test183", + "sha3_224/test184", + "sha3_224/test185", + "sha3_224/test186", + "sha3_224/test187", + "sha3_224/test188", + "sha3_224/test189", + "sha3_224/test190", + "sha3_224/test191", + "sha3_224/test192", + "sha3_224/test193", + "sha3_224/test194", + "sha3_224/test195", + "sha3_224/test196", + "sha3_224/test197", + "sha3_224/test198", + "sha3_224/test199", + "sha3_224/test200", + "sha3_224/test201", + "sha3_224/test202", + "sha3_224/test203", + "sha3_224/test204", + "sha3_224/test205", + "sha3_224/test206", + "sha3_224/test207", + "sha3_224/test208", + "sha3_224/test209", + "sha3_224/test210", + "sha3_224/test211", + "sha3_224/test212", + "sha3_224/test213", + "sha3_224/test214", + "sha3_224/test215", + "sha3_224/test216", + "sha3_224/test217", + "sha3_224/test218", + "sha3_224/test219", + "sha3_224/test220", + "sha3_224/test221", + "sha3_224/test222", + "sha3_224/test223", + "sha3_224/test224", + "sha3_224/test225", + "sha3_224/test226", + "sha3_224/test227", + "sha3_224/test228", + "sha3_224/test229", + "sha3_224/test230", + "sha3_224/test231", + "sha3_224/test232", + "sha3_224/test233", + "sha3_224/test234", + "sha3_224/test235", + "sha3_224/test236", + "sha3_224/test237", + "sha3_224/test238", + "sha3_224/test239", + "sha3_224/test240", + "sha3_224/test241", + "sha3_224/test242", + "sha3_224/test243", + "sha3_224/test244", + "sha3_224/test245", + "sha3_224/test246", + "sha3_224/test247", + "sha3_224/test248", + "sha3_224/test249", + "sha3_224/test250", + "sha3_224/test251", + "sha3_224/test252", + "sha3_224/test253", + "sha3_224/test254", + "sha3_224/test255", + "sha3_224/test256"); + main_test::(&tests); +} + +#[test] +fn sha3_256() { + let tests = new_tests!("sha3_256/test1", + "sha3_256/test2", + "sha3_256/test3", + "sha3_256/test4", + "sha3_256/test5", + "sha3_256/test6", + "sha3_256/test7", + "sha3_256/test8", + "sha3_256/test9", + "sha3_256/test10", + "sha3_256/test11", + "sha3_256/test12", + "sha3_256/test13", + "sha3_256/test14", + "sha3_256/test15", + "sha3_256/test16", + "sha3_256/test17", + "sha3_256/test18", + "sha3_256/test19", + "sha3_256/test20", + "sha3_256/test21", + "sha3_256/test22", + "sha3_256/test23", + "sha3_256/test24", + "sha3_256/test25", + "sha3_256/test26", + "sha3_256/test27", + "sha3_256/test28", + "sha3_256/test29", + "sha3_256/test30", + "sha3_256/test31", + "sha3_256/test32", + "sha3_256/test33", + "sha3_256/test34", + "sha3_256/test35", + "sha3_256/test36", + "sha3_256/test37", + "sha3_256/test38", + "sha3_256/test39", + "sha3_256/test40", + "sha3_256/test41", + "sha3_256/test42", + "sha3_256/test43", + "sha3_256/test44", + "sha3_256/test45", + "sha3_256/test46", + "sha3_256/test47", + "sha3_256/test48", + "sha3_256/test49", + "sha3_256/test50", + "sha3_256/test51", + "sha3_256/test52", + "sha3_256/test53", + "sha3_256/test54", + "sha3_256/test55", + "sha3_256/test56", + "sha3_256/test57", + "sha3_256/test58", + "sha3_256/test59", + "sha3_256/test60", + "sha3_256/test61", + "sha3_256/test62", + "sha3_256/test63", + "sha3_256/test64", + "sha3_256/test65", + "sha3_256/test66", + "sha3_256/test67", + "sha3_256/test68", + "sha3_256/test69", + "sha3_256/test70", + "sha3_256/test71", + "sha3_256/test72", + "sha3_256/test73", + "sha3_256/test74", + "sha3_256/test75", + "sha3_256/test76", + "sha3_256/test77", + "sha3_256/test78", + "sha3_256/test79", + "sha3_256/test80", + "sha3_256/test81", + "sha3_256/test82", + "sha3_256/test83", + "sha3_256/test84", + "sha3_256/test85", + "sha3_256/test86", + "sha3_256/test87", + "sha3_256/test88", + "sha3_256/test89", + "sha3_256/test90", + "sha3_256/test91", + "sha3_256/test92", + "sha3_256/test93", + "sha3_256/test94", + "sha3_256/test95", + "sha3_256/test96", + "sha3_256/test97", + "sha3_256/test98", + "sha3_256/test99", + "sha3_256/test100", + "sha3_256/test101", + "sha3_256/test102", + "sha3_256/test103", + "sha3_256/test104", + "sha3_256/test105", + "sha3_256/test106", + "sha3_256/test107", + "sha3_256/test108", + "sha3_256/test109", + "sha3_256/test110", + "sha3_256/test111", + "sha3_256/test112", + "sha3_256/test113", + "sha3_256/test114", + "sha3_256/test115", + "sha3_256/test116", + "sha3_256/test117", + "sha3_256/test118", + "sha3_256/test119", + "sha3_256/test120", + "sha3_256/test121", + "sha3_256/test122", + "sha3_256/test123", + "sha3_256/test124", + "sha3_256/test125", + "sha3_256/test126", + "sha3_256/test127", + "sha3_256/test128", + "sha3_256/test129", + "sha3_256/test130", + "sha3_256/test131", + "sha3_256/test132", + "sha3_256/test133", + "sha3_256/test134", + "sha3_256/test135", + "sha3_256/test136", + "sha3_256/test137", + "sha3_256/test138", + "sha3_256/test139", + "sha3_256/test140", + "sha3_256/test141", + "sha3_256/test142", + "sha3_256/test143", + "sha3_256/test144", + "sha3_256/test145", + "sha3_256/test146", + "sha3_256/test147", + "sha3_256/test148", + "sha3_256/test149", + "sha3_256/test150", + "sha3_256/test151", + "sha3_256/test152", + "sha3_256/test153", + "sha3_256/test154", + "sha3_256/test155", + "sha3_256/test156", + "sha3_256/test157", + "sha3_256/test158", + "sha3_256/test159", + "sha3_256/test160", + "sha3_256/test161", + "sha3_256/test162", + "sha3_256/test163", + "sha3_256/test164", + "sha3_256/test165", + "sha3_256/test166", + "sha3_256/test167", + "sha3_256/test168", + "sha3_256/test169", + "sha3_256/test170", + "sha3_256/test171", + "sha3_256/test172", + "sha3_256/test173", + "sha3_256/test174", + "sha3_256/test175", + "sha3_256/test176", + "sha3_256/test177", + "sha3_256/test178", + "sha3_256/test179", + "sha3_256/test180", + "sha3_256/test181", + "sha3_256/test182", + "sha3_256/test183", + "sha3_256/test184", + "sha3_256/test185", + "sha3_256/test186", + "sha3_256/test187", + "sha3_256/test188", + "sha3_256/test189", + "sha3_256/test190", + "sha3_256/test191", + "sha3_256/test192", + "sha3_256/test193", + "sha3_256/test194", + "sha3_256/test195", + "sha3_256/test196", + "sha3_256/test197", + "sha3_256/test198", + "sha3_256/test199", + "sha3_256/test200", + "sha3_256/test201", + "sha3_256/test202", + "sha3_256/test203", + "sha3_256/test204", + "sha3_256/test205", + "sha3_256/test206", + "sha3_256/test207", + "sha3_256/test208", + "sha3_256/test209", + "sha3_256/test210", + "sha3_256/test211", + "sha3_256/test212", + "sha3_256/test213", + "sha3_256/test214", + "sha3_256/test215", + "sha3_256/test216", + "sha3_256/test217", + "sha3_256/test218", + "sha3_256/test219", + "sha3_256/test220", + "sha3_256/test221", + "sha3_256/test222", + "sha3_256/test223", + "sha3_256/test224", + "sha3_256/test225", + "sha3_256/test226", + "sha3_256/test227", + "sha3_256/test228", + "sha3_256/test229", + "sha3_256/test230", + "sha3_256/test231", + "sha3_256/test232", + "sha3_256/test233", + "sha3_256/test234", + "sha3_256/test235", + "sha3_256/test236", + "sha3_256/test237", + "sha3_256/test238", + "sha3_256/test239", + "sha3_256/test240", + "sha3_256/test241", + "sha3_256/test242", + "sha3_256/test243", + "sha3_256/test244", + "sha3_256/test245", + "sha3_256/test246", + "sha3_256/test247", + "sha3_256/test248", + "sha3_256/test249", + "sha3_256/test250", + "sha3_256/test251", + "sha3_256/test252", + "sha3_256/test253", + "sha3_256/test254", + "sha3_256/test255", + "sha3_256/test256"); + main_test::(&tests); +} + +#[test] +fn sha3_384() { + let tests = new_tests!("sha3_384/test1", + "sha3_384/test2", + "sha3_384/test3", + "sha3_384/test4", + "sha3_384/test5", + "sha3_384/test6", + "sha3_384/test7", + "sha3_384/test8", + "sha3_384/test9", + "sha3_384/test10", + "sha3_384/test11", + "sha3_384/test12", + "sha3_384/test13", + "sha3_384/test14", + "sha3_384/test15", + "sha3_384/test16", + "sha3_384/test17", + "sha3_384/test18", + "sha3_384/test19", + "sha3_384/test20", + "sha3_384/test21", + "sha3_384/test22", + "sha3_384/test23", + "sha3_384/test24", + "sha3_384/test25", + "sha3_384/test26", + "sha3_384/test27", + "sha3_384/test28", + "sha3_384/test29", + "sha3_384/test30", + "sha3_384/test31", + "sha3_384/test32", + "sha3_384/test33", + "sha3_384/test34", + "sha3_384/test35", + "sha3_384/test36", + "sha3_384/test37", + "sha3_384/test38", + "sha3_384/test39", + "sha3_384/test40", + "sha3_384/test41", + "sha3_384/test42", + "sha3_384/test43", + "sha3_384/test44", + "sha3_384/test45", + "sha3_384/test46", + "sha3_384/test47", + "sha3_384/test48", + "sha3_384/test49", + "sha3_384/test50", + "sha3_384/test51", + "sha3_384/test52", + "sha3_384/test53", + "sha3_384/test54", + "sha3_384/test55", + "sha3_384/test56", + "sha3_384/test57", + "sha3_384/test58", + "sha3_384/test59", + "sha3_384/test60", + "sha3_384/test61", + "sha3_384/test62", + "sha3_384/test63", + "sha3_384/test64", + "sha3_384/test65", + "sha3_384/test66", + "sha3_384/test67", + "sha3_384/test68", + "sha3_384/test69", + "sha3_384/test70", + "sha3_384/test71", + "sha3_384/test72", + "sha3_384/test73", + "sha3_384/test74", + "sha3_384/test75", + "sha3_384/test76", + "sha3_384/test77", + "sha3_384/test78", + "sha3_384/test79", + "sha3_384/test80", + "sha3_384/test81", + "sha3_384/test82", + "sha3_384/test83", + "sha3_384/test84", + "sha3_384/test85", + "sha3_384/test86", + "sha3_384/test87", + "sha3_384/test88", + "sha3_384/test89", + "sha3_384/test90", + "sha3_384/test91", + "sha3_384/test92", + "sha3_384/test93", + "sha3_384/test94", + "sha3_384/test95", + "sha3_384/test96", + "sha3_384/test97", + "sha3_384/test98", + "sha3_384/test99", + "sha3_384/test100", + "sha3_384/test101", + "sha3_384/test102", + "sha3_384/test103", + "sha3_384/test104", + "sha3_384/test105", + "sha3_384/test106", + "sha3_384/test107", + "sha3_384/test108", + "sha3_384/test109", + "sha3_384/test110", + "sha3_384/test111", + "sha3_384/test112", + "sha3_384/test113", + "sha3_384/test114", + "sha3_384/test115", + "sha3_384/test116", + "sha3_384/test117", + "sha3_384/test118", + "sha3_384/test119", + "sha3_384/test120", + "sha3_384/test121", + "sha3_384/test122", + "sha3_384/test123", + "sha3_384/test124", + "sha3_384/test125", + "sha3_384/test126", + "sha3_384/test127", + "sha3_384/test128", + "sha3_384/test129", + "sha3_384/test130", + "sha3_384/test131", + "sha3_384/test132", + "sha3_384/test133", + "sha3_384/test134", + "sha3_384/test135", + "sha3_384/test136", + "sha3_384/test137", + "sha3_384/test138", + "sha3_384/test139", + "sha3_384/test140", + "sha3_384/test141", + "sha3_384/test142", + "sha3_384/test143", + "sha3_384/test144", + "sha3_384/test145", + "sha3_384/test146", + "sha3_384/test147", + "sha3_384/test148", + "sha3_384/test149", + "sha3_384/test150", + "sha3_384/test151", + "sha3_384/test152", + "sha3_384/test153", + "sha3_384/test154", + "sha3_384/test155", + "sha3_384/test156", + "sha3_384/test157", + "sha3_384/test158", + "sha3_384/test159", + "sha3_384/test160", + "sha3_384/test161", + "sha3_384/test162", + "sha3_384/test163", + "sha3_384/test164", + "sha3_384/test165", + "sha3_384/test166", + "sha3_384/test167", + "sha3_384/test168", + "sha3_384/test169", + "sha3_384/test170", + "sha3_384/test171", + "sha3_384/test172", + "sha3_384/test173", + "sha3_384/test174", + "sha3_384/test175", + "sha3_384/test176", + "sha3_384/test177", + "sha3_384/test178", + "sha3_384/test179", + "sha3_384/test180", + "sha3_384/test181", + "sha3_384/test182", + "sha3_384/test183", + "sha3_384/test184", + "sha3_384/test185", + "sha3_384/test186", + "sha3_384/test187", + "sha3_384/test188", + "sha3_384/test189", + "sha3_384/test190", + "sha3_384/test191", + "sha3_384/test192", + "sha3_384/test193", + "sha3_384/test194", + "sha3_384/test195", + "sha3_384/test196", + "sha3_384/test197", + "sha3_384/test198", + "sha3_384/test199", + "sha3_384/test200", + "sha3_384/test201", + "sha3_384/test202", + "sha3_384/test203", + "sha3_384/test204", + "sha3_384/test205", + "sha3_384/test206", + "sha3_384/test207", + "sha3_384/test208", + "sha3_384/test209", + "sha3_384/test210", + "sha3_384/test211", + "sha3_384/test212", + "sha3_384/test213", + "sha3_384/test214", + "sha3_384/test215", + "sha3_384/test216", + "sha3_384/test217", + "sha3_384/test218", + "sha3_384/test219", + "sha3_384/test220", + "sha3_384/test221", + "sha3_384/test222", + "sha3_384/test223", + "sha3_384/test224", + "sha3_384/test225", + "sha3_384/test226", + "sha3_384/test227", + "sha3_384/test228", + "sha3_384/test229", + "sha3_384/test230", + "sha3_384/test231", + "sha3_384/test232", + "sha3_384/test233", + "sha3_384/test234", + "sha3_384/test235", + "sha3_384/test236", + "sha3_384/test237", + "sha3_384/test238", + "sha3_384/test239", + "sha3_384/test240", + "sha3_384/test241", + "sha3_384/test242", + "sha3_384/test243", + "sha3_384/test244", + "sha3_384/test245", + "sha3_384/test246", + "sha3_384/test247", + "sha3_384/test248", + "sha3_384/test249", + "sha3_384/test250", + "sha3_384/test251", + "sha3_384/test252", + "sha3_384/test253", + "sha3_384/test254", + "sha3_384/test255"); + main_test::(&tests); +} + +#[test] +fn sha3_512() { + let tests = new_tests!("sha3_512/test1", + "sha3_512/test2", + "sha3_512/test3", + "sha3_512/test4", + "sha3_512/test5", + "sha3_512/test6", + "sha3_512/test7", + "sha3_512/test8", + "sha3_512/test9", + "sha3_512/test10", + "sha3_512/test11", + "sha3_512/test12", + "sha3_512/test13", + "sha3_512/test14", + "sha3_512/test15", + "sha3_512/test16", + "sha3_512/test17", + "sha3_512/test18", + "sha3_512/test19", + "sha3_512/test20", + "sha3_512/test21", + "sha3_512/test22", + "sha3_512/test23", + "sha3_512/test24", + "sha3_512/test25", + "sha3_512/test26", + "sha3_512/test27", + "sha3_512/test28", + "sha3_512/test29", + "sha3_512/test30", + "sha3_512/test31", + "sha3_512/test32", + "sha3_512/test33", + "sha3_512/test34", + "sha3_512/test35", + "sha3_512/test36", + "sha3_512/test37", + "sha3_512/test38", + "sha3_512/test39", + "sha3_512/test40", + "sha3_512/test41", + "sha3_512/test42", + "sha3_512/test43", + "sha3_512/test44", + "sha3_512/test45", + "sha3_512/test46", + "sha3_512/test47", + "sha3_512/test48", + "sha3_512/test49", + "sha3_512/test50", + "sha3_512/test51", + "sha3_512/test52", + "sha3_512/test53", + "sha3_512/test54", + "sha3_512/test55", + "sha3_512/test56", + "sha3_512/test57", + "sha3_512/test58", + "sha3_512/test59", + "sha3_512/test60", + "sha3_512/test61", + "sha3_512/test62", + "sha3_512/test63", + "sha3_512/test64", + "sha3_512/test65", + "sha3_512/test66", + "sha3_512/test67", + "sha3_512/test68", + "sha3_512/test69", + "sha3_512/test70", + "sha3_512/test71", + "sha3_512/test72", + "sha3_512/test73", + "sha3_512/test74", + "sha3_512/test75", + "sha3_512/test76", + "sha3_512/test77", + "sha3_512/test78", + "sha3_512/test79", + "sha3_512/test80", + "sha3_512/test81", + "sha3_512/test82", + "sha3_512/test83", + "sha3_512/test84", + "sha3_512/test85", + "sha3_512/test86", + "sha3_512/test87", + "sha3_512/test88", + "sha3_512/test89", + "sha3_512/test90", + "sha3_512/test91", + "sha3_512/test92", + "sha3_512/test93", + "sha3_512/test94", + "sha3_512/test95", + "sha3_512/test96", + "sha3_512/test97", + "sha3_512/test98", + "sha3_512/test99", + "sha3_512/test100", + "sha3_512/test101", + "sha3_512/test102", + "sha3_512/test103", + "sha3_512/test104", + "sha3_512/test105", + "sha3_512/test106", + "sha3_512/test107", + "sha3_512/test108", + "sha3_512/test109", + "sha3_512/test110", + "sha3_512/test111", + "sha3_512/test112", + "sha3_512/test113", + "sha3_512/test114", + "sha3_512/test115", + "sha3_512/test116", + "sha3_512/test117", + "sha3_512/test118", + "sha3_512/test119", + "sha3_512/test120", + "sha3_512/test121", + "sha3_512/test122", + "sha3_512/test123", + "sha3_512/test124", + "sha3_512/test125", + "sha3_512/test126", + "sha3_512/test127", + "sha3_512/test128", + "sha3_512/test129", + "sha3_512/test130", + "sha3_512/test131", + "sha3_512/test132", + "sha3_512/test133", + "sha3_512/test134", + "sha3_512/test135", + "sha3_512/test136", + "sha3_512/test137", + "sha3_512/test138", + "sha3_512/test139", + "sha3_512/test140", + "sha3_512/test141", + "sha3_512/test142", + "sha3_512/test143", + "sha3_512/test144", + "sha3_512/test145", + "sha3_512/test146", + "sha3_512/test147", + "sha3_512/test148", + "sha3_512/test149", + "sha3_512/test150", + "sha3_512/test151", + "sha3_512/test152", + "sha3_512/test153", + "sha3_512/test154", + "sha3_512/test155", + "sha3_512/test156", + "sha3_512/test157", + "sha3_512/test158", + "sha3_512/test159", + "sha3_512/test160", + "sha3_512/test161", + "sha3_512/test162", + "sha3_512/test163", + "sha3_512/test164", + "sha3_512/test165", + "sha3_512/test166", + "sha3_512/test167", + "sha3_512/test168", + "sha3_512/test169", + "sha3_512/test170", + "sha3_512/test171", + "sha3_512/test172", + "sha3_512/test173", + "sha3_512/test174", + "sha3_512/test175", + "sha3_512/test176", + "sha3_512/test177", + "sha3_512/test178", + "sha3_512/test179", + "sha3_512/test180", + "sha3_512/test181", + "sha3_512/test182", + "sha3_512/test183", + "sha3_512/test184", + "sha3_512/test185", + "sha3_512/test186", + "sha3_512/test187", + "sha3_512/test188", + "sha3_512/test189", + "sha3_512/test190", + "sha3_512/test191", + "sha3_512/test192", + "sha3_512/test193", + "sha3_512/test194", + "sha3_512/test195", + "sha3_512/test196", + "sha3_512/test197", + "sha3_512/test198", + "sha3_512/test199", + "sha3_512/test200", + "sha3_512/test201", + "sha3_512/test202", + "sha3_512/test203", + "sha3_512/test204", + "sha3_512/test205", + "sha3_512/test206", + "sha3_512/test207", + "sha3_512/test208", + "sha3_512/test209", + "sha3_512/test210", + "sha3_512/test211", + "sha3_512/test212", + "sha3_512/test213", + "sha3_512/test214", + "sha3_512/test215", + "sha3_512/test216", + "sha3_512/test217", + "sha3_512/test218", + "sha3_512/test219", + "sha3_512/test220", + "sha3_512/test221", + "sha3_512/test222", + "sha3_512/test223", + "sha3_512/test224", + "sha3_512/test225", + "sha3_512/test226", + "sha3_512/test227", + "sha3_512/test228", + "sha3_512/test229", + "sha3_512/test230", + "sha3_512/test231", + "sha3_512/test232", + "sha3_512/test233", + "sha3_512/test234", + "sha3_512/test235", + "sha3_512/test236", + "sha3_512/test237", + "sha3_512/test238", + "sha3_512/test239", + "sha3_512/test240", + "sha3_512/test241", + "sha3_512/test242", + "sha3_512/test243", + "sha3_512/test244", + "sha3_512/test245", + "sha3_512/test246", + "sha3_512/test247", + "sha3_512/test248", + "sha3_512/test249", + "sha3_512/test250", + "sha3_512/test251", + "sha3_512/test252", + "sha3_512/test253", + "sha3_512/test254", + "sha3_512/test255"); + main_test::(&tests); +} + +#[test] +fn sha3_shake128() { + let tests = new_tests!("sha3_shake128/test1", + "sha3_shake128/test2", + "sha3_shake128/test3", + "sha3_shake128/test4", + "sha3_shake128/test5", + "sha3_shake128/test6", + "sha3_shake128/test7", + "sha3_shake128/test8", + "sha3_shake128/test9", + "sha3_shake128/test10", + "sha3_shake128/test11", + "sha3_shake128/test12", + "sha3_shake128/test13", + "sha3_shake128/test14", + "sha3_shake128/test15", + "sha3_shake128/test16", + "sha3_shake128/test17", + "sha3_shake128/test18", + "sha3_shake128/test19", + "sha3_shake128/test20", + "sha3_shake128/test21", + "sha3_shake128/test22", + "sha3_shake128/test23", + "sha3_shake128/test24", + "sha3_shake128/test25", + "sha3_shake128/test26", + "sha3_shake128/test27", + "sha3_shake128/test28", + "sha3_shake128/test29", + "sha3_shake128/test30", + "sha3_shake128/test31", + "sha3_shake128/test32", + "sha3_shake128/test33", + "sha3_shake128/test34", + "sha3_shake128/test35", + "sha3_shake128/test36", + "sha3_shake128/test37", + "sha3_shake128/test38", + "sha3_shake128/test39", + "sha3_shake128/test40", + "sha3_shake128/test41", + "sha3_shake128/test42", + "sha3_shake128/test43", + "sha3_shake128/test44", + "sha3_shake128/test45", + "sha3_shake128/test46", + "sha3_shake128/test47", + "sha3_shake128/test48", + "sha3_shake128/test49", + "sha3_shake128/test50", + "sha3_shake128/test51", + "sha3_shake128/test52", + "sha3_shake128/test53", + "sha3_shake128/test54", + "sha3_shake128/test55", + "sha3_shake128/test56", + "sha3_shake128/test57", + "sha3_shake128/test58", + "sha3_shake128/test59", + "sha3_shake128/test60", + "sha3_shake128/test61", + "sha3_shake128/test62", + "sha3_shake128/test63", + "sha3_shake128/test64", + "sha3_shake128/test65", + "sha3_shake128/test66", + "sha3_shake128/test67", + "sha3_shake128/test68", + "sha3_shake128/test69", + "sha3_shake128/test70", + "sha3_shake128/test71", + "sha3_shake128/test72", + "sha3_shake128/test73", + "sha3_shake128/test74", + "sha3_shake128/test75", + "sha3_shake128/test76", + "sha3_shake128/test77", + "sha3_shake128/test78", + "sha3_shake128/test79", + "sha3_shake128/test80", + "sha3_shake128/test81", + "sha3_shake128/test82", + "sha3_shake128/test83", + "sha3_shake128/test84", + "sha3_shake128/test85", + "sha3_shake128/test86", + "sha3_shake128/test87", + "sha3_shake128/test88", + "sha3_shake128/test89", + "sha3_shake128/test90", + "sha3_shake128/test91", + "sha3_shake128/test92", + "sha3_shake128/test93", + "sha3_shake128/test94", + "sha3_shake128/test95", + "sha3_shake128/test96", + "sha3_shake128/test97", + "sha3_shake128/test98", + "sha3_shake128/test99", + "sha3_shake128/test100", + "sha3_shake128/test101", + "sha3_shake128/test102", + "sha3_shake128/test103", + "sha3_shake128/test104", + "sha3_shake128/test105", + "sha3_shake128/test106", + "sha3_shake128/test107", + "sha3_shake128/test108", + "sha3_shake128/test109", + "sha3_shake128/test110", + "sha3_shake128/test111", + "sha3_shake128/test112", + "sha3_shake128/test113", + "sha3_shake128/test114", + "sha3_shake128/test115", + "sha3_shake128/test116", + "sha3_shake128/test117", + "sha3_shake128/test118", + "sha3_shake128/test119", + "sha3_shake128/test120", + "sha3_shake128/test121", + "sha3_shake128/test122", + "sha3_shake128/test123", + "sha3_shake128/test124", + "sha3_shake128/test125", + "sha3_shake128/test126", + "sha3_shake128/test127", + "sha3_shake128/test128", + "sha3_shake128/test129", + "sha3_shake128/test130", + "sha3_shake128/test131", + "sha3_shake128/test132", + "sha3_shake128/test133", + "sha3_shake128/test134", + "sha3_shake128/test135", + "sha3_shake128/test136", + "sha3_shake128/test137", + "sha3_shake128/test138", + "sha3_shake128/test139", + "sha3_shake128/test140", + "sha3_shake128/test141", + "sha3_shake128/test142", + "sha3_shake128/test143", + "sha3_shake128/test144", + "sha3_shake128/test145", + "sha3_shake128/test146", + "sha3_shake128/test147", + "sha3_shake128/test148", + "sha3_shake128/test149", + "sha3_shake128/test150", + "sha3_shake128/test151", + "sha3_shake128/test152", + "sha3_shake128/test153", + "sha3_shake128/test154", + "sha3_shake128/test155", + "sha3_shake128/test156", + "sha3_shake128/test157", + "sha3_shake128/test158", + "sha3_shake128/test159", + "sha3_shake128/test160", + "sha3_shake128/test161", + "sha3_shake128/test162", + "sha3_shake128/test163", + "sha3_shake128/test164", + "sha3_shake128/test165", + "sha3_shake128/test166", + "sha3_shake128/test167", + "sha3_shake128/test168", + "sha3_shake128/test169", + "sha3_shake128/test170", + "sha3_shake128/test171", + "sha3_shake128/test172", + "sha3_shake128/test173", + "sha3_shake128/test174", + "sha3_shake128/test175", + "sha3_shake128/test176", + "sha3_shake128/test177", + "sha3_shake128/test178", + "sha3_shake128/test179", + "sha3_shake128/test180", + "sha3_shake128/test181", + "sha3_shake128/test182", + "sha3_shake128/test183", + "sha3_shake128/test184", + "sha3_shake128/test185", + "sha3_shake128/test186", + "sha3_shake128/test187", + "sha3_shake128/test188", + "sha3_shake128/test189", + "sha3_shake128/test190", + "sha3_shake128/test191", + "sha3_shake128/test192", + "sha3_shake128/test193", + "sha3_shake128/test194", + "sha3_shake128/test195", + "sha3_shake128/test196", + "sha3_shake128/test197", + "sha3_shake128/test198", + "sha3_shake128/test199", + "sha3_shake128/test200", + "sha3_shake128/test201", + "sha3_shake128/test202", + "sha3_shake128/test203", + "sha3_shake128/test204", + "sha3_shake128/test205", + "sha3_shake128/test206", + "sha3_shake128/test207", + "sha3_shake128/test208", + "sha3_shake128/test209", + "sha3_shake128/test210", + "sha3_shake128/test211", + "sha3_shake128/test212", + "sha3_shake128/test213", + "sha3_shake128/test214", + "sha3_shake128/test215", + "sha3_shake128/test216", + "sha3_shake128/test217", + "sha3_shake128/test218", + "sha3_shake128/test219", + "sha3_shake128/test220", + "sha3_shake128/test221", + "sha3_shake128/test222", + "sha3_shake128/test223", + "sha3_shake128/test224", + "sha3_shake128/test225", + "sha3_shake128/test226", + "sha3_shake128/test227", + "sha3_shake128/test228", + "sha3_shake128/test229", + "sha3_shake128/test230", + "sha3_shake128/test231", + "sha3_shake128/test232", + "sha3_shake128/test233", + "sha3_shake128/test234", + "sha3_shake128/test235", + "sha3_shake128/test236", + "sha3_shake128/test237", + "sha3_shake128/test238", + "sha3_shake128/test239", + "sha3_shake128/test240", + "sha3_shake128/test241", + "sha3_shake128/test242", + "sha3_shake128/test243", + "sha3_shake128/test244", + "sha3_shake128/test245", + "sha3_shake128/test246", + "sha3_shake128/test247", + "sha3_shake128/test248", + "sha3_shake128/test249", + "sha3_shake128/test250", + "sha3_shake128/test251", + "sha3_shake128/test252", + "sha3_shake128/test253", + "sha3_shake128/test254", + "sha3_shake128/test255", + "sha3_shake128/test256"); + main_test::>(&tests); +} + +#[test] +fn sha3_shake256() { + let tests = new_tests!("sha3_shake256/test1", + "sha3_shake256/test2", + "sha3_shake256/test3", + "sha3_shake256/test4", + "sha3_shake256/test5", + "sha3_shake256/test6", + "sha3_shake256/test7", + "sha3_shake256/test8", + "sha3_shake256/test9", + "sha3_shake256/test10", + "sha3_shake256/test11", + "sha3_shake256/test12", + "sha3_shake256/test13", + "sha3_shake256/test14", + "sha3_shake256/test15", + "sha3_shake256/test16", + "sha3_shake256/test17", + "sha3_shake256/test18", + "sha3_shake256/test19", + "sha3_shake256/test20", + "sha3_shake256/test21", + "sha3_shake256/test22", + "sha3_shake256/test23", + "sha3_shake256/test24", + "sha3_shake256/test25", + "sha3_shake256/test26", + "sha3_shake256/test27", + "sha3_shake256/test28", + "sha3_shake256/test29", + "sha3_shake256/test30", + "sha3_shake256/test31", + "sha3_shake256/test32", + "sha3_shake256/test33", + "sha3_shake256/test34", + "sha3_shake256/test35", + "sha3_shake256/test36", + "sha3_shake256/test37", + "sha3_shake256/test38", + "sha3_shake256/test39", + "sha3_shake256/test40", + "sha3_shake256/test41", + "sha3_shake256/test42", + "sha3_shake256/test43", + "sha3_shake256/test44", + "sha3_shake256/test45", + "sha3_shake256/test46", + "sha3_shake256/test47", + "sha3_shake256/test48", + "sha3_shake256/test49", + "sha3_shake256/test50", + "sha3_shake256/test51", + "sha3_shake256/test52", + "sha3_shake256/test53", + "sha3_shake256/test54", + "sha3_shake256/test55", + "sha3_shake256/test56", + "sha3_shake256/test57", + "sha3_shake256/test58", + "sha3_shake256/test59", + "sha3_shake256/test60", + "sha3_shake256/test61", + "sha3_shake256/test62", + "sha3_shake256/test63", + "sha3_shake256/test64", + "sha3_shake256/test65", + "sha3_shake256/test66", + "sha3_shake256/test67", + "sha3_shake256/test68", + "sha3_shake256/test69", + "sha3_shake256/test70", + "sha3_shake256/test71", + "sha3_shake256/test72", + "sha3_shake256/test73", + "sha3_shake256/test74", + "sha3_shake256/test75", + "sha3_shake256/test76", + "sha3_shake256/test77", + "sha3_shake256/test78", + "sha3_shake256/test79", + "sha3_shake256/test80", + "sha3_shake256/test81", + "sha3_shake256/test82", + "sha3_shake256/test83", + "sha3_shake256/test84", + "sha3_shake256/test85", + "sha3_shake256/test86", + "sha3_shake256/test87", + "sha3_shake256/test88", + "sha3_shake256/test89", + "sha3_shake256/test90", + "sha3_shake256/test91", + "sha3_shake256/test92", + "sha3_shake256/test93", + "sha3_shake256/test94", + "sha3_shake256/test95", + "sha3_shake256/test96", + "sha3_shake256/test97", + "sha3_shake256/test98", + "sha3_shake256/test99", + "sha3_shake256/test100", + "sha3_shake256/test101", + "sha3_shake256/test102", + "sha3_shake256/test103", + "sha3_shake256/test104", + "sha3_shake256/test105", + "sha3_shake256/test106", + "sha3_shake256/test107", + "sha3_shake256/test108", + "sha3_shake256/test109", + "sha3_shake256/test110", + "sha3_shake256/test111", + "sha3_shake256/test112", + "sha3_shake256/test113", + "sha3_shake256/test114", + "sha3_shake256/test115", + "sha3_shake256/test116", + "sha3_shake256/test117", + "sha3_shake256/test118", + "sha3_shake256/test119", + "sha3_shake256/test120", + "sha3_shake256/test121", + "sha3_shake256/test122", + "sha3_shake256/test123", + "sha3_shake256/test124", + "sha3_shake256/test125", + "sha3_shake256/test126", + "sha3_shake256/test127", + "sha3_shake256/test128", + "sha3_shake256/test129", + "sha3_shake256/test130", + "sha3_shake256/test131", + "sha3_shake256/test132", + "sha3_shake256/test133", + "sha3_shake256/test134", + "sha3_shake256/test135", + "sha3_shake256/test136", + "sha3_shake256/test137", + "sha3_shake256/test138", + "sha3_shake256/test139", + "sha3_shake256/test140", + "sha3_shake256/test141", + "sha3_shake256/test142", + "sha3_shake256/test143", + "sha3_shake256/test144", + "sha3_shake256/test145", + "sha3_shake256/test146", + "sha3_shake256/test147", + "sha3_shake256/test148", + "sha3_shake256/test149", + "sha3_shake256/test150", + "sha3_shake256/test151", + "sha3_shake256/test152", + "sha3_shake256/test153", + "sha3_shake256/test154", + "sha3_shake256/test155", + "sha3_shake256/test156", + "sha3_shake256/test157", + "sha3_shake256/test158", + "sha3_shake256/test159", + "sha3_shake256/test160", + "sha3_shake256/test161", + "sha3_shake256/test162", + "sha3_shake256/test163", + "sha3_shake256/test164", + "sha3_shake256/test165", + "sha3_shake256/test166", + "sha3_shake256/test167", + "sha3_shake256/test168", + "sha3_shake256/test169", + "sha3_shake256/test170", + "sha3_shake256/test171", + "sha3_shake256/test172", + "sha3_shake256/test173", + "sha3_shake256/test174", + "sha3_shake256/test175", + "sha3_shake256/test176", + "sha3_shake256/test177", + "sha3_shake256/test178", + "sha3_shake256/test179", + "sha3_shake256/test180", + "sha3_shake256/test181", + "sha3_shake256/test182", + "sha3_shake256/test183", + "sha3_shake256/test184", + "sha3_shake256/test185", + "sha3_shake256/test186", + "sha3_shake256/test187", + "sha3_shake256/test188", + "sha3_shake256/test189", + "sha3_shake256/test190", + "sha3_shake256/test191", + "sha3_shake256/test192", + "sha3_shake256/test193", + "sha3_shake256/test194", + "sha3_shake256/test195", + "sha3_shake256/test196", + "sha3_shake256/test197", + "sha3_shake256/test198", + "sha3_shake256/test199", + "sha3_shake256/test200", + "sha3_shake256/test201", + "sha3_shake256/test202", + "sha3_shake256/test203", + "sha3_shake256/test204", + "sha3_shake256/test205", + "sha3_shake256/test206", + "sha3_shake256/test207", + "sha3_shake256/test208", + "sha3_shake256/test209", + "sha3_shake256/test210", + "sha3_shake256/test211", + "sha3_shake256/test212", + "sha3_shake256/test213", + "sha3_shake256/test214", + "sha3_shake256/test215", + "sha3_shake256/test216", + "sha3_shake256/test217", + "sha3_shake256/test218", + "sha3_shake256/test219", + "sha3_shake256/test220", + "sha3_shake256/test221", + "sha3_shake256/test222", + "sha3_shake256/test223", + "sha3_shake256/test224", + "sha3_shake256/test225", + "sha3_shake256/test226", + "sha3_shake256/test227", + "sha3_shake256/test228", + "sha3_shake256/test229", + "sha3_shake256/test230", + "sha3_shake256/test231", + "sha3_shake256/test232", + "sha3_shake256/test233", + "sha3_shake256/test234", + "sha3_shake256/test235", + "sha3_shake256/test236", + "sha3_shake256/test237", + "sha3_shake256/test238", + "sha3_shake256/test239", + "sha3_shake256/test240", + "sha3_shake256/test241", + "sha3_shake256/test242", + "sha3_shake256/test243", + "sha3_shake256/test244", + "sha3_shake256/test245", + "sha3_shake256/test246", + "sha3_shake256/test247", + "sha3_shake256/test248", + "sha3_shake256/test249", + "sha3_shake256/test250", + "sha3_shake256/test251", + "sha3_shake256/test252", + "sha3_shake256/test253", + "sha3_shake256/test254", + "sha3_shake256/test255", + "sha3_shake256/test256"); + main_test::>(&tests); +} diff --git a/test_hashes.sh b/test_hashes.sh new file mode 100755 index 00000000..f86b5ce6 --- /dev/null +++ b/test_hashes.sh @@ -0,0 +1,9 @@ +#!/bin/sh +cd blake2; cargo test; +cd ../md4; cargo test; +cd ../md5; cargo test; +cd ../ripemd160; cargo test; +cd ../sha1; cargo test; +cd ../sha2; cargo test; +cd ../sha3; cargo test; +cd ../whirlpool; cargo test; diff --git a/whirlpool/Cargo.toml b/whirlpool/Cargo.toml new file mode 100644 index 00000000..038374ef --- /dev/null +++ b/whirlpool/Cargo.toml @@ -0,0 +1,18 @@ +[package] +name = "whirlpool" +version = "0.2.0" +authors = ["The Rust-Crypto Project Developers"] +license = "MIT/Apache-2.0" +description = "Whirlpool hash function" +documentation = "https://docs.rs/whirlpool" +repository = "https://github.com/RustCrypto/hashes" +keywords = ["crypto", "whirlpool", "hash", "digest"] + +[dependencies] +byte-tools = "0.1" +digest = "0.2" +digest-buffer = "0.1" +generic-array = "0.5" + +[dev-dependencies] +crypto-tests = "0.1" diff --git a/whirlpool/LICENSE-APACHE b/whirlpool/LICENSE-APACHE new file mode 100644 index 00000000..78173fa2 --- /dev/null +++ b/whirlpool/LICENSE-APACHE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/whirlpool/LICENSE-MIT b/whirlpool/LICENSE-MIT new file mode 100644 index 00000000..66cf7556 --- /dev/null +++ b/whirlpool/LICENSE-MIT @@ -0,0 +1,27 @@ +Copyright (c) 2006-2009 Graydon Hoare +Copyright (c) 2009-2013 Mozilla Foundation +Copyright (c) 2016 Artyom Pavlov + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. diff --git a/whirlpool/benches/lib.rs b/whirlpool/benches/lib.rs new file mode 100644 index 00000000..c4647d42 --- /dev/null +++ b/whirlpool/benches/lib.rs @@ -0,0 +1,37 @@ +#![no_std] +#![feature(test)] +extern crate test; +extern crate whirlpool; + +use test::Bencher; +use whirlpool::{Whirlpool, Digest}; + +#[bench] +pub fn whirlpool_10(bh: &mut Bencher) { + let mut sh = Whirlpool::new(); + let bytes = [1u8; 10]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn whirlpool_1k(bh: &mut Bencher) { + let mut sh = Whirlpool::new(); + let bytes = [1u8; 1024]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} + +#[bench] +pub fn whirlpool_64k(bh: &mut Bencher) { + let mut sh = Whirlpool::new(); + let bytes = [1u8; 65536]; + bh.iter(|| { + sh.input(&bytes); + }); + bh.bytes = bytes.len() as u64; +} diff --git a/whirlpool/src/consts.rs b/whirlpool/src/consts.rs new file mode 100644 index 00000000..af7a5d33 --- /dev/null +++ b/whirlpool/src/consts.rs @@ -0,0 +1,551 @@ +pub static R: usize = 10; + +pub static RC: [u64; 11 /* R + 1 */] = [ + 0x0000000000000000, + 0x1823c6e887b8014f, + 0x36a6d2f5796f9152, + 0x60bc9b8ea30c7b35, + 0x1de0d7c22e4bfe57, + 0x157737e59ff04ada, + 0x58c9290ab1a06b85, + 0xbd5d10f4cb3e0567, + 0xe427418ba77d95d8, + 0xfbee7c66dd17479e, + 0xca2dbf07ad5a8333, +]; + +pub static C0: [u64; 256] = [ + 0x18186018c07830d8, 0x23238c2305af4626, 0xc6c63fc67ef991b8, 0xe8e887e8136fcdfb, + 0x878726874ca113cb, 0xb8b8dab8a9626d11, 0x0101040108050209, 0x4f4f214f426e9e0d, + 0x3636d836adee6c9b, 0xa6a6a2a6590451ff, 0xd2d26fd2debdb90c, 0xf5f5f3f5fb06f70e, + 0x7979f979ef80f296, 0x6f6fa16f5fcede30, 0x91917e91fcef3f6d, 0x52525552aa07a4f8, + 0x60609d6027fdc047, 0xbcbccabc89766535, 0x9b9b569baccd2b37, 0x8e8e028e048c018a, + 0xa3a3b6a371155bd2, 0x0c0c300c603c186c, 0x7b7bf17bff8af684, 0x3535d435b5e16a80, + 0x1d1d741de8693af5, 0xe0e0a7e05347ddb3, 0xd7d77bd7f6acb321, 0xc2c22fc25eed999c, + 0x2e2eb82e6d965c43, 0x4b4b314b627a9629, 0xfefedffea321e15d, 0x575741578216aed5, + 0x15155415a8412abd, 0x7777c1779fb6eee8, 0x3737dc37a5eb6e92, 0xe5e5b3e57b56d79e, + 0x9f9f469f8cd92313, 0xf0f0e7f0d317fd23, 0x4a4a354a6a7f9420, 0xdada4fda9e95a944, + 0x58587d58fa25b0a2, 0xc9c903c906ca8fcf, 0x2929a429558d527c, 0x0a0a280a5022145a, + 0xb1b1feb1e14f7f50, 0xa0a0baa0691a5dc9, 0x6b6bb16b7fdad614, 0x85852e855cab17d9, + 0xbdbdcebd8173673c, 0x5d5d695dd234ba8f, 0x1010401080502090, 0xf4f4f7f4f303f507, + 0xcbcb0bcb16c08bdd, 0x3e3ef83eedc67cd3, 0x0505140528110a2d, 0x676781671fe6ce78, + 0xe4e4b7e47353d597, 0x27279c2725bb4e02, 0x4141194132588273, 0x8b8b168b2c9d0ba7, + 0xa7a7a6a7510153f6, 0x7d7de97dcf94fab2, 0x95956e95dcfb3749, 0xd8d847d88e9fad56, + 0xfbfbcbfb8b30eb70, 0xeeee9fee2371c1cd, 0x7c7ced7cc791f8bb, 0x6666856617e3cc71, + 0xdddd53dda68ea77b, 0x17175c17b84b2eaf, 0x4747014702468e45, 0x9e9e429e84dc211a, + 0xcaca0fca1ec589d4, 0x2d2db42d75995a58, 0xbfbfc6bf9179632e, 0x07071c07381b0e3f, + 0xadad8ead012347ac, 0x5a5a755aea2fb4b0, 0x838336836cb51bef, 0x3333cc3385ff66b6, + 0x636391633ff2c65c, 0x02020802100a0412, 0xaaaa92aa39384993, 0x7171d971afa8e2de, + 0xc8c807c80ecf8dc6, 0x19196419c87d32d1, 0x494939497270923b, 0xd9d943d9869aaf5f, + 0xf2f2eff2c31df931, 0xe3e3abe34b48dba8, 0x5b5b715be22ab6b9, 0x88881a8834920dbc, + 0x9a9a529aa4c8293e, 0x262698262dbe4c0b, 0x3232c8328dfa64bf, 0xb0b0fab0e94a7d59, + 0xe9e983e91b6acff2, 0x0f0f3c0f78331e77, 0xd5d573d5e6a6b733, 0x80803a8074ba1df4, + 0xbebec2be997c6127, 0xcdcd13cd26de87eb, 0x3434d034bde46889, 0x48483d487a759032, + 0xffffdbffab24e354, 0x7a7af57af78ff48d, 0x90907a90f4ea3d64, 0x5f5f615fc23ebe9d, + 0x202080201da0403d, 0x6868bd6867d5d00f, 0x1a1a681ad07234ca, 0xaeae82ae192c41b7, + 0xb4b4eab4c95e757d, 0x54544d549a19a8ce, 0x93937693ece53b7f, 0x222288220daa442f, + 0x64648d6407e9c863, 0xf1f1e3f1db12ff2a, 0x7373d173bfa2e6cc, 0x12124812905a2482, + 0x40401d403a5d807a, 0x0808200840281048, 0xc3c32bc356e89b95, 0xecec97ec337bc5df, + 0xdbdb4bdb9690ab4d, 0xa1a1bea1611f5fc0, 0x8d8d0e8d1c830791, 0x3d3df43df5c97ac8, + 0x97976697ccf1335b, 0x0000000000000000, 0xcfcf1bcf36d483f9, 0x2b2bac2b4587566e, + 0x7676c57697b3ece1, 0x8282328264b019e6, 0xd6d67fd6fea9b128, 0x1b1b6c1bd87736c3, + 0xb5b5eeb5c15b7774, 0xafaf86af112943be, 0x6a6ab56a77dfd41d, 0x50505d50ba0da0ea, + 0x45450945124c8a57, 0xf3f3ebf3cb18fb38, 0x3030c0309df060ad, 0xefef9bef2b74c3c4, + 0x3f3ffc3fe5c37eda, 0x55554955921caac7, 0xa2a2b2a2791059db, 0xeaea8fea0365c9e9, + 0x656589650fecca6a, 0xbabad2bab9686903, 0x2f2fbc2f65935e4a, 0xc0c027c04ee79d8e, + 0xdede5fdebe81a160, 0x1c1c701ce06c38fc, 0xfdfdd3fdbb2ee746, 0x4d4d294d52649a1f, + 0x92927292e4e03976, 0x7575c9758fbceafa, 0x06061806301e0c36, 0x8a8a128a249809ae, + 0xb2b2f2b2f940794b, 0xe6e6bfe66359d185, 0x0e0e380e70361c7e, 0x1f1f7c1ff8633ee7, + 0x6262956237f7c455, 0xd4d477d4eea3b53a, 0xa8a89aa829324d81, 0x96966296c4f43152, + 0xf9f9c3f99b3aef62, 0xc5c533c566f697a3, 0x2525942535b14a10, 0x59597959f220b2ab, + 0x84842a8454ae15d0, 0x7272d572b7a7e4c5, 0x3939e439d5dd72ec, 0x4c4c2d4c5a619816, + 0x5e5e655eca3bbc94, 0x7878fd78e785f09f, 0x3838e038ddd870e5, 0x8c8c0a8c14860598, + 0xd1d163d1c6b2bf17, 0xa5a5aea5410b57e4, 0xe2e2afe2434dd9a1, 0x616199612ff8c24e, + 0xb3b3f6b3f1457b42, 0x2121842115a54234, 0x9c9c4a9c94d62508, 0x1e1e781ef0663cee, + 0x4343114322528661, 0xc7c73bc776fc93b1, 0xfcfcd7fcb32be54f, 0x0404100420140824, + 0x51515951b208a2e3, 0x99995e99bcc72f25, 0x6d6da96d4fc4da22, 0x0d0d340d68391a65, + 0xfafacffa8335e979, 0xdfdf5bdfb684a369, 0x7e7ee57ed79bfca9, 0x242490243db44819, + 0x3b3bec3bc5d776fe, 0xabab96ab313d4b9a, 0xcece1fce3ed181f0, 0x1111441188552299, + 0x8f8f068f0c890383, 0x4e4e254e4a6b9c04, 0xb7b7e6b7d1517366, 0xebeb8beb0b60cbe0, + 0x3c3cf03cfdcc78c1, 0x81813e817cbf1ffd, 0x94946a94d4fe3540, 0xf7f7fbf7eb0cf31c, + 0xb9b9deb9a1676f18, 0x13134c13985f268b, 0x2c2cb02c7d9c5851, 0xd3d36bd3d6b8bb05, + 0xe7e7bbe76b5cd38c, 0x6e6ea56e57cbdc39, 0xc4c437c46ef395aa, 0x03030c03180f061b, + 0x565645568a13acdc, 0x44440d441a49885e, 0x7f7fe17fdf9efea0, 0xa9a99ea921374f88, + 0x2a2aa82a4d825467, 0xbbbbd6bbb16d6b0a, 0xc1c123c146e29f87, 0x53535153a202a6f1, + 0xdcdc57dcae8ba572, 0x0b0b2c0b58271653, 0x9d9d4e9d9cd32701, 0x6c6cad6c47c1d82b, + 0x3131c43195f562a4, 0x7474cd7487b9e8f3, 0xf6f6fff6e309f115, 0x464605460a438c4c, + 0xacac8aac092645a5, 0x89891e893c970fb5, 0x14145014a04428b4, 0xe1e1a3e15b42dfba, + 0x16165816b04e2ca6, 0x3a3ae83acdd274f7, 0x6969b9696fd0d206, 0x09092409482d1241, + 0x7070dd70a7ade0d7, 0xb6b6e2b6d954716f, 0xd0d067d0ceb7bd1e, 0xeded93ed3b7ec7d6, + 0xcccc17cc2edb85e2, 0x424215422a578468, 0x98985a98b4c22d2c, 0xa4a4aaa4490e55ed, + 0x2828a0285d885075, 0x5c5c6d5cda31b886, 0xf8f8c7f8933fed6b, 0x8686228644a411c2, +]; + +pub static C1: [u64; 256] = [ + 0xd818186018c07830, 0x2623238c2305af46, 0xb8c6c63fc67ef991, 0xfbe8e887e8136fcd, + 0xcb878726874ca113, 0x11b8b8dab8a9626d, 0x0901010401080502, 0x0d4f4f214f426e9e, + 0x9b3636d836adee6c, 0xffa6a6a2a6590451, 0x0cd2d26fd2debdb9, 0x0ef5f5f3f5fb06f7, + 0x967979f979ef80f2, 0x306f6fa16f5fcede, 0x6d91917e91fcef3f, 0xf852525552aa07a4, + 0x4760609d6027fdc0, 0x35bcbccabc897665, 0x379b9b569baccd2b, 0x8a8e8e028e048c01, + 0xd2a3a3b6a371155b, 0x6c0c0c300c603c18, 0x847b7bf17bff8af6, 0x803535d435b5e16a, + 0xf51d1d741de8693a, 0xb3e0e0a7e05347dd, 0x21d7d77bd7f6acb3, 0x9cc2c22fc25eed99, + 0x432e2eb82e6d965c, 0x294b4b314b627a96, 0x5dfefedffea321e1, 0xd5575741578216ae, + 0xbd15155415a8412a, 0xe87777c1779fb6ee, 0x923737dc37a5eb6e, 0x9ee5e5b3e57b56d7, + 0x139f9f469f8cd923, 0x23f0f0e7f0d317fd, 0x204a4a354a6a7f94, 0x44dada4fda9e95a9, + 0xa258587d58fa25b0, 0xcfc9c903c906ca8f, 0x7c2929a429558d52, 0x5a0a0a280a502214, + 0x50b1b1feb1e14f7f, 0xc9a0a0baa0691a5d, 0x146b6bb16b7fdad6, 0xd985852e855cab17, + 0x3cbdbdcebd817367, 0x8f5d5d695dd234ba, 0x9010104010805020, 0x07f4f4f7f4f303f5, + 0xddcbcb0bcb16c08b, 0xd33e3ef83eedc67c, 0x2d0505140528110a, 0x78676781671fe6ce, + 0x97e4e4b7e47353d5, 0x0227279c2725bb4e, 0x7341411941325882, 0xa78b8b168b2c9d0b, + 0xf6a7a7a6a7510153, 0xb27d7de97dcf94fa, 0x4995956e95dcfb37, 0x56d8d847d88e9fad, + 0x70fbfbcbfb8b30eb, 0xcdeeee9fee2371c1, 0xbb7c7ced7cc791f8, 0x716666856617e3cc, + 0x7bdddd53dda68ea7, 0xaf17175c17b84b2e, 0x454747014702468e, 0x1a9e9e429e84dc21, + 0xd4caca0fca1ec589, 0x582d2db42d75995a, 0x2ebfbfc6bf917963, 0x3f07071c07381b0e, + 0xacadad8ead012347, 0xb05a5a755aea2fb4, 0xef838336836cb51b, 0xb63333cc3385ff66, + 0x5c636391633ff2c6, 0x1202020802100a04, 0x93aaaa92aa393849, 0xde7171d971afa8e2, + 0xc6c8c807c80ecf8d, 0xd119196419c87d32, 0x3b49493949727092, 0x5fd9d943d9869aaf, + 0x31f2f2eff2c31df9, 0xa8e3e3abe34b48db, 0xb95b5b715be22ab6, 0xbc88881a8834920d, + 0x3e9a9a529aa4c829, 0x0b262698262dbe4c, 0xbf3232c8328dfa64, 0x59b0b0fab0e94a7d, + 0xf2e9e983e91b6acf, 0x770f0f3c0f78331e, 0x33d5d573d5e6a6b7, 0xf480803a8074ba1d, + 0x27bebec2be997c61, 0xebcdcd13cd26de87, 0x893434d034bde468, 0x3248483d487a7590, + 0x54ffffdbffab24e3, 0x8d7a7af57af78ff4, 0x6490907a90f4ea3d, 0x9d5f5f615fc23ebe, + 0x3d202080201da040, 0x0f6868bd6867d5d0, 0xca1a1a681ad07234, 0xb7aeae82ae192c41, + 0x7db4b4eab4c95e75, 0xce54544d549a19a8, 0x7f93937693ece53b, 0x2f222288220daa44, + 0x6364648d6407e9c8, 0x2af1f1e3f1db12ff, 0xcc7373d173bfa2e6, 0x8212124812905a24, + 0x7a40401d403a5d80, 0x4808082008402810, 0x95c3c32bc356e89b, 0xdfecec97ec337bc5, + 0x4ddbdb4bdb9690ab, 0xc0a1a1bea1611f5f, 0x918d8d0e8d1c8307, 0xc83d3df43df5c97a, + 0x5b97976697ccf133, 0x0000000000000000, 0xf9cfcf1bcf36d483, 0x6e2b2bac2b458756, + 0xe17676c57697b3ec, 0xe68282328264b019, 0x28d6d67fd6fea9b1, 0xc31b1b6c1bd87736, + 0x74b5b5eeb5c15b77, 0xbeafaf86af112943, 0x1d6a6ab56a77dfd4, 0xea50505d50ba0da0, + 0x5745450945124c8a, 0x38f3f3ebf3cb18fb, 0xad3030c0309df060, 0xc4efef9bef2b74c3, + 0xda3f3ffc3fe5c37e, 0xc755554955921caa, 0xdba2a2b2a2791059, 0xe9eaea8fea0365c9, + 0x6a656589650fecca, 0x03babad2bab96869, 0x4a2f2fbc2f65935e, 0x8ec0c027c04ee79d, + 0x60dede5fdebe81a1, 0xfc1c1c701ce06c38, 0x46fdfdd3fdbb2ee7, 0x1f4d4d294d52649a, + 0x7692927292e4e039, 0xfa7575c9758fbcea, 0x3606061806301e0c, 0xae8a8a128a249809, + 0x4bb2b2f2b2f94079, 0x85e6e6bfe66359d1, 0x7e0e0e380e70361c, 0xe71f1f7c1ff8633e, + 0x556262956237f7c4, 0x3ad4d477d4eea3b5, 0x81a8a89aa829324d, 0x5296966296c4f431, + 0x62f9f9c3f99b3aef, 0xa3c5c533c566f697, 0x102525942535b14a, 0xab59597959f220b2, + 0xd084842a8454ae15, 0xc57272d572b7a7e4, 0xec3939e439d5dd72, 0x164c4c2d4c5a6198, + 0x945e5e655eca3bbc, 0x9f7878fd78e785f0, 0xe53838e038ddd870, 0x988c8c0a8c148605, + 0x17d1d163d1c6b2bf, 0xe4a5a5aea5410b57, 0xa1e2e2afe2434dd9, 0x4e616199612ff8c2, + 0x42b3b3f6b3f1457b, 0x342121842115a542, 0x089c9c4a9c94d625, 0xee1e1e781ef0663c, + 0x6143431143225286, 0xb1c7c73bc776fc93, 0x4ffcfcd7fcb32be5, 0x2404041004201408, + 0xe351515951b208a2, 0x2599995e99bcc72f, 0x226d6da96d4fc4da, 0x650d0d340d68391a, + 0x79fafacffa8335e9, 0x69dfdf5bdfb684a3, 0xa97e7ee57ed79bfc, 0x19242490243db448, + 0xfe3b3bec3bc5d776, 0x9aabab96ab313d4b, 0xf0cece1fce3ed181, 0x9911114411885522, + 0x838f8f068f0c8903, 0x044e4e254e4a6b9c, 0x66b7b7e6b7d15173, 0xe0ebeb8beb0b60cb, + 0xc13c3cf03cfdcc78, 0xfd81813e817cbf1f, 0x4094946a94d4fe35, 0x1cf7f7fbf7eb0cf3, + 0x18b9b9deb9a1676f, 0x8b13134c13985f26, 0x512c2cb02c7d9c58, 0x05d3d36bd3d6b8bb, + 0x8ce7e7bbe76b5cd3, 0x396e6ea56e57cbdc, 0xaac4c437c46ef395, 0x1b03030c03180f06, + 0xdc565645568a13ac, 0x5e44440d441a4988, 0xa07f7fe17fdf9efe, 0x88a9a99ea921374f, + 0x672a2aa82a4d8254, 0x0abbbbd6bbb16d6b, 0x87c1c123c146e29f, 0xf153535153a202a6, + 0x72dcdc57dcae8ba5, 0x530b0b2c0b582716, 0x019d9d4e9d9cd327, 0x2b6c6cad6c47c1d8, + 0xa43131c43195f562, 0xf37474cd7487b9e8, 0x15f6f6fff6e309f1, 0x4c464605460a438c, + 0xa5acac8aac092645, 0xb589891e893c970f, 0xb414145014a04428, 0xbae1e1a3e15b42df, + 0xa616165816b04e2c, 0xf73a3ae83acdd274, 0x066969b9696fd0d2, 0x4109092409482d12, + 0xd77070dd70a7ade0, 0x6fb6b6e2b6d95471, 0x1ed0d067d0ceb7bd, 0xd6eded93ed3b7ec7, + 0xe2cccc17cc2edb85, 0x68424215422a5784, 0x2c98985a98b4c22d, 0xeda4a4aaa4490e55, + 0x752828a0285d8850, 0x865c5c6d5cda31b8, 0x6bf8f8c7f8933fed, 0xc28686228644a411, +]; + +pub static C2: [u64; 256] = [ + 0x30d818186018c078, 0x462623238c2305af, 0x91b8c6c63fc67ef9, 0xcdfbe8e887e8136f, + 0x13cb878726874ca1, 0x6d11b8b8dab8a962, 0x0209010104010805, 0x9e0d4f4f214f426e, + 0x6c9b3636d836adee, 0x51ffa6a6a2a65904, 0xb90cd2d26fd2debd, 0xf70ef5f5f3f5fb06, + 0xf2967979f979ef80, 0xde306f6fa16f5fce, 0x3f6d91917e91fcef, 0xa4f852525552aa07, + 0xc04760609d6027fd, 0x6535bcbccabc8976, 0x2b379b9b569baccd, 0x018a8e8e028e048c, + 0x5bd2a3a3b6a37115, 0x186c0c0c300c603c, 0xf6847b7bf17bff8a, 0x6a803535d435b5e1, + 0x3af51d1d741de869, 0xddb3e0e0a7e05347, 0xb321d7d77bd7f6ac, 0x999cc2c22fc25eed, + 0x5c432e2eb82e6d96, 0x96294b4b314b627a, 0xe15dfefedffea321, 0xaed5575741578216, + 0x2abd15155415a841, 0xeee87777c1779fb6, 0x6e923737dc37a5eb, 0xd79ee5e5b3e57b56, + 0x23139f9f469f8cd9, 0xfd23f0f0e7f0d317, 0x94204a4a354a6a7f, 0xa944dada4fda9e95, + 0xb0a258587d58fa25, 0x8fcfc9c903c906ca, 0x527c2929a429558d, 0x145a0a0a280a5022, + 0x7f50b1b1feb1e14f, 0x5dc9a0a0baa0691a, 0xd6146b6bb16b7fda, 0x17d985852e855cab, + 0x673cbdbdcebd8173, 0xba8f5d5d695dd234, 0x2090101040108050, 0xf507f4f4f7f4f303, + 0x8bddcbcb0bcb16c0, 0x7cd33e3ef83eedc6, 0x0a2d050514052811, 0xce78676781671fe6, + 0xd597e4e4b7e47353, 0x4e0227279c2725bb, 0x8273414119413258, 0x0ba78b8b168b2c9d, + 0x53f6a7a7a6a75101, 0xfab27d7de97dcf94, 0x374995956e95dcfb, 0xad56d8d847d88e9f, + 0xeb70fbfbcbfb8b30, 0xc1cdeeee9fee2371, 0xf8bb7c7ced7cc791, 0xcc716666856617e3, + 0xa77bdddd53dda68e, 0x2eaf17175c17b84b, 0x8e45474701470246, 0x211a9e9e429e84dc, + 0x89d4caca0fca1ec5, 0x5a582d2db42d7599, 0x632ebfbfc6bf9179, 0x0e3f07071c07381b, + 0x47acadad8ead0123, 0xb4b05a5a755aea2f, 0x1bef838336836cb5, 0x66b63333cc3385ff, + 0xc65c636391633ff2, 0x041202020802100a, 0x4993aaaa92aa3938, 0xe2de7171d971afa8, + 0x8dc6c8c807c80ecf, 0x32d119196419c87d, 0x923b494939497270, 0xaf5fd9d943d9869a, + 0xf931f2f2eff2c31d, 0xdba8e3e3abe34b48, 0xb6b95b5b715be22a, 0x0dbc88881a883492, + 0x293e9a9a529aa4c8, 0x4c0b262698262dbe, 0x64bf3232c8328dfa, 0x7d59b0b0fab0e94a, + 0xcff2e9e983e91b6a, 0x1e770f0f3c0f7833, 0xb733d5d573d5e6a6, 0x1df480803a8074ba, + 0x6127bebec2be997c, 0x87ebcdcd13cd26de, 0x68893434d034bde4, 0x903248483d487a75, + 0xe354ffffdbffab24, 0xf48d7a7af57af78f, 0x3d6490907a90f4ea, 0xbe9d5f5f615fc23e, + 0x403d202080201da0, 0xd00f6868bd6867d5, 0x34ca1a1a681ad072, 0x41b7aeae82ae192c, + 0x757db4b4eab4c95e, 0xa8ce54544d549a19, 0x3b7f93937693ece5, 0x442f222288220daa, + 0xc86364648d6407e9, 0xff2af1f1e3f1db12, 0xe6cc7373d173bfa2, 0x248212124812905a, + 0x807a40401d403a5d, 0x1048080820084028, 0x9b95c3c32bc356e8, 0xc5dfecec97ec337b, + 0xab4ddbdb4bdb9690, 0x5fc0a1a1bea1611f, 0x07918d8d0e8d1c83, 0x7ac83d3df43df5c9, + 0x335b97976697ccf1, 0x0000000000000000, 0x83f9cfcf1bcf36d4, 0x566e2b2bac2b4587, + 0xece17676c57697b3, 0x19e68282328264b0, 0xb128d6d67fd6fea9, 0x36c31b1b6c1bd877, + 0x7774b5b5eeb5c15b, 0x43beafaf86af1129, 0xd41d6a6ab56a77df, 0xa0ea50505d50ba0d, + 0x8a5745450945124c, 0xfb38f3f3ebf3cb18, 0x60ad3030c0309df0, 0xc3c4efef9bef2b74, + 0x7eda3f3ffc3fe5c3, 0xaac755554955921c, 0x59dba2a2b2a27910, 0xc9e9eaea8fea0365, + 0xca6a656589650fec, 0x6903babad2bab968, 0x5e4a2f2fbc2f6593, 0x9d8ec0c027c04ee7, + 0xa160dede5fdebe81, 0x38fc1c1c701ce06c, 0xe746fdfdd3fdbb2e, 0x9a1f4d4d294d5264, + 0x397692927292e4e0, 0xeafa7575c9758fbc, 0x0c3606061806301e, 0x09ae8a8a128a2498, + 0x794bb2b2f2b2f940, 0xd185e6e6bfe66359, 0x1c7e0e0e380e7036, 0x3ee71f1f7c1ff863, + 0xc4556262956237f7, 0xb53ad4d477d4eea3, 0x4d81a8a89aa82932, 0x315296966296c4f4, + 0xef62f9f9c3f99b3a, 0x97a3c5c533c566f6, 0x4a102525942535b1, 0xb2ab59597959f220, + 0x15d084842a8454ae, 0xe4c57272d572b7a7, 0x72ec3939e439d5dd, 0x98164c4c2d4c5a61, + 0xbc945e5e655eca3b, 0xf09f7878fd78e785, 0x70e53838e038ddd8, 0x05988c8c0a8c1486, + 0xbf17d1d163d1c6b2, 0x57e4a5a5aea5410b, 0xd9a1e2e2afe2434d, 0xc24e616199612ff8, + 0x7b42b3b3f6b3f145, 0x42342121842115a5, 0x25089c9c4a9c94d6, 0x3cee1e1e781ef066, + 0x8661434311432252, 0x93b1c7c73bc776fc, 0xe54ffcfcd7fcb32b, 0x0824040410042014, + 0xa2e351515951b208, 0x2f2599995e99bcc7, 0xda226d6da96d4fc4, 0x1a650d0d340d6839, + 0xe979fafacffa8335, 0xa369dfdf5bdfb684, 0xfca97e7ee57ed79b, 0x4819242490243db4, + 0x76fe3b3bec3bc5d7, 0x4b9aabab96ab313d, 0x81f0cece1fce3ed1, 0x2299111144118855, + 0x03838f8f068f0c89, 0x9c044e4e254e4a6b, 0x7366b7b7e6b7d151, 0xcbe0ebeb8beb0b60, + 0x78c13c3cf03cfdcc, 0x1ffd81813e817cbf, 0x354094946a94d4fe, 0xf31cf7f7fbf7eb0c, + 0x6f18b9b9deb9a167, 0x268b13134c13985f, 0x58512c2cb02c7d9c, 0xbb05d3d36bd3d6b8, + 0xd38ce7e7bbe76b5c, 0xdc396e6ea56e57cb, 0x95aac4c437c46ef3, 0x061b03030c03180f, + 0xacdc565645568a13, 0x885e44440d441a49, 0xfea07f7fe17fdf9e, 0x4f88a9a99ea92137, + 0x54672a2aa82a4d82, 0x6b0abbbbd6bbb16d, 0x9f87c1c123c146e2, 0xa6f153535153a202, + 0xa572dcdc57dcae8b, 0x16530b0b2c0b5827, 0x27019d9d4e9d9cd3, 0xd82b6c6cad6c47c1, + 0x62a43131c43195f5, 0xe8f37474cd7487b9, 0xf115f6f6fff6e309, 0x8c4c464605460a43, + 0x45a5acac8aac0926, 0x0fb589891e893c97, 0x28b414145014a044, 0xdfbae1e1a3e15b42, + 0x2ca616165816b04e, 0x74f73a3ae83acdd2, 0xd2066969b9696fd0, 0x124109092409482d, + 0xe0d77070dd70a7ad, 0x716fb6b6e2b6d954, 0xbd1ed0d067d0ceb7, 0xc7d6eded93ed3b7e, + 0x85e2cccc17cc2edb, 0x8468424215422a57, 0x2d2c98985a98b4c2, 0x55eda4a4aaa4490e, + 0x50752828a0285d88, 0xb8865c5c6d5cda31, 0xed6bf8f8c7f8933f, 0x11c28686228644a4, +]; + +pub static C3: [u64; 256] = [ + 0x7830d818186018c0, 0xaf462623238c2305, 0xf991b8c6c63fc67e, 0x6fcdfbe8e887e813, + 0xa113cb878726874c, 0x626d11b8b8dab8a9, 0x0502090101040108, 0x6e9e0d4f4f214f42, + 0xee6c9b3636d836ad, 0x0451ffa6a6a2a659, 0xbdb90cd2d26fd2de, 0x06f70ef5f5f3f5fb, + 0x80f2967979f979ef, 0xcede306f6fa16f5f, 0xef3f6d91917e91fc, 0x07a4f852525552aa, + 0xfdc04760609d6027, 0x766535bcbccabc89, 0xcd2b379b9b569bac, 0x8c018a8e8e028e04, + 0x155bd2a3a3b6a371, 0x3c186c0c0c300c60, 0x8af6847b7bf17bff, 0xe16a803535d435b5, + 0x693af51d1d741de8, 0x47ddb3e0e0a7e053, 0xacb321d7d77bd7f6, 0xed999cc2c22fc25e, + 0x965c432e2eb82e6d, 0x7a96294b4b314b62, 0x21e15dfefedffea3, 0x16aed55757415782, + 0x412abd15155415a8, 0xb6eee87777c1779f, 0xeb6e923737dc37a5, 0x56d79ee5e5b3e57b, + 0xd923139f9f469f8c, 0x17fd23f0f0e7f0d3, 0x7f94204a4a354a6a, 0x95a944dada4fda9e, + 0x25b0a258587d58fa, 0xca8fcfc9c903c906, 0x8d527c2929a42955, 0x22145a0a0a280a50, + 0x4f7f50b1b1feb1e1, 0x1a5dc9a0a0baa069, 0xdad6146b6bb16b7f, 0xab17d985852e855c, + 0x73673cbdbdcebd81, 0x34ba8f5d5d695dd2, 0x5020901010401080, 0x03f507f4f4f7f4f3, + 0xc08bddcbcb0bcb16, 0xc67cd33e3ef83eed, 0x110a2d0505140528, 0xe6ce78676781671f, + 0x53d597e4e4b7e473, 0xbb4e0227279c2725, 0x5882734141194132, 0x9d0ba78b8b168b2c, + 0x0153f6a7a7a6a751, 0x94fab27d7de97dcf, 0xfb374995956e95dc, 0x9fad56d8d847d88e, + 0x30eb70fbfbcbfb8b, 0x71c1cdeeee9fee23, 0x91f8bb7c7ced7cc7, 0xe3cc716666856617, + 0x8ea77bdddd53dda6, 0x4b2eaf17175c17b8, 0x468e454747014702, 0xdc211a9e9e429e84, + 0xc589d4caca0fca1e, 0x995a582d2db42d75, 0x79632ebfbfc6bf91, 0x1b0e3f07071c0738, + 0x2347acadad8ead01, 0x2fb4b05a5a755aea, 0xb51bef838336836c, 0xff66b63333cc3385, + 0xf2c65c636391633f, 0x0a04120202080210, 0x384993aaaa92aa39, 0xa8e2de7171d971af, + 0xcf8dc6c8c807c80e, 0x7d32d119196419c8, 0x70923b4949394972, 0x9aaf5fd9d943d986, + 0x1df931f2f2eff2c3, 0x48dba8e3e3abe34b, 0x2ab6b95b5b715be2, 0x920dbc88881a8834, + 0xc8293e9a9a529aa4, 0xbe4c0b262698262d, 0xfa64bf3232c8328d, 0x4a7d59b0b0fab0e9, + 0x6acff2e9e983e91b, 0x331e770f0f3c0f78, 0xa6b733d5d573d5e6, 0xba1df480803a8074, + 0x7c6127bebec2be99, 0xde87ebcdcd13cd26, 0xe468893434d034bd, 0x75903248483d487a, + 0x24e354ffffdbffab, 0x8ff48d7a7af57af7, 0xea3d6490907a90f4, 0x3ebe9d5f5f615fc2, + 0xa0403d202080201d, 0xd5d00f6868bd6867, 0x7234ca1a1a681ad0, 0x2c41b7aeae82ae19, + 0x5e757db4b4eab4c9, 0x19a8ce54544d549a, 0xe53b7f93937693ec, 0xaa442f222288220d, + 0xe9c86364648d6407, 0x12ff2af1f1e3f1db, 0xa2e6cc7373d173bf, 0x5a24821212481290, + 0x5d807a40401d403a, 0x2810480808200840, 0xe89b95c3c32bc356, 0x7bc5dfecec97ec33, + 0x90ab4ddbdb4bdb96, 0x1f5fc0a1a1bea161, 0x8307918d8d0e8d1c, 0xc97ac83d3df43df5, + 0xf1335b97976697cc, 0x0000000000000000, 0xd483f9cfcf1bcf36, 0x87566e2b2bac2b45, + 0xb3ece17676c57697, 0xb019e68282328264, 0xa9b128d6d67fd6fe, 0x7736c31b1b6c1bd8, + 0x5b7774b5b5eeb5c1, 0x2943beafaf86af11, 0xdfd41d6a6ab56a77, 0x0da0ea50505d50ba, + 0x4c8a574545094512, 0x18fb38f3f3ebf3cb, 0xf060ad3030c0309d, 0x74c3c4efef9bef2b, + 0xc37eda3f3ffc3fe5, 0x1caac75555495592, 0x1059dba2a2b2a279, 0x65c9e9eaea8fea03, + 0xecca6a656589650f, 0x686903babad2bab9, 0x935e4a2f2fbc2f65, 0xe79d8ec0c027c04e, + 0x81a160dede5fdebe, 0x6c38fc1c1c701ce0, 0x2ee746fdfdd3fdbb, 0x649a1f4d4d294d52, + 0xe0397692927292e4, 0xbceafa7575c9758f, 0x1e0c360606180630, 0x9809ae8a8a128a24, + 0x40794bb2b2f2b2f9, 0x59d185e6e6bfe663, 0x361c7e0e0e380e70, 0x633ee71f1f7c1ff8, + 0xf7c4556262956237, 0xa3b53ad4d477d4ee, 0x324d81a8a89aa829, 0xf4315296966296c4, + 0x3aef62f9f9c3f99b, 0xf697a3c5c533c566, 0xb14a102525942535, 0x20b2ab59597959f2, + 0xae15d084842a8454, 0xa7e4c57272d572b7, 0xdd72ec3939e439d5, 0x6198164c4c2d4c5a, + 0x3bbc945e5e655eca, 0x85f09f7878fd78e7, 0xd870e53838e038dd, 0x8605988c8c0a8c14, + 0xb2bf17d1d163d1c6, 0x0b57e4a5a5aea541, 0x4dd9a1e2e2afe243, 0xf8c24e616199612f, + 0x457b42b3b3f6b3f1, 0xa542342121842115, 0xd625089c9c4a9c94, 0x663cee1e1e781ef0, + 0x5286614343114322, 0xfc93b1c7c73bc776, 0x2be54ffcfcd7fcb3, 0x1408240404100420, + 0x08a2e351515951b2, 0xc72f2599995e99bc, 0xc4da226d6da96d4f, 0x391a650d0d340d68, + 0x35e979fafacffa83, 0x84a369dfdf5bdfb6, 0x9bfca97e7ee57ed7, 0xb44819242490243d, + 0xd776fe3b3bec3bc5, 0x3d4b9aabab96ab31, 0xd181f0cece1fce3e, 0x5522991111441188, + 0x8903838f8f068f0c, 0x6b9c044e4e254e4a, 0x517366b7b7e6b7d1, 0x60cbe0ebeb8beb0b, + 0xcc78c13c3cf03cfd, 0xbf1ffd81813e817c, 0xfe354094946a94d4, 0x0cf31cf7f7fbf7eb, + 0x676f18b9b9deb9a1, 0x5f268b13134c1398, 0x9c58512c2cb02c7d, 0xb8bb05d3d36bd3d6, + 0x5cd38ce7e7bbe76b, 0xcbdc396e6ea56e57, 0xf395aac4c437c46e, 0x0f061b03030c0318, + 0x13acdc565645568a, 0x49885e44440d441a, 0x9efea07f7fe17fdf, 0x374f88a9a99ea921, + 0x8254672a2aa82a4d, 0x6d6b0abbbbd6bbb1, 0xe29f87c1c123c146, 0x02a6f153535153a2, + 0x8ba572dcdc57dcae, 0x2716530b0b2c0b58, 0xd327019d9d4e9d9c, 0xc1d82b6c6cad6c47, + 0xf562a43131c43195, 0xb9e8f37474cd7487, 0x09f115f6f6fff6e3, 0x438c4c464605460a, + 0x2645a5acac8aac09, 0x970fb589891e893c, 0x4428b414145014a0, 0x42dfbae1e1a3e15b, + 0x4e2ca616165816b0, 0xd274f73a3ae83acd, 0xd0d2066969b9696f, 0x2d12410909240948, + 0xade0d77070dd70a7, 0x54716fb6b6e2b6d9, 0xb7bd1ed0d067d0ce, 0x7ec7d6eded93ed3b, + 0xdb85e2cccc17cc2e, 0x578468424215422a, 0xc22d2c98985a98b4, 0x0e55eda4a4aaa449, + 0x8850752828a0285d, 0x31b8865c5c6d5cda, 0x3fed6bf8f8c7f893, 0xa411c28686228644, +]; + +pub static C4: [u64; 256] = [ + 0xc07830d818186018, 0x05af462623238c23, 0x7ef991b8c6c63fc6, 0x136fcdfbe8e887e8, + 0x4ca113cb87872687, 0xa9626d11b8b8dab8, 0x0805020901010401, 0x426e9e0d4f4f214f, + 0xadee6c9b3636d836, 0x590451ffa6a6a2a6, 0xdebdb90cd2d26fd2, 0xfb06f70ef5f5f3f5, + 0xef80f2967979f979, 0x5fcede306f6fa16f, 0xfcef3f6d91917e91, 0xaa07a4f852525552, + 0x27fdc04760609d60, 0x89766535bcbccabc, 0xaccd2b379b9b569b, 0x048c018a8e8e028e, + 0x71155bd2a3a3b6a3, 0x603c186c0c0c300c, 0xff8af6847b7bf17b, 0xb5e16a803535d435, + 0xe8693af51d1d741d, 0x5347ddb3e0e0a7e0, 0xf6acb321d7d77bd7, 0x5eed999cc2c22fc2, + 0x6d965c432e2eb82e, 0x627a96294b4b314b, 0xa321e15dfefedffe, 0x8216aed557574157, + 0xa8412abd15155415, 0x9fb6eee87777c177, 0xa5eb6e923737dc37, 0x7b56d79ee5e5b3e5, + 0x8cd923139f9f469f, 0xd317fd23f0f0e7f0, 0x6a7f94204a4a354a, 0x9e95a944dada4fda, + 0xfa25b0a258587d58, 0x06ca8fcfc9c903c9, 0x558d527c2929a429, 0x5022145a0a0a280a, + 0xe14f7f50b1b1feb1, 0x691a5dc9a0a0baa0, 0x7fdad6146b6bb16b, 0x5cab17d985852e85, + 0x8173673cbdbdcebd, 0xd234ba8f5d5d695d, 0x8050209010104010, 0xf303f507f4f4f7f4, + 0x16c08bddcbcb0bcb, 0xedc67cd33e3ef83e, 0x28110a2d05051405, 0x1fe6ce7867678167, + 0x7353d597e4e4b7e4, 0x25bb4e0227279c27, 0x3258827341411941, 0x2c9d0ba78b8b168b, + 0x510153f6a7a7a6a7, 0xcf94fab27d7de97d, 0xdcfb374995956e95, 0x8e9fad56d8d847d8, + 0x8b30eb70fbfbcbfb, 0x2371c1cdeeee9fee, 0xc791f8bb7c7ced7c, 0x17e3cc7166668566, + 0xa68ea77bdddd53dd, 0xb84b2eaf17175c17, 0x02468e4547470147, 0x84dc211a9e9e429e, + 0x1ec589d4caca0fca, 0x75995a582d2db42d, 0x9179632ebfbfc6bf, 0x381b0e3f07071c07, + 0x012347acadad8ead, 0xea2fb4b05a5a755a, 0x6cb51bef83833683, 0x85ff66b63333cc33, + 0x3ff2c65c63639163, 0x100a041202020802, 0x39384993aaaa92aa, 0xafa8e2de7171d971, + 0x0ecf8dc6c8c807c8, 0xc87d32d119196419, 0x7270923b49493949, 0x869aaf5fd9d943d9, + 0xc31df931f2f2eff2, 0x4b48dba8e3e3abe3, 0xe22ab6b95b5b715b, 0x34920dbc88881a88, + 0xa4c8293e9a9a529a, 0x2dbe4c0b26269826, 0x8dfa64bf3232c832, 0xe94a7d59b0b0fab0, + 0x1b6acff2e9e983e9, 0x78331e770f0f3c0f, 0xe6a6b733d5d573d5, 0x74ba1df480803a80, + 0x997c6127bebec2be, 0x26de87ebcdcd13cd, 0xbde468893434d034, 0x7a75903248483d48, + 0xab24e354ffffdbff, 0xf78ff48d7a7af57a, 0xf4ea3d6490907a90, 0xc23ebe9d5f5f615f, + 0x1da0403d20208020, 0x67d5d00f6868bd68, 0xd07234ca1a1a681a, 0x192c41b7aeae82ae, + 0xc95e757db4b4eab4, 0x9a19a8ce54544d54, 0xece53b7f93937693, 0x0daa442f22228822, + 0x07e9c86364648d64, 0xdb12ff2af1f1e3f1, 0xbfa2e6cc7373d173, 0x905a248212124812, + 0x3a5d807a40401d40, 0x4028104808082008, 0x56e89b95c3c32bc3, 0x337bc5dfecec97ec, + 0x9690ab4ddbdb4bdb, 0x611f5fc0a1a1bea1, 0x1c8307918d8d0e8d, 0xf5c97ac83d3df43d, + 0xccf1335b97976697, 0x0000000000000000, 0x36d483f9cfcf1bcf, 0x4587566e2b2bac2b, + 0x97b3ece17676c576, 0x64b019e682823282, 0xfea9b128d6d67fd6, 0xd87736c31b1b6c1b, + 0xc15b7774b5b5eeb5, 0x112943beafaf86af, 0x77dfd41d6a6ab56a, 0xba0da0ea50505d50, + 0x124c8a5745450945, 0xcb18fb38f3f3ebf3, 0x9df060ad3030c030, 0x2b74c3c4efef9bef, + 0xe5c37eda3f3ffc3f, 0x921caac755554955, 0x791059dba2a2b2a2, 0x0365c9e9eaea8fea, + 0x0fecca6a65658965, 0xb9686903babad2ba, 0x65935e4a2f2fbc2f, 0x4ee79d8ec0c027c0, + 0xbe81a160dede5fde, 0xe06c38fc1c1c701c, 0xbb2ee746fdfdd3fd, 0x52649a1f4d4d294d, + 0xe4e0397692927292, 0x8fbceafa7575c975, 0x301e0c3606061806, 0x249809ae8a8a128a, + 0xf940794bb2b2f2b2, 0x6359d185e6e6bfe6, 0x70361c7e0e0e380e, 0xf8633ee71f1f7c1f, + 0x37f7c45562629562, 0xeea3b53ad4d477d4, 0x29324d81a8a89aa8, 0xc4f4315296966296, + 0x9b3aef62f9f9c3f9, 0x66f697a3c5c533c5, 0x35b14a1025259425, 0xf220b2ab59597959, + 0x54ae15d084842a84, 0xb7a7e4c57272d572, 0xd5dd72ec3939e439, 0x5a6198164c4c2d4c, + 0xca3bbc945e5e655e, 0xe785f09f7878fd78, 0xddd870e53838e038, 0x148605988c8c0a8c, + 0xc6b2bf17d1d163d1, 0x410b57e4a5a5aea5, 0x434dd9a1e2e2afe2, 0x2ff8c24e61619961, + 0xf1457b42b3b3f6b3, 0x15a5423421218421, 0x94d625089c9c4a9c, 0xf0663cee1e1e781e, + 0x2252866143431143, 0x76fc93b1c7c73bc7, 0xb32be54ffcfcd7fc, 0x2014082404041004, + 0xb208a2e351515951, 0xbcc72f2599995e99, 0x4fc4da226d6da96d, 0x68391a650d0d340d, + 0x8335e979fafacffa, 0xb684a369dfdf5bdf, 0xd79bfca97e7ee57e, 0x3db4481924249024, + 0xc5d776fe3b3bec3b, 0x313d4b9aabab96ab, 0x3ed181f0cece1fce, 0x8855229911114411, + 0x0c8903838f8f068f, 0x4a6b9c044e4e254e, 0xd1517366b7b7e6b7, 0x0b60cbe0ebeb8beb, + 0xfdcc78c13c3cf03c, 0x7cbf1ffd81813e81, 0xd4fe354094946a94, 0xeb0cf31cf7f7fbf7, + 0xa1676f18b9b9deb9, 0x985f268b13134c13, 0x7d9c58512c2cb02c, 0xd6b8bb05d3d36bd3, + 0x6b5cd38ce7e7bbe7, 0x57cbdc396e6ea56e, 0x6ef395aac4c437c4, 0x180f061b03030c03, + 0x8a13acdc56564556, 0x1a49885e44440d44, 0xdf9efea07f7fe17f, 0x21374f88a9a99ea9, + 0x4d8254672a2aa82a, 0xb16d6b0abbbbd6bb, 0x46e29f87c1c123c1, 0xa202a6f153535153, + 0xae8ba572dcdc57dc, 0x582716530b0b2c0b, 0x9cd327019d9d4e9d, 0x47c1d82b6c6cad6c, + 0x95f562a43131c431, 0x87b9e8f37474cd74, 0xe309f115f6f6fff6, 0x0a438c4c46460546, + 0x092645a5acac8aac, 0x3c970fb589891e89, 0xa04428b414145014, 0x5b42dfbae1e1a3e1, + 0xb04e2ca616165816, 0xcdd274f73a3ae83a, 0x6fd0d2066969b969, 0x482d124109092409, + 0xa7ade0d77070dd70, 0xd954716fb6b6e2b6, 0xceb7bd1ed0d067d0, 0x3b7ec7d6eded93ed, + 0x2edb85e2cccc17cc, 0x2a57846842421542, 0xb4c22d2c98985a98, 0x490e55eda4a4aaa4, + 0x5d8850752828a028, 0xda31b8865c5c6d5c, 0x933fed6bf8f8c7f8, 0x44a411c286862286, +]; + +pub static C5: [u64; 256] = [ + 0x18c07830d8181860, 0x2305af462623238c, 0xc67ef991b8c6c63f, 0xe8136fcdfbe8e887, + 0x874ca113cb878726, 0xb8a9626d11b8b8da, 0x0108050209010104, 0x4f426e9e0d4f4f21, + 0x36adee6c9b3636d8, 0xa6590451ffa6a6a2, 0xd2debdb90cd2d26f, 0xf5fb06f70ef5f5f3, + 0x79ef80f2967979f9, 0x6f5fcede306f6fa1, 0x91fcef3f6d91917e, 0x52aa07a4f8525255, + 0x6027fdc04760609d, 0xbc89766535bcbcca, 0x9baccd2b379b9b56, 0x8e048c018a8e8e02, + 0xa371155bd2a3a3b6, 0x0c603c186c0c0c30, 0x7bff8af6847b7bf1, 0x35b5e16a803535d4, + 0x1de8693af51d1d74, 0xe05347ddb3e0e0a7, 0xd7f6acb321d7d77b, 0xc25eed999cc2c22f, + 0x2e6d965c432e2eb8, 0x4b627a96294b4b31, 0xfea321e15dfefedf, 0x578216aed5575741, + 0x15a8412abd151554, 0x779fb6eee87777c1, 0x37a5eb6e923737dc, 0xe57b56d79ee5e5b3, + 0x9f8cd923139f9f46, 0xf0d317fd23f0f0e7, 0x4a6a7f94204a4a35, 0xda9e95a944dada4f, + 0x58fa25b0a258587d, 0xc906ca8fcfc9c903, 0x29558d527c2929a4, 0x0a5022145a0a0a28, + 0xb1e14f7f50b1b1fe, 0xa0691a5dc9a0a0ba, 0x6b7fdad6146b6bb1, 0x855cab17d985852e, + 0xbd8173673cbdbdce, 0x5dd234ba8f5d5d69, 0x1080502090101040, 0xf4f303f507f4f4f7, + 0xcb16c08bddcbcb0b, 0x3eedc67cd33e3ef8, 0x0528110a2d050514, 0x671fe6ce78676781, + 0xe47353d597e4e4b7, 0x2725bb4e0227279c, 0x4132588273414119, 0x8b2c9d0ba78b8b16, + 0xa7510153f6a7a7a6, 0x7dcf94fab27d7de9, 0x95dcfb374995956e, 0xd88e9fad56d8d847, + 0xfb8b30eb70fbfbcb, 0xee2371c1cdeeee9f, 0x7cc791f8bb7c7ced, 0x6617e3cc71666685, + 0xdda68ea77bdddd53, 0x17b84b2eaf17175c, 0x4702468e45474701, 0x9e84dc211a9e9e42, + 0xca1ec589d4caca0f, 0x2d75995a582d2db4, 0xbf9179632ebfbfc6, 0x07381b0e3f07071c, + 0xad012347acadad8e, 0x5aea2fb4b05a5a75, 0x836cb51bef838336, 0x3385ff66b63333cc, + 0x633ff2c65c636391, 0x02100a0412020208, 0xaa39384993aaaa92, 0x71afa8e2de7171d9, + 0xc80ecf8dc6c8c807, 0x19c87d32d1191964, 0x497270923b494939, 0xd9869aaf5fd9d943, + 0xf2c31df931f2f2ef, 0xe34b48dba8e3e3ab, 0x5be22ab6b95b5b71, 0x8834920dbc88881a, + 0x9aa4c8293e9a9a52, 0x262dbe4c0b262698, 0x328dfa64bf3232c8, 0xb0e94a7d59b0b0fa, + 0xe91b6acff2e9e983, 0x0f78331e770f0f3c, 0xd5e6a6b733d5d573, 0x8074ba1df480803a, + 0xbe997c6127bebec2, 0xcd26de87ebcdcd13, 0x34bde468893434d0, 0x487a75903248483d, + 0xffab24e354ffffdb, 0x7af78ff48d7a7af5, 0x90f4ea3d6490907a, 0x5fc23ebe9d5f5f61, + 0x201da0403d202080, 0x6867d5d00f6868bd, 0x1ad07234ca1a1a68, 0xae192c41b7aeae82, + 0xb4c95e757db4b4ea, 0x549a19a8ce54544d, 0x93ece53b7f939376, 0x220daa442f222288, + 0x6407e9c86364648d, 0xf1db12ff2af1f1e3, 0x73bfa2e6cc7373d1, 0x12905a2482121248, + 0x403a5d807a40401d, 0x0840281048080820, 0xc356e89b95c3c32b, 0xec337bc5dfecec97, + 0xdb9690ab4ddbdb4b, 0xa1611f5fc0a1a1be, 0x8d1c8307918d8d0e, 0x3df5c97ac83d3df4, + 0x97ccf1335b979766, 0x0000000000000000, 0xcf36d483f9cfcf1b, 0x2b4587566e2b2bac, + 0x7697b3ece17676c5, 0x8264b019e6828232, 0xd6fea9b128d6d67f, 0x1bd87736c31b1b6c, + 0xb5c15b7774b5b5ee, 0xaf112943beafaf86, 0x6a77dfd41d6a6ab5, 0x50ba0da0ea50505d, + 0x45124c8a57454509, 0xf3cb18fb38f3f3eb, 0x309df060ad3030c0, 0xef2b74c3c4efef9b, + 0x3fe5c37eda3f3ffc, 0x55921caac7555549, 0xa2791059dba2a2b2, 0xea0365c9e9eaea8f, + 0x650fecca6a656589, 0xbab9686903babad2, 0x2f65935e4a2f2fbc, 0xc04ee79d8ec0c027, + 0xdebe81a160dede5f, 0x1ce06c38fc1c1c70, 0xfdbb2ee746fdfdd3, 0x4d52649a1f4d4d29, + 0x92e4e03976929272, 0x758fbceafa7575c9, 0x06301e0c36060618, 0x8a249809ae8a8a12, + 0xb2f940794bb2b2f2, 0xe66359d185e6e6bf, 0x0e70361c7e0e0e38, 0x1ff8633ee71f1f7c, + 0x6237f7c455626295, 0xd4eea3b53ad4d477, 0xa829324d81a8a89a, 0x96c4f43152969662, + 0xf99b3aef62f9f9c3, 0xc566f697a3c5c533, 0x2535b14a10252594, 0x59f220b2ab595979, + 0x8454ae15d084842a, 0x72b7a7e4c57272d5, 0x39d5dd72ec3939e4, 0x4c5a6198164c4c2d, + 0x5eca3bbc945e5e65, 0x78e785f09f7878fd, 0x38ddd870e53838e0, 0x8c148605988c8c0a, + 0xd1c6b2bf17d1d163, 0xa5410b57e4a5a5ae, 0xe2434dd9a1e2e2af, 0x612ff8c24e616199, + 0xb3f1457b42b3b3f6, 0x2115a54234212184, 0x9c94d625089c9c4a, 0x1ef0663cee1e1e78, + 0x4322528661434311, 0xc776fc93b1c7c73b, 0xfcb32be54ffcfcd7, 0x0420140824040410, + 0x51b208a2e3515159, 0x99bcc72f2599995e, 0x6d4fc4da226d6da9, 0x0d68391a650d0d34, + 0xfa8335e979fafacf, 0xdfb684a369dfdf5b, 0x7ed79bfca97e7ee5, 0x243db44819242490, + 0x3bc5d776fe3b3bec, 0xab313d4b9aabab96, 0xce3ed181f0cece1f, 0x1188552299111144, + 0x8f0c8903838f8f06, 0x4e4a6b9c044e4e25, 0xb7d1517366b7b7e6, 0xeb0b60cbe0ebeb8b, + 0x3cfdcc78c13c3cf0, 0x817cbf1ffd81813e, 0x94d4fe354094946a, 0xf7eb0cf31cf7f7fb, + 0xb9a1676f18b9b9de, 0x13985f268b13134c, 0x2c7d9c58512c2cb0, 0xd3d6b8bb05d3d36b, + 0xe76b5cd38ce7e7bb, 0x6e57cbdc396e6ea5, 0xc46ef395aac4c437, 0x03180f061b03030c, + 0x568a13acdc565645, 0x441a49885e44440d, 0x7fdf9efea07f7fe1, 0xa921374f88a9a99e, + 0x2a4d8254672a2aa8, 0xbbb16d6b0abbbbd6, 0xc146e29f87c1c123, 0x53a202a6f1535351, + 0xdcae8ba572dcdc57, 0x0b582716530b0b2c, 0x9d9cd327019d9d4e, 0x6c47c1d82b6c6cad, + 0x3195f562a43131c4, 0x7487b9e8f37474cd, 0xf6e309f115f6f6ff, 0x460a438c4c464605, + 0xac092645a5acac8a, 0x893c970fb589891e, 0x14a04428b4141450, 0xe15b42dfbae1e1a3, + 0x16b04e2ca6161658, 0x3acdd274f73a3ae8, 0x696fd0d2066969b9, 0x09482d1241090924, + 0x70a7ade0d77070dd, 0xb6d954716fb6b6e2, 0xd0ceb7bd1ed0d067, 0xed3b7ec7d6eded93, + 0xcc2edb85e2cccc17, 0x422a578468424215, 0x98b4c22d2c98985a, 0xa4490e55eda4a4aa, + 0x285d8850752828a0, 0x5cda31b8865c5c6d, 0xf8933fed6bf8f8c7, 0x8644a411c2868622, +]; + +pub static C6: [u64; 256] = [ + 0x6018c07830d81818, 0x8c2305af46262323, 0x3fc67ef991b8c6c6, 0x87e8136fcdfbe8e8, + 0x26874ca113cb8787, 0xdab8a9626d11b8b8, 0x0401080502090101, 0x214f426e9e0d4f4f, + 0xd836adee6c9b3636, 0xa2a6590451ffa6a6, 0x6fd2debdb90cd2d2, 0xf3f5fb06f70ef5f5, + 0xf979ef80f2967979, 0xa16f5fcede306f6f, 0x7e91fcef3f6d9191, 0x5552aa07a4f85252, + 0x9d6027fdc0476060, 0xcabc89766535bcbc, 0x569baccd2b379b9b, 0x028e048c018a8e8e, + 0xb6a371155bd2a3a3, 0x300c603c186c0c0c, 0xf17bff8af6847b7b, 0xd435b5e16a803535, + 0x741de8693af51d1d, 0xa7e05347ddb3e0e0, 0x7bd7f6acb321d7d7, 0x2fc25eed999cc2c2, + 0xb82e6d965c432e2e, 0x314b627a96294b4b, 0xdffea321e15dfefe, 0x41578216aed55757, + 0x5415a8412abd1515, 0xc1779fb6eee87777, 0xdc37a5eb6e923737, 0xb3e57b56d79ee5e5, + 0x469f8cd923139f9f, 0xe7f0d317fd23f0f0, 0x354a6a7f94204a4a, 0x4fda9e95a944dada, + 0x7d58fa25b0a25858, 0x03c906ca8fcfc9c9, 0xa429558d527c2929, 0x280a5022145a0a0a, + 0xfeb1e14f7f50b1b1, 0xbaa0691a5dc9a0a0, 0xb16b7fdad6146b6b, 0x2e855cab17d98585, + 0xcebd8173673cbdbd, 0x695dd234ba8f5d5d, 0x4010805020901010, 0xf7f4f303f507f4f4, + 0x0bcb16c08bddcbcb, 0xf83eedc67cd33e3e, 0x140528110a2d0505, 0x81671fe6ce786767, + 0xb7e47353d597e4e4, 0x9c2725bb4e022727, 0x1941325882734141, 0x168b2c9d0ba78b8b, + 0xa6a7510153f6a7a7, 0xe97dcf94fab27d7d, 0x6e95dcfb37499595, 0x47d88e9fad56d8d8, + 0xcbfb8b30eb70fbfb, 0x9fee2371c1cdeeee, 0xed7cc791f8bb7c7c, 0x856617e3cc716666, + 0x53dda68ea77bdddd, 0x5c17b84b2eaf1717, 0x014702468e454747, 0x429e84dc211a9e9e, + 0x0fca1ec589d4caca, 0xb42d75995a582d2d, 0xc6bf9179632ebfbf, 0x1c07381b0e3f0707, + 0x8ead012347acadad, 0x755aea2fb4b05a5a, 0x36836cb51bef8383, 0xcc3385ff66b63333, + 0x91633ff2c65c6363, 0x0802100a04120202, 0x92aa39384993aaaa, 0xd971afa8e2de7171, + 0x07c80ecf8dc6c8c8, 0x6419c87d32d11919, 0x39497270923b4949, 0x43d9869aaf5fd9d9, + 0xeff2c31df931f2f2, 0xabe34b48dba8e3e3, 0x715be22ab6b95b5b, 0x1a8834920dbc8888, + 0x529aa4c8293e9a9a, 0x98262dbe4c0b2626, 0xc8328dfa64bf3232, 0xfab0e94a7d59b0b0, + 0x83e91b6acff2e9e9, 0x3c0f78331e770f0f, 0x73d5e6a6b733d5d5, 0x3a8074ba1df48080, + 0xc2be997c6127bebe, 0x13cd26de87ebcdcd, 0xd034bde468893434, 0x3d487a7590324848, + 0xdbffab24e354ffff, 0xf57af78ff48d7a7a, 0x7a90f4ea3d649090, 0x615fc23ebe9d5f5f, + 0x80201da0403d2020, 0xbd6867d5d00f6868, 0x681ad07234ca1a1a, 0x82ae192c41b7aeae, + 0xeab4c95e757db4b4, 0x4d549a19a8ce5454, 0x7693ece53b7f9393, 0x88220daa442f2222, + 0x8d6407e9c8636464, 0xe3f1db12ff2af1f1, 0xd173bfa2e6cc7373, 0x4812905a24821212, + 0x1d403a5d807a4040, 0x2008402810480808, 0x2bc356e89b95c3c3, 0x97ec337bc5dfecec, + 0x4bdb9690ab4ddbdb, 0xbea1611f5fc0a1a1, 0x0e8d1c8307918d8d, 0xf43df5c97ac83d3d, + 0x6697ccf1335b9797, 0x0000000000000000, 0x1bcf36d483f9cfcf, 0xac2b4587566e2b2b, + 0xc57697b3ece17676, 0x328264b019e68282, 0x7fd6fea9b128d6d6, 0x6c1bd87736c31b1b, + 0xeeb5c15b7774b5b5, 0x86af112943beafaf, 0xb56a77dfd41d6a6a, 0x5d50ba0da0ea5050, + 0x0945124c8a574545, 0xebf3cb18fb38f3f3, 0xc0309df060ad3030, 0x9bef2b74c3c4efef, + 0xfc3fe5c37eda3f3f, 0x4955921caac75555, 0xb2a2791059dba2a2, 0x8fea0365c9e9eaea, + 0x89650fecca6a6565, 0xd2bab9686903baba, 0xbc2f65935e4a2f2f, 0x27c04ee79d8ec0c0, + 0x5fdebe81a160dede, 0x701ce06c38fc1c1c, 0xd3fdbb2ee746fdfd, 0x294d52649a1f4d4d, + 0x7292e4e039769292, 0xc9758fbceafa7575, 0x1806301e0c360606, 0x128a249809ae8a8a, + 0xf2b2f940794bb2b2, 0xbfe66359d185e6e6, 0x380e70361c7e0e0e, 0x7c1ff8633ee71f1f, + 0x956237f7c4556262, 0x77d4eea3b53ad4d4, 0x9aa829324d81a8a8, 0x6296c4f431529696, + 0xc3f99b3aef62f9f9, 0x33c566f697a3c5c5, 0x942535b14a102525, 0x7959f220b2ab5959, + 0x2a8454ae15d08484, 0xd572b7a7e4c57272, 0xe439d5dd72ec3939, 0x2d4c5a6198164c4c, + 0x655eca3bbc945e5e, 0xfd78e785f09f7878, 0xe038ddd870e53838, 0x0a8c148605988c8c, + 0x63d1c6b2bf17d1d1, 0xaea5410b57e4a5a5, 0xafe2434dd9a1e2e2, 0x99612ff8c24e6161, + 0xf6b3f1457b42b3b3, 0x842115a542342121, 0x4a9c94d625089c9c, 0x781ef0663cee1e1e, + 0x1143225286614343, 0x3bc776fc93b1c7c7, 0xd7fcb32be54ffcfc, 0x1004201408240404, + 0x5951b208a2e35151, 0x5e99bcc72f259999, 0xa96d4fc4da226d6d, 0x340d68391a650d0d, + 0xcffa8335e979fafa, 0x5bdfb684a369dfdf, 0xe57ed79bfca97e7e, 0x90243db448192424, + 0xec3bc5d776fe3b3b, 0x96ab313d4b9aabab, 0x1fce3ed181f0cece, 0x4411885522991111, + 0x068f0c8903838f8f, 0x254e4a6b9c044e4e, 0xe6b7d1517366b7b7, 0x8beb0b60cbe0ebeb, + 0xf03cfdcc78c13c3c, 0x3e817cbf1ffd8181, 0x6a94d4fe35409494, 0xfbf7eb0cf31cf7f7, + 0xdeb9a1676f18b9b9, 0x4c13985f268b1313, 0xb02c7d9c58512c2c, 0x6bd3d6b8bb05d3d3, + 0xbbe76b5cd38ce7e7, 0xa56e57cbdc396e6e, 0x37c46ef395aac4c4, 0x0c03180f061b0303, + 0x45568a13acdc5656, 0x0d441a49885e4444, 0xe17fdf9efea07f7f, 0x9ea921374f88a9a9, + 0xa82a4d8254672a2a, 0xd6bbb16d6b0abbbb, 0x23c146e29f87c1c1, 0x5153a202a6f15353, + 0x57dcae8ba572dcdc, 0x2c0b582716530b0b, 0x4e9d9cd327019d9d, 0xad6c47c1d82b6c6c, + 0xc43195f562a43131, 0xcd7487b9e8f37474, 0xfff6e309f115f6f6, 0x05460a438c4c4646, + 0x8aac092645a5acac, 0x1e893c970fb58989, 0x5014a04428b41414, 0xa3e15b42dfbae1e1, + 0x5816b04e2ca61616, 0xe83acdd274f73a3a, 0xb9696fd0d2066969, 0x2409482d12410909, + 0xdd70a7ade0d77070, 0xe2b6d954716fb6b6, 0x67d0ceb7bd1ed0d0, 0x93ed3b7ec7d6eded, + 0x17cc2edb85e2cccc, 0x15422a5784684242, 0x5a98b4c22d2c9898, 0xaaa4490e55eda4a4, + 0xa0285d8850752828, 0x6d5cda31b8865c5c, 0xc7f8933fed6bf8f8, 0x228644a411c28686, +]; + +pub static C7: [u64; 256] = [ + 0x186018c07830d818, 0x238c2305af462623, 0xc63fc67ef991b8c6, 0xe887e8136fcdfbe8, + 0x8726874ca113cb87, 0xb8dab8a9626d11b8, 0x0104010805020901, 0x4f214f426e9e0d4f, + 0x36d836adee6c9b36, 0xa6a2a6590451ffa6, 0xd26fd2debdb90cd2, 0xf5f3f5fb06f70ef5, + 0x79f979ef80f29679, 0x6fa16f5fcede306f, 0x917e91fcef3f6d91, 0x525552aa07a4f852, + 0x609d6027fdc04760, 0xbccabc89766535bc, 0x9b569baccd2b379b, 0x8e028e048c018a8e, + 0xa3b6a371155bd2a3, 0x0c300c603c186c0c, 0x7bf17bff8af6847b, 0x35d435b5e16a8035, + 0x1d741de8693af51d, 0xe0a7e05347ddb3e0, 0xd77bd7f6acb321d7, 0xc22fc25eed999cc2, + 0x2eb82e6d965c432e, 0x4b314b627a96294b, 0xfedffea321e15dfe, 0x5741578216aed557, + 0x155415a8412abd15, 0x77c1779fb6eee877, 0x37dc37a5eb6e9237, 0xe5b3e57b56d79ee5, + 0x9f469f8cd923139f, 0xf0e7f0d317fd23f0, 0x4a354a6a7f94204a, 0xda4fda9e95a944da, + 0x587d58fa25b0a258, 0xc903c906ca8fcfc9, 0x29a429558d527c29, 0x0a280a5022145a0a, + 0xb1feb1e14f7f50b1, 0xa0baa0691a5dc9a0, 0x6bb16b7fdad6146b, 0x852e855cab17d985, + 0xbdcebd8173673cbd, 0x5d695dd234ba8f5d, 0x1040108050209010, 0xf4f7f4f303f507f4, + 0xcb0bcb16c08bddcb, 0x3ef83eedc67cd33e, 0x05140528110a2d05, 0x6781671fe6ce7867, + 0xe4b7e47353d597e4, 0x279c2725bb4e0227, 0x4119413258827341, 0x8b168b2c9d0ba78b, + 0xa7a6a7510153f6a7, 0x7de97dcf94fab27d, 0x956e95dcfb374995, 0xd847d88e9fad56d8, + 0xfbcbfb8b30eb70fb, 0xee9fee2371c1cdee, 0x7ced7cc791f8bb7c, 0x66856617e3cc7166, + 0xdd53dda68ea77bdd, 0x175c17b84b2eaf17, 0x47014702468e4547, 0x9e429e84dc211a9e, + 0xca0fca1ec589d4ca, 0x2db42d75995a582d, 0xbfc6bf9179632ebf, 0x071c07381b0e3f07, + 0xad8ead012347acad, 0x5a755aea2fb4b05a, 0x8336836cb51bef83, 0x33cc3385ff66b633, + 0x6391633ff2c65c63, 0x020802100a041202, 0xaa92aa39384993aa, 0x71d971afa8e2de71, + 0xc807c80ecf8dc6c8, 0x196419c87d32d119, 0x4939497270923b49, 0xd943d9869aaf5fd9, + 0xf2eff2c31df931f2, 0xe3abe34b48dba8e3, 0x5b715be22ab6b95b, 0x881a8834920dbc88, + 0x9a529aa4c8293e9a, 0x2698262dbe4c0b26, 0x32c8328dfa64bf32, 0xb0fab0e94a7d59b0, + 0xe983e91b6acff2e9, 0x0f3c0f78331e770f, 0xd573d5e6a6b733d5, 0x803a8074ba1df480, + 0xbec2be997c6127be, 0xcd13cd26de87ebcd, 0x34d034bde4688934, 0x483d487a75903248, + 0xffdbffab24e354ff, 0x7af57af78ff48d7a, 0x907a90f4ea3d6490, 0x5f615fc23ebe9d5f, + 0x2080201da0403d20, 0x68bd6867d5d00f68, 0x1a681ad07234ca1a, 0xae82ae192c41b7ae, + 0xb4eab4c95e757db4, 0x544d549a19a8ce54, 0x937693ece53b7f93, 0x2288220daa442f22, + 0x648d6407e9c86364, 0xf1e3f1db12ff2af1, 0x73d173bfa2e6cc73, 0x124812905a248212, + 0x401d403a5d807a40, 0x0820084028104808, 0xc32bc356e89b95c3, 0xec97ec337bc5dfec, + 0xdb4bdb9690ab4ddb, 0xa1bea1611f5fc0a1, 0x8d0e8d1c8307918d, 0x3df43df5c97ac83d, + 0x976697ccf1335b97, 0x0000000000000000, 0xcf1bcf36d483f9cf, 0x2bac2b4587566e2b, + 0x76c57697b3ece176, 0x82328264b019e682, 0xd67fd6fea9b128d6, 0x1b6c1bd87736c31b, + 0xb5eeb5c15b7774b5, 0xaf86af112943beaf, 0x6ab56a77dfd41d6a, 0x505d50ba0da0ea50, + 0x450945124c8a5745, 0xf3ebf3cb18fb38f3, 0x30c0309df060ad30, 0xef9bef2b74c3c4ef, + 0x3ffc3fe5c37eda3f, 0x554955921caac755, 0xa2b2a2791059dba2, 0xea8fea0365c9e9ea, + 0x6589650fecca6a65, 0xbad2bab9686903ba, 0x2fbc2f65935e4a2f, 0xc027c04ee79d8ec0, + 0xde5fdebe81a160de, 0x1c701ce06c38fc1c, 0xfdd3fdbb2ee746fd, 0x4d294d52649a1f4d, + 0x927292e4e0397692, 0x75c9758fbceafa75, 0x061806301e0c3606, 0x8a128a249809ae8a, + 0xb2f2b2f940794bb2, 0xe6bfe66359d185e6, 0x0e380e70361c7e0e, 0x1f7c1ff8633ee71f, + 0x62956237f7c45562, 0xd477d4eea3b53ad4, 0xa89aa829324d81a8, 0x966296c4f4315296, + 0xf9c3f99b3aef62f9, 0xc533c566f697a3c5, 0x25942535b14a1025, 0x597959f220b2ab59, + 0x842a8454ae15d084, 0x72d572b7a7e4c572, 0x39e439d5dd72ec39, 0x4c2d4c5a6198164c, + 0x5e655eca3bbc945e, 0x78fd78e785f09f78, 0x38e038ddd870e538, 0x8c0a8c148605988c, + 0xd163d1c6b2bf17d1, 0xa5aea5410b57e4a5, 0xe2afe2434dd9a1e2, 0x6199612ff8c24e61, + 0xb3f6b3f1457b42b3, 0x21842115a5423421, 0x9c4a9c94d625089c, 0x1e781ef0663cee1e, + 0x4311432252866143, 0xc73bc776fc93b1c7, 0xfcd7fcb32be54ffc, 0x0410042014082404, + 0x515951b208a2e351, 0x995e99bcc72f2599, 0x6da96d4fc4da226d, 0x0d340d68391a650d, + 0xfacffa8335e979fa, 0xdf5bdfb684a369df, 0x7ee57ed79bfca97e, 0x2490243db4481924, + 0x3bec3bc5d776fe3b, 0xab96ab313d4b9aab, 0xce1fce3ed181f0ce, 0x1144118855229911, + 0x8f068f0c8903838f, 0x4e254e4a6b9c044e, 0xb7e6b7d1517366b7, 0xeb8beb0b60cbe0eb, + 0x3cf03cfdcc78c13c, 0x813e817cbf1ffd81, 0x946a94d4fe354094, 0xf7fbf7eb0cf31cf7, + 0xb9deb9a1676f18b9, 0x134c13985f268b13, 0x2cb02c7d9c58512c, 0xd36bd3d6b8bb05d3, + 0xe7bbe76b5cd38ce7, 0x6ea56e57cbdc396e, 0xc437c46ef395aac4, 0x030c03180f061b03, + 0x5645568a13acdc56, 0x440d441a49885e44, 0x7fe17fdf9efea07f, 0xa99ea921374f88a9, + 0x2aa82a4d8254672a, 0xbbd6bbb16d6b0abb, 0xc123c146e29f87c1, 0x535153a202a6f153, + 0xdc57dcae8ba572dc, 0x0b2c0b582716530b, 0x9d4e9d9cd327019d, 0x6cad6c47c1d82b6c, + 0x31c43195f562a431, 0x74cd7487b9e8f374, 0xf6fff6e309f115f6, 0x4605460a438c4c46, + 0xac8aac092645a5ac, 0x891e893c970fb589, 0x145014a04428b414, 0xe1a3e15b42dfbae1, + 0x165816b04e2ca616, 0x3ae83acdd274f73a, 0x69b9696fd0d20669, 0x092409482d124109, + 0x70dd70a7ade0d770, 0xb6e2b6d954716fb6, 0xd067d0ceb7bd1ed0, 0xed93ed3b7ec7d6ed, + 0xcc17cc2edb85e2cc, 0x4215422a57846842, 0x985a98b4c22d2c98, 0xa4aaa4490e55eda4, + 0x28a0285d88507528, 0x5c6d5cda31b8865c, 0xf8c7f8933fed6bf8, 0x86228644a411c286, +]; diff --git a/whirlpool/src/lib.rs b/whirlpool/src/lib.rs new file mode 100644 index 00000000..caffd5d7 --- /dev/null +++ b/whirlpool/src/lib.rs @@ -0,0 +1,184 @@ +//! An implementation of the Whirlpool cryptographic hash algorithm. +//! +//! This is the algorithm recommended by NESSIE (New European Schemes for +//! Signatures, Integrity and Encryption; an European research project). +//! +//! The constants used by Whirlpool were changed twice (2001 and 2003) - this +//! module only implements the most recent standard. The two older Whirlpool +//! implementations (sometimes called Whirlpool-0 (pre 2001) and Whirlpool-T +//! (pre 2003)) were not used much anyway (both have never been recommended +//! by NESSIE). +//! +//! For details see . +//! +//! # Usage +//! +//! ```rust +//! use whirlpool::{Whirlpool, Digest}; +//! +//! let mut hasher = Whirlpool::new(); +//! hasher.input(b"Hello Whirlpool"); +//! let result = hasher.result(); +//! ``` + +#![no_std] +extern crate generic_array; +extern crate byte_tools; +extern crate digest; +extern crate digest_buffer; + +use core::mem::uninitialized; + +pub use digest::Digest; +use byte_tools::write_u64v_be; +use digest_buffer::DigestBuffer; +use generic_array::GenericArray; +use generic_array::typenum::U64; + +mod consts; +use consts::*; + +type BlockSize = U64; + +#[derive(Copy, Clone)] +pub struct Whirlpool { + bit_length: [u8; 32], + buffer: DigestBuffer, + hash: [u64; 8], +} + +impl Whirlpool { + + fn finalize(&mut self) { + // padding + assert!(self.buffer.remaining() >= 1); + let hash = &mut self.hash; + self.buffer.input(&[0b10000000], |b| { process_buffer(hash, b); }); + + if self.buffer.remaining() < self.bit_length.len() { + let size = self.buffer.size(); + self.buffer.zero_until(size); + process_buffer(hash, self.buffer.full_buffer()); + } + + // length + self.buffer.zero_until(32); + self.buffer.input(&self.bit_length, |b| { process_buffer(hash, b); }); + assert!(self.buffer.position() == 0); + } +} + +impl Digest for Whirlpool { + type R = U64; + type B = BlockSize; + + fn new() -> Whirlpool { + Whirlpool{ + bit_length: [0; 32], + buffer: Default::default(), + hash: [0; 8], + } + } + + fn input(&mut self, source: &[u8]) { + // (byte length * 8) = (bit lenght) converted in a 72 bit uint + let len = source.len() as u64; + let len_bits = [ + ((len >> (56 + 5)) ) as u8, + ((len >> (48 + 5)) & 0xff) as u8, + ((len >> (40 + 5)) & 0xff) as u8, + ((len >> (32 + 5)) & 0xff) as u8, + ((len >> (24 + 5)) & 0xff) as u8, + ((len >> (16 + 5)) & 0xff) as u8, + ((len >> ( 8 + 5)) & 0xff) as u8, + ((len >> ( 0 + 5)) & 0xff) as u8, + ((len << 3) & 0xff) as u8, + ]; + + // adds the 72 bit len_bits to the 256 bit self.bit_length + let mut carry = false; + for i in 0..32 { + let mut x = self.bit_length[self.bit_length.len() - i - 1] as u16; + + if i < len_bits.len() { + x += len_bits[len_bits.len() - i - 1] as u16; + } else if !carry { + break; + } + + if carry { + x += 1; + } + + carry = x > 0xff; + let pos = self.bit_length.len() -i - 1; + self.bit_length[pos] = (x & 0xff) as u8; + } + + // process the data itself + let hash = &mut self.hash; + self.buffer.input(source, |b| { process_buffer(hash, b); }); + } + + fn result(mut self) -> GenericArray { + self.finalize(); + + let mut out = GenericArray::new(); + write_u64v_be(&mut out, &self.hash[..]); + out + } +} + +fn process_buffer(hash: &mut[u64; 8], buffer: &[u8]) { + let mut k: [u64; 8] = unsafe { uninitialized() }; + let mut block: [u64; 8] = unsafe { uninitialized() }; + let mut state: [u64; 8] = unsafe { uninitialized() }; + let mut l: [u64; 8] = unsafe { uninitialized() }; + + for i in 0..8 { + block[i] = + ((buffer[i * 8 + 0] as u64) << 56) ^ + ((buffer[i * 8 + 1] as u64) << 48) ^ + ((buffer[i * 8 + 2] as u64) << 40) ^ + ((buffer[i * 8 + 3] as u64) << 32) ^ + ((buffer[i * 8 + 4] as u64) << 24) ^ + ((buffer[i * 8 + 5] as u64) << 16) ^ + ((buffer[i * 8 + 6] as u64) << 8) ^ + ((buffer[i * 8 + 7] as u64) ); + k[i] = hash[i]; + state[i] = block[i] ^ k[i]; + } + + for r in 1..(R + 1) /* [1, R] */ { + for i in 0..8 { + l[i] = + C0[((k[(0 + i) % 8] >> 56) ) as usize] ^ + C1[((k[(7 + i) % 8] >> 48) & 0xff) as usize] ^ + C2[((k[(6 + i) % 8] >> 40) & 0xff) as usize] ^ + C3[((k[(5 + i) % 8] >> 32) & 0xff) as usize] ^ + C4[((k[(4 + i) % 8] >> 24) & 0xff) as usize] ^ + C5[((k[(3 + i) % 8] >> 16) & 0xff) as usize] ^ + C6[((k[(2 + i) % 8] >> 8) & 0xff) as usize] ^ + C7[((k[(1 + i) % 8] ) & 0xff) as usize] ^ + if i == 0 { RC[r] } else { 0 }; + } + k = l; + for i in 0..8 { + l[i] = + C0[((state[(0 + i) % 8] >> 56) ) as usize] ^ + C1[((state[(7 + i) % 8] >> 48) & 0xff) as usize] ^ + C2[((state[(6 + i) % 8] >> 40) & 0xff) as usize] ^ + C3[((state[(5 + i) % 8] >> 32) & 0xff) as usize] ^ + C4[((state[(4 + i) % 8] >> 24) & 0xff) as usize] ^ + C5[((state[(3 + i) % 8] >> 16) & 0xff) as usize] ^ + C6[((state[(2 + i) % 8] >> 8) & 0xff) as usize] ^ + C7[((state[(1 + i) % 8] ) & 0xff) as usize] ^ + k[i]; + } + state = l; + } + + for i in 0..8 { + hash[i] ^= state[i] ^ block[i]; + } +} diff --git a/whirlpool/tests/data/one_million_a.output.bin b/whirlpool/tests/data/one_million_a.output.bin new file mode 100644 index 00000000..a3685d43 Binary files /dev/null and b/whirlpool/tests/data/one_million_a.output.bin differ diff --git a/whirlpool/tests/data/test1.input.bin b/whirlpool/tests/data/test1.input.bin new file mode 100644 index 00000000..e69de29b diff --git a/whirlpool/tests/data/test1.output.bin b/whirlpool/tests/data/test1.output.bin new file mode 100644 index 00000000..aa24b85c --- /dev/null +++ b/whirlpool/tests/data/test1.output.bin @@ -0,0 +1 @@ +aU"fD.&0#!0I>i(ψ:sr~mLq~'}4qǗص%) v \ No newline at end of file diff --git a/whirlpool/tests/data/test15.input.bin b/whirlpool/tests/data/test15.input.bin new file mode 100644 index 00000000..e407fe0e --- /dev/null +++ b/whirlpool/tests/data/test15.input.bin @@ -0,0 +1 @@ +message digest \ No newline at end of file diff --git a/whirlpool/tests/data/test15.output.bin b/whirlpool/tests/data/test15.output.bin new file mode 100644 index 00000000..bdfda228 Binary files /dev/null and b/whirlpool/tests/data/test15.output.bin differ diff --git a/whirlpool/tests/data/test16.input.bin b/whirlpool/tests/data/test16.input.bin new file mode 100644 index 00000000..e85d5b45 --- /dev/null +++ b/whirlpool/tests/data/test16.input.bin @@ -0,0 +1 @@ +abcdefghijklmnopqrstuvwxyz \ No newline at end of file diff --git a/whirlpool/tests/data/test16.output.bin b/whirlpool/tests/data/test16.output.bin new file mode 100644 index 00000000..5dec001c --- /dev/null +++ b/whirlpool/tests/data/test16.output.bin @@ -0,0 +1 @@ +Tf&6,!*HJ8cB8D.;T*Q j zg>r]]ۤ; \ No newline at end of file diff --git a/whirlpool/tests/data/test17.input.bin b/whirlpool/tests/data/test17.input.bin new file mode 100644 index 00000000..9f75c375 --- /dev/null +++ b/whirlpool/tests/data/test17.input.bin @@ -0,0 +1 @@ +ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789 \ No newline at end of file diff --git a/whirlpool/tests/data/test17.output.bin b/whirlpool/tests/data/test17.output.bin new file mode 100644 index 00000000..b0271cdc Binary files /dev/null and b/whirlpool/tests/data/test17.output.bin differ diff --git a/whirlpool/tests/data/test18.input.bin b/whirlpool/tests/data/test18.input.bin new file mode 100644 index 00000000..f2316d64 --- /dev/null +++ b/whirlpool/tests/data/test18.input.bin @@ -0,0 +1 @@ +012345678901234567890123456789012345678901234567890123456789012 \ No newline at end of file diff --git a/whirlpool/tests/data/test18.output.bin b/whirlpool/tests/data/test18.output.bin new file mode 100644 index 00000000..e5edb784 --- /dev/null +++ b/whirlpool/tests/data/test18.output.bin @@ -0,0 +1 @@ +k1_j};%!m˅Az&'~=MafAhu!X=` \ No newline at end of file diff --git a/whirlpool/tests/data/test2.input.bin b/whirlpool/tests/data/test2.input.bin new file mode 100644 index 00000000..f76dd238 Binary files /dev/null and b/whirlpool/tests/data/test2.input.bin differ diff --git a/whirlpool/tests/data/test2.output.bin b/whirlpool/tests/data/test2.output.bin new file mode 100644 index 00000000..c8309150 --- /dev/null +++ b/whirlpool/tests/data/test2.output.bin @@ -0,0 +1 @@ +MDYc%oth9i+LnYV 9ZʽhZ4*IB̪Ej \ No newline at end of file diff --git a/whirlpool/tests/data/test3.input.bin b/whirlpool/tests/data/test3.input.bin new file mode 100644 index 00000000..09f370e3 Binary files /dev/null and b/whirlpool/tests/data/test3.input.bin differ diff --git a/whirlpool/tests/data/test3.output.bin b/whirlpool/tests/data/test3.output.bin new file mode 100644 index 00000000..0ca52cfd --- /dev/null +++ b/whirlpool/tests/data/test3.output.bin @@ -0,0 +1 @@ +ܝDqڽ =X)n="Ru?7 ^n w"L~p \ No newline at end of file diff --git a/whirlpool/tests/data/test4.input.bin b/whirlpool/tests/data/test4.input.bin new file mode 100644 index 00000000..4227ca4e Binary files /dev/null and b/whirlpool/tests/data/test4.input.bin differ diff --git a/whirlpool/tests/data/test4.output.bin b/whirlpool/tests/data/test4.output.bin new file mode 100644 index 00000000..672b828b --- /dev/null +++ b/whirlpool/tests/data/test4.output.bin @@ -0,0 +1,2 @@ +Ԩ<5Q +cVߩavg_ȉf$5O 6k,>\F@gݘ? \ No newline at end of file diff --git a/whirlpool/tests/data/test5.input.bin b/whirlpool/tests/data/test5.input.bin new file mode 100644 index 00000000..593f4708 Binary files /dev/null and b/whirlpool/tests/data/test5.input.bin differ diff --git a/whirlpool/tests/data/test5.output.bin b/whirlpool/tests/data/test5.output.bin new file mode 100644 index 00000000..17209d7f Binary files /dev/null and b/whirlpool/tests/data/test5.output.bin differ diff --git a/whirlpool/tests/data/test6.input.bin b/whirlpool/tests/data/test6.input.bin new file mode 100644 index 00000000..40b450dd Binary files /dev/null and b/whirlpool/tests/data/test6.input.bin differ diff --git a/whirlpool/tests/data/test6.output.bin b/whirlpool/tests/data/test6.output.bin new file mode 100644 index 00000000..1a6f8262 --- /dev/null +++ b/whirlpool/tests/data/test6.output.bin @@ -0,0 +1,2 @@ +J󈖶WY''Mp#~7 +$ZqZ\pYN0ܙ6o \ No newline at end of file diff --git a/whirlpool/tests/data/test7.input.bin b/whirlpool/tests/data/test7.input.bin new file mode 100644 index 00000000..ab2c6846 Binary files /dev/null and b/whirlpool/tests/data/test7.input.bin differ diff --git a/whirlpool/tests/data/test7.output.bin b/whirlpool/tests/data/test7.output.bin new file mode 100644 index 00000000..ee2e4b93 --- /dev/null +++ b/whirlpool/tests/data/test7.output.bin @@ -0,0 +1,2 @@ +y +(&tests); +} + +#[test] +fn whirlpool_1million_a() { + let output = include_bytes!("data/one_million_a.output.bin"); + one_million_a::(output); +}