One key. Both chains.
A gateway key opens Cardano through ODATANO and Midnight through NIGHTGATE, metered in units. Sign in with something you already own; nothing else is stored: a hash of your stake address or attester id, and the ids of the keys you create.
Sign a message in Lace
Your wallet signs a one-time nonce with its stake key
(CIP-30 signData). No transaction, no fee. Hardware
wallets cannot sign data; use the attester lane or a giveaway code.
Anchor a nonce on Midnight
The identity every proof carries. A script on your machine builds
one sponsored attest of a nonce with your seed; the
console verifies it on chain and signs you in as that attester id.
npm i @odatano/nightgate-tx
curl -fsSLO https://api.odatano.dev/signin-attester.mjs
SEED_HEX=<128 hex> CONSOLE_URL=https://api.odatano.dev \
node signin-attester.mjs
The script prints a one-time login link. Open it in this browser.
A code becomes a key without any sign-in: redeem it here, or from a terminal:
curl -X POST https://api.odatano.dev/codes/redeem \
-H 'content-type: application/json' -d '{"code":"ODA-XXXX-XXXX-XXXX"}'
Reads cost 1 unit, a Cardano build 5, a submit 10, a sponsored Midnight write 25, a server-side proof 60. Full table.