扩展Emacs以编辑加密的文本文件

时间:2010-06-10 16:41:43

标签: security emacs openssl elisp

我正在尝试向emacs添加特殊处理以处理Triple-DES加密文件(任何扩展名为.des3的文件都被认为是有效的加密文本文件)。

我的方法是附加格式列表,如下:

(setq format-alist 
      (cons (list 'des3 "Triple-DES encrypted files"
            ".*\.des3" "show" "" t nil)
          format-alist))

其中 show 是以下命令行脚本(通过命令行验证):

#!/bin/sh
openssl des3 -d -in $1

预期: 打开 .des3 文件时,系统会提示我输入密码(按show),然后在emacs缓冲区中查看明文上下文。 [注意:我稍后还会添加保存/加密,但现在我想开放工作]

实际值: 打开 .des3 文件时,我没有收到来自 show 的提示,或者已经调用show的任何指示,并且缓冲区包含加密的文件内容。

3 个答案:

答案 0 :(得分:3)

format-alist应用于文件内容,而不是其名称。我想你想要file-name-handler-alist。有关详细信息,请参阅Emacs手册中的Making Certain File Names "Magic"

答案 1 :(得分:1)

你想看看ps-ccrypt.el的灵感。这是一个与ccrypt集成的软件包。它可以满足您对.cpt文件的需求。

答案 2 :(得分:0)

使用下面提到的更改来查看此crypt ++。el:

https://github.com/tphan88/EmacsOpenSSLCrypt

如果您知道如何确定"文件魔法"您可以添加自己的加密/解密命令。数。

EmacsOpenSSLCrypt硬编码了一些字符串来检查解密。