ChoosingiKGF.html 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231
  1. <!-- HTML header for doxygen 1.8.10-->
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
  6. <meta http-equiv="X-UA-Compatible" content="IE=9"/>
  7. <meta name="generator" content="Doxygen 1.8.11"/>
  8. <title>Intel&reg; Enhanced Privacy ID SDK: If You Choose iKGF as Your Issuer</title>
  9. <link href="tabs.css" rel="stylesheet" type="text/css"/>
  10. <script type="text/javascript" src="jquery.js"></script>
  11. <script type="text/javascript" src="dynsections.js"></script>
  12. <link href="navtree.css" rel="stylesheet" type="text/css"/>
  13. <script type="text/javascript" src="resize.js"></script>
  14. <script type="text/javascript" src="navtreedata.js"></script>
  15. <script type="text/javascript" src="navtree.js"></script>
  16. <script type="text/javascript">
  17. $(document).ready(initResizable);
  18. $(window).load(resizeHeight);
  19. </script>
  20. <link href="doxygen.css" rel="stylesheet" type="text/css" />
  21. <link href="epidstyle.css" rel="stylesheet" type="text/css"/>
  22. </head>
  23. <body>
  24. <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
  25. <div id="titlearea">
  26. <table cellspacing="0" cellpadding="0">
  27. <tbody>
  28. <tr style="height: 56px;">
  29. <td id="projectalign" style="padding-left: 0.5em;">
  30. <div id="projectname"><a
  31. onclick="storeLink('index.html')"
  32. id="projectlink"
  33. class="index.html"
  34. href="index.html">Intel&reg; Enhanced Privacy ID SDK</a>
  35. &#160;<span id="projectnumber">3.0.0</span>
  36. </div>
  37. </td>
  38. </tr>
  39. </tbody>
  40. </table>
  41. </div>
  42. <!-- end header part -->
  43. <!-- Generated by Doxygen 1.8.11 -->
  44. </div><!-- top -->
  45. <div id="side-nav" class="ui-resizable side-nav-resizable">
  46. <div id="nav-tree">
  47. <div id="nav-tree-contents">
  48. <div id="nav-sync" class="sync"></div>
  49. </div>
  50. </div>
  51. <div id="splitbar" style="-moz-user-select:none;"
  52. class="ui-resizable-handle">
  53. </div>
  54. </div>
  55. <script type="text/javascript">
  56. $(document).ready(function(){initNavTree('ChoosingiKGF.html','');});
  57. </script>
  58. <div id="doc-content">
  59. <div class="header">
  60. <div class="headertitle">
  61. <div class="title">If You Choose iKGF as Your Issuer </div> </div>
  62. </div><!--header-->
  63. <div class="contents">
  64. <div class="toc"><h3>Table of Contents</h3>
  65. <ul><li class="level1"><a href="#RevocationTools">Tools for Creating Revocation Requests</a><ul><li class="level2"><a href="#RevocationTools_revokegrp">Requesting Group Revocation</a></li>
  66. <li class="level2"><a href="#RevocationTools_revokekey">Requesting Private Key Revocation</a></li>
  67. <li class="level2"><a href="#RevocationTools_revokesig">Requesting Signature Revocation</a></li>
  68. </ul>
  69. </li>
  70. <li class="level1"><a href="#ExtractionTools">Tools for Extracting Keys from iKGF Files</a><ul><li class="level2"><a href="#ExtractionTools_extractgrps">Extracting Group Public Keys</a></li>
  71. <li class="level2"><a href="#ExtractionTools_extractkeys">Extracting Member Private Keys</a></li>
  72. </ul>
  73. </li>
  74. </ul>
  75. </div>
  76. <div class="textblock"><p>To use the Intel&reg; EPID APIs, you need to use the following items that are created by the issuer:</p>
  77. <ul>
  78. <li>Group public key, which corresponds to the issuing private key kept by the issuer</li>
  79. <li>Member private keys</li>
  80. <li>Signature based revocation list (SigRL)</li>
  81. <li>Private key based revocation list (PrivRL)</li>
  82. <li>Group based revocation list (GroupRL)</li>
  83. </ul>
  84. <p>If you want to use the Intel Key Generation Facility (iKGF) as the issuer, contact <a href="#" onclick="location.href='mai'+'lto:'+'inf'+'o@'+'dig'+'it'+'al-'+'cp'+'.co'+'m'; return false;">info@<span style="display: none;">.nosp@m.</span>digi<span style="display: none;">.nosp@m.</span>tal-c<span style="display: none;">.nosp@m.</span>p.co<span style="display: none;">.nosp@m.</span>m</a> to get started.</p>
  85. <p>If you choose to use iKGF as the issuer, you can take advantage of tools included in the SDK that are designed to make it easier for you to interact with iKGF by creating requests to update revocation lists and by extracting member private keys and group public keys from iKGF files.</p>
  86. <h1><a class="anchor" id="RevocationTools"></a>
  87. Tools for Creating Revocation Requests</h1>
  88. <p>The Intel&reg; EPID SDK includes tools to help you request additions to revocation lists managed by iKGF if you are using iKGF as the issuer.</p>
  89. <p>These tools are designed to create a revocation request in the format required by iKGF. In order to update a revocation list, the requests generated by these tools must be submitted to the issuer.</p>
  90. <p>To access the tools, go to <code>_install/epid-sdk/tools</code> in the SDK directory.</p>
  91. <p>You need to build the SDK before you can use these tools. For more information, refer to <a class="el" href="BuildingSdk.html">Building from Source</a>.</p>
  92. <p>The following tools are available:</p>
  93. <table class="doxtable">
  94. <tr>
  95. <th>Tool </th><th>Purpose </th></tr>
  96. <tr>
  97. <td><code>revokegrp</code> </td><td>Create group revocation request </td></tr>
  98. <tr>
  99. <td><code>revokekey</code> </td><td>Create member private key revocation request </td></tr>
  100. <tr>
  101. <td><code>revokesig</code> </td><td>Create signature revocation request </td></tr>
  102. </table>
  103. <h2><a class="anchor" id="RevocationTools_revokegrp"></a>
  104. Requesting Group Revocation</h2>
  105. <p>The <code>revokegrp</code> tool adds a group to the revocation request file. </p><pre class="fragment">Usage: revokegrp [OPTION]...
  106. Revoke Intel(R) EPID group
  107. Options:
  108. --gpubkey=FILE
  109. load group public key from FILE (default: pubkey.bin)
  110. --capubkey=FILE
  111. load IoT Issuing CA public key from FILE
  112. --reason=NUM
  113. revocation reason (default: 0)
  114. --req=FILE
  115. append group revocation request to FILE (default: grprlreq.dat)
  116. -h, --help
  117. display this help and exit
  118. -v, --verbose
  119. print status messages to stdout
  120. </pre><h2><a class="anchor" id="RevocationTools_revokekey"></a>
  121. Requesting Private Key Revocation</h2>
  122. <p>The <code>revokekey</code> tool adds a member private key to the revocation request file. </p><pre class="fragment">Usage: revokekey [OPTION]
  123. Revoke Intel(R) EPID private key
  124. Options:
  125. --mprivkey=FILE
  126. load private key to revoke from FILE (default: mprivkey.dat)
  127. --req=FILE
  128. append private key revocation request to FILE (default: privreq.dat)
  129. -h, --help
  130. display this help and exit
  131. -v,--verbose
  132. print status messages to stdout
  133. The following options are only needed for compressed keys:
  134. --gpubkey=FILE
  135. load group public key from FILE (default: pubkey.bin)
  136. --capubkey=FILE
  137. load IoT Issuing CA public key from FILE
  138. </pre><h2><a class="anchor" id="RevocationTools_revokesig"></a>
  139. Requesting Signature Revocation</h2>
  140. <p>The <code>revokesig</code> tool creates a request to add a signature to the revocation request file.</p>
  141. <p><code>revokesig</code> only accepts valid signatures for addition to the revocation request. </p><pre class="fragment">Usage: revokesig [OPTION]...
  142. Revoke Intel(R) EPID signature
  143. Options:
  144. --sig=FILE
  145. load signature to revoke from FILE (default: sig.dat)
  146. --msg=MESSAGE
  147. MESSAGE used to generate signature to revoke
  148. --msgfile=FILE
  149. FILE containing message used to generate signature to revoke
  150. --gpubkey=FILE
  151. load group public key from FILE (default: pubkey.bin)
  152. --capubkey=FILE
  153. load IoT Issuing CA public key from FILE
  154. --req=FILE
  155. append signature revocation request to FILE (default: sigrlreq.dat)
  156. -h, --help
  157. display this help and exit
  158. -v, --verbose
  159. print status messages to stdout
  160. </pre><h1><a class="anchor" id="ExtractionTools"></a>
  161. Tools for Extracting Keys from iKGF Files</h1>
  162. <p>The Intel&reg; EPID SDK includes tools to help you extract individual keys from files provided by the Intel Key Generation Facility (iKGF) if you are using iKGF as the issuer.</p>
  163. <p>To access the tools, go to <code>_install/epid-sdk/tools</code> in the SDK directory.</p>
  164. <p>You need to build the SDK before you can use these tools. For more information, refer to <a class="el" href="BuildingSdk.html">Building from Source</a>.</p>
  165. <p>The following tools are available:</p>
  166. <table class="doxtable">
  167. <tr>
  168. <th>Tool </th><th>Purpose </th></tr>
  169. <tr>
  170. <td><code>extractgrps</code> </td><td>Extracts group public keys </td></tr>
  171. <tr>
  172. <td><code>extractkeys</code> </td><td>Extracts member private keys </td></tr>
  173. </table>
  174. <h2><a class="anchor" id="ExtractionTools_extractgrps"></a>
  175. Extracting Group Public Keys</h2>
  176. <p>The <code>extractgrps</code> tool extracts group public keys from the input file to the current directory. </p><pre class="fragment">Usage: extractgrps [OPTION]... [FILE] [NUM]
  177. Extract the first NUM group certs from FILE to current directory
  178. Options:
  179. -h, --help
  180. display this help and exit
  181. -v, --verbose
  182. print status messages to stdout
  183. </pre><h2><a class="anchor" id="ExtractionTools_extractkeys"></a>
  184. Extracting Member Private Keys</h2>
  185. <p>The <code>extractkeys</code> tool extracts member private keys from the input file to the current directory. </p><pre class="fragment">Usage: extractkeys [OPTION]... [FILE] [NUM]
  186. Extract the first NUM private keys from FILE to current directory.
  187. Options:
  188. -c, --compressed
  189. extract compressed keys
  190. -h, --help
  191. display this help and exit
  192. -v, --verbose
  193. print status messages to stdout</pre> </div></div><!-- contents -->
  194. </div><!-- doc-content -->
  195. <!-- HTML footer for doxygen 1.8.10-->
  196. <!-- start footer part -->
  197. <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  198. <ul>
  199. <li class="footer">
  200. &copy; 2016 Intel Corporation
  201. </li>
  202. </ul>
  203. </div>
  204. </body>
  205. </html>