【发布时间】:2019-04-04 11:15:24
【问题描述】:
我必须找到两个作为参数'str1'和'str2'在URL中传递并满足这些条件的字符串?
if($_GET['str1'] !== $_GET['str2'] and $_GET['str1'] and $_GET['str2'])
{
$hash1 = hash('sha256', $salt . $_GET['str1']);
$hash2 = hash('sha256', $salt . $_GET['str2']);
if($hash1 === $hash2) {
#print str1 and str2
}
}
我将如何发现?
【问题讨论】:
-
什么?!我不知道你在说什么!
-
必须在url中找出满足上述条件的str1和str2才能打印结果,httpurl.php?str1=?&str2=?
-
您想要两个不同的字符串给出相同的 sha hash?不可能在合理的时间内弄清楚。
-
据我所知,没有任何已知的(或至少公开的)sha256 冲突。显然两次传递相同的字符串会满足它。基本上,你为什么要问?是比赛吗?思想实验?
-
@Andreas 是的,显然我是盲人。使用
and运算符而不是&&这一事实可能也很重要,因为这听起来像是一个竞赛问题。
标签: php encryption hash sha256 sha