Оглавление:
- Шаг 1. Идея
- Шаг 2: идея и проводка
- Шаг 3: приготовление
- Шаг 4: Создание дела
- Шаг 5: 3D-печать
- Шаг 6: дело готово
- Шаг 7: примерка кейса
- Шаг 8: Пайка. Провода
- Шаг 9: PwKeeper готов
- Шаг 10: PwKeeperPc - простое редактирование данных в токене
- Шаг 11: PwKeeper запускается
- Шаг 12: поток мыслей
- Шаг 13: Осмотр-1
- Шаг 14: Осмотр-2
Видео: Хранитель паролей на Aruino Pro Micro, или зачем сохранять простоту, когда существует продуманный способ !: 15 шагов (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Похоже, что основная проблема с микроконтроллерами для любителей электроники (особенно начинающих) - это выяснить, где их применить:) В наши дни электроника, особенно цифровая, все больше похожа на черную магию. Только волшебники 80-го уровня могут что-то делать с крошечными компонентами. По этой причине платы Arduino становятся очень популярными. Они заключают в себе черную магию и немного дыма;) в доску с управляемыми людьми булавками.
Этот пост я хочу посвятить довольно простому проекту под названием PasswordKeeper на базе платы Aruino Pro Micro. На этой плате размещен чип ATmega32U4.
Шаг 1. Идея
Давно хотел сделать что-нибудь простое и полезное с каким-нибудь контроллером. И тут мой коллега подкинул интересную идею - ему лень каждый день вводить логин и пароль в свой компьютер. Поэтому он взял крошечную плату DigiSpark (ATTiny85) и создал устройство, которое отправляет логин + пароль на компьютер при нажатии кнопки. Вот эта штуковина.
Шаг 2: идея и проводка
Отличная идея, - подумал я. Почему бы не позаимствовать его и не применить к нему безумное творчество.
Пересборка проекта Arduino и загрузка его в плату каждый раз при смене пароля - «Вы ищете не дроидов» [волна]. Это слишком просто. Мы бы пошли по гораздо более запутанному маршруту!
Устройство должно показать, как оно работает. Но всего три штатных светодиода на плате - для этого слишком мало. Поднимем количество светодиодов до 4099! Поэтому к проекту был добавлен небольшой дисплейный модуль OLED 128X32. Я довольно долго не мог придумать, где его размять. И это прекрасно вписалось в этот проект. Еще пара кнопок - и все готово!
В микросхеме ATTiny85 не хватило места для проекта - добавление вытянутого дисплея под графическую библиотеку + шрифты. Так что все это просто не влезло в память DigiSpark. Быстрый поиск осуществляется с подходящей платформой: Arduino Pro Micro.
Основная идея проекта заключается в том, что ATmega32U4 по умолчанию выдает себя за HID-устройство - USB-клавиатуру и USB-COM-порт. Драйверы для этих устройств уже предустановлены в большинстве операционных систем, и больше ничего настраивать не нужно.
Предлагаемый вашему вниманию PasswordKeeper - это чиндогу, имитирующий нажатие кнопок на клавиатуре. Эти клики могут передавать на компьютер логин и пароль. Даже вездесущие Ctrl-Alt-Del могут быть отправлены нажатием 1 кнопки вместо 3. Или любой другой последовательности клавиш в зависимости от вашего вкуса.
Форм-фактор выбранных модулей очень компактен, но, тем не менее, с ними легко связываться. С минимальными усилиями можно собрать небольшой и весьма полезный прибор. Электромонтаж просто не может быть проще.
Шаг 3: приготовление
Ингредиенты для хитрости:
1) Aruino Pro Micro - 1 шт.
2) OLED-дисплей 128x32 - 1 шт.
3) Пуговицы - 2 штуки (или любые другие - по дефектам).
4) Разъемы DuPont - 7 штук (или какой-нибудь провод для пайки - по вкусу).
Выложите все это в небольшой контейнер для еды и тщательно встряхните. Согласно теории вероятности, в конечном итоге предметы правильно соединяются между собой.
Ой, подожди! Это статья не о кулинарии! Мои извинения.
Лучше соединить все это вручную - по схеме подключения и сэкономить пару эонов тряски.
Итак, прототип для отладки / тестирования скетча готов.
Шаг 4: Создание дела
Скетч вроде работает. Но пользоваться устройством в таком виде неудобно. Итак, небольшая работа в Sketchup дает нам небольшую оболочку.
Upd: Идея по делу.
Можно взять любую подходящую небольшую прозрачную пластиковую коробку.
Или возьмите тонкий прозрачный пластик из какой-нибудь упаковки. Согните его по геометрии устройства. Поместите электронику внутрь и заполните все свободное пространство прозрачным силиконом. Это должно дать вам довольно красивое устройство.
Шаг 5: 3D-печать
Закинул в ближайший 3д принтер.
Шаг 6: дело готово
И, как обычно, при ловле блох необходима поспешность.
Первый вариант корпуса маловат и плата не подходит!
Акела промазал, оставив несколько пробелов. Так рисунок исправлен и перепечатан.
Второй проход был лучше - доска подошла идеально.
Шаг 7: примерка кейса
Вставить доску внутрь, надавить на нее и с характерным хрустом зафиксировать на месте.
Примеряем пуговицы - тоже подходят.
Шаг 8: Пайка. Провода
Кстати, долго искал хороший провод для прототипирования.
В результате я теперь использую в своих проектах провод 30AWG. Вы можете увидеть их на фото. Обматывает проволоку.
Мало кто сейчас помнит, для чего он нужен.
Но он отлично подходит и для пайки на плате. Цветные провода хороши для наведения порядка в обычном беспорядке, назначая разные цвета функциям проводов. Проволока тонкая. Изоляция хорошо выдерживает температуру паяльника. Типичная ПВХ изоляция сразу плавится во время пайки. Он размягчается, но сохраняет форму и позволяет время от времени касаться жала паяльника, не оплавляя его.
Шаг 9: PwKeeper готов
Таким образом, если собрать все это вместе, мы получим небольшой токен, который подключается к компьютеру и позволяет вам управлять и использовать
довольно большое количество логинов и паролей.
Шаг 10: PwKeeperPc - простое редактирование данных в токене
Количество входов ограничено объемом встроенной памяти EEPROM (1024 байта) и длиной паролей.
В памяти EEPROM хранится ряд записей.
Каждая запись содержит поле для комментариев и до 8 текстовых полей.
Два текстовых поля с названиями «Имя» и «Пароль» - просто для удобства управления.
Дисплей позволяет вам выбрать желаемый логин с полями для комментариев.
Он также позволяет редактировать данные в токене. Данные можно редактировать с помощью всего двух кнопок. Втиснул в токен какой-то Редактор. Но, честно говоря, вы должны быть мазохистом, чтобы использовать это.
Поэтому, чтобы упростить управление паролями, мне пришлось написать специальную программу для ПК (кстати - не забудьте переключить токен в режим USB при использовании этой программы).
Upd: Для людей * nix я добавил последовательную консоль TTY в прошивку PwKeeper v1.4. Эта консоль активируется из меню устройства. Подключитесь к нему с помощью любой подходящей терминальной программы - и вы сможете редактировать данные в PwKeeper с помощью нескольких команд, подобных VI. Консоль можно использовать и на платформе Windows. Просто нажмите Ctrl-Shift-M в Arduino IDE, и вы на месте (не забудьте предварительно активировать TTY в PwKeeper). Но мне кажется, что PwKeeperPc намного удобнее.
Шаг 11: PwKeeper запускается
Токен содержит очень конфиденциальные данные, поэтому следует приложить некоторые усилия для обеспечения безопасности.
Основной пароль для разблокировки токена существует.
По умолчанию он пуст, но поскольку вы устанавливаете его в токене, вы должны вводить его каждый раз после включения.
Основной пароль - это определяемая пользователем последовательность одинарных и двойных щелчков кнопок вверх и вниз.
Шаг 12: поток мыслей
Теоретически можно зашифровать данные в EEPROM с помощью некоторого криптографического алгоритма - некоторое пространство все еще остается во флеш-памяти, но эти усилия не будут видны извне, поэтому я не стал беспокоиться.
Токен в нормальном состоянии не виден компьютеру. Чтобы перевести его в режим редактирования USB, вы должны сделать это физически, нажимая на нем кнопки. Аналогичным образом, чтобы отправить пароль, вы должны физически нажать кнопку ВВЕРХ. Чтобы злонамеренный хакер не украл ваши пароли с токена. Он бы поймал их на USB-порт, когда вы отправляете их с токена;)
Результатом этого проекта стала хитрость, в которой я храню пароли от своих банковских счетов и форумов. Также мои родители сочли это полезным для входа в веб-почту и несколько других сайтов.
Специально для своего коллеги я запрограммировал все остальные входы платы как кнопки быстрого доступа. От оставшихся входных контактов к земле можно подключить до 12 кнопок. Нажимая на одну из этих кнопок, вы переходите к соответствующему логину (если он существует). Таким образом, вам нужно только нажать кнопку ВВЕРХ, чтобы отправить его. Или удерживайте кнопку быстрого доступа немного дольше.
Шаг 13: Осмотр-1
Прежде чем стать публичным, PwKeeper прошел тщательную проверку.
Шаг 14: Осмотр-2
Начальник инспекции только что проснулся и не в настроении.
Но он всегда хмурится - почему публике предлагается явно недоделанный девайс.
Мои слова о том, что ему нужно проверять качество продукта, и это сложно сделать с закрытым делом, он просто проигнорировал.
Новерлесс (после взятки колбасой) выдал свидетельство о допущении.
Рекомендуемые:
Зачем строить робота для свадьбы? 9 шагов
Зачем строить робота на свадьбу ?: Мне всегда нравилась робототехника, и я мечтала построить робота. Почему бы не сделать это в самый важный день в моей жизни? Столкнувшись с ажиотажем, связанным с подготовкой к свадьбе, я построил робота, который доставит кольца к проходу. Все, кто
Как заставить компьютер автоматически запускаться каждый день или когда угодно: 5 шагов
Как сделать так, чтобы ваш компьютер автоматически запускался каждый день или когда угодно: в этом руководстве вы узнаете, как заставить компьютер запускаться автоматически каждый день в определенное время, также это мое первое руководство
Хранитель времени галстук: 6 шагов (с изображениями)
Tie Time Keeper: важно уметь определять время, но не всем нравится носить часы, и брать свой смартфон, чтобы проверить время, кажется немного ненужным. Мне нравится, когда мои руки свободны от колец, браслетов и часов, когда я работаю в профессиональном
Менеджер паролей, Typer, макрос, полезная нагрузка Все в ОДНОМ !: 11 шагов (с изображениями)
Password Manager, Typer, Macro, Payload … Все в ОДНОМ !: ВНИМАНИЕ! ПОЖАЛУЙСТА: Если у вас возникли проблемы с изготовлением этого устройства (печатная плата, пайка или другие), не стесняйтесь отправить мне личное сообщение здесь или по электронной почте [email protected]. Я буду счастлив отправить одну из плат или устройств, которые я уже производил
Как измерить ток и зачем это делать ?: 4 шага (с иллюстрациями)
Как измерить ток и почему вы должны это делать? Многие производители не знают, насколько важно знать текущий результат вашего проекта или почему вам это нужно. В этом уроке я объясню вам, как измерить текущую прорисовку вашего проекта и почему это так важно знать. Т