Perl LSB隐写脚本

时间:2017-10-24 11:35:27

标签: perl steganography

我一直在研究Andrew Ker提供的一个小样本Perl脚本,该脚本在PGM和PPM文件中执行LSB隐写。 (已访问 - http://www.cs.ox.ac.uk/andrew.ker/docs/ADK11B.pdf

提供的脚本如下(在Ubuntu Linux上运行):

perl -n0777 <cover-image > stego-image 
    -e’split/(\s+)/,<STDIN>,5;@z=map ord,split"",pop@_;srand key; for(0..$#z){@p[$k,$_]=($_,$p[$k=int rand$_]);} map{$z[$q=shift@p]+=($z[$q]-ord()&1)*(rand 2<=>1)} split"",unpack"B*",$_;print@_,map chr,@z;’ secret-text-file

然而,这给我一个语法错误,我认为这是来自'字符的使用。我没有使用Perl的经验,所以我在试图弄清问题可能是什么的。

任何建议都将不胜感激。

1 个答案:

答案 0 :(得分:2)

看起来字符是由创建此PDF的任何文字处理程序转换的。它应该是单引号'。替换两个实例,它应该工作。