版权保护加密芯片MOD208示例程序与参考设计

mod208加密芯片是模微半导体推出的一款用于电子设备反克隆/防抄板/嵌入式固件保护等功能的高安全专用加密芯片,其内置防篡改nvm安全存储和对称密码硬件引擎支持。mod208的安全nvm可用于存储密钥和私有数据、安全加密读/写,支持机密数据与安全日志存储,支持多种安全配置。这种新的安全技术大大增强了电子设备整体系统安全性。mod208具有广泛的防御机制,专门设计用于防止对设备本身的物理攻击或对设备和系统之间传输的数据的逻辑攻击。mod208具有支持安全通信的i2c接口,可以方便快捷地与主机微控制器软件集成。
mod208涵盖了许多类型的安全应用程序所需的广泛用例,其中包括::
        • 安全下载和引导
        身份验证和保护嵌入式固件
        • 生态系统控制
        oem/原装授权保护
        配件与耗材保护
        • 反克隆/防抄板
        防止使用相同的bom或盗版代码进行克隆复制
        • 报文安全性
        网络节点的认证、消息完整性和机密性(iot)
mod208参考设计: 下图说明了如何将mod208与本地主机集成。
mod208芯片集成示意图
注意:上拉电阻和cvcc的值取决于目标应用电路和目标i2c频率。
mod208示例程序: 相关的完整示例工程可以联系modsemi fae免费获取,示例程序包含驱动,库,以及主程序代码所有需要的功能。 mod208的默认i2c设备地址是0x64。(偏移后的iic地址是0xc8)
主程序示例代码如下:int main(void){    mse_status status;    /* reset of all peripherals, initializes the flash interface and the systick. */    hal_init();    /* configure the system clock */    systemclock_config();    /* initialize all configured peripherals */    mx_gpio_init();    /* demo工程中创建了两个target,里面分别定义了i2c_hal和i2c_emul,分别表示硬件i2c和软件模拟i2c */#ifdef i2c_hal    mx_i2c1_init();#endif    mx_usart1_uart_init();    // 串口输出log:uart-tx    printf(%sn, string_header);    /* 大小端判断:注意不同cpu大小端可能不一样,部分主设备端验证用的api可能会计算错误 */    isbigendian();    /* [0] init: i2c通信连接、测试(最关键的一步,i2c驱动移植请参考ecc_i2c.c[硬件i2c]或i2c_bitbang_stm32.c[模拟i2c]) */    status = mse_init(&cfg_mod208_i2c);    if (status != mse_success)    {        printf( mse_init() failed with ret=0x%02x rn, status);        goto exit;    }    printf( init ok.rn);    /* 出厂前个人化阶段 */    /* [1] load configuration:加载配置并锁定配置区(仅执行一次,注意:锁定后无法解锁) */    status = app_load_configuration();    if (status != mse_success)    {        printf( app - load configuration failed rn);        goto exit;    }    printf( load configuration ok.rn);    /* [2] write slot data:生成密钥、写入密钥及应用配套数据,锁定数据区(锁定后无法解锁),前置条件:[1] */    status = app_write_key();    if (status != mse_success)    {        printf( app - write key failedrn);        goto exit;    }    printf( write key ok.rn);    /* 认证阶段 */    status = generate_device_mac();    /* [3] 发起认证,前备条件:[0][1][2]*/    if (status != mse_success)    {        printf( app - generate device mac failed rn);        goto exit;    }    /* [4] 计算host mac */    status = calculate_host_mac();    if (status != mse_success)    {        printf( app - calculate host mac failed rn);        goto exit;    }    /* [5] 比较认证结果 */    compare_mac();exit:    while (true)    {    }}  
• sha hashing
• hmac: hashing message authentication code method


Diodes公司的双向8通道电位转换器提供宽电压范围及弹性输出选项
天才少年稚晖君官宣智元人形机器人「远征 A1」即将发布
CVE漏洞—PHPCMS2008 /type.php代码注入高危漏洞预警
VI 编辑器的命令、模式和选项介绍
微软中国与小冰公司达成战略合作,深化AI+云计算商业化行业解决方案落地
版权保护加密芯片MOD208示例程序与参考设计
什么是安全芯片
创想三维2022年十大精彩事件,邀您一起回顾!
简述射频传输系统中的噪声干扰处理方法
小米MIX 2屏占比再提升至93%,华为、OPPO还没有
一些能够实现5G基站和网络的关键RF通信技术
电子芯闻早报:中国自主芯片逆袭,VR很火热
功率放大金属颗粒材质识别应用案例
华为p50芯片制造公司排名
2017年手机、VR设备、电视等关键零部件趋势预测
FPGA未来的发展分析
小功率音频放大器MC34119
Delta-Sigma A/D转换器原理及其PSpice仿真
AD如何隐藏元件封装原理图库中的引脚
小米MIX3,你们期待吗?