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脚本获取的值是一致的。

相关推荐
zfxwasaboy3 小时前
Linux宏clamp(val, lo, hi)的作用
linux·运维·服务器
我爱学习好爱好爱4 小时前
Ansible 常用模块详解:lineinfile、replace、get_url实战
linux·python·ansible
吴声子夜歌5 小时前
TypeScript——基础类型(三)
java·linux·typescript
DA02216 小时前
系统移植-STM32MP1启动详解(BootROM)
linux·bsp·系统移植
春日见6 小时前
自驾算法的日常工作?如何提升模型性能?
linux·人工智能·机器学习·计算机视觉·自动驾驶
李彦亮老师(本人)6 小时前
【Linux系统】Rocky Linux 9.7操作系统简介
linux·运维·服务器·docker·kubernetes
minji...6 小时前
Linux 进程信号(二)信号的保存,sigset_t,sigprocmask,sigpending
linux·运维·服务器·网络·数据结构·c++·算法
A.A呐6 小时前
【Linux第二十章】socket
linux
何中应6 小时前
Grafana如何重置密码
linux·运维·服务器·grafana
charlie1145141917 小时前
2026年正点原子开发板移植方案——从0开始的Rootfs之路(3)inittab 与 init 系统:Linux 启动的“第一号进程“全解析
linux·驱动开发·学习·嵌入式开发·嵌入式linux