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).键值. 初始缺省值. ...
随机推荐
- velocity的日志解决问题
问题描述:velocity使用时,添加了一个非自己想要的日志文件,因此在velocity的配置中需要添加logger. 解决: velocity.properties添加log配置: runtime. ...
- 【转】Android - 线程同步
什么是线程同步? 当使用多个线程来访问同一个数据时,非常容易出现线程安全问题(比如多个线程都在操作同一数据导致数据不一致),所以我们用同步机制来解决这些问题. 实现同步机制有两个方法: 1.同步代码块 ...
- 【转】生活中的OO智慧——大话面向对象五大原则
原文地址:http://www.cnblogs.com/aoyeyuyan/p/4388110.html 一·单一职责原则(Single-Responsibility Principle) 定义:一个 ...
- [Erlang14]怎样模拟节点互连后的各种失败情况?
情景: 当节点群互连时,会通过心跳包检查所连接节点是不是连接正常,这个心跳时间默认为60s,可以通过 net_kernel:set_net_ticktime(600). 来重设这个时间值,怎么测试? ...
- JFrog Artifactory
是一款二进制存储管理工具,用来管理构建构建工具(如:gradle.maven.nuget.docker等等)等所依赖的二进制仓库,以方便管理第三方库和发布目标版本库,从而提高软件开发效率. 为DevO ...
- [USACO09FEB] 改造路Revamping Trails | [JLOI2011] 飞行路线
题目链接: 改造路 飞行路线 其实这两道题基本上是一样的,就是分层图的套路题. 为什么是分层图呢?首先,我们的选择次数比较少,可以把这几层的图建出来而不会爆空间.然后因为选择一个边权为0的路线之后我们 ...
- 吴裕雄 python 机器学习——高斯贝叶斯分类器GaussianNB
import matplotlib.pyplot as plt from sklearn import datasets,naive_bayes from sklearn.model_selectio ...
- jquery源码解析:jQuery原型方法init的详解
先来了解几个jQuery方法: <li></li> <li></li> <li></li> $("li") ...
- java操作AWS S3一些坑记录
1,aws sdk jar版本不一致问题 一开始我在pom.xml中只配置了如下aws-java-sdk-s3 <!-- https://mvnrepository.com/artifact/c ...
- Spark JavaRDD、JavaPairRDD、Dataset相互转换与打印
主要内容: 1. List转JavaRDD,打印JavaRDD 2. List转JavaRDD,JavaRDD转JavaPairRDD,打印JavaPairRDD 3. JavaRDD<Stri ...