密码是保护个人信息的重要工具,为了保证密码的强度,我们通常会选择包括各种字符类型的复杂密码。但是,一系列难以记忆的字符串不仅容易遗忘,而且也不一定更安全。那有没有一种既容易记忆,又能够确保安全的密码生成方式呢?答案是使用 xkcd 风格的密码生成方法。
xkcd 风格密码是什么?
xkcd 是一家网络漫画公司,他们曾经推出了这样一幅漫画:
漫画描述了一种用普通单词而非随机字符生成的密码。xkcd 风格密码通常由 4-6 个单词组成,这样即便是机器人也很难将其猜中。事实上,这种密码比由随机字符组成的复杂密码更难破解。
npm 包 @coderbyheart/xkcd-password 是什么?
@coderbyheart/xkcd-password
是一个通过 CLI 或者 Node.js API 使用 xkcd 风格密码生成器的 npm 包。它可以生成 4-6 个单词组成的密码,也可以自定义单词列表或者单词数目等参数。
如何使用 @coderbyheart/xkcd-password?
1. 安装
npm install -g @coderbyheart/xkcd-password
或者在项目中使用:
npm install @coderbyheart/xkcd-password
2. 使用 CLI
在命令行下,输入:
xkcd-password
即可生成一个默认设定的密码,如:
butterfly bridge central minefield
如果需要自定义单词列表或者单词数目等参数,请使用 -h
或者 --help
查看帮助:
xkcd-password --help
3. 在 Node.js 中使用 API
const xkcdPassword = require('@coderbyheart/xkcd-password'); console.log(xkcdPassword()); // butterfly bridge central minefield
也可以自定义单词列表或者单词数目等参数:
const xkcdPassword = require('@coderbyheart/xkcd-password'); console.log(xkcdPassword({ numWords: 6, minLength: 5, maxLength: 8, words: ['apple', 'banana', 'cherry', 'date', 'elderberry', 'fig'] })); // banana cherry apple elderberry cherry date
总结
使用 @coderbyheart/xkcd-password
可以方便地生成安全易记的密码,这些密码的安全性不亚于随机字符组成的复杂密码。我们建议您在需要设置密码时优先考虑使用 xkcd 风格密码。
示例代码
-- -------------------- ---- ------- ----- ------------ - --------------------------------------- ---------------------------- -- --------- ------ ------- --------- -- -------------------------- --------- -- ---------- -- ---------- -- ------ --------- --------- --------- ------- ------------- ------ ---- -- ------ ------ ----- ---------- ------ ---- --
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60055d2581e8991b448dadc1