Risorse per sviluppatori

Se vuoi integrare il BitBox02 nel tuo progetto o contribuire al codice, trovi di seguito le risorse necessarie.

Architettura

Il BitBox02 hardware wallet è un dispositivo USB che memorizza in modo sicuro le chiavi crittografiche (come le chiavi private Bitcoin) e firma transazioni/messaggi con quella chiave. La firma con la chiave richiede un’interazione fisica con il dispositivo (quindi non è possibile una firma automatica o remota). La BitBoxApp è l’app nativa che comunica con il BitBox02, ma il BitBox02 può integrarsi con varie applicazioni di terze parti. Può comunicare con applicazioni che girano su browser (o estensioni browser) utilizzando WebHID o tramite il BitBoxBridge. Il BitBox02 può anche comunicare con wallet Bitcoin di terze parti utilizzando il Bitcoin Hardware Wallet Interface (HWI).

BitBox02 architecture diagram

I componenti principali del BitBox02 sono:

Display OLED: visualizza informazioni importanti per l'utente, come i dettagli della transazione Bitcoin o una chiave privata.

Connettore microSD: utilizzato per il backup delle chiavi private su una scheda microSD.

Sensori touch: utilizzati per interagire con il dispositivo. È richiesta l'interazione con il dispositivo per attività importanti, come firmare una transazione Bitcoin.

Secure Chip (ATECC608B): rafforza la password scelta dall'utente combinandola con una chiave memorizzata nel secure chip. Limita anche il numero di derivazioni di chiavi utilizzando un contatore monotono imposto dal secure chip.

Microcontrollore (ATSAMD51J20A): esegue il firmware open source del BitBox02 e comunica con gli altri componenti integrati.

GitHub

Principali repository di codice

Il nostro codice open source è ospitato su GitHub. Qui puoi trovare i nostri tre principali repository:

Firmware BitBox02

Il codice che gira sull'hardware wallet BitBox02. Scritto in C e Rust.

BitBoxApp

App nativa per desktop/mobile per BitBox02. Sviluppata con un backend in Go e frontend in TypeScript/JavaScript.

BitBoxBridge

Applicazione che consente al BitBox02 di comunicare con wallet web. Scritto in Rust.

Librerie

Integrazione nativa

Se vuoi integrare il BitBox02 nel tuo client desktop/mobile nativo, consulta le nostre librerie Rust, Python e Go:

Go logo

Rust

Per progetti in Rust, consulta la nostra libreria Rust:

Rust logo

Python

Il BitBox02 supporta anche HWI, una libreria Python e uno strumento da linea di comando per interagire con hardware wallet.

Python logo

Integrazione con wallet web

Se vuoi integrare il BitBox02 in un wallet web, consulta la nostra libreria TypeScript su NPM:

API playground:

JavaScript logo

Integrazioni di esempio

Ecco alcuni esempi di integrazioni precedenti con wallet web.

Rabby

Estensione per browser (fork di MetaMask) che consente di connettersi a Dapps basate su Ethereum

Rabby Logo

Contribuisci al codice di BitBox

Anche i contributi individuali al codice sono benvenuti. Se vuoi contribuire al codice di BitBox, consulta le nostre linee guida per i contributi

BitBox02 logo
BitBox02 welcome screen

Ottieni un BitBox02 per sviluppatori

Se stai integrando il BitBox02 nel tuo wallet o stai contribuendo, può essere utile avere una versione del BitBox02 per sviluppatori per i test.

La versione per sviluppatori del BitBox02 può caricare firmware non firmato, particolarmente utile se prevedi di apportare modifiche al firmware per testare le tue modifiche.

Se ne desideri uno, contattaci

Leggi di più