Назначение проекта:
Проект предназначен для генерации электронного кошелька, шифрование номера приватного кошелька и последующее его хранение на плате Wemos D1. Проект состоит из четырех частей.
Часть 1 — это прошивка для модуля Wemos D1 (папка «wallet_flash» в формате .ino).
Часть 2 — исходный файл графической среды кошелька для windows. Написана программа на python версии 3.9 (файл «bitcoin_wallet.py»
Часть 3 — скомилированная программа на основе скрипта python. Это программа скомпилированна и не нуждается в установке на компьютер python и необходимых для проекта зависимостей
Часть 4 - стл файлы корпуса для распечатки его на 3Д принтере (корпус1, корпус2, крышка).
Ключ хранится в памяти платы Wemos D1. Все операции совершаются при помощи графической оболочки.
Что понадобится:
Модуль Wemos D1
Дисплей OLED 0.96″ I2C
Два болта диаметром 4 мм и две гайки М4
3Д принтер
Ремешки для часов 20мм
Сборка проекта ардуино:
1 Распечатываем корпус на 3Д принтере. Припаиваем проводки к дисплею.
2 Припаиваем дисплей к плате по следующей схеме:
![](https://habrastorage.org/getpro/habr/upload_files/7f3/332/22c/7f333222cedb4956555a081aba9e29c9.png)
3 Вставляем плату в корпус. С начало вставляем плату в черную часть корпуса затем в красную. При необходимости можно зафиксировать термоклеем. Вставляем так что бы отверстие в тыльной части корпуса совпало с юсби гнездом платы. При этом крышка модуля направленна верх.
4 Приклеиваем экран термопистолетом по четырем углам прямоугольника крышки. Вставляем гайки в нижние отверстия, подключаем к компьютеру прошиваем скетчем из папки wallet_flash. Присоединяем ремешки. Должно получится вот так:
Принцип работы
Извлеките из архива (ссылка на гитхаб внизу статьи) папку bitcoin_wallet и распакуйте ее на диск C в следующую директорию C:\bitcoin_wallet_arduino
Затем запустите файл bitcoin_wallet.exe в папке bitcoin_wallet
1 Подключите устройство к компьютеру и выберите подходящий компорт. Зайтем нажмите подключится. В строке состояние должна появится надпись “подключенно”, а на дисплее ардуино появится надпись “START”.
![](https://habrastorage.org/getpro/habr/upload_files/c0f/bde/ba8/c0fbdeba818d04843c643e2d5d62087e.png)
2 Если вы хотите работать в тестовом блокчейне, то в поле “Выбор сети” оставьте галочку. Если вы хотите использовать настоящий блокчейн, то установите галочку “Настоящая”.
![](https://habrastorage.org/getpro/habr/upload_files/403/f70/103/403f701038b6032b74fd3129c2ac61fd.png)
3 Для создания кошелька нажмите кнопку “Создать кошелек”, придумайте пин код и нажмите кнопку “Сохранить кошелек”. Дисплей арудуино должен показать надпись “SAVE” при успешном сохранение кошелька в памяти ардуино
![](https://habrastorage.org/getpro/habr/upload_files/6f8/ded/936/6f8ded936abacab35943d5d80cd1180d.png)
4 Если у вас уже есть кошелек, или вы хотите сохранить новосозданный кошелек, то нажмите кнопку добавить кошелек и вставьте туда приватный ключ. А затем введите пин код и нажмите кнопку “Загрузить кошелек”. Если вы забудете пин код, то доступ к кошельку будет утерян. Вам придется вручную подбирать пароли. Загрузка приватного кошелька в память не требует доступа к интернету.
Если захотите запустить скрипт на питоне, то необходимо будет установить следующие зависимости:
python -m pip install pyserial
python -m pip install bit
python -m pip install cryptocode
Исходный код для ардуино, python-скрипт и скомпилированную версию проги по ссылке https://github.com/beetlea/bitcoin_wallet_arduino