Sadržaj:

HackerBox 0027: Cypherpunk: 16 koraka
HackerBox 0027: Cypherpunk: 16 koraka

Video: HackerBox 0027: Cypherpunk: 16 koraka

Video: HackerBox 0027: Cypherpunk: 16 koraka
Video: Hackerbox 0089 WiSpy 2024, Studeni
Anonim
HackerBox 0027: Cypherpunk
HackerBox 0027: Cypherpunk

Cypherpunk - Ovaj mjesec HackerBox hakeri istražuju privatnost i kriptografiju. Ovaj Instructable sadrži informacije za rad s HackerBox -om #0027, koje možete preuzeti ovdje dok traju zalihe. Također, ako želite svakog mjeseca primati ovakav HackerBox u poštanski sandučić, pretplatite se na HackerBoxes.com i pridružite se revoluciji!

Teme i ciljevi učenja za HackerBox 0027:

  • Shvatite važne društvene implikacije privatnosti
  • Sigurne kamere na osobnim elektroničkim uređajima
  • Istražite povijest i matematiku kriptografije
  • Kontekstualizirajte uobičajeni kriptografski softver
  • Konfigurirajte ploču "Black Pill" za STM32 ARM procesor
  • Programirajte STM32 Black Pill pomoću Arduino IDE -a
  • Integrirajte tipkovnicu i TFT zaslon s crnom tabletom
  • Ponavljanje funkcionalnosti stroja za enigmu iz Drugoga svjetskog rata
  • Razumijevanje višefaktorske provjere autentičnosti
  • Suočite se s izazovom lemljenja za izradu U2F Zero USB žetona

HackerBoxes je mjesečna pretplatnička usluga za DIY elektroniku i računalnu tehnologiju. Mi smo hobisti, stvaratelji i eksperimentatori. Mi smo sanjari snova. HAKNI PLANETU!

Korak 1: HackerBox 0027: Sadržaj kutije

HackerBox 0027: Sadržaj kutije
HackerBox 0027: Sadržaj kutije
  • HackerBoxes #0027 Kolekciona referentna kartica
  • Modul STM32F103C8T6 crne pilule
  • USB programator STLink V2
  • TFT zaslon u boji od 2,4 inča - 240x320 piksela
  • Matrična tipkovnica 4x4
  • Oglasna ploča bez lemljenja 830 točaka
  • 140 komada Komplet žičanih kratkospojnika
  • Dva U2F kompleta za izazivanje lemljenja bez nule
  • Velika 9x15 cm zelena prototipska pločica zelena
  • Ekskluzivni špijunski blokatori od vinila GawkStop
  • Ekskluzivni aluminijski magnetski okretni poklopac web kamere
  • Ekskluzivna zakrpa EFF -a
  • Naljepnica jazavca za privatnost
  • Tor naljepnica

Još neke stvari koje će vam biti od pomoći:

  • Lemilica, lemljenje i osnovni alati za lemljenje
  • Lupa i mala pinceta za izazivanje SMT lemljenja
  • Računalo za pokretanje softverskih alata

Ono što je najvažnije, trebat će vam osjećaj avanture, DIY duh i hakerska znatiželja. Hardcore DIY elektronika nije beznačajna potraga, a mi vam je ne zagađujemo. Cilj je napredak, a ne savršenstvo. Kad ustrajete i uživate u avanturi, veliko zadovoljstvo može se steći učenjem nove tehnologije i nadamo se uspješnim nekim projektima. Predlažemo da svaki korak napravite polako, vodeći računa o pojedinostima, i nemojte se bojati zatražiti pomoć.

Imajte na umu da postoji mnogo informacija za trenutne i buduće članove u često postavljanim pitanjima o HackerBoxu.

Korak 2: Cypherpunks

Cypherpunks
Cypherpunks

Cypherpunk [wikipedia] aktivist je koji zagovara široku uporabu jake kriptografije i tehnologija za poboljšanje privatnosti kao put do društvenih i političkih promjena. U početku su komunicirale putem popisa za slanje elektroničkih poruka Cypherpunksa, neformalne skupine imale su za cilj postići privatnost i sigurnost proaktivnom uporabom kriptografije. Cypherpunkovi su aktivni pokreti od kraja 1980 -ih.

Krajem 1992. Eric Hughes, Timothy C. May i John Gilmore osnovali su malu skupinu koja se sastajala mjesečno u Gilmoreovoj tvrtki Cygnus Solutions u području zaljeva San Francisco, a Jude Milhon ju je na jednom od prvih sastanaka duhovito nazvao cypherpunkovima - izvedeno iz šifra i cyberpunk. U studenom 2006. riječ "cypherpunk" dodana je u Oxford English Dictionary.

Osnovne ideje mogu se pronaći u Manifestu Cypherpunka (Eric Hughes, 1993.): "Privatnost je potrebna za otvoreno društvo u elektroničkom dobu. … Ne možemo očekivati da nam vlade, korporacije ili druge velike organizacije bez lica daju privatnost … Mi moramo braniti vlastitu privatnost ako očekujemo da će ih imati. … Cypherpunks pišu kôd. Znamo da netko mora pisati softver za zaštitu privatnosti, i … mi ćemo ga napisati. " Neki značajni cypherpunkovi su ili su bili viši djelatnici velikih tehnoloških tvrtki, sveučilišta, a drugi su poznate istraživačke organizacije.

Korak 3: Zaklada za elektroničku granicu (EFF)

Zaklada za elektroničku granicu (EFF)
Zaklada za elektroničku granicu (EFF)

EFF [wikipedia] je međunarodna neprofitna grupa za digitalna prava sa sjedištem u San Franciscu u Kaliforniji. Zakladu su osnovali u srpnju 1990. John Gilmore, John Perry Barlow i Mitch Kapor za promicanje građanskih sloboda na Internetu.

EFF osigurava sredstva za pravnu obranu na sudu, predstavlja izvještaje amicus curiae, brani pojedince i nove tehnologije od onoga što smatra zlouporabnim pravnim prijetnjama, radi na razotkrivanju državnih malverzacija, daje smjernice vladi i sudovima, organizira političke akcije i masovne dopise, podržava neke nove tehnologije za koje vjeruje da čuvaju osobne slobode i internetske građanske slobode, održava bazu podataka i web stranice s povezanim vijestima i informacijama, prati i osporava potencijalno zakonodavstvo za koje smatra da bi povrijedilo osobne slobode i poštenu uporabu te traži popis onoga što smatra razmatra zloupotrebljive patente s namjerom da porazi one za koje smatra da nisu valjani. EFF također nudi savjete, alate, upute, upute i softver za sigurniju mrežnu komunikaciju.

HackerBoxes je ponosan što je glavni donator Zakladi Electronic Frontier. Snažno potičemo svakoga i svakoga da kliknu ovdje i pokažu svoju podršku ovoj iznimno važnoj neprofitnoj skupini koja štiti digitalnu privatnost i slobodno izražavanje. Pravni rad, aktivizam i razvoj softvera EFF -a u javnom interesu nastoje očuvati naša temeljna prava u digitalnom svijetu. EFF je neprofitna organizacija u SAD -u 501 (c) (3) i vaše se donacije mogu odbiti od poreza.

Korak 4: Značajni projekti EFF -a

Značajni projekti EFF -a
Značajni projekti EFF -a

Privacy Badger dodatak je pregledniku koji sprječava oglašivače i druge tragače trećih strana da tajno prate kamo idete i koje stranice gledate na webu. Ako vam se čini da vas oglašivač prati na više web stranica bez vašeg dopuštenja, Privacy Badger automatski blokira tog oglašivača da učita dodatni sadržaj u vaš preglednik. Oglašivaču je to kao da ste iznenada nestali.

Neutralnost mreže ideja je da bi davatelji internetskih usluga (ISP -ovi) trebali pošteno postupati sa svim podacima koji putuju njihovim mrežama, bez nepropisne diskriminacije u korist određenih aplikacija, web stranica ili usluga. To je načelo koje se mora pridržavati kako bi se zaštitila budućnost našeg otvorenog interneta.

Companion Security Education Companion novi je resurs za ljude koji bi željeli pomoći svojim zajednicama da nauče o digitalnoj sigurnosti. Potreba za robusnom osobnom digitalnom sigurnošću raste svakim danom. Od osnovnih skupina do organizacija civilnog društva do pojedinačnih članova EFF -a, ljudi iz cijele naše zajednice izražavaju potrebu za pristupačnim obrazovnim materijalima za sigurnost koje će podijeliti sa svojim prijateljima, susjedima i kolegama.

Onion Router (Tor) omogućuje svojim korisnicima da surfaju internetom, razgovaraju i anonimno šalju trenutne poruke. Tor je besplatni softver i otvorena mreža koja pomaže u obrani od analize prometa, oblika nadzora mreže koji ugrožava osobnu slobodu i privatnost, povjerljive poslovne aktivnosti i odnose te državnu sigurnost.

Korak 5: Osigurajte svoje kamere

Osigurajte svoje kamere
Osigurajte svoje kamere

Prema časopisu WIRED, "špijunski alati, bilo da su ih osmislile obavještajne agencije, cyber prevaranti ili jezivi internet, mogu uključiti vašu kameru bez paljenja indikatorskog svjetla." [OŽIČENO]

Dok je bio ravnatelj FBI -a, James Comey održao je govor o šifriranju i privatnosti. Komentirao je da na prijenosno računalo stavlja leću preko objektiva web kamere. [NPR]

Mark Zuckerberg objavio je vijest kada je javnost primijetila da slijedi istu praksu. [VRIJEME]

HackerBox #0027 sadrži kolekciju prilagođenih špijunskih blokada GAWK STOP od vinila, kao i aluminijski omotač web kamere s magnetom.

Korak 6: Kriptografija

Kriptografija
Kriptografija

Kriptografija [wikipedia] je praksa i proučavanje tehnika sigurne komunikacije u prisutnosti trećih strana koje se zovu protivnici. Kriptografija prije modernog doba bila je zapravo sinonim za šifriranje, pretvaranje informacija iz čitljivog stanja u prividnu besmislicu. Začetnik šifrirane poruke podijelio je tehniku dekodiranja koja je potrebna za oporavak izvornih podataka samo s namjeravanim primateljima, čime se spriječava da neželjene osobe učine isto. Književnost o kriptografiji često koristi ime Alice ("A") za pošiljatelja, Bob ("B") za predviđenog primatelja i Eve ("prisluškivač") za protivnika. Od razvoja strojeva za šifriranje rotora u Prvom svjetskom ratu i dolaska računala u Drugom svjetskom ratu, metode korištene za izvođenje kriptologije postale su sve složenije, a njihova primjena sve rasprostranjenija. Suvremena kriptografija uvelike se temelji na matematičkoj teoriji. Kriptografski algoritmi osmišljeni su u skladu s pretpostavkama računalne tvrdoće, što otežava razbijanje takvih algoritama od strane bilo kojeg protivnika.

Postoji mnogo mrežnih izvora za učenje više o kriptografiji. Evo nekoliko polazišta:

Putovanje u kriptografiju na Khan Academy izvrstan je niz video zapisa, članaka i aktivnosti.

Sveučilište Stanford ima besplatni online tečaj kriptografije.

Bruce Schneier objavio je vezu na internetsku kopiju svoje klasične knjige, Primijenjena kriptografija. Tekst pruža opsežan pregled suvremene kriptografije. Opisuje desetke kriptografskih algoritama i daje praktične savjete kako ih implementirati.

Korak 7: Uobičajeni kriptografski softver

Uobičajeni kriptografski softver
Uobičajeni kriptografski softver

S praktičnog gledišta, postoji nekoliko specifičnih primjena kriptografije kojih bismo trebali biti svjesni:

Pretty Good Privacy (PGP) je program za šifriranje koji pruža kriptografsku privatnost i provjeru autentičnosti za pohranjene podatke. PGP se koristi za potpisivanje, šifriranje i dešifriranje teksta, e-pošte, datoteka, direktorija, pa čak i cijelih particija diska.

Sigurnost transportnog sloja (TLS) kriptografski je protokol koji pruža komunikacijsku sigurnost preko računalne mreže. TLS se koristi u aplikacijama kao što su pregledavanje weba, e -pošta, slanje internetskih faksova, razmjena trenutnih poruka i glas putem IP -a (VoIP). Web stranice mogu koristiti TLS za zaštitu sve komunikacije između svojih poslužitelja i web preglednika. TLS je izgrađen na ranijim specifikacijama sloja sigurnih utičnica (SSL).

Internet Protocol Security (IPsec) je paket mrežnih protokola koji provjerava autentičnost i šifrira pakete podataka poslanih putem mreže. IPsec uključuje protokole za uspostavljanje međusobne provjere autentičnosti između agenata na početku sesije i pregovaranje o kriptografskim ključevima koji će se koristiti tijekom sesije.

Virtualna privatna mreža (VPN) proširuje privatnu mrežu preko javne mreže i omogućuje korisnicima slanje i primanje podataka putem zajedničkih ili javnih mreža kao da su njihovi računalni uređaji izravno povezani s privatnom mrežom. Sustavi na svakom kraju VPN tunela šifriraju podatke koji ulaze u tunel i dešifriraju ih na drugom kraju.

Blockchain je neprestano rastući popis zapisa, nazvanih blokovi, koji su povezani i osigurani kriptografijom. Prvi blockchain implementiran je 2009. godine kao ključna komponenta bitcoina gdje služi kao javna knjiga za sve transakcije. Izum blockchaina za bitcoin učinio ga je prvom digitalnom valutom koja je riješila problem dvostruke potrošnje bez potrebe pouzdanog tijela ili središnjeg poslužitelja.

Korak 8: STM32 crna pilula

STM32 crna pilula
STM32 crna pilula
STM32 crna pilula
STM32 crna pilula

Black Pill je najnovija ploča za tablete STM32. To je poboljšana varijanta na uobičajenoj plavoj piluli i rjeđoj crvenoj piluli.

Black Pill sadrži STM32F103C8T6 32-bitni ARM M3 mikrokontroler (podatkovna tablica), četveropolno ST-Link zaglavlje, MicroUSB priključak i korisničku LED diodu na PB12. Ispravan pull-up otpornik na PA12 dolazi instaliran za ispravan rad USB priključka. Ovo povlačenje obično je zahtijevalo izmjenu ploče na drugim pločama za tablete.

Iako je izgledom sličan tipičnom Arduino Nano, Crna pilula je daleko moćnija. 32 -bitni STM32F103C8T6 ARM mikrokontroler može raditi na 72 MHz. Može izvesti množenje u jednom ciklusu i hardversku podjelu. Ima 64 Kbajta flash memorije i 20 Kbajta SRAM -a.

Korak 9: Bljeskanje crne pilule s Arduino IDE -om i STLinkom

Bljeskanje crne pilule s Arduino IDE -om i STLinkom
Bljeskanje crne pilule s Arduino IDE -om i STLinkom

Ako nemate instaliran noviji Arduino IDE, preuzmite ga ovdje.

Zatim nabavite Arduino_STM32 spremište Rogera Clarka. To uključuje hardverske datoteke za podršku STM32 pločama na Arduino IDE 1.8.x. Ako ovo preuzmete ručno, pobrinite se da se Arduino_STM32-master.zip raspakira u Arduino IDE "hardversku" mapu. Imajte na umu da postoji forum za podršku za ovaj paket.

Pričvrstite žice kratkospojnika STLink kao što je prikazano ovdje.

Pokrenite Arduino IDE i odaberite ove opcije pod Alati:

Ploča: Generička serija STM32F103CVarijanta: STM32F103C8 (20k RAM. 64k Flash) Brzina procesora (MHz): "72MHz (normalno)" Način prijenosa: "STLink"

Otvorite primjere datoteka> osnove> treptaj Promijenite sve tri instance "LED_BUILTIN" u PB12Hit strelicu "upload" (LED na STLinku će treperiti tijekom prijenosa)

Ova učitana skica trepćat će korisničku LED diodu na crnoj tableti svake sekunde. Zatim promijenite vrijednost u dva kašnjenja (1000) izraza s 1000 na 100 i ponovno učitajte. LED bi sada trebao treptati deset puta brže. Ovo je naša standardna vježba "Hello World" kako bismo bili sigurni da možemo sastaviti jednostavan program i učitati ga na ciljnu ploču.

Korak 10: Pilule Duckie

Pilule Duckie
Pilule Duckie

Pill Duck je skriveni USB HID uređaj koji koristi STM32. Naravno zašto ne?

Korak 11: TFT zaslon

TFT zaslon
TFT zaslon

Tankoslojni tranzistorski zaslon s tekućim kristalima (TFT LCD) varijanta je zaslona s tekućim kristalima (LCD) koji koristi tehnologiju tankoslojnih tranzistora za poboljšane kvalitete slike, kao što su adresabilnost i kontrast. TFT LCD je LCD s aktivnom matricom, za razliku od pasivnih matrica ili jednostavnih LCD-a s izravnim pogonom s nekoliko segmenata.

Ovaj TFT zaslon u boji mjeri 2,4 inča i ima rezoluciju 240x320.

Upravljač je ILI9341 (podatkovna tablica), koji se može spojiti na STM32 putem sabirnice serijskog perifernog sučelja (SPI) prema shemi ožičenja prikazanoj ovdje.

Za testiranje prikaza učitajte skicu sa:

primjeri> Adafruit_ILI9341_STM> stm32_graphicstest

Mijenjanje tri upravljačke iglice definira ovako:

#define TFT_CS PA1#define TFT_DC PA3#definiraj TFT_RST PA2

Primijetite da se grafički primjer testa izvršava vrlo brzo zbog poboljšanih performansi STM32 u odnosu na tradicionalni Arduino AVR mikrokontroler.

Korak 12: Unos matrice tipkovnice

Matrični ulaz tipkovnice
Matrični ulaz tipkovnice

Spojite matričnu tipkovnicu 4x4 kao što je prikazano i učitajte priloženu skicu TFT_Keypad. Ovaj primjer čita tipkovnicu i prikazuje tipku na ekranu. Imajte na umu da ovaj jednostavan primjer za čitanje tipkovnice blokira jer je koristila funkciju delay (). To bi se moglo poboljšati prelaskom na model anketiranja ili prekidanja.

Sastavljanje tipkovnice i TFT zaslona zajedno s crnom pilulom na lemljenu ploču ili zelenu proto ploču čini lijepu "računalnu platformu" s unosom i prikazom.

Korak 13: Enigma Machine Code Challenge

Image
Image
Autentifikacija u dva faktora - sigurnosni ključ U2F Zero
Autentifikacija u dva faktora - sigurnosni ključ U2F Zero

Strojevi Enigma bili su elektromehanički strojevi za šifriranje rotora razvijeni i korišteni početkom do sredine 20. stoljeća. Usvojile su ih vojne i vladine službe nekoliko zemalja, ponajviše nacističke Njemačke. Njemačke oružane snage vjerovale su da su njihove komunikacije šifrirane Enigmom saveznicima neprobojne. Ali tisuće razbijača kodova - sa sjedištem u drvenim kolibama u britanskom parku Bletchley - imali su druge ideje.

Ovog mjeseca izazov kodiranja je pretvoriti "računalnu platformu" u vaš vlastiti Enigma stroj.

Već smo implementirali primjere za unose s tipkovnice i izlaze za zaslon.

Evo nekoliko primjera za postavke i proračune između ulaza i izlaza:

ENIGMuino

Otvorite Enigmu

Arduino Enigma simulator

Instrukcije iz ST-Geotronics

Korak 14: Dvofaktorska provjera autentičnosti - U2F Zero sigurnosni ključ

Dvofaktorska provjera autentičnosti (također poznata kao 2FA) metoda je potvrđivanja identiteta korisnika putem kombinacije dva različita faktora: 1) nešto što znaju, 2) nešto što imaju ili 3) nešto što jesu. Dobar primjer dvofaktorske autentifikacije je podizanje novca s bankomata, gdje samo ispravna kombinacija bankovne kartice (nešto što korisnik posjeduje) i PIN-a (nešto što korisnik zna) omogućuje obavljanje transakcije.

Universal 2nd Factor (U2F) je otvoreni standard autentifikacije koji jača i pojednostavljuje dvofaktorsku provjeru autentičnosti pomoću specijaliziranih USB ili NFC uređaja temeljenih na sličnoj sigurnosnoj tehnologiji koja se nalazi u pametnim karticama. Sigurnosne ključeve U2F podržava Google Chrome od verzije 38 i Opera od verzije 40. U2F sigurnosni ključevi mogu se koristiti kao dodatna metoda provjere u dva koraka na mrežnim uslugama koje podržavaju U2F protokol, uključujući Google, Dropbox, GitHub, GitLab, Bitbucket, Nextcloud, Facebook i drugi.

U2F Zero je U2F token otvorenog koda za dvofaktorsku autentifikaciju. Sadrži Microchip ATECC508A kriptografski ko-procesor koji podržava:

  • Sigurno skladište ključeva temeljeno na hardveru
  • Algoritmi brzog javnog ključa (PKI)
  • ECDSA: FIPS186-3 Algoritam digitalnog potpisa eliptične krivulje
  • ECDH: FIPS SP800-56A Eliptična krivulja Diffie-Hellmanov algoritam
  • NIST Standard P256 podrška za eliptičke krivulje
  • SHA-256 Hash Algoritam s opcijom HMAC
  • Spremište do 16 ključeva - 256 -bitna duljina ključa
  • Jedinstveni 72-bitni serijski broj
  • Generator slučajnih brojeva FIPS (RNG)

Korak 15: Komplet za izazivanje lemljenja

Set za izazivanje lemljenja
Set za izazivanje lemljenja
Set za izazivanje lemljenja
Set za izazivanje lemljenja
Set za izazivanje lemljenja
Set za izazivanje lemljenja

Ako ste pred ozbiljnim izazovom lemljenja, možete izgraditi vlastiti U2F nulti ključ.

Komplet izazova za U2F nulto lemljenje:

  • U2F Zero Token PCB
  • 8051 jezgreni mikrokontroler (E0) EFM8UB11F16G
  • Sigurnosni element (A1) ATECC508A
  • Statusna LED (RGB1) 0603 Uobičajena anoda
  • Zener ESD zaštitna dioda (Z1) SOT553
  • Otpornik od 100 ohma (R1) 0603
  • 4.7 uF premosni kondenzator (C4) 0603
  • Zaobilazni kondenzator 0,1 uF (C3) 0403
  • Trenutni taktilni gumb (SW1)
  • Privjesak s podijeljenim prstenom

Imajte na umu da postoje dvije komponente veličine 0603. Izgledaju prilično slično, ali pažljivim pregledom otkrit će se da je R1 crn, a C4 preplanuo. Također imajte na umu da E0, A1 i RGB1 imaju potrebne orijentacije kako je navedeno na sitotisku na PCB -u.

U2F Zero Wiki prikazuje detalje za programiranje mikrokontrolera.

BILJEŠKA O IZAZOVU: Svaki HackerBox #0027 uključuje dva kompleta za izazivanje lemljenja upravo zato što je lemljenje vrlo teško i događaju se nezgode. Nemojte se frustrirati. Upotrijebite veliko povećanje, pincetu, dobro glačalo, lemljenje i krećite se vrlo polako i oprezno. Ako ne možete uspješno lemiti ovaj komplet, definitivno niste sami. Čak i ako nikada ne uspije, dobra je praksa lemljenja na raznim SMT paketima.

Možda biste htjeli pogledati ovu epizodu emisije Ben Heck o lemljenju na površinskoj montaži.

Korak 16: HAKNITE PLANETU

HAKNI PLANETU
HAKNI PLANETU

Ako ste uživali u ovom Instrucableu i željeli biste svaki mjesec isporučivati kutiju elektroničkih i računalno -tehničkih projekata izravno u vaš poštanski sandučić, pridružite se HackerBox revoluciji PRETPLATOM OVDJE.

Dosegnite i podijelite svoj uspjeh u komentarima ispod ili na Facebook stranici HackerBoxes. Svakako nas obavijestite ako imate pitanja ili trebate pomoć oko bilo čega. Hvala vam što ste dio HackerBox -a. Molimo da vaši prijedlozi i povratne informacije stižu. HackerBoxes su VAŠE kutije. Napravimo nešto sjajno!

Preporučeni: