Vi har i ett antal artiklar tittat närmare på olika krypton. Nu har det blivit dags att gå ännu djupare i ämnet och undersöka slumptal och hur dessa genereras.
Slumptal används i många olika typer av applikationer, inte bara för att skapa kryptonycklar. En vanlig tillämpning är spel, där man vill ta till slumpen för att göra spelet mer omväxlande. Slumptal används även vid simuleringar för att pröva olika scenarion och vilka resultat de ger.

Finns i många os
Ett program kan innehålla en egen slumptalsgenerator, men tillgång till slumptal är ett så vanligt behov att även de flesta operativsystem innehåller någon slags slumptalsgenerator som applikationerna kan använda. Exempel på det här är lagring av lösenord, där slumptal används för att försvåra attacker, eller identitetsnummer för processer och sekvensnummer för tcp-sessioner.

Men vad är ett slumptal? Är talet tre ett slumptal? Eller 42? Det beror inte på talet i sig, utan snarare på varifrån talet kommer, och om talets värde var givet på förhand eller ej.

Ett slumptal är helt enkelt ett tal som plockats från en hög av tal. Det är avsaknaden av kännedom om innehållet i högen samt att inte på förhand veta vilka tal som kommer ut ur högen som gör talen som kommer från högen slumpmässiga. Att inte på förhand kunna gissa värdet på ett tal gäller oavsett om den som försöker gissa värdet sett alla föregående värden eller ej. Ju svårare det är att gissa värdena i en sekvens av tal desto mer slumpmässiga är talen.

Ett problem med att generera slumptal med ett program är att slumpmässighet strider mot essensen hos en dator, alltså att alltid köra ett program på samma sätt. Ett program som beräknar summan av två tal ska om talens värden aldrig ändras alltid ge samma svar.

Fortsätt läsa artikeln i tidningen
Denna artikel kan du som prenumerant hitta i sin fullständiga längd i papperstidningen samt i TechWorlds e-tidning.

Inte prenumerant ännu? Välkommen att teckna din prenumeration.