目前國外的最快進展是能讀取3DS遊戲的頭數據庫,但是仍有bug。另外試玩版SD端的加密密鑰破解困難。
目前已知的情況是這樣
1.任天堂在遊戲ROM中做了多重加密,頭數據和遊戲主數據及別的加密(如果有的話)密鑰是不同的。
2.基本的加密格式(貌似?)是SHA-2+RSA,已經找到的密鑰都是256位的。
3.在卡帶中有獨立的反dump(貌似?)芯片,這個芯片中還有N3DS唯壹的身份識別簽名,搞不好還會有這個遊戲獨壹無二的身份簽名。
4.SD卡中的文件,每壹個都有不同的密鑰進行加密。例如,試玩版由.cmd,.app和.tmd組成,目前國外破解界只找到了部分.tmd的密鑰。
我參考了壹下巴士的壹篇文章
作者是JinWoo Choi(歡迎轉載,但是請註明作者)
他的文章說的內容大致是這樣的,在N3DS之前的任天堂主機時代,系統反盜版驗證程序在遊戲運行之後是不起作用的,但是在N3DS時代,反盜版驗證程序就可以幹涉遊戲運行,進行壹些簽名核對,不合法則會隨時關閉遊戲進程。在這套動作中,遊戲與系統的關系,就像Windows與Office的關系,Office運行時Windows並不退出,而且Windows可以聯網檢查程序的合法性(N3DS是不用聯網的)所以目前的Office2010破解就只能靠內建服務器驗證,不能跟Windows的加密驗證機制硬耗。
N3DS的問題也差不多在這個地方。就是我們不能跟N3DS內建的加密驗證機制硬耗,要麽找到驗證密鑰,要麽通過什麽方法繞過N3DS的加密。找到驗證密鑰應該就是老燒錄卡的模式,我個人認為絕對是行不通的。因為每個卡帶內部都有獨壹無二的加密芯片,這部分是蒙不過N3DS的加密驗證的。
繞過加密呢,目前主流的意見是走軟刷。這個估計90年代的玩家應該都不知道什麽是軟刷吧= =軟刷主要應用在NDS和NDSL主機上,因為它們同時可以插入NDS和GBA卡,軟刷就是刷入壹個自制的系統,然後把NDS遊戲ROM轉換為這個系統可以允許運行的格式,然後插在GBA卡端運行。具體的原理我也不了解(畢竟我也是90後)從理論上看,在N3DS上用這個方法應該是可行的。
可惜有個問題,就是N3DS的系統除了走系統自帶更新外暫時沒有第二種改寫方法。
可能還會有人問,那麽用SD卡端怎麽樣呢?這個問題我做過實驗(雖然在GBATemp被壹頓猛噴)也存在問題,就是從eshop下載的軟件,無論對SD卡端的文件做什麽改動,Home Menu的對應圖標和title文字都不會消失的。也就是說這些是被存儲在系統裏面了,也就必須要通過刷系統才能更改。還有壹些隱藏數據的說法,這個我不太懂,誰能給我解釋壹下麽?
於是大家也發現了吧,這裏有壹個問題。要通過N3DS的反盜版機制就必須要刷機,但是目前沒有行之有效的刷機措施。DS系的主機壹向是刷機難,N3DS屬於難上加難。
還有人說用Wii的軟刷方式,我本人沒有Wii,但是從網絡上給出的措施來看,貌似Wii對於.wad的程序是壹概通吃,升級3.4屏蔽之後仍然可用塞爾達的漏洞運行.wad,而且Wii居然支持隨便換存檔,Wii的可操作性比N3DS要高得多了。
N3DS目前的悖論是這樣的,要玩盜版必須要先刷機,但是N3DS不會允許沒有通過其系統驗證的程序運行,就是後期再往裏面塞程序是不能運行的,也就是不能刷機。
當然也不是沒有解決的辦法,其中之壹就是自己架壹個可以下載程序的服務器,這就需要我們把SD端的文件結構弄明白,虛擬服務器的技術我不了解,但是用普通電腦應該沒有問題。但是這個措施不能帶來什麽需要交錢的服務,沒人會願意做的。
我認為N3DS最後壹定會破解的,可能不是通過什麽歷史上有過的方式。為什麽我們現在想不出來?因為歷史上沒有碰到過封鎖這麽死的掌機。如果必須要走盈利道路,最後的破解方式肯定是歷史上從未有過的。
最後隨便說幾點吧。
1.N3DS不會BAN機,具體請見GBATemp的置頂帖。
2.目前討論N3DS破解的國外主站有GBATemp和3dbrew(自行谷歌),GBATemp都是壹幫技術大神,建議沒資歷的別去了,後面那個網站目前是國外對於N3DS破解進展最快的網站,是個Wiki,沒事去看看吧,或許能找到什麽靈感。