sleeping_kangaroo12 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (291) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +34 -67
  3. data/ext/Rakefile +12 -37
  4. data/ext/binding/sleeping_kangaroo12.c +1 -16
  5. data/ext/{xkcp → k12}/Makefile +0 -0
  6. data/ext/k12/Makefile.build +118 -0
  7. data/ext/k12/README.markdown +86 -0
  8. data/ext/k12/lib/ARMv8Asha3/KeccakP-1600-ARMv8Asha3.S +623 -0
  9. data/ext/k12/lib/ARMv8Asha3/KeccakP-1600-SnP.h +65 -0
  10. data/ext/k12/lib/ARMv8Asha3/KeccakP-1600-opt64.c +227 -0
  11. data/ext/{xkcp/lib/low/KeccakP-1600/compact → k12/lib/Inplace32BI}/KeccakP-1600-SnP.h +4 -9
  12. data/ext/{xkcp/lib/low/KeccakP-1600/plain-32bits-inplace → k12/lib/Inplace32BI}/KeccakP-1600-inplace32BI.c +65 -160
  13. data/ext/k12/lib/KangarooTwelve.c +332 -0
  14. data/ext/{xkcp/lib/high/KangarooTwelve → k12/lib}/KangarooTwelve.h +53 -16
  15. data/ext/{xkcp/lib/low/KeccakP-1600/AVX2 → k12/lib/Optimized64}/KeccakP-1600-AVX2.s +122 -558
  16. data/ext/k12/lib/Optimized64/KeccakP-1600-AVX512-plainC.c +241 -0
  17. data/ext/k12/lib/Optimized64/KeccakP-1600-AVX512.s +551 -0
  18. data/ext/k12/lib/Optimized64/KeccakP-1600-SnP.h +74 -0
  19. data/ext/{xkcp/lib/low/KeccakP-1600/common/KeccakP-1600-64.macros → k12/lib/Optimized64/KeccakP-1600-opt64.c} +447 -169
  20. data/ext/k12/lib/Optimized64/KeccakP-1600-runtimeDispatch.c +406 -0
  21. data/ext/k12/lib/Optimized64/KeccakP-1600-timesN-AVX2.c +419 -0
  22. data/ext/k12/lib/Optimized64/KeccakP-1600-timesN-AVX512.c +458 -0
  23. data/ext/k12/lib/Optimized64/KeccakP-1600-timesN-SSSE3.c +438 -0
  24. data/ext/{xkcp/lib/low/KeccakP-1600/plain-64bits → k12/lib/Plain64}/KeccakP-1600-SnP.h +14 -20
  25. data/ext/{xkcp/lib/low/KeccakP-1600/ref-64bits/KeccakP-1600-reference.h → k12/lib/Plain64/KeccakP-1600-plain64.c} +9 -8
  26. data/ext/{xkcp/lib/common → k12/lib}/align.h +3 -2
  27. data/ext/{xkcp/lib/common → k12/lib}/brg_endian.h +0 -0
  28. data/ext/{xkcp → k12}/support/Build/ExpandProducts.xsl +0 -0
  29. data/ext/{xkcp → k12}/support/Build/ToGlobalMakefile.xsl +0 -0
  30. data/ext/{xkcp → k12}/support/Build/ToOneTarget.xsl +0 -0
  31. data/ext/{xkcp → k12}/support/Build/ToTargetConfigFile.xsl +0 -0
  32. data/ext/{xkcp → k12}/support/Build/ToTargetMakefile.xsl +10 -16
  33. data/ext/{xkcp → k12}/support/Build/ToVCXProj.xsl +0 -0
  34. data/lib/sleeping_kangaroo12/version.rb +1 -1
  35. metadata +33 -276
  36. data/ext/config/xkcp.build +0 -17
  37. data/ext/xkcp/LICENSE +0 -1
  38. data/ext/xkcp/Makefile.build +0 -200
  39. data/ext/xkcp/README.markdown +0 -296
  40. data/ext/xkcp/lib/HighLevel.build +0 -143
  41. data/ext/xkcp/lib/LowLevel.build +0 -757
  42. data/ext/xkcp/lib/high/KangarooTwelve/KangarooTwelve.c +0 -301
  43. data/ext/xkcp/lib/high/Keccak/FIPS202/KeccakHash.c +0 -81
  44. data/ext/xkcp/lib/high/Keccak/FIPS202/KeccakHash.h +0 -125
  45. data/ext/xkcp/lib/high/Keccak/FIPS202/SimpleFIPS202.c +0 -48
  46. data/ext/xkcp/lib/high/Keccak/FIPS202/SimpleFIPS202.h +0 -79
  47. data/ext/xkcp/lib/high/Keccak/KeccakDuplex.c +0 -81
  48. data/ext/xkcp/lib/high/Keccak/KeccakDuplex.h +0 -73
  49. data/ext/xkcp/lib/high/Keccak/KeccakDuplex.inc +0 -195
  50. data/ext/xkcp/lib/high/Keccak/KeccakSponge.c +0 -111
  51. data/ext/xkcp/lib/high/Keccak/KeccakSponge.h +0 -76
  52. data/ext/xkcp/lib/high/Keccak/KeccakSponge.inc +0 -314
  53. data/ext/xkcp/lib/high/Keccak/PRG/KeccakPRG.c +0 -61
  54. data/ext/xkcp/lib/high/Keccak/PRG/KeccakPRG.h +0 -67
  55. data/ext/xkcp/lib/high/Keccak/PRG/KeccakPRG.inc +0 -128
  56. data/ext/xkcp/lib/high/Keccak/SP800-185/SP800-185.c +0 -93
  57. data/ext/xkcp/lib/high/Keccak/SP800-185/SP800-185.h +0 -599
  58. data/ext/xkcp/lib/high/Keccak/SP800-185/SP800-185.inc +0 -573
  59. data/ext/xkcp/lib/high/Ketje/Ketjev2.c +0 -87
  60. data/ext/xkcp/lib/high/Ketje/Ketjev2.h +0 -88
  61. data/ext/xkcp/lib/high/Ketje/Ketjev2.inc +0 -274
  62. data/ext/xkcp/lib/high/Keyak/Keyakv2.c +0 -132
  63. data/ext/xkcp/lib/high/Keyak/Keyakv2.h +0 -217
  64. data/ext/xkcp/lib/high/Keyak/Keyakv2.inc +0 -81
  65. data/ext/xkcp/lib/high/Keyak/Motorist.inc +0 -953
  66. data/ext/xkcp/lib/high/Kravatte/Kravatte.c +0 -533
  67. data/ext/xkcp/lib/high/Kravatte/Kravatte.h +0 -115
  68. data/ext/xkcp/lib/high/Kravatte/KravatteModes.c +0 -557
  69. data/ext/xkcp/lib/high/Kravatte/KravatteModes.h +0 -247
  70. data/ext/xkcp/lib/high/Xoodyak/Cyclist.h +0 -66
  71. data/ext/xkcp/lib/high/Xoodyak/Cyclist.inc +0 -336
  72. data/ext/xkcp/lib/high/Xoodyak/Xoodyak-parameters.h +0 -26
  73. data/ext/xkcp/lib/high/Xoodyak/Xoodyak.c +0 -55
  74. data/ext/xkcp/lib/high/Xoodyak/Xoodyak.h +0 -35
  75. data/ext/xkcp/lib/high/Xoofff/Xoofff.c +0 -634
  76. data/ext/xkcp/lib/high/Xoofff/Xoofff.h +0 -147
  77. data/ext/xkcp/lib/high/Xoofff/XoofffModes.c +0 -483
  78. data/ext/xkcp/lib/high/Xoofff/XoofffModes.h +0 -241
  79. data/ext/xkcp/lib/high/common/Phases.h +0 -25
  80. data/ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-SnP.h +0 -41
  81. data/ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-inplace-32bi-armv6m-le-armcc.s +0 -1666
  82. data/ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-inplace-32bi-armv6m-le-gcc.s +0 -1655
  83. data/ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-inplace-32bi-armv7a-le-armcc.s +0 -1268
  84. data/ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-inplace-32bi-armv7a-le-gcc.s +0 -1264
  85. data/ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-inplace-32bi-armv7m-le-armcc.s +0 -1178
  86. data/ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-inplace-32bi-armv7m-le-gcc.s +0 -1175
  87. data/ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-u1-32bi-armv6m-le-armcc.s +0 -1338
  88. data/ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-u1-32bi-armv6m-le-gcc.s +0 -1336
  89. data/ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-u2-32bi-armv6m-le-armcc.s +0 -1343
  90. data/ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-u2-32bi-armv6m-le-gcc.s +0 -1339
  91. data/ext/xkcp/lib/low/KeccakP-1600/ARMv7A-NEON/KeccakP-1600-SnP.h +0 -42
  92. data/ext/xkcp/lib/low/KeccakP-1600/ARMv7A-NEON/KeccakP-1600-armv7a-le-neon-armcc.s +0 -823
  93. data/ext/xkcp/lib/low/KeccakP-1600/ARMv7A-NEON/KeccakP-1600-armv7a-le-neon-gcc.s +0 -831
  94. data/ext/xkcp/lib/low/KeccakP-1600/ARMv8A/KeccakP-1600-SnP.h +0 -31
  95. data/ext/xkcp/lib/low/KeccakP-1600/ARMv8A/KeccakP-1600-armv8a-neon.s +0 -540
  96. data/ext/xkcp/lib/low/KeccakP-1600/AVR8/KeccakP-1600-SnP.h +0 -42
  97. data/ext/xkcp/lib/low/KeccakP-1600/AVR8/KeccakP-1600-avr8-compact.s +0 -733
  98. data/ext/xkcp/lib/low/KeccakP-1600/AVR8/KeccakP-1600-avr8-fast.s +0 -1121
  99. data/ext/xkcp/lib/low/KeccakP-1600/AVX2/KeccakP-1600-SnP.h +0 -52
  100. data/ext/xkcp/lib/low/KeccakP-1600/AVX512/C/KeccakP-1600-AVX512.c +0 -623
  101. data/ext/xkcp/lib/low/KeccakP-1600/AVX512/C/KeccakP-1600-SnP.h +0 -47
  102. data/ext/xkcp/lib/low/KeccakP-1600/AVX512/C/u12/KeccakP-1600-AVX512-config.h +0 -6
  103. data/ext/xkcp/lib/low/KeccakP-1600/AVX512/C/u6/KeccakP-1600-AVX512-config.h +0 -6
  104. data/ext/xkcp/lib/low/KeccakP-1600/AVX512/C/ua/KeccakP-1600-AVX512-config.h +0 -6
  105. data/ext/xkcp/lib/low/KeccakP-1600/AVX512/KeccakP-1600-AVX512.s +0 -1031
  106. data/ext/xkcp/lib/low/KeccakP-1600/AVX512/KeccakP-1600-SnP.h +0 -53
  107. data/ext/xkcp/lib/low/KeccakP-1600/XOP/KeccakP-1600-SnP.h +0 -44
  108. data/ext/xkcp/lib/low/KeccakP-1600/XOP/KeccakP-1600-XOP.c +0 -476
  109. data/ext/xkcp/lib/low/KeccakP-1600/XOP/u6/KeccakP-1600-XOP-config.h +0 -6
  110. data/ext/xkcp/lib/low/KeccakP-1600/XOP/ua/KeccakP-1600-XOP-config.h +0 -6
  111. data/ext/xkcp/lib/low/KeccakP-1600/common/KeccakP-1600-unrolling.macros +0 -305
  112. data/ext/xkcp/lib/low/KeccakP-1600/compact/KeccakP-1600-compact64.c +0 -420
  113. data/ext/xkcp/lib/low/KeccakP-1600/plain-32bits-inplace/KeccakP-1600-SnP.h +0 -43
  114. data/ext/xkcp/lib/low/KeccakP-1600/plain-64bits/KeccakP-1600-opt64.c +0 -565
  115. data/ext/xkcp/lib/low/KeccakP-1600/plain-64bits/lcu6/KeccakP-1600-opt64-config.h +0 -7
  116. data/ext/xkcp/lib/low/KeccakP-1600/plain-64bits/lcua/KeccakP-1600-opt64-config.h +0 -7
  117. data/ext/xkcp/lib/low/KeccakP-1600/plain-64bits/lcua-shld/KeccakP-1600-opt64-config.h +0 -8
  118. data/ext/xkcp/lib/low/KeccakP-1600/plain-64bits/u6/KeccakP-1600-opt64-config.h +0 -6
  119. data/ext/xkcp/lib/low/KeccakP-1600/plain-64bits/ua/KeccakP-1600-opt64-config.h +0 -6
  120. data/ext/xkcp/lib/low/KeccakP-1600/ref-32bits/KeccakP-1600-SnP.h +0 -44
  121. data/ext/xkcp/lib/low/KeccakP-1600/ref-32bits/KeccakP-1600-reference.h +0 -23
  122. data/ext/xkcp/lib/low/KeccakP-1600/ref-32bits/KeccakP-1600-reference32BI.c +0 -625
  123. data/ext/xkcp/lib/low/KeccakP-1600/ref-64bits/KeccakP-1600-SnP.h +0 -44
  124. data/ext/xkcp/lib/low/KeccakP-1600/ref-64bits/KeccakP-1600-reference.c +0 -440
  125. data/ext/xkcp/lib/low/KeccakP-1600/x86-64/KeccakP-1600-SnP.h +0 -42
  126. data/ext/xkcp/lib/low/KeccakP-1600/x86-64/KeccakP-1600-x86-64-gas.s +0 -1196
  127. data/ext/xkcp/lib/low/KeccakP-1600/x86-64/KeccakP-1600-x86-64-gas_Apple.s +0 -1124
  128. data/ext/xkcp/lib/low/KeccakP-1600/x86-64/KeccakP-1600-x86-64-shld-gas.s +0 -1196
  129. data/ext/xkcp/lib/low/KeccakP-1600-times2/ARMv7A-NEON/KeccakP-1600-inplace-pl2-armv7a-neon-le-armcc.s +0 -1392
  130. data/ext/xkcp/lib/low/KeccakP-1600-times2/ARMv7A-NEON/KeccakP-1600-inplace-pl2-armv7a-neon-le-gcc.s +0 -1394
  131. data/ext/xkcp/lib/low/KeccakP-1600-times2/ARMv7A-NEON/KeccakP-1600-times2-SnP.h +0 -42
  132. data/ext/xkcp/lib/low/KeccakP-1600-times2/AVX512/AVX512u12/SIMD512-2-config.h +0 -7
  133. data/ext/xkcp/lib/low/KeccakP-1600-times2/AVX512/AVX512u4/SIMD512-2-config.h +0 -7
  134. data/ext/xkcp/lib/low/KeccakP-1600-times2/AVX512/AVX512ufull/SIMD512-2-config.h +0 -7
  135. data/ext/xkcp/lib/low/KeccakP-1600-times2/AVX512/KeccakP-1600-times2-SIMD512.c +0 -850
  136. data/ext/xkcp/lib/low/KeccakP-1600-times2/AVX512/KeccakP-1600-times2-SnP.h +0 -51
  137. data/ext/xkcp/lib/low/KeccakP-1600-times2/SIMD128/KeccakP-1600-times2-SIMD128.c +0 -957
  138. data/ext/xkcp/lib/low/KeccakP-1600-times2/SIMD128/KeccakP-1600-times2-SnP.h +0 -49
  139. data/ext/xkcp/lib/low/KeccakP-1600-times2/SIMD128/SSSE3-u2/SIMD128-config.h +0 -8
  140. data/ext/xkcp/lib/low/KeccakP-1600-times2/SIMD128/SSSE3-ua/SIMD128-config.h +0 -8
  141. data/ext/xkcp/lib/low/KeccakP-1600-times2/SIMD128/XOP-u2/SIMD128-config.h +0 -9
  142. data/ext/xkcp/lib/low/KeccakP-1600-times2/SIMD128/XOP-ua/SIMD128-config.h +0 -9
  143. data/ext/xkcp/lib/low/KeccakP-1600-times2/fallback-on1/KeccakP-1600-times2-SnP.h +0 -45
  144. data/ext/xkcp/lib/low/KeccakP-1600-times2/fallback-on1/KeccakP-1600-times2-on1.c +0 -37
  145. data/ext/xkcp/lib/low/KeccakP-1600-times4/AVX2/KeccakP-1600-times4-SIMD256.c +0 -1321
  146. data/ext/xkcp/lib/low/KeccakP-1600-times4/AVX2/KeccakP-1600-times4-SnP.h +0 -55
  147. data/ext/xkcp/lib/low/KeccakP-1600-times4/AVX2/u12/SIMD256-config.h +0 -7
  148. data/ext/xkcp/lib/low/KeccakP-1600-times4/AVX2/u6/SIMD256-config.h +0 -7
  149. data/ext/xkcp/lib/low/KeccakP-1600-times4/AVX2/ua/SIMD256-config.h +0 -7
  150. data/ext/xkcp/lib/low/KeccakP-1600-times4/AVX512/AVX512u12/SIMD512-4-config.h +0 -7
  151. data/ext/xkcp/lib/low/KeccakP-1600-times4/AVX512/AVX512u4/SIMD512-4-config.h +0 -7
  152. data/ext/xkcp/lib/low/KeccakP-1600-times4/AVX512/AVX512ufull/SIMD512-4-config.h +0 -7
  153. data/ext/xkcp/lib/low/KeccakP-1600-times4/AVX512/KeccakP-1600-times4-SIMD512.c +0 -881
  154. data/ext/xkcp/lib/low/KeccakP-1600-times4/AVX512/KeccakP-1600-times4-SnP.h +0 -51
  155. data/ext/xkcp/lib/low/KeccakP-1600-times4/fallback-on1/KeccakP-1600-times4-SnP.h +0 -45
  156. data/ext/xkcp/lib/low/KeccakP-1600-times4/fallback-on1/KeccakP-1600-times4-on1.c +0 -37
  157. data/ext/xkcp/lib/low/KeccakP-1600-times4/fallback-on2/KeccakP-1600-times4-SnP.h +0 -45
  158. data/ext/xkcp/lib/low/KeccakP-1600-times4/fallback-on2/KeccakP-1600-times4-on2.c +0 -38
  159. data/ext/xkcp/lib/low/KeccakP-1600-times8/AVX512/KeccakP-1600-times8-SIMD512.c +0 -1615
  160. data/ext/xkcp/lib/low/KeccakP-1600-times8/AVX512/KeccakP-1600-times8-SnP.h +0 -57
  161. data/ext/xkcp/lib/low/KeccakP-1600-times8/AVX512/u12/SIMD512-config.h +0 -7
  162. data/ext/xkcp/lib/low/KeccakP-1600-times8/AVX512/u4/SIMD512-config.h +0 -7
  163. data/ext/xkcp/lib/low/KeccakP-1600-times8/AVX512/ua/SIMD512-config.h +0 -7
  164. data/ext/xkcp/lib/low/KeccakP-1600-times8/fallback-on1/KeccakP-1600-times8-SnP.h +0 -45
  165. data/ext/xkcp/lib/low/KeccakP-1600-times8/fallback-on1/KeccakP-1600-times8-on1.c +0 -37
  166. data/ext/xkcp/lib/low/KeccakP-1600-times8/fallback-on2/KeccakP-1600-times8-SnP.h +0 -45
  167. data/ext/xkcp/lib/low/KeccakP-1600-times8/fallback-on2/KeccakP-1600-times8-on2.c +0 -38
  168. data/ext/xkcp/lib/low/KeccakP-1600-times8/fallback-on4/KeccakP-1600-times8-SnP.h +0 -45
  169. data/ext/xkcp/lib/low/KeccakP-1600-times8/fallback-on4/KeccakP-1600-times8-on4.c +0 -38
  170. data/ext/xkcp/lib/low/KeccakP-200/ARM/KeccakP-200-SnP.h +0 -41
  171. data/ext/xkcp/lib/low/KeccakP-200/ARM/KeccakP-200-armv6m-le-armcc.s +0 -442
  172. data/ext/xkcp/lib/low/KeccakP-200/ARM/KeccakP-200-armv6m-le-gcc.s +0 -446
  173. data/ext/xkcp/lib/low/KeccakP-200/ARM/KeccakP-200-armv7m-le-armcc.s +0 -419
  174. data/ext/xkcp/lib/low/KeccakP-200/ARM/KeccakP-200-armv7m-le-gcc.s +0 -427
  175. data/ext/xkcp/lib/low/KeccakP-200/AVR8/KeccakP-200-SnP.h +0 -41
  176. data/ext/xkcp/lib/low/KeccakP-200/AVR8/KeccakP-200-avr8-fast.s +0 -647
  177. data/ext/xkcp/lib/low/KeccakP-200/compact/KeccakP-200-SnP.h +0 -39
  178. data/ext/xkcp/lib/low/KeccakP-200/compact/KeccakP-200-compact.c +0 -190
  179. data/ext/xkcp/lib/low/KeccakP-200/ref/KeccakP-200-SnP.h +0 -43
  180. data/ext/xkcp/lib/low/KeccakP-200/ref/KeccakP-200-reference.c +0 -412
  181. data/ext/xkcp/lib/low/KeccakP-200/ref/KeccakP-200-reference.h +0 -23
  182. data/ext/xkcp/lib/low/KeccakP-400/ARM/KeccakP-400-SnP.h +0 -41
  183. data/ext/xkcp/lib/low/KeccakP-400/ARM/KeccakP-400-armv6m-le-armcc.s +0 -454
  184. data/ext/xkcp/lib/low/KeccakP-400/ARM/KeccakP-400-armv6m-le-gcc.s +0 -458
  185. data/ext/xkcp/lib/low/KeccakP-400/ARM/KeccakP-400-armv7m-le-armcc.s +0 -455
  186. data/ext/xkcp/lib/low/KeccakP-400/ARM/KeccakP-400-armv7m-le-gcc.s +0 -458
  187. data/ext/xkcp/lib/low/KeccakP-400/AVR8/KeccakP-400-SnP.h +0 -41
  188. data/ext/xkcp/lib/low/KeccakP-400/AVR8/KeccakP-400-avr8-fast.s +0 -728
  189. data/ext/xkcp/lib/low/KeccakP-400/ref/KeccakP-400-SnP.h +0 -43
  190. data/ext/xkcp/lib/low/KeccakP-400/ref/KeccakP-400-reference.c +0 -414
  191. data/ext/xkcp/lib/low/KeccakP-400/ref/KeccakP-400-reference.h +0 -23
  192. data/ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-SnP.h +0 -42
  193. data/ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-u1-armv6m-le-armcc.s +0 -527
  194. data/ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-u1-armv6m-le-gcc.s +0 -533
  195. data/ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-u2-armv6m-le-armcc.s +0 -528
  196. data/ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-u2-armv6m-le-gcc.s +0 -534
  197. data/ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-u2-armv7a-le-armcc.s +0 -521
  198. data/ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-u2-armv7a-le-gcc.s +0 -527
  199. data/ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-u2-armv7m-le-armcc.s +0 -517
  200. data/ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-u2-armv7m-le-gcc.s +0 -523
  201. data/ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-uf-armv7m-le-armcc.s +0 -550
  202. data/ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-uf-armv7m-le-gcc.s +0 -556
  203. data/ext/xkcp/lib/low/KeccakP-800/ARMv8A/KeccakP-800-SnP.h +0 -32
  204. data/ext/xkcp/lib/low/KeccakP-800/ARMv8A/KeccakP-800-armv8a-neon.s +0 -432
  205. data/ext/xkcp/lib/low/KeccakP-800/AVR8/KeccakP-800-SnP.h +0 -42
  206. data/ext/xkcp/lib/low/KeccakP-800/AVR8/KeccakP-800-avr8-fast.s +0 -929
  207. data/ext/xkcp/lib/low/KeccakP-800/compact/KeccakP-800-SnP.h +0 -40
  208. data/ext/xkcp/lib/low/KeccakP-800/compact/KeccakP-800-compact.c +0 -244
  209. data/ext/xkcp/lib/low/KeccakP-800/plain/KeccakP-800-SnP.h +0 -46
  210. data/ext/xkcp/lib/low/KeccakP-800/plain/KeccakP-800-opt32-bis.macros +0 -184
  211. data/ext/xkcp/lib/low/KeccakP-800/plain/KeccakP-800-opt32.c +0 -454
  212. data/ext/xkcp/lib/low/KeccakP-800/plain/KeccakP-800-opt32.macros +0 -459
  213. data/ext/xkcp/lib/low/KeccakP-800/plain/KeccakP-800-unrolling-bis.macros +0 -83
  214. data/ext/xkcp/lib/low/KeccakP-800/plain/KeccakP-800-unrolling.macros +0 -88
  215. data/ext/xkcp/lib/low/KeccakP-800/plain/lcu2/KeccakP-800-opt32-config.h +0 -7
  216. data/ext/xkcp/lib/low/KeccakP-800/plain/lcua/KeccakP-800-opt32-config.h +0 -7
  217. data/ext/xkcp/lib/low/KeccakP-800/plain/u2/KeccakP-800-opt32-config.h +0 -7
  218. data/ext/xkcp/lib/low/KeccakP-800/plain/ua/KeccakP-800-opt32-config.h +0 -7
  219. data/ext/xkcp/lib/low/KeccakP-800/ref/KeccakP-800-SnP.h +0 -44
  220. data/ext/xkcp/lib/low/KeccakP-800/ref/KeccakP-800-reference.c +0 -437
  221. data/ext/xkcp/lib/low/KeccakP-800/ref/KeccakP-800-reference.h +0 -23
  222. data/ext/xkcp/lib/low/Ketje/OptimizedAsmARM/Ket.h +0 -57
  223. data/ext/xkcp/lib/low/Ketje/OptimizedAsmARM/KetjeJr-armv7m-le-armcc.s +0 -475
  224. data/ext/xkcp/lib/low/Ketje/OptimizedAsmARM/KetjeJr-armv7m-le-gcc.s +0 -480
  225. data/ext/xkcp/lib/low/Ketje/OptimizedAsmARM/KetjeSr-armv7m-le-armcc.s +0 -590
  226. data/ext/xkcp/lib/low/Ketje/OptimizedAsmARM/KetjeSr-armv7m-le-gcc.s +0 -590
  227. data/ext/xkcp/lib/low/Ketje/OptimizedLE/Ket.c +0 -126
  228. data/ext/xkcp/lib/low/Ketje/OptimizedLE/Ket.h +0 -68
  229. data/ext/xkcp/lib/low/Ketje/OptimizedLE/Ket.inc +0 -174
  230. data/ext/xkcp/lib/low/Ketje/SnP-compliant/Ket.c +0 -80
  231. data/ext/xkcp/lib/low/Ketje/SnP-compliant/Ket.h +0 -68
  232. data/ext/xkcp/lib/low/Ketje/SnP-compliant/Ket.inc +0 -142
  233. data/ext/xkcp/lib/low/Xoodoo/ARM/Xoodoo-SnP.h +0 -55
  234. data/ext/xkcp/lib/low/Xoodoo/ARM/Xoodoo-u1-armv6m-le-armcc.s +0 -1086
  235. data/ext/xkcp/lib/low/Xoodoo/ARM/Xoodoo-u1-armv6m-le-gcc.s +0 -1092
  236. data/ext/xkcp/lib/low/Xoodoo/ARM/Xoodoo-uf-armv6-le-armcc.s +0 -721
  237. data/ext/xkcp/lib/low/Xoodoo/ARM/Xoodoo-uf-armv6-le-gcc.s +0 -726
  238. data/ext/xkcp/lib/low/Xoodoo/ARM/Xoodoo-uf-armv7m-le-armcc.s +0 -723
  239. data/ext/xkcp/lib/low/Xoodoo/ARM/Xoodoo-uf-armv7m-le-gcc.s +0 -729
  240. data/ext/xkcp/lib/low/Xoodoo/ARM/Xoodyak-u1-armv6m-le-armcc.s +0 -1164
  241. data/ext/xkcp/lib/low/Xoodoo/ARM/Xoodyak-u1-armv6m-le-gcc.s +0 -1165
  242. data/ext/xkcp/lib/low/Xoodoo/ARM/Xoodyak-uf-armv6-le-armcc.s +0 -562
  243. data/ext/xkcp/lib/low/Xoodoo/ARM/Xoodyak-uf-armv6-le-gcc.s +0 -563
  244. data/ext/xkcp/lib/low/Xoodoo/ARM/Xoodyak-uf-armv7m-le-armcc.s +0 -563
  245. data/ext/xkcp/lib/low/Xoodoo/ARM/Xoodyak-uf-armv7m-le-gcc.s +0 -565
  246. data/ext/xkcp/lib/low/Xoodoo/ARMv7A-NEON/Xoodoo-SnP.h +0 -55
  247. data/ext/xkcp/lib/low/Xoodoo/ARMv7A-NEON/Xoodoo-uf-armv7a-neon-le-armcc.s +0 -476
  248. data/ext/xkcp/lib/low/Xoodoo/ARMv7A-NEON/Xoodoo-uf-armv7a-neon-le-gcc.s +0 -485
  249. data/ext/xkcp/lib/low/Xoodoo/ARMv7A-NEON/Xoodyak-uf-armv7a-neon-le-armcc.s +0 -362
  250. data/ext/xkcp/lib/low/Xoodoo/ARMv7A-NEON/Xoodyak-uf-armv7a-neon-le-gcc.s +0 -367
  251. data/ext/xkcp/lib/low/Xoodoo/AVR8/Xoodoo-SnP.h +0 -43
  252. data/ext/xkcp/lib/low/Xoodoo/AVR8/Xoodoo-avr8-u1.s +0 -1341
  253. data/ext/xkcp/lib/low/Xoodoo/AVX512/Xoodoo-SIMD512.c +0 -581
  254. data/ext/xkcp/lib/low/Xoodoo/AVX512/Xoodoo-SnP.h +0 -58
  255. data/ext/xkcp/lib/low/Xoodoo/AVX512/Xoodyak-full-block-SIMD512.c +0 -332
  256. data/ext/xkcp/lib/low/Xoodoo/SSE2/Xoodoo-SIMD128.c +0 -329
  257. data/ext/xkcp/lib/low/Xoodoo/SSE2/Xoodoo-SnP.h +0 -53
  258. data/ext/xkcp/lib/low/Xoodoo/SSE2/Xoodyak-full-block-SIMD128.c +0 -355
  259. data/ext/xkcp/lib/low/Xoodoo/Xoodoo.h +0 -79
  260. data/ext/xkcp/lib/low/Xoodoo/plain/Xoodoo-SnP.h +0 -56
  261. data/ext/xkcp/lib/low/Xoodoo/plain/Xoodoo-optimized.c +0 -399
  262. data/ext/xkcp/lib/low/Xoodoo/plain/Xoodyak-full-blocks.c +0 -127
  263. data/ext/xkcp/lib/low/Xoodoo/ref/Xoodoo-SnP.h +0 -43
  264. data/ext/xkcp/lib/low/Xoodoo/ref/Xoodoo-reference.c +0 -253
  265. data/ext/xkcp/lib/low/Xoodoo-times16/AVX512/Xoodoo-times16-SIMD512.c +0 -1044
  266. data/ext/xkcp/lib/low/Xoodoo-times16/AVX512/Xoodoo-times16-SnP.h +0 -49
  267. data/ext/xkcp/lib/low/Xoodoo-times16/fallback-on1/Xoodoo-times16-SnP.h +0 -45
  268. data/ext/xkcp/lib/low/Xoodoo-times16/fallback-on1/Xoodoo-times16-on1.c +0 -37
  269. data/ext/xkcp/lib/low/Xoodoo-times4/ARMv7A-NEON/Xoodoo-times4-ARMv7A.s +0 -1587
  270. data/ext/xkcp/lib/low/Xoodoo-times4/ARMv7A-NEON/Xoodoo-times4-SnP.h +0 -48
  271. data/ext/xkcp/lib/low/Xoodoo-times4/AVX512/Xoodoo-times4-SIMD512.c +0 -1202
  272. data/ext/xkcp/lib/low/Xoodoo-times4/AVX512/Xoodoo-times4-SnP.h +0 -48
  273. data/ext/xkcp/lib/low/Xoodoo-times4/SSSE3/Xoodoo-times4-SIMD128.c +0 -484
  274. data/ext/xkcp/lib/low/Xoodoo-times4/SSSE3/Xoodoo-times4-SnP.h +0 -44
  275. data/ext/xkcp/lib/low/Xoodoo-times4/fallback-on1/Xoodoo-times4-SnP.h +0 -45
  276. data/ext/xkcp/lib/low/Xoodoo-times4/fallback-on1/Xoodoo-times4-on1.c +0 -37
  277. data/ext/xkcp/lib/low/Xoodoo-times8/AVX2/Xoodoo-times8-SIMD256.c +0 -939
  278. data/ext/xkcp/lib/low/Xoodoo-times8/AVX2/Xoodoo-times8-SnP.h +0 -49
  279. data/ext/xkcp/lib/low/Xoodoo-times8/AVX512/Xoodoo-times8-SIMD512.c +0 -1216
  280. data/ext/xkcp/lib/low/Xoodoo-times8/AVX512/Xoodoo-times8-SnP.h +0 -48
  281. data/ext/xkcp/lib/low/Xoodoo-times8/fallback-on1/Xoodoo-times8-SnP.h +0 -45
  282. data/ext/xkcp/lib/low/Xoodoo-times8/fallback-on1/Xoodoo-times8-on1.c +0 -37
  283. data/ext/xkcp/lib/low/common/PlSnP-Fallback.inc +0 -290
  284. data/ext/xkcp/lib/low/common/SnP-Relaned.h +0 -141
  285. data/ext/xkcp/support/Kernel-PMU/Kernel-pmu.md +0 -133
  286. data/ext/xkcp/support/Kernel-PMU/Makefile +0 -8
  287. data/ext/xkcp/support/Kernel-PMU/enable_arm_pmu.c +0 -129
  288. data/ext/xkcp/support/Kernel-PMU/load-module +0 -1
  289. data/ext/xkcp/util/KeccakSum/KeccakSum.c +0 -394
  290. data/ext/xkcp/util/KeccakSum/base64.c +0 -86
  291. data/ext/xkcp/util/KeccakSum/base64.h +0 -12
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sleeping_kangaroo12
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sarun Rattanasiri
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-02-17 00:00:00.000000000 Z
11
+ date: 2022-02-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ffi
@@ -53,7 +53,7 @@ dependencies:
53
53
  - !ruby/object:Gem::Version
54
54
  version: 13.0.6
55
55
  description: This gem brought the hash algorithm, KangarooTwelve, to Ruby. It uses
56
- the official library, XKCP, by the team members behind the original paper. The implementation
56
+ the official library, K12, maintained by the Keccak team themselves. The implementation
57
57
  is highly optimized on popular hardware, including AVX512, AVX2, SSSE3 instruction
58
58
  sets.
59
59
  email: midnight_w@gmx.tw
@@ -66,278 +66,35 @@ files:
66
66
  - README.md
67
67
  - ext/Rakefile
68
68
  - ext/binding/sleeping_kangaroo12.c
69
- - ext/config/xkcp.build
70
- - ext/xkcp/LICENSE
71
- - ext/xkcp/Makefile
72
- - ext/xkcp/Makefile.build
73
- - ext/xkcp/README.markdown
74
- - ext/xkcp/lib/HighLevel.build
75
- - ext/xkcp/lib/LowLevel.build
76
- - ext/xkcp/lib/common/align.h
77
- - ext/xkcp/lib/common/brg_endian.h
78
- - ext/xkcp/lib/high/KangarooTwelve/KangarooTwelve.c
79
- - ext/xkcp/lib/high/KangarooTwelve/KangarooTwelve.h
80
- - ext/xkcp/lib/high/Keccak/FIPS202/KeccakHash.c
81
- - ext/xkcp/lib/high/Keccak/FIPS202/KeccakHash.h
82
- - ext/xkcp/lib/high/Keccak/FIPS202/SimpleFIPS202.c
83
- - ext/xkcp/lib/high/Keccak/FIPS202/SimpleFIPS202.h
84
- - ext/xkcp/lib/high/Keccak/KeccakDuplex.c
85
- - ext/xkcp/lib/high/Keccak/KeccakDuplex.h
86
- - ext/xkcp/lib/high/Keccak/KeccakDuplex.inc
87
- - ext/xkcp/lib/high/Keccak/KeccakSponge.c
88
- - ext/xkcp/lib/high/Keccak/KeccakSponge.h
89
- - ext/xkcp/lib/high/Keccak/KeccakSponge.inc
90
- - ext/xkcp/lib/high/Keccak/PRG/KeccakPRG.c
91
- - ext/xkcp/lib/high/Keccak/PRG/KeccakPRG.h
92
- - ext/xkcp/lib/high/Keccak/PRG/KeccakPRG.inc
93
- - ext/xkcp/lib/high/Keccak/SP800-185/SP800-185.c
94
- - ext/xkcp/lib/high/Keccak/SP800-185/SP800-185.h
95
- - ext/xkcp/lib/high/Keccak/SP800-185/SP800-185.inc
96
- - ext/xkcp/lib/high/Ketje/Ketjev2.c
97
- - ext/xkcp/lib/high/Ketje/Ketjev2.h
98
- - ext/xkcp/lib/high/Ketje/Ketjev2.inc
99
- - ext/xkcp/lib/high/Keyak/Keyakv2.c
100
- - ext/xkcp/lib/high/Keyak/Keyakv2.h
101
- - ext/xkcp/lib/high/Keyak/Keyakv2.inc
102
- - ext/xkcp/lib/high/Keyak/Motorist.inc
103
- - ext/xkcp/lib/high/Kravatte/Kravatte.c
104
- - ext/xkcp/lib/high/Kravatte/Kravatte.h
105
- - ext/xkcp/lib/high/Kravatte/KravatteModes.c
106
- - ext/xkcp/lib/high/Kravatte/KravatteModes.h
107
- - ext/xkcp/lib/high/Xoodyak/Cyclist.h
108
- - ext/xkcp/lib/high/Xoodyak/Cyclist.inc
109
- - ext/xkcp/lib/high/Xoodyak/Xoodyak-parameters.h
110
- - ext/xkcp/lib/high/Xoodyak/Xoodyak.c
111
- - ext/xkcp/lib/high/Xoodyak/Xoodyak.h
112
- - ext/xkcp/lib/high/Xoofff/Xoofff.c
113
- - ext/xkcp/lib/high/Xoofff/Xoofff.h
114
- - ext/xkcp/lib/high/Xoofff/XoofffModes.c
115
- - ext/xkcp/lib/high/Xoofff/XoofffModes.h
116
- - ext/xkcp/lib/high/common/Phases.h
117
- - ext/xkcp/lib/low/KeccakP-1600-times2/ARMv7A-NEON/KeccakP-1600-inplace-pl2-armv7a-neon-le-armcc.s
118
- - ext/xkcp/lib/low/KeccakP-1600-times2/ARMv7A-NEON/KeccakP-1600-inplace-pl2-armv7a-neon-le-gcc.s
119
- - ext/xkcp/lib/low/KeccakP-1600-times2/ARMv7A-NEON/KeccakP-1600-times2-SnP.h
120
- - ext/xkcp/lib/low/KeccakP-1600-times2/AVX512/AVX512u12/SIMD512-2-config.h
121
- - ext/xkcp/lib/low/KeccakP-1600-times2/AVX512/AVX512u4/SIMD512-2-config.h
122
- - ext/xkcp/lib/low/KeccakP-1600-times2/AVX512/AVX512ufull/SIMD512-2-config.h
123
- - ext/xkcp/lib/low/KeccakP-1600-times2/AVX512/KeccakP-1600-times2-SIMD512.c
124
- - ext/xkcp/lib/low/KeccakP-1600-times2/AVX512/KeccakP-1600-times2-SnP.h
125
- - ext/xkcp/lib/low/KeccakP-1600-times2/SIMD128/KeccakP-1600-times2-SIMD128.c
126
- - ext/xkcp/lib/low/KeccakP-1600-times2/SIMD128/KeccakP-1600-times2-SnP.h
127
- - ext/xkcp/lib/low/KeccakP-1600-times2/SIMD128/SSSE3-u2/SIMD128-config.h
128
- - ext/xkcp/lib/low/KeccakP-1600-times2/SIMD128/SSSE3-ua/SIMD128-config.h
129
- - ext/xkcp/lib/low/KeccakP-1600-times2/SIMD128/XOP-u2/SIMD128-config.h
130
- - ext/xkcp/lib/low/KeccakP-1600-times2/SIMD128/XOP-ua/SIMD128-config.h
131
- - ext/xkcp/lib/low/KeccakP-1600-times2/fallback-on1/KeccakP-1600-times2-SnP.h
132
- - ext/xkcp/lib/low/KeccakP-1600-times2/fallback-on1/KeccakP-1600-times2-on1.c
133
- - ext/xkcp/lib/low/KeccakP-1600-times4/AVX2/KeccakP-1600-times4-SIMD256.c
134
- - ext/xkcp/lib/low/KeccakP-1600-times4/AVX2/KeccakP-1600-times4-SnP.h
135
- - ext/xkcp/lib/low/KeccakP-1600-times4/AVX2/u12/SIMD256-config.h
136
- - ext/xkcp/lib/low/KeccakP-1600-times4/AVX2/u6/SIMD256-config.h
137
- - ext/xkcp/lib/low/KeccakP-1600-times4/AVX2/ua/SIMD256-config.h
138
- - ext/xkcp/lib/low/KeccakP-1600-times4/AVX512/AVX512u12/SIMD512-4-config.h
139
- - ext/xkcp/lib/low/KeccakP-1600-times4/AVX512/AVX512u4/SIMD512-4-config.h
140
- - ext/xkcp/lib/low/KeccakP-1600-times4/AVX512/AVX512ufull/SIMD512-4-config.h
141
- - ext/xkcp/lib/low/KeccakP-1600-times4/AVX512/KeccakP-1600-times4-SIMD512.c
142
- - ext/xkcp/lib/low/KeccakP-1600-times4/AVX512/KeccakP-1600-times4-SnP.h
143
- - ext/xkcp/lib/low/KeccakP-1600-times4/fallback-on1/KeccakP-1600-times4-SnP.h
144
- - ext/xkcp/lib/low/KeccakP-1600-times4/fallback-on1/KeccakP-1600-times4-on1.c
145
- - ext/xkcp/lib/low/KeccakP-1600-times4/fallback-on2/KeccakP-1600-times4-SnP.h
146
- - ext/xkcp/lib/low/KeccakP-1600-times4/fallback-on2/KeccakP-1600-times4-on2.c
147
- - ext/xkcp/lib/low/KeccakP-1600-times8/AVX512/KeccakP-1600-times8-SIMD512.c
148
- - ext/xkcp/lib/low/KeccakP-1600-times8/AVX512/KeccakP-1600-times8-SnP.h
149
- - ext/xkcp/lib/low/KeccakP-1600-times8/AVX512/u12/SIMD512-config.h
150
- - ext/xkcp/lib/low/KeccakP-1600-times8/AVX512/u4/SIMD512-config.h
151
- - ext/xkcp/lib/low/KeccakP-1600-times8/AVX512/ua/SIMD512-config.h
152
- - ext/xkcp/lib/low/KeccakP-1600-times8/fallback-on1/KeccakP-1600-times8-SnP.h
153
- - ext/xkcp/lib/low/KeccakP-1600-times8/fallback-on1/KeccakP-1600-times8-on1.c
154
- - ext/xkcp/lib/low/KeccakP-1600-times8/fallback-on2/KeccakP-1600-times8-SnP.h
155
- - ext/xkcp/lib/low/KeccakP-1600-times8/fallback-on2/KeccakP-1600-times8-on2.c
156
- - ext/xkcp/lib/low/KeccakP-1600-times8/fallback-on4/KeccakP-1600-times8-SnP.h
157
- - ext/xkcp/lib/low/KeccakP-1600-times8/fallback-on4/KeccakP-1600-times8-on4.c
158
- - ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-SnP.h
159
- - ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-inplace-32bi-armv6m-le-armcc.s
160
- - ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-inplace-32bi-armv6m-le-gcc.s
161
- - ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-inplace-32bi-armv7a-le-armcc.s
162
- - ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-inplace-32bi-armv7a-le-gcc.s
163
- - ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-inplace-32bi-armv7m-le-armcc.s
164
- - ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-inplace-32bi-armv7m-le-gcc.s
165
- - ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-u1-32bi-armv6m-le-armcc.s
166
- - ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-u1-32bi-armv6m-le-gcc.s
167
- - ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-u2-32bi-armv6m-le-armcc.s
168
- - ext/xkcp/lib/low/KeccakP-1600/ARM/KeccakP-1600-u2-32bi-armv6m-le-gcc.s
169
- - ext/xkcp/lib/low/KeccakP-1600/ARMv7A-NEON/KeccakP-1600-SnP.h
170
- - ext/xkcp/lib/low/KeccakP-1600/ARMv7A-NEON/KeccakP-1600-armv7a-le-neon-armcc.s
171
- - ext/xkcp/lib/low/KeccakP-1600/ARMv7A-NEON/KeccakP-1600-armv7a-le-neon-gcc.s
172
- - ext/xkcp/lib/low/KeccakP-1600/ARMv8A/KeccakP-1600-SnP.h
173
- - ext/xkcp/lib/low/KeccakP-1600/ARMv8A/KeccakP-1600-armv8a-neon.s
174
- - ext/xkcp/lib/low/KeccakP-1600/AVR8/KeccakP-1600-SnP.h
175
- - ext/xkcp/lib/low/KeccakP-1600/AVR8/KeccakP-1600-avr8-compact.s
176
- - ext/xkcp/lib/low/KeccakP-1600/AVR8/KeccakP-1600-avr8-fast.s
177
- - ext/xkcp/lib/low/KeccakP-1600/AVX2/KeccakP-1600-AVX2.s
178
- - ext/xkcp/lib/low/KeccakP-1600/AVX2/KeccakP-1600-SnP.h
179
- - ext/xkcp/lib/low/KeccakP-1600/AVX512/C/KeccakP-1600-AVX512.c
180
- - ext/xkcp/lib/low/KeccakP-1600/AVX512/C/KeccakP-1600-SnP.h
181
- - ext/xkcp/lib/low/KeccakP-1600/AVX512/C/u12/KeccakP-1600-AVX512-config.h
182
- - ext/xkcp/lib/low/KeccakP-1600/AVX512/C/u6/KeccakP-1600-AVX512-config.h
183
- - ext/xkcp/lib/low/KeccakP-1600/AVX512/C/ua/KeccakP-1600-AVX512-config.h
184
- - ext/xkcp/lib/low/KeccakP-1600/AVX512/KeccakP-1600-AVX512.s
185
- - ext/xkcp/lib/low/KeccakP-1600/AVX512/KeccakP-1600-SnP.h
186
- - ext/xkcp/lib/low/KeccakP-1600/XOP/KeccakP-1600-SnP.h
187
- - ext/xkcp/lib/low/KeccakP-1600/XOP/KeccakP-1600-XOP.c
188
- - ext/xkcp/lib/low/KeccakP-1600/XOP/u6/KeccakP-1600-XOP-config.h
189
- - ext/xkcp/lib/low/KeccakP-1600/XOP/ua/KeccakP-1600-XOP-config.h
190
- - ext/xkcp/lib/low/KeccakP-1600/common/KeccakP-1600-64.macros
191
- - ext/xkcp/lib/low/KeccakP-1600/common/KeccakP-1600-unrolling.macros
192
- - ext/xkcp/lib/low/KeccakP-1600/compact/KeccakP-1600-SnP.h
193
- - ext/xkcp/lib/low/KeccakP-1600/compact/KeccakP-1600-compact64.c
194
- - ext/xkcp/lib/low/KeccakP-1600/plain-32bits-inplace/KeccakP-1600-SnP.h
195
- - ext/xkcp/lib/low/KeccakP-1600/plain-32bits-inplace/KeccakP-1600-inplace32BI.c
196
- - ext/xkcp/lib/low/KeccakP-1600/plain-64bits/KeccakP-1600-SnP.h
197
- - ext/xkcp/lib/low/KeccakP-1600/plain-64bits/KeccakP-1600-opt64.c
198
- - ext/xkcp/lib/low/KeccakP-1600/plain-64bits/lcu6/KeccakP-1600-opt64-config.h
199
- - ext/xkcp/lib/low/KeccakP-1600/plain-64bits/lcua-shld/KeccakP-1600-opt64-config.h
200
- - ext/xkcp/lib/low/KeccakP-1600/plain-64bits/lcua/KeccakP-1600-opt64-config.h
201
- - ext/xkcp/lib/low/KeccakP-1600/plain-64bits/u6/KeccakP-1600-opt64-config.h
202
- - ext/xkcp/lib/low/KeccakP-1600/plain-64bits/ua/KeccakP-1600-opt64-config.h
203
- - ext/xkcp/lib/low/KeccakP-1600/ref-32bits/KeccakP-1600-SnP.h
204
- - ext/xkcp/lib/low/KeccakP-1600/ref-32bits/KeccakP-1600-reference.h
205
- - ext/xkcp/lib/low/KeccakP-1600/ref-32bits/KeccakP-1600-reference32BI.c
206
- - ext/xkcp/lib/low/KeccakP-1600/ref-64bits/KeccakP-1600-SnP.h
207
- - ext/xkcp/lib/low/KeccakP-1600/ref-64bits/KeccakP-1600-reference.c
208
- - ext/xkcp/lib/low/KeccakP-1600/ref-64bits/KeccakP-1600-reference.h
209
- - ext/xkcp/lib/low/KeccakP-1600/x86-64/KeccakP-1600-SnP.h
210
- - ext/xkcp/lib/low/KeccakP-1600/x86-64/KeccakP-1600-x86-64-gas.s
211
- - ext/xkcp/lib/low/KeccakP-1600/x86-64/KeccakP-1600-x86-64-gas_Apple.s
212
- - ext/xkcp/lib/low/KeccakP-1600/x86-64/KeccakP-1600-x86-64-shld-gas.s
213
- - ext/xkcp/lib/low/KeccakP-200/ARM/KeccakP-200-SnP.h
214
- - ext/xkcp/lib/low/KeccakP-200/ARM/KeccakP-200-armv6m-le-armcc.s
215
- - ext/xkcp/lib/low/KeccakP-200/ARM/KeccakP-200-armv6m-le-gcc.s
216
- - ext/xkcp/lib/low/KeccakP-200/ARM/KeccakP-200-armv7m-le-armcc.s
217
- - ext/xkcp/lib/low/KeccakP-200/ARM/KeccakP-200-armv7m-le-gcc.s
218
- - ext/xkcp/lib/low/KeccakP-200/AVR8/KeccakP-200-SnP.h
219
- - ext/xkcp/lib/low/KeccakP-200/AVR8/KeccakP-200-avr8-fast.s
220
- - ext/xkcp/lib/low/KeccakP-200/compact/KeccakP-200-SnP.h
221
- - ext/xkcp/lib/low/KeccakP-200/compact/KeccakP-200-compact.c
222
- - ext/xkcp/lib/low/KeccakP-200/ref/KeccakP-200-SnP.h
223
- - ext/xkcp/lib/low/KeccakP-200/ref/KeccakP-200-reference.c
224
- - ext/xkcp/lib/low/KeccakP-200/ref/KeccakP-200-reference.h
225
- - ext/xkcp/lib/low/KeccakP-400/ARM/KeccakP-400-SnP.h
226
- - ext/xkcp/lib/low/KeccakP-400/ARM/KeccakP-400-armv6m-le-armcc.s
227
- - ext/xkcp/lib/low/KeccakP-400/ARM/KeccakP-400-armv6m-le-gcc.s
228
- - ext/xkcp/lib/low/KeccakP-400/ARM/KeccakP-400-armv7m-le-armcc.s
229
- - ext/xkcp/lib/low/KeccakP-400/ARM/KeccakP-400-armv7m-le-gcc.s
230
- - ext/xkcp/lib/low/KeccakP-400/AVR8/KeccakP-400-SnP.h
231
- - ext/xkcp/lib/low/KeccakP-400/AVR8/KeccakP-400-avr8-fast.s
232
- - ext/xkcp/lib/low/KeccakP-400/ref/KeccakP-400-SnP.h
233
- - ext/xkcp/lib/low/KeccakP-400/ref/KeccakP-400-reference.c
234
- - ext/xkcp/lib/low/KeccakP-400/ref/KeccakP-400-reference.h
235
- - ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-SnP.h
236
- - ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-u1-armv6m-le-armcc.s
237
- - ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-u1-armv6m-le-gcc.s
238
- - ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-u2-armv6m-le-armcc.s
239
- - ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-u2-armv6m-le-gcc.s
240
- - ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-u2-armv7a-le-armcc.s
241
- - ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-u2-armv7a-le-gcc.s
242
- - ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-u2-armv7m-le-armcc.s
243
- - ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-u2-armv7m-le-gcc.s
244
- - ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-uf-armv7m-le-armcc.s
245
- - ext/xkcp/lib/low/KeccakP-800/ARM/KeccakP-800-uf-armv7m-le-gcc.s
246
- - ext/xkcp/lib/low/KeccakP-800/ARMv8A/KeccakP-800-SnP.h
247
- - ext/xkcp/lib/low/KeccakP-800/ARMv8A/KeccakP-800-armv8a-neon.s
248
- - ext/xkcp/lib/low/KeccakP-800/AVR8/KeccakP-800-SnP.h
249
- - ext/xkcp/lib/low/KeccakP-800/AVR8/KeccakP-800-avr8-fast.s
250
- - ext/xkcp/lib/low/KeccakP-800/compact/KeccakP-800-SnP.h
251
- - ext/xkcp/lib/low/KeccakP-800/compact/KeccakP-800-compact.c
252
- - ext/xkcp/lib/low/KeccakP-800/plain/KeccakP-800-SnP.h
253
- - ext/xkcp/lib/low/KeccakP-800/plain/KeccakP-800-opt32-bis.macros
254
- - ext/xkcp/lib/low/KeccakP-800/plain/KeccakP-800-opt32.c
255
- - ext/xkcp/lib/low/KeccakP-800/plain/KeccakP-800-opt32.macros
256
- - ext/xkcp/lib/low/KeccakP-800/plain/KeccakP-800-unrolling-bis.macros
257
- - ext/xkcp/lib/low/KeccakP-800/plain/KeccakP-800-unrolling.macros
258
- - ext/xkcp/lib/low/KeccakP-800/plain/lcu2/KeccakP-800-opt32-config.h
259
- - ext/xkcp/lib/low/KeccakP-800/plain/lcua/KeccakP-800-opt32-config.h
260
- - ext/xkcp/lib/low/KeccakP-800/plain/u2/KeccakP-800-opt32-config.h
261
- - ext/xkcp/lib/low/KeccakP-800/plain/ua/KeccakP-800-opt32-config.h
262
- - ext/xkcp/lib/low/KeccakP-800/ref/KeccakP-800-SnP.h
263
- - ext/xkcp/lib/low/KeccakP-800/ref/KeccakP-800-reference.c
264
- - ext/xkcp/lib/low/KeccakP-800/ref/KeccakP-800-reference.h
265
- - ext/xkcp/lib/low/Ketje/OptimizedAsmARM/Ket.h
266
- - ext/xkcp/lib/low/Ketje/OptimizedAsmARM/KetjeJr-armv7m-le-armcc.s
267
- - ext/xkcp/lib/low/Ketje/OptimizedAsmARM/KetjeJr-armv7m-le-gcc.s
268
- - ext/xkcp/lib/low/Ketje/OptimizedAsmARM/KetjeSr-armv7m-le-armcc.s
269
- - ext/xkcp/lib/low/Ketje/OptimizedAsmARM/KetjeSr-armv7m-le-gcc.s
270
- - ext/xkcp/lib/low/Ketje/OptimizedLE/Ket.c
271
- - ext/xkcp/lib/low/Ketje/OptimizedLE/Ket.h
272
- - ext/xkcp/lib/low/Ketje/OptimizedLE/Ket.inc
273
- - ext/xkcp/lib/low/Ketje/SnP-compliant/Ket.c
274
- - ext/xkcp/lib/low/Ketje/SnP-compliant/Ket.h
275
- - ext/xkcp/lib/low/Ketje/SnP-compliant/Ket.inc
276
- - ext/xkcp/lib/low/Xoodoo-times16/AVX512/Xoodoo-times16-SIMD512.c
277
- - ext/xkcp/lib/low/Xoodoo-times16/AVX512/Xoodoo-times16-SnP.h
278
- - ext/xkcp/lib/low/Xoodoo-times16/fallback-on1/Xoodoo-times16-SnP.h
279
- - ext/xkcp/lib/low/Xoodoo-times16/fallback-on1/Xoodoo-times16-on1.c
280
- - ext/xkcp/lib/low/Xoodoo-times4/ARMv7A-NEON/Xoodoo-times4-ARMv7A.s
281
- - ext/xkcp/lib/low/Xoodoo-times4/ARMv7A-NEON/Xoodoo-times4-SnP.h
282
- - ext/xkcp/lib/low/Xoodoo-times4/AVX512/Xoodoo-times4-SIMD512.c
283
- - ext/xkcp/lib/low/Xoodoo-times4/AVX512/Xoodoo-times4-SnP.h
284
- - ext/xkcp/lib/low/Xoodoo-times4/SSSE3/Xoodoo-times4-SIMD128.c
285
- - ext/xkcp/lib/low/Xoodoo-times4/SSSE3/Xoodoo-times4-SnP.h
286
- - ext/xkcp/lib/low/Xoodoo-times4/fallback-on1/Xoodoo-times4-SnP.h
287
- - ext/xkcp/lib/low/Xoodoo-times4/fallback-on1/Xoodoo-times4-on1.c
288
- - ext/xkcp/lib/low/Xoodoo-times8/AVX2/Xoodoo-times8-SIMD256.c
289
- - ext/xkcp/lib/low/Xoodoo-times8/AVX2/Xoodoo-times8-SnP.h
290
- - ext/xkcp/lib/low/Xoodoo-times8/AVX512/Xoodoo-times8-SIMD512.c
291
- - ext/xkcp/lib/low/Xoodoo-times8/AVX512/Xoodoo-times8-SnP.h
292
- - ext/xkcp/lib/low/Xoodoo-times8/fallback-on1/Xoodoo-times8-SnP.h
293
- - ext/xkcp/lib/low/Xoodoo-times8/fallback-on1/Xoodoo-times8-on1.c
294
- - ext/xkcp/lib/low/Xoodoo/ARM/Xoodoo-SnP.h
295
- - ext/xkcp/lib/low/Xoodoo/ARM/Xoodoo-u1-armv6m-le-armcc.s
296
- - ext/xkcp/lib/low/Xoodoo/ARM/Xoodoo-u1-armv6m-le-gcc.s
297
- - ext/xkcp/lib/low/Xoodoo/ARM/Xoodoo-uf-armv6-le-armcc.s
298
- - ext/xkcp/lib/low/Xoodoo/ARM/Xoodoo-uf-armv6-le-gcc.s
299
- - ext/xkcp/lib/low/Xoodoo/ARM/Xoodoo-uf-armv7m-le-armcc.s
300
- - ext/xkcp/lib/low/Xoodoo/ARM/Xoodoo-uf-armv7m-le-gcc.s
301
- - ext/xkcp/lib/low/Xoodoo/ARM/Xoodyak-u1-armv6m-le-armcc.s
302
- - ext/xkcp/lib/low/Xoodoo/ARM/Xoodyak-u1-armv6m-le-gcc.s
303
- - ext/xkcp/lib/low/Xoodoo/ARM/Xoodyak-uf-armv6-le-armcc.s
304
- - ext/xkcp/lib/low/Xoodoo/ARM/Xoodyak-uf-armv6-le-gcc.s
305
- - ext/xkcp/lib/low/Xoodoo/ARM/Xoodyak-uf-armv7m-le-armcc.s
306
- - ext/xkcp/lib/low/Xoodoo/ARM/Xoodyak-uf-armv7m-le-gcc.s
307
- - ext/xkcp/lib/low/Xoodoo/ARMv7A-NEON/Xoodoo-SnP.h
308
- - ext/xkcp/lib/low/Xoodoo/ARMv7A-NEON/Xoodoo-uf-armv7a-neon-le-armcc.s
309
- - ext/xkcp/lib/low/Xoodoo/ARMv7A-NEON/Xoodoo-uf-armv7a-neon-le-gcc.s
310
- - ext/xkcp/lib/low/Xoodoo/ARMv7A-NEON/Xoodyak-uf-armv7a-neon-le-armcc.s
311
- - ext/xkcp/lib/low/Xoodoo/ARMv7A-NEON/Xoodyak-uf-armv7a-neon-le-gcc.s
312
- - ext/xkcp/lib/low/Xoodoo/AVR8/Xoodoo-SnP.h
313
- - ext/xkcp/lib/low/Xoodoo/AVR8/Xoodoo-avr8-u1.s
314
- - ext/xkcp/lib/low/Xoodoo/AVX512/Xoodoo-SIMD512.c
315
- - ext/xkcp/lib/low/Xoodoo/AVX512/Xoodoo-SnP.h
316
- - ext/xkcp/lib/low/Xoodoo/AVX512/Xoodyak-full-block-SIMD512.c
317
- - ext/xkcp/lib/low/Xoodoo/SSE2/Xoodoo-SIMD128.c
318
- - ext/xkcp/lib/low/Xoodoo/SSE2/Xoodoo-SnP.h
319
- - ext/xkcp/lib/low/Xoodoo/SSE2/Xoodyak-full-block-SIMD128.c
320
- - ext/xkcp/lib/low/Xoodoo/Xoodoo.h
321
- - ext/xkcp/lib/low/Xoodoo/plain/Xoodoo-SnP.h
322
- - ext/xkcp/lib/low/Xoodoo/plain/Xoodoo-optimized.c
323
- - ext/xkcp/lib/low/Xoodoo/plain/Xoodyak-full-blocks.c
324
- - ext/xkcp/lib/low/Xoodoo/ref/Xoodoo-SnP.h
325
- - ext/xkcp/lib/low/Xoodoo/ref/Xoodoo-reference.c
326
- - ext/xkcp/lib/low/common/PlSnP-Fallback.inc
327
- - ext/xkcp/lib/low/common/SnP-Relaned.h
328
- - ext/xkcp/support/Build/ExpandProducts.xsl
329
- - ext/xkcp/support/Build/ToGlobalMakefile.xsl
330
- - ext/xkcp/support/Build/ToOneTarget.xsl
331
- - ext/xkcp/support/Build/ToTargetConfigFile.xsl
332
- - ext/xkcp/support/Build/ToTargetMakefile.xsl
333
- - ext/xkcp/support/Build/ToVCXProj.xsl
334
- - ext/xkcp/support/Kernel-PMU/Kernel-pmu.md
335
- - ext/xkcp/support/Kernel-PMU/Makefile
336
- - ext/xkcp/support/Kernel-PMU/enable_arm_pmu.c
337
- - ext/xkcp/support/Kernel-PMU/load-module
338
- - ext/xkcp/util/KeccakSum/KeccakSum.c
339
- - ext/xkcp/util/KeccakSum/base64.c
340
- - ext/xkcp/util/KeccakSum/base64.h
69
+ - ext/k12/Makefile
70
+ - ext/k12/Makefile.build
71
+ - ext/k12/README.markdown
72
+ - ext/k12/lib/ARMv8Asha3/KeccakP-1600-ARMv8Asha3.S
73
+ - ext/k12/lib/ARMv8Asha3/KeccakP-1600-SnP.h
74
+ - ext/k12/lib/ARMv8Asha3/KeccakP-1600-opt64.c
75
+ - ext/k12/lib/Inplace32BI/KeccakP-1600-SnP.h
76
+ - ext/k12/lib/Inplace32BI/KeccakP-1600-inplace32BI.c
77
+ - ext/k12/lib/KangarooTwelve.c
78
+ - ext/k12/lib/KangarooTwelve.h
79
+ - ext/k12/lib/Optimized64/KeccakP-1600-AVX2.s
80
+ - ext/k12/lib/Optimized64/KeccakP-1600-AVX512-plainC.c
81
+ - ext/k12/lib/Optimized64/KeccakP-1600-AVX512.s
82
+ - ext/k12/lib/Optimized64/KeccakP-1600-SnP.h
83
+ - ext/k12/lib/Optimized64/KeccakP-1600-opt64.c
84
+ - ext/k12/lib/Optimized64/KeccakP-1600-runtimeDispatch.c
85
+ - ext/k12/lib/Optimized64/KeccakP-1600-timesN-AVX2.c
86
+ - ext/k12/lib/Optimized64/KeccakP-1600-timesN-AVX512.c
87
+ - ext/k12/lib/Optimized64/KeccakP-1600-timesN-SSSE3.c
88
+ - ext/k12/lib/Plain64/KeccakP-1600-SnP.h
89
+ - ext/k12/lib/Plain64/KeccakP-1600-plain64.c
90
+ - ext/k12/lib/align.h
91
+ - ext/k12/lib/brg_endian.h
92
+ - ext/k12/support/Build/ExpandProducts.xsl
93
+ - ext/k12/support/Build/ToGlobalMakefile.xsl
94
+ - ext/k12/support/Build/ToOneTarget.xsl
95
+ - ext/k12/support/Build/ToTargetConfigFile.xsl
96
+ - ext/k12/support/Build/ToTargetMakefile.xsl
97
+ - ext/k12/support/Build/ToVCXProj.xsl
341
98
  - lib/sleeping_kangaroo12.rb
342
99
  - lib/sleeping_kangaroo12/binding.rb
343
100
  - lib/sleeping_kangaroo12/build.rb
@@ -350,7 +107,7 @@ licenses:
350
107
  - BSD-3-Clause
351
108
  metadata:
352
109
  homepage_uri: https://github.com/the-cave/sleeping-kangaroo12
353
- source_code_uri: https://github.com/the-cave/sleeping-kangaroo12/tree/v0.0.3
110
+ source_code_uri: https://github.com/the-cave/sleeping-kangaroo12/tree/v0.0.4
354
111
  post_install_message:
355
112
  rdoc_options: []
356
113
  require_paths:
@@ -1,17 +0,0 @@
1
- <build all="all" xmlns:xi="http://www.w3.org/2001/XInclude">
2
- <xi:include href="../xkcp/lib/HighLevel.build"/>
3
- <xi:include href="../xkcp/lib/LowLevel.build"/>
4
-
5
- <fragment name="common">
6
- <h>../xkcp/lib/common/align.h</h>
7
- <h>../xkcp/lib/common/brg_endian.h</h>
8
- </fragment>
9
-
10
- <target name="libK12-generic.a" inherits="KangarooTwelve K1600-compact"/>
11
- <target name="libK12-generic-64.a" inherits="KangarooTwelve K1600-plain-64bits-u6"/>
12
- <target name="libK12-ssse3.a" inherits="KangarooTwelve K1600-compact K1600x2-SSSE3-u2"/>
13
- <target name="libK12-ssse3-64.a" inherits="KangarooTwelve K1600-plain-64bits-u6 K1600x2-SSSE3-u2"/>
14
- <target name="libK12-avx2.a" inherits="KangarooTwelve K1600-AVX2 K1600x4-AVX2-u12"/>
15
- <target name="libK12-avx2-ssse3.a" inherits="KangarooTwelve K1600-AVX2 K1600x2-SSSE3-u2 K1600x4-AVX2-u12"/>
16
- <target name="libK12-avx512.a" inherits="KangarooTwelve K1600-AVX512 K1600x2-AVX512-u12 K1600x4-AVX512-u12 K1600x8-AVX512-u12"/>
17
- </build>
data/ext/xkcp/LICENSE DELETED
@@ -1 +0,0 @@
1
- See in file README.markdown, after the line starting with "# Under which license is the KCP distributed?".
@@ -1,200 +0,0 @@
1
- <?xml version="1.0"?>
2
- <!--
3
- The eXtended Keccak Code Package (XKCP)
4
- https://github.com/XKCP/XKCP
5
-
6
- Implementation by Gilles Van Assche and Ronny Van Keer, hereby denoted as "the implementer".
7
-
8
- For more information, feedback or questions, please refer to the Keccak Team website:
9
- https://keccak.team/
10
-
11
- To the extent possible under law, the implementer has waived all copyright
12
- and related or neighboring rights to the source code in this file.
13
- http://creativecommons.org/publicdomain/zero/1.0/
14
- -->
15
- <build all="all" xmlns:xi="http://www.w3.org/2001/XInclude">
16
-
17
- <xi:include href="lib/HighLevel.build"/>
18
- <xi:include href="lib/LowLevel.build"/>
19
- <xi:include href="tests/SUPERCOP/SUPERCOP.build"/>
20
- <xi:include href="tests/NIST_LWC/NIST_LWC.build"/>
21
- <xi:include href="doc/HOWTO-customize.build"/>
22
-
23
- <!-- For the name of the targets, please see the end of this file. -->
24
-
25
- <fragment name="common">
26
- <h>lib/common/align.h</h>
27
- <h>lib/common/brg_endian.h</h>
28
- </fragment>
29
-
30
- <!-- *** Utilities *** -->
31
-
32
- <!-- The unit tests -->
33
- <fragment name="UT" inherits="common">
34
- <c>tests/UnitTests/main.c</c>
35
- <c>tests/UnitTests/UT.c</c>
36
- <h>tests/UnitTests/UT.h</h>
37
- <c>tests/UnitTests/testPermutations.c</c>
38
- <h>tests/UnitTests/testPermutations.h</h>
39
- <inc>tests/UnitTests/testSnP.inc</inc>
40
- <inc>tests/UnitTests/testPlSnP.inc</inc>
41
- <c>tests/UnitTests/testSponge.c</c>
42
- <inc>tests/UnitTests/testSponge.inc</inc>
43
- <h>tests/UnitTests/testSponge.h</h>
44
- <c>tests/UnitTests/testDuplex.c</c>
45
- <inc>tests/UnitTests/testDuplex.inc</inc>
46
- <h>tests/UnitTests/testDuplex.h</h>
47
- <c>tests/UnitTests/testMotorist.c</c>
48
- <inc>tests/UnitTests/testMotorist.inc</inc>
49
- <h>tests/UnitTests/testMotorist.h</h>
50
- <c>tests/UnitTests/testKeyakv2.c</c>
51
- <inc>tests/UnitTests/testKeyakv2.inc</inc>
52
- <h>tests/UnitTests/testKeyakv2.h</h>
53
- <c>tests/UnitTests/testKetjev2.c</c>
54
- <h>tests/UnitTests/testKetjev2.h</h>
55
- <inc>tests/UnitTests/testKetjev2.inc</inc>
56
- <c>tests/UnitTests/genKAT.c</c>
57
- <h>tests/UnitTests/genKAT.h</h>
58
- <c>tests/UnitTests/testPRG.c</c>
59
- <inc>tests/UnitTests/testPRG.inc</inc>
60
- <h>tests/UnitTests/testPRG.h</h>
61
- <c>tests/UnitTests/testKangarooTwelve.c</c>
62
- <h>tests/UnitTests/testKangarooTwelve.h</h>
63
- <c>tests/UnitTests/testKravatte.c</c>
64
- <h>tests/UnitTests/testKravatte.h</h>
65
- <c>tests/UnitTests/testKravatteModes.c</c>
66
- <h>tests/UnitTests/testKravatteModes.h</h>
67
- <c>tests/UnitTests/testSP800-185.c</c>
68
- <h>tests/UnitTests/testSP800-185.h</h>
69
- <c>tests/UnitTests/testXoofff.c</c>
70
- <h>tests/UnitTests/testXoofff.h</h>
71
- <c>tests/UnitTests/testXoofffModes.c</c>
72
- <h>tests/UnitTests/testXoofffModes.h</h>
73
- <c>tests/UnitTests/testXoodyak.c</c>
74
- <h>tests/UnitTests/testXoodyak.h</h>
75
- </fragment>
76
-
77
- <fragment name="UnitTests" inherits="All UT"/>
78
-
79
-
80
- <!-- The benchmarking tool -->
81
-
82
- <fragment name="BM" inherits="common">
83
- <c>tests/Benchmarks/main.c</c>
84
- <c>tests/Benchmarks/testPerformance.c</c>
85
- <c>tests/Benchmarks/timing.c</c>
86
- <h>tests/Benchmarks/timing.h</h>
87
- <h>tests/Benchmarks/testPerformance.h</h>
88
- <inc>tests/Benchmarks/timingSnP.inc</inc>
89
- <inc>tests/Benchmarks/timingPlSnP.inc</inc>
90
- <inc>tests/Benchmarks/timingSponge.inc</inc>
91
- <inc>tests/Benchmarks/timingKeyak.inc</inc>
92
- <c>tests/Benchmarks/testXooPerformance.c</c>
93
- <h>tests/Benchmarks/testXooPerformance.h</h>
94
- <inc>tests/Benchmarks/timingXooSnP.inc</inc>
95
- <inc>tests/Benchmarks/timingXooPlSnP.inc</inc>
96
- <gcc>-lm</gcc>
97
- </fragment>
98
-
99
- <fragment name="Benchmarks" inherits="All BM"/>
100
-
101
- <!-- To compute a hash of a file -->
102
- <fragment name="KeccakSum" inherits="FIPS202 SP800-185 KangarooTwelve">
103
- <c>util/KeccakSum/KeccakSum.c</c>
104
- <c>util/KeccakSum/base64.c</c>
105
- <h>util/KeccakSum/base64.h</h>
106
- </fragment>
107
-
108
- <!-- To make a library -->
109
- <fragment name="libXKCP.a" inherits="All"/>
110
- <fragment name="libXKCP.so" inherits="All"/>
111
-
112
- <!-- *** CAESAR-related targets *** -->
113
-
114
- <fragment name="crypto_aead_test">
115
- <h>tests/SUPERCOP/test_crypto_aead.h</h>
116
- <c>tests/SUPERCOP/test_crypto_aead.c</c>
117
- </fragment>
118
-
119
- <!-- *** Targets *** -->
120
-
121
- <fragment name="serial-fallbacks" inherits="K1600x2-on1 K1600x4-on1 K1600x8-on1 Xoodoox4-on1 Xoodoox8-on1 Xoodoox16-on1"/>
122
-
123
- <!-- Reference implementations -->
124
- <fragment name="reference" inherits="K200-ref K400-ref K800-ref K1600-ref-64bits serial-fallbacks Ket-SnP Xoodoo-ref">
125
- <c>tests/UnitTests/displayIntermediateValues.c</c>
126
- <h>tests/UnitTests/displayIntermediateValues.h</h>
127
- <define>KeccakReference</define>
128
- <gcc>-O</gcc>
129
- </fragment>
130
-
131
- <!-- Reference implementations dedicated to 32-bit platforms
132
- (i.e., featuring bit interleaving for Keccak-p[1600]) -->
133
- <fragment name="reference32bits" inherits="K200-ref K400-ref K800-ref K1600-ref-32bits serial-fallbacks Ket-SnP Xoodoo-ref">
134
- <c>tests/UnitTests/displayIntermediateValues.c</c>
135
- <h>tests/UnitTests/displayIntermediateValues.h</h>
136
- <define>KeccakReference</define>
137
- <define>KeccakReference32BI</define>
138
- <gcc>-O</gcc>
139
- </fragment>
140
-
141
- <!-- Compact implementations -->
142
- <fragment name="compact" inherits="K200-compact K400-ref K800-compact K1600-compact serial-fallbacks Ket-SnP Xoodoo-plain-ua"/>
143
-
144
- <!-- Generically optimized 32-bit implementations -->
145
- <fragment name="generic32" inherits="K200-ref K400-ref K800-plain-u2 K1600-plain-32bits-inplace serial-fallbacks Ket-SnP Xoodoo-plain-ua"/>
146
- <!-- Generically optimized 32-bit implementations, featuring lane complementing -->
147
- <fragment name="generic32lc" inherits="K200-ref K400-ref K800-plain-lcu2 K1600-plain-32bits-inplace serial-fallbacks Ket-SnP Xoodoo-plain-ua"/>
148
-
149
- <!-- Generically optimized 64-bit implementations -->
150
- <fragment name="generic64" inherits="K200-ref K400-ref K800-plain-ua K1600-plain-64bits-ua serial-fallbacks Ket-SnP Xoodoo-plain-ua"/>
151
- <!-- Generically optimized 64-bit implementations, featuring lane complementing -->
152
- <fragment name="generic64lc" inherits="K200-ref K400-ref K800-plain-lcua K1600-plain-64bits-lcua serial-fallbacks Ket-SnP Xoodoo-plain-ua"/>
153
-
154
- <!-- Implementations selected for the processors that support the SSSE3 instruction set -->
155
- <fragment name="SSSE3" inherits="K200-ref K400-ref K800-plain-lcua K1600-plain-64bits-lcua K1600x2-SSSE3-u2 K1600x4-on2 K1600x8-on2 Ket-SnP Xoodoo-SSE2 Xoodoox4-SSSE3 Xoodoox8-on1 Xoodoox16-on1"/>
156
-
157
- <!-- Implementations selected for processors that support the AVX instruction set (e.g., Sandy Bridge microarchitectures) -->
158
- <fragment name="AVX" inherits="K200-ref K400-ref K800-plain-lcua K1600-plain-64bits-lcua-shld K1600x2-SSSE3-ua K1600x4-on2 K1600x8-on2 Ket-SnP Xoodoo-SSE2 Xoodoox4-SSSE3 Xoodoox8-on1 Xoodoox16-on1">
159
- <msvc>/arch:AVX</msvc>
160
- </fragment>
161
- <!-- Implementations selected for processors that support the XOP instruction set (e.g., Bulldozer microarchitecture) -->
162
- <fragment name="XOP" inherits="K200-ref K400-ref K800-plain-lcua K1600-XOP-ua K1600x2-XOP-ua K1600x4-on2 K1600x8-on2 Ket-SnP Xoodoo-SSE2 Xoodoox4-SSSE3 Xoodoox8-on1 Xoodoox16-on1"/>
163
- <!-- Implementations selected for processors that support the AVX2 instruction set (e.g., Haswell and Skylake microarchitectures) -->
164
- <fragment name="AVX2" inherits="K200-ref K400-ref K800-plain-ua K1600-AVX2 K1600x2-SSSE3-u2 K1600x4-AVX2-u12 K1600x8-on4 Ket-SnP Xoodoo-SSE2 Xoodoox4-SSSE3 Xoodoox8-AVX2 Xoodoox16-on1"/>
165
- <!-- Same, but without the assembly file (for MS Visual Studio) -->
166
- <fragment name="AVX2noAsm" inherits="K200-ref K400-ref K800-plain-ua K1600-plain-64bits-ua K1600x2-SSSE3-u2 K1600x4-AVX2-u12 K1600x8-on4 Ket-SnP Xoodoo-SSE2 Xoodoox4-SSSE3 Xoodoox8-AVX2 Xoodoox16-on1">
167
- <msvc>/arch:AVX2</msvc>
168
- </fragment>
169
-
170
- <!-- Implementations selected for the processors that support the AVX-512 instruction set (e.g., SkylakeX microarchitecture) -->
171
- <fragment name="AVX512" inherits="K200-ref K400-ref K800-plain-ua K1600-AVX512 K1600x2-AVX512-u12 K1600x4-AVX512-u12 K1600x8-AVX512-u12 Ket-SnP Xoodoo-AVX512 Xoodoox4-AVX512 Xoodoox8-AVX512 Xoodoox16-AVX512"/>
172
- <!-- Same, but without the assembly file (for MS Visual Studio) -->
173
- <fragment name="AVX512noAsm" inherits="K200-ref K400-ref K800-plain-ua K1600-AVX512-C K1600x2-AVX512-u12 K1600x4-AVX512-u12 K1600x8-AVX512-u12 Ket-SnP Xoodoo-AVX512 Xoodoox4-AVX512 Xoodoox8-AVX512 Xoodoox16-AVX512">
174
- <msvc>/arch:AVX512</msvc>
175
- </fragment>
176
-
177
- <!-- Implementations selected for ARMv6 -->
178
- <fragment name="ARMv6" inherits="K200-ARMv6M K400-ARMv6M K800-ARMv6M-u2 K1600-ARMv6M-u2 serial-fallbacks Ket-SnP Xoodoo-ARMv6"/>
179
- <!-- Implementations selected for ARMv6M -->
180
- <fragment name="ARMv6M" inherits="K200-ARMv6M K400-ARMv6M K800-ARMv6M-u2 K1600-ARMv6M-u2 serial-fallbacks Ket-SnP Xoodoo-ARMv6M"/>
181
- <!-- Implementations selected for ARMv7M -->
182
- <fragment name="ARMv7M" inherits="K200-ARMv7M K400-ARMv7M K800-ARMv7M-u2 K1600-ARMv7M-inplace serial-fallbacks Ket-ARMv7M Xoodoo-ARMv7M"/>
183
- <!-- Implementations selected for ARMv7A -->
184
- <fragment name="ARMv7A" inherits="K200-ref K400-ref K800-ARMv7A-u2 K1600-ARMv7A-NEON K1600x2-ARMv7A-NEON K1600x4-on2 K1600x8-on2 Ket-optimizedLE Xoodoo-ARMv7A-NEON Xoodoox4-ARMv7A-NEON Xoodoox8-on1 Xoodoox16-on1"/>
185
-
186
- <!-- Implementations selected for ARMv8A -->
187
- <fragment name="ARMv8A" inherits="K200-ref K400-ref K800-plain-ua K1600-plain-64bits-ua serial-fallbacks Ket-optimizedLE Xoodoo-plain-ua"/>
188
-
189
- <!-- Implementations selected for 8-bit AVR -->
190
- <fragment name="AVR8" inherits="K200-AVR8 K400-AVR8 K800-AVR8 K1600-AVR8 serial-fallbacks Ket-SnP Xoodoo-AVR8"/>
191
-
192
- <!-- Target names are of the form x/y where x is taken from the first set and y from the second set. -->
193
- <group all="XKCP">
194
- <product delimiter="/">
195
- <factor set="reference reference32bits compact generic32 generic32lc generic64 generic64lc SSSE3 AVX XOP AVX2 AVX2noAsm AVX512 AVX512noAsm ARMv6 ARMv6M ARMv7M ARMv7A ARMv8A AVR8"/>
196
- <factor set="UnitTests Benchmarks KeccakSum libXKCP.a libXKCP.so libXKCP.dylib"/>
197
- </product>
198
- </group>
199
-
200
- </build>