XiPKI开源 PKI 实现

联合创作 · 2023-09-30 08:45

XiPKI (eXtensible sImple Public Key Infrastructure) 是一个高度可伸缩和高性能的开源 PKI 实现(CA and OCSP responder).


要求:



  • OS:Linux、Windows、MacOS

  • JRE/JDK 8 (build 162+),9、10、11、12、13

  • 数据库:DB2、MariaDB、MySQL、Oracle、PostgreSQL、H2、HSQLDB


特性:



  • CA (Certification Authority)



    • X.509 Certificate v3 (RFC 5280)

    • X.509 CRL v2 (RFC 5280)

    • EdDSA Certificates (RFC 8410, RFC 8032)

    • Diffie-Hellman Proof-of-Possession Algorithms (RFC 6955)

    • SCEP (draft-gutmann-scep-00, draft-nourse-scep-23)

    • EN 319 411 (eIDAS)

    • EN 319 412 (eIDAS)

    • 支持的数据库:DB2, MariaDB, MySQL, Oracle, PostgreSQL, H2, HSQLDB

    • Direct 和 indirect CRL

    • FullCRL 和 DeltaCRL

    • 定制扩展以在CRL中嵌入证书

    • CMP (RFC 4210 和 RFC 4211)

    • 用于指定自定义证书配置文件的API

    • 支持基于JSON的证书配置文件

    • 用于指定自定义发布者的API,例如LDAP和OCSP响应者

    • OCSP响应者的发布者支持

    • 证书的公钥类型

      • RSA

      • EC

      • DSA

      • Ed25519, Ed448

      • X25519, X448

      • SM2


    • 证书的签名算法

      • Ed25519, Ed448

      • SM3withSM2

      • SHA3-*withRSA: where * is 224, 256, 384 and 512

      • SHA3-*withRSAandMGF1: where * is 224, 256, 384 and 512

      • SHA3-*withECDSA: where * is 224, 256, 384 and 512

      • SHA3-*withDSA: where * is 224, 256, 384 and 512

      • SHA*withRSA: where * is 1, 224, 256, 384 and 512

      • SHA*withRSAandMGF1: where * is 1, 224, 256, 384 and 512

      • SHA*withECDSA: where * is 1, 224, 256, 384 and 512

      • SHA*withPlainECDSA: where * is 1, 224, 256, 384 and 512

      • SHA*withDSA: where * is 1, 224, 256, 384 and 512



  • X.509扩展的本机支持(通过将其配置为blob,可以支持其他扩展)



    • AdditionalInformation (German national standard CommonPKI)

    • Admission (German national standard CommonPKI)

    • AuthorityInformationAccess (RFC 5280)

    • AuthorityKeyIdentifier (RFC 5280)

    • BasicConstraints (RFC 5280)

    • BiometricInfo (RFC 3739)

    • CertificatePolicies (RFC 5280)

    • CRLDistributionPoints (RFC 5280)

    • CT Precertificate SCTs (RFC 6962)

    • ExtendedKeyUsage (RFC 5280)

    • FreshestCRL (RFC 5280)

    • InhibitAnyPolicy (RFC 5280)

    • IssuerAltName (RFC 5280)

    • KeyUsage (RFC 5280)

    • NameConstraints (RFC 5280)

    • OcspNoCheck (RFC 6960)

    • PolicyConstrains (RFC 5280)

    • PolicyMappings (RFC 5280)

    • PrivateKeyUsagePeriod (RFC 5280)

    • QCStatements (RFC 3739, eIDAS standard EN 319 412)

    • Restriction (German national standard CommonPKI)

    • SMIMECapabilities (RFC 4262)

    • SubjectAltName (RFC 5280)

    • SubjectDirectoryAttributes (RFC 3739)

    • SubjectInfoAccess (RFC 5280)

    • SubjectKeyIdentifier (RFC 5280)

    • TLSFeature (RFC 7633)

    • ValidityModel (German national standard CommonPKI)

    • GM/T 0015 IdentityCode (个人身份标识码, Chinese Standard GM/T 0015-2012)

    • GM/T 0015 InsuranceNumber (个人社会保险号, Chinese Standard GM/T 0015-2012)

    • GM/T 0015 ICRegistrationNumber (企业工商注册号, Chinese Standard GM/T 0015-2012)

    • GM/T 0015 OrganizationCode (企业组织机构代码, Chinese Standard GM/T 0015-2012)

    • GM/T 0015 TaxationNumber (企业税号, Chinese Standard GM/T 0015-2012)


  • 在一个软件实例中管理多个CA


  • 支持数据库集群


  • 同一CA的多个软件实例(都可以处于活动模式)


  • 通过嵌入式OSGi命令对CA管理的本地支持


  • 用于指定CA管理的API,例如GUI


  • 数据库工具(导出和导入CA数据库)简化了数据库的切换,XiPKi的升级以及从其他CA系统到XiPKI CA的切换。


  • 客户端注册,撤销,撤销和​​删除证书,以生成和下载CRL


  • 除了数据库的配置外,CA的所有配置都保存在数据库中


  • OCSP Responder



    • OCSP Responder (RFC 2560 and RFC 6960)

    • 支持Common PKI 2.0

    • 管理多个证书状态源

    • 支持基于XiPKI CA数据库的证书状态源

    • 支持XiPKI CA发布的基于OCSP数据库的证书状态源

    • 支持证书状态源CRL和DeltaCRL

    • 支持EJBCA发布的证书状态源

    • 支持专有证书来源的API

    • 支持未签名和已签名的OCSP请求

    • 同一OCSP签名者和证书状态源的多个软件实例(都可以处于活动模式)。

    • 支持的数据库:DB2,MariaDB,MySQL,Oracle,PostgreSQL,H2,HSQLDB

    • 数据库工具(导出和导入OCSP数据库)简化了数据库的切换,XiPKi的升级以及从其他OCSP系统到XiPKI OCSP的切换。

    • 客户端发送OCSP请求


  • SCEP



    • 支持的SCEP版本

      • draft-gutmann-scep-00

      • draft-nourse-scep-23



  • 工具包(适用于PKCS#12和PKCS#11令牌)



    • 生成令牌中的RSA,EC和DSA密钥对

    • 从令牌中删除密钥对和证书

    • 更新令牌中的证书

    • 生成CSR(PKCS#10请求)

    • 从令牌导出证书


  • 对于CA和OCSP响应者



    • 支持PKCS#12和JCEKS密钥库

    • 支持PKCS#11设备,例如HSM

    • 使用自定义密钥类型的API,例如智能卡

    • 高性能

    • 支持健康检查


  • 对于CA,OCSP响应程序和工具包



    • 解析密码的API

    • 支持PBE(基于密码的加密)密码解析器

      • 所有密码均可通过主密码进行加密


    • 支持OBF(如码头)密码解析器


浏览 133
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报