NutCheck Test your mint

macadamia Mint

https://mint.macadamia.cash
cdk-mintd 0.18.1sat · fee 150 ppkkeyset 01a13e301f95…
Tested 15 Nov 2026, 02:24 UTC
27 checks · 40 requests · 99.5 s · 10 sat spent
Download JSON Badge

Why B

1 medium-severity failure caps the grade at B: accepts P2PK locks with duplicated tags.

Failed 1

Malformed lock (duplicate tag) rejected

NUT-11 Medium · caps at B

Accepted a P2PK secret with two locktime tags. NUT-11 says a duplicated tag makes the secret malformed and it MUST be rejected. Wallets and mints that read different copies of the tag disagree on when the refund key can spend, so a refund could open earlier than the receiver expects.

Known issue in the mint software. CDK keeps the first copy of a duplicated spending-condition tag instead of rejecting the proof as NUT-11 requires. The fix is in review upstream; mints pass once they run a CDK release that includes it. CDK PR #2888
Request and response
POST /v1/swap
{
  "inputs": "[1 proofs, 2 sat]",
  "outputs": "[1 outputs]"
}

200  (132 ms)
{
  "signatures": "[1 signatures]"
}

Passed 26

Keys4 passed
All public keys are valid curve pointsNUT-0132 keys across 1 keysets
Every amount has its own keyNUT-01No key is reused across amounts or keysets
Keyset IDs match their keysNUT-021 keyset ID(s) re-derived and matched
At least one active keysetNUT-02sat: 01a13e301f95… fee 150 ppk
Forgery1 passed
Rejects forged ecashNUT-03Forged proof refused (10001)
Info3 passed
Mint is served over HTTPS—HTTPS in use
Info endpoint is well formedNUT-06'macadamia Mint' running cdk-mintd/0.18.1
Claimed NUT endpoints respondNUT-06Every probed claim answered
DLEQ3 passed
DLEQ proofs valid on mintNUT-127 DLEQ proof(s) verified
DLEQ proofs valid on swapNUT-125 DLEQ proof(s) verified
DLEQ proofs valid on melt_changeNUT-124 DLEQ proof(s) verified
Issuing2 passed
Paid quote issues the full amountNUT-04Paid 64, received 64 in 7 signatures
Quote cannot be minted twiceNUT-04Second mint on the same quote refused (20002)
Spending5 passed
Rejects outputs worth more than inputsNUT-03Swap creating 1 sat out of nothing refused (11005)
Swap at the advertised fee succeedsNUT-021 inputs, 150 ppk → 1 sat fee, accepted
Rejects double spendsNUT-03Re-spending used proofs refused (11001)
Rejects the same proof twice in one requestNUT-03Duplicated input refused (11007)
Spent proofs are reported as spentNUT-07All spent proofs report SPENT
Locks6 passed
P2PK lock enforcedNUT-11Refused: no signature, empty witness, signature from the wrong key; accepted: signature from the locking key
P2PK 2-of-2 multisig enforcedNUT-11Refused: 1 of 2 signatures, the same key signing twice; accepted: 2 of 2 signatures
Refund key blocked before locktimeNUT-11Refused: refund key before locktime; accepted: locking key
Refund key works after locktimeNUT-11Refund key spent the expired lock
HTLC hash lock enforcedNUT-14Refused: no preimage, wrong preimage; accepted: correct preimage
HTLC receiver signature enforcedNUT-14Refused: preimage without the receiver's signature, preimage with the wrong signature; accepted: preimage and receiver signature
Payouts2 passed
Melt pays the invoiceNUT-05Melt state: PAID (fee_reserve 2)
Overpaid fees are returnedNUT-08Overpaid by 15 sat (internal payment, no Lightning fee); 15 sat returned as change