Sisukord:

HackerBox 0058: kodeerimine: 7 sammu
HackerBox 0058: kodeerimine: 7 sammu

Video: HackerBox 0058: kodeerimine: 7 sammu

Video: HackerBox 0058: kodeerimine: 7 sammu
Video: Latin Capital Letter M U+004D 2024, Juuli
Anonim
HackerBox 0058: kodeerimine
HackerBox 0058: kodeerimine

Tervitused HackerBoxi häkkeritele kogu maailmas! HackerBox 0058 abil uurime teabe kodeerimist, vöötkoode, QR -koode, Arduino Pro Micro programmeerimist, sisseehitatud LCD -ekraane, vöötkoodide loomise integreerimist Arduino projektidesse, inimeste sisendseadmete kasutamist ja palju muud.

HackerBoxes on igakuine abonentkasti teenus elektroonika ja arvutitehnoloogia entusiastidele - Riistvarahäkkerid - Unistuste unistajad.

HackerBoxesi KKK -s on palju teavet praeguste ja tulevaste liikmete kohta. Peaaegu kõik meile saadetud mittetehnilise toe e-kirjad on seal juba vastatud, seega hindame teid väga, kui võtate KKK lugemiseks mõne minuti.

Tarvikud

See juhend sisaldab teavet HackerBox 0058 kasutamise alustamiseks. Kogu karbi sisu on loetletud HackerBox 0058 tootelehel, kust on võimalik ka kaupa osta, kuni kaupa jätkub. Kui soovite automaatselt saada iga kuu oma postkasti 15 -dollarise allahindlusega sellise HackerBoxi, saate tellida saidi HackerBoxes.com ja liituda revolutsiooniga!

Igakuise HackerBoxiga töötamiseks on üldiselt vaja jootekolvi, jootet ja põhilisi jootetööriistu. Samuti on vaja arvutit tarkvara tööriistade käitamiseks. Vaadake HackerBox Deluxe Starteri töötuba, kus leiate põhitööriistade komplekti ning mitmesuguseid tutvustavaid tegevusi ja katseid.

Kõige tähtsam on see, et vajate seiklustunnet, häkkerivaimu, kannatlikkust ja uudishimu. Kuigi elektroonika ehitamine ja katsetamine on väga tasuv, võib see olla keeruline, väljakutsuv ja kohati isegi masendav. Eesmärk on progress, mitte täiuslikkus. Kui te jätkate ja naudite seiklust, võib sellest hobist saada palju rahulolu. Tehke iga samm aeglaselt, arvestage detailidega ja ärge kartke abi küsida

Samm: kodeerimine

Kodeerimine
Kodeerimine

Teabe edastamine, salvestamine või manipuleerimine nõuab kodeerimist. Kuna teabe töötlemine, salvestamine ja edastamine on kaasaegse elektroonika põhiolemus, peame muretsema palju kodeerimise pärast.

Kodeerimise väga lihtsa näitena võib kahe sõrme üleval hoides või numbritega "2" või "] [" või sõnu "kaks" või "dos" või "kasutades näidata, mitu silma või kõrva neil on" Er "või" zwei ". Tegelikult mitte nii lihtne, eks? Inimkeeles kasutatav kodeerimine, eriti selliste teemade puhul nagu emotsioonid või abstraktsioon, võib muutuda väga keerukaks.

FÜÜSIKA

Jah, kõik algab alati füüsikast. Elektroonilistes süsteemides alustame kõige lihtsamate väärtuste esitamisega elektrisignaalide, tavaliselt pingetasemete abil. Näiteks null võib olla kujutatud maapinnana (ligikaudu 0 V) ja ÜHET umbes 5 V (või 3,3 V jne), et moodustada nullidest ja üksikutest binaarne süsteem. Isegi ainult NULLA ja ÜHE puhul tuleb sageli lahendada ebaselgust. Nupu vajutamisel on see null või üks? KÕRGE või MADAL? Kas kiibi valimise signaal on "aktiivne kõrge" või "aktiivne madal"? Mis kell saab signaali lugeda ja kui kaua see kehtib? Kommunikatsioonisüsteemides nimetatakse seda "liinide kodeerimiseks".

Sellel madalaimal tasemel on esitused suuresti seotud süsteemi füüsikaga. Milliseid pingeid see suudab toetada, kui kiiresti see võib üleminekut teha, kuidas laser sisse ja välja lülitada, kuidas infosignaalid raadiosageduskanalit moduleerivad, milline on kanali ribalaius või isegi kuidas ioonide kontsentratsioonid tekitavad aktsioonipotentsiaali neuron. Elektroonika puhul on see teave sageli esitatud tootja andmelehe imposantsetes tabelites.

Füüsiline kiht (PHY) või kiht 1 on esimene ja madalaim kiht arvutivõrgu seitsmekihilises OSI mudelis. Füüsiline kiht määratleb toorbittide edastamise vahendid võrgusõlme ühendava füüsilise andmeside kaudu. Füüsiline kiht pakub ülekandekandjale elektrilist, mehaanilist ja protseduurilist liidest. Elektriliste pistikute kuju ja omadused, edastatavad sagedused, kasutatav liinikood ja sarnased madala taseme parameetrid on määratud füüsilise kihiga.

ARVUD

Me ei saa palju teha ainult ühe ja nulliga või oleksime arenenud "rääkima", pilgutades üksteist. Binaarsed väärtused on siiski suurepärane algus. Arvutus- ja sidesüsteemides kombineerime kahendkohad (bitid) baitideks ja "sõnadeks", mis sisaldavad näiteks 8, 16, 32 või 64 bitti.

Kuidas need binaarsõnad numbritele või väärtustele vastavad? Lihtsa 8-bitise baidi korral on 00000000 üldiselt null ja 11111111 on tavaliselt 255, et saada 2 kuni 8 või 256 erinevat väärtust. Loomulikult ei piirdu see sellega, sest numbreid on palju rohkem kui 256 ja mitte kõik numbrid pole positiivsed täisarvud. Juba enne arvutisüsteeme esindasime arvväärtusi, kasutades erinevaid arvusüsteeme, keeli, aluseid ja kasutades selliseid tehnikaid nagu negatiivsed numbrid, kujuteldavad numbrid, teaduslik märge, juured, suhtarvud ja erinevate aluste logaritmilised skaalad. Arvutisüsteemide arvväärtuste puhul peame silmitsi seisma selliste probleemidega nagu masina epsilon, endianness, fikseeritud ja ujukoma.

TEKST (CETERA)

Lisaks numbrite või väärtuste esitamisele võivad binaarbaidid ja -sõnad tähistada tähti ja muid tekstisümboleid. Kõige tavalisem teksti kodeerimise vorm on Ameerika standardne teabevahetuse kood (ASCII). Loomulikult saab tekstina kodeerida erinevat tüüpi teavet: raamat, see veebileht, xml -dokument.

Mõnel juhul, näiteks e -posti või Useneti postituste korral, võiksime soovida tekstiks kodeerida laiemat tüüpi teavet (nt üldised binaarfailid). Uuene kodeerimise protsess on tavaline binaarse tekstiga kodeerimise vorm. Saate isegi pilte "kodeerida" tekstina: ASCII Art või veelgi parem ANSI Art.

KOODIMISTEOORIA

Kodeerimisteooria uurib koodide omadusi ja nende sobivust konkreetsete rakenduste jaoks. Koode kasutatakse andmete tihendamiseks, krüptograafiaks, vigade avastamiseks ja parandamiseks, andmete edastamiseks ja andmete salvestamiseks. Koode uurivad tõhusad ja usaldusväärsed andmeedastusmeetodid erinevate teadusharude poolt. Näideteaduste hulka kuuluvad infoteooria, elektrotehnika, matemaatika, keeleteadus ja informaatika.

Andmete kokkusurumine (koondamise eemaldamine)

Andmete tihendamine, allikakodeerimine või bitikiiruse vähendamine on teabe kodeerimise protsess, kasutades vähem bitte kui esialgne esitus. Iga konkreetne kokkusurumine on kas kahjumlik või kadudeta. Kadudeta tihendamine vähendab bitti, tuvastades ja kõrvaldades statistilise liiasuse. Kadudeta tihendamisel ei kaota teavet. Kaotatud tihendamine vähendab bitti, eemaldades mittevajaliku või vähem olulise teabe.

Lempel -Ziv (LZ) tihendusmeetodid on kadudevaba salvestamise kõige populaarsemate algoritmide hulgas. 1980ndate keskel, pärast Terry Welchi tööd, sai Lempel – Ziv – Welch (LZW) algoritm kiiresti enamiku üldotstarbeliste kompressioonisüsteemide valiku meetodiks. LZW -d kasutatakse-g.webp

Kasutame pidevalt tihendatud andmeid DVD -de, MPEG -video voogesituse, MP3 -heli, JPEG -graafika, ZIP -failide, kokkusurutud tõrvapallide jms jaoks.

VIGA Tuvastamine ja parandamine (lisades kasulikku koondamist)

Vigade tuvastamine ja parandamine või tõrje on tehnikad, mis võimaldavad digitaalsete andmete usaldusväärset edastamist ebausaldusväärsete sidekanalite kaudu. Paljud sidekanalid alluvad kanalimürale ja seega võivad allikast vastuvõtjani edastamisel tekkida vead. Vigade tuvastamine on müra või muude kahjustuste põhjustatud vigade tuvastamine saatjalt vastuvõtjale edastamise ajal. Veaparandus on vigade avastamine ja originaalsete, vigadeta andmete rekonstrueerimine.

Vigade tuvastamine toimub kõige lihtsamalt edastuse kordamise, pariteedibittide, kontrollsummade või CRC -de või räsifunktsioonide abil. Vastuvõtja võib tuvastada (kuid mitte tavaliselt parandada) edastusvea, kes saab seejärel taotleda andmete uuesti edastamist.

Veaparanduskoode (ECC) kasutatakse andmete vigade kontrollimiseks ebausaldusväärsete või lärmakate sidekanalite kaudu. Keskne idee on see, et saatja kodeerib sõnumi üleliigse teabega ECC kujul. Koondamine võimaldab vastuvõtjal tuvastada piiratud arvu vigu, mis võivad ilmneda kõikjal sõnumis, ja sageli neid vigu parandada ilma edasisaatmiseta. ECC lihtsustatud näide on iga andmebiti edastamine 3 korda, mida tuntakse (3, 1) korduskoodina. Kuigi edastatakse ainult 0, 0, 0 või 1, 1, 1, võivad mürarikka kanali vead esitada vastuvõtjale mis tahes kaheksast võimalikust väärtusest (kolm bitti). See võimaldab parandada viga kõigis kolmes valimis, kasutades häälteenamust või demokraatlikku hääletust. Selle ECC parandusvõime parandab seega 1 veabitti igas edastatud tripletis. Kuigi see kolmekordne modulaarne koondamine on lihtne rakendada ja laialdaselt kasutusel, on see suhteliselt ebaefektiivne ECC. Paremad ECC -koodid uurivad tavaliselt viimaseid kümneid või isegi viimaseid sadu varem vastuvõetud bitte, et teha kindlaks, kuidas praegust väikest käputäis bitti dekodeerida.

Peaaegu kõik kahemõõtmelised vöötkoodid, nagu QR-koodid, PDF-417, MaxiCode, Datamatrix ja Aztec Code, kasutavad Reed-Saalomoni ECC-d, et võimaldada õiget lugemist isegi siis, kui osa vöötkoodist on kahjustatud.

KRÜPTOGRAAFIA

Krüptograafiline kodeering on loodud arvutusliku kõvaduse eelduste põhjal. Selliseid kodeerimisalgoritme on vastase tahtlikult raske (praktilises mõttes) murda. Sellist süsteemi on teoreetiliselt võimalik lõhkuda, kuid seda ei ole võimalik teha mis tahes teadaolevate praktiliste vahenditega. Seetõttu nimetatakse neid skeeme arvutuslikult turvaliseks. On olemas informatsiooniteoreetiliselt turvalised skeemid, mida ei saa tõepoolest isegi piiramatu arvutusvõimsuse korral murda, näiteks ühekordne padi, kuid neid skeeme on praktikas keerulisem kasutada kui parimaid teoreetiliselt purustatavaid, kuid arvutuslikult turvalisi mehhanisme.

Traditsiooniline šifride krüptimine põhineb ülevõtmise šifril, mis muudab sõnumite tähtede järjekorda (nt "tere maailmast" saab tühises lihtsas ümberkorraldusskeemis "ehlol owrdl") ja asendusšifrid, mis asendavad süstemaatiliselt tähti või rühmi. tähed teiste tähtede või tähtede rühmadega (nt „lendab korraga” muutub „gmz bu podf”, asendades iga tähe järgnevaga ladina tähestikus). Mõlema lihtsad versioonid pole kunagi pakkunud ettevõtlike vastaste suurt konfidentsiaalsust. Varajane asendusšifer oli Caesari šifr, kus iga lihtteksti täht asendati tähega allapoole jääva teatud arvu positsioonidega. ROT13 on a on lihtne tähtede asendamise šifr, mis asendab tähe tähe 13. tähega pärast seda. See on Caesari šifri erijuhtum. Proovige seda siin!

Samm: QR -koodid

QR -koodid
QR -koodid

QR-koodid (wikipedia) või "kiirreageerimiskoodid" on maatriksitüüp või kahemõõtmeline vöötkood, mis loodi esmakordselt 1994. aastal Jaapani autotööstusele. Vöötkood on masinloetav optiline silt, mis sisaldab teavet üksuse kohta, millele see on kinnitatud. Praktikas sisaldavad QR -koodid sageli veebisaidi või rakenduse juurde viitavaid lokaatori, identifikaatori või jälgija andmeid. QR -kood kasutab andmete tõhusaks salvestamiseks nelja standardset kodeerimisrežiimi (numbriline, tähtnumbriline, bait/binaarne ja kanji).

Kiire reageerimise süsteem sai populaarseks väljaspool autotööstust tänu kiirele loetavusele ja suuremale mälumahule võrreldes tavaliste UPC vöötkoodidega. Rakendused hõlmavad toote jälgimist, üksuste tuvastamist, aja jälgimist, dokumentide haldamist ja üldist turundust. QR -kood koosneb mustadest ruutudest, mis on paigutatud ruudukujulisele ruudustikule valgele taustale, mida saab lugeda pildistamisseadme, näiteks kaamera abil, ja töödelda Reed -Solomoni veaparanduse abil, kuni pilti saab asjakohaselt tõlgendada. Seejärel eraldatakse nõutavad andmed mustritest, mis esinevad nii pildi horisontaalsetes kui ka vertikaalsetes komponentides.

Kaasaegsed nutitelefonid loevad tavaliselt automaatselt QR -koode (ja muid vöötkoode). Avage lihtsalt kaamerarakendus, suunake kaamera vöötkoodile ja oodake sekund või kaks, kuni kaamerarakendus näitab, et see on vöötkoodi külge lukustatud. Rakendus kuvab mõnikord vöötkooni sisu koheselt, kuid tavaliselt nõuab rakendus vöötkooditeate valimist, et kuvada vöötkoodist eraldatud teave. 2011. aasta juunis skaneeris 14 miljonit Ameerika mobiilikasutajat QR -koodi või vöötkoodi.

Kas kasutasite oma nutitelefoni HackerBox 0058 välisküljel kodeeritud sõnumite lugemiseks?

Huvitav video: kas mahutate QR -koodi terve mängu?

Vanad taimerid mäletavad Cauzin Softstripi 80ndate arvutiajakirjadest. (video demo)

Samm: Arduino Pro Micro 3.3V 8MHz

Arduino Pro Micro 3.3V 8MHz
Arduino Pro Micro 3.3V 8MHz

Arduino Pro Micro põhineb mikrokontrolleril ATmega32U4, millel on sisseehitatud USB -liides. See tähendab, et teie arvuti ja Arduino mikrokontrolleri vahel puudub FTDI, PL2303, CH340 või mõni muu kiip, mis toimiks vahendajana.

Soovitame kõigepealt proovida Pro Micro ilma tihvte paika jootmata. Põhikonfiguratsiooni ja testimist saate teha ilma päise nööpnõelu kasutamata. Samuti annab mooduli jootmise edasilükkamine silumiseks ühe muutuja vähem, kui peaks tekkima komplikatsioone.

Kui teie arvutisse pole Arduino IDE installitud, laadige alla IDE vorm arduino.cc. HOIATUS: Enne Pro Micro programmeerimist valige kindlasti tööriistade> protsessori alt 3.3V versioon. Selle 5 V komplekti seadmine töötab üks kord ja siis tundub, et seade ei ühenda arvutiga kunagi enne, kui järgite allpool käsitletud juhendis toodud juhiseid "Lähtesta alglaadurile", mis võib olla pisut keeruline.

Sparkfunil on suurepärane Pro Micro ühendamise juhend. Ühendusjuhendis on üksikasjalik ülevaade Pro Micro plaadist ja seejärel jaotis "Installimine: Windows" ja jaotis "Installimine: Mac ja Linux". Järgige nende paigaldusjuhiste vastavas versioonis toodud juhiseid, et oma Arduino IDE seadistada Pro Micro toetamiseks. Tavaliselt alustame tööd Arduino plaadiga, laadides ja/või muutes tavalist Blinki visandit. Pro Micro ei sisalda aga tavalist LED -i tihvtil 13. Õnneks saame RX/TX LED -e juhtida. Sparkfun on esitanud kena väikese visandi, et näidata, kuidas. See on Hookup Guide'i jaotises pealkirjaga "Näide 1: Blinkies!" Veenduge, et saate selle Blinkies kompileerida ja programmeerida! näide Pro Micro -le enne edasiliikumist.

Kui kõik tundub, et Pro Micro programmeerimine töötab, on aeg päise tihvtid hoolikalt moodulile joota. Pärast jootmist proovige plaati uuesti hoolikalt läbi.

Teadmiseks: Tänu oma integreeritud USB -transiiverile saab Pro Micro abil hõlpsasti jäljendada inimese liideseseadet (HID), näiteks klaviatuuri või hiirt, ja mängida klahvivajutusega.

Samm: QR -koodid täisvärvilisel LCD -ekraanil

QR -koodid täisvärvilisel LCD -ekraanil
QR -koodid täisvärvilisel LCD -ekraanil

LCD -ekraanil on 128 x 160 täisvärvipikslit ja selle diagonaal on 1,8 tolli. ST7735S draiverikiipi (andmelehte) saab liidestada peaaegu igast mikrokontrollerist, kasutades SPI (Serial Peripheral Interface) siinit. Liides on ette nähtud 3,3 V signaalimiseks ja toiteallikaks.

LCD -mooduli saab ühendada otse 3,3 V Pro Micro -ga, kasutades 7 FF -hüppajuhet:

LCD ---- Pro Micro

GND ---- GND VCC ---- VCC SCL ---- 15 SDA ---- 16 RES ---- 9 DC ----- 8 CS ----- 10 BL ----- Ühendust pole

See konkreetne tihvtide määramine võimaldab raamatukogu näidetel vaikimisi töötada.

Raamatukogu nimega "Adafruit ST7735 ja ST7789" leiate Arduino IDE menüüst Tools> Manage Libraries. Paigaldamise ajal soovitab raamatukoguhaldur mõningaid selle teekiga kaasnevaid sõltuvaid teeke. Luba tal ka need installida.

Kui see raamatukogu on installitud, avage Failid> Näited> Adafruit ST7735 ja ST7789 raamatukogu> graphicstest

Koostage ja laadige üles graafikatest. See loob LCD -ekraanile graafilise demo, kuid ekraani servas on mõned "mürarikaste pikslite" read ja veerud.

Neid "mürarikkaid piksleid" saab fikseerida, muutes seadistusfunktsiooni (tühine) ülaosas kasutatavat TFT init -funktsiooni.

Kommenteerige koodirida:

tft.initR (INITR_BLACKTAB);

Ja tühistage rida paar rida allapoole:

tft.initR (INITR_GREENTAB);

Programmeerige demo ümber ja kõik peaks kena välja nägema.

Nüüd saame kasutada LCD -ekraani QR -koodide kuvamiseks

Tagasi Arduino IDE menüüsse Tööriistad> Raamatukogude haldamine.

Leidke ja installige raamatukogu QRCode.

Laadige siia alla QR_TFT.ino visand.

Kompileerige ja programmeerige QR_TFT ProMicrosse ja vaadake, kas saate oma telefoni kaamerarakenduse abil genereeritud QR -koodi LCD -ekraanilt lugeda.

Mõned projektid kasutavad inspiratsiooni saamiseks QR -koodi genereerimist

Juurdepääsu kontroll

QR -kell

Samm: painduv lamekaabel

Paindlik korterkaabel
Paindlik korterkaabel

Paindlik lamekaabel (FFC) on igasugune lame ja painduv elektriline kaabel, millel on lamedad tahked juhtmed. FFC on kaabel, mis on moodustatud paindlikust trükitud vooluringist (FPC) või sarnane sellega. Mõisteid FPC ja FFC kasutatakse mõnikord vaheldumisi. Need terminid viitavad üldiselt äärmiselt õhukesele lamekaablile, mida sageli leidub suure tihedusega elektroonilistes rakendustes, nagu sülearvutid ja mobiiltelefonid. Need on lintkaabli miniatuursed vormid, mis tavaliselt koosnevad lamedast ja painduvast plastkile alusest, mille ühele pinnale on ühendatud mitu lamedat metalljuhti.

FFC -sid on saadaval mitmesuguste tihvtide vahel, mille kaks tavalist võimalust on 1,0 mm ja 0,5 mm. Kaasasoleval FPC purunemisplaadil on jäljed mõlema platsi jaoks, üks PCB mõlemal küljel. Sõltuvalt soovitud sammust kasutatakse ainult ühte trükkplaadi külge, sel juhul 0,5 mm. Kasutage kindlasti päise tihvtide nummerdust, mis on trükitud samale 0,5 mm PCB küljele. 1,0 mm küljel olev tihvtide nummerdus ei sobi ja seda kasutatakse erineva rakenduse jaoks.

Nii puhke- kui ka vöötkoodiskanneri FFC -pistikud on ZIF -pistikud. See tähendab, et ZIF -pistikutel on mehaaniline liugur, mis on enne FFC sisestamist hingedega avatud ja seejärel hingedega suletud, et pingutada pistik FFC -le ilma kaabli enda peale panemata ja sisestamata. Nende ZIF -pistikute puhul tuleb tähele panna kahte olulist asja:

1. Mõlemad on "alumine kontakt", mis tähendab, et FFC metallkontaktid peavad sisestamisel olema allapoole (PCB poole).

2. Katkestusel olev hingedega liugur asub pistiku esiküljel. See tähendab, et FFC läheb hingedega liuguri alla/läbi. Seevastu vöötkoodi skanneri hingedega liugur asub pistiku tagaküljel. See tähendab, et FFC siseneb ZIF -pistikusse vastasküljelt, mitte hingedega liuguri kaudu.

Pidage meeles, et teist tüüpi FFC/FPC ZIF -pistikutel on külgmised liugurid, mitte siin olevad liigendliugurid. Üles -alla rippumise asemel libisevad külgmised liugurid pistiku tasapinna sees sisse ja välja. Enne uut tüüpi ZIF -pistiku esmakordset kasutamist vaadake alati hoolikalt. Need on üsna väikesed ja võivad kergesti kahjustuda, kui neid sunnitakse väljapoole ettenähtud ulatust või liikumistasandit.

6. samm: vöötkoodiskanner

Vöötkoodi skanner
Vöötkoodi skanner

Kui vöötkoodiskanner ja FPC katkestus on painduva lamekaabli (FFC) abil ühendatud, saab katkestusplaadi ühendamiseks Arduino Pro Microga kasutada viit naissoost hüppajatraati:

FPC ---- Pro Micro

3 ------ GND 2 ------ VCC 12 ----- 7 4 ------ 8 5 ------ 9

Pärast ühendamist programmeerige eskiis barscandemo.ino Pro Micro sisse, avage jadamonitor ja skannige kõik asjad! See võib olla üllatav, kui paljudel objektidel meie kodude ja kontorite ümber on vöötkoodid. Võite isegi tunda kedagi, kellel on vöötkoodi tätoveering.

Lisatud vöötkoodiskanneri juhendis on koodid, mida saab skannida, et konfigureerida skannerisse sisseehitatud protsessorit.

7. samm: hävitage planeet

Häkkida planeeti
Häkkida planeeti

Loodame, et naudite selle kuu HackerBoxi seiklust elektroonika ja arvutitehnoloogia vallas. Võtke ühendust ja jagage oma edu allolevates kommentaarides või muus sotsiaalmeedias. Samuti pidage meeles, et kui teil on küsimusi või vajate abi, võite igal ajal saata e -posti aadressile [email protected].

Mis järgmiseks? Liituge revolutsiooniga. Elage HackLife'i. Saate iga kuu laheda häkkimisvarustuse kasti otse teie postkasti. Sirvige veebisaiti HackerBoxes.com ja registreeruge oma igakuiseks HackerBoxi tellimuseks.

Soovitan: