npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@heisea/ca

v0.9.20

Published

数字证书客户端通讯集合

Downloads

108

Readme

heisea/ca

凯特 CA依赖于SecSeal客户端,使用浏览器的WebSocket和本地客户端服务通讯,通讯时本地服务只处理接收到一条请求,数据响应后才能浏览器才能发送下一条请求。 当前函数会将所有执行的方法添加到handles队列中,请求返回后才会执行下一个请求。 嘉恒 嘉恒采用http请求的方式,为了提高性能,所以方法都是异步执行的注意执行时的业务要求 wiki 嘉恒

/lib/cert 兼容模式,未来讲通过嘉恒提供的兼容服务,支持和各ca厂商客户端通讯

更新说明

v0.9.15 1.优化 *** index.js *** :57345修改为只有加解密使用 v0.9.14

  1. 修复 获得用户信息将不再提示需要签名,默认自动获取,保持和嘉恒一致 v0.9.13
  2. 修复 getBaseImformation 凯特获得用户信息通用名失败的问题 v0.9.12
  3. 新增 getBaseImformation 凯特获得用户信息

v0.9.11

  1. 优化 cert.js handleCertDecrypt 返回修改为和index版一致

v0.9.9

  1. 修复 *** index.js getBaseImformationJH *** 返回层级问题

v0.9.8

  1. 新增 *** index.js getBaseImformationJH *** 获得证书所有信息

v0.9.7

  1. 修复 index.js ,嘉恒只支持http请求并支撑跨域
  2. 优化 file 当使用相对地址时自动添加当前域名

v0.9.5

  1. 修复 cert.js ,获得序列号,“SerialNumber|DeviceInfo”

v0.9.4

  1. 修复 cert.js ,服务器验签失败,当“请求验签服务器失败”为成功

v.0.9.2

  1. 修复 cert.js 优化队列执行,需要在设置了mode,并且加载iframe时才允许执行

v.0.9.1

  1. 修复 cert.js open方法重复执行的问题

v.0.9.0

  1. 新增 cert.js 默认密码"111111",密码错误自动弹出密码输入框
  2. 新增 jdzyca
  3. 优化了部分代码

v.0.8.13

  1. 新增 File 嘉恒options.token 存在时访问二维码请求

v.0.8.13

  1. 新增 File 嘉恒options.token 存在时访问二维码请求

v.0.8.12

  1. 修复 嘉恒请求地址不支持https

v.0.8.11

  1. 修复 嘉恒请求地址不支持https

v.0.8.10

  1. 修复 ca.handleFile 设置ySin为云签,otpion.applySn,ySign:true必须有企业唯一标识

v.0.8.9

  1. 修复 lib/cer 设置origin为绝对地址是无法返回

v.0.8.7

  1. 优化 lib/cert 允许配置 origin 来修改 'https://apitest.jhsec.com.cn'

v.0.8.6

  1. 修改 handleFile 修复过file 报错问题

v.0.8.5

  1. 优化 lib/cert 弹窗层级优化

v.0.8.4

  1. 优化 lib/cert 预览弹窗效果

v.0.8.3

  1. 修复 lib/read 凯特 Number(state.cur) === 1||Number(state.cur) === 0 文件base重叠的问题

v.0.8.2

  1. 修复 lib/read 凯特 onmessage覆盖的问题

v.0.8.1

  1. 新增 lib/cert 添加before(this,cb)来等待后端返回配置后再执行队列

v.0.8.0

  1. 新增 lib/cert 多证书兼容方案,新增类型mode = sxca 陕西ca

v.0.7.3

  1. 优化 CA handleFormatDevCB 替换嘉恒格式化key接口

更新说明

v.0.7.2

  1. 新增 CA handleDelEmptyContainerJH 嘉恒删除空白容器
  2. 新增 CA handlePdfVerifyJH 嘉恒PDF文件验签

v.0.7.1

  1. 添加 *** Read *** 缺少依赖提示

v.0.7.0

  1. 更新客户端为20210115003
  2. 修改嘉恒判断超时时间1500
  3. 暴露window.hxCert签名客户端方法 window.hxFileCert预览客户端方法,减小 *** read *** 文件大小,使用依赖window的方式
  4. 打包时添加版本号

v.0.6.1

  1. 更新客户端为20210115001
  2. 新增 CA _CertEncryptionJH _CertDecryptJH加密解密参数数组修改为JSON字符串
  3. 修复 read 非盖章时调用/hxstamp/v2/stampFile
  4. 优化 read 指定模式逻辑,但模式切换时自动重新初始化

v.0.6.0

  1. 新增 CA handleBatchDecrypt批量解密
  2. 修复 CA SHECA替换成TOPCA

v0.5.9

  1. 优化 read 根据设备号来判断需要的客户端,因为章是存在场商的服务器上的

v0.5.8

  1. 优化 判断客户执行checkCertTime: 500,后自动进入error逻辑
  2. 修复 嘉恒服务校验随机码仅支持base64

v0.5.7

  1. 优化 _CertEncryptionKT 凯特加密证书自动补齐添加-----BEGIN CERTIFICATE-----
  2. 优化 read 预览接口替换成 /hxstamp/v2/stampFileWaitUser,并支持URL_PDF、URL_EDC传参数
  3. 修复 KT 当返回返回 undefined时自动去匹配当前队列id,并在对方错误中返回

v0.5.6

  1. 优化 新增自动记住密码
  2. 优化 批量解密嘉恒不再重复创建实例

v0.5.5 20201127

  1. 修复 根据20201122001客户端兼容
  2. 新增 默认进行版本版本判断

v0.5.4

  1. 修复 read 快速点击预览时会同时打开嘉恒和凯特
  2. 优化 read EditFile的嘉恒兼容

v0.5.3

  1. 修复 read 嘉恒多次点击预览后,每关闭一次便会弹出对应次数的窗口,目前不允许用户在没关闭时触发预览

v0.5.2

  1. 修复IE下xhr.responseType = ajaxData.dataType报错

v0.5.1

  1. 修复 read 兼容凯特后无法初始化凯特方法的问题

v0.5.0

  1. 优化 read 兼容识客户端

v0.4.1

  1. 修复IE下xhr.responseType = ajaxData.dataType报错

v0.4.0

  1. 新增:Cert方法handleCertDecrypthandleCertEncryption原有加解密兼容嘉恒加解密
  2. 新增:CertEDecrypt方法,兼容嘉恒批量解密

v0.3.6

  1. 修复:config.open凯特时重复执行

v0.3.5

  1. 修复:嘉恒连接不上客户端无提示
  2. 修复:凯特初始化没有加入到队列的问题
  3. 新增:fileRead.js OpenFileJHEditFileJH嘉恒签章方法

v0.3.4

  1. 新增:新增嘉恒CA方法 handleBaseDataJHhandleClientVersionJH
  2. 新增:兼容方法 handleCertDataToPwhandleResetPasshandleCertDN支持凯特嘉恒
  3. 优化:handleCertP10JH 添加参数UserPin,type,获取证书请求支持传密码,请求类型
  4. 优化:handleWriteCertJH 添加参数UserPin,type,写入证书信息支持传密码,写入类型

v0.3.3 1.修复:驱动判断执行顺序

v0.3.2 1.修复:嘉恒凯特的判断逻辑

v0.3.0

  1. 新增:新增嘉恒CA方法 handleHasKeyJHhandleCertP10JHhandleWriteCertJHhandleCertInfoJH
  2. 新增:兼容方法 handleCertDatahandleCertNumberhandleCertStartDatehandleCertStartDatehandleCertEndDatehandleCertNamehandleFormatDevCBhandleCertKeySn支持凯特嘉恒
  3. 新增:fileRead EditFile Promise 解决签章分包返回

v0.2.7s

  1. 优化:fileRead 添加客户端信息接收config.onmessage
  2. 新增:初始化参数{open:'连接成功调用',error:'重连失败调用'} 成功失败钩子

v0.2.6

  1. 修改:fileRead 允许添加属性参数

v0.2.4

  1. 新增:handleCertDN新增获得证书拥有者DN

v0.2.3

  1. 修改:handleUnlockUserPin参数

v0.2.1

  1. 优化:成功判断优化

v0.2.0

  1. 新增:handleResetPass新增修改密码
  2. 优化:重连次数限制

v0.1.3

  1. 优化:加解密过滤空换行 v0.1.2
  2. 优化:添加ie优先配置
  3. 优化:默认写入时证书算法为sm3SM2 v0.1.1
  4. 修复:累计队列时超时

v0.1.0

  1. 新增:handleFormatDevCBca格式化
  2. 新增:*** @heisea/ca/lib/fileRead *** edc预览
  3. 优化:handleCertP10去除默认会有制表符

v0.0.6

  1. 新增:签发信息获得和证书写入兼容版 v0.0.5
  2. 新增:签发信息获得和证书写入 v0.0.4
  3. 优化:加解密为ie浏览器时,切换为ie客户端模式进行

v0.0.3

  1. 修改:handleCertKeyDate修改为handleCertKeyInfo
  2. 优化:在执行方法遇到链接断开时,自动重建链接
  3. 修改:方法传参顺序

v0.0.2

  1. 修改:handleCertEncryption的传参顺序

v0.0.1

  1. 第一版本

兼容

  • chrome //谷歌
  • ie11 //IE
  • safari //mac safari
  • firefox // 火狐

目录说明

  • build 项目脚手架配置
  • lib 生产用代码
  • src 源码
  • index.html demo

命令

进行开发

npm start

打包出生产版本 commonjs 版本


npm run build:common

打包出生产版本 在html可引入的版本


npm run build:var

发布代码 请直接在package.json 修改版本号

  npm version <newversion> | major | minor | patch]

发布

 npm publish

安装

配置NPM 地址
npm config set registry http://nexus.heisea.cn/nexus/content/groups/npm-all/	
下载包
npm i @heisea/ca

使用

1.es6 引入方式

// 默认会挂载到window.hxCert
import CA from '@heisea/ca'

import CA from '@heisea/ca/lib/cert' // 嘉恒兼容工具,配置

2.初始化,以下为默认参数无需配置

const Cert = new CA({
    url:'ws://127.0.0.1:31212/', // 服务器地址
    // 自定义提示信息
    noCartData:'请先获得CA签名', 
    noKSEnAndSign: 'KSEnAndSignCtl.ocx控件未安装!',
    noKey: '未检测到UKey或Ukey未登陆',
    newCert: '您未使用新版证书或未正确安装证书驱动',
    // 优先执行 
    ieFn:["Batch_EnvelopeDataByP7","Batch_UnenvelopeDataByP7",'CertId'],
    timeout:15000, //超时时间

})

配置说明

属性名 | 类型 | 说明 --- | --- | --- reconnection | Number | 失败重连次数,每次失败 open | Function | 首次连接成功调用,返回当前实例 error | Function | 重连失败调用 noCartData | String | 非必须 缺少签名提示 noKSEnAndSign | String | 非必须 缺少驱动提示 noKey | String | 非必须 未检测到证书 newCert | String | 缺少驱动 noUpdate | String| 超时提示 noUserPass | String | 口令错误 timeout |Number |超时时间ms ieFn | Array | 优先执行IE方法 { Batch_EnvelopeDataByP7:加密, Batch_UnenvelopeDataByP7:解密,KSSKF_CreateCertReqCB:正式请求,KSSKF_GetDevSNCB:设备系列号,CertId:设备唯一码(ie), KSSKF_WriteCertCB:写入正式书} 默认加密加解密(极大的性能提升)

3.修改错误提示方式

// 修改错误提示
CA.prototype.alert = (err)=>{
    if(window.App&&window.App.$message){
        window.App.$message.error(err)
    }else{
        console.error(err)
    }
}

4.方法使用

 Cart.handleCertData().then(res => {
    console.log(res)
})

ca 参数

属性名 | 类型 | 说明 --- | --- | --- url | String | 本地服务器地址 默认为'ws://127.0.0.1:31212/' noCartData | String | 缺少CA签名提示 noKSEnAndSign | String | 客户端为安装 noKey | String | 未检测到UKey newCert | String | 未检测到UKey mode | String | 指定当前客户JH嘉恒、KT凯特 sxca 陕西ca geca格尔 timeout| Number|超时时间 15000 reconnection | Number | 重连次数 versionJH | String | 嘉恒版本号 checkCertTime | Number | 检查客户端超时时间 before | Function(cert,cb) | /lib/cert 专用,cert 当前实例,cb回调执行回调后才开始执行队列请求 ifrmePath| Srting | /lib/cert 专用,设置cert.html 的地址

方法Promise

目前除解密外,都需要先获取CA签名,错误说错误会返回:

{ 
    PluginRequest: "请求别名",
    PluginRequestID: "队列表号",
    PluginResponse: "错误原因",
    PluginResponseValue: "返回数据"
}

名称 | 兼容 | 参数 | 说明 --- | --- |---| --- handleCertData | | 随机数(String) | 通过随机数生成ca的签名,并保存到实例中,在之后的操作可以不需要传 {data:{ InData:'实例的随机', cartData:"加密的随机数",cart:"签名"}} handleCertInfo | 凯特 |信息代码(String) 签名(Sting) | 根据解析信息码获得对应的用户数据 {data:"数据"} handleCertInfoJH | 嘉恒 | 对应键值 |获得证书信息 data:{CommonName:'通用名',DeviceInfo:设备号、介质号,SerialNumber:序列号,ValidEndTime:结束数据,ValidStartTime:结束时间}| handleCertNumber | | 签名(Sting)| 获得系列号{data:"数据"} handleCertName | |签名(Sting)| 获得通用名 {data:"数据"} handleCertStartDate| | 签名(Sting)| 有效期开始时间 {data:"数据"} handleCertEndDate | |签名(Sting)| 有效期结束时间 {data:"数据"} handleFormatDevCB|嘉恒 凯特(v6.1)| 嘉恒 无 ; 配置(object 必填 bAdmin:非必填 操作员类型 0非管理员,DevSN:非必填 设备系列号,UserPin:用户口令,)|格式化清空设备 handleCertAbout |嘉恒 凯特(v6.1) |配置(Object,非必须)| 设备信息 {data:"Array"}arr[0]通用名,arr[1]:证书源,arr[2]:有效开始,arr[3]:有效结束,arr[4]:省(s),arr[5]:市(l),arr[6]:机构名称(o),arr[7]部门(ou),arr[8]:证书唯一码值不存在时为空 handleCertP10 | 凯特(6.1) |经办人(string) 企业(String) userPW(用户口令) 配置(object 非必须 l:市,s:省,c:国,OU,bAdmin:操作员类型 1 管理员,DevSN:设备系列号)| 获得正式请求 handleCertP10JH | 嘉恒 | param.csrInfoBase64 Base64编码的证书信息字符串,由服务端接口返回,param.type 请求类型 1:新证、2:延期、3:变更 | 获得请求 handleCertKeySn | 凯特(6.1) |无| 获得证书系列号 handleCertId | 凯特(IE) |密码(非必填String)| 获得证书唯一码bjca的证书源是没有的 handleWriteCert | 凯特6.1 | 配置(object 必填alg:证书签名算法 ie必填, bAdmin:非必填 操作员类型 1管理员,DevSN:设备系列号,signCert:证书,encPrvKey:私钥,encCert:证书,)| 证书写入 {data:""} handleWriteCertJH | 嘉恒 | { caType:'目前固定传TOPCA,由服务端接口返回',signCertBase64: '后端签发出的签名证书,由服务端接口返回',encryptCertBase64: '后端签发出的加密证书,由服务端接口返回',encryptPrivateKeyBase64: '后端签发出的加密证书私钥,由服务端接口返回',passwordBase64: 'key登录密码',type:'写入类型,1:新证、2:延期、3:变更'}; | 写入参数 handleCertEncryption | 兼容 | 内容(String,必须,Array) 签名(Sting) | 加密 {data:"数据"||['数据','数据1']} ,注意凯特客户端不支持数组 handleCertDecrypt | 兼容 |内容(String,必须,Array) | 解密 {data:"数据"||['数据','数据1']} 注意凯特客户端不支持数组 handleResetPass |嘉恒 凯特 |旧密码,新密码 | 修改密码 handleCertDataToPw |嘉恒 凯特 |密码 | 通过密码获取签名 handleClientVersionJH |嘉恒 |无 | 获取客户端版本号 handleBaseDataJH |嘉恒 | 签名(Sting) | 获取证书基本信息 handleBatchDecrypt| 嘉恒 凯特 | 密文(Array) |{"data":{"0":"解密1","1":"解密2"},"errorList":[ 错误 ]} handleDelEmptyContainerJH |嘉恒 | 用户口令 | 删除空白容器 handlePdfVerifyJH |嘉恒 | {pdfId:'',pdfBase64:''} [{pdfId:'',pdfBase64:''}] | PDF文件验签 传入参数为Array,返回参数为Array,传入参数为Object,返回参数为Object {PdfId:'',VerifySignResult:''} 请求结果VerifySignResult: 1验签成功 0验签失败 handleFile | 兼容 | url | 盖章,返回 {data:盖完章的base64 pdf,fileType:类型} getBaseImformation| 兼容 | 字段(String1),签名(String2) | String1 根据字段返回参数,String2 签名 默认获得已经或取的签名

扩展src/fileRead

EDC预览插件

1.引入

// 默认 会挂载到 window.HxFileCert 
import OpenFile from '@heisea/ca/lib/read';  

1.1 凯特IE 多窗口依赖 webpack.config.js,ie下会打开一个页面

   new CopyWebpackPlugin([
        // 复制本地文件
        {
            from: path.resolve(__dirname, '@heisea/ca/lib/read.html'),
            to: path.resolve(__dirname, '../dist/read.html') //默认页面地址
        }
    ]),

1.2 嘉恒兼容模式,支持多客户端情况,但必须把cert.html打包到根目录

   new CopyWebpackPlugin([
        // 复制本地文件
        {
            from: path.resolve(__dirname, '@heisea/ca/lib/cert.html'),
            to: path.resolve(__dirname, '../dist/cert.html') //默认页面地址
        }
    ]),

2.使用

const url = 'http://bucket-cert-test.oss-cn-shanghai.aliyuncs.com/2019/12/55afadca-b348-4fa9-acea-8fd094f0a0ec.edc'
 OpenFile(url,{
     SetSealToolVis:true
 },config)

参数 | 说明 --- | --- url| 地址 option|更多查看配置 {SetSealToolVis:true} 显示盖章工具否则为预览不显示盖章工具 config|配置 非必填

Config

参数 | 类型 | 说明 --- | --- |--- noSeal| String |未安装驱动提醒 readPath| String |read.html 地址 ie| Boolean |是否启用ie模式 false onmessage | Functon | 客户端返回处理,{msg:'返回信息',data:'base64||取消为空'} mode | String | ’JH‘ 嘉恒 “KT” 凯特,目前会优先匹配嘉恒

Option 凯特

参数 | 类型 |说明 --- |--- | --- token | String | 当存在时使用二维码版本,必须通过手机扫描二维码获得服务返回的token ySign | Boolean | 是否启用云签章 applySn | String | 企业信息唯一标识 OutFile | Sting | 默认'000',输出edc保存路径,如果传”000”:自动获取系统临时目录 AutoCloseDocument | Boolean | AutoCloseDocumt: true保存后是否要自动关闭exe,否则手动关闭 rightAllButton | Number | 以二进制的方式来进行控制,1为隐藏,0为显示,初始第1位为预留位。11个按钮如下: 1保存,2抄送,3盖章,4批量盖章,5签批,6撤消,7验证,8印章管理,9系统设置,10打印,11退出 例:我要保留验证、系统设置、打印、退出4个按钮,其余按钮隐藏,第1位填0,所得二进制值为000101111110,转成十字制为382 SetDocSignType | Number | 0为默认,1为只签名,2为加密 SetEditPdf | Boolean | false不允许编辑,true允许,默认不允许编辑 SetSealToolVis | Boolean | true 显示盖章工具栏,false 隐藏盖章工具栏 SetToolButtonVis | Number |-1:PDF工具栏不可见,具体详见前面文档介绍 GetEDCB64 | Boolean | true:输出edc文件后做B64编码,否则不做编码。 SetPrintable | Boolean | true为可打印,false为不可打印,默认状态为不可打印 PutIsPrin | Boolean | true 生成的EDC文件可以打印,否则不能打印 PutIsExportBlack | Boolean | true 生成的EDC文件可以抄送,否则不能抄送 PutIsCento | Boolean | true 生成的EDC文件可以摘录,否则不能摘录 PrintOut | Boolean | 默认为弹框自己选择打印机或者传参 type=0|sPrinter=""|lCount=1|lFromPage=1|lToPage=maxPage指定打印机传参:type=1|sPrinter=Foxit PDF Printer|lCount=1|lFromPage=1|lToPage=maxPage默认打印机:type=2|sPrinter=""|lCount=1|lFromPage=1|lToPage=maxPage;

解析代码(用户信息)

参数 | 说明 --- | --- 0x00000001|证书版本 0x00000002|证书序列号 0x00000003|证书签名算法标识 0x00000004|证书颁发者国家(C) 0x00000005|证书颁发者组织名(O) 0x00000006|证书颁发者部门名(OU) 0x00000007|证书颁发者所在的省、自治区、直辖市(S) 0x00000008|证书颁发者通用名称(CN) 0x00000009|证书颁发者所在的城市、地区(L) 0x00000010|证书颁发者Email 0x00000011|证书有效期:起始日期 0x00000012|证书有效期:终止日期
0x00000013|证书拥有者国家(C ) 0x00000014|证书拥有者组织名(O) 0x00000015|证书拥有者部门名(OU) 0x00000016|证书拥有者所在的省、自治区、直辖市(S) 0x00000017|证书拥有者通用名称(CN) 0x00000018|证书拥有者所在的城市、地区(L) 0x00000019|证书拥有者Email 0x00000020|证书颁发者DN 0x00000021|证书拥有者DN 0x00000022|证书公钥信息 0x00000023|证书扩展项信息 0x00000024|颁发者密钥标识符 0x00000025|证书持有者密钥标识符 0x00000026|密钥用途 0x00000027|私钥有效期 0x00000028|证书策略 0x00000029|策略映射 0x00000030|基本限制 0x00000031|策略限制 0x00000032|扩展密钥用途 0x00000033|CRL发布点 0x00000034|netscape属性 0x00000035|证书实体唯一标识 0x00000036|个人身份证号码 0x00000037|个人社会保险号 0x00000038|企业工商注册号 0x00000039|企业组织机构代码 0x00000040|税务登记证号

嘉恒

服务地址:http://127.0.0.1:57344/zkha/seclib/getBaseImformation { "ResultCode":"0", //0成功/非0失败 "ResultMsg":"Success", //结果信息(成功:Success、失败:其他值) "ResultTip":"成功", //调用结果说明(中文为UTF-8编码) "Version":"",// 证书版本 "Serial":"",// 证书序列号 "SignAlg":"",// 证书签名算法标识 "IssuerC":"",// 证书颁发者国家(C) "IssuerO":"",// 证书颁发者组织名(O) "IssuerOU":"",// 证书颁发者部门名(OU) "IssuerS":"",// 证书颁发者所在的省、自治区、直辖市(S) "IssuerCN":"",// 证书颁发者通用名称(CN) "IssuerL":"",// 证书颁发者所在的城市、地区(L) "IssuerE":"",// 证书颁发者Email "NotBefore":"",// 证书有效期:起始日期 "After":"",// 证书有效期:终止日期 "SubjectC":"",// 证书拥有者国家(C ) "SubjectO":"",// 证书拥有者组织名(O) "SubjectOU":"",// 证书拥有者部门名(OU) "SubjectS":"",// 证书拥有者所在的省、自治区、直辖市(S) "SubjectCN":"",// 证书拥有者通用名称(CN) "SubjectL":"",// 证书拥有者所在的城市、地区(L) "SubjectE":"",// 证书拥有者Email "IssuerDN":"",// 证书颁发者DN "SubjectDN":"",// 证书拥有者DN "Pubkey":"",// 证书公钥信息 "Extensions":"",// 证书扩展项信息 "AuthoritykeyIDentifier":"",// 颁发者密钥标识符 "SubjectKeyIdentifier":"",// 证书持有者密钥标识符 "TaxationNumber":"",// 证书实体唯一标识 "OrganizationCode":"",// 企业组织机构代码 "IcRegistrationNumber":"",// 个人社会保险号 "InuranceNumber":"",// 企业工商注册号 "IdentifyCardNumber":"",// 个人身份证号码 "UniqueId":"",// 税务登记证号 }