我明白線性化攻擊是什麼以及它是如何執行的。我只是想了解下面的代碼是如何允許的,因爲如果輸入的字符串等於或大於8,它應該以相同的迭代計數結束?線性化攻擊
int main(int argc, const char *argv[])
{
int i;
boolean flag = true;
char serial [9] = 「S123N456\n」;
if(strlen(argv[1]) < 8)
{
printf(「\nError try again.\n\n」);
exit(0);
}
for(i = 0; i < 8; ++i)
{
if(argv[1][i] != serial[i])flag = false;
}
if(flag)
{
printf(「\bSerial number is correct!\n\n」);
}
}
[This](https://en.wikipedia.org/wiki/XSL_attack)?這與問題中的代碼無關。 – immibis
線性化攻擊的定義將非常有幫助。 – user3386109