CodeMeter如何为嵌入式系统提供全面的保护方案

如题所述

物联网把计算技术带入了与国家基础设施、人们日常生活密切相关的领域,小如心脏起搏器,大如国家电网

CPS大部分应用领域是与食品卫生一样的安全敏感的领域,CPS的技术和产品需要经过政府严格的安全监督和认证

CPS技术和产品必须成为高可靠的、行为确定的产品,由此需要可靠和确定的嵌入式系统

嵌入系统在提供便利和带来增值效益的同时,也向外界敞开了系统,从而增加了来自外部攻击的风险

这些风险真实存在并日益增长,企业急需应对措施,用于防止知识产权的流失,防止恶意代码篡改

什么是嵌入式系统的安全保护?从嵌入式系统安全保护的角度来看,可分为完整性保护、机密性保护及可鉴别性保护

什么是完整性保护?“完整性保护”包括各种安全保障措施,即保护系统资源、程序代码和数据内容等信息,防止非法篡改及未经授权的身份

保证数据的完整性,即使不能完全实现,也要确保整个系统进入安全模式,并停止执行任何功能

最好的完整性保护解决方案是基于加密技术即诸如数字签名、消息认证等相关安全机制而产生的

什么是机密性保护?“机密性保护”是指要构建整体的加密体系来保护嵌入式系统代码安全和数据隐私

防止整个机器或设备被非法伪造,通过防止逆向工程保护企业自主研发的专有算法或方法;通过数据保护确保生产数据不被非法篡改,保证生产安全

什么是身份认证保护?“身份认证保护”要构建完整的信任体系来保证所有的行为、来源、数据的完整性等都是真实可信的

用户在与某个安全的嵌入式系统交互之前,必须经过一个认证过程来核实他们的身份

认证方案可能包括秘密口令、生理特征(如指纹)或安全设置(如智能卡或密钥)三者的各种组合

CodeMeter是德国威步公司研发的加密解决方案,采用强大的加密算法及安全的嵌入式硬件元器件(智能卡安全芯片),可用于完整性保护、软件版权、数据保护及身份认证保护

下面我们看看完整性加密流程:通过AxProtector加密工具,未经加密的原程序需要按以下步骤进行设计和加密:1

计算原程序中的Hash值;2

采用开发商的私钥对Hash值签名;3

采用原程序种子码生成的密钥、开发商的私钥及其他一些公开的参数,对原程序进行加密;4

加载用于加密软件签名证书的公钥部分

CodeMeter完整性检验流程:检验包括以下步骤:当程序加载时,按下列步骤执行

同时执行的应用程序被加载

此时需要借助系统集成工具—威步信息系统加解密引擎AxEngine

1

如验证到当前有效许可,则加密的软件进行解密2

公用根密钥检验授权过程中的证书以及证书链3

计算解密后的原始软件的HASH值4

使用公钥验证HASH签名

CodeMeter嵌入式系统软件版权及数据加密方案基于CodeMeter技术的解决方案,完全不用任何代码开发,即可全自动实现以下功能:1

加密程序代码,防止静态代码分析和逆向工程2

签名程序代码,包括应用程序和操作系统图像3

存储私钥用于解密4

存储供应商的签名私钥5

加载和运行系统过程中进行签名和HASH验证,用于防伪6

采用先进的ECC和RSA非对称算法,实现身份认证功能CodeMeter产品,基于大容量的安全智能卡芯片,存储和管理安全密钥

为嵌入式系统提供有效的防护措施,以免遭受恶意攻击,并保护敏感数据和密钥

CodeMeter硬件产品可提供多种工业接口形式,诸如USB、CF卡、SD卡及TF卡等等用于满足不同的工业应用

CodeMeter软授权产品可以采用绑定硬件设备硬件指纹的方式,为嵌入式系统加密及授权提供更多的选择

CodeMeter支持Windows,MacOSX,Linux,Unix等多种操作系统,以及WindowsEmbedded,Linux,VxWorks以及诸如CODESYS的PLC也同样适用

CodeMeter软件保护解决方案采用了先进的对称和非对称加密算法(AES,RSA,ECC),同时使用了哈希函数(SHA-256),椭圆曲线数字签名方案(ECDSA)以及随机数生成器

CodeMeter凭借上述多种加密方法,用于防止盗版、逆向工程以及非法入侵,有效的保护专业知识产权不被侵犯;并且可以有效防止代码篡改及非法身份登陆,确保嵌入式操作系统和应用程序安全地启动和运行

温馨提示:答案为网友推荐,仅供参考