<!DOCTYPE html>
<!-- Requires Crypt::HSXKPasswd available at
     https://github.com/bbusschots/hsxkpasswd/releases -->
<html>
    <head>
    <title>Lucas IT Services - Secure Memorable Password Generator</title>
            <link rel="icon" href="../images/favicon.ico" sizes="16x16 24x24 32x32 48x48 64x64" type="image/vnd.microsoft.icon"/>
        <link href="../css/tools.css" rel="stylesheet" type="text/css">
        <meta charset="UTF-8" />
        <meta name="google" content="notranslate" />  
        <meta http-equiv="Content-Language" content="en_US" />
    </head>
    <body>
        <img src="../images/Logo.png" width="96" height="96"/>
     <p><font size = "+4">Secure Memorable Password Generator</font></p>
     <p>This page uses my xkcdpass.py tool available 
            <a href="https://github.com/djlucas/xkcdpass.py">here</a>.
        Feel free to take it and do what you want with it. The simple page source is available
            <a href="https://tools.lucasit.com/passwords/index.phps">here</a>.</p>
    <div style="width:1050px;">
            <div style="width:500px; float:left;">
                <p><font size = "5">Standard</font><br/><font size=2>Blade standard</font></p>
                <div class="boxed">
            <pre><?php echo shell_exec("/usr/bin/xkcdpass.py -t STD -N 10 -S") ?></pre>
                </div>
            </div>

            <div style="width:500px; float:right;">
                <p><font size = "5">Alternate</font><br/><font size = "2">Alternate format (no delimters)</font></p>
                <div class="boxed">
            <pre><?php echo shell_exec("/usr/bin/xkcdpass.py -t ALT -N 10 -S") ?></pre>
                </div>
            </div>

            <div style="width:500px; float:left;">
                <p><font size = "5">Windows Server Essentials</font><br/><font size = "2">Compliant with Windows Server Essentials</font></p>
                <div class="boxed">
            <pre><?php echo shell_exec("/usr/bin/xkcdpass.py -t WSE -N 10 -S") ?></pre>
                </div>
            </div>

            <div style="width:500px; float:right;">
                <p><font size = "5">Strict 56bit</font><br/><font size = "2">Minimum 56 bits of entropy, even if attacker knows the scheme</font></p>
                <div class="boxed">
            <pre><?php echo shell_exec("/usr/bin/xkcdpass.py -t STR -N 10 -S") ?></pre>
                </div>
       </div>
           <div style="width:500px; float:left;">
                <p><font size = "5">64 Alpha Numeric Chars</font><br/><font size = "2">64 random numbers, lower and uppper case letters (372 bits of entropy)</font></p>
                <div class="boxed">
        <pre><?php
                    function generateRandomString($length = 10) {
                        return substr(str_shuffle(str_repeat($x='0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', ceil($length/strlen($x)) )),1,$length);
            }
                    $i = 0;
            do {
                echo generateRandomString(64);
            echo "\n";
            $i++;
            } while ($i < 10);
                    ?></pre>
                </div>
        </div>
            <div style="width:500px; float:right;">
                <p><font size = "5">64 ASCII Chars</font><br/><font size = "2">64 random ASCII characters (762 bits of entropy)</font></p>
                <div class="boxed">
                <pre><?php
                    function generateRandomASCIIString($length = 10) {
                        return substr(str_shuffle(str_repeat($x='0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%^&*()-=_+[]{},.;:?', ceil($length/strlen($x)) )),1,$length);
                    }
                    $i = 0;
                    do {
                        echo generateRandomASCIIString(64);
                        echo "\n";
                        $i++;
                    } while ($i < 10);
                    ?></pre>
                </div>
            </div>
            <div style="width:1000px; float:left;">
                <p><font size = "5">128 ASCII Chars</font><br/><font size = "2">128 random ASCII characters (889 bits of entropy)</font></p>
                <div class="boxed">
                <pre><?php
                    function generateRandom128ASCIIString($length = 10) {
                        return substr(str_shuffle(str_repeat($x='0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%^&*()-=_+[]{},.;:?', ceil($length/strlen($x)) )),1,$length);
                    }
                    $i = 0;
                    do {
                        echo generateRandom128ASCIIString(128);
                        echo "\n";
                        $i++;
                    } while ($i < 10);
                    ?></pre>
                </div>
            </div>
    </div>
    </body>
</html>