Windows加密API的功能分类
本地数据加密保护
本地数据加密保护机制提供了简单的DAPI调用接口,密钥管理等等一概由系统来处理。DAPI的数据加密保护机制在用户登录会话范围或者本地计算范围,使用操作系统设计的方式加密保护数据和解密还原数据,用户无需关心密钥的来源和管理,使用DPAPI 可以使应用程序免于处理生成和存储加密密钥的难题。
这一保护的效果与EFS相同,持有加密者安全令牌的进程,都能够访问数据。用户登录后,在用户桌面会话中启动的所有进程,都有可能能够解密,进程之间可以使用保护字区分。对于渗入本地的恶意代码来说,这不会是一个强的保护,恶意代码能够扫描文件获得存储的保护字,也可以通过键盘钩子截获口令派生的保护字。本地计算机范围保护的数据更是能够被所有能够在本机上运行的程序打开。在DAPI边界范围之外,DAPI可以认为是一种强保护机制。Windows采用了精心设计的密钥管理机制保护所加密的数据。
基本加密算法服务
系统中的内置CSP及第三方CSP一般都提供了诸如对称加密、不对称加密、哈希等基本加密算法的实现。应用程序需要根据自身加密安全性设计的约束,通过CryptoAPI函数调用适当的CSP所提供的加密功能,完成应用层面的加密处理。
加密通信服务
SSL(https)安全通信协议是一个基于加密技术的网络安全通信协议。协议规定了对各种加密算法的使用要求,密钥的协商方式,服务端与客户端的身份认证方式等等。SChannel CSP是针对SSL中的加密处理方法和过程定制的CSP。基于SChannel CSP,应用程序能够建立和维护网络安全通信所需的SSL连接。
操作和管理数字证书
计算机上的数字证书会在用户使用中逐渐累积,CryptoAPI提供了存取、查询、验证和删除数字证书的工具函数。CryptoAPI还提供了把证书附着到消息所需的方法。数字证书管理函数分为两个大类,一是管理证书存储容器的函数,二是管理证书本身和证书撤销列表、证书信任列表等具体对象的函数。通过这些函数,Windows系统和用户程序得以操作和管理系统中用到的数字证书。
CSP的CryptSPI规范
按照CryptSPI接口规范实现的加密软硬件模块能够以CSP的形式集成到Windows系统中,应用编程通常不必关心这方面的技术。第三方开发新算法软件模块、智能卡、USBKey、SSL加密加速器之类的加密组件,希望集成到Windows系统中,使其产品能够为Windows系统以及调用系统加密API的应用软件所用时,必须需要按照相关规范,实现CryptoSPI接口,把DLL文件发送给微软签名,在部署时把加密组件注册到目标计算机系统。
Windows加密API的功能分类的更多相关文章
- Windows加密API的层次
Windows平台下的应用程序可以分为托管的.NET程序和本机的Win32(以及Win64)两大类..NET有着类似于JAVA的虚拟机和二进制码托管运行环境,提供了在不同Windows平台上的代码可携 ...
- Kinect开发笔记之二Kinect for Windows 2.0新功能
这是本博客翻译文档的第一篇文章.笔者已经苦逼的竭尽全力的在翻译了.但无奈英语水平也是非常有限.不正确或者不妥当不准确的地方必定会有,还恳请大家留言或者邮件我以批评指正.我会虚心接受. 谢谢大家. ...
- 对TControl和TWinControl相同与不同之处的深刻理解(每一个WinControl就相当于扮演了整个Windows的窗口管理角色,主要是窗口显示和窗口大小)——TWinControl就两个作用(管理子控件的功能和调用句柄API的功能)
TControl是图形控件,它本身没有句柄,所以不能直接使用WINAPI显示,调整位置,发消息等等,只能想办法间接取得想要的效果,但是可以直接使用一些不需要句柄的API,比如InvalidateRec ...
- Windows的API功能查询
在逆向分析时,一些Windows的API函数往往是我们的突破口.但这些函数很难记得一清二楚,以下是我的查找办法,做个小结. 官网 https://docs.microsoft.com/en-us/wi ...
- Windows加密技术概述
Windows加密是安全体系的重要基础和组成部分.现代CPU的保护模式是系统安全的硬件基石,基于CPU硬件的特权分级,Windows让自身的关键系统代码运行在高处理器特权级的内核模式,各种应用程序则运 ...
- Windows录音API学习笔记(转)
源:Windows录音API学习笔记 Windows录音API学习笔记 结构体和函数信息 结构体 WAVEINCAPS 该结构描述了一个波形音频输入设备的能力. typedef struct { W ...
- 【转】Windows 7 API Internet Connection Sharing(ICS) 与 Wireless Hosted Network构建本地AP
原文:http://hi.baidu.com/ritrachiao/item/bf7715e6bb8cb3a0c10d75be [此刻我要大大地记录一下!] 这个折腾了我好几天的Windows 7 A ...
- windows内核Api的学习
windows内核api就是ntoskrnl.exe导出的函数.我们能够跟调用应用层的api一样,调用内核api. 只是内核api须要注意的是.假设函数导出了.而且函数文档化(也就是能够直接在msdn ...
- C#中读写配置参数文件(利用Windows的API)
读配置文件与写配置文件的核心代码如下: [DllImport("kernel32")] // 读配置文件方法的6个参数:所在的分区(section).键值. 初始缺省值. ...
随机推荐
- NLP常用开源/免费工具
一些常见的NLP任务的开源/免费工具, *Computational Linguistics ToolboxCLT http://complingone.georgetown.edu/~linguis ...
- 在.net Core中使用StackExchange.Redis 2.0
StackExchange.Redis 2.0做了大量的改进包括使用了高性能的IO库System.IO.Pipelines来提升性能以及解决Timeouts问题, 但是在.net Core2.2之前为 ...
- FPN(feature pyramid networks)
多数的object detection算法都是只采用顶层特征做预测,但我们知道低层的特征语义信息比较少,但是目标位置准确:高层的特征语义信息比较丰富,但是目标位置比较粗略.另外虽然也有些算法采用多尺度 ...
- Linux centos 6.4安装
Linux系统安装: 开启虚拟机: 界面说明:Install or upgrade an existing system 安装或升级现有的系统install system with basic vid ...
- map集合根据value找key,默认取第一个key
private static String getKey(Map<String,String> map,String value){ String key=""; fo ...
- PHP用curl远程下载图片
function http_get_data($url){ $ch = curl_init (); curl_setopt ( $ch, CURLOPT_CUSTOMREQUEST, 'GET' ); ...
- python在一堆目录中寻找json文件
在一个目录下,有好几层目录,里面零零散散存放着几个json文件,我要做的是用python脚本把它们都找出来,一开始就一层一层地找,用os.listdir加上for循环,根据目录树的深度确定for循环的 ...
- [Shell]如何获取Maven工程的project.version信息
问题: 今天遇到Shell中如何能获取Maven项目工程中的project.version信息的问题 解决方案: 使用Maven的Exec 插件 #! /bin/bash MVN_VERSION=$( ...
- Java的定时调度
一般在web开发中定时调度比较有用,因为要维护一个容器不关闭才可以一直定时操作下去. 定时调度:每当一段时间之后,程序就会自动执行,就称为定时调度.如果要使用定时调动,则必须要保证程序要始终运行着,也 ...
- PHP 数组与CSV文件互转
项目说明 数组导出CSV,ZIP文件,CSV,ZIP文件还原数组(Array export file,file restore array)适用于导入导出会员,商品信息注意:读取中文文件名文件.数据时 ...