Server2008实验——私钥和添加数据恢复代理程序
导出和安装私钥
当一个用户加密一个文件的时候,生成证书,拥有证书的私钥的用户才能够解开这个加密文件;为了防止私钥丢失导致加密文件不可打开,可以导出私钥给同一个用户组的用户帮忙打开;
1.创建【xl】和【xc】用户
切换到【xl】用户,新建一个记事本 【xl.txt】,建好后,右键点击,选择属性,高级,选择:加密内容以便保护数据;
点击应用,选择:只加密文件:
导出生成证书的私钥:
win+r 运行certmgr.msc
个人->证书->导出
根据向导点击下一步,在以下界面选择:是,导出私钥
其它默认下一步,在以下界面设置密码保护私钥,在其它用户安装此私钥的时候验证此密码;
其它默认下一步,在以下界面,将私钥保存:
这个时候,哪个用户装了xl_private这个私钥,谁就可以打开【xl】的加密文件:
- 切换成【xc】用户。尚不安装私钥,进入【xl】桌面无法打开加密文件(进入xl用户文件夹需要管理员密码,输入密码即可,当然也可以把这个加密文件放在公用文件夹内)
- 这时候去安装刚才导出的私钥:
- 除了在以下界面输入导出时设置的密码,其它都是默认下一步:
- 这时候【xl】的加密文件就能打开了:
添加数据恢复代理程序:
任何用户都可以用cipher命令生成证书和密钥(以管理员为例);
cmd输入: cipher /r:name 【name为证书和密钥的名字,冒号和name之间不留空格】
上图,为了方便设置了空密码;
管理员将这个生成的证书添加到数据恢复代理程序,那么安装了相应密钥的用户理论上能打开任何的加密文件,能不能打开还得具体查看属性>高级>详细信息:
问:这个文件的修改时间在证书安装时间之后才能被打开吗? 答:不是很准确,修改能打开,但不是一定得修改。私钥拥有者对加密文件有查看或修改操作就能(我猜测此时更新了该文件的权限)。因此文件私钥拥有者双击查看不修改,也能打开。
添加数据恢复代理程序:
浏览文件夹,选择cipher生成的证书:
安装这个证书的密钥:
切换到【xl】用户,新创建一个文件并加密
这时候查看【xl_new】的属性>高级>详细信息,恢复证书已显示在上面了(先不动【xl】文件):
切换到管理员用户,尝试打开这两个文件,只能打开【xl_new】文件,【xl】加密文件不能访问,【xl】此时并没有恢复证书(前提是在证书安装之后,在此步骤之前【xl】用户没操作过【xl】文件),而【xl_new】有。
【如果此时再切换到用户【xl】查看【xl】文件的详细信息,就会出现此恢复证书,这时候两个加密文件管理员都能打开:】
补充:
- 加密后的文件可以通过 属性>高级>详细信息 查看加密的证书和恢复证书
- 加密文件时,如果用户没有证书,那么会生成新证书,如果有一个以上,就会用已拥有的这些证书加密,可以在【详细信息】修改;
1.例如【xc】安装了颁发给【xl】的证书,加密文件时,就用【xl】的证书加密;
2.可以通过添加和删除来指定某个证书可用,前提是你本身有权限访问这个文件;
添加一个用户【xx】,加密一个文件以生成他的私钥,过程略,这时添加新证书:
这时拥有【xx】和【xl】证书私钥的用户就可访问此文件;
3.若某一次误操作将自己拥有的证书【xl】删除确认,不可访问此文件(有可能还是能访问,因为不是立即生效):
此时想尝试添加回【xl】证书会出错,因为你已经没有权限访问这个文件了:
总结:
1.拥有某个私钥的用户可以打开对应加密的文件
2.在允许访问某个加密文件的前提下,可以指定拥有其它私钥的用户访问
3.恢复证书导入后,证书私钥拥有者并不能马上打开所有加密过的文件,具体还得查看该文件的详细信息中是否显示该恢复证书。
4.删除个人证书后,还能够打开拥有此证书时能够打开的加密文件,但注销再登录后就访问不了了;
Server2008实验——私钥和添加数据恢复代理程序的更多相关文章
- 第5章分布式系统模式 Broker(代理程序)
许多复杂的软件系统运行在多个处理器或分布式计算机上.将软件分布在多台计算机上的原因有多种,例如: 分布式系统可以利用多个 CPU 或一群低成本计算机的计算能力. 某个软件可能仅在特定计算机上可用. 出 ...
- Visual Studio 2013 添加一般应用程序(.ashx)文件到SharePoint项目
默认,在用vs2013开发SharePoint项目时,vs没有提供一般应用程序(.ashx)的项目模板,本文解决此问题. 以管理员身份启动vs2013,创建一个"SharePoint 201 ...
- Ubuntu添加开机自动启动程序方法
1. 开机启动时自动运行程序 Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程init.init根据配置 文件继续引导过程,启动其它进程.通常情况下,修改放置在 / ...
- Asp反向代理程序,调用远程站点全站数据,一款脚本级反向代理程序.
前些天临时写的一脚本级反向代理程序,用法很简单,设置好目标站地址,然后放到你网站根目录:index.asp,再将404页面自定义为:index.asp,即可. 由于暂时没有 url 替换需要,所以没有 ...
- 不同linux系统添加开机启动程序的命令
see http://phpcj.org/blog/%E4%B8%8D%E5%90%8Clinux%E7%B3%BB%E7%BB%9F%E6%B7%BB%E5%8A%A0%E5%BC%80%E6%9C ...
- 如何给Windows添加自动启动的程序
博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:如何给Windows添加自动启动的程序.
- Windows中添加自己的程序到开机启动中(添加服务,添加注册表)
在系统启动的时候启动自己想要启动的程序: 方法一:利用开机启动文件夹 将exe文件或exe文件的快捷方式复制到(启动)文件夹下 以win7为例:开始→所有程序→启动→鼠标右键打开 方法二:添加系统服务 ...
- 给OkHttp Client添加socks代理
Okhttp的使用没有httpClient广泛,网上关于Okhttp设置代理的方法很少,这篇文章完整介绍了需要注意的方方面面. 上一篇博客中介绍了socks代理的入口是创建java.net.Socke ...
- "添加与删除程序"报rundll32错误
无法启动"添加与删除程序"系统报rundll32错误 系统反馈以下信息: rundll32.exe应用程序错误"0x00310030"指令 解决方法: 1.启动 ...
随机推荐
- Muduo阅读
创建了EventLoop对象的线程是IO线程,其主要功能是运行事件循环EventLoop::loop(), one loop per thread 事件循环必须在IO线程中运行 Reactor关键结构 ...
- hg如何回退到某个版本
hg 如何回退 hg ... ? ? ?
- vue store获取值时 Computed property "activeTag" was assigned to but it has no setter.
出现原因: element-ui中 el-tab绑定的值在切换tab时会自动修改 而activeTag是从store中获取的值,不能直接修改 要添加给它绑定上set <el-tabs cla ...
- 两种atm取款方式
1.//函数 密码 账号function User(username, password, account){ this.username = username; this.password = pa ...
- windows下常用cmd命令
CMD命令:开始->运行->键入cmd或command(在命令行里可以看到系统版本.文件系统版本)1. appwiz.cpl:程序和功能 2. calc:启动计算器 3. certmgr. ...
- Codeforces Round #586 (Div. 1 + Div. 2) E. Tourism
链接: https://codeforces.com/contest/1220/problem/E 题意: Alex decided to go on a touristic trip over th ...
- Java中判断两个Long类型是否相等
在项目中将两个long类型的值比较是否相等,结果却遇到了疑问? 下面就陪大家看看一个神奇的现象! 1.1问题?为什么同样的类型,同样的值,却不相等呢? 1.2那么我们就需要探索一下源码了 源码中显示, ...
- 之前写的关于chromedp的文章被别人转到CSDN,很受鼓励,再来一篇golang爬虫实例
示例说明:用chromedp操作chrome,导航到baidu,然后输入“美女”,然后再翻2页,在此过程中保存cookie和所有img标签内容,并保存第一页的baidu logo为png 注释已经比较 ...
- 在linux操作系统上进行简单的C语言源码的gcc编译实验
尝试在linux上用gcc 而非封装完好的codeblocks,vs等ide 来编译c和cpp源程序 首先查看我的gcc版本,我的是VM centos 自带的,没有的话得自行安装,安装上gcc就可以在 ...
- Apache搭建简单的图片访问服务器
安装apache后,修改httpd.conf文件 将根目录修改为你图片所在目录 DocumentRoot有这么一行,修改成你要指向的路径 DocumentRoot "/yang/pic&qu ...