Dnes zostavíme zariadenie, ktoré si zapamätá naše heslá a stlačením tlačidla ich automaticky zadáme do počítača. V takom prípade budú heslá chránené. Autorom tohto domáceho produktu je Michael (kanál YouTube „Arturos TV“).
Na nezávislú výrobu takéhoto zariadenia potrebujeme iba 3 komponenty. Po prvé, je to samozrejme platforma (prosím, nezamieňajte si ju Arduino pre mini).
Toto arduino má mikrokontrolér ATmega32u4, čo znamená, že má vstavané USB, to znamená, že počítač rozpoznáva arduino ako myš alebo klávesnicu. To je okolo tejto funkcie, že bude postavený dnešný projekt.
Tento arduino má tiež trochu neštandardný pinout. S týmto sa však stretneme o niečo neskôr. Okrem toho sa musíme pohybovať v ponuke a potom zadať heslo.
Poďme sa krátko zaoberať princípom jeho práce. Kodér má 2 kontakty, ktoré sa nazývajú podmienečne, aab, v závislosti od toho, ktorým smerom sa bude kodér otáčať.
Napríklad, ak ho otočíme v smere hodinových ručičiek, potom kontakt „a“ sa najskôr uzavrie a až potom kontakt „b“. Na základe toho v programe vieme pochopiť, že kodér bol otočený v smere hodinových ručičiek. Ak sa otáča proti smeru hodinových ručičiek, kontakt „b“ sa najskôr uzavrie a až potom kontakt „a“. Po každej revolúcii pocítite aj mierne kliknutie. Na tomto základe bude založené heslo, ktoré bude potrebné zadať, aby ste získali prístup k nášmu zariadeniu.
Menu zariadenia sa zobrazí na známej, samozrejme na zbernici I2C.
A existuje mierna nuancia. V arduino pro micro nie sú kontakty I2C na štandardných portoch A5 a A4, ale na kontaktoch 2 a 3, takže tu musíte pripojiť displej.
Schéma celého zostaveného zariadenia vo všeobecnosti vyzerá takto:
Prípad samozrejme vytlačíme na 3d tlačiarni.
Tentoraz sa to ukázalo veľmi dobre, ale z nejakého dôvodu sa autor rozhodol urobiť návrh, a preto spodný kryt nebol príliš krásny. Neurobí sa však nič, ale s rozmermi puzdra a vzdialenosťou medzi otvormi sa tentoraz všetko ukázalo veľmi dobre. Všetky detaily padli na svoje miesto a ukázalo sa, že s veľmi malými ťažkosťami dotiahli všetky skrutky, aby sa diely upevnili. Žiaľ, horúce lepidlo bolo opäť možné, ale v tomto projekte to už bolo trochu.
Najzaujímavejšou vecou tohto projektu bolo, samozrejme, písanie firmvéru.
Nebudeme sa hlbšie zaoberať jeho podrobnosťami, ale je potrebné povedať vám niektoré z jeho funkcií. Toto je predovšetkým použitie knižnice keyboard.h.
Táto knižnica sa používa iba s mikrokartónmi arduino leonardo a arduino pro alebo s tými, ktoré majú vstavané mikrokontroléry USB. Ak sa pokúsite osvetľovať pomocou tohto náčrtu akékoľvek iné arduino, ktoré nemá taký zabudovaný USB, vývojové prostredie sa prisahá, takže buďte opatrní. Ďalšou zaujímavou knižnicou je EEPROM.h.
Jeho autor používa na skomplikovanie útokov hackerov na naše zariadenie. Viac o tom však neskôr. Táto linka bude pre vás veľmi zaujímavá:
Tu nastavíme prístupový kód pre naše zariadenie na odomknutie. Trochu neskôr o bezpečnosti, ale nezabudnite, že tu máme možnosť uviesť buď „0“, alebo „1“. Momentálne sme nastavili heslo „101“.
A tiež veľmi dôležitý blok - tu sa budú ukladať heslá.
Upozorňujeme, že ide o dvojrozmerné pole a počet hesiel je vo všeobecnosti neobmedzený. Aj keď je to prísne vzaté obmedzené pamäťou zariadenia, môže sa to zanedbať. Je veľmi dôležité dodržiavať formát záznamu. Predpokladajme, že prvé pole sa nachádza v ponuke na zariadení. To je napríklad „správca“.
Potom, oddelené čiarkami a v úvodzovkách, musíme napísať naše heslo, ktoré chceme, aby zariadenie vstúpilo do počítača. Napríklad existuje sekcia „Test“ (táto sa zapíše na obrazovku nášho zariadenia).
A ak stlačíme tlačidlo, tento text sa vloží do počítača:
Krása tohto zariadenia je, že ak je mikrokontrolér osvetlený nejakým náčrtom, nie je možné ho odtiaľ dostať. Ak ste tu raz nastavili všetky heslá a všetky ich mená a potom ich z tohto firmvéru vymazali, nikto iný nebude mať prístup k vašim heslám, okrem toho, že útočník toto zariadenie prelomí a pochopí, ako to funguje.
Toto je pomerne zdĺhavý firmvér a nebudeme sa venovať jeho detailom. Môžete si ho stiahnuť odkazom v popise pod videom autora (odkaz ZDROJ na konci článku).
Takže sme skončili s firmvérom, takže teraz sa pozrime, ako toto zariadenie funguje. Pripojíme ho k počítaču, takže sa dostane k moci.
Našou úlohou je teraz zadať heslo. Heslo, ako si pamätáte, je nula a tie, navyše, „1“ je jedno kliknutie rotácie enkodéra v smere hodinových ručičiek a „0“ je rotácia proti smeru hodinových ručičiek. To znamená, že keďže sme nastavili heslo 101, musíme páku posúvať 1-krát doprava, 1-krát doľava a potom znova doprava.
Potom zadáme heslo kliknutím na kódovač a získame prístup k heslu v počítači.
Upozorňujeme, že máme iba 3 pokusy. Ak ich všetky strávime, zariadenie vás požiada, aby ste počkali minútu a potom sme sa mohli pokúsiť znova zadať heslo.
A pre tých, ktorí sú obzvlášť inteligentní, ktorí pochopia, že musia počkať minútu a odpojiť zariadenie od napájania a potom sa znova pripojiť, zariadenie im povie, že musia zastaviť svoje zákerné triky a že o nich vedia všetko, pretože čas je stále potrebný čakanie je neustále zaznamenávané v energeticky nezávislej pamäti.
Dúfam, že pochopíte, ako toto zariadenie funguje. Ďakujem za pozornosť. Uvidíme sa skoro!
videa: