libx509pq
通过 OpenSSL 解析与检查 X.509 证书
仓库
crtsh/libx509pq
https://github.com/crtsh/libx509pq
源码
libx509pq-1.3-bed05c6e87d7.tar.gz
libx509pq-1.3-bed05c6e87d7.tar.gz
概览
| 扩展包名 | 版本 | 分类 | 许可证 | 语言 |
|---|---|---|---|---|
libx509pq | 1.3 | SEC | GPL-3.0-or-later | C |
| ID | 扩展名 | Bin | Lib | Load | Create | Trust | Reloc | 模式 |
|---|---|---|---|---|---|---|---|---|
| 7420 | libx509pq | 否 | 是 | 否 | 是 | 否 | 是 | - |
Requires OpenSSL 1.1.1+; GPL-3.0-or-later is explicit in source headers. EL9 default crypto policy rejects a legacy SHA-1 test fixture; SHA-256 verification passed without changing policy.
版本
| 类型 | 仓库 | 版本 | PG 大版本 | 包名 | 依赖 |
|---|---|---|---|---|---|
| EXT | PIGSTY | 1.3 | 1817161514 | libx509pq | - |
| RPM | PIGSTY | 1.3 | 1817161514 | libx509pq_$v | openssl-libs |
| DEB | PIGSTY | 1.3 | 1817161514 | postgresql-$v-libx509pq | - |
| OS / PG | PG18 | PG17 | PG16 | PG15 | PG14 |
|---|---|---|---|---|---|
| el8.x86_64 | PIGSTY 1.3 el8.x86_64.pg18 : libx509pq_18 libx509pq_18-1.3-1PGSTY.el8.x86_64.rpm
| PIGSTY 1.3 el8.x86_64.pg17 : libx509pq_17 libx509pq_17-1.3-1PGSTY.el8.x86_64.rpm
| PIGSTY 1.3 el8.x86_64.pg16 : libx509pq_16 libx509pq_16-1.3-1PGSTY.el8.x86_64.rpm
| PIGSTY 1.3 el8.x86_64.pg15 : libx509pq_15 libx509pq_15-1.3-1PGSTY.el8.x86_64.rpm
| PIGSTY 1.3 el8.x86_64.pg14 : libx509pq_14 libx509pq_14-1.3-1PGSTY.el8.x86_64.rpm
|
| el8.aarch64 | PIGSTY 1.3 el8.aarch64.pg18 : libx509pq_18 libx509pq_18-1.3-1PGSTY.el8.aarch64.rpm
| PIGSTY 1.3 el8.aarch64.pg17 : libx509pq_17 libx509pq_17-1.3-1PGSTY.el8.aarch64.rpm
| PIGSTY 1.3 el8.aarch64.pg16 : libx509pq_16 libx509pq_16-1.3-1PGSTY.el8.aarch64.rpm
| PIGSTY 1.3 el8.aarch64.pg15 : libx509pq_15 libx509pq_15-1.3-1PGSTY.el8.aarch64.rpm
| PIGSTY 1.3 el8.aarch64.pg14 : libx509pq_14 libx509pq_14-1.3-1PGSTY.el8.aarch64.rpm
|
| el9.x86_64 | PIGSTY 1.3 el9.x86_64.pg18 : libx509pq_18 libx509pq_18-1.3-1PGSTY.el9.x86_64.rpm
| PIGSTY 1.3 el9.x86_64.pg17 : libx509pq_17 libx509pq_17-1.3-1PGSTY.el9.x86_64.rpm
| PIGSTY 1.3 el9.x86_64.pg16 : libx509pq_16 libx509pq_16-1.3-1PGSTY.el9.x86_64.rpm
| PIGSTY 1.3 el9.x86_64.pg15 : libx509pq_15 libx509pq_15-1.3-1PGSTY.el9.x86_64.rpm
| PIGSTY 1.3 el9.x86_64.pg14 : libx509pq_14 libx509pq_14-1.3-1PGSTY.el9.x86_64.rpm
|
| el9.aarch64 | PIGSTY 1.3 el9.aarch64.pg18 : libx509pq_18 libx509pq_18-1.3-1PGSTY.el9.aarch64.rpm
| PIGSTY 1.3 el9.aarch64.pg17 : libx509pq_17 libx509pq_17-1.3-1PGSTY.el9.aarch64.rpm
| PIGSTY 1.3 el9.aarch64.pg16 : libx509pq_16 libx509pq_16-1.3-1PGSTY.el9.aarch64.rpm
| PIGSTY 1.3 el9.aarch64.pg15 : libx509pq_15 libx509pq_15-1.3-1PGSTY.el9.aarch64.rpm
| PIGSTY 1.3 el9.aarch64.pg14 : libx509pq_14 libx509pq_14-1.3-1PGSTY.el9.aarch64.rpm
|
| el10.x86_64 | PIGSTY 1.3 el10.x86_64.pg18 : libx509pq_18 libx509pq_18-1.3-1PGSTY.el10.x86_64.rpm
| PIGSTY 1.3 el10.x86_64.pg17 : libx509pq_17 libx509pq_17-1.3-1PGSTY.el10.x86_64.rpm
| PIGSTY 1.3 el10.x86_64.pg16 : libx509pq_16 libx509pq_16-1.3-1PGSTY.el10.x86_64.rpm
| PIGSTY 1.3 el10.x86_64.pg15 : libx509pq_15 libx509pq_15-1.3-1PGSTY.el10.x86_64.rpm
| PIGSTY 1.3 el10.x86_64.pg14 : libx509pq_14 libx509pq_14-1.3-1PGSTY.el10.x86_64.rpm
|
| el10.aarch64 | PIGSTY 1.3 el10.aarch64.pg18 : libx509pq_18 libx509pq_18-1.3-1PGSTY.el10.aarch64.rpm
| PIGSTY 1.3 el10.aarch64.pg17 : libx509pq_17 libx509pq_17-1.3-1PGSTY.el10.aarch64.rpm
| PIGSTY 1.3 el10.aarch64.pg16 : libx509pq_16 libx509pq_16-1.3-1PGSTY.el10.aarch64.rpm
| PIGSTY 1.3 el10.aarch64.pg15 : libx509pq_15 libx509pq_15-1.3-1PGSTY.el10.aarch64.rpm
| PIGSTY 1.3 el10.aarch64.pg14 : libx509pq_14 libx509pq_14-1.3-1PGSTY.el10.aarch64.rpm
|
| d12.x86_64 | PIGSTY 1.3 d12.x86_64.pg18 : postgresql-18-libx509pq postgresql-18-libx509pq_1.3-1PGSTY~bookworm_amd64.deb
| PIGSTY 1.3 d12.x86_64.pg17 : postgresql-17-libx509pq postgresql-17-libx509pq_1.3-1PGSTY~bookworm_amd64.deb
| PIGSTY 1.3 d12.x86_64.pg16 : postgresql-16-libx509pq postgresql-16-libx509pq_1.3-1PGSTY~bookworm_amd64.deb
| PIGSTY 1.3 d12.x86_64.pg15 : postgresql-15-libx509pq postgresql-15-libx509pq_1.3-1PGSTY~bookworm_amd64.deb
| PIGSTY 1.3 d12.x86_64.pg14 : postgresql-14-libx509pq postgresql-14-libx509pq_1.3-1PGSTY~bookworm_amd64.deb
|
| d12.aarch64 | PIGSTY 1.3 d12.aarch64.pg18 : postgresql-18-libx509pq postgresql-18-libx509pq_1.3-1PGSTY~bookworm_arm64.deb
| PIGSTY 1.3 d12.aarch64.pg17 : postgresql-17-libx509pq postgresql-17-libx509pq_1.3-1PGSTY~bookworm_arm64.deb
| PIGSTY 1.3 d12.aarch64.pg16 : postgresql-16-libx509pq postgresql-16-libx509pq_1.3-1PGSTY~bookworm_arm64.deb
| PIGSTY 1.3 d12.aarch64.pg15 : postgresql-15-libx509pq postgresql-15-libx509pq_1.3-1PGSTY~bookworm_arm64.deb
| PIGSTY 1.3 d12.aarch64.pg14 : postgresql-14-libx509pq postgresql-14-libx509pq_1.3-1PGSTY~bookworm_arm64.deb
|
| d13.x86_64 | PIGSTY 1.3 d13.x86_64.pg18 : postgresql-18-libx509pq postgresql-18-libx509pq_1.3-1PGSTY~trixie_amd64.deb
| PIGSTY 1.3 d13.x86_64.pg17 : postgresql-17-libx509pq postgresql-17-libx509pq_1.3-1PGSTY~trixie_amd64.deb
| PIGSTY 1.3 d13.x86_64.pg16 : postgresql-16-libx509pq postgresql-16-libx509pq_1.3-1PGSTY~trixie_amd64.deb
| PIGSTY 1.3 d13.x86_64.pg15 : postgresql-15-libx509pq postgresql-15-libx509pq_1.3-1PGSTY~trixie_amd64.deb
| PIGSTY 1.3 d13.x86_64.pg14 : postgresql-14-libx509pq postgresql-14-libx509pq_1.3-1PGSTY~trixie_amd64.deb
|
| d13.aarch64 | PIGSTY 1.3 d13.aarch64.pg18 : postgresql-18-libx509pq postgresql-18-libx509pq_1.3-1PGSTY~trixie_arm64.deb
| PIGSTY 1.3 d13.aarch64.pg17 : postgresql-17-libx509pq postgresql-17-libx509pq_1.3-1PGSTY~trixie_arm64.deb
| PIGSTY 1.3 d13.aarch64.pg16 : postgresql-16-libx509pq postgresql-16-libx509pq_1.3-1PGSTY~trixie_arm64.deb
| PIGSTY 1.3 d13.aarch64.pg15 : postgresql-15-libx509pq postgresql-15-libx509pq_1.3-1PGSTY~trixie_arm64.deb
| PIGSTY 1.3 d13.aarch64.pg14 : postgresql-14-libx509pq postgresql-14-libx509pq_1.3-1PGSTY~trixie_arm64.deb
|
| u22.x86_64 | PIGSTY 1.3 u22.x86_64.pg18 : postgresql-18-libx509pq postgresql-18-libx509pq_1.3-1PGSTY~jammy_amd64.deb
| PIGSTY 1.3 u22.x86_64.pg17 : postgresql-17-libx509pq postgresql-17-libx509pq_1.3-1PGSTY~jammy_amd64.deb
| PIGSTY 1.3 u22.x86_64.pg16 : postgresql-16-libx509pq postgresql-16-libx509pq_1.3-1PGSTY~jammy_amd64.deb
| PIGSTY 1.3 u22.x86_64.pg15 : postgresql-15-libx509pq postgresql-15-libx509pq_1.3-1PGSTY~jammy_amd64.deb
| PIGSTY 1.3 u22.x86_64.pg14 : postgresql-14-libx509pq postgresql-14-libx509pq_1.3-1PGSTY~jammy_amd64.deb
|
| u22.aarch64 | PIGSTY 1.3 u22.aarch64.pg18 : postgresql-18-libx509pq postgresql-18-libx509pq_1.3-1PGSTY~jammy_arm64.deb
| PIGSTY 1.3 u22.aarch64.pg17 : postgresql-17-libx509pq postgresql-17-libx509pq_1.3-1PGSTY~jammy_arm64.deb
| PIGSTY 1.3 u22.aarch64.pg16 : postgresql-16-libx509pq postgresql-16-libx509pq_1.3-1PGSTY~jammy_arm64.deb
| PIGSTY 1.3 u22.aarch64.pg15 : postgresql-15-libx509pq postgresql-15-libx509pq_1.3-1PGSTY~jammy_arm64.deb
| PIGSTY 1.3 u22.aarch64.pg14 : postgresql-14-libx509pq postgresql-14-libx509pq_1.3-1PGSTY~jammy_arm64.deb
|
| u24.x86_64 | PIGSTY 1.3 u24.x86_64.pg18 : postgresql-18-libx509pq postgresql-18-libx509pq_1.3-1PGSTY~noble_amd64.deb
| PIGSTY 1.3 u24.x86_64.pg17 : postgresql-17-libx509pq postgresql-17-libx509pq_1.3-1PGSTY~noble_amd64.deb
| PIGSTY 1.3 u24.x86_64.pg16 : postgresql-16-libx509pq postgresql-16-libx509pq_1.3-1PGSTY~noble_amd64.deb
| PIGSTY 1.3 u24.x86_64.pg15 : postgresql-15-libx509pq postgresql-15-libx509pq_1.3-1PGSTY~noble_amd64.deb
| PIGSTY 1.3 u24.x86_64.pg14 : postgresql-14-libx509pq postgresql-14-libx509pq_1.3-1PGSTY~noble_amd64.deb
|
| u24.aarch64 | PIGSTY 1.3 u24.aarch64.pg18 : postgresql-18-libx509pq postgresql-18-libx509pq_1.3-1PGSTY~noble_arm64.deb
| PIGSTY 1.3 u24.aarch64.pg17 : postgresql-17-libx509pq postgresql-17-libx509pq_1.3-1PGSTY~noble_arm64.deb
| PIGSTY 1.3 u24.aarch64.pg16 : postgresql-16-libx509pq postgresql-16-libx509pq_1.3-1PGSTY~noble_arm64.deb
| PIGSTY 1.3 u24.aarch64.pg15 : postgresql-15-libx509pq postgresql-15-libx509pq_1.3-1PGSTY~noble_arm64.deb
| PIGSTY 1.3 u24.aarch64.pg14 : postgresql-14-libx509pq postgresql-14-libx509pq_1.3-1PGSTY~noble_arm64.deb
|
| u26.x86_64 | PIGSTY 1.3 u26.x86_64.pg18 : postgresql-18-libx509pq postgresql-18-libx509pq_1.3-1PGSTY~resolute_amd64.deb
| PIGSTY 1.3 u26.x86_64.pg17 : postgresql-17-libx509pq postgresql-17-libx509pq_1.3-1PGSTY~resolute_amd64.deb
| PIGSTY 1.3 u26.x86_64.pg16 : postgresql-16-libx509pq postgresql-16-libx509pq_1.3-1PGSTY~resolute_amd64.deb
| PIGSTY 1.3 u26.x86_64.pg15 : postgresql-15-libx509pq postgresql-15-libx509pq_1.3-1PGSTY~resolute_amd64.deb
| PIGSTY 1.3 u26.x86_64.pg14 : postgresql-14-libx509pq postgresql-14-libx509pq_1.3-1PGSTY~resolute_amd64.deb
|
| u26.aarch64 | PIGSTY 1.3 u26.aarch64.pg18 : postgresql-18-libx509pq postgresql-18-libx509pq_1.3-1PGSTY~resolute_arm64.deb
| PIGSTY 1.3 u26.aarch64.pg17 : postgresql-17-libx509pq postgresql-17-libx509pq_1.3-1PGSTY~resolute_arm64.deb
| PIGSTY 1.3 u26.aarch64.pg16 : postgresql-16-libx509pq postgresql-16-libx509pq_1.3-1PGSTY~resolute_arm64.deb
| PIGSTY 1.3 u26.aarch64.pg15 : postgresql-15-libx509pq postgresql-15-libx509pq_1.3-1PGSTY~resolute_arm64.deb
| PIGSTY 1.3 u26.aarch64.pg14 : postgresql-14-libx509pq postgresql-14-libx509pq_1.3-1PGSTY~resolute_arm64.deb
|
构建
您可以使用 pig build 命令构建 libx509pq 扩展的 RPM / DEB 包:
安装
您可以直接安装 libx509pq 扩展包的预置二进制包,首先确保 PGDG 和 PIGSTY 仓库已经添加并启用:
使用 pig 或者是 apt/yum/dnf 安装扩展:
安装
pig
dnf
apt
创建扩展:
用法
来源:
libx509pq 向 SQL 暴露 OpenSSL X.509 证书解析。它接收 DER bytea 证书,并提取主题、签发者、有效期、序列号、密钥与签名信息、扩展、备用名称、指纹等字段。
提取多个基础字段时,x509_basic_info(der) 可避免重复解析同一证书。其他 API 可枚举扩展与名称、提取公钥、识别部分弱密钥模式,并用指定密钥验证单个证书签名。
解析或签名验证并不等于完整 PKIX 路径验证:它本身不能建立信任、主机名有效性、吊销状态、策略或当前可接受性。畸形 DER 会进入原生 OpenSSL 代码,应限制输入大小,用不可信语料做模糊和回归测试,并及时修补 PostgreSQL 与 OpenSSL。构建和运行时应固定 OpenSSL ABI,审计错误哨兵与空值语义,限制高开销函数,并基准批量解析。
这个页面对您有帮助吗?
感谢反馈,我们会据此改进这篇文档。
哪里没有解决?(可选)