1. 程式人生 > >晶片程式燒錄的熔斷機制與安全

晶片程式燒錄的熔斷機制與安全

熔絲位是在一個特定的地址上可以讀到熔絲狀態的一個位。0表示已熔斷,1表示未熔斷。微控制器MCU或者CPU等晶片在特定的引腳外加高電平後,可以通過產生的電流燒斷裡邊的熔絲,進而使晶片裡的程式變得不可讀寫只能執行,這就是熔斷功能起到的效果。早先很多微控制器或者安全加密晶片具備熔絲功能。當產品除錯定版後,在量產時都會對熔絲位進行熔斷處理,雖然沒有直接對晶片內的程式和資料處理,但因為變為不可讀了,防止盜版商進行資料分析,間接起到了智慧財產權保護,也就是防止盜版的效果。像ATmel的某些型號微控制器就具備該功能。
熔斷機制近些年來之所以漸漸退出歷史舞臺,主要是因為測試分析儀器裝置的更新換代,使得晶片暴力破解的成本變得越來越低。熔斷機制只能保證軟體正向開發無法達到讀寫程式的效果,但暴力破解會通過剖片,放大內部電路,進而修復熔斷位從而重新讀出程式;或者是找到程式儲存區,使用探針直接讀取出晶片內部程式和資料,經過分析對晶片進行破解。
LKT系列加密晶片之所以沒有加入熔斷機制,最主要的原因是晶片足夠安全。硬體的外圍高低溫、光照、電流、電壓感測器再加上全網主動金屬遮蔽層技術,可有效防止侵入式***手段,因此開蓋等暴力破解方式失去效果。而軟體處理上,每當更新程式的時候,在下載演算法之前會先將內部所有程式與資料擦除,保證內部資料安全,一旦有人向目標加密晶片下載了破解補丁程式,讀回的也將全是空資料。再加上加密晶片將內部根據隨機噪聲源產生的隨機數,參與到3DES/AES/RSA等加密演算法中,產生隨機延時等操作,讓半侵入式DPA等***手段無用武之地。同時,LKT加密晶片的FLASH,ROM,RAM,總線上的資料都是被加密的,而且做到一芯一密。這樣一來,加密晶片就可以真正的做到對使用者程式的安全保護,同時又能支援反覆燒錄程式的效果,因此LKT加密晶片全都沒有使用熔斷技術。