From 9ad2ba4ad2c614cf41964fe51354ec059b9cf415 Mon Sep 17 00:00:00 2001 From: miha-q <> Date: Fri, 11 Aug 2023 08:31:41 -0400 Subject: [PATCH] Fri Aug 11 08:31:41 AM EDT 2023 --- tests/rfc5869.txt.pdf | Bin 0 -> 22582 bytes tests/test.c | 57 +++++++++++------------------------------- 2 files changed, 14 insertions(+), 43 deletions(-) create mode 100644 tests/rfc5869.txt.pdf diff --git a/tests/rfc5869.txt.pdf b/tests/rfc5869.txt.pdf new file mode 100644 index 0000000000000000000000000000000000000000..e1d082d2e7f0d92a905a83f7735d7383af19e507 GIT binary patch literal 22582 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 literal 0 HcmV?d00001 diff --git a/tests/test.c b/tests/test.c index cca7239..caf8a2f 100644 --- a/tests/test.c +++ b/tests/test.c @@ -48,48 +48,19 @@ void test_hkdf(uint16_t id, uint8_t* ikm, uint32_t ikmS, uint8_t* salt, uint32_t void main() { - //test_hmac(1, 1, NIST_HMAC_key1, sizeof(NIST_HMAC_key1), NIST_HMAC_data1, sizeof(NIST_HMAC_data1), NIST_HMAC_result1, sizeof(NIST_HMAC_result1)); - //test_hmac(1, 2, NIST_HMAC_key2, sizeof(NIST_HMAC_key2), NIST_HMAC_data2, sizeof(NIST_HMAC_data2), NIST_HMAC_result2, sizeof(NIST_HMAC_result2)); - //test_hmac(1, 3, NIST_HMAC_key3, sizeof(NIST_HMAC_key3), NIST_HMAC_data3, sizeof(NIST_HMAC_data3), NIST_HMAC_result3, sizeof(NIST_HMAC_result3)); - //test_hmac(1, 4, NIST_HMAC_key4, sizeof(NIST_HMAC_key4), NIST_HMAC_data4, sizeof(NIST_HMAC_data4), NIST_HMAC_result4, sizeof(NIST_HMAC_result4)); - //test_hmac(2, 1, RFC4231_HMAC_key1, sizeof(RFC4231_HMAC_key1), RFC4231_HMAC_data1, sizeof(RFC4231_HMAC_data1), RFC4231_HMAC_result1, sizeof(RFC4231_HMAC_result1)); - //test_hmac(2, 2, RFC4231_HMAC_key2, sizeof(RFC4231_HMAC_key2), RFC4231_HMAC_data2, sizeof(RFC4231_HMAC_data2), RFC4231_HMAC_result2, sizeof(RFC4231_HMAC_result2)); - //test_hmac(2, 3, RFC4231_HMAC_key3, sizeof(RFC4231_HMAC_key3), RFC4231_HMAC_data3, sizeof(RFC4231_HMAC_data3), RFC4231_HMAC_result3, sizeof(RFC4231_HMAC_result3)); - //test_hmac(2, 4, RFC4231_HMAC_key4, sizeof(RFC4231_HMAC_key4), RFC4231_HMAC_data4, sizeof(RFC4231_HMAC_data4), RFC4231_HMAC_result4, sizeof(RFC4231_HMAC_result4)); - //test_hmac(2, 5, RFC4231_HMAC_key5, sizeof(RFC4231_HMAC_key5), RFC4231_HMAC_data5, sizeof(RFC4231_HMAC_data5), RFC4231_HMAC_result5, sizeof(RFC4231_HMAC_result5)); - //test_hmac(2, 6, RFC4231_HMAC_key6, sizeof(RFC4231_HMAC_key6), RFC4231_HMAC_data6, sizeof(RFC4231_HMAC_data6), RFC4231_HMAC_result6, sizeof(RFC4231_HMAC_result6)); - //test_hmac(2, 7, RFC4231_HMAC_key7, sizeof(RFC4231_HMAC_key7), RFC4231_HMAC_data7, sizeof(RFC4231_HMAC_data7), RFC4231_HMAC_result7, sizeof(RFC4231_HMAC_result7)); + test_hmac(1, 1, NIST_HMAC_key1, sizeof(NIST_HMAC_key1), NIST_HMAC_data1, sizeof(NIST_HMAC_data1), NIST_HMAC_result1, sizeof(NIST_HMAC_result1)); + test_hmac(1, 2, NIST_HMAC_key2, sizeof(NIST_HMAC_key2), NIST_HMAC_data2, sizeof(NIST_HMAC_data2), NIST_HMAC_result2, sizeof(NIST_HMAC_result2)); + test_hmac(1, 3, NIST_HMAC_key3, sizeof(NIST_HMAC_key3), NIST_HMAC_data3, sizeof(NIST_HMAC_data3), NIST_HMAC_result3, sizeof(NIST_HMAC_result3)); + test_hmac(1, 4, NIST_HMAC_key4, sizeof(NIST_HMAC_key4), NIST_HMAC_data4, sizeof(NIST_HMAC_data4), NIST_HMAC_result4, sizeof(NIST_HMAC_result4)); + test_hmac(2, 1, RFC4231_HMAC_key1, sizeof(RFC4231_HMAC_key1), RFC4231_HMAC_data1, sizeof(RFC4231_HMAC_data1), RFC4231_HMAC_result1, sizeof(RFC4231_HMAC_result1)); + test_hmac(2, 2, RFC4231_HMAC_key2, sizeof(RFC4231_HMAC_key2), RFC4231_HMAC_data2, sizeof(RFC4231_HMAC_data2), RFC4231_HMAC_result2, sizeof(RFC4231_HMAC_result2)); + test_hmac(2, 3, RFC4231_HMAC_key3, sizeof(RFC4231_HMAC_key3), RFC4231_HMAC_data3, sizeof(RFC4231_HMAC_data3), RFC4231_HMAC_result3, sizeof(RFC4231_HMAC_result3)); + test_hmac(2, 4, RFC4231_HMAC_key4, sizeof(RFC4231_HMAC_key4), RFC4231_HMAC_data4, sizeof(RFC4231_HMAC_data4), RFC4231_HMAC_result4, sizeof(RFC4231_HMAC_result4)); + test_hmac(2, 5, RFC4231_HMAC_key5, sizeof(RFC4231_HMAC_key5), RFC4231_HMAC_data5, sizeof(RFC4231_HMAC_data5), RFC4231_HMAC_result5, sizeof(RFC4231_HMAC_result5)); + test_hmac(2, 6, RFC4231_HMAC_key6, sizeof(RFC4231_HMAC_key6), RFC4231_HMAC_data6, sizeof(RFC4231_HMAC_data6), RFC4231_HMAC_result6, sizeof(RFC4231_HMAC_result6)); + test_hmac(2, 7, RFC4231_HMAC_key7, sizeof(RFC4231_HMAC_key7), RFC4231_HMAC_data7, sizeof(RFC4231_HMAC_data7), RFC4231_HMAC_result7, sizeof(RFC4231_HMAC_result7)); // - //test_hkdf(1, RFC5869_HKDF_ikm1, sizeof(RFC5869_HKDF_ikm1), RFC5869_HKDF_salt1, sizeof(RFC5869_HKDF_salt1), RFC5869_HKDF_info1, sizeof(RFC5869_HKDF_info1), RFC5869_HKDF_result1, sizeof(RFC5869_HKDF_result1)); - //test_hkdf(2, RFC5869_HKDF_ikm2, sizeof(RFC5869_HKDF_ikm2), RFC5869_HKDF_salt2, sizeof(RFC5869_HKDF_salt2), RFC5869_HKDF_info2, sizeof(RFC5869_HKDF_info2), RFC5869_HKDF_result2, sizeof(RFC5869_HKDF_result2)); - //test_hkdf(3, RFC5869_HKDF_ikm3, sizeof(RFC5869_HKDF_ikm3), RFC5869_HKDF_salt3, sizeof(RFC5869_HKDF_salt3), RFC5869_HKDF_info3, sizeof(RFC5869_HKDF_info3), RFC5869_HKDF_result3, sizeof(RFC5869_HKDF_result3)); - - //Randomly generate a private and public key - rsakey_t pub, prv; - foleo_rsa_keygen(1024, &pub, &prv); - - uint8_t* tmp = foleo_rsa_export(&prv); - printf("%s\n", tmp); - ////Encrypt some plaintext into ciphertext - //uint8_t plaintext[] = "here is some plaintext to encrypt"; - //uint8_t* ciphertext = foleo_rsa_encrypt(pub, FOLEO_RSA_OAEP, plaintext, sizeof(plaintext)); - // - ////Display them - //test_pbuf("plaintext", plaintext, sizeof(plaintext)); - //test_pbuf("ciphertext", ciphertext, 2048 / 8); - // - ////Decrypt the ciphertext - //uint16_t newSize; - //uint8_t* new_plaintext = foleo_rsa_decrypt(prv, FOLEO_RSA_OAEP, ciphertext, &newSize); -// - ////Display it - //test_pbuf("new_plaintext", plaintext, newSize); - - //free(ciphertext); - foleo_rsa_free(&pub); - foleo_rsa_free(&prv); - - - - + test_hkdf(1, RFC5869_HKDF_ikm1, sizeof(RFC5869_HKDF_ikm1), RFC5869_HKDF_salt1, sizeof(RFC5869_HKDF_salt1), RFC5869_HKDF_info1, sizeof(RFC5869_HKDF_info1), RFC5869_HKDF_result1, sizeof(RFC5869_HKDF_result1)); + test_hkdf(2, RFC5869_HKDF_ikm2, sizeof(RFC5869_HKDF_ikm2), RFC5869_HKDF_salt2, sizeof(RFC5869_HKDF_salt2), RFC5869_HKDF_info2, sizeof(RFC5869_HKDF_info2), RFC5869_HKDF_result2, sizeof(RFC5869_HKDF_result2)); + test_hkdf(3, RFC5869_HKDF_ikm3, sizeof(RFC5869_HKDF_ikm3), RFC5869_HKDF_salt3, sizeof(RFC5869_HKDF_salt3), RFC5869_HKDF_info3, sizeof(RFC5869_HKDF_info3), RFC5869_HKDF_result3, sizeof(RFC5869_HKDF_result3)); } -- 2.39.5