用途
该技能用于生成加密安全的随机数据,适用于创建密码、API 密钥、密钥(secret)以及任何需要安全随机性的场景。核心命令为 openssl rand。
主要能力
资料提供了多种生成方式:
-
生成 32 字节随机数据并以 base64 输出(43 个字符,通过 tr 转换为 URL 安全格式): openssl rand -base64 32 | tr '+/' '-_' | tr -d '='
-
生成 24 字节随机数据并以 hex 输出(48 个字符): openssl rand -hex 24
-
生成字母数字密码(32 个字符): openssl rand -base64 48 | tr -dc 'a-zA-Z0-9' | head -c 32
常见长度与用途
资料给出的对应关系如下:
- 强密码:openssl rand -base64 24
- API 密钥:openssl rand -hex 32
- 会话令牌:openssl rand -base64 48
- 短 PIN(8 位数字):openssl rand -hex 4
使用方式
直接调用 openssl rand 命令,按需选择 -base64 或 -hex 输出格式,并可结合 tr、head 等命令过滤字符集或截取长度。
注意事项
- -base64 输出的字符数约为字节数的 1.33 倍。
- -hex 输出的字符数为字节数的 2 倍。
- 可通过管道传给 tr -dc 来过滤字符集。
- 密钥应始终使用至少 16 字节(128 位)。
适用场景
适用于需要生成密码、API 密钥、会话令牌、PIN 码等安全随机数据的开发与运维场景。
限制
资料未提供该技能在特定平台上的安装方式、依赖要求或额外配置说明,暂未提供相关信息。