<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <updated>2026-11-14T03:40:51Z</updated>
  <generator>https://njump.me</generator>

  <title>Nostr notes by </title>
  <author>
    <name></name>
  </author>
  <link rel="self" type="application/atom+xml" href="https://njump.me/npub1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzqujme.rss" />
  <link href="https://njump.me/npub1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzqujme" />
  <id>https://njump.me/npub1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzqujme</id>
  <icon></icon>
  <logo></logo>


  <title>Nostr notes on relay.inkan.cc</title>
  <link href="https://njump.me/r/relay.inkan.cc" />
  <link rel="self" type="application/atom+xml" href="https://njump.me/r/relay.inkan.cc.rss" />
  <id>https://njump.me/r/relay.inkan.cc</id>
  <icon></icon>
  <logo></logo>



  <entry>
    <id>https://njump.me/nevent1qqsqsk9v4gp6d8m0rpuefj9hk3hju2tprktfuxdpshzj34gnyuwlgrspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjwdgups</id>
    
      <title type="html">This is likely the least of concerns, WoT hides interactions from ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsqsk9v4gp6d8m0rpuefj9hk3hju2tprktfuxdpshzj34gnyuwlgrspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjwdgups" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsryfrjqlmed2evmyd37kz4avfm6e6qmltgt59vkepszf0y0fxvhdqkg6x34&#39;&gt;nevent1q…6x34&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;This is likely the least of concerns, WoT hides interactions from outside of your network… but discovery is close to non existent. &lt;br/&gt;&lt;br/&gt;There is no “algorithm” to pick up influencers posts and deliver them to random people. 
    </content>
    <updated>2026-11-14T03:40:51Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqs9c0rxfgnkgk46nh8gjruhttzq8q8ry246vzghxja23us8udh44hspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjxsjjmj</id>
    
      <title>Nostr event nevent1qqs9c0rxfgnkgk46nh8gjruhttzq8q8ry246vzghxja23us8udh44hspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjxsjjmj</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqs9c0rxfgnkgk46nh8gjruhttzq8q8ry246vzghxja23us8udh44hspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjxsjjmj" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqqq9erc7frq7dvc8they8qgkfehya3vmm39mkvk6rdz3rw0rh00gyq7hy2&#39;&gt;nevent1q…7hy2&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;nevent1qqs2xwfvm89jl8rrvydcse27mrr3u33vku4f7ng5th62u4khxx9c4eszyq9uwwpv0arsj9zfy9r6w9a8ac6e48ftetgjq6jqksarsyvcnc0j5qcyqqqqqqga54z5s
    </content>
    <updated>2026-11-14T03:12:38Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqstzqmj5yv0ma6kwkuemk68qsm5f59fyxv389pglje64pusvaut7rgpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23r6ct54u</id>
    
      <title type="html">By the way, here is a working delegation mechanism that has been ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqstzqmj5yv0ma6kwkuemk68qsm5f59fyxv389pglje64pusvaut7rgpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23r6ct54u" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqswcv988v5apeu9pml5t958gp8st3k2p4ualgxynz4t0acqvaduakqpzdmhxue69uhk7enxvd5xz6tw9ec82c30a4g7qj&#39;&gt;nevent1q…g7qj&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;By the way, here is a working delegation mechanism that has been in use for a while, and which:&lt;br/&gt;&lt;br/&gt;1. doesn&amp;#39;t require lending your key to others (you can keep it in a safe deposit box);&lt;br/&gt;&lt;br/&gt;2. doesn&amp;#39;t break the network (other people don&amp;#39;t have to know you&amp;#39;ve set up the delegation mechanism, unless of course they actually want to interact with your cold storage identity; that&amp;#39;s just like other people don&amp;#39;t need to know that you&amp;#39;re using DMs, unless they actually want to send you a DM);&lt;br/&gt;&lt;br/&gt;3. is not arcane / stupid (see draft NIP below 👇).&lt;br/&gt;&lt;br/&gt;If you&amp;#39;d like to try it out, you can get a &amp;#34;Toy Identity&amp;#34; through the wizard on the homepage at &lt;a href=&#34;https://www.inkan.cc&#34;&gt;https://www.inkan.cc&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;&lt;blockquote class=&#34;border-l-05rem border-l-strongpink border-solid&#34;&gt;&lt;div class=&#34;-ml-4 bg-gradient-to-r from-gray-100 dark:from-zinc-800 to-transparent mr-0 mt-0 mb-4 pl-4 pr-2 py-2&#34;&gt;quoting &lt;br/&gt;&lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Article&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/naddr1qvzqqqr4gupzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqyghwumn8ghj7mn0wd68ytnvv9hxgtcpz9mhxue69uhkummnw3ezuamfdejj7qpgvdhkcepdwd6x7unpvajj66tyv4h8g6t5d9jhxttxdaez6mn0wd68ytthffxkvd2kjmzjnp&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;naddr1qv…zjnp&lt;/a&gt;&lt;/span&gt;&lt;br/&gt; &lt;/div&gt; &lt;h2 id=&#34;nip-proposal&#34;&gt;NIP Proposal&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;draft&lt;/code&gt; &lt;code&gt;optional&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;This NIP specifies online identities whose private key can be created in cold storage and stay there permanently. The key never has to touch an internet-connected device, and does not have to be kept close at hand. The identity can nonetheless be used easily for everyday online authentication, such as posting, replying, messaging, or signing in to services.&lt;/p&gt;

&lt;h2 id=&#34;1-how-it-works&#34;&gt;1. How it works&lt;/h2&gt;

&lt;p&gt;The identity-securing key never signs Nostr events itself. It delegates signing authority to delegatee keys, which handle the everyday signing on its behalf. If a delegatee key is lost or stolen, it is replaced, and the identity is untouched.&lt;/p&gt;

&lt;h2 id=&#34;2-delegations-between-keys&#34;&gt;2. Delegations between keys&lt;/h2&gt;

&lt;p&gt;Delegations are time-indexed two-place relations. Between any two key pairs, at any moment, the first either delegates signing authority to the second or it does not. When it does, the second key is authorized to sign on the first&amp;#39;s behalf. When it does not, the second has no such authority.&lt;/p&gt;

&lt;p&gt;Delegations are either direct or indirect. A direct delegation arises when one key has expressly declared that it delegates signing authority to another. An indirect delegation arises because the relation is transitively closed: if X delegates to Y and Y delegates to Z, then X indirectly delegates to Z. This is what lets an identity be built as a chain (master → intermediate → signer), so that events signed by the bottom key are attributed all the way up to the master, while the master, having signed the top link once, retires to cold storage.&lt;/p&gt;

&lt;h2 id=&#34;3-how-a-direct-delegation-is-created&#34;&gt;3. How a direct delegation is created&lt;/h2&gt;

&lt;p&gt;A direct delegation from key pair X to key pair Y is created when both key pairs sign a &lt;strong&gt;Declaration of Delegation of Signing Authority&lt;/strong&gt;, by which X declares that it delegates signing authority to Y and Y declares that it accepts. The signed declaration is then recorded on-chain (the reference implementation uses Ethereum). The delegation begins at the time of the block in which the declaration was recorded, and remains in effect until it is revoked.&lt;/p&gt;

&lt;p&gt;One special case: this holds only if neither X nor Y has previously permanently invalidated itself (§5). If either has, no delegation is created, even though the declaration sits on-chain.&lt;/p&gt;

&lt;p&gt;As part of the declaration, X and Y also specify whether X can revoke the delegation unilaterally or whether Y&amp;#39;s consent is required. The default is unilateral revocation by X, and it is the right default for most users: if Y&amp;#39;s key is ever lost, X can still revoke it alone. Were Y&amp;#39;s consent required, a lost Y could never be revoked, because Y would no longer be available to sign.&lt;/p&gt;

&lt;h2 id=&#34;4-how-a-direct-delegation-is-terminated&#34;&gt;4. How a direct delegation is terminated&lt;/h2&gt;

&lt;p&gt;A direct delegation from X to Y is terminated when X signs a &lt;strong&gt;Declaration of Revocation of Signing Authority&lt;/strong&gt; and records it on-chain, with Y&amp;#39;s signature too if the original delegation required it. The delegation terminates at the time of the block in which the revocation was recorded. Everything Y signed while the delegation was in effect stays attributed to X; nothing it signs afterward does. A stolen signer therefore damages only the window between key compromise and revocation, and that window is the user&amp;#39;s to close.&lt;/p&gt;

&lt;p&gt;When a delegation and a revocation between the same X and Y land in the same block, the revocation is by convention treated as occurring first and the delegation thereafter. The convention is a tiebreaker for cases that block timestamps cannot order.&lt;/p&gt;

&lt;h2 id=&#34;5-permanent-key-invalidation&#34;&gt;5. Permanent key invalidation&lt;/h2&gt;

&lt;p&gt;The third declaration is the &lt;strong&gt;Declaration of Permanent Invalidation of a Key Pair&lt;/strong&gt;, signed by a key pair against itself, declaring that from then on it can no longer participate in any direct delegation, as delegator or delegatee. Once recorded on-chain, it takes effect at the time of its block. From that point, all existing direct delegations involving the key are terminated, and no new one involving it can come into existence, even if a declaration naming it is later recorded.&lt;/p&gt;

&lt;p&gt;Its main use is invalidating a compromised master key. Such a key has no delegator above it, so ordinary revocation is unavailable; permanent invalidation lets its owner withdraw it from the system entirely.&lt;/p&gt;

&lt;h2 id=&#34;6-delegation-timelines&#34;&gt;6. Delegation timelines&lt;/h2&gt;

&lt;p&gt;A client can read the three kinds of declaration from the chain and, for any pubkey and any past moment up to the present, compute the direct delegations that pubkey was involved in at that moment. The indirect ones follow by transitive closure. So for any pubkey a client can compile a complete timeline of every direct and indirect delegation it has ever been involved in, and trace each back to the declaration that established it. Because the rules are fixed and the data is public, every client computes the same timeline, and no server has to be trusted to report it.&lt;/p&gt;

&lt;h2 id=&#34;7-bitcoin-timestamping-of-events&#34;&gt;7. Bitcoin timestamping of events&lt;/h2&gt;

&lt;p&gt;Attribution needs an objective, auditable rule for when the signing of each event is deemed to have occurred. A self-declared &lt;code&gt;created_at&lt;/code&gt; proves nothing on its own.&lt;/p&gt;

&lt;p&gt;Events are anchored to Bitcoin using &lt;strong&gt;OpenTimestamps&lt;/strong&gt; (OTS). An OTS proof for an event establishes that the event and its signature existed by the time of a specific Bitcoin block. An event&amp;#39;s &lt;code&gt;created_at&lt;/code&gt; is then treated as its objective signing time when a proof shows the event and its signature existed shortly after that time. The length of the &amp;#34;shortly after&amp;#34; window is configurable; the reference implementation defaults to four hours. Events without such a proof are treated as if they carried no valid signature at all: they are not displayed, and are attributed to no one.&lt;/p&gt;

&lt;p&gt;A proof over the event id alone would show only that the event&amp;#39;s contents existed by the attested block, not that anyone had yet signed them. Binding the signature into the proof as well shows that the signature itself existed by then, which is what an objective signing time requires. These proofs are published as kind &lt;code&gt;31045&lt;/code&gt; events (§12).&lt;/p&gt;

&lt;h2 id=&#34;8-attribution-of-events&#34;&gt;8. Attribution of events&lt;/h2&gt;

&lt;p&gt;We now know, for any past time T and any two keys X and Y, whether X delegated (directly or indirectly) to Y at T; and for any event Y signed with both a valid signature and a valid OTS anchor, we have an objective signing time. Together these give a well-defined attribution rule:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;An event E is attributed to a key X if and only if some key Y validly signed E at a time T and, as of T, X delegated signing authority to Y.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;So a text note signed by a delegatee Y during a valid delegation period from X appears on X&amp;#39;s timeline and is displayed there under X&amp;#39;s profile, as if posted by X, even though X&amp;#39;s own key never signed it.&lt;/p&gt;

&lt;h2 id=&#34;9-two-profiles-one-identity&#34;&gt;9. Two profiles, one identity&lt;/h2&gt;

&lt;p&gt;You log in with your signer key and sign events with it, exactly as in any other Nostr client. Those events appear on the signer&amp;#39;s own profile, and in addition on the profile of each of its delegators, up to your top-level identity.&lt;/p&gt;

&lt;p&gt;You set the signer&amp;#39;s profile by publishing a kind-0 event as usual. Separately, a signer can also set a profile &lt;em&gt;for&lt;/em&gt; each of its current delegators, so that a top-level identity can present a face to the world without signing any event itself. This delegator-profile mechanism is kind &lt;code&gt;31065&lt;/code&gt; (§12).&lt;/p&gt;

&lt;p&gt;Your identity&amp;#39;s profile is what you present to the world. Others should follow and interact with the identity, not with the signer beneath it. The signer is ephemeral and expected to be replaced; the identity is permanent, and is the thing followers should attach to.&lt;/p&gt;

&lt;h2 id=&#34;10-disavowal&#34;&gt;10. Disavowal&lt;/h2&gt;

&lt;p&gt;When making a delegation declaration, the delegator may declare an avowal start time and an avowal end time. When making a revocation declaration, the revoker may declare a disavowal start time and a disavowal end time. A start time of zero is interpreted as the time at which the declaration was recorded on-chain; an end time of zero means unbounded.&lt;/p&gt;

&lt;p&gt;For keys X and Y, take the latest delegation or revocation declaration between them recorded before any permanent invalidation of either (§5). If it is a delegation declaration, X avows Y&amp;#39;s actions at exactly the times T inside its avowal window; if a revocation declaration, at exactly the times T outside its disavowal window; provided, in both cases, that X directly delegated to Y at T. Y&amp;#39;s actions at T are the events Y validly signed with objective signing time T (§7).&lt;/p&gt;

&lt;p&gt;Avowal composes along delegation paths: X currently avows S&amp;#39;s actions at T if the relevant declaration between X and S avows them directly, or if, for some key Y, X avows Y&amp;#39;s actions at T, X avows Y&amp;#39;s actions at the present moment, and Y currently avows S&amp;#39;s actions at T.&lt;/p&gt;

&lt;p&gt;Clients can filter events whose signing the identity currently disavows out of the identity&amp;#39;s timeline, or display them with a disavowal badge.&lt;/p&gt;

&lt;h2 id=&#34;11-re-ratification&#34;&gt;11. Re-ratification&lt;/h2&gt;

&lt;p&gt;A disavowed window covers everything the disavowed key signed within it, including events whose signing was caused by the identity&amp;#39;s legitimate owner. The identity can in that situation make a kind &lt;code&gt;31066&lt;/code&gt; re-ratification declaration as described in §12.3 below, specifying the events it re-ratifies in the &lt;code&gt;e&lt;/code&gt; tags of that declaration. If the declaration is valid and effective, a client treats these events as re-ratified, until a disavowal recorded after the declaration&amp;#39;s anchoring block prevails over it (§12.3) or a later declaration governs in its place.&lt;/p&gt;

&lt;h2 id=&#34;12-event-kinds&#34;&gt;12. Event kinds&lt;/h2&gt;

&lt;p&gt;This NIP defines three &lt;strong&gt;addressable&lt;/strong&gt; event kinds (kinds 30000 to 39999 in NIP-01, where the latest event for a given &lt;code&gt;(pubkey, kind, d-tag)&lt;/code&gt; replaces any earlier one).&lt;/p&gt;

&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Kind&lt;/th&gt;
&lt;th&gt;Name&lt;/th&gt;
&lt;th&gt;&lt;code&gt;d&lt;/code&gt; tag&lt;/th&gt;
&lt;th&gt;Signed by&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;

&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;31045&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Bitcoin timestamp&lt;/td&gt;
&lt;td&gt;id of the referenced event&lt;/td&gt;
&lt;td&gt;any party&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;31065&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Attributed profile&lt;/td&gt;
&lt;td&gt;the delegator&amp;#39;s pubkey&lt;/td&gt;
&lt;td&gt;a delegatee&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;31066&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Re-ratification&lt;/td&gt;
&lt;td&gt;the re-ratifying pubkey&lt;/td&gt;
&lt;td&gt;an avowed key&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

&lt;h3 id=&#34;12-1-kind-31045-bitcoin-timestamp&#34;&gt;12.1 Kind &lt;code&gt;31045&lt;/code&gt;: Bitcoin timestamp&lt;/h3&gt;

&lt;p&gt;A &lt;code&gt;31045&lt;/code&gt; event carries an OpenTimestamps proof for another event (§7). It is addressable by the referenced event&amp;#39;s id, so a consumer finds the proof for an event E by querying kind &lt;code&gt;31045&lt;/code&gt; with &lt;code&gt;#d = [E.id]&lt;/code&gt;, whoever published it. Any valid proof for E is as good as any other, because the proof rests on Bitcoin and not on its publisher.&lt;/p&gt;

&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tag&lt;/th&gt;
&lt;th&gt;Required&lt;/th&gt;
&lt;th&gt;Meaning&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;

&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;d&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;td&gt;Id of the referenced event. The addressable key.&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;s&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;td&gt;Signature of the referenced event. With &lt;code&gt;d&lt;/code&gt;, binds the proof to a signed event, not just an id.&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;p&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;Author pubkey of the referenced event.&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;b&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;Bitcoin block height of the attestation, or &lt;code&gt;not_yet_available&lt;/code&gt; while pending.&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;t&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;Bitcoin block time (unix seconds), or &lt;code&gt;not_yet_available&lt;/code&gt; while pending.&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;c&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;&lt;code&gt;created_at&lt;/code&gt; of the referenced event, when known.&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;alt&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;NIP-31 summary, e.g. &lt;code&gt;Complete Bitcoin Timestamp&lt;/code&gt;.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;code&gt;content&lt;/code&gt; is the base64-encoded OpenTimestamps (&lt;code&gt;.ots&lt;/code&gt;) proof. Its leaf must commit to &lt;code&gt;sha256(referenced_id || referenced_signature)&lt;/code&gt;, the concatenation of the referenced event&amp;#39;s 32-byte id and 64-byte signature. A consumer should verify the proof against its own view of the Bitcoin chain rather than rely on a relay having accepted it.&lt;/p&gt;

&lt;p&gt;Only &lt;code&gt;d&lt;/code&gt; and &lt;code&gt;s&lt;/code&gt;, together with a verifiable &lt;code&gt;content&lt;/code&gt; proof, are required to verify a timestamp. Every single-letter tag (&lt;code&gt;d&lt;/code&gt;, &lt;code&gt;p&lt;/code&gt;, &lt;code&gt;s&lt;/code&gt;, &lt;code&gt;b&lt;/code&gt;, &lt;code&gt;t&lt;/code&gt;, &lt;code&gt;c&lt;/code&gt;) is relay-indexed, so it can also serve as a query key, for example finding proofs by referenced author (&lt;code&gt;#p&lt;/code&gt;) or by anchoring block (&lt;code&gt;#b&lt;/code&gt;). &lt;code&gt;b&lt;/code&gt; and &lt;code&gt;t&lt;/code&gt; additionally duplicate what the proof itself attests; &lt;code&gt;alt&lt;/code&gt; is not indexed and serves only as a NIP-31 display label.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;{
  &amp;#34;kind&amp;#34;: 31045,
  &amp;#34;tags&amp;#34;: [
    [&amp;#34;d&amp;#34;, &amp;#34;&amp;lt;referenced-event-id&amp;gt;&amp;#34;],
    [&amp;#34;p&amp;#34;, &amp;#34;&amp;lt;referenced-event-author&amp;gt;&amp;#34;],
    [&amp;#34;s&amp;#34;, &amp;#34;&amp;lt;referenced-event-signature&amp;gt;&amp;#34;],
    [&amp;#34;b&amp;#34;, &amp;#34;&amp;lt;bitcoin-block-height&amp;gt;&amp;#34;],
    [&amp;#34;t&amp;#34;, &amp;#34;&amp;lt;bitcoin-block-time&amp;gt;&amp;#34;],
    [&amp;#34;alt&amp;#34;, &amp;#34;Complete Bitcoin Timestamp&amp;#34;],
    [&amp;#34;c&amp;#34;, &amp;#34;&amp;lt;referenced-event-created-at&amp;gt;&amp;#34;]
  ],
  &amp;#34;content&amp;#34;: &amp;#34;&amp;lt;base64 .ots proof committing to sha256(id||sig)&amp;gt;&amp;#34;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;h3 id=&#34;12-2-kind-31065-attributed-profile&#34;&gt;12.2 Kind &lt;code&gt;31065&lt;/code&gt;: Attributed profile&lt;/h3&gt;

&lt;p&gt;A &lt;code&gt;31065&lt;/code&gt; event is a profile for one key, published by another: how an identity that never signs anything nonetheless presents a face to the world (§9). Its &lt;code&gt;d&lt;/code&gt; tag is the delegator&amp;#39;s pubkey, the identity the profile describes, while the event is signed by a delegatee authorized to sign for it. The defining property is that &lt;code&gt;event.pubkey&lt;/code&gt;, the signer, is not the subject &lt;code&gt;d&lt;/code&gt;. A consumer must confirm, against the delegation timeline of §6, that the signer was a current delegatee of the subject before honoring the profile; one signed by a non-delegatee is ignored.&lt;/p&gt;

&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tag&lt;/th&gt;
&lt;th&gt;Required&lt;/th&gt;
&lt;th&gt;Meaning&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;

&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;d&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;td&gt;The subject: the delegator&amp;#39;s pubkey.&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;alt&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;td&gt;The exact string &lt;code&gt;Attributed profile&lt;/code&gt;.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;code&gt;content&lt;/code&gt; is a JSON object carrying the subject&amp;#39;s presentation. Its kind-0-style fields (&lt;code&gt;name&lt;/code&gt;, &lt;code&gt;display_name&lt;/code&gt;, &lt;code&gt;about&lt;/code&gt;, &lt;code&gt;picture&lt;/code&gt;, &lt;code&gt;banner&lt;/code&gt;, &lt;code&gt;website&lt;/code&gt;, &lt;code&gt;nip05&lt;/code&gt;, &lt;code&gt;lud16&lt;/code&gt;) mean what they mean in NIP-01 and NIP-05. It may also carry the subject&amp;#39;s follow list, mute list, and a map giving relay lists for the members of the identity&amp;#39;s delegation network (the keys tied to it by delegation), so a client can present and route for the identity without a further fetch.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;{
  &amp;#34;kind&amp;#34;: 31065,
  &amp;#34;pubkey&amp;#34;: &amp;#34;&amp;lt;delegatee-that-signs&amp;gt;&amp;#34;,
  &amp;#34;tags&amp;#34;: [
    [&amp;#34;d&amp;#34;, &amp;#34;&amp;lt;delegator-pubkey-the-profile-is-for&amp;gt;&amp;#34;],
    [&amp;#34;alt&amp;#34;, &amp;#34;Attributed profile&amp;#34;]
  ],
  &amp;#34;content&amp;#34;: &amp;#34;{\&amp;#34;name\&amp;#34;:\&amp;#34;…\&amp;#34;,\&amp;#34;display_name\&amp;#34;:\&amp;#34;…\&amp;#34;,\&amp;#34;about\&amp;#34;:\&amp;#34;…\&amp;#34;,\&amp;#34;website\&amp;#34;:\&amp;#34;…\&amp;#34;,\&amp;#34;nip05\&amp;#34;:\&amp;#34;…\&amp;#34;,\&amp;#34;picture\&amp;#34;:\&amp;#34;…\&amp;#34;,\&amp;#34;relay_lists_by_pubkey\&amp;#34;:{\&amp;#34;&amp;lt;pubkey&amp;gt;\&amp;#34;:{\&amp;#34;readWriteRelays\&amp;#34;:[[\&amp;#34;r\&amp;#34;,\&amp;#34;&amp;lt;relay-url&amp;gt;\&amp;#34;,\&amp;#34;&amp;lt;scope&amp;gt;\&amp;#34;]],\&amp;#34;favoriteRelays\&amp;#34;:[\&amp;#34;&amp;lt;relay-url&amp;gt;\&amp;#34;],\&amp;#34;relaySets\&amp;#34;:[{\&amp;#34;id\&amp;#34;:\&amp;#34;…\&amp;#34;,\&amp;#34;name\&amp;#34;:\&amp;#34;…\&amp;#34;,\&amp;#34;relayUrls\&amp;#34;:[\&amp;#34;&amp;lt;relay-url&amp;gt;\&amp;#34;]}]}},\&amp;#34;publicly_muted_pubkey_hex_ids\&amp;#34;:[\&amp;#34;&amp;lt;muted-pubkey&amp;gt;\&amp;#34;],\&amp;#34;current_snapshot_of_dir_indir_followed_pubkey\&amp;#34;:[[\&amp;#34;p\&amp;#34;,\&amp;#34;&amp;lt;followed-pubkey&amp;gt;\&amp;#34;]]}&amp;#34;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Because &lt;code&gt;31065&lt;/code&gt; is addressable, the current profile for an identity is simply the latest one whose &lt;code&gt;d&lt;/code&gt; is that identity, signed by a key that is currently its delegatee. When the signer is rotated, the new signer republishes, and the identity&amp;#39;s face carries across the change unbroken.&lt;/p&gt;

&lt;h3 id=&#34;12-3-kind-31066-re-ratification-declaration&#34;&gt;12.3 Kind &lt;code&gt;31066&lt;/code&gt;: Re-ratification declaration&lt;/h3&gt;

&lt;p&gt;A &lt;code&gt;31066&lt;/code&gt; event can be used by key A to re-ratify an event signed by key B with objective signing time T (§7), where A currently disavows actions taken by B at T (§10). The &lt;code&gt;d&lt;/code&gt; tag contains the re-ratifying pubkey and each &lt;code&gt;e&lt;/code&gt; tag is the id of a re-ratified event. The re-ratification is valid only if the &lt;code&gt;31066&lt;/code&gt; event is signed by a key whose actions the re-ratifying key currently avows (which includes the re-ratifying key itself), and only if no &lt;code&gt;e&lt;/code&gt; tag contains the declaration&amp;#39;s own event id. The &lt;code&gt;31066&lt;/code&gt; event must be submitted for Bitcoin timestamping and is effective starting from the time of the block in which its proof is anchored. If there are multiple valid and effective &lt;code&gt;31066&lt;/code&gt; events with the same re-ratifying pubkey in their &lt;code&gt;d&lt;/code&gt; tag, the one with the latest &lt;code&gt;created_at&lt;/code&gt; governs. A re-ratification overrides only disavowals recorded on-chain before the time of its anchoring block; a disavowal recorded after that time prevails over the re-ratification.&lt;/p&gt;

&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tag&lt;/th&gt;
&lt;th&gt;Required&lt;/th&gt;
&lt;th&gt;Meaning&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;

&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;d&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;td&gt;The re-ratifying pubkey.&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;e&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;yes, repeated&lt;/td&gt;
&lt;td&gt;Id of a re-ratified event, one tag per id.&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;alt&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;td&gt;&lt;code&gt;Re-ratification declaration&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

&lt;pre&gt;&lt;code&gt;{
  &amp;#34;kind&amp;#34;: 31066,
  &amp;#34;pubkey&amp;#34;: &amp;#34;&amp;lt;signing-key&amp;gt;&amp;#34;,
  &amp;#34;tags&amp;#34;: [
    [&amp;#34;d&amp;#34;, &amp;#34;&amp;lt;re-ratifying-pubkey&amp;gt;&amp;#34;],
    [&amp;#34;e&amp;#34;, &amp;#34;&amp;lt;re-ratified-event-id&amp;gt;&amp;#34;],
    [&amp;#34;e&amp;#34;, &amp;#34;&amp;lt;re-ratified-event-id&amp;gt;&amp;#34;],
    [&amp;#34;alt&amp;#34;, &amp;#34;Re-ratification declaration&amp;#34;]
  ],
  &amp;#34;content&amp;#34;: &amp;#34;&amp;#34;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;h2 id=&#34;13-reference-implementation&#34;&gt;13. Reference implementation&lt;/h2&gt;

&lt;p&gt;Inkan (&lt;code&gt;https://www.inkan.cc&lt;/code&gt;) implements this specification as a working Nostr client and a cooperating relay at &lt;code&gt;wss://relay.inkan.cc&lt;/code&gt;. Delegation, revocation, permanent invalidation, avowal, and disavowal are recorded by an Ethereum contract deployed at &lt;code&gt;0x385C0A272b1f44687cb360557b25827bD7CdB7eb&lt;/code&gt;, which is the normative reference for the exact on-chain declaration encoding. A separate, network-disconnected &amp;#34;Management Utility&amp;#34; generates keys and signs declarations on an air-gapped machine, so a master key can be created and used to bootstrap an identity without ever touching a networked host.&lt;/p&gt;
 &lt;/blockquote&gt;&lt;br/&gt;&lt;blockquote class=&#34;border-l-05rem border-l-strongpink border-solid&#34;&gt;&lt;div class=&#34;-ml-4 bg-gradient-to-r from-gray-100 dark:from-zinc-800 to-transparent mr-0 mt-0 mb-4 pl-4 pr-2 py-2&#34;&gt;quoting &lt;br/&gt;&lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Article&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/nevent1qvzqqqqqqypzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqyghwumn8ghj7mn0wd68ytnhd9hx2tcpz9mhxue69uhkummnw3ezumrpdejz7qpqprw9rxp9g3c45drmvp9jzdsc98xz5nqkl0fdhnedcpeahpt6zaqq7sx0vp&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;nevent1q…x0vp&lt;/a&gt;&lt;/span&gt; &lt;/div&gt; The way it usually goes, your online identity is your private key. If the key is compromised, there goes your identity. Inkan fixes that.&lt;br/&gt;&lt;br/&gt;You keep a master key in cold storage and a signing key for everyday use. If the signing key ever leaks or gets lost, the master revokes it and delegates to a new one. Same identity, same followers, fresh signing key.&lt;br/&gt;&lt;br/&gt;If you&#39;d like to take a look at the prototype: &lt;a href=&#34;https://www.inkan.cc&#34;&gt;https://www.inkan.cc&lt;/a&gt;. Log in with your NIP-07 extension and say hi to the test identities already walking around. Or make one of your own.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/27d256a9fcba336f567ea6369d0b6984feb72b00b06a5205efe029534113ab99.jpg&#34;&gt; &lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/ca9b087993604f7b7d9473a661c946ecd20015186a112021f4858efa6c1e1808.jpg&#34;&gt; &lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/fa5c1f8e19e3727b6693e6f105baf4eae15c4579343148fc413ac50acfe8edf0.jpg&#34;&gt; &lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/f7002003e981f536bec01789875c17596f6c0eac87526a071c350480029c5827.jpg&#34;&gt; &lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/3f6b865161cba71839910daa4f3c80b46c36400d5e2332ecad927b86003fcaad.jpg&#34;&gt; &lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/a10f0ac6d508ea26602348bbec60bda4659667f75adfda46d9b8354224cd08fe.jpg&#34;&gt; &lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/ce3d8e4de21b3e6f252f5aedbf02dd54323a26c1992c637438fabb9b14ea7afd.jpg&#34;&gt; &lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/60f8a59a68386e2f28b792b63d09729ed494ebe6caddb7f6810e3c10f48b6e82.jpg&#34;&gt; &lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/55000542eb9db4794c8ec07dcdfc93fa5560633afcd754476f6809e9c4bb5ac7.jpg&#34;&gt;  &lt;/blockquote&gt;
    </content>
    <updated>2026-11-13T15:01:58Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsqqqxlgaj2l7zmhhuqjjznakjat268f2k2dzkwzdh2c6vw35p2angpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjcxx2zh</id>
    
      <title type="html">note1qqq2adl3ejz0t56tyxnspmhumw437u88u9gfyuf6htt5escq56mqfqf2vl</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsqqqxlgaj2l7zmhhuqjjznakjat268f2k2dzkwzdh2c6vw35p2angpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjcxx2zh" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqstvy7ff788hj0z8vp5w8gz0yct6r2hh90r9uaqysutd8weevygq6gpz3mhxue69uhnzv3h9cczuvpwxyarxve4x5qxc6sp&#39;&gt;nevent1q…c6sp&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;note1qqq2adl3ejz0t56tyxnspmhumw437u88u9gfyuf6htt5escq56mqfqf2vl
    </content>
    <updated>2026-11-13T13:34:04Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsqqq9wklcuep846d9jrfcqam7dh2clwrn7z5yjwyat446vcvq2ddspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kj3g80md</id>
    
      <title type="html">Hm, you should be seeing it though, NV says it’s mirrored… ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsqqq9wklcuep846d9jrfcqam7dh2clwrn7z5yjwyat446vcvq2ddspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kj3g80md" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqqqzq2kt9dg8p0tp75vtlfsz3dyqhkpc70ag29gj9cdxzl2da0aspz3mhxue69uhnzv3h9cczuvpwxyarxve4x59szgdu&#39;&gt;nevent1q…zgdu&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Hm, you should be seeing it though, NV says it’s mirrored… &lt;br/&gt;&lt;br/&gt;Because it is nothing but (what appears to be) a JWT, and the whole npub posts nothing but notes just like that.&lt;br/&gt;&lt;br/&gt;And then there are other npubs doing a similar kind of spam, but with a stringfied json payload once again identified as kind: 1.&lt;br/&gt;&lt;br/&gt;This is clearly an abuse of the protocol, which serves no purpose other than to benefit some bad actors over the community at large. 
    </content>
    <updated>2026-11-13T13:33:19Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsqqqpul92lkeuwlknzzet3je67qcacgy060zk3fawyc3zk64x0g2spz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kj37ryc5</id>
    
      <title type="html">She looks more racially confused than a fucking Brazilian</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsqqqpul92lkeuwlknzzet3je67qcacgy060zk3fawyc3zk64x0g2spz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kj37ryc5" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsq704fa548rz2wrmlxzsquvferkay0rqxj559ehwv4hhxry8u3uxgpz3mhxue69uhnzv3h9cczuvpwxyarxve4x5f7y2dh&#39;&gt;nevent1q…y2dh&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;She looks more racially confused than a fucking Brazilian 
    </content>
    <updated>2026-11-13T03:05:04Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqst4a2hwm0y0evgzy2eg20s66xhz73ns4mw357p834v6qlucwk3xucpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kju63je5</id>
    
      <title type="html">Prostitution</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqst4a2hwm0y0evgzy2eg20s66xhz73ns4mw357p834v6qlucwk3xucpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kju63je5" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsg3f8w9h3xm59vz462crrk9qdnzpcpgavpf0fa037qmu08e2wqsac0mq72r&#39;&gt;nevent1q…q72r&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Prostitution 
    </content>
    <updated>2026-11-12T21:21:17Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsgclxmrw35aqlh85c3tr5rdj8632u8wm70nkjczuz7lh6dghkv73cpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjt92gp5</id>
    
      <title type="html">Have you forgotten what the oldest profession is?</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsgclxmrw35aqlh85c3tr5rdj8632u8wm70nkjczuz7lh6dghkv73cpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjt92gp5" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs2re8ra8y6x2xdn2qx2rmrvkmwj2fgsgq7mcp3tszafynqje89rrcapqmtn&#39;&gt;nevent1q…qmtn&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Have you forgotten what the oldest profession is?
    </content>
    <updated>2026-11-12T16:40:56Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsyjrj3tq68pmgr237epr0rd99mck0kndv0hkaxfgkpgv2jg6lp3mcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjdzqhzm</id>
    
      <title type="html">Hey the blood supply is limited.</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsyjrj3tq68pmgr237epr0rd99mck0kndv0hkaxfgkpgv2jg6lp3mcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjdzqhzm" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs8h42gwmxajrt02khvuuz6ykvm48hl4v7uyjmhjamv05nxav6myds8nv6ar&#39;&gt;nevent1q…v6ar&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Hey the blood supply is limited.
    </content>
    <updated>2026-11-12T16:33:50Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsv7wc2h590z74wwhvlsg6zegy3uva7zp2km6ugyq2vxgvsvqetrrgpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjnxlqze</id>
    
      <title type="html">&amp;gt; I just think what suits the protocol best is playing games ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsv7wc2h590z74wwhvlsg6zegy3uva7zp2km6ugyq2vxgvsvqetrrgpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjnxlqze" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsgw8233cdx6v9wanr5gg3lvlm345w9khkmm8ysxy8rm67asfra4eqnjgrfy&#39;&gt;nevent1q…grfy&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;&amp;gt; I just think what suits the protocol best is playing games with your friends. &lt;br/&gt;&lt;br/&gt;I think nostr kind of works like a permissionless lobste.rs. In that sense public discourse and making new friends is not impossible.
    </content>
    <updated>2026-11-12T16:32:57Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqstyzs5yhm2xueatm2jy3643kjmt25zmgnmxtulmj6m6c3x9tf284cpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rax0tf0</id>
    
      <title type="html">I fail to be scandalized by this, it actually seems more ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqstyzs5yhm2xueatm2jy3643kjmt25zmgnmxtulmj6m6c3x9tf284cpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rax0tf0" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsdyrded2jj7g0fqwgdr2la7djt82xwh89ugp87sqq5p9g230yy4wgpzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtcuu7ctu&#39;&gt;nevent1q…7ctu&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;I fail to be scandalized by this, it actually seems more remarkable that this kind of thing would affect people&amp;#39;s investment decisions. One more reason to not entrust such decisions to an advisor. Different wiring I guess.
    </content>
    <updated>2026-11-12T16:27:59Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqstke8lvuwkz8657wxanrgs3zslc5u0hd7503nqu5mvsv6ypq3xqdgpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjf72x64</id>
    
      <title type="html">Meanwhile, the confident couples: “Honey, look at that ass” ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqstke8lvuwkz8657wxanrgs3zslc5u0hd7503nqu5mvsv6ypq3xqdgpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjf72x64" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsyt6dpss5lgepaagkrl3uuwe3yjf8q6vtf9ejtwsddd7uypj5ut0g5x6dz5&#39;&gt;nevent1q…6dz5&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Meanwhile, the confident couples: &lt;br/&gt;“Honey, look at that ass”&lt;br/&gt;“Hot damn”
    </content>
    <updated>2026-11-12T16:16:40Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqspsmvsa0wf8vyeyg39r53c7tp444tqwfx4aw4lvxad0zm9lywha3qpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rpp3psk</id>
    
      <title type="html">Hi.</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqspsmvsa0wf8vyeyg39r53c7tp444tqwfx4aw4lvxad0zm9lywha3qpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rpp3psk" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqspfszkjjza0yyf037cr0a3v2qg4qlu4zezqv7q36zh84cl6uu323spzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtcqrr7j0&#39;&gt;nevent1q…r7j0&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Hi.
    </content>
    <updated>2026-11-12T13:11:19Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqspk2n5mcyv3upq59y52xj4e6asvgg4ecza8g2kel99lm73h8k6qtcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjywg36q</id>
    
      <title type="html">I believe you are doing what people call “projection”.</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqspk2n5mcyv3upq59y52xj4e6asvgg4ecza8g2kel99lm73h8k6qtcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjywg36q" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs2uddrv3cg9tjuuhajadwhya68f6ur8uwwhfnd86qqeec739dwfccnyjaas&#39;&gt;nevent1q…jaas&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;I believe you are doing what people call “projection”. 
    </content>
    <updated>2026-11-12T12:22:05Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqs2xzpl6grnf8pdrstpdvdwc33f0hdlnv8693hknztfa9vl6elqjjcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzqanzqr60vndz7ywln873awyne6tkakncnll6k5mcsy6ccklqmgzzds5p7m</id>
    
      <title>Nostr event nevent1qqs2xzpl6grnf8pdrstpdvdwc33f0hdlnv8693hknztfa9vl6elqjjcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzqanzqr60vndz7ywln873awyne6tkakncnll6k5mcsy6ccklqmgzzds5p7m</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqs2xzpl6grnf8pdrstpdvdwc33f0hdlnv8693hknztfa9vl6elqjjcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzqanzqr60vndz7ywln873awyne6tkakncnll6k5mcsy6ccklqmgzzds5p7m" />
    <content type="html">
      &lt;a href=&#34;https://www.zonaautonoma.org/bludit/gesti%C3%B3n-de-billeteras-bitcoin-safe&#34;&gt;https://www.zonaautonoma.org/bludit/gesti%C3%B3n-de-billeteras-bitcoin-safe&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/2b7bfcd277f81b8761630613084e1a061c0a5b940f10c41ae48e94caafb4f41c.jpg&#34;&gt; &lt;br/&gt;&lt;br/&gt;Wallet  para multisig y coordinación psbt via nostr
    </content>
    <updated>2026-11-11T18:58:57Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsw5hj3hllseahfhcrtyggz0kuu9d6padsqedygwu54spj0uuvjvsqpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjdvvxd3</id>
    
      <title type="html">You get the same benefits as tokio (cooperative threading) from ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsw5hj3hllseahfhcrtyggz0kuu9d6padsqedygwu54spj0uuvjvsqpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjdvvxd3" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsfg57mhnr04yuyyydzjmtt2mmcd5yq6qfks0vglps27cn0hyjfqscpglykj&#39;&gt;nevent1q…lykj&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;You get the same benefits as tokio (cooperative threading) from other kinds, “non cooperative”, userspace threading solutions like BEAM, jvm, go routines…&lt;br/&gt;&lt;br/&gt;What drives the cost of kernel context switching is most likely dropping caches, tracking a bigger object (so it has a bigger stack to save and restore), spectre mitigations, crossing the userspace-kernelspace barrier and stuff like that.
    </content>
    <updated>2026-11-11T18:09:10Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsq7f4ldlq53wjdg8xmsprytzuvjws87csufp8qpy072upp028gq5gpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rvtsud2</id>
    
      <title type="html">FYI, for key management, rotation and recovery, you can get these ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsq7f4ldlq53wjdg8xmsprytzuvjws87csufp8qpy072upp028gq5gpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rvtsud2" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqqqqqcrwdt5qft2w3qv44tgfuhuw7gel9hl9nqcy9krupvl98aggpzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtc7pnehu&#39;&gt;nevent1q…nehu&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;FYI, for key management, rotation and recovery, you can get these here 👇&lt;br/&gt;&lt;br/&gt;&lt;blockquote class=&#34;border-l-05rem border-l-strongpink border-solid&#34;&gt;&lt;div class=&#34;-ml-4 bg-gradient-to-r from-gray-100 dark:from-zinc-800 to-transparent mr-0 mt-0 mb-4 pl-4 pr-2 py-2&#34;&gt;quoting &lt;br/&gt;&lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Article&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/nevent1qvzqqqqqqypzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqyghwumn8ghj7mn0wd68ytnhd9hx2tcpz4mhxue69uhhyetvv9uju6twddskutnrvvhsqgqgm3gesf2yw9drg7mqfvsnvxpfes4yc9hm6tdu7twqw0dc27shgq6rqdtx&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;nevent1q…qdtx&lt;/a&gt;&lt;/span&gt;&lt;br/&gt; &lt;/div&gt; The way it usually goes, your online identity is your private key. If the key is compromised, there goes your identity. Inkan fixes that.&lt;br/&gt;&lt;br/&gt;You keep a master key in cold storage and a signing key for everyday use. If the signing key ever leaks or gets lost, the master revokes it and delegates to a new one. Same identity, same followers, fresh signing key.&lt;br/&gt;&lt;br/&gt;If you&#39;d like to take a look at the prototype: &lt;a href=&#34;https://www.inkan.cc&#34;&gt;https://www.inkan.cc&lt;/a&gt;. Log in with your NIP-07 extension and say hi to the test identities already walking around. Or make one of your own.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/27d256a9fcba336f567ea6369d0b6984feb72b00b06a5205efe029534113ab99.jpg&#34;&gt; &lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/ca9b087993604f7b7d9473a661c946ecd20015186a112021f4858efa6c1e1808.jpg&#34;&gt; &lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/fa5c1f8e19e3727b6693e6f105baf4eae15c4579343148fc413ac50acfe8edf0.jpg&#34;&gt; &lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/f7002003e981f536bec01789875c17596f6c0eac87526a071c350480029c5827.jpg&#34;&gt; &lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/3f6b865161cba71839910daa4f3c80b46c36400d5e2332ecad927b86003fcaad.jpg&#34;&gt; &lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/a10f0ac6d508ea26602348bbec60bda4659667f75adfda46d9b8354224cd08fe.jpg&#34;&gt; &lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/ce3d8e4de21b3e6f252f5aedbf02dd54323a26c1992c637438fabb9b14ea7afd.jpg&#34;&gt; &lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/60f8a59a68386e2f28b792b63d09729ed494ebe6caddb7f6810e3c10f48b6e82.jpg&#34;&gt; &lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/55000542eb9db4794c8ec07dcdfc93fa5560633afcd754476f6809e9c4bb5ac7.jpg&#34;&gt;  &lt;/blockquote&gt;&lt;br/&gt;I&amp;#39;m happy to help with making a toy identity if you&amp;#39;d like to try it out. Also here is the draft NIP:&lt;br/&gt;&lt;br/&gt;&lt;blockquote class=&#34;border-l-05rem border-l-strongpink border-solid&#34;&gt;&lt;div class=&#34;-ml-4 bg-gradient-to-r from-gray-100 dark:from-zinc-800 to-transparent mr-0 mt-0 mb-4 pl-4 pr-2 py-2&#34;&gt;quoting &lt;br/&gt;&lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Article&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/naddr1qvzqqqr4gupzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqyghwumn8ghj7mn0wd68ytnvv9hxgtcpz9mhxue69uhkummnw3ezuamfdejj7qpgvdhkcepdwd6x7unpvajj66tyv4h8g6t5d9jhxttxdaez6mn0wd68ytthffxkvd2kjmzjnp&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;naddr1qv…zjnp&lt;/a&gt;&lt;/span&gt; &lt;/div&gt; &lt;h2 id=&#34;nip-proposal&#34;&gt;NIP Proposal&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;draft&lt;/code&gt; &lt;code&gt;optional&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;This NIP specifies online identities whose private key can be created in cold storage and stay there permanently. The key never has to touch an internet-connected device, and does not have to be kept close at hand. The identity can nonetheless be used easily for everyday online authentication, such as posting, replying, messaging, or signing in to services.&lt;/p&gt;

&lt;h2 id=&#34;1-how-it-works&#34;&gt;1. How it works&lt;/h2&gt;

&lt;p&gt;The identity-securing key never signs Nostr events itself. It delegates signing authority to delegatee keys, which handle the everyday signing on its behalf. If a delegatee key is lost or stolen, it is replaced, and the identity is untouched.&lt;/p&gt;

&lt;h2 id=&#34;2-delegations-between-keys&#34;&gt;2. Delegations between keys&lt;/h2&gt;

&lt;p&gt;Delegations are time-indexed two-place relations. Between any two key pairs, at any moment, the first either delegates signing authority to the second or it does not. When it does, the second key is authorized to sign on the first&amp;#39;s behalf. When it does not, the second has no such authority.&lt;/p&gt;

&lt;p&gt;Delegations are either direct or indirect. A direct delegation arises when one key has expressly declared that it delegates signing authority to another. An indirect delegation arises because the relation is transitively closed: if X delegates to Y and Y delegates to Z, then X indirectly delegates to Z. This is what lets an identity be built as a chain (master → intermediate → signer), so that events signed by the bottom key are attributed all the way up to the master, while the master, having signed the top link once, retires to cold storage.&lt;/p&gt;

&lt;h2 id=&#34;3-how-a-direct-delegation-is-created&#34;&gt;3. How a direct delegation is created&lt;/h2&gt;

&lt;p&gt;A direct delegation from key pair X to key pair Y is created when both key pairs sign a &lt;strong&gt;Declaration of Delegation of Signing Authority&lt;/strong&gt;, by which X declares that it delegates signing authority to Y and Y declares that it accepts. The signed declaration is then recorded on-chain (the reference implementation uses Ethereum). The delegation begins at the time of the block in which the declaration was recorded, and remains in effect until it is revoked.&lt;/p&gt;

&lt;p&gt;One special case: this holds only if neither X nor Y has previously permanently invalidated itself (§5). If either has, no delegation is created, even though the declaration sits on-chain.&lt;/p&gt;

&lt;p&gt;As part of the declaration, X and Y also specify whether X can revoke the delegation unilaterally or whether Y&amp;#39;s consent is required. The default is unilateral revocation by X, and it is the right default for most users: if Y&amp;#39;s key is ever lost, X can still revoke it alone. Were Y&amp;#39;s consent required, a lost Y could never be revoked, because Y would no longer be available to sign.&lt;/p&gt;

&lt;h2 id=&#34;4-how-a-direct-delegation-is-terminated&#34;&gt;4. How a direct delegation is terminated&lt;/h2&gt;

&lt;p&gt;A direct delegation from X to Y is terminated when X signs a &lt;strong&gt;Declaration of Revocation of Signing Authority&lt;/strong&gt; and records it on-chain, with Y&amp;#39;s signature too if the original delegation required it. The delegation terminates at the time of the block in which the revocation was recorded. Everything Y signed while the delegation was in effect stays attributed to X; nothing it signs afterward does. A stolen signer therefore damages only the window between key compromise and revocation, and that window is the user&amp;#39;s to close.&lt;/p&gt;

&lt;p&gt;When a delegation and a revocation between the same X and Y land in the same block, the revocation is by convention treated as occurring first and the delegation thereafter. The convention is a tiebreaker for cases that block timestamps cannot order.&lt;/p&gt;

&lt;h2 id=&#34;5-permanent-key-invalidation&#34;&gt;5. Permanent key invalidation&lt;/h2&gt;

&lt;p&gt;The third declaration is the &lt;strong&gt;Declaration of Permanent Invalidation of a Key Pair&lt;/strong&gt;, signed by a key pair against itself, declaring that from then on it can no longer participate in any direct delegation, as delegator or delegatee. Once recorded on-chain, it takes effect at the time of its block. From that point, all existing direct delegations involving the key are terminated, and no new one involving it can come into existence, even if a declaration naming it is later recorded.&lt;/p&gt;

&lt;p&gt;Its main use is invalidating a compromised master key. Such a key has no delegator above it, so ordinary revocation is unavailable; permanent invalidation lets its owner withdraw it from the system entirely.&lt;/p&gt;

&lt;h2 id=&#34;6-delegation-timelines&#34;&gt;6. Delegation timelines&lt;/h2&gt;

&lt;p&gt;A client can read the three kinds of declaration from the chain and, for any pubkey and any past moment up to the present, compute the direct delegations that pubkey was involved in at that moment. The indirect ones follow by transitive closure. So for any pubkey a client can compile a complete timeline of every direct and indirect delegation it has ever been involved in, and trace each back to the declaration that established it. Because the rules are fixed and the data is public, every client computes the same timeline, and no server has to be trusted to report it.&lt;/p&gt;

&lt;h2 id=&#34;7-bitcoin-timestamping-of-events&#34;&gt;7. Bitcoin timestamping of events&lt;/h2&gt;

&lt;p&gt;Attribution needs an objective, auditable rule for when the signing of each event is deemed to have occurred. A self-declared &lt;code&gt;created_at&lt;/code&gt; proves nothing on its own.&lt;/p&gt;

&lt;p&gt;Events are anchored to Bitcoin using &lt;strong&gt;OpenTimestamps&lt;/strong&gt; (OTS). An OTS proof for an event establishes that the event and its signature existed by the time of a specific Bitcoin block. An event&amp;#39;s &lt;code&gt;created_at&lt;/code&gt; is then treated as its objective signing time when a proof shows the event and its signature existed shortly after that time. The length of the &amp;#34;shortly after&amp;#34; window is configurable; the reference implementation defaults to four hours. Events without such a proof are treated as if they carried no valid signature at all: they are not displayed, and are attributed to no one.&lt;/p&gt;

&lt;p&gt;A proof over the event id alone would show only that the event&amp;#39;s contents existed by the attested block, not that anyone had yet signed them. Binding the signature into the proof as well shows that the signature itself existed by then, which is what an objective signing time requires. These proofs are published as kind &lt;code&gt;31045&lt;/code&gt; events (§12).&lt;/p&gt;

&lt;h2 id=&#34;8-attribution-of-events&#34;&gt;8. Attribution of events&lt;/h2&gt;

&lt;p&gt;We now know, for any past time T and any two keys X and Y, whether X delegated (directly or indirectly) to Y at T; and for any event Y signed with both a valid signature and a valid OTS anchor, we have an objective signing time. Together these give a well-defined attribution rule:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;An event E is attributed to a key X if and only if some key Y validly signed E at a time T and, as of T, X delegated signing authority to Y.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;So a text note signed by a delegatee Y during a valid delegation period from X appears on X&amp;#39;s timeline and is displayed there under X&amp;#39;s profile, as if posted by X, even though X&amp;#39;s own key never signed it.&lt;/p&gt;

&lt;h2 id=&#34;9-two-profiles-one-identity&#34;&gt;9. Two profiles, one identity&lt;/h2&gt;

&lt;p&gt;You log in with your signer key and sign events with it, exactly as in any other Nostr client. Those events appear on the signer&amp;#39;s own profile, and in addition on the profile of each of its delegators, up to your top-level identity.&lt;/p&gt;

&lt;p&gt;You set the signer&amp;#39;s profile by publishing a kind-0 event as usual. Separately, a signer can also set a profile &lt;em&gt;for&lt;/em&gt; each of its current delegators, so that a top-level identity can present a face to the world without signing any event itself. This delegator-profile mechanism is kind &lt;code&gt;31065&lt;/code&gt; (§12).&lt;/p&gt;

&lt;p&gt;Your identity&amp;#39;s profile is what you present to the world. Others should follow and interact with the identity, not with the signer beneath it. The signer is ephemeral and expected to be replaced; the identity is permanent, and is the thing followers should attach to.&lt;/p&gt;

&lt;h2 id=&#34;10-disavowal&#34;&gt;10. Disavowal&lt;/h2&gt;

&lt;p&gt;When making a delegation declaration, the delegator may declare an avowal start time and an avowal end time. When making a revocation declaration, the revoker may declare a disavowal start time and a disavowal end time. A start time of zero is interpreted as the time at which the declaration was recorded on-chain; an end time of zero means unbounded.&lt;/p&gt;

&lt;p&gt;For keys X and Y, take the latest delegation or revocation declaration between them recorded before any permanent invalidation of either (§5). If it is a delegation declaration, X avows Y&amp;#39;s actions at exactly the times T inside its avowal window; if a revocation declaration, at exactly the times T outside its disavowal window; provided, in both cases, that X directly delegated to Y at T. Y&amp;#39;s actions at T are the events Y validly signed with objective signing time T (§7).&lt;/p&gt;

&lt;p&gt;Avowal composes along delegation paths: X currently avows S&amp;#39;s actions at T if the relevant declaration between X and S avows them directly, or if, for some key Y, X avows Y&amp;#39;s actions at T, X avows Y&amp;#39;s actions at the present moment, and Y currently avows S&amp;#39;s actions at T.&lt;/p&gt;

&lt;p&gt;Clients can filter events whose signing the identity currently disavows out of the identity&amp;#39;s timeline, or display them with a disavowal badge.&lt;/p&gt;

&lt;h2 id=&#34;11-re-ratification&#34;&gt;11. Re-ratification&lt;/h2&gt;

&lt;p&gt;A disavowed window covers everything the disavowed key signed within it, including events whose signing was caused by the identity&amp;#39;s legitimate owner. The identity can in that situation make a kind &lt;code&gt;31066&lt;/code&gt; re-ratification declaration as described in §12.3 below, specifying the events it re-ratifies in the &lt;code&gt;e&lt;/code&gt; tags of that declaration. If the declaration is valid and effective, a client treats these events as re-ratified, until a disavowal recorded after the declaration&amp;#39;s anchoring block prevails over it (§12.3) or a later declaration governs in its place.&lt;/p&gt;

&lt;h2 id=&#34;12-event-kinds&#34;&gt;12. Event kinds&lt;/h2&gt;

&lt;p&gt;This NIP defines three &lt;strong&gt;addressable&lt;/strong&gt; event kinds (kinds 30000 to 39999 in NIP-01, where the latest event for a given &lt;code&gt;(pubkey, kind, d-tag)&lt;/code&gt; replaces any earlier one).&lt;/p&gt;

&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Kind&lt;/th&gt;
&lt;th&gt;Name&lt;/th&gt;
&lt;th&gt;&lt;code&gt;d&lt;/code&gt; tag&lt;/th&gt;
&lt;th&gt;Signed by&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;

&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;31045&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Bitcoin timestamp&lt;/td&gt;
&lt;td&gt;id of the referenced event&lt;/td&gt;
&lt;td&gt;any party&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;31065&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Attributed profile&lt;/td&gt;
&lt;td&gt;the delegator&amp;#39;s pubkey&lt;/td&gt;
&lt;td&gt;a delegatee&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;31066&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Re-ratification&lt;/td&gt;
&lt;td&gt;the re-ratifying pubkey&lt;/td&gt;
&lt;td&gt;an avowed key&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

&lt;h3 id=&#34;12-1-kind-31045-bitcoin-timestamp&#34;&gt;12.1 Kind &lt;code&gt;31045&lt;/code&gt;: Bitcoin timestamp&lt;/h3&gt;

&lt;p&gt;A &lt;code&gt;31045&lt;/code&gt; event carries an OpenTimestamps proof for another event (§7). It is addressable by the referenced event&amp;#39;s id, so a consumer finds the proof for an event E by querying kind &lt;code&gt;31045&lt;/code&gt; with &lt;code&gt;#d = [E.id]&lt;/code&gt;, whoever published it. Any valid proof for E is as good as any other, because the proof rests on Bitcoin and not on its publisher.&lt;/p&gt;

&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tag&lt;/th&gt;
&lt;th&gt;Required&lt;/th&gt;
&lt;th&gt;Meaning&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;

&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;d&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;td&gt;Id of the referenced event. The addressable key.&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;s&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;td&gt;Signature of the referenced event. With &lt;code&gt;d&lt;/code&gt;, binds the proof to a signed event, not just an id.&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;p&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;Author pubkey of the referenced event.&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;b&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;Bitcoin block height of the attestation, or &lt;code&gt;not_yet_available&lt;/code&gt; while pending.&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;t&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;Bitcoin block time (unix seconds), or &lt;code&gt;not_yet_available&lt;/code&gt; while pending.&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;c&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;&lt;code&gt;created_at&lt;/code&gt; of the referenced event, when known.&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;alt&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;NIP-31 summary, e.g. &lt;code&gt;Complete Bitcoin Timestamp&lt;/code&gt;.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;code&gt;content&lt;/code&gt; is the base64-encoded OpenTimestamps (&lt;code&gt;.ots&lt;/code&gt;) proof. Its leaf must commit to &lt;code&gt;sha256(referenced_id || referenced_signature)&lt;/code&gt;, the concatenation of the referenced event&amp;#39;s 32-byte id and 64-byte signature. A consumer should verify the proof against its own view of the Bitcoin chain rather than rely on a relay having accepted it.&lt;/p&gt;

&lt;p&gt;Only &lt;code&gt;d&lt;/code&gt; and &lt;code&gt;s&lt;/code&gt;, together with a verifiable &lt;code&gt;content&lt;/code&gt; proof, are required to verify a timestamp. Every single-letter tag (&lt;code&gt;d&lt;/code&gt;, &lt;code&gt;p&lt;/code&gt;, &lt;code&gt;s&lt;/code&gt;, &lt;code&gt;b&lt;/code&gt;, &lt;code&gt;t&lt;/code&gt;, &lt;code&gt;c&lt;/code&gt;) is relay-indexed, so it can also serve as a query key, for example finding proofs by referenced author (&lt;code&gt;#p&lt;/code&gt;) or by anchoring block (&lt;code&gt;#b&lt;/code&gt;). &lt;code&gt;b&lt;/code&gt; and &lt;code&gt;t&lt;/code&gt; additionally duplicate what the proof itself attests; &lt;code&gt;alt&lt;/code&gt; is not indexed and serves only as a NIP-31 display label.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;{
  &amp;#34;kind&amp;#34;: 31045,
  &amp;#34;tags&amp;#34;: [
    [&amp;#34;d&amp;#34;, &amp;#34;&amp;lt;referenced-event-id&amp;gt;&amp;#34;],
    [&amp;#34;p&amp;#34;, &amp;#34;&amp;lt;referenced-event-author&amp;gt;&amp;#34;],
    [&amp;#34;s&amp;#34;, &amp;#34;&amp;lt;referenced-event-signature&amp;gt;&amp;#34;],
    [&amp;#34;b&amp;#34;, &amp;#34;&amp;lt;bitcoin-block-height&amp;gt;&amp;#34;],
    [&amp;#34;t&amp;#34;, &amp;#34;&amp;lt;bitcoin-block-time&amp;gt;&amp;#34;],
    [&amp;#34;alt&amp;#34;, &amp;#34;Complete Bitcoin Timestamp&amp;#34;],
    [&amp;#34;c&amp;#34;, &amp;#34;&amp;lt;referenced-event-created-at&amp;gt;&amp;#34;]
  ],
  &amp;#34;content&amp;#34;: &amp;#34;&amp;lt;base64 .ots proof committing to sha256(id||sig)&amp;gt;&amp;#34;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;h3 id=&#34;12-2-kind-31065-attributed-profile&#34;&gt;12.2 Kind &lt;code&gt;31065&lt;/code&gt;: Attributed profile&lt;/h3&gt;

&lt;p&gt;A &lt;code&gt;31065&lt;/code&gt; event is a profile for one key, published by another: how an identity that never signs anything nonetheless presents a face to the world (§9). Its &lt;code&gt;d&lt;/code&gt; tag is the delegator&amp;#39;s pubkey, the identity the profile describes, while the event is signed by a delegatee authorized to sign for it. The defining property is that &lt;code&gt;event.pubkey&lt;/code&gt;, the signer, is not the subject &lt;code&gt;d&lt;/code&gt;. A consumer must confirm, against the delegation timeline of §6, that the signer was a current delegatee of the subject before honoring the profile; one signed by a non-delegatee is ignored.&lt;/p&gt;

&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tag&lt;/th&gt;
&lt;th&gt;Required&lt;/th&gt;
&lt;th&gt;Meaning&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;

&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;d&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;td&gt;The subject: the delegator&amp;#39;s pubkey.&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;alt&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;td&gt;The exact string &lt;code&gt;Attributed profile&lt;/code&gt;.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;code&gt;content&lt;/code&gt; is a JSON object carrying the subject&amp;#39;s presentation. Its kind-0-style fields (&lt;code&gt;name&lt;/code&gt;, &lt;code&gt;display_name&lt;/code&gt;, &lt;code&gt;about&lt;/code&gt;, &lt;code&gt;picture&lt;/code&gt;, &lt;code&gt;banner&lt;/code&gt;, &lt;code&gt;website&lt;/code&gt;, &lt;code&gt;nip05&lt;/code&gt;, &lt;code&gt;lud16&lt;/code&gt;) mean what they mean in NIP-01 and NIP-05. It may also carry the subject&amp;#39;s follow list, mute list, and a map giving relay lists for the members of the identity&amp;#39;s delegation network (the keys tied to it by delegation), so a client can present and route for the identity without a further fetch.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;{
  &amp;#34;kind&amp;#34;: 31065,
  &amp;#34;pubkey&amp;#34;: &amp;#34;&amp;lt;delegatee-that-signs&amp;gt;&amp;#34;,
  &amp;#34;tags&amp;#34;: [
    [&amp;#34;d&amp;#34;, &amp;#34;&amp;lt;delegator-pubkey-the-profile-is-for&amp;gt;&amp;#34;],
    [&amp;#34;alt&amp;#34;, &amp;#34;Attributed profile&amp;#34;]
  ],
  &amp;#34;content&amp;#34;: &amp;#34;{\&amp;#34;name\&amp;#34;:\&amp;#34;…\&amp;#34;,\&amp;#34;display_name\&amp;#34;:\&amp;#34;…\&amp;#34;,\&amp;#34;about\&amp;#34;:\&amp;#34;…\&amp;#34;,\&amp;#34;website\&amp;#34;:\&amp;#34;…\&amp;#34;,\&amp;#34;nip05\&amp;#34;:\&amp;#34;…\&amp;#34;,\&amp;#34;picture\&amp;#34;:\&amp;#34;…\&amp;#34;,\&amp;#34;relay_lists_by_pubkey\&amp;#34;:{\&amp;#34;&amp;lt;pubkey&amp;gt;\&amp;#34;:{\&amp;#34;readWriteRelays\&amp;#34;:[[\&amp;#34;r\&amp;#34;,\&amp;#34;&amp;lt;relay-url&amp;gt;\&amp;#34;,\&amp;#34;&amp;lt;scope&amp;gt;\&amp;#34;]],\&amp;#34;favoriteRelays\&amp;#34;:[\&amp;#34;&amp;lt;relay-url&amp;gt;\&amp;#34;],\&amp;#34;relaySets\&amp;#34;:[{\&amp;#34;id\&amp;#34;:\&amp;#34;…\&amp;#34;,\&amp;#34;name\&amp;#34;:\&amp;#34;…\&amp;#34;,\&amp;#34;relayUrls\&amp;#34;:[\&amp;#34;&amp;lt;relay-url&amp;gt;\&amp;#34;]}]}},\&amp;#34;publicly_muted_pubkey_hex_ids\&amp;#34;:[\&amp;#34;&amp;lt;muted-pubkey&amp;gt;\&amp;#34;],\&amp;#34;current_snapshot_of_dir_indir_followed_pubkey\&amp;#34;:[[\&amp;#34;p\&amp;#34;,\&amp;#34;&amp;lt;followed-pubkey&amp;gt;\&amp;#34;]]}&amp;#34;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Because &lt;code&gt;31065&lt;/code&gt; is addressable, the current profile for an identity is simply the latest one whose &lt;code&gt;d&lt;/code&gt; is that identity, signed by a key that is currently its delegatee. When the signer is rotated, the new signer republishes, and the identity&amp;#39;s face carries across the change unbroken.&lt;/p&gt;

&lt;h3 id=&#34;12-3-kind-31066-re-ratification-declaration&#34;&gt;12.3 Kind &lt;code&gt;31066&lt;/code&gt;: Re-ratification declaration&lt;/h3&gt;

&lt;p&gt;A &lt;code&gt;31066&lt;/code&gt; event can be used by key A to re-ratify an event signed by key B with objective signing time T (§7), where A currently disavows actions taken by B at T (§10). The &lt;code&gt;d&lt;/code&gt; tag contains the re-ratifying pubkey and each &lt;code&gt;e&lt;/code&gt; tag is the id of a re-ratified event. The re-ratification is valid only if the &lt;code&gt;31066&lt;/code&gt; event is signed by a key whose actions the re-ratifying key currently avows (which includes the re-ratifying key itself), and only if no &lt;code&gt;e&lt;/code&gt; tag contains the declaration&amp;#39;s own event id. The &lt;code&gt;31066&lt;/code&gt; event must be submitted for Bitcoin timestamping and is effective starting from the time of the block in which its proof is anchored. If there are multiple valid and effective &lt;code&gt;31066&lt;/code&gt; events with the same re-ratifying pubkey in their &lt;code&gt;d&lt;/code&gt; tag, the one with the latest &lt;code&gt;created_at&lt;/code&gt; governs. A re-ratification overrides only disavowals recorded on-chain before the time of its anchoring block; a disavowal recorded after that time prevails over the re-ratification.&lt;/p&gt;

&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tag&lt;/th&gt;
&lt;th&gt;Required&lt;/th&gt;
&lt;th&gt;Meaning&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;

&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;d&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;td&gt;The re-ratifying pubkey.&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;e&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;yes, repeated&lt;/td&gt;
&lt;td&gt;Id of a re-ratified event, one tag per id.&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td&gt;&lt;code&gt;alt&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;td&gt;&lt;code&gt;Re-ratification declaration&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

&lt;pre&gt;&lt;code&gt;{
  &amp;#34;kind&amp;#34;: 31066,
  &amp;#34;pubkey&amp;#34;: &amp;#34;&amp;lt;signing-key&amp;gt;&amp;#34;,
  &amp;#34;tags&amp;#34;: [
    [&amp;#34;d&amp;#34;, &amp;#34;&amp;lt;re-ratifying-pubkey&amp;gt;&amp;#34;],
    [&amp;#34;e&amp;#34;, &amp;#34;&amp;lt;re-ratified-event-id&amp;gt;&amp;#34;],
    [&amp;#34;e&amp;#34;, &amp;#34;&amp;lt;re-ratified-event-id&amp;gt;&amp;#34;],
    [&amp;#34;alt&amp;#34;, &amp;#34;Re-ratification declaration&amp;#34;]
  ],
  &amp;#34;content&amp;#34;: &amp;#34;&amp;#34;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;h2 id=&#34;13-reference-implementation&#34;&gt;13. Reference implementation&lt;/h2&gt;

&lt;p&gt;Inkan (&lt;code&gt;https://www.inkan.cc&lt;/code&gt;) implements this specification as a working Nostr client and a cooperating relay at &lt;code&gt;wss://relay.inkan.cc&lt;/code&gt;. Delegation, revocation, permanent invalidation, avowal, and disavowal are recorded by an Ethereum contract deployed at &lt;code&gt;0x385C0A272b1f44687cb360557b25827bD7CdB7eb&lt;/code&gt;, which is the normative reference for the exact on-chain declaration encoding. A separate, network-disconnected &amp;#34;Management Utility&amp;#34; generates keys and signs declarations on an air-gapped machine, so a master key can be created and used to bootstrap an identity without ever touching a networked host.&lt;/p&gt;
 &lt;/blockquote&gt;
    </content>
    <updated>2026-11-11T18:02:54Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsgdk570k3kqtygn0l2y6phchkzw6a8sqt2ukjl0vgz3h3emepe7vqpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjqzd77h</id>
    
      <title type="html">&amp;gt;be this guy &amp;gt;bitch that nobody is seeing replies sent by ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsgdk570k3kqtygn0l2y6phchkzw6a8sqt2ukjl0vgz3h3emepe7vqpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjqzd77h" />
    <content type="html">
      &amp;gt;be this guy&lt;br/&gt;&amp;gt;bitch that nobody is seeing replies sent by primol users&lt;br/&gt;&amp;gt;have the reason explained in a way that even people with room temperature IQ would understand that the issue is Primal&lt;br/&gt;&amp;gt;be angry at reality&lt;blockquote class=&#34;border-l-05rem border-l-strongpink border-solid&#34;&gt;&lt;div class=&#34;-ml-4 bg-gradient-to-r from-gray-100 dark:from-zinc-800 to-transparent mr-0 mt-0 mb-4 pl-4 pr-2 py-2&#34;&gt;quoting &lt;br/&gt;&lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Article&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/nevent1qqsfalx3z9j70fqexgus6pcdtv5ztvx7qs3hyk9twq8j8yuhyjwq6qczypmhdsedfvw3azlj4946h66r4kddu9tm6d3a3xu8ld37du292kygsqcyqqqqqqgprpmhxue69uhhqun9d45h2mfwwpexjmtpdshxuet55ady9x&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;nevent1q…dy9x&lt;/a&gt;&lt;/span&gt; &lt;/div&gt; Didn&#39;t ask, stop wasting my fucking time with random shit &lt;/blockquote&gt;
    </content>
    <updated>2026-11-11T17:24:53Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqs8uhgqtnp487jx7aza7kzg84s7v08nrvp8wvq0tzev4kl7n8mupucpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjd76tuc</id>
    
      <title type="html">Would you look at that, Jumble does the sane thing and actually ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqs8uhgqtnp487jx7aza7kzg84s7v08nrvp8wvq0tzev4kl7n8mupucpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjd76tuc" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqhgxjrxn8myky70wjdzpnxlyzt3qpq5dndce26v6rzuefuesqn9qk7d3ye&#39;&gt;nevent1q…d3ye&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Would you look at that, Jumble does the sane thing and actually sends your notes into the inbox relays of the person you are replying to!&lt;br/&gt; &lt;img src=&#34;https://blossom.ditto.pub/46b9cbacc922fc478da9896d39774385c03b06d8ef8145983bc207be6238d67c.jpg&#34;&gt; 
    </content>
    <updated>2026-11-11T16:13:37Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsxne4eymwrkshx5zghkvsju8z8tpsduzv905dqyte9f3l26ye6gpspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjk6jhx7</id>
    
      <title type="html">Yep, and to port shit away from Linux.</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsxne4eymwrkshx5zghkvsju8z8tpsduzv905dqyte9f3l26ye6gpspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjk6jhx7" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsvdgnft6rf06xp8yw0332gr6mnm22jwaffqlhd0v23f9vg2ka403s8lc4l0&#39;&gt;nevent1q…c4l0&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Yep, and to port shit away from Linux.
    </content>
    <updated>2026-11-11T16:12:02Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsdk6cg9t0yde2ywzmz22jrl4wuxaavygxxdaxfzctzl9xr8sw04kgpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjm28l5x</id>
    
      <title type="html">If you look closely, you will notice that your beloved Primol ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsdk6cg9t0yde2ywzmz22jrl4wuxaavygxxdaxfzctzl9xr8sw04kgpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjm28l5x" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqszzvzqz5fv7l8hgk745esuvp9xzaszhy4z7dz7hcjpehqhg83930g8zjxar&#39;&gt;nevent1q…jxar&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;If you look closely, you will notice that your beloved Primol isn’t bothering with sending your replies into the inbox of the people you are replying to, instead they only write your note into their own relay (and they don’t even bother sending to the relays you have set as your preferred outbox).&lt;br/&gt;&lt;br/&gt;This is a Primal problem, not a nostr problem (for once).&lt;br/&gt; &lt;img src=&#34;https://blossom.ditto.pub/320dfae8333504cf336190c4d0fb32457254fffe7bab95a48071d796f721c3c9.jpg&#34;&gt; &lt;br/&gt; &lt;img src=&#34;https://blossom.ditto.pub/5950d70daf570b9bc67ef3aebbbc7d341f51ac5f3ea6c6fa304a098a7cc7b55d.jpg&#34;&gt; &lt;br/&gt; &lt;img src=&#34;https://blossom.ditto.pub/0bd58d4fcfa4fc7ee97cc3d1bf44ae3021a45abd3c14cf1214c77f1a37078b91.jpg&#34;&gt; 
    </content>
    <updated>2026-11-11T16:05:56Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsx0rp567uqjdfyrm58rxqc88qyfssd5ymknzjxfvtat6cjm5w57cspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjh6k5s5</id>
    
      <title type="html">Fuck this shit man, I want the illusions back!</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsx0rp567uqjdfyrm58rxqc88qyfssd5ymknzjxfvtat6cjm5w57cspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjh6k5s5" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsp4x3y8cnnwl2k6fpc0442hwaalf760gju66nztapcrpemm2h70xqvy0zvd&#39;&gt;nevent1q…0zvd&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Fuck this shit man, I want the illusions back!
    </content>
    <updated>2026-11-11T15:12:46Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqs9mhq39gdvry5085x0ag9p43une3rgjwjw9uq8rlht3sl5qcspryqpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjtlyu0w</id>
    
      <title type="html">I would much rather have an edit button like any normal human.</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqs9mhq39gdvry5085x0ag9p43une3rgjwjw9uq8rlht3sl5qcspryqpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjtlyu0w" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsy7dz84fggsy2y4p6f0lhfyqx4tdug5pupwr9mn875nnul9kj8e3qdkjzjq&#39;&gt;nevent1q…jzjq&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;I would much rather have an edit button like any normal human.
    </content>
    <updated>2026-11-11T15:09:15Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsf0muaupk9d4zmkdpqn9xd605cnt8qdzk5kag2tvuj68vdag75thcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjtd8lgj</id>
    
      <title type="html">“Alleged Intelligence” I am stealing this :PepeLaugh: ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsf0muaupk9d4zmkdpqn9xd605cnt8qdzk5kag2tvuj68vdag75thcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjtd8lgj" />
    <content type="html">
      “Alleged Intelligence” I am stealing this :PepeLaugh: &lt;blockquote class=&#34;border-l-05rem border-l-strongpink border-solid&#34;&gt;&lt;div class=&#34;-ml-4 bg-gradient-to-r from-gray-100 dark:from-zinc-800 to-transparent mr-0 mt-0 mb-4 pl-4 pr-2 py-2&#34;&gt;quoting &lt;br/&gt;&lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Article&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/nevent1qqsrmdvnzdmz5r2ss50ldlsvyvdvayw8fwrdww6wqhq8284lh9uyrtczypvx982euykjxhaw8c9ngssdg3q3w9a42r0prvjaxv2zfuhk7pjvjqcyqqqqqqgpz4mhxue69uhhyetvv9ujuerfw36x7tnsw43qm2ztem&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;nevent1q…ztem&lt;/a&gt;&lt;/span&gt; &lt;/div&gt; [1/2] &lt;a href=&#34;https://www.theguardian.com/technology/2026/oct/18/anthropic-ai-worm-worries&#34;&gt;https://www.theguardian.com/technology/2026/oct/18/anthropic-ai-worm-worries&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;The latest feat of Alleged Intelligence is an internet worm that infects &#34;smart&#34; devices. &#34;Smart&#34; is marketing speak for products designed to be remote controlled, primarily by the manufacturer but secondarily by the purchaser and the purchaser&#39;s friends and associates, all of whom will be snooped on. They are the ideal prey for conversion into a botnet. Then someone other than the manufacturer can exercise &lt;/blockquote&gt;
    </content>
    <updated>2026-11-11T15:01:26Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsqqqz0ddh42k025easmt8mx8s2uv70nc55ykc59px3jq7a5p5lcrgpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjlg88w0</id>
    
      <title type="html">One of the safest and fastest microkernels out there. ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsqqqz0ddh42k025easmt8mx8s2uv70nc55ykc59px3jq7a5p5lcrgpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjlg88w0" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqswxjsqfm6jewx8eljdjt6llakwf5p3wqz7tsy6hezyksce7kcumwgpz3mhxue69uhnzv3h9cczuvpwxyarxve4x5slhszq&#39;&gt;nevent1q…hszq&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;One of the safest and fastest microkernels out there. Capabilities based, hard realtime/first class mixed criticality support, formally verified and probably being used by drones to bomb children right now. So you know it’s good.
    </content>
    <updated>2026-11-11T14:40:13Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsq6nen9qvh2l3363xvjjzkr5zy0vf59xpqjzeftn0w2cgtzl8mg3spz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjdgagnt</id>
    
      <title type="html">@npub1gcx…nj5z</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsq6nen9qvh2l3363xvjjzkr5zy0vf59xpqjzeftn0w2cgtzl8mg3spz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjdgagnt" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqspjwtf0q4ntslsttx9v9dkrmv6hnv4hhhanketu4577w0m7cepv2qupwz5z&#39;&gt;nevent1q…wz5z&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;&lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Person&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/npub1gcxzte5zlkncx26j68ez60fzkvtkm9e0vrwdcvsjakxf9mu9qewqlfnj5z&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;&lt;span&gt;VitorPamplona&lt;/span&gt; (&lt;span class=&#34;italic&#34;&gt;npub1gcx…nj5z&lt;/span&gt;)&lt;/a&gt;&lt;/span&gt; 
    </content>
    <updated>2026-11-11T13:05:21Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqs9vzqhg5ua8f8p68l2rd45jh7rnwp4eygvcpmyj5emxrqd5q4924spz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjnm42d4</id>
    
      <title type="html">Seeing as Linux is full of shit and clankers are good at maths, ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqs9vzqhg5ua8f8p68l2rd45jh7rnwp4eygvcpmyj5emxrqd5q4924spz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjnm42d4" />
    <content type="html">
      Seeing as Linux is full of shit and clankers are good at maths, isn’t it better to point them at something formally proven like seL4?&lt;blockquote class=&#34;border-l-05rem border-l-strongpink border-solid&#34;&gt;&lt;div class=&#34;-ml-4 bg-gradient-to-r from-gray-100 dark:from-zinc-800 to-transparent mr-0 mt-0 mb-4 pl-4 pr-2 py-2&#34;&gt;quoting &lt;br/&gt;&lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Article&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/nevent1qqsz9nn27674x2dat5hfwfzfs2cszk47ghfuzk5pae22uckngsthv4gzyr2f4ypr5gwm5xeusvrv5d5m7vjrmz6yhrctd5gevcrl0vyep75d7qcyqqqqqqgprpmhxue69uhhyetvv9ujumn0wdnxcctjv5hxxmmdhyqru6&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;nevent1q…qru6&lt;/a&gt;&lt;/span&gt; &lt;/div&gt; 👀&lt;br/&gt; &lt;img src=&#34;https://file.nostrmedia.com/p/d49a9023a21dba1b3c8306ca369bf3243d8b44b8f0b6d1196607f7b0990fa8df/a9d78e4c5b8edba600eaaab441cf915585a28055491243ccfcc00646335424f5.jpg&#34;&gt;  &lt;/blockquote&gt;
    </content>
    <updated>2026-11-11T13:01:09Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqszxpaqpnfwrrmctj3c5mqmll2cprgtfpgrxd2c36ndn59fx2ujw8qpz3mhxue69uhhyetvv9uju6twddskutnrvvpzqanzqr60vndz7ywln873awyne6tkakncnll6k5mcsy6ccklqmgzztf7wev</id>
    
      <title>Nostr event nevent1qqszxpaqpnfwrrmctj3c5mqmll2cprgtfpgrxd2c36ndn59fx2ujw8qpz3mhxue69uhhyetvv9uju6twddskutnrvvpzqanzqr60vndz7ywln873awyne6tkakncnll6k5mcsy6ccklqmgzztf7wev</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqszxpaqpnfwrrmctj3c5mqmll2cprgtfpgrxd2c36ndn59fx2ujw8qpz3mhxue69uhhyetvv9uju6twddskutnrvvpzqanzqr60vndz7ywln873awyne6tkakncnll6k5mcsy6ccklqmgzztf7wev" />
    <content type="html">
      &lt;a href=&#34;https://www.zonaautonoma.org/bludit/corporativismo-vigilante-palantir-en-las-sombras-de-las-democracias&#34;&gt;https://www.zonaautonoma.org/bludit/corporativismo-vigilante-palantir-en-las-sombras-de-las-democracias&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/a74be191f5acb112c9686c6ac3179d5aab7329e18a4ec80072084badde82c15f.jpg&#34;&gt; &lt;br/&gt;&lt;br/&gt;el panopticon se asoma.
    </content>
    <updated>2026-11-11T03:04:59Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqs89qcehx7sljkyjc36hrmvqrtwm7qzhhncjxya76uzhqts8txxpmspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kj34pfgr</id>
    
      <title type="html">Gonna use this as my tinder profile picture from now on</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqs89qcehx7sljkyjc36hrmvqrtwm7qzhhncjxya76uzhqts8txxpmspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kj34pfgr" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs8peqp4ghazeyz4mq2tnrn6qsucmg44lchvqekfde9gw9k8f08s2qdem9pk&#39;&gt;nevent1q…m9pk&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Gonna use this as my tinder profile picture from now on
    </content>
    <updated>2026-11-11T01:23:21Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsyqhphyugj8k5pzhvpks8qvta8cvdcc7qev8xw2n4qscutedefpgspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjytfhww</id>
    
      <title type="html">I would assume it is mostly cpu bound</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsyqhphyugj8k5pzhvpks8qvta8cvdcc7qev8xw2n4qscutedefpgspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjytfhww" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsvft439vxpmqp55k45ljs0zhgd9ml5zhta4aclcln07wdtw8zcpesunq8m7&#39;&gt;nevent1q…q8m7&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;I would assume it is mostly cpu bound
    </content>
    <updated>2026-11-10T15:51:13Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqswv5xn46s6lqzk64cufc7hk85vp44ax463mr795a6nctsm7qjktwqpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjpyg7w8</id>
    
      <title type="html">WORD5 #767 5/6* (Hard Mode) ⬛⬛⬛⬛⬛ ⬛⬛⬛⬛⬛ ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqswv5xn46s6lqzk64cufc7hk85vp44ax463mr795a6nctsm7qjktwqpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjpyg7w8" />
    <content type="html">
      WORD5 #767 5/6* (Hard Mode)&lt;br/&gt;&lt;br/&gt;⬛⬛⬛⬛⬛&lt;br/&gt;⬛⬛⬛⬛⬛&lt;br/&gt;🟪🟧🟪⬛⬛&lt;br/&gt;🟪🟪🟪⬛🟪&lt;br/&gt;🟪🟪🟪🟪🟪&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://otherstuff.ai/word5/&#34;&gt;https://otherstuff.ai/word5/&lt;/a&gt;
    </content>
    <updated>2026-11-10T15:39:08Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsr5v3z58357ssqygmdpunv6wvslj70zhr4sp9enzc4y3cf6y6eplcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzqkfzjh8jkzd8l9247sadku6vhm52snhgjtknlyeku6sfkeqn5rdeylzhud</id>
    
      <title type="html">the last one fork was ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsr5v3z58357ssqygmdpunv6wvslj70zhr4sp9enzc4y3cf6y6eplcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzqkfzjh8jkzd8l9247sadku6vhm52snhgjtknlyeku6sfkeqn5rdeylzhud" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs9gv9xc90drs22wn0fw0g89z0mtm7p4np5crg7634yxxlje2agc7spr9mhxue69uhhyetvv9ujuumwdae8gtnnda3kjctv9umhjs3t&#39;&gt;nevent1q…js3t&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;the last one  fork was &lt;a href=&#34;https://github.com/codonaft/zapthreads-codonaft&#34;&gt;https://github.com/codonaft/zapthreads-codonaft&lt;/a&gt;&lt;br/&gt;what you needed it for?
    </content>
    <updated>2026-11-09T15:08:10Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqs9gv9xc90drs22wn0fw0g89z0mtm7p4np5crg7634yxxlje2agc7spz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjcupkxk</id>
    
      <title type="html">Yeah, most useful for the paranoid hosting static blogs and stuff</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqs9gv9xc90drs22wn0fw0g89z0mtm7p4np5crg7634yxxlje2agc7spz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjcupkxk" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqswd29hupzcnwgc66j6zzdapq6d7j05j2ew269yehhr6k5pvvxjwxcthlph3&#39;&gt;nevent1q…lph3&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Yeah, most useful for the paranoid hosting static blogs and stuff 
    </content>
    <updated>2026-11-09T14:56:21Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqs8a08gx8csqeka8hwnjvyrkdu3sg08hdnjkn2cp9m4m5pzew4d09cpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjpwh253</id>
    
      <title type="html">Foi mal galera, confundi com a minha esposa porque asiático é ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqs8a08gx8csqeka8hwnjvyrkdu3sg08hdnjkn2cp9m4m5pzew4d09cpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjpwh253" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs8rfj586ej27glesds5txgk6mjhcw40aqe0ms8sdlr7jz32zee4mgs9r9st&#39;&gt;nevent1q…r9st&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Foi mal galera, confundi com a minha esposa porque asiático é tudo igual
    </content>
    <updated>2026-11-09T14:54:46Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqswd29hupzcnwgc66j6zzdapq6d7j05j2ew269yehhr6k5pvvxjwxcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzqkfzjh8jkzd8l9247sadku6vhm52snhgjtknlyeku6sfkeqn5rdeugy3sa</id>
    
      <title type="html">Franzap before zapstore (Is that comment things?)</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqswd29hupzcnwgc66j6zzdapq6d7j05j2ew269yehhr6k5pvvxjwxcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzqkfzjh8jkzd8l9247sadku6vhm52snhgjtknlyeku6sfkeqn5rdeugy3sa" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsvf4ay8nas78umjlw4z3jsy550fzkt6a2kjwcl089juu4k99xn8jcsc3vwv&#39;&gt;nevent1q…3vwv&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Franzap before zapstore (Is that comment things?) 
    </content>
    <updated>2026-11-09T14:54:31Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsvf4ay8nas78umjlw4z3jsy550fzkt6a2kjwcl089juu4k99xn8jcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kj263w2j</id>
    
      <title>Nostr event nevent1qqsvf4ay8nas78umjlw4z3jsy550fzkt6a2kjwcl089juu4k99xn8jcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kj263w2j</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsvf4ay8nas78umjlw4z3jsy550fzkt6a2kjwcl089juu4k99xn8jcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kj263w2j" />
    <content type="html">
      Has anyone tried making a nostr based disqus clone? #asknostr
    </content>
    <updated>2026-11-09T14:51:48Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsdzj7w5dcn7yflw2y68t2n8krydjclyvxpsdrdaeggf5th4l2gsmcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kj08pxn8</id>
    
      <title type="html">What about beach volleyball?</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsdzj7w5dcn7yflw2y68t2n8krydjclyvxpsdrdaeggf5th4l2gsmcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kj08pxn8" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqqqpvksrpx9knhrkf7gmgwujvcn8e5p3t72v0zgn4wjchw32u9tc405l2u&#39;&gt;nevent1q…5l2u&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;What about beach volleyball? 
    </content>
    <updated>2026-11-09T14:31:00Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsqqqxzujm6dc8866dk303xrux7z5ttmfkv9vhpvwyctdpu0wm329spz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjq3v369</id>
    
      <title type="html">It kinda works.</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsqqqxzujm6dc8866dk303xrux7z5ttmfkv9vhpvwyctdpu0wm329spz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjq3v369" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsynnxrxqhd4fe4xzxg9yncz6fp9kanmvjhly7l0rnsye723n3ftmgpz3mhxue69uhnzv3h9cczuvpwxyarxve4x5pcyh86&#39;&gt;nevent1q…yh86&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;It kinda works.
    </content>
    <updated>2026-11-09T13:17:31Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsqqqx5lam2fmv55ukk2q24cc3w7a75042c86898e2zs3nfa5skjugpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjy9m5en</id>
    
      <title type="html">You sound like an asian parent</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsqqqx5lam2fmv55ukk2q24cc3w7a75042c86898e2zs3nfa5skjugpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjy9m5en" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsrjc43hkehfdxkn4qvjzegv9c8s97nj7h43x38nz68u2pwpjmfzwqpz3mhxue69uhnzv3h9cczuvpwxyarxve4x5kn3r8u&#39;&gt;nevent1q…3r8u&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;You sound like an asian parent
    </content>
    <updated>2026-11-09T13:15:38Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqs9caf3heg4hujs4r23ldl3fmxqftgh0g250kms5huuydsfetgx9eqpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kj2q9cpk</id>
    
      <title type="html">Maybe he got confused because they all look alike ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqs9caf3heg4hujs4r23ldl3fmxqftgh0g250kms5huuydsfetgx9eqpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kj2q9cpk" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs84yp408yzzffpgpfwwkdwgmznssvqc7kh2mptqas5datqyphayagkyf63x&#39;&gt;nevent1q…f63x&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Maybe he got confused because they all look alike&lt;br/&gt; &lt;img src=&#34;https://blossom.ditto.pub/52efed119b73b53ec2ddf88e69462dce618a4cea4a3bf0cbaedef940d5467240.jpg&#34;&gt; 
    </content>
    <updated>2026-11-09T12:23:06Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsz7mw05j8knqevspmhrytdtusmdlygy9jkgttsqgucnsm8y6naptqpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kj9qqkrh</id>
    
      <title>Nostr event nevent1qqsz7mw05j8knqevspmhrytdtusmdlygy9jkgttsqgucnsm8y6naptqpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kj9qqkrh</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsz7mw05j8knqevspmhrytdtusmdlygy9jkgttsqgucnsm8y6naptqpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kj9qqkrh" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqqqqyxzffs9ts6qnu0rjs5vv5nxa7wxpnfu2dfclgd3pzwv9a63qrgsj42&#39;&gt;nevent1q…sj42&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://blossom.ditto.pub/8a0c3f18fb5f2513c1027fa98fd8b80f3ab5614a6ffed0d5d0b3e8e368c43621.jpg&#34;&gt; 
    </content>
    <updated>2026-11-08T00:46:54Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqswtjf2l6kjpzhlw0t4vaftvcczfwuryq52krlc2vtjwle27d2z07qpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjfwfusr</id>
    
      <title type="html">Only seeing this now because you quoted it…</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqswtjf2l6kjpzhlw0t4vaftvcczfwuryq52krlc2vtjwle27d2z07qpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjfwfusr" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs9mkvqdafnnl3ed70wyd83jtqtcmjpcghda86awfhuyv8jwlvjrtsk74ma0&#39;&gt;nevent1q…4ma0&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Only seeing this now because you quoted it…
    </content>
    <updated>2026-11-07T22:51:34Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsqqqr3zdwxu02wsltea9qcmld6y4ysamahr99743lak0y9u4my5agpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjm8nk32</id>
    
      <title type="html">@npub1utx…50e8 explain that, atheists</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsqqqr3zdwxu02wsltea9qcmld6y4ysamahr99743lak0y9u4my5agpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjm8nk32" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs0rphl6qnkxyk2hxw6s2l09zrf97y4xh04j3engf3c4dae36tw57gpz3mhxue69uhnzv3h9cczuvpwxyarxve4x5mxp8qg&#39;&gt;nevent1q…p8qg&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;&lt;span itemprop=&#34;mentions&#34; itemscope itemtype=&#34;https://schema.org/Person&#34;&gt;&lt;a itemprop=&#34;url&#34; href=&#34;/npub1utx00neqgqln72j22kej3ux7803c2k986henvvha4thuwfkper4s7r50e8&#34; class=&#34;bg-lavender dark:prose:text-neutral-50 dark:text-neutral-50 dark:bg-garnet px-1&#34;&gt;&lt;span&gt;utxo the webmaster 🧑‍💻🍁&lt;/span&gt; (&lt;span class=&#34;italic&#34;&gt;npub1utx…50e8&lt;/span&gt;)&lt;/a&gt;&lt;/span&gt; explain that, atheists 
    </content>
    <updated>2026-11-07T01:56:04Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsw9g52wxy763qdfk0tzg7r4ckq95z9vshvtxz9mv6lu9l9904ff6qpz3mhxue69uhhyetvv9uju6twddskutnrvvpzqanzqr60vndz7ywln873awyne6tkakncnll6k5mcsy6ccklqmgzztvg7mc</id>
    
      <title>Nostr event nevent1qqsw9g52wxy763qdfk0tzg7r4ckq95z9vshvtxz9mv6lu9l9904ff6qpz3mhxue69uhhyetvv9uju6twddskutnrvvpzqanzqr60vndz7ywln873awyne6tkakncnll6k5mcsy6ccklqmgzztvg7mc</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsw9g52wxy763qdfk0tzg7r4ckq95z9vshvtxz9mv6lu9l9904ff6qpz3mhxue69uhhyetvv9uju6twddskutnrvvpzqanzqr60vndz7ywln873awyne6tkakncnll6k5mcsy6ccklqmgzztvg7mc" />
    <content type="html">
      &lt;a href=&#34;https://www.zonaautonoma.org/bludit/acomodando-la-mesa-en-nostr&#34;&gt;https://www.zonaautonoma.org/bludit/acomodando-la-mesa-en-nostr&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;Don&amp;#39;t nuke plox!&lt;br/&gt;&lt;br/&gt;&lt;br/&gt; &lt;img src=&#34;https://image.nostr.build/88f43bc2a8f9a450d7972755b859fea67b755432abcfbdc43714c6c37ec8d2f8.jpg&#34;&gt; 
    </content>
    <updated>2026-11-07T00:48:10Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqstxgetqth9c24udd0ujp7gjqrxf0yxezpdq4qe0ycx97zex20cezspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjsc3ks8</id>
    
      <title type="html">What happened to homophobic rendering? Seems like every ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqstxgetqth9c24udd0ujp7gjqrxf0yxezpdq4qe0ycx97zex20cezspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjsc3ks8" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsz4xpnga2zycuaqern0t2j4thp8ahqlfvjhzrk307c04kxuk9weess6xe5f&#39;&gt;nevent1q…xe5f&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;What happened to homophobic rendering? &lt;br/&gt;&lt;br/&gt;Seems like every JavaScript framework under the sun supports that shit, it basically makes SSR and then switches to CSR right after the page loads.&lt;br/&gt;&lt;br/&gt;PS: I know it is called isomorphic, just let me have some fun
    </content>
    <updated>2026-11-07T00:14:13Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsr4vnhem7ecggddr6m4mmkx4f5typ9jr69sdr95mky8dsg2xh2hcspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjnpcvzq</id>
    
      <title type="html">Someone should tell the Best Korea to try #FIPS with nostrvpn.org ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsr4vnhem7ecggddr6m4mmkx4f5typ9jr69sdr95mky8dsg2xh2hcspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjnpcvzq" />
    <content type="html">
      Someone should tell the Best Korea to try  #FIPS with nostrvpn.org &lt;br/&gt; &lt;img src=&#34;https://blossom.ditto.pub/2926964ac3578a516d84a7936068eab159ee8e4d7d61d9682ff225f03e4431e6.jpg&#34;&gt; 
    </content>
    <updated>2026-11-07T00:03:49Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsqe2gvq2jfwsafsfhqt2qzllnmr9f9ynuxeswm9ecrftd4w4sy3nspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjrjx8ww</id>
    
      <title type="html">NIP-44 support (or lack of).</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsqe2gvq2jfwsafsfhqt2qzllnmr9f9ynuxeswm9ecrftd4w4sy3nspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjrjx8ww" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqspxfs4kv3y3sdxsepm2zf7ae6rw2p68cvevmjwjpw8lkw4m37fdlscr3y2r&#39;&gt;nevent1q…3y2r&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;NIP-44 support (or lack of). 
    </content>
    <updated>2026-11-06T19:07:28Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsqqqp8f07lx0k7xzwmzq68ve8vvehf9c5px4svt4qwcja7sjzl9wgpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kju2f9r8</id>
    
      <title type="html">That’s weird… ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsqqqp8f07lx0k7xzwmzq68ve8vvehf9c5px4svt4qwcja7sjzl9wgpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kju2f9r8" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsthx8yp2ufplxnyepmks8t6l64uuxw3r8wdwtjvvy2fy4wqqlencgpz3mhxue69uhnzv3h9cczuvpwxyarxve4x5d2ahaa&#39;&gt;nevent1q…ahaa&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;That’s weird…  &lt;img src=&#34;https://blossom.primal.net/cdaf5e4ed19c4f4dce60454e94e1c5af738dbba2581c5cefe5a158e1ce382cdd.png&#34;&gt; 
    </content>
    <updated>2026-11-06T18:39:13Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsqqqzpswhqk23n24sea3ql93mx5vk0cv3cccpgg4utxsqhmc4cntcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjavlunc</id>
    
      <title type="html">Nw, my daily driver is an iPhone, the android is a moto g with a ...</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsqqqzpswhqk23n24sea3ql93mx5vk0cv3cccpgg4utxsqhmc4cntcpz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjavlunc" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsdhafkw3gc88cuvs2tljp4ryesfhtzjq0h8pcgkx3r3e6558zjflqpz3mhxue69uhnzv3h9cczuvpwxyarxve4x52d7kj5&#39;&gt;nevent1q…7kj5&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;Nw, my daily driver is an iPhone, the android is a moto g with a busted screen I have to remote desktop into… not sure I can upgrade that.
    </content>
    <updated>2026-11-06T16:53:32Z</updated>
  </entry>

  <entry>
    <id>https://njump.me/nevent1qqsd9rtkq85l4nvyg2z7aqxng4x6knc4u36yvv9kd3yq4x2urdte5wspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjlanzrs</id>
    
      <title type="html">That would be half of my notes sir</title>
    
    <link rel="alternate" href="https://njump.me/nevent1qqsd9rtkq85l4nvyg2z7aqxng4x6knc4u36yvv9kd3yq4x2urdte5wspz3mhxue69uhhyetvv9uju6twddskutnrvvpzp2a2p8dtrlplllq5p87m9zcnsvkdgqchqnzd7cvc2f0606jxd0kjlanzrs" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsr6cl6mqr0chmfwwzheh024zzuevndndcxu8trqxs28jzx2wrjfmq09jqed&#39;&gt;nevent1q…jqed&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;That would be half of my notes sir
    </content>
    <updated>2026-11-06T14:52:06Z</updated>
  </entry>

</feed>