On 7/20/23 17:39, James wrote:
An alternative using openssl
$ printf "%016X\n" $((16#$(openssl rand -hex 8) & 0x7fffffffffffffff))4B0193AE43934F09
To get the leading zeros so it will generate an 8-byte serial number, I added:
printf "%016X\n" $(shuf -rn 1 -i 1-9223372036854775807 --random-source=/dev/urandom)
an example output is:
0E12E1A664C30AE1
I had to run it a couple dozen times before it generated a small enough value to need to pad it.