The keygen for all of the libraries I have used draw full 25...

Silberengel

npub1l5sga6xg72phsz5422ykujprejwud075ggrr3z2hwyrfgr7eylqstegx9z

hex

f11076b166ebbbe859a4db7f8996c7b998cd5a16c3e9e18599c6dc2fd07d0de4

nevent

nevent1qqs0zyrkk9nwhwlgtxjdklufjmrmnxxdtgtv860pskvudhp06p7smeqprpmhxue69uhhyetvv9ujuem4d36kwatvw5hx6mm9qgs06gywary09qmcp2249ztwfq3ue8wxhl2yyp3c39thzp55plvj0sgjjc88n

Kind-1 (TextNote)

2026-08-02T14:09:39Z

The keygen for all of the libraries I have used draw full 256-bit values from OS CSPRNGs. Code audited:

JavaScript / TypeScript

  • nostr-tools (versions 2.15 – 2.23.5)
  • @nostr/tools 2.20.0 (the JSR-published variant of nostr-tools)
  • @nostr-dev-kit/ndk 2.14.35 (+ ndk-cache-dexie)
  • @contextvm/sdk —(ContextVM signer, wraps nostr-tools)

Go

  • go-nostr (nbd-wtf) (v0.27.0, notably older)

Kotlin / JVM

  • no Nostr library; direct implementation on top of ACINQ secp256k1-kmp 0.17.3 (plus BouncyCastle in the Android app)

Elixir

  • no Nostr library; implements on top of lib_secp256k1 0.7.1

PHP

  • swentel/nostr-php 1.9.4 (server side; pulls in elliptic-php)

Python

  • python-nostr

https://media.tenor.com/krz9WMkpxAYAAAAC/this-is-houston-go-for-launch.gif

原始 JSON

{
  "kind": 1,
  "id": "f11076b166ebbbe859a4db7f8996c7b998cd5a16c3e9e18599c6dc2fd07d0de4",
  "pubkey": "fd208ee8c8f283780a9552896e4823cc9dc6bfd442063889577106940fd927c1",
  "created_at": 1785679779,
  "tags": [
    [
      "imeta",
      "url https://media.tenor.com/krz9WMkpxAYAAAAC/this-is-houston-go-for-launch.gif",
      "m image/gif",
      "dim 498x209"
    ],
    [
      "client",
      "imwald"
    ]
  ],
  "content": "The keygen for all of the libraries I have used draw full 256-bit values from OS CSPRNGs. Code audited:\n\n# JavaScript / TypeScript\n\n* nostr-tools (versions 2.15 – 2.23.5) \n* @nostr/tools 2.20.0 (the JSR-published variant of nostr-tools)\n* @nostr-dev-kit/ndk 2.14.35 (+ ndk-cache-dexie)\n* @contextvm/sdk —(ContextVM signer, wraps nostr-tools)\n\n# Go\n\n* go-nostr (nbd-wtf) (v0.27.0, notably older)\n\n# Kotlin / JVM\n\n* no Nostr library; direct implementation on top of ACINQ secp256k1-kmp 0.17.3 (plus BouncyCastle in the Android app)\n\n# Elixir\n\n* no Nostr library; implements on top of lib_secp256k1 0.7.1\n\n# PHP\n\n* swentel/nostr-php 1.9.4 (server side; pulls in elliptic-php)\n\n# Python\n\n* python-nostr\n\nhttps://media.tenor.com/krz9WMkpxAYAAAAC/this-is-houston-go-for-launch.gif",
  "sig": "c03e09580c7e7ddea56fe26474c479b3725ab5da6084357c2b1771249923cee57b2cf619264aa402ca7ff49c2d776c7088392bef21860f399c3189444e799117"
}