Spørgsmål:
Er Arduino ideel til at lave en HRNG (hardware tilfældig talgenerator)?
Tim Post
2009-11-15 23:00:14 UTC
view on stackexchange narkive permalink

Jeg sammensætter et design til en hardware-tilfældig talgenerator, der bruger flere entropikilder ( kombineret ):

  • Omgivende lys
  • Omgivelseslyd (og lydniveauer)
  • Omgivende temp
  • Omgivelsesfugtighed
  • Selve enhedens position (på hovedet, vippet til venstre, med titlen til højre, osv.)
  • Andre kilder i fremtiden, muligvis endda GPS-data (markeret som muligt, fordi to brugere muligvis står ved siden af ​​hinanden og dermed muligvis deterministiske, hvis du kender dem.)

Min idé er at lave en entropipulje til 'oplader', som folk kan bære med sig i løbet af dagen, mens den fortsætter med at skrive til et USB-drev.

Efter et par timer har brugeren en dejlig ~ 4 GB entropipool, der kan tilsluttes en pc og bruges. Jeg har ikke råd til de virkelig dyre QRNG'er baseret på let eller radioaktivt henfald, så jeg prøver på at finde noget billigere.

Er Arduino det bedste valg til prototyping af dette efter din mening? Hvis ikke, hvad vil du anbefale?

Ni svar:
#1
+22
todbot
2009-11-16 01:38:19 UTC
view on stackexchange narkive permalink

Jeg tror, ​​du vil gå ned ad stien, som busz foreslår. Søg efter begrebet "diodestøj". PN-forbindelserne i dioder og transistorer kan producere tæt på perfekt Gaussisk hvid støj. Prøveudtagning, der skal være en kilde til entropi, der er bedre end nogen miljøkilde.

Problemet med de fleste miljø- / omgivelsesdata er, at værdierne bare ikke ændrer sig meget over tid: temperatur, fugtighed, lys og lyd har alle mindre end en størrelsesorden af ​​variation med virkelig stærk tilstande. Et accelerometer til måling af bevægelse kan være en god kilde til variabilitet, hvis den er monteret på en person, men du bliver sandsynligvis nødt til at udføre lidt signalbehandling for at fjerne de normale svingningsformer, der er til stede i, hvordan mennesker bevæger sig. En &-lydkilde med omgivende lys kan have en smule stor variation, hvis den placeres i et byrum med høj densitet, men igen tror jeg, at der ville være meget gentagelse. Jeg tror stadig, at den bedste kilde til entropi ville være at gå ned mod grundlæggende fysiske egenskaber ved materialer som diodestøj end at gå op i skala og se på miljøfaktorer, der kan læses af en mikrocontroller.

#2
+8
bpijls
2009-11-16 00:15:32 UTC
view on stackexchange narkive permalink

Der er nogle interessante kredsløb til HRNG uden behov for omgivende entropikilder: http://www.cryogenius.com/hardware/rng/ http://robseward.com/ itp / adv_tech / random_generator / og mere ...

Det er bestemt muligt at tilpasse et af disse kredsløb til et Arduino-skjold. Arduino fungerer derefter som en gateway mellem HRNG og en pc.

Hvis du virkelig har brug for entropi-input fra omgivelserne, har arduino 6 analoge inputkanaler, så du kan læse næsten enhver sensor, du kan tænke på og Brug dataene som en kilde til et tilfældigt frø.

#3
+6
Jason S
2009-11-25 07:14:09 UTC
view on stackexchange narkive permalink

To kommentarer:

  1. Se på Bruce Schneiers Yarrow PRNG-algoritme. Hovedpointen er, at du kan have en virkelig elendig kilde til "ægte" tilfældig information; så længe du akkumulerer nok af det over tid, kan den resulterende usikkerhed kombineres med software-pseudo-tilfældige talgenereringsteknikker for at give anstændige tilfældige tal.

  2. På den anden side, Jeg er enig med de fleste andre svarere. Langsomt skiftende signaler fra miljøsensorer er elendige kilder til entropi og kunne let påvirkes. Sørg for at bruge noget, der er baseret på iboende enhedsstøj, og det vil være ufølsomt over for miljøændringer.

#4
+6
Amos
2009-12-28 05:33:14 UTC
view on stackexchange narkive permalink

Jeg har lige set denne Tilfældige nummergenerator:

Timeglasgenerator for tilfældig nummer http://makezineblog.files.wordpress.com/2009/12/usbsand. jpg? w = 600&h = 703

over på Make: Blog og troede, du kunne være interesseret.

Henviser du til ["USB Hourglass random number generator"] (http://blog.makezine.com/2009/12/23/usb-hourglass-random-number-generat/)?
Ja det var den ene. Det oprindelige link var til dets 'startside på comcast, som ikke længere er der. Tak. Fixede linkene nu.
#5
+3
SiliconFarmer
2009-11-16 15:20:15 UTC
view on stackexchange narkive permalink

Jeg er enig i ovenstående to svar. Menneskelige aktiviteter og omgivende aflæsninger vil udgøre en frygtelig tilfældig pulje. Men det lyder som om du kun vil være overbevist om dette ved at prøve det og kontrollere den resulterende tilfældighed selv. Det vil være en fantastisk læringsoplevelse for dig!

Arduino er fint for denne applikation. Alle de sensorer, du er interesseret i, kan knyttes til Arduino, og der er Arduino-biblioteker til rådighed for disse sensorer.

Se disse vejledninger til tilslutning af sensorer til Arduino: http: //www.ladyada .net / lær / sensorer /

#6
+3
Seidleroni
2009-11-21 23:16:07 UTC
view on stackexchange narkive permalink

Dette kan være en mulighed for dig. Det er fra sparkfun og ikke billigt, men det vil sandsynligvis være fremragende som en 'sand' tilfældig talgenerator. Den bruger en geigertæller til at generere tilfældige tal.

https://www.sparkfun.com/commerce/tutorial_info.php?tutorials_id=132

Det ser interessant ud.
#7
+3
jluciani
2009-12-16 05:50:53 UTC
view on stackexchange narkive permalink

Et antal af de hvide støjgeneratorer i de analoge musik-synthesizere (Moog og Arp) ville løfte en transistor. Hvis du forespørger online om Minimoog-skemaet eller ARP4027, skal du finde skemaerne.

Jeg lavede et printkortlayout til ARP4027. Hvis du ikke kan finde skemaet, send mig en e-mail.

National havde lavet en digital tilfældig talgenerator - MM5437. IIRC der var nogle programmer til en AT-lille, der også ville gøre dette. Det kunne være et sjovt lille projekt.

#8
+2
wackyvorlon
2009-11-25 09:00:44 UTC
view on stackexchange narkive permalink

Jeg har for nylig læst en meget interessant diskussion om at bruge modstande til at generere tilfældig støj. På grund af kvanteeffekter producerer en modstand en meget lille spænding. Dette kan forstærkes med en op-forstærker for at producere en kilde til tilfældig støj af høj kvalitet.

#9
+2
J. Polfer
2010-01-06 23:09:57 UTC
view on stackexchange narkive permalink

Du kan bruge sensorindgangen som frø til en pseudo-tilfældig talgenerator. Linux OS bruger input fra tastaturet / musen som frø til / dev / tilfældig. Bare en idé.



Denne spørgsmål og svar blev automatisk oversat fra det engelske sprog.Det originale indhold er tilgængeligt på stackexchange, som vi takker for den cc by-sa 2.0-licens, den distribueres under.
Loading...