aboutsummaryrefslogtreecommitdiff
path: root/tests/suites/test_suite_shax.function
diff options
context:
space:
mode:
Diffstat (limited to 'tests/suites/test_suite_shax.function')
-rw-r--r--tests/suites/test_suite_shax.function105
1 files changed, 105 insertions, 0 deletions
diff --git a/tests/suites/test_suite_shax.function b/tests/suites/test_suite_shax.function
new file mode 100644
index 0000000..f90d161
--- /dev/null
+++ b/tests/suites/test_suite_shax.function
@@ -0,0 +1,105 @@
+BEGIN_HEADER
+#include <polarssl/sha1.h>
+#include <polarssl/sha2.h>
+#include <polarssl/sha4.h>
+END_HEADER
+
+BEGIN_CASE
+sha1:hex_src_string:hex_hash_string
+{
+ unsigned char src_str[10000];
+ unsigned char hash_str[10000];
+ unsigned char output[41];
+
+ memset(src_str, 0x00, 10000);
+ memset(hash_str, 0x00, 10000);
+ memset(output, 0x00, 41);
+
+ int src_len = unhexify( src_str, {hex_src_string} );
+
+ sha1( src_str, src_len, output );
+ hexify( hash_str, output, 20 );
+
+ TEST_ASSERT( strcmp( (char *) hash_str, {hex_hash_string} ) == 0 );
+}
+END_CASE
+
+BEGIN_CASE
+sha224:hex_src_string:hex_hash_string
+{
+ unsigned char src_str[10000];
+ unsigned char hash_str[10000];
+ unsigned char output[57];
+
+ memset(src_str, 0x00, 10000);
+ memset(hash_str, 0x00, 10000);
+ memset(output, 0x00, 57);
+
+ int src_len = unhexify( src_str, {hex_src_string} );
+
+ sha2( src_str, src_len, output, 1 );
+ hexify( hash_str, output, 28 );
+
+ TEST_ASSERT( strcmp( (char *) hash_str, {hex_hash_string} ) == 0 );
+}
+END_CASE
+
+BEGIN_CASE
+sha256:hex_src_string:hex_hash_string
+{
+ unsigned char src_str[10000];
+ unsigned char hash_str[10000];
+ unsigned char output[65];
+
+ memset(src_str, 0x00, 10000);
+ memset(hash_str, 0x00, 10000);
+ memset(output, 0x00, 65);
+
+ int src_len = unhexify( src_str, {hex_src_string} );
+
+ sha2( src_str, src_len, output, 0 );
+ hexify( hash_str, output, 32 );
+
+ TEST_ASSERT( strcmp( (char *) hash_str, {hex_hash_string} ) == 0 );
+}
+END_CASE
+
+BEGIN_CASE
+sha384:hex_src_string:hex_hash_string
+{
+ unsigned char src_str[10000];
+ unsigned char hash_str[10000];
+ unsigned char output[97];
+
+ memset(src_str, 0x00, 10000);
+ memset(hash_str, 0x00, 10000);
+ memset(output, 0x00, 97);
+
+ int src_len = unhexify( src_str, {hex_src_string} );
+
+ sha4( src_str, src_len, output, 1 );
+ hexify( hash_str, output, 48 );
+
+ TEST_ASSERT( strcmp( (char *) hash_str, {hex_hash_string} ) == 0 );
+}
+END_CASE
+
+BEGIN_CASE
+sha512:hex_src_string:hex_hash_string
+{
+ unsigned char src_str[10000];
+ unsigned char hash_str[10000];
+ unsigned char output[129];
+
+ memset(src_str, 0x00, 10000);
+ memset(hash_str, 0x00, 10000);
+ memset(output, 0x00, 129);
+
+ int src_len = unhexify( src_str, {hex_src_string} );
+
+ sha4( src_str, src_len, output, 0);
+ hexify( hash_str, output, 64 );
+
+ TEST_ASSERT( strcmp( (char *) hash_str, {hex_hash_string} ) == 0 );
+}
+END_CASE