Innholdsfortegnelse:

Password Keeper på Aruino Pro Micro eller hvorfor holde det enkelt når det finnes en detaljert måte !: 15 trinn (med bilder)
Password Keeper på Aruino Pro Micro eller hvorfor holde det enkelt når det finnes en detaljert måte !: 15 trinn (med bilder)

Video: Password Keeper på Aruino Pro Micro eller hvorfor holde det enkelt når det finnes en detaljert måte !: 15 trinn (med bilder)

Video: Password Keeper på Aruino Pro Micro eller hvorfor holde det enkelt når det finnes en detaljert måte !: 15 trinn (med bilder)
Video: CS50 2013 - Week 9 2024, September
Anonim
Password Keeper på Aruino Pro Micro eller hvorfor holde det enkelt når det finnes en detaljert måte!
Password Keeper på Aruino Pro Micro eller hvorfor holde det enkelt når det finnes en detaljert måte!

Det ser ut til at hovedproblemet med mikrokontrollere for fan av elektronikk (spesielt nybegynnere) er å finne ut hvor de skal brukes:) I dag ser elektronikk, spesielt digital, mer og mer ut som en svart magi. Bare 80-Lvl vismenn er i stand til å gjøre noe der med små komponenter. Det er en grunn til at Arduino -plater blir veldig populære. De innkapsler svart magi og litt røyk;) i brettet med pinner som kan håndteres av mennesker.

Dette innlegget vil jeg vie til et ganske enkelt prosjekt, kalt PasswordKeeper, på bunnen av Aruino Pro Micro -kortet. Dette brettet var vert for ATmega32U4 -brikken.

Trinn 1: Ideen

Ideen
Ideen

Jeg ville lenge lage noe enkelt og nyttig med en kontroller. Og så kastet en av mine kollegaer en interessant idé - han var for lat til å skrive inn pålogging og passord hver dag. Så han tok det lille DigiSpark (ATTiny85) -kortet og opprettet en enhet som sender pålogging+passord til en datamaskin når du klikker på knappen. Her er dette utstyret.

Trinn 2: Idé og ledninger

Ideer og ledninger
Ideer og ledninger

Den utmerkede ideen - tenkte jeg. Hvorfor ikke låne den og bruke litt gal kreativitet på den.

Å gjenoppbygge Arduino -prosjektet og laste det inn på tavlen hver gang passordet endres - "Det er ikke droidene du leter etter" [wave]. Det er for greit. Vi ville tatt mye mer sammenfiltret rute!

Utstyret skal vise hvordan det fungerer. Men bare tre standard innebygde lysdioder - det er altfor lite til dette formålet. La oss heve LED -tallet til 4099! Så en liten OLED 128X32 skjermmodul ble lagt til i prosjektet. Jeg kunne ikke finne ut hvor jeg skulle trykke den på en stund. Og det passet perfekt inn i dette prosjektet. Et par knapper til - og alt er klart!

Det var ikke nok plass i ATTiny85 -brikken for prosjektet - tillegg av skjerm trukket for grafisk bibliotek + fonter. Så alt dette passet bare ikke inn i DigiSpark -minnet. Hurtigsøk kommer med en passende plattform: Arduino Pro Micro.

Hovedideen med prosjektet er at ATmega32U4 som standard utgir seg for å være HID -enhet - USB -tastatur og USB COM -port. Drivere for disse enhetene er allerede forhåndsinstallert i det meste av operativsystemet - og ingenting annet må settes opp.

PasswordKeeper, gjort oppmerksom på deg, er en chindogu som etterligner klikk på knappene på tastaturet. Disse klikkene kan overføre en pålogging og et passord til en datamaskin. Selv allestedsnærværende Ctrl-Alt-Del kan sendes ved å klikke på 1-knappen i stedet for 3. Eller en annen nøkkelsekvens etter din smak.

Formfaktoren til de utvalgte modulene er veldig kompakt, men meningsløs, lett å floke med. Det er mulig med minimal innsats for å montere den lille og ganske nyttige enheten. Ledningen kunne bare ikke vært enklere.

Trinn 3: Matlaging

Matlaging
Matlaging

Innholdsstoffene:

1) Aruino Pro Micro - 1 stk

2) OLED -skjerm 128x32 - 1 stk

3) Knapper - 2 deler (eller annen type - etter feil).

4) DuPont -kontakter - 7 deler (eller en ledning for lodding av alt sammen - etter smak).

Ha det hele i en liten matbeholder og rist det grundig. I følge sannsynlighetsteorien kobler elementene seg sammen på riktig måte til slutt.

Å vent! Det er ikke matlagingsrelatert artikkel! Min beklager.

Det er bedre å koble det hele sammen manuelt - i henhold til koblingsskjemaet og spare deg selv for et par åre risting.

Så prototypen for skisse feilsøking / testing er klar.

Trinn 4: Konstruere en sak

Konstruere en sak
Konstruere en sak

Skissen ser ut til å fungere. Men det er upraktisk å bruke enheten i dette skjemaet. Så litt arbeid i Sketchup gir oss et lite foringsrør.

Upd: En idé om saken.

Du kan ta en passende liten gjennomsiktig plastboks.

Eller ta tynn gjennomsiktig plast fra noen emballasjer. Bøy den i henhold til enhetsgeometri. Sett elektronikk inne og fyll hele ledig plass med gjennomsiktig silisium. Det skal gi deg en relativt pen enhet.

Trinn 5: 3D -prining

3D Prining
3D Prining

Kast den i nærmeste 3D -skriver.

Trinn 6: saken er klar

Saken er klar
Saken er klar

Og som vanlig er hastverk nødvendig når du fanger lopper.

Den første versjonen av foringsrøret er litt liten og brettet passer ikke!

Akela savnet å etterlate noen hull. Så tegningen blir korrigert og skrevet ut på nytt.

Andre pasning var bedre - brettet passer perfekt.

Trinn 7: Prøver saken

Prøver ut saken
Prøver ut saken

Sett brettet inne, trykk på det og med en karakteristisk knase låste det seg på stedet.

Prøver på knapper - de passer også.

Trinn 8: Lodding. Ledninger

Lodding. Ledninger
Lodding. Ledninger

Jeg har forresten lett lenge etter en god prototypetråd.

Som et resultat bruker jeg nå 30AWG wire i prosjektene mine. Du kan se dem på bildet. Det er viklingstråd.

Få mennesker husker nå hva det er for noe.

Men den passer også perfekt til lodding ombord. Fargede ledninger er gode for å rydde opp i vanlig rot ved å tildele forskjellige farger forskjellige trådfunksjoner. Tråden er tynn. Isolasjon tåler temperaturen på loddejernet godt. Typisk PVC -isolasjon smelter under lodding umiddelbart. Denne blir myknet, men beholder sin form og gir sporadisk berøring av en loddetapp uten å smelte til kjernen.

Trinn 9: PwKeeper er klar

PwKeeper er klar
PwKeeper er klar

Så å sette alt sammen gir oss et lite token som kobles til en datamaskin og lar deg administrere og bruke

ganske stort antall pålogginger og passord.

Trinn 10: PwKeeperPc - Enkel dataredigering i token

PwKeeperPc - Enkel dataredigering i token
PwKeeperPc - Enkel dataredigering i token

Antall pålogginger er begrenset av mengden innebygd EEPROM-minne (1024 byte) og lengden på passord.

EEPROM -minnet beholder en rekke poster.

Hver post inneholder kommentarfelt og opptil 8 tekstfelt.

To av tekstfeltene heter navn og passord - bare for administrasjon.

Displayet lar deg velge ønsket pålogging som viser deg kommentarfelt.

Det lar deg også redigere dataene i tokenet. Data kan redigeres med bare to knapper. Jeg klemte en eller annen form for redaktør inn i symbolet. Men ærlig talt, du bør være en masochist for å bruke den.

Derfor, for å forenkle passordhåndteringen, måtte jeg skrive et spesielt program for PC -en (forresten - ikke tåk å bytte token til USB -modus når du bruker dette programmet).

Oppdateringer: For *nix peoples la jeg til seriell TTY -konsoll i PwKeeper v1.4 firmware. Denne konsollen er aktivert fra enhetsmenyen. Koble til den med et passende terminalprogram - og du kan redigere data i PwKeeper med flere VI -lignende kommandoer. Konsoll er også mulig å bruke på Windows -plattformen. Bare trykk Ctrl-Shift-M fra Arduino IDE, og du er der (ikke glem å aktivere TTY på PwKeeper før). Men PwKeeperPc er mye mer praktisk, tror jeg.

Trinn 11: PwKeeper kjører

PwKeeper kjører!
PwKeeper kjører!

Tokenet inneholder svært sensitive data, så det bør legges ned en viss innsats for sikkerhet.

Hovedpassordet for å låse opp tokenet eksisterer.

Det er tomt som standard, men når du angir det i tokenet, bør du skrive det inn hver gang etter oppstart.

Hovedpassordet er en brukerdefinert sekvens av enkelt- og dobbeltklikk på opp- og nedknapper.

Trinn 12: Tankestrøm

Teoretisk sett er det mulig å kryptere dataene i EEPROM med noen kryptografiske algoritmer - litt plass igjen i flash. Men denne innsatsen ville ikke bli sett utenfra - så jeg gadd ikke.

Tokenet i sin normale tilstand er ikke synlig for datamaskinen. For å sette den i USB -redigeringsmodus, bør du gjøre det fysisk ved å trykke på knappene på den. På samme måte, for å sende et passord, bør du fysisk trykke på en OPP -knapp. Så ondsinnet hacker ville ikke stjele passordene dine fra tokenet. Han ville fanget dem på en USB -port når du sender dem fra token;)

Resultatet av dette prosjektet er et utstyr der jeg lagrer passord for bankkontoer og forum. Foreldrene mine syntes det også var nyttig å logge på web -post og flere andre nettsteder.

Spesielt for min kollega programmerte jeg alle gjenværende innganger på brettet som knapper for hurtig tilgang. Opptil 12 knapper kan kobles fra gjenværende inngangspinner til bakken. Ved å klikke på en av disse knappene hopper du på den tilsvarende påloggingen (hvis den finnes). Så du trenger bare å trykke på OPP -knappen for å sende den. Eller hold en snarvei litt lenger.

Trinn 13: Inspeksjon-1

Inspeksjon-1
Inspeksjon-1

Før vi går offentlig, har PwKeeper gjennomgått grundig inspeksjon.

Trinn 14: Inspeksjon-2

Inspeksjon-2
Inspeksjon-2

Inspeksjonssjefen hadde nettopp blitt vekket og er ikke i humør.

Men han rynker pannen uten å røre seg- hvorfor tydelig uferdig enhet tilbys offentligheten.

Mine ord om at han må bekrefte kvaliteten på produktet og det er vanskelig å gjøre med saken lukket, ble bare ignorert av ham.

Nyere (etter å ha bestukket pølse) utstedte han godkjenningsbeviset.

Anbefalt: