Inhaltsverzeichnis:

Password Keeper auf Aruino Pro Micro oder warum es einfach ist, wenn es einen aufwendigen Weg gibt! - Gunook
Password Keeper auf Aruino Pro Micro oder warum es einfach ist, wenn es einen aufwendigen Weg gibt! - Gunook

Video: Password Keeper auf Aruino Pro Micro oder warum es einfach ist, wenn es einen aufwendigen Weg gibt! - Gunook

Video: Password Keeper auf Aruino Pro Micro oder warum es einfach ist, wenn es einen aufwendigen Weg gibt! - Gunook
Video: Easterhegg 2018 - Einführung in ESP32 Microcontroller + MicroPython 2024, Juli
Anonim
Password Keeper auf Aruino Pro Micro oder warum es einfach bleiben soll, wenn es eine ausgeklügelte Methode gibt!
Password Keeper auf Aruino Pro Micro oder warum es einfach bleiben soll, wenn es eine ausgeklügelte Methode gibt!

Es scheint, dass das Hauptproblem bei Mikrocontrollern für Elektronikfans (insbesondere Anfänger) darin besteht, herauszufinden, wo sie eingesetzt werden müssen:) Heutzutage sieht Elektronik, insbesondere die digitale, immer mehr wie schwarze Magie aus. Nur 80-Lvl-Wisarde können dort mit winzigen Komponenten etwas anfangen. Dies ist ein Grund, warum Arduino-Boards sehr beliebt sind. Sie kapseln schwarze Magie und etwas Rauch;) in ein Brett mit von Menschen handhabbaren Pins.

Diesen Beitrag möchte ich einem recht einfachen Projekt namens PasswordKeeper auf der Basis des Aruino Pro Micro Boards widmen. Dieses Board hat einen ATmega32U4-Chip gehostet.

Schritt 1: Die Idee

Die Idee
Die Idee

Ich wollte schon lange etwas Einfaches und Nützliches mit einem Controller machen. Und dann hatte ein Kollege von mir eine interessante Idee - er war zu faul, jeden Tag Login und Passwort in seinen Computer einzugeben. Also nahm er ein winziges DigiSpark (ATTiny85) Board und erstellte ein Gerät, das beim Klicken auf eine Schaltfläche Login + Passwort an einen Computer sendet. Hier ist diese Vorrichtung.

Schritt 2: Idee und Verdrahtung

Idee und Verkabelung
Idee und Verkabelung

Die ausgezeichnete Idee - dachte ich. Warum nicht es ausleihen und etwas verrückte Kreativität darauf anwenden?

Das Arduino-Projekt neu aufbauen und jedes Mal neu in das Board laden, wenn sich das Passwort ändert - "Es sind nicht die Droiden, nach denen Sie suchen" [wave]. Es ist zu einfach. Wir würden viel mehr verworrene Route nehmen!

Der Apparat soll zeigen, wie er funktioniert. Aber nur drei Standard-On-Board-LEDs - dafür ist es viel zu wenig. Lassen Sie die LED-Nummer auf 4099 erhöhen! So wurde dem Projekt ein kleines OLED 128X32 Displaymodul hinzugefügt. Ich konnte mir eine ganze Weile nicht ausdenken, wo ich es quetschen sollte. Und es passt perfekt in dieses Projekt. Noch ein paar Knöpfe - und schon kann es losgehen!

Es gab nicht genug Platz im ATTiny85-Chip für das Projekt - Hinzufügen des Displays für die Grafikbibliothek + Schriftarten. Also passte all dieses Zeug einfach nicht in den DigiSpark-Speicher. Schnellsuche mit einer geeigneten Plattform: Arduino Pro Micro.

Die Hauptidee des Projekts ist, dass ATmega32U4 standardmäßig vorgibt, ein HID-Gerät zu sein - USB-Tastatur und USB-COM-Port. Treiber für diese Geräte sind in den meisten Betriebssystemen bereits vorinstalliert - und es muss nichts weiter eingerichtet werden.

Der PasswordKeeper, auf den Sie aufmerksam gemacht haben, ist ein Chindogu, der das Klicken von Tasten auf der Tastatur imitiert. Diese Klicks können ein Login und ein Passwort auf einen Computer übertragen. Sogar das allgegenwärtige Strg-Alt-Entf kann per Klick auf 1 statt 3 Tasten gesendet werden. Oder jede andere Tastenfolge nach Ihrem Geschmack.

Der Formfaktor der ausgewählten Module ist sehr kompakt, aber dennoch leicht zu handhaben. Es ist mit minimalem Aufwand möglich, das kleine und recht nützliche Gerät zusammenzubauen. Die Verkabelung könnte nicht einfacher sein.

Schritt 3: Kochen

Kochen
Kochen

Apparatur Zutaten:

1) Aruino Pro Micro - 1 Stück

2) OLED-Display 128x32 - 1 Stück

3) Knöpfe - 2 Stück (oder jede andere Art - nach Fehler).

4) DuPont-Anschlüsse - 7 Stück (oder etwas Draht zum Zusammenlöten - nach Geschmack).

Geben Sie alles in einen kleinen Lebensmittelbehälter und schütteln Sie es gründlich. Nach der Wahrscheinlichkeitstheorie verbinden sich Gegenstände schließlich richtig miteinander.

Oh, Moment mal! Es ist kein Artikel zum Thema Kochen! Ich entschuldige mich.

Verbinden Sie das alles besser manuell - laut Schaltplan und sparen Sie sich ein paar Äonen des Rüttelns.

Der Prototyp für das Sketch-Debugging / Testing ist also fertig.

Schritt 4: Konstruieren eines Gehäuses

Einen Fall konstruieren
Einen Fall konstruieren

Die Skizze scheint zu funktionieren. Es ist jedoch unbequem, das Gerät in dieser Form zu verwenden. Ein wenig Arbeit in Sketchup verschafft uns also ein kleines Gehäuse.

Upd: Eine Idee zu dem Fall.

Sie können jede geeignete kleine transparente Plastikbox nehmen.

Oder nehmen Sie dünnes transparentes Plastik aus einer Verpackung. Biegen Sie es entsprechend der Gerätegeometrie. Setzen Sie die Elektronik ein und füllen Sie den gesamten freien Raum mit transparentem Silikon. Es sollte Ihnen ein relativ gut aussehendes Gerät geben.

Schritt 5: 3D-Druck

3D-Druck
3D-Druck

Warf es in den nächsten 3D-Drucker.

Schritt 6: Fall ist fertig

Fall ist fertig
Fall ist fertig

Und wie immer ist beim Flöhefang Eile geboten.

Die erste Version des Gehäuses ist etwas klein und das Board passt nicht!

Akela hat es versäumt, einige Lücken zu hinterlassen. So wird die Zeichnung korrigiert und nachgedruckt.

Zweiter Durchgang war besser - das Board passt perfekt.

Schritt 7: Fall ausprobieren

Fall ausprobieren
Fall ausprobieren

Brett hineinlegen, andrücken und mit einem charakteristischen Knirschen einrasten.

Knöpfe anprobieren - sie passen auch.

Schritt 8: Löten. Drähte

Löten. Drähte
Löten. Drähte

Übrigens habe ich lange nach einem guten Prototyping-Draht gesucht.

Als Ergebnis verwende ich jetzt 30AWG-Draht in meinen Projekten. Sie können sie auf dem Foto sehen. Es ist Wickeldraht.

Nur wenige Völker erinnern sich jetzt, wofür es ist.

Aber es passt auch perfekt zum On-Board-Löten. Farbige Drähte eignen sich gut zum Aufräumen von üblichem Durcheinander, indem den Drahtfunktionen unterschiedliche Farben zugewiesen werden. Der Draht ist dünn. Die Isolierung hält der Temperatur des Lötkolbens gut stand. Typische PVC-Isolierung schmilzt beim Löten sofort. Dieser wird weich, behält aber seine Form und erlaubt gelegentliches Anfassen einer Lötkolbenspitze, ohne bis zum Kern zu schmelzen.

Schritt 9: PwKeeper ist bereit

PwKeeper ist bereit
PwKeeper ist bereit

Wenn wir alles zusammenfassen, erhalten wir ein kleines Token, das sich mit einem Computer verbindet und Ihnen die Verwaltung und Verwendung ermöglicht

ziemlich viele Logins und Passwörter.

Schritt 10: PwKeeperPc - Einfache Datenbearbeitung in Token

PwKeeperPc - Einfache Datenbearbeitung in Token
PwKeeperPc - Einfache Datenbearbeitung in Token

Die Anzahl der Anmeldungen wird durch die Größe des integrierten EEPROM-Speichers (1024 Byte) und die Länge der Passwörter begrenzt.

Der EEPROM-Speicher hält eine Reihe von Aufzeichnungen.

Jeder Datensatz enthält ein Kommentarfeld und bis zu 8 Textfelder.

Zwei der Textfelder namens Name und Password - nur zur Vereinfachung der Verwaltung.

Das Display ermöglicht Ihnen die Auswahl des gewünschten Logins mit Kommentarfeldern.

Außerdem können Sie die Daten im Token bearbeiten. Die Daten können mit nur zwei Schaltflächen bearbeitet werden. Ich habe eine Art Editor in das Token gedrückt. Aber ehrlich gesagt, Sie sollten ein Masochist sein, um es zu benutzen.

Um die Passwortverwaltung zu vereinfachen, musste ich daher ein spezielles Programm für den PC schreiben (übrigens - vergessen Sie nicht, Token in den USB-Modus zu schalten, wenn Sie dieses Programm verwenden).

Upd: Für *nix people habe ich die serielle TTY-Konsole in der PwKeeper v1.4-Firmware hinzugefügt. Diese Konsole wird über das Gerätemenü aktiviert. Verbinden Sie sich mit jedem geeigneten Terminalprogramm - und Sie können Daten in PwKeeper mit mehreren VI-ähnlichen Befehlen bearbeiten. Die Konsole kann auch auf der Windows-Plattform verwendet werden. Drücken Sie einfach Strg-Umschalt-M von der Arduino IDE und Sie sind da (vergessen Sie nicht, vorher TTY auf PwKeeper zu aktivieren). Aber PwKeeperPc ist viel bequemer, denke ich.

Schritt 11: PwKeeper läuft

PwKeeper läuft!
PwKeeper läuft!

Der Token enthält sehr sensible Daten, daher sollten einige Anstrengungen zur Sicherheit unternommen werden.

Das Hauptkennwort zum Entsperren des Tokens ist vorhanden.

Es ist standardmäßig leer, aber wie Sie es im Token festlegen, sollten Sie es jedes Mal nach dem Einschalten eingeben.

Das Hauptpasswort ist eine benutzerdefinierte Abfolge von Einzel- und Doppelklicks der Auf- und Ab-Tasten.

Schritt 12: Gedankenfluss

Theoretisch ist es möglich, die Daten im EEPROM mit einem kryptographischen Algorithmus zu verschlüsseln - es bleibt noch etwas Platz im Flash. Aber diese Bemühungen wären von außen nicht zu sehen - also habe ich mich nicht darum gekümmert.

Das Token in seinem normalen Zustand ist für den Computer nicht sichtbar. Um es in den USB-Bearbeitungsmodus zu versetzen, sollten Sie dies physisch tun, indem Sie die Tasten darauf drücken. Ebenso sollten Sie zum Senden eines Passworts physisch eine AUF-Taste drücken. So würden böswillige Hacker Ihre Passwörter nicht vom Token stehlen. Er würde sie an einem USB-Port erwischen, wenn Sie sie von Token senden;)

Das Ergebnis dieses Projekts ist eine Vorrichtung, in der ich Passwörter für meine Bankkonten und Foren speichere. Auch meine Eltern fanden es nützlich, um sich bei Webmail und mehreren anderen Sites anzumelden.

Speziell für meinen Kollegen habe ich alle restlichen Eingänge der Platine als Schnellzugriffstasten programmiert. Bis zu 12 Tasten können von den verbleibenden Eingangspins mit Masse verbunden werden. Durch Anklicken einer dieser Schaltflächen springt man auf das entsprechende Login (sofern vorhanden). Sie müssen also nur die UP-Taste drücken, um es zu senden. Oder halten Sie eine Shortcut-Taste etwas länger.

Schritt 13: Inspektion-1

Inspektion-1
Inspektion-1

Vor dem Börsengang wurde PwKeeper einer sorgfältigen Prüfung unterzogen.

Schritt 14: Inspektion-2

Inspektion-2
Inspektion-2

Der Inspektionsleiter wurde gerade geweckt und ist nicht in Stimmung.

Aber er runzelt trotzdem die Stirn - warum wird ein offensichtlich unfertiges Gerät der Öffentlichkeit angeboten.

Meine Worte, dass er die Qualität des Produkts überprüfen muss und dies bei geschlossenem Fall schwierig ist, wurden von ihm einfach ignoriert.

Neuerlich (nach Bestechung mit Wurst) stellte er die Zulassungsbescheinigung aus.

Empfohlen: