15 lines
770 B
SQL
15 lines
770 B
SQL
-- Migration: Add blossom_seckey table for storing server private key
|
|
-- This table stores the Blossom server's secp256k1 private key used for:
|
|
-- - Signing admin response events (Kind 23457)
|
|
-- - Decrypting admin commands (NIP-44)
|
|
|
|
CREATE TABLE IF NOT EXISTS blossom_seckey (
|
|
id INTEGER PRIMARY KEY CHECK (id = 1), -- Only one row allowed
|
|
seckey TEXT NOT NULL, -- Private key in hex format (64 chars)
|
|
created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')),
|
|
CHECK (length(seckey) = 64) -- Ensure valid secp256k1 key length
|
|
);
|
|
|
|
-- Add blossom_pubkey to config if not exists
|
|
INSERT OR IGNORE INTO config (key, value, description) VALUES
|
|
('blossom_pubkey', '', 'Blossom server public key derived from blossom_seckey'); |