Slashdot Mirror


Researchers Build True Random Number Generator From Carbon Nanotubes (ieee.org)

Wave723 writes: IEEE Spectrum reports on a true random number generator that was created with single-walled semiconducting carbon nanotubes. Researchers at Northwestern University printed a SRAM cell with special nanotube ink, and used it to generate random bits based on thermal noise. This method could be used to improve the security of flexible or printed electronics. From the report: "Once Mark Hersam, an expert in nanomaterials at Northwestern University, and his team had printed their SRAM cell, they needed to actually generate a string of random bits with it. To do this, they exploited a pair of inverters found in every SRAM cell. During normal functioning, the job of an inverter is to flip any input it is given to be the opposite, so from 0 to 1, or from 1 to 0. Typically, two inverters are lined up so the results of the first inverter are fed into the second. So, if the first inverter flips a 0 into a 1, the second inverter would take that result and flip it back into a 0. To manipulate this process, Hersam's group shut off power to the inverters and applied external voltages to force the inverters to both record 1s. Then, as soon as the SRAM cell was powered again and the external voltages were turned off, one inverter randomly switched its digit to be opposite its twin again. 'In other words, we put [the inverter] in a state where it's going to want to flip to either a 1 or 0,' Hersam says. Under these conditions, Hersam's group had no control over the actual nature of this switch, such as which inverter would flip, and whether that inverter would represent a 1 or a 0 when it did. Those factors hinged on a phenomenon thought to be truly random -- fluctuations in thermal noise, which is a type of atomic jitter intrinsic to circuits." Hersam and his team recently described their work in the journal Nano Letters.

9 of 144 comments (clear)

  1. "Using nanotubes" is the new black? by TeknoHog · · Score: 3, Interesting

    Making a RNG from inverters is an old trick (shameless plug). So if there's any news here, it's making an inverter from nanotubes?

    --
    Escher was the first MC and Giger invented the HR department.
    1. Re:"Using nanotubes" is the new black? by rogoshen1 · · Score: 3, Funny

      that poor girl.

  2. Summary fail by Wdi · · Score: 5, Informative

    The random generator passed only 9 of 15 standard randomness tests of NIST. Not surprising - it is unlikely that the two inverter branches are identical to the atom level, and that is a prerequisite that the thermal noise has exactly equal chance of flipping either branch.

    1. Re:Summary fail by TeknoHog · · Score: 4, Informative

      The random generator passed only 9 of 15 standard randomness tests of NIST. Not surprising - it is unlikely that the two inverter branches are identical to the atom level, and that is a prerequisite that the thermal noise has exactly equal chance of flipping either branch.

      The NIST tests aren't necessarily that great for judging randomness. For example, too long streaks of ones or zeros will fail the test, even though they are possible in genuine random sources. I imagine one could devise an algorithmic, repeating stream of numbers that passes the NIST tests.

      The issue of unequal chance for 0 and 1 is common in HWRNGs, and there are simple solutions for debiasing the output. https://en.wikipedia.org/wiki/...

      --
      Escher was the first MC and Giger invented the HR department.
    2. Re:Summary fail by Togden · · Score: 5, Funny

      If it were truly random, surely it would pass the tests at random, and so really we should be checking that it passes different tests each time, except on occasion when it doesn't.

  3. So it passes test one of a good RNG. by Opportunist · · Score: 3, Informative

    The first test of a good random number generator is obviously whether it can generate a true random number under normal operation conditions. This they claim to have accomplished.

    The second test is just as critical and I'd be very interested in the result: Can any kind of manipulation be easily detected? Or is it possible to tamper with the device in such a way that it does generate a number predetermined by the manipulator without anyone else being able to determine that such manipulation took place?

    --
    We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
  4. Nice save by physicsphairy · · Score: 5, Funny

    Researcher 1: "Our nanotube project is outputting completely garbage data. I guess this means we can't publish."
    Researcher 2: "Or... can we?"

  5. Re:Random Number by pem · · Score: 3, Informative

    A random number is for generating the key, not using it.

  6. Re:Random Number by rgbatduke · · Score: 4, Interesting

    There are three meanings of the word "random" referring to a generator in this context:

    a) Unpredictable.
    b) Empirically satisfying all of the decorrelation properties of a random number sequence -- on average uniform in all bit patterns, on average lacking correlations at all lags (and hence non-periodic) and on all N-dimensional hyperplanes for all N, etc.
    c) Both.

    All that is asserted here is that they have a thermal noise generator that satisfies a). Big whoop -- thermal noise generators (and hardware generators in general) are commonplace: https://en.wikipedia.org/wiki/.... However, thermal noise and so on are often "colored" or "biased" -- they produce fluctuations that are unpredictable but it is almost impossible to get the noise to produce a string of e.g. 0's and 1's that satisfy b). One then is stuck using the unpredictable noise to randomize a pseudorandom number generator (for example, by xor'ing the two together) that produces a bit string that has the right uniformity and decorrelation properties but does so from an internal state that, if known, makes the string produced predictable.

    AGAIN this sort of thing is pretty commonplace. Sources of "entropy" as in unpredictable activity are common enough and so are high quality pseudorandom number generators. The major problem then is rate. Few of the hardware generators can produce entropy FAST ENOUGH to keep up with a PRNG, so getting a source of "true random numbers" that is fast enough to use in e.g. Monte Carlo is not easy, and most people don't bother to try. Having a handful of unpredictable numbers suffices for e.g. encryption and that's really where this is headed.

    I would wax poetic on the fact that EVEN thermal noise is probably not truly random; it is random the way a coin flip is random or, for that matter, the way a PRNG is random. The outcome of a coin flip is unpredictable only because we don't flip the coin with a precise knowledge of its state and the state of the flip environment and because we perhaps cannot integrate its equations of motion precisely enough from what knowledge we do have, but it is deterministic, hence not really unpredictable. Classical thermal noise is no different than a bunch of flipping coins bouncing around -- again deterministic but with lots of unknown state information. "True" random is a term that should probably be provisionally reserved to AT BEST quantum "coin flips", although in the master equation approach to resolving the state of a quantum "coin", the true origin of randomness is seen STILL to be the process of taking the trace of the surrounding environment, which is if you like the filter resolving the flip. That trace introduces "entropy" in the form of lost phase information and averaging over energy distributions that appears as unpredictability in the outcome, but if one views the "coin" AND the surroundings as a single quantum system its quantum trajectory is again deterministic. Randomness in quantum filtering experiments comes from the fact that the measuring apparatus that does the filtering must resolve it in a classical was with its quantum entangling and phases in general unknown and averaged over.

    If one buys the holographic model in string theory (or plain old quantum theory as it is currently structured) the Universe is in a zero entropy state and there are no sources of "real" entropy. In this case there can BE no "true" random number generators. Whether or not nature is capable of generating true random numbers from some source other than our ignorance of state is an open empirical question.

    --
    Even when the experts all agree, they may well be mistaken. --- Bertrand Russell.