flat assembler
Message board for the users of flat assembler.
![]() Goto page Previous 1, 2 |
Author |
|
DOS386
> But before that new instruction, programmers had to work with rdtsc only?
YES. And before RDTSC they had this technology: http://xkcd.com/221/ |
|||
![]() |
|
f0dder
DOS386 wrote: > But before that new instruction, programmers had to work with rdtsc only? If you use a decent PRNG, you might be able to get away with seeding it fromt RDTSC... but using RDTSC *in* the PRNG? Doesn't seem like a good idea, as it's a sequentially increasing number. _________________ ![]() |
|||
![]() |
|
DOS386
You can pick randomness from keystokes, mouse movements, HD, BIOS clock, RDTSC, temperature sensors, audio input, ...
|
|||
![]() |
|
emc
I perceive, thanks for these informations!
|
|||
![]() |
|
AsmGuru62
There are also these RNGs:
http://en.wikipedia.org/wiki/Xorshift http://en.wikipedia.org/wiki/Mersenne_twister I tested these for my STAR TREK clone - excellent generators. |
|||
![]() |
|
revolution
AsmGuru62 wrote: There are also these RNGs: ![]() |
|||
![]() |
|
AsmGuru62
Yes, but as I said - tests will not show the difference between the REAL generator and PSEUDO one.
|
|||
![]() |
|
revolution
Interesting article about the all-digital generator Intel use.
http://spectrum.ieee.org/computing/hardware/behind-intels-new-randomnumber-generator/0 Quote: Our previous analog random-number generator was able to produce only a few hundred kilobits of random numbers a second, whereas our new generator spins them out at a rate of around 3 gigabits per second. |
|||
![]() |
|
MCD
Here is the problem with a real random number instruction:
How can you check that the instruction delivers real physical random numbers, and not simply a TSC-seeded PRNG value? Especially on a chip where you neither know the layout nor can verify its implementation. After all, you can't say "that result shouldn't happen according to that input", since every output is as likely to occur as any other. On the other hand, maybe the instruction was not intended to be used as a cryptographically secure hardware random number generator, or was it? |
|||
![]() |
|
revolution
MCD wrote: How can you check that the instruction delivers real physical random numbers, and not simply a TSC-seeded PRNG value? MCD wrote: On the other hand, maybe the instruction was not intended to be used as a cryptographically secure hardware random number generator, or was it? |
|||
![]() |
|
Matrix
ahah i did something similar now for amd64, getting random numbers at speeds limited by memory write performance
|
|||
![]() |
|
f0dder
Matrix wrote: ahah i did something similar now for amd64, getting random numbers at speeds limited by memory write performance ![]() _________________ ![]() |
|||
![]() |
|
Matrix
f0dder wrote:
that was fast ![]() i'll post details, but now i'm kind of busy |
|||
![]() |
|
f0dder
Does it involve using special chipset features? (Some AMD (and Intel, for that matter) chipsets have had hardware rngs), or does it involve read/writing arbitrary memory regions that don't have physical memory backing?
![]() |
|||
![]() |
|
edfed
no need of rdtsc to generate prng at all.
prng just generate a sequence of bits for a given seed. change the seed, you have a different sequence. |
|||
![]() |
|
Goto page Previous 1, 2 < Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2020, Tomasz Grysztar. Also on GitHub, YouTube, Twitter.
Website powered by rwasa.