pq_crypto 0.4.2 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (408) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +25 -0
  3. data/GET_STARTED.md +21 -16
  4. data/README.md +26 -0
  5. data/SECURITY.md +22 -16
  6. data/ext/pqcrypto/extconf.rb +148 -99
  7. data/ext/pqcrypto/mldsa_api.h +1 -118
  8. data/ext/pqcrypto/mlkem_api.h +1 -42
  9. data/ext/pqcrypto/pq_externalmu.c +88 -216
  10. data/ext/pqcrypto/pqcrypto_native_api.h +129 -0
  11. data/ext/pqcrypto/pqcrypto_ruby_secure.c +0 -3
  12. data/ext/pqcrypto/pqcrypto_secure.c +135 -117
  13. data/ext/pqcrypto/pqcrypto_secure.h +1 -42
  14. data/ext/pqcrypto/pqcrypto_version.h +1 -1
  15. data/ext/pqcrypto/randombytes.h +9 -0
  16. data/ext/pqcrypto/vendor/.vendored +10 -5
  17. data/ext/pqcrypto/vendor/mldsa-native/BUILDING.md +105 -0
  18. data/ext/pqcrypto/vendor/mldsa-native/LICENSE +286 -0
  19. data/ext/pqcrypto/vendor/mldsa-native/META.yml +24 -0
  20. data/ext/pqcrypto/vendor/mldsa-native/README.md +221 -0
  21. data/ext/pqcrypto/vendor/mldsa-native/SECURITY.md +8 -0
  22. data/ext/pqcrypto/vendor/mldsa-native/mldsa/mldsa_native.c +721 -0
  23. data/ext/pqcrypto/vendor/mldsa-native/mldsa/mldsa_native.h +975 -0
  24. data/ext/pqcrypto/vendor/mldsa-native/mldsa/mldsa_native_asm.S +724 -0
  25. data/ext/pqcrypto/vendor/mldsa-native/mldsa/mldsa_native_config.h +723 -0
  26. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/cbmc.h +166 -0
  27. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/common.h +321 -0
  28. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/ct.c +21 -0
  29. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/ct.h +385 -0
  30. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/debug.c +73 -0
  31. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/debug.h +130 -0
  32. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/fips202.c +277 -0
  33. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/fips202.h +244 -0
  34. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/fips202x4.c +182 -0
  35. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/fips202x4.h +117 -0
  36. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/keccakf1600.c +438 -0
  37. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/keccakf1600.h +105 -0
  38. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/auto.h +71 -0
  39. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/fips202_native_aarch64.h +62 -0
  40. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x1_scalar_asm.S +376 -0
  41. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x1_v84a_asm.S +204 -0
  42. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x2_v84a_asm.S +259 -0
  43. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x4_v8a_scalar_hybrid_asm.S +1077 -0
  44. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x4_v8a_v84a_scalar_hybrid_asm.S +987 -0
  45. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccakf1600_round_constants.c +41 -0
  46. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/x1_scalar.h +26 -0
  47. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/x1_v84a.h +35 -0
  48. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/x2_v84a.h +37 -0
  49. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/x4_v8a_scalar.h +27 -0
  50. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/x4_v8a_v84a_scalar.h +36 -0
  51. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/api.h +69 -0
  52. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/armv81m/README.md +10 -0
  53. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/armv81m/mve.h +32 -0
  54. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/armv81m/src/fips202_native_armv81m.h +20 -0
  55. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/armv81m/src/keccak_f1600_x4_mve.S +638 -0
  56. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/armv81m/src/keccak_f1600_x4_mve.c +136 -0
  57. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/armv81m/src/keccakf1600_round_constants.c +52 -0
  58. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/auto.h +29 -0
  59. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/x86_64/src/KeccakP_1600_times4_SIMD256.c +488 -0
  60. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/x86_64/src/KeccakP_1600_times4_SIMD256.h +16 -0
  61. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/x86_64/xkcp.h +31 -0
  62. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/meta.h +247 -0
  63. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/aarch64_zetas.c +231 -0
  64. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/arith_native_aarch64.h +150 -0
  65. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/intt.S +753 -0
  66. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/mld_polyvecl_pointwise_acc_montgomery_l4.S +129 -0
  67. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/mld_polyvecl_pointwise_acc_montgomery_l5.S +145 -0
  68. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/mld_polyvecl_pointwise_acc_montgomery_l7.S +177 -0
  69. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/ntt.S +653 -0
  70. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/pointwise_montgomery.S +79 -0
  71. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/poly_caddq_asm.S +53 -0
  72. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/poly_chknorm_asm.S +55 -0
  73. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/poly_decompose_32_asm.S +85 -0
  74. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/poly_decompose_88_asm.S +85 -0
  75. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/poly_use_hint_32_asm.S +102 -0
  76. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/poly_use_hint_88_asm.S +110 -0
  77. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/polyz_unpack_17_asm.S +72 -0
  78. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/polyz_unpack_19_asm.S +69 -0
  79. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/polyz_unpack_table.c +40 -0
  80. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/rej_uniform_asm.S +189 -0
  81. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/rej_uniform_eta2_asm.S +135 -0
  82. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/rej_uniform_eta4_asm.S +128 -0
  83. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/rej_uniform_eta_table.c +543 -0
  84. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/rej_uniform_table.c +62 -0
  85. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/api.h +649 -0
  86. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/meta.h +23 -0
  87. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/meta.h +315 -0
  88. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/arith_native_x86_64.h +124 -0
  89. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/consts.c +157 -0
  90. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/consts.h +27 -0
  91. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/intt.S +2311 -0
  92. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/ntt.S +2383 -0
  93. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/nttunpack.S +239 -0
  94. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/pointwise.S +131 -0
  95. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/pointwise_acc_l4.S +139 -0
  96. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/pointwise_acc_l5.S +155 -0
  97. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/pointwise_acc_l7.S +187 -0
  98. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/poly_caddq_avx2.c +61 -0
  99. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/poly_chknorm_avx2.c +52 -0
  100. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/poly_decompose_32_avx2.c +155 -0
  101. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/poly_decompose_88_avx2.c +155 -0
  102. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/poly_use_hint_32_avx2.c +102 -0
  103. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/poly_use_hint_88_avx2.c +104 -0
  104. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/polyz_unpack_17_avx2.c +91 -0
  105. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/polyz_unpack_19_avx2.c +93 -0
  106. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/rej_uniform_avx2.c +126 -0
  107. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/rej_uniform_eta2_avx2.c +155 -0
  108. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/rej_uniform_eta4_avx2.c +139 -0
  109. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/rej_uniform_table.c +160 -0
  110. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/packing.c +293 -0
  111. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/packing.h +224 -0
  112. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/params.h +77 -0
  113. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/poly.c +991 -0
  114. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/poly.h +393 -0
  115. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/poly_kl.c +946 -0
  116. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/poly_kl.h +360 -0
  117. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/polyvec.c +877 -0
  118. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/polyvec.h +725 -0
  119. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/randombytes.h +26 -0
  120. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/reduce.h +139 -0
  121. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/rounding.h +249 -0
  122. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/sign.c +1511 -0
  123. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/sign.h +806 -0
  124. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/symmetric.h +68 -0
  125. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/sys.h +268 -0
  126. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/zetas.inc +55 -0
  127. data/ext/pqcrypto/vendor/mlkem-native/BUILDING.md +104 -0
  128. data/ext/pqcrypto/vendor/mlkem-native/LICENSE +294 -0
  129. data/ext/pqcrypto/vendor/mlkem-native/META.yml +30 -0
  130. data/ext/pqcrypto/vendor/mlkem-native/README.md +223 -0
  131. data/ext/pqcrypto/vendor/mlkem-native/RELEASE.md +86 -0
  132. data/ext/pqcrypto/vendor/mlkem-native/SECURITY.md +8 -0
  133. data/ext/pqcrypto/vendor/mlkem-native/mlkem/README.md +23 -0
  134. data/ext/pqcrypto/vendor/mlkem-native/mlkem/mlkem_native.c +660 -0
  135. data/ext/pqcrypto/vendor/mlkem-native/mlkem/mlkem_native.h +538 -0
  136. data/ext/pqcrypto/vendor/mlkem-native/mlkem/mlkem_native_asm.S +681 -0
  137. data/ext/pqcrypto/vendor/mlkem-native/mlkem/mlkem_native_config.h +709 -0
  138. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/cbmc.h +174 -0
  139. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/common.h +274 -0
  140. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/compress.c +717 -0
  141. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/compress.h +688 -0
  142. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/debug.c +64 -0
  143. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/debug.h +128 -0
  144. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/fips202.c +251 -0
  145. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/fips202.h +158 -0
  146. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/fips202x4.c +208 -0
  147. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/fips202x4.h +80 -0
  148. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/keccakf1600.c +463 -0
  149. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/keccakf1600.h +98 -0
  150. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/auto.h +70 -0
  151. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/src/fips202_native_aarch64.h +69 -0
  152. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/src/keccak_f1600_x1_scalar_asm.S +375 -0
  153. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/src/keccak_f1600_x1_v84a_asm.S +203 -0
  154. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/src/keccak_f1600_x2_v84a_asm.S +258 -0
  155. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/src/keccak_f1600_x4_v8a_scalar_hybrid_asm.S +1076 -0
  156. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/src/keccak_f1600_x4_v8a_v84a_scalar_hybrid_asm.S +986 -0
  157. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/src/keccakf1600_round_constants.c +46 -0
  158. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/x1_scalar.h +25 -0
  159. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/x1_v84a.h +34 -0
  160. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/x2_v84a.h +35 -0
  161. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/x4_v8a_scalar.h +26 -0
  162. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/x4_v8a_v84a_scalar.h +35 -0
  163. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/api.h +117 -0
  164. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/armv81m/README.md +10 -0
  165. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/armv81m/mve.h +79 -0
  166. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/armv81m/src/fips202_native_armv81m.h +35 -0
  167. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/armv81m/src/keccak_f1600_x4_mve.S +667 -0
  168. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/armv81m/src/keccak_f1600_x4_mve.c +40 -0
  169. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/armv81m/src/keccakf1600_round_constants.c +51 -0
  170. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/armv81m/src/state_extract_bytes_x4_mve.S +290 -0
  171. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/armv81m/src/state_xor_bytes_x4_mve.S +314 -0
  172. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/auto.h +28 -0
  173. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/x86_64/keccak_f1600_x4_avx2.h +33 -0
  174. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/x86_64/src/fips202_native_x86_64.h +41 -0
  175. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/x86_64/src/keccak_f1600_x4_avx2.S +451 -0
  176. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/x86_64/src/keccakf1600_constants.c +51 -0
  177. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/indcpa.c +622 -0
  178. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/indcpa.h +156 -0
  179. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/kem.c +446 -0
  180. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/kem.h +326 -0
  181. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/README.md +16 -0
  182. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/meta.h +122 -0
  183. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/aarch64_zetas.c +174 -0
  184. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/arith_native_aarch64.h +177 -0
  185. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/intt.S +628 -0
  186. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/ntt.S +562 -0
  187. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/poly_mulcache_compute_asm.S +127 -0
  188. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/poly_reduce_asm.S +150 -0
  189. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/poly_tobytes_asm.S +117 -0
  190. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/poly_tomont_asm.S +98 -0
  191. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/polyvec_basemul_acc_montgomery_cached_asm_k2.S +261 -0
  192. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/polyvec_basemul_acc_montgomery_cached_asm_k3.S +314 -0
  193. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/polyvec_basemul_acc_montgomery_cached_asm_k4.S +368 -0
  194. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/rej_uniform_asm.S +226 -0
  195. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/rej_uniform_table.c +542 -0
  196. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/api.h +637 -0
  197. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/meta.h +25 -0
  198. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/riscv64/README.md +11 -0
  199. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/riscv64/meta.h +128 -0
  200. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/riscv64/src/arith_native_riscv64.h +45 -0
  201. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/riscv64/src/rv64v_debug.c +81 -0
  202. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/riscv64/src/rv64v_debug.h +145 -0
  203. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/riscv64/src/rv64v_izetas.inc +27 -0
  204. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/riscv64/src/rv64v_poly.c +805 -0
  205. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/riscv64/src/rv64v_zetas.inc +27 -0
  206. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/riscv64/src/rv64v_zetas_basemul.inc +39 -0
  207. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/README.md +4 -0
  208. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/meta.h +304 -0
  209. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/arith_native_x86_64.h +309 -0
  210. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/compress_consts.c +94 -0
  211. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/compress_consts.h +45 -0
  212. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/consts.c +102 -0
  213. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/consts.h +25 -0
  214. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/intt.S +719 -0
  215. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/mulcache_compute.S +90 -0
  216. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/ntt.S +639 -0
  217. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/nttfrombytes.S +193 -0
  218. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/ntttobytes.S +181 -0
  219. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/nttunpack.S +174 -0
  220. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/poly_compress_d10.S +382 -0
  221. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/poly_compress_d11.S +448 -0
  222. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/poly_compress_d4.S +163 -0
  223. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/poly_compress_d5.S +220 -0
  224. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/poly_decompress_d10.S +228 -0
  225. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/poly_decompress_d11.S +277 -0
  226. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/poly_decompress_d4.S +180 -0
  227. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/poly_decompress_d5.S +192 -0
  228. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/polyvec_basemul_acc_montgomery_cached_asm_k2.S +502 -0
  229. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/polyvec_basemul_acc_montgomery_cached_asm_k3.S +750 -0
  230. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/polyvec_basemul_acc_montgomery_cached_asm_k4.S +998 -0
  231. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/reduce.S +218 -0
  232. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/rej_uniform_asm.S +103 -0
  233. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/rej_uniform_table.c +544 -0
  234. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/tomont.S +155 -0
  235. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/params.h +76 -0
  236. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/poly.c +572 -0
  237. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/poly.h +317 -0
  238. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/poly_k.c +502 -0
  239. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/poly_k.h +668 -0
  240. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/randombytes.h +60 -0
  241. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/sampling.c +362 -0
  242. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/sampling.h +118 -0
  243. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/symmetric.h +70 -0
  244. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/sys.h +260 -0
  245. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/verify.c +20 -0
  246. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/verify.h +464 -0
  247. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/zetas.inc +30 -0
  248. data/lib/pq_crypto/version.rb +1 -1
  249. data/lib/pq_crypto.rb +1 -1
  250. data/script/vendor_libs.rb +88 -159
  251. metadata +236 -160
  252. data/ext/pqcrypto/vendor/pqclean/common/aes.c +0 -639
  253. data/ext/pqcrypto/vendor/pqclean/common/aes.h +0 -64
  254. data/ext/pqcrypto/vendor/pqclean/common/compat.h +0 -73
  255. data/ext/pqcrypto/vendor/pqclean/common/crypto_declassify.h +0 -7
  256. data/ext/pqcrypto/vendor/pqclean/common/fips202.c +0 -928
  257. data/ext/pqcrypto/vendor/pqclean/common/fips202.h +0 -166
  258. data/ext/pqcrypto/vendor/pqclean/common/keccak2x/feat.S +0 -168
  259. data/ext/pqcrypto/vendor/pqclean/common/keccak2x/fips202x2.c +0 -684
  260. data/ext/pqcrypto/vendor/pqclean/common/keccak2x/fips202x2.h +0 -60
  261. data/ext/pqcrypto/vendor/pqclean/common/keccak4x/KeccakP-1600-times4-SIMD256.c +0 -1028
  262. data/ext/pqcrypto/vendor/pqclean/common/keccak4x/KeccakP-1600-times4-SnP.h +0 -50
  263. data/ext/pqcrypto/vendor/pqclean/common/keccak4x/KeccakP-1600-unrolling.macros +0 -198
  264. data/ext/pqcrypto/vendor/pqclean/common/keccak4x/Makefile +0 -8
  265. data/ext/pqcrypto/vendor/pqclean/common/keccak4x/Makefile.Microsoft_nmake +0 -8
  266. data/ext/pqcrypto/vendor/pqclean/common/keccak4x/SIMD256-config.h +0 -3
  267. data/ext/pqcrypto/vendor/pqclean/common/keccak4x/align.h +0 -34
  268. data/ext/pqcrypto/vendor/pqclean/common/keccak4x/brg_endian.h +0 -142
  269. data/ext/pqcrypto/vendor/pqclean/common/nistseedexpander.c +0 -101
  270. data/ext/pqcrypto/vendor/pqclean/common/nistseedexpander.h +0 -39
  271. data/ext/pqcrypto/vendor/pqclean/common/randombytes.c +0 -355
  272. data/ext/pqcrypto/vendor/pqclean/common/randombytes.h +0 -27
  273. data/ext/pqcrypto/vendor/pqclean/common/sha2.c +0 -769
  274. data/ext/pqcrypto/vendor/pqclean/common/sha2.h +0 -173
  275. data/ext/pqcrypto/vendor/pqclean/common/sp800-185.c +0 -156
  276. data/ext/pqcrypto/vendor/pqclean/common/sp800-185.h +0 -27
  277. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/LICENSE +0 -5
  278. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/Makefile +0 -19
  279. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/Makefile.Microsoft_nmake +0 -23
  280. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/api.h +0 -18
  281. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/cbd.c +0 -83
  282. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/cbd.h +0 -11
  283. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/indcpa.c +0 -327
  284. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/indcpa.h +0 -22
  285. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/kem.c +0 -164
  286. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/kem.h +0 -23
  287. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/ntt.c +0 -146
  288. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/ntt.h +0 -14
  289. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/params.h +0 -36
  290. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/poly.c +0 -311
  291. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/poly.h +0 -37
  292. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/polyvec.c +0 -198
  293. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/polyvec.h +0 -26
  294. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/reduce.c +0 -41
  295. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/reduce.h +0 -13
  296. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/symmetric-shake.c +0 -71
  297. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/symmetric.h +0 -30
  298. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/verify.c +0 -67
  299. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-1024/clean/verify.h +0 -13
  300. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/LICENSE +0 -5
  301. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/Makefile +0 -19
  302. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/Makefile.Microsoft_nmake +0 -23
  303. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/api.h +0 -18
  304. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/cbd.c +0 -108
  305. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/cbd.h +0 -11
  306. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/indcpa.c +0 -327
  307. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/indcpa.h +0 -22
  308. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/kem.c +0 -164
  309. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/kem.h +0 -23
  310. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/ntt.c +0 -146
  311. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/ntt.h +0 -14
  312. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/params.h +0 -36
  313. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/poly.c +0 -299
  314. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/poly.h +0 -37
  315. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/polyvec.c +0 -188
  316. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/polyvec.h +0 -26
  317. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/reduce.c +0 -41
  318. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/reduce.h +0 -13
  319. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/symmetric-shake.c +0 -71
  320. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/symmetric.h +0 -30
  321. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/verify.c +0 -67
  322. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-512/clean/verify.h +0 -13
  323. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/LICENSE +0 -5
  324. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/Makefile +0 -19
  325. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/Makefile.Microsoft_nmake +0 -23
  326. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/api.h +0 -18
  327. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/cbd.c +0 -83
  328. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/cbd.h +0 -11
  329. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/indcpa.c +0 -327
  330. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/indcpa.h +0 -22
  331. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/kem.c +0 -164
  332. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/kem.h +0 -23
  333. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/ntt.c +0 -146
  334. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/ntt.h +0 -14
  335. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/params.h +0 -36
  336. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/poly.c +0 -299
  337. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/poly.h +0 -37
  338. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/polyvec.c +0 -188
  339. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/polyvec.h +0 -26
  340. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/reduce.c +0 -41
  341. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/reduce.h +0 -13
  342. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/symmetric-shake.c +0 -71
  343. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/symmetric.h +0 -30
  344. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/verify.c +0 -67
  345. data/ext/pqcrypto/vendor/pqclean/crypto_kem/ml-kem-768/clean/verify.h +0 -13
  346. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/LICENSE +0 -5
  347. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/Makefile +0 -19
  348. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/Makefile.Microsoft_nmake +0 -23
  349. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/api.h +0 -50
  350. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/ntt.c +0 -98
  351. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/ntt.h +0 -10
  352. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/packing.c +0 -261
  353. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/packing.h +0 -31
  354. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/params.h +0 -44
  355. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/poly.c +0 -848
  356. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/poly.h +0 -52
  357. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/polyvec.c +0 -415
  358. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/polyvec.h +0 -65
  359. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/reduce.c +0 -69
  360. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/reduce.h +0 -17
  361. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/rounding.c +0 -98
  362. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/rounding.h +0 -14
  363. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/sign.c +0 -407
  364. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/sign.h +0 -47
  365. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/symmetric-shake.c +0 -26
  366. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-44/clean/symmetric.h +0 -34
  367. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/LICENSE +0 -5
  368. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/Makefile +0 -19
  369. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/Makefile.Microsoft_nmake +0 -23
  370. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/api.h +0 -50
  371. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/ntt.c +0 -98
  372. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/ntt.h +0 -10
  373. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/packing.c +0 -261
  374. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/packing.h +0 -31
  375. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/params.h +0 -44
  376. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/poly.c +0 -799
  377. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/poly.h +0 -52
  378. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/polyvec.c +0 -415
  379. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/polyvec.h +0 -65
  380. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/reduce.c +0 -69
  381. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/reduce.h +0 -17
  382. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/rounding.c +0 -92
  383. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/rounding.h +0 -14
  384. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/sign.c +0 -407
  385. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/sign.h +0 -47
  386. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/symmetric-shake.c +0 -26
  387. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-65/clean/symmetric.h +0 -34
  388. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/LICENSE +0 -5
  389. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/Makefile +0 -19
  390. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/Makefile.Microsoft_nmake +0 -23
  391. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/api.h +0 -50
  392. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/ntt.c +0 -98
  393. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/ntt.h +0 -10
  394. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/packing.c +0 -261
  395. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/packing.h +0 -31
  396. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/params.h +0 -44
  397. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/poly.c +0 -823
  398. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/poly.h +0 -52
  399. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/polyvec.c +0 -415
  400. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/polyvec.h +0 -65
  401. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/reduce.c +0 -69
  402. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/reduce.h +0 -17
  403. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/rounding.c +0 -92
  404. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/rounding.h +0 -14
  405. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/sign.c +0 -407
  406. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/sign.h +0 -47
  407. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/symmetric-shake.c +0 -26
  408. data/ext/pqcrypto/vendor/pqclean/crypto_sign/ml-dsa-87/clean/symmetric.h +0 -34
@@ -0,0 +1,721 @@
1
+ /*
2
+ * Copyright (c) The mldsa-native project authors
3
+ * SPDX-License-Identifier: Apache-2.0 OR ISC OR MIT
4
+ */
5
+
6
+ /*
7
+ * WARNING: This file is auto-generated from scripts/autogen
8
+ * in the mldsa-native repository.
9
+ * Do not modify it directly.
10
+ */
11
+
12
+ /******************************************************************************
13
+ *
14
+ * Single compilation unit (SCU) for fixed-level build of mldsa-native
15
+ *
16
+ * This compilation unit bundles together all source files for a build
17
+ * of mldsa-native for a fixed security level (MLDSA-44/65/87).
18
+ *
19
+ * # API
20
+ *
21
+ * The API exposed by this file is described in mldsa_native.h.
22
+ *
23
+ * # Multi-level build
24
+ *
25
+ * If you want an SCU build of mldsa-native with support for multiple security
26
+ * levels, you need to include this file multiple times, and set
27
+ * MLD_CONFIG_MULTILEVEL_WITH_SHARED and MLD_CONFIG_MULTILEVEL_NO_SHARED
28
+ * appropriately. This is exemplified in examples/monolithic_build_multilevel
29
+ * and examples/monolithic_build_multilevel_native.
30
+ *
31
+ * # Configuration
32
+ *
33
+ * The following options from the mldsa-native configuration are relevant:
34
+ *
35
+ * - MLD_CONFIG_FIPS202_CUSTOM_HEADER
36
+ * Set this option if you use a custom FIPS202 implementation.
37
+ *
38
+ * - MLD_CONFIG_USE_NATIVE_BACKEND_ARITH
39
+ * Set this option if you want to include the native arithmetic backends
40
+ * in your build.
41
+ *
42
+ * - MLD_CONFIG_USE_NATIVE_BACKEND_FIPS202
43
+ * Set this option if you want to include the native FIPS202 backends
44
+ * in your build.
45
+ *
46
+ * - MLD_CONFIG_MONOBUILD_KEEP_SHARED_HEADERS
47
+ * Set this option if you want to keep the directives defined in
48
+ * level-independent headers. This is needed for a multi-level build.
49
+ */
50
+
51
+ /* If parts of the mldsa-native source tree are not used,
52
+ * consider reducing this header via `unifdef`.
53
+ *
54
+ * Example:
55
+ * ```bash
56
+ * unifdef -UMLD_CONFIG_USE_NATIVE_BACKEND_ARITH mldsa_native.c
57
+ * ```
58
+ */
59
+
60
+ #include "src/common.h"
61
+
62
+ #include "src/ct.c"
63
+ #include "src/debug.c"
64
+ #include "src/packing.c"
65
+ #include "src/poly.c"
66
+ #include "src/poly_kl.c"
67
+ #include "src/polyvec.c"
68
+ #include "src/sign.c"
69
+
70
+ #if !defined(MLD_CONFIG_FIPS202_CUSTOM_HEADER)
71
+ #include "src/fips202/fips202.c"
72
+ #include "src/fips202/fips202x4.c"
73
+ #include "src/fips202/keccakf1600.c"
74
+ #endif
75
+
76
+ #if defined(MLD_CONFIG_USE_NATIVE_BACKEND_ARITH)
77
+ #if defined(MLD_SYS_AARCH64)
78
+ #include "src/native/aarch64/src/aarch64_zetas.c"
79
+ #include "src/native/aarch64/src/polyz_unpack_table.c"
80
+ #include "src/native/aarch64/src/rej_uniform_eta_table.c"
81
+ #include "src/native/aarch64/src/rej_uniform_table.c"
82
+ #endif /* MLD_SYS_AARCH64 */
83
+ #if defined(MLD_SYS_X86_64)
84
+ #include "src/native/x86_64/src/consts.c"
85
+ #include "src/native/x86_64/src/poly_caddq_avx2.c"
86
+ #include "src/native/x86_64/src/poly_chknorm_avx2.c"
87
+ #include "src/native/x86_64/src/poly_decompose_32_avx2.c"
88
+ #include "src/native/x86_64/src/poly_decompose_88_avx2.c"
89
+ #include "src/native/x86_64/src/poly_use_hint_32_avx2.c"
90
+ #include "src/native/x86_64/src/poly_use_hint_88_avx2.c"
91
+ #include "src/native/x86_64/src/polyz_unpack_17_avx2.c"
92
+ #include "src/native/x86_64/src/polyz_unpack_19_avx2.c"
93
+ #include "src/native/x86_64/src/rej_uniform_avx2.c"
94
+ #include "src/native/x86_64/src/rej_uniform_eta2_avx2.c"
95
+ #include "src/native/x86_64/src/rej_uniform_eta4_avx2.c"
96
+ #include "src/native/x86_64/src/rej_uniform_table.c"
97
+ #endif /* MLD_SYS_X86_64 */
98
+ #endif /* MLD_CONFIG_USE_NATIVE_BACKEND_ARITH */
99
+
100
+ #if defined(MLD_CONFIG_USE_NATIVE_BACKEND_FIPS202)
101
+ #if defined(MLD_SYS_AARCH64)
102
+ #include "src/fips202/native/aarch64/src/keccakf1600_round_constants.c"
103
+ #endif
104
+ #if defined(MLD_SYS_X86_64)
105
+ #include "src/fips202/native/x86_64/src/KeccakP_1600_times4_SIMD256.c"
106
+ #endif
107
+ #if defined(MLD_SYS_ARMV81M_MVE)
108
+ #include "src/fips202/native/armv81m/src/keccak_f1600_x4_mve.c"
109
+ #include "src/fips202/native/armv81m/src/keccakf1600_round_constants.c"
110
+ #endif
111
+ #endif /* MLD_CONFIG_USE_NATIVE_BACKEND_FIPS202 */
112
+
113
+ /* Macro #undef's
114
+ *
115
+ * The following undefines macros from headers
116
+ * included by the source files imported above.
117
+ *
118
+ * This is to allow building and linking multiple builds
119
+ * of mldsa-native for varying parameter sets through concatenation
120
+ * of this file, as if the files had been compiled separately.
121
+ * If this is not relevant to you, you may remove the following.
122
+ */
123
+
124
+ /*
125
+ * Undefine macros from MLD_CONFIG_PARAMETER_SET-specific files
126
+ */
127
+ /* mldsa/mldsa_native.h */
128
+ #undef CRYPTO_BYTES
129
+ #undef CRYPTO_PUBLICKEYBYTES
130
+ #undef CRYPTO_SECRETKEYBYTES
131
+ #undef MLDSA44_BYTES
132
+ #undef MLDSA44_CRHBYTES
133
+ #undef MLDSA44_PUBLICKEYBYTES
134
+ #undef MLDSA44_RNDBYTES
135
+ #undef MLDSA44_SECRETKEYBYTES
136
+ #undef MLDSA44_SEEDBYTES
137
+ #undef MLDSA44_TRBYTES
138
+ #undef MLDSA65_BYTES
139
+ #undef MLDSA65_CRHBYTES
140
+ #undef MLDSA65_PUBLICKEYBYTES
141
+ #undef MLDSA65_RNDBYTES
142
+ #undef MLDSA65_SECRETKEYBYTES
143
+ #undef MLDSA65_SEEDBYTES
144
+ #undef MLDSA65_TRBYTES
145
+ #undef MLDSA87_BYTES
146
+ #undef MLDSA87_CRHBYTES
147
+ #undef MLDSA87_PUBLICKEYBYTES
148
+ #undef MLDSA87_RNDBYTES
149
+ #undef MLDSA87_SECRETKEYBYTES
150
+ #undef MLDSA87_SEEDBYTES
151
+ #undef MLDSA87_TRBYTES
152
+ #undef MLDSA_BYTES
153
+ #undef MLDSA_BYTES_
154
+ #undef MLDSA_CRHBYTES
155
+ #undef MLDSA_PUBLICKEYBYTES
156
+ #undef MLDSA_PUBLICKEYBYTES_
157
+ #undef MLDSA_RNDBYTES
158
+ #undef MLDSA_SECRETKEYBYTES
159
+ #undef MLDSA_SECRETKEYBYTES_
160
+ #undef MLDSA_SEEDBYTES
161
+ #undef MLDSA_TRBYTES
162
+ #undef MLD_API_CONCAT
163
+ #undef MLD_API_CONCAT_
164
+ #undef MLD_API_CONCAT_UNDERSCORE
165
+ #undef MLD_API_LEGACY_CONFIG
166
+ #undef MLD_API_MUST_CHECK_RETURN_VALUE
167
+ #undef MLD_API_NAMESPACE
168
+ #undef MLD_API_QUALIFIER
169
+ #undef MLD_CONFIG_API_CONSTANTS_ONLY
170
+ #undef MLD_CONFIG_API_NAMESPACE_PREFIX
171
+ #undef MLD_CONFIG_API_NO_SUPERCOP
172
+ #undef MLD_CONFIG_API_PARAMETER_SET
173
+ #undef MLD_CONFIG_API_QUALIFIER
174
+ #undef MLD_DOMAIN_SEPARATION_MAX_BYTES
175
+ #undef MLD_ERR_FAIL
176
+ #undef MLD_ERR_OUT_OF_MEMORY
177
+ #undef MLD_ERR_RNG_FAIL
178
+ #undef MLD_H
179
+ #undef MLD_MAX3_
180
+ #undef MLD_PREHASH_NONE
181
+ #undef MLD_PREHASH_SHA2_224
182
+ #undef MLD_PREHASH_SHA2_256
183
+ #undef MLD_PREHASH_SHA2_384
184
+ #undef MLD_PREHASH_SHA2_512
185
+ #undef MLD_PREHASH_SHA2_512_224
186
+ #undef MLD_PREHASH_SHA2_512_256
187
+ #undef MLD_PREHASH_SHA3_224
188
+ #undef MLD_PREHASH_SHA3_256
189
+ #undef MLD_PREHASH_SHA3_384
190
+ #undef MLD_PREHASH_SHA3_512
191
+ #undef MLD_PREHASH_SHAKE_128
192
+ #undef MLD_PREHASH_SHAKE_256
193
+ #undef MLD_TOTAL_ALLOC_44
194
+ #undef MLD_TOTAL_ALLOC_44_KEYPAIR
195
+ #undef MLD_TOTAL_ALLOC_44_KEYPAIR_NO_PCT
196
+ #undef MLD_TOTAL_ALLOC_44_KEYPAIR_PCT
197
+ #undef MLD_TOTAL_ALLOC_44_SIGN
198
+ #undef MLD_TOTAL_ALLOC_44_VERIFY
199
+ #undef MLD_TOTAL_ALLOC_65
200
+ #undef MLD_TOTAL_ALLOC_65_KEYPAIR
201
+ #undef MLD_TOTAL_ALLOC_65_KEYPAIR_NO_PCT
202
+ #undef MLD_TOTAL_ALLOC_65_KEYPAIR_PCT
203
+ #undef MLD_TOTAL_ALLOC_65_SIGN
204
+ #undef MLD_TOTAL_ALLOC_65_VERIFY
205
+ #undef MLD_TOTAL_ALLOC_87
206
+ #undef MLD_TOTAL_ALLOC_87_KEYPAIR
207
+ #undef MLD_TOTAL_ALLOC_87_KEYPAIR_NO_PCT
208
+ #undef MLD_TOTAL_ALLOC_87_KEYPAIR_PCT
209
+ #undef MLD_TOTAL_ALLOC_87_SIGN
210
+ #undef MLD_TOTAL_ALLOC_87_VERIFY
211
+ #undef crypto_sign
212
+ #undef crypto_sign_keypair
213
+ #undef crypto_sign_open
214
+ #undef crypto_sign_signature
215
+ #undef crypto_sign_verify
216
+ /* mldsa/src/common.h */
217
+ #undef MLD_ADD_PARAM_SET
218
+ #undef MLD_ALLOC
219
+ #undef MLD_APPLY
220
+ #undef MLD_ASM_FN_SIZE
221
+ #undef MLD_ASM_FN_SYMBOL
222
+ #undef MLD_ASM_NAMESPACE
223
+ #undef MLD_BUILD_INTERNAL
224
+ #undef MLD_COMMON_H
225
+ #undef MLD_CONCAT
226
+ #undef MLD_CONCAT_
227
+ #undef MLD_CONTEXT_PARAMETERS_0
228
+ #undef MLD_CONTEXT_PARAMETERS_1
229
+ #undef MLD_CONTEXT_PARAMETERS_2
230
+ #undef MLD_CONTEXT_PARAMETERS_3
231
+ #undef MLD_CONTEXT_PARAMETERS_4
232
+ #undef MLD_CONTEXT_PARAMETERS_5
233
+ #undef MLD_CONTEXT_PARAMETERS_6
234
+ #undef MLD_CONTEXT_PARAMETERS_7
235
+ #undef MLD_CONTEXT_PARAMETERS_8
236
+ #undef MLD_CONTEXT_PARAMETERS_9
237
+ #undef MLD_EMPTY_CU
238
+ #undef MLD_ERR_FAIL
239
+ #undef MLD_ERR_OUT_OF_MEMORY
240
+ #undef MLD_ERR_RNG_FAIL
241
+ #undef MLD_EXTERNAL_API
242
+ #undef MLD_FIPS202X4_HEADER_FILE
243
+ #undef MLD_FIPS202_HEADER_FILE
244
+ #undef MLD_FREE
245
+ #undef MLD_INTERNAL_API
246
+ #undef MLD_MULTILEVEL_BUILD
247
+ #undef MLD_NAMESPACE
248
+ #undef MLD_NAMESPACE_KL
249
+ #undef MLD_NAMESPACE_PREFIX
250
+ #undef MLD_NAMESPACE_PREFIX_KL
251
+ #undef MLD_UNION_OR_STRUCT
252
+ #undef mld_memcpy
253
+ #undef mld_memset
254
+ /* mldsa/src/packing.h */
255
+ #undef MLD_PACKING_H
256
+ #undef mld_pack_pk
257
+ #undef mld_pack_sig_c_h
258
+ #undef mld_pack_sig_z
259
+ #undef mld_pack_sk
260
+ #undef mld_unpack_pk
261
+ #undef mld_unpack_sig
262
+ #undef mld_unpack_sk
263
+ /* mldsa/src/params.h */
264
+ #undef MLDSA_BETA
265
+ #undef MLDSA_CRHBYTES
266
+ #undef MLDSA_CRYPTO_BYTES
267
+ #undef MLDSA_CRYPTO_PUBLICKEYBYTES
268
+ #undef MLDSA_CRYPTO_SECRETKEYBYTES
269
+ #undef MLDSA_CTILDEBYTES
270
+ #undef MLDSA_D
271
+ #undef MLDSA_ETA
272
+ #undef MLDSA_GAMMA1
273
+ #undef MLDSA_GAMMA2
274
+ #undef MLDSA_K
275
+ #undef MLDSA_L
276
+ #undef MLDSA_N
277
+ #undef MLDSA_OMEGA
278
+ #undef MLDSA_POLYETA_PACKEDBYTES
279
+ #undef MLDSA_POLYT0_PACKEDBYTES
280
+ #undef MLDSA_POLYT1_PACKEDBYTES
281
+ #undef MLDSA_POLYVECH_PACKEDBYTES
282
+ #undef MLDSA_POLYW1_PACKEDBYTES
283
+ #undef MLDSA_POLYZ_PACKEDBYTES
284
+ #undef MLDSA_Q
285
+ #undef MLDSA_Q_HALF
286
+ #undef MLDSA_RNDBYTES
287
+ #undef MLDSA_SEEDBYTES
288
+ #undef MLDSA_TAU
289
+ #undef MLDSA_TRBYTES
290
+ #undef MLD_PARAMS_H
291
+ /* mldsa/src/poly_kl.h */
292
+ #undef MLD_POLYETA_UNPACK_LOWER_BOUND
293
+ #undef MLD_POLY_KL_H
294
+ #undef mld_poly_challenge
295
+ #undef mld_poly_decompose
296
+ #undef mld_poly_make_hint
297
+ #undef mld_poly_uniform_eta
298
+ #undef mld_poly_uniform_eta_4x
299
+ #undef mld_poly_uniform_gamma1
300
+ #undef mld_poly_uniform_gamma1_4x
301
+ #undef mld_poly_use_hint
302
+ #undef mld_polyeta_pack
303
+ #undef mld_polyeta_unpack
304
+ #undef mld_polyw1_pack
305
+ #undef mld_polyz_pack
306
+ #undef mld_polyz_unpack
307
+ /* mldsa/src/polyvec.h */
308
+ #undef MLD_POLYVEC_H
309
+ #undef mld_polymat
310
+ #undef mld_polymat_get_row
311
+ #undef mld_polyvec_matrix_expand
312
+ #undef mld_polyvec_matrix_pointwise_montgomery
313
+ #undef mld_polyveck
314
+ #undef mld_polyveck_add
315
+ #undef mld_polyveck_caddq
316
+ #undef mld_polyveck_chknorm
317
+ #undef mld_polyveck_decompose
318
+ #undef mld_polyveck_invntt_tomont
319
+ #undef mld_polyveck_make_hint
320
+ #undef mld_polyveck_ntt
321
+ #undef mld_polyveck_pack_eta
322
+ #undef mld_polyveck_pack_t0
323
+ #undef mld_polyveck_pack_w1
324
+ #undef mld_polyveck_pointwise_poly_montgomery
325
+ #undef mld_polyveck_power2round
326
+ #undef mld_polyveck_reduce
327
+ #undef mld_polyveck_shiftl
328
+ #undef mld_polyveck_sub
329
+ #undef mld_polyveck_unpack_eta
330
+ #undef mld_polyveck_unpack_t0
331
+ #undef mld_polyveck_use_hint
332
+ #undef mld_polyvecl
333
+ #undef mld_polyvecl_chknorm
334
+ #undef mld_polyvecl_ntt
335
+ #undef mld_polyvecl_pack_eta
336
+ #undef mld_polyvecl_pointwise_acc_montgomery
337
+ #undef mld_polyvecl_uniform_gamma1
338
+ #undef mld_polyvecl_unpack_eta
339
+ #undef mld_polyvecl_unpack_z
340
+ /* mldsa/src/rounding.h */
341
+ #undef MLD_2_POW_D
342
+ #undef MLD_ROUNDING_H
343
+ #undef mld_decompose
344
+ #undef mld_make_hint
345
+ #undef mld_power2round
346
+ #undef mld_use_hint
347
+ /* mldsa/src/sign.h */
348
+ #undef MLD_DOMAIN_SEPARATION_MAX_BYTES
349
+ #undef MLD_PREHASH_NONE
350
+ #undef MLD_PREHASH_SHA2_224
351
+ #undef MLD_PREHASH_SHA2_256
352
+ #undef MLD_PREHASH_SHA2_384
353
+ #undef MLD_PREHASH_SHA2_512
354
+ #undef MLD_PREHASH_SHA2_512_224
355
+ #undef MLD_PREHASH_SHA2_512_256
356
+ #undef MLD_PREHASH_SHA3_224
357
+ #undef MLD_PREHASH_SHA3_256
358
+ #undef MLD_PREHASH_SHA3_384
359
+ #undef MLD_PREHASH_SHA3_512
360
+ #undef MLD_PREHASH_SHAKE_128
361
+ #undef MLD_PREHASH_SHAKE_256
362
+ #undef MLD_SIGN_H
363
+ #undef mld_prepare_domain_separation_prefix
364
+ #undef mld_sign
365
+ #undef mld_sign_keypair
366
+ #undef mld_sign_keypair_internal
367
+ #undef mld_sign_open
368
+ #undef mld_sign_pk_from_sk
369
+ #undef mld_sign_signature
370
+ #undef mld_sign_signature_extmu
371
+ #undef mld_sign_signature_internal
372
+ #undef mld_sign_signature_pre_hash_internal
373
+ #undef mld_sign_signature_pre_hash_shake256
374
+ #undef mld_sign_verify
375
+ #undef mld_sign_verify_extmu
376
+ #undef mld_sign_verify_internal
377
+ #undef mld_sign_verify_pre_hash_internal
378
+ #undef mld_sign_verify_pre_hash_shake256
379
+
380
+ #if !defined(MLD_CONFIG_MONOBUILD_KEEP_SHARED_HEADERS)
381
+ /*
382
+ * Undefine macros from MLD_CONFIG_PARAMETER_SET-generic files
383
+ */
384
+ /* mldsa/src/ct.h */
385
+ #undef MLD_CT_H
386
+ #undef MLD_USE_ASM_VALUE_BARRIER
387
+ #undef mld_ct_opt_blocker_u64
388
+ /* mldsa/src/debug.h */
389
+ #undef MLD_DEBUG_H
390
+ #undef mld_assert
391
+ #undef mld_assert_abs_bound
392
+ #undef mld_assert_abs_bound_2d
393
+ #undef mld_assert_bound
394
+ #undef mld_assert_bound_2d
395
+ #undef mld_debug_check_assert
396
+ #undef mld_debug_check_bounds
397
+ /* mldsa/src/poly.h */
398
+ #undef MLD_INTT_BOUND
399
+ #undef MLD_NTT_BOUND
400
+ #undef MLD_POLY_H
401
+ #undef mld_poly_add
402
+ #undef mld_poly_caddq
403
+ #undef mld_poly_chknorm
404
+ #undef mld_poly_invntt_tomont
405
+ #undef mld_poly_ntt
406
+ #undef mld_poly_pointwise_montgomery
407
+ #undef mld_poly_power2round
408
+ #undef mld_poly_reduce
409
+ #undef mld_poly_shiftl
410
+ #undef mld_poly_sub
411
+ #undef mld_poly_uniform
412
+ #undef mld_poly_uniform_4x
413
+ #undef mld_polyt0_pack
414
+ #undef mld_polyt0_unpack
415
+ #undef mld_polyt1_pack
416
+ #undef mld_polyt1_unpack
417
+ /* mldsa/src/randombytes.h */
418
+ #undef MLD_RANDOMBYTES_H
419
+ /* mldsa/src/reduce.h */
420
+ #undef MLD_MONT
421
+ #undef MLD_REDUCE32_DOMAIN_MAX
422
+ #undef MLD_REDUCE32_RANGE_MAX
423
+ #undef MLD_REDUCE_H
424
+ /* mldsa/src/symmetric.h */
425
+ #undef MLD_STREAM128_BLOCKBYTES
426
+ #undef MLD_STREAM256_BLOCKBYTES
427
+ #undef MLD_SYMMETRIC_H
428
+ #undef mld_xof128_absorb_once
429
+ #undef mld_xof128_ctx
430
+ #undef mld_xof128_init
431
+ #undef mld_xof128_release
432
+ #undef mld_xof128_squeezeblocks
433
+ #undef mld_xof128_x4_absorb
434
+ #undef mld_xof128_x4_ctx
435
+ #undef mld_xof128_x4_init
436
+ #undef mld_xof128_x4_release
437
+ #undef mld_xof128_x4_squeezeblocks
438
+ #undef mld_xof256_absorb_once
439
+ #undef mld_xof256_ctx
440
+ #undef mld_xof256_init
441
+ #undef mld_xof256_release
442
+ #undef mld_xof256_squeezeblocks
443
+ #undef mld_xof256_x4_absorb
444
+ #undef mld_xof256_x4_ctx
445
+ #undef mld_xof256_x4_init
446
+ #undef mld_xof256_x4_release
447
+ #undef mld_xof256_x4_squeezeblocks
448
+ /* mldsa/src/sys.h */
449
+ #undef MLD_ALIGN
450
+ #undef MLD_ALIGN_UP
451
+ #undef MLD_ALWAYS_INLINE
452
+ #undef MLD_CET_ENDBR
453
+ #undef MLD_CT_TESTING_DECLASSIFY
454
+ #undef MLD_CT_TESTING_SECRET
455
+ #undef MLD_DEFAULT_ALIGN
456
+ #undef MLD_HAVE_INLINE_ASM
457
+ #undef MLD_INLINE
458
+ #undef MLD_MUST_CHECK_RETURN_VALUE
459
+ #undef MLD_RESTRICT
460
+ #undef MLD_STATIC_TESTABLE
461
+ #undef MLD_SYS_AARCH64
462
+ #undef MLD_SYS_AARCH64_EB
463
+ #undef MLD_SYS_APPLE
464
+ #undef MLD_SYS_ARMV81M_MVE
465
+ #undef MLD_SYS_BIG_ENDIAN
466
+ #undef MLD_SYS_H
467
+ #undef MLD_SYS_LINUX
468
+ #undef MLD_SYS_LITTLE_ENDIAN
469
+ #undef MLD_SYS_PPC64LE
470
+ #undef MLD_SYS_RISCV32
471
+ #undef MLD_SYS_RISCV64
472
+ #undef MLD_SYS_RISCV64_RVV
473
+ #undef MLD_SYS_WINDOWS
474
+ #undef MLD_SYS_X86_64
475
+ #undef MLD_SYS_X86_64_AVX2
476
+ /* mldsa/src/cbmc.h */
477
+ #undef MLD_CBMC_H
478
+ #undef __contract__
479
+ #undef __loop__
480
+
481
+ #if !defined(MLD_CONFIG_FIPS202_CUSTOM_HEADER)
482
+ /*
483
+ * Undefine macros from FIPS-202 files
484
+ */
485
+ /* mldsa/src/fips202/fips202.h */
486
+ #undef MLD_FIPS202_FIPS202_H
487
+ #undef MLD_KECCAK_LANES
488
+ #undef SHA3_256_HASHBYTES
489
+ #undef SHA3_256_RATE
490
+ #undef SHA3_512_HASHBYTES
491
+ #undef SHA3_512_RATE
492
+ #undef SHAKE128_RATE
493
+ #undef SHAKE256_RATE
494
+ #undef mld_shake128_absorb
495
+ #undef mld_shake128_finalize
496
+ #undef mld_shake128_init
497
+ #undef mld_shake128_release
498
+ #undef mld_shake128_squeeze
499
+ #undef mld_shake256
500
+ #undef mld_shake256_absorb
501
+ #undef mld_shake256_finalize
502
+ #undef mld_shake256_init
503
+ #undef mld_shake256_release
504
+ #undef mld_shake256_squeeze
505
+ /* mldsa/src/fips202/fips202x4.h */
506
+ #undef MLD_FIPS202_FIPS202X4_H
507
+ #undef mld_shake128x4_absorb_once
508
+ #undef mld_shake128x4_init
509
+ #undef mld_shake128x4_release
510
+ #undef mld_shake128x4_squeezeblocks
511
+ #undef mld_shake256x4_absorb_once
512
+ #undef mld_shake256x4_init
513
+ #undef mld_shake256x4_release
514
+ #undef mld_shake256x4_squeezeblocks
515
+ /* mldsa/src/fips202/keccakf1600.h */
516
+ #undef MLD_FIPS202_KECCAKF1600_H
517
+ #undef MLD_KECCAK_LANES
518
+ #undef MLD_KECCAK_WAY
519
+ #undef mld_keccakf1600_extract_bytes
520
+ #undef mld_keccakf1600_permute
521
+ #undef mld_keccakf1600_xor_bytes
522
+ #undef mld_keccakf1600x4_extract_bytes
523
+ #undef mld_keccakf1600x4_permute
524
+ #undef mld_keccakf1600x4_xor_bytes
525
+ #endif /* !MLD_CONFIG_FIPS202_CUSTOM_HEADER */
526
+
527
+ #if defined(MLD_CONFIG_USE_NATIVE_BACKEND_FIPS202)
528
+ /* mldsa/src/fips202/native/api.h */
529
+ #undef MLD_FIPS202_NATIVE_API_H
530
+ #undef MLD_NATIVE_FUNC_FALLBACK
531
+ #undef MLD_NATIVE_FUNC_SUCCESS
532
+ /* mldsa/src/fips202/native/auto.h */
533
+ #undef MLD_FIPS202_NATIVE_AUTO_H
534
+ #if defined(MLD_SYS_AARCH64)
535
+ /*
536
+ * Undefine macros from native code (FIPS202, AArch64)
537
+ */
538
+ /* mldsa/src/fips202/native/aarch64/auto.h */
539
+ #undef MLD_FIPS202_NATIVE_AARCH64_AUTO_H
540
+ /* mldsa/src/fips202/native/aarch64/src/fips202_native_aarch64.h */
541
+ #undef MLD_FIPS202_NATIVE_AARCH64_SRC_FIPS202_NATIVE_AARCH64_H
542
+ #undef mld_keccak_f1600_x1_scalar_asm
543
+ #undef mld_keccak_f1600_x1_v84a_asm
544
+ #undef mld_keccak_f1600_x2_v84a_asm
545
+ #undef mld_keccak_f1600_x4_v8a_scalar_hybrid_asm
546
+ #undef mld_keccak_f1600_x4_v8a_v84a_scalar_hybrid_asm
547
+ #undef mld_keccakf1600_round_constants
548
+ /* mldsa/src/fips202/native/aarch64/x1_scalar.h */
549
+ #undef MLD_FIPS202_AARCH64_NEED_X1_SCALAR
550
+ #undef MLD_FIPS202_NATIVE_AARCH64_X1_SCALAR_H
551
+ #undef MLD_USE_FIPS202_X1_NATIVE
552
+ /* mldsa/src/fips202/native/aarch64/x1_v84a.h */
553
+ #undef MLD_FIPS202_AARCH64_NEED_X1_V84A
554
+ #undef MLD_FIPS202_NATIVE_AARCH64_X1_V84A_H
555
+ #undef MLD_USE_FIPS202_X1_NATIVE
556
+ /* mldsa/src/fips202/native/aarch64/x2_v84a.h */
557
+ #undef MLD_FIPS202_AARCH64_NEED_X2_V84A
558
+ #undef MLD_FIPS202_NATIVE_AARCH64_X2_V84A_H
559
+ #undef MLD_USE_FIPS202_X4_NATIVE
560
+ /* mldsa/src/fips202/native/aarch64/x4_v8a_scalar.h */
561
+ #undef MLD_FIPS202_AARCH64_NEED_X4_V8A_SCALAR_HYBRID
562
+ #undef MLD_FIPS202_NATIVE_AARCH64_X4_V8A_SCALAR_H
563
+ #undef MLD_USE_FIPS202_X4_NATIVE
564
+ /* mldsa/src/fips202/native/aarch64/x4_v8a_v84a_scalar.h */
565
+ #undef MLD_FIPS202_AARCH64_NEED_X4_V8A_V84A_SCALAR_HYBRID
566
+ #undef MLD_FIPS202_NATIVE_AARCH64_X4_V8A_V84A_SCALAR_H
567
+ #undef MLD_USE_FIPS202_X4_NATIVE
568
+ #endif /* MLD_SYS_AARCH64 */
569
+ #if defined(MLD_SYS_X86_64)
570
+ /*
571
+ * Undefine macros from native code (FIPS202, x86_64)
572
+ */
573
+ /* mldsa/src/fips202/native/x86_64/src/KeccakP_1600_times4_SIMD256.h */
574
+ #undef MLD_FIPS202_NATIVE_X86_64_SRC_KECCAKP_1600_TIMES4_SIMD256_H
575
+ #undef mld_keccakf1600x4_permute24
576
+ /* mldsa/src/fips202/native/x86_64/xkcp.h */
577
+ #undef MLD_FIPS202_NATIVE_X86_64_XKCP_H
578
+ #undef MLD_FIPS202_X86_64_XKCP
579
+ #undef MLD_USE_FIPS202_X4_NATIVE
580
+ #endif /* MLD_SYS_X86_64 */
581
+ #if defined(MLD_SYS_ARMV81M_MVE)
582
+ /*
583
+ * Undefine macros from native code (FIPS202, Armv8.1-M)
584
+ */
585
+ /* mldsa/src/fips202/native/armv81m/mve.h */
586
+ #undef MLD_FIPS202_ARMV81M_NEED_X4
587
+ #undef MLD_FIPS202_NATIVE_ARMV81M
588
+ #undef MLD_FIPS202_NATIVE_ARMV81M_MVE_H
589
+ #undef MLD_USE_FIPS202_X4_NATIVE
590
+ #undef mld_keccak_f1600_x4_native_impl
591
+ /* mldsa/src/fips202/native/armv81m/src/fips202_native_armv81m.h */
592
+ #undef MLD_FIPS202_NATIVE_ARMV81M_SRC_FIPS202_NATIVE_ARMV81M_H
593
+ #undef mld_keccak_f1600_x4_mve_asm
594
+ #undef mld_keccakf1600_round_constants
595
+ #endif /* MLD_SYS_ARMV81M_MVE */
596
+ #endif /* MLD_CONFIG_USE_NATIVE_BACKEND_FIPS202 */
597
+ #if defined(MLD_CONFIG_USE_NATIVE_BACKEND_ARITH)
598
+ /* mldsa/src/native/api.h */
599
+ #undef MLD_INTT_BOUND
600
+ #undef MLD_NATIVE_API_H
601
+ #undef MLD_NATIVE_FUNC_FALLBACK
602
+ #undef MLD_NATIVE_FUNC_SUCCESS
603
+ #undef MLD_NTT_BOUND
604
+ #undef MLD_REDUCE32_RANGE_MAX
605
+ /* mldsa/src/native/meta.h */
606
+ #undef MLD_NATIVE_META_H
607
+ #if defined(MLD_SYS_AARCH64)
608
+ /*
609
+ * Undefine macros from native code (Arith, AArch64)
610
+ */
611
+ /* mldsa/src/native/aarch64/meta.h */
612
+ #undef MLD_ARITH_BACKEND_AARCH64
613
+ #undef MLD_NATIVE_AARCH64_META_H
614
+ #undef MLD_USE_NATIVE_INTT
615
+ #undef MLD_USE_NATIVE_NTT
616
+ #undef MLD_USE_NATIVE_POINTWISE_MONTGOMERY
617
+ #undef MLD_USE_NATIVE_POLYVECL_POINTWISE_ACC_MONTGOMERY_L4
618
+ #undef MLD_USE_NATIVE_POLYVECL_POINTWISE_ACC_MONTGOMERY_L5
619
+ #undef MLD_USE_NATIVE_POLYVECL_POINTWISE_ACC_MONTGOMERY_L7
620
+ #undef MLD_USE_NATIVE_POLYZ_UNPACK_17
621
+ #undef MLD_USE_NATIVE_POLYZ_UNPACK_19
622
+ #undef MLD_USE_NATIVE_POLY_CADDQ
623
+ #undef MLD_USE_NATIVE_POLY_CHKNORM
624
+ #undef MLD_USE_NATIVE_POLY_DECOMPOSE_32
625
+ #undef MLD_USE_NATIVE_POLY_DECOMPOSE_88
626
+ #undef MLD_USE_NATIVE_POLY_USE_HINT_32
627
+ #undef MLD_USE_NATIVE_POLY_USE_HINT_88
628
+ #undef MLD_USE_NATIVE_REJ_UNIFORM
629
+ #undef MLD_USE_NATIVE_REJ_UNIFORM_ETA2
630
+ #undef MLD_USE_NATIVE_REJ_UNIFORM_ETA4
631
+ /* mldsa/src/native/aarch64/src/arith_native_aarch64.h */
632
+ #undef MLD_AARCH64_REJ_UNIFORM_ETA2_BUFLEN
633
+ #undef MLD_AARCH64_REJ_UNIFORM_ETA4_BUFLEN
634
+ #undef MLD_NATIVE_AARCH64_SRC_ARITH_NATIVE_AARCH64_H
635
+ #undef mld_aarch64_intt_zetas_layer123456
636
+ #undef mld_aarch64_intt_zetas_layer78
637
+ #undef mld_aarch64_ntt_zetas_layer123456
638
+ #undef mld_aarch64_ntt_zetas_layer78
639
+ #undef mld_intt_asm
640
+ #undef mld_ntt_asm
641
+ #undef mld_poly_caddq_asm
642
+ #undef mld_poly_chknorm_asm
643
+ #undef mld_poly_decompose_32_asm
644
+ #undef mld_poly_decompose_88_asm
645
+ #undef mld_poly_pointwise_montgomery_asm
646
+ #undef mld_poly_use_hint_32_asm
647
+ #undef mld_poly_use_hint_88_asm
648
+ #undef mld_polyvecl_pointwise_acc_montgomery_l4_asm
649
+ #undef mld_polyvecl_pointwise_acc_montgomery_l5_asm
650
+ #undef mld_polyvecl_pointwise_acc_montgomery_l7_asm
651
+ #undef mld_polyz_unpack_17_asm
652
+ #undef mld_polyz_unpack_17_indices
653
+ #undef mld_polyz_unpack_19_asm
654
+ #undef mld_polyz_unpack_19_indices
655
+ #undef mld_rej_uniform_asm
656
+ #undef mld_rej_uniform_eta2_asm
657
+ #undef mld_rej_uniform_eta4_asm
658
+ #undef mld_rej_uniform_eta_table
659
+ #undef mld_rej_uniform_table
660
+ #endif /* MLD_SYS_AARCH64 */
661
+ #if defined(MLD_SYS_X86_64)
662
+ /*
663
+ * Undefine macros from native code (Arith, X86_64)
664
+ */
665
+ /* mldsa/src/native/x86_64/meta.h */
666
+ #undef MLD_ARITH_BACKEND_X86_64_DEFAULT
667
+ #undef MLD_NATIVE_X86_64_META_H
668
+ #undef MLD_USE_NATIVE_INTT
669
+ #undef MLD_USE_NATIVE_NTT
670
+ #undef MLD_USE_NATIVE_NTT_CUSTOM_ORDER
671
+ #undef MLD_USE_NATIVE_POINTWISE_MONTGOMERY
672
+ #undef MLD_USE_NATIVE_POLYVECL_POINTWISE_ACC_MONTGOMERY_L4
673
+ #undef MLD_USE_NATIVE_POLYVECL_POINTWISE_ACC_MONTGOMERY_L5
674
+ #undef MLD_USE_NATIVE_POLYVECL_POINTWISE_ACC_MONTGOMERY_L7
675
+ #undef MLD_USE_NATIVE_POLYZ_UNPACK_17
676
+ #undef MLD_USE_NATIVE_POLYZ_UNPACK_19
677
+ #undef MLD_USE_NATIVE_POLY_CADDQ
678
+ #undef MLD_USE_NATIVE_POLY_CHKNORM
679
+ #undef MLD_USE_NATIVE_POLY_DECOMPOSE_32
680
+ #undef MLD_USE_NATIVE_POLY_DECOMPOSE_88
681
+ #undef MLD_USE_NATIVE_POLY_USE_HINT_32
682
+ #undef MLD_USE_NATIVE_POLY_USE_HINT_88
683
+ #undef MLD_USE_NATIVE_REJ_UNIFORM
684
+ #undef MLD_USE_NATIVE_REJ_UNIFORM_ETA2
685
+ #undef MLD_USE_NATIVE_REJ_UNIFORM_ETA4
686
+ /* mldsa/src/native/x86_64/src/arith_native_x86_64.h */
687
+ #undef MLD_AVX2_REJ_UNIFORM_BUFLEN
688
+ #undef MLD_AVX2_REJ_UNIFORM_ETA2_BUFLEN
689
+ #undef MLD_AVX2_REJ_UNIFORM_ETA4_BUFLEN
690
+ #undef MLD_NATIVE_X86_64_SRC_ARITH_NATIVE_X86_64_H
691
+ #undef mld_invntt_avx2
692
+ #undef mld_ntt_avx2
693
+ #undef mld_nttunpack_avx2
694
+ #undef mld_pointwise_acc_l4_avx2
695
+ #undef mld_pointwise_acc_l5_avx2
696
+ #undef mld_pointwise_acc_l7_avx2
697
+ #undef mld_pointwise_avx2
698
+ #undef mld_poly_caddq_avx2
699
+ #undef mld_poly_chknorm_avx2
700
+ #undef mld_poly_decompose_32_avx2
701
+ #undef mld_poly_decompose_88_avx2
702
+ #undef mld_poly_use_hint_32_avx2
703
+ #undef mld_poly_use_hint_88_avx2
704
+ #undef mld_polyz_unpack_17_avx2
705
+ #undef mld_polyz_unpack_19_avx2
706
+ #undef mld_rej_uniform_avx2
707
+ #undef mld_rej_uniform_eta2_avx2
708
+ #undef mld_rej_uniform_eta4_avx2
709
+ #undef mld_rej_uniform_table
710
+ /* mldsa/src/native/x86_64/src/consts.h */
711
+ #undef MLD_AVX2_BACKEND_DATA_OFFSET_8XDIV
712
+ #undef MLD_AVX2_BACKEND_DATA_OFFSET_8XDIV_QINV
713
+ #undef MLD_AVX2_BACKEND_DATA_OFFSET_8XQ
714
+ #undef MLD_AVX2_BACKEND_DATA_OFFSET_8XQINV
715
+ #undef MLD_AVX2_BACKEND_DATA_OFFSET_ZETAS
716
+ #undef MLD_AVX2_BACKEND_DATA_OFFSET_ZETAS_QINV
717
+ #undef MLD_NATIVE_X86_64_SRC_CONSTS_H
718
+ #undef mld_qdata
719
+ #endif /* MLD_SYS_X86_64 */
720
+ #endif /* MLD_CONFIG_USE_NATIVE_BACKEND_ARITH */
721
+ #endif /* !MLD_CONFIG_MONOBUILD_KEEP_SHARED_HEADERS */