密码主要用作访问信息的方式,还限制可以访问计算机的用户数量。它主要与授权系统的用户名一起使用。有时,由于密钥的强度增加,人们使用密钥而不是密码。
我目前正在开发一个密码生成器(基于 YT 视频),以下是我到目前为止所拥有的。 HTML 文件: 我目前正在开发一个密码生成器(基于 YT 视频),以下是我目前所拥有的。 HTML 文件: <!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml"> <head> <meta charset="utf-8" /> <title></title> <link rel="stylesheet" href="StyleSheet1.css" /> </head> <body> <div id="password-generator"> <h1>Password Generator</h1> <label for="length">Password Length</label> <input type="number" id="length" value="12" min="8" max="30" /> <br /> <label for="uppercase">Include Uppercase</label> <input type="checkbox" id="uppercase" onclick="enableUClength()" /> <br /> <label for="UClength">Uppercase Length</label> <input type="number" id="UClength" value="3" min="3" max="10" /> <br /> <label for="numbers">Include Numbers:</label> <input type="checkbox" id="numbers" checked /> <br /> <label for="symbols">Include Symbols</label> <input type="checkbox" id="symbols" checked /> <br /> <button onclick="generatePassword()">Generate Password</button> <br /> <button onclick="copyToClipboard()">Copy to Clipboard</button> <textarea name="" id="password" rows="3" readonly></textarea> <div id="success-alert" class="alert alert-success" role="alert" style="display: none;"> Password generated successfully ! </div> </div> <script src="Script1.js"></script> </body> </html> 和我的 JS 文件: function generatePassword() { const length = document.getElementById('length').value; const UClength = document.getElementById('UClength').value; const uppercaseCheckbox = document.getElementById('uppercase'); const numbersCheckbox = document.getElementById('numbers'); const symbolsCheckbox = document.getElementById('symbols'); const uppercaseChars = 'QWERTZUIOPASDFGHJKLYXCVBNM'; const lowercaseChars = 'qwertzuiopasdfghjklyxcvbnm'; const numberChars = '1234567890'; const symbolChars = ';~!@#$%^&*_\-+=`|\\(){}\[\]:;"\'<>,.?/'; let validChars = lowercaseChars; if (uppercaseCheckbox.checked) { validChars += uppercaseChars; } if (numbersCheckbox.checked) { validChars += numberChars; } if (symbolsCheckbox.checked) { validChars += symbolChars; } let password = ''; password += uppercaseCheckbox.checked ? uppercaseChars.charAt(Math.floor(Math.random() * uppercaseChars.length)) : ''; password += numbersCheckbox.checked ? numberChars.charAt(Math.floor(Math.random() * numberChars.length)) : ''; password += symbolsCheckbox.checked ? symbolChars.charAt(Math.floor(Math.random() * symbolChars.length)) : ''; for (let i = password.length; i < length; i++) { const randomIndex = Math.floor(Math.random() * validChars.length); password += validChars.charAt(randomIndex); } document.getElementById('password').value = password; document.getElementById('success-alert').style.display = 'block'; setTimeout(() => { document.getElementById('success-alert').style.display = 'none'; }, 3000); } 我现在想要实现的是使用 HTML 文件中声明的 UClength 输入字段中的值,并在密码字符串中生成并随机分布一定数量的大写字符。 我的脚本到目前为止所做的是,如果选中“包含大写”复选框,它会生成从 const uppercaseChars 中挑选的随机数量的随机大写字符。但是我希望,如果用户在大写长度输入字段中输入 3,则将生成相应数量的大写字符并将其添加到 password。 如果您有一个可能的解决方案的想法,我将非常感谢您的意见。 在您的代码中,当选中大写复选框时,您只需添加 uppercaseChars。为了根据输入数字添加大写字符,我更新了大写复选框检查处理程序并生成了保留密码。 这是我更新的代码。 <!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml"> <head> <meta charset="utf-8" /> <title>Password Generator</title> <link rel="stylesheet" href="StyleSheet1.css" /> </head> <body> <div id="password-generator"> <h1>Password Generator</h1> <label for="length">Password Length</label> <input type="number" id="length" value="12" min="8" max="30" /> <br /> <label for="uppercase">Include Uppercase</label> <input type="checkbox" id="uppercase" onclick="enableUClength()" /> <br /> <label for="UClength">Uppercase Length</label> <input type="number" id="UClength" value="3" min="1" max="10" /> <br /> <label for="numbers">Include Numbers:</label> <input type="checkbox" id="numbers" checked /> <br /> <label for="symbols">Include Symbols</label> <input type="checkbox" id="symbols" checked /> <br /> <button onclick="generatePassword()">Generate Password</button> <br /> <button onclick="copyToClipboard()">Copy to Clipboard</button> <textarea name="" id="password" rows="3" readonly></textarea> <div id="success-alert" class="alert alert-success" role="alert" style="display: none;"> Password generated successfully! </div> </div> <script> function generatePassword() { const length = document.getElementById('length').value; const UClength = document.getElementById('UClength').value; const uppercaseCheckbox = document.getElementById('uppercase'); const numbersCheckbox = document.getElementById('numbers'); const symbolsCheckbox = document.getElementById('symbols'); const uppercaseChars = 'QWERTZUIOPASDFGHJKLYXCVBNM'; const lowercaseChars = 'qwertzuiopasdfghjklyxcvbnm'; const numberChars = '1234567890'; const symbolChars = ';~!@#$%^&*_-+=`|\\(){}[]:;"\'<>,.?/'; let validChars = lowercaseChars; if (numbersCheckbox.checked) { validChars += numberChars; } if (symbolsCheckbox.checked) { validChars += symbolChars; } let password = ''; let uppercases = ''; // Here, generate uppercase characters based on input number if (uppercaseCheckbox.checked) { for (let i = 0; i < UClength; i++) { uppercases += uppercaseChars.charAt(Math.floor(Math.random() * uppercaseChars.length)); } } // Here, generate passwords based on remain length except uppercase characters let remainingLength = uppercaseCheckbox.checked ? (length - UClength) : length; for (let i = 0; i < remainingLength; i++) { const randomIndex = Math.floor(Math.random() * validChars.length); password += validChars.charAt(randomIndex); } password += uppercases; password = shuffle(password); document.getElementById('password').value = password; document.getElementById('success-alert').style.display = 'block'; setTimeout(() => { document.getElementById('success-alert').style.display = 'none'; }, 3000); } function shuffle(string) { const array = string.split(''); for (let i = array.length - 1; i > 0; i--) { const j = Math.floor(Math.random() * (i + 1)); [array[i], array[j]] = [array[j], array[i]]; // Swap } return array.join(''); } </script> </body> </html> 希望对您有帮助!
PHP,如何在不使用 JAVASCRIPT 的情况下防止浏览器在刷新/重新发送登录帖子数据时要求保存密码
我正在用 PHP 创建一个登录系统,但我遇到了一个问题,您可以注销然后返回历史记录并重新加载处理登录 POST 数据的页面,它会让您登录。 ..
使用包含的 pub 进行加密,防止 MitM (https) 查看密码。在 iOS/Android 应用程序中键入 [已关闭]
SSL/TLS 是否足以保证我们用户密码的安全,即使是在中间人攻击的情况下,坏人会冒充服务器并发送假 CA 等?这可能吗? 由于该应用程序是
我正在创建一个注册表,需要至少包含 1 个特殊字符的密码。 Chrome 密码管理器不建议使用包含特殊字符的密码,因此验证失败。我
我有gitlab管道尝试ssh到远程机器,我在设置->ci-cd->变量中将机器密码写为变量,我屏蔽并保护了它,但我注意到管理员,所有者和
我们的服务器正在运行 Java 1.5,我在尝试屏蔽来自命令行的用户输入时遇到了困难。我正在执行一个 jar 文件 (java -jar my.jar) 并通过
使用令牌更改忘记的密码还是以纯文本形式发送一次性密码更安全?
我继承了网络软件,其中忘记密码的页面通过电子邮件向用户发送新密码。我计划改变这一点,我现在正在寻找论据,为什么采用下面两种方法之一(或
Android Webview 中的密码管理器建议/自动填充
我的 Android 应用程序正在将 Web 登录页面嵌入到 Web 视图中。 单击登录文本框时,Android 密码管理器中保存的用户名始终会建议在
我正在开发一个 Laravel 项目,并且创建了一个密码更改 API。这是我正在使用的路线: 路线::post('/更改密码', function (Request $request) { // 验证请求数据 ...
我正在尝试在 javascript 中进行密码验证,我在这里使用 W3Schools 的相同示例发现了几个问题,并且我遵循了所有示例的结果,但它并不能确保您
在此输入图像描述 即使使用正确的用户名和密码,我也无法登录我的 GitHub 帐户。他们一直告诉我用户名或密码不正确,而这是公司...
我正在寻找一种方法或算法用于在我的网络应用程序前进行帐户身份验证。姜戈。用户不应创建密码,而应创建 4 位数字。在登录时或
目标 [Laravel\Fortify\Contracts\ResetsUserPasswords] 不可实例化
我正在使用 Laravel 8 和 Fortify 为 SPA 应用程序实现忘记密码/密码重置逻辑。 当 /reset-password 被调用并且数据全部正确时(电子邮件、密码、
根据另一篇文章,我需要: PHP密码恢复 您无法“恢复”密码。你所做的只是两件事之一。 通过电子邮件向用户发送一个链接以创建新密码,覆盖当前密码...
我在网上查找了这个答案,根据我的结果,我无法判断我做错了什么。 打开 Excel 工作簿后,我想声明并设置一个全局常量。我有以下...
我刚刚开始学习ansible,我配置了一个简单的剧本,其中使用无密码远程用户(称为ansible)运行apt install命令,并添加了become:true,如
当您使用个人帐户创建 blazor 项目时。他们在脚手架代码中使用的密码哈希类型或方法是什么? 尝试寻找它,但找不到直接的答案,但我......
Keycloak 访问令牌 - 如何在没有密码的情况下获取它? - C#
在我的 Blazor 应用程序中,我使用 Keycloak 来管理用户身份验证和授权。我的应用程序中的功能之一包括允许用户查看所有用户注册的列表...
我在一篇基本身份验证文章中遇到了这个概念。 网络上的 Base64 明文用户名和密码是什么意思?
您可能认为这是这个问题的重复。事实并非如此,因为这个问题从未得到充分回答。 Firefox 在哪里存储密码?它一定在某个目录中...