From 4300f6c6aa4a0993b876c54dbcf882595560a206 Mon Sep 17 00:00:00 2001 From: Ayrx Date: Sun, 9 Feb 2014 15:15:13 +0800 Subject: Added test vectors for HOTP and TOTP algorithms. --- tests/hazmat/primitives/vectors/otp/rfc-4226.txt | 62 +++++++++++++++ tests/hazmat/primitives/vectors/otp/rfc-6238.txt | 92 ++++++++++++++++++++++ tests/test_utils.py | 98 ++++++++++++++++++++++++ 3 files changed, 252 insertions(+) create mode 100644 tests/hazmat/primitives/vectors/otp/rfc-4226.txt create mode 100644 tests/hazmat/primitives/vectors/otp/rfc-6238.txt diff --git a/tests/hazmat/primitives/vectors/otp/rfc-4226.txt b/tests/hazmat/primitives/vectors/otp/rfc-4226.txt new file mode 100644 index 00000000..377f155b --- /dev/null +++ b/tests/hazmat/primitives/vectors/otp/rfc-4226.txt @@ -0,0 +1,62 @@ +# HOTP Test Vectors +# RFC 4226 Appendix D + +COUNT = 0 +COUNTER = 0 +INTERMEDIATE = cc93cf18508d94934c64b65d8ba7667fb7cde4b0 +TRUNCATED = 4c93cf18 +HOTP = 755224 + +COUNT = 1 +COUNTER = 1 +INTERMEDIATE = 75a48a19d4cbe100644e8ac1397eea747a2d33ab +TRUNCATED = 41397eea +HOTP = 287082 + +COUNT = 2 +COUNTER = 2 +INTERMEDIATE = 0bacb7fa082fef30782211938bc1c5e70416ff44 +TRUNCATED = 82fef30 +HOTP = 359152 + +COUNT = 3 +COUNTER = 3 +INTERMEDIATE = 66c28227d03a2d5529262ff016a1e6ef76557ece +TRUNCATED = 66ef7655 +HOTP = 969429 + +COUNT = 4 +COUNTER = 4 +INTERMEDIATE = a904c900a64b35909874b33e61c5938a8e15ed1c +TRUNCATED = 61c5938a +HOTP = 338314 + +COUNT = 5 +COUNTER = 5 +INTERMEDIATE = a37e783d7b7233c083d4f62926c7a25f238d0316 +TRUNCATED = 33c083d4 +HOTP = 254676 + +COUNT = 6 +COUNTER = 6 +INTERMEDIATE = bc9cd28561042c83f219324d3c607256c03272ae +TRUNCATED = 7256c032 +HOTP = 287922 + +COUNT = 7 +COUNTER = 7 +INTERMEDIATE = a4fb960c0bc06e1eabb804e5b397cdc4b45596fa +TRUNCATED = 4e5b397 +HOTP = 162583 + +COUNT = 8 +COUNTER = 8 +INTERMEDIATE = 1b3c89f65e6c9e883012052823443f048b4332db +TRUNCATED = 2823443f +HOTP = 399871 + +COUNT = 9 +COUNTER = 9 +INTERMEDIATE = 1637409809a679dc698207310c8c7fc07290d9e5 +TRUNCATED = 2679dc69 +HOTP = 520489 diff --git a/tests/hazmat/primitives/vectors/otp/rfc-6238.txt b/tests/hazmat/primitives/vectors/otp/rfc-6238.txt new file mode 100644 index 00000000..bec4ed28 --- /dev/null +++ b/tests/hazmat/primitives/vectors/otp/rfc-6238.txt @@ -0,0 +1,92 @@ +# TOTP Test Vectors +# RFC 6238 Appendix B + +COUNT = 0 +TIME = 59 +TOTP = 94287082 +MODE = SHA1 + +COUNT = 1 +TIME = 59 +TOTP = 46119246 +MODE = SHA256 + +COUNT = 2 +TIME = 59 +TOTP = 90693936 +MODE = SHA512 + +COUNT = 3 +TIME = 1111111109 +TOTP = 07081804 +MODE = SHA1 + +COUNT = 4 +TIME = 1111111109 +TOTP = 68084774 +MODE = SHA256 + +COUNT = 5 +TIME = 1111111109 +TOTP = 25091201 +MODE = SHA512 + +COUNT = 6 +TIME = 1111111111 +TOTP = 14050471 +MODE = SHA1 + +COUNT = 7 +TIME = 1111111111 +TOTP = 67062674 +MODE = SHA256 + +COUNT = 8 +TIME = 1111111111 +TOTP = 99943326 +MODE = SHA512 + +COUNT = 9 +TIME = 1234567890 +TOTP = 89005924 +MODE = SHA1 + +COUNT = 10 +TIME = 1234567890 +TOTP = 91819424 +MODE = SHA256 + +COUNT = 11 +TIME = 1234567890 +TOTP = 93441116 +MODE = SHA512 + +COUNT = 12 +TIME = 2000000000 +TOTP = 69279037 +MODE = SHA1 + +COUNT = 13 +TIME = 2000000000 +TOTP = 69279037 +MODE = SHA256 + +COUNT = 14 +TIME = 2000000000 +TOTP = 69279037 +MODE = SHA512 + +COUNT = 15 +TIME = 20000000000 +TOTP = 65353130 +MODE = SHA1 + +COUNT = 16 +TIME = 20000000000 +TOTP = 77737706 +MODE = SHA256 + +COUNT = 17 +TIME = 20000000000 +TOTP = 47863826 +MODE = SHA512 diff --git a/tests/test_utils.py b/tests/test_utils.py index 2f4a43c8..901c0281 100644 --- a/tests/test_utils.py +++ b/tests/test_utils.py @@ -826,3 +826,101 @@ def test_load_pkcs1_vectors(): ) ) assert vectors == expected + + +def test_load_hotp_vectors(): + vector_data = textwrap.dedent(""" + # HOTP Test Vectors + # RFC 4226 Appendix D + + COUNT = 0 + COUNTER = 0 + INTERMEDIATE = cc93cf18508d94934c64b65d8ba7667fb7cde4b0 + TRUNCATED = 4c93cf18 + HOTP = 755224 + + COUNT = 1 + COUNTER = 1 + INTERMEDIATE = 75a48a19d4cbe100644e8ac1397eea747a2d33ab + TRUNCATED = 41397eea + HOTP = 287082 + + COUNT = 2 + COUNTER = 2 + INTERMEDIATE = 0bacb7fa082fef30782211938bc1c5e70416ff44 + TRUNCATED = 82fef30 + HOTP = 359152 + + COUNT = 3 + COUNTER = 3 + INTERMEDIATE = 66c28227d03a2d5529262ff016a1e6ef76557ece + TRUNCATED = 66ef7655 + HOTP = 969429 + """).splitlines() + + assert load_nist_vectors(vector_data) == [ + { + "counter": b"0", + "intermediate": b"cc93cf18508d94934c64b65d8ba7667fb7cde4b0", + "truncated": b"4c93cf18", + "hotp": b"755224", + }, + { + "counter": b"1", + "intermediate": b"75a48a19d4cbe100644e8ac1397eea747a2d33ab", + "truncated": b"41397eea", + "hotp": b"287082", + }, + { + "counter": b"2", + "intermediate": b"0bacb7fa082fef30782211938bc1c5e70416ff44", + "truncated": b"82fef30", + "hotp": b"359152", + }, + { + "counter": b"3", + "intermediate": b"66c28227d03a2d5529262ff016a1e6ef76557ece", + "truncated": b"66ef7655", + "hotp": b"969429", + }, + ] + + +def test_load_totp_vectors(): + vector_data = textwrap.dedent(""" + # TOTP Test Vectors + # RFC 6238 Appendix B + + COUNT = 0 + TIME = 59 + TOTP = 94287082 + MODE = SHA1 + + COUNT = 1 + TIME = 59 + TOTP = 46119246 + MODE = SHA256 + + COUNT = 2 + TIME = 59 + TOTP = 90693936 + MODE = SHA512 + """).splitlines() + + assert load_nist_vectors(vector_data) == [ + { + "time": b"59", + "totp": b"94287082", + "mode": b"SHA1", + }, + { + "time": b"59", + "totp": b"46119246", + "mode": b"SHA256", + }, + { + "time": b"59", + "totp": b"90693936", + "mode": b"SHA512", + }, + ] -- cgit v1.2.3 From eb795d2b7797d1e90b615962fcc0b91ed1328431 Mon Sep 17 00:00:00 2001 From: Ayrx Date: Sun, 9 Feb 2014 23:13:20 +0800 Subject: Renamed vectors/otp to vectors/oath --- tests/hazmat/primitives/vectors/oath/rfc-4226.txt | 62 +++++++++++++++ tests/hazmat/primitives/vectors/oath/rfc-6238.txt | 92 +++++++++++++++++++++++ tests/hazmat/primitives/vectors/otp/rfc-4226.txt | 62 --------------- tests/hazmat/primitives/vectors/otp/rfc-6238.txt | 92 ----------------------- 4 files changed, 154 insertions(+), 154 deletions(-) create mode 100644 tests/hazmat/primitives/vectors/oath/rfc-4226.txt create mode 100644 tests/hazmat/primitives/vectors/oath/rfc-6238.txt delete mode 100644 tests/hazmat/primitives/vectors/otp/rfc-4226.txt delete mode 100644 tests/hazmat/primitives/vectors/otp/rfc-6238.txt diff --git a/tests/hazmat/primitives/vectors/oath/rfc-4226.txt b/tests/hazmat/primitives/vectors/oath/rfc-4226.txt new file mode 100644 index 00000000..377f155b --- /dev/null +++ b/tests/hazmat/primitives/vectors/oath/rfc-4226.txt @@ -0,0 +1,62 @@ +# HOTP Test Vectors +# RFC 4226 Appendix D + +COUNT = 0 +COUNTER = 0 +INTERMEDIATE = cc93cf18508d94934c64b65d8ba7667fb7cde4b0 +TRUNCATED = 4c93cf18 +HOTP = 755224 + +COUNT = 1 +COUNTER = 1 +INTERMEDIATE = 75a48a19d4cbe100644e8ac1397eea747a2d33ab +TRUNCATED = 41397eea +HOTP = 287082 + +COUNT = 2 +COUNTER = 2 +INTERMEDIATE = 0bacb7fa082fef30782211938bc1c5e70416ff44 +TRUNCATED = 82fef30 +HOTP = 359152 + +COUNT = 3 +COUNTER = 3 +INTERMEDIATE = 66c28227d03a2d5529262ff016a1e6ef76557ece +TRUNCATED = 66ef7655 +HOTP = 969429 + +COUNT = 4 +COUNTER = 4 +INTERMEDIATE = a904c900a64b35909874b33e61c5938a8e15ed1c +TRUNCATED = 61c5938a +HOTP = 338314 + +COUNT = 5 +COUNTER = 5 +INTERMEDIATE = a37e783d7b7233c083d4f62926c7a25f238d0316 +TRUNCATED = 33c083d4 +HOTP = 254676 + +COUNT = 6 +COUNTER = 6 +INTERMEDIATE = bc9cd28561042c83f219324d3c607256c03272ae +TRUNCATED = 7256c032 +HOTP = 287922 + +COUNT = 7 +COUNTER = 7 +INTERMEDIATE = a4fb960c0bc06e1eabb804e5b397cdc4b45596fa +TRUNCATED = 4e5b397 +HOTP = 162583 + +COUNT = 8 +COUNTER = 8 +INTERMEDIATE = 1b3c89f65e6c9e883012052823443f048b4332db +TRUNCATED = 2823443f +HOTP = 399871 + +COUNT = 9 +COUNTER = 9 +INTERMEDIATE = 1637409809a679dc698207310c8c7fc07290d9e5 +TRUNCATED = 2679dc69 +HOTP = 520489 diff --git a/tests/hazmat/primitives/vectors/oath/rfc-6238.txt b/tests/hazmat/primitives/vectors/oath/rfc-6238.txt new file mode 100644 index 00000000..bec4ed28 --- /dev/null +++ b/tests/hazmat/primitives/vectors/oath/rfc-6238.txt @@ -0,0 +1,92 @@ +# TOTP Test Vectors +# RFC 6238 Appendix B + +COUNT = 0 +TIME = 59 +TOTP = 94287082 +MODE = SHA1 + +COUNT = 1 +TIME = 59 +TOTP = 46119246 +MODE = SHA256 + +COUNT = 2 +TIME = 59 +TOTP = 90693936 +MODE = SHA512 + +COUNT = 3 +TIME = 1111111109 +TOTP = 07081804 +MODE = SHA1 + +COUNT = 4 +TIME = 1111111109 +TOTP = 68084774 +MODE = SHA256 + +COUNT = 5 +TIME = 1111111109 +TOTP = 25091201 +MODE = SHA512 + +COUNT = 6 +TIME = 1111111111 +TOTP = 14050471 +MODE = SHA1 + +COUNT = 7 +TIME = 1111111111 +TOTP = 67062674 +MODE = SHA256 + +COUNT = 8 +TIME = 1111111111 +TOTP = 99943326 +MODE = SHA512 + +COUNT = 9 +TIME = 1234567890 +TOTP = 89005924 +MODE = SHA1 + +COUNT = 10 +TIME = 1234567890 +TOTP = 91819424 +MODE = SHA256 + +COUNT = 11 +TIME = 1234567890 +TOTP = 93441116 +MODE = SHA512 + +COUNT = 12 +TIME = 2000000000 +TOTP = 69279037 +MODE = SHA1 + +COUNT = 13 +TIME = 2000000000 +TOTP = 69279037 +MODE = SHA256 + +COUNT = 14 +TIME = 2000000000 +TOTP = 69279037 +MODE = SHA512 + +COUNT = 15 +TIME = 20000000000 +TOTP = 65353130 +MODE = SHA1 + +COUNT = 16 +TIME = 20000000000 +TOTP = 77737706 +MODE = SHA256 + +COUNT = 17 +TIME = 20000000000 +TOTP = 47863826 +MODE = SHA512 diff --git a/tests/hazmat/primitives/vectors/otp/rfc-4226.txt b/tests/hazmat/primitives/vectors/otp/rfc-4226.txt deleted file mode 100644 index 377f155b..00000000 --- a/tests/hazmat/primitives/vectors/otp/rfc-4226.txt +++ /dev/null @@ -1,62 +0,0 @@ -# HOTP Test Vectors -# RFC 4226 Appendix D - -COUNT = 0 -COUNTER = 0 -INTERMEDIATE = cc93cf18508d94934c64b65d8ba7667fb7cde4b0 -TRUNCATED = 4c93cf18 -HOTP = 755224 - -COUNT = 1 -COUNTER = 1 -INTERMEDIATE = 75a48a19d4cbe100644e8ac1397eea747a2d33ab -TRUNCATED = 41397eea -HOTP = 287082 - -COUNT = 2 -COUNTER = 2 -INTERMEDIATE = 0bacb7fa082fef30782211938bc1c5e70416ff44 -TRUNCATED = 82fef30 -HOTP = 359152 - -COUNT = 3 -COUNTER = 3 -INTERMEDIATE = 66c28227d03a2d5529262ff016a1e6ef76557ece -TRUNCATED = 66ef7655 -HOTP = 969429 - -COUNT = 4 -COUNTER = 4 -INTERMEDIATE = a904c900a64b35909874b33e61c5938a8e15ed1c -TRUNCATED = 61c5938a -HOTP = 338314 - -COUNT = 5 -COUNTER = 5 -INTERMEDIATE = a37e783d7b7233c083d4f62926c7a25f238d0316 -TRUNCATED = 33c083d4 -HOTP = 254676 - -COUNT = 6 -COUNTER = 6 -INTERMEDIATE = bc9cd28561042c83f219324d3c607256c03272ae -TRUNCATED = 7256c032 -HOTP = 287922 - -COUNT = 7 -COUNTER = 7 -INTERMEDIATE = a4fb960c0bc06e1eabb804e5b397cdc4b45596fa -TRUNCATED = 4e5b397 -HOTP = 162583 - -COUNT = 8 -COUNTER = 8 -INTERMEDIATE = 1b3c89f65e6c9e883012052823443f048b4332db -TRUNCATED = 2823443f -HOTP = 399871 - -COUNT = 9 -COUNTER = 9 -INTERMEDIATE = 1637409809a679dc698207310c8c7fc07290d9e5 -TRUNCATED = 2679dc69 -HOTP = 520489 diff --git a/tests/hazmat/primitives/vectors/otp/rfc-6238.txt b/tests/hazmat/primitives/vectors/otp/rfc-6238.txt deleted file mode 100644 index bec4ed28..00000000 --- a/tests/hazmat/primitives/vectors/otp/rfc-6238.txt +++ /dev/null @@ -1,92 +0,0 @@ -# TOTP Test Vectors -# RFC 6238 Appendix B - -COUNT = 0 -TIME = 59 -TOTP = 94287082 -MODE = SHA1 - -COUNT = 1 -TIME = 59 -TOTP = 46119246 -MODE = SHA256 - -COUNT = 2 -TIME = 59 -TOTP = 90693936 -MODE = SHA512 - -COUNT = 3 -TIME = 1111111109 -TOTP = 07081804 -MODE = SHA1 - -COUNT = 4 -TIME = 1111111109 -TOTP = 68084774 -MODE = SHA256 - -COUNT = 5 -TIME = 1111111109 -TOTP = 25091201 -MODE = SHA512 - -COUNT = 6 -TIME = 1111111111 -TOTP = 14050471 -MODE = SHA1 - -COUNT = 7 -TIME = 1111111111 -TOTP = 67062674 -MODE = SHA256 - -COUNT = 8 -TIME = 1111111111 -TOTP = 99943326 -MODE = SHA512 - -COUNT = 9 -TIME = 1234567890 -TOTP = 89005924 -MODE = SHA1 - -COUNT = 10 -TIME = 1234567890 -TOTP = 91819424 -MODE = SHA256 - -COUNT = 11 -TIME = 1234567890 -TOTP = 93441116 -MODE = SHA512 - -COUNT = 12 -TIME = 2000000000 -TOTP = 69279037 -MODE = SHA1 - -COUNT = 13 -TIME = 2000000000 -TOTP = 69279037 -MODE = SHA256 - -COUNT = 14 -TIME = 2000000000 -TOTP = 69279037 -MODE = SHA512 - -COUNT = 15 -TIME = 20000000000 -TOTP = 65353130 -MODE = SHA1 - -COUNT = 16 -TIME = 20000000000 -TOTP = 77737706 -MODE = SHA256 - -COUNT = 17 -TIME = 20000000000 -TOTP = 47863826 -MODE = SHA512 -- cgit v1.2.3 From efc68383ecb17c88fe1df8ed84b3f3d0e08a6dfc Mon Sep 17 00:00:00 2001 From: Ayrx Date: Mon, 10 Feb 2014 00:01:05 +0800 Subject: Updated vectors to include secret. --- tests/hazmat/primitives/vectors/oath/rfc-4226.txt | 18 ++++++++++++++++++ tests/hazmat/primitives/vectors/oath/rfc-6238.txt | 18 ++++++++++++++++++ tests/test_utils.py | 16 ++++++++++++++++ 3 files changed, 52 insertions(+) diff --git a/tests/hazmat/primitives/vectors/oath/rfc-4226.txt b/tests/hazmat/primitives/vectors/oath/rfc-4226.txt index 377f155b..35f7f8d7 100644 --- a/tests/hazmat/primitives/vectors/oath/rfc-4226.txt +++ b/tests/hazmat/primitives/vectors/oath/rfc-4226.txt @@ -6,57 +6,75 @@ COUNTER = 0 INTERMEDIATE = cc93cf18508d94934c64b65d8ba7667fb7cde4b0 TRUNCATED = 4c93cf18 HOTP = 755224 +SECRET = 12345678901234567890 COUNT = 1 COUNTER = 1 INTERMEDIATE = 75a48a19d4cbe100644e8ac1397eea747a2d33ab TRUNCATED = 41397eea HOTP = 287082 +SECRET = 12345678901234567890 + COUNT = 2 COUNTER = 2 INTERMEDIATE = 0bacb7fa082fef30782211938bc1c5e70416ff44 TRUNCATED = 82fef30 HOTP = 359152 +SECRET = 12345678901234567890 + COUNT = 3 COUNTER = 3 INTERMEDIATE = 66c28227d03a2d5529262ff016a1e6ef76557ece TRUNCATED = 66ef7655 HOTP = 969429 +SECRET = 12345678901234567890 + COUNT = 4 COUNTER = 4 INTERMEDIATE = a904c900a64b35909874b33e61c5938a8e15ed1c TRUNCATED = 61c5938a HOTP = 338314 +SECRET = 12345678901234567890 + COUNT = 5 COUNTER = 5 INTERMEDIATE = a37e783d7b7233c083d4f62926c7a25f238d0316 TRUNCATED = 33c083d4 HOTP = 254676 +SECRET = 12345678901234567890 + COUNT = 6 COUNTER = 6 INTERMEDIATE = bc9cd28561042c83f219324d3c607256c03272ae TRUNCATED = 7256c032 HOTP = 287922 +SECRET = 12345678901234567890 + COUNT = 7 COUNTER = 7 INTERMEDIATE = a4fb960c0bc06e1eabb804e5b397cdc4b45596fa TRUNCATED = 4e5b397 HOTP = 162583 +SECRET = 12345678901234567890 + COUNT = 8 COUNTER = 8 INTERMEDIATE = 1b3c89f65e6c9e883012052823443f048b4332db TRUNCATED = 2823443f HOTP = 399871 +SECRET = 12345678901234567890 + COUNT = 9 COUNTER = 9 INTERMEDIATE = 1637409809a679dc698207310c8c7fc07290d9e5 TRUNCATED = 2679dc69 HOTP = 520489 +SECRET = 12345678901234567890 diff --git a/tests/hazmat/primitives/vectors/oath/rfc-6238.txt b/tests/hazmat/primitives/vectors/oath/rfc-6238.txt index bec4ed28..5c2fa114 100644 --- a/tests/hazmat/primitives/vectors/oath/rfc-6238.txt +++ b/tests/hazmat/primitives/vectors/oath/rfc-6238.txt @@ -5,88 +5,106 @@ COUNT = 0 TIME = 59 TOTP = 94287082 MODE = SHA1 +SECRET = 12345678901234567890 COUNT = 1 TIME = 59 TOTP = 46119246 MODE = SHA256 +SECRET = 12345678901234567890 COUNT = 2 TIME = 59 TOTP = 90693936 MODE = SHA512 +SECRET = 12345678901234567890 COUNT = 3 TIME = 1111111109 TOTP = 07081804 MODE = SHA1 +SECRET = 12345678901234567890 COUNT = 4 TIME = 1111111109 TOTP = 68084774 MODE = SHA256 +SECRET = 12345678901234567890 COUNT = 5 TIME = 1111111109 TOTP = 25091201 MODE = SHA512 +SECRET = 12345678901234567890 COUNT = 6 TIME = 1111111111 TOTP = 14050471 MODE = SHA1 +SECRET = 12345678901234567890 COUNT = 7 TIME = 1111111111 TOTP = 67062674 MODE = SHA256 +SECRET = 12345678901234567890 COUNT = 8 TIME = 1111111111 TOTP = 99943326 MODE = SHA512 +SECRET = 12345678901234567890 COUNT = 9 TIME = 1234567890 TOTP = 89005924 MODE = SHA1 +SECRET = 12345678901234567890 COUNT = 10 TIME = 1234567890 TOTP = 91819424 MODE = SHA256 +SECRET = 12345678901234567890 COUNT = 11 TIME = 1234567890 TOTP = 93441116 MODE = SHA512 +SECRET = 12345678901234567890 COUNT = 12 TIME = 2000000000 TOTP = 69279037 MODE = SHA1 +SECRET = 12345678901234567890 COUNT = 13 TIME = 2000000000 TOTP = 69279037 MODE = SHA256 +SECRET = 12345678901234567890 COUNT = 14 TIME = 2000000000 TOTP = 69279037 MODE = SHA512 +SECRET = 12345678901234567890 COUNT = 15 TIME = 20000000000 TOTP = 65353130 MODE = SHA1 +SECRET = 12345678901234567890 COUNT = 16 TIME = 20000000000 TOTP = 77737706 MODE = SHA256 +SECRET = 12345678901234567890 COUNT = 17 TIME = 20000000000 TOTP = 47863826 MODE = SHA512 +SECRET = 12345678901234567890 diff --git a/tests/test_utils.py b/tests/test_utils.py index 901c0281..a0571ad6 100644 --- a/tests/test_utils.py +++ b/tests/test_utils.py @@ -838,24 +838,30 @@ def test_load_hotp_vectors(): INTERMEDIATE = cc93cf18508d94934c64b65d8ba7667fb7cde4b0 TRUNCATED = 4c93cf18 HOTP = 755224 + SECRET = 12345678901234567890 COUNT = 1 COUNTER = 1 INTERMEDIATE = 75a48a19d4cbe100644e8ac1397eea747a2d33ab TRUNCATED = 41397eea HOTP = 287082 + SECRET = 12345678901234567890 + COUNT = 2 COUNTER = 2 INTERMEDIATE = 0bacb7fa082fef30782211938bc1c5e70416ff44 TRUNCATED = 82fef30 HOTP = 359152 + SECRET = 12345678901234567890 + COUNT = 3 COUNTER = 3 INTERMEDIATE = 66c28227d03a2d5529262ff016a1e6ef76557ece TRUNCATED = 66ef7655 HOTP = 969429 + SECRET = 12345678901234567890 """).splitlines() assert load_nist_vectors(vector_data) == [ @@ -864,24 +870,28 @@ def test_load_hotp_vectors(): "intermediate": b"cc93cf18508d94934c64b65d8ba7667fb7cde4b0", "truncated": b"4c93cf18", "hotp": b"755224", + "secret": b"12345678901234567890", }, { "counter": b"1", "intermediate": b"75a48a19d4cbe100644e8ac1397eea747a2d33ab", "truncated": b"41397eea", "hotp": b"287082", + "secret": b"12345678901234567890", }, { "counter": b"2", "intermediate": b"0bacb7fa082fef30782211938bc1c5e70416ff44", "truncated": b"82fef30", "hotp": b"359152", + "secret": b"12345678901234567890", }, { "counter": b"3", "intermediate": b"66c28227d03a2d5529262ff016a1e6ef76557ece", "truncated": b"66ef7655", "hotp": b"969429", + "secret": b"12345678901234567890", }, ] @@ -895,16 +905,19 @@ def test_load_totp_vectors(): TIME = 59 TOTP = 94287082 MODE = SHA1 + SECRET = 12345678901234567890 COUNT = 1 TIME = 59 TOTP = 46119246 MODE = SHA256 + SECRET = 12345678901234567890 COUNT = 2 TIME = 59 TOTP = 90693936 MODE = SHA512 + SECRET = 12345678901234567890 """).splitlines() assert load_nist_vectors(vector_data) == [ @@ -912,15 +925,18 @@ def test_load_totp_vectors(): "time": b"59", "totp": b"94287082", "mode": b"SHA1", + "secret": b"12345678901234567890", }, { "time": b"59", "totp": b"46119246", "mode": b"SHA256", + "secret": b"12345678901234567890", }, { "time": b"59", "totp": b"90693936", "mode": b"SHA512", + "secret": b"12345678901234567890", }, ] -- cgit v1.2.3 From 9f08ec19952170b4f43b072cc73809ffd83f38d6 Mon Sep 17 00:00:00 2001 From: Ayrx Date: Mon, 10 Feb 2014 00:21:24 +0800 Subject: Fixed error in totp test vectors. --- tests/hazmat/primitives/vectors/oath/rfc-6238.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/hazmat/primitives/vectors/oath/rfc-6238.txt b/tests/hazmat/primitives/vectors/oath/rfc-6238.txt index 5c2fa114..cc209950 100644 --- a/tests/hazmat/primitives/vectors/oath/rfc-6238.txt +++ b/tests/hazmat/primitives/vectors/oath/rfc-6238.txt @@ -81,13 +81,13 @@ SECRET = 12345678901234567890 COUNT = 13 TIME = 2000000000 -TOTP = 69279037 +TOTP = 90698825 MODE = SHA256 SECRET = 12345678901234567890 COUNT = 14 TIME = 2000000000 -TOTP = 69279037 +TOTP = 38618901 MODE = SHA512 SECRET = 12345678901234567890 -- cgit v1.2.3