{"id":147,"date":"2013-12-13T08:35:57","date_gmt":"2013-12-13T08:35:57","guid":{"rendered":"http:\/\/tastaturkind.ch\/?p=147"},"modified":"2013-12-13T08:35:57","modified_gmt":"2013-12-13T08:35:57","slug":"perl-pronouncable-passwords","status":"publish","type":"post","link":"https:\/\/oliver-frick.ch\/wordpress\/index.php\/2013\/12\/13\/perl-pronouncable-passwords\/","title":{"rendered":"Perl: pronouncable passwords"},"content":{"rendered":"<p><code>#! \/usr\/bin\/perl<\/p>\n<p># pronouncable.pl<br \/>\n# Barton Chittenden, July 28, 2004<br \/>\n# Creates a random, pronouncable word. Each word is made of<br \/>\n# 3, 4 or 5 pairs of consonant-groups and vowels. The consonant-<br \/>\n# group may be a single consonant or a pair of consonants like<br \/>\n# 'ch', 'sh' or 'th'.<\/p>\n<p>use strict;<\/p>\n<p>my @vowels = (\"a\", \"e\", \"i\", \"o\", \"u\");<br \/>\nmy @consonants = ( \"b\", \"c\", \"d\", \"f\", \"g\", \"j\", \"k\", \"l\", \"m\",<br \/>\n\"n\", \"p\", \"r\", \"s\", \"t\", \"v\", \"w\", \"x\", \"y\",<br \/>\n\"b\", \"c\", \"d\", \"f\", \"g\", \"k\", \"l\", \"m\", \"n\",<br \/>\n\"n\", \"p\", \"r\", \"s\", \"t\", \"w\", \"s\", \"y\",<br \/>\n\"z\", \"ch\", \"sh\", \"th\", \"ch\", \"sh\", \"th\");<br \/>\nmy $wordlen = int(rand 3) + 2;<br \/>\nfor(my $i = 0; $i &lt; $wordlen; $i++){<br \/>\nprint $consonants[int(rand scalar(@consonants))];<br \/>\nprint $vowels[int(rand scalar(@vowels))];<br \/>\n}<br \/>\nprint \"\\n\";<\/code><\/p>\n","protected":false},"excerpt":{"rendered":"<p>#! \/usr\/bin\/perl # pronouncable.pl # Barton Chittenden, July 28, 2004 # Creates a random, pronouncable word. Each word is made of # 3, 4 or 5 pairs of consonant-groups and vowels. The consonant- # group may be a single consonant &hellip; <a href=\"https:\/\/oliver-frick.ch\/wordpress\/index.php\/2013\/12\/13\/perl-pronouncable-passwords\/\">Weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-147","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/oliver-frick.ch\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/147","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/oliver-frick.ch\/wordpress\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/oliver-frick.ch\/wordpress\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/oliver-frick.ch\/wordpress\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/oliver-frick.ch\/wordpress\/index.php\/wp-json\/wp\/v2\/comments?post=147"}],"version-history":[{"count":0,"href":"https:\/\/oliver-frick.ch\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/147\/revisions"}],"wp:attachment":[{"href":"https:\/\/oliver-frick.ch\/wordpress\/index.php\/wp-json\/wp\/v2\/media?parent=147"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/oliver-frick.ch\/wordpress\/index.php\/wp-json\/wp\/v2\/categories?post=147"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/oliver-frick.ch\/wordpress\/index.php\/wp-json\/wp\/v2\/tags?post=147"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}