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