Jõudeinimese tühimõtted krüptograafiast ja andmekaitsest

Jõudeinimese tühimõtted krüptograafiast ja andmekaitsest

Miks krüptograafia? Mul endal on sellest üsna pealiskaudsed teadmised. Jah, ma lugesin klassikalist teost Bruce Schneier, aga väga ammu; Jah, ma saan aru sümmeetrilise ja asümmeetrilise krüptimise erinevusest, saan aru, mis on elliptilised kõverad, aga see selleks. Veelgi enam, olemasolevad krüptograafilised raamatukogud, mille armas komme lisada iga funktsiooni nimesse algoritmi täisnimi ja hunnik initsialiseerijaid, tekitavad mulle programmeerijana kohutavat tuju.Jõudeinimese tühimõtted krüptograafiast ja andmekaitsest
Miks? Ilmselt seetõttu, et praegust andmekaitset, konfidentsiaalset infot jms puudutavate publikatsioonide lainet lugedes tekib tunne, et kaevame kuskil vales kohas või täpsemalt püüame tehniliste abiga sisuliselt sotsiaalseid probleeme lahendada. tähendab (krüptograafia) . Räägime sellest, ma ei luba epohhiloovaid avastusi, aga ka konkreetseid ettepanekuid, tühised mõtted on just sellised: jõude.

Natuke ajalugu, ainult natuke

1976. aastal võtsid USA vastu sümmeetriliste krüpteerimisalgoritmide föderaalse standardi – DES. See oli esimene avalik ja standardiseeritud krüptograafiline algoritm, mis loodi vastuseks kasvavatele ettevõtete andmekaitsenõuetele.

Habemega uudishimu

Algoritm avaldati kogemata. See oli optimeeritud riistvara juurutamiseks ja seda peeti tarkvara juurutamiseks liiga keeruliseks ja ebatõhusaks. Moore'i seadus pani aga kõik kiiresti oma kohale.

Näib - loo lõpp, võtke see, krüptige, dekrüpteerige, vajadusel suurendage võtme pikkust. Võib-olla teate kindlalt, et ameeriklased jätsid sellesse järjehoidjaid, siis on teie jaoks vene analoog - GOST 28147-89, mida usute tõenäoliselt veelgi vähem. Seejärel kasutage mõlemat, üksteise peal. Kui usute, et FBI ja FSB ühinesid teie nimel ja vahetasid oma järjehoidjaid, siis on mul teile hea uudis – te pole paranoiline, teil on banaalne suursugususe pettekujutelm.
Kuidas sümmeetriline krüptimine töötab? Mõlemad osalejad teavad sama võtit, mida tuntakse ka paroolina, ja sellega krüpteeritut saab sellega ka lahti krüpteerida. Skeem töötab spioonide jaoks suurepäraselt, kuid on tänapäevase Interneti jaoks täiesti sobimatu, kuna see võti tuleb eelnevalt edastada igale vestluskaaslasele. Kui mõnda aega kaitsesid suhteliselt vähesed ettevõtted oma andmeid varem tuntud partneriga suheldes, siis kullerite ja turvalise posti abil lahendati probleem, kuid siis levis internet ja tuli pildile.

Asümmeetriline krüptograafia

kus on kaks võtit: avalik, mida ei hoita saladuses ja edastatakse kellelegi; Ja privaatne, mida teab ainult selle omanik. Seda, mis on krüpteeritud avaliku võtmega, saab dekrüpteerida ainult privaatse võtmega ja vastupidi. Seega saab igaüks teada saada adressaadi avaliku võtme ja saata talle sõnumi, seda loeb ainult saaja. Näib, et probleem on lahendatud?
Kuid internet niimoodi ei tööta, tekib probleem täie jõuga autentimine ja eriti, esialgne autentimine, ja mõnes mõttes vastupidine probleem anonüümsus. Lühidalt, kuidas ma saan olla kindel, et inimene, kellega ma räägin, on tõesti see, kellega ma kavatsesin rääkida? ja minu kasutatav avalik võti kuulub tegelikult inimesele, kellega kavatsesin rääkida? Eriti kui ma temaga suhtlen esimest korda? Ja kuidas sisendada oma partnerisse usaldust, säilitades samal ajal anonüümsuse? Juba siin on tähelepanelikult vaadates märgata sisemist vastuolu.
Vaatame üldiselt, millised osalejatevahelised suhtlusmustrid eksisteerivad ja mida praktikas kasutatakse:

  • server - server (või äri - äri, selles kontekstis on need samad asjad): see on lihtsaim klassikaline skeem, mille jaoks piisab sümmeetrilisest krüptograafiast, osalejad teavad üksteise kohta kõike, sealhulgas võrguväliseid kontakte. Kuid pange tähele, et me ei räägi siin isegi mitte mingist anonüümsusest ning osalejate arv on rangelt piiratud kahega. See tähendab, et see on peaaegu ideaalne skeem äärmiselt piiratud arvu side jaoks ja üldiselt on sellest ilmselt vähe kasu.
  • server - anonüümne (või äriklient): siin on teatav asümmeetria, mida asümmeetriline krüptograafia edukalt teenindab. Võtmepunkt on siin kliendi autentimise puudumine, serveril pole vahet, kellega ta täpselt andmeid vahetab; kui äkitselt vaja, teeb server sekundaarne autentimine kasutades eelnevalt kokkulepitud parooli ja siis taandub kõik eelmisele juhtumile. Teisalt klient ülimalt oluline serveri autentimine, tahab ta olla kindel, et tema andmed jõuavad täpselt selle inimeseni, kellele ta need saatis, see pool praktikas põhineb sertifikaadisüsteemil. Üldiselt on see skeem https:// protokolliga üsna mugavalt ja läbipaistvalt kaetud, kuid krüptograafia ja sotsioloogia ristumiskohas kerkivad esile paar huvitavat punkti.
    1. usaldus serveri vastu: isegi kui ma mingi info täiesti ohutul viisil põhja saatsin, on tehniliselt kõrvalseisjatel seal juurdepääs. See probleem on krüpteerimisest täielikult väljas, kuid palun teil see punkt meeles pidada, see kerkib esile hiljem.
    2. usaldus serveri sertifikaadi vastu: sertifikaatide hierarhia põhineb sellel, et on olemas teatud juur tunnistuse väärt absoluutne usaldada. Tehniliselt võib piisavalt mõjukas ründaja [vaadake sõna ründaja tehniliseks terminiks, mitte laimuks või olemasoleva valitsuse solvamiseks] asendada mis tahes madalama taseme sertifikaati, kuid eeldatakse, et sertifitseerimissüsteemi vajavad kõik võrdselt, s.t. see sertifitseerija tõrjutakse kohe välja ja kõik tema sertifikaadid tühistatakse. Nii see on, aga pange siiski tähele, et süsteem ei põhine tehnilistel vahenditel, vaid mingisugusel ühiskondlikul lepingul. Muide, umbes kuumKas keegi on RuNeti oodatava viimsepäeva nukkumise raames analüüsinud võimalikku vene juurtunnistuse nukkumist ja tagajärgi? Kui keegi on sellel teemal lugenud/kirjutanud, siis saatke mulle lingid, lisan, arvan, et teema on huvitav
    3. kaudne anonüümsuse eemaldamine serveris: ka valus teema, isegi kui serveril puudub ametlik registreerimine/autentimine, on kliendi kohta info kogumiseks ja lõpuks tema tuvastamiseks palju võimalusi. Mulle tundub, et probleemi juur on olemasolevas http:// protokollis ja teistes taolistes, mis ootuspäraselt ei osanud sellist pahameelt ette näha; ja et oleks täiesti võimalik luua paralleelprotokoll ilma nende punktsioonideta. See on aga vastuolus kõigi olemasolevate monetiseerimistavadega ja on seetõttu ebatõenäoline. Ikka veel huvitab, kas keegi on proovinud?
  • anonüümne - anonüümne: kaks inimest kohtuvad võrgus (valik - just kohtusime), (valik - mitte kaks, vaid kaks tuhat) ja tahavad oma asjadest vestelda, kuid nii, et Suur Vend ei kuulnud (variant: ema ei saanud teada, igaühel on oma prioriteedid). Võite kuulda mu hääles irooniat, kuid see on see, mis see on. Rakendame probleemile Schneieri postulaati (iga algoritmi saab lahti murda, kui investeerida piisavalt ressurssest raha ja aeg). Sellest vaatenurgast ei kujuta sotsiaalsete meetoditega sellisesse rühma tungimine mingeid raskusi, rääkimata rahast, see tähendab algoritmi krüptograafilisest tugevusest. null kõige keerukamate krüpteerimismeetoditega.
    Sel juhul on meil aga teine ​​bastion - anonüümsus, ja me paneme kõik oma lootused tema peale, isegi kui kõik teavad meid, aga keegi ei leia meid. Kas te aga arvate tõsiselt, et teil on kõige kaasaegsemate tehniliste kaitsemeetoditega võimalus? Tuletan meelde, et ma räägin nüüd ainult anonüümseks muutmisest, tundub, et oleme andmekaitse juba veenvalt kaotanud. Selguse huvides lepime kokku, et kui teie nimi teada saab või Kodu aadress või IP-aadress, osalemine ebaõnnestus täielikult.
    Rääkides ip-st, siis siin tulebki mängu eelnev usalda serverit, teab ta kahtlemata teie IP-d. Ja siin mängib kõik teie vastu – alates lihtsast inimlikust uudishimust ja edevusest kuni ettevõtte poliitika ja sama raha teenimiseni. Pidage lihtsalt meeles, et VPS ja VPN on samuti serverid, krüptograafiateoreetikute jaoks on need lühendid kuidagi ebaolulised; Jah, ja serveri jurisdiktsioon ei mängi suure vajaduse korral rolli. See hõlmab ka otsast lõpuni krüptimist – see kõlab kenasti ja soliidselt, kuid server peab siiski oma sõna võtma.
    Milline on serveri üldine roll sellises messengeris? Esiteks on postiljonil triviaalne, kui adressaati kodus pole, hiljem uuesti tulla. Kuid ka, ja see on palju olulisem, see on kohtumispunkt, te ei saa kirja otse adressaadile saata, vaid saadate selle edasiseks edastamiseks serverisse. Ja mis kõige tähtsam, server juhib vajalik autentimine, kinnitades kõigile, et olete sina, ja teile – et teie vestluskaaslane on tõesti see, keda vajate. Ja ta teeb seda teie telefoni kasutades.
    Kas sa ei arva, et su sõnumitooja teab sinust liiga palju? Ei, ei, muidugi me usume teda (ja muide, samal ajal ka oma telefoni, hmm), kuid krüptograafid kinnitavad meile, et see on asjata, et me ei saa üldse kedagi usaldada.
    Pole veendunud? Kuid on ka seesama sotsiaalne manipuleerimine, kui grupis on sada vestluskaaslast, siis tuleb lihtsalt eeldada, et 50% neist on vaenlased, 49% on kas asjatud, rumalad või lihtsalt hoolimatud. Ja ülejäänud üks protsent, olenemata sellest, kui tugev sa oled infoturbe meetodites, ei suuda sa suure tõenäosusega vestluses heale psühholoogile vastu panna.
    Ainus kaitsestrateegia näib olevat miljonite sarnaste rühmituste sekka eksimine, kuid see ei puuduta enam meid, jällegi mõnda spioonterroristi, kellel pole vajadust veebikuulsuse või raha teenimise järele.

Noh, mulle tundub, et ma kuidagi põhjendasin (ei, ma ei tõestanud, ma lihtsalt põhjendasin) oma karme mõtteid andmekaitsest kaasaegses ühiskonnamudelis. Järeldused on lihtsad, kuid kurvad – me ei tohiks loota andmete krüpteerimisest suuremale abile, kui meil juba on, krüptograafia on teinud kõik, mis võimalik, ja hästi hakkama saanud, kuid meie Interneti-mudel läheb täielikult vastuollu meie privaatsussooviga ja nullib kõik meie jõupingutused. . Tegelikult pole ma kunagi pessimist ja tahaksin praegu öelda midagi eredat, aga ma lihtsalt ei tea, mida.
Proovige vaadata järgmist jaotist, kuid ma hoiatan teid - seal on täiesti roosilisi ebateaduslikke fantaasiaid, kuid need võivad kedagi rahustada ja vähemalt lihtsalt lõbustada kedagi.

Kas on üldse võimalik midagi teha?

No näiteks mõelge sellele teemale, eelistatavalt vabastades oma teadvuse ja visates kõrvale eelarvamused. Näiteks ajutiselt täielikult ohverdagem anonüümsus, ükskõik kui kohutavalt see ka ei kõlaks. Andku igaühele sünnist saati ainulaadne isiklik avalik võti ja loomulikult vastav privaatvõti. Pole vaja minu peale karjuda ja jalgu trampida, ideaalne maailm see on äärmiselt mugav – siin on ühes pudelis pass, maksukohustuslasena registreerimise number ja isegi telefoninumber. Pealegi, kui lisate sellele individuaalse sertifikaadi, saate universaalse autentija/sisselogimise; ja ka taskunotar, kellel on võimalus tõestada mis tahes dokumente. Süsteemi saab teha mitmetasandiliseks – avalikult on kättesaadavad ainult avalik võti ja sertifikaat, sõpradele (mille võtmete nimekiri on lisatud siin) saad oma telefoni kättesaadavaks teha ja mida nad veel sõpru usaldavad, seal võib olla veelgi sügavam tasemel, kuid see tähendab juba tarbetut usaldust serveri vastu.
Selle skeemi abil saavutatakse edastatava info privaatsus automaatselt (kuigi teisalt, miks, ideaalmaailmas?), Alice kirjutab midagi Bobile, aga keegi peale Bobi enda ei loe seda kunagi. Kõik sõnumitoojad saavad automaatselt end-to-end krüptimise, nende roll on taandatud postkastidele ja sisu osas ei saa põhimõtteliselt kurta. Ja serverid ise muutuvad omavahel asendatavateks, saate saata ühe või teise kaudu või isegi serverite ahela kaudu, näiteks e-posti teel. Saate selle saata ka otse adressaadile, kui tema IP on teada, ilma vahendajatega üldse ühendust võtmata. Kas pole suurepärane? Kahju, et me ei pea elama sellel imelisel ajal - ei minu ega teie pärast. Nn-jah, ma räägin jälle kurbadest asjadest.
Järgmiseks, kus seda kõike hoida? Noh, minu peast, looge avatud hierarhiline süsteem, umbes nagu praegune DNS, ainult võimsam ja ulatuslikum. Et mitte koormata juur-DNS-i administraatoreid täienduste ja muudatustega, võiks teha tasuta registreerimise, ainus vajalik kontroll on unikaalsus. Meeldib >> " Tere, meid on viis inimest, perekond Ivanov. Siin on meie nimed/hüüdnimed, siin on avalikud võtmed. Kui keegi küsib, palun saatke meile. Ja siin on nimekiri sajast viiesajast meie kandi vanaemast koos võtmetega, kui küsitakse, saatke meile ka.«
Sellise koduserveri paigaldamine ja seadistamine tuleb teha lihtsalt ülimalt lihtsaks ja mugavaks, et igaüks saaks sellest soovi korral aru, jällegi ei laadi keegi enam ühtegi ametlikku riigiserverit.
Stopp!, aga mis riigil sellega pistmist siis on?

Kuid nüüd saate hoolikalt anonüümsuse taastada. Kui keegi saab endale isikliku võtme genereerida ja seda individuaalse sertifikaadiga kinnitada ja endale madalama taseme CA serveri paigaldada või küsida naabrilt või mõnele avalikule serverile, milleks siis kogu seda ametlikkust vaja on? Ja siis pole vaja kiinduda tõelise tegelase külge, täielik privaatsus, turvalisus ja anonüümsus. Piisab sellest, et hierarhia alguses on keegi usaldusväärne, noh, me usume TM-i ehk Let's Encrypt, ja tuntud avalikud DNS-id pole veel kedagi steppi saatnud. Tundub, et ka bürokraatidelt ei tohiks kaebusi tulla, see tähendab, et loomulikult kaebusi tuleb, aga milleks?
Võib-olla kunagi luuakse selline süsteem või midagi sarnast. Ja loomulikult pole meil kellelegi peale meie enda loota, ükski mulle teadaolevatest riikidest ei hakka sellist süsteemi üles ehitama. Õnneks näitavad juba olemasolev Telegram, i2p, Tor ja ilmselt veel keegi, kelle ma unustasin, et miski pole põhimõtteliselt võimatu. See on meie võrk ja me peame selle varustama, kui me ei ole asjade hetkeseisuga rahul.
Brrr, lõpetasin kogemata haletsusväärse noodiga. Tegelikult mulle see ei meeldi, ma millegipärast eelistan sarkasmi.

PS: see kõik on muidugi roosa tatt ja tütarlapselikud unistused
PPS: aga kui äkki keegi otsustab seda proovida, reserveerige mulle hüüdnimi degs palun, ma olen harjunud
PPPS: ja rakendamine tundub muide üsna lihtne

Allikas: www.habr.com

Lisa kommentaar