#chiroito ’s blog

Java を中心とした趣味の技術について

Javaで16進数の乱数を生成

Java で32桁の16進数の乱数を簡単に作りたいなと思ったので作ってみたメモ。

byte[] bytes = new byte[16];
SecureRandom random = new SecureRandom();
random.nextBytes(bytes);
String hexString = HexFormat.of().formatHex(bytes);

これで変数 hexString には 7ffda83291c2b5e47db3557138ef7799 のような文字列が入ります。

16進数の 1 桁は 4 bit で、byte は 8 bitです。なので、欲しい桁の半分のbyte配列を作成します。

SecureRandomのパラメータとかは必要に応じて良い感じに設定すると良いと思います。