您的位置: 首页 >  其它

国密算法和国际算法的区别

2018-12-11 15:17 2311 查看

国密算法

国密即国家密码局认定的国产密码算法,即商用密码。

国密算法是国家密码局制定标准的一系列算法。其中包括了对称加密算法,椭圆曲线非对称加密算法,杂凑算法。具体包括SM1,SM2,SM3等,其中:
SM2为国家密码管理局公布的公钥算法,其加密强度为256位。其它几个重要的商用密码算法包括:
SM1,对称加密算法,加密强度为128位,采用硬件实现;
SM3,密码杂凑算法,杂凑值长度为32字节,和SM2算法同期公布,参见《国家密码管理局公告(第 22 号)》;
SMS4,对称加密算法,随WAPI标准一起公布,可使用软件实现,加密强度为128位。

商用密码,是指能够实现商用密码算法的加密、解密和认证等功能的技术。(包括密码算法编程技术和密码算法芯片、加密卡等的实现技术)。商用密码技术是商用密码的核心,国家将商用密码技术列入国家秘密,任何单位和个人都有责任和义务保护商用密码技术的秘密。

商用密码的应用领域十分广泛,主要用于对不涉及国家秘密内容但又具有敏感性的内部信息、行政事务信息、经济信息等进行加密保护。比如:商用密码可用于企业门禁管理、企业内部的各类敏感信息的传输加密、存储加密,防止非法第三方获取信息内容;也可用于各种安全认证、网上银行、数字签名等。

例如:在门禁应用中,采用SM1算法进行身份鉴别和数据加密通讯,实现卡片合法性的验证,保证身份识别的真实性。 安全是关系国家、城市信息、行业用户、百姓利益的关键问题。国家密码管理局针对现有重要门禁系统建设和升级改造应用也提出指导意见,加强芯片、卡片、系统的标准化建设。截止目前,国密门禁系统的升级的案例也逐渐增多,基于自主国产知识产权的CPU卡、CPU卡读写设备及密钥管理系统广泛受到关注。一些厂商如同方锐安在2009年推出CPU卡安全门禁系列产品,在2010年北京安博会上,该公司再次向业界展示出“御”系列CPU卡门禁系统、TF-DF6000系列安全门禁读卡器以及基于CPU卡技术的一卡通系统等主流产品和系统。这些厂商是全国推广的国密门禁产品的先驱者,使“御”系列CPU卡门禁系统广泛应用于政府、监狱、司法、军工企业和大型公共智能建筑等高安全领域。

安全是智能卡的核心,而算法是安全的基础

国密算法由国家密码局发布,包含SM1\ SM2\ SM3\ SM4\ SSF33算法;国际算法由美国的安全局发布,是现今最通用的商用算法。我们就以分组密码算法(DES和SM4)、公钥密码算法(RSA和SM2)、摘要算法(SM3)为例,和大家谈谈国际算法和国密算法的区别。

分组密码算法——国际DES、国产SM4

分组密码就是将明文数据按固定长度进行分组,然后在同一密钥控制下逐组进行加密,从而将各个明文分组变换成一个等长的密文分组的密码。其中二进制明文分组的长度称为该分组密码的分组规模。

分组密码的实现原则如下:

(1)必须实现起来比较简单,知道密钥时加密和脱密都十分容易,适合硬件和(或)软件实现.
(2)加脱密速度和所消耗的资源和成本较低,能满足具体应用范围的需要.

分组密码的设计基本遵循混淆原则和扩散原则。

混淆原则就是将密文、明文、密钥三者之间的统计关系和代数关系变得尽可能复杂,使得敌手即使获得了密文和明文,也无法求出密钥的任何信息;即使获得了密文和明文的统计规律,也无法求出明文的任何信息。

扩散原则就是应将明文的统计规律和结构规律散射到相当长的一段统计中去。也就是说让明文中的每一位影响密文中的尽可能多的位,或者说让密文中的每一位都受到明文中的尽可能多位的影响。

DES算法

DES算法是在美国NSA(国家安全局)资助下由IBM公司开发的密码算法,其初衷是为政府非机密的敏感信息提供较强的加密保护。它是美国政府担保的第一种加密算法,并在1977年被正式作为美国联邦信息处理标准。DES主要提供非军事性质的联邦政府机构和私营部门使用,并迅速成为名声最大,使用最广的商用密码算法。

DES算法的整体结构图:
  

2006年我国公布了无限局域网产品使用的SM4密码算法。这是我国第一次公布自己的商用密码算法。

SM4算法的整体结构图:

国际的DES算法和国产的SM4算法的目的都是为了加密保护静态储存和传输信道中的数据,主要特性如下:
 
从算法上看,国产SM4算法在计算过程中增加非线性变换,理论上能大大提高其算法的安全性,并且由专业机构进行了密码分析,民间也对21轮SM4进行了差分密码分析,结论均为安全性较高。

公钥密码算法——国际RSA、国产SM2

公钥密码学与其他密码学完全不同, 使用这种方法的加密系统,不仅公开加密算法本身,也公开了加密用的密钥。

公钥密码系统与只使用一个密钥的对称传统密码不同,算法是基于数学函数而不是基于替换和置换。公钥密码学是非对称的,它使用两个独立的密钥,即密钥分为公钥和私钥,因此称双密钥体制。双钥体制的公钥可以公开,因此称为公钥算法。

公钥算法的出现,给密码的发展开辟了新的方向。公钥算法虽然已经历了20多年的发展,但仍具有强劲的发展势头,在鉴别系统和密钥交换等安全技术领域起着关键的作用

公钥算法的加密与解密由不同的密钥完成,并且从加密密钥得到解密密钥在计算上是不可行的。通常,公钥算法的两个密钥中任何一个都可以作为加密而另一个用作解密,但不是所有的公钥算法都是如此。


RSA算法

RSA算法由Rivest、Shamir、Adleman于1978年首次发表,是迄今为止最容易理解和实现的公钥算法,已经受住了多年深入的攻击,其理论基础是一种特殊的可逆模幂运算,其安全性基于分解大整数的困难性。

RSA算法既可用于加密,又可用于数字签名,已得到广泛采用,并被许多标准化组织(如ISO、ITU、IETF和SWIFT等)接纳。目前许多国家标准仍采用RSA算法或它的变型。

RSA算法的实现如下:

(1) 实现者寻找出两个大素数p和q
(2) 实现者计算出n=pq 和φ(n)=(p-1)(q-1)
(3) 实现者选择一个随机数e (0<e<></e<>
(4) 实现者使用辗转相除法计算d=e-1(modφ(n))
(5) 实现者在目录中公开n和e作为公钥

密码分析者攻击RSA体制的关键点在于如何分解n。若分解成功使n=pq,则可以算出φ(n)=(p-1)(q-1),然后由公开的e,解出秘密的d。所以说RSA算法的安全性基于分解大整数的困难性。

SM2算法

SM2算法由国家密码管理局于2010年12月17日发布,全称为椭圆曲线算法。椭圆曲线并不是椭圆,之所以称为椭圆曲线是因为它们是用三次方程来表示的,并且该方程与计算椭圆周长的方程相似。一般而言,椭圆曲线的三次方程形为:

y2+axy+by=x3+cx2+dx+e [其中a,b,c,d和e是满足某些条件的实数,因为方程中的指数最高是3,所以我们称之为三次方程,或者说方程的次数为3]
  
SM2算法使用的方程为:y2= x3 + ax + b
  SM2算法实现如下:
  (1) 选择Ep(a,b)的元素G,使得G的阶n是一个大素数
  (2) G的阶是指满足nG=O的最小n值
  (3) 秘密选择整数k,计算B=kG,然后公开(p,a,b,G,B),B为公钥,保密k,k为私钥
  加密M:先把消息M变换成为Ep(a,b)中一个点Pm,然后,选择随机数r,计算密文Cm={rG,Pm+rP),如果r使得rG或者rP为O,则要重新选择r。
  解密Cm: (Pm+rP)-k(rG)=Pm+rkG-krG=Pm

SM2算法的安全性基于一个数学难题”离散对数问题ECDLP”实现,即考虑等式Q=KP,其中Q、P属于Ep(a,b),K<p,则:1) p=”” 已知q和p,计算k,是困难的。<=”“>

现今对椭圆曲线研究的时间短,经过许多优秀的数学家的努力,至今一直没有找到亚指数级算法。正是由于目前所知求解ECDLP的最好方法是指数级的,这使得我们选用SM2算法作加解密及数字签名时,所要求的密钥长度比RSA要短得多。

国际的RSA算法和国产的SM2算法的主要特性对比如下:

摘要算法——国产SM3

摘要函数在密码学中具有重要的地位,被广泛应用在数字签名,消息认证,数据完整性检测等领域。摘要函数通常被认为需要满足三个基本特性:碰撞稳固性,原根稳固性和第二原根稳固性。

2005年,Wang等人给出了MD5算法和SHA-1算法的碰撞攻击方法,现今被广泛应用的MD5算法和SHA-1算法不再是安全的算法。

SM3密码摘要算法是中国国家密码管理局2010年公布的中国商用密码杂凑算法标准。SM3算法适用于商用密码应用中的数字签名和验证,是在SHA-256基础上改进实现的一种算法。SM3算法采用Merkle-Damgard结构,消息分组长度为512位,摘要值长度为256位。

SM3算法的压缩函数与SHA-256的压缩函数具有相似的结构,但是SM3算法的设计更加复杂,比如压缩函数的每一轮都使用2个消息字。
现今为止,SM3算法的安全性相对较高。

原文: https://www.geek-share.com/detail/2723979623.html

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐
  • 密码算法揭秘,一文让你成为国际安全算法与国密算法专家
  • 冒泡算法详解及与插入算法区别
  • 20万、50万、100万的算法工程师,到底有什么区别?
  • Retinex、log对数变换、直方图均衡化区别,边缘增强Retinex算法与拉普拉斯算法联系、均衡化与亮度调节算法、大津阈值计算
  • Elimination Game(一般算法和顶尖算法的区别)
  • Kmeans算法与KNN算法的区别
  • Java 整除(/) 和求余(%) 运算的算法和区别?
  • 数据分析、数据挖掘、算法工程师、大数据分析师的区别是什么?爬招聘网站用数据来全方位分析
  • Hyperledger Fabric密码模块系列之BCCSP(五) - 国密算法实现
  • <<.NET B/S 架构实践>> 几种概念区别 - 算法、设计模式、企业应用架构模式、架构模式
  • 生成模型 VS 判别模型 (含义、区别、对应经典算法)
  • 抢占式任务调度和非抢占式(轮询任务调度)的区别,以及任务调度算法的用途。
  • JS算法 GPS国际坐标转换成高德火星坐标
  • SPF 和 DUAL 两种算法有什么区别?
  • 小王的尴尬日常(四)--openssl 实现国密算法(签名和验签)
  • 最长递增子序列(两种时间复杂度算法及其区别)+最长递减子序列(reverse)
  • 关于国密算法 SM1,SM2,SM3,SM4 的笔记
  • 生成模型 VS 判别模型 (含义、区别、对应经典算法)
新的分享
  • 一次教科书级别的Redis高可用架构设计实践 - Redis
  • 曾光:北京这次的毒株不像国内流行类型
  • 从PRD文档到产品上线,有哪些问题需要解决?
  • vue3自定义指令的使用
  • Oracle SQL性能优化最常用的40条建议 - ORACLE
  • 程序员翻车常见反应,你中枪了吗? - 职场生涯
  • 新鲜开源:基于Prometheus的企业监控平台设计与实现 - 运维
  • 嵌入式软件开发之程序架构设计-任务调度
  • 【Java面试】请简单说一下你对受检异常和非受检异常的理解
  • 奇安信更新招股书:第一季亏损过5亿,齐向东持股38%
  • 艾瑞咨询:2020年中国后智能厨房案例研究报告
  • 艾瑞咨询:2020年中国人工智能+物流发展研究报告
章节导航

深圳SEO优化公司六安seo网站优化价格梧州百度seo哪家好昭通网络广告推广渭南百姓网标王报价赣州设计网站报价蚌埠网站推广方案推荐天津百度seo哪家好吕梁阿里店铺托管价格思茅外贸网站设计哪家好大运百度关键词包年推广价格北京网站优化按天扣费多少钱台州网站设计模板拉萨营销网站咸阳百度网站优化金昌英文网站建设报价盘锦营销网站推荐忻州建设网站公司林芝网站制作设计多少钱乐山建设网站价格德阳推广网站公司横岗英文网站建设那曲阿里店铺运营阳泉网站搜索优化多少钱廊坊企业网站改版哪家好济源关键词排名包年推广多少钱福田模板网站建设多少钱阿坝seo优化推荐宝安建网站报价光明外贸网站制作推荐合肥设计网站多少钱歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化