生成一个强大的密钥
使用以下方法可以生成高级别复杂的密钥串:
OpenSSL 1
在 linux
或是MacOS
系统,可以通过以下 openssl
命令:
$ openssl rand -base64 32
8CFSzHUvsz9yOC2JpsjhGSRn0HgzH40k/QIQM4VdXyA=
/dev/urandom
在 linux
或是MacOS
系统,也可以通过使用 /dev/urandom
源来生成较复杂的密钥串:
在 linux
或是MacOS
系统,发送随机数到 base64
:
$ head -c 24 /dev/urandom | base64
2+U9G2qUuFx0hEkcPyaBFQm+ZD+x2MDH
通过哈希函数(例如sha256)传递随机输入
在 linux 下
$ head -c 4096 /dev/urandom | sha256sum | cut -b1-32
2ca8fcf510b4cf5ba711934c8383cf21
在 macOS 下
JavaScript 2
var a = new Uint8Array(24);
window.crypto.getRandomValues(a);
console.log(btoa(String.fromCharCode.apply(null, a)));