Cómo está estructurado el firmware de Coldcard y por qué los desarrolladores deberían ejecutar su emulador en un PC
El código fuente de los monederos criptográficos de hardware se examina con especial cuidado. Un solo error en el generador de números aleatorios o un error en el código puede costar millones de dólares. Echa un vistazo al encabezado del README en el repositorio de Coldcard: los autores advierten abiertamente sobre una vulnerabilidad crítica de entropía que afecta a las versiones desde 2021 hasta 2026. Los desarrolladores sugieren honestamente actualizar el firmware y regenerar las claves.
Esta transparencia es posible gracias a la arquitectura abierta. El firmware de Coldcard está disponible para todos, y puedes compilar su binario byte por byte directamente en tu propia computadora portátil.

Qué hay dentro del repositorio
El proyecto combina software para varias generaciones de monederos: las series Mk3, Mk4, Mk5 y el modelo insignia Q1 con teclado completo. La pila principal incluye MicroPython para lógica de alto nivel y C para operaciones de bajo nivel en el chip STM32.

El código se distribuye entre directorios de manera bastante lógica:
sharedalmacena la lógica compartida en Python para el emulador y los dispositivos.stm32contiene el firmware, los bootloaders y los makefiles para construir el binario final del microcontrolador.unixincluye el código fuente del emulador para macOS y Linux.hardwarecontiene los esquemas y las especificaciones de los componentes.
Es raro encontrar software, un emulador y esquemas de hardware todo en un solo lugar. Para quienes están interesados en el desarrollo embebido con Python, este es un excelente material de estudio.
Soluciones técnicas interesantes
Compilaciones reproducibles mediante Docker
Uno de los criterios principales para confiar en hardware seguro es la confianza de que el archivo compilado coincide con el código fuente en GitHub. El equipo de Coldcard automatizó este proceso. La compilación se ejecuta mediante Docker con un solo comando:
git clone https://github.com/Coldcard/firmware.git
cd firmware
git checkout 2026-03-05T2052-v5.5.0
cd stm32
make -f MK4-Makefile repro
El script compila el código en un entorno aislado y compara el archivo resultante con la versión oficial. Si los archivos coinciden byte por byte, el proceso se realiza correctamente.
Emulador completo sin hardware físico
No necesitarás comprar un dispositivo por unos pocos cientos de dólares solo para estudiar el código. La carpeta unix contiene un emulador basado en SDL2 y MicroPython. Recrea la pantalla, los botones y el sistema de archivos de la tarjeta SD virtual.
Ejecutar el simulador en Linux o macOS solo requiere unos pocos pasos:
git clone --recursive https://github.com/Coldcard/firmware.git
cd firmware
python3 -m venv ENV
source ENV/bin/activate
pip install -r requirements.txt
cd unix
make setup && make ngu-setup && make
./simulator.py
Después del lanzamiento, aparecerá en pantalla una ventana con la interfaz del monedero. Puedes interactuar con ella usando el teclado o el ratón, probar tus propios scripts y verificar el manejo de PSBT (Transacciones de Bitcoin Parcialmente Firmadas).
Dos ramas para diferentes propósitos
El equipo mantiene dos ramas principales en Git:
mastercontiene código probado para los dispositivos actuales Mk4, Mk5 y Q1.edgesirve como campo de pruebas para experimentos. Funciones como el soporte de Taproot o Miniscript terminan aquí antes de aparecer en la versión principal. Los requisitos de calidad del código enedgeson menores, por lo que los cambios allí avanzan más rápido.
A quién le será útil este repositorio
El proyecto es interesante mucho más allá de los entusiastas de Bitcoin. Los desarrolladores de sistemas embebidos se beneficiarán de la experiencia de combinar MicroPython con C en microcontroladores STM32. Los especialistas en seguridad encontrarán aquí un ejemplo claro de implementación de compilación reproducible.
Ejecutar un emulador local te ayuda a entender cómo funciona la firma de transacciones en dispositivos air-gapped sin gastar dinero extra.
Proyectos relacionados