傳統(tǒng)的加密芯片,都是采用算法認(rèn)證的方案,他們所鼓吹的是加密算法如何復(fù)雜,如何難以破解,卻沒有考慮到算法認(rèn)證方案本身存在極大的安全漏洞。我們清楚的知道,單片機(jī)是一個(gè)不安全的載體,可以說對(duì)盜版商來講,是完全透明的也不 為過,做算法認(rèn)證,勢(shì)必要在單片機(jī)內(nèi)部提前寫入密鑰或密碼,每次認(rèn)證后給單片機(jī)一個(gè)判斷標(biāo)志,作為單片機(jī)執(zhí)行的一個(gè)判斷依據(jù),那么盜版商就可以輕松的抓住 這一點(diǎn)進(jìn)行攻擊,模擬給出單片機(jī)一個(gè)信號(hào),輕松繞過加密芯片,從而達(dá)到破解的目的。如果說,要破解芯片內(nèi)部數(shù)據(jù),那么通過傳統(tǒng)的剖片、紫外光、調(diào)試端口、 能量分析等多種手段,都可以破解。
采用智能卡芯片平臺(tái)的加密芯片,本身就可以有效防護(hù)這些攻擊手段,將MCU中的部分代碼或算法植入到加密芯片內(nèi)部,在加密芯片內(nèi)部來執(zhí)行這些程序,使得加密芯片內(nèi)部的程序代碼成為整個(gè)MCU程序的一部分,從而可以達(dá)到加密 的目的,因?yàn)镸CU內(nèi)部的程序不完整,即便被盜版了,由于缺少關(guān)鍵代碼,也無法進(jìn)行復(fù)制,那么選擇什么樣的代碼或程序,放入到加密芯片內(nèi)部,就是考驗(yàn) MCU編程者的功力了,盡可能的多植入程序,盡可能的增加算法的強(qiáng)度,就可以有效防止被破譯的可能。
加密芯片的安全性是取決于芯片自身的安全,同時(shí)還取決于加密方案的可靠性。部分公司會(huì)給廣大客戶以誤導(dǎo),過分強(qiáng)調(diào)什么算法,無論采用對(duì)稱算法 3DES 、AES 還是采用非對(duì)稱算法RSA ECC等,甚至采用國密辦算法SM2 SM4等等,都是對(duì)防抄板來說,是沒有太多的用處的。
對(duì)于方案設(shè)計(jì)公司,是無法使用SM1等國密辦算法的,銷售國密辦算法的廠家必須有銷售許可證,這一點(diǎn)是很多方案公司不可能有的,同時(shí)認(rèn)證的方案本身就存在安全隱患,盜版商是不會(huì)去破解什么算法,而是從加密方案的漏洞去入手,去攻破,所以說,我們一直強(qiáng)調(diào),加密方案的設(shè)計(jì)是非常重要的環(huán)節(jié),不能簡(jiǎn)單的只看到加密芯片的自身的安全性。