2005-10-11 20:46:26

by Roberto Jung Drebes

[permalink] [raw]
Subject: Instantiating my own random number generator


Hi there,

I have a kernel module which asks for random numbers using
get_random_bytes().

Is there a way I can set this number generator my own seed value, so
that I can replay experiments I perform with my module? If I set a
seed for the whole system, it would affect other kernel tasks
obtaining random numbers through get_random_bytes(), so I guess that
is not a good solution.

TIA,

--
Roberto Jung Drebes <[email protected]>
Porto Alegre, RS - Brasil
http://www.inf.ufrgs.br/~drebes/



2005-10-12 08:57:15

by Hagen Paul Pfeifer

[permalink] [raw]
Subject: Re: Instantiating my own random number generator

On 05.10.11 Roberto Jung Drebes pressed the following keys:

>Is there a way I can set this number generator my own seed value, so
>that I can replay experiments I perform with my module? If I set a
>seed for the whole system, it would affect other kernel tasks
>obtaining random numbers through get_random_bytes(), so I guess that
>is not a good solution.

No, there insn't a direct alternative. get_random_bytes() should be
good enough - do you realize a weak spot?

>TIA,

HGN

2005-10-12 12:07:17

by Paulo Marques

[permalink] [raw]
Subject: Re: Instantiating my own random number generator

Roberto Jung Drebes wrote:
>
> Hi there,

Hi,

> I have a kernel module which asks for random numbers using
> get_random_bytes().
>
> Is there a way I can set this number generator my own seed value, so
> that I can replay experiments I perform with my module? If I set a seed
> for the whole system, it would affect other kernel tasks obtaining
> random numbers through get_random_bytes(), so I guess that is not a
> good solution.

Why don't you implement a simple PRNG in your own module that you can
control yourself for your experiments, and then replace it later with
get_random_bytes()?

There are a number of PRNG's that are simple to implement and good
enough for most problems:

http://en.wikipedia.org/wiki/List_of_pseudorandom_number_generators

I hope this helps,

--
Paulo Marques - http://www.grupopie.com

The rule is perfect: in all matters of opinion our
adversaries are insane.
Mark Twain

2005-10-12 12:21:34

by Horst H. von Brand

[permalink] [raw]
Subject: Re: Instantiating my own random number generator

Roberto Jung Drebes <[email protected]> wrote:
> I have a kernel module which asks for random numbers using
> get_random_bytes().
>
> Is there a way I can set this number generator my own seed value, so
> that I can replay experiments I perform with my module? If I set a
> seed for the whole system, it would affect other kernel tasks
> obtaining random numbers through get_random_bytes(), so I guess that
> is not a good solution.

If it is for experiments, just call MY_get_random_bytes() instead, and
define that one as you see fit. This will only work if it is called
directly, but then again...
--
Dr. Horst H. von Brand User #22616 counter.li.org
Departamento de Informatica Fono: +56 32 654431
Universidad Tecnica Federico Santa Maria +56 32 654239
Casilla 110-V, Valparaiso, Chile Fax: +56 32 797513

2005-10-12 12:33:19

by linux-os (Dick Johnson)

[permalink] [raw]
Subject: Re: Instantiating my own random number generator


On Wed, 12 Oct 2005, Hagen Paul Pfeifer wrote:

> On 05.10.11 Roberto Jung Drebes pressed the following keys:
>
>> Is there a way I can set this number generator my own seed value, so
>> that I can replay experiments I perform with my module? If I set a
>> seed for the whole system, it would affect other kernel tasks
>> obtaining random numbers through get_random_bytes(), so I guess that
>> is not a good solution.
>
> No, there insn't a direct alternative. get_random_bytes() should be
> good enough - do you realize a weak spot?
>
>> TIA,
>
> HGN
>

There are some random number generators that are trivial, a few
lines of code, that are good enough for pseudo-random back-off
times (to prevent deadlocks) and things like that. They are no
good for encryption, but fine for randomizing events. If you
need one, let me know.

Cheers,
Dick Johnson
Penguin : Linux version 2.6.13.4 on an i686 machine (5589.48 BogoMips).
Warning : 98.36% of all statistics are fiction.
.

****************************************************************
The information transmitted in this message is confidential and may be privileged. Any review, retransmission, dissemination, or other use of this information by persons or entities other than the intended recipient is prohibited. If you are not the intended recipient, please notify Analogic Corporation immediately - by replying to this message or by sending an email to [email protected] - and destroy all copies of this information, including any attachments, without reading or disclosing them.

Thank you.