嵌入式加密芯片在电子产品版权领域应用

来源:百度文库 编辑:神马文学网 时间:2024/03/28 18:37:41
供稿:北京宝兴达信息技术有限公司

摘要:介绍一种电子产品硬件设计的版权保护方法,采用特殊的硬件安全芯片嵌入到产品设计中,通过密钥认证和软件移植的方法实现电子产品的硬件设计防伪、嵌入式软件的版权保护,以及硬件设计版权销售的计量。

一、概论

在激烈竞争的电子以及通信产品行业,很多公司大概都有这样的经历,自己费尽心血设计的产品,投放市场不久,就被竞争对手分析透了,从硬件到软件原封不动地被克隆,换了一个外壳投放市场,自己成为了自己的竞争对手。还有一些公司在委托生产厂商进行产品生产时,被生产厂商额外地生产出大量的相同产品,换个品牌投放市场,不但扰乱了市场秩序,还严重地损害了产品设计者的利益。更有一些专业的单片机公司堂而皇之的把帮助别人破解各类单片机中的秘密作为主营之外的一种创收途径。在行业竞争日益激烈的今天,如何保护自己的产品设计方案以提高产品的市场占有率,如何在产品技术转让时有一个理想的、可以量化的计量标准已经成为很多公司和产品设计者日益关切的问题。

近两年,随着PDA,掌上电脑,机顶盒等信息终端逐渐走进人们的生活,嵌入式操作系统也像Windows 一样为人们熟知,随着集成电路芯片技术的飞速发展,电子产品设计业也越来越像计算机行业,很多产品的硬件解决方案已成为一种公开的资料,产品设计者的核心技术实际上集中在嵌入式应用软件内。在硬件技术逐渐成熟和公开的今天,如何保护产品的设计,产品的版权,实际上转化成了对嵌入式应用软件的保护。

硬件设计版权保护的方法有很多,北京宝兴达信息技术公司下面介绍一种非常灵活的方法:在产品设计上嵌入一种特殊的安全芯片,应用软件通过和该硬件芯片密钥认证的方式来控制程序的流程,以及将单片机主程序上的部分放到ESAM内部进行执行的方法保护嵌入式软件。ESAM芯片极高的安全特性和丰富的安全功能保证了该解决方案的高度安全性。

下面对该芯片以及基于该芯片的解决方案作一介绍

二、ESAM 简介

二、ESAM简介

    ESAM(EmbeddedSecureAccessModule)嵌入式安全控制模块的实质为DIP或者SOP芯片封装的CPU卡芯片,最早被用于IC卡电表中做为钱包使用,存储充值及消费金额,以及其他一些重要的参数,同时具有身份识别功能,与外部卡片进行双向身份认证。随着终端安全的日益被重视,目前被广泛应用于各种嵌入式终端实现数据的安全存储,数据的加解密,终端身份的识别与认证,嵌入式软件的版权保护,DRM数字版权的管理等功能。

    产品特性:

    ·采用智能卡专用安全微处理器硬件平台

    ·增强型8051内核,容量包括:32K程序存储区和90K数据存储区

    ·用户可以自行下载应用程序,该程序可在片内运行

    ·使用标准的KEILC开发,串口通讯协议,不需掌握专门语言及通讯协议,开发简单方便

    ·硬件结构设计简单,用户可以轻松地将芯片集成到应用中

    安全特性:

    ·芯片防篡改设计,唯一序列号,可防止SEMA/DEMA、SPA/DPA、DFA和时序攻击

    ·多种检测传感器:高压和低压传感器,

具有传感器寿命测试功能,一旦芯片检测到非法探测,将启动内部的自毁功;

    ·总线加密,具有金属屏蔽防护层,探测到外部攻击后内部数据自毁;逻辑框图;

    ·真随机数发生器:利用芯片内部的电磁白噪声产生,不会重复;

    ·硬件算法协处理器:内部硬件逻辑电路实现对称算法3DES速度快。

    技术参数:

    ·电压3V-5V(±10%);

    ·环境温度-25℃-+85℃;

    ·最大电流:<6mA@30MHz,<10mA@60MHz;

    ·外频支持范围:2-8MHz,内部提供最高60MHz晶振,支持1-16分频

    ·4KV静电保护

    ·通讯协议:TTL232串行接口,波特率可以自行定义    ·封装形式:DIP8,SOP8
三、软件保护原理

1、随机数认证

在数据安全领域,DES(Data Encryption Standard)算法是一种被广泛使用的公开的数据加密算法,它采用对称密钥机制,即加密密钥和解密密钥是相同的,数据的安全性取决于密钥的安全性。ESAM主要是采用随机数理论,用DES算法计算认证码,通过比较认证码的方法进行芯片内部密钥与外部认证密钥的对比,从而达到判断与认证的目的。

ESAM通常内部预置相关的密钥和关键数据,内部具有安全寄存器,数据文件通常具有保密权限,只有通过相应的密钥认证才可以达到对应数据文件的安全权限,才能对数据文件进行读写,业内通常把这个过程叫做外部认证。

如某数据文件的读写权限为33(安全状态寄存器为4位,安全指针为00-FF), 对应的外部认证密钥为12345678,后续状态可定义为33,安全状态寄存器的初始状态为最低00,当执行外部认证命令时,如外部认证通过,安全状态寄存器就会达到33状态,这时就可以对该数据文件进行读写了。

ESAM外部认证流程


图1

在上述的认证过程中,ESAM和外部设备之间的信道只传递随机数和认证码,保证了数据的不可重复和难以跟踪,使外界无法得到任何密钥信息,通过信道侦听密钥的企图是没有任何意义的。 

2、软件的移植和SMAKEY内部执行

SMAKEY 提供内部软件平台供用户开发ESAM内部执行的子程序,内部系统软件特性:

* 片上操作系统(COS)进行通信、文件、存储、安全管理

* 用户可自行建立私有文件

* 支持用户程序下载

* 内置解释器,解释执行用户程序

* 支持255段子程序,每段子程序最大255行

* 支持4个参数的输入,并返回运算结果

开发工具特性:

* 提供专用开发指令集:支持加法、乘法、除法、与、异或、非、赋值、跳转、串处理等操作

* 提供专用开发工具:支持程序编辑、编译、调试过程,还可生成可执行代码

* 提供专用发行工具:可供用户批量快速生产

* 通过软件代码在SMAKEY内部的运行,防止了非法用户对软件的直接拷贝和分析。

四、SMAKEY 的目标应用

1、产品版权保护

在硬件设计仿制比较容易的情况下,采用安装特定的安全芯片ESAM的方法,可以防止软件被拷贝后正常使用,使ESAM的运算和认证成为应用软件流程一部分,从而达到防止盗版的目的。

2、生产数量控制

在研发商和生产商利益分离的情况下,为了防止产品在生产过程中被生产商无偿的额外生产,使用ESAM可以控制生产商的生产数量,或用ESAM来收取版权费。

3、技术支持和售后服务的依据

可使用ESAM存储产品的序列号或版本号等产品关键信息,可根据该信息对产品进行在线服务或应用软件的在线升级,也可以作为提供相关技术服务的依据。更多应用了解请浏览:http://www.broadstar.cn/