USBKEY的CSP实现.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
USBKEY的CSP实现

应 用 安 全 基于 USB KEY的 CSP 实现 杨瑞霞 山东政法学院司法信息系   山东   250014 摘要 :CSP 是目前应用最广泛的 PKI 密码接口。CSP 终端用户通过 Windows提供的 CryptoAPI公共接口访问密码函数, 而不需要去关心密码运算的具体实现。USB KEY 具有使用方便、安全性高、运算能力强等特点,是实现 PKI 密码运算的理 想设备。用户可以通过调用动态库来使用 USBKEY 的加密运算功能,从而实现 CSP 所需要的 PKI 密码函数。本文从 CSP 的技 术原理出发,结合 USB KEY的功能特点,深入讨论了如何使用 USB KEY实现 CSP 的功能。 关键词:CSP;USB KEY;COS;密码运算 0  引言 CSP(Cryptographic Service Providers,密码服务供应商) 是密码服务供应商为了给用户提供方便,针对应用层提供的 标准接口函数。用户可以直接使用微软公司的 C r y p t o A P I (Cryptographic Application Programming Interface,密码应用 程序接口) 调用 C S P 函数来实现供应商提供的密码运算。 CryptoAPI是一组数目众多的安全函数,这些函数是 Windows 操作系统的一部分。CryptoAPI事实上是通过 CSP 以多种方 式实现同一密码函数。CSP 是一个独立的模块,它实现了那 些通过 CryptoAPI公共接口访问的密码函数,即 CSP 封装和 隐藏了密码算法的具体实现,这样用户就不需要去关心它。 CSP 所使用的密码设备,可以是使用运算芯片的密码算 法板卡,也可以是智能卡,有的 CSP 是基于专门进行密码运 算的计算机的。USB KEY实际上是能够直接在计算机的 USB 接口上使用的智能卡设备。USB KEY体积跟钥匙一般大,携 带方便,而且运算能力可以很好地满足用户的需要,现在 USB KEY 已经成为广泛使用的 C S P 设备。 1  CSP技术原理 微软提供了一个基本 CSP,其他商家提供的 CSP 包含了 他们自己实现的全部或 CryptoAPI部分函数。CSP 的技术原 理如图 1所示。由原理框图可以看出,应用程序并没有直接使 用 CSP,而是调用操作系统提供的 CryptoAPI函数,然后操 作系统通过CryptoSPI(Cryptographic System Programming Interface,密码系统程序接口)把对CryptoAPI函数的操作请 求传递给 CSP,让 CSP 来完成应用程序所要求的密码操作。 由此可见,不管供应商所使用的密码设备是什么,它必 须完成 CryptoAPI传递的应用系统要求的密码运算功能。开 发 CSP 程序的任务就是开发一组符合 CryptoSPI要求的接口 函数,把设备的密码运算功能封装为 CryptoAPI所能使用的 方式。 按照功能 CSP 可以划分为以下几大类型:PROV_RSA_ F U L L,P R O V _ R S A _ S I G,P R O V _ D S S,P R O V _ D S S _ D H,  P R O V _ D H _ S C H A N N E L,P R O V _ F O R T E Z Z A, P R O V _ M S _ E X C H A N G E,P R O V _ R S A _ S C H A N N E L, PROV_SSL。这些类型的 CSP 的区别在于它在加密和认证过 程 所 使 用 的 算 法 是 不 一 样 的 。 本 文 所 讨 论 的 C S P 是 PROV_RSA_FULL的,即数据签名使用 RSA 算法,数据加密 使用 RC 和 D E S 算法。 图 1  CSP 原理框图 CSP 的接口函数按功能主要分为以下四大部分:CSP 连 接函数、密钥的产生和交换函数、数据加解密函数和 H A S H 及数字签名函数。 2  USB KEY技术 USB KEY实际上是能够直接在计算机的 USB 接口上使用 的智能卡设备。其结构包括数据传输模块和智能卡两大部分, 如图 2 所示。数据传输部分负责 PC 机与智能卡之间的数据传 输,与 PC 机的通信是使用 USB 协议,而与智能卡的信息交换 则必需遵循 ISO7816规范。智能卡部分负责应用程序数据的 存储管理和运算,这些功能都通过智能卡的操作系统 C O S (Card Operation System)来完成。  图 2  USB KEY 的原理框图 2.1  智能卡的结构 与 CSP 相关的操作都是由智能卡芯片完成的。智能卡实 62  作者简介:杨

文档评论(0)

almm118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档