Re: IAIK PKCS#11 Wrapper 1.4 with NSS 3.47.1
Kevin Jacobs <[email protected]> Fri, 31 Jan 2020 03:06:39 -0800 (PST)
| Newsgroups | gmane.comp.mozilla.security |
|---|---|
| Message-ID | <[email protected]> |
T24gV2VkbmVzZGF5LCBKYW51YXJ5IDI5LCAyMDIwIGF0IDEyOjAxOjE5IEFNIFVUQysxLCBVc2hh IE5heWFrIHdyb3RlOgo+IEhlbGxvLAo+IAo+IEFkZGluZyBmZXcgbW9yZSBkZXRhaWxzIHRvIHRo aXMgaXNzdWUgd2UgYXJlIGZhY2luZyBpbiByZWdhcmRzIHRvIE5TUy4gCj4gUGxlYXNlIG5vdGU6 IHRoaXMgd2FzIG5vdCBhbiBpc3N1ZSB3aXRoIE5TUzMuNDIuMS4gV2UgYXJlIGxvb2tpbmcgdG8g dXBncmFkZSB0byBOU1MzLjQ3LjEgYW5kIGhhdmUgbm90aWNlZCBpdCBmcm9tIHRoZW4gb24uIFdl IGFwcHJvYWNoZWQgSUFJSyBhc3dlbGwgaW4gcmVnYXJkcyB0byB0aGlzIGFmdGVyIGRlYnVnZ2lu ZyB0aGVpciBwa2NzIzExd3JhcHBlciBtb2R1bGUuIFBsZWFzZSBzZWUgdGhlaXIgcmVzcG9uc2Ug YXQgdGhlIGJlbG93IG9mIHRoZSBwb3N0Lgo+IAo+IFdlIGNyZWF0ZWQgc2FtcGxlIEphdmEgY2xp ZW50IHRoYXQgdXNlcyBJQUlLIFBLQ1MjMTEgV3JhcHBlciAxLjQgdG8gY29ubmVjdCB0byBOU1MK PiAKPiAJCU1vZHVsZSBwa2NzMTFNb2R1bGUgPSBNb2R1bGUuZ2V0SW5zdGFuY2UoIGxpYnJhcnkg KTsgLy8gbGlicmFyeSAtPiBzb2Z0b2tuMy5kbGwKPiAJCS4uLi4uCj4gCQlwa2NzMTFNb2R1bGUu aW5pdGlhbGl6ZShhcmd1bWVudHMpOyAvLyBhcmd1bWVudHMgLT4gbWFwcyB0byBpbml0aWFsaXpl QXJndW1lbnRzCj4gCQkuLi4uCj4gCQlzZXNzaW9uID0gdG9rZW4ub3BlblNlc3Npb24oVG9rZW4u U2Vzc2lvblR5cGUuU0VSSUFMX1NFU1NJT04sIFRva2VuLlNlc3Npb25SZWFkV3JpdGVCZWhhdmlv ci5SV19TRVNTSU9OLCBudWxsLCBudWxsKTsKPiAJCS4uLgo+IAkJc2Vzc2lvbi5sb2dpbihTZXNz aW9uLlVzZXJUeXBlLlVTRVIsIHBpbi50b0NoYXJBcnJheSgpKTsgLy8gbG9naW4gaXMgZmluZQo+ IAkJLi4uCj4gCQkgICAgIAo+ICAgICAgICAgLy8gc2V0IHRoZSBnZW5lcmFsIGF0dHJpYnV0ZXMg Zm9yIHRoZSBwdWJsaWMga2V5Cj4gICAgICAgICByc2FQdWJsaWNLZXlUZW1wbGF0ZS5nZXRUb2tl bigpLnNldEJvb2xlYW5WYWx1ZShCb29sZWFuLlRSVUUpOyAgLy8vIHRoaXMgaXMgc291cmNlIG9m IHByb2JsZW0gLiBJZiBzZXQgdG8gRmFsc2UgKCBtZWFuaW5nIHNlc3Npb24gb2JqZWN0KSwgY2xp ZW50IHdvcmtzIGZpbmUuCj4gCQkuLi4KPiAKPiAgICAgICAgIC8vIHNldCB0aGUgZ2VuZXJhbCBh dHRyaWJ1dGVzIGZvciB0aGUgcHJpdmF0ZSBrZXkKPiAgICAgICAgIHJzYVByaXZhdGVLZXlUZW1w bGF0ZS5nZXRUb2tlbigpLnNldEJvb2xlYW5WYWx1ZShCb29sZWFuLlRSVUUpOyAgICAvLy8gdGhp cyBpcyBzb3VyY2Ugb2YgcHJvYmxlbSAuIElmIHNldCB0byBGYWxzZSAoIG1lYW5pbmcgc2Vzc2lv biBvYmplY3QpLCBjbGllbnQgd29ya3MgZmluZS4gIAo+ICAgICAgICAgLi4uLgo+IAo+ICAgICAg ICAgS2V5UGFpciBnZW5lcmF0ZWRLZXlQYWlyID0gbnVsbDsKPiAgICAgICAgIHRyeQo+ICAgICAg ICAgewo+ICAgICAgICAgICAgIGdlbmVyYXRlZEtleVBhaXIgPSBzZXNzaW9uLmdlbmVyYXRlS2V5 UGFpcihrZXlQYWlyR2VuZXJhdGlvbk1lY2hhbmlzbSxyc2FQdWJsaWNLZXlUZW1wbGF0ZSwgcnNh UHJpdmF0ZUtleVRlbXBsYXRlKTsKPiAgICAgICAgIH0KPiAgICAgICAgIGNhdGNoIChUb2tlbkV4 Y2VwdGlvbiBlKQo+ICAgICAgICAgewo+ICAgICAgICAgICAgIFN0cmluZyBtc2cgPSAiRmFpbGVk IHRvIGdlbmVyYXRlIFJTQSBrZXkgcGFpciBvbiB0b2tlbjogIiArIGUuZ2V0TWVzc2FnZSgpOwo+ ICAgICAgICAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oIG1zZywgZSApOwo+ICAgICAgICAgfQo+ IAkJLi4uCj4gCQkKPiBJbnB1dCBmaWxlIGZvciB0aGUgc2FtcGxlIGNsaWVudCA6Cj4gCQlsaWJy YXJ5PXNvZnRva24zLmRsbAo+IAo+IAkJaW5pdGlhbGl6ZUFyZ3VtZW50cz1jb25maWdEaXI9J3Nx bDpEOi93b3JrZGlyL2RldnVuaXQvS01EZW1vL05TUy9kYicgY2VydFByZWZpeD0nJyBrZXlQcmVm aXg9Jycgc2VjbW9kPScnIGZsYWdzPSdyZWFkV3JpdGUnIHVwZGF0ZWRpcj0nJyB1cGRhdGVDZXJ0 UHJlZml4PScnIHVwZGF0ZUtleVByZWZpeD0nJyB1cGRhdGVUb2tlbkRlc2NyaXB0aW9uPScnCj4g Cj4gCQlwaW49WFhYWFgKPiAKPiAJCXNsb3Q9MQo+IAo+IAkJbGliUGF0aD1EOi93b3JrZGlyL2Rl dnVuaXQvS01EZW1vL05TUy0zLjQ5L2xpYgo+IAo+IAkJbGliTGlzdD1saWJuc3ByNC5kbGwsbGli cGxjNC5kbGwsbGlicGxkczQuZGxsLHNxbGl0ZTMuZGxsLG5zc3V0aWwzLmRsbCxzb2Z0b2tuMy5k bGwKPiAJCQo+IAo+IFN0ZXBzIEkndmUgYmVlbiBmb2xsb3dpbmcgOjoKPiAKPiAJCTEpIEkgY2xl YW51cCAgTlNTIGRiIGRpcmVjdG9yeS4gCj4gCQkyKSBQcmlvciB0byBleGVjdXRpbmcgdGhlIGNs aWVudCBjb2RlLCBJIHJlY3JlYXRlIHRoZSBOU1MgZGIuCj4gCQkgICBhKSBDcmVhdGUgTlNTIGRi ICAtLS0+IG1vZHV0aWwgLWNyZWF0ZSAtZGJkaXIgc3FsOkQ6XHdvcmtkaXJcZGV2dW5pdFxLTURl bW9cTlNTXGRiCj4gCQkgICBiKSBQcm92aWRlIHBhc3N3b3JkIC0tLT4gIG1vZHV0aWwgLWRiZGly IHNxbDpEOlx3b3JrZGlyXGRldnVuaXRcS01EZW1vXE5TU1xkYiAtY2hhbmdlcHcgIk5TUyBDZXJ0 aWZpY2F0ZSBEQiIgIAo+IAkJICAgYykgQ2hlY2sgY29udGVudCBvZiB0aGUgZGIgIC0tPiBjZXJ0 dXRpbCAtSyAtZCBzcWw6RDpcd29ya2RpclxkZXZ1bml0XEtNRGVtb1xOU1NcZGIgICggZGlzcGxh eXMgbm8ga2V5cyApCj4gCQkzKSBSdW4gdGhlIFNhbXBsZSBjbGllbnQgY29kZS4gU2F3IGV4Y2Vw dGlvbgo+IAkJCSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCj4gCQkJUEtDUyMxMSBzZXNzaW9uIGxv Z2luIHN1Y2Nlc3NmdWwKPiAJCQkjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwo+IAkJCUdlbmVyYXRp bmcgbmV3IDIwNDggYml0IFJTQSBrZXktcGFpci4uLgo+IAkJCWphdmEubGFuZy5FeGNlcHRpb246 IEZhaWxlZCB0byBnZW5lcmF0ZSBSU0Ega2V5IHBhaXIgb24gdG9rZW46IENLUl9HRU5FUkFMX0VS Uk9SCj4gCQkJCQlhdCBkZW1vLnBrY3MucGtjczExLkdlbmVyYXRlS2V5UGFpci5tYWluKEdlbmVy YXRlS2V5UGFpci5qYXZhOjExMCkKPiAJCQlDYXVzZWQgYnk6IGlhaWsucGtjcy5wa2NzMTEud3Jh cHBlci5QS0NTMTFFeGNlcHRpb246IENLUl9HRU5FUkFMX0VSUk9SCj4gCQkJCQlhdCBpYWlrLnBr Y3MucGtjczExLndyYXBwZXIuUEtDUzExSW1wbGVtZW50YXRpb24uQ19HZXRBdHRyaWJ1dGVWYWx1 ZShOYXRpdmUgTWV0aG9kKQo+IAkJCQkJYXQgaWFpay5wa2NzLnBrY3MxMS5vYmplY3RzLk9iamVj dC5nZXRBdHRyaWJ1dGVWYWx1ZShPYmplY3QuamF2YTo3MTYpCj4gCQkJCQlhdCBpYWlrLnBrY3Mu cGtjczExLm9iamVjdHMuS2V5LnJlYWRBdHRyaWJ1dGVzKEtleS5qYXZhOjYyMikKPiAJCQkJCWF0 IGlhaWsucGtjcy5wa2NzMTEub2JqZWN0cy5QdWJsaWNLZXkucmVhZEF0dHJpYnV0ZXMoUHVibGlj S2V5LmphdmE6Mzk4KQo+IAkJCQkJYXQgaWFpay5wa2NzLnBrY3MxMS5vYmplY3RzLlJTQVB1Ymxp Y0tleS5yZWFkQXR0cmlidXRlcyhSU0FQdWJsaWNLZXkuamF2YToyNDIpCj4gCQkJCQlhdCBpYWlr LnBrY3MucGtjczExLm9iamVjdHMuT2JqZWN0Ljxpbml0PihPYmplY3QuamF2YToyMjMpCj4gCQkJ CQlhdCBpYWlrLnBrY3MucGtjczExLm9iamVjdHMuU3RvcmFnZS48aW5pdD4oU3RvcmFnZS5qYXZh OjEwNSkKPiAJCQkJCWF0IGlhaWsucGtjcy5wa2NzMTEub2JqZWN0cy5LZXkuPGluaXQ+KEtleS5q YXZhOjMyMSkKPiAJCQkJCWF0IGlhaWsucGtjcy5wa2NzMTEub2JqZWN0cy5QdWJsaWNLZXkuPGlu aXQ+KFB1YmxpY0tleS5qYXZhOjExOSkKPiAJCQkJCWF0IGlhaWsucGtjcy5wa2NzMTEub2JqZWN0 cy5SU0FQdWJsaWNLZXkuPGluaXQ+KFJTQVB1YmxpY0tleS5qYXZhOjk2KQo+IAkJCQkJYXQgaWFp ay5wa2NzLnBrY3MxMS5vYmplY3RzLlJTQVB1YmxpY0tleS5nZXRJbnN0YW5jZShSU0FQdWJsaWNL ZXkuamF2YToxMTgpCj4gCQkJCQlhdCBpYWlrLnBrY3MucGtjczExLm9iamVjdHMuUHVibGljS2V5 LmdldEluc3RhbmNlKFB1YmxpY0tleS5qYXZhOjE1NikKPiAJCQkJCWF0IGlhaWsucGtjcy5wa2Nz MTEub2JqZWN0cy5PYmplY3QuZ2V0SW5zdGFuY2UoT2JqZWN0LmphdmE6MjYyKQo+IAkJCQkJYXQg aWFpay5wa2NzLnBrY3MxMS5TZXNzaW9uLmdlbmVyYXRlS2V5UGFpcihTZXNzaW9uLmphdmE6MTI2 MCkKPiAJCQkJCWF0IGRlbW8ucGtjcy5wa2NzMTEuR2VuZXJhdGVLZXlQYWlyLm1haW4oR2VuZXJh dGVLZXlQYWlyLmphdmE6MTA1KQo+IAkJCSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCj4gCQkJQ2xv c2UgU2Vzc2lvbi4uLgo+IAkJCVBLQ1MjMTEgc2Vzc2lvbiBsb2dvdXQgc3VjY2Vzc2Z1bAo+IAo+ IAkJNCkgQ2hlY2sgdGhlIE5TUyBrZXkgZGIgc3RvcmUgZm9yIHRoZSBjb250ZW50czoKPiAJCQlE Olx3b3JrZGlyXGRldnVuaXRcS01EZW1vPmNlcnR1dGlsIC1LIC1kIHNxbDpEOlx3b3JrZGlyXGRl dnVuaXRcS01EZW1vXE5TU1xkYgo+IAkJCWNlcnR1dGlsOiBDaGVja2luZyB0b2tlbiAiTlNTIENl cnRpZmljYXRlIERCIiBpbiBzbG90ICJOU1MgVXNlciBQcml2YXRlIEtleSBhbmQgQ2VydGlmaWNh dGUgU2VydmljZXMiCj4gCQkJRW50ZXIgUGFzc3dvcmQgb3IgUGluIGZvciAiTlNTIENlcnRpZmlj YXRlIERCIjoKPiAJCQk8IDA+IHJzYSAgICAgICI2MGIwZGY1Ny1kZjgyLTRhNzMtYjFjOS03ZmMx NzIwNGUxZDA7MTU3IiBLTVJvb3RDQQo+IAo+IAkJTk9URTogSSBzZWUgdGhlIGV4Y2VwdGlvbiBp biB0aGUgY29uc29sZSBhcyB3ZWxsIGFzIG5vdGljZSB0aGF0IE5TUyBzdG9yZSBoYXZpbmcgdGhl IGtleS4gCj4gCj4gCj4gRGVidWdnZWQgSUFJSzoKPiDigKIJRW5hYmxlZCBkZWJ1Z2dpbmcgb2Yg SUFJSyBQS0NTIzExIFdyYXBwZXIgbW9kdWxlLiAKPiAKPiAwMS8yMy8yMCAxOTozODoxOCAgRVJS T1I6IGdvdCA1IGluc3RlYWQgb2YgQ0tSX09LLCBnb2luZyB0byByYWlzZSBhbiBleGNlcHRpb24g KGluIEphdmFfaWFpa19wa2NzX3BrY3MxMV93cmFwcGVyX1BLQ1MxMUltcGxlbWVudGF0aW9uX0Nf MUdldEF0dHJpYnV0ZVZhbHVlKQo+IAo+IOKAoglJIGRlY2lkZWQgdG8gYnVpbGQvZGVidWcgdGhl IG5hdGl2ZSBwa2NzMTFXcmFwcGVyIGNvZGUgd2l0aCB0aGUgSmF2YSBzYW1wbGUgY2xpZW50Lgo+ IAo+IEpOSUVYUE9SVCB2b2lkIEpOSUNBTEwgSmF2YV9pYWlrX3BrY3NfcGtjczExX3dyYXBwZXJf UEtDUzExSW1wbGVtZW50YXRpb25fQ18xR2V0QXR0cmlidXRlVmFsdWUKPiAgIChKTklFbnYgKmVu diwgam9iamVjdCBvYmosIGpsb25nIGpTZXNzaW9uSGFuZGxlLCBqbG9uZyBqT2JqZWN0SGFuZGxl LCBqb2JqZWN0QXJyYXkgalRlbXBsYXRlLCBqYm9vbGVhbiBqVXNlVXRmOCkKPiB7Cj4gLi4uLi4K PiAgICAgcnYgPSAoKmNrcEZ1bmN0aW9ucy0+Q19HZXRBdHRyaWJ1dGVWYWx1ZSkoY2tTZXNzaW9u SGFuZGxlLCBja09iamVjdEhhbmRsZSwgY2twQXR0cmlidXRlcywgY2tBdHRyaWJ1dGVzTGVuZ3Ro KTsgCj4gLi4uCj4gCj4gfQo+IFZhbHVlcyBpbiB0aGUgdmFyaWFibGUgd2hlbiB0aGlzIGZhaWx1 cmUgb2NjdXJyZWQgLi4KPiAKPiBydiA9IDUKPiAKPiArIGNrcEF0dHJpYnV0ZXMgMHgwMDAwMDAw MDE3ZTdjYjAwIHt0eXBlPTEwNzM3NDIzNTMgcFZhbHVlPTB4MDAwMDAwMDAxN2U3Njk4MCB1bFZh bHVlTGVuPTI0MCB9IENLX0FUVFJJQlVURSAqCj4gY2tPYmplY3RIYW5kbGUgMjM1NzE1NjcyOSB1 bnNpZ25lZCBsb25nCj4gKyBja3BGdW5jdGlvbnMgc29mdG9rbjMuZGxsITB4MDAwMDdmZmVlOWIw YzYyMCAobG9hZCBzeW1ib2xzIGZvciBhZGRpdGlvbmFsIGluZm9ybWF0aW9uKSB7dmVyc2lvbj17 bWFqb3I9MSAnXHgxJyBtaW5vcj0uLi59IC4uLn0gQ0tfRlVOQ1RJT05fTElTVCAqCj4gY2tTZXNz aW9uSGFuZGxlIDE2Nzc3MjE3IHVuc2lnbmVkIGxvbmcKPiBja0F0dHJpYnV0ZXNMZW5ndGggMjMg dW5zaWduZWQgbG9uZwo+IAo+IAo+IOKAoglUaGUgYWJvdmUgIGhpZ2hsaWdodGVkIGNvZGUgZG9l cyBtYWtlIGEgY2FsbCB0byBOU1MgKCBzb2Z0dG9rbjMgKSBhbmQgcmVjZWl2ZXMgNSAoIHdoaWNo IHN0YW5kcyBmb3IgQ0tSX0dFTkVSQUxfRVJST1IgICkgZm9yIHRoZSBja3BBdHRyaWJ1dGVzIHR5 cGU9MTA3Mzc0MjM1My4gCj4gCj4gSSBhcHByb2FjaGVkIElBSUssIGhlcmXigJlzIHRoZSByZXNw b25zZSB0aGV5IHByb3ZpZGVkIOKApgo+IAo+IAo+IE9uIEZyaSwgSmFuIDI0LCAyMDIwIGF0IDM6 MTIgQU0gU0lDL0lBSUsgPFhYWFg+IHdyb3RlOgo+IFRoZSBja3BBdHRyaWJ1dGVzIHRoYXQgeW91 IGhhdmUgdmlld2VkIGluIHRoZSBkZWJ1Z2dlciBpcyBhY3R1YWxseSBhbiBhcnJheSB3aXRoIG11 bHRpcGxlIGNrQXR0cmlidXRlcy4gU3BlY2lmaWNhbGx5IDEwNzM3NDIzNTMgaXMgdGhlIENLQV9X UkFQX1RFTVBMQVRFIGF0dHJpYnV0ZS4KPiBJIHRyYWNlZCB0aGUgZXJyb3IgZG93biB0byB0aGlz IE5TUyBnaXQgY29tbWl0IFsxXS4gVGhlcmUgaXMgc2VlbWluZ2x5IGEgcHJvYmxlbSB3aGVuIHF1 ZXJ5aW5nIEFycmF5QXR0cmlidXRlcy4gSXQgcHJvZHVjZXMgYW4gc3FsaXRlX2Vycm9yIGluIHRo ZSBOU1MgY29kZS4KPiBIb3dldmVyLCBJJ20gcHJldHR5IHN1cmUgdGhhdCB0aGlzIGVycm9yIGlz IGFuIGFjdHVhbCBOU1MgZXJyb3IgYW5kIGNhbm5vdCBiZSBmaXhlZCBmcm9tIG91ciBzaWRlLiBJ IHdvdWxkIHN1Z2dlc3QgdG8gZmlsZSBhIGJ1ZyByZXBvcnQuCj4gWzFdOiBodHRwczovL2dpdGh1 Yi5jb20vbnNzLWRldi9uc3MvY29tbWl0L2Y1NzJhMTVlNDVjNWM0YTI2YTBhZGE3ZWUwMDg4NDNh ZDE5ZWMyMDIKPiAKPiAKPiBQbGVhc2UgbGV0IHVzIGtub3cgLi4KPiAKPiBUaGFua3MuLgoKCkhp IFVzaGEsCgpUaGFua3MgZm9yIHRoZSBhZGRpdGlvbmFsIGluZm9ybWF0aW9uLiBVbmZvcnR1bmF0 ZWx5LCB3ZSd2ZSBub3QgYmVlbiBhYmxlIHRvIHJlcHJvZHVjZSB0aGlzLiBNb3JlIGRldGFpbHMg KG1pbmltYWxseSwgYWxsIGFyZ3VtZW50cyBwYXNzZWQgaW4gZWFjaCBOU1MgZnVuY3Rpb24gY2Fs bCkgd291bGQgYmUgaGVscGZ1bC4gQSBDL0MrKyByZXByb2R1Y2VyIHdvdWxkIGJlIGlkZWFsLgoK VGhhbmtzLApLZXZpbgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpkZXYtc2VjdXJpdHkgbWFpbGluZyBsaXN0CmRldi1zZWN1cml0eUBsaXN0cy5tb3ppbGxh Lm9yZwpodHRwczovL2xpc3RzLm1vemlsbGEub3JnL2xpc3RpbmZvL2Rldi1zZWN1cml0eQo=