{"id":355,"date":"2002-04-23T13:51:19","date_gmt":"2002-04-23T18:51:19","guid":{"rendered":"http:\/\/www.ashleyit.com\/blogs\/brentashley\/?p=355"},"modified":"2002-04-23T13:51:19","modified_gmt":"2002-04-23T18:51:19","slug":"sport-score-passwords","status":"publish","type":"post","link":"https:\/\/ashleyit.com\/blogs\/brentashley\/2002\/04\/23\/sport-score-passwords\/","title":{"rendered":"Sport Score Passwords"},"content":{"rendered":"<p>I wanted to generate some reasonable passwords but make them rememberable.  I looked into pronounceable passwords, but they relied on dictionaries or other support files, so I came up with a new approach &#8211; the Sport Score password.  These passwords are designed to be remembered as a College sport score, for instance:  Password KY5MA9 is remembered as Kentucky 5, Massachusetts 9.<\/p>\n<p>50 states x 50 states x 10 x 10 = 250,000 unique passwords, good enough for many needs.<\/p>\n<p>Here&#8217;s the PHP code&#8230;<br \/>\n<!--more--><\/p>\n<pre>\n$aPwd = getPassword();\nprint \"Your password is a sport score: \" . $aPwd['password'] . \", pronounced '\" . $aPwd['text'] . \"'\";\n\nfunction getPassword(){\n  $aStates = Array (\n    \"ALABAMA\"        => \"AL\", \"ALASKA\"        => \"AK\", \"ARIZONA\"        => \"AZ\",\n    \"ARKANSAS\"       => \"AR\", \"CALIFORNIA\"    => \"CA\", \"COLORADO\"       => \"CO\", \n    \"CONNECTICUT\"    => \"CT\", \"DELAWARE\"      => \"DE\", \"FLORIDA\"        => \"FL\",\n    \"GEORGIA\"        => \"GA\", \"HAWAII\"        => \"HI\", \"IDAHO\"          => \"ID\",\n    \"ILLINOIS\"       => \"IL\", \"INDIANA\"       => \"IN\", \"IOWA\"           => \"IA\", \n    \"KANSAS\"         => \"KS\", \"KENTUCKY\"      => \"KY\", \"LOUISIANA\"      => \"LA\", \n    \"MAINE\"          => \"ME\", \"MARYLAND\"      => \"MD\", \"MASSACHUSETTS\"  => \"MA\",\n    \"MICHIGAN\"       => \"MI\", \"MINNESOTA\"     => \"MN\", \"MISSISSIPPI\"    => \"MS\",\n    \"MISSOURI\"       => \"MO\", \"MONTANA\"       => \"MT\", \"NEBRASKA\"       => \"NE\",\n    \"NEVADA\"         => \"NV\", \"NEW HAMPSHIRE\" => \"NH\", \"NEW JERSEY\"     => \"NJ\",\n    \"NEW MEXICO\"     => \"NM\", \"NEW YORK\"      => \"NY\", \"NORTH CAROLINA\" => \"NC\",\n    \"NORTH DAKOTA\"   => \"ND\", \"OHIO\"          => \"OH\", \"OKLAHOMA\"       => \"OK\",\n    \"OREGON\"         => \"OR\", \"PENNSYLVANIA\"  => \"PA\", \"RHODE ISLAND\"   => \"RI\", \n    \"SOUTH CAROLINA\" => \"SC\", \"SOUTH DAKOTA\"  => \"SD\", \"TENNESSEE\"      => \"TN\",\n    \"TEXAS\"          => \"TX\", \"UTAH\"          => \"UT\", \"VERMONT\"        => \"VT\",\n    \"VIRGINIA\"       => \"VA\", \"WASHINGTON\"    => \"WA\", \"WEST VIRGINIA\"  => \"WV\",\n    \"WISCONSIN\"      => \"WI\", \"WYOMING\"       => \"WY\"\n  );\n  \n  $aStateNames = array_keys($aStates);\n  $aStateAbbrs = array_values($aStates);\n  \n  $pwd = '';\n  $txt = '';\n  $r = rand(0,49);\n  $pwd .= \"$aStateAbbrs[$r]\";\n  $txt .= \"$aStateNames[$r]\";\n  $r = rand(1,9);\n  $pwd .= \"$r\";\n  $txt .= \" $r, \";\n  $r = rand(0,49);\n  $pwd .= \"$aStateAbbrs[$r]\";\n  $txt .= \"$aStateNames[$r]\";\n  $r = rand(1,9);\n  $pwd .= \"$r\";\n  $txt .= \" $r\";\n  \n  return Array( 'password' => $pwd, 'text' => $txt );\n}\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>I wanted to generate some reasonable passwords but make them rememberable. I looked into pronounceable passwords, but they relied on dictionaries or other support files, so I came up with a new approach &#8211; the Sport Score password. These passwords are designed to be remembered as a College sport score, for instance: Password KY5MA9 is [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"activitypub_content_warning":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-355","post","type-post","status-publish","format-standard","hentry","category-blather"],"_links":{"self":[{"href":"https:\/\/ashleyit.com\/blogs\/brentashley\/wp-json\/wp\/v2\/posts\/355","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ashleyit.com\/blogs\/brentashley\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ashleyit.com\/blogs\/brentashley\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ashleyit.com\/blogs\/brentashley\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/ashleyit.com\/blogs\/brentashley\/wp-json\/wp\/v2\/comments?post=355"}],"version-history":[{"count":0,"href":"https:\/\/ashleyit.com\/blogs\/brentashley\/wp-json\/wp\/v2\/posts\/355\/revisions"}],"wp:attachment":[{"href":"https:\/\/ashleyit.com\/blogs\/brentashley\/wp-json\/wp\/v2\/media?parent=355"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ashleyit.com\/blogs\/brentashley\/wp-json\/wp\/v2\/categories?post=355"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ashleyit.com\/blogs\/brentashley\/wp-json\/wp\/v2\/tags?post=355"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}