术语

  • 明文: 原始数据
  • 编码: 一种数据表示形式 如 Base64
  • 密文: 加密函数的输出内容
  • Key: 解密密文需要的信息
  • 非对称加密: 使用不同密钥进行加密和解密
  • 对称加密: 使用相同密钥进行加密和解密
  • 蛮力: 尝试不同密码进行暴力破解
  • 密码分析: 利用底层数学弱点进行攻击
  • 彩虹表: 破解没有加 solt的哈希方法

密码破解

为什么要在 GPU 上进行破解?

显卡有成千上万的核心。虽然它们不能像CPU那样做同样的工作,但它们非常擅长哈希函数中涉及的一些数学运算。这意味着你可以使用显卡更快地破解大多数散列类型。一些散列算法,特别是bcrypt,被设计成在GPU上的散列与在CPU上的散列速度差不多,这有助于它们抵御破解。

在虚拟机上破解?

虚拟机通常不能访问主机的显卡(你可以设置,但这是一个很大的工作)。如果你想运行hashcat,最好在你的主机上运行它(网站上有Windows版本,可以从powerhell上运行)。你可以用OpenCL在虚拟机上运行Hashcat,但速度可能会比在主机上破解差很多。John the ripper默认使用CPU,因此可以在虚拟机中工作,尽管你在主机操作系统上运行可能会得到更好的速度,因为它将有更多的线程,并且没有在虚拟机中运行的开销。

工具

  • hashcat john : 暴力破解工具