<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Hello again, in Intel® Software Guard Extensions (Intel® SGX)</title>
    <link>https://community.intel.com/t5/Intel-Software-Guard-Extensions/Fill-sgx-report-data-t-using-sgx-ra-proc-msg2/m-p/1178324#M3448</link>
    <description>&lt;P&gt;Hello again,&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;On the client side, when msg2 is received the application calls the&amp;nbsp;sgx_ra_proc_msg2()&amp;nbsp;function to generate msg3. This call performs the following tasks:&lt;/P&gt;&lt;P&gt;Verifies the service provider signature.&lt;/P&gt;&lt;P&gt;Checks the SigRL.&lt;/P&gt;&lt;P&gt;Returns msg3, which contains the quote used to attest that particular enclave.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;My question comes from the fact that a developer is unable to create a msg3 with the extra 32 bytes filled with other data than zeros using the&amp;nbsp;sgx_ra_proc_msg2().&lt;/P&gt;&lt;P&gt;So if a developer wants to take advantage of that extra 32 bytes he needs to build a function wich does everithing the&amp;nbsp;sgx_ra_proc_msg2() does but writing the 32 byte he wants, am I right? To do this he needs to verify SP signature, check the SigRL and generate msg3 quote using&amp;nbsp;sgx_get_quote and sgx_create_report.&lt;/P&gt;&lt;P&gt;If not, how can a developer generate a msg3 with that extra 32 bytes filled with other data than zeros?&lt;/P&gt;</description>
    <pubDate>Thu, 30 Jan 2020 17:58:00 GMT</pubDate>
    <dc:creator>ssziy</dc:creator>
    <dc:date>2020-01-30T17:58:00Z</dc:date>
    <item>
      <title>Fill sgx_report_data_t using sgx_ra_proc_msg2</title>
      <link>https://community.intel.com/t5/Intel-Software-Guard-Extensions/Fill-sgx-report-data-t-using-sgx-ra-proc-msg2/m-p/1178320#M3444</link>
      <description>&lt;P&gt;Good evening,&lt;/P&gt;&lt;P&gt;How can I fill with data the &lt;STRONG&gt;&lt;EM&gt;sgx_report_data_t&lt;/EM&gt;&lt;/STRONG&gt; field of &lt;STRONG&gt;&lt;EM&gt;sgx_report_body_t&lt;/EM&gt;&lt;/STRONG&gt; of &lt;STRONG&gt;&lt;EM&gt;sgx_quote_t&lt;/EM&gt;&lt;/STRONG&gt; using the &lt;EM&gt;&lt;STRONG&gt;sgx_ra_proc_msg2&lt;/STRONG&gt; &lt;/EM&gt;wrapper?&lt;/P&gt;&lt;P&gt;Thank you and have a nice weekend.&lt;/P&gt;</description>
      <pubDate>Fri, 24 Jan 2020 23:14:45 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Software-Guard-Extensions/Fill-sgx-report-data-t-using-sgx-ra-proc-msg2/m-p/1178320#M3444</guid>
      <dc:creator>ssziy</dc:creator>
      <dc:date>2020-01-24T23:14:45Z</dc:date>
    </item>
    <item>
      <title>Hello Stevie,</title>
      <link>https://community.intel.com/t5/Intel-Software-Guard-Extensions/Fill-sgx-report-data-t-using-sgx-ra-proc-msg2/m-p/1178321#M3445</link>
      <description>&lt;P&gt;Hello Stevie,&lt;/P&gt;&lt;P&gt;The sgx_report_data_t field cannot be set by the user since the sgx_ra_proc_msg2 wrapper sets it to NULL. It is not used.&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Jesus&lt;/P&gt;</description>
      <pubDate>Tue, 28 Jan 2020 18:17:49 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Software-Guard-Extensions/Fill-sgx-report-data-t-using-sgx-ra-proc-msg2/m-p/1178321#M3445</guid>
      <dc:creator>JesusG_Intel</dc:creator>
      <dc:date>2020-01-28T18:17:49Z</dc:date>
    </item>
    <item>
      <title>Thanks for the answer.</title>
      <link>https://community.intel.com/t5/Intel-Software-Guard-Extensions/Fill-sgx-report-data-t-using-sgx-ra-proc-msg2/m-p/1178322#M3446</link>
      <description>&lt;P&gt;Thanks for the answer.&lt;/P&gt;&lt;P&gt;With that in mind, does it mean that I need to redo everything that sgx_ra_proc_msg2 does but generating a quote from scratch whose report contains the data I want? Because the first 32-byte report_body.report_data field in Quote is set to SHA256 hash of ga, gb and VK, and the&lt;BR /&gt;second 32-byte is set to all 0s. I wish i can use that second 32-byte for a public key hash for exemple.&lt;/P&gt;&lt;P&gt;Thanks once again for the help.&lt;/P&gt;</description>
      <pubDate>Tue, 28 Jan 2020 19:42:07 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Software-Guard-Extensions/Fill-sgx-report-data-t-using-sgx-ra-proc-msg2/m-p/1178322#M3446</guid>
      <dc:creator>ssziy</dc:creator>
      <dc:date>2020-01-28T19:42:07Z</dc:date>
    </item>
    <item>
      <title>Hello Stevie,</title>
      <link>https://community.intel.com/t5/Intel-Software-Guard-Extensions/Fill-sgx-report-data-t-using-sgx-ra-proc-msg2/m-p/1178323#M3447</link>
      <description>&lt;P&gt;Hello Stevie,&lt;/P&gt;&lt;P&gt;Unfortunately, implementing your own function will not help you.&amp;nbsp;Figure 3 in the &lt;A href="https://software.intel.com/en-us/articles/code-sample-intel-software-guard-extensions-remote-attestation-end-to-end-example" style="color:#0563c1; text-decoration:underline"&gt;RA End-to-End Code Sample&lt;/A&gt;&amp;nbsp;shows&amp;nbsp;that the result from sgx_ra_proc_msg2 goes to the Intel SGX Runtime, which means the customizations you make&amp;nbsp;in the report will not be usable in your enclave because the enclave does not get the report.&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Jesus&lt;/P&gt;</description>
      <pubDate>Thu, 30 Jan 2020 17:40:45 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Software-Guard-Extensions/Fill-sgx-report-data-t-using-sgx-ra-proc-msg2/m-p/1178323#M3447</guid>
      <dc:creator>JesusG_Intel</dc:creator>
      <dc:date>2020-01-30T17:40:45Z</dc:date>
    </item>
    <item>
      <title>Hello again,</title>
      <link>https://community.intel.com/t5/Intel-Software-Guard-Extensions/Fill-sgx-report-data-t-using-sgx-ra-proc-msg2/m-p/1178324#M3448</link>
      <description>&lt;P&gt;Hello again,&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;On the client side, when msg2 is received the application calls the&amp;nbsp;sgx_ra_proc_msg2()&amp;nbsp;function to generate msg3. This call performs the following tasks:&lt;/P&gt;&lt;P&gt;Verifies the service provider signature.&lt;/P&gt;&lt;P&gt;Checks the SigRL.&lt;/P&gt;&lt;P&gt;Returns msg3, which contains the quote used to attest that particular enclave.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;My question comes from the fact that a developer is unable to create a msg3 with the extra 32 bytes filled with other data than zeros using the&amp;nbsp;sgx_ra_proc_msg2().&lt;/P&gt;&lt;P&gt;So if a developer wants to take advantage of that extra 32 bytes he needs to build a function wich does everithing the&amp;nbsp;sgx_ra_proc_msg2() does but writing the 32 byte he wants, am I right? To do this he needs to verify SP signature, check the SigRL and generate msg3 quote using&amp;nbsp;sgx_get_quote and sgx_create_report.&lt;/P&gt;&lt;P&gt;If not, how can a developer generate a msg3 with that extra 32 bytes filled with other data than zeros?&lt;/P&gt;</description>
      <pubDate>Thu, 30 Jan 2020 17:58:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Software-Guard-Extensions/Fill-sgx-report-data-t-using-sgx-ra-proc-msg2/m-p/1178324#M3448</guid>
      <dc:creator>ssziy</dc:creator>
      <dc:date>2020-01-30T17:58:00Z</dc:date>
    </item>
    <item>
      <title>Hello Stevie, I'm sorry for</title>
      <link>https://community.intel.com/t5/Intel-Software-Guard-Extensions/Fill-sgx-report-data-t-using-sgx-ra-proc-msg2/m-p/1178325#M3449</link>
      <description>&lt;P&gt;Hello Stevie, I'm sorry for my confusion. Now I understand what you mean. It turns out, another developer has had your same idea, i.e. developing their own wrapper functions, and it was discussed &lt;A href="http://github.com/intel/sgx-ra-sample/issues/2"&gt;here&lt;/A&gt;. I think you'll find this &lt;A href="https://github.com/intel/sgx-ra-sample/issues/2"&gt;discussion &lt;/A&gt;useful. The person who answered the developer, jmechalas, is the same person that wrote the&amp;nbsp;&lt;A href="https://software.intel.com/en-us/articles/code-sample-intel-software-guard-extensions-remote-attestation-end-to-end-example"&gt;RA End-to-End Code Sample&lt;/A&gt;.&lt;/P&gt;&lt;P&gt;In short, yes, you can replace the wrappers with your own functions, but it will be difficult to do and get it right.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Jesus&lt;/P&gt;</description>
      <pubDate>Thu, 30 Jan 2020 23:55:17 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Software-Guard-Extensions/Fill-sgx-report-data-t-using-sgx-ra-proc-msg2/m-p/1178325#M3449</guid>
      <dc:creator>JesusG_Intel</dc:creator>
      <dc:date>2020-01-30T23:55:17Z</dc:date>
    </item>
    <item>
      <title>Thanks for everything,</title>
      <link>https://community.intel.com/t5/Intel-Software-Guard-Extensions/Fill-sgx-report-data-t-using-sgx-ra-proc-msg2/m-p/1178326#M3450</link>
      <description>&lt;P&gt;Thanks for all the help, everything is clear now.&lt;/P&gt;</description>
      <pubDate>Fri, 31 Jan 2020 14:22:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Software-Guard-Extensions/Fill-sgx-report-data-t-using-sgx-ra-proc-msg2/m-p/1178326#M3450</guid>
      <dc:creator>ssziy</dc:creator>
      <dc:date>2020-01-31T14:22:00Z</dc:date>
    </item>
  </channel>
</rss>

