[color=rgba(0, 0, 0, 0.9)]1. 版權保護芯片RJGT102介紹 [color=rgba(0, 0, 0, 0.9)]為了防止硬件電路與固件被抄襲,核心在于加密芯片和安全解決方案的設計,目前大多MPU并不具備安全防護功能,所以最好的辦法是使用一顆專用的加密芯片,通過加密芯片對接MPU,進行認證,授權,保存關鍵數據等。 [color=rgba(0, 0, 0, 0.9)]RJGT102采用了SHA256對稱加密算法,256位的大數加密, 加密算法強度高。每片RJGT102都有唯一的客戶編碼,非常適合做防抄板,防抄軟件,管控工廠生產數量,防止方案外泄等。 [color=rgba(0, 0, 0, 0.9)]參與SHA256運算的數據為:8字節Key(可動態更換),8字節UID,8字節隨機數,8字節常數,以及32字節關鍵數據,共512bit數據源,不可以從消息摘要中復原信息,兩個不同的消息不會產生同樣的消息摘要,修改消息中的一個比特即會引起雪崩效應,輸出32字節報文摘要(MAC)。 [color=rgba(0, 0, 0, 0.9)]版權保護芯片的主要用途: [color=rgba(0, 0, 0, 0.9)]1、行license授權,控制生產量; [color=rgba(0, 0, 0, 0.9)]2、進行設備接入認證,保護系統; 1.1 license授權應用[color=rgba(0, 0, 0, 0.9)]通過license授權控制生產量從而保護產品防止被抄板進而造成利益受損,通常的管控方案如下: [color=rgba(0, 0, 0, 0.9)]每生產一部產品就要用到一顆加密芯片,產品工作時需要認證,通過后才能正常工作,否則不能正常工作或功能受限,從而能防止抄板。通過在PCB電路板上嵌入RJGT102加密芯片,并預先燒錄好認證密鑰KEYD,然后在主機軟件中嵌入認證程序,實現主機對芯片的認證。即便抄板者復制了PCB板,并且從存儲器中直接拷貝出了CPU的二進制代碼燒錄進被復制的存儲器中,由于燒錄的程序會不時的與RJGT102加密芯片進行身份認證,因為抄板者無法獲得廠商定制燒錄認證密鑰KEYD的RJGT102加密芯片,認證就無法通過,因此系統將無法運行,產品在進行代工生產的時候,可以通過控制燒錄認證密鑰的RJGT102加密芯片數量來有效控制代工生產的出貨數量,也防假冒產品流入市場。 1.2 設備接入認證[color=rgba(0, 0, 0, 0.9)]與license授權類似,但并不是使得非授權設備無法運行,而是在后端服務處理單元直接無視非授權設備上傳的數據請求從而做到設備的認證接入,通常方案如下: [color=rgba(0, 0, 0, 0.9)]當需要接入設備與遠端服務進行通信時,接入設備上嵌入RJGT102加密芯片,并預先燒錄好認證密鑰KEYD,由遠端服務發送隨機數從而開啟設備接入認證,接入設備在收到隨機數后由板載RJGT102運算生成MAC,并將MAC發送給遠端服務,遠端服務對接入設備發送過來的MAC進行比對認證從而控制設備的接入與否。 2. RJGT102認證方案流程[color=rgba(0, 0, 0, 0.9)]第一步,在產品生產時,通過預設密鑰、UID、PAGE區等關鍵參數來進行第三方授權,并能跟蹤和確認其使用,防范非法使用程序代碼。 [color=rgba(0, 0, 0, 0.9)]第二步,在產品使用時,每次上電自檢,系統先通過RJGT102執行認證過程,只有具備有效密鑰的RJGT102才能成功地返回有效MAC值。如果檢測到無效MAC,將結束操作,其結束操作可能發生在本端(如license控制),也可能發生在遠端(如接入設備認證)。 [color=rgba(0, 0, 0, 0.9)]認證方案一: [color=rgba(0, 0, 0, 0.9)]主機確認RJGT102為有效的安全芯片,認證通過后,主機程序才能進行下一步操作。生產廠商可通過對RJGT102的管理和發放來保護產品的程序、硬件電路等,有效防止軟件和硬件設計等知識產權被盜版。 [color=rgba(0, 0, 0, 0.9)] [color=rgba(0, 0, 0, 0.9)]圖 2.1:主機確認RJGT102是否有效 [color=rgba(0, 0, 0, 0.9)]上面的認證流程也可將MPU看作遠端服務,而將RJGT102看作接入設備,從而控制接入設備的認證接入。 [color=rgba(0, 0, 0, 0.9)]認證方案二: [color=rgba(0, 0, 0, 0.9)]RJGT102確認主機是合法用戶,認證通過后,可以對RJGT102芯片進行密鑰升級,關鍵參數讀取等操作。關鍵參數可以是密文形式存放,用來增強安全性。上述方案可以防止非法主機操作RJGT102。 [color=rgba(0, 0, 0, 0.9)] [color=rgba(0, 0, 0, 0.9)]圖 2.2:RJGT102確認主機是否合法 [color=rgba(0, 0, 0, 0.9)]認證方案三: [color=rgba(0, 0, 0, 0.9)]主機和RJGT102相互認證,認證通過后,主機可進入正常操作狀態,同時可讀取RJGT102中的關鍵參數,關鍵參數可以是密文形式存放,用來增強安全性。根據關鍵參數,主機可以選擇條件執行部分子程序或完整程序。通過上述策略,主機系統可有選擇的授權完整功能單元或者部分功能單元。 [color=rgba(0, 0, 0, 0.9)] [color=rgba(0, 0, 0, 0.9)]圖 2.3:主機與RJGT102雙端認證 |