[JAVA-4597] Support queryable encryption in ClientEncryption Created: 28/Apr/22  Updated: 28/Oct/23  Resolved: 19/May/22

Status: Closed
Project: Java Driver
Component/s: Client Side Encryption
Affects Version/s: None
Fix Version/s: 4.7.0

Type: New Feature Priority: Major - P3
Reporter: PM Bot Assignee: Ross Lawley
Resolution: Fixed Votes: 0
Labels: QP-priority, spec-compliance
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Issue split
split from DRIVERS-2302 Add FLE 2 API to ClientEncryptionOpts Closed
Epic Link: FLE 2.0 Support
Server Compat: 6.0
Quarter: FY23Q2
Upstream Changes Summary:

DRIVERS-2302:
Please see these specifications PRs for the detailed changes and new prose tests:

Please see the Go driver implementation for reference.

Bindings changes

Upgrade libmongocrypt dependency to 1.5.0. Drivers can use 1.5.0-alpha1 to test. Binaries are available from this upload-all task.

Update the bindings to libmongocrypt to add the new functions: mongocrypt_ctx_setopt_index_type, mongocrypt_ctx_setopt_query_type, and mongocrypt_ctx_setopt_contention_factor.

Driver changes

Add the new driver API options: EncryptOpts.queryType and EncryptOpts.contentionFactor.

Pass EncryptOpts.queryType to libmongocrypt with mongocrypt_ctx_setopt_query_type.

Pass EncryptOpts.contentionFactor to libmongocrypt with mongocrypt_ctx_setopt_contention_factor.

If EncryptOpts.algorithm is "Indexed", call mongocrypt_ctx_setopt_index_type(ctx, MONGOCRYPT_INDEX_TYPE_EQUALITY).

If EncryptOpts.algorithm is "Unindexed", call mongocrypt_ctx_setopt_index_type(ctx, MONGOCRYPT_INDEX_TYPE_NONE).

Test changes

Add new prose tests for FLE 2.0 explicit encryption.


 Description   

This ticket was split from DRIVERS-2302, please see that ticket for a detailed description.



 Comments   
Comment by Githook User [ 03/Jun/22 ]

Author:

{'name': 'jyemin', 'email': 'jeff.yemin@mongodb.com', 'username': 'jyemin'}

Message: Fix @since Javadoc annotations for EncryptOptions

JAVA-4597
Branch: master
https://github.com/mongodb/mongo-java-driver/commit/1282e8b3897a8156ff7dda4a1ed90df931474b71

Comment by Githook User [ 19/May/22 ]

Author:

{'name': 'Ross Lawley', 'email': 'ross.lawley@gmail.com', 'username': 'rozza'}

Message: EncryptOptions JAVA-4597
Branch: master
https://github.com/mongodb/mongo-java-driver/commit/5e73ca9a615f5077aa579ce9272b29d412dda9d6

Generated at Thu Feb 08 09:02:29 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.