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.

r/Bitcoin: verifying that published source is what runs on the device

reddit-verify-code-on-device

https://www.reddit.com/r/Bitcoin/comments/1vehj5c/if_the_code_of_a_hardware_wallet_is_truly_open/

Latest reviewed change

source content difference between and

The Reddit thread gained 1 new comment.

seen +10 -0 full history below
 On the other end you have Jade DIY, which runs on an off-the-shelf ESP32 chip. You can literally design your own PCB (or use a pre-existing design), get it fabricated (or even fabricate it yourself), source all components from various vendors, pretty much all of which will have no idea you're even trying to build a hardware wallet, solder all components, then you have the code that's fully open source, that you'll build yourself and then flash. 
 
 Even farther on that end of the spectrum would be you building your own design from scratch. In the end a hardware wallet's most tedious job is to perform hashes. The rest is largely trivial.
+
+comment: p1on76u
+parent: t1_p1od513
+author: Zaytion_
+created_utc: 1785862744

First lines only. The complete diff is in the timeline below.

Organisation
reddit
Evidence role
Community discussion
Published
not established
Source changes
2
Detected differences
2
Unreviewed
0
Copies held
3

Every check is recorded, including checks that found no text change. A detected edit is therefore bounded between two checks. The publisher's exact save time is not observable from this record. Last checked .

  1. source content difference between and Current source content +10 -0

    The Reddit thread gained 1 new comment.

    seen · Captured here 5,283 chars
    What changed from the previous capture 10 lines
     On the other end you have Jade DIY, which runs on an off-the-shelf ESP32 chip. You can literally design your own PCB (or use a pre-existing design), get it fabricated (or even fabricate it yourself), source all components from various vendors, pretty much all of which will have no idea you're even trying to build a hardware wallet, solder all components, then you have the code that's fully open source, that you'll build yourself and then flash. 
     
     Even farther on that end of the spectrum would be you building your own design from scratch. In the end a hardware wallet's most tedious job is to perform hashes. The rest is largely trivial.
    +
    +comment: p1on76u
    +parent: t1_p1od513
    +author: Zaytion_
    +created_utc: 1785862744
    +edited: false
    +body:
    +Yeah Jade DIY is fine. You aren't buying the hardware from a crypto company to do it. 
    +
    +I'm only talking about buying hardware wallet devices and thinking just because it lets you flash the firmware means you are OK.
    
    Extracted text as captured
    post: 1vehj5c
    author: seolein
    created_utc: 1785772816
    title: If the Code of a hardware wallet is truly open source, how can i verify the exact same code I can check online is on the hardware device?
    body:
    since the weekend i am questioning **everything**
    
    comment: p1gy0fm
    parent: t3_1vehj5c
    author: rtublin
    created_utc: 1785772960
    edited: false
    body:
    I think there is generally not a way to do this except to build the code yourself and insert a custom build string, then push it to the device and verify your string. But even then there could be some weirdness like artifacts on the device. I just don't really trust these dedicated hardware devices. Most of this stuff should just be done in software on an old laptop.
    
    comment: p1gyfuh
    parent: t1_p1gy0fm
    author: seolein
    created_utc: 1785773071
    edited: false
    body:
    i more and more come to think the  term "**don\`t trust - verify**" is an complete illusion
    
    comment: p1h0je2
    parent: t3_1vehj5c
    author: riscten
    created_utc: 1785773602
    edited: false
    body:
    With wallets that are entirely open source, you compile and flash your own firmware.
    
    A lot of vendors have what's called a reproducible build. It's a method to compile the firmware package from source to get the exact same file as they publish. You start with their code on Github, follow the build process, and end up with a file that you can then compare to their prebuilt binaries.
    
    With devices like Jade DIY and Seedsigner, you literally start with off-the-shelf hardware. An ESP32 for Jade, and a Raspberry Pi for Seedsigner. And then you flash your hardware wallet firmware on them. You can literally have anything you want running on these.
    
    comment: p1h1cyi
    parent: t1_p1gyfuh
    author: Suspicious-Holiday42
    created_utc: 1785773808
    edited: false

    Excerpt only. The complete copy is held offline and backs quotations on this site. The original publication remains the canonical public source.

  2. source content difference between and source content +14 -0

    1 new Reddit comment was posted, by riscten, contrasting vendor trust with a self-built Jade DIY device.

    seen · Captured here 4,968 chars
    What changed from the previous capture 14 lines
     edited: false
     body:
     You are still trusting that the device allowed you to flash the firmware correctly. It could come preloaded with stuff that makes you think you did but still has nefarious code on there.
    +
    +comment: p1od513
    +parent: t1_p1lhz03
    +author: riscten
    +created_utc: 1785860231
    +edited: false
    +body:
    +This aspect stands on a spectrum. 
    +
    +On something like a Ledger, you are given a blackbox device and a binary. You know nothing about either. It's all trust and they could be doing anything. 
    +
    +On the other end you have Jade DIY, which runs on an off-the-shelf ESP32 chip. You can literally design your own PCB (or use a pre-existing design), get it fabricated (or even fabricate it yourself), source all components from various vendors, pretty much all of which will have no idea you're even trying to build a hardware wallet, solder all components, then you have the code that's fully open source, that you'll build yourself and then flash. 
    +
    +Even farther on that end of the spectrum would be you building your own design from scratch. In the end a hardware wallet's most tedious job is to perform hashes. The rest is largely trivial.
    
    Extracted text as captured
    post: 1vehj5c
    author: seolein
    created_utc: 1785772816
    title: If the Code of a hardware wallet is truly open source, how can i verify the exact same code I can check online is on the hardware device?
    body:
    since the weekend i am questioning **everything**
    
    comment: p1gy0fm
    parent: t3_1vehj5c
    author: rtublin
    created_utc: 1785772960
    edited: false
    body:
    I think there is generally not a way to do this except to build the code yourself and insert a custom build string, then push it to the device and verify your string. But even then there could be some weirdness like artifacts on the device. I just don't really trust these dedicated hardware devices. Most of this stuff should just be done in software on an old laptop.
    
    comment: p1gyfuh
    parent: t1_p1gy0fm
    author: seolein
    created_utc: 1785773071
    edited: false
    body:
    i more and more come to think the  term "**don\`t trust - verify**" is an complete illusion
    
    comment: p1h0je2
    parent: t3_1vehj5c
    author: riscten
    created_utc: 1785773602
    edited: false
    body:
    With wallets that are entirely open source, you compile and flash your own firmware.
    
    A lot of vendors have what's called a reproducible build. It's a method to compile the firmware package from source to get the exact same file as they publish. You start with their code on Github, follow the build process, and end up with a file that you can then compare to their prebuilt binaries.
    
    With devices like Jade DIY and Seedsigner, you literally start with off-the-shelf hardware. An ESP32 for Jade, and a Raspberry Pi for Seedsigner. And then you flash your hardware wallet firmware on them. You can literally have anything you want running on these.
    
    comment: p1h1cyi
    parent: t1_p1gyfuh
    author: Suspicious-Holiday42
    created_utc: 1785773808
    edited: false

    Excerpt only. The complete copy is held offline and backs quotations on this site. The original publication remains the canonical public source.

  3. Earliest copy held
    seen · Captured here 4,036 chars
    Extracted text as captured
    post: 1vehj5c
    author: seolein
    created_utc: 1785772816
    title: If the Code of a hardware wallet is truly open source, how can i verify the exact same code I can check online is on the hardware device?
    body:
    since the weekend i am questioning **everything**
    
    comment: p1gy0fm
    parent: t3_1vehj5c
    author: rtublin
    created_utc: 1785772960
    edited: false
    body:
    I think there is generally not a way to do this except to build the code yourself and insert a custom build string, then push it to the device and verify your string. But even then there could be some weirdness like artifacts on the device. I just don't really trust these dedicated hardware devices. Most of this stuff should just be done in software on an old laptop.
    
    comment: p1gyfuh
    parent: t1_p1gy0fm
    author: seolein
    created_utc: 1785773071
    edited: false
    body:
    i more and more come to think the  term "**don\`t trust - verify**" is an complete illusion
    
    comment: p1h0je2
    parent: t3_1vehj5c
    author: riscten
    created_utc: 1785773602
    edited: false
    body:
    With wallets that are entirely open source, you compile and flash your own firmware.
    
    A lot of vendors have what's called a reproducible build. It's a method to compile the firmware package from source to get the exact same file as they publish. You start with their code on Github, follow the build process, and end up with a file that you can then compare to their prebuilt binaries.
    
    With devices like Jade DIY and Seedsigner, you literally start with off-the-shelf hardware. An ESP32 for Jade, and a Raspberry Pi for Seedsigner. And then you flash your hardware wallet firmware on them. You can literally have anything you want running on these.
    
    comment: p1h1cyi
    parent: t1_p1gyfuh
    author: Suspicious-Holiday42
    created_utc: 1785773808
    edited: false

    Excerpt only. The complete copy is held offline and backs quotations on this site. The original publication remains the canonical public source.

How to check this yourself

The excerpts and plain unified diffs above show the text this project held and how it changed. To verify a quotation, compare it against the page itself or against the Internet Archive's copies, which are independent of this project.

Complete captures are held offline rather than mirrored here, so this page shows diffs and excerpts. If a quotation is ever disputed, the full copy can be produced. Ask.