Kaj je kriptografija?
Kazalo vsebine
⚡️ Kaj je kriptografija in kako deluje?
V prisotnosti zlonamernih tretjih oseb, znanih kot nasprotniki, kriptografija omogoča varno komunikacijo. Pri šifriranju se vhodni podatki (tj. odprto besedilo) z uporabo algoritma in ključa pretvorijo v šifrirane izhodne podatke (tj. šifrirano besedilo).
⚡️ Ali je veriženje blokov kriptografija?
Tehnologija veriženja blokov temelji na dveh razredih kriptografskih algoritmov: algoritmih asimetričnega ključa in hash funkcijah. Vsak udeleženec pridobi eno samo predstavitev verige blokov z uporabo funkcij hash, s katerimi se izvaja možnost, da vsaka oseba vidi eno določeno predstavitev verige blokov. Algoritem SHA-256 se v verigah blokov pogosto uporablja kot funkcija hash.
⚡️ Kdo je ustvaril Bitcoin?
Satoshi Nakamoto.
Kdo je Satoshi Nakamoto? Nihče ne ve, kdo je Satoshi Nakamoto, oseba, ki je zaslužna za izum prve in najbolj priljubljene kriptovalute na svetu, Bitcoina. Nakamoto je bil prvi rudar v verigi bitcoin in je izdal tehnični dokument za digitalno valuto.
⚡️ Ali Elon Musk vlaga v bitcoin?
Elon Musk je razkril, da je vlagatelj v kriptovalute, saj je investiral v bitcoin, eterij in dodgcoin.
Kriptografija je študija in uporaba varnega pošiljanja šifriranih sporočil med dvema ali več osebami. Kriptografija omogoča, da so transakcije z digitalnimi valutami psevdonimne, varne in “nezaupljive”, brez potrebe po banki ali drugem posredniku.
Ime “kovanec” izhaja iz grške besede, ki pomeni “skrivnost”. To je zelo širok izraz, ki zajema številne oblike digitalnega denarja. Kriptografija kot študij in praksa pošiljanja varnih, šifriranih sporočil ali podatkov med dvema ali več strankami je tisto, kar kriptovalute vsebujejo. Pošiljatelj šifrira sporočilo in skrije njegovo vsebino pred tretjimi osebami. Prejemnik sporočilo dešifrira in si lahko ogleda njegovo vsebino.
Transakcije s kriptovalutami so anonimne, varne in “nezaupljive” z uporabo kriptovalut. Sredi transakcije se znajde vlada ali katera koli druga tretja oseba. Pri digitalnem denarju pa kriptografija ni pomembna le zato, ker naši računalniki in omrežja nenehno šifrirajo in dešifrirajo podatke, od vsega, kar počnete na Googlu, do vsakega poslanega elektronskega sporočila.
Zakaj je kriptografija tako pomembna?
Kriptovalute temeljijo na zapleteni matematiki. Satoshi Nakamoto, psevdonim za neznano osebo ali skupino ljudi, je leta 2009 izumil Bitcoin kot uradni dokument, objavljen na spletni strani za kriptografijo.
Problem dvojne porabe je bil najtežje vprašanje, ki ga je obravnaval Satoshi Nakamoto. Ker je bitcoin le skupek kode, kaj nekomu preprečuje, da bi ustvaril in porabil več kopij svojega denarja? Nakamotov pristop je temeljil na šifriranju z javnim in zasebnim ključem, ki je dobro znana metoda šifriranja. Kdo je izumil šifriranje?
Uporaba šifriranja z javnim in zasebnim ključem, kot jo poznamo pri Bitcoinu (ter Ethereumu in drugih kriptovalutah), omogoča neznancem varno izvajanje transakcij brez potrebe po “zaupanja vrednem posredniku”, kot sta banka ali PayPal.
Kakšna je razlika med šifriranjem z javnim in zasebnim ključem?
Vsi uporabniki imajo zasebni ključ (v bistvu zelo močno geslo), iz katerega omrežje Bitcoin generira povezan javni ključ. Svoj javni ključ lahko prosto delite s komer koli; pravzaprav je to vse, kar kdo potrebuje, da vam lahko pošlje bitcoine. Za dostop do teh sredstev pa potrebujete tajni ključ.
Del privlačnosti Bitcoina je, da gre za omrežje med vrstniki, ki za preverjanje pristnosti transakcij uporablja kriptografske tehnike.
S postopkom, znanim kot “hashanje”, se vaš javni ključ ustvari iz zasebnega ključa, tako da se izvede operacija na nizu podatkov. Ta postopek je izjemno težko obrniti, zato nihče ne more uganiti vašega zasebnega ključa iz vašega javnega ključa.
Bitcoine lahko obdržite, dokler imate zasebni ključ, saj sta javni in zasebni ključ povezana.
Odsotnost posrednika ima več posledic. Eden od njih je, da so transakcije z bitcoini nepovratne (ker ni podjetja za kreditne kartice, na katerega bi se lahko obrnili, če naredite napako). Vendar to ni pomanjkljivost, temveč prednost: trajne transakcije so bistvene za reševanje problema dvojne porabe.
Preostali del rešitve je bitcoin-blockchain, ki je obsežna decentralizirana glavna knjiga (pomislite na bančne bilance), ki dokumentira vsako transakcijo in jo vsi stroji v omrežju nenehno preverjajo in posodabljajo.
Tehnike kriptografije
Kriptografija je veja matematike, ki se ukvarja s preučevanjem in uporabo kod, pogosto imenovanih šifre. Vključuje metode, kot so mikrotočke, združevanje besed s slikami in drugi načini za zakrivanje podatkov pri shranjevanju ali prenosu.
V današnjem svetu, v katerem prevladujejo računalniki, pa se kriptografija najpogosteje ukvarja s šifriranjem navadnega besedila v šifrirano besedilo (postopek, ki se imenuje šifriranje) in nato nazaj (t. i. dešifriranje). Kriptografi so tisti, ki se ukvarjajo s tem področjem.
V nadaljevanju so navedeni štirje nameni sodobne kriptografije:
- Zasebnost. Znanja ne morejo razumeti tisti, ki mu ni bilo namenjeno.
- Integriteta. Informacij ni mogoče spremeniti med prenosom ali shranjevanjem, ne da bi jih odkrili.
- nepreklicnost. Avtor/pošiljatelj informacije ne more pozneje zanikati svoje namere, da jo je ustvaril ali posredoval.
- Preverjanje pristnosti. Pošiljatelj in prejemnik lahko preverita identiteto drug drugega ter izvor/prejemnika informacij.
Kriptosistemi so postopki in protokoli, ki izpolnjujejo vsaj nekatere od zgoraj navedenih zahtev. Kriptosistemi se pogosto obravnavajo kot izključno matematični postopki in računalniški programi, vendar vključujejo tudi regulacijo človekovega vedenja, kot so določanje zahtevnih gesel, izklop neuporabnih sistemov in zavračanje razkrivanja skrivnih metod neznancem.
Lastniški ali patentirani algoritmi
Kriptosistemi uporabljajo različne metode, znane kot kriptografski algoritmi ali šifre, za šifriranje in dešifriranje podatkov, da bi zavarovali komunikacije v računalniškem omrežju, napravah in aplikacijah.
En algoritem šifrira, drugi avtentificira sporočila, tretji pa prenaša ključe v nizu šifer. Ta postopek, ki je del protokolov in je zapisan v računalniški programski opremi, ki deluje v operacijskih sistemih (OS) in omrežnih računalniških sistemih, vključuje naslednje korake:
- Za šifriranje/dešifriranje podatkov je treba ustvariti javni in zasebni ključ.
- Digitalno podpisovanje in preverjanje pristnosti sporočil
- izmenjava ključev.
Kriptografija ima tri glavne vrste
Blokovna šifra, znana tudi kot algoritem za šifriranje s fiksno dolžino, se uporablja za šifriranje podatkov (šifriranje) in dešifriranje z uporabo tajnega ključa, ki ga določita ustvarjalec/pošiljatelj za šifriranje podatkov (šifriranje) in prejemnik za dešifriranje. Napredni šifrirni standard ( aes encryption Standard ) je primer kriptografije s simetričnim ključem.
Napredni šifrirni standard (aes encryption Standard) je zvezni standard za obdelavo informacij (FIPS 197), ki ga je odobril NIST, za varovanje občutljivih podatkov. Standard je odobrila vlada Združenih držav Amerike in se pogosto uporablja v komercialnem sektorju.
Ameriška vlada je junija 2003 odobrila uporabo AES za občutljive podatke. To je brezplačna specifikacija, ki se izvaja v programski in strojni opremi po vsem svetu. šifriranje AES je standard za šifriranje podatkov ( DES ) in zamenjava za DES3. Za preprečevanje napadov z grobo silo in drugih varnostnih težav uporablja daljše ključe – 128, 192 ali 256 bitov.
Na tej sliki sta prikazana simetrično in asimetrično šifriranje.
Simetrična kriptografija uporablja en sam ključ, asimetrična pa za šifriranje in dešifriranje podatkov uporablja par ključev.
Za algoritme šifriranja z javnim ključem je potreben par ključev: javni ključ, ki se uporablja za šifriranje sporočil, in zasebni ključ, ki je znan samo pošiljatelju (razen če ga deli ali se za to odloči) in se lahko uporablja za dešifriranje.
V nadaljevanju je navedenih nekaj primerov kriptografije z javnim ključem:
- RSA , ki se pogosto uporablja v internetu.
- algoritem digitalnega podpisa z eliptično krivuljo (ECDSA), ki ga uporabljajo bitcoini
- Algoritem digitalnega podpisa (DSA), ki ga je NIST priznal kot zvezni standard za obdelavo informacij za digitalne podpise v standardu FIPS 186-4, je eden od treh algoritmov, ki jih podpira Bitcoin.
Izmenjava ključev Diffie-Hellman
Za preslikavo podatkov na določeno velikost podatkov z determinističnim izhodom iz vhodne vrednosti se za ohranjanje celovitosti podatkov v kriptografiji uporabljajo funkcije šifriranja, ki podatke preslikajo na določeno velikost podatkov z determinističnim izhodom iz vhodne vrednosti. Shema SHA-1 (Secure Hash Algorithm 1) je ena od najbolj priljubljenih vrst kriptografskih funkcij hash.
Vprašanja kriptografije
Varnost komunikacij s kriptografijo ogrožajo tudi napadalci, ki lahko zaobidejo šifriranje, vdrejo v računalnike, zadolžene za šifriranje in dešifriranje podatkov, ter uporabljajo slabe izvedbe, kot je uporaba privzetih ključev. Po drugi strani pa kriptografija napadalcem otežuje dostop do šifriranih sporočil in podatkov.
NIST pripravlja nove standarde za kriptografijo z javnim ključem, da bi se pripravil na prihod kvantnega računalništva, ki bi ogrozilo sedanje kriptografske metode šifriranja. Leta 2016 je NIST objavil poziv matematični in znanstveni skupnosti za pripravo novih standardov kriptografije z javnim ključem zaradi vse večje zaskrbljenosti glede računske moči kvantnega računalništva, ki bi lahko ogrozila sedanje metode šifriranja.
Kvantno računalništvo za razliko od običajnih računalnikov uporablja kvantne bite (qubite), ki lahko predstavljajo tako 0 kot 1, kar omogoča hkratno izvajanje dveh nalog. Po podatkih NIST sicer v naslednjem desetletju ne bo mogoče zgraditi obsežnega kvantnega računalnika, vendar je zaradi trenutne infrastrukture potrebna standardizacija dobro znanih in razumljivih algoritmov za kriptografijo z javnim ključem, ki so odporni na napade s kvantnim računalnikom.