Added stream versions of the Crypto:: hash functions for calculating hashes from for instance large files
This commit is contained in:
parent
9e29d2d572
commit
92ddf86e15
2 changed files with 94 additions and 11 deletions
|
|
@ -42,21 +42,35 @@ int main() {
|
|||
assert(Crypto::Base64::decode(string_test.second)==string_test.first);
|
||||
}
|
||||
|
||||
for(auto& string_test: md5_string_tests)
|
||||
for(auto& string_test: md5_string_tests) {
|
||||
assert(Crypto::to_hex_string(Crypto::md5(string_test.first)) == string_test.second);
|
||||
stringstream ss(string_test.first);
|
||||
assert(Crypto::to_hex_string(Crypto::md5(ss)) == string_test.second);
|
||||
}
|
||||
|
||||
for(auto& string_test: sha1_string_tests)
|
||||
for(auto& string_test: sha1_string_tests) {
|
||||
assert(Crypto::to_hex_string(Crypto::sha1(string_test.first)) == string_test.second);
|
||||
stringstream ss(string_test.first);
|
||||
assert(Crypto::to_hex_string(Crypto::sha1(ss)) == string_test.second);
|
||||
}
|
||||
|
||||
for(auto& string_test: sha256_string_tests)
|
||||
for(auto& string_test: sha256_string_tests) {
|
||||
assert(Crypto::to_hex_string(Crypto::sha256(string_test.first)) == string_test.second);
|
||||
stringstream ss(string_test.first);
|
||||
assert(Crypto::to_hex_string(Crypto::sha256(ss)) == string_test.second);
|
||||
}
|
||||
|
||||
for(auto& string_test: sha512_string_tests)
|
||||
for(auto& string_test: sha512_string_tests) {
|
||||
assert(Crypto::to_hex_string(Crypto::sha512(string_test.first)) == string_test.second);
|
||||
stringstream ss(string_test.first);
|
||||
assert(Crypto::to_hex_string(Crypto::sha512(ss)) == string_test.second);
|
||||
}
|
||||
|
||||
//Testing iterations
|
||||
assert(Crypto::to_hex_string(Crypto::sha1("Test", 1)) == "640ab2bae07bedc4c163f679a746f7ab7fb5d1fa");
|
||||
assert(Crypto::to_hex_string(Crypto::sha1("Test", 2)) == "af31c6cbdecd88726d0a9b3798c71ef41f1624d5");
|
||||
stringstream ss("Test");
|
||||
assert(Crypto::to_hex_string(Crypto::sha1(ss, 2)) == "af31c6cbdecd88726d0a9b3798c71ef41f1624d5");
|
||||
|
||||
assert(Crypto::to_hex_string(Crypto::pbkdf2("Password", "Salt", 4096, 128 / 8)) == "f66df50f8aaa11e4d9721e1312ff2e66");
|
||||
assert(Crypto::to_hex_string(Crypto::pbkdf2("Password", "Salt", 8192, 512 / 8)) == "a941ccbc34d1ee8ebbd1d34824a419c3dc4eac9cbc7c36ae6c7ca8725e2b618a6ad22241e787af937b0960cf85aa8ea3a258f243e05d3cc9b08af5dd93be046c");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue