如何检查是否存在bcrypt哈希

时间:2020-06-27 09:04:07

标签: regex grep bcrypt

因此,很简单,我希望将bcrpyt regex合并到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

我研究发现: Regular expression to find bcrypt hash?

解决方案为:\$2[ayb]\$.{56}

我正在努力将其包含在我的egrep命令中。例如:

egrep -wa "\$2[ayb]\$.{56}" DB.txt >> DB_bcrypt.txt

以上命令不起作用。任何帮助将不胜感激。

注意:bcrypt哈希的位置并不重要,它可以位于行中的任何位置,因此为什么我从下面链接中的正则表达式解决方案中删除了^和$。

1 个答案:

答案 0 :(得分:1)

您可以使用

grep -Ea '\$2[ayb]\$.{56}' DB.txt >> DB_bcrypt.txt

请参见online demo

注释

  • -E-启用POSIX ERE语法,现在{}范围限定符中的{56}\{56\}不需要转义(您的正则表达式已使用POSIX BRE引擎解析,并且您需要\$来匹配模式56次)
  • 正则表达式周围的单引号可确保将\$解析为"\$"的正则表达式转义,否则$只会使用animal,speed,weight=zip(*sorted_tuple(tuples_list)) 特殊字符,即字符串。
相关问题