【问题标题】:Perl - when to base64 decode?Perl - 何时进行 base64 解码?
【发布时间】:2011-12-29 18:28:54
【问题描述】:

我有一个有趣的问题。我正在研究一个 Perl 脚本,它接受各种字符串,一些是 base64 编码的,另一些不是。

此数据结构是动态的,由第三方应用程序的输入生成。我没有现成的方法来提前知道这些字段中哪些是 base64 编码的,哪些不是。

我研究过的各种解决方案都涉及输入数据的正则表达式。不幸的是,如果数据具有相同的严格字母数字结构,这些都会失败。

如何确定哪些字符串是真正的 base64 编码的?

【问题讨论】:

标签: perl base64 pcre


【解决方案1】:

我最终将所有内容解码为一个临时变量,并看到输出包含任何高八位字节输出。

    $value2=decode_base64( $hash{$key} );
    if( !( $value2 =~ m/[\x7F-\xFF]/ ) )
    {
        print "It appears that $key is base64 encoded.\n";
        $value=$value2;
    }
    else
    {
        print "It appears that $key is not base64 encoded.\n";
    }

【讨论】:

    猜你喜欢
    • 2016-01-09
    • 1970-01-01
    • 2018-02-22
    • 1970-01-01
    • 2020-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-16
    相关资源
    最近更新 更多