round 17
theta rho pi chi iota




round 17: before theta
A[0] = 0xf69a7f2a433896f7
A[1] = 0x2b9b9344b1798d5c
A[2] = 0x8ec01bb461c9a2d2
A[3] = 0x682f29c2d204d7cc
A[4] = 0xb9e5dee675c041d2
A[5] = 0x44af0503883363d0
A[6] = 0x7961e79b6169c115
A[7] = 0x5b8703008811ef99
A[8] = 0xc5a5d90dae68e305
A[9] = 0x0dadc33a37552777
A[10] = 0xe75e45679a709653
A[11] = 0xe47de8b7ac04a5d1
A[12] = 0x1190c36d3f5ebc47
A[13] = 0x5b70d85ed1a72da3
A[14] = 0xaffbdc9bc846cb4b
A[15] = 0x836e4ced32575c8e
A[16] = 0xe4e40273dbbda610
A[17] = 0x8d05b05871698251
A[18] = 0xe4fb386bfdab040f
A[19] = 0x475909036bc1eeb2
A[20] = 0xc12e8fbea966ee31
A[21] = 0xc9154bbb1fb5d586
A[22] = 0x15bb5300ec747a2b
A[23] = 0x39f36ab71d487ca2
A[24] = 0x90f397ff44814e80



round 17: theta
C[0] = A[0] ^ A[5] ^ A[10] ^ A[15] ^ A[20]
= 0xf69a7f2a433896f7 ^ 0x44af0503883363d0 ^ 0xe75e45679a709653 ^ 0x836e4ced32575c8e ^ 0xc12e8fbea966ee31
= 0x172bfc1dca4ad1cb
C[1] = A[1] ^ A[6] ^ A[11] ^ A[16] ^ A[21]
= 0x2b9b9344b1798d5c ^ 0x7961e79b6169c115 ^ 0xe47de8b7ac04a5d1 ^ 0xe4e40273dbbda610 ^ 0xc9154bbb1fb5d586
= 0x9b76d5a0b81c9a0e
C[2] = A[2] ^ A[7] ^ A[12] ^ A[17] ^ A[22]
= 0x8ec01bb461c9a2d2 ^ 0x5b8703008811ef99 ^ 0x1190c36d3f5ebc47 ^ 0x8d05b05871698251 ^ 0x15bb5300ec747a2b
= 0x5c6938814b9b0976
C[3] = A[3] ^ A[8] ^ A[13] ^ A[18] ^ A[23]
= 0x682f29c2d204d7cc ^ 0xc5a5d90dae68e305 ^ 0x5b70d85ed1a72da3 ^ 0xe4fb386bfdab040f ^ 0x39f36ab71d487ca2
= 0x2bf27a4d4d2861c7
C[4] = A[4] ^ A[9] ^ A[14] ^ A[19] ^ A[24]
= 0xb9e5dee675c041d2 ^ 0x0dadc33a37552777 ^ 0xaffbdc9bc846cb4b ^ 0x475909036bc1eeb2 ^ 0x90f397ff44814e80
= 0xcc195fbba5930ddc
D[0] = LeftRotation(C[1], 1) ^ C[4]
= LeftRotation(0x9b76d5a0b81c9a0e, 1) ^ 0xcc195fbba5930ddc
= 0x36edab417039341d ^ 0xcc195fbba5930ddc
= 0xfaf4f4fad5aa39c1
D[1] = LeftRotation(C[2], 1) ^ C[0]
= LeftRotation(0x5c6938814b9b0976, 1) ^ 0x172bfc1dca4ad1cb
= 0xb8d27102973612ec ^ 0x172bfc1dca4ad1cb
= 0xaff98d1f5d7cc327
D[2] = LeftRotation(C[3], 1) ^ C[1]
= LeftRotation(0x2bf27a4d4d2861c7, 1) ^ 0x9b76d5a0b81c9a0e
= 0x57e4f49a9a50c38e ^ 0x9b76d5a0b81c9a0e
= 0xcc92213a224c5980
D[3] = LeftRotation(C[4], 1) ^ C[2]
= LeftRotation(0xcc195fbba5930ddc, 1) ^ 0x5c6938814b9b0976
= 0x9832bf774b261bb9 ^ 0x5c6938814b9b0976
= 0xc45b87f600bd12cf
D[4] = LeftRotation(C[0], 1) ^ C[3]
= LeftRotation(0x172bfc1dca4ad1cb, 1) ^ 0x2bf27a4d4d2861c7
= 0x2e57f83b9495a396 ^ 0x2bf27a4d4d2861c7
= 0x05a58276d9bdc251
A[0] = A[0] ^ D[0]
= 0xf69a7f2a433896f7 ^ 0xfaf4f4fad5aa39c1
= 0x0c6e8bd09692af36
A[5] = A[5] ^ D[0]
= 0x44af0503883363d0 ^ 0xfaf4f4fad5aa39c1
= 0xbe5bf1f95d995a11
A[10] = A[10] ^ D[0]
= 0xe75e45679a709653 ^ 0xfaf4f4fad5aa39c1
= 0x1daab19d4fdaaf92
A[15] = A[15] ^ D[0]
= 0x836e4ced32575c8e ^ 0xfaf4f4fad5aa39c1
= 0x799ab817e7fd654f
A[20] = A[20] ^ D[0]
= 0xc12e8fbea966ee31 ^ 0xfaf4f4fad5aa39c1
= 0x3bda7b447cccd7f0
A[1] = A[1] ^ D[1]
= 0x2b9b9344b1798d5c ^ 0xaff98d1f5d7cc327
= 0x84621e5bec054e7b
A[6] = A[6] ^ D[1]
= 0x7961e79b6169c115 ^ 0xaff98d1f5d7cc327
= 0xd6986a843c150232
A[11] = A[11] ^ D[1]
= 0xe47de8b7ac04a5d1 ^ 0xaff98d1f5d7cc327
= 0x4b8465a8f17866f6
A[16] = A[16] ^ D[1]
= 0xe4e40273dbbda610 ^ 0xaff98d1f5d7cc327
= 0x4b1d8f6c86c16537
A[21] = A[21] ^ D[1]
= 0xc9154bbb1fb5d586 ^ 0xaff98d1f5d7cc327
= 0x66ecc6a442c916a1
A[2] = A[2] ^ D[2]
= 0x8ec01bb461c9a2d2 ^ 0xcc92213a224c5980
= 0x42523a8e4385fb52
A[7] = A[7] ^ D[2]
= 0x5b8703008811ef99 ^ 0xcc92213a224c5980
= 0x9715223aaa5db619
A[12] = A[12] ^ D[2]
= 0x1190c36d3f5ebc47 ^ 0xcc92213a224c5980
= 0xdd02e2571d12e5c7
A[17] = A[17] ^ D[2]
= 0x8d05b05871698251 ^ 0xcc92213a224c5980
= 0x419791625325dbd1
A[22] = A[22] ^ D[2]
= 0x15bb5300ec747a2b ^ 0xcc92213a224c5980
= 0xd929723ace3823ab
A[3] = A[3] ^ D[3]
= 0x682f29c2d204d7cc ^ 0xc45b87f600bd12cf
= 0xac74ae34d2b9c503
A[8] = A[8] ^ D[3]
= 0xc5a5d90dae68e305 ^ 0xc45b87f600bd12cf
= 0x01fe5efbaed5f1ca
A[13] = A[13] ^ D[3]
= 0x5b70d85ed1a72da3 ^ 0xc45b87f600bd12cf
= 0x9f2b5fa8d11a3f6c
A[18] = A[18] ^ D[3]
= 0xe4fb386bfdab040f ^ 0xc45b87f600bd12cf
= 0x20a0bf9dfd1616c0
A[23] = A[23] ^ D[3]
= 0x39f36ab71d487ca2 ^ 0xc45b87f600bd12cf
= 0xfda8ed411df56e6d
A[4] = A[4] ^ D[4]
= 0xb9e5dee675c041d2 ^ 0x05a58276d9bdc251
= 0xbc405c90ac7d8383
A[9] = A[9] ^ D[4]
= 0x0dadc33a37552777 ^ 0x05a58276d9bdc251
= 0x0808414ceee8e526
A[14] = A[14] ^ D[4]
= 0xaffbdc9bc846cb4b ^ 0x05a58276d9bdc251
= 0xaa5e5eed11fb091a
A[19] = A[19] ^ D[4]
= 0x475909036bc1eeb2 ^ 0x05a58276d9bdc251
= 0x42fc8b75b27c2ce3
A[24] = A[24] ^ D[4]
= 0x90f397ff44814e80 ^ 0x05a58276d9bdc251
= 0x955615899d3c8cd1



round 17: after theta
A[0] = 0x0c6e8bd09692af36
A[1] = 0x84621e5bec054e7b
A[2] = 0x42523a8e4385fb52
A[3] = 0xac74ae34d2b9c503
A[4] = 0xbc405c90ac7d8383
A[5] = 0xbe5bf1f95d995a11
A[6] = 0xd6986a843c150232
A[7] = 0x9715223aaa5db619
A[8] = 0x01fe5efbaed5f1ca
A[9] = 0x0808414ceee8e526
A[10] = 0x1daab19d4fdaaf92
A[11] = 0x4b8465a8f17866f6
A[12] = 0xdd02e2571d12e5c7
A[13] = 0x9f2b5fa8d11a3f6c
A[14] = 0xaa5e5eed11fb091a
A[15] = 0x799ab817e7fd654f
A[16] = 0x4b1d8f6c86c16537
A[17] = 0x419791625325dbd1
A[18] = 0x20a0bf9dfd1616c0
A[19] = 0x42fc8b75b27c2ce3
A[20] = 0x3bda7b447cccd7f0
A[21] = 0x66ecc6a442c916a1
A[22] = 0xd929723ace3823ab
A[23] = 0xfda8ed411df56e6d
A[24] = 0x955615899d3c8cd1



round 17: rho
A[0] = LeftRotation(A[0] , 0)
= LeftRotation(0x0c6e8bd09692af36, 0)
= 0x0c6e8bd09692af36
A[1] = LeftRotation(A[1] , 1)
= LeftRotation(0x84621e5bec054e7b, 1)
= 0x08c43cb7d80a9cf7
A[2] = LeftRotation(A[2] , 62)
= LeftRotation(0x42523a8e4385fb52, 62)
= 0x90948ea390e17ed4
A[3] = LeftRotation(A[3] , 28)
= LeftRotation(0xac74ae34d2b9c503, 28)
= 0x4d2b9c503ac74ae3
A[4] = LeftRotation(A[4] , 27)
= LeftRotation(0xbc405c90ac7d8383, 27)
= 0x8563ec1c1de202e4
A[5] = LeftRotation(A[5] , 36)
= LeftRotation(0xbe5bf1f95d995a11, 36)
= 0xd995a11be5bf1f95
A[6] = LeftRotation(A[6] , 44)
= LeftRotation(0xd6986a843c150232, 44)
= 0x50232d6986a843c1
A[7] = LeftRotation(A[7] , 6)
= LeftRotation(0x9715223aaa5db619, 6)
= 0xc5488eaa976d8665
A[8] = LeftRotation(A[8] , 55)
= LeftRotation(0x01fe5efbaed5f1ca, 55)
= 0xe500ff2f7dd76af8
A[9] = LeftRotation(A[9] , 20)
= LeftRotation(0x0808414ceee8e526, 20)
= 0x14ceee8e52608084
A[10] = LeftRotation(A[10] , 3)
= LeftRotation(0x1daab19d4fdaaf92, 3)
= 0xed558cea7ed57c90
A[11] = LeftRotation(A[11] , 10)
= LeftRotation(0x4b8465a8f17866f6, 10)
= 0x1196a3c5e19bd92e
A[12] = LeftRotation(A[12] , 43)
= LeftRotation(0xdd02e2571d12e5c7, 43)
= 0x972e3ee81712b8e8
A[13] = LeftRotation(A[13] , 25)
= LeftRotation(0x9f2b5fa8d11a3f6c, 25)
= 0x51a2347ed93e56bf
A[14] = LeftRotation(A[14] , 39)
= LeftRotation(0xaa5e5eed11fb091a, 39)
= 0xfd848d552f2f7688
A[15] = LeftRotation(A[15] , 41)
= LeftRotation(0x799ab817e7fd654f, 41)
= 0xfaca9ef335702fcf
A[16] = LeftRotation(A[16] , 45)
= LeftRotation(0x4b1d8f6c86c16537, 45)
= 0x2ca6e963b1ed90d8
A[17] = LeftRotation(A[17] , 15)
= LeftRotation(0x419791625325dbd1, 15)
= 0xc8b12992ede8a0cb
A[18] = LeftRotation(A[18] , 21)
= LeftRotation(0x20a0bf9dfd1616c0, 21)
= 0xf3bfa2c2d8041417
A[19] = LeftRotation(A[19] , 8)
= LeftRotation(0x42fc8b75b27c2ce3, 8)
= 0xfc8b75b27c2ce342
A[20] = LeftRotation(A[20] , 18)
= LeftRotation(0x3bda7b447cccd7f0, 18)
= 0xed11f3335fc0ef69
A[21] = LeftRotation(A[21] , 2)
= LeftRotation(0x66ecc6a442c916a1, 2)
= 0x9bb31a910b245a85
A[22] = LeftRotation(A[22] , 61)
= LeftRotation(0xd929723ace3823ab, 61)
= 0x7b252e4759c70475
A[23] = LeftRotation(A[23] , 56)
= LeftRotation(0xfda8ed411df56e6d, 56)
= 0x6dfda8ed411df56e



round 17: after rho
A[0] = 0x0c6e8bd09692af36
A[1] = 0x08c43cb7d80a9cf7
A[2] = 0x90948ea390e17ed4
A[3] = 0x4d2b9c503ac74ae3
A[4] = 0x8563ec1c1de202e4
A[5] = 0xd995a11be5bf1f95
A[6] = 0x50232d6986a843c1
A[7] = 0xc5488eaa976d8665
A[8] = 0xe500ff2f7dd76af8
A[9] = 0x14ceee8e52608084
A[10] = 0xed558cea7ed57c90
A[11] = 0x1196a3c5e19bd92e
A[12] = 0x972e3ee81712b8e8
A[13] = 0x51a2347ed93e56bf
A[14] = 0xfd848d552f2f7688
A[15] = 0xfaca9ef335702fcf
A[16] = 0x2ca6e963b1ed90d8
A[17] = 0xc8b12992ede8a0cb
A[18] = 0xf3bfa2c2d8041417
A[19] = 0xfc8b75b27c2ce342
A[20] = 0xed11f3335fc0ef69
A[21] = 0x9bb31a910b245a85
A[22] = 0x7b252e4759c70475
A[23] = 0x6dfda8ed411df56e
A[24] = 0x8562674f23346555



round 17: pi
A1temp = A[1]
= 0x08c43cb7d80a9cf7
A[1] = A[6]
= 0x50232d6986a843c1
A[6] = A[9]
= 0x14ceee8e52608084
A[9] = A[22]
= 0x7b252e4759c70475
A[22] = A[14]
= 0xfd848d552f2f7688
A[14] = A[20]
= 0xed11f3335fc0ef69
A[20] = A[2]
= 0x90948ea390e17ed4
A[2] = A[12]
= 0x972e3ee81712b8e8
A[12] = A[13]
= 0x51a2347ed93e56bf
A[13] = A[19]
= 0xfc8b75b27c2ce342
A[19] = A[23]
= 0x6dfda8ed411df56e
A[23] = A[15]
= 0xfaca9ef335702fcf
A[15] = A[4]
= 0x8563ec1c1de202e4
A[4] = A[24]
= 0x8562674f23346555
A[24] = A[21]
= 0x9bb31a910b245a85
A[21] = A[8]
= 0xe500ff2f7dd76af8
A[8] = A[16]
= 0x2ca6e963b1ed90d8
A[16] = A[5]
= 0xd995a11be5bf1f95
A[5] = A[3]
= 0x4d2b9c503ac74ae3
A[3] = A[18]
= 0xf3bfa2c2d8041417
A[18] = A[17]
= 0xc8b12992ede8a0cb
A[17] = A[11]
= 0x1196a3c5e19bd92e
A[11] = A[7]
= 0xc5488eaa976d8665
A[7] = A[10]
= 0xed558cea7ed57c90
A[10] = A1temp
= 0x08c43cb7d80a9cf7



round 17: after pi
A[0] = 0x0c6e8bd09692af36
A[1] = 0x50232d6986a843c1
A[2] = 0x972e3ee81712b8e8
A[3] = 0xf3bfa2c2d8041417
A[4] = 0x8562674f23346555
A[5] = 0x4d2b9c503ac74ae3
A[6] = 0x14ceee8e52608084
A[7] = 0xed558cea7ed57c90
A[8] = 0x2ca6e963b1ed90d8
A[9] = 0x7b252e4759c70475
A[10] = 0x08c43cb7d80a9cf7
A[11] = 0xc5488eaa976d8665
A[12] = 0x51a2347ed93e56bf
A[13] = 0xfc8b75b27c2ce342
A[14] = 0xed11f3335fc0ef69
A[15] = 0x8563ec1c1de202e4
A[16] = 0xd995a11be5bf1f95
A[17] = 0x1196a3c5e19bd92e
A[18] = 0xc8b12992ede8a0cb
A[19] = 0x6dfda8ed411df56e
A[20] = 0x90948ea390e17ed4
A[21] = 0xe500ff2f7dd76af8
A[22] = 0xfd848d552f2f7688
A[23] = 0xfaca9ef335702fcf
A[24] = 0x9bb31a910b245a85



round 17: chi
A0temp = A[0]
= 0x0c6e8bd09692af36
A1temp = A[1]
= 0x50232d6986a843c1
A[0] = A[0] ^ (~A1temp & A[2])
= 0x0c6e8bd09692af36 ^ (~0x50232d6986a843c1 & 0x972e3ee81712b8e8)
= 0x0c6e8bd09692af36 ^ (0xafdcd2967957bc3e & 0x972e3ee81712b8e8)
= 0x0c6e8bd09692af36 ^ 0x870c12801112b828
= 0x8b6299508780171e
A[1] = A[1] ^ (~A[2] & A[3])
= 0x50232d6986a843c1 ^ (~0x972e3ee81712b8e8 & 0xf3bfa2c2d8041417)
= 0x50232d6986a843c1 ^ (0x68d1c117e8ed4717 & 0xf3bfa2c2d8041417)
= 0x50232d6986a843c1 ^ 0x60918002c8040417
= 0x50232d6986a843c1
A[2] = A[2] ^ (~A[3] & A[4])
= 0x972e3ee81712b8e8 ^ (~0xf3bfa2c2d8041417 & 0x8562674f23346555)
= 0x972e3ee81712b8e8 ^ (0x0c405d3d27fbebe8 & 0x8562674f23346555)
= 0x972e3ee81712b8e8 ^ 0x0440450d23306140
= 0x932e22c010001000
A[3] = A[3] ^ (~A[4] & A0temp)
= 0xf3bfa2c2d8041417 ^ (~0x8562674f23346555 & 0x0c6e8bd09692af36)
= 0xf3bfa2c2d8041417 ^ (0x7a9d98b0dccb9aaa & 0x0c6e8bd09692af36)
= 0xf3bfa2c2d8041417 ^ 0x080c889094828a22
= 0xe1b3ba62cc068cbf
A[4] = A[4] ^ (~A0temp & A1temp)
= 0x8562674f23346555 ^ (~0x0c6e8bd09692af36 & 0x50232d6986a843c1)
= 0x8562674f23346555 ^ (0xf391742f696d50c9 & 0x50232d6986a843c1)
= 0x8562674f23346555 ^ 0x50012429002840c1
= 0x166253672234759d
A5temp = A[5]
= 0x4d2b9c503ac74ae3
A6temp = A[6]
= 0x14ceee8e52608084
A[5] = A[5] ^ (~A6temp & A[7])
= 0x4d2b9c503ac74ae3 ^ (~0x14ceee8e52608084 & 0xed558cea7ed57c90)
= 0x4d2b9c503ac74ae3 ^ (0xeb311171ad9f7f7b & 0xed558cea7ed57c90)
= 0x4d2b9c503ac74ae3 ^ 0xe91100602c957c10
= 0xa43a9c30165236f3
A[6] = A[6] ^ (~A[7] & A[8])
= 0x14ceee8e52608084 ^ (~0xed558cea7ed57c90 & 0x2ca6e963b1ed90d8)
= 0x14ceee8e52608084 ^ (0x12aa7315812a836f & 0x2ca6e963b1ed90d8)
= 0x14ceee8e52608084 ^ 0x00a2610181288048
= 0x14ceee8e52608084
A[7] = A[7] ^ (~A[8] & A[9])
= 0xed558cea7ed57c90 ^ (~0x2ca6e963b1ed90d8 & 0x7b252e4759c70475)
= 0xed558cea7ed57c90 ^ (0xd359169c4e126f27 & 0x7b252e4759c70475)
= 0xed558cea7ed57c90 ^ 0x5301060448020425
= 0x2c04886230c51090
A[8] = A[8] ^ (~A[9] & A5temp)
= 0x2ca6e963b1ed90d8 ^ (~0x7b252e4759c70475 & 0x4d2b9c503ac74ae3)
= 0x2ca6e963b1ed90d8 ^ (0x84dad1b8a638fb8a & 0x4d2b9c503ac74ae3)
= 0x2ca6e963b1ed90d8 ^ 0x040a901022004a82
= 0xa8f669cb97fde858
A[9] = A[9] ^ (~A5temp & A6temp)
= 0x7b252e4759c70475 ^ (~0x4d2b9c503ac74ae3 & 0x14ceee8e52608084)
= 0x7b252e4759c70475 ^ (0xb2d463afc538b51c & 0x14ceee8e52608084)
= 0x7b252e4759c70475 ^ 0x10c4628e40208004
= 0xdb712eed1dd73065
A10temp = A[10]
= 0x08c43cb7d80a9cf7
A11temp = A[11]
= 0xc5488eaa976d8665
A[10] = A[10] ^ (~A11temp & A[12])
= 0x08c43cb7d80a9cf7 ^ (~0xc5488eaa976d8665 & 0x51a2347ed93e56bf)
= 0x08c43cb7d80a9cf7 ^ (0x3ab771556892799a & 0x51a2347ed93e56bf)
= 0x08c43cb7d80a9cf7 ^ 0x10a230544812509a
= 0x18660ce39018cc6d
A[11] = A[11] ^ (~A[12] & A[13])
= 0xc5488eaa976d8665 ^ (~0x51a2347ed93e56bf & 0xfc8b75b27c2ce342)
= 0xc5488eaa976d8665 ^ (0xae5dcb8126c1a940 & 0xfc8b75b27c2ce342)
= 0xc5488eaa976d8665 ^ 0xac0941802400a140
= 0xc5488eaa976d8665
A[12] = A[12] ^ (~A[13] & A[14])
= 0x51a2347ed93e56bf ^ (~0xfc8b75b27c2ce342 & 0xed11f3335fc0ef69)
= 0x51a2347ed93e56bf ^ (0x03748a4d83d31cbd & 0xed11f3335fc0ef69)
= 0x51a2347ed93e56bf ^ 0x0110820103c00c29
= 0x50823432582c4202
A[13] = A[13] ^ (~A[14] & A10temp)
= 0xfc8b75b27c2ce342 ^ (~0xed11f3335fc0ef69 & 0x08c43cb7d80a9cf7)
= 0xfc8b75b27c2ce342 ^ (0x12ee0ccca03f1096 & 0x08c43cb7d80a9cf7)
= 0xfc8b75b27c2ce342 ^ 0x00c40c84800a1096
= 0xec2971fefc12f3d4
A[14] = A[14] ^ (~A10temp & A11temp)
= 0xed11f3335fc0ef69 ^ (~0x08c43cb7d80a9cf7 & 0xc5488eaa976d8665)
= 0xed11f3335fc0ef69 ^ (0xf73bc34827f56308 & 0xc5488eaa976d8665)
= 0xed11f3335fc0ef69 ^ 0xc508820807650200
= 0xbc33f37b5ef4ad61
A15temp = A[15]
= 0x8563ec1c1de202e4
A16temp = A[16]
= 0xd995a11be5bf1f95
A[15] = A[15] ^ (~A16temp & A[17])
= 0x8563ec1c1de202e4 ^ (~0xd995a11be5bf1f95 & 0x1196a3c5e19bd92e)
= 0x8563ec1c1de202e4 ^ (0x266a5ee41a40e06a & 0x1196a3c5e19bd92e)
= 0x8563ec1c1de202e4 ^ 0x000202c40000c02a
= 0x8561eed81de2c2ce
A[16] = A[16] ^ (~A[17] & A[18])
= 0xd995a11be5bf1f95 ^ (~0x1196a3c5e19bd92e & 0xc8b12992ede8a0cb)
= 0xd995a11be5bf1f95 ^ (0xee695c3a1e6426d1 & 0xc8b12992ede8a0cb)
= 0xd995a11be5bf1f95 ^ 0xc82108120c6020c1
= 0xd995a11be5bf1f95
A[17] = A[17] ^ (~A[18] & A[19])
= 0x1196a3c5e19bd92e ^ (~0xc8b12992ede8a0cb & 0x6dfda8ed411df56e)
= 0x1196a3c5e19bd92e ^ (0x374ed66d12175f34 & 0x6dfda8ed411df56e)
= 0x1196a3c5e19bd92e ^ 0x254c806d00155524
= 0x00902180e188800a
A[18] = A[18] ^ (~A[19] & A15temp)
= 0xc8b12992ede8a0cb ^ (~0x6dfda8ed411df56e & 0x8563ec1c1de202e4)
= 0xc8b12992ede8a0cb ^ (0x92025712bee20a91 & 0x8563ec1c1de202e4)
= 0xc8b12992ede8a0cb ^ 0x800244101ce20280
= 0xd8b32a924d6aa8cb
A[19] = A[19] ^ (~A15temp & A16temp)
= 0x6dfda8ed411df56e ^ (~0x8563ec1c1de202e4 & 0xd995a11be5bf1f95)
= 0x6dfda8ed411df56e ^ (0x7a9c13e3e21dfd1b & 0xd995a11be5bf1f95)
= 0x6dfda8ed411df56e ^ 0x58940103e01d1d11
= 0x7d69ab2ca1042c64
A20temp = A[20]
= 0x90948ea390e17ed4
A21temp = A[21]
= 0xe500ff2f7dd76af8
A[20] = A[20] ^ (~A21temp & A[22])
= 0x90948ea390e17ed4 ^ (~0xe500ff2f7dd76af8 & 0xfd848d552f2f7688)
= 0x90948ea390e17ed4 ^ (0x1aff00d082289507 & 0xfd848d552f2f7688)
= 0x90948ea390e17ed4 ^ 0x1884005002281400
= 0x88108ef392c96ad4
A[21] = A[21] ^ (~A[22] & A[23])
= 0xe500ff2f7dd76af8 ^ (~0xfd848d552f2f7688 & 0xfaca9ef335702fcf)
= 0xe500ff2f7dd76af8 ^ (0x027b72aad0d08977 & 0xfaca9ef335702fcf)
= 0xe500ff2f7dd76af8 ^ 0x024a12a210500947
= 0xe500ff2f7dd76af8
A[22] = A[22] ^ (~A[23] & A[24])
= 0xfd848d552f2f7688 ^ (~0xfaca9ef335702fcf & 0x9bb31a910b245a85)
= 0xfd848d552f2f7688 ^ (0x0535610cca8fd030 & 0x9bb31a910b245a85)
= 0xfd848d552f2f7688 ^ 0x013100000a045000
= 0xf8808c5125202688
A[23] = A[23] ^ (~A[24] & A20temp)
= 0xfaca9ef335702fcf ^ (~0x9bb31a910b245a85 & 0x90948ea390e17ed4)
= 0xfaca9ef335702fcf ^ (0x644ce56ef4dba57a & 0x90948ea390e17ed4)
= 0xfaca9ef335702fcf ^ 0x0004842290c12450
= 0x9ece1bb7117b0bc7
A[24] = A[24] ^ (~A20temp & A21temp)
= 0x9bb31a910b245a85 ^ (~0x90948ea390e17ed4 & 0xe500ff2f7dd76af8)
= 0x9bb31a910b245a85 ^ (0x6f6b715c6f1e812b & 0xe500ff2f7dd76af8)
= 0x9bb31a910b245a85 ^ 0x6500710c6d160028
= 0xf6b31bc5242a5a8d



round 17: after chi
A[0] = 0x8b6299508780171e
A[1] = 0x30b2ad6b4eac47d6
A[2] = 0x936e7be53422d9a8
A[3] = 0xfbb32a524c869e35
A[4] = 0xd5634366231c2594
A[5] = 0xa43a9c30165236f3
A[6] = 0x146c8f8fd34800cc
A[7] = 0xbe548aee36d778b5
A[8] = 0x28ac797393edda5a
A[9] = 0x6be14cc919e78471
A[10] = 0x18660ce39018cc6d
A[11] = 0x6941cf2ab36d2725
A[12] = 0x50b2b67fdafe5a96
A[13] = 0xfc4f7936fc26f3d4
A[14] = 0x2819713b58a5ed69
A[15] = 0x8561eed81de2c2ce
A[16] = 0x11b4a909e9df3f54
A[17] = 0x34da23a8e18e8c0a
A[18] = 0x48b36d82f10aa24b
A[19] = 0x3569a9eea100e87f
A[20] = 0x88108ef392c96ad4
A[21] = 0xe74aed8d6d8763bf
A[22] = 0xfcb58d55252b2688
A[23] = 0xface1ad1a5b10b9f
A[24] = 0xfeb36b9d66325aad



round 17: iota
A[0] = A[0] ^ rc[17]
= 0x8b6299508780171e ^ 0x8000000000000080
= 0x0b6299508780179e



round 17: after iota
A[0] = 0x0b6299508780179e
A[1] = 0x30b2ad6b4eac47d6
A[2] = 0x936e7be53422d9a8
A[3] = 0xfbb32a524c869e35
A[4] = 0xd5634366231c2594
A[5] = 0xa43a9c30165236f3
A[6] = 0x146c8f8fd34800cc
A[7] = 0xbe548aee36d778b5
A[8] = 0x28ac797393edda5a
A[9] = 0x6be14cc919e78471
A[10] = 0x18660ce39018cc6d
A[11] = 0x6941cf2ab36d2725
A[12] = 0x50b2b67fdafe5a96
A[13] = 0xfc4f7936fc26f3d4
A[14] = 0x2819713b58a5ed69
A[15] = 0x8561eed81de2c2ce
A[16] = 0x11b4a909e9df3f54
A[17] = 0x34da23a8e18e8c0a
A[18] = 0x48b36d82f10aa24b
A[19] = 0x3569a9eea100e87f
A[20] = 0x88108ef392c96ad4
A[21] = 0xe74aed8d6d8763bf
A[22] = 0xfcb58d55252b2688
A[23] = 0xface1ad1a5b10b9f
A[24] = 0xfeb36b9d66325aad