libmongocrypt-helper 1.7.4.0.1001 → 1.8.0.0.1001

Sign up to get free protection for your applications and to get access to all the features.
Files changed (398) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/ext/libmongocrypt/extconf.rb +2 -2
  4. data/ext/libmongocrypt/libmongocrypt/CHANGELOG.md +9 -7
  5. data/ext/libmongocrypt/libmongocrypt/CMakeLists.txt +17 -23
  6. data/ext/libmongocrypt/libmongocrypt/Earthfile +374 -0
  7. data/ext/libmongocrypt/libmongocrypt/README.md +7 -7
  8. data/ext/libmongocrypt/libmongocrypt/VERSION_CURRENT +1 -1
  9. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/CryptClient.cs +25 -6
  10. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/Library.cs +25 -3
  11. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Example/MongoDB.Libmongocrypt.Example.csproj +1 -1
  12. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/BasicTests.cs +1 -1
  13. data/ext/libmongocrypt/libmongocrypt/bindings/cs/Scripts/build.cake +3 -2
  14. data/ext/libmongocrypt/libmongocrypt/bindings/cs/cs.sln +79 -0
  15. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/build.gradle.kts +2 -2
  16. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/java/com/mongodb/crypt/capi/MongoCryptTest.java +6 -4
  17. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/fle2-find-range-explicit-v2/int32/encrypted-payload.json +26 -0
  18. data/ext/libmongocrypt/libmongocrypt/bindings/node/CHANGELOG.md +24 -0
  19. data/ext/libmongocrypt/libmongocrypt/bindings/node/README.md +134 -5
  20. data/ext/libmongocrypt/libmongocrypt/bindings/node/etc/build-static.sh +3 -6
  21. data/ext/libmongocrypt/libmongocrypt/bindings/node/index.d.ts +203 -77
  22. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/autoEncrypter.js +1 -1
  23. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/clientEncryption.js +165 -43
  24. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/common.js +12 -14
  25. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/errors.js +75 -0
  26. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/index.js +34 -3
  27. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/providers/aws.js +26 -0
  28. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/providers/azure.js +178 -0
  29. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/providers/gcp.js +24 -0
  30. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/providers/index.js +54 -0
  31. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/providers/utils.js +39 -0
  32. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/stateMachine.js +9 -4
  33. data/ext/libmongocrypt/libmongocrypt/bindings/node/package-lock.json +4440 -5189
  34. data/ext/libmongocrypt/libmongocrypt/bindings/node/package.json +27 -8
  35. data/ext/libmongocrypt/libmongocrypt/bindings/node/src/mongocrypt.cc +65 -38
  36. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/autoEncrypter.test.js +4 -7
  37. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/clientEncryption.test.js +434 -42
  38. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/common.test.js +94 -0
  39. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/cryptoCallbacks.test.js +1 -45
  40. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/index.test.js +45 -0
  41. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/mongocryptdManager.test.js +1 -1
  42. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/providers/credentialsProvider.test.js +551 -0
  43. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/release.test.js +10 -3
  44. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/requirements.helper.js +23 -1
  45. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/stateMachine.test.js +1 -1
  46. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/tools/chai-addons.js +8 -0
  47. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/types/index.test-d.ts +63 -0
  48. data/ext/libmongocrypt/libmongocrypt/bindings/python/CHANGELOG.rst +26 -0
  49. data/ext/libmongocrypt/libmongocrypt/bindings/python/README.rst +2 -2
  50. data/ext/libmongocrypt/libmongocrypt/bindings/python/build-manylinux-wheel.sh +1 -1
  51. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/binding.py +128 -238
  52. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/compat.py +0 -27
  53. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/explicit_encrypter.py +1 -1
  54. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/mongocrypt.py +5 -21
  55. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/version.py +2 -2
  56. data/ext/libmongocrypt/libmongocrypt/bindings/python/release.sh +5 -5
  57. data/ext/libmongocrypt/libmongocrypt/bindings/python/setup.py +14 -9
  58. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/__init__.py +1 -10
  59. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/fle2-find-range-explicit-v2/int32/encrypted-payload.json +26 -0
  60. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/test_mongocrypt.py +5 -5
  61. data/ext/libmongocrypt/libmongocrypt/bindings/python/test-requirements.txt +4 -12
  62. data/ext/libmongocrypt/libmongocrypt/cmake/ImportBSON.cmake +8 -6
  63. data/ext/libmongocrypt/libmongocrypt/cmake/IntelDFP.cmake +2 -1
  64. data/ext/libmongocrypt/libmongocrypt/cmake/Platform.cmake +50 -0
  65. data/ext/libmongocrypt/libmongocrypt/cmake/mongocrypt-config.cmake +21 -0
  66. data/ext/libmongocrypt/libmongocrypt/debian/gbp.conf +2 -2
  67. data/ext/libmongocrypt/libmongocrypt/etc/c6-vault.repo +39 -0
  68. data/ext/libmongocrypt/libmongocrypt/etc/fle2_aead_generate_tests.py +15 -24
  69. data/ext/libmongocrypt/libmongocrypt/etc/fle2_crypto.py +66 -54
  70. data/ext/libmongocrypt/libmongocrypt/etc/fle2_generate_tests.py +14 -23
  71. data/ext/libmongocrypt/libmongocrypt/etc/fle2v2_aead_generate_tests.py +32 -0
  72. data/ext/libmongocrypt/libmongocrypt/etc/format-all.sh +12 -0
  73. data/ext/libmongocrypt/libmongocrypt/etc/format.sh +16 -0
  74. data/ext/libmongocrypt/libmongocrypt/etc/install-package.sh +48 -0
  75. data/ext/libmongocrypt/libmongocrypt/etc/mongo-inteldfp-libmongocrypt-pr-625.patch +13 -0
  76. data/ext/libmongocrypt/libmongocrypt/src/crypto/cng.c +381 -436
  77. data/ext/libmongocrypt/libmongocrypt/src/crypto/commoncrypto.c +162 -227
  78. data/ext/libmongocrypt/libmongocrypt/src/crypto/libcrypto.c +180 -248
  79. data/ext/libmongocrypt/libmongocrypt/src/crypto/none.c +33 -55
  80. data/ext/libmongocrypt/libmongocrypt/src/csfle-markup.cpp +175 -205
  81. data/ext/libmongocrypt/libmongocrypt/src/mc-array-private.h +10 -21
  82. data/ext/libmongocrypt/libmongocrypt/src/mc-array.c +44 -56
  83. data/ext/libmongocrypt/libmongocrypt/src/mc-check-conversions-private.h +4 -8
  84. data/ext/libmongocrypt/libmongocrypt/src/mc-dec128.h +351 -463
  85. data/ext/libmongocrypt/libmongocrypt/src/mc-dec128.test.cpp +59 -66
  86. data/ext/libmongocrypt/libmongocrypt/src/mc-efc-private.h +7 -11
  87. data/ext/libmongocrypt/libmongocrypt/src/mc-efc.c +80 -92
  88. data/ext/libmongocrypt/libmongocrypt/src/mc-fle-blob-subtype-private.h +18 -10
  89. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-encryption-placeholder-private.h +59 -70
  90. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-encryption-placeholder.c +384 -439
  91. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-equality-payload-private-v2.h +41 -0
  92. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-equality-payload-private.h +11 -18
  93. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-equality-payload-v2.c +135 -0
  94. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-equality-payload.c +109 -126
  95. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-range-payload-private-v2.h +88 -0
  96. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-range-payload-private.h +24 -27
  97. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-range-payload-v2.c +137 -0
  98. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-range-payload.c +106 -125
  99. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-insert-update-payload-private-v2.h +117 -0
  100. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-insert-update-payload-private.h +28 -36
  101. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-insert-update-payload-v2.c +294 -0
  102. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-insert-update-payload.c +237 -278
  103. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-iev-private-v2.h +133 -0
  104. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-iev-private.h +67 -56
  105. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-iev-v2.c +437 -0
  106. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-iev.c +476 -325
  107. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-uev-common-private.h +69 -0
  108. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-uev-common.c +182 -0
  109. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-uev-private.h +23 -31
  110. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-uev-v2-private.h +85 -0
  111. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-uev-v2.c +142 -0
  112. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-uev.c +104 -231
  113. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-range-operator-private.h +8 -7
  114. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-rfds-private.h +55 -56
  115. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-rfds.c +517 -580
  116. data/ext/libmongocrypt/libmongocrypt/src/mc-optional-private.h +36 -66
  117. data/ext/libmongocrypt/libmongocrypt/src/mc-range-edge-generation-private.h +57 -76
  118. data/ext/libmongocrypt/libmongocrypt/src/mc-range-edge-generation.c +158 -189
  119. data/ext/libmongocrypt/libmongocrypt/src/mc-range-encoding-private.h +36 -42
  120. data/ext/libmongocrypt/libmongocrypt/src/mc-range-encoding.c +515 -558
  121. data/ext/libmongocrypt/libmongocrypt/src/mc-range-mincover-generator.template.h +155 -191
  122. data/ext/libmongocrypt/libmongocrypt/src/mc-range-mincover-private.h +43 -53
  123. data/ext/libmongocrypt/libmongocrypt/src/mc-range-mincover.c +170 -240
  124. data/ext/libmongocrypt/libmongocrypt/src/mc-rangeopts-private.h +29 -34
  125. data/ext/libmongocrypt/libmongocrypt/src/mc-rangeopts.c +289 -338
  126. data/ext/libmongocrypt/libmongocrypt/src/mc-reader-private.h +36 -71
  127. data/ext/libmongocrypt/libmongocrypt/src/mc-reader.c +111 -164
  128. data/ext/libmongocrypt/libmongocrypt/src/mc-tokens-private.h +55 -49
  129. data/ext/libmongocrypt/libmongocrypt/src/mc-tokens.c +109 -125
  130. data/ext/libmongocrypt/libmongocrypt/src/mc-writer-private.h +66 -0
  131. data/ext/libmongocrypt/libmongocrypt/src/mc-writer.c +141 -0
  132. data/ext/libmongocrypt/libmongocrypt/src/mlib/check.hpp +37 -55
  133. data/ext/libmongocrypt/libmongocrypt/src/mlib/endian.h +11 -11
  134. data/ext/libmongocrypt/libmongocrypt/src/mlib/error.h +27 -32
  135. data/ext/libmongocrypt/libmongocrypt/src/mlib/int128.h +444 -499
  136. data/ext/libmongocrypt/libmongocrypt/src/mlib/int128.test.cpp +251 -334
  137. data/ext/libmongocrypt/libmongocrypt/src/mlib/macros.h +4 -5
  138. data/ext/libmongocrypt/libmongocrypt/src/mlib/path.h +196 -231
  139. data/ext/libmongocrypt/libmongocrypt/src/mlib/path.test.c +56 -79
  140. data/ext/libmongocrypt/libmongocrypt/src/mlib/str.h +411 -530
  141. data/ext/libmongocrypt/libmongocrypt/src/mlib/str.test.c +116 -131
  142. data/ext/libmongocrypt/libmongocrypt/src/mlib/thread.h +17 -26
  143. data/ext/libmongocrypt/libmongocrypt/src/mlib/user-check.h +2 -2
  144. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-binary-private.h +3 -6
  145. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-binary.c +31 -48
  146. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-buffer-private.h +55 -131
  147. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-buffer.c +444 -565
  148. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-collinfo-private.h +1 -2
  149. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-collinfo.c +28 -45
  150. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-key-private.h +11 -17
  151. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-key.c +103 -132
  152. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-oauth-private.h +8 -14
  153. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-oauth.c +78 -90
  154. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-private.h +26 -45
  155. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache.c +220 -273
  156. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ciphertext-private.h +13 -25
  157. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ciphertext.c +147 -166
  158. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-compat.h +2 -2
  159. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-crypto-private.h +110 -204
  160. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-crypto.c +1137 -1565
  161. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ctx-datakey.c +425 -472
  162. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ctx-decrypt.c +817 -694
  163. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ctx-encrypt.c +2394 -2697
  164. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ctx-private.h +166 -186
  165. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ctx-rewrap-many-datakey.c +308 -351
  166. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ctx.c +921 -1138
  167. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-dll-private.h +16 -24
  168. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-endian-private.h +44 -58
  169. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-endpoint-private.h +21 -25
  170. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-endpoint.c +167 -181
  171. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-kek-private.h +37 -43
  172. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-kek.c +215 -253
  173. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-key-broker-private.h +73 -108
  174. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-key-broker.c +889 -1034
  175. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-key-private.h +27 -44
  176. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-key.c +349 -402
  177. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-kms-ctx-private.h +92 -120
  178. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-kms-ctx.c +1397 -1612
  179. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-log-private.h +35 -67
  180. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-log.c +49 -83
  181. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-marking-private.h +30 -36
  182. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-marking.c +1821 -1470
  183. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-mutex-private.h +7 -12
  184. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-opts-private.h +80 -108
  185. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-opts.c +354 -424
  186. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-private.h +101 -117
  187. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-status-private.h +3 -8
  188. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-status.c +92 -119
  189. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-traverse-util-private.h +19 -29
  190. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-traverse-util.c +136 -176
  191. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-util-private.h +11 -21
  192. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-util.c +96 -135
  193. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt.c +1092 -1320
  194. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt.h +130 -295
  195. data/ext/libmongocrypt/libmongocrypt/src/os_posix/os_dll.c +66 -78
  196. data/ext/libmongocrypt/libmongocrypt/src/os_posix/os_mutex.c +20 -28
  197. data/ext/libmongocrypt/libmongocrypt/src/os_win/os_dll.c +60 -73
  198. data/ext/libmongocrypt/libmongocrypt/src/os_win/os_mutex.c +8 -16
  199. data/ext/libmongocrypt/libmongocrypt/test/crypt_shared-stub.cpp +57 -87
  200. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-delete/empty/encrypted-payload-v2.json +60 -0
  201. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-delete/success/encrypted-payload-v2.json +67 -0
  202. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explain/with-csfle/encrypted-payload.json +2 -2
  203. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explicit/find-indexed-contentionFactor1-v2.json +8 -0
  204. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explicit/find-indexed-v2.json +8 -0
  205. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explicit/insert-indexed-contentionFactor1-v2.json +8 -0
  206. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explicit/insert-indexed-same-user-and-index-key-v2.json +8 -0
  207. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explicit/insert-indexed-v2.json +8 -0
  208. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-equality-v2/cmd.json +6 -0
  209. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-equality-v2/encrypted-field-map.json +22 -0
  210. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-equality-v2/encrypted-payload.json +40 -0
  211. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-equality-v2/mongocryptd-reply.json +19 -0
  212. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/date-v2/cmd.json +10 -0
  213. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/date-v2/encrypted-field-map.json +27 -0
  214. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/date-v2/encrypted-payload.json +41 -0
  215. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/date-v2/mongocryptd-reply.json +49 -0
  216. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-precision-v2/cmd.json +6 -0
  217. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-precision-v2/encrypted-field-map.json +30 -0
  218. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-precision-v2/encrypted-payload.json +50 -0
  219. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-precision-v2/mongocryptd-reply.json +58 -0
  220. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-v2/cmd.json +6 -0
  221. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-v2/encrypted-field-map.json +27 -0
  222. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-v2/encrypted-payload.json +41 -0
  223. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-v2/mongocryptd-reply.json +49 -0
  224. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-precision-v2/cmd.json +8 -0
  225. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-precision-v2/encrypted-field-map.json +30 -0
  226. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-precision-v2/encrypted-payload.json +44 -0
  227. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-precision-v2/mongocryptd-reply.json +52 -0
  228. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-v2/cmd.json +8 -0
  229. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-v2/encrypted-field-map.json +27 -0
  230. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-v2/encrypted-payload.json +41 -0
  231. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-v2/mongocryptd-reply.json +49 -0
  232. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int32-v2/cmd.json +8 -0
  233. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int32-v2/encrypted-field-map.json +27 -0
  234. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int32-v2/encrypted-payload.json +41 -0
  235. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int32-v2/mongocryptd-reply.json +49 -0
  236. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int64-v2/cmd.json +8 -0
  237. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int64-v2/encrypted-field-map.json +27 -0
  238. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int64-v2/encrypted-payload.json +41 -0
  239. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int64-v2/mongocryptd-reply.json +49 -0
  240. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/double/encrypted-payload-v2.json +26 -0
  241. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/double-precision/encrypted-payload-v2.json +26 -0
  242. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32/encrypted-payload-v2.json +26 -0
  243. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32-nominmax/encrypted-payload-v2.json +26 -0
  244. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32-openinterval/encrypted-payload-v2.json +16 -0
  245. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert/cmd.json +1 -1
  246. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/date/RNG_DATA.h +65 -65
  247. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/date-v2/cmd.json +13 -0
  248. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/date-v2/encrypted-field-map.json +27 -0
  249. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/date-v2/encrypted-payload.json +44 -0
  250. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/date-v2/mongocryptd-reply.json +52 -0
  251. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128/RNG_DATA.h +132 -132
  252. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-precision/RNG_DATA.h +71 -71
  253. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-precision-v2/cmd.json +9 -0
  254. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-precision-v2/encrypted-field-map.json +30 -0
  255. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-precision-v2/encrypted-payload.json +53 -0
  256. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-precision-v2/mongocryptd-reply.json +61 -0
  257. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-v2/cmd.json +9 -0
  258. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-v2/encrypted-field-map.json +27 -0
  259. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-v2/encrypted-payload.json +44 -0
  260. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-v2/mongocryptd-reply.json +52 -0
  261. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double/RNG_DATA.h +68 -68
  262. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-precision/RNG_DATA.h +19 -19
  263. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-precision-v2/cmd.json +11 -0
  264. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-precision-v2/encrypted-field-map.json +30 -0
  265. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-precision-v2/encrypted-payload.json +47 -0
  266. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-precision-v2/mongocryptd-reply.json +55 -0
  267. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-v2/cmd.json +11 -0
  268. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-v2/encrypted-field-map.json +27 -0
  269. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-v2/encrypted-payload.json +44 -0
  270. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-v2/mongocryptd-reply.json +52 -0
  271. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int32/RNG_DATA.h +25 -25
  272. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int32-v2/cmd.json +11 -0
  273. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int32-v2/encrypted-field-map.json +27 -0
  274. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int32-v2/encrypted-payload.json +44 -0
  275. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int32-v2/mongocryptd-reply.json +52 -0
  276. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int64/RNG_DATA.h +65 -65
  277. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int64-v2/cmd.json +11 -0
  278. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int64-v2/encrypted-field-map.json +27 -0
  279. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int64-v2/encrypted-payload.json +44 -0
  280. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int64-v2/mongocryptd-reply.json +52 -0
  281. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/double/RNG_DATA.h +68 -68
  282. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/double/encrypted-payload-v2.json +8 -0
  283. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/double-precision/RNG_DATA.h +19 -19
  284. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/double-precision/encrypted-payload-v2.json +8 -0
  285. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32/RNG_DATA.h +25 -25
  286. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32/encrypted-payload-v2.json +8 -0
  287. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32-nominmax/encrypted-payload-v2.json +8 -0
  288. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/sparsity-2/RNG_DATA.h +15 -15
  289. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/sparsity-2/encrypted-payload-v2.json +8 -0
  290. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-unindexed-v2/cmd.json +9 -0
  291. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-unindexed-v2/encrypted-field-map.json +18 -0
  292. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-unindexed-v2/encrypted-payload.json +14 -0
  293. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-unindexed-v2/mongocryptd-reply.json +41 -0
  294. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-v2/cmd.json +9 -0
  295. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-v2/encrypted-field-map.json +22 -0
  296. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-v2/encrypted-payload.json +39 -0
  297. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-v2/mongocryptd-reply.json +49 -0
  298. data/ext/libmongocrypt/libmongocrypt/test/data/iev-v2/FLECrudTest-insertOneRangeV2.json +10 -0
  299. data/ext/libmongocrypt/libmongocrypt/test/data/iev-v2/FLECrudTest-insertOneV2.json +10 -0
  300. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/README.md +17 -0
  301. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/aes-ctr.json +29 -0
  302. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/fle2-fixed.json +10 -0
  303. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/fle2-generated.json +38 -0
  304. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/fle2aead-decrypt.json +35 -0
  305. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/fle2aead-fixed.json +29 -0
  306. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/fle2aead-generated.json +122 -0
  307. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/fle2v2-aead-fixed.json +29 -0
  308. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/fle2v2-aead-generated.json +122 -0
  309. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/mcgrew.json +12 -0
  310. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/nist.json +20 -0
  311. data/ext/libmongocrypt/libmongocrypt/test/data/tokens/README.md +27 -0
  312. data/ext/libmongocrypt/libmongocrypt/test/data/tokens/mc.json +21 -0
  313. data/ext/libmongocrypt/libmongocrypt/test/data/tokens/server.json +21 -0
  314. data/ext/libmongocrypt/libmongocrypt/test/example-no-bson.c +4 -4
  315. data/ext/libmongocrypt/libmongocrypt/test/example-state-machine.c +278 -323
  316. data/ext/libmongocrypt/libmongocrypt/test/fuzz_kms.c +8 -7
  317. data/ext/libmongocrypt/libmongocrypt/test/test-dll.cpp +6 -7
  318. data/ext/libmongocrypt/libmongocrypt/test/test-gcp-auth.c +221 -283
  319. data/ext/libmongocrypt/libmongocrypt/test/test-mc-efc.c +58 -73
  320. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-find-equality-payload-v2.c +78 -0
  321. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-find-range-payload-v2.c +89 -0
  322. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-payload-iev-v2.c +248 -0
  323. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-payload-iev.c +467 -414
  324. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-payload-iup-v2.c +172 -0
  325. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-payload-iup.c +141 -159
  326. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-payload-uev-v2.c +338 -0
  327. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-payload-uev.c +238 -176
  328. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-rfds.c +373 -474
  329. data/ext/libmongocrypt/libmongocrypt/test/test-mc-range-edge-generation.c +346 -388
  330. data/ext/libmongocrypt/libmongocrypt/test/test-mc-range-encoding.c +708 -825
  331. data/ext/libmongocrypt/libmongocrypt/test/test-mc-range-mincover.c +417 -481
  332. data/ext/libmongocrypt/libmongocrypt/test/test-mc-rangeopts.c +110 -144
  333. data/ext/libmongocrypt/libmongocrypt/test/test-mc-reader.c +124 -207
  334. data/ext/libmongocrypt/libmongocrypt/test/test-mc-tokens.c +223 -213
  335. data/ext/libmongocrypt/libmongocrypt/test/test-mc-writer.c +176 -0
  336. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-assert-match-bson.c +634 -807
  337. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-assert-match-bson.h +1 -2
  338. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-assert.h +168 -189
  339. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-buffer.c +187 -211
  340. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-cache-oauth.c +34 -36
  341. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-cache.c +210 -233
  342. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-ciphertext.c +185 -220
  343. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-compact.c +331 -445
  344. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-crypto-hooks.c +670 -814
  345. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-crypto-std-hooks.c +102 -135
  346. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-crypto-std-hooks.h +54 -71
  347. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-crypto.c +394 -846
  348. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-csfle-lib.c +159 -183
  349. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-ctx-decrypt.c +867 -1045
  350. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-ctx-encrypt.c +4349 -4713
  351. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-ctx-rewrap-many-datakey.c +750 -964
  352. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-ctx-setopt.c +991 -1178
  353. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-datakey.c +342 -419
  354. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-dll.c +23 -30
  355. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-endpoint.c +98 -111
  356. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-kek.c +49 -52
  357. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-key-broker.c +770 -920
  358. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-key-cache.c +354 -407
  359. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-key.c +197 -245
  360. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-kms-ctx.c +286 -370
  361. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-kms-responses.c +147 -166
  362. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-local-kms.c +50 -61
  363. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-log.c +85 -100
  364. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-marking.c +656 -692
  365. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-status.c +46 -58
  366. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-traverse-util.c +377 -451
  367. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-util.c +48 -67
  368. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-util.h +4 -10
  369. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt.c +827 -918
  370. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt.h +111 -172
  371. data/ext/libmongocrypt/libmongocrypt/test/util/csfle.c +508 -559
  372. data/ext/libmongocrypt/libmongocrypt/test/util/util.c +735 -881
  373. data/ext/libmongocrypt/libmongocrypt/test/util/util.h +33 -55
  374. data/lib/libmongocrypt_helper/version.rb +2 -2
  375. data/lib/libmongocrypt_helper.rb +2 -2
  376. data.tar.gz.sig +0 -0
  377. metadata +154 -26
  378. metadata.gz.sig +0 -0
  379. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/fle2-find-range-explicit/int32/encrypted-payload.json +0 -26
  380. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/fle2-find-range-explicit/int32/key-document.json +0 -0
  381. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/credentialsProvider.js +0 -33
  382. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/credentialsProvider.test.js +0 -163
  383. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/fle2-find-range-explicit/int32/encrypted-payload.json +0 -26
  384. data/ext/libmongocrypt/libmongocrypt/test/data/aes-ctr.cstructs +0 -359
  385. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-aead.cstructs +0 -109
  386. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32-nominmax/encrypted-payload.json +0 -26
  387. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32-nominmax/rangeopts.json +0 -5
  388. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32-nominmax/value-to-encrypt.json +0 -20
  389. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32-nominmax/RNG_DATA.h +0 -70
  390. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32-nominmax/encrypted-payload.json +0 -8
  391. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32-nominmax/rangeopts.json +0 -5
  392. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32-nominmax/value-to-encrypt.json +0 -5
  393. data/ext/libmongocrypt/libmongocrypt/test/data/fle2.cstructs +0 -33
  394. /data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/{fle2-find-range-explicit → fle2-find-range-explicit-v2}/int32/key-filter.json +0 -0
  395. /data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/{fle2-find-range-explicit → fle2-find-range-explicit-v2}/int32/rangeopts.json +0 -0
  396. /data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/{fle2-find-range-explicit → fle2-find-range-explicit-v2}/int32/value-to-encrypt.json +0 -0
  397. /data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/{fle2-find-range-explicit → fle2-find-range-explicit-v2}/int32/rangeopts.json +0 -0
  398. /data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/{fle2-find-range-explicit → fle2-find-range-explicit-v2}/int32/value-to-encrypt.json +0 -0
@@ -1,109 +0,0 @@
1
- /* This file is generated by ./etc/fle2_aead_generate_tests.py. */
2
- {
3
- .testname = "generated test. AD length=5, M length=1",
4
- .iv = "415fddc49a7ae014aeffcbd0d2486daa",
5
- .associated_data = "6d3e8ad367",
6
- .key = "0c5abd7c287428d041bcf167553b72a82576e8ff19a7a5c348938f77ed5174d4c1a8c73286d43d8999546fa7e0a68af3ccdab08980d47ddf157f2c1500fade660000000000000000000000000000000000000000000000000000000000000000",
7
- .plaintext = "33",
8
- .ciphertext = "415fddc49a7ae014aeffcbd0d2486daa33c7e336365f3138b0a7ea8496962c52cf42d1fc48b4a599641f2607074b14ac3a",
9
- .bytes_written_expected = 49
10
- },
11
- {
12
- .testname = "generated test. AD length=5, M length=16",
13
- .iv = "01eca925546187a59e0f8201afad432f",
14
- .associated_data = "0969d03781",
15
- .key = "85639234f96143f73909b8e134da4bef027001747dacf154811b9d24baed079369a55804f90e57f3587d2533a848a32bfc5140a1686887331f7f54e71ea090580000000000000000000000000000000000000000000000000000000000000000",
16
- .plaintext = "f2c1294d3208bbce4d3201fbc1ff7a49",
17
- .ciphertext = "01eca925546187a59e0f8201afad432fe1e90813d010cf62fd50711e2b696195031e6f0507cff7fa4991371d97f1ab7d7af5500986aba165b53add817b359431",
18
- .bytes_written_expected = 64
19
- },
20
- {
21
- .testname = "generated test. AD length=5, M length=64",
22
- .iv = "1b6ec34b96af51c04aa8d983e6d6196c",
23
- .associated_data = "5f0ee20c4b",
24
- .key = "dc90b661aa5ba4c8b36205868883ed7922a46625e94ccf93e8f1c9055e7af0464c952c70f0eeda11a3514d7136a128332dc53e46b89df0ef926d700ceaf20b3f0000000000000000000000000000000000000000000000000000000000000000",
25
- .plaintext = "c126ffe72a86de5201e6979e3b38829737561b3c21f41249988bacaa1678adc2c10401ceb201f2864dd6d61013da49026c4cc4a0d2f7b43e631cd3f98b868c20",
26
- .ciphertext = "1b6ec34b96af51c04aa8d983e6d6196ce5fdfe51a01fff7d02efd9c57152a986e88229a7c25c65b561032303d3d456b8283c5642c9400370ee8843226bcc6d1e06c343b25fbffef4320907469e4e9fc8dae0cffa0ca55817383fe5745d79ebbfe10060ed0276ebba61d6ad3604ba2919",
27
- .bytes_written_expected = 112
28
- },
29
- {
30
- .testname = "generated test. AD length=5, M length=100",
31
- .iv = "8d9a5d3e8496c2e75b238027fc12ceaf",
32
- .associated_data = "708e3b3404",
33
- .key = "5eb7f76d7cd35a318c6cea0c619a30123af174ab97b2dd6728bed175bc05596cebe03a1844ea928b4c4ba693a0bc4500b9e4508976ce102dc66ad82f2efd80c80000000000000000000000000000000000000000000000000000000000000000",
34
- .plaintext = "cf02b9825a09fed9356df1e8bd6594462242d0a1cd73a39a08725c4e8666c8187fed61011e791f3bb99b8301286201ee4fa65edb7964ef23e704ae94ff614b55a2565dda2ba219b0321e1596a51c80bf292e49215f28c10e8fea2624461aa8b4e30b9b6f",
35
- .ciphertext = "8d9a5d3e8496c2e75b238027fc12ceaf29329e6d84373cf154d4a707193e280f33ef7284e0e398d0f7153037807d92919983ddf06cc178f304052e42d8bf59fa34eba1cefb415f7ac4936819b6308f89f9989d76f3e22dd2a3afae22c83463d864549e99ec8614f08106cb80759689a43d3dd948bcf347e8ee95d6092ad8da0286d685b0c4147c82b6af5b844cd2cdc11937a747",
36
- .bytes_written_expected = 148
37
- },
38
- {
39
- .testname = "generated test. AD length=10, M length=1",
40
- .iv = "2d48070fef0744d841c7ec83287fb007",
41
- .associated_data = "a66444ae82723163bdf2",
42
- .key = "18be4d14732fab83f1f160953137a8a17f98f1c3bea4308b30373866fc03112f20671227994204de628d391c821b991e3c2e7f365ec1234b44e7eab1237c34500000000000000000000000000000000000000000000000000000000000000000",
43
- .plaintext = "b3",
44
- .ciphertext = "2d48070fef0744d841c7ec83287fb0076e25fe1c684685bc17562220c1b657a6b8b03e7ea23f5b70ff4441d316bf246d69",
45
- .bytes_written_expected = 49
46
- },
47
- {
48
- .testname = "generated test. AD length=10, M length=16",
49
- .iv = "62c9dfdb7c314704acb00b7d41941215",
50
- .associated_data = "0705f420ec8614d97f74",
51
- .key = "b282085e5f82436945202f79252247735eedaedbf9e1707fddc1a85b5a75f4d9460fac629bb251a9aa37e989ce90fc693e5195cfa094696238419a2e56ee63e10000000000000000000000000000000000000000000000000000000000000000",
52
- .plaintext = "3d1959d7c54038e08cec63ba14f0442f",
53
- .ciphertext = "62c9dfdb7c314704acb00b7d41941215c37089010b80b79386274e3583071c07fc14b53f1ef95031f32ca35532a3c31d6ea6603c2a572c0f74f72fa295c01204",
54
- .bytes_written_expected = 64
55
- },
56
- {
57
- .testname = "generated test. AD length=10, M length=64",
58
- .iv = "45b73d74a0c818d09b856f81abbc7390",
59
- .associated_data = "6158e08ae7ed0769add0",
60
- .key = "2f99a5b0d8dbaa2cc0d16bad9cfeee7812a1232dd3d4d0a0cdb3fcff74e158948373dec4d6e00e9e0e5e24f8e1c996a65bee420b7cf7b64a084ae6d2a6fb6ad30000000000000000000000000000000000000000000000000000000000000000",
61
- .plaintext = "4f3125cd45bd1799a9bda624162427e3d72bd0ff4b59234728f27fe907cdb0d5288fa2fd5abc244a0c54417e656aba0efb5601f56542c75edaa73f42d94a1957",
62
- .ciphertext = "45b73d74a0c818d09b856f81abbc73901c2170c49621d18ab60a147a02af8158db54a652a69754548a5a3ef0b8ab9e5813f6728aaca2d6af8bdc4d128b697a0ad4f25cc813551b8290760e2021364aa6bdff8c7d1f6aa63cda5b685243cacfc571444a1d60d87adc325aee7c7ddae98f",
63
- .bytes_written_expected = 112
64
- },
65
- {
66
- .testname = "generated test. AD length=10, M length=100",
67
- .iv = "122a6b7230d6ef99dbe5382e99a768f6",
68
- .associated_data = "7b9a1b6f335e6ce3ea64",
69
- .key = "5e84c465d1121d152c9cb05fe4e0226d05e0b8fd866e50aa94451fd7d006290c04717949b96cdc26b8fa57cce956c0c333841bf10e5d553f63d417b9c69c5acb0000000000000000000000000000000000000000000000000000000000000000",
70
- .plaintext = "c4aca8a97d361f97d8d441d48e16045318102212f34bef81b7e325e9ff250601b285f36781aa905184425e173767499fab969477bd42911bc9e1301651d1196a522adcbe04983038d086be99c2da39dac0ecb485fe8575aa3d59396084e3a2fe27265a80",
71
- .ciphertext = "122a6b7230d6ef99dbe5382e99a768f6e558196f1aa9ef31703e9ab055237e9cd2792058d01501c268ec02721763f9e9f6a763997e631c2b8b347f084f32d9c5499e5eab175d54e955fc33cce6e99c6551188f2c0bfe2842133325a51b51bf7388e75ad10a8973ebd3d4188548a92f0e17dd01b2020d1d7aed1e56fc2525f2f2b10bbada27c64431741f41e7c2555818c2bba5df",
72
- .bytes_written_expected = 148
73
- },
74
- {
75
- .testname = "generated test. AD length=20, M length=1",
76
- .iv = "5020f1a2744a93822b0512f483d15e90",
77
- .associated_data = "d146d2361234a6d2b7a6cf0b25295d1ae6cd6eb0",
78
- .key = "21022c010f05d162910319ffdd56e14777041fb97a4d82e842e7275ddfcd3c88a080e3ec2f205784502966398d3d3695ed4c7f1942cffabc75f721b0c8b548640000000000000000000000000000000000000000000000000000000000000000",
79
- .plaintext = "f9",
80
- .ciphertext = "5020f1a2744a93822b0512f483d15e90b3b2fc039ada821d2d35259c1599ceabd5fabe5e1c12014edab0a3dbcf5b8428ea",
81
- .bytes_written_expected = 49
82
- },
83
- {
84
- .testname = "generated test. AD length=20, M length=16",
85
- .iv = "24c250ce71e62381789453a203bd5689",
86
- .associated_data = "d1f4ac87174dbc4c7a572ae6a8fcc20936ed6270",
87
- .key = "2ec81a9750b775ce49eccc975433cc9410ffdc6830bcb4aa75a308533585ed03b64534d7af16f131e5517316d1ee0014d267fbf664d7e6a804017ef6f93ad27d0000000000000000000000000000000000000000000000000000000000000000",
88
- .plaintext = "728b8a848407ecfbaf6062910a7284d4",
89
- .ciphertext = "24c250ce71e62381789453a203bd5689db2c17418a3cf89d9ddae81d3caf7ce48d89cb9de691b68348582234e2d4f28292d48dcc39a934e30a8647d42617c12f",
90
- .bytes_written_expected = 64
91
- },
92
- {
93
- .testname = "generated test. AD length=20, M length=64",
94
- .iv = "0dea6351b7c5f722135cc71674fe2aa5",
95
- .associated_data = "56436a1a19ecd83b1cfac30c385d2b10f09912b6",
96
- .key = "97fd8fa72107825842f7b8b6446bc15295bfddc81b24775d61d637ee79edab76bb2ea1da325427d3b1841598bfb423ce5e9cb9e2d19a5ab863971ce7df36c3dc0000000000000000000000000000000000000000000000000000000000000000",
97
- .plaintext = "759e97fabfc00a4097051ce11b1d0303fd92f32a0c91d24048b8b3e3cc1272c07361c3f2c58af8c4e05fc7655f883f10f85c88cc3d061a7e48829923612602b6",
98
- .ciphertext = "0dea6351b7c5f722135cc71674fe2aa5a8cec9ba7111214284703319deaf50561f7868b76cc33f471cd47902ef7b7e4b00d852d16456c040b30cbf9aae510cd93db432f9304b27fdd0f9fbf361072e7a2680f55fd143bce06d67ac84851d2648550e98a297bed4087707e058db6e79ab",
99
- .bytes_written_expected = 112
100
- },
101
- {
102
- .testname = "generated test. AD length=20, M length=100",
103
- .iv = "91ce2657c5c51b63e3f8698962986783",
104
- .associated_data = "0bb9641dbd11aae69d90451ffa3dc785ea325c86",
105
- .key = "7efbb28148595b9ab5fdda8b94c3f3ed5094de75396a8a7bed234cc83de62f4558601d183b1bb383588667dddb921d8c08cac48c7d7671fdb53b7d340a5c90960000000000000000000000000000000000000000000000000000000000000000",
106
- .plaintext = "db6faefc3a0ee1d0dccc810ec663c82889370ec9ff430063defd2ba8611b870fdf1f8e0f51323f101166ac1dc4fb7db1819b5ebd16934ec18827582b74f96e38ba0caa8f616051fee488f68015870b0fed27aede025c8be1957237e1c71375d64055dcf1",
107
- .ciphertext = "91ce2657c5c51b63e3f869896298678332d4b0ba0ef78ed3b73e4b4a507cf0c16fa6c98716a500ac75d99ff1e11a9ece604a5aab38f201c0772ac3bedb8abcf564f6cea8f65d3710ee4ca34887a5170296fee8059f852898aa9e24664940a1cd44b50881e6eb912e352ecd708850cb8345890c6eceed6b4a3200fc71f2112f7ea88ee61b9de21d3e35b4ed761f8130ca56f4e9e6",
108
- .bytes_written_expected = 148
109
- },
@@ -1,26 +0,0 @@
1
- {
2
- "v": {
3
- "$and": [
4
- {
5
- "age": {
6
- "$gte": {
7
- "$binary": {
8
- "base64": "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",
9
- "subType": "6"
10
- }
11
- }
12
- }
13
- },
14
- {
15
- "age": {
16
- "$lte": {
17
- "$binary": {
18
- "base64": "CjsAAAAQcGF5bG9hZElkAAAAAAAQZmlyc3RPcGVyYXRvcgACAAAAEHNlY29uZE9wZXJhdG9yAAQAAAAA",
19
- "subType": "6"
20
- }
21
- }
22
- }
23
- }
24
- ]
25
- }
26
- }
@@ -1,20 +0,0 @@
1
- {
2
- "v": {
3
- "$and": [
4
- {
5
- "age": {
6
- "$gte": {
7
- "$numberInt": "23"
8
- }
9
- }
10
- },
11
- {
12
- "age": {
13
- "$lte": {
14
- "$numberInt": "35"
15
- }
16
- }
17
- }
18
- ]
19
- }
20
- }
@@ -1,70 +0,0 @@
1
- // Defines the random data for IVs to obtain a deterministic
2
- // FLE2InsertUpdatePayload.
3
- #define RNG_DATA \
4
- "\xd2\xfe\x6c\x25\xf8\x9f\xda\xfb\x1e\xee\xd2\xd2\x98\x6e\x1c\x4b" \
5
- "\x77\x90\x81\x8b\xf1\xc6\xad\xa3\x5d\xcf\x65\x03\xe1\xbf\x54\xb5" \
6
- "\x81\xd1\xda\xc0\x3b\x7e\xb9\x9d\x71\x4e\x64\xb9\xa4\x0c\x80\xfb" \
7
- "\x5b\xcf\xcc\xe5\x0a\x81\xeb\x82\xd5\x0d\x47\xe2\xb8\x0d\x4b\x97" \
8
- "\xa4\x87\x37\x8d\x57\x81\xd3\x03\x54\x5e\x2a\x2a\x81\xcf\x63\xde" \
9
- "\xde\x88\xc2\x0f\x68\x6f\xe7\x98\xe9\x5f\x8c\xcd\xb5\xaa\x55\xfc" \
10
- "\x88\x1a\xe1\x92\x68\x09\x6c\x84\x09\x1e\x2c\xb5\x8e\x93\xfd\x5f" \
11
- "\x29\x16\xbc\x7d\xf5\xc2\xf7\xc2\xa3\x99\xe9\xb4\x77\xf9\xc1\xde" \
12
- "\x91\x89\x11\x27\x90\x0a\x3f\xc1\x15\xb5\xb8\xa9\x9a\x7a\x5d\x91" \
13
- "\xc6\xe6\x65\xa4\x45\xc3\x83\x8e\x3f\xf8\xbd\x47\xfd\xb6\x6a\x1d" \
14
- "\xe3\x4a\xa2\xf2\xdf\x89\x7b\x18\xee\x8f\xbf\xf0\x53\x25\xd5\x95" \
15
- "\xf3\xd9\x0a\x32\x85\x33\x2b\xd2\x79\xb9\xbf\x4f\xe0\xc9\xbc\x96" \
16
- "\x8f\xc8\x88\xb0\x09\x7d\x69\x66\x6e\xf9\xa3\x03\x91\x99\x35\x13" \
17
- "\xc9\x38\xba\x3c\x44\x8b\x41\xe6\xab\xac\x3b\x85\x98\xf9\x5d\xe8" \
18
- "\x17\x5e\x2d\x90\x8d\xee\xa0\x80\x57\xf1\xac\x8f\xb9\xd9\x37\x0a" \
19
- "\x33\x06\x1b\xb3\x90\x5f\xaa\x06\x7d\x92\x85\x1e\xd2\xb6\x9e\x56" \
20
- "\x3c\x34\xa3\xb2\xaa\x39\x70\x79\x7b\xf0\x30\x78\xd8\xa5\x6d\x03" \
21
- "\x1b\xbd\xe6\x0f\x5e\x69\x5b\x6a\x41\x01\x99\xf0\x20\xfe\xef\x5c" \
22
- "\x9f\xac\x22\xf6\x68\xa8\x14\x2f\x22\x94\xd4\x9e\x2e\x31\x92\xf2" \
23
- "\xfa\x2f\xc4\x7f\x99\x0a\x20\xdf\x11\x49\x10\xf7\x24\x33\x12\xb3" \
24
- "\x00\x0e\xae\x2d\x4a\x87\xd4\xf8\xe2\x67\xaf\xca\x35\xc8\xa4\xbe" \
25
- "\xd0\x38\xc0\x9c\x54\xc9\x22\x85\x6b\xcd\x6e\x04\x13\xba\x21\x4d" \
26
- "\xa4\xba\x69\xe0\xb8\x18\x2b\xb4\x13\x2f\x3e\xa2\x56\x81\xe9\xe0" \
27
- "\x5a\x13\xac\x46\x54\x57\xce\x43\xdb\x5f\x2a\xf0\x4f\xea\x25\x3c" \
28
- "\x98\xf7\x16\x29\x4e\x4c\xa4\x0b\x51\x60\x37\x94\x83\xb2\xd8\x08" \
29
- "\x29\x97\x4b\x8b\xe8\x27\x7c\xa4\x2d\x4a\x13\xc7\x75\xab\x23\x0b" \
30
- "\x7f\x5e\x27\x9f\xfd\xe6\xe0\x15\x46\x52\xf9\xaa\x8e\xa4\x4f\x61" \
31
- "\xb9\x0c\x8d\x2a\xcd\x48\xd0\x0d\xdf\xca\x8e\xe7\x11\x75\xe3\xf3" \
32
- "\xf6\x0c\xe2\x3e\x9f\x3b\x87\xe2\xfa\x53\x11\x3e\x34\xc2\x41\xae" \
33
- "\x29\xdd\x66\x28\xaa\xc4\x1f\x89\xf2\x33\x7a\x33\x39\xd8\xa0\xa4" \
34
- "\x8c\x72\x7d\xd8\x71\x0f\xbb\xbc\xb4\x23\x18\xc6\xf3\xf2\xb4\x12" \
35
- "\x19\x82\xe7\x79\x75\xc1\x2a\x52\x9d\x8b\x10\x7b\x80\x0a\xb7\x38" \
36
- "\x2b\xd4\x6e\x75\xd5\x73\xbc\x13\x9c\x14\xb0\xcd\x98\x5c\x12\x51" \
37
- "\x7a\xcd\xe8\x15\x6d\xb5\x49\xe7\xcf\xcc\x22\x5d\xbd\x48\x7c\x3c" \
38
- "\xf5\x3c\x51\x5f\x8e\x19\x94\x82\xb2\x2e\xac\xed\xf4\xaa\xab\x09" \
39
- "\x9d\x73\xad\xe2\x54\xc7\x2b\xbe\x6d\x27\xf4\xe3\x11\xad\xa9\xb4" \
40
- "\x45\xdb\x23\xa5\x82\x5a\xb8\xc2\xd4\x67\xd4\xad\x5a\x4d\xc2\x0b" \
41
- "\x71\x7c\xc4\x13\x8e\x88\x91\x06\xdf\xda\x5e\x56\x4a\x98\x38\x84" \
42
- "\x3d\x75\xd6\x07\x77\xde\xce\x39\x56\x06\x43\x18\xb2\x68\x11\xd2" \
43
- "\xe7\x00\x09\x71\xe3\xab\x63\xae\x46\x05\x5f\xd6\x06\x26\xd1\x8f" \
44
- "\x4b\xad\x5f\x22\x0d\xb2\x96\xa1\xcf\x3d\x33\x5a\xda\x04\xf9\x1d" \
45
- "\xbd\xf0\x59\x30\xc9\xa5\x02\x20\x65\x61\xe1\x9c\xdf\x0d\x79\xcc" \
46
- "\xb9\x67\x6b\x70\xf3\x09\x90\x7e\x65\x83\xfe\x43\x06\xfb\x34\xeb" \
47
- "\xb6\x1d\x6c\xe5\x82\xf9\x8e\x8f\x3e\x7d\xb0\x2b\x6d\x02\x27\xf7" \
48
- "\xd9\x72\xf4\x58\x1c\x22\x5c\x18\x9b\xcf\x61\xff\x9a\x01\xc0\x46" \
49
- "\x48\x4b\xa4\x82\x11\x5b\x95\x5b\xfe\x1b\xdb\x90\x3d\x6d\xa2\xde" \
50
- "\xd8\xc3\x05\x0f\xbc\xe5\x1a\x43\x61\x83\x1b\x9b\x0f\x30\x0f\xd0" \
51
- "\xd7\x07\xfe\x9a\x07\x68\x0e\xe1\x39\x95\xd8\xe5\x9a\x4f\x45\x06" \
52
- "\x9c\xf7\xda\xd4\xd9\xee\x34\x36\x30\x20\xce\x74\x06\x2e\x4b\x80" \
53
- "\xaa\x29\xc3\x53\xed\x69\xe0\x1e\x45\xde\xb7\x3c\x0b\x87\xe0\x32" \
54
- "\xcc\x97\xc0\x45\x62\x71\x5a\x58\xc9\x49\xae\x53\x63\xf1\xed\x8b" \
55
- "\x25\x40\x7c\xd1\xf3\x7f\x51\xb4\x3b\xd2\x34\x79\x2d\xa6\x17\x35" \
56
- "\x36\x19\x06\x14\x8b\xf4\x55\x03\x55\x39\x75\xfa\x48\x05\x75\x1b" \
57
- "\x7b\xfa\x0e\x43\xfa\x01\xc1\x4c\x9c\x96\xe4\xd0\x43\x8a\x72\x99" \
58
- "\xda\x52\x3e\xc6\x51\xc1\x78\x29\x56\x04\x00\x67\x5a\xef\xfb\x14" \
59
- "\xb5\x9e\xd4\x72\xd7\x0c\x98\x79\x88\xf9\x3e\x81\xb4\x5d\x4c\xf2" \
60
- "\x2c\xa4\x60\x7a\x47\x2c\xc5\x67\x3c\x7b\x65\xba\x4f\xa5\x97\x31" \
61
- "\x37\x1a\x27\x6d\xa9\xcf\xe2\x67\x45\x89\x17\x78\x19\xda\x81\x09" \
62
- "\x0c\xa6\xda\xbe\x72\x55\xa7\xb4\x01\x3d\xd5\xe3\xc8\x5f\x12\x42" \
63
- "\xd9\x24\x5d\x44\xf4\x42\x51\xfb\x61\xb3\xf5\xcb\xab\xeb\xc0\xe0" \
64
- "\x37\x81\xc1\x1f\xfe\x09\x12\x20\x6d\x7e\xfd\x38\x0e\x56\x43\x49" \
65
- "\x4f\x5c\x06\x8a\xfb\xe7\x9f\x22\xc6\x87\x95\xf2\x50\xcb\x5a\x58" \
66
- "\x1d\x3f\x1b\x19\xba\xa9\xb6\x95\x42\x9f\x48\xcf\x2f\x70\x78\x22" \
67
- "\x36\x2d\x88\x1b\x0f\xb4\x03\x1f\xe6\x41\xf9\xaf\xa8\x04\x93\x80" \
68
- "\x3a\xb1\x5f\x22\x8f\x30\xdb\xc1\x84\x2f\x78\xcc\xd9\x4c\x13\xa6" \
69
- "\xc8\x88\x39\x98\xbc\x51\x31\x5d\x06\xa1\x4d\x63\x55\x92\xc8\x05" \
70
- "\x86\x7d\xd2\xd8\xdd\xbf\x60\x67\x83\x1f\x28\x56\x5e\xd7\x52\xe6"
@@ -1,8 +0,0 @@
1
- {
2
- "v": {
3
- "$binary": {
4
- "base64": "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",
5
- "subType": "6"
6
- }
7
- }
8
- }
@@ -1,33 +0,0 @@
1
- /* This file is generated by ./etc/fle2_generate_tests.py. */
2
- {
3
- .testname = "generated test. M length=1",
4
- .iv = "95874b7fdaf9ae802119db1c8ff57f83",
5
- .key = "d5ca079dbfa2f2679a644457dd4e7ce16e4487b45a3600b67f07c862547dd945",
6
- .plaintext = "f4",
7
- .ciphertext = "95874b7fdaf9ae802119db1c8ff57f8342",
8
- .bytes_written_expected = 17
9
- },
10
- {
11
- .testname = "generated test. M length=16",
12
- .iv = "b212470f2da37d54e1f7cb97ea80056a",
13
- .key = "0da6a32d900d022491132ac5f63b4d5fdea41d2f13917e8ece8cc2dc2a85ac47",
14
- .plaintext = "547f1c41adea2ec92c789060056e11bc",
15
- .ciphertext = "b212470f2da37d54e1f7cb97ea80056a4d583a9694a83e3ab77347b58d4149f1",
16
- .bytes_written_expected = 32
17
- },
18
- {
19
- .testname = "generated test. M length=64",
20
- .iv = "68324d32fecab2d74d21aceed29a092f",
21
- .key = "fb1b6518c8c44598e67ad14166ff1446ef380353106f6b9dfa1096ff6983bcec",
22
- .plaintext = "8ed05789e2308c5a8f382fdfbc57a47a79115eabb6b3b028ee5d4b2ec06b8718dc2c7f3a86fbc5cdd94a83dedc09f35dc5d566d25e00962b2f48911add81134d",
23
- .ciphertext = "68324d32fecab2d74d21aceed29a092f43a11a83db67d73b994173f394f8fe6e85183d2dbafa010e5b9f1c808a4d06548d3a5cc9305673466ca4e3666387e554ec768b2ce26408e069291a117bbf595b",
24
- .bytes_written_expected = 80
25
- },
26
- {
27
- .testname = "generated test. M length=100",
28
- .iv = "a88d18f1eaa9d866a88467ccd4ddf6f5",
29
- .key = "813f4abdfe7e84e047073347421b75dbec97f9e437a0d5ac9e4b79e738f2e8b9",
30
- .plaintext = "f4504f0aa8d2a01fe481e84ec16478f448abb45ad1472e401b6ef810f32138e89363adf82654abd1df964209b2561d3b61cb8a347f5b6db89f95c6bee831b3aa502b311683b3a2e5f02107d44067fec1f81c15a5f5a9924b2068d8dc500011536fc3644c",
31
- .ciphertext = "a88d18f1eaa9d866a88467ccd4ddf6f53f0307f159c40220571b42ef2a3c7f5fd35d646259695d07b3984a2eaa652e0438924be627779aa40373bcb19fdf025b24a6abafe9f71ca28d0631528d6cb4bbe5ddaf709f6382a963a6157828c42be55bacdf35ae45fead4cc55036b1b580416b211caf",
32
- .bytes_written_expected = 116
33
- },