You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
110 lines
4.4 KiB
110 lines
4.4 KiB
<html> |
|
<head> |
|
<title>Sample JWS Signing With PKCS#1 private key</title> |
|
<script language="JavaScript" type="text/javascript" src="jsrsasign-latest-all-min.js"></script> |
|
|
|
<style type="text/css"> |
|
TD {vertical-align: top; border: solid 1px #000000; } |
|
</style> |
|
<script language="JavaScript" type="text/javascript"> |
|
function _genJWS() { |
|
var sHead = newline_toDos(document.form1.jwshead1.value); |
|
var sPayload = newline_toDos(document.form1.jwspayload1.value); |
|
var sPemPrvKey = document.form1.pemprvkey1.value; |
|
|
|
var jws = new KJUR.jws.JWS(); |
|
var sResult = null; |
|
try { |
|
sResult = jws.generateJWSByP1PrvKey(sHead, sPayload, sPemPrvKey); |
|
document.form1.jwsgenerated1.value = sResult; |
|
} catch (ex) { |
|
alert("Error: " + ex); |
|
} |
|
} |
|
</script> |
|
</head> |
|
|
|
<body> |
|
<h1>Sample JWS Signing 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> |
|
|
|
<form name="form1"> |
|
<table width="100%"> |
|
<tbody> |
|
<tr><td rowspan="3">Input</td><td>JWS Header</td><td colspan="2"> |
|
<textarea name="jwshead1" rows="3" cols="100">{"alg":"RS256"}</textarea></td></tr> |
|
<tr><td>JWS Payload</td><td colspan="2"> |
|
<textarea name="jwspayload1" rows="3" cols="100">{"iss":"joe", |
|
"exp":1300819380, |
|
"http://example.com/is_root":true}</textarea> |
|
</td></tr> |
|
<tr><td>Signing PKCS#1 RSA Private Key</td><td colspan="2"> |
|
<textarea name="pemprvkey1" rows="10" cols="65">-----BEGIN RSA PRIVATE KEY----- |
|
MIIEogIBAAKCAQEA4qiw8PWs7PpnnC2BUEoDRcwXF8pq8XT1/3Hc3cuUJwX/otNe |
|
fr/Bomr3dtM0ERLN3DrepCXvuzEU5FcJVDUB3sI+pFtjjLBXD/zJmuL3Afg91J9p |
|
79+Dm+43cR6wuKywVJx5DJIdswF6oQDDzhwu89d2V5x02aXB9LqdXkPwiO0eR5s/ |
|
xHXgASl+hqDdVL9hLod3iGa9nV7cElCbcl8UVXNPJnQAfaiKazF+hCdl/syrIh0K |
|
CZ5opggsTJibo8qFXBmG4PkT5YbhHE11wYKILwZFSvZ9iddRPQK3CtgFiBnXbVwU |
|
5t67tn9pMizHgypgsfBoeoyBrpTuc4egSCpjsQIDAQABAoIBAF2sU/wxvHbwAhQE |
|
pnXVMMcO0thtOodxzBz3JM2xThhWnVDgxCPkAhWq2X0NSm5n9BY5ajwyxYH6heTc |
|
p6lagtxaMONiNaE2W7TqxzMw696vhnYyL+kH2e9+owEoKucXz4QYatqsJIQPb2vM |
|
0h+DfFAgUvNgYNZ2b9NBsLn9oBImDfYueHyqpRGTdX5urEVtmQz029zaC+jFc7BK |
|
Y6qBRSTwFwnVgE+Td8UgdrO3JQ/0Iwk/lkphnhls/BYvdNC5O8oEppozNVmMV8jm |
|
61K+agOh1KD8ky60iQFjo3VdFpUjI+W0+sYiYpDb4+Z9OLOTK/5J2EBAGim9siyd |
|
gHspx+UCgYEA9+t5Rs95hG9Q+6mXn95hYduPoxdFCIFhbGl6GBIGLyHUdD8vmgwP |
|
dHo7Y0hnK0NyXfue0iFBYD94/fuUe7GvcXib93heJlvPx9ykEZoq9DZnhPFBlgIE |
|
SGeD8hClazcr9O99Fmg3e7NyTuVou+CIublWWlFyN36iamP3a08pChsCgYEA6gvT |
|
pi/ZkYI1JZqxXsTwzAsR1VBwYslZoicwGNjRzhvuqmqwNvK17dnSQfIrsC2VnG2E |
|
UbE5EIAWbibdoL4hWUpPx5Tl096OjC3qBR6okAxbVtVEY7Rmv7J9RwriXhtD1DYp |
|
eBvo3eQonApFkfI8Lr2kuKGIgwzkZ72QLXsKJiMCgYBZXBCci0/bglwIObqjLv6e |
|
zQra2BpT1H6PGv2dC3IbLvBq7hN0TQCNFTmusXwuReNFKNq4FrB/xqEPusxsQUFh |
|
fv2Il2QoI1OjUE364jy1RZ7Odj8TmKp+hoEykPluybYYVPIbT3kgJy/+bAXyIh5m |
|
Av2zFEQ86HIWMu4NSb0bHQKBgETEZNOXi52tXGBIK4Vk6DuLpRnAIMVl0+hJC2DB |
|
lCOzIVUBM/VxKvNP5O9rcFq7ihIEO7SlFdc7S1viH4xzUOkjZH2Hyl+OLOQTOYd3 |
|
kp+AgfXpg8an4ujAUP7mu8xaxns7zsNzr+BCgYwXmIlhWz2Aiz2UeL/IsfOpRwuV |
|
801xAoGADQB84MJe/X8xSUZQzpn2KP/yZ7C517qDJjComGe3mjVxTIT5XAaa1tLy |
|
T4mvpSeYDJkBD8Hxr3fB1YNDWNbgwrNPGZnUTBNhxIsNLPnV8WySiW57LqVXlggH |
|
vjFmyDdU5Hh6ma4q+BeAqbXZSJz0cfkBcBLCSe2gIJ/QJ3YJVQI= |
|
-----END RSA PRIVATE KEY-----</textarea> |
|
</td></tr> |
|
<tr><td colspan="4"> |
|
<input type="button" value="Generate JWS Signature↓" onClick="_genJWS();"/> |
|
</td></tr> |
|
<tr><td colspan="2">Output JWS Signature</td><td colspan="2"> |
|
<textarea name="jwsgenerated1" cols="100" rows="6" readonly></textarea> |
|
</td></tr> |
|
</tbody> |
|
</table> |
|
|
|
</form> |
|
<h3>USAGE</h3> |
|
<ol> |
|
<li>Just press "Generate JWS Signature" button.</li> |
|
<li>You can specify signature algorithm name such es "RS256"(SHA256withRSA) or "RS512"(SHA512withRSA). |
|
If it isn't un-supported value, it will raise an error.</li> |
|
<li>If malformed JWS Head is specified, it will raise an error.</li> |
|
<li>As for JWS signature verification, please see <a href="sample_verify2.html">this sample</a>.</li> |
|
</ol> |
|
|
|
<center> |
|
Copyright © 2012-2015 Kenji Urushima, All Rights Reserved. |
|
</center> |
|
|
|
<div align="right"> |
|
<a href="index.html">Go back to index</a> |
|
</div> |
|
|
|
<div align="right"> |
|
<a href="http://twitter.com/kjur/" target="_blank" alt="kjur on twitter"> |
|
<img src="http://www9.atwiki.jp/kurushima/pub/icon/icon_twitter.gif" border="0" width="20"/> |
|
</a> |
|
<a href="http://x5.choumusubi.com/bin/gg?069823300"> |
|
<img src="http://x5.choumusubi.com/bin/ll?069823300" border="0" width="20"/> |
|
</a> |
|
</div> |
|
</body> |
|
</html>
|
|
|