COLDCARD RNG incident the public record, collected and explained
Informational only, and this site never asks for your seed words. details

Informational only. This is an open source collection of what others have published about the incident, together with an explanation of it. It is not financial, security or legal advice, and not a substitute for professional advice about your own situation. It is not affiliated with, endorsed by, or speaking for Coinkite. Material is attributed and quoted as published; where sources disagree their scenarios are kept separate with their assumptions rather than reconciled into one answer. Everything is meant to be checked against the linked evidence rather than taken on trust. Act on your own judgement about a particular situation. Editorial standards and corrections.

Do not disclose recovery material to a website, form, message or support account. This site never asks for it, and contributions containing recovery words or private keys are not accepted.

Vendor correction of the fallback framing

coldcardwallet-2085541034243600805

https://x.com/COLDCARDwallet/status/2085541034243600805

Captured screenshot of the post by @COLDCARDwallet, posted 7 Aug 2026, 01:38 UTC
@COLDCARDwallet posted captured full-size capture → original post →
Author
@COLDCARDwallet
Organisation
independent
Evidence role
social statement
Posted
Capture status
capture held

COLDCARD publicly correcting Jack Mallers over the description of a weak entropy fallback, and the clearest vendor statement held of how the defect arose. It says Yasmarang was not Coinkite's fallback but MicroPython's built-in general-purpose RNG, added upstream in May 2018, and that it did not enter Coldcard's seed generation until the libNgU migration in March 2021. It argues the design intent was the opposite of a software fallback: seed generation was to rely on the hardware TRNG alone, and setting MICROPY_HW_ENABLE_RNG=0 was meant to disable the software path, but the symbol instead resolved to the runtime's default, so the behaviour was inherited from the platform through a link-time error rather than chosen. Mallers's severity alert is held at mallers-coldcard-alert, and the guard and generator themselves are tracked as repository sources. The statement of intent is the vendor's own account of its own work.

This post is registered as evidence and has a locally held capture. The original remains the canonical publication.

How to check this yourself

Compare the screenshot or a quotation against the original while it is available.