嵌入式设备的安全代码更新
1. 安全代码更新基础协议
安全代码更新的基础情况是一个四轮协议,具体如下:
- 第一轮和第二轮:对所有可写内存内容进行安全擦除。
- 第三轮和第四轮:进行代码更新。
需要注意的是,相邻轮次之间绝对不会有交错。在协议执行期间,证明者内存的“演变”如下:
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
A([P ←−V : R1, ..., Rn]):::process --> B([P −→V : R1, ..., Rn]):::process
B --> C([P ←−V : C1, ..., Cn]):::process
C --> D([P −→V : ACK or H(C1, ..., Cn)]):::process
基础协议流程:
1. 证明者(P)从验证者(V)接收随机位 R1, ..., Rn 。
2. 证明者将接收到的随机位 R1, ..., Rn 发送回验证者。
3. 证明者从验证者接收代码 C1, ..., Cn 。
4. 证明者向验证者发送确认信息(ACK)或代码的校验和 H(C1, ..., Cn) 。
假设证明者上有一个小的只读存储器(ROM)单元,在基础情况下,ROM 包含两个函数:读取
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



