本地数据加密保护
本地数据加密保护机制提供了简单的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的功能分类的更多相关文章

  1. Windows加密API的层次

    Windows平台下的应用程序可以分为托管的.NET程序和本机的Win32(以及Win64)两大类..NET有着类似于JAVA的虚拟机和二进制码托管运行环境,提供了在不同Windows平台上的代码可携 ...

  2. Kinect开发笔记之二Kinect for Windows 2.0新功能

    这是本博客翻译文档的第一篇文章.笔者已经苦逼的竭尽全力的在翻译了.但无奈英语水平也是非常有限.不正确或者不妥当不准确的地方必定会有,还恳请大家留言或者邮件我以批评指正.我会虚心接受. 谢谢大家.   ...

  3. 对TControl和TWinControl相同与不同之处的深刻理解(每一个WinControl就相当于扮演了整个Windows的窗口管理角色,主要是窗口显示和窗口大小)——TWinControl就两个作用(管理子控件的功能和调用句柄API的功能)

    TControl是图形控件,它本身没有句柄,所以不能直接使用WINAPI显示,调整位置,发消息等等,只能想办法间接取得想要的效果,但是可以直接使用一些不需要句柄的API,比如InvalidateRec ...

  4. Windows的API功能查询

    在逆向分析时,一些Windows的API函数往往是我们的突破口.但这些函数很难记得一清二楚,以下是我的查找办法,做个小结. 官网 https://docs.microsoft.com/en-us/wi ...

  5. Windows加密技术概述

    Windows加密是安全体系的重要基础和组成部分.现代CPU的保护模式是系统安全的硬件基石,基于CPU硬件的特权分级,Windows让自身的关键系统代码运行在高处理器特权级的内核模式,各种应用程序则运 ...

  6. Windows录音API学习笔记(转)

    源:Windows录音API学习笔记 Windows录音API学习笔记 结构体和函数信息  结构体 WAVEINCAPS 该结构描述了一个波形音频输入设备的能力. typedef struct { W ...

  7. 【转】Windows 7 API Internet Connection Sharing(ICS) 与 Wireless Hosted Network构建本地AP

    原文:http://hi.baidu.com/ritrachiao/item/bf7715e6bb8cb3a0c10d75be [此刻我要大大地记录一下!] 这个折腾了我好几天的Windows 7 A ...

  8. windows内核Api的学习

    windows内核api就是ntoskrnl.exe导出的函数.我们能够跟调用应用层的api一样,调用内核api. 只是内核api须要注意的是.假设函数导出了.而且函数文档化(也就是能够直接在msdn ...

  9. C#中读写配置参数文件(利用Windows的API)

      读配置文件与写配置文件的核心代码如下:   [DllImport("kernel32")] // 读配置文件方法的6个参数:所在的分区(section).键值. 初始缺省值. ...

随机推荐

  1. [LeetCode 题解]: Longest Substring Without Repeating Characters

    Given a string, find the length of the longest substring without repeating characters. For example, ...

  2. Crystal Reports for Visual Studio 2015 安装

    如果你在vs2015下要用到Cystal Reports,请安装下面的插件.安装时请退出vs2015,安装后重启. https://www.aspsnippets.com/Articles/Downl ...

  3. ZKEACMS for .Net Core 深度解析

    ZKEACMS 简介 ZKEACMS.Core 是基于 .Net Core MVC 开发的开源CMS.ZKEACMS可以让用户自由规划页面布局,使用可视化编辑设计“所见即所得”,直接在页面上进行拖放添 ...

  4. Spring Boot 多数据源自动切换

    在Spring Boot中使用单数据源的配置很简单,我们简单回忆下:只需要在application.properties进行基本的连接配置,在pom.xml引入基本的依赖即可. 那么多数据源的原理呢? ...

  5. kali linux之Msf

    目前最流行,最强大,最具扩展性的渗透测试平台软件 基于metasploit进行渗透测试和漏洞分析的流程和方法 框架集成了渗透测试标准(PETS)思想 一定程度上统一了渗透测试和漏洞研究的工作环境 新的 ...

  6. linux命令提示符[root@localhost ~]#详解

    [root@localhost ~]#   1. @之前代表当前登录用户 在Linux中管理员用户是root,还有一些普通用户: 在此例中,root代表当前登录用户   2. @之后代表当前计算机主机 ...

  7. 快速上手日期插件daterangepicker

    参数介绍: 参数 格式 示例 含义 startDate MM/DD/YYYY “startDate”:”10/14/2017” 设置默认的开始日期 endDate MM/DD/YYYY “endDat ...

  8. Linux 通过程序名获取进程ID并Kill

    #!/bin/bash pids=$(ps -ef | grep XXX| awk '{print $2}') for pid in $pids do echo $pid kill -9 $pid d ...

  9. jdbc连接oracle的url的三种写法

    JDBC 链接oracle的三种URL写法 1.普通SID方式     jdbc:oracle:thin:username/password@x.x.x.1:1521:SID 2.普通ServerNa ...

  10. 2. Javscript学习笔记——引用类型

    2. 引用类型 2.1 Object类型 Object 是一个基础类型,其他所有类型都从 Object 继承了基本的行为. 对象是一个包含相关数据和方法的集合(通常由一些变量和函数组成,我们称之为对象 ...