Windows的加密能力
尽管Windows不再具备往日那样的统治地位,在智能手机领域,甚至已经沦落为一种小众平台,Windows仍然是主要的商业应用运行平台、软件开发平台、硬件及结构等设计软件运行平台。大多数人在学习计算机时,会首先面对一台Windows计算机。多年来,为了应对不断演化的安全环境,Windows发展起来了一套相当完善的,基于严格规范的密码学的加密安全体系。
今天所广泛使用的桌面Windows版本,如7、8以及不再更新的XP、即将发布的版本10,其基本构架都来自开始于1988年11月开发的Windows NT,可以认为它们都是源自NT的同构架演进版本。其演进次序可以认为是这样子的:NT、2000、XP、Vista、7、8、10。这些源于NT架构的Windows的一个基本特性是,利用386以后CPU硬件的特权保护机制,建立了用户态和内核态隔离的系统模型。操作系统核心组件运行在高特权级的内核态,通过硬件机制保证了运行于用户态的一般应用程序无法破坏操作系统的完整性和安全性。遗憾的是,由于这一架构下的大多数硬件设备驱动程序也是运行在内核态,一些恶意软件把自己编译成设备驱动程序的形态,通过盗版、诱骗、系统漏洞等途径渗入系统,仍然严重的威胁着系统的安全。Windows 7以后,特别是64位版本,对驱动程序的加载给予更严格的限制,结合用户态驱动程序框架(UMDF)的逐渐推广,这一问题得到了一定的缓解。
Windows 2000在2002年10月,被认定为满足CC的“受控访问“级别的安全需求,相当于桔皮书TCSEC中的C2安全级别。windowsXP/2003公共安全标准安全目标明确指出了以下加密技术需求:
1.基于密码学的自主访问控制功能;
2.敏感数据保护;
3.VPN;
4.公钥基础设施;
5.数字证书颁发和管理。
这些加密技术在Windows安全机制中的实现,一方面使得Windows系统自身成为一个较强的加密系统;另一方面,基于Windows的加密技术,应用软件比较容易获得一个有着较完整保护机制的加密。Windows加密机制的架构设计也可以作为我们设计自己的加密系统的重要参考。
Windows加密系统有这样一些特性:
1.基于现代密码学理论;
2.与硬件安全机制结合;
3.与系统安全机制紧密结合;
4.符合Kerboros、SSL、IPSec等公开的通用安全协议规范;
5.支持附加的硬件,如智能卡,USBkey等;
6.符合很多国家和地区的法律法规要求,经过了美国、欧洲等国家权威机构安全认证;
7.提供应用软件编程接口(API),第三方应用软件可以调用Windows实现的基本加密函数,也可以直接利用windows的系统加密存储或者传输保护功能
8.支持扩展新的算法,各种加密硬件,一般都有windows驱动,支持windows的加密硬件,是最丰富的。
Windows系统加密功能一个缺点是,出口到北美以外地区的使用的算法不够强,NSA限制了其包含的加密算法强度。就连在其他国家和地区开发实现的加密软件包,如果需要微软签署以加入windows加密体制,都必须符合美国政府的出口限制策略,送到微软总部进行数字签名。这也是一些应用在windows平台使用OpenSSL等第三方加密软件包的原因之一。
尽管如此,对于一般商业用途,windows内置的加密软件包方便够用。Vista以后,美国政府在含有强加密算法产品出口策略上有所改变,像Suite B这样,达到美国政府和军队机密级别信息保护要求的算法套件,也被内置在Windows系统中。除非考虑NSA为对手,Windows内置的加密算法强度是足够的。在商用环境里,使用USB Key等扩展的加密硬件,一般是为了加强密钥保护或是提高加密性能。
Windows的加密能力的更多相关文章
- windows 磁盘加密
windows 磁盘加密 CreateTime--2018年4月25日18:37:45 Author:Marydon 以win10为例 选中磁盘-->你会发现上面的管理BitLocker是置 ...
- windows端加密程序,lua代码,ZeroBrane调试
发一个自己改的zerobrane版本(启动中文,快捷键改成和一样:F5启动调试,F9断点,F10逐过程,F11逐语句,F12跳出函数) 在zerobrane 1.0(2015.3.13)发布的基础上改 ...
- 扩展 Windows Azure 运营能力 – 巴西
今天早些时候,在巴西圣保罗的一个活动上,我宣布了我们将在巴西设立一个 Windows Azure 区域数据中心的计划.我们希望该区域中心可以在 2014 年年初上线,并且我们很高兴地宣布将在未来 4 ...
- 无需软件windows如何加密文件夹
在百部百科上看到,放在博客中以便查看. 1.首先打开记事本,当然如果你的电脑里装有类似notepad++的文本编辑软件的也可以,但是不能用word.用这类软件好处是代码高亮,看上去舒服,减少错误率. ...
- windows DPAPI加密解密学习
#include "stdafx.h" #include <windows.h> #include <Wincrypt.h> #include <io ...
- Windows加密技术概述
Windows加密是安全体系的重要基础和组成部分.现代CPU的保护模式是系统安全的硬件基石,基于CPU硬件的特权分级,Windows让自身的关键系统代码运行在高处理器特权级的内核模式,各种应用程序则运 ...
- (转)笔记320 SQLSERVER中的加密函数 2013-7-11
1 --SQLSERVER中的加密函数 2013-7-11 2 ENCRYPTBYASYMKEY() --非对称密钥 3 ENCRYPTBYCERT() --证书加密 4 ENCRYPTBYKEY() ...
- CODING 代码资产安全系列之 —— 构建全链路安全能力,守护代码资产安全
本文作者:王振威 - CODING 研发总监 CODING 创始团队成员之一,多年系统软件开发经验,擅长 Linux,Golang,Java,Ruby,Docker 等技术领域.近两年来一直在 COD ...
- 深度剖析Linux与Windows系统的区别
当我们每个人接触Linux之前,应该先接触的都是windows吧?但我们一般接触Linux后,习惯linux的管理和使用方法后,我们再回过头再来使用windows的时候,内心其实是拒绝的.我们会觉得图 ...
随机推荐
- Docker 镜像的制作和使用
镜像 Layer(层) 镜像里的内容是按「层」来组织的,「层」可以复用,一个完整的镜像也可以看做是一个「层」.多个「层」叠加在一起就形成了一个新的镜像,这个镜像也可以作为别的镜像的基础「层」进行更加复 ...
- [Algorithm]查找
一.查找的算法 1.顺序查找 1 int Search_Seq( SeqList L, ElemType elem ) 2 { 3 L.elem[0] = elem; 4 for ( int i = ...
- python中一些算法数列
斐波那契数列: 1 def fn(n): 2 if n==1: 3 return 1 4 elif n==2: 5 return 1 6 else: 7 return fn(n-1)+fn(n-2) ...
- Java面向对象之关键字this 入门实例
一.基础概念 1.关键字this是指:哪个对象调用this所在的函数.this就指向当前这个对象. 2.用法: (1).this关键字可以解决:构造函数私有化问题. 注意:构造函数只能被构造函数调用, ...
- 快速排序(一) 思想 JAVA实现
已知数组59.71.37.56.88.96.21.58.48.43 采用快速排序将数组有序. 快速排序同样采用了“分治策略”,使用递归的思路来实现算法. 快速排序的算法思想: 9.71.37.56.8 ...
- js 伪数组 arguments
/* 定义一个函数,如果不确定用户是否传入了参数, arguments可以获取到函数传入了多少个参数 和每个参数的值 */ /* 定义 */ function f1() { //获取的是函数在调用的时 ...
- ajax返回数据成功 却进入error方法
应该是dataType的原因,dataType为json,但是返回的data不是json格式 于是将dataType:"json"去掉就ok了
- 用python脚本 从xls文件中读取数据
导入 xlrd 第三方模块 import xlrd data = xlrd.open_workbook('test.xlsx') # 打开xls文件 table = data.sheets()[0] ...
- Python + gevent模块对单个接口进行并发测试 1
本文知识点 利用gevent模块进行并发测试 代码如下 from gevent import monkey monkey.patch_all() import requests import geve ...
- hibernate自动生成时报错问题
创建好了实体类和.hbm.xml文件,运行项目报上错: 实体类和xml文件中的字段要一致.(顺序和字段)