Skip to content

Implementation of hardware RNGs on MCUs #16420

Discussion options

You must be logged in to vote

As said, the MicroPython module uses a Pseudo RNG in all ports.
os.urandom() is based on a True RNG (hardware), but not supported by all ports and MCUs.
Ports that uses a TRNG with os.urandom():

  • STM32
  • ESP32
  • ESP8266
  • RP2
  • MIMXRT (teensy)
  • SAMD
  • Renesas RA
  • NRF

Maybe more. In order to tell, whether a certain MCU uses a TRNG, look whether os.urandom() exists.

Replies: 7 comments 26 replies

Comment options

You must be logged in to vote
0 replies
Comment options

You must be logged in to vote
0 replies
Comment options

You must be logged in to vote
2 replies
@MicroControleurMonde
Comment options

@robert-hh
Comment options

Answer selected by MicroControleurMonde
Comment options

You must be logged in to vote
5 replies
@robert-hh
Comment options

@Josverl
Comment options

@MicroControleurMonde
Comment options

@MicroControleurMonde
Comment options

@robert-hh
Comment options

Comment options

You must be logged in to vote
19 replies
@MicroControleurMonde
Comment options

@MicroControleurMonde
Comment options

@robert-hh
Comment options

@MicroControleurMonde
Comment options

@MicroControleurMonde
Comment options

Comment options

You must be logged in to vote
0 replies
Comment options

You must be logged in to vote
0 replies
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
4 participants