szcaSDK

来自于:开发者立即使用

sofInitialize sofRequestCert sofGetCertSerialNo sofGetCertBase64 sofValidataCertificate sofSignDataByP1 sofVerifySignedDataByP1 sofSignDataByP7Attach sofVerifySignedDataByP7Attach sofGenRandom sofWipeData sofGetCertInfo

概述

szcaSDK封装了移动安全中间件对于证书的获取和数据的验签

使用此模块之前建议先配置 config.xml 文件,配置完毕,需通过云端编译生效,配置方法如下:

  • 名称:szca
  • 参数:license、CAServerUrl、CACertificateUrl、certSource、keyType
  • 配置示例:
  1. <feature name="szca">
  2. <param name="license" value="cce9413b2f9f46de1a40704cff13b81e41944f8bffbd423fb3d69df77ed232cffa6ba475bea460f5d2ed23c496f42f88cd14272604637f504f6fad07eddaca751c227e916cbeaf4c603ef06041f54928b75a3262a3baa347a3cfd5615bb8222d4e059ab864709dcff926e24333bbfe7d8d7bf7a41cfac4787ba6276466fb5894c243f42c9ee4ac0eb6b619cefc95c1b07ec954668b1f121f9c37ff7e16a64867d5a77e53bc770896f467619ae54107b42e6a0c45ca9f0b95512e9f9a8764a9639bf925313d10805ac62dcd24607934ba67d76ce481d80e609e375d7fc038efeffdb7d66776f5503de1fc08534180cb6fbad9cbdbf567463e90ca58308bc8618f835eb5b59808372027088f2eb75fd285450bdb8e99c5a2aba1a672856e9648d37330a49154a0adaac9ab46bd1096a0e4e566215b15079c418854250ce9abd0ddb3ddabbb54debad96bec14e41a41dbb83e439a0a1ea58cdda945f8f155a572d986576467d72f2ada35a9debf35b442abd9b2587a0d9748bd6583f0b5d567bb0422aec5755f0642c16aa7a81cfe40095a2df6fe95c48957925727dab6dd1a3a609cc3dbb2cd79ec8b952498c6a78ce23507bd8a1707b304bb17cf723564554fe158f9bcd05a5f3097ee09708a3826aca8b24b90ef4d1730061c2a712350e265d7fde411f1f9526d6280bf5c34a8764932e59ed247fa827c029534a206905acbb7"/>
  3. <param name="CAServerUrl" value="http://218.17.161.11:7083/wspool3/certappservlet"/>
  4. <param name="CACertificateUrl" value="http://218.17.161.11:8083/ocsp/service/ocspCertManage?wsdl"/>
  5. <param name="certSource" value="bss"/>
  6. <param name="keyType" value="SM2"/>
  7. </feature>
  • 字段描述:

    license:(必须配置)证书码。(需要应用的签名和包名)

    CAServerUrl:(必须配置)证书源的通信地址。

    CACertificateUrl:(必须配置)证书有效性查询地址

    certSource:证书源。

    keyType:(必须配置)密钥类型,“RSA”或是“SM2”

    注:license,CAServerUrl和CACertificateUrl的获取可通过电话咨询韩先生:135-0152-9815

sofInitialize

初始化

sofInitialize({params},function(ret, err))

params

account:

  • 类型:字符串
  • 描述:账号。

password:

  • 类型:字符串
  • 描述:密码

function(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status: true //布尔型;true||false
  3. msg: 返回初始化成功信息
  4. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status: false
  3. msg: 返回失败信息
  4. }

示例代码

  1. var szcaSDK = api.require('szcaSDK');//需要先引入模块
  2. var param = {
  3. account: accountValue,
  4. password: passwordValue
  5. }
  6. //初始化证书
  7. szcaSDK.sofInitialize(param, function (ret, err) {
  8. if (ret.status) {
  9. alert(ret.msg);
  10. } else {
  11. alert(err.msg);
  12. }
  13. };

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

sofRequestCert

下载证书

sofRequestCert({params} , function (ret, err))

params

authCode:

  • 类型:字符串
  • 描述:授权码

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:true
  3. msg: 返回证书获取成功信息
  4. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:false
  3. msg: 返回证书获取失败信息
  4. }

示例代码

  1. szcaSDK.sofRequestCert({
  2. authCode:'155211949017037963'
  3. } , function (ret, err) {
  4. if (ret.status) {
  5. alert(ret.msg);
  6. } else {
  7. alert(err.msg);
  8. }
  9. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

sofGetCertSerialNo

获取用户证书的序列号

sofGetCertSerialNo(function (ret, err))

function(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:true
  3. msg:获取序列号成功
  4. certSerialNo:xxxxxxxxxxx
  5. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:false
  3. msg:获取序列号失败
  4. }

示例代码

  1. szcaSDK.sofGetCertSerialNo(function (ret, err) {
  2. if(ret.status){
  3. alert(ret.certSerialNo);
  4. }else{
  5. alert(err.msg);
  6. }
  7. });

可用性

Android系统

可提供的1.0.0及更高版本

sofGetCertBase64

获取证书

sofGetCertBase64({params},function (ret, err))

params

certType:

  • 类型:整型
  • 描述:证书类型 1:签名证书 2:加密证书

function (ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:true
  3. msg:获取用户证书成功
  4. certBase64:xxxxxxxxxxx
  5. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:false
  3. msg:返回失败信息
  4. }

示例代码

  1. szcaSDK.sofGetCertBase64(function (ret, err) {
  2. if(ret.status){
  3. alert(ret.certBase64);
  4. }else{
  5. alert(err.msg);
  6. }
  7. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

sofValidataCertificate

查询证书有效性

sofValidataCertificate(param, function (ret, err))

params

certSn:

  • 类型:字符串
  • 描述:用户证书序列号

function(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:true
  3. msg:证书有效
  4. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:false
  3. msg:证书已过期
  4. }

示例代码

  1. var param = {
  2. certSn: certSerialNo
  3. }
  4. szcaSDK.sofValidataCertificate(param, function (ret, err) {
  5. if (ret.status) {
  6. alert(ret.msg);
  7. } else {
  8. alert(err.msg);
  9. }
  10. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

sofSignDataByP1

P1签名

sofSignDataByP1(param, function (ret, err))

params

srcStr:

  • 类型:字符串
  • 描述:要签名的源数据

function (ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:true
  3. msg:返回签名成功信息
  4. signature:xxxxxx //签名后的数据
  5. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:false
  3. msg:返回签名失败信息
  4. }

示例代码

  1. var param = {
  2. srcStr: srcOriginData
  3. }
  4. //P1格式签名
  5. szcaSDK.sofSignDataByP1(param, function (ret, err) {
  6. if(ret.status){
  7. signData = ret.signature;
  8. alert(ret.signature);
  9. }else{
  10. alert(err.msg);
  11. }
  12. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

sofVerifySignedDataByP1

P1格式验签

sofVerifySignedDataByP1(param, function (ret, err))

params

signature:

  • 类型:字符串
  • 描述:P1签名后的数据

srcStr

  • 类型:字符串
  • 描述:要验签的原始数据

certBase64

  • 类型:字符串
  • 描述:证书base64(本地验签可不传)

function(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:true
  3. msg:返回验签成功信息
  4. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:false
  3. msg:返回验签失败信息
  4. }

示例代码

  1. var param = {
  2. signature: signData,
  3. srcStr: srcOriginData
  4. }
  5. //P1格式验签
  6. szcaSDK.sofVerifySignedDataByP1(param,
  7. function (ret, err) {
  8. if(ret.status){
  9. alert(ret.msg);
  10. }else{
  11. alert(err.msg);
  12. }
  13. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

sofSignDataByP7Attach

P7签名

sofSignDataByP7Attach(param, function (ret, err))

params

srcStr:

  • 类型:字符串
  • 描述:原始数据

detach:

  • 类型:布尔值
  • 描述:签名里是否带原文(iOS需要传,Android不需要,Android默认不带原文)

function (ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:true
  3. msg:返回签名成功信息
  4. signature:xxxxxx //签名后的数据
  5. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:false
  3. msg:返回签名失败信息
  4. }

示例代码

  1. var param = {
  2. srcStr: srcOriginData
  3. detachtrue
  4. }
  5. //P7格式签名
  6. szcaSDK.sofSignDataByP7Attach(param, function (ret, err) {
  7. if(ret.status){
  8. signData = ret.signature;
  9. alert(ret.signature);
  10. }else{
  11. alert(err.msg);
  12. }
  13. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

sofVerifySignedDataByP7Attach

P7格式验签

sofVerifySignedDataByP7Attach(param, function (ret, err))

params

signature:

  • 类型:字符串
  • 描述:P7签名后的数据

srcStr:

  • 类型:字符串
  • 描述:原文(iOS需要传,Android不需要)

function(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:true
  3. msg:返回验签成功信息
  4. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:false
  3. msg:返回验签失败信息
  4. }

示例代码

  1. var param = {
  2. signDataBase64: signData,
  3. srcStr:'深圳CA' //iOS需要传,Android不需要
  4. }
  5. //P1格式验签
  6. szcaSDK.sofVerifySignedDataByP7Attach(param,
  7. function (ret, err) {
  8. if(ret.status){
  9. alert(ret.msg);
  10. }else{
  11. alert(err.msg);
  12. }
  13. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

sofGenRandom

生成随机数

sofGenRandom(function (ret, err))

function (ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:true
  3. msg:返回生成随机数成功信息
  4. random:xxxxxx
  5. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:false
  3. msg:返回生成随机数失败信息
  4. }

示例代码

  1. szcaSDK.sofGenRandom(
  2. function (ret, err) {
  3. if (ret.status) {
  4. alert(ret.random);
  5. } else {
  6. alert(err.msg);
  7. }
  8. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

sofWipeData

清空内存数据

sofWipeData()

示例代码

  1. sofWipeData();

可用性

iOS系统

可提供的1.0.0及更高版本

sofGetCertInfo

获取用户证书信息

sofGetCertInfo(params , function (ret, err))

params

certBase64:

  • 类型:字符串
  • 描述:获取证书Base64

function(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:true
  3. msg:获取序列号成功
  4. serialNum:xxxxxxxxxxx //证书序列号
  5. subject:xxxxx //申请人主题
  6. version:xxxx //版本
  7. subjectName:xxxx //申请人名称
  8. issure:xxxx //颁发机构主题
  9. issureName:xxxxx //颁发机构名称
  10. beforeTime:xxxx //有效期起始时间
  11. afterTime:xxxx //有效期结束时间
  12. algorithm:xxxx //证书算法
  13. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status:false
  3. msg:获取失败
  4. }

示例代码

  1. szcaSDK.sofGetCertInfo({
  2. certBase64: certBase64Srting
  3. },function(ret,err) {
  4. if (ret.status) {
  5. alert('证书申请人主题主题:' + ret.subject + '证书序列号:' + ret.serialNum);
  6. certSnNum = ret.serialNum;
  7. } else {
  8. alert(ret.msg);
  9. }
  10. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本