Làm thế nào để có được những SHA256 băm trong Perl

Nhiệm vụ. Trong Perl mã là biến. Bạn cần phải tính toán SHA256 băm giá trị của biến này.

Quyết định

Các giải pháp để sử dụng Perl thư viện Digest::SHA. Thư viện Digest::SHA là Perl, vì vậy, nếu bạn có Perl, thư viện này là có bổ sung cài đặt, không có gì.

Được SHA256 băm, bạn có thể sử dụng mã này:

▶ Run
#!/usr/bin/perl

use Digest::SHA qw(sha256_hex);

my $var = 123;

my $sha256_hash = sha256_hex($var);

print $sha256_hash;

Này, chương trình hiển thị các chuỗi 'a665a45920422f9d417e4867efdc4fb8a04a1f3fff1fa07e998e86f7f7a27ae3'.

  • use Digest::SHA qw(sha256_hex); — chúng tôi kết nối Perl thư viện và nói rằng từ thư viện này, chúng tôi cần một chức năng sha256_hex
  • my $var = 123; — tạo ra một biến và đặt giá trị 123
  • my $sha256_hash = sha256_hex($var); — sử dụng năng sha256_hex , chúng tôi tính SHA256 băm giá trị của các biến $var và đưa ra kết quả ở một biến $sha256_hash
  • print $sha256_hash; — đưa giá trị của biến $sha256_hash trên màn hình

Nếu thư viện không chỉ ra rằng chúng ta cần một chức năng sha256_hex, và chỉ cần viết use Digest::SHA;, khi thực hiện các chương trình sẽ được đề:

Undefined subroutine &main::sha256_hex called at script.pl line 7.

Các dạng của trở lại giá trị của một chức năng sha256_hex

Chức năng sha256_hex luôn luôn trở về một chuỗi. Trong dòng này, luôn luôn chính xác 64 nhân vật. Dòng này có thể được những con số từ 0 tới 9 và chữ Latin trong trường hợp thấp hơn từ 'a' đến 'f'. Các ký hiệu khác trong hàng này không thể được.

Chức năng sha256_hex SHA256 trả về một chuỗi trong đó có một số thập phân, ký hiệu.

Đó một phiên bản của Perl thư viện Digest::SHA có ngay lập tức

Ở đầu này văn bản nói rằng thư viện Digest::SHA đến với Perl nếu bạn có Perl, thư viện này ngay lập tức có sẵn. Thực ra nó không phải là như vậy. Thư viện Digest::SHA đầu tiên giới thiệu bản Perl 5.10. Vì vậy, nếu bạn có Perl phiên bản 5.8 hay thấp hơn, sau đó, thư viện này phải được đưa ra. Nhưng thậm chí còn tốt hơn để nâng cấp Perl hơn gần đây. Perl 5.8 được phát hành vào năm 2002.

Các bài viết khác