133728e barerepo 1mo
1
<!doctype html>
133728e barerepo 1mo
2
<html lang="en">
133728e barerepo 1mo
3
<head>
133728e barerepo 1mo
4
<meta charset="utf-8">
133728e barerepo 1mo
5
<meta name="viewport" content="width=device-width, initial-scale=1">
133728e barerepo 1mo
6
<title>barerepo · sign in</title>
133728e barerepo 1mo
7
<link rel="stylesheet" href="tokens.css">
133728e barerepo 1mo
8
</head>
133728e barerepo 1mo
9
<body>
133728e barerepo 1mo
10
<div class="wrap">
133728e barerepo 1mo
12
<div style="font-family: var(--font-mono); font-size: 13px; line-height: 1.6; color: var(--text-primary); background: #ffffff; border: 0.5px solid var(--border); border-radius: 12px; min-height: calc(100vh - 26px); display: flex; flex-direction: column;">
133728e barerepo 1mo
14
<h2 class="sr-only">Sign in page where the server challenges an ssh key instead of asking for a password.</h2>
133728e barerepo 1mo
15
<div style="display:flex; align-items:center; justify-content:space-between; padding:9px 18px; border-bottom:0.5px solid var(--border);"><span style="letter-spacing:-0.5px;">barerepo</span><span style="color:var(--text-secondary);">new account</span></div>
133728e barerepo 1mo
16
<div style="padding:26px 18px; max-width:430px;">
133728e barerepo 1mo
17
<div style="margin-bottom:20px;">sign in</div>
133728e barerepo 1mo
18
<div style="margin-bottom:16px;">
133728e barerepo 1mo
19
<div style="color:var(--text-muted); font-size:12px; margin-bottom:5px;">name</div>
133728e barerepo 1mo
20
<div style="border:0.5px solid var(--border-strong); border-radius:8px; padding:7px 11px; word-break:break-all;">john<span style="color:var(--text-muted);">|</span></div>
133728e barerepo 1mo
21
</div> <div style="margin-bottom:18px;"><div style="border:0.5px solid var(--text-primary); border-radius:8px; padding:7px 16px; display:inline-block;">send challenge</div></div>
133728e barerepo 1mo
22
<div style="color:var(--text-muted); font-size:12px; line-height:1.9;">
133728e barerepo 1mo
23
<div>we give you a nonce. you sign it with the key you already have.</div>
133728e barerepo 1mo
24
<div style="color:var(--text-secondary);">printf '%s' '<nonce>' | ssh-keygen -Y sign -f ~/.ssh/id_ed25519 -n barerepo-auth -</div>
133728e barerepo 1mo
25
<div>that is stock openssh. nothing to install.</div>
133728e barerepo 1mo
26
<div>or <span style="color:var(--text-secondary);">br auth john</span>, which does the same thing in one step.</div>
133728e barerepo 1mo
27
</div>
133728e barerepo 1mo
28
</div>
133728e barerepo 1mo
30
<div style="position:sticky; bottom:0; margin-top:auto; background:#ffffff; border-top:0.5px solid var(--border); border-radius:0 0 12px 12px; padding:9px 18px; display:flex; justify-content:space-between; color:var(--text-muted); font-size:12px;">
133728e barerepo 1mo
31
<span>barerepo</span><span>barerepo 0.1.0</span>
133728e barerepo 1mo
32
</div>
133728e barerepo 1mo
34
</div>
133728e barerepo 1mo
36
</div>
133728e barerepo 1mo
37
</body>
133728e barerepo 1mo
38
</html>