密码学相关知识梳理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了密码学相关知识梳理相关的知识,希望对你有一定的参考价值。

参考技术A 密码学是研究编制密码和破译密码的技术科学。

密码学的历史最早可以追溯到几千年以前,古今中外都有密码学运用的记载,从历史看,战争很大程度给密码学提供了应用环境,推动了密码学的发展,密码学按照发展历程,大体可以分为三个阶段,手工加密、机械加密和计算机加密阶段,下面是近代密码学的一些重要进展。
1949年,信息论始祖克劳德·艾尔伍德·香农(Claude Elwood Shannon)发表了《保密系统的通信理论》一文,把密码学建立在严格的数学基础之上,奠定理论基础,从此成为真正的科学。
1976年,密码学专家惠特菲尔德·迪菲(Bailey Whitfield Diffie)和马丁·赫尔曼(Martin Edward Hellman)两人发表了《密码学的新方向》一文,解决了密钥管理的难题,把密钥分为加密的公钥和解密的私钥,提出了密钥交换算法Diffie-Hellman。
1977年,美国国家标准技术研究所制定数据加密标准(Data Encryption Standard ),将其颁布为国家标准。
1977年,麻省理工学院的罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)一起提出RSA加密算法,RSA就是他们三人姓氏开头字母拼在一起组成的。
1997年4月,美国ANSI发起征集AES(advanced encryption standard)的活动,并为此成立了AES工作小组,经过几年的时间筛选,最终采用了由比利时的Joan Daemen和Vincent Rijmen设计的Rijndael算法,并在2002年5月26日成为有效的加密标准。

按密码体制划分:对称密码体制密码学和非对称密码体制密码学对应的有对称密码算法和非对称密码算法。

消息摘要算法又称散列算法,其核心在于散列函数的单向性,即通过散列函数可获得对应的散列值,但不可通过该散列值反推其原始信息,这是消息摘要算法的安全性的根本所在,我们通常使用该算法判断数据的完整性。

消息摘要算法我们常见比如MD(Message Digest)、SHA(Secure Hash Algorithm)、HMAC(Hash Message Authentication Code)等,常用于验证数据的完整性,是数字签名算法的核心算法。

我们以微信支付的接口调用分析一下摘要算法怎么应用的,首先可以打开微信支付如下相关文档:
微信支付统一下单接口文档
微信支付签名过程

对称加密简单的说就是加密和解密使用同一个密钥,解密算法是加密算法的逆运算。

对称加密算法主要有DES、DES算法的变种DESede、DES替代者AES算法、IDEA、PBE等

非对称加密算法称为双钥或公钥加密算法,跟对称加密算法不同的是,对称加密算法只一个密钥,非对称加密算法 一个公钥和一个私钥,一个用于加密,另外一个用于解密。
简单的说:一对密钥公钥A和私钥B,A加密只能B解密,B加密只能A解密。

非对称加密算法源于DH算法(Diffie-Hellman,密钥交换算法)由W.Diffie和 M.Hellman共同提出,该算法为非对称加密算法奠定了基础,下面我们先来了解下密钥交换算法DH和ECDH算法。
为什么需要密钥交换算法?前面我们提到对称加密算法加解密都是用同一个密钥,我们可以想一下,我们怎样能安全的把一个密钥给到对方呢?比如我们经常用到HTTPS,大家都说HTTPS加密了是安全的,那它加密的密钥怎么来的呢?很显然我们在访问一个https地址的时候,事先并没有密钥,访问过程中客户端跟服务端通过握手协议协商出来的密钥,如果服务端直接把密钥在网络上传输那肯定不安全的,所以这过程到底发生了什么?后面专门分析https的时候会详细写,这里先了解下该算法。
DH密钥交换算法的安全性基于有限域上的离散对数难题
ECDH密钥交换算法是基于椭圆曲线加密

从上面图中可以看出,DH&ECDH密钥交换算法交互双方都会向对方公开一部分信息,即所谓的公钥,这部分即使被别人拿到了也不会威胁到最终的密钥,这里很关键的一点是甲乙两方公布的公钥是不相同的,但是最终生成的密钥两边是一致的,这里是利用的算法原理,有兴趣的可以去查阅详细的算法公式,因为最终的密钥不需要传输给对方,所以很大程度保证安全性。
非对称加密算法:
比较典型的非对称加密算法有RSA、ECC、ElGamal,RSA算法基于大数因子分解难题,而ElGamal和ECC算法则是基于离散对数难题。

从上面消息传递模型我们可以看出,非对称加密算法遵循“私钥加密,公钥解密”和“公钥加密,私钥解密”的原则,但是有一点需要注意,公钥是公开的,所以用在什么场景是需要根据该算法的特征来考虑的,比如既然公钥是公开的,你用私钥加密敏感数据传递给第三方合适么?显然不合适,因为公钥公开的,别人都可以拿到公钥,也就意味着你加密的数据都可以解密,所以适合的场景比如私钥加密,公钥只是用来验证加密的内容,每个人都可以来验证,该场景是不在乎加密内容被其它攻击者看到的,甚至说内容本来就是公开的,对于接收者用公钥确保内容没有被篡改即可,所以我们通常说非对称算法“私钥签名,公钥验证签名”,另外一点,“公钥加密,私钥解密”,因为私钥只有我们自己手上有,所以理论上也只有我们自己可以解密,这样是安全的,https证书验证以及握手协议过程中会体现这一点。

数字签名算法可以看做是一种带有密钥的消息摘要算法,并且这种密钥包含了公钥和私钥。也就是说数字签名算法是非对称加密算法和消息摘要算法的结合体,遵循“私钥签名,公钥验证”的签名认证方式。
数字签名算法是公钥基础设施(Public Key Infrastructure,PKI)以及许多网络安全机制(SSL/TLS,VPN等)的基础。
数字签名算法要求能够验证数据完整性、认证数据来源,并起到抗否认的作用。

数字签名算法主要包括RSA、DSA、ECDSA共3种算法,其中RSA算法源于整数因子分解问题,DSA和ECDSA算法源于离散对数问题。

我们以蚂蚁金服开放平台上接口签名方案为例,详细说明可以打开如下文档:
蚂蚁开放平台签名专区

区块链与密码学第4-7讲:区块链+产品溯源场景全梳理

本课堂用通俗易懂的系列内容为大家呈现区块链与密码学领域相关知识。这里有知识也有故事,从感兴趣到有乐趣,点宽课堂等你来学。课程首先从比特币着手进行入门介绍,再延伸至区块链的相关技术原理与发展趋势,然后深入浅出地依次介绍在区块链中应用的各类密码学技术。欢迎大家订阅本专栏,持续进行学习。

【本课堂内容全部选编自PlatON首席密码学家、武汉大学国家网络安全学院教授、博士生导师何德彪教授的《区块链与密码学》授课讲义、教材及互联网,版权归属其原作者所有,如有侵权请立即与我们联系,我们将及时处理。】

4.7 基于区块链的产品溯源

中国的消费市场正在进入一个全新的可追溯时代,产品溯源成为社会上的热点问题。国家治理层面正在强调“可追溯”在产品,尤其是食品与药品安全等领域,以及市场监管中的作用。

尽管重要产品追溯国家标准已经制定完成,但是市场上假冒伪劣、以次充好的现象屡见不鲜,例如疫苗事件、红心鸭蛋事件、三鹿奶粉事件等,迫切要求广大企业利用信息技术为产品提供质量保证。这是因为目前现代食品种养殖、生产等环节繁复,食品生产加工程序多、配料多,食品流通进销渠道复杂,出现食品安全问题的概率大大增加,相应的追溯和问责的难度也不断上升。

为使消费者放心购买产品,企业为其产品提供可以溯源的信息和防伪识别成为重中之重。信息技术为企业有效解决产品溯源和防伪难题提供了更快捷、更方便的途径,且已经广泛应用于茶叶、畜产品、 果蔬产品、中药材等产品中。

什么是溯源?

溯源是一个能够连接产品生产、检验、监管和消费各个环节的生产控制系统,能够对产品进行正向、逆向、不定向的追踪管理,实现产品来源可查询、去向可追踪,保障产品的质量安全。

区块链溯源和防伪一样吗

区块链溯源与防伪是两个概念。区块链溯源是对商品进行上链数据保真,防伪是对商品进行真伪鉴别,行业上经常容易混为一谈而导致市场和消费者对区块链溯源效果产生怀疑。

根本原因在于区块链溯源应用的效果常常是防伪所要实现的目标,溯源与防伪结合起来才能保证商品的真实可信。

市场目前的溯源方式存在很多问题,其中比较明显的就是“既当运动员又当裁判员

商品溯源要追溯生产环节、流通环节,必然要增加做信任背书的主体,协作难度更大。

中心化的商品信息系统安全性不足,也容易被篡改信息,信息可信度低。

供应链存在多个信息系统,会有信息孤岛问题,各系统之间信息核对繁琐复杂。

用户个人信息泄露现象严重,对商品购买产生信任危机。

而区块链在溯源上存在天然的技术优势:

多方主体信任背书

区块链去中心化,降低了信任背书的难度,能组织到更多的供应链参与方,补充和共同维护更多的商品数据,提高用户的信任度

溯源实现有效追责

区块链技术的不可篡改、时间戳等特性,让交易可追溯.供应链数据被篡改时,可实现有效追责。商品信息透明真实,根除假冒伪劣问题。

打破各方信息孤岛

供应链各方共同维护数据源,且公开透明,确保参与各方及时发现运行过程中的问题,及对应的解决办法,有助于提升供应链管理效率。

保护用户隐私信息

区块链在匿名性的基础上,还通过多种加密、验证方式等多种技术手段,有效地保护用户的个人隐私,提高其信任感。

实用案例

农业:利用物联网和区块链技术,在生产端将温度、湿度等信息通过传感器传至区块链,在销售端利用微信等平台直接交易到终端消费者上手。

从落地情况来看,零售巨头沃尔玛是先行者。沃尔玛这样的品牌商,食品安全至事关品牌信誉,因此十分看中供应链管理.近期,沃尔玛在北京设立了食品安全中心,联合IBM和清华大学,采用区块链技术追踪美国的包装产品和中国的猪肉,涉及到运往多个商店的数千包裹。

目前沃尔玛将养殖场、加工厂、物流等环节拉入到联盟链中,实时追踪食品质量、储存温度、运输细节等信息,由此判断商品是否真实、安全以及它何时过期等情况。

基于区块链的智慧农业电商应用

医药:从药企生产开始部署节点,在各个经销渠道流转信息上链,消费者扫码可回溯药品真伪

珠宝:将宝石的来源、流转、所属权、地理位置等信息上传到区块链上,运用区块链技术不可篡改的特点,为每一颗宝石建立唯一的电子身份。

基于区块链的产品溯源系统工作流程

区块链技术可以降低商品伪造或低质量的风险,保护供应链体系中各方利益。通过分布式记录,让供应链各参与方变得更加诚实、积极。

基于区块链的产品溯源就介绍到这里啦,下一节课我们将总结区块链发展趋势,探究区块链应用未来发展方向。

—— 完 ——

关注点宽学园,每周持续更新区块链系列课程,小宽带你进入区块链世界。我们下节课见啦。

【区块链与密码学】课堂回顾:

区块链与密码学系列文章合集

以上是关于密码学相关知识梳理的主要内容,如果未能解决你的问题,请参考以下文章

zip相关知识梳理

一张思维导图带你梳理HashMap相关知识

Linux相关网络知识梳理

区块链与密码学第4-5讲:最全区块链应用场景梳理

区块链与密码学第4-4讲:最全区块链应用场景梳理

区块链与密码学第4-7讲:区块链+产品溯源场景全梳理