pq_crypto 0.6.4 → 0.6.6

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 (213) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +180 -0
  3. data/README.md +7 -0
  4. data/ext/pqcrypto/extconf.rb +4 -1
  5. data/ext/pqcrypto/pq_externalmu.c +35 -0
  6. data/ext/pqcrypto/pqcrypto_native_api.h +85 -75
  7. data/ext/pqcrypto/pqcrypto_ruby_secure.c +16 -9
  8. data/ext/pqcrypto/pqcrypto_secure.c +43 -33
  9. data/ext/pqcrypto/pqcrypto_secure.h +52 -47
  10. data/ext/pqcrypto/pqcrypto_version.h +1 -1
  11. data/ext/pqcrypto/vendor/.vendored +7 -7
  12. data/ext/pqcrypto/vendor/mldsa-native/BUILDING.md +5 -2
  13. data/ext/pqcrypto/vendor/mldsa-native/LICENSE +21 -2
  14. data/ext/pqcrypto/vendor/mldsa-native/README.md +20 -7
  15. data/ext/pqcrypto/vendor/mldsa-native/RELEASE.md +160 -0
  16. data/ext/pqcrypto/vendor/mldsa-native/SECURITY.md +1 -1
  17. data/ext/pqcrypto/vendor/mldsa-native/mldsa/README.md +2 -2
  18. data/ext/pqcrypto/vendor/mldsa-native/mldsa/mldsa_native.c +85 -59
  19. data/ext/pqcrypto/vendor/mldsa-native/mldsa/mldsa_native.h +292 -348
  20. data/ext/pqcrypto/vendor/mldsa-native/mldsa/mldsa_native_asm.S +122 -76
  21. data/ext/pqcrypto/vendor/mldsa-native/mldsa/mldsa_native_config.h +184 -86
  22. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/cbmc.h +49 -4
  23. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/common.h +49 -81
  24. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/context.h +152 -0
  25. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/ct.h +25 -12
  26. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/debug.c +2 -0
  27. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/debug.h +2 -0
  28. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/fips202x4.c +2 -2
  29. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/keccakf1600.c +9 -11
  30. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/auto.h +19 -11
  31. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x1_scalar_aarch64_asm.S +6 -4
  32. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x1_v84a_aarch64_asm.S +7 -4
  33. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x2_v84a_aarch64_asm.S +7 -4
  34. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x4_v8a_scalar_hybrid_aarch64_asm.S +12 -9
  35. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x4_v8a_v84a_scalar_hybrid_aarch64_asm.S +12 -9
  36. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/x1_scalar.h +1 -1
  37. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/x1_v84a.h +3 -2
  38. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/x2_v84a.h +3 -2
  39. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/x4_v8a_scalar.h +6 -1
  40. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/x4_v8a_v84a_scalar.h +3 -2
  41. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/api.h +11 -11
  42. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/armv81m/mve.h +9 -22
  43. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/armv81m/src/keccak_f1600_x4_mve.S +8 -5
  44. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/armv81m/src/keccak_f1600_x4_mve.c +1 -0
  45. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/armv81m/src/{state_extract_bytes_x4_mve.S → keccak_f1600_x4_state_extract_bytes_mve.S} +14 -14
  46. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/armv81m/src/{state_xor_bytes_x4_mve.S → keccak_f1600_x4_state_xor_bytes_mve.S} +12 -12
  47. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/auto.h +5 -4
  48. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/x86_64/keccak_f1600_x4_avx2.h +2 -2
  49. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/x86_64/src/fips202_native_x86_64.h +1 -0
  50. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/x86_64/src/keccak_f1600_x4_avx2_asm.S +36 -2
  51. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/meta.h +62 -4
  52. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/arith_native_aarch64.h +87 -54
  53. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/{intt_aarch64_asm.S → mldsa_intt_aarch64_asm.S} +39 -6
  54. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/{ntt_aarch64_asm.S → mldsa_ntt_aarch64_asm.S} +39 -6
  55. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/{pointwise_montgomery_aarch64_asm.S → mldsa_pointwise_montgomery_aarch64_asm.S} +25 -3
  56. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/{poly_caddq_aarch64_asm.S → mldsa_poly_caddq_aarch64_asm.S} +19 -3
  57. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/{poly_chknorm_aarch64_asm.S → mldsa_poly_chknorm_aarch64_asm.S} +24 -3
  58. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/{poly_decompose_32_aarch64_asm.S → mldsa_poly_decompose_32_aarch64_asm.S} +25 -3
  59. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/{poly_decompose_88_aarch64_asm.S → mldsa_poly_decompose_88_aarch64_asm.S} +25 -3
  60. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/{poly_use_hint_32_aarch64_asm.S → mldsa_poly_use_hint_32_aarch64_asm.S} +25 -3
  61. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/{poly_use_hint_88_aarch64_asm.S → mldsa_poly_use_hint_88_aarch64_asm.S} +25 -3
  62. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/{mld_polyvecl_pointwise_acc_montgomery_l4_aarch64_asm.S → mldsa_polyvecl_pointwise_acc_montgomery_l4_aarch64_asm.S} +31 -3
  63. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/{mld_polyvecl_pointwise_acc_montgomery_l5_aarch64_asm.S → mldsa_polyvecl_pointwise_acc_montgomery_l5_aarch64_asm.S} +31 -3
  64. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/{mld_polyvecl_pointwise_acc_montgomery_l7_aarch64_asm.S → mldsa_polyvecl_pointwise_acc_montgomery_l7_aarch64_asm.S} +31 -3
  65. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/{polyz_unpack_17_aarch64_asm.S → mldsa_polyz_unpack_17_aarch64_asm.S} +31 -3
  66. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/{polyz_unpack_19_aarch64_asm.S → mldsa_polyz_unpack_19_aarch64_asm.S} +31 -3
  67. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/{rej_uniform_aarch64_asm.S → mldsa_rej_uniform_aarch64_asm.S} +48 -15
  68. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/{rej_uniform_eta2_aarch64_asm.S → mldsa_rej_uniform_eta2_aarch64_asm.S} +42 -9
  69. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/{rej_uniform_eta4_aarch64_asm.S → mldsa_rej_uniform_eta4_aarch64_asm.S} +42 -9
  70. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/api.h +11 -3
  71. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/meta.h +3 -2
  72. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/meta.h +28 -28
  73. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/arith_native_x86_64.h +171 -49
  74. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/{intt_avx2_asm.S → mldsa_intt_avx2_asm.S} +23 -1
  75. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/{ntt_avx2_asm.S → mldsa_ntt_avx2_asm.S} +23 -1
  76. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/{nttunpack_avx2_asm.S → mldsa_nttunpack_avx2_asm.S} +17 -1
  77. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/{pointwise_acc_l4_avx2_asm.S → mldsa_pointwise_acc_l4_avx2_asm.S} +37 -3
  78. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/{pointwise_acc_l5_avx2_asm.S → mldsa_pointwise_acc_l5_avx2_asm.S} +37 -3
  79. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/{pointwise_acc_l7_avx2_asm.S → mldsa_pointwise_acc_l7_avx2_asm.S} +37 -3
  80. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/{pointwise_avx2_asm.S → mldsa_pointwise_avx2_asm.S} +31 -3
  81. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/{poly_caddq_avx2_asm.S → mldsa_poly_caddq_avx2_asm.S} +18 -9
  82. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/mldsa_poly_chknorm_avx2_asm.S +176 -0
  83. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/mldsa_poly_decompose_32_avx2_asm.S +490 -0
  84. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/mldsa_poly_decompose_88_avx2_asm.S +489 -0
  85. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/mldsa_poly_use_hint_32_avx2_asm.S +123 -0
  86. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/mldsa_poly_use_hint_88_avx2_asm.S +125 -0
  87. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/mldsa_polyz_unpack_17_avx2_asm.S +355 -0
  88. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/mldsa_polyz_unpack_19_avx2_asm.S +355 -0
  89. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/mldsa_rej_uniform_avx2_asm.S +132 -0
  90. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/mldsa_rej_uniform_eta2_avx2_asm.S +205 -0
  91. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/mldsa_rej_uniform_eta4_avx2_asm.S +176 -0
  92. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/packing.c +27 -36
  93. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/packing.h +42 -8
  94. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/params.h +93 -17
  95. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/poly.c +74 -15
  96. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/poly.h +97 -11
  97. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/poly_kl.c +7 -38
  98. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/poly_kl.h +49 -7
  99. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/polyvec.c +16 -17
  100. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/polyvec.h +26 -9
  101. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/polyvec_lazy.c +3 -0
  102. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/polyvec_lazy.h +18 -19
  103. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/reduce.h +15 -3
  104. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/rounding.h +28 -6
  105. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/sign.c +311 -246
  106. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/sign.h +245 -240
  107. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/sys.h +64 -5
  108. data/ext/pqcrypto/vendor/mlkem-native/BUILDING.md +5 -2
  109. data/ext/pqcrypto/vendor/mlkem-native/LICENSE +21 -3
  110. data/ext/pqcrypto/vendor/mlkem-native/README.md +4 -6
  111. data/ext/pqcrypto/vendor/mlkem-native/RELEASE.md +211 -0
  112. data/ext/pqcrypto/vendor/mlkem-native/mlkem/README.md +2 -2
  113. data/ext/pqcrypto/vendor/mlkem-native/mlkem/mlkem_native.c +25 -34
  114. data/ext/pqcrypto/vendor/mlkem-native/mlkem/mlkem_native.h +79 -142
  115. data/ext/pqcrypto/vendor/mlkem-native/mlkem/mlkem_native_asm.S +62 -71
  116. data/ext/pqcrypto/vendor/mlkem-native/mlkem/mlkem_native_config.h +77 -39
  117. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/cbmc.h +25 -0
  118. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/common.h +48 -34
  119. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/compress.c +25 -5
  120. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/compress.h +14 -0
  121. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/context.h +51 -0
  122. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/fips202.h +2 -2
  123. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/keccakf1600.c +8 -8
  124. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/auto.h +20 -12
  125. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/src/keccak_f1600_x1_scalar_aarch64_asm.S +5 -3
  126. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/src/keccak_f1600_x1_v84a_aarch64_asm.S +5 -2
  127. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/src/keccak_f1600_x2_v84a_aarch64_asm.S +5 -2
  128. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/src/keccak_f1600_x4_v8a_scalar_hybrid_aarch64_asm.S +10 -7
  129. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/src/keccak_f1600_x4_v8a_v84a_scalar_hybrid_aarch64_asm.S +10 -7
  130. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/x1_scalar.h +1 -1
  131. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/x1_v84a.h +3 -2
  132. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/x2_v84a.h +3 -2
  133. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/x4_v8a_scalar.h +6 -1
  134. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/x4_v8a_v84a_scalar.h +3 -2
  135. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/api.h +11 -11
  136. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/armv81m/mve.h +8 -22
  137. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/armv81m/src/keccak_f1600_x4_mve.S +8 -5
  138. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/armv81m/src/{state_extract_bytes_x4_mve.S → keccak_f1600_x4_state_extract_bytes_mve.S} +14 -14
  139. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/armv81m/src/{state_xor_bytes_x4_mve.S → keccak_f1600_x4_state_xor_bytes_mve.S} +12 -12
  140. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/x86_64/keccak_f1600_x4_avx2.h +2 -2
  141. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/x86_64/src/keccak_f1600_x4_avx2_asm.S +36 -2
  142. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/indcpa.c +22 -0
  143. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/indcpa.h +20 -11
  144. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/kem.c +39 -11
  145. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/kem.h +64 -15
  146. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/meta.h +44 -2
  147. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/aarch64_zetas.c +2 -0
  148. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/arith_native_aarch64.h +11 -10
  149. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{intt_aarch64_asm.S → mlkem_intt_aarch64_asm.S} +16 -9
  150. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{ntt_aarch64_asm.S → mlkem_ntt_aarch64_asm.S} +10 -7
  151. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{poly_mulcache_compute_aarch64_asm.S → mlkem_poly_mulcache_compute_aarch64_asm.S} +6 -3
  152. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{poly_reduce_aarch64_asm.S → mlkem_poly_reduce_aarch64_asm.S} +6 -3
  153. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{poly_tobytes_aarch64_asm.S → mlkem_poly_tobytes_aarch64_asm.S} +12 -5
  154. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{poly_tomont_aarch64_asm.S → mlkem_poly_tomont_aarch64_asm.S} +11 -5
  155. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{polyvec_basemul_acc_montgomery_cached_k2_aarch64_asm.S → mlkem_polyvec_basemul_acc_montgomery_cached_k2_aarch64_asm.S} +6 -3
  156. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{polyvec_basemul_acc_montgomery_cached_k3_aarch64_asm.S → mlkem_polyvec_basemul_acc_montgomery_cached_k3_aarch64_asm.S} +6 -3
  157. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{polyvec_basemul_acc_montgomery_cached_k4_aarch64_asm.S → mlkem_polyvec_basemul_acc_montgomery_cached_k4_aarch64_asm.S} +6 -3
  158. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{rej_uniform_aarch64_asm.S → mlkem_rej_uniform_aarch64_asm.S} +17 -17
  159. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/api.h +21 -8
  160. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/meta.h +1 -1
  161. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/ppc64le/meta.h +4 -0
  162. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/ppc64le/src/{intt_ppc_asm.S → mlkem_intt_ppc_asm.S} +29 -5
  163. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/ppc64le/src/{ntt_ppc_asm.S → mlkem_ntt_ppc_asm.S} +22 -1
  164. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/ppc64le/src/{poly_tomont_ppc_asm.S → mlkem_poly_tomont_ppc_asm.S} +25 -3
  165. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/ppc64le/src/{reduce_ppc_asm.S → mlkem_reduce_ppc_asm.S} +22 -1
  166. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/riscv64/meta.h +4 -0
  167. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/riscv64/src/arith_native_riscv64.h +4 -0
  168. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/riscv64/src/rv64v_poly.c +6 -2
  169. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/meta.h +45 -25
  170. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/arith_native_x86_64.h +20 -20
  171. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/compress_consts.c +14 -3
  172. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/compress_consts.h +8 -0
  173. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{intt_avx2_asm.S → mlkem_intt_avx2_asm.S} +27 -3
  174. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{ntt_avx2_asm.S → mlkem_ntt_avx2_asm.S} +23 -1
  175. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{nttfrombytes_avx2_asm.S → mlkem_nttfrombytes_avx2_asm.S} +27 -3
  176. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{ntttobytes_avx2_asm.S → mlkem_ntttobytes_avx2_asm.S} +27 -3
  177. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{nttunpack_avx2_asm.S → mlkem_nttunpack_avx2_asm.S} +17 -1
  178. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{poly_compress_d10_avx2_asm.S → mlkem_poly_compress_d10_avx2_asm.S} +34 -3
  179. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{poly_compress_d11_avx2_asm.S → mlkem_poly_compress_d11_avx2_asm.S} +33 -2
  180. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{poly_compress_d4_avx2_asm.S → mlkem_poly_compress_d4_avx2_asm.S} +34 -3
  181. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{poly_compress_d5_avx2_asm.S → mlkem_poly_compress_d5_avx2_asm.S} +33 -2
  182. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{poly_decompress_d10_avx2_asm.S → mlkem_poly_decompress_d10_avx2_asm.S} +32 -3
  183. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{poly_decompress_d11_avx2_asm.S → mlkem_poly_decompress_d11_avx2_asm.S} +32 -2
  184. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{poly_decompress_d4_avx2_asm.S → mlkem_poly_decompress_d4_avx2_asm.S} +32 -3
  185. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{poly_decompress_d5_avx2_asm.S → mlkem_poly_decompress_d5_avx2_asm.S} +32 -2
  186. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{poly_mulcache_compute_avx2_asm.S → mlkem_poly_mulcache_compute_avx2_asm.S} +29 -1
  187. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{polyvec_basemul_acc_montgomery_cached_k2_avx2_asm.S → mlkem_polyvec_basemul_acc_montgomery_cached_k2_avx2_asm.S} +35 -1
  188. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{polyvec_basemul_acc_montgomery_cached_k3_avx2_asm.S → mlkem_polyvec_basemul_acc_montgomery_cached_k3_avx2_asm.S} +35 -1
  189. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{polyvec_basemul_acc_montgomery_cached_k4_avx2_asm.S → mlkem_polyvec_basemul_acc_montgomery_cached_k4_avx2_asm.S} +35 -1
  190. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{reduce_avx2_asm.S → mlkem_reduce_avx2_asm.S} +17 -1
  191. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{rej_uniform_avx2_asm.S → mlkem_rej_uniform_avx2_asm.S} +40 -7
  192. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{tomont_avx2_asm.S → mlkem_tomont_avx2_asm.S} +20 -3
  193. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/poly.c +7 -2
  194. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/poly.h +6 -0
  195. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/poly_k.c +25 -4
  196. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/poly_k.h +33 -4
  197. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/sampling.c +4 -0
  198. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/sampling.h +4 -0
  199. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/sys.h +21 -3
  200. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/verify.h +11 -10
  201. data/lib/pq_crypto/version.rb +1 -1
  202. data/script/vendor_libs.rb +6 -6
  203. metadata +79 -79
  204. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/poly_chknorm_avx2.c +0 -52
  205. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/poly_decompose_32_avx2.c +0 -157
  206. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/poly_decompose_88_avx2.c +0 -157
  207. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/poly_use_hint_32_avx2.c +0 -103
  208. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/poly_use_hint_88_avx2.c +0 -105
  209. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/polyz_unpack_17_avx2.c +0 -94
  210. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/polyz_unpack_19_avx2.c +0 -96
  211. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/rej_uniform_avx2.c +0 -126
  212. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/rej_uniform_eta2_avx2.c +0 -157
  213. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/rej_uniform_eta4_avx2.c +0 -141
@@ -4,5 +4,5 @@
4
4
 
5
5
  ## Reporting security bugs
6
6
 
7
- If you think you have found a security bug in mlkem-native, please report the vulnerability through
7
+ If you think you have found a security bug in mldsa-native, please report the vulnerability through
8
8
  Github's [private vulnerability reporting](https://github.com/pq-code-package/mldsa-native/security).
@@ -8,7 +8,7 @@ This is the main source tree of mldsa-native.
8
8
 
9
9
  To build mldsa-native for a fixed parameter set (ML-DSA-44/65/87), build the compilation units in `src/*` separately, and link to an RNG and your application. See [examples/basic](../examples/basic) for a simple example.
10
10
 
11
- Alternatively, you can use the auto-generated helper files [mldsa_native.c](mldsa_native.c) and [mldsa_native_asm.S](mldsa_native_asm.S), which bundle all *.c and *.S files together. See [examples/monolithic_build](../examples/monolithic_build) and [examples/monolithic_build_native](../examples/monolithic_build_native) for examples with and without native code.
11
+ Alternatively, you can use the auto-generated helper files [mldsa_native.c](mldsa_native.c) and [mldsa_native_asm.S](mldsa_native_asm.S), which bundle all *.c and *.S files together. See [examples/monolithic_build](../examples/monolithic_build) and [examples/monolithic_build_native](../examples/monolithic_build_native) for examples without and with native code.
12
12
 
13
13
  ## Configuration
14
14
 
@@ -20,4 +20,4 @@ The public API is defined in [mldsa_native.h](mldsa_native.h).
20
20
 
21
21
  ## Supporting multiple parameter sets
22
22
 
23
- If you want to support multiple parameter sets, build the library once per parameter set you want to support. Set `MLD_CONFIG_MULTILEVEL_WITH_SHARED` for one of the builds, and `MLD_CONFIG_MULTILEVEL_NO_SHARED` for the others, to avoid duplicating shared functionality. Finally, link with RNG and your application as before. This is demonstrated in the examples [examples/multilevel_build](../examples/multilevel_build), [examples/multilevel_build_native](../examples/multilevel_build_native), [examples/monolithic_build_multilevel](../examples/monolithic_build_multilevel) and [examples/monolithic_build_multilevel_native](../examples/monolithic_build_multilevel_native).
23
+ If you want to support multiple parameter sets, build the library once per parameter set you want to support. Set `MLD_CONFIG_MULTILEVEL_BUILD` for all builds, `MLD_CONFIG_MULTILEVEL_WITH_SHARED` for one of them, and `MLD_CONFIG_MULTILEVEL_NO_SHARED` for the others, to avoid duplicating shared functionality. Finally, link with RNG and your application as before. This is demonstrated in the examples [examples/multilevel_build](../examples/multilevel_build), [examples/multilevel_build_native](../examples/multilevel_build_native), [examples/monolithic_build_multilevel](../examples/monolithic_build_multilevel) and [examples/monolithic_build_multilevel_native](../examples/monolithic_build_multilevel_native).
@@ -83,18 +83,8 @@
83
83
  #endif /* MLD_SYS_AARCH64 */
84
84
  #if defined(MLD_SYS_X86_64)
85
85
  #include "src/native/x86_64/src/consts.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
86
  #include "src/native/x86_64/src/rej_uniform_table.c"
97
- #endif /* MLD_SYS_X86_64 */
87
+ #endif
98
88
  #endif /* MLD_CONFIG_USE_NATIVE_BACKEND_ARITH */
99
89
 
100
90
  #if defined(MLD_CONFIG_USE_NATIVE_BACKEND_FIPS202)
@@ -125,9 +115,6 @@
125
115
  * Undefine macros from MLD_CONFIG_PARAMETER_SET-specific files
126
116
  */
127
117
  /* mldsa/mldsa_native.h */
128
- #undef CRYPTO_BYTES
129
- #undef CRYPTO_PUBLICKEYBYTES
130
- #undef CRYPTO_SECRETKEYBYTES
131
118
  #undef MLDSA44_BYTES
132
119
  #undef MLDSA44_CRHBYTES
133
120
  #undef MLDSA44_PUBLICKEYBYTES
@@ -162,19 +149,19 @@
162
149
  #undef MLD_API_CONCAT
163
150
  #undef MLD_API_CONCAT_
164
151
  #undef MLD_API_CONCAT_UNDERSCORE
165
- #undef MLD_API_LEGACY_CONFIG
166
152
  #undef MLD_API_MUST_CHECK_RETURN_VALUE
167
153
  #undef MLD_API_NAMESPACE
154
+ #undef MLD_API_NAMESPACE_PREFIX
168
155
  #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
156
  #undef MLD_DOMAIN_SEPARATION_MAX_BYTES
175
157
  #undef MLD_ERR_FAIL
158
+ #undef MLD_ERR_INVALID_ARG
159
+ #undef MLD_ERR_INVALID_KEY
160
+ #undef MLD_ERR_INVALID_SIGNATURE
176
161
  #undef MLD_ERR_OUT_OF_MEMORY
162
+ #undef MLD_ERR_PCT_FAIL
177
163
  #undef MLD_ERR_RNG_FAIL
164
+ #undef MLD_ERR_SIGNING_PAUSED
178
165
  #undef MLD_ERR_SIGN_ATTEMPTS_EXHAUSTED
179
166
  #undef MLD_H
180
167
  #undef MLD_MAX3_
@@ -213,15 +200,9 @@
213
200
  #undef MLD_TOTAL_ALLOC_87_PK_FROM_SK
214
201
  #undef MLD_TOTAL_ALLOC_87_SIGN
215
202
  #undef MLD_TOTAL_ALLOC_87_VERIFY
216
- #undef crypto_sign
217
- #undef crypto_sign_keypair
218
- #undef crypto_sign_open
219
- #undef crypto_sign_signature
220
- #undef crypto_sign_verify
221
203
  /* mldsa/src/common.h */
222
204
  #undef MLD_ADD_PARAM_SET
223
205
  #undef MLD_ALLOC
224
- #undef MLD_ANY_ERROR
225
206
  #undef MLD_APPLY
226
207
  #undef MLD_ASM_FN_SIZE
227
208
  #undef MLD_ASM_FN_SYMBOL
@@ -230,20 +211,15 @@
230
211
  #undef MLD_COMMON_H
231
212
  #undef MLD_CONCAT
232
213
  #undef MLD_CONCAT_
233
- #undef MLD_CONTEXT_PARAMETERS_0
234
- #undef MLD_CONTEXT_PARAMETERS_1
235
- #undef MLD_CONTEXT_PARAMETERS_2
236
- #undef MLD_CONTEXT_PARAMETERS_3
237
- #undef MLD_CONTEXT_PARAMETERS_4
238
- #undef MLD_CONTEXT_PARAMETERS_5
239
- #undef MLD_CONTEXT_PARAMETERS_6
240
- #undef MLD_CONTEXT_PARAMETERS_7
241
- #undef MLD_CONTEXT_PARAMETERS_8
242
- #undef MLD_CONTEXT_PARAMETERS_9
243
214
  #undef MLD_EMPTY_CU
244
215
  #undef MLD_ERR_FAIL
216
+ #undef MLD_ERR_INVALID_ARG
217
+ #undef MLD_ERR_INVALID_KEY
218
+ #undef MLD_ERR_INVALID_SIGNATURE
245
219
  #undef MLD_ERR_OUT_OF_MEMORY
220
+ #undef MLD_ERR_PCT_FAIL
246
221
  #undef MLD_ERR_RNG_FAIL
222
+ #undef MLD_ERR_SIGNING_PAUSED
247
223
  #undef MLD_ERR_SIGN_ATTEMPTS_EXHAUSTED
248
224
  #undef MLD_EXTERNAL_API
249
225
  #undef MLD_FIPS202X4_HEADER_FILE
@@ -280,22 +256,52 @@
280
256
  #undef MLDSA_ETA
281
257
  #undef MLDSA_GAMMA1
282
258
  #undef MLDSA_GAMMA2
259
+ #undef MLDSA_GAMMA2_32
260
+ #undef MLDSA_GAMMA2_88
283
261
  #undef MLDSA_K
284
262
  #undef MLDSA_L
285
263
  #undef MLDSA_N
286
264
  #undef MLDSA_OMEGA
265
+ #undef MLDSA_PK_END
266
+ #undef MLDSA_PK_RHO_BYTES
267
+ #undef MLDSA_PK_RHO_OFFSET
268
+ #undef MLDSA_PK_T1_BYTES
269
+ #undef MLDSA_PK_T1_OFFSET
287
270
  #undef MLDSA_POLYETA_PACKEDBYTES
288
271
  #undef MLDSA_POLYT0_PACKEDBYTES
289
272
  #undef MLDSA_POLYT1_PACKEDBYTES
290
273
  #undef MLDSA_POLYVECH_PACKEDBYTES
291
274
  #undef MLDSA_POLYW1_PACKEDBYTES
275
+ #undef MLDSA_POLYW1_PACKEDBYTES_32
276
+ #undef MLDSA_POLYW1_PACKEDBYTES_88
292
277
  #undef MLDSA_POLYZ_PACKEDBYTES
293
278
  #undef MLDSA_Q
294
279
  #undef MLDSA_Q_HALF
295
280
  #undef MLDSA_RNDBYTES
296
281
  #undef MLDSA_SEEDBYTES
282
+ #undef MLDSA_SIG_C_BYTES
283
+ #undef MLDSA_SIG_C_OFFSET
284
+ #undef MLDSA_SIG_END
285
+ #undef MLDSA_SIG_H_BYTES
286
+ #undef MLDSA_SIG_H_OFFSET
287
+ #undef MLDSA_SIG_Z_BYTES
288
+ #undef MLDSA_SIG_Z_OFFSET
289
+ #undef MLDSA_SK_END
290
+ #undef MLDSA_SK_KEY_BYTES
291
+ #undef MLDSA_SK_KEY_OFFSET
292
+ #undef MLDSA_SK_RHO_BYTES
293
+ #undef MLDSA_SK_RHO_OFFSET
294
+ #undef MLDSA_SK_S1_BYTES
295
+ #undef MLDSA_SK_S1_OFFSET
296
+ #undef MLDSA_SK_S2_BYTES
297
+ #undef MLDSA_SK_S2_OFFSET
298
+ #undef MLDSA_SK_T0_BYTES
299
+ #undef MLDSA_SK_T0_OFFSET
300
+ #undef MLDSA_SK_TR_BYTES
301
+ #undef MLDSA_SK_TR_OFFSET
297
302
  #undef MLDSA_TAU
298
303
  #undef MLDSA_TRBYTES
304
+ #undef MLD_MAX_KAPPA
299
305
  #undef MLD_PARAMS_H
300
306
  /* mldsa/src/poly_kl.h */
301
307
  #undef MLD_POLYETA_UNPACK_LOWER_BOUND
@@ -408,10 +414,8 @@
408
414
  #undef MLD_PREHASH_SHAKE_256
409
415
  #undef MLD_SIGN_H
410
416
  #undef mld_prepare_domain_separation_prefix
411
- #undef mld_sign
412
417
  #undef mld_sign_keypair
413
418
  #undef mld_sign_keypair_internal
414
- #undef mld_sign_open
415
419
  #undef mld_sign_pk_from_sk
416
420
  #undef mld_sign_signature
417
421
  #undef mld_sign_signature_extmu
@@ -428,6 +432,22 @@
428
432
  /*
429
433
  * Undefine macros from MLD_CONFIG_PARAMETER_SET-generic files
430
434
  */
435
+ /* mldsa/src/context.h */
436
+ #undef MLD_CONTEXT_H
437
+ #undef MLD_CONTEXT_PARAMETERS_0
438
+ #undef MLD_CONTEXT_PARAMETERS_1
439
+ #undef MLD_CONTEXT_PARAMETERS_2
440
+ #undef MLD_CONTEXT_PARAMETERS_3
441
+ #undef MLD_CONTEXT_PARAMETERS_4
442
+ #undef MLD_CONTEXT_PARAMETERS_5
443
+ #undef MLD_CONTEXT_PARAMETERS_6
444
+ #undef MLD_CONTEXT_PARAMETERS_7
445
+ #undef MLD_CONTEXT_PARAMETERS_8
446
+ #undef MLD_CONTEXT_PARAMETERS_9
447
+ #undef MLD_CONTEXT_UNUSED
448
+ #undef mld_sign_attempt
449
+ #undef mld_sign_finish
450
+ #undef mld_sign_resume
431
451
  /* mldsa/src/ct.h */
432
452
  #undef MLD_CT_H
433
453
  #undef MLD_USE_ASM_VALUE_BARRIER
@@ -442,6 +462,7 @@
442
462
  #undef mld_debug_check_assert
443
463
  #undef mld_debug_check_bounds
444
464
  /* mldsa/src/poly.h */
465
+ #undef MLD_FQMUL_BOUND
445
466
  #undef MLD_INTT_BOUND
446
467
  #undef MLD_NTT_BOUND
447
468
  #undef MLD_POLY_H
@@ -461,6 +482,8 @@
461
482
  #undef mld_polyt0_unpack
462
483
  #undef mld_polyt1_pack
463
484
  #undef mld_polyt1_unpack
485
+ #undef mld_polyw1_pack_32
486
+ #undef mld_polyw1_pack_88
464
487
  /* mldsa/src/randombytes.h */
465
488
  #undef MLD_RANDOMBYTES_H
466
489
  /* mldsa/src/reduce.h */
@@ -503,10 +526,14 @@
503
526
  #undef MLD_HAVE_INLINE_ASM
504
527
  #undef MLD_INLINE
505
528
  #undef MLD_MUST_CHECK_RETURN_VALUE
529
+ #undef MLD_NOINLINE
506
530
  #undef MLD_RESTRICT
507
531
  #undef MLD_STATIC_TESTABLE
532
+ #undef MLD_SYSV_ABI
533
+ #undef MLD_SYSV_ABI_SUPPORTED
508
534
  #undef MLD_SYS_AARCH64
509
535
  #undef MLD_SYS_AARCH64_EB
536
+ #undef MLD_SYS_AARCH64_NEON
510
537
  #undef MLD_SYS_APPLE
511
538
  #undef MLD_SYS_ARMV81M_MVE
512
539
  #undef MLD_SYS_BIG_ENDIAN
@@ -595,23 +622,23 @@
595
622
  /* mldsa/src/fips202/native/aarch64/x1_scalar.h */
596
623
  #undef MLD_FIPS202_AARCH64_NEED_X1_SCALAR
597
624
  #undef MLD_FIPS202_NATIVE_AARCH64_X1_SCALAR_H
598
- #undef MLD_USE_FIPS202_X1_NATIVE
625
+ #undef MLD_USE_NATIVE_FIPS202_X1
599
626
  /* mldsa/src/fips202/native/aarch64/x1_v84a.h */
600
627
  #undef MLD_FIPS202_AARCH64_NEED_X1_V84A
601
628
  #undef MLD_FIPS202_NATIVE_AARCH64_X1_V84A_H
602
- #undef MLD_USE_FIPS202_X1_NATIVE
629
+ #undef MLD_USE_NATIVE_FIPS202_X1
603
630
  /* mldsa/src/fips202/native/aarch64/x2_v84a.h */
604
631
  #undef MLD_FIPS202_AARCH64_NEED_X2_V84A
605
632
  #undef MLD_FIPS202_NATIVE_AARCH64_X2_V84A_H
606
- #undef MLD_USE_FIPS202_X4_NATIVE
633
+ #undef MLD_USE_NATIVE_FIPS202_X4
607
634
  /* mldsa/src/fips202/native/aarch64/x4_v8a_scalar.h */
608
635
  #undef MLD_FIPS202_AARCH64_NEED_X4_V8A_SCALAR_HYBRID
609
636
  #undef MLD_FIPS202_NATIVE_AARCH64_X4_V8A_SCALAR_H
610
- #undef MLD_USE_FIPS202_X4_NATIVE
637
+ #undef MLD_USE_NATIVE_FIPS202_X4
611
638
  /* mldsa/src/fips202/native/aarch64/x4_v8a_v84a_scalar.h */
612
639
  #undef MLD_FIPS202_AARCH64_NEED_X4_V8A_V84A_SCALAR_HYBRID
613
640
  #undef MLD_FIPS202_NATIVE_AARCH64_X4_V8A_V84A_SCALAR_H
614
- #undef MLD_USE_FIPS202_X4_NATIVE
641
+ #undef MLD_USE_NATIVE_FIPS202_X4
615
642
  #endif /* MLD_SYS_AARCH64 */
616
643
  #if defined(MLD_SYS_X86_64)
617
644
  /*
@@ -620,7 +647,7 @@
620
647
  /* mldsa/src/fips202/native/x86_64/keccak_f1600_x4_avx2.h */
621
648
  #undef MLD_FIPS202_NATIVE_X86_64_KECCAK_F1600_X4_AVX2_H
622
649
  #undef MLD_FIPS202_X86_64_NEED_X4_AVX2
623
- #undef MLD_USE_FIPS202_X4_NATIVE
650
+ #undef MLD_USE_NATIVE_FIPS202_X4
624
651
  /* mldsa/src/fips202/native/x86_64/src/fips202_native_x86_64.h */
625
652
  #undef MLD_FIPS202_NATIVE_X86_64_SRC_FIPS202_NATIVE_X86_64_H
626
653
  #undef mld_keccak_f1600_x4_avx2_asm
@@ -636,12 +663,10 @@
636
663
  #undef MLD_FIPS202_ARMV81M_NEED_X4
637
664
  #undef MLD_FIPS202_NATIVE_ARMV81M
638
665
  #undef MLD_FIPS202_NATIVE_ARMV81M_MVE_H
639
- #undef MLD_USE_FIPS202_X4_EXTRACT_BYTES_NATIVE
640
- #undef MLD_USE_FIPS202_X4_NATIVE
641
- #undef MLD_USE_FIPS202_X4_XOR_BYTES_NATIVE
666
+ #undef MLD_USE_NATIVE_FIPS202_X4
667
+ #undef MLD_USE_NATIVE_FIPS202_X4_EXTRACT_BYTES
668
+ #undef MLD_USE_NATIVE_FIPS202_X4_XOR_BYTES
642
669
  #undef mld_keccak_f1600_x4_native_impl
643
- #undef mld_keccak_f1600_x4_state_extract_bytes
644
- #undef mld_keccak_f1600_x4_state_xor_bytes
645
670
  /* mldsa/src/fips202/native/armv81m/src/fips202_native_armv81m.h */
646
671
  #undef MLD_FIPS202_NATIVE_ARMV81M_SRC_FIPS202_NATIVE_ARMV81M_H
647
672
  #undef mld_keccak_f1600_x4_mve_asm
@@ -652,6 +677,7 @@
652
677
  #endif /* MLD_CONFIG_USE_NATIVE_BACKEND_FIPS202 */
653
678
  #if defined(MLD_CONFIG_USE_NATIVE_BACKEND_ARITH)
654
679
  /* mldsa/src/native/api.h */
680
+ #undef MLD_FQMUL_BOUND
655
681
  #undef MLD_INTT_BOUND
656
682
  #undef MLD_NATIVE_API_H
657
683
  #undef MLD_NATIVE_FUNC_FALLBACK
@@ -752,16 +778,16 @@
752
778
  #undef mld_pointwise_acc_l7_avx2_asm
753
779
  #undef mld_pointwise_avx2_asm
754
780
  #undef mld_poly_caddq_avx2_asm
755
- #undef mld_poly_chknorm_avx2
756
- #undef mld_poly_decompose_32_avx2
757
- #undef mld_poly_decompose_88_avx2
758
- #undef mld_poly_use_hint_32_avx2
759
- #undef mld_poly_use_hint_88_avx2
760
- #undef mld_polyz_unpack_17_avx2
761
- #undef mld_polyz_unpack_19_avx2
762
- #undef mld_rej_uniform_avx2
763
- #undef mld_rej_uniform_eta2_avx2
764
- #undef mld_rej_uniform_eta4_avx2
781
+ #undef mld_poly_chknorm_avx2_asm
782
+ #undef mld_poly_decompose_32_avx2_asm
783
+ #undef mld_poly_decompose_88_avx2_asm
784
+ #undef mld_poly_use_hint_32_avx2_asm
785
+ #undef mld_poly_use_hint_88_avx2_asm
786
+ #undef mld_polyz_unpack_17_avx2_asm
787
+ #undef mld_polyz_unpack_19_avx2_asm
788
+ #undef mld_rej_uniform_avx2_asm
789
+ #undef mld_rej_uniform_eta2_avx2_asm
790
+ #undef mld_rej_uniform_eta4_avx2_asm
765
791
  #undef mld_rej_uniform_table
766
792
  /* mldsa/src/native/x86_64/src/consts.h */
767
793
  #undef MLD_AVX2_BACKEND_DATA_OFFSET_8XDIV