Orodha ya maudhui:
Video: Jenereta ya Arduino TOTP: Hatua 3
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:50
Uvuvio
Kuwa na rafiki aliye na hamu ya kuficha na usalama, nilitaka kuunda zawadi bora ya siku ya kuzaliwa.
* Huu ni mradi nilioufanya kama zawadi ya siku ya kuzaliwa na uliundwa ndani ya vizuizi vya wakati mgumu (msamehe kazi ya fujo)
KUMBUKA: Kizazi cha TOTP ambacho kinatumika katika mradi huu kinazalisha na kutumia nambari 6 za nambari, lakini kwa sababu ya vifaa vyangu vya sasa, nilichagua kukata nambari 2 zinazofuatia na kuonyesha na kutumia 4, kwa ubishi (lakini sio sana) kupunguza usalama.
Habari za jumla
Mradi huu hutengeneza nambari mpya kila sekunde 30 kwa kutumia kitufe kilichotanguliwa na wakati wa sasa (ambao huhifadhiwa kwa kutumia moduli ya saa ya wakati halisi) na kuionyesha kwenye onyesho wakati kitufe kinabanwa. Kesi ya kawaida ya utumiaji itakuwa uthibitishaji wa vitu viwili kulingana na Nywila ya Wakati Moja (TimeP) na HMAC yenye msingi wa HMAC kwa uthibitishaji.
TOTP ni algorithm inayohesabu nenosiri la wakati mmoja kutoka kwa ufunguo wa siri ulioshirikiwa na wakati wa sasa. HTOP ni algorithm ambayo hutumia algorithm ya HMAC kutengeneza nenosiri la wakati mmoja.
Kampuni kama Google, Microsoft, na Steam tayari hutumia teknolojia ya TOTP kwa uthibitishaji wa sababu zao mbili
Viungo vya kuvutia
Nakala inayoelezea jinsi Google hutumia teknolojia hii kudhibitisha watumiaji -
Utekelezaji wa JavaScript wa HOTP na TOTP ambayo inaweza kutumika wakati wa kuunda programu inayotumia mradi huu -
Maktaba ya Crytographic ya Arduino iliyotumiwa katika mradi huu -
Karatasi ya TOTP -
Kiwango cha Utaalam
Hii inaweza kufundishwa kwa wapenda nia ambao wanapenda usalama na wanaweza kutaka kutekeleza sehemu nzuri ya vifaa kwa kizazi cha TOTP yao. Hii inaweza kuandikwa kwa hadhira ambayo tayari inaelewa misingi ya kutafsiri michoro za elektroniki na programu ya kawaida, lakini ikiwa unapanga kufuata tu hii inayoweza kufundishwa haswa, usijali ikiwa huna uzoefu, na jisikie huru kuuliza maswali chini katika maoni! Kwa kuongezea, mradi huo unaweza kuwa wa kufurahisha kwa watengenezaji wenye uzoefu zaidi kwani bidhaa ya mwisho sio tu kipande kizuri cha kuwa karibu (kwa maoni yangu), lakini ina uwezo mkubwa sana wa upanuzi na huduma mpya bila shida nyingi.
Vifaa
Vifaa:
- 1x Arduino Nano (Amazon)
- Moduli ya 1x DS3231 AT24C32 Halisi ya Saa (RTC) (Amazon)
- 1x SH5461AS Sehemu ya Kawaida ya Cathode 4-sehemu ya 7 (Amazon)
- Kitufe cha 1x (Amazon)
- Mpinzani wa 1x 10k (Amazon)
- Hiari 1x 5x7cm PCB (Amazon)
- Hiari waya kwa soldering kwa PCB
- BODI ya mkate ya hiari ya upimaji (Amazon)
Hatua ya 1: Mkutano na Upimaji
Unganisha vifaa vyote kwenye ubao wa mkate na uziweke kwa waya kulingana na mchoro wa wiring iliyoambatishwa (Faili ya Fritzing iko hapa).
Hakikisha una IDU ya Arduino iliyosanikishwa (inaweza kupatikana mkondoni ikiwa sio) na usakinishe maktaba zifuatazo:
github.com/lucadentella/TOTP-Arduino
github.com/adafruit/RTClib
github.com/maniacbug/Cryptosuite
Pakua mchoro ulioambatishwa (unaweza pia kupatikana hapa: https://gist.github.com/shiv213/569f01a54988cb0207966be9a65cc5ab), na uifungue kwa kutumia Arduino IDE. Fungua kiunga hiki (https://www.lucadentella.it/OTP/) na uingize jina lolote kwenye uwanja wa jina la akaunti, na kitufe cha siri cha kawaida (wahusika 10 kwa muda mrefu) katika uwanja ufuatao, uhakikishe kuokoa maadili hayo yote mawili. mahali salama pa kuhifadhi nakala. Nakili yaliyomo kwenye uwanja wa "Arduino HEX:", na urudi kwa mhariri wa Arduino, ukibadilisha safu kwenye laini ya 25 (hmacKey) na ile uliyonakili kutoka kwa wavuti.
Baada ya kuangalia mara mbili kila unganisho la waya, hakikisha moduli ya RTC ina kiini cha sarafu ndani yake, na unganisha Arduino kwenye kompyuta yako ndogo ukitumia kamba ya mini ya USB, na upakie mchoro ulioambatanishwa.
Baada ya kupakia, kitufe kinapobanwa, nambari inapaswa kuonekana kwenye skrini. Ikiwa unapakua programu ya Kithibitishaji cha Google kwenye simu mahiri na kurudi kwenye wavuti inayotumiwa kutengeneza safu ya HEX, kuchanganua nambari ya QR au kuandika "nambari ya Kithibitishaji cha Google" kwenye programu, unapaswa kuona nambari iliyoonyeshwa kwenye programu. Ikiwa kila kitu kinafanya kazi kwa usahihi, unapobonyeza kitufe cha kushinikiza, nambari 4 zilizoonyeshwa zinapaswa kufanana na nambari 4 ya kwanza ya nambari ya sasa iliyoonyeshwa kwenye programu ya smartphone. Ikiwa sivyo ilivyo, hakikisha kwamba kompyuta inayotumika kupakia nambari ya Arduino imewekwa kwa wakati wa UTC na ujaribu tena.
Hatua ya 2: Kuhamisha kwa PCB
Baada ya kuhakikisha kuwa kila kitu kiko katika hali ya kufanya kazi, unaweza kuhamisha vifaa kwa PCB na solder kila kitu pamoja lakini unaonekana unafaa. Nimeambatanisha mchoro wa PCB pamoja na faili ya Fritzing (inapatikana hapa). Kumbuka kuwa niliweka vifaa vyote juu ya bodi kwa aesthetics, lakini pia inaweza kuwekwa chini na kisha kufungwa ndani ya aina fulani ya nyumba kuifanya iwe safi. Nilikata na kuchoma moto vijiti vya popsicle vyenye rangi na Sharpie kwa pande za PCB ili kuunda sanduku la kitengo cha kitengo. Hatua nyingine ya hiari ni kuambatanisha klipu ya betri ya voliti 9 kwa vifungo vya VIN na GND vya Arduino, na kuifanya iendeshwe na betri.
Hatua ya 3: Imemalizika
Hivi ndivyo jenereta yangu iliyokamilika ilivyotokea, ikiwa ulifuata na kujitengenezea mwenyewe, shiriki hapa chini!
Hakikisha kupiga kura yangu inayoweza kufundishwa kwa Shindano la STEM ikiwa utaona inafaa, na uacha maoni / maswali yoyote ambayo unaweza kuwa nayo chini!
Ilipendekeza:
Jenereta ya Ishara ya RF 100 KHz-600 MHZ kwenye DDS AD9910 Arduino Shield: Hatua 5
Jenereta ya Ishara ya RF 100 KHz-600 MHZ kwenye DDS AD9910 Arduino Shield: Jinsi ya kupiga kelele za chini, usahihi wa hali ya juu, jenereta ya RF thabiti (na AM, FM Modulation) kwenye Arduino
Jenereta ya Karatasi ya Laser inayoingiliana na Arduino: Hatua 11 (na Picha)
Jenereta ya Karatasi ya Laser inayoingiliana na Arduino: Lasers inaweza kutumika kuunda athari nzuri za kuona. Katika mradi huu, niliunda aina mpya ya onyesho la laser ambalo linaingiliana na hucheza muziki. Kifaa hicho huzungusha lasers mbili ili kuunda shuka mbili kama taa. Nilijumuisha sensa ya umbali
Jenereta ya Wimbi la Arduino: Hatua 5 (na Picha)
Jenereta ya Arduino Waveform: sasisho la Februari 2021: angalia toleo jipya na kiwango cha sampuli 300x, kulingana na Raspberry Pi Pico.Katika maabara, mara nyingi mtu anahitaji ishara ya kurudia ya masafa, sura na amplitude. Inaweza kuwa kujaribu kipaza sauti, angalia mzunguko,
Jenereta ya Muziki inayotegemea hali ya hewa (ESP8266 Kulingana na Jenereta ya Midi): Hatua 4 (na Picha)
Jenereta ya Muziki ya Hali ya Hewa (ESP8266 Based Midi Generator): Halo, leo nitaelezea jinsi ya kutengeneza jenereta yako ndogo ya Muziki inayotegemea hali ya hewa. Inategemea ESP8266, ambayo ni kama Arduino, na inajibu kwa hali ya joto, mvua na nguvu ndogo. Usitarajie itengeneze nyimbo nzima au programu ya gumzo
Jenereta - Jenereta ya DC Kutumia Kubadilisha Reed: 3 Hatua
Jenereta - Jenereta ya DC Kutumia Kubadilisha Reed: Jenereta rahisi ya Dc Jenereta ya moja kwa moja (DC) ni mashine ya umeme ambayo hubadilisha nishati ya kiufundi kuwa umeme wa moja kwa moja wa sasa. Muhimu: Jenereta ya moja kwa moja ya sasa (DC) inaweza kutumika kama gari la DC bila ujenzi wowote. mabadiliko