使用NEC單片機保護您的設(shè)計
產(chǎn)品現(xiàn)場升級時的程序保密
如果單片機程序設(shè)計者使用了BootLoader功能,則可以在產(chǎn)品售出后方便地通過串口等通訊口對單片機程序進行升級,但是這也給竊密者留下了可乘之機,新版本的應(yīng)用程序目標(biāo)文件有可能被泄露。解決辦法是設(shè)計者將應(yīng)用程序的目標(biāo)文件按自定義的某種算法進行加密,并將解密算法放在BootLoader程序中。升級的時候BootLoader程序?qū)δ繕?biāo)文件進行解密,然后寫入目標(biāo)FLASH區(qū)。這可以避免原始的目標(biāo)文件泄露出去。
防止芯片程序被意外擦除或改寫
除了上面談到的防止程序被泄露或破解的措施外,78K系列單片機還采取了多項措施來保證程序不會被意外擦除或者改寫。78K系列單片機可以在編程時通過編程軟件對FLASH進行如下安全設(shè)置:
1. 禁止全片擦除操作。
2. 禁止塊擦除操作。
3. 禁止寫操作。
4. 禁止改寫boot cluster0區(qū)。
這些設(shè)置可以禁止通過編程器對芯片進行擦除和寫入操作,但是芯片內(nèi)的用戶程序仍然可以對FLASH區(qū)進行擦除和寫入操作。一旦設(shè)置了“禁止全片擦除操作”后,芯片內(nèi)的程序?qū)⒉豢稍俦徊脸透膶?,此設(shè)置也無法再被取消。
各項安全設(shè)置與操作命令的關(guān)系見表1。
表1: 各項安全設(shè)置與操作命令的關(guān)系。
結(jié)語
NEC的78K系列單片機從多個方面采取措施使得單片機程序的保密性得到加強,尤其它沒有READ命令,無法將程序數(shù)據(jù)讀出到片外的特點使得其破解成本大大提高,有效地保護設(shè)計者的知識產(chǎn)權(quán)。
評論