Changeset 61e3daf in Klonkt for docs/paid-posts-design.md
- Timestamp:
- 07/21/2026 12:38:08 AM (7 weeks ago)
- Branches:
- main
- Children:
- 928d1c7
- Parents:
- 4a08bfc
- git-author:
- Robin <roboburr@…> (07/21/2026 12:38:07 AM)
- git-committer:
- Robin <roboburr@…> (07/21/2026 12:38:08 AM)
- File:
-
- 1 edited
-
docs/paid-posts-design.md (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
docs/paid-posts-design.md
r4a08bfc r61e3daf 70 70 71 71 `PAID_SECRET` (32 random bytes) lives in env, like the other secrets. 72 73 ## Concurrency (a property of the cookie-less model) 74 75 Because there is no session and no "current user", the model is inherently 76 multi-user. Two people unlock side by side with no shared state to collide: 77 each request carries its own assertion, verified against that credential's own 78 public key, and the content goes back in that one response. `paid_entitlements` 79 is keyed per credential, so N passkeys are N independent rows. The challenge is 80 stateless (the signed blob), so there is no single "pending challenge" slot a 81 second visitor could overwrite. Unlike a cookie session, "two people in the same 82 browser" cannot clobber each other. The only caveat is a shared browser profile: 83 the passkey picker would then list both passkeys (a small visibility hint, not 84 access). 72 85 73 86 ## Data model (additive)
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)