UNPKG

api-console-assets

Version:

This repo only exists to publish api console components to npm

130 lines (114 loc) 5.22 kB
<html> <head> <title>Sample JWS Verification Application</title> <script language="JavaScript" type="text/javascript" src="../jsrsasign-all-min.js"></script> <style type="text/css"> TD {vertical-align: top; border: solid 1px #000000; } </style> <script language="JavaScript" type="text/javascript"> function doVerify() { var sJWS = document.form1.jws1.value; var sCert = document.form1.cert1.value; var pubKey; var jws = new KJUR.jws.JWS(); var result = 0; try { pubKey = KEYUTIL.getKey(sCert); jws.parseJWS(sJWS); result = KJUR.jws.JWS.verify(sJWS, pubKey, ["RS256"]); } catch (ex) { alert("Error: " + ex); result = 0; } document.form1.im_enchead1.value = jws.parsedJWS.headB64U; document.form1.im_encpayload1.value = jws.parsedJWS.payloadB64U; document.form1.im_encsigval1.value = jws.parsedJWS.sigvalB64U; document.form1.im_siginput1.value = jws.parsedJWS.si; document.form1.im_sigval_h1.value = jws.parsedJWS.sigvalH; document.form1.im_head1.value = jws.parsedJWS.headS; document.form1.im_payload1.value = jws.parsedJWS.payloadS; if (result == 1) { alert("JWS signature is *Valid*."); } else { alert("JWS signature is *Invalid*."); } } </script> </head> <body> <form name="form1"> <h1>Sample JWS Verification Application</h1> <p> Default values are cited from <a href="http://tools.ietf.org/html/draft-jones-json-web-signature-04#appendix-A.2" target="_blank"> "draft-jones-json-web-signature-04 Annex.2"</a>. </p> <table width="100%"> <tbody> <tr><td rowspan="2">Input</td><td>JWS</td><td colspan="2"> <textarea name="jws1" rows="8" cols="100">eyJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJqb2UiLA0KICJleHAiOjEzMDA4MTkzODAsDQogImh0dHA6Ly9leGFtcGxlLmNvbS9pc19yb290Ijp0cnVlfQ.qCW4l5nfdvBt-yl_OiYRFrKkribqbDbmQ9ULyemAgCNXAAr70hN5-IERIefzySpm6Er4UuX_aXcnIXgMvK-hFMFhLOuJckrDEe1Pz-OzqScvGSJUbeOsd_nB9E2BNVYZrgMESQOifiEyUtWdbzCoMgf9nQg2AEWbVSaPImqQkGp-JZsJsvMUC-3A3RcimGIjLv-A8skyhNufASd6DPgk46Ydqt6vi2L6d2InvZSkhTSsYhbfm9TgrKyA906YHE0zE-asuXAzI1ISPxAjlO8ZhekEvg6teaa-1cSQQdOFj-ZWpqVsEI1YXr7zuvugWQhqfBqqPcT6fP5t3ff8FKwV9w</textarea></td></tr> <tr><td>PEM X.509 Certificate verify with</td><td colspan="2"> <textarea name="cert1" cols="80" rows="8">-----BEGIN CERTIFICATE----- MIIDMjCCAhqgAwIBAgIJAKMfG/B2MKd5MA0GCSqGSIb3DQEBBQUAMBoxCzAJBgNV BAYTAkpQMQswCQYDVQQKEwJ6MzAeFw0xMDA1MzEwNjE4MDhaFw0yMDA1MjgwNjE4 MDhaMBoxCzAJBgNVBAYTAkpQMQswCQYDVQQKEwJ6MzCCASIwDQYJKoZIhvcNAQEB BQADggEPADCCAQoCggEBAOKosPD1rOz6Z5wtgVBKA0XMFxfKavF09f9x3N3LlCcF /6LTXn6/waJq93bTNBESzdw63qQl77sxFORXCVQ1Ad7CPqRbY4ywVw/8yZri9wH4 PdSfae/fg5vuN3EesLissFSceQySHbMBeqEAw84cLvPXdlecdNmlwfS6nV5D8Ijt HkebP8R14AEpfoag3VS/YS6Hd4hmvZ1e3BJQm3JfFFVzTyZ0AH2oimsxfoQnZf7M qyIdCgmeaKYILEyYm6PKhVwZhuD5E+WG4RxNdcGCiC8GRUr2fYnXUT0CtwrYBYgZ 121cFObeu7Z/aTIsx4MqYLHwaHqMga6U7nOHoEgqY7ECAwEAAaN7MHkwHQYDVR0O BBYEFKO4NcUDh3J5c7XD7j4pVXnzIfALMEoGA1UdIwRDMEGAFKO4NcUDh3J5c7XD 7j4pVXnzIfALoR6kHDAaMQswCQYDVQQGEwJKUDELMAkGA1UEChMCejOCCQCjHxvw djCneTAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4IBAQC8JdiwJF22/3nB IxJT/gXXN10cub6O+x9q64ls7dpGpBvbi4/lJgZOsZqoJiswU5WOKZ4MTOmMHe4W e/MHuhcjsgf9EHHYZQ1reBYi/l9mBBbYFGs0zSv1CyjbwkyF36nr/8sWdYf4ZtXQ nzTGvoa6oTOOTmmj3Bwl3CHwonvgAJUCHY/UmWFzH8Sf0dDW7iJBj+ZWfjuSlSQe 2ninrEpfA4v2V1p3LOH+layZLDMJHkNCq8eoU1MbJi07cHxLWtlwliNOiRboaiYl 1wtWR7ZY4HZCPeyb0tanf58rBQAXElaCF3fmfHrlpxoJBsQP1NbFrBs2haOIEZ4E K3V9/Bpi -----END CERTIFICATE-----</textarea> </td></tr> <tr><td colspan="4"> <input type="button" value="Verify JWS Signature" onClick="doVerify();"/><br/> </td></tr> <tr><td colspan="2">Encoded Head</td><td colspan="2"> <textarea name="im_enchead1" cols="100" rows="1" readonly></textarea> </td></tr> <tr><td colspan="2">Encoded Payload</td><td colspan="2"> <textarea name="im_encpayload1" cols="100" rows="1" readonly></textarea> </td></tr> <tr><td colspan="2">Encoded Signature Value</td><td colspan="2"> <textarea name="im_encsigval1" cols="100" rows="6" readonly></textarea> </td></tr> <tr><td colspan="2">Signature Input</td><td colspan="2"> <textarea name="im_siginput1" cols="100" rows="3" readonly></textarea> </td></tr> <tr><td colspan="2">Signature Value (Hex)</td><td colspan="2"> <textarea name="im_sigval_h1" cols="100" rows="8" readonly></textarea> </td></tr> <tr><td colspan="2">Head</td><td colspan="2"> <textarea name="im_head1" cols="100" rows="2" readonly></textarea> </td></tr> <tr><td colspan="2">Payload</td><td colspan="2"> <textarea name="im_payload1" cols="100" rows="3" readonly></textarea> </td></tr> </tbody> </table> </form> <h3>USAGE</h3> <ol> <li>Fill JWS signature, modulus and public exponent of a public key if you need.</li> <li>Then just press "Verify JWS Signature" button.</li> <li>If the signature is valid, you will see a dialog 'JWS signature is '*Valid*'. You may see an error dialog if it is malformed signature.</li> </li> <li>As for JWS signature generation, please see <a href="sample_generate.html">this sample</a>.</li> </ol> <center> Copyright &copy; 2012-2016 Kenji Urushima, All Rights Reserved. </center> <div align="right"> <a href="index.html">Go back to index</a> </div> </body> </html>