@bitspark/archon-cli 0.14.0 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,6 +6,9 @@ export interface LoginIo {
6
6
  sleep: (seconds: number) => Promise<void>;
7
7
  /** Seconds since the Unix epoch. */
8
8
  now: () => number;
9
+ /** Where the page-started form reads the answer to its question; process.stdin when absent.
10
+ * A function, so the real stream is only touched when the question is actually asked. */
11
+ stdin?: () => NodeJS.ReadableStream;
9
12
  }
10
13
  /** What the service answers on GET <audience>/login/<id>.
11
14
  *
@@ -62,8 +65,11 @@ export declare function run(args: string[], write?: (text: string) => void, io?:
62
65
  * statement built from junk. Every refusal names the field. */
63
66
  export declare function validateLoginRequest(r: LoginRequest, wantId: string): void;
64
67
  /** EXACTLY what the person is asked to approve, and the text all three lanes must print
65
- * byte-identically. nowSeconds is a parameter so the wall-clock end is testable. */
66
- export declare function renderStatement(audience: string, r: LoginRequest, nowSeconds: number, keySource: string): string;
68
+ * byte-identically. nowSeconds is a parameter so the wall-clock end is testable. `fingerprint`
69
+ * is the formatted transaction fingerprint (transactionFingerprint) of this audience and
70
+ * request: computed by the caller, which must refuse the request when it cannot be, rather
71
+ * than here, so rendering stays total. */
72
+ export declare function renderStatement(audience: string, r: LoginRequest, nowSeconds: number, keySource: string, fingerprint: string): string;
67
73
  /** The offers form's counterpart (docs/login.md §4.1 rule 4): the same fields as the
68
74
  * statement, printed AFTER answering rather than before signing, because in that form nobody
69
75
  * confirmed — the person typed the scope and the audience is the CLI's own. It names K as the
@@ -88,9 +94,12 @@ export declare function describeKeySource(src: LoginSource): string;
88
94
  export declare function formatDuration(seconds: number): string;
89
95
  /** Format a Unix timestamp as YYYY-MM-DDTHH:MM:SSZ, matching the other two lanes. */
90
96
  export declare function formatRfc3339Utc(unixSeconds: number): string;
91
- /** Read a y/N answer. Default is NO: anything that is not an explicit yes refuses,
92
- * including EOF, so a login cannot be completed by a closed stdin. */
93
- export declare function confirm(): Promise<boolean>;
97
+ /** States the consequence, then reads a y/N answer. Default is NO: anything that is not an
98
+ * explicit yes refuses, including EOF, so a login cannot be completed by a closed stdin. With
99
+ * --yes it is never called, so nothing of it is printed. It writes where the statement was
100
+ * written — `run`'s writer, stdout unless a test injected one — so the two cannot be reordered
101
+ * or split across streams. */
102
+ export declare function confirm(write?: (text: string) => void, input?: NodeJS.ReadableStream): Promise<boolean>;
94
103
  /** Accept the two hex seed-file shapes in use: 64 hex characters (a raw 32-byte seed) and
95
104
  * 128 (seed followed by public key), the shape the first consumer's `key` files carry (answer 4). */
96
105
  export declare function seedFromHexFile(text: string): Uint8Array;
@@ -126,12 +135,32 @@ export declare function configuredAudience(flag: string | undefined): string;
126
135
  * --audience, or ARCHON_AUDIENCE, and canonical. `login`'s offers form and `enroll` share it;
127
136
  * `command` and `why` name the caller in its refusals. */
128
137
  export declare function selectedAudience(command: string, why: string, flag: string | undefined): string;
129
- /** The one line about the page address, printed and MARKED, never opened (§4.1 rule 1; ADR
130
- * 0007 §C.7 (6)). "On the service's own origin" is a byte-exact comparison of scheme and host
131
- * with the audience's — a differently spelled origin fails closed, the right direction for an
132
- * address a person is about to click — and launching a browser is the person's action, never
133
- * this command's: spawning a platform opener by name is the PATH surface §C.5 refuses. */
134
- export declare function describePage(audience: string, page: string): string;
138
+ /** The lines describePage prints when it withholds the page address. Each says why, and none
139
+ * carries the address: it holds the code, and the code is already on the line above it. */
140
+ export declare const PAGE_NOT_HTTPS = "the service's page is not an https address, so its address (which carries the code) is not printed";
141
+ export declare const PAGE_PLAIN_HTTP: string;
142
+ export declare const PAGE_OFF_ORIGIN: string;
143
+ export declare const PAGE_OFF_TRUSTED: string;
144
+ /** The one stderr line about the page address (§4.1 rule 1; ADR 0007 §C.7 (6); ADR 0015). The
145
+ * address carries the code in its fragment, and a person shown an address can open it whatever
146
+ * label sits beside it (archon#123) — so it is PRINTED only when it is both (a) on a trusted
147
+ * transport, https or plain http on this machine (localhost, 127.0.0.1, [::1]), and (b) on a
148
+ * trusted origin: the audience's own, or the one the person named with --page-origin.
149
+ * Otherwise one line says why it was withheld and the flow goes on: the code line above it lets
150
+ * the person finish on the service's own page.
151
+ *
152
+ * Both comparisons are byte-exact, of the page's scheme and authority as it spells them with
153
+ * the audience's (canonical by construction) and with --page-origin (canonical, pageOriginFlag
154
+ * made sure) — a differently spelled origin fails closed, the right direction for an address
155
+ * carrying a secret. It is never opened: launching a browser is the person's action, never this
156
+ * command's — spawning a platform opener by name is the PATH surface §C.5 refuses. */
157
+ export declare function describePage(audience: string, page: string, trusted?: string): string;
158
+ /** Checks --page-origin (ADR 0015) before anything is sent: an ORIGIN — scheme://host[:port],
159
+ * with no path, query or fragment — spelled canonically, as an audience must be: a fixed point
160
+ * of §2.1's grammar, fed through the scheme's derivation exactly as selectedAudience feeds the
161
+ * audience. describePage compares it byte for byte, so a spelling the comparison could never
162
+ * match is refused here, naming the one it could. */
163
+ export declare function pageOriginFlag(value: string | undefined): string | undefined;
135
164
  /** §4.1 rule 2, done by the prover for itself: the request's scope must be what was offered,
136
165
  * entry for entry, in order, and its validity equal. The service refuses a mismatched begin
137
166
  * before storing anything — but a prover that relied on that would be trusting the service
@@ -150,3 +179,11 @@ export declare function proveLogin(seed: Uint8Array, audience: string, request:
150
179
  proof: Uint8Array;
151
180
  principal: string;
152
181
  };
182
+ /** The login's transaction fingerprint (docs/login.md §5.3; ADR 0015 §4) as the person reads it,
183
+ * over the derived audience and the SAME scheme request the proof is made from — schemeRequest,
184
+ * once — so the fingerprint the person compares with the page they started covers exactly the
185
+ * request that will be signed. The digest and its spelling are the sdk's; this lane only
186
+ * converts the wire values, as for the proof. Throws when the sdk refuses what the binding
187
+ * refuses, or a nonce under the scheme's floor: the caller refuses the request before anything
188
+ * is shown. */
189
+ export declare function transactionFingerprint(audience: string, request: LoginRequest): string;
@@ -28,20 +28,21 @@ import { encodeKey, decodeKey, getPublicKey } from "@bitspark/archon";
28
28
  // own `proveLogin`. Those are the SCHEME's types; the ones in this file are the WIRE's
29
29
  // (strings, snake_case, straight off the JSON). Keeping both names visible and distinct is
30
30
  // the point — converting between them is this seam's entire job.
31
- import { LOGIN_DOMAIN, MIN_NONCE_SIZE as SCHEME_MIN_NONCE_SIZE, deriveAudience, displayUnsafe, proveLogin as schemeProveLogin, } from "@bitspark/archon-sdk";
31
+ import { LOGIN_DOMAIN, MIN_NONCE_SIZE as SCHEME_MIN_NONCE_SIZE, deriveAudience, displayUnsafe, fingerprint as schemeFingerprint, formatFingerprint, proveLogin as schemeProveLogin, } from "@bitspark/archon-sdk";
32
32
  import { jsonString, resolveSeed, shown, wantsHelp } from "../io.js";
33
33
  import * as keystore from "../keystore.js";
34
34
  import * as store from "./key_store.js";
35
35
  const USAGE = "usage: archon login <url> [--key <name> | --seed <hex> | --key-file <pkcs8.pem> | --seed-file <file>] " +
36
36
  "[--authority-file <file>] [--yes]\n" +
37
37
  " archon login --audience <base> [--scope <entry>]... --valid-for <seconds> " +
38
- "[--key <name> | --seed <hex> | --key-file <pkcs8.pem> | --seed-file <file>] [--authority-file <file>]\n " +
38
+ "[--key <name> | --seed <hex> | --key-file <pkcs8.pem> | --seed-file <file>] [--authority-file <file>] [--page-origin <origin>]\n " +
39
39
  "proves possession of your key to the service at <url> so the browser key it names may act for you. " +
40
40
  "<url> is the invocation URL <audience>/login/<id>; the audience is derived from it, never taken from the server. " +
41
41
  "--key names a key in the store and is the default (archon key default); --key-file is a PKCS#8 file. " +
42
42
  "Store password: interactive prompt, or ARCHON_KEY_PASSWORD / --password-fd <n>, never argv.\n " +
43
43
  "with no URL, the CLI OFFERS what you typed and the page finishes: the audience is --audience or ARCHON_AUDIENCE, " +
44
- "never a page's word; the code and the page address go to stderr, the ledger to stdout after the service answers; " +
44
+ "never a page's word; the code goes to stderr, the page address with it only when it is https (or http on this machine) " +
45
+ "on the audience's origin or the one --page-origin names, the ledger to stdout after the service answers; " +
45
46
  "no confirmation is asked — what you typed is what you sign.";
46
47
  const realIo = {
47
48
  writeErr: (text) => {
@@ -49,6 +50,7 @@ const realIo = {
49
50
  },
50
51
  sleep: (seconds) => new Promise((resolve) => setTimeout(resolve, seconds * 1000)),
51
52
  now: () => Math.floor(Date.now() / 1000),
53
+ stdin: () => process.stdin,
52
54
  };
53
55
  // The signing domain (archon-login/1) is deliberately NOT declared here. It is the
54
56
  // scheme's, applied inside sdk/ts/login, and a copy in the CLI would be a second place it
@@ -127,6 +129,13 @@ export async function run(args, write = (text) => {
127
129
  assumeYes = true;
128
130
  continue;
129
131
  }
132
+ if (flag === "--page-origin") {
133
+ // The offers form's flag (ADR 0015). Here it would do nothing — the page started this
134
+ // login, and no page address is printed — and a flag that does nothing is a flag someone
135
+ // will come to rely on.
136
+ throw new Error("--page-origin applies only to the offers form (no URL): with a URL the page started the login, " +
137
+ `and no page address is printed\n${USAGE}`);
138
+ }
130
139
  const value = rest[i + 1];
131
140
  if (value === undefined || value === "")
132
141
  throw new Error(`flag ${JSON.stringify(flag)} needs a value\n${USAGE}`);
@@ -177,10 +186,15 @@ export async function run(args, write = (text) => {
177
186
  const id = toHex(idBytes);
178
187
  const request = await fetchLoginRequest(audience, id);
179
188
  validateLoginRequest(request, id);
189
+ // THE TRANSACTION FINGERPRINT (docs/login.md §5.3; ADR 0015 §4): over the derived audience and
190
+ // the exact request that will be signed, for the person to compare with the page they started.
191
+ // Computed before anything is shown, so a request it cannot cover is refused like any other
192
+ // malformed one, and the person never reads a statement without it.
193
+ const fingerprint = transactionFingerprint(audience, request);
180
194
  // SHOW BEFORE SIGN. The person confirms the statement, not the URL.
181
195
  const keySource = describeKeySource(src);
182
- write(renderStatement(audience, request, io.now(), keySource));
183
- if (!assumeYes && !(await confirm())) {
196
+ write(renderStatement(audience, request, io.now(), keySource, fingerprint));
197
+ if (!assumeYes && !(await confirm(write, (io.stdin ?? (() => process.stdin))()))) {
184
198
  write("refused. nothing was signed.\n");
185
199
  return;
186
200
  }
@@ -243,9 +257,13 @@ function refuseUndisplayable(field, s) {
243
257
  }
244
258
  }
245
259
  /** EXACTLY what the person is asked to approve, and the text all three lanes must print
246
- * byte-identically. nowSeconds is a parameter so the wall-clock end is testable. */
247
- export function renderStatement(audience, r, nowSeconds, keySource) {
260
+ * byte-identically. nowSeconds is a parameter so the wall-clock end is testable. `fingerprint`
261
+ * is the formatted transaction fingerprint (transactionFingerprint) of this audience and
262
+ * request: computed by the caller, which must refuse the request when it cannot be, rather
263
+ * than here, so rendering stays total. */
264
+ export function renderStatement(audience, r, nowSeconds, keySource, fingerprint) {
248
265
  const lines = [`${audience} asks you to let browser key ${r.browser} act as you:`, ...scopeAndValidityLines(r, nowSeconds)];
266
+ lines.push(`transaction fingerprint: ${fingerprint} (compare it with the page you started)`);
249
267
  lines.push(`signing with ${keySource}`);
250
268
  return `${lines.join("\n")}\n`;
251
269
  }
@@ -320,11 +338,24 @@ export function formatDuration(seconds) {
320
338
  export function formatRfc3339Utc(unixSeconds) {
321
339
  return new Date(unixSeconds * 1000).toISOString().replace(/\.\d{3}Z$/, "Z");
322
340
  }
323
- /** Read a y/N answer. Default is NO: anything that is not an explicit yes refuses,
324
- * including EOF, so a login cannot be completed by a closed stdin. */
325
- export async function confirm() {
326
- process.stdout.write("sign? [y/N] ");
327
- const rl = createInterface({ input: process.stdin });
341
+ /** Printed between the statement and the question (ADR 0015, archon#123). The statement says
342
+ * WHAT is asked; these say what a yes DOES, and who should be giving it: a login request
343
+ * reaching a person who did not start the client behind it is the phishing shape, and the one
344
+ * defence the CLI has at this moment is the person declining it. Pinned across the three lanes
345
+ * by cli/testdata/login-statement.json's `prompt`. */
346
+ const CONSEQUENCE_LINES = "This gives the browser key above authority to act as you.\n" +
347
+ "Approve only a client you started yourself.\n";
348
+ /** States the consequence, then reads a y/N answer. Default is NO: anything that is not an
349
+ * explicit yes refuses, including EOF, so a login cannot be completed by a closed stdin. With
350
+ * --yes it is never called, so nothing of it is printed. It writes where the statement was
351
+ * written — `run`'s writer, stdout unless a test injected one — so the two cannot be reordered
352
+ * or split across streams. */
353
+ export async function confirm(write = (text) => {
354
+ process.stdout.write(text);
355
+ }, input = process.stdin) {
356
+ write(CONSEQUENCE_LINES);
357
+ write("sign? [y/N] ");
358
+ const rl = createInterface({ input });
328
359
  const line = await new Promise((resolve) => {
329
360
  rl.once("line", (value) => resolve(value));
330
361
  rl.once("close", () => resolve(""));
@@ -456,6 +487,7 @@ export async function runOffer(args, write, io) {
456
487
  let authorityFile;
457
488
  let audienceFlag;
458
489
  let validForText;
490
+ let pageOriginText;
459
491
  const scope = [];
460
492
  for (let i = 0; i < rest.length; i++) {
461
493
  const flag = rest[i];
@@ -493,6 +525,9 @@ export async function runOffer(args, write, io) {
493
525
  case "--authority-file":
494
526
  authorityFile = value;
495
527
  break;
528
+ case "--page-origin":
529
+ pageOriginText = value;
530
+ break;
496
531
  default: throw new Error(`unknown flag ${JSON.stringify(flag)}\n${USAGE}`);
497
532
  }
498
533
  }
@@ -512,6 +547,9 @@ export async function runOffer(args, write, io) {
512
547
  // RULE 1: the audience is the CLI's own configuration, a fixed point of §2.1's grammar,
513
548
  // refused before anything is fetched.
514
549
  const audience = configuredAudience(audienceFlag);
550
+ // The one other origin whose page may be printed is the person's own word, checked here,
551
+ // before anything is sent, the way the audience is (ADR 0015).
552
+ const pageOrigin = pageOriginFlag(pageOriginText);
515
553
  // The code is the CLI's own entropy, registered under it. The service echoes the offer back;
516
554
  // an echo that differs is a service that altered what was offered, and nothing of it is
517
555
  // trusted from here on.
@@ -523,10 +561,11 @@ export async function runOffer(args, write, io) {
523
561
  io.writeErr(`offer registered at ${audience}\n`);
524
562
  io.writeErr(`code: ${code}\n`);
525
563
  if (offered.page !== undefined) {
526
- // The address a person would open, printed beside a warning about itself: one that would not
527
- // show as itself is refused, not escaped (docs/login.md §5).
564
+ // The address a person would open: one that would not show as itself is refused, not
565
+ // escaped (docs/login.md §5) — first, before it is judged — and one on an origin nobody
566
+ // trusted is withheld rather than printed (describePage).
528
567
  refuseUndisplayable("the service's page address", offered.page);
529
- io.writeErr(`${describePage(audience, offered.page)}\n`);
568
+ io.writeErr(`${describePage(audience, offered.page, pageOrigin)}\n`);
530
569
  }
531
570
  io.writeErr(`waiting for the page to take the offer, up to ${offered.expires_in}s\n`);
532
571
  // The prover paces ITSELF (ADR 0007 §C.7, #39): the route is unpaced because two parties
@@ -649,15 +688,88 @@ function checkOfferEcho(offered, code, scope, validFor) {
649
688
  if (!Number.isInteger(offered.expires_in) || offered.expires_in <= 0)
650
689
  throw new Error("login: the service's offer has no lifetime (expires_in)");
651
690
  }
652
- /** The one line about the page address, printed and MARKED, never opened (§4.1 rule 1; ADR
653
- * 0007 §C.7 (6)). "On the service's own origin" is a byte-exact comparison of scheme and host
654
- * with the audience's — a differently spelled origin fails closed, the right direction for an
655
- * address a person is about to click — and launching a browser is the person's action, never
656
- * this command's: spawning a platform opener by name is the PATH surface §C.5 refuses. */
657
- export function describePage(audience, page) {
658
- const origin = originOf(audience);
659
- const onOrigin = page === origin || page.startsWith(`${origin}/`) || page.startsWith(`${origin}#`) || page.startsWith(`${origin}?`);
660
- return onOrigin ? `page: ${page} (on the service's own origin)` : `page: ${page} (NOT on the service's origin — do not open it)`;
691
+ /** The lines describePage prints when it withholds the page address. Each says why, and none
692
+ * carries the address: it holds the code, and the code is already on the line above it. */
693
+ export const PAGE_NOT_HTTPS = "the service's page is not an https address, so its address (which carries the code) is not printed";
694
+ export const PAGE_PLAIN_HTTP = "the service's page is plain HTTP off this machine, so its address (which carries the code) is not printed; " +
695
+ "only https, or http on localhost, 127.0.0.1 or [::1], is printed";
696
+ export const PAGE_OFF_ORIGIN = "the service's page is not on the service's own origin, so its address (which carries the code) is not printed; " +
697
+ "pass --page-origin <origin> to trust that origin";
698
+ export const PAGE_OFF_TRUSTED = "the service's page is on neither the service's own origin nor the one --page-origin names, " +
699
+ "so its address (which carries the code) is not printed";
700
+ /** The one stderr line about the page address (§4.1 rule 1; ADR 0007 §C.7 (6); ADR 0015). The
701
+ * address carries the code in its fragment, and a person shown an address can open it whatever
702
+ * label sits beside it (archon#123) — so it is PRINTED only when it is both (a) on a trusted
703
+ * transport, https or plain http on this machine (localhost, 127.0.0.1, [::1]), and (b) on a
704
+ * trusted origin: the audience's own, or the one the person named with --page-origin.
705
+ * Otherwise one line says why it was withheld and the flow goes on: the code line above it lets
706
+ * the person finish on the service's own page.
707
+ *
708
+ * Both comparisons are byte-exact, of the page's scheme and authority as it spells them with
709
+ * the audience's (canonical by construction) and with --page-origin (canonical, pageOriginFlag
710
+ * made sure) — a differently spelled origin fails closed, the right direction for an address
711
+ * carrying a secret. It is never opened: launching a browser is the person's action, never this
712
+ * command's — spawning a platform opener by name is the PATH surface §C.5 refuses. */
713
+ export function describePage(audience, page, trusted) {
714
+ const sep = page.indexOf("://");
715
+ const scheme = sep < 0 ? "" : page.slice(0, sep);
716
+ if (scheme !== "https" && scheme !== "http")
717
+ return PAGE_NOT_HTTPS;
718
+ const rest = page.slice(sep + 3);
719
+ const end = rest.search(/[/?#]/);
720
+ const authority = end < 0 ? rest : rest.slice(0, end);
721
+ if (scheme === "http" && !isLoopback(authority))
722
+ return PAGE_PLAIN_HTTP;
723
+ const origin = `${scheme}://${authority}`;
724
+ if (origin === originOf(audience))
725
+ return `page: ${page} (on the service's own origin)`;
726
+ if (trusted !== undefined && origin === trusted)
727
+ return `page: ${page} (on the origin you trusted with --page-origin)`;
728
+ return trusted !== undefined ? PAGE_OFF_TRUSTED : PAGE_OFF_ORIGIN;
729
+ }
730
+ /** Whether an authority, as a page spells it, names this machine: exactly localhost, 127.0.0.1
731
+ * or [::1], with any port. Userinfo is never this machine — it is how
732
+ * `http://localhost@elsewhere` reads as one host and goes to another. */
733
+ function isLoopback(authority) {
734
+ if (authority.includes("@"))
735
+ return false;
736
+ let host = authority;
737
+ if (host.startsWith("[")) {
738
+ const close = host.indexOf("]");
739
+ if (close >= 0)
740
+ host = host.slice(0, close + 1);
741
+ }
742
+ else {
743
+ const colon = host.indexOf(":");
744
+ if (colon >= 0)
745
+ host = host.slice(0, colon);
746
+ }
747
+ return host === "localhost" || host === "127.0.0.1" || host === "[::1]";
748
+ }
749
+ /** Checks --page-origin (ADR 0015) before anything is sent: an ORIGIN — scheme://host[:port],
750
+ * with no path, query or fragment — spelled canonically, as an audience must be: a fixed point
751
+ * of §2.1's grammar, fed through the scheme's derivation exactly as selectedAudience feeds the
752
+ * audience. describePage compares it byte for byte, so a spelling the comparison could never
753
+ * match is refused here, naming the one it could. */
754
+ export function pageOriginFlag(value) {
755
+ if (value === undefined)
756
+ return undefined;
757
+ const sep = value.indexOf("://");
758
+ const rest = sep < 0 ? "" : value.slice(sep + 3);
759
+ if (rest === "" || /[/?#]/.test(rest)) {
760
+ throw new Error(`login: --page-origin ${jsonString(value)} is not an origin — give scheme://host[:port], with no path, query or fragment`);
761
+ }
762
+ let derived;
763
+ try {
764
+ derived = deriveAudience(`${value}/login/00`).audience;
765
+ }
766
+ catch (err) {
767
+ throw new Error(`login: --page-origin ${jsonString(value)} is not valid: ${err instanceof Error ? err.message : String(err)} (docs/login.md §2.1)`);
768
+ }
769
+ if (derived !== value) {
770
+ throw new Error(`login: --page-origin ${jsonString(value)} is not canonical — pass ${jsonString(derived)} (docs/login.md §2.1)`);
771
+ }
772
+ return value;
661
773
  }
662
774
  /** The audience up to its path: scheme, host and port, as the audience spells them (canonical
663
775
  * by construction — configuredAudience made sure). */
@@ -779,6 +891,21 @@ export function loginHttpError(status, body) {
779
891
  * produce proofs that verify nowhere and take a day to explain. */
780
892
  export function proveLogin(seed, audience, request) {
781
893
  const principal = encodeKey(getPublicKey(seed));
894
+ return { proof: schemeProveLogin(seed, audience, schemeRequest(request)), principal };
895
+ }
896
+ /** The login's transaction fingerprint (docs/login.md §5.3; ADR 0015 §4) as the person reads it,
897
+ * over the derived audience and the SAME scheme request the proof is made from — schemeRequest,
898
+ * once — so the fingerprint the person compares with the page they started covers exactly the
899
+ * request that will be signed. The digest and its spelling are the sdk's; this lane only
900
+ * converts the wire values, as for the proof. Throws when the sdk refuses what the binding
901
+ * refuses, or a nonce under the scheme's floor: the caller refuses the request before anything
902
+ * is shown. */
903
+ export function transactionFingerprint(audience, request) {
904
+ return formatFingerprint(schemeFingerprint(audience, schemeRequest(request)));
905
+ }
906
+ /** The wire request as the scheme's: hex and key text in, bytes out. The one conversion both
907
+ * the proof and the transaction fingerprint are made from. */
908
+ function schemeRequest(request) {
782
909
  // Re-decoded rather than assumed: validateLoginRequest has already checked these, but it
783
910
  // runs on the flow's path and this function is reachable from any future caller. A silent
784
911
  // mis-decode would produce a proof bound to bytes nobody displayed.
@@ -791,13 +918,12 @@ export function proveLogin(seed, audience, request) {
791
918
  // as UTF-8 would bind the ASCII of the hex — 0x38 0x66 0x33 0x63 for "8f3c" instead of
792
919
  // 0x8f 0x3c — and the resulting proof verifies NOWHERE. A stub test that builds its
793
920
  // expected request the same wrong way still passes, which is how it survived.
794
- const scheme = {
921
+ return {
795
922
  id: fromHex(request.id),
796
923
  nonce,
797
924
  browser,
798
925
  scope: request.scope,
799
926
  validFor: request.valid_for,
800
927
  };
801
- return { proof: schemeProveLogin(seed, audience, scheme), principal };
802
928
  }
803
929
  //# sourceMappingURL=login.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"login.js","sourceRoot":"","sources":["../../../src/cmd/login.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../../../src/cmd/login.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bitspark/archon-cli",
3
- "version": "0.14.0",
3
+ "version": "0.16.0",
4
4
  "description": "archon CLI: key / keygen / sign / verify over the identity floor.",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -23,8 +23,8 @@
23
23
  "test": "tsc -p tsconfig.json && node --test dist/test/*.test.js"
24
24
  },
25
25
  "dependencies": {
26
- "@bitspark/archon": "^0.14.0",
27
- "@bitspark/archon-sdk": "^0.14.0",
26
+ "@bitspark/archon": "^0.16.0",
27
+ "@bitspark/archon-sdk": "^0.16.0",
28
28
  "@noble/ciphers": "^2.4.0",
29
29
  "@noble/hashes": "^2.4.0"
30
30
  },