Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
哈希生成脚本上的Perl语法错误_Perl_Encryption_Syntax Error - Fatal编程技术网

哈希生成脚本上的Perl语法错误

哈希生成脚本上的Perl语法错误,perl,encryption,syntax-error,Perl,Encryption,Syntax Error,运行代码时,我遇到以下错误: syntax error line 5, near "use Digest::MD5 sub makeKey " syntax error at line 8, near "}" syntax error at line 15, near ") }" Execution aborted due to compilation errors. 我的剧本: use lib '/home/me/Desktop/pm/MD5.pm'; use Digest::MD5

运行代码时,我遇到以下错误:

syntax error line 5, near "use Digest::MD5

sub makeKey 
"
syntax error at line 8, near "}"
syntax error at line 15, near ")
}"
Execution aborted due to compilation errors.
我的剧本:

use lib '/home/me/Desktop/pm/MD5.pm';
use Digest::MD5

sub makeKey 
{
    my ($strPassword, $strRndk);
    $strKey = uc(md5Hash($strPassword)) + $strRndk + "Y(02.>'H}t\":E1" + md5Hash($strKey);
    return $strKey;
}

sub md5Hash 
{
    my ($strPassword);
    $strMd5 = md5_hex($strPassword);
    return substr($strMd5, 16, 16) + substr($strMd5, 0, 16);
}

makeKey('test', '1A2B3C');

使用摘要::MDd5需要以分号结尾。

关于第三个(也是最后一个?)问题:

“第14行调用了未定义的子例程&main::md5_hex”

默认情况下,不导出
md5\u hex
(或任何其他内容),您必须明确告诉它应该导出
md5\u hex

use Digest::MD5 qw(md5_hex);
或者使用完整的
摘要::MD5::MD5_hex
名称。

我这样做了,但现在我得到了“使用库的参数必须是目录,而不是第1行的文件”,所以我这样做了,现在我得到了“第14行调用的未定义的子程序&main::MD5_hex”。