<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 08:38:23 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>MongoDB Jira</title>
    <link>https://jira.mongodb.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.7.1</version>
        <build-number>970001</build-number>
        <build-date>13-04-2023</build-date>
    </build-info>


<item>
            <title>[GODRIVER-2352] Add ClientEncryption entity and Key Management API operations to Unified Test Format</title>
                <link>https://jira.mongodb.org/browse/GODRIVER-2352</link>
                <project id="14289" key="GODRIVER">Go Driver</project>
                    <description>&lt;p&gt;This ticket was split from &lt;tt&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/DRIVERS-2017&quot; title=&quot;Add ClientEncryption entity and Key Management API operations to Unified Test Format&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DRIVERS-2017&quot;&gt;&lt;del&gt;DRIVERS-2017&lt;/del&gt;&lt;/a&gt;&lt;/tt&gt;, please see that ticket for a detailed description. &lt;/p&gt;</description>
                <environment></environment>
        <key id="2005606">GODRIVER-2352</key>
            <summary>Add ClientEncryption entity and Key Management API operations to Unified Test Format</summary>
                <type id="2" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14711&amp;avatarType=issuetype">New Feature</type>
                                            <priority id="10300" iconUrl="https://jira.mongodb.org/images/icons/priorities/medium.svg">Unknown</priority>
                        <status id="6" iconUrl="https://jira.mongodb.org/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="9">Done</resolution>
                                        <assignee username="preston.vasquez@mongodb.com">Preston Vasquez</assignee>
                                    <reporter username="dbeng-pm-bot">PM Bot</reporter>
                        <labels>
                    </labels>
                <created>Mon, 21 Mar 2022 16:03:15 +0000</created>
                <updated>Mon, 27 Mar 2023 18:47:04 +0000</updated>
                            <resolved>Fri, 24 Jun 2022 23:19:00 +0000</resolved>
                                                    <fixVersion>1.10.0</fixVersion>
                                                        <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="4639582" author="xgen-internal-githook" created="Fri, 24 Jun 2022 23:17:55 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Preston Vasquez&apos;, &apos;email&apos;: &apos;prestonvasquez@icloud.com&apos;, &apos;username&apos;: &apos;prestonvasquez&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/GODRIVER-2352&quot; title=&quot;Add ClientEncryption entity and Key Management API operations to Unified Test Format&quot; class=&quot;issue-link&quot; data-issue-key=&quot;GODRIVER-2352&quot;&gt;&lt;del&gt;GODRIVER-2352&lt;/del&gt;&lt;/a&gt; Key Management API (#975)&lt;/p&gt;

&lt;p&gt;Co-authored-by: Benjamin Rewis &amp;lt;32186188+benjirewis@users.noreply.github.com&amp;gt;&lt;/p&gt;

&lt;p&gt;Co-authored-by: Benjamin Rewis &amp;lt;32186188+benjirewis@users.noreply.github.com&amp;gt;&lt;/p&gt;

&lt;p&gt;Co-authored-by: Benjamin Rewis &amp;lt;32186188+benjirewis@users.noreply.github.com&amp;gt;&lt;/p&gt;

&lt;p&gt;Co-authored-by: Benjamin Rewis &amp;lt;32186188+benjirewis@users.noreply.github.com&amp;gt;&lt;/p&gt;

&lt;p&gt;Co-authored-by: Benjamin Rewis &amp;lt;32186188+benjirewis@users.noreply.github.com&amp;gt;&lt;/p&gt;

&lt;p&gt;Co-authored-by: Benjamin Rewis &amp;lt;32186188+benjirewis@users.noreply.github.com&amp;gt;&lt;/p&gt;

&lt;p&gt;Co-authored-by: Benjamin Rewis &amp;lt;32186188+benjirewis@users.noreply.github.com&amp;gt;&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-go-driver/commit/653b149f4ccecfaed5ca499bacd97386082c03a1&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-go-driver/commit/653b149f4ccecfaed5ca499bacd97386082c03a1&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="4596947" author="JIRAUSER1261413" created="Mon, 6 Jun 2022 15:35:38 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=preston.vasquez%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;preston.vasquez@mongodb.com&quot;&gt;preston.vasquez@mongodb.com&lt;/a&gt; Binary. See the &lt;a href=&quot;https://github.com/mongodb/specifications/blob/262f8b5dff1af2e1957632acf682c8ef4e7e45e7/source/extended-json.rst#extended-json-format&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;Extended JSON specification&lt;/a&gt; regarding &lt;a href=&quot;https://github.com/mongodb/specifications/blob/262f8b5dff1af2e1957632acf682c8ef4e7e45e7/source/extended-json.rst#parsers&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;type wrapper objects&lt;/a&gt; such as &lt;tt&gt;$binary&lt;/tt&gt;.&lt;/p&gt;

&lt;p&gt;Again, the expected binary is being encoded in base64 form in both code and the spec tests. The BSON parser is expected to convert the base64 representation into its corresponding binary value during parsing before further analysis.&lt;/p&gt;</comment>
                            <comment id="4594529" author="JIRAUSER1265158" created="Fri, 3 Jun 2022 22:57:15 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=ezra.chung%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;ezra.chung@mongodb.com&quot;&gt;ezra.chung@mongodb.com&lt;/a&gt; Are you expecting the &lt;tt&gt;KeyMaterial&lt;/tt&gt; option for creating a data key to be a binary or a base64 string?  &lt;a href=&quot;https://github.com/mongodb/specifications/blob/f941df836c97a19820879afd726d550541a78cbe/source/client-side-encryption/tests/unified/createKey.json#L627&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;This has be confused&lt;/a&gt;.&lt;/p&gt;</comment>
                            <comment id="4590743" author="JIRAUSER1265158" created="Thu, 2 Jun 2022 17:41:59 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=ezra.chung%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;ezra.chung@mongodb.com&quot;&gt;ezra.chung@mongodb.com&lt;/a&gt; thank you!&lt;/p&gt;</comment>
                            <comment id="4590737" author="JIRAUSER1261413" created="Thu, 2 Jun 2022 17:40:50 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=preston.vasquez%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;preston.vasquez@mongodb.com&quot;&gt;preston.vasquez@mongodb.com&lt;/a&gt; The custom key material is &lt;em&gt;given&lt;/em&gt; in base64 form in the spec. However, the 128-byte base64 string itself is not the custom key material to submit to &lt;tt&gt;mongocrypt_ctx_setopt_key_material&lt;/tt&gt;. The 128-byte base64 string must be decoded into the actual 96-byte custom key material (see &lt;a href=&quot;https://github.com/eramongodb/mongo-c-driver/blob/d470f0033bcd0213902afe6dd2867ddb973fbb31/src/libmongoc/tests/test-mongoc-client-side-encryption.c#L744&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;lines 743-744&lt;/a&gt;). The 96-byte custom key material may be hard-coded if preferable (as done for other tests on &lt;a href=&quot;https://github.com/eramongodb/mongo-c-driver/blob/d470f0033bcd0213902afe6dd2867ddb973fbb31/src/libmongoc/tests/test-mongoc-client-side-encryption.c#L101&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;line 101&lt;/a&gt;), but I believe it more convenient to decode the base64 string instead.&lt;/p&gt;
&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;$ printf &quot;xPTAjBRG5JiPm+d3fj6XLi2q5DMXUS/f1f+SMAlhhwkhDRL0kr8r9GDLIGTAGlvC+HVjSIgdL+RKwZCvpXSyxTICWSXTUYsWYPyu3IoHbuBZdmw2faM3WhcRIgbMReU5&quot; | base64 -d | wc -c&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;96&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;</comment>
                            <comment id="4588598" author="JIRAUSER1265158" created="Wed, 1 Jun 2022 23:38:53 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=ezra.chung%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;ezra.chung@mongodb.com&quot;&gt;ezra.chung@mongodb.com&lt;/a&gt;, I&apos;m working on implementing the part of this ticket concerning key materials.&#160; I&apos;m reading through the C code you wrote and came across &lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/pull/991/files#diff-d363a5539f2fbabfadf2d7cc6cdb96a203fb63f2caa31bae731c3e12d97b204cR734&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;this prose test&lt;/a&gt; from the &lt;a href=&quot;https://github.com/mongodb/specifications/tree/master/source/client-side-encryption/tests#1-custom-key-material-test&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;specifications&lt;/a&gt;.&#160; The base64-encoded string is 128 bytes in length.&#160; Could you explain how/point me to the code where we truncates this data to the 96 bytes required by &lt;a href=&quot;https://github.com/mongodb/libmongocrypt/blame/1.5.0-rc0/src/mongocrypt-ctx.c#L176&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&lt;tt&gt;mongocrypt_ctx_setopt_key_material&lt;/tt&gt;&lt;/a&gt;?&lt;/p&gt;</comment>
                            <comment id="4554398" author="xgen-internal-githook" created="Tue, 17 May 2022 19:47:41 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;Kevin Albertson&apos;, &apos;email&apos;: &apos;kevin.albertson@mongodb.com&apos;, &apos;username&apos;: &apos;kevinAlbs&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/GODRIVER-2352&quot; title=&quot;Add ClientEncryption entity and Key Management API operations to Unified Test Format&quot; class=&quot;issue-link&quot; data-issue-key=&quot;GODRIVER-2352&quot;&gt;&lt;del&gt;GODRIVER-2352&lt;/del&gt;&lt;/a&gt; Add clientEncryption entity to unified test format (#920)&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-go-driver/commit/cb28f46bbf4da093701392ad048195b7342b0f72&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-go-driver/commit/cb28f46bbf4da093701392ad048195b7342b0f72&lt;/a&gt;&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10010">
                    <name>Duplicate</name>
                                                                <inwardlinks description="is duplicated by">
                                        <issuelink>
            <issuekey id="1958135">GODRIVER-2261</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="2068608">GODRIVER-2456</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="2075377">GODRIVER-2470</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10620">
                    <name>Issue split</name>
                                                                <inwardlinks description="split from">
                                        <issuelink>
            <issuekey id="1958125">DRIVERS-2017</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_21553" key="com.atlassian.jira.plugin.system.customfieldtypes:labels">
                        <customfieldname>Quarter</customfieldname>
                        <customfieldvalues>
                                        <label>FY23Q2</label>
    
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|i06yp8:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_21457" key="com.atlassian.jira.plugin.system.customfieldtypes:textarea">
                        <customfieldname>Upstream Changes Summary</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/DRIVERS-2017&quot; title=&quot;Add ClientEncryption entity and Key Management API operations to Unified Test Format&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DRIVERS-2017&quot;&gt;&lt;del&gt;DRIVERS-2017&lt;/del&gt;&lt;/a&gt;:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Add support for the new &lt;a href=&quot;https://github.com/mongodb/specifications/blob/f941df836c97a19820879afd726d550541a78cbe/source/unified-test-format/unified-test-format.rst#user-content-entity-clientencryption&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;ClientEncryption entity&lt;/a&gt; in unified test runners.&lt;/li&gt;
	&lt;li&gt;Sync new unified tests for Client Side Encryption with &lt;a href=&quot;https://github.com/mongodb/specifications/tree/fa046c7887ab61370d36758ffe883e2630940c15/source/client-side-encryption/tests/unified&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;fa046c78&lt;/a&gt;. This includes all tests in the &lt;tt&gt;unified&lt;/tt&gt; directory.
	&lt;ul&gt;
		&lt;li&gt;Originally &lt;a href=&quot;https://github.com/mongodb/specifications/tree/f941df836c97a19820879afd726d550541a78cbe/source/client-side-encryption/tests/unified&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;f941df83&lt;/a&gt;.&lt;/li&gt;
		&lt;li&gt;Updated to include &lt;a href=&quot;https://github.com/mongodb/specifications/commit/dade3e4dd6493e4c5cb8bcb47d6a80e843a7e34f&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;dade3e4d&lt;/a&gt; (&lt;a href=&quot;https://jira.mongodb.org/browse/DRIVERS-2356&quot; title=&quot;Reduce expected removeKeyAltName operations to a single findOneAndUpdate&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DRIVERS-2356&quot;&gt;&lt;del&gt;DRIVERS-2356&lt;/del&gt;&lt;/a&gt;).&lt;/li&gt;
		&lt;li&gt;Updated to include &lt;a href=&quot;https://github.com/mongodb/specifications/commit/fa046c7887ab61370d36758ffe883e2630940c15&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;fa046c78&lt;/a&gt;.&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
	&lt;li&gt;Implement prose tests&lt;/li&gt;
&lt;/ul&gt;
</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                            </customfields>
    </item>
</channel>
</rss>