Në fushën e kriptografisë, është e rëndësishme që gjërat që supozohet të jenë sekrete të mbeten sekrete. Një çështje që haset është llogaritja paraprake. Kjo është ajo ku një sulmues mund të shpenzojë fuqi të konsiderueshme përpunuese për të përcaktuar se çfarë rezultatesh prodhon paraprakisht një kombinim i inputeve. Me fuqi dhe kohë të mjaftueshme përpunimi, mund të provoni se çfarë rezultati merrni me një përzgjedhje të hyrjeve të specifikuara dhe një mori çelësash të ndryshëm të enkriptimit.
Më pas mund të kontrolloni një pjesë të madhe të transmetimeve të koduara për të parë nëse ndonjë prej daljeve tuaja të njohura është shfaqur ndonjëherë dhe të dini mesazhin dhe çelësin e përdorur. Fatkeqësisht, nuk ka asnjë mënyrë reale për të parandaluar plotësisht këtë skenar. Megjithatë, është e mundur që ta bëni atë shumë më të vështirë.
Tashmë është e vështirë të hamendësosh përmbajtjen e saktë të një mesazhi dhe çelësin e enkriptimit të përdorur për ta enkriptuar atë. Edhe pse ndryshimet me një karakter në mesazh do ta bënin të padobishme të gjithë përpjekjen, është me të vërtetë e realizueshme vetëm për mesazhe të shkurtra dhe të thjeshta. Përndryshe, ka shumë variacione të mundshme të frazave dhe formulimeve, madje edhe rrezikun e gabimeve shtypëse dhe zhargonit. Por edhe ky rrezik i aftësisë për të hamendësuar gjërat është shumë i lartë. Për t'i bërë gjërat edhe më të vështira, shumica e skemave të kriptografisë kërkojnë një vlerë të tretë të quajtur "vektor inicializimi", ose shkurt IV.
IV
IV është një vlerë tjetër e futur në algoritmin e enkriptimit dhe deshifrimit. Është një variabël i tretë për ekuacionin, i cili nga vetë prania e tij, rrit masivisht vështirësinë e supozimit të saktë të inputeve të nevojshme për të gjeneruar një dalje specifike. Mjaft qesharake, IV nuk ka nevojë as të jetë sekret. Ajo që duhet të jetë është unike.
E gjithë çështja me shmangien e sulmeve të parallogaritjes është që të bëhet edhe më e pamundur të merret me mend përmbajtja e mesazheve. Për këtë qëllim, nuk mund të zgjidhni vetëm një IV dhe t'i përmbaheni; ju duhet ta ndryshoni atë. Për më tepër, përdorimi i një IV të ndryshëm çdo herë e bën më të vështirë kriptanalizën e teksteve të shifruara që rezultojnë. Për të pasur një vlerë unike të besueshme, ju dëshironi të përdorni një "nonce", veçanërisht një nonce kriptografike.
Një nonce kriptografike është një vlerë e krijuar nga një gjenerator PRNG ose Pseudo Random Numrave të sigurt kriptografikisht që synohet të përdoret saktësisht një herë. Në mënyrë tipike, kjo arrihet duke përfshirë një formë të vulës kohore brenda vlerës.
Këshillë: Sidomos kur kemi të bëjmë me një folës amtare të anglishtes britanike, është thelbësore të përdoret në mënyrë specifike fraza "nonce kriptografike" në vend të fjalës "një herë". Në MB, "një herë" është një fjalë zhargon për një pedofil. Në përgjithësi, për të shmangur çdo konfuzion, është mirë të përdoret në mënyrë specifike termi nonce kriptografike.
Përdorime të tjera
Ndërsa shumica e rasteve të përdorimit të mundshëm për vlera unike nuk kanë nevojë domosdoshmërisht për një numër të rastësishëm të sigurt kriptografik, një nonce kriptografike i përshtatet kërkesave. Për shembull, një sulm përsëritës është një sulm i bazuar në ueb ku një sulmues dërgon në mënyrë të përsëritur të njëjtën pjesë të trafikut, duke e rishfaqur atë shpesh. Le të themi se kjo kërkesë i thotë serverit të kalojë kohë për të gjeneruar një raport. Sulmuesi mund të shumëzojë sasinë e punës së nevojshme duke e përsëritur kërkesën disa herë.
Shpesh sulmuesi gjithashtu mund ta modifikojë pak kërkesën në një mënyrë të automatizuar gjithashtu. Për shembull, nëse një dyqan online përdor numra të njëpasnjëshëm të produktit në URL-në e faqes, sulmuesi mund të automatizojë procesin e kërkimit të të gjithëve.
Për ta kapërcyer këtë, serveri mund të furnizojë shfletuesin me një shenjë për një përdorim me çdo kërkesë që bën. Serveri mban gjurmët e shenjave të përdorura dhe automatikisht heq trafikun që nuk përfshin një shenjë të vlefshme dhe të papërdorur. Në këtë skenar, token duhet të jetë unik dhe nuk duhet të ripërdoret. Kështu, një nonce kriptografike i përshtatet faturës.
konkluzioni
Një nonce kriptografike është një numër i rastësishëm i sigurt kriptografik që duhet të përdoret vetëm një herë. Të bësh këtë i bën të pamundura sulmet e parallogaritjes, ndërkohë që nuk kërkon që vetë nonce kriptografike të mbetet sekret. Përdorimi i tij parësor është si vektor inicializimi në skemat e enkriptimit.
Termi shpesh pretendohet të nënkuptojë "numër i përdorur një herë"; megjithatë, kjo është një etimologji e rreme. Fjala vjen nga anglishtja e mesme për të nënkuptuar diçka të përdorur një herë ose përkohësisht. Sidoqoftë, koncepti "numri i përdorur një herë" ndihmon në shpjegimin se për çfarë synohet një nonce kriptografike. Për të ndihmuar me këtë qëllim, ai shpesh përfshin një formë të vulës kohore.