0

我正在尝试使用 mcrypt 的终端版本,但我没有成功...

我写道: mcrypt -a xtea -m ecb -k "qawsedrftgyhujik" test > testresult

在哪里:

  • xtea 是算法
  • ecb 是模式
  • qawsedrftgyhujik 是 128 位密钥
  • 测试是源文件
  • testresult 是目标文件

程序冻结,我必须用 ctl+c 中止。有谁知道为什么?

4

1 回答 1

2

您必须输入文本并在新行上按 ctrl+d 以终止输入,然后它应该可以工作

编辑:问题是-k需要多个参数(man mcrypt):

mcrypt [ -dLFubhvrzp ] [-a algorithm] [-c config_file] [-m mode] [-s keysize] [-o keymode] [-k key1 key2 ...]  [-f keyfile] [ filename ...  ]

所以如果你想从文件中读取test,你可以使用以下之一:

mcrypt -a xtea  -k "qawsedrftgyhujik" -m ecb test > testresult        # option after -k
cat test | mcrypt -a xtea -m ecb -k "qawsedrftgyhujik" > testresult   # pipe
mcrypt -a xtea -m ecb -k "qawsedrftgyhujik" < test > testresult       # stdin redirect
于 2012-04-29T01:55:18.270 回答