0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

硬件加密芯片介绍及加密芯片选择(加密IC)加密芯片原理

zhanghong930819 来源:zhanghong930819 作者:zhanghong930819 2022-10-24 17:39 次阅读

前端时间有研究多款加密芯片,加密算法实现,以及破解可能,也有一些个人的观点,仅供参考。

一,加密芯片的来源及工作流程:

市面上的加密芯片,基本都是基于某款单片机,使用I2C或SPI等通讯,使用复杂加密算法加密来实现的,流程大致如下:

主控芯片生成随机码 --> 主控芯片给加密芯片发送明文 --> 加密芯片通过加密算法对明文进行加密生成密文 --> 加密芯片返回密文给主控芯片 --> 主控芯片对密文进行解密生成解密值 --> 主控芯片对解密值与之前明文进行对比, 比较值一致则认证通过(认证不通过可进行关机操作);

(用户一般需要集成加密芯片商提供的解密库文件,调用指定库文件接口,来实现解密)

目前市面上的加密芯片种类繁多,从几毛钱到十几块钱价格不等;

二,不同类型加密芯片主要区别:

1)加密算法实现不同:各种加密芯片都是厂家根据需求选择自己偏好的加密算法,进行更改适配,或者直接使用自己自定义的算法进行加密,常见算法介绍及比较详见附录1;

2)封装不同,常见的加密芯片封装有:SOT-23-3,SOT23-6,SOP-8、SOIC-8等;根据板段的设计可选择不同的封装对应的芯片;

3)其他区别:传输协议(I2C、SPI、UART、或者厂家自定义协议)不同,认证速率可靠性不同,开发适配难度差异等;

三,加密芯片的应用:

加密芯片一般广泛应用于给电子产品,防止抄板防止破解,部分常用产品(相机,监控摄像头,儿童数码玩具,行车记录仪,游戏机教育机,执法记录仪,安防设备,平板电脑,对讲机,会议系统,以及其他各种系统电子产品,行业工控机等产品);

四,加密芯片破解的基本操作:

加密芯片破解,一般破解公司会通过抓取明文以及密文内容,通过读取大量不同的明文和密文值,进行算法分析和破解,当耗费大量时间经历将加密算法分析出来后,另选一个相同封装尺寸的加密芯片,集成破解算法后替换原有加密芯片;

备注:特别需要注意的是,明文的发送,建议使用真正的不可预知的随机数进行发送(如果每次都发送固定的几组明文,破解人员只需将该明文对应密文抓取出来,收到明文返回对应密文即可完成破解),建议在代码多个地方进行加密认证;在明文真正做到随机数的情况下,破解难度就取决于加密算法的复杂程度了;当然也会有其他更安全的因素可以提高破解风险,在此就不过多论述了;

五,加密芯片的如何选择(仅个人认为):

1)价钱:在产品量大情况下,建议选择便宜的加密芯片,大批量产品价格能够在一元一下会比较合适(当然越便宜越好);

2)安全性:不同加密芯片,主要却别在于所选单片机不一样,加密芯片开发人员不一样,加密方式实现的差异;只要加密芯片实现方式上没有很大漏洞,以及加密算法不过于简单,所选加密芯片基本会有一定安全性, 大品牌加密方式复杂但破解者也更多,相比而言亦不占优势,小品牌不知名加密芯片加密算法复杂性可能欠缺但无人破解,相对也会有一定安全性;

3)其他:①加密芯片最好选择有私有密钥的(这样针对不同客户的加密芯片就会有区别);②如果可能可以与加密芯片提供方要求,在原有加密算法基础上,集成一部分自己的数学运算进入到加密芯片算法内,以提高加密性;③如果对认证速率有要求最好选择认证速率相对较快的芯片,这样不会影响到开机速度和系统运行;

之前使用过淘宝“CC020加密芯片”性价比相对较高(另一篇文章有介绍如何适配),对于加密芯片如何选择不做具体推荐,选择哪款加密芯片视个人情况进行筛选;

附录1)常见算法介绍及比较:

A)其中市面常见的加密算法如下:

①MD5算法:MD5 用的是 哈希函数,它的典型应用是对一段信息产生 信息摘要,以 防止被篡改。严格来说,MD5 不是一种 加密算法 而是 摘要算法。无论是多长的输入,MD5 都会输出长度为 128bits 的一个串 (通常用 16 进制 表示为 32 个字符)。

②SHA1算法:SHA1 是和 MD5 一样流行的 消息摘要算法,对于长度小于 2 ^ 64 位的消息,SHA1 会产生一个160 位的 消息摘要。基于 MD5、SHA1 的信息摘要特性以及 不可逆 (一般而言),可以被应用在检查 文件完整性 以及 数字签名 等场景;

③HMAC算法:HMAC 是密钥相关的 哈希运算消息认证码(Hash-based Message Authentication Code),HMAC 运算利用 哈希算法 (MD5、SHA1 等),以 一个密钥 和 一个消息 为输入,生成一个 消息摘要 作为 输出。

④DES算法:DES 加密算法是一种 分组密码,以 64 位为 分组对数据 加密,它的 密钥长度 是 56 位,加密解密 用 同一算法。DES 加密算法是对 密钥 进行保密,而 公开算法,包括加密和解密算法。这样,只有掌握了和发送方 相同密钥 的人才能解读由 DES加密算法加密的密文数据。因此,破译 DES 加密算法实际上就是 搜索密钥的编码。对于 56 位长度的 密钥 来说,如果用 穷举法 来进行搜索的话,其运算次数为 2 ^ 56 次。

⑤3DES算法:是基于 DES 的 对称算法,对 一块数据 用 三个不同的密钥 进行 三次加密,强度更高。

⑥AES 加密算法是密码学中的 高级加密标准,该加密算法采用 对称分组密码体制,密钥长度的最少支持为 128 位、 192 位、256 位,分组长度 128 位,算法应易于各种硬件和软件实现。这种加密算法是美国联邦政府采用的 区块加密标准。AES 本身就是为了取代 DES 的,AES 具有更好的 安全性、效率 和 灵活性。

RSA算法:RSA 加密算法是目前最有影响力的 公钥加密算法,并且被普遍认为是目前 最优秀的公钥方案 之一。RSA 是第一个能同时用于 加密 和 数字签名 的算法,它能够 抵抗 到目前为止已知的 所有密码攻击,已被 ISO 推荐为公钥数据加密标准。

⑧ECC算法:

ECC 也是一种 非对称加密算法,主要优势是在某些情况下,它比其他的方法使用 更小的密钥,比如 RSA 加密算法,提供 相当的或更高等级 的安全级别。不过一个缺点是 加密和解密操作 的实现比其他机制 时间长 (相比 RSA 算法,该算法对 CPU 消耗严重)。

B)加密算法对比:

附图1_1:散列算法比较 :

format,png

附图1_2:对称加密算法比较 :

format,png

附图1_3:非对称加密算法比较:

format,png


审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 加密芯片
    +关注

    关注

    3

    文章

    117

    浏览量

    23860
  • 加密算法
    +关注

    关注

    0

    文章

    216

    浏览量

    25600
  • 加密IC
    +关注

    关注

    1

    文章

    9

    浏览量

    10406
收藏 人收藏

    相关推荐

    支持远程脱机密文下载加密芯片SMEC系列编程器开发板介绍

    时,SMEC编程器和SMEC加密芯片之间使用密文通讯下载,通讯密文和芯片ID号、随机数相关,即使通讯数据信息被监听,这些数据也无法下载到别的加密芯片
    发表于 02-14 16:19

    支持远程脱机密文下载加密芯片SMEC编程器开发板介绍

    被监听,这些数据也无法下载到别的加密芯片。下面具体介绍密文数据产生和下载流程:1、从需要下载密文文件的SMEC编程器上获取安全码。2、开发者填入安全码,选择需要
    发表于 01-08 11:30

    SMEC88加密芯片开发手册

    高安全等级智能卡内核可编程加密芯片。5K SRAM、128K程序存储区、32K数据存储区。提供SOP8和SOT23-6封装。
    发表于 12-30 14:32 1次下载

    加密芯片的一种破解方法和对应加密方案改进设计

          本文用实例描述了如何破 解、解密使用逻辑加密芯片保护的STM32方案,包括如果固定ID和固定随机数。后面提出了加强加密方案的一些小技巧,并提出为何使用可编程加密
    发表于 12-30 14:04 1次下载

    STM32配合可编程加密芯片SMEC88ST的防抄板加密方案设计

    反而价格更有优势,因为他们的开发投入几乎可以忽略不计。 所以针对这种主芯片可以被破解的产品方案,开发者需要在开发时在产品方案中使用加密芯片并设计合理的加密方案。开发者首先需要选定性价比
    发表于 12-27 13:03

    浅谈加密芯片的一种破解方法和对应加密方案改进设计

    目前市面上很多防抄板加密方案都是基于加密芯片的安全存储和密文通讯来实现对主MCU方案的保护。比如把主MCU用到的一些参数、配置信息等存储在加密芯片
    发表于 12-20 15:31

    浅谈加密芯片的一种破解方法和加密方案改进设计

    目前市面上很多防抄板加密方案都是基于加密芯片的安全存储和密文通讯来实现对主MCU方案的保护。比如把主MCU用到的一些参数、配置信息等存储在加密芯片
    发表于 12-20 15:10

    加密算法的选择对于加密安全有多重要?

    加密算法的选择对于加密安全至关重要,因为它直接影响到数据保护的有效性和可靠性。以下是几个关键点来说明加密算法选择的重要性:
    的头像 发表于 12-17 15:59 202次阅读

    加密核心是基于Rijndael AES-128,具有192位可编程参数的加密芯片

    加密芯片 - ALPU-C,该款加密芯片是ALPU系列中的高端IC,其加密核心基于Rijntra
    的头像 发表于 12-04 09:32 278次阅读
    <b class='flag-5'>加密</b>核心是基于Rijndael AES-128,具有192位可编程参数的<b class='flag-5'>加密</b><b class='flag-5'>芯片</b>

    UID加密安全启动原理分析

    本文导读 ZDP14x0系列芯片是内置开源GUI引擎的图像显示专用驱动芯片,在实际产品开发中需要加密保护,防止应用程序被读取和盗用,本文将介绍如何实现UID
    的头像 发表于 11-11 11:49 607次阅读
    UID<b class='flag-5'>加密</b>安全启动原理分析

    安卓APP开发中,如何使用加密芯片?

    加密芯片是一种专门设计用于保护信息安全的硬件设备,它通过内置的加密算法对数据进行加密和解密,以防止敏感数据被窃取或篡改。如下图HD-RK35
    的头像 发表于 10-31 17:43 542次阅读
    安卓APP开发中,如何使用<b class='flag-5'>加密</b><b class='flag-5'>芯片</b>?

    AG32 芯片保护与加密

    AG32 芯片保护与加密 代码安全有两种方式: 一种是 Lock flash,一个是代码加密。 Lock flash: Lock flash 是在烧录代码后,锁定 flash,防止外部
    发表于 09-19 16:01

    单总线协议耗材认证加密芯片ALPU-P

    加密芯片是对内部集成了各类对称与非对称算法,自身具有极高安全等级,可以保证内部存储的密钥和信息数据不会被非法读取与篡改的一类安全芯片的统称。
    的头像 发表于 06-27 09:07 519次阅读
    单总线协议耗材认证<b class='flag-5'>加密</b><b class='flag-5'>芯片</b>ALPU-P

    嵌入式产品如何做安全加密

    为了防止硬件电路与固件被抄袭,核心在于加密芯片和安全解决方案的设计,目前大多MPU并不具备安全防护功能,所以最好的办法是使用一颗专用的加密芯片
    的头像 发表于 06-20 17:46 917次阅读
    嵌入式产品如何做安全<b class='flag-5'>加密</b>?

    KEIL下如何实现代码的加密

    从STM32F0 到STM32F4,用了有好几款芯片,都是在KEIL编译,之前没有关注到加密的问题,突然想到这个问题,不知道大家都是怎么来实现加密的。
    发表于 03-20 07:06