PHPで変なテキトーなパスワードハッシュの作り方のパッチ var.20200715
少し機能を追加したのでパッチをブログで残しておく
ShiftとShiftをXorして、それをXorするのは、クロス・クロスオア・シフトって言うジョークで作った
static function NotXorLeft($x) {
if ($x > 16) {
$x = 16;
}
$x = self::$seed << $x;
self::Not();
self::$seed = self::$seed ^ $x;
}
static function NotXorRight($x) {
if ($x > 16) {
$x = 16;
}
$x = self::$seed >> $x;
self::Not();
self::$seed = self::$seed ^ $x;
}
static function XxorShift($x, $y) {
if ($x > 16) {
$x = 16;
}
if ($y > 16) {
$y = 16;
}
$x = self::$seed >> $x;
$y = self::$seed << $y;
$x = $x ^ $y;
self::$seed = self::$seed ^ $x;
}
static function NotXxorShift($x, $y) {
if ($x > 16) {
$x = 16;
}
if ($y > 16) {
$y = 16;
}
$x = self::$seed >> $x;
$y = self::$seed << $y;
$x = $x ^ $y;
self::Not();
self::$seed = self::$seed ^ $x;
}