pg_pwhash
PostgreSQL 高级密码哈希扩展(Argon2/scrypt/yescrypt)
概览
| ID | 扩展名 | Bin | Lib | Load | Create | Trust | Reloc | 模式 |
|---|---|---|---|---|---|---|---|---|
| 7330 | pg_pwhash | 否 | 是 | 否 | 是 | 否 | 是 | - |
RPM metadata shows license=PostgreSQL, but packaged LICENSE file is MIT
版本
| 类型 | 仓库 | 版本 | PG 大版本 | 包名 | 依赖 |
|---|---|---|---|---|---|
| EXT | PGDG | 1.0 | 1817161514 | pg_pwhash | - |
| RPM | PGDG | 1.0 | 1817161514 | pg_pwhash_$v | - |
| DEB | PGDG | 1.0 | 1817161514 | postgresql-$v-pg-pwhash | - |
安装
您可以直接安装 pg_pwhash 扩展包的预置二进制包,首先确保 PGDG 仓库已经添加并启用:
BASH
使用 pig 或者是 apt/yum/dnf 安装扩展:
安装
BASH
pig
BASH
dnf
BASH
apt
BASH
创建扩展:
SQL
用法
pg_pwhash 为 PostgreSQL 提供现代自适应密码哈希算法,包括 Argon2、scrypt 和 yescrypt。
SQL
支持的算法
| 标识符 | 算法 | Salt 模式 |
|---|---|---|
argon2i | Argon2i | $argon2i$v=19$m=4096,t=3,p=1$<salt> |
argon2d | Argon2d | $argon2d$v=19$m=4096,t=3,p=1$<salt> |
argon2id | Argon2id | $argon2id$v=19$m=4096,t=3,p=1$<salt> |
scrypt | Scrypt | $scrypt$ln=16,r=8,p=1$<salt> |
$7$ | Scrypt (crypt) | $7$BU<salt> |
yescrypt | yescrypt (crypt) | $y$j9T$<salt> |
核心函数
生成盐值和哈希
SQL
验证密码
SQL
直接哈希函数
SQL
自定义盐值参数
SQL
配置
| 参数 | 描述 |
|---|---|
pg_pwhash.argon2_default_backend | Argon2 后端:libargon2 或 openssl |