Taula de continguts:

HackerBox 0027: Cypherpunk: 16 passos
HackerBox 0027: Cypherpunk: 16 passos

Vídeo: HackerBox 0027: Cypherpunk: 16 passos

Vídeo: HackerBox 0027: Cypherpunk: 16 passos
Vídeo: HackerBox #0016 Cellular World 2024, De novembre
Anonim
HackerBox 0027: Cypherpunk
HackerBox 0027: Cypherpunk

Cypherpunk: aquest mes, els hackers de HackerBox exploren la privadesa i la criptografia. Aquest manual instructiu conté informació per treballar amb HackerBox # 0027, que podeu recollir aquí fins a esgotar els subministraments. A més, si voleu rebre un HackerBox com aquest a la vostra bústia de correu cada mes, subscriviu-vos a HackerBoxes.com i uniu-vos a la revolució.

Temes i objectius d'aprenentatge per a HackerBox 0027:

  • Comprendre les importants implicacions socials de la privadesa
  • Càmeres segures en dispositius electrònics personals
  • Exploreu la història i les matemàtiques de la criptografia
  • Contextualitzeu el programari criptogràfic comú
  • Configureu una placa "Black Pill" de processador STM32 ARM
  • Programa la píndola negra STM32 amb l'IDE Arduino
  • Integreu un teclat i una pantalla TFT amb la píndola negra
  • Replicar la funcionalitat de la màquina Enigma de la Segona Guerra Mundial
  • Enteneu l’autenticació multifactor
  • Afronta el repte de soldar per construir un testimoni USB U2F Zero

HackerBoxes és el servei de caixa de subscripció mensual per a electrònica de bricolatge i tecnologia informàtica. Som aficionats, creadors i experimentadors. Som els somiadors dels somnis. HACK EL PLANETA!

Pas 1: HackerBox 0027: contingut de la caixa

HackerBox 0027: contingut de la caixa
HackerBox 0027: contingut de la caixa
  • HackerBoxes # 0027 Targeta de referència col·leccionable
  • Mòdul Black Pill STM32F103C8T6
  • Programador USB STLink V2
  • Pantalla TFT a tot color de 2,4 polzades: 240x320 píxels
  • Teclat Matrix 4x4
  • Taula de pa sense soldadura de 830 punts
  • Kit de pont de filferro de 140 peces
  • Dos kits de repte de soldadura zero U2F
  • PCB de protecció verd gran de 9x15 cm
  • Exclusius bloquejadors d'espies de vinil GawkStop
  • Coberta de càmera web giratòria magnètica d'alumini exclusiva
  • Pegat EFF exclusiu
  • Decalcomania de teixó de privadesa
  • Tor Decal

Algunes altres coses que us seran útils:

  • Soldador, soldador i eines bàsiques de soldadura
  • Lupa i pinces petites per al desafiament de soldadura SMT
  • Ordinador per executar eines de programari

El més important és que necessiteu un sentiment d’aventura, esperit de bricolatge i curiositat per part dels pirates informàtics. L’electrònica de bricolatge dur no és una recerca trivial i no l’emperem. L’objectiu és el progrés, no la perfecció. Quan persisteix i gaudeix de l’aventura, es pot obtenir una gran satisfacció a partir de l’aprenentatge de noves tecnologies i amb l’esperança que alguns projectes funcionin. Us suggerim fer cada pas lentament, tenint en compte els detalls i no tingueu por de demanar ajuda.

Tingueu en compte que hi ha una gran quantitat d’informació per als membres actuals i potencials a les PMF de HackerBox.

Pas 2: Cypherpunks

Cypherpunks
Cypherpunks

A Cypherpunk [wikipedia] és un activista que defensa un ús generalitzat de criptografia forta i tecnologies que milloren la privadesa com a ruta cap al canvi social i polític. Originalment es comunicaven a través de la llista de correu electrònic de Cypherpunks, grups informals amb l'objectiu d'aconseguir privadesa i seguretat mitjançant un ús proactiu de la criptografia. Els cypherpunks han participat en un moviment actiu des de finals dels anys vuitanta.

A finals del 1992, Eric Hughes, Timothy C. May i John Gilmore van fundar un petit grup que es reunia mensualment a la companyia de Gilmore Cygnus Solutions, a la zona de la badia de San Francisco, i que Jude Milhon va anomenar humorísticament cypherpunks en una de les primeres reunions, derivada de xifrat i ciberpunk. El novembre de 2006, la paraula "cypherpunk" es va afegir al Oxford English Dictionary.

Les idees bàsiques es poden trobar al Manifest de Cypherpunk (Eric Hughes, 1993): "La privadesa és necessària per a una societat oberta a l'era electrònica. No podem esperar que governs, corporacions o altres grans organitzacions sense rostre ens concedeixin privadesa … hem de defensar la nostra pròpia privadesa si esperem tenir-ne alguna … Cypherpunks escriu codi. Sabem que algú ha d’escriure programari per defensar la privadesa i … l’escriureem. " Alguns cypherpunks destacats són, o eren, personal alt de les principals empreses tecnològiques, universitats i altres són organitzacions de recerca conegudes.

Pas 3: Electronic Frontier Foundation (EFF)

Fundació Electronic Frontier (EFF)
Fundació Electronic Frontier (EFF)

L'EFF [wikipedia] és un grup internacional de drets digitals sense ànim de lucre amb seu a San Francisco, Califòrnia. La fundació va ser creada el juliol de 1990 per John Gilmore, John Perry Barlow i Mitch Kapor per promoure les llibertats civils a Internet.

El FEP proporciona fons per a la defensa judicial als tribunals, presenta escrits sobre amicus curiae, defensa les persones i les noves tecnologies del que considera amenaces legals abusives, treballa per exposar les malifetes governamentals, proporciona orientació al govern i als tribunals, organitza accions polítiques i enviaments massius, dóna suport algunes noves tecnologies que creu que preserven les llibertats personals i les llibertats civils en línia, manté una base de dades i llocs web de notícies i informació relacionades, supervisa i impugna la legislació potencial que creu que infringiria les llibertats personals i l’ús legítim i sol·licita una llista de què considera patents abusives amb intenció de derrotar aquelles que considera sense mèrit. EFF també proporciona consells, eines, instruccions, tutorials i programari per a comunicacions en línia més segures.

HackerBoxes està orgullós de ser un important donant de la Electronic Frontier Foundation. Animem a tothom a fer clic aquí i mostrar el seu suport a aquest grup sense ànim de lucre d’importància crucial que protegeix la privadesa digital i la lliure expressió. El treball legal, l’activisme i el desenvolupament de programari d’interès públic d’EFF busquen preservar els nostres drets fonamentals al món digital. EFF és una organització sense ànim de lucre dels Estats Units 501 (c) (3) i és possible que les vostres donacions siguin deduïbles per impostos.

Pas 4: Projectes EFF destacables

Projectes EFF destacables
Projectes EFF destacables

Privacy Badger és un complement del navegador que impedeix als anunciants i altres seguidors de tercers fer un seguiment secret d’on aneu i quines pàgines mireu al web. Si sembla que un anunciant us fa un seguiment a través de diversos llocs web sense el vostre permís, Privacy Badger bloqueja automàticament l’anunciant perquè no carregui cap contingut més al vostre navegador. Per a l’anunciant, és com si de sobte haguéssiu desaparegut.

La neutralitat de la xarxa és la idea que els proveïdors de serveis d’Internet (ISP) haurien de tractar totes les dades que viatgen per les seves xarxes de manera justa, sense discriminacions inadequades a favor d’aplicacions, llocs o serveis concrets. És un principi que s’ha de mantenir per protegir el futur de la nostra Internet oberta.

Security Education Companion és un nou recurs per a persones que vulguin ajudar les seves comunitats a aprendre sobre seguretat digital. La necessitat d’una seguretat digital personal sòlida creix cada dia. Des de grups de base fins a organitzacions de la societat civil fins a membres individuals de la FEP, persones de tota la nostra comunitat manifesten la necessitat de disposar de materials educatius de seguretat accessibles per compartir amb els seus amics, veïns i col·legues.

Onion Router (Tor) permet als seus usuaris navegar per Internet, xatejar i enviar missatges instantanis de forma anònima. Tor és un programari lliure i una xarxa oberta que ajuda a defensar-se de l’anàlisi del trànsit, una forma de vigilància de la xarxa que amenaça la llibertat i la privadesa de les persones, les activitats i relacions comercials confidencials i la seguretat de l’Estat.

Pas 5: assegureu les càmeres

Protegiu les vostres càmeres
Protegiu les vostres càmeres

Segons la revista WIRED, "les eines d'espionatge, ja siguin dissenyades per agències d'intel·ligència, ciberdelictes o rastrejadors d'Internet, poden encendre la càmera sense il·luminar el llum indicador". [CONNECTAT]

Mentre era director de l’FBI, James Comey va pronunciar un discurs sobre xifratge i privadesa. Va comentar que posava un tros de cinta sobre l’objectiu de la càmera web del portàtil. [NPR]

Mark Zuckerberg va fer notícies quan el públic es va adonar que segueix la mateixa pràctica. [TEMPS]

HackerBox # 0027 inclou una col·lecció de bloquejadors d’espies GAWK STOP de vinil personalitzats, a més d’una coberta de càmera web giratòria magnètica d’alumini.

Pas 6: criptografia

Criptografia
Criptografia

La criptografia [wikipedia] és la pràctica i l’estudi de tècniques per a una comunicació segura en presència de tercers anomenats adversaris. La criptografia anterior a l’edat moderna era efectivament sinònim de xifratge, la conversió d’informació d’un estat llegible a aparent disbarat. L'originador d'un missatge xifrat va compartir la tècnica de descodificació necessària per recuperar la informació original només amb els destinataris previstos, evitant així que les persones no desitjades poguessin fer el mateix. La literatura de criptografia sovint utilitza el nom Alice ("A") per a l'emissor, Bob ("B") per al destinatari previst i Eve ("escolta") per a l'adversari. Des del desenvolupament de màquines xifradores de rotors a la Primera Guerra Mundial i l’aparició dels ordinadors a la Segona Guerra Mundial, els mètodes utilitzats per dur a terme la criptologia s’han tornat cada vegada més complexos i la seva aplicació més estesa. La criptografia moderna es basa en gran mesura en la teoria matemàtica. Els algoritmes criptogràfics estan dissenyats al voltant de suposicions de duresa computacional, cosa que fa que aquests adversaris siguin difícils de trencar.

Hi ha molts recursos en línia per obtenir més informació sobre la criptografia. A continuació, es detallen alguns punts de partida:

The Journey into Cryptography at Khan Academy és una excel·lent sèrie de vídeos, articles i activitats.

La Universitat de Stanford té un curs gratuït de criptografia en línia.

Bruce Schneier ha publicat un enllaç a una còpia en línia del seu llibre clàssic, Applied Cryptography. El text proporciona un estudi exhaustiu de la criptografia moderna. Descriu dotzenes d’algoritmes criptogràfics i dóna consells pràctics sobre com implementar-los.

Pas 7: programari criptogràfic comú

Programari criptogràfic comú
Programari criptogràfic comú

Des del punt de vista pràctic, hi ha algunes aplicacions específiques de la criptografia que hauríem de ser conscients:

Pretty Good Privacy (PGP) és un programa de xifratge que proporciona privadesa i autenticació criptogràfiques per a les dades emmagatzemades. PGP s’utilitza per signar, xifrar i desxifrar text, correus electrònics, fitxers, directoris i fins i tot particions de disc senceres.

Transport Layer Security (TLS) és un protocol criptogràfic que proporciona seguretat de comunicació a través d’una xarxa informàtica. TLS s’utilitza en aplicacions com la navegació web, el correu electrònic, el fax per Internet, la missatgeria instantània i la veu sobre IP (VoIP). Els llocs web poden utilitzar TLS per protegir totes les comunicacions entre els seus servidors i navegadors web. TLS es basa en les especificacions anteriors de Secure Sockets Layer (SSL).

Internet Protocol Security (IPsec) és un conjunt de protocols de xarxa que autentica i xifra els paquets de dades enviats a través d’una xarxa. IPsec inclou protocols per establir l'autenticació mútua entre agents al començament de la sessió i la negociació de claus criptogràfiques per utilitzar-les durant la sessió.

Una xarxa privada virtual (VPN) estén una xarxa privada a través d’una xarxa pública i permet als usuaris enviar i rebre dades a través de xarxes públiques o compartides com si els seus dispositius informàtics estiguessin directament connectats a la xarxa privada. Els sistemes a cada extrem del túnel VPN xifren les dades que entren al túnel i els desxifren a l’altre extrem.

Una cadena de blocs és una llista de registres en continu creixement, anomenats blocs, que estan enllaçats i protegits mitjançant criptografia. El primer blockchain es va implementar el 2009 com a component bàsic de bitcoin, on serveix de llibre major per a totes les transaccions. La invenció de la cadena de blocs per a Bitcoin la va convertir en la primera moneda digital que resolia el problema de la doble despesa sense la necessitat d’una autoritat de confiança o d’un servidor central.

Pas 8: pastilla negra STM32

Pastilla negra STM32
Pastilla negra STM32
Píndola negra STM32
Píndola negra STM32

La píndola negra és l’última pissarra STM32. És una variant millorada a la píndola blava comuna i a la píndola vermella menys comuna.

La píndola negra inclou el microcontrolador STM32F103C8T6 de 32 bits ARM M3 (full de dades), una capçalera ST-Link de quatre pins, un port MicroUSB i un LED d’usuari a PB12. La resistència de tracció correcta del PA12 ve instal·lada per al funcionament correcte del port USB. Aquesta extracció normalment requeria una modificació del tauler en altres tauletes.

Tot i que és d’aspecte similar al típic Arduino Nano, la Black Pill és molt més potent. El microcontrolador ARM de 32 bits STM32F103C8T6 pot funcionar a 72 MHz. Pot realitzar multiplicacions de cicle únic i divisió de maquinari. Té 64 Kbytes de memòria Flash i 20 Kbytes de SRAM.

Pas 9: Intermitent de la píndola negra amb Arduino IDE i STLink

Intermitent de la píndola negra amb Arduino IDE i STLink
Intermitent de la píndola negra amb Arduino IDE i STLink

Si no teniu instal·lat un IDE Arduino recent, obteniu-lo aquí.

A continuació, obteniu el dipòsit Arduino_STM32 de Roger Clark. Això inclou els fitxers de maquinari que admeten les plaques STM32 a Arduino IDE 1.8.x. Si el descarregueu manualment, assegureu-vos que Arduino_STM32-master.zip es descomprimeix a la carpeta "maquinari" Arduino IDE. Tingueu en compte que hi ha un fòrum d'assistència per a aquest paquet.

Connecteu els cables del pont STLink tal com es mostra aquí.

Executeu l'IDE Arduino i seleccioneu aquestes opcions a Eines:

Tauler: sèrie STM32F103C genèrica Variant: STM32F103C8 (20 k RAM. 64 k Flash) Velocitat de la CPU (MHz): "72 MHz (normal)" Mètode de càrrega: "STLink"

Obriu els exemples de fitxers> conceptes bàsics> parpellejar Canvieu les tres instàncies de "LED_BUILTIN" a PB12 Feu clic a la fletxa de "pujar" (el LED del STLink parpellejarà durant la càrrega)

Aquest esbós carregat parpellejarà el LED d'usuari de la píndola negra cada segon. A continuació, canvieu el valor de les dues sentències de retard (1000) de 1000 a 100 i torneu a carregar-lo. El LED hauria de parpellejar deu vegades més ràpid ara. Aquest és el nostre exercici estàndard "Hello World" per assegurar-nos que podem compilar un programa senzill i carregar-lo al tauler de destinació.

Pas 10: pastilla Duckie

Pill Duckie
Pill Duckie

Pill Duck és un dispositiu HID USB amb script que utilitza un STM32. Clar … Per què no?

Pas 11: pantalla TFT

Pantalla TFT
Pantalla TFT

La pantalla de cristall líquid de transistor de pel·lícula fina (TFT LCD) és una variant d’una pantalla de cristall líquid (LCD) que utilitza la tecnologia de transistor de pel·lícula fina per millorar les qualitats de la imatge, com ara l’adreçabilitat i el contrast. Un LCD TFT és un LCD de matriu activa, en contrast amb els LCD de matriu passiva o els LCD senzills de conducció directa amb alguns segments.

Aquesta pantalla TFT a tot color mesura 2,4 polzades i té una resolució de 240x320.

El controlador és un ILI9341 (full de dades), que es pot connectar a l'STM32 mitjançant un bus d'interfície sèrie perifèrica (SPI) segons el diagrama de cablejat que es mostra aquí.

Per provar la pantalla, carregueu l'esbós des de:

exemples> Adafruit_ILI9341_STM> stm32_graphicstest

Modifiqueu els tres pins de control definits així:

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

Tingueu en compte que l'exemple de prova gràfica s'executa molt ràpidament a causa del rendiment millorat del STM32 respecte al tradicional microcontrolador Arduino AVR.

Pas 12: entrada de la matriu del teclat

Entrada de matriu del teclat
Entrada de matriu del teclat

Connecteu el teclat 4x4 Matrix tal com es mostra i carregueu l'esbós adjunt TFT_Keypad. Aquest exemple llegeix el teclat i mostra la tecla a la pantalla. Tingueu en compte que aquest exemple senzill de lectura del teclat es bloqueja perquè utilitzava la funció delay (). Això es podria millorar canviant a un model de votació o basat en interrupcions.

El muntatge del teclat i la pantalla TFT juntament amb la píndola negra a la placa de soldadura sense soldadura o al protobordo verd converteixen en una agradable "plataforma informàtica" amb entrada i pantalla.

Pas 13: repte del codi de la màquina Enigma

Image
Image
Autenticació de dos factors: clau de seguretat zero U2F
Autenticació de dos factors: clau de seguretat zero U2F

Les màquines Enigma eren màquines electròniques de xifrat de rotors desenvolupades i utilitzades a principis i mitjans del segle XX. Van ser adoptats pels serveis militars i governamentals de diversos països, sobretot l'Alemanya nazi. Les forces armades d'Alemanya creien que les seves comunicacions encriptades amb Enigma eren impenetrables per als aliats. Però milers de trencadors de codis, amb seu a cabanes de fusta del parc britànic Bletchley, tenien altres idees.

El repte de codificació d’aquest mes és convertir la "plataforma informàtica" en la vostra pròpia màquina Enigma.

Ja hem implementat exemples d’entrades de teclat i sortides de visualització.

A continuació, es mostren alguns exemples de paràmetres i càlculs entre les entrades i les sortides:

ENIGMuino

Obriu Enigma

Simulador Enigma Arduino

Es pot instruir des de ST-Geotronics

Pas 14: autenticació de dos factors: clau de seguretat zero U2F

L’autenticació de dos factors (també coneguda com a 2FA) és un mètode per confirmar la identitat reclamada per un usuari mitjançant la combinació de dos factors diferents: 1) quelcom que saben, 2) quelcom que tenen o 3) quelcom que són. Un bon exemple d’autenticació de dos factors és la retirada de diners d’un caixer automàtic, on només la combinació correcta d’una targeta bancària (cosa que posseeix l’usuari) i un PIN (quelcom que l’usuari sap) permet realitzar la transacció.

Universal 2nd Factor (U2F) és un estàndard d'autenticació obert que reforça i simplifica l'autenticació de dos factors mitjançant dispositius USB o NFC especialitzats basats en tecnologia de seguretat similar que es troba a les targetes intel·ligents. Les claus de seguretat U2F són compatibles amb Google Chrome des de la versió 38 i Opera des de la versió 40. Les claus de seguretat U2F es poden utilitzar com a mètode addicional de verificació en dos passos en serveis en línia que admeten el protocol U2F, inclosos Google, Dropbox, GitHub, GitLab, Bitbucket, Nextcloud, Facebook i altres.

U2F Zero és un testimoni U2F de codi obert per a l'autenticació de dos factors. Compta amb el coprocessador criptogràfic Microchip ATECC508A, que admet:

  • Emmagatzematge de claus basat en maquinari segur
  • Algoritmes de clau pública d'alta velocitat (PKI)
  • ECDSA: Algoritme de signatura digital de la corba el·líptica FIPS186-3
  • ECDH: FIPS SP800-56A Algoritme Diffie-Hellman de la corba el·líptica
  • Suport de corba el·líptica estàndard NIST P256
  • Algorisme Hash SHA-256 amb opció HMAC
  • Emmagatzematge de fins a 16 claus: longitud de clau de 256 bits
  • Número de sèrie únic de 72 bits
  • Generador de números aleatoris FIPS (RNG)

Pas 15: Kit de desafiament de soldadura

Kit de desafiament de soldadura
Kit de desafiament de soldadura
Kit de desafiament de soldadura
Kit de desafiament de soldadura
Kit de desafiament de soldadura
Kit de desafiament de soldadura

Si teniu un gran repte de soldadura, podeu crear la vostra pròpia clau zero U2F.

Kit de desafiament de soldadura zero U2F:

  • PCB de testimoni zero U2F
  • 8051 Core Microcontroller (E0) EFM8UB11F16G
  • Element segur (A1) ATECC508A
  • LED d'estat (RGB1) 0603 Ànode comú
  • Diodo de protecció Zener ESD (Z1) SOT553
  • Resistència de 100 ohms (R1) 0603
  • 4.7 condensador de derivació uF (C4) 0603
  • Condensador de derivació 0,1 uF (C3) 0403
  • Botó tàctil momentani (SW1)
  • Clauer anell dividit

Tingueu en compte que hi ha dos components de mida 0603. Semblen força similars, però un examen acurat revelarà que R1 és negre i C4 és marró. Tingueu en compte també que E0, A1 i RGB1 necessiten orientacions tal com s’indica a la serigrafia del PCB.

El Wiki U2F Zero mostra els detalls per programar el microcontrolador.

NOTA DE REPTE: Cada HackerBox # 0027 inclou dos kits de repte de soldadura exactament perquè la soldadura és molt difícil i es produeixen accidents. No us frustreu. Utilitzeu un augment elevat, pinces, una bona planxa, flux de soldadura i moveu-vos molt lentament i amb cura. Si no podeu soldar amb èxit aquest kit, definitivament no esteu sols. Fins i tot si mai funciona, és una bona pràctica de soldadura en diversos paquets SMT.

Us recomanem que consulteu aquest episodi del programa Ben Heck Show on Surface Mount Soldering.

Pas 16: HACK EL PLANETA

HACK EL PLANETA
HACK EL PLANETA

Si us ha agradat aquest Instrucable i voleu que cada mes es lliurin directament a la vostra bústia una caixa de projectes electrònics i informàtics com aquest, uniu-vos a la revolució HackerBox subscrivint-vos AQUÍ.

Arribeu i compartiu el vostre èxit als comentaris següents o a la pàgina de Facebook de HackerBoxes. Indiqueu-nos si teniu cap pregunta o necessiteu ajuda per res. Gràcies per formar part de HackerBoxes. Si us plau, mantingueu els vostres suggeriments i suggeriments. HackerBoxes són LES VOSTRES caixes. Fem alguna cosa genial!

Recomanat: