[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#6683: mktemp foo.XXXXXXXXXXX is not sufficiently random
From: |
Eric Blake |
Subject: |
bug#6683: mktemp foo.XXXXXXXXXXX is not sufficiently random |
Date: |
Tue, 20 Jul 2010 11:41:29 -0600 |
User-agent: |
Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.10) Gecko/20100621 Fedora/3.0.5-1.fc13 Lightning/1.0b2pre Mnenhy/0.8.3 Thunderbird/3.0.5 |
On 07/20/2010 11:21 AM, Paul Eggert wrote:
> While looking at the random-number stuff I found a theoretical
> randomness bug in mktemp. The mktemp command currently uses 8 bytes
> of randomness to generate a file name, so with an invocation like
> this:
>
> $ mktemp foo.XXXXXXXXXXX
>
> the file name is not sufficiently random. There are 62 possibilities
> for each X, so one needs log2(62**11) random bits to generate a random
> 11-character value for the Xs, which is about 65.5 bits, but we are
> generating only 64 bits. The more Xs, the more randomness is needed,
> so the bug gets more "serious" as the number of Xs grows.
Meanwhile, glibc's mkstemp() only replaces the last 6 X, regardless of
how many additional X are present in the template. Do we even need the
extra randomness if the template contains more X?
--
Eric Blake address@hidden +1-801-349-2682
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature