5

我必须为我的计算机安全课程做一个实验室,在那里我要使用 gpg 和 OpenSSL 进行安全通信。我对这一步感到困惑:

Use 'openssl enc' command line symmetric cipher routine to generate a 
256bit AES key in CBC mode. You should use SHA1 as a message digest 
function for generating the key. Save generated secret key, IV, and 
salt into file named aes.key. (Use –P opting to print out the key, 
salt and IV used then immediately exit, don’t do any encryption at 
this step.) 

但是我正在查看openssl enc 的手册页,但我看不到摘要的选项。我知道有一个 openssl dgst 命令,但它只是计算输入的哈希值。这个问题有缺陷吗?“您应该使用 SHA1 作为生成密钥的消息摘要函数”是什么意思?我是否生成一个密钥,然后只生成 SHA1(key.aes)?

对此的任何帮助将不胜感激。

谢谢你。

4

1 回答 1

5

根据您在给它一个未知参数时获得的使用信息,openssl enc例如-h

-md            the next argument is the md to use to create a key
                 from a passphrase.  One of md2, md5, sha or sha1

因此,您应该使用-md sha1将 SHA1 指定为密钥派生中使用的哈希函数。该步骤的完整解决方案是:

openssl enc -aes-256-cbc -md sha1 -P

他们实际上似乎忘记-md手册页中解释。

于 2013-02-17T00:34:46.773 回答