&gt;  It&#x27;s not random. It&#x27;s not a generator.<p>No, it&#x27;s a <i>pseudorandom</i> generator. It&#x27;s a key attribute of a cryptographically secure function like SHA256 that its output is indistinguishable from random bits.<p>&gt; You are just returning a different representation of the seed you already have.<p>I&#x27;m returning a function of the seed, yes. That&#x27;s the whole point of a seeded PRNG: that seed(x); rng(); rng(); rng() will always return the same sequence of results. This is used for example in procedural generation, to ensure that a dungeon level or map chunk is always generated the same way (a cool hack, then, is to just store the seed instead of the level itself, and rerun the level-generation algorithm with the seed when one wishes to regenerate the level). In such an application one wants the appearance of randomness, but with repeatability.<p>Which was what the original post asked for.<p>What I suggested is <i>not</i> secure for generating keys or for other cryptographic purposes.