电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

EAS集成第三方CA的开发指导

来源:金蝶云社区作者:金蝶2024-09-226

EAS集成第三方CA的开发指导

1.背景介绍

EAS产品目前标准只集成天威诚信数字证书认证,由于多家客户要求使用CFCA厂商的数字证书认证,本文档用来指导开发集成CFCA的思路及其原理,其它厂商同理。

1.1 EAS签名验签流程

   

2.实现思路

EAS标准产品CA认证以天威为原型抽象了USB相关证书操作的接口,屏蔽了厂商的底层操作方法,因此大部分功能可以仿照天威的实现类来实现其它厂商的底层操作细节,存在部分不一样的操作方式可以单独进行二开实现。


3.实现方案

3.1EAS客户端实现

1.新增类CfcaPKIClientProvider实现接口com.kingdee.eas.base.security.provider.client.IPKIClientExt2Provider用来支持EAS客户端和本地的USB进行交互操作,涉及到的功能有证书导出、初始化、签名等动作,接口详细说明如下:

1. 判断usbkey是否存在:boolean isUsbKeyExistent()

2. 检查密码是否正确:boolean checkPasswd(byte[] password)

3. 获取存放在USBKey中的用户证书:byte[] exportCertificate()

4. 获取USB Key中的序列号:String GetKeyID()

5. 获取存放在USBKey中的用户标识:byte[] getUserID()

6. USBKey是否登录状态:boolean isKeyLogin()

8. 数据签名:byte[] sign(byte[] plaintext)

9. 使用用户的证书对签名进行验证:int verify(byte[] plaintext, byte[] signature)

10. 批量签名接口(标记接口,表示当前签名在批量处理中,无需要用户每条数据都需要输入密码):byte[] batchSign()

2. 新建一个CfcaMWkeyImpl的类,这个类主要是用在GUI端登录时使用的。它继承了AbstractUsbKeyBaseOperator这个抽象类,主要重写了readFile(int fileName)、getNo()、verifyPwd(String newPwd)、exportCertificate()等方法,逻辑和CfcaPKIClientProvider大致相同。


3.2 EAS服务器端实现

服务器新增实现类CfcaServerProvider继AbstractBOSObject父类并实现com.kingdee.eas.base.security.provider.IPKIServerExtProvider接口,用来做证书合法性校验与签名合法性校验等功能。

1. 根据用户标识获取存放在CA服务器中的指

EAS集成第三方CA的开发指导

1.背景介绍EAS产品目前标准只集成天威诚信数字证书认证,由于多家客户要求使用CFCA厂商的数字证书认证,本文档用来指导开发集成CFCA的思路...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

已经是第一篇
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信