brentkozjak/laravel-hash-identify

Laravel 包,用于轻松识别哈希的可能算法

1.0.0 2018-08-13 11:22 UTC

This package is auto-updated.

Last update: 2024-09-29 05:27:55 UTC


README

此包主要基于优秀的 Python 项目 hashID,该项目默认包含在 Kali Linux 中。

除了支持超过 220 种哈希算法外,此包还可以包含相应的 hashcat 模式和 JohnTheRipper 格式。

此包扩展了 Laravel 的默认 HashManager 类,因此您可以使用 Hash 面具轻松生成和识别哈希。

要求

PHP 7 和 Laravel 5.5 或更高版本。

安装

您可以通过 composer 安装此包

composer require "brentkozjak/laravel-hash-identify":"~1.0.0"

此包和外观将由 Laravel 自动发现。

用法

此包扩展了 Laravel 的 HashManager 类,允许您像这样使用默认的 Hash 面具

// Create a hash using Laravel's default Hash::make() method.
$hash = \Hash::make('example');

// Identify the possible hashing algorithm(s) used to create $hash
$hash_modes = \Hash::identify($hash);

// $hash_modes is an instance of a standard Laravel Collection
$hash_modes->pluck('name');
$hash_modes->toArray();
...

关于性能的说明

此包不可避免地使用了大量的 preg_match 正则表达式来匹配哈希算法。虽然我发现性能相当可接受,但我当然愿意进一步优化。

待办事项

测试!

许可协议

此项目是开源软件,根据 GNU 通用公共许可证 许可。