创建安全 Windows CE 设备 |
|||||||||||||||
| 作者:Maricia Alforque 来源:microsoft.com 发布时间:2005-12-21 16:56:27 | |||||||||||||||
|
CryptoAPI 1.0 在 Windows CE 3.0 中提供的功能与在 Windows 2000 和 Windows NT 中提供的功能很相似;但是,仅支持 CryptoAPI 2.0 的子集。Windows CE 3.0 支持 CryptoAPI 2.0 的下列功能:基于 X.509 标准对数字证书进行编码和解码,以及管理证书。不支持下列功能:管理验证字撤销列表 (CRL) 和验证字信任列表 (CTL) 的工具、低级消息传递函数和简化的消息传递函数。 Coredll.lib 导出 CryptoAPI 1.0 函数;Crypto32.lib 导出 CryptoAPI 2.0 函数;所有这些函数都在 Wincrypt.h 头文件中定义。 在智能卡中隔离敏感数据通过使用智能卡存储身份验证信息或数字签名机制,您可以向 Windows CE 设备添加安全层。可以编写定制的 CryptoAPI 提供者,使用智能卡的功能实现安全信息存储。 Windows CE 智能卡子系统通过智能卡服务提供者 (SCSP) 支持 CrytoAPI,SSCP 是允许访问特定服务的 DLL。该子系统在智能卡读卡器硬件和应用程序之间提供链接。通常,Windows CE 不提供 SCSP,而由智能卡供应商提供相应的 SCSP。但是,Windows CE 提供下表中描述的接口。
典型的智能卡系统包括应用程序、处理智能卡读卡器和应用程序之间的通信的子系统、读卡器以及智能卡。下图显示了基于 Windows CE 的智能卡系统的体系结构。
图 3:基于 Windows CE 的智能卡系统的体系结构 在一个独立的硬件中实现智能卡 CryptoAPI 服务提供者的部分功能将保证密钥和操作的安全性,因为:
在使用智能卡的组织中,用户实际不必记住任何密码(只有一个个人识别号或 PIN),并且出于其他安全性目的(例如电子签名的电子邮件),他们可以使用相同的证书。 唯一标识设备OEM 可以为 Windows CE 设备提供唯一的识别标记,并使应用程序可以访问它。例如,您可能需要标记运行您的 OS 映像的每个蜂窝电话,以便达到记帐和安全性的目的。 Windows CE 使用 DEVICE_ID 结构来保存唯一的设备识别号。OEM 适配层中的输入/输出控制 IOCTL_HAL_GET_DEVICEID 返回指定给该 Windows CE 设备的当前 DEVICE_ID。有关详细信息,请参阅 Platform Builder 文档的“操作系统开发”一节中的“为应用程序提供平台信息”。 使用受保护的内核模式在运行线程时使用全内核模式将使整个系统易受攻击,因为 Windows CE 绕过了安全性特性。在全内核模式中,应用程序可以访问系统中的任何物理内存。这将使系统对恶意应用程序保持开放,不能防止它们获取特权信息和加密代码,或者删除文件。 尽管在全内核模式下运行时性能将得到提高,但这在一个开放的未受保护的环境中是不可接受的。您可以禁用全内核模式;在 Config.bib 文件中设置 ROMFLAGS 的第二个字节。根据其他标志的设置,ROMFLAGS 的值可能会有所不同。 在拨号启动加载程序中使用数字身份验证拨号启动加载程序是一个存储在 ROM 中的程序,该 ROM 用于通过快闪内存或远程服务器升级 OS 映像文件 (Nk.bin)。要确保下载的 OS 映像的完整性,您可以使用数字密钥来签名和验证 OS 映像文件。拨号启动加载程序通过 Microsoft CryptoAPI 使用非对称散列算法 (CALG_SHA) 来验证数据。非对称散列算法将生成 160 位散列值。 Platform Builder 3.0 为数字身份验证提供下列工具:
在 OS 映像下载进程中,拨号启动加载程序从清单文件中提取签名,并验证每个 OS 映像文件的可靠性。如果验证失败,将暂停下载进程并通知用户。 更多信息有关 SSPI、安全套接字层、CryptoAPI 和智能卡的实现细节,请参阅 Windows CE 软件开发人员手册(英文)。 有关内核级别安全性(信任模型和内核模式)、设备标签和拨号启动加载程序的实现细节,请参阅 Windows CE Platform Builder 3.0(英文)。 还请参阅 MSDN Online Windows 嵌入式开发人员中心,网址为 http://msdn.microsoft.com/embedded(英文)。 有关智能卡的详细信息,请参阅 PC/SC 工作组主页,网址为 http://www.pcscworkrgroup.com(英文)。 本文中的信息介绍目前为 Windows CE 3.0 设备和应用程序提供安全性的技术。如果您认为本文的格式和信息有用,或者您有任何其他注释有助于我们为您提供更多的内容,请将您的反馈发送到 ceuafdbk@microsoft.com。 |
|||||||||||||||
| [] [返回上一页] [打 印] | |||||||||||||||
文章评论 |
|||||||||||||||

