szcaSDK

概述

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

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

  • 名称:szca
  • 参数:license、CAServerUrl、CACertificateUrl、certSource、keyType
  • 配置示例:
  <feature name="szca">
    <param name="license"       value="cce9413b2f9f46de1a40704cff13b81e41944f8bffbd423fb3d69df77ed232cffa6ba475bea460f5d2ed23c496f42f88cd14272604637f504f6fad07eddaca751c227e916cbeaf4c603ef06041f54928b75a3262a3baa347a3cfd5615bb8222d4e059ab864709dcff926e24333bbfe7d8d7bf7a41cfac4787ba6276466fb5894c243f42c9ee4ac0eb6b619cefc95c1b07ec954668b1f121f9c37ff7e16a64867d5a77e53bc770896f467619ae54107b42e6a0c45ca9f0b95512e9f9a8764a9639bf925313d10805ac62dcd24607934ba67d76ce481d80e609e375d7fc038efeffdb7d66776f5503de1fc08534180cb6fbad9cbdbf567463e90ca58308bc8618f835eb5b59808372027088f2eb75fd285450bdb8e99c5a2aba1a672856e9648d37330a49154a0adaac9ab46bd1096a0e4e566215b15079c418854250ce9abd0ddb3ddabbb54debad96bec14e41a41dbb83e439a0a1ea58cdda945f8f155a572d986576467d72f2ada35a9debf35b442abd9b2587a0d9748bd6583f0b5d567bb0422aec5755f0642c16aa7a81cfe40095a2df6fe95c48957925727dab6dd1a3a609cc3dbb2cd79ec8b952498c6a78ce23507bd8a1707b304bb17cf723564554fe158f9bcd05a5f3097ee09708a3826aca8b24b90ef4d1730061c2a712350e265d7fde411f1f9526d6280bf5c34a8764932e59ed247fa827c029534a206905acbb7"/>
        <param name="CAServerUrl" value="http://218.17.161.11:7083/wspool3/certappservlet"/>
        <param name="CACertificateUrl" value="http://218.17.161.11:8083/ocsp/service/ocspCertManage?wsdl"/>
        <param name="certSource" value="bss"/>
        <param name="keyType" value="SM2"/>
  </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对象
  • 内部字段:
{
    status: true      //布尔型;true||false
    msg: 返回初始化成功信息
}

err:

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

示例代码

var szcaSDK = api.require('szcaSDK');//需要先引入插件
var param = {
        account: accountValue,
        password: passwordValue
    }
    //初始化证书
    szcaSDK.sofInitialize(param, function (ret, err) {
        if (ret.status) {
            alert(ret.msg);
        } else {
            alert(err.msg);
        }
    };

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

sofRequestCert

下载证书

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

params

authCode:

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

ret:

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

err:

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

示例代码

 szcaSDK.sofRequestCert({
   authCode:'155211949017037963' 
 } , function (ret, err) {
                        if (ret.status) {
                            alert(ret.msg);
                        } else {
                            alert(err.msg);
                        }
                    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

sofGetCertSerialNo

获取用户证书的序列号

sofGetCertSerialNo(function (ret, err))

##function(ret, err)

ret:

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

err:

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

示例代码

szcaSDK.sofGetCertSerialNo(function (ret, err) {
    if(ret.status){
        alert(ret.certSerialNo);
    }else{
        alert(err.msg);
    }
});

可用性

Android系统

可提供的1.0.0及更高版本

sofGetCertBase64

获取证书

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

params

certType:

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

##function (ret, err)

ret:

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

err:

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

示例代码

szcaSDK.sofGetCertBase64(function (ret, err) {
        if(ret.status){
            alert(ret.certBase64);
        }else{
            alert(err.msg);
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

sofValidataCertificate

查询证书有效性

sofValidataCertificate(param, function (ret, err))

params

certSn:

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

##function(ret, err)

ret:

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

err:

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

示例代码

var param = {
                certSn: certSerialNo
            }
            szcaSDK.sofValidataCertificate(param, function (ret, err) {
                if (ret.status) {
                    alert(ret.msg);
                } else {
                    alert(err.msg);
                }
            });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

sofSignDataByP1

P1签名

sofSignDataByP1(param, function (ret, err))

params

srcStr:

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

##function (ret, err)

ret:

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

err:

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

示例代码

var param = {
        srcStr: srcOriginData
    }
//P1格式签名
szcaSDK.sofSignDataByP1(param, function (ret, err) {
    if(ret.status){
        signData = ret.signature;
        alert(ret.signature);
    }else{
        alert(err.msg);
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

sofVerifySignedDataByP1

P1格式验签

sofVerifySignedDataByP1(param, function (ret, err))

params

signature:

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

srcStr

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

certBase64

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

##function(ret, err)

ret:

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

err:

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

示例代码

var param = {
        signature: signData,
        srcStr: srcOriginData
    }

//P1格式验签
szcaSDK.sofVerifySignedDataByP1(param,
    function (ret, err) {
        if(ret.status){
            alert(ret.msg);
        }else{
            alert(err.msg);
        }

    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

sofSignDataByP7Attach

P7签名

sofSignDataByP7Attach(param, function (ret, err))

params

srcStr:

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

detach:

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

##function (ret, err)

ret:

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

err:

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

示例代码

var param = {
        srcStr: srcOriginData
        detach:true
    }

//P7格式签名
szcaSDK.sofSignDataByP7Attach(param, function (ret, err) {
    if(ret.status){
        signData = ret.signature;
        alert(ret.signature);
    }else{
        alert(err.msg);
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

sofVerifySignedDataByP7Attach

P7格式验签

sofVerifySignedDataByP7Attach(param, function (ret, err))

params

signature:

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

srcStr:

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

##function(ret, err)

ret:

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

err:

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

示例代码

var param = {
        signDataBase64: signData,
        srcStr:'深圳CA' //iOS需要传,Android不需要
    }

//P1格式验签
szcaSDK.sofVerifySignedDataByP7Attach(param,
    function (ret, err) {
        if(ret.status){
            alert(ret.msg);
        }else{
            alert(err.msg);
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

sofGenRandom

生成随机数

sofGenRandom(function (ret, err))

##function (ret, err)

ret:

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

err:

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

示例代码

 szcaSDK.sofGenRandom(
                function (ret, err) {
                    if (ret.status) {
                        alert(ret.random);
                    } else {
                        alert(err.msg);
                    }
                });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

sofWipeData

清空内存数据

sofWipeData()

示例代码

 sofWipeData();

可用性

iOS系统

可提供的1.0.0及更高版本

sofGetCertInfo

获取用户证书信息

sofGetCertInfo(params , function (ret, err))

params

certBase64:

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

function(ret, err)

ret:

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

err:

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

示例代码

szcaSDK.sofGetCertInfo({
        certBase64: certBase64Srting
    },function(ret,err) {
        if (ret.status) {
            alert('证书申请人主题主题:' + ret.subject + '证书序列号:' + ret.serialNum);
            certSnNum = ret.serialNum;
        } else {
            alert(ret.msg);
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

是否仍需要帮助? 请保持联络!
最后更新于 2024/01/26