作者:StepBackForThree
來源:bilibili
賽博朋克2077第一天解鎖,玩到“拿貨”這個主線任務時,會收到一張軍用科技給的加密晶片,進入破解介面後可以發現是上下兩行的。最開始對於如何同時破解上下兩行沒有頭緒,經過幾次讀檔後終於發現了破解規律,權當作個記錄。
從上圖可以發現,如果對第一行字元進行匹配,則第二行字元會向後移動一位元,重複此過程,一直到第一行最後一位進行匹配,如下圖:
如果此時點擊E9,則E9與第一行最後一位匹配,與第二行第一位不匹配,造成結果是第一行破解成功,第二行失敗(只要有一位匹配不成功則此行破解失敗),如下圖:
因此發現規律,假設字元的匹配是從單行(a)開始,一直匹配到 a 最後一位結束,此時若另外一行(b)的第一位能與a的最後一位元字元相等,則此時 a,b 兩行在這個位置都匹配成功,且匹配視窗移動到 b 行,從第二位開始繼續匹配,依次往下,直到 b 行所有字元匹配成功,則 a,b 兩行都破解成功。所以我們需要找到 a,b 兩行中相同的字元,若有多個,則判斷匹配視窗在移動到最後一位時這兩個相同的字元是否處於匹配視窗中。在這個任務的晶片裡,應先從第二行開始匹配,一直到最後一位,如下圖:
此時再點擊55,即可將匹配視窗移動到第一行,繼續進行匹配。如下圖:
最後再進行第一行的單行匹配就能將兩行都成功破解。
注:這只是我拿到的第一個需要破解的晶片,並不清楚後續是否會有需要多行(大於2)破解的晶片,或者有多個重複字元,不過辦法應該是通用的,先找相同字元,再通過移動位元數判斷兩個字元是否都處於匹配視窗。
有一說一,這個設計真的挺有意思。