polyval-testvecs.h 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. /* SPDX-License-Identifier: GPL-2.0-or-later */
  2. /* This file was generated by: ./scripts/crypto/gen-hash-testvecs.py polyval */
  3. static const struct {
  4. size_t data_len;
  5. u8 digest[POLYVAL_DIGEST_SIZE];
  6. } hash_testvecs[] = {
  7. {
  8. .data_len = 0,
  9. .digest = {
  10. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  11. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  12. },
  13. },
  14. {
  15. .data_len = 1,
  16. .digest = {
  17. 0xb5, 0x51, 0x69, 0x89, 0xd4, 0x3c, 0x59, 0xca,
  18. 0x6a, 0x1c, 0x2a, 0xe9, 0xa1, 0x9c, 0x6c, 0x83,
  19. },
  20. },
  21. {
  22. .data_len = 2,
  23. .digest = {
  24. 0xf4, 0x50, 0xaf, 0x07, 0xda, 0x42, 0xa7, 0x41,
  25. 0x4d, 0x24, 0x88, 0x87, 0xe3, 0x40, 0x73, 0x7c,
  26. },
  27. },
  28. {
  29. .data_len = 3,
  30. .digest = {
  31. 0x9e, 0x88, 0x78, 0x71, 0x4c, 0x55, 0x87, 0xe8,
  32. 0xb4, 0x96, 0x3d, 0x56, 0xc8, 0xb2, 0xe1, 0x68,
  33. },
  34. },
  35. {
  36. .data_len = 16,
  37. .digest = {
  38. 0x9e, 0x81, 0x37, 0x8f, 0x49, 0xf7, 0xa2, 0xe4,
  39. 0x04, 0x45, 0x12, 0x78, 0x45, 0x42, 0x27, 0xad,
  40. },
  41. },
  42. {
  43. .data_len = 32,
  44. .digest = {
  45. 0x60, 0x19, 0xd0, 0xa4, 0xf0, 0xde, 0x9e, 0xe7,
  46. 0x6a, 0x89, 0x1a, 0xea, 0x80, 0x14, 0xa9, 0xa3,
  47. },
  48. },
  49. {
  50. .data_len = 48,
  51. .digest = {
  52. 0x0c, 0xa2, 0x70, 0x4d, 0x7c, 0x89, 0xac, 0x41,
  53. 0xc2, 0x9e, 0x0d, 0x07, 0x07, 0x6a, 0x7f, 0xd5,
  54. },
  55. },
  56. {
  57. .data_len = 49,
  58. .digest = {
  59. 0x91, 0xd3, 0xa9, 0x5c, 0x79, 0x3d, 0x6b, 0x84,
  60. 0x99, 0x54, 0xa7, 0xb4, 0x06, 0x66, 0xfd, 0x1c,
  61. },
  62. },
  63. {
  64. .data_len = 63,
  65. .digest = {
  66. 0x29, 0x37, 0xb8, 0xe5, 0xd8, 0x27, 0x4d, 0xfb,
  67. 0x83, 0x4f, 0x67, 0xf7, 0xf9, 0xc1, 0x0a, 0x9d,
  68. },
  69. },
  70. {
  71. .data_len = 64,
  72. .digest = {
  73. 0x17, 0xa9, 0x06, 0x2c, 0xf3, 0xe8, 0x2e, 0xa6,
  74. 0x6b, 0xb2, 0x1f, 0x5d, 0x94, 0x3c, 0x02, 0xa2,
  75. },
  76. },
  77. {
  78. .data_len = 65,
  79. .digest = {
  80. 0x7c, 0x80, 0x74, 0xd7, 0xa1, 0x37, 0x30, 0x64,
  81. 0x3b, 0xa4, 0xa3, 0x98, 0xde, 0x47, 0x10, 0x23,
  82. },
  83. },
  84. {
  85. .data_len = 127,
  86. .digest = {
  87. 0x27, 0x3a, 0xcf, 0xf5, 0xaf, 0x9f, 0xd8, 0xd8,
  88. 0x2d, 0x6a, 0x91, 0xfb, 0xb8, 0xfa, 0xbe, 0x0c,
  89. },
  90. },
  91. {
  92. .data_len = 128,
  93. .digest = {
  94. 0x97, 0x6e, 0xc4, 0xbe, 0x6b, 0x15, 0xa6, 0x7c,
  95. 0xc4, 0xa2, 0xb8, 0x0a, 0x0e, 0x9c, 0xc7, 0x3a,
  96. },
  97. },
  98. {
  99. .data_len = 129,
  100. .digest = {
  101. 0x2b, 0xc3, 0x98, 0xba, 0x6e, 0x42, 0xf8, 0x18,
  102. 0x85, 0x69, 0x15, 0x37, 0x10, 0x60, 0xe6, 0xac,
  103. },
  104. },
  105. {
  106. .data_len = 256,
  107. .digest = {
  108. 0x88, 0x21, 0x77, 0x89, 0xd7, 0x93, 0x90, 0xfc,
  109. 0xf3, 0xb0, 0xe3, 0xfb, 0x14, 0xe2, 0xcf, 0x74,
  110. },
  111. },
  112. {
  113. .data_len = 511,
  114. .digest = {
  115. 0x66, 0x3d, 0x3e, 0x08, 0xa0, 0x49, 0x81, 0x68,
  116. 0x3e, 0x3b, 0xc8, 0x80, 0x55, 0xd4, 0x15, 0xe9,
  117. },
  118. },
  119. {
  120. .data_len = 513,
  121. .digest = {
  122. 0x05, 0xf5, 0x06, 0x66, 0xe7, 0x11, 0x08, 0x84,
  123. 0xff, 0x94, 0x50, 0x85, 0x65, 0x95, 0x2a, 0x20,
  124. },
  125. },
  126. {
  127. .data_len = 1000,
  128. .digest = {
  129. 0xd3, 0xa0, 0x51, 0x69, 0xb5, 0x38, 0xae, 0x1b,
  130. 0xe1, 0xa2, 0x89, 0xc6, 0x8d, 0x2b, 0x62, 0x37,
  131. },
  132. },
  133. {
  134. .data_len = 3333,
  135. .digest = {
  136. 0x37, 0x6d, 0x6a, 0x14, 0xdc, 0xa5, 0x37, 0xfc,
  137. 0xfe, 0x67, 0x76, 0xb2, 0x64, 0x68, 0x64, 0x05,
  138. },
  139. },
  140. {
  141. .data_len = 4096,
  142. .digest = {
  143. 0xe3, 0x12, 0x0c, 0x58, 0x46, 0x45, 0x27, 0x7a,
  144. 0x0e, 0xa2, 0xfa, 0x2c, 0x35, 0x73, 0x6c, 0x94,
  145. },
  146. },
  147. {
  148. .data_len = 4128,
  149. .digest = {
  150. 0x63, 0x0d, 0xa1, 0xbc, 0x6e, 0x3e, 0xd3, 0x1d,
  151. 0x28, 0x52, 0xd2, 0xf4, 0x30, 0x2d, 0xff, 0xc4,
  152. },
  153. },
  154. {
  155. .data_len = 4160,
  156. .digest = {
  157. 0xb2, 0x91, 0x49, 0xe2, 0x02, 0x98, 0x00, 0x79,
  158. 0x71, 0xb9, 0xd7, 0xd4, 0xb5, 0x94, 0x6d, 0x7d,
  159. },
  160. },
  161. {
  162. .data_len = 4224,
  163. .digest = {
  164. 0x58, 0x96, 0x48, 0x69, 0x05, 0x17, 0xe1, 0x6d,
  165. 0xbc, 0xf2, 0x3d, 0x10, 0x96, 0x00, 0x74, 0x58,
  166. },
  167. },
  168. {
  169. .data_len = 16384,
  170. .digest = {
  171. 0x99, 0x3c, 0xcb, 0x4d, 0x64, 0xc9, 0xa9, 0x41,
  172. 0x52, 0x93, 0xfd, 0x65, 0xc4, 0xcc, 0xa5, 0xe5,
  173. },
  174. },
  175. };
  176. static const u8 hash_testvec_consolidated[POLYVAL_DIGEST_SIZE] = {
  177. 0xdf, 0x68, 0x52, 0x99, 0x92, 0xc3, 0xe8, 0x88,
  178. 0x29, 0x13, 0xc8, 0x35, 0x67, 0xa3, 0xd3, 0xad,
  179. };
  180. static const u8 polyval_allones_hashofhashes[POLYVAL_DIGEST_SIZE] = {
  181. 0xd5, 0xf7, 0xfd, 0xb2, 0xa6, 0xef, 0x0b, 0x85,
  182. 0x0d, 0x0a, 0x06, 0x10, 0xbc, 0x64, 0x94, 0x73,
  183. };