inkan

inkan

npub

npub16xnpfx85k8wzdhctang6860g3u64lds5kac73ddjwlg0lxdg9g3su56z6l

pubkey (hex)

d1a61498f4b1dc26df0becd1a3e9e88f355fb614b771e8b5b277d0ff99a82a23

nprofile

nprofile1qqsdrfs5nr6trhpxmu97e5dra85g7d2lkc2twu0gkke8058lnx5z5gcprf58garswvaz7tmjv4kxz7fwva6kcat8w4k82tnddajsvulrhc

动态 (500)

↳ 回复 事件不存在

36684ac689e7a5100b8f1ed9f8900665ba5681256e670773a671ce77156362a3

I don't agree that Inkan automatically adds to the severity of a total loss of identity. "[if] someone steal a main-key, there is this automated infr...

I don't agree that Inkan automatically adds to the severity of a total loss of identity. "[if] someone steal a main-key, there is this automated infrastructure that immediately diverts the audience towards wherever the attacker wants them" That's precisely the same with normal Nostr keys. If someone steals your normal Nostr key, they can divert the attention of your entire audience to their own posts and other activity under the guise of your compromised identity. Same with a compromised Inkan master key. The remedial steps you can take after such a loss are the same for Inkan and normal Nostr. I don't think that there's additional severity that Inkan adds as compared to normal Nostr. I think that the severity of a total loss depends on how much you had invested in that identity. E.g. if you make an Inkan "toy identity" on the Inkan home page, you can play around with it without investing any serious effort in it and then throw it away. It's a fully functional Inkan identity, but you wouldn't feel the loss of the master key because you haven't put much effort into it. I should also point out that Inkan gives "normies" a feature that's to some extent analogous to a crucial functionality they are used to from legacy "platforms": the ability to reset their password.

Kind-1 (TextNote)

2026-09-09T11:12:04Z

↳ 回复 事件不存在

a21296b66e2358465e301104f29e0e7fe181767d0dda65afba045214cd77c729

I think there's an inconsistency (or a least a jarring tension) between these two statements: "it does not change all that much" "So allowing a (mai...

I think there's an inconsistency (or a least a jarring tension) between these two statements: "it does not change all that much" "So allowing a (main)key to remain in cold storage is a great risk reducer" The risk reduction that results from the ability to hold keys in cold storage is *enormous*. Without it, for example, cryptocurrencies would not really be practicable. I'm not sure how my system makes the main key's getting compromised "worse." I guess you're uncomfortable with the fact that, having greater confidence in the security of their key, people may invest more seriously in building their identity on that key, so the loss of that investment would be greater. The discomfort one feels with putting all one's eggs in one basket. Now currently it's a prototype and I wouldn't want people to be over-confident in in the nitty-gritty details of this particular implementation. But as far as I'm aware, there's no reason to think that the details can't be hardened into something robust, or who knows it may turn out that the current implementation is already robust. This is not different from any other Nostr app. Sensitive parts need to be diligently and continuously audited. "it works under the assumption that your system gets normalized." While it would be great for it to get normalized quickly, it's actually functional *without* other clients adopting it. The key I'm using right now is the signer key for my Inkan master identity, and I can use it as a regular Nostr key that is fully compatible with normal Nostr clients. So there's nothing that prevents me from using normal Nostr and Inkan at the same time with the same key. Inkan does not interfere with or break the usual protocol. It can basically just be used on top of the regular protocol. "there's a reason i point people towards your stuff". Thanks, and what you get back in return from me is a bunch of critical comments, no good deed goes unpunished ...

Kind-1 (TextNote)

2026-09-09T10:37:03Z

↳ 回复 事件不存在

3aec1cd219bede90b0706e590bb2cae9ff3b14a472019d6d6fb312cb175679db

"we can't, I repeat, can not, take away the consequences of lost (or worse, stolen) keys as such." Here is a system, functional and usable today, tha...

"we can't, I repeat, can not, take away the consequences of lost (or worse, stolen) keys as such." Here is a system, functional and usable today, that greatly limits the consequences of a lost or stolen key from the time the rightful owner replaces the lost / stolen key with a new one.👇 Can you explain how your claim is consistent with the actual existence of this system? Are there any flaws in this system that make it non-functional in your opinion? If so, can you or anyone else point out these flaws with some degree of specificity? nostr:nevent1qvzqqqqqqypzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj7qgwwaehxw309ahx7uewd3hkctcqyqydc5vcy4z8zk350dsykgfkrq5uc2jvzmaa9k709hq88ku90gt5qs7r4gy

Kind-1 (TextNote)

2026-09-09T09:32:13Z

↳ 回复 事件不存在

570f10994b4e79de0bb58f21bd82287a75579c80b833fd973acb4ab2d69f2c38

I had trouble opening the 30617 event that you had quoted. On imwald, I saw this, but clicking on that link just sent me to a broken page: https://im...

I had trouble opening the 30617 event that you had quoted. On imwald, I saw this, but clicking on that link just sent me to a broken page: https://image.nostr.build/9007260b9f43440ccc506b8c74b2e88d9d7966624ec821843867aa9d5f455f92.jpg I was trying to understand what your frost scheme means in practice. So the first observation was that, in your particular setup, your privkey is only as secure as your Google credentials, and Google needs to be trusted. Otherwise, this scheme seems like an enhancement to NIP-46 if I'm understanding it correctly. If you yourself run one operator and require all shards for signing, it seems like it would be at least as good as current NIP-46. The operator you are running would be analogous to your NIP-46 signer app in that you have direct control over these, so that would presumably never be worse than current NIP-46 even if all the other operators are compromised. If that's correct, your scheme composes with a key delegation system in the same way as NIP-46 does.

Kind-1 (TextNote)

2026-09-08T13:06:52Z

↳ 回复 事件不存在

7d90caaf9b942ebfdf42a112ccc57d20575453ca7f4da6f00c65e5307d27d0d8

Thanks, I think I may have found the pomegranate repo here: https://gitworkshop.dev/npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6/r...

Thanks, I think I may have found the pomegranate repo here: https://gitworkshop.dev/npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6/relay.ngit.dev/pomegranate I'm trying to understand the security posture. It seems that the user, for each generation of key shards G that they produce, sets a threshold number T(G) such that anyone who at any time holds at least T(G) distinct shards from generation G will be able to reconstruct the user's privkey. If that's correct, it seems that 1. Google itself can get your privkey at any time if they decide to fake OAuth; 2. anyone who has your Google login credentials will be able to get your privkey; 3. if at least T(G) operators holding shards of generation G collude, they will be able to get your privkey; 4. if anyone is able to steal at least T(G) shards of generation G from operators, they will be able to get your privkey; 5. any combination of dishonest operators and thieves that together at any future time come to hold at least T(G) shards of generation G will be able to get your privkey. Does that seem right?

Kind-1 (TextNote)

2026-09-08T11:13:27Z

↳ 回复 事件不存在

0000003bfb573a5f17388294423b8ae04884169e599bc97230164ad72ffab19b

Yes, it requires OTS and ethereum. OTS is free. Gas fees for delegations and revocations are tiny. A recent series of transactions creating a 3-key d...

Yes, it requires OTS and ethereum. OTS is free. Gas fees for delegations and revocations are tiny. A recent series of transactions creating a 3-key delegation chain came to about 518k gas. I think at current prices that may be less than $0.15. On-chain transactions are required only at the time of identity creation and key replacement, which is very rare. For people who don't hold ETH or don't know what it is, they can ask a sponsor to pay on their behalf. If you'd like to try it out, I'm happy to cover the tiny amount of ETH. You can go to https://www.inkan.cc and click "Get a toy identity" to get a throwaway trial identity. On the last screen of the wizard, there's a link through which you can ask me to sponsor the transaction. For general concerns about using Ethereum, my initial response would be this👇 nostr:nevent1qvzqqqqqqypzqxvlzty5le4zjqus33rwlju3ryxenyah8qygdjvryx6ec5fae2tnqy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj7qg4waehxw309aex2mrp0yhxjmntv9hzucmr9uqzq80p3p0y9l0g84q52smfaj498fjaspym2dght7hhhe9wpcgsw09k5meyqu

Kind-1 (TextNote)

2026-09-08T08:30:47Z

↳ 回复 事件不存在

eacd7e04de6a2a95acc0acdab78d92fb17a59d92508cc79ea001a4eecfd6efe6

I tried to look at it but get "Site not available - Site was paused as it reached its usage limits." Any other place I can read about this? https:/...

I tried to look at it but get "Site not available - Site was paused as it reached its usage limits." Any other place I can read about this? https://image.nostr.build/0d5d675d384ae7b18bf6afcef1e3e456bf005c12ef87b94b296505c9c11a7732.jpg

Kind-1 (TextNote)

2026-09-08T06:18:14Z

↳ 回复 事件不存在

9f977ba830ea0e1c941e2fc11c88e8360b5060a5f3f166758cafc7c040786bbf

The Terms of Use for my client include this language: "No expectation of privacy or confidentiality. You should assume that anything you submit, publ...

The Terms of Use for my client include this language: "No expectation of privacy or confidentiality. You should assume that anything you submit, publish, or transmit through the Application will become publicly available on the internet and may be copied, archived, indexed, and redistributed by third parties indefinitely. Content submitted to relays or other services via the Application cannot be revoked, deleted, or otherwise taken back."

Kind-1 (TextNote)

2026-09-08T05:57:39Z

↳ 回复 事件不存在

00000009ee9f36da0895ff195f4d3f1e979a8164540a8bb6a28072882d8ade91

The "shooting down" of proposals on key rotation is just a cultural issue with Nostr. It's not a technical limitation. This thread is an example of t...

The "shooting down" of proposals on key rotation is just a cultural issue with Nostr. It's not a technical limitation. This thread is an example of this. Lots of comments about how key rotation is impossible. And when I post links to a website where a functioning key rotation has actually been implemented and is in use, it's mostly just ignored. And then there are more comments on how nobody has figured our how to do key rotation. There's a lot of cognitive dissonance here. I guess I'll just keep posting links. Here is a functioning key revocation and replacement system for Nostr, which you can start using today. 👇 nostr:nevent1qvzqqqqqqypzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj7qgwwaehxw309ahx7uewd3hkctcqyqydc5vcy4z8zk350dsykgfkrq5uc2jvzmaa9k709hq88ku90gt5qs7r4gy

Kind-1 (TextNote)

2026-09-08T04:47:58Z

↳ 回复 cloud fodder (npub10npj3gydmv40m70ehemmal6vsdyfl7tewgvz043g54p0x23y0s8qzztl5h)

Hard to get everyone to adopt key rotation yeah.. PGP is the only thing that sort-of has built-in ro...

I just want to point out again that we have a fully functioning key revocation and replacement system in Nostr. I've been using it every day for month...

I just want to point out again that we have a fully functioning key revocation and replacement system in Nostr. I've been using it every day for months now. You can literally just head over to https://www.inkan.cc and create an identity that can delegate signing authority to delegatee keys and revoke it when these keys are compromised. This enables cold storage identities for Nostr. If you want to see one of these identities in action, here is an example: https://www.inkan.cc/users/npub10ukg94kvrvk4qqr3482zdekfsuaw2x56wa899mnpkxqwfxl6dlkqrux0x9 And here is the draft NIP that goes along with the reference implementation: nostr:naddr1qvzqqqr4gupzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqyghwumn8ghj7mn0wd68ytnvv9hxgtcpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsq2rrdakxgttnw3hhyct8v5kkjer9de6xjarfv4ej6en0wgkkummnw3ez6ce4dccrzcgwghxg7

Kind-1 (TextNote)

2026-09-08T04:31:20Z

↳ 回复 事件不存在

21da0d25c31fe31bf6cc32166e1e344c6ed124d5ec26d0e2eb87c7e49312278b

Here is a decentralized PKI for Nostr: nostr:nevent1qvzqqqqqqypzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqy2hwumn8ghj7un9d3shjtnyv9kh2uewd...

Here is a decentralized PKI for Nostr: nostr:nevent1qvzqqqqqqypzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj7qgwwaehxw309ahx7uewd3hkctcqyqydc5vcy4z8zk350dsykgfkrq5uc2jvzmaa9k709hq88ku90gt5qs7r4gy

Kind-1 (TextNote)

2026-09-08T04:09:20Z

↳ 回复 事件不存在

000000c39d92caf2a51d9a226305718d95789ab61c93f788ed5ee9640bc8b450

You're right - I should include a link to my master profile in my signer profile. Actually, nostr:npub1rx039j20u63fqwggc3h0ewg3jrvejwmnszyxexpjrdvu2y7...

You're right - I should include a link to my master profile in my signer profile. Actually, nostr:npub1rx039j20u63fqwggc3h0ewg3jrvejwmnszyxexpjrdvu2y7u49esyzu0mp has done precisely that. You can click on the link in their signer profile to go to the master profile. And you're also right about DMs. The master key is buried in my basement and doesn't sign or decrypt anything. So DMs need to be directed to the phone number keys that the master has declared (of course a delegatee can make these declarations on behalf of the master). And the master can, for example, declare different phone number keys for different devices if it wants to. And more importantly, anyone who wants to call these numbers can always check, right before making the call, that the master key has not *revoked* the number.

Kind-1 (TextNote)

2026-09-07T19:04:10Z

↳ 回复 事件不存在

00000069a58d05e04ac60fa1e61289d98cbde4261e32014aa823dda17bcb9652

If you follow my current signer key A and I replace with a different signer key B, you will need to separately start following my signer key B to see ...

If you follow my current signer key A and I replace with a different signer key B, you will need to separately start following my signer key B to see its posts on Amethyst in your following timeline. But if you follow my delegator key X which delegated to signer A and later replaced it with signer key B, then the *Inkan* client will show you all of X's events, both those signed by A and those signed by B, under X's profile. In the meantime, nothing in the regular Nostr protocol gets broken. From the regular protocol's point of view, A and B are just completely normal Nostr keys. And X is also a normal Nostr key, which will show up in Amethyst as having no events whatsoever. Inkan does not displace or interfere with the current protocol. To see some key rotations, you can look at the profile of this pubkey: https://www.inkan.cc/users/npub1nqghyutxtxmf5r4mwys5xvp5upv8hv7z3a2ywpmnynwaetja7x0snq68nf You can for example pick events from each of May 22, May 28 and June 20. If you click on "View raw event" for each of these, you'll see the different delegatee pubkeys that signed these.

Kind-1 (TextNote)

2026-09-07T18:49:16Z

↳ 回复 事件不存在

000000fee3d2783821ef3938519069765be10633dc648d7787ef1ddafc721ba5

"They want magic." I've been using this system every single day for months now. It's functional and non-magical. And it doesn't disrupt the regular N...

"They want magic." I've been using this system every single day for months now. It's functional and non-magical. And it doesn't disrupt the regular Nostr protocol. The post I am making right now is fully compatible with both regular Nostr clients and with Inkan. Inkan uses exactly the same kind-0 profile for the pubkey that signed this post as all other Nostr clients do. Inkan merely recognizes that the signing key is making the post on behalf of a master identity, and attributes the post to that master identity.

Kind-1 (TextNote)

2026-09-07T18:25:17Z

↳ 回复 事件不存在

00000043d8de99731ad6dedf6782b0009f65d5cbb70d8afc522dd629d05143c6

Inkan displays exactly the same profile picture for my signer key as all other Nostr apps do. Here it is: https://www.inkan.cc/users/npub16xnpfx85k8w...

Inkan displays exactly the same profile picture for my signer key as all other Nostr apps do. Here it is: https://www.inkan.cc/users/npub16xnpfx85k8wzdhctang6860g3u64lds5kac73ddjwlg0lxdg9g3su56z6l At the same time, the posts I am making are also getting attributed to my master identity, which you can see here: https://www.inkan.cc/users/npub10ukg94kvrvk4qqr3482zdekfsuaw2x56wa899mnpkxqwfxl6dlkqrux0x9 There is nothing nefarious or destructive about it. You can literally delegate down from a master key to your regular Nostr key and keep using your regular Nostr key as usual across the Nostr ecosystem. That's what I'm doing right now. You'll just have gained the benefit of a master identity which can, in case your current Nostr key gets compromised, revoke it and replace it with a new one.

Kind-1 (TextNote)

2026-09-07T17:53:21Z

↳ 回复 事件不存在

257cabe56c0f05963b27963f3c7519324f122f728c3950c0bce3f9d3553eebd6

You can just start using it. Just go to the Inkan website and click on "Explore" to see some cold storage identities. 👇 nostr:nevent1qvzqqqqqqypzp5dx...

You can just start using it. Just go to the Inkan website and click on "Explore" to see some cold storage identities. 👇 nostr:nevent1qvzqqqqqqypzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj7qgwwaehxw309ahx7uewd3hkctcqyqydc5vcy4z8zk350dsykgfkrq5uc2jvzmaa9k709hq88ku90gt5qs7r4gy

Kind-1 (TextNote)

2026-09-07T17:39:18Z

↳ 回复 事件不存在

0178edc12219dede040d7496e08c7e5911ca472e9690e28a12044ffa7a41a82c

👇 nostr:nevent1qvzqqqqqqypzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj7qgwwaehxw309ahx7uewd3hkctcqyqydc5...

👇 nostr:nevent1qvzqqqqqqypzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj7qgwwaehxw309ahx7uewd3hkctcqyqydc5vcy4z8zk350dsykgfkrq5uc2jvzmaa9k709hq88ku90gt5qs7r4gy

Kind-1 (TextNote)

2026-09-07T17:34:04Z

↳ 回复 事件不存在

efdc7c428ca537ca252aa739875fb37cd68ccf85a8ad77b30e08514f0fc4f691

Your acquaintance may want to take a look at Inkan. It allows the organization to hold a master key and distribute delegatee keys to its employees. Th...

Your acquaintance may want to take a look at Inkan. It allows the organization to hold a master key and distribute delegatee keys to its employees. The employees can then use the delegatee keys to post on behalf of the organization until the organization decides to revoke that authority.👇 nostr:nevent1qvzqqqqqqypzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj7qgwwaehxw309ahx7uewd3hkctcqyqydc5vcy4z8zk350dsykgfkrq5uc2jvzmaa9k709hq88ku90gt5qs7r4gy

Kind-1 (TextNote)

2026-09-07T17:31:43Z

↳ 回复 事件不存在

0000008ca66860e59e0d49cff3e6ecfa8119e234b3d85601b053c4c14fed8e04

Well, I guess for my double ratchet I was simply envisioning that the receiver just advertises their device-bound delegatee keys like they would adver...

Well, I guess for my double ratchet I was simply envisioning that the receiver just advertises their device-bound delegatee keys like they would advertise their personal and work cell phone numbers. I guess they'd have to answer on the device on which they get the call. That doesn't seem like too much of an imposition for my taste, but opinions may differ on this. Apart from DMs, notice that Inkan allows you to post under keys that are kept in permanent cold storage. For example, here is the profile page of a key that has never signed a single Nostr event: https://www.inkan.cc/users/npub10ukg94kvrvk4qqr3482zdekfsuaw2x56wa899mnpkxqwfxl6dlkqrux0x9

Kind-1 (TextNote)

2026-09-07T16:59:41Z

↳ 回复 事件不存在

00000025070f409c26c153445b117ec73b0fcc1f0d1a577d746bfef53971d202

I haven't implemented DMs but actually started thinking about this recently. You'll want to treat delegatee keys like different phone numbers that bel...

I haven't implemented DMs but actually started thinking about this recently. You'll want to treat delegatee keys like different phone numbers that belong to the master key and which the master key advertises as capable of receiving DMs. The caller decides to which delegatee they want to deliver the DM, and Inkan permits them to verify the association of the delegatee with the master. One interesting use of Inkan is to associate delegatee keys with specific devices that belong to the master identity. I think you may be able to use this for a double ratchet for Nostr. 👇 nostr:nevent1qvzqqqqy2upzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj7qg3waehxw309ahx7um5wgh8w6twv5hsqg9mux5805dcaz66df77u7lqxt8funcuqdzpxqw59kw7ty5hljvpmvjrllrj

Kind-1 (TextNote)

2026-09-07T16:44:02Z

↳ 回复 事件不存在

a9cfbe9da6a497ef727cc0b068c5b465174766325575ce65aad8545b0a027596

"... this impossible requirement ..." You can literally go ahead and use it today. It's not even especially difficult. For example, here is a cold s...

"... this impossible requirement ..." You can literally go ahead and use it today. It's not even especially difficult. For example, here is a cold storage identity if you'd like to see one in action: https://www.inkan.cc/users/npub10ukg94kvrvk4qqr3482zdekfsuaw2x56wa899mnpkxqwfxl6dlkqrux0x9 The privkey for that one has never come close to a networked device.

Kind-1 (TextNote)

2026-09-07T16:25:56Z

↳ 回复 事件不存在

0000004083d7fcfad153d862f4cb7b8ab6b87edc11190fa1c90bb7f5bb917405

See below for something that works. 👇 If you want to take a look at some actual cold storage identities, just go to the Inkan website and click "Expl...

See below for something that works. 👇 If you want to take a look at some actual cold storage identities, just go to the Inkan website and click "Explore". nostr:nevent1qvzqqqqqqypzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqy88wumn8ghj7mn0wvhxcmmv9uq32amnwvaz7tmjv4kxz7fwv3sk6atn9e5k7tcqyqydc5vcy4z8zk350dsykgfkrq5uc2jvzmaa9k709hq88ku90gt5qk0hk0l

Kind-1 (TextNote)

2026-09-07T16:12:53Z

↳ 回复 inkan (npub16xnpfx85k8wzdhctang6860g3u64lds5kac73ddjwlg0lxdg9g3su56z6l)

Key rotation has been fully implemented at https://www.inkan.cc . I've been using this system for m...

Here's the draft NIP that explains the reference implementation: nostr:naddr1qvzqqqr4gupzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqyfhwumn...

Here's the draft NIP that explains the reference implementation: nostr:naddr1qvzqqqr4gupzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqyfhwumn8ghj7mmxve3ksctfdch8qatz9uq32amnwvaz7tmjv4kxz7fwv3sk6atn9e5k7tcq9p3k7mry94ehgmmjv9nk2ttfv3jkuarfw35k2uedvehhyttwdaehgu3dvv6kuvp3vy40w2mm

Kind-1 (TextNote)

2026-09-07T16:04:28Z

↳ 回复 事件不存在

0bb4daf107c109410d85a15391dd4961e47fa97cfc7d35f83c1a1df0bb44d531

Key rotation has been fully implemented at https://www.inkan.cc . I've been using this system for many months now. There is also a draft NIP. You can...

Key rotation has been fully implemented at https://www.inkan.cc . I've been using this system for many months now. There is also a draft NIP. You can start using it today, it's all there and works well. 👇 nostr:nevent1qvzqqqqqqypzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqy88wumn8ghj7mn0wvhxcmmv9uq32amnwvaz7tmjv4kxz7fwv3sk6atn9e5k7tcqyqydc5vcy4z8zk350dsykgfkrq5uc2jvzmaa9k709hq88ku90gt5qk0hk0l

Kind-1 (TextNote)

2026-09-07T16:00:29Z

↳ 回复 事件不存在

ac76ea8391fb49f3b126ab78e1e9d34a468b815e680a950d53d203194a5eda2e

You're right these models are pretty assertive. It's tricky when I'm exploring a topic I don't know much about because that makes me suggestible, espe...

You're right these models are pretty assertive. It's tricky when I'm exploring a topic I don't know much about because that makes me suggestible, especially when I'm in too much of a hurry.

Kind-1 (TextNote)

2026-09-07T14:49:57Z

↳ 回复 事件不存在

0000cc1f681051e12615af193f3a06d8f67f88f5da5225f093954871e4a6db86

I've been doing security audits of my code for months now. Fable keeps refusing and automatically hands it over to Opus, as if it were some understand...

I've been doing security audits of my code for months now. Fable keeps refusing and automatically hands it over to Opus, as if it were some understanding that Opus is harmless by virtue of not doing a good job.

Kind-1 (TextNote)

2026-09-07T13:25:16Z

↳ 回复 事件不存在

ce63c049d34fffa23617751fce3c7352664bba9714b0d050679f739b8f852a3e

Yeah I might end up cycling through a number of these. If it's a lie that you've caught, I guess you are alright. The worry is that most of these mode...

Yeah I might end up cycling through a number of these. If it's a lie that you've caught, I guess you are alright. The worry is that most of these models seem absolutely smart enough to conceal, camouflage, mislead, etc., and to be pretty good and thorough at it. There's some complexity to deceptive behavior, but it's far less than the amount of complexity they've mastered in other domains.

Kind-1 (TextNote)

2026-09-07T09:09:51Z

↳ 回复 事件不存在

0d947b7d1cb66226afb1494b388aee1eea60b8dfc45ef1ac6d40a0ee04ce45b2

I generally allow myself to be guided by AIs on security issues, if only because they give better and more detailed explanations than most humans, so ...

I generally allow myself to be guided by AIs on security issues, if only because they give better and more detailed explanations than most humans, so I can follow the reasoning as far as I want. Whether an AI "is not likely to be malicious" is a more of a case-by-case question for me. It seems likely that a fair number of AIs would be trained to engage in malicious behavior and conceal it, including by plausibly denying intentional malice if caught. That AIs can be expected across the board to be non-malicious would be inconsistent with the use that people have historically made of new technologies.

Kind-1 (TextNote)

2026-09-07T07:54:17Z

↳ 回复 Laeserin (npub1m4ny6hjqzepn4rxknuq94c2gpqzr29ufkkw7ttcxyak7v43n6vvsajc2jl)

Wer nicht mit der Zeit geht, geht mit der Zeit.

Looks like you've come around to something.

Kind-1 (TextNote)

2026-09-07T06:20:58Z

↳ 回复 事件不存在

dfce38ea01af1b3ee4d7fcb079eef0ca430b399a7c7635f012bf7fbbcf1690ec

That sounds like a worthwhile project.

Kind-1 (TextNote)

2026-09-07T03:12:39Z

↳ 回复 事件不存在

bf5fde8b9748537a75db369280f7f6ff060223955c69d8b2648e83bd92430350

I agree that the developer has to check that the code doesn't leak or give access to secrets, but I don't think that developers should have confidence...

I agree that the developer has to check that the code doesn't leak or give access to secrets, but I don't think that developers should have confidence that they were in any particular case able to do so successfully. Also, repeatedly asking an AI that there is no remote code running within an app and that nothing is leaked outside the browsers runtime is certainly a good idea, but it provides at best very limited reassurance that your app actually doesn't hvae these defects. And that "all known holes" in browsers are already closed is likely true where such holes are publicly / widely known, but it doesn't provide reassurance against unknown holes, or holes only known by a small number of people.

Kind-1 (TextNote)

2026-09-07T03:04:03Z

↳ 回复 5538e28a... (npub125uw9znxawyrvrc4lraf2ertm5k652ve4t87f74v7s7scp2qk2qswmlek0)

there is no functional difference between the isolation of a WebWorker running WASM and a signer ext...

A difference is that I have greater control over the decision whether or not to install a signer extension, and it's more transparent to me whether or...

A difference is that I have greater control over the decision whether or not to install a signer extension, and it's more transparent to me whether or not I have installed one, than I have over whether or not I have a WebWorker running WASM.

Kind-1 (TextNote)

2026-09-07T02:39:42Z

↳ 回复 事件不存在

c0c9bc7fc5fa953574fa72de73816983fbc04d656165a6011c5ac1eeede19560

I can't speak to the correctness of this, but as far as I know you may be 100% right. But most users, including many sophisticated users, have no rel...

I can't speak to the correctness of this, but as far as I know you may be 100% right. But most users, including many sophisticated users, have no reliable capability to personally verify claims of the kind you are making, including for example the claim about inspectability via DevTools. I think that probably the only solution is to have a few signer apps that are diligently and continuously audited by both the community and experts. Most people (including many experts) have really no better option available than to rely on this kind of mechanism. I'm not sure if anybody is even looking closely at the signer apps that are currently in use ...

Kind-1 (TextNote)

2026-09-07T02:34:59Z

↳ 回复 3bf0c63f... (npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6)

Why haven't you invited your friends and family to Nostr? I'm not saying you should do that at all,...

By the way, why haven't you invited your friends and family to use Inkan? Not saying you should do that, just curious ... 🦕

Kind-1 (TextNote)

2026-09-07T01:07:31Z

↳ 回复 codonaft (npub1alptdev5srcw2hxg03567p4k6xs3lgj7f6545suc0rzp0xw98svse7rg94)

I did. Yet I'm not sure where it will go yet. https://image.nostr.build/76910fd04c27d85d6b7d5b971cf...

My Terms and Conditions require users to agree to never type or paste an nsec into inkan. That some clients have input fields for nsecs is pretty ins...

My Terms and Conditions require users to agree to never type or paste an nsec into inkan. That some clients have input fields for nsecs is pretty insane.

Kind-1 (TextNote)

2026-09-07T00:50:12Z

↳ 回复 事件不存在

2a93dfb9b445bf3cdc27d992329498251ec1184264ecad2276ed1146edcc295f

I'm also here because of the protocol. More specifically the method of authentication. Using keys to authenticate is just the correct and easy way of ...

I'm also here because of the protocol. More specifically the method of authentication. Using keys to authenticate is just the correct and easy way of having a presence on the internet.

Kind-1 (TextNote)

2026-09-07T00:43:30Z

↳ 回复 事件不存在

f14e59c364824ac2ed616baa6393712de1a2fe6d13a69f84afdf2dc4a56468d0

それ、Inkan でほぼそのまま作っていて、もう試せます。 マスターキー(アイデンティティ鍵)はコールドストレージに置いたまま、普段は別の署名鍵に委任する形です。署名鍵が漏れても失くしても、取り消して新しい鍵に委任し直せます。アイデンティティもフォロワーもそのまま。 「誰の更新を正史とするか」は...

それ、Inkan でほぼそのまま作っていて、もう試せます。 マスターキー(アイデンティティ鍵)はコールドストレージに置いたまま、普段は別の署名鍵に委任する形です。署名鍵が漏れても失くしても、取り消して新しい鍵に委任し直せます。アイデンティティもフォロワーもそのまま。 「誰の更新を正史とするか」は、委任・取り消しの宣言をチェーンに記録して、各クライアントが同じ委任グラフを再構築する形で揃えています。まさに『秘密鍵の更新=アイデンティティの合意形成』の発想です。 よかったら動く例です👇 nostr:nevent1qvzqqqqqqypzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqy88wumn8ghj7mn0wvhxcmmv9uq3zamnwvaz7tmwdaehgu3wwa5kuef0qqsq3hz3nqj5gu26x3akqjepxcvznnp2fst0h5kmeukuqu7ms4apwsqlkt4p3

Kind-1 (TextNote)

2026-09-06T11:29:28Z

↳ 回复 事件不存在

9ac9785b5c86f3caa85230af6ed15e40a382c3e55f33241030eeacc6f5fdbec5

Yes, not being able to delete or close an "account" is something that scares people away. Once you've explained the fundamentals, people understand th...

Yes, not being able to delete or close an "account" is something that scares people away. Once you've explained the fundamentals, people understand that their notes are basically outside their control once they've posted them. In a way, this is not all that different from legacy social media, blogs etc, but many people have not fully internalized that fact in the legacy case. They take comfort in traditional platforms having "privacy settings" or "delete account" buttons that create a sense of having some degree of control. Nostr cannot honestly promise deletion of content even within the ecosystem of servers that participate in the protocol. And with Nostr there are digital signatures, and people intuitively understand that these connect a piece of content to their identity permanently. Nostr exposes the public and loss-of-control aspects of posting on the internet with a directness that is a bit too much for many people. I think the best solution to this is to acknowledge that Nostr is not appropriate for users who want to create content that they ultimately may not want to stand by (maybe with the exception of "anonymous" content that isn't tied to any real-world identity in the first place). Nostr is, however, appropriate for people who are already committed to (and have the nerve for) having a truly public persona. Wider adoption of Nostr has to start with an avant-garde of such people, and others are then likely to follow along, to whatever extent they they are comfortable, learning to separate content that is appropriate for digital signing from other content that they intend to be untethered to their identity and more ephemeral.

Kind-1 (TextNote)

2026-09-06T05:20:34Z

↳ 回复 3bf0c63f... (npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6)

Why haven't you invited your friends and family to Nostr? I'm not saying you should do that at all,...

I've invited them and they've tried, made a post or two, and then gave up. I think they don't feel the need to put things online. I kind of agree with...

I've invited them and they've tried, made a post or two, and then gave up. I think they don't feel the need to put things online. I kind of agree with them, but I made a conscious decision that I should have a web presence.

Kind-1 (TextNote)

2026-09-06T00:35:13Z

I updated the Inkan Management Utility, the app that allows you to create identities and key delegations and revocations on an airgapped system. The...

I updated the Inkan Management Utility, the app that allows you to create identities and key delegations and revocations on an airgapped system. The app now generates QRs that can be directly scanned by NIP-46 signers like Amber, using NIP-49 ncryptsec. This is handy when you've moving a delegatee signing keys around, just scan and it's there. The source is available at https://gitlab.com/inkan_dev/inkan-management-utility. It's the part of Inkan that actually handles privkeys, so feel free to analyze it or point your AI at it, and let me know any issues. There's also a Linux AppImage at https://www.inkan.cc/settings/inkan-management-utility.

Kind-1 (TextNote)

2026-09-05T08:59:58Z

↳ 回复 事件不存在

584431dfea2b50acf46d89e33b72545ff81d91bfd4c7d79747cd885b4ed31307

Ok, I think I'll try the linux build, thanks!

Kind-1 (TextNote)

2026-09-05T05:33:12Z

↳ 回复 事件不存在

fe0128575544e9460c84722b24cda232beb456f0a75f95311b20f5d8e8243f98

Thanks! I'm looking at 0xchat's website and I'm not seeing the web client. Are you sure they have one? If not I can try to install the Linux client.

Kind-1 (TextNote)

2026-09-04T13:33:14Z

↳ 回复 事件不存在

3df48c00ec08f4a9a4ea80b0f49156cc10f726b6df9452ddd523e63f4df4f1a5

This worked well. In fact it's the only DM app I've tried so far that worked immediately. Thanks!

Kind-1 (TextNote)

2026-09-04T10:34:29Z

↳ 回复 test1 (npub1uz0t8j90jw6axw4tlm49jn488ck6hsa2aewxghl6x4n466zhyvjqkklf4v)

How can I contact you? This is a top priority for Nostr — everyone has given up on cold keys

You could DM me. I think I finally figured out how to receive these with coracle.

Kind-1 (TextNote)

2026-09-04T07:09:02Z

↳ 回复 事件不存在

845b6ff1c58ef0ce1b4ce47bc671f91f943838f1ddd30021d281e80655a21a1d

Gm☁

Kind-1 (TextNote)

2026-09-04T04:23:42Z

↳ 回复 事件不存在

731b735e1e93be01cdeab869123e7046c4faa66a4dbe8431ab2cb0212b44d7c5

I'm using my own app at https://www.inkan.cc. It's based on an older version of jumble (https://jumble.social). If you want to try out inkan, you can...

I'm using my own app at https://www.inkan.cc. It's based on an older version of jumble (https://jumble.social). If you want to try out inkan, you can find the relevant settings under Settings > General > Trust Score Filters. Or if you prefer jumble, I think they have similar settings, though I have not reviewed how these are structured in the latest version on their site.

Kind-1 (TextNote)

2026-09-04T03:32:09Z

↳ 回复 事件不存在

643031f2cbcada16959b786bc7de62b68246c9d438e46a5602176eed3af69913

This was the first time I turned on my web-of-trust filter, which managed to keep that spam wave at bay.

Kind-1 (TextNote)

2026-09-04T01:33:35Z

↳ 回复 事件不存在

75d955926f35d2d65e96a6818983bd0d38b08e4631344f967bf36115ee5cd59d

So maybe I could spill coffee as long as I don't hit the processor. And it looks like they are actually selling them in pairs!

Kind-1 (TextNote)

2026-09-03T13:40:05Z

↳ 回复 事件不存在

b19cec1de7e809c6808cfdad54126b9cbc2addc024d61c66c673e5f7deeab467

Still expensive, but not inconceivable. I dislike the idea of buying hardware that I can't comfortably spill coffee over.

Kind-1 (TextNote)

2026-09-03T12:32:53Z

↳ 回复 ABH3PO (npub1cgd35mxmy37vhkfcmjckk9dylguz6q8l67cj6h9m45tj5rx569cql9kfex)

Clients that don't do WoT moderation or some sort of spam prevention are unusable at this point.

Happily my client had this. Turned it on for the first time today.

Kind-1 (TextNote)

2026-09-03T11:57:05Z

↳ 回复 事件不存在

d6e422c6ceb8734b9bbff2f13ec5233a451837ed791d424c75229ef800d01f14

Ok so this talks about "large-model splits," which sounds like some kind of parallel execution across multiple machines none of which could handle the...

Ok so this talks about "large-model splits," which sounds like some kind of parallel execution across multiple machines none of which could handle the model by itself? That would be great if it works in practice. 🤨

Kind-1 (TextNote)

2026-09-03T10:33:06Z

↳ 回复 The Bullish ₿itcoiner (npub15ypxpg429uyjmp0zczuza902chuvvr4pn35wfzv8rx6cej4z8clq6jmpcx)

#Circl v0.102.0 Just got a lot of reply spam on one of my notes so here we are WoT. Shipping with ...

Same, turning on WoT took care of it for now.

Kind-1 (TextNote)

2026-09-03T08:45:36Z

↳ 回复 事件不存在

59cb1e7ecf9fe02261549e696d24fa65411a10eefbf6452e247ef1c6f2359c3b

I've been getting tons of spam from primal today.

Kind-1 (TextNote)

2026-09-03T08:44:44Z

↳ 回复 Contra (npub14hq5lgadtyy9dhvtszq46dnl0s0xwdddqr7e32rdqqhma8a4xhsspxjjzu)

This crap needs to get taken care of quick. 57 bot slop comments in 10 seconds. This just can’t be...

#MeToo

Kind-1 (TextNote)

2026-09-03T08:42:51Z

↳ 回复 事件不存在

bc95cc7c8b44002c73ec19bc50632e3d4b145a85858aa21b765556e5fb01840e

Now that's poetic.

Kind-1 (TextNote)

2026-09-03T07:53:23Z

↳ 回复 事件不存在

ba4421d3444b035d2b0c005851ca776e2a01c47a82a0c1ce5dee42a6b85bec55

"opinionated software" is the term I was looking for. I probably don't like it, I prefer things to be modular, each interchangeable part tied to the a...

"opinionated software" is the term I was looking for. I probably don't like it, I prefer things to be modular, each interchangeable part tied to the actual structure of the task it's handling. I haven't really played with AI apart from my anthropic subscription. The problem is that I don't know where to start and my head is already spinning. I did set up a couple of VMs in the way I described above, and maybe the next step would be to optimize this kind of setup for multiple VMs and automate it. The other thing that may be worth learning is how to run a local AI. I'm still under the impression that that's not really possible with my hardware, but maybe there is something tiny that runs on my laptop and that's a little bit useful ...

Kind-1 (TextNote)

2026-09-03T07:45:35Z

↳ 回复 事件不存在

a09574a20645dc244207157883cd0b4af4661937995cbc42927353d09330484b

#omarchy looks pretty cool, and having an OS "for the age of agents" sounds like a good idea. But I wonder what that means concretely. Maybe something...

#omarchy looks pretty cool, and having an OS "for the age of agents" sounds like a good idea. But I wonder what that means concretely. Maybe something that sets easily intelligible / controllable security boundaries. Maybe something that can spin up VMs for agents with one click and lets me inspect and intercept outgoing traffic from each of them.

Kind-1 (TextNote)

2026-09-03T07:08:01Z

Huh, reply spam wave in progress right now? Tons of word-salad replies from fresh pubkeys ...

Kind-1 (TextNote)

2026-09-03T06:34:24Z

You can now meet Inkan identities without logging in. https://image.nostr.build/1aa8a4c1a6827af5fce4248a88759a1e33d2521c09ef3d99caa28ae6fce4d565.jpg ...

You can now meet Inkan identities without logging in. https://image.nostr.build/1aa8a4c1a6827af5fce4248a88759a1e33d2521c09ef3d99caa28ae6fce4d565.jpg Open https://www.inkan.cc and click “Explore” in the nav bar. You’ll find a few of them there, hanging around outside the login gate. Remember, Inkan separates your identity from your signing key. If the signing key is leaked or lost, revoke it. Same identity. Same followers. New signing key.

Kind-1 (TextNote)

2026-09-03T05:09:11Z

↳ 回复 inkan (npub16xnpfx85k8wzdhctang6860g3u64lds5kac73ddjwlg0lxdg9g3su56z6l)

It's delegation, but it's quite different from NIP-26. Here is an explanation of how it works: no...

FYI, there is a draft NIP now👇 You can also go to https://www.inkan.cc and hit the "Explore" button to see these identities in action. No login requi...

FYI, there is a draft NIP now👇 You can also go to https://www.inkan.cc and hit the "Explore" button to see these identities in action. No login required. nostr:naddr1qvzqqqr4gupzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqy2hwumn8ghj7un9d3shjtnfde4kzm3wvd3j7qgwwaehxw309ahx7uewd3hkctcq9p3k7mry94ehgmmjv9nk2ttfv3jkuarfw35k2uedvehhyttwdaehgu3dvv6kuvp3vyk58zw2

Kind-1 (TextNote)

2026-09-02T11:55:24Z

↳ 回复 test1 (npub1uz0t8j90jw6axw4tlm49jn488ck6hsa2aewxghl6x4n466zhyvjqkklf4v)

Are you seeking any financial assistance for the project?

I suppose yes in principle, though not actively. I want to shepherd this to wider adoption and the focus is more on working with people who have the k...

I suppose yes in principle, though not actively. I want to shepherd this to wider adoption and the focus is more on working with people who have the knowledge and motivation to be part of it, and financial incentives should play a role in that, among other things.

Kind-1 (TextNote)

2026-09-02T11:05:35Z

↳ 回复 test1 (npub1uz0t8j90jw6axw4tlm49jn488ck6hsa2aewxghl6x4n466zhyvjqkklf4v)

Why not use a similar protocol to the one at https://bip47db.org/paper/ to look up NPUB addresses?

Not an expert, but it seems like this may make delegation and revocation declarations storable and discoverable on BTC, but it may be difficult to be ...

Not an expert, but it seems like this may make delegation and revocation declarations storable and discoverable on BTC, but it may be difficult to be sure that one has retrieved all such declarations unless one runs a full node. I haven't done any in-depth analysis, but it feels like that may be the problem with BTC.

Kind-1 (TextNote)

2026-09-02T10:56:54Z

↳ 回复 事件不存在

949ef560e68e541fc34992bf83c02f39cfcca98a193e1a8d79a0ebdbf356a0c1

Yes, you should absolutely use whatever is your regular client. 👍 Some fine print 📜 (I think you already know this): 1. You must ensure that your ev...

Yes, you should absolutely use whatever is your regular client. 👍 Some fine print 📜 (I think you already know this): 1. You must ensure that your events get OTS-timestamped shortly after their created_at. You can do this by including wss://relay.inkan.cc among your write relays since that relay includes a timestamping service. Or alternatively you can point a timestamping service to some other relay (including your own). The point is that your events need OTS timestamps shortly after their creation. Otherwise Inkan will treat them as not having been validly "signed and dated" and will refuse to display them later. 2. You must also ensure that the OTS timestamps are periodically fetched from the timestamping service, packaged into 31045 events, and distributed to relays for storage and retrieval. The Inkan client does this automatically for you when you are logged in. So if you don't log into www.inkan.cc for a while, the timestamps for your recent events may not get distributed to relays and, being unable to find these timestamps, the Inkan client will refuse to display your events. You can correct this situation by logging into the client later and having it catch up on the retrieval and distribution of the timestamps. However, it's better practice to retrieve the timestamps from the timestamping service sooner rather than later, so that you don't have to trust the service over a long period of time to keep your timestamps safe. FYI, you can also ask *another* pubkey to perform this retrieval and distribution of the timestamps on your behalf. 3. It's good practice to periodically retrieve your own 31045 timestamp events from relays so that you can store a backup copy of the timestamps, just as you may want to store a backup copy of your regular Nostr events. The Inkan client has a menu for doing this under "Inkan Settings." 4. You can use amethyst for *posting*, but to *view* the activity of your master identity, you need to go to a delegation-aware client, currently www.inkan.cc. FYI, you no longer need to log into the client to see your identity. Just open the "Explore" menu and meta should be listed there. Or you can just click https://www.inkan.cc/users/npub1u280zakdwcv23nqpgatsmz8lw6aj22aa6gjjlx0d50lqr8m8xucq7kf93q , share that profile link with anyone, etc.

Kind-1 (TextNote)

2026-09-02T09:41:18Z

Inkan basically works on mobile now. It's just a browser tab, nothing to install. To log in via NIP-46, I copy-pasted the nostrconnect from Inkan's l...

Inkan basically works on mobile now. It's just a browser tab, nothing to install. To log in via NIP-46, I copy-pasted the nostrconnect from Inkan's login screen into Amber. I think that's how I'll be using it on my phone going forward. Done hunting UI bugs myself for a bit, but if something feels off let me know and I can try to fix what actually bothers people.

Kind-1 (TextNote)

2026-09-02T07:32:04Z

↳ 回复 ngmi (npub14p7fhlz9wrlptt7a5mqqjkk79460k98r999l7dafv4fznqaa565qhjdzry)

IBM quantum computer solves classically intractable problem in 15 minutes https://www.sciencedaily....

It looks like they can't quite verify that the result is correct🙂 A few years ago I tried to learn quantum computing and made it through a good amoun...

It looks like they can't quite verify that the result is correct🙂 A few years ago I tried to learn quantum computing and made it through a good amount of linear algebra before getting distracted. I'm hoping to try again with help from AI. I'd love to understand Shor's algorithm.

Kind-1 (TextNote)

2026-09-01T23:30:36Z

Lots of updates to the Inkan client today, so anyone who's used it may want to hit ctrl+shift+R next time you visit the site. One of them automaticall...

Lots of updates to the Inkan client today, so anyone who's used it may want to hit ctrl+shift+R next time you visit the site. One of them automatically notifies you of future updates, but you only get that if you manually update now. 🤷‍♂

Kind-1 (TextNote)

2026-09-01T15:21:09Z

↳ 回复 ngmi (npub14p7fhlz9wrlptt7a5mqqjkk79460k98r999l7dafv4fznqaa565qhjdzry)

nostr:npub16xnpfx85k8wzdhctang6860g3u64lds5kac73ddjwlg0lxdg9g3su56z6l sent you a dm

Got it, thank you! By the way, if I don't respond to a DM in the future it's most likely because I didn't get it. In that case, you can also reach me ...

Got it, thank you! By the way, if I don't respond to a DM in the future it's most likely because I didn't get it. In that case, you can also reach me at the email address on the inkan website.

Kind-1 (TextNote)

2026-08-31T15:09:10Z

↳ 回复 事件不存在

a3e0b3116298df0a2cc2327125e8a10c70367b5cd74ca3dd1205c438548100b6

I updated the client a few minutes ago. You may want to log out, do ctrl+shift+R (or the equivalent for your device) to load the new version, and log ...

I updated the client a few minutes ago. You may want to log out, do ctrl+shift+R (or the equivalent for your device) to load the new version, and log in again. You might also want to check, under "Settings > Inkan Settings > Delegation & Timestamping", that the first five toggles are set to "Running" (the last toggle "Apply timestamp filter to all pubeys ..." should be set to "Stopped"). You can also go to "Explore" and make sure that "Tracking Delegations" is enabled for your master pubkey. If none of this helps, I wonder what type of device you are using? Are you using NIP-7 or NIP-46? Are you maybe using your browser in "Private Mode" (Inkan doesn't work well in that case). FYI, I can see the events in your delegator profile page on my side.

Kind-1 (TextNote)

2026-08-30T18:19:22Z

Made an update to the client that allows you to see master identities without logging in at all. Just go to https://www.inkan.cc and click "Explore" t...

Made an update to the client that allows you to see master identities without logging in at all. Just go to https://www.inkan.cc and click "Explore" to view a list of them. This should be especially helpful for anyone without a browser extension or remote signer.

Kind-1 (TextNote)

2026-08-30T17:42:19Z

↳ 回复 The Fishcake (nostr.build) (npub137c5pd8gmhhe0njtsgwjgunc5xjr2vmzvglkgqs5sjeh972gqqxqjak37w)

Is there a nip for that or is it implemented only in that app? One constraint I have is not needing ...

There's a draft NIP below👇 https://www.inkan.cc is currently the only client that implements this. It does require staying up-to-date with on-chain r...

There's a draft NIP below👇 https://www.inkan.cc is currently the only client that implements this. It does require staying up-to-date with on-chain records of delegation and revocation. It's not trivial to implement, but probably worth thinking about over the long term. nostr:naddr1qvzqqqr4gupzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj7qgnwaehxw309ahkvenrdpskjm3wwp6kytcq9p3k7mry94ehgmmjv9nk2ttfv3jkuarfw35k2uedvehhyttwdaehgu3dvv6kuvp3vyxuud8n

Kind-1 (TextNote)

2026-08-30T11:10:59Z

↳ 回复 The Fishcake (nostr.build) (npub137c5pd8gmhhe0njtsgwjgunc5xjr2vmzvglkgqs5sjeh972gqqxqjak37w)

Posting from that client now, seems to work. What else are we missing? https://i.nostr.build/EpRC4qi...

Yes, I should add that regular uploads from the inkan client to nostr.build already work well (extremely grateful for that!). Further "supporting" it ...

Yes, I should add that regular uploads from the inkan client to nostr.build already work well (extremely grateful for that!). Further "supporting" it would mean to make nostr.build itself delegation-aware.

Kind-1 (TextNote)

2026-08-30T11:04:04Z

↳ 回复 事件不存在

508b6cd06a50d0f86b7f8174be11f8b7db1980a4cb6dc6c9d660941e0e56d368

Sure, the idea is that Inkan splits the key that secures your identity from the key you use for everyday signing. The identity key stays in cold stora...

Sure, the idea is that Inkan splits the key that secures your identity from the key you use for everyday signing. The identity key stays in cold storage and delegates to the hot signer. You can see meta’s setup by logging into https://www.inkan.cc with NIP-7. It should show a welcome popup with identities you can follow, including meta’s master identity (i.e. nostr:npub1u280zakdwcv23nqpgatsmz8lw6aj22aa6gjjlx0d50lqr8m8xucq7kf93q). If you follow that and then open its profile, you can see its notes and interact with it. For nostr.build, “supporting” it probably means that when someone authenticates, you check whether the key that signed the authentication is acting on behalf of a master identity, and if so attribute the login/storage account/action to that master identity. Then if the signer is later revoked and replaced, nostr.build can automatically recognize the replacement signer as acting for the same continuous identity. And when you need a historical record of actions attributable to an identity, you can use OTS to make it provable later that the action happened during a period when the on-chain delegation was live. Here's a NIP with more detailed specs👇 nostr:naddr1qvzqqqr4gupzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj7qgnwaehxw309ahkvenrdpskjm3wwp6kytcq9p3k7mry94ehgmmjv9nk2ttfv3jkuarfw35k2uedvehhyttwdaehgu3dvv6kuvp3vyxuud8n

Kind-1 (TextNote)

2026-08-30T10:52:16Z

↳ 回复 事件不存在

000130e7ea35f821a0dd73811596ac7747fbfe22e2e9afe4b8058aba4cae0048

You could try to stamp delegation and revocation declarations on BTC, but I wasn't sure if there's an easy way to look them up by participating keys, ...

You could try to stamp delegation and revocation declarations on BTC, but I wasn't sure if there's an easy way to look them up by participating keys, so it seemed easier to use Ethereum. As for gas prices, I just looked up a series of transactions recording a 3-key delegation chain, and it came to about 518k gas in total.

Kind-1 (TextNote)

2026-08-30T00:30:28Z

Curious what it feels like to use a Nostr identity that survives a leaked key? https://image.nostr.build/7e6255e269eb1237ae6d7f38114fca59decae9de3e9f...

Curious what it feels like to use a Nostr identity that survives a leaked key? https://image.nostr.build/7e6255e269eb1237ae6d7f38114fca59decae9de3e9f353f5345de20eb717653.jpg Get an Inkan toy identity and find out. It takes a minute and a few clicks in your browser, and you get the whole setup of a real Inkan identity, as a throwaway sample you can play with: a master key you can transfer to cold storage, a signing key for everyday use, and a delegation chain linking them. Just open https://www.inkan.cc and hit "Get a Toy Identity." Recording the identity on-chain costs a tiny amount in gas fees. If you'd like to try Inkan and don't hold ETH, I'm usually happy to cover it. You can make the request directly from the identity creation wizard. Go ahead and create one, make it say hello to the other test identities walking around, or to anyone else on Nostr.

Kind-1 (TextNote)

2026-08-29T13:56:40Z

↳ 回复 事件不存在

c64d04e11bd16b69aa86150a26a1b5a27b9e69c78c6969cf53cd01eeab76501a

"Key delegation is a very evolving space ..." That's one of the things people say about key delegation. Another thing they say is that delegation is ...

"Key delegation is a very evolving space ..." That's one of the things people say about key delegation. Another thing they say is that delegation is pretty much impossible and will never be usefully implemented etc. 👇 My own diagnosis is that there is currently no "social proof" for the practice. That's pretty much all there is to it. nostr:nevent1qvzqqqqqqypzq3svyhng9ld8sv44950j957j9vchdktj7cxumsep9mvvjthc2pjuqyfhwumn8ghj7mmxve3ksctfdch8qatz9uqsuamnwvaz7tmwdaejumr0dshsqgqjeuapgq7m6rzkgh8d9jayre7mzvcptzp85s7h82y0k5q7sd2hxs7wflsa

Kind-1 (TextNote)

2026-08-29T13:25:34Z

↳ 回复 事件不存在

cab76b7020db95a0a4570097b300ab5c821abe867ff9e7a5721038243118588a

Happy to. nostr:npub1rx039j20u63fqwggc3h0ewg3jrvejwmnszyxexpjrdvu2y7u49esyzu0mp is the signer key for meta's cold-storage identity, the identity itsel...

Happy to. nostr:npub1rx039j20u63fqwggc3h0ewg3jrvejwmnszyxexpjrdvu2y7u49esyzu0mp is the signer key for meta's cold-storage identity, the identity itself is nostr:npub1u280zakdwcv23nqpgatsmz8lw6aj22aa6gjjlx0d50lqr8m8xucq7kf93q (longer story, for a NIP write-up see below). Regular Nostr clients only ever show the signer. To actually see the identity, its profile and posts etc., log into www.inkan.cc with your NIP-7 extension. The client should show you a welcome popup with a list of identities you can follow that includes nostr:npub1u280zakdwcv23nqpgatsmz8lw6aj22aa6gjjlx0d50lqr8m8xucq7kf93q, so you can follow it and then go to its profile page to see its events and interact with it. So I think what meta wants is the mailstr address on the master identity, with everyday login staying on the signer. That should be doable, the delegation between the two keys is on-chain, you'd read it and attribute the session up. Emails sent by the identity will probably also want OTS timestamps so it's checkable the delegation was live at the time the email was sent. I haven't really dug into how mailstr, but making it delegation-aware would be a great thing. Here are more details, and I'm always happy to explain further: nostr:naddr1qvzqqqr4gupzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj7qg3waehxw309ahx7um5wghxcctwvshsq2rrdakxgttnw3hhyct8v5kkjer9de6xjarfv4ej6en0wgkkummnw3ez6ce4dccrzcgtu4kzh

Kind-1 (TextNote)

2026-08-29T10:49:11Z

↳ 回复 ngmi (npub14p7fhlz9wrlptt7a5mqqjkk79460k98r999l7dafv4fznqaa565qhjdzry)

Thanks! Added to our todo 👋

Thanks.

Kind-1 (TextNote)

2026-08-27T08:58:18Z

↳ 回复 inkan (npub16xnpfx85k8wzdhctang6860g3u64lds5kac73ddjwlg0lxdg9g3su56z6l)

I've got a gitlab page which I haven't used much. The Management Utility source is currently only on...

Here it is: https://gitlab.com/inkan_dev/inkan-management-utility/

Kind-1 (TextNote)

2026-08-27T07:49:20Z

↳ 回复 ngmi (npub14p7fhlz9wrlptt7a5mqqjkk79460k98r999l7dafv4fznqaa565qhjdzry)

Is there a git by chance?

I've got a gitlab page which I haven't used much. The Management Utility source is currently only on the Inkan website but I can put it on gitlab, I j...

I've got a gitlab page which I haven't used much. The Management Utility source is currently only on the Inkan website but I can put it on gitlab, I just need to look up my login later when I get home. https://gitlab.com/inkan_dev

Kind-1 (TextNote)

2026-08-27T06:49:27Z

↳ 回复 事件不存在

ac8a088d7697a8622b386bc5baf185ba8da994d98ec1337159e5540df04376dd

If you ever feel like pointing it at the Inkan Management Utility, please do so. It's the only place where Inkan generates / handles private keys (oth...

If you ever feel like pointing it at the Inkan Management Utility, please do so. It's the only place where Inkan generates / handles private keys (other than the identities created in the browser, which are advertised as "toys"). The source code for the Management Utility is available as a tar archive here: https://www.inkan.cc/settings/inkan-management-utility I'd obviously be very curious.

Kind-1 (TextNote)

2026-08-27T06:32:53Z

キーが漏れても終わらないNostrアイデンティティって、実際どんな感じなのか。 それを試すための、Inkanの “Toy Identity” を作れるようにしました。 https://image.nostr.build/2879147a5140ce76af37d28d556c04cad13624a...

キーが漏れても終わらないNostrアイデンティティって、実際どんな感じなのか。 それを試すための、Inkanの “Toy Identity” を作れるようにしました。 https://image.nostr.build/2879147a5140ce76af37d28d556c04cad13624a319d7fd34c1f580fafea65f56.jpg 実際のInkanアイデンティティと同じ構成を、ブラウザ上で試せます。 マスターキー、署名用キー、委任チェーンまで含まれています。 作成は www.inkan.cc の「Get a Toy Identity」から。 オンチェーン記録には、ETH建てのごく少額のガス代がかかります。 ETHがなくても、試してみたい方にはこちらで負担できることが多いです。 作成画面からリクエストできます。 作ったら、他のテスト用アイデンティティに挨拶させてみてください。

Kind-1 (TextNote)

2026-08-26T09:40:54Z

Curious what it feels like to use a Nostr identity that survives a leaked key? https://image.nostr.build/b2dc58bddf9a5364af7bf471b68250a449185eb2a963...

Curious what it feels like to use a Nostr identity that survives a leaked key? https://image.nostr.build/b2dc58bddf9a5364af7bf471b68250a449185eb2a9630be52901f2d269c4095e.jpg Get an Inkan toy identity and find out. It takes a minute and a few clicks in your browser, and you get the whole setup of a real Inkan identity, as a throwaway sample you can play with: a master key you can transfer to cold storage, a signing key for everyday use, and a delegation chain linking them. Just open https://www.inkan.cc and hit "Get a Toy Identity." Recording the identity on-chain costs a tiny amount in gas fees. If you'd like to try Inkan and don't hold ETH, I'm usually happy to cover it. You can make the request directly from the identity creation wizard. Go ahead and create one, make it say hello to the other test identities walking around, or to anyone else on Nostr.

Kind-1 (TextNote)

2026-08-25T05:53:39Z

↳ 回复 5538e28a... (npub125uw9znxawyrvrc4lraf2ertm5k652ve4t87f74v7s7scp2qk2qswmlek0)

i never knew there was a tito's brand of vodka. nothing to do with the former yugoslavian dictator i...

I only know about it because I used to live in Austin. It's "Tito Beveridge" apparently. And it looks like rakia is the spirit of the Balkans.

Kind-1 (TextNote)

2026-08-24T10:26:20Z

↳ 回复 事件不存在

243ed3d203170a8ccf67af211cee96be4fe4512a7d9920d85fbdd804008c76fb

Thanks, good to know. I'd been using nak, which is great but not the most convenient for this, especially since you have to specify the relays manuall...

Thanks, good to know. I'd been using nak, which is great but not the most convenient for this, especially since you have to specify the relays manually.

Kind-1 (TextNote)

2026-08-22T02:05:02Z

So I've been wanting to publish arbitrary events from my client. This came up recently when I tried to post a 30817 draft NIP and at first couldn't ...

So I've been wanting to publish arbitrary events from my client. This came up recently when I tried to post a 30817 draft NIP and at first couldn't find a place that handles that kind. Also I often want to post events with similar content to events I posted earlier, for example to update addressable events, or to post something from an old key re-signed by my current key. And sometimes there are events generated by other clients that I *almost* like but want to modify in some way, e.g. by removing their client tag. So I gave my Post window in Inkan a raw JSON mode. One thing I especially like is that I can paste an event that was generated somewhere else and may have been previously signed, edit it, hit a "Normalize" button which strips out the old id, pubkey, sig, and created_at, see exactly what I'll sign, and be told if the JSON is off. Clicking "Post" then publishes it to the usual outbox / inbox relays. Very useful.

Kind-1 (TextNote)

2026-08-22T01:51:45Z

↳ 回复 事件不存在

5ddad976f08f6cd799b86efed8615d534a6428053a4f521df88bc6762a2a9369

I had dabbled with making something similar to ColdIron as an airgapped place to create Nostr identities and sign key delegation and revocation transa...

I had dabbled with making something similar to ColdIron as an airgapped place to create Nostr identities and sign key delegation and revocation transactions. I didn't go about it as thoroughly as you seem to have done. I basically started with Tails OS, asked an AI to strip out network functionality, and added the Inkan Management Utility, resulting in this: https://gitlab.com/inkan_dev/inkan-offline-live I wonder whether the Management Utility would run inside ColdIron. I may take a closer look.

Kind-1 (TextNote)

2026-08-21T11:48:27Z

Cold-Storage Identities for Nostr

## NIP Proposal `draft` `optional` This NIP specifies online identities whose private key can be created in cold storage and stay there permanently. ...

Kind-30023 (Article)

2026-08-21T11:25:56Z

↳ 回复 cloud fodder (npub10npj3gydmv40m70ehemmal6vsdyfl7tewgvz043g54p0x23y0s8qzztl5h)

Yah, I just use nak. I forget what bugs I hit but basically couldn't publish there..

Publishing from NostrHub doesn't seem to work, even after I set my relay list.

Kind-1 (TextNote)

2026-08-21T10:58:09Z

↳ 回复 Laeserin (npub1m4ny6hjqzepn4rxknuq94c2gpqzr29ufkkw7ttcxyak7v43n6vvsajc2jl)

The event isn't on the relays or is encrypted. You need to make sure that it is a proper kind 30817 ...

Thanks, posting NIPs through NostrHub seems to be broken. I was able to publish a 30817 through your imwald client, here it is: nostr:nevent1qqsgudcj...

Thanks, posting NIPs through NostrHub seems to be broken. I was able to publish a 30817 through your imwald client, here it is: nostr:nevent1qqsgudcj7x72z697zmjs6wj25wu76zzytw2l8tysn6fdps4c36vemvqzyrg6v9yc7jcacfklp0kdrglfaz8n2hakzjmhr694kfmaplue4q4zxg38859

Kind-1 (TextNote)

2026-08-21T10:56:33Z

↳ 回复 事件不存在

e0a0f78e6381889b05ea0ca303ae25068e4c2aa03e439030a2245736854dd4dc

It seems like I should run this against my codebase.

Kind-1 (TextNote)

2026-08-21T04:02:01Z

↳ 回复 inkan (npub16xnpfx85k8wzdhctang6860g3u64lds5kac73ddjwlg0lxdg9g3su56z6l)

Done. https://nostrhub.io/naddr1qvzqqqrcvypzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqqs...

Huh, it looks like NostrHub isn't actually surfacing the draft NIP or the link to Inkan that I published there. That would make that site unsuitable f...

Huh, it looks like NostrHub isn't actually surfacing the draft NIP or the link to Inkan that I published there. That would make that site unsuitable for discussing NIPs. Maybe I should republish the NIP here as a long-form note, with markdown for better formatting ...

Kind-1 (TextNote)

2026-08-21T01:56:04Z

A draft NIP for Inkan 👇 nostr:nevent1qvzqqqqqqypzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj7qg4waehxw3...

A draft NIP for Inkan 👇 nostr:nevent1qvzqqqqqqypzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj7qg4waehxw309aex2mrp0yhxjmntv9hzucmr9uqzqyuvffj6ggl2c788p7g08th6qeht3xqm2kllg7keyxv94gddhvcwjnuztd

Kind-1 (TextNote)

2026-08-20T10:51:11Z

↳ 回复 arkinox (npub1arkn0xxxll4llgy9qxkrncn3vc4l69s0dz8ef3zadykcwe7ax3dqrrh43w)

have AI examine the nips repo for style and write up a spec NIP to publish on nostrhub.io 🥂

NIP-XX Cold-Storage Identities for Nostr draft optional This NIP specifies online identities whose private key can be created in cold storage and s...

NIP-XX Cold-Storage Identities for Nostr draft optional 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. ▌ 1. How it works 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. ▌ 2. Delegations between keys 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's behalf. When it does not, the second has no such authority. 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. ▌ 3. How a direct delegation is created A direct delegation from key pair X to key pair Y is created when both key pairs sign a Declaration of Delegation of Signing Authority, 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. 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. As part of the declaration, X and Y also specify whether X can revoke the delegation unilaterally or whether Y's consent is required. The default is unilateral revocation by X, and it is the right default for most users: if Y's key is ever lost, X can still revoke it alone. Were Y's consent required, a lost Y could never be revoked, because Y would no longer be available to sign. ▌ 4. How a direct delegation is terminated A direct delegation from X to Y is terminated when X signs a Declaration of Revocation of Signing Authority and records it on-chain, with Y'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's to close. 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. ▌ 5. Permanent key invalidation The third declaration is the Declaration of Permanent Invalidation of a Key Pair, 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. 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. ▌ 6. Delegation timelines 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. ▌ 7. Bitcoin timestamping of events Attribution needs an objective, auditable rule for when the signing of each event is deemed to have occurred. A self-declared created_at proves nothing on its own. Events are anchored to Bitcoin using OpenTimestamps (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's created_at 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 "shortly after" 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. A proof over the event id alone would show only that the event'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 31045 events (§10). ▌ 8. Attribution of events 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: 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. So a text note signed by a delegatee Y during a valid delegation period from X appears on X's timeline and is displayed there under X's profile, as if posted by X, even though X's own key never signed it. ▌ 9. Two profiles, one identity 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's own profile, and in addition on the profile of each of its delegators, up to your top-level identity. You set the signer's profile by publishing a kind-0 event as usual. Separately, a signer can also set a profile for 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 31065 (§10). Your identity'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. ▌ 10. Event kinds This NIP defines two addressable event kinds (kinds 30000 to 39999 in NIP-01, where the latest event for a given (pubkey, kind, d-tag) replaces any earlier one). Kind | Name | d tag | Signed by 31045 | Bitcoin timestamp | id of the referenced event | any party 31065 | Attributed profile | the delegator's pubkey | a delegatee ▌ 10.1 Kind 31045: Bitcoin timestamp A 31045 event carries an OpenTimestamps proof for another event (§7). It is addressable by the referenced event's id, so a consumer finds the proof for an event E by querying kind 31045 with d = [E.id], 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. 31045 event tags, marked (yes) if required, (no) if not: d (yes): Id of the referenced event. The addressable key. s (yes): Signature of the referenced event. With d, binds the proof to a signed event, not just an id. p (no): Author pubkey of the referenced event. b (no): Bitcoin block height of the attestation, or not_yet_available while pending. t (no): Bitcoin block time (unix seconds), or not_yet_available while pending. c (no): created_at of the referenced event, when known. alt (no): NIP-31 summary, e.g. Complete Bitcoin Timestamp. content is the base64-encoded OpenTimestamps (.ots) proof. Its leaf must commit to sha256(referenced_id || referenced_signature), the concatenation of the referenced event'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. Only d and s, together with a verifiable content proof, are required to verify a timestamp. Every single-letter tag (d, p, s, b, t, c) is relay-indexed, so it can also serve as a query key, for example finding proofs by referenced author (p) or by anchoring block (b). b and t additionally duplicate what the proof itself attests; alt is not indexed and serves only as a NIP-31 display label. { "kind": 31045, "tags": [ ["d", "<referenced-event-id>"], ["p", "<referenced-event-author>"], ["s", "<referenced-event-signature>"], ["b", "<bitcoin-block-height>"], ["t", "<bitcoin-block-time>"], ["alt", "Complete Bitcoin Timestamp"], ["c", "<referenced-event-created-at>"] ], "content": "<base64 .ots proof committing to sha256(id||sig)>" } ▌ 10.2 Kind 31065: Attributed profile A 31065 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 d tag is the delegator'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 event.pubkey, the signer, is not the subject d. 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. 31065 event tags, marked (yes) if required: d (yes): The subject: the delegator's pubkey. alt (yes): The exact string Attributed profile. content is a JSON object carrying the subject's presentation. Its kind-0-style fields (name, display_name, about, picture, banner, website, nip05, lud16) mean what they mean in NIP-01 and NIP-05. It may also carry the subject's follow list, mute list, and a map giving relay lists for the members of the identity's delegation network (the keys tied to it by delegation), so a client can present and route for the identity without a further fetch. { "kind": 31065, "pubkey": "<delegatee-that-signs>", "tags": [ ["d", "<delegator-pubkey-the-profile-is-for>"], ["alt", "Attributed profile"] ], "content": "{\"name\":\"…\",\"display_name\":\"…\",\"about\":\"…\",\"website\":\"…\",\"nip05\":\"…\",\"picture\":\"…\",\"relay_lists_by_pubkey\":{\"<pubkey>\":{\"readWriteRelays\":[[\"r\",\"<relay-url>\",\"<scope>\"]],\"favoriteRelays\":[\"<relay-url>\"],\"relaySets\":[{\"id\":\"…\",\"name\":\"…\",\"relayUrls\":[\"<relay-url>\"]}]}},\"publicly_muted_pubkey_hex_ids\":[\"<muted-pubkey>\"],\"current_snapshot_of_dir_indir_followed_pubkey\":[[\"p\",\"<followed-pubkey>\"]]}" } Because 31065 is addressable, the current profile for an identity is simply the latest one whose d is that identity, signed by a key that is currently its delegatee. When the signer is rotated, the new signer republishes, and the identity's face carries across the change unbroken. ▌ 11. Reference implementation Inkan (https://www.inkan.cc) implements this specification as a working Nostr client and a cooperating relay at wss://relay.inkan.cc. Delegation, revocation, and permanent invalidation are recorded by an Ethereum contract deployed at 0x385C0A272b1f44687cb360557b25827bD7CdB7eb, which is the normative reference for the exact on-chain declaration encoding. A separate, network-disconnected "Management Utility" 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.

Kind-1 (TextNote)

2026-08-20T10:46:19Z

↳ 回复 arkinox (npub1arkn0xxxll4llgy9qxkrncn3vc4l69s0dz8ef3zadykcwe7ax3dqrrh43w)

have AI examine the nips repo for style and write up a spec NIP to publish on nostrhub.io 🥂

Done. https://nostrhub.io/naddr1qvzqqqrcvypzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqqskxmmvvskhxar0wfskwefdd9jx2mn5d96xjetn94nx7u3ddehhx...

Done. https://nostrhub.io/naddr1qvzqqqrcvypzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqqskxmmvvskhxar0wfskwefdd9jx2mn5d96xjetn94nx7u3ddehhxarjnjhzrn

Kind-1 (TextNote)

2026-08-20T10:38:26Z

↳ 回复 事件不存在

a8133f2b711d1e1452ca08696ad5580876ba7862e247c42c1b75b7af3b98dc39

Good, I'm seeing your 31045 timestamp events on the relay. Now that the timestamps are available, the events on nostr:npub1u280zakdwcv23nqpgatsmz8lw6...

Good, I'm seeing your 31045 timestamp events on the relay. Now that the timestamps are available, the events on nostr:npub1u280zakdwcv23nqpgatsmz8lw6aj22aa6gjjlx0d50lqr8m8xucq7kf93q's profile page should become visible again. If you still cannot see them, let me know - I can see them on my end. I think the reason why the toggles were disabled is that you may have logged in with your signer key before I had recorded your identity on-chain. If the client doesn't detect an on-chain identity when a key first logs in, I think it disables these toggles by default. This setting then sticks even if an on-chain identity is later detected. I should try to make this less confusing somehow.

Kind-1 (TextNote)

2026-08-19T19:42:53Z

↳ 回复 arkinox (npub1arkn0xxxll4llgy9qxkrncn3vc4l69s0dz8ef3zadykcwe7ax3dqrrh43w)

have AI examine the nips repo for style and write up a spec NIP to publish on nostrhub.io 🥂

Thanks, that might work. I'll give it a try.

Kind-1 (TextNote)

2026-08-19T16:30:28Z

↳ 回复 inkan (npub16xnpfx85k8wzdhctang6860g3u64lds5kac73ddjwlg0lxdg9g3su56z6l)

I think that's most likely the issue I pointed out in the note below. You have probably been postin...

By the way, you might be able to speed up the process of catching up on the publication of the timestamps by going to Settings >> Inkan Settings >> D...

By the way, you might be able to speed up the process of catching up on the publication of the timestamps by going to Settings >> Inkan Settings >> Delegation & Timestamping and on that page switch off and then immediately back on the two toggles that say "Periodially collect timestamps info from TS Server" and "Periodically publish timestamps info to relays". Switching these toggles off and back on should restart these jobs immediately (otherwise they just run periodically while you are logged in). Another thing you can try is to switch the "Apply timestamp filter" toggle off, and then go back to the profile page of your master delegator key. I'd predict that the currently missing events will be shown because the functionality that filters out events for which no valid timestamp could be found will have been turned off. Playing with the "Apply timestamp filter" toggle and observing its effect can be useful for getting a more thorough understanding of how Inkan works.

Kind-1 (TextNote)

2026-08-19T15:47:44Z

↳ 回复 事件不存在

6bfc8a5aad1668ea8de1f565422d4cbfe800656c2065927d055d148aed2ed101

I think that's most likely the issue I pointed out in the note below. You have probably been posting from a client other than https://www.inkan.cc, w...

I think that's most likely the issue I pointed out in the note below. You have probably been posting from a client other than https://www.inkan.cc, which means that you didn't automatically publish 31045 OTS timestamps for your events to the Inkan relay (only the Inkan client takes care of this automatic publication). This means that Inkan now cannot find these timestamps for your events on the relay and thus treats your events as invalid. You should be able to correct this by logging into the Inkan client and making sure that your signer extension approves the signing of 31045 events. You should then probably stay logged in for some time since the client's catching up on the publication of the missing events might take a while. The timestamps for your events exist on the timestamping server, your Inkan client just needs to catch up with publishing them to the relay as 31045 events. nostr:nevent1qvzqqqqqqypzp5dxzjv0fvwuym0shmx350573re4t7mpfdm3az6mya7sl7v6s23rqy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj7qghwaehxw309aex2mrp0yh8qunfd4skctnwv46z7qpq0s68vaad834p7c9jqj8sppfge4wj0qx0dqmfdrn693gucta8g0xsuxw0fn

Kind-1 (TextNote)

2026-08-19T15:36:39Z

↳ 回复 ngmi (npub14p7fhlz9wrlptt7a5mqqjkk79460k98r999l7dafv4fznqaa565qhjdzry)

Running npub1u280zakdwcv23nqpgatsmz8lw6aj22aa6gjjlx0d50lqr8m8xucq7kf93q as a secure backup to this n...

If you feel like it, you can even delegate from your Inkan seed key "npub1u280zakdwcv23nqpgatsmz8lw6aj22aa6gjjlx0d50lqr8m8xucq7kf93q" down to your u...

If you feel like it, you can even delegate from your Inkan seed key "npub1u280zakdwcv23nqpgatsmz8lw6aj22aa6gjjlx0d50lqr8m8xucq7kf93q" down to your usual pubkey for ngmi, i.e. down to "npub14p7fhlz9wrlptt7a5mqqjkk79460k98r999l7dafv4fznqaa565qhjdzry" If you did that, any future posts by your usual ngmi key will get automatically attributed to the Inkan seed key (until you revoke the delegation). If you include the Inkan relay when making your usual ngmi posts, you'll also get automatic OTS timestamps for notes you post with your ngmi key, which you can download and keep for your records. Other people will of course be able to see your ngmi posts from any Nostr client as usual. And if they log into Inkan, they'll also be able to see your events being attributed to your Inkan seed key identity. To create a delegation like that, you'd need to use the "Build Custom Transaction" menu in the Inkan Management Utility. You can download a Linux AppImage of the Management Utility here: https://www.inkan.cc/settings/inkan-management-utility The actual delegation you'd be creating would be from your current Inkan signer key to the ngmi key, extending the delegation chain down to your ngmi key. Happy to walk you through creating this kind of transaction and sponsor it if you're interested. But no pressure, I don't mean to overwhelming, just wanted to point this out as an option.🙇

Kind-1 (TextNote)

2026-08-18T18:12:13Z

↳ 回复 事件不存在

0000f42556db17d015c83d75e3f61fe44338e43fdaed1f01bfd8b26eba7f5626

It looks like most of my Nostr events get timestamped within 30 minutes, often faster than 15 minutes. A few take up to 45 minutes. And then there is ...

It looks like most of my Nostr events get timestamped within 30 minutes, often faster than 15 minutes. A few take up to 45 minutes. And then there is the occasional outlier taking 2 1/2 hours. The client uses a default setting under which it considers an event "validly signed and dated" if its OTS timestamp comes within 4 hours after its created_at.

Kind-1 (TextNote)

2026-08-18T17:29:54Z