当前位置:首页 > 智能硬件 > 智能硬件
[导读]SST89E/V58RD2/SST89E/V516RD2加密系统里有两种不同加密方式:硬件加锁(Hard Lock)和软件加锁(SomftLock)。用这两种安全加密方式对内部2块Flash加密共有6种不同的组合。

    SST89E/V58RD2/SST89E/V516RD2加密系统里有两种不同加密方式:硬件加锁(Hard Lock)和软件加锁(SomftLock)。用这两种安全加密方式对内部2块Flash加密共有6种不同的组合。

1 硬件加锁
    当SST89E/V58RD2/SST89E/V516RD2内部存储器的一个存储块被硬件加锁后,有下面的安全特性:

    ①MOVc命令从驻留在非加锁区(外部程序空间通常也是认为没加锁)执行或者以软加密的Flash空间执行,不允许访问在硬件保护Flash块的目标地址。这可使硬件保护区的代码难以接触,防止软件被非法复制。
 
   ②所有外部主机模式和IAP指令(除了chip-Erase/Prog-SBX)禁止操作硬件加锁的Flash块。

    ③在复位时EA被锁存,防止在代码执行中被切换和跳到外部程序空间。

2 软件加锁
    软件加锁允许Flash内容在安全的环境下被读取和改写。被软件加密的Flash块有以下安全特性:

    ①MOVC命令从驻留在非加锁区(外部程序空间通常也是认为没加锁)执行,不允许访问在软件加锁Flash块的地址空间。这可使硬件保护区的代码难以接触,防止软件被非法复制。
    ②从非加锁区产生的IAP指令被禁止。
    ③从软件加锁区产生的IAP指令对另外一个相同安全等级或相比较低的Flash块是允许的。从硬件加锁区产生的IAP指令对另一个软件加锁的Flash块的访问也是允许的。
    ④在复位时EA被锁存,防止在代码执行中被切换和跳到外部程序空间。

3 安全加密指导
3.1 安全加密位的编程

    在烧写安全加密位时有6个注意要点:
    ①SST89E/V58RD2/SSTB9E/V516RD2的加密由三个安全加密位SB1、SB2和SB3控制。
    ②3个安全加密位可以通过外部主机模式或IAP的Prog-SB1、Prog sB2和Prog-SB3来编程改写。安全加密位可以随意改变,不用考虑当前安全等级。
    ③一旦某个加密位已经被编写后,只能通过外部主机模式或IAP的Chip-Erase命令来擦除所有3位加密位。
    ④在任何时候的安全加密位状态都是透过特殊功能寄存器SFST[7:5]查询的。
    ⑤安全加密位有8种组合,安全等级3有两个选择,每个选择有两种组合。这样就共有6种不同安全加密选择。
    ⑥6个安全加密选择分成4个不同安全等级。

3.2 IAP指令的影响

    IAP指令对安全加锁功能的影响如下:
    ①从更高安全等级执行的IAP命令可以访问低安全等级Flash块的内容。
    ②从软加密或不加密安全等级的IAP命令可以访问相同等级的其他Flash块。
    ③从Flash块1或外部的程序空间执行IAP的安全指令不受安全等级的限制。
    ④外部程序空间执行IAP的整片擦除指令chipr-Erase不受安全等级的限制。

4 安全等级
4.1 安全等级1——不加锁

    当全部3个加密位都没有被烧写时,就是安全等级l。这也是通过外部主机模式或IAP执行整片擦除指令chip-Erase后的默认安全状态。在安全状态1,安全状态
位SFST[7:5]是000b,内部Flash块的安全特性被禁止,MOVC指令和外部主机模式和IAP指令可以访问内部的2块Flash空间。

4.2 安全等级2——防止代码的误操作

    在安全等级1下,通过外部主机模式或IAP Prog-SBI烧写加密位SB1,其余两个加密位不烧写,可以去到安全等级2。在安全等级2:
    ①2个Flash块都被软加密。
    ②安全状态位SFST[7:5]是100b。
    ③外部主机模式和IAP的字节校验指令Byte_Verifycommand可以执行。允许在Blockl和Bloclk2的程序执行IAP指令。
    ④不允许从外部程序空间执行对内部Flash块的MOVC命令,但是从BLocK0或BLocK1可以执行对自己或另外Flash块和外部程序空间的MOVC命令。

4.3 安全等级3

    安全等级3是对代码误操作和软件版权的保护,可控制代码升级,包括了6个安全加密选择的3个等级。在每一种加密方式中,从外部程序空间执行的MOVC命令都被禁止,丽在复位时被取样和锁存,防止有人在代码执行中间切换并跳带外部代码。

(1)Soft Lock/Soft Lock
    这个安全状态只能从安全等级1通过外部主机模式或IAP Prog-SB2指令烧写加密位SB2而获得,其他2个加密位没有烧写。在安全等级3:
    ①2个Flash块被软加密。
    ②安全状态位SFST[7:5]是010b。
    ③所有主机模式命令(除了chip-Erase和Prog-SBx)都被禁止。
    ④所有BlockO和Block1执行的IAP命令(除了lAPchip-Erase)都是允许的。
    ⑤外部程序空间执行对内部Flash空间的MOVC指令都被禁止,而在内部Block0或Block1执行对内部或外部程序空间的MOVC指令都允许。

    驻留在内部Flash块的程序代码可以防止被复制,因为外边的资源不能访问到内部代码,而2个块的代码还是可以在可控制的环境中升级的。在Block1执行的代码可以升级Block0的代码,反之亦然。不管什么方式,由于在每个BLocK的代码可以通过IAP被改写,实现这些IAP指令的代码存在会被误用的可能性。

(2)Hard Lock/Soft Lock
    这个安全加密选择可以从安全等级1、2和3升级上来。在安全等级3:
    ①Block1被硬件加密,BlockO被软件加密。
    ②加密状态位SFST[7:5]是001b或110b。
    ③所有主机模式命令(除了chip-Erase和Prog-SBx)都被禁止。
    ④只有Block1对]BlockO做IAP操作。在外部存储空间IAP Chip-Erase可以对内部Flash块操作。
    ⑤Block0对Block1的MOVC:命令被禁止,但是Block1对BlockO的MOVC命令是允许的。由于在Block1的代码被硬件加密,不能被改写,可以防止代码的误操作。由于外部不能访问,在Block 1和Block 0的代码完全被保护,防止被复制。不过,用户还可以运行Block1的IAP命令对BlockO修改实现代码的升级。-
|
(3)Hard Lock/Hard Lock
    这个安全等级可以从安全等级l、2和3升级。如果SST89E/V58RD2/SST89E/V516RD2的当前状态是等级3(ll0b),它能升级的状态只有安全等级4 Hard Lock/Hard Lock。在安全等级3:
    ①2个Flash块都被硬件加密。
    ②加密状态位SFST[7:5]是011b或101b。
    ③所有主机模式命令(除了chip-Erase和Prog-SBx)都被禁止。
    ④从外部程序空间对内部Flash的MOVC,被禁止,但是Block0或Block1对内部或外部的MOVC:指令是允许的。在这个模式,由于所有的编程和擦除命令(除了chip-Erase和Prog-SBx)被禁止,2个Flash块都被保护。

5 安全等级4
    安全等级4是Hard Lock/Hard Lock最高加密等级。它可以从任何一个安全设置通过外部主机模式或IAP指令烧写3个加密位SB1、SB2和SB3。在安全等级4:
    ①内部2个Flash块被硬加密。
    ②加密状态位SFST[7:5]是011b或101b。
    ③外部主机模式的所有命令(除了Chip_Erase命令)被禁止。
    ④所有IAP指令被禁止。
    ⑤从外部程序空间对内部Flash块的MOVC指令被禁止,但是从BLockO和Block1执行的对内部Flash和外部存储空间可以执行。
    ⑥不允许执行外部程序代码,不管EA是1或0,除非代码调到内部空间不存在的地址代码(对SST89E/V58RD2,从8000H到DFFFH)。

    因为禁止内部Flash被擦除和编程,而且内部代码不能被访问到,在这个加密状态,内部代码可以防止被误改写或复制。另外,这时MCU只可以从内部Flash空间用户代码开始启动。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭