perl处理base64、md5、SHA-1、SHA-256的计算

使用perl可以进行base64、md5、SHA-1、SHA-256的计算,使用也非常方便,下面是示例代码:

perl 复制代码
#! /usr/bin/perl
use v5.14;
use MIME::Base64;
use Digest;

my $test_str = 'hello world';

# 测试base64
say encode_base64($test_str);

# 测试md5
my $md5 = Digest->new('MD5');
$md5->add($test_str);
say $md5->hexdigest;

#测试SHA-1
my $sha1 = Digest->new('SHA-1');
$sha1->add($test_str);
say $sha1->hexdigest;

#测试SHA-256
my $sha256 = Digest->new('SHA-256');
$sha256->add($test_str);
say $sha256->hexdigest;

下图是输出结果:

这个输出值也可以用命令行工具进行对比验证。以ubuntu环境为例,

脚本中使用的"hello world"的base64值可以用如下命令获得:

bash 复制代码
echo -n "hello world" | base64

md5可以用如下命令:

bash 复制代码
echo -n "hello world" | md5sum

SHA-1可以用:

bash 复制代码
echo -n "hello world" | sha1sum

SHA-256 可以用:

bash 复制代码
echo -n "hello world" | sha256sum

可以看到,这些值和使用perl脚本获取的值是一致的。

相关推荐
落羽的落羽35 分钟前
【Linux系统】磁盘ext文件系统与软硬链接
linux·运维·服务器·数据库·c++·人工智能·机器学习
Codefengfeng38 分钟前
Kali-linux中安装与使用Stegsolve
linux·运维·服务器
何中应2 小时前
如何在 Linux 系统中设置系统时间
linux·运维·服务器
予枫的编程笔记2 小时前
【Docker高级篇】吃透Linux底层:Namespace做隔离,Cgroups控资源,UnionFS搭存储
linux·人工智能·namespace·cgroups·unionfs·linux底层原理·容器核心技术
济6173 小时前
ARM Linux 驱动开发篇---Linux 设备树简介-- Ubuntu20.04
linux·arm开发·嵌入式linux驱动开发
leblancAndSherry3 小时前
阿里云轻量/ECS 实战:K3s + Helm + cert-manager + 云效 Codeup 全链路 CI/CD 落地(记录自用)
linux·运维·阿里云·ci/cd·kubernetes·云计算
czxyvX3 小时前
008-Linux命令行参数和环境变量
linux
何中应3 小时前
虚拟机内的系统无法解析外网域名
linux·运维·后端
红叶尽染寂绀蓝3 小时前
已解决:同一ip下,Mac和Windows同时用vscode连接某个Linux远程服务器后,Mac再次连接时无法正确打开远程文件夹,由于转发设置导致
linux·服务器·windows·vscode·tcp/ip·macos
哈哈浩丶3 小时前
LK(little kernel)2:官方LK的通用启动流程
linux·驱动开发