|
@@ -6,7 +6,9 @@ import org.junit.Test
|
6
|
6
|
|
7
|
7
|
class TotpTest {
|
8
|
8
|
|
9
|
|
- private val rfcKey = "12345678901234567890".toByteArray()
|
|
9
|
+ private val rfcKeySha1 = "12345678901234567890".toByteArray()
|
|
10
|
+ private val rfcKeySha256 = "12345678901234567890123456789012".toByteArray()
|
|
11
|
+ private val rfcKeySha512 = "1234567890123456789012345678901234567890123456789012345678901234".toByteArray()
|
10
|
12
|
|
11
|
13
|
@Test
|
12
|
14
|
fun testCount_withDefaultStepAndStart_andPastValues() {
|
|
@@ -37,12 +39,32 @@ class TotpTest {
|
37
|
39
|
|
38
|
40
|
@Test
|
39
|
41
|
fun testTotp_withRfcValues_usingSha1() {
|
40
|
|
- assert.that(totp(rfcKey, 0, 30, 59, 8), equalTo(94287082))
|
41
|
|
- assert.that(totp(rfcKey, 0, 30, 1111111109, 8), equalTo(7081804))
|
42
|
|
- assert.that(totp(rfcKey, 0, 30, 1111111111, 8), equalTo(14050471))
|
43
|
|
- assert.that(totp(rfcKey, 0, 30, 1234567890, 8), equalTo(89005924))
|
44
|
|
- assert.that(totp(rfcKey, 0, 30, 2000000000, 8), equalTo(69279037))
|
45
|
|
- assert.that(totp(rfcKey, 0, 30, 20000000000, 8), equalTo(65353130))
|
|
42
|
+ assert.that(totp(rfcKeySha1, 0, 30, 59, 8), equalTo(94287082))
|
|
43
|
+ assert.that(totp(rfcKeySha1, 0, 30, 1111111109, 8), equalTo(7081804))
|
|
44
|
+ assert.that(totp(rfcKeySha1, 0, 30, 1111111111, 8), equalTo(14050471))
|
|
45
|
+ assert.that(totp(rfcKeySha1, 0, 30, 1234567890, 8), equalTo(89005924))
|
|
46
|
+ assert.that(totp(rfcKeySha1, 0, 30, 2000000000, 8), equalTo(69279037))
|
|
47
|
+ assert.that(totp(rfcKeySha1, 0, 30, 20000000000, 8), equalTo(65353130))
|
|
48
|
+ }
|
|
49
|
+
|
|
50
|
+ @Test
|
|
51
|
+ fun testTotp_withRfcValues_usingSha256() {
|
|
52
|
+ assert.that(totp(rfcKeySha256, 0, 30, 59, 8, ::hmacSha256), equalTo(46119246))
|
|
53
|
+ assert.that(totp(rfcKeySha256, 0, 30, 1111111109, 8, ::hmacSha256), equalTo(68084774))
|
|
54
|
+ assert.that(totp(rfcKeySha256, 0, 30, 1111111111, 8, ::hmacSha256), equalTo(67062674))
|
|
55
|
+ assert.that(totp(rfcKeySha256, 0, 30, 1234567890, 8, ::hmacSha256), equalTo(91819424))
|
|
56
|
+ assert.that(totp(rfcKeySha256, 0, 30, 2000000000, 8, ::hmacSha256), equalTo(90698825))
|
|
57
|
+ assert.that(totp(rfcKeySha256, 0, 30, 20000000000, 8, ::hmacSha256), equalTo(77737706))
|
|
58
|
+ }
|
|
59
|
+
|
|
60
|
+ @Test
|
|
61
|
+ fun testTotp_withRfcValues_usingSha512() {
|
|
62
|
+ assert.that(totp(rfcKeySha512, 0, 30, 59, 8, ::hmacSha512), equalTo(90693936))
|
|
63
|
+ assert.that(totp(rfcKeySha512, 0, 30, 1111111109, 8, ::hmacSha512), equalTo(25091201))
|
|
64
|
+ assert.that(totp(rfcKeySha512, 0, 30, 1111111111, 8, ::hmacSha512), equalTo(99943326))
|
|
65
|
+ assert.that(totp(rfcKeySha512, 0, 30, 1234567890, 8, ::hmacSha512), equalTo(93441116))
|
|
66
|
+ assert.that(totp(rfcKeySha512, 0, 30, 2000000000, 8, ::hmacSha512), equalTo(38618901))
|
|
67
|
+ assert.that(totp(rfcKeySha512, 0, 30, 20000000000, 8, ::hmacSha512), equalTo(47863826))
|
46
|
68
|
}
|
47
|
69
|
|
48
|
70
|
}
|