如何检查是否存在 bcrypt 哈希
How to check whether a bcrypt hash is present
很简单,我希望将 bcrpyt 正则表达式合并到 egrep 命令中,以查看每行上是否存在 bcrypt 哈希。
我目前使用 MD5 哈希值很容易做到这一点:
egrep -wa "[a-f0-9]{32}" DB.txt >> DB_md5.txt
egrep -v -a "[a-f0-9]{32}" DB.txt >> DB_nomd5.txt
我研究并发现:
连同解决方案是:$2[ayb]$.{56}
我正在努力将它包含在我的 egrep 命令中。例如:
egrep -wa "$2[ayb]$.{56}" DB.txt >> DB_bcrypt.txt
以上命令无效。非常感谢任何帮助。
注意:bcrypt 散列的位置并不重要,它可以在线上的任何位置,因此我从下面 link 中找到的正则表达式解决方案中删除了 ^ 和 $ .
您可以使用
grep -Ea '$2[ayb]$.{56}' DB.txt >> DB_bcrypt.txt
参见online demo。
注释
-E
- POSIX ERE 语法启用,现在 {56}
范围量词中的 {
和 }
不需要转义(您的正则表达式已解析使用 POSIX BRE 引擎,你需要 \{56\}
匹配一个模式 56 次)
- 正则表达式周围的单引号确保
$
被解析为 $
正则表达式转义,否则 "$"
只是 dentotes 一个 $
特殊字符,即字符串结尾。
很简单,我希望将 bcrpyt 正则表达式合并到 egrep 命令中,以查看每行上是否存在 bcrypt 哈希。
我目前使用 MD5 哈希值很容易做到这一点:
egrep -wa "[a-f0-9]{32}" DB.txt >> DB_md5.txt
egrep -v -a "[a-f0-9]{32}" DB.txt >> DB_nomd5.txt
我研究并发现:
连同解决方案是:$2[ayb]$.{56}
我正在努力将它包含在我的 egrep 命令中。例如:
egrep -wa "$2[ayb]$.{56}" DB.txt >> DB_bcrypt.txt
以上命令无效。非常感谢任何帮助。
注意:bcrypt 散列的位置并不重要,它可以在线上的任何位置,因此我从下面 link 中找到的正则表达式解决方案中删除了 ^ 和 $ .
您可以使用
grep -Ea '$2[ayb]$.{56}' DB.txt >> DB_bcrypt.txt
参见online demo。
注释
-E
- POSIX ERE 语法启用,现在{56}
范围量词中的{
和}
不需要转义(您的正则表达式已解析使用 POSIX BRE 引擎,你需要\{56\}
匹配一个模式 56 次)- 正则表达式周围的单引号确保
$
被解析为$
正则表达式转义,否则"$"
只是 dentotes 一个$
特殊字符,即字符串结尾。