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.14"/> 8<title>Intel® Enhanced Privacy ID SDK: Test Data</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/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ 18 $(document).ready(initResizable); 19/* @license-end */</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® Enhanced Privacy ID SDK</a> 35 <span id="projectnumber">6.0.1</span> 36</div> 37 </td> 38 </tr> 39 </tbody> 40</table> 41</div> 42<!-- end header part --> 43<!-- Generated by Doxygen 1.8.14 --> 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/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ 57$(document).ready(function(){initNavTree('_issuer_material.html','');}); 58/* @license-end */ 59</script> 60<div id="doc-content"> 61<div class="header"> 62 <div class="headertitle"> 63<div class="title">Test Data </div> </div> 64</div><!--header--> 65<div class="contents"> 66<div class="textblock"><p>The SDK includes sample material in <code>example/data</code> that is intended to be provisioned in members and verifiers so that they can operate without material from a real issuer, such as iKGF.</p> 67<h1><a class="anchor" id="IssuerMaterial_Groups"></a> 68Sample Groups</h1> 69<h2>Sample Group A</h2> 70<p>Group A (<code>groupa</code>) contains eight group members and sample revocation lists:</p> 71<p><br /> 72</p> 73<h3>Members in Group A</h3> 74<table class="markdownTable"> 75<tr class="markdownTableHead"> 76<th class="markdownTableHeadNone">Group Member </th><th class="markdownTableHeadNone">Revocation Status </th></tr> 77<tr class="markdownTableBody" class="markdownTableRowOdd"> 78<td class="markdownTableBodyNone">groupa/member0 </td><td class="markdownTableBodyNone">Non-revoked </td></tr> 79<tr class="markdownTableBody" class="markdownTableRowEven"> 80<td class="markdownTableBodyNone">groupa/member1 </td><td class="markdownTableBodyNone">Non-revoked </td></tr> 81<tr class="markdownTableBody" class="markdownTableRowOdd"> 82<td class="markdownTableBodyNone">groupa/privrevokedmember0 </td><td class="markdownTableBodyNone">Revoked in PrivRL </td></tr> 83<tr class="markdownTableBody" class="markdownTableRowEven"> 84<td class="markdownTableBodyNone">groupa/privrevokedmember1 </td><td class="markdownTableBodyNone">Revoked in PrivRL </td></tr> 85<tr class="markdownTableBody" class="markdownTableRowOdd"> 86<td class="markdownTableBodyNone">groupa/privrevokedmember2 </td><td class="markdownTableBodyNone">Revoked in PrivRL </td></tr> 87<tr class="markdownTableBody" class="markdownTableRowEven"> 88<td class="markdownTableBodyNone">groupa/sigrevokedmember0 </td><td class="markdownTableBodyNone">Revoked in SigRL </td></tr> 89<tr class="markdownTableBody" class="markdownTableRowOdd"> 90<td class="markdownTableBodyNone">groupa/sigrevokedmember1 </td><td class="markdownTableBodyNone">Revoked in SigRL </td></tr> 91<tr class="markdownTableBody" class="markdownTableRowEven"> 92<td class="markdownTableBodyNone">groupa/sigrevokedmember2 </td><td class="markdownTableBodyNone">Revoked in SigRL </td></tr> 93</table> 94<p><br /> 95</p> 96<h3>Revocation Lists for Group A</h3> 97<table class="markdownTable"> 98<tr class="markdownTableHead"> 99<th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Directory Location </th><th class="markdownTableHeadNone">Revoked Members </th></tr> 100<tr class="markdownTableBody" class="markdownTableRowOdd"> 101<td class="markdownTableBodyNone">Private key based revocation list </td><td class="markdownTableBodyNone"><code>groupa/privrl.bin</code> </td><td class="markdownTableBodyNone">privrevokedmember0, <br /> 102 privrevokedmember1, <br /> 103 privrevokedmember2 </td></tr> 104<tr class="markdownTableBody" class="markdownTableRowEven"> 105<td class="markdownTableBodyNone">Signature based revocation list </td><td class="markdownTableBodyNone"><code>groupa/sigrl.bin</code> </td><td class="markdownTableBodyNone">sigrevokedmember0, <br /> 106 sigrevokedmember1, <br /> 107 sigrevokedmember2 </td></tr> 108<tr class="markdownTableBody" class="markdownTableRowOdd"> 109<td class="markdownTableBodyNone">Empty private key based revocation list </td><td class="markdownTableBodyNone"><code>groupa/privrl_empty.bin</code> </td><td class="markdownTableBodyNone">None </td></tr> 110<tr class="markdownTableBody" class="markdownTableRowEven"> 111<td class="markdownTableBodyNone">Empty signature based revocation list </td><td class="markdownTableBodyNone"><code>groupa/sigrl_empty.bin</code> </td><td class="markdownTableBodyNone">None </td></tr> 112</table> 113<p><br /> 114</p> 115<h2>Sample Group B</h2> 116<p>Group B (<code>groupb</code>) contains four group members and sample revocation lists:</p> 117<p><br /> 118</p> 119<h3>Members in Group B</h3> 120<table class="markdownTable"> 121<tr class="markdownTableHead"> 122<th class="markdownTableHeadNone">Group Member </th><th class="markdownTableHeadNone">Revocation Status </th></tr> 123<tr class="markdownTableBody" class="markdownTableRowOdd"> 124<td class="markdownTableBodyNone">groupb/member0 </td><td class="markdownTableBodyNone">Non-revoked </td></tr> 125<tr class="markdownTableBody" class="markdownTableRowEven"> 126<td class="markdownTableBodyNone">groupb/member1 </td><td class="markdownTableBodyNone">Non-revoked </td></tr> 127<tr class="markdownTableBody" class="markdownTableRowOdd"> 128<td class="markdownTableBodyNone">groupb/privrevokedmember0 </td><td class="markdownTableBodyNone">Revoked in PrivRL </td></tr> 129<tr class="markdownTableBody" class="markdownTableRowEven"> 130<td class="markdownTableBodyNone">groupb/sigrevokedmember0 </td><td class="markdownTableBodyNone">Revoked in SigRL </td></tr> 131</table> 132<p><br /> 133</p> 134<h3>Revocation Lists for Group B</h3> 135<table class="markdownTable"> 136<tr class="markdownTableHead"> 137<th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Directory Location </th><th class="markdownTableHeadNone">Revoked Members </th></tr> 138<tr class="markdownTableBody" class="markdownTableRowOdd"> 139<td class="markdownTableBodyNone">Private key based revocation list </td><td class="markdownTableBodyNone"><code>groupb/privrl.bin</code> </td><td class="markdownTableBodyNone">privrevokedmember0 </td></tr> 140<tr class="markdownTableBody" class="markdownTableRowEven"> 141<td class="markdownTableBodyNone">Signature based revocation list </td><td class="markdownTableBodyNone"><code>groupb/sigrl.bin</code> </td><td class="markdownTableBodyNone">sigrevokedmember0 </td></tr> 142<tr class="markdownTableBody" class="markdownTableRowOdd"> 143<td class="markdownTableBodyNone">Empty private key based revocation list </td><td class="markdownTableBodyNone"><code>groupb/privrl_empty.bin</code> </td><td class="markdownTableBodyNone">None </td></tr> 144<tr class="markdownTableBody" class="markdownTableRowEven"> 145<td class="markdownTableBodyNone">Empty signature based revocation list </td><td class="markdownTableBodyNone"><code>groupb/sigrl_empty.bin</code> </td><td class="markdownTableBodyNone">None </td></tr> 146</table> 147<h1><a class="anchor" id="IssuerMaterial_GroupRls"></a> 148Group Revocation Lists</h1> 149<p>If an entire group is no longer valid, the issuer can revoke it using the group revocation list. Two sample group revocation lists are provided with the SDK.</p> 150<p><br /> 151</p> 152<h3>Sample GrpRLs</h3> 153<table class="markdownTable"> 154<tr class="markdownTableHead"> 155<th class="markdownTableHeadNone">Group Revocation List </th><th class="markdownTableHeadNone">Description </th></tr> 156<tr class="markdownTableBody" class="markdownTableRowOdd"> 157<td class="markdownTableBodyNone"><code>grprl_empty.bin</code> </td><td class="markdownTableBodyNone">No entries </td></tr> 158<tr class="markdownTableBody" class="markdownTableRowEven"> 159<td class="markdownTableBodyNone"><code>grprl.bin</code> </td><td class="markdownTableBodyNone">One entry in which <code>groupb</code> is revoked </td></tr> 160</table> 161<h1><a class="anchor" id="CompressedSamples"></a> 162Compressed Sample Groups</h1> 163<p>Intel® EPID SDK supports use of compressed member private keys. The groups described here use compressed member private keys but structurally correspond to groups described above.</p> 164<h2>Compressed Sample Group A</h2> 165<p>Group A (<code>groupa</code>) contains eight group members and sample revocation lists:</p> 166<p><br /> 167</p> 168<h3>Members in Group A</h3> 169<table class="markdownTable"> 170<tr class="markdownTableHead"> 171<th class="markdownTableHeadNone">Group Member </th><th class="markdownTableHeadNone">Revocation Status </th></tr> 172<tr class="markdownTableBody" class="markdownTableRowOdd"> 173<td class="markdownTableBodyNone">groupa/member0 </td><td class="markdownTableBodyNone">Non-revoked </td></tr> 174<tr class="markdownTableBody" class="markdownTableRowEven"> 175<td class="markdownTableBodyNone">groupa/member1 </td><td class="markdownTableBodyNone">Non-revoked </td></tr> 176<tr class="markdownTableBody" class="markdownTableRowOdd"> 177<td class="markdownTableBodyNone">groupa/privrevokedmember0 </td><td class="markdownTableBodyNone">Revoked in PrivRL </td></tr> 178<tr class="markdownTableBody" class="markdownTableRowEven"> 179<td class="markdownTableBodyNone">groupa/privrevokedmember1 </td><td class="markdownTableBodyNone">Revoked in PrivRL </td></tr> 180<tr class="markdownTableBody" class="markdownTableRowOdd"> 181<td class="markdownTableBodyNone">groupa/privrevokedmember2 </td><td class="markdownTableBodyNone">Revoked in PrivRL </td></tr> 182<tr class="markdownTableBody" class="markdownTableRowEven"> 183<td class="markdownTableBodyNone">groupa/sigrevokedmember0 </td><td class="markdownTableBodyNone">Revoked in SigRL </td></tr> 184<tr class="markdownTableBody" class="markdownTableRowOdd"> 185<td class="markdownTableBodyNone">groupa/sigrevokedmember1 </td><td class="markdownTableBodyNone">Revoked in SigRL </td></tr> 186<tr class="markdownTableBody" class="markdownTableRowEven"> 187<td class="markdownTableBodyNone">groupa/sigrevokedmember2 </td><td class="markdownTableBodyNone">Revoked in SigRL </td></tr> 188</table> 189<p><br /> 190</p> 191<h3>Revocation Lists for Group A</h3> 192<table class="markdownTable"> 193<tr class="markdownTableHead"> 194<th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Directory Location </th><th class="markdownTableHeadNone">Revoked Members </th></tr> 195<tr class="markdownTableBody" class="markdownTableRowOdd"> 196<td class="markdownTableBodyNone">Private key based revocation list </td><td class="markdownTableBodyNone"><code>groupa/privrl.bin</code> </td><td class="markdownTableBodyNone">privrevokedmember0, <br /> 197 privrevokedmember1, <br /> 198 privrevokedmember2 </td></tr> 199<tr class="markdownTableBody" class="markdownTableRowEven"> 200<td class="markdownTableBodyNone">Signature based revocation list </td><td class="markdownTableBodyNone"><code>groupa/sigrl.bin</code> </td><td class="markdownTableBodyNone">sigrevokedmember0, <br /> 201 sigrevokedmember1, <br /> 202 sigrevokedmember2 </td></tr> 203<tr class="markdownTableBody" class="markdownTableRowOdd"> 204<td class="markdownTableBodyNone">Empty private key based revocation list </td><td class="markdownTableBodyNone"><code>groupa/privrl_empty.bin</code> </td><td class="markdownTableBodyNone">None </td></tr> 205<tr class="markdownTableBody" class="markdownTableRowEven"> 206<td class="markdownTableBodyNone">Empty signature based revocation list </td><td class="markdownTableBodyNone"><code>groupa/sigrl_empty.bin</code> </td><td class="markdownTableBodyNone">None </td></tr> 207</table> 208<p><br /> 209</p> 210<h2>Compressed Sample Group B</h2> 211<p>Group B (<code>groupb</code>) contains four group members and sample revocation lists:</p> 212<p><br /> 213</p> 214<h3>Members in Group B</h3> 215<table class="markdownTable"> 216<tr class="markdownTableHead"> 217<th class="markdownTableHeadNone">Group Member </th><th class="markdownTableHeadNone">Revocation Status </th></tr> 218<tr class="markdownTableBody" class="markdownTableRowOdd"> 219<td class="markdownTableBodyNone">groupb/member0 </td><td class="markdownTableBodyNone">Non-revoked </td></tr> 220<tr class="markdownTableBody" class="markdownTableRowEven"> 221<td class="markdownTableBodyNone">groupb/member1 </td><td class="markdownTableBodyNone">Non-revoked </td></tr> 222<tr class="markdownTableBody" class="markdownTableRowOdd"> 223<td class="markdownTableBodyNone">groupb/privrevokedmember0 </td><td class="markdownTableBodyNone">Revoked in PrivRL </td></tr> 224<tr class="markdownTableBody" class="markdownTableRowEven"> 225<td class="markdownTableBodyNone">groupb/sigrevokedmember0 </td><td class="markdownTableBodyNone">Revoked in SigRL </td></tr> 226</table> 227<p><br /> 228</p> 229<h3>Revocation Lists for Group B</h3> 230<table class="markdownTable"> 231<tr class="markdownTableHead"> 232<th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Directory Location </th><th class="markdownTableHeadNone">Revoked Members </th></tr> 233<tr class="markdownTableBody" class="markdownTableRowOdd"> 234<td class="markdownTableBodyNone">Private key based revocation list </td><td class="markdownTableBodyNone"><code>groupb/privrl.bin</code> </td><td class="markdownTableBodyNone">privrevokedmember0 </td></tr> 235<tr class="markdownTableBody" class="markdownTableRowEven"> 236<td class="markdownTableBodyNone">Signature based revocation list </td><td class="markdownTableBodyNone"><code>groupb/sigrl.bin</code> </td><td class="markdownTableBodyNone">sigrevokedmember0 </td></tr> 237<tr class="markdownTableBody" class="markdownTableRowOdd"> 238<td class="markdownTableBodyNone">Empty private key based revocation list </td><td class="markdownTableBodyNone"><code>groupb/privrl_empty.bin</code> </td><td class="markdownTableBodyNone">None </td></tr> 239<tr class="markdownTableBody" class="markdownTableRowEven"> 240<td class="markdownTableBodyNone">Empty signature based revocation list </td><td class="markdownTableBodyNone"><code>groupb/sigrl_empty.bin</code> </td><td class="markdownTableBodyNone">None </td></tr> 241</table> 242<h1><a class="anchor" id="IssuerMaterial_CmpGroupRls"></a> 243Compressed Group Revocation Lists</h1> 244<p>If an entire group is no longer valid, the issuer can revoke it using the group revocation list. Two sample group revocation lists are provided with the SDK.</p> 245<p><br /> 246</p> 247<h3>Sample GrpRLs</h3> 248<table class="markdownTable"> 249<tr class="markdownTableHead"> 250<th class="markdownTableHeadNone">Group Revocation List </th><th class="markdownTableHeadNone">Description </th></tr> 251<tr class="markdownTableBody" class="markdownTableRowOdd"> 252<td class="markdownTableBodyNone"><code>grprl_empty.bin</code> </td><td class="markdownTableBodyNone">No entries </td></tr> 253<tr class="markdownTableBody" class="markdownTableRowEven"> 254<td class="markdownTableBodyNone"><code>grprl.bin</code> </td><td class="markdownTableBodyNone">One entry in which <code>groupb</code> is revoked </td></tr> 255</table> 256</div></div><!-- contents --> 257</div><!-- doc-content --> 258<!-- HTML footer for doxygen 1.8.10--> 259<!-- start footer part --> 260<div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> 261 <ul> 262 <li class="footer"> 263 © 2016-2017 Intel Corporation 264 </li> 265 </ul> 266</div> 267</body> 268</html> 269