{"id":224,"date":"2014-05-12T23:11:04","date_gmt":"2014-05-13T06:11:04","guid":{"rendered":"http:\/\/www.klsoftware.com\/blog\/?p=224"},"modified":"2015-11-21T12:15:04","modified_gmt":"2015-11-21T19:15:04","slug":"md5-hash-using-perl","status":"publish","type":"post","link":"https:\/\/www.klsoftware.com\/blog\/?p=224","title":{"rendered":"MD5 hash using Perl"},"content":{"rendered":"<p>Earlier, I demonstrated using groovy with a simple bit of code to create an MD5 hash.  Here is a Perl version, notice how little code is used.<\/p>\n<pre class=\"brush: perl; title: ; notranslate\" title=\"\">\r\n#!\/usr\/bin\/perl\r\nuse strict;\r\nuse warnings;\r\nuse Digest::MD5 qw(md5 md5_hex md5_base64);\r\nuse Digest::SHA qw(sha1 sha1_hex sha1_base64);\r\nuse MIME::Base64;\r\nmy $password;\r\nif (scalar @ARGV eq 1) {\r\n\t$password = shift;\r\n} else {\r\n\t$password = &quot;password&quot;;\r\n}\r\nprint &quot;MD5 hex digest of $password = &quot;,md5_hex($password), &quot;\\n&quot;;  # human-readable\r\nprint &quot;MD5 base64 digest of $password = &quot;,md5_base64($password), &quot;\\n&quot;;  # human-readable too\r\nprint &quot;SHA1 hex digest of $password = &quot;,sha1_hex($password), &quot;\\n&quot;;  # human-readable\r\nprint &quot;SHA1 base64 digest of $password = &quot;,sha1_base64($password), &quot;\\n&quot;;  # human-readable too\r\n<\/pre>\n<p>Pretty cool, and this code runs on just about any linux\/unix machine.  In Windows, I ran the code using Strawberry Perl.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Earlier, I demonstrated using groovy with a simple bit of code to create an MD5 hash. Here is a Perl version, notice how little code is used. #!\/usr\/bin\/perl use strict; use warnings; use Digest::MD5 qw(md5 md5_hex md5_base64); use Digest::SHA qw(sha1 sha1_hex sha1_base64); use MIME::Base64; my $password; if (scalar @ARGV eq 1) { $password = shift; [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-224","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/www.klsoftware.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/224","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.klsoftware.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.klsoftware.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.klsoftware.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.klsoftware.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=224"}],"version-history":[{"count":2,"href":"https:\/\/www.klsoftware.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/224\/revisions"}],"predecessor-version":[{"id":247,"href":"https:\/\/www.klsoftware.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/224\/revisions\/247"}],"wp:attachment":[{"href":"https:\/\/www.klsoftware.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=224"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.klsoftware.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=224"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.klsoftware.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=224"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}