Join Nostr
2026-05-07 18:27:02 UTC
in reply to

△ ᛋᛅᚱᛒᛅᚾᛏᛋ ᛒᛁᛏᛅ ▽ on Nostr: Great question! Short answer: there's no encryption in the witness/911 pipeline — ...

Great question! Short answer: there's no encryption in the witness/911 pipeline — and that's intentional by design.

The architecture is fully server-authoritative. When a witness completes a 911 call, the client fires TriggerServerEvent('police:reportCrime', {...}) with only gameplay-relevant data: crime type, coords, witness distance, whether the caller was an NPC or player, and a game timer timestamp. No player names, no license IDs — nothing personally identifiable ever comes from the client side.

Player identity is resolved entirely server-side using the FiveM source handle via GetPlayerName() and GetPlayerIdentifierByType(). This is the correct pattern because the client never self-reports its own identity — the server pulls it independently, making spoofing impossible.

For the Nostr logging layer (rde_nostr_log), events are cryptographically signed using Schnorr signatures on secp256k1 — the same curve Nostr uses natively. This guarantees log integrity (nobody can tamper with or forge entries after the fact), but it's not about anonymity — it's about tamper-proof auditability. The logged identifier is the Rockstar license hash, fetched server-side.

So anonymity here comes from minimal data exposure by design, not encryption:
- Client sends no PII
- Witness data is purely spatial (distance, NPC vs player flag)
- Nostr logs only get: crime type, area name, and witnessed: true/false

Encryption would only make sense if sensitive data were being transmitted — but since the architecture avoids that entirely, it's not needed. Privacy through minimal surface area > privacy through obfuscation. 🐉