不過,對于嵌入式行業而言,無論是從產業鏈的端IP提供商,還是生產各種產品的OEM,都無法給這個產業擬定一個標準,也就是說,這個行業是相對來說更開放、更具潛力。這個市場的機會很多,只要你擁有足夠吸引人的“殺手級”應用產品。但問題往往出現在這里,機會多了,就會有人想盡辦法地去破解別人的產品,偷竊別人的勞動成果。從長遠來說,這樣必定會危害整個行業的發展。為促進整個市場的健康發展,我們應該盡可能地阻止這種“盜版”現象的發生,為你的產品加上一把“鎖”。
當前市場上存在的加密產品可分為幾大類:
類是所謂的加密存儲產品。這類產品的大致原理是將普通的EEPROM進行某種算法的加密,以保護存儲在其中的資料。但是通常這類產品的加密算法都是不公開的,是沒有得到國際公認的算法,因此其加密等級也是沒有任何標準的。且這種產品與系統中主MCU的H/W接口(Interface)是獨立的,這也就意味著,如果你的系統中有相同接口的其他器件,那么這些器件是不能與這種加密芯片同時存在的。
另一類則具有更簡單算法和更簡單H/W接口,通常是通過一個根線纜與主MCU進行通訊。這樣存在的問題的,若系統需要加密的數據量較大時,則加密數據的速率會比較低。且這種通訊協議是不常用的,也是不能與其他器件共用的。
還有一些其他的加密方法,例如用戶自己使用一些單片機,并開發一些簡單算法,以達到與主CPU通訊時數據加密的效果。采用這種方法用戶可以完全掌握技術細節,但是需要花費較大的精力和財力才能完成。
FS88x6是福華先進微電子有限公司推出的系列加密芯片,包括FS8806、FS8816、FS8826三種型號。FS88x6系列加密芯片在很大程度上解決了上述各種問題。
首先在H/W接口上:FS88x6采用I2C (圖1)或SPI(圖2)的通訊方式,這兩種都是很常用的協議,開發起來非常簡單方便,用戶可以根據自己系統的特點選擇使用I2C還是SPI的通訊方式,且不論是使用系統硬件上的I2C/SPI模塊,或是使用GPIO模擬I2C/SPI協議,都可以與FS88x6進行通訊。加密等級:FS88x6采用國際公認的3DES加密算法,密鑰的長度為192位。加密方式:FS88x6可以加密幾乎嵌入式系統中的任何數據,包括存儲在系統FLASH中的Firmware。加密過程中:在I2C/SPI總線上的數據,每次都是加密的,且加入了隨機數,也就是說,對于同樣的數據,在不同時間去測量,會有不同的結果。
圖1:I2C通訊方式
圖2:SPI通訊方式
1. 選擇I2C或SPI通訊方式,與FS88x6進行通訊,將硬件上的簡單通訊調試通過。
2. 為客戶提供定制的FS88x6 library。該library的作用在于提供給用戶可以在其使用的平臺上運行的、并且與FS88x6加密芯片相對應的軟件算法。該library可支持幾乎所有嵌入式平臺。目前支持比較多的平臺及編譯器在表1中列出。
3. 使用Code Generator工具(由福華公司提供),讓用戶將其原始bin文件或其他格式二進制文件轉換成加密后的二進制文件Concerto bin。將此加密后的二進制文件燒錄至用戶系統中。
所有步驟完成后,系統架構如圖3所示,其中Concerto SW組成如圖4所示。
圖3:采用FS88x6系列加密芯片的系統架構圖
圖4:Concerto SW組成框圖
目前FS88x6已成功應用于各種嵌入式系統中,包括機頂盒、PMP、游戲機、藍牙耳機、PDA、網絡應用及IP攝像頭等。