bluecrypt-keypairs.js/index.html

109 lines
3.8 KiB
HTML
Raw Permalink Normal View History

2019-04-18 06:20:51 +00:00
<html>
<head>
<title>BlueCrypt</title>
2019-04-27 04:02:57 +00:00
<style>
textarea {
width: 42em;
height: 10em;
}
2019-04-27 04:53:28 +00:00
/* need to word wrap the binary no space der */
2019-04-27 05:24:37 +00:00
.js-der-public, .js-der-private{
2019-04-27 04:53:28 +00:00
white-space: pre-wrap; /* CSS3 */
white-space: -moz-pre-wrap; /* Firefox */
white-space: -pre-wrap; /* Opera <7 */
white-space: -o-pre-wrap; /* Opera 7 */
word-wrap: break-word; /* IE */
}
2019-04-27 04:02:57 +00:00
</style>
2019-04-18 06:20:51 +00:00
</head>
<body>
<h1>BlueCrypt for the Browser</h1>
<p>BlueCrypt is universal crypto for the browser. It's lightweight, fast, and based on native webcrypto.
This means it's easy-to-use crypto in kilobytes, not megabytes.</p>
<h2>Keypair Generation</h2>
<form class="js-keygen">
<p>Key Type:</p>
<div>
<input type="radio" id="-ktyEC"
name="kty" value="EC" checked>
<label for="-ktyEC">ECDSA</label>
<input type="radio" id="-ktyRSA"
name="kty" value="RSA">
<label for="-ktyRSA">RSA</label>
</div>
<div class="js-ec-opts">
<p>EC Options:</p>
<input type="radio" id="-crv2"
name="ec-crv" value="P-256" checked>
<label for="-crv2">P-256</label>
<input type="radio" id="-crv3"
name="ec-crv" value="P-384">
<label for="-crv3">P-384</label>
<!-- input type="radio" id="-crv5"
name="ec-crv" value="P-521">
<label for="-crv5">P-521</label -->
</div>
<div class="js-rsa-opts" hidden>
<p>RSA Options:</p>
<input type="radio" id="-modlen2"
name="rsa-len" value="2048" checked>
<label for="-modlen2">2048</label>
<input type="radio" id="-modlen3"
name="rsa-len" value="3072">
<label for="-modlen3">3072</label>
<input type="radio" id="-modlen5"
name="rsa-len" value="4096">
<label for="-modlen5">4096</label>
</div>
<button class="js-generate" hidden>Generate</button>
2019-04-26 22:26:33 +00:00
</form>
<h2>ACME Account</h2>
<form class="js-acme-account">
<label for="-acmeEmail">Email:</label>
<input class="js-email" type="email" id="-acmeEmail">
<button class="js-create-account" hidden>Create Account</button>
</form>
2019-04-18 06:20:51 +00:00
<div class="js-loading" hidden>Loading</div>
2019-04-26 22:26:33 +00:00
<details class="js-toc-jwk" hidden>
<summary>JWK Keypair</summary>
<pre><code class="js-jwk">&nbsp;</code></pre>
</details>
2019-04-27 05:24:37 +00:00
<details class="js-toc-der-private" hidden>
<summary>DER Private Binary</summary>
<pre><code class="js-der-private">&nbsp;</code></pre>
2019-04-27 04:02:57 +00:00
</details>
2019-04-27 05:24:37 +00:00
<details class="js-toc-der-public" hidden>
<summary>DER Public Binary</summary>
<pre><code class="js-der-public">&nbsp;</code></pre>
</details>
<details class="js-toc-pem-private" hidden>
<summary>PEM Private (base64-encoded DER)</summary>
<pre><code class="js-input-pem-private" ></code></pre>
</details>
<details class="js-toc-pem-public" hidden>
<summary>PEM Public (base64-encoded DER)</summary>
<pre><code class="js-input-pem-public" ></code></pre>
2019-04-27 04:02:57 +00:00
</details>
2019-04-26 22:26:33 +00:00
<details class="js-toc-acme-account-request" hidden>
<summary>ACME Account Request</summary>
<pre><code class="js-acme-account-request">&nbsp;</code></pre>
</details>
<details class="js-toc-acme-account-response" hidden>
<summary>ACME Account Response</summary>
<pre><code class="js-acme-account-response">&nbsp;</code></pre>
</details>
2019-04-27 03:27:08 +00:00
<script src="./lib/bluecrypt-encoding.js"></script>
2019-04-18 07:56:32 +00:00
<script src="./lib/ecdsa.js"></script>
2019-04-27 03:27:08 +00:00
<script src="./lib/asn1-packer.js"></script>
<script src="./lib/x509.js"></script>
2019-04-18 07:56:32 +00:00
<script src="./lib/rsa.js"></script>
2019-04-18 06:20:51 +00:00
<script src="./lib/keypairs.js"></script>
2019-04-20 06:09:36 +00:00
<script src="./lib/acme.js"></script>
2019-04-18 06:20:51 +00:00
<script src="./app.js"></script>
</body>
</html>