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

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

3天内不再提示

采用SM2算法PKI技术实现嵌入式系统的安全性设计

电子设计 来源:郭婷 作者:电子设计 2019-08-12 08:08 次阅读

引言

随着网络技术,特别是互联网技术在我国的迅速推广和普及,各种网络应用,如电子商务、电子政务、网上银行、网上证券交易等项目,也在我国迅猛发展。但是网络非法入侵、诈骗等事件严重影响了网络信息安全。只有不断发展和提高网络信息安全技术,才能保证网络健康发展。在信息安全技术领域,公开密钥基础没施(PKI)很好地为互联网提供了安全服务。如今网络应用中的认证、数据的加解密、完整性验证、不可否认性等功能已经离不开PKI技术的支持。随着PKI密码技术的发展,SM2算法(国际上称之为ECC算法)应用越来越广,效率较之前的算法更高,破解难度更大、更安全。本系统在嵌入式主板上实现SM2算法PKI技术,提供基于SM2算法的签名验证、数字信封和解封、数据加解密来实现身份认证,保证网络信息安全交互。

1 系统总体设计

本设计中嵌入式系统的CPU采用三星公司的S3C2440芯片操作系统采用嵌入式Linux作为平台,内存采用6 4 MB SDRAM,文件存储采用128 MB NANDFlash,HS32U2-U芯片提供SM2算法。系统的总体设计结构框图如图1所示。

采用SM2算法PKI技术实现嵌入式系统的安全性设计

系统各部分结构功能如下:

◆CPU:系统为提供运行、计算以及和各个模块进行通信

◆RAM:为操作系统提供运行空间;

◆Flash:提供boot启动程序、内核映像、文件系统;

◆Fthernet:提供网络通信接口

◆SM2:提供SM2算法接口

UART:提供串口调试功能。

2 系统硬件接口

系统CPU通过SPI接口访问HS32U2-U芯片,为系统应用提供SM2算法。SM2芯片接口设计如图2所示。

采用SM2算法PKI技术实现嵌入式系统的安全性设计

HS32U2-U芯片支持主模式和从模式,支持4种通信模式,数据通行速率可达16 Mbps@80 MHz,支持低功耗模式。

主要的SPI接口介绍如下:

◆SS:SPI从模式选择;

◆SCLK:SPI串行时钟

◆MOSI:SPI主模式输出,从模式输入;

◆MISO:SPI主模式输出,从模式输入。

三星CPU提供串行时钟频率,按照规定的格式进行数据交互,根据传入的不同格式所代表的不同的命令码,获取不同的数据。

3 系统软件设计

软件系统设汁的结构框图如图3所示。系统软件设计主要包括SM2算法的应用层API和SM2内核层的驱动。应用层API实现系统应用调用SM2算法,例如SM2公私密钥对的产生、SM2签名功能、SM2验证功能、SM2加密功能、SM2解密功能、SM2密钥交换功能以及SM2杂凑功能等。SM2内核层的驱动是SM2驱动通过SPI总线实现三星CPU与HS32U2-U芯片低层数据交互。

采用SM2算法PKI技术实现嵌入式系统的安全性设计

3.1 Bootloader设计

嵌入式系统中,Bootloader是必需的。它是在操作系统内核运行之前的一小段程序,就像BIOS一样。这段程序可以初始化硬件设备,建立内存空间映射图,从而将软件的软硬件环境设置到一个合适的状态,为最终调用操作系统内核准备好环境。

3.2 内核编译选项

根据需要配置内核选项,主要包含:

◆启动传递参数

dcvfs文件系统支持

◆芯片及系统类型配置

◆芯片及系统类型配置

◆(DMA Engine support)DMA传输引擎支持

除此之外,在编译内核时还要将SPI总线和模块加载的功能选项选中。因为系统最终通过加载模块方式调用SM2算法芯片,同时通过SPI总线来交互数据。

3.3 SM2设备系统驱动设计

Linux的内核由设备管理、进程管理、内存管理和文件系统组成。Linux设备驱动可以分为字符类设备、块类没备、网络接口类设备和其他非标准驱动。SPI设备被看做是字符型没备。

每个SPI外设都由1个总线号、1个设备号和1个功能号来标识,共有3个访问空间,即内存空间、I/O端口和配置奇存器。每个设备功能郜有一个配置空间,用于决定SPI的工作方式和映射到系统中的地址。设备驱动通过模块方式加载到内核中。相关函数代码如下:

采用SM2算法PKI技术实现嵌入式系统的安全性设计

采用SM2算法PKI技术实现嵌入式系统的安全性设计

3.4 SM2 API设计

由于SM2算法主要有签名验签、加解密、获取hash值等,API函数有SM_HsEccSign、SM_HsEccSignVerify、SM_HsEccEncrypt、SM_HsEccDecrypt、SM_SM3Init、SM_SM3Update、SM_SM3Finalize。通过这些API函数可以实现PKI中的身份认证、数据加解密,保证信息安全传递。

数据通信协议的结构如下所示:

采用SM2算法PKI技术实现嵌入式系统的安全性设计

通过上述SPI通信协议,保证在内核层和应用层数据传递的稳定、可靠。

结语

本系统通过嵌入式系统实现了SM2算法接口,为后续应用系统做好了保障,且已经成功应用在VPN系统以及CA中心。SM2算法效率高、破解难度大。随着信息安全的发展,国家密码管理局已经指定SM2算法取代RSA算法,在今后的应用中会有更大的发展空间。


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

    关注

    446

    文章

    47706

    浏览量

    408889
  • 嵌入式
    +关注

    关注

    4977

    文章

    18255

    浏览量

    287988
  • SPI
    SPI
    +关注

    关注

    17

    文章

    1610

    浏览量

    89540
收藏 人收藏

    评论

    相关推荐

    如何保证汽车远程信息系统安全性

    设计必须面对的技术问题。但是,嵌入式系统开发工程师为了确保始终如一的可靠工作和安全性,通常要付出陡然增加的成本并以延迟上市时间为代价。   &
    发表于 08-28 12:38

    分享交通部二维码验签模块,高速PKI卡资料,国密SM2签名验证 RSA2048算法 国密SM1算法 SM2算法 SM4算法 SM7算法

    `采用32位CPU内核芯片支持国际算法DES,AES,SHA,RSA1024/2048等主流算法支持国密算法SM1,
    发表于 07-20 17:03

    嵌入式系统安全性问题你怎么面对

    Laird通过大量转存只读存储器(ROM)内容破解揭秘了Apple AirPort Express的个人密钥。这只是长期以来重大安全泄密的两个具体实例,给许多人带来了尴尬与损失。安全信息遭受威胁,我们自然要发问:“如果像苹果和索尼这样的巨头都无法保护其
    发表于 05-16 10:44

    嵌入式视觉中要考虑哪些安全性与保密

    嵌入式视觉 (EV) 系统的广泛应用已经是无所不在,高级驾驶员辅助系统 (ADAS)、机器视觉、医疗成像、增强现实以及众多其他应用等等,都离不开一个搞笑的嵌入式
    发表于 10-11 07:34

    嵌入式系统有什么安全技巧?

    中间人攻击、黑客攻击、间谍和篡改、内存数据错误——嵌入式系统面临各种威胁。儒卓力GDPR专家团队主管兼嵌入式和无线部门营销总监Bertron Hantsche提供了六个安全技巧,以便增
    发表于 10-18 06:28

    如何提升嵌入式系统的VxWorks安全性

    实时嵌入式系统与网络的结合以及高可信覆盖网络的发展使得嵌入式实时操作系统安全性问题日益突出。提高实时
    发表于 10-30 06:03

    嵌入式实时多任务操作系统安全性怎么样?

    程序设计的接口,它是设备安全的核心,它的安全性不仅直接影响上层网络通信及应用软件的安全,而且还会造成整个信息系统的瘫痪,基于此,本文对嵌入式
    发表于 03-06 06:27

    SM2算法芯片在嵌入式系统安全设计有什么用?

    PKI技术的支持。随着PKI密码技术的发展,SM2算法(国际上称之为ECC
    发表于 03-31 07:29

    嵌入式设备如何提高安全性

    。因此,他们可能将资金花费更多地花费在防篡改安全功能上。  将微控制器与安全元件相结合可以为您的嵌入式系统提供银行级别的安全性(图
    发表于 06-30 11:05

    实现更强大IoT设备安全性的步骤

    本文将讨论实现更强大IoT设备安全性的步骤,并解释嵌入式安全性背后的不同概念,以及如何针对嵌入式设备安全
    发表于 02-22 06:26

    嵌入式系统制造商面临的IP安全性的挑战是什么

    嵌入式系统制造商面临的IP安全性的挑战防止发生未经授权的固件访问隐藏模拟与数字资源及其互联方式
    发表于 03-02 06:49

    嵌入式系统安全性设计有哪些?

    加密安全吗?攻击者通过什么途径得到ATM的密钥呢?嵌入式系统有哪些防攻击的措施呢?
    发表于 04-22 07:27

    嵌入式系统安全性问题是什么?有什么安全措施吗?

    嵌入式系统安全性问题是什么?有什么安全措施吗?
    发表于 04-28 06:54

    嵌入式机载软件安全性的相关资料分享

    嵌入式软件在汽车、核能、航空等安全关键领域应用普遍,软件中潜在的失效都有可能造成财产的损失、环境的破坏甚至人员的伤亡,保障嵌入式软件的安全性已成为近年来软件工程领域的研究热点。近年来,
    发表于 12-24 08:22

    嵌入式系统PKI安全性

      公钥基础设施 (PKI) 不仅适用于企业应用程序 - 基于 PKI 的机器对机器 (M2M) 身份验证策略可以构成安全嵌入式系统的支柱。
    发表于 08-27 10:50 320次阅读