跳到主要内容

维护配对信息

6年前

维护配对信息

张贴了tomrouse.0分 3回复
0旋转

你好,

是否有一些方法可以在设备HW重置上维护配对信息?

我们的设备作为外围设备运行。我们希望能够在服务器重置后重新连接时恢复先前配对/加密连接。这需要包括可能已收到的任何IRK。

我们使用的是辅助引导程序,因此此目前在重新启动时删除保留RAM。

谢谢,
汤姆

6年前

tr_dialog. 0分

你好汤姆,

为了维持配对信息,需要在一些存储器中保存诸如LTK的信息。闪存或EEPROM将允许您通过电源周期保留此信息。如果您不担心电源周期,但只需重置HW重置即可考虑以下方法。全部保留RAM初始化为电源上电序列上的零。您可能会刻录此内存的一部分以存储这些配对信息。分离此内存并防止从init序列中防止,您必须在此块上添加一些cookie /签名和/或crc检查,以确定该块中包含的数据的有效性。

谢谢,

tr_dialog.

3年前

富豪 0分

你好tr_dialog.

我在这里面临着类似的情况。我正在使用DA14580,没有外部闪光灯或EEPROM。我希望判决状态存储在设备中,以便在看门狗重置芯片的情况下,该设备仍将保留判决状态而不是重置所有内容。您能否澄清如何在芯片自身重置芯片时澄清如何雕刻到故事划分信息。一些代码线会很好。提前致谢。

宏义

3年前

mt_dialog. -30点

嗨富豪,

app_sec_env是存储绑定过程的数据的结构变量,这个变量是SDK中的保留变量的一部分,捕获量是当设备延长睡眠和深度时,存储器的不同部分被认为是保留的睡眠,例如延长睡眠模式(根据分散文件的延长睡眠模式(根据散点图)的剩余存储区域的一部分被认为是0x20008000上的Sysram(因为延长睡眠中的Sysram保持供电),同时仅被认为只是实际保留580的RAM。关于您的请求,没有一些特定的代码,可以允许您保持NMI发生后保留的绑定数据,只要您拥有保留的属性(Retention_mem_area0),它意味着数据是保留。因此,当发生重置时实际上正在擦除数据是实际的散点文件(取决于区域在分散文件零Init中的零Init或Uninit如何,因为您可能猜测零初始化设备将用零擦除内存Uninit将在SDK中留下的内存,并且在SDK中为循环擦除实际保留存储器中的数据(将在SystemInit中出现此擦除退出保留存储器)。因此,为了保存保留存储区域中的数据并在重置后仍然有它们,您应该在分散文件中分配一个空间,在那里您将保留绑定数据(究竟恰好将该空间取决于您正在进行的睡眠模式要使用相应的内存配置),并将该空间与Unuinit标识符表征为使得散射文件不会在重置时立即使用零擦除。此外,如果所选的位置是实际的保留RAM,则必须从SystemIt()函数中的循环中删除所选零件。

谢谢mt_dialog.