Så skapade forskare slumptal med mobilkamera
En perfekt sekvens slumptal strömmade i högt tempo ur Nokia N9-kameran när fysiker i Geneve belyste den med en diod. Tekniken skulle kunna adderas till mobiltelefoner idag. Men kommentatorer är skeptiska till värdet av tekniken.NYTTAN IFRÅGASÄTTS Forskarnas artikel har kritiserats för att den ger en lösning på ett problem som inte finns. Annan teknik som genererar slumptal via hårdvara finns redan i bruk och är billig och bra. Det finns heller inget behov av stora volymer slumptal. Slumptalssekvenser genereras via algoritmer som endast behöver ett slumptal som startvärde. Sådana metoder ger större kontroll över proceduren och därmed större säkerhet: om man vet att startvärdet är slumpmässigt så går det att bevisa att hela sekvensen också är det. Det som fysikerna möjligen bidrar med är ett nytt sätt att skapa ett sådant startvärde. En kryptoexpert vill i så fall ändå gärna blanda kameraslumpen med andra slumpkällor för att skapa startvärdet. En angripare skulle då behöva kompromettera samtliga slumpkällor för att knäcka krypteringen. Om man bara använder kamerans signal som slumpgenerator, skulle det räcka för angriparen att kompromettera kameran. |
Krypteringssystem kan knäckas om den slumptalsgenerator som de använder inte är bra, det vill säga om det finns ett mönster i hur slumptalen uppträder. Därför används ofta speciella kretsar för att skapa slump ur exempelvis brus, hysteres, tidsjitter eller metastbilitet.
Komponenter som utnyttjar kvanteffekter för att skapa slump kallas QRNG (quantum random number generator). Forskarna i Geneve har demonstrerat att en vanlig mobiltelefonkamera är en QRNG-komponent som utan problem kan generera stora volymer slumptal.
De testade idén på en Nokia N9-kamera. Varje pixel i den bär potentiellt på cirka 6,4 bitar slump. Men om man använde dessa värden direkt skulle dammkorn, döda pixlar och andra korrelationer kunna sabotera metoden. Istället bakar man samman värdena i en algoritm som minskar antalet bitar i utbyte mot att eventuella fel smetas ut och att slumpmässigheten blir högre.
100 miljoner slumpmässiga ettor och nollor i sekunden kan genereras om man använder mobilprocessorns cpu för den efterbearbetning som krävs. Genom att addera lite extra hårdvara exempelvis direkt i CMOS-sensorchipet skulle man kunna plocka cirka tre slumpmässiga bitar ur varje bildpunkt, motsvarande mellan 300 miljoner och tre miljarder slumpbitar per sekund beroende på kamerans upplösning.
Forskarna inledde med att bekräfta att kameran uppfyllde sin specifikation vad gäller ljuskänslighet och linjäritetsområde. De valde slutartid och exponeringstid för att tillse att det verkligen är fotoner som skapar variationen – och inte exempelvis termiskt brus, läckströmmar eller onoggrannhet i AD-omvandlare eller förstärkare.
Den genererade sekvensen slumptal godkändes i alla de tester på slumpmässighet som forskarna utsatte den för.
Om alla människor på jorden använde Nokia N9-slumpgeneratorn för att skapa varsin ström av slumptal på 1 Gbit/s så skulle det dröja 1080 gånger universums livslängd innan skillnaden mellan de N9-genererade slumptalen och en helt perfekt ström av slumptal skulle vara mätbar. Det har forskarna räknat ut. Det demonstrerar kvaliteten på de slumptal metoden teoretiskt genererar.
Forskarna är inte först med att generera slumpdata ur bildsensorer, men de anser sig ha fått upp en högre kvalitet på slumpmässigheten och en mycket högre kvantitet av slumptal än tidigare metoder.
I experimentet deltog också en professionell kamera av hög kvalitet. Den kunde generera lite fler slumpbitar: 8,9 per pixel att jämföra med N9:ans 6,4.