免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1048 | 回复: 0
打印 上一主题 下一主题

vim 加密 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-01-23 00:06 |只看该作者 |倒序浏览

参考vim中的介绍:
要开始编辑一个需要加密的新文件,可以用 "-x" 参数来启动 Vim。例如:
vim -x exam.txt
Vim 提示你确定一个密码,用于为文件加密和解密:
Enter encryption key:
现在仔细键入那个密码。你所键入的字符将为星号代替,因此你看不到。为了避免由于
打字错误引起麻烦,Vim 要求你再输入一次密码:
Enter same key again:
现在你可以像平时一样编辑这个文件并把你所有的秘密放进去。当你编完文件要退出 Vim
时,这个文件就被加密存盘了。
当你用 Vim 编辑这个文件时,它就会要求你再输入那同一个密码。你不需要用 "-x"
参数。你也可以用普通的 ":edit" 命令编辑加密的文件。Vim 给这个文件加上一句标记,
据以识别那是经过加密的文件。
如果你试图用另一个程序来阅读这个文件,你将读到一堆乱码。如果你用 Vim 来编辑
这个文件,但输入了错误的密码,你也只能得到乱码。Vim 并不具备检验密码正确性的机
理 (这一点使得破译密码更为困难)。
开 / 关 加 密
要给一个文件撤除加密,设定 'key' 选项为空字符串:
:set key=
你下次把这个文件存盘时,存盘的文件就是未经加密的。
设定 'key' 选项来启用加密是个坏主意。因为密码会被清清楚楚地显示在屏幕上。任
何人都可以偷看到你的密码。
为了避免这样的问题,创造了 ":X" 命令。它会像 "-x" 参数向你索取一个密码:
:X
Enter encryption key: ******
Enter same key again: ******
加 密 的 局 限 性
Vim 采用的加密算法有弱点的。它对于防止那种偷窥者是绰绰有余了,但不足以防止一
个手上有大量时间的密码专家。而且, 你应该知道交换文件是不加密的;所以当你在编辑
文件时,拥有超级用户权限的人能够读取未经加密的文件文本。
不让人们读到你的交换文件的一个方法就是不使用交换文件。如果在命令行上用了 -n
参数,交换文件就不会被创建了 (Vim 把所有的东西都存放在内存里)。例如,要编辑经
过加密的文件 "file.txt",但不用交换文件,请用下面的命令:
vim -x -n file.txt
如果你已在经编辑这个文件了,那么交换文件 swapfile 可以用下面的命令禁止:
:setlocal noswapfile
由于没了交换文件,文件复原就不可能了。为了避免失去编辑的成果,要比平时更勤快地
存盘你的文件。
文件在内存中以明文形式存在。因此任何具备权限的人都能进入编辑者的内存浏览,从而,
发现这个文件的内容。
如果你使用信息文件 viminfo,别忘了文本寄存器的内容也是明明白白写在其中的。
如果你真的要保证一个文件内容的安全,那么,你必须永远只在一个不联网的可携式
计算机上编辑这个文件,使用优良的加密工具,并且在不用时,把你的计算机锁进一个
大保险箱。
============
在vim中实现批量加密
#!/bin/bash
# Encrypt file with vim
  
if (test $# -lt 2) then
  echo Usage: decrypt password filename
else
  vim -e -s -c ":set key=$1" -c ':wq' $2
  echo "$2 encrypted."
fi


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/8780/showart_236333.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP