Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

UI and TLS config documentation #91

Merged
merged 3 commits into from
Oct 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 54 additions & 2 deletions content/eaas/appliance/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@ Due to the high overhead cost of making HTTP requests, the amount of entropy tha
**Max API throughput:**
| 256 bit keys per request| Requests per second
|---|---|
|512|~4,800|
|1|~8,000|
|512|~7,200|
|1|~12,000|

**Max Entropy card output:** ~1,500 Mb/s

Expand All @@ -47,6 +47,58 @@ The root path (“/”) returns a UI that displays various metrics, and health r

Client applications can request a configurable amount of entropy from the entropy API, which is served from the “/api/v1/” route. The complete spec for the API can be found below.

---
# Appliance Administration UI

Upon opening the UI, you should see the following landing page:

![FullPage](images/full_page.png?classes=shadow)

Each QRNG card installed on the appliance will have its own entry in the table, sorted by card ID.

The current state of the card can be determined by a quick glance at the "Status" column. Possible states are as follows:

|State|Explanation|
|---|---|
|{{< badge "active" >}}|The card is healthy and streaming entropy.|
|{{< badge "pending" >}}|The card is in a temporary calibration state; this will resolve into either *Active* or *Error*.|
|{{< badge "error" >}}|The card is reporting an error; the error message can be found in details section.|

Clicking on a card will expand the row and show more detail:

![StatusTable](images/status_table.png?classes=shadow)

If the card is in an {{< badge "error" >}} state, the number of errors and the error messages will be enumerated at the bottom of the details section.

If the card is {{< badge "pending" >}}, a "Status Message" field will provide more information. This typically only happens on startup while the initial NIST test suite runs -- upon success, the card will move into an {{< badge "active" >}} state and begin streaming entropy.

*Note that the badge in the "Status" section here is the same as in the card row entry.*

At the bottom right of the UI, there is a link to download a compressed bundle of server logs:

![DownloadLogs](images/download_logs.png?width=300px&classes=shadow)

Note that this may take up to 30 seconds depending on the size of the logfiles, so do not navigate away from the page while the collection is in progress. Logfile processing is indicated by the presence of an animated spinner.

---

# TLS Configuration

To enable TLS on the appliance, replace the following two files with your own public and private certs, respectively:

- /etc/ssl/certs/public.crt
- /etc/ssl/private/private.key

Then, restart *nginx* for the new certs to take effect:

- systemctl restart nginx

You can test this new configuration by running:

- nginx -t

*Note that these operations must be done as sudo user.*

---
# OpenAPI spec

Expand Down
Binary file added content/eaas/appliance/images/card_details.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added content/eaas/appliance/images/download_logs.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added content/eaas/appliance/images/full_page.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added content/eaas/appliance/images/status_table.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
16 changes: 8 additions & 8 deletions docs/404.html
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,15 @@
<title>404 Page not found</title>


<link href="./css/nucleus.css?1727727456" rel="stylesheet">
<link href="./css/fontawesome-all.min.css?1727727456" rel="stylesheet">
<link href="./css/hybrid.css?1727727456" rel="stylesheet">
<link href="./css/featherlight.min.css?1727727456" rel="stylesheet">
<link href="./css/perfect-scrollbar.min.css?1727727456" rel="stylesheet">
<link href="./css/theme.css?1727727456" rel="stylesheet">
<link href="./css/hugo-theme.css?1727727456" rel="stylesheet">
<link href="./css/nucleus.css?1729087731" rel="stylesheet">
<link href="./css/fontawesome-all.min.css?1729087731" rel="stylesheet">
<link href="./css/hybrid.css?1729087731" rel="stylesheet">
<link href="./css/featherlight.min.css?1729087731" rel="stylesheet">
<link href="./css/perfect-scrollbar.min.css?1729087731" rel="stylesheet">
<link href="./css/theme.css?1729087731" rel="stylesheet">
<link href="./css/hugo-theme.css?1729087731" rel="stylesheet">

<link href="./css/theme-mine.css?1727727456" rel="stylesheet">
<link href="./css/theme-mine.css?1729087731" rel="stylesheet">

<style>
:root #header + #content > #left > #rlblock_left {
Expand Down
46 changes: 23 additions & 23 deletions docs/categories/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="generator" content="Hugo 0.134.3">
<meta name="generator" content="Hugo 0.136.0">
<meta name="description" content="">


Expand All @@ -12,22 +12,22 @@
<title>Categories :: Qrypt</title>


<link href="../css/nucleus.css?1727727456" rel="stylesheet">
<link href="../css/fontawesome-all.min.css?1727727456" rel="stylesheet">
<link href="../css/hybrid.css?1727727456" rel="stylesheet">
<link href="../css/featherlight.min.css?1727727456" rel="stylesheet">
<link href="../css/perfect-scrollbar.min.css?1727727456" rel="stylesheet">
<link href="../css/auto-complete.css?1727727456" rel="stylesheet">
<link href="../css/atom-one-dark-reasonable.css?1727727456" rel="stylesheet">
<link href="../css/theme.css?1727727456" rel="stylesheet">
<link href="../css/tabs.css?1727727456" rel="stylesheet">
<link href="../css/hugo-theme.css?1727727456" rel="stylesheet">
<link href="../css/nucleus.css?1729087731" rel="stylesheet">
<link href="../css/fontawesome-all.min.css?1729087731" rel="stylesheet">
<link href="../css/hybrid.css?1729087731" rel="stylesheet">
<link href="../css/featherlight.min.css?1729087731" rel="stylesheet">
<link href="../css/perfect-scrollbar.min.css?1729087731" rel="stylesheet">
<link href="../css/auto-complete.css?1729087731" rel="stylesheet">
<link href="../css/atom-one-dark-reasonable.css?1729087731" rel="stylesheet">
<link href="../css/theme.css?1729087731" rel="stylesheet">
<link href="../css/tabs.css?1729087731" rel="stylesheet">
<link href="../css/hugo-theme.css?1729087731" rel="stylesheet">

<link href="../css/theme-mine.css?1727727456" rel="stylesheet">
<link href="../css/theme-mine.css?1729087731" rel="stylesheet">



<script src="../js/jquery-3.3.1.min.js?1727727456"></script>
<script src="../js/jquery-3.3.1.min.js?1729087731"></script>


</head>
Expand Down Expand Up @@ -894,19 +894,19 @@ <h1>
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
</div>
<script src="../js/clipboard.min.js?1727727456"></script>
<script src="../js/perfect-scrollbar.min.js?1727727456"></script>
<script src="../js/perfect-scrollbar.jquery.min.js?1727727456"></script>
<script src="../js/jquery.sticky.js?1727727456"></script>
<script src="../js/featherlight.min.js?1727727456"></script>
<script src="../js/highlight.pack.js?1727727456"></script>
<script src="../js/clipboard.min.js?1729087731"></script>
<script src="../js/perfect-scrollbar.min.js?1729087731"></script>
<script src="../js/perfect-scrollbar.jquery.min.js?1729087731"></script>
<script src="../js/jquery.sticky.js?1729087731"></script>
<script src="../js/featherlight.min.js?1729087731"></script>
<script src="../js/highlight.pack.js?1729087731"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="../js/modernizr.custom-3.6.0.js?1727727456"></script>
<script src="../js/learn.js?1727727456"></script>
<script src="../js/hugo-learn.js?1727727456"></script>
<script src="../js/modernizr.custom-3.6.0.js?1729087731"></script>
<script src="../js/learn.js?1729087731"></script>
<script src="../js/hugo-learn.js?1729087731"></script>


<script src="../mermaid/mermaid.js?1727727456"></script>
<script src="../mermaid/mermaid.js?1729087731"></script>

<script>
mermaid.initialize({ startOnLoad: true });
Expand Down
46 changes: 23 additions & 23 deletions docs/concepts/entropy-projection/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="generator" content="Hugo 0.134.3">
<meta name="generator" content="Hugo 0.136.0">
<meta name="description" content="">


Expand All @@ -12,22 +12,22 @@
<title>Key Entropy Size :: Qrypt</title>


<link href="../../css/nucleus.css?1727727456" rel="stylesheet">
<link href="../../css/fontawesome-all.min.css?1727727456" rel="stylesheet">
<link href="../../css/hybrid.css?1727727456" rel="stylesheet">
<link href="../../css/featherlight.min.css?1727727456" rel="stylesheet">
<link href="../../css/perfect-scrollbar.min.css?1727727456" rel="stylesheet">
<link href="../../css/auto-complete.css?1727727456" rel="stylesheet">
<link href="../../css/atom-one-dark-reasonable.css?1727727456" rel="stylesheet">
<link href="../../css/theme.css?1727727456" rel="stylesheet">
<link href="../../css/tabs.css?1727727456" rel="stylesheet">
<link href="../../css/hugo-theme.css?1727727456" rel="stylesheet">
<link href="../../css/nucleus.css?1729087731" rel="stylesheet">
<link href="../../css/fontawesome-all.min.css?1729087731" rel="stylesheet">
<link href="../../css/hybrid.css?1729087731" rel="stylesheet">
<link href="../../css/featherlight.min.css?1729087731" rel="stylesheet">
<link href="../../css/perfect-scrollbar.min.css?1729087731" rel="stylesheet">
<link href="../../css/auto-complete.css?1729087731" rel="stylesheet">
<link href="../../css/atom-one-dark-reasonable.css?1729087731" rel="stylesheet">
<link href="../../css/theme.css?1729087731" rel="stylesheet">
<link href="../../css/tabs.css?1729087731" rel="stylesheet">
<link href="../../css/hugo-theme.css?1729087731" rel="stylesheet">

<link href="../../css/theme-mine.css?1727727456" rel="stylesheet">
<link href="../../css/theme-mine.css?1729087731" rel="stylesheet">



<script src="../../js/jquery-3.3.1.min.js?1727727456"></script>
<script src="../../js/jquery-3.3.1.min.js?1729087731"></script>


</head>
Expand Down Expand Up @@ -1023,19 +1023,19 @@ <h2 id="formula">Formula</h2>
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
</div>
<script src="../../js/clipboard.min.js?1727727456"></script>
<script src="../../js/perfect-scrollbar.min.js?1727727456"></script>
<script src="../../js/perfect-scrollbar.jquery.min.js?1727727456"></script>
<script src="../../js/jquery.sticky.js?1727727456"></script>
<script src="../../js/featherlight.min.js?1727727456"></script>
<script src="../../js/highlight.pack.js?1727727456"></script>
<script src="../../js/clipboard.min.js?1729087731"></script>
<script src="../../js/perfect-scrollbar.min.js?1729087731"></script>
<script src="../../js/perfect-scrollbar.jquery.min.js?1729087731"></script>
<script src="../../js/jquery.sticky.js?1729087731"></script>
<script src="../../js/featherlight.min.js?1729087731"></script>
<script src="../../js/highlight.pack.js?1729087731"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="../../js/modernizr.custom-3.6.0.js?1727727456"></script>
<script src="../../js/learn.js?1727727456"></script>
<script src="../../js/hugo-learn.js?1727727456"></script>
<script src="../../js/modernizr.custom-3.6.0.js?1729087731"></script>
<script src="../../js/learn.js?1729087731"></script>
<script src="../../js/hugo-learn.js?1729087731"></script>


<script src="../../mermaid/mermaid.js?1727727456"></script>
<script src="../../mermaid/mermaid.js?1729087731"></script>

<script>
mermaid.initialize({ startOnLoad: true });
Expand Down
46 changes: 23 additions & 23 deletions docs/concepts/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="generator" content="Hugo 0.134.3">
<meta name="generator" content="Hugo 0.136.0">
<meta name="description" content="">


Expand All @@ -12,22 +12,22 @@
<title>Concepts :: Qrypt</title>


<link href="../css/nucleus.css?1727727456" rel="stylesheet">
<link href="../css/fontawesome-all.min.css?1727727456" rel="stylesheet">
<link href="../css/hybrid.css?1727727456" rel="stylesheet">
<link href="../css/featherlight.min.css?1727727456" rel="stylesheet">
<link href="../css/perfect-scrollbar.min.css?1727727456" rel="stylesheet">
<link href="../css/auto-complete.css?1727727456" rel="stylesheet">
<link href="../css/atom-one-dark-reasonable.css?1727727456" rel="stylesheet">
<link href="../css/theme.css?1727727456" rel="stylesheet">
<link href="../css/tabs.css?1727727456" rel="stylesheet">
<link href="../css/hugo-theme.css?1727727456" rel="stylesheet">
<link href="../css/nucleus.css?1729087731" rel="stylesheet">
<link href="../css/fontawesome-all.min.css?1729087731" rel="stylesheet">
<link href="../css/hybrid.css?1729087731" rel="stylesheet">
<link href="../css/featherlight.min.css?1729087731" rel="stylesheet">
<link href="../css/perfect-scrollbar.min.css?1729087731" rel="stylesheet">
<link href="../css/auto-complete.css?1729087731" rel="stylesheet">
<link href="../css/atom-one-dark-reasonable.css?1729087731" rel="stylesheet">
<link href="../css/theme.css?1729087731" rel="stylesheet">
<link href="../css/tabs.css?1729087731" rel="stylesheet">
<link href="../css/hugo-theme.css?1729087731" rel="stylesheet">

<link href="../css/theme-mine.css?1727727456" rel="stylesheet">
<link href="../css/theme-mine.css?1729087731" rel="stylesheet">



<script src="../js/jquery-3.3.1.min.js?1727727456"></script>
<script src="../js/jquery-3.3.1.min.js?1729087731"></script>


</head>
Expand Down Expand Up @@ -901,19 +901,19 @@ <h2 id="one-time-pad-otpotp"><a href="otp/">One-Time Pad (OTP)</a></h2>
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
</div>
<script src="../js/clipboard.min.js?1727727456"></script>
<script src="../js/perfect-scrollbar.min.js?1727727456"></script>
<script src="../js/perfect-scrollbar.jquery.min.js?1727727456"></script>
<script src="../js/jquery.sticky.js?1727727456"></script>
<script src="../js/featherlight.min.js?1727727456"></script>
<script src="../js/highlight.pack.js?1727727456"></script>
<script src="../js/clipboard.min.js?1729087731"></script>
<script src="../js/perfect-scrollbar.min.js?1729087731"></script>
<script src="../js/perfect-scrollbar.jquery.min.js?1729087731"></script>
<script src="../js/jquery.sticky.js?1729087731"></script>
<script src="../js/featherlight.min.js?1729087731"></script>
<script src="../js/highlight.pack.js?1729087731"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="../js/modernizr.custom-3.6.0.js?1727727456"></script>
<script src="../js/learn.js?1727727456"></script>
<script src="../js/hugo-learn.js?1727727456"></script>
<script src="../js/modernizr.custom-3.6.0.js?1729087731"></script>
<script src="../js/learn.js?1729087731"></script>
<script src="../js/hugo-learn.js?1729087731"></script>


<script src="../mermaid/mermaid.js?1727727456"></script>
<script src="../mermaid/mermaid.js?1729087731"></script>

<script>
mermaid.initialize({ startOnLoad: true });
Expand Down
46 changes: 23 additions & 23 deletions docs/concepts/key-generation-architecture/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="generator" content="Hugo 0.134.3">
<meta name="generator" content="Hugo 0.136.0">
<meta name="description" content="">


Expand All @@ -12,22 +12,22 @@
<title>Key Generation Architecture :: Qrypt</title>


<link href="../../css/nucleus.css?1727727456" rel="stylesheet">
<link href="../../css/fontawesome-all.min.css?1727727456" rel="stylesheet">
<link href="../../css/hybrid.css?1727727456" rel="stylesheet">
<link href="../../css/featherlight.min.css?1727727456" rel="stylesheet">
<link href="../../css/perfect-scrollbar.min.css?1727727456" rel="stylesheet">
<link href="../../css/auto-complete.css?1727727456" rel="stylesheet">
<link href="../../css/atom-one-dark-reasonable.css?1727727456" rel="stylesheet">
<link href="../../css/theme.css?1727727456" rel="stylesheet">
<link href="../../css/tabs.css?1727727456" rel="stylesheet">
<link href="../../css/hugo-theme.css?1727727456" rel="stylesheet">
<link href="../../css/nucleus.css?1729087731" rel="stylesheet">
<link href="../../css/fontawesome-all.min.css?1729087731" rel="stylesheet">
<link href="../../css/hybrid.css?1729087731" rel="stylesheet">
<link href="../../css/featherlight.min.css?1729087731" rel="stylesheet">
<link href="../../css/perfect-scrollbar.min.css?1729087731" rel="stylesheet">
<link href="../../css/auto-complete.css?1729087731" rel="stylesheet">
<link href="../../css/atom-one-dark-reasonable.css?1729087731" rel="stylesheet">
<link href="../../css/theme.css?1729087731" rel="stylesheet">
<link href="../../css/tabs.css?1729087731" rel="stylesheet">
<link href="../../css/hugo-theme.css?1729087731" rel="stylesheet">

<link href="../../css/theme-mine.css?1727727456" rel="stylesheet">
<link href="../../css/theme-mine.css?1729087731" rel="stylesheet">



<script src="../../js/jquery-3.3.1.min.js?1727727456"></script>
<script src="../../js/jquery-3.3.1.min.js?1729087731"></script>


</head>
Expand Down Expand Up @@ -930,19 +930,19 @@ <h1>
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
</div>
<script src="../../js/clipboard.min.js?1727727456"></script>
<script src="../../js/perfect-scrollbar.min.js?1727727456"></script>
<script src="../../js/perfect-scrollbar.jquery.min.js?1727727456"></script>
<script src="../../js/jquery.sticky.js?1727727456"></script>
<script src="../../js/featherlight.min.js?1727727456"></script>
<script src="../../js/highlight.pack.js?1727727456"></script>
<script src="../../js/clipboard.min.js?1729087731"></script>
<script src="../../js/perfect-scrollbar.min.js?1729087731"></script>
<script src="../../js/perfect-scrollbar.jquery.min.js?1729087731"></script>
<script src="../../js/jquery.sticky.js?1729087731"></script>
<script src="../../js/featherlight.min.js?1729087731"></script>
<script src="../../js/highlight.pack.js?1729087731"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="../../js/modernizr.custom-3.6.0.js?1727727456"></script>
<script src="../../js/learn.js?1727727456"></script>
<script src="../../js/hugo-learn.js?1727727456"></script>
<script src="../../js/modernizr.custom-3.6.0.js?1729087731"></script>
<script src="../../js/learn.js?1729087731"></script>
<script src="../../js/hugo-learn.js?1729087731"></script>


<script src="../../mermaid/mermaid.js?1727727456"></script>
<script src="../../mermaid/mermaid.js?1729087731"></script>

<script>
mermaid.initialize({ startOnLoad: true });
Expand Down
Loading
Loading