Definition

MicroPython’s deterministic Yasmarang software PRNG. In coldcard firmware, an integration bug caused ngu.random to fall back to Yasmarang seeded from MCU UID and timer registers instead of STM32 hardware RNG — enabling offline seed enumeration.

Key Points

  • Mk2/Mk3: effectively deterministic for known UID/timer/call history
  • Mk4/Q/Mk5: secure-element entropy truncated; 32-bit reseed → ≤2^32 streams (per block)

Sources