[Math] 对称加密与非对称加密

密码算法和协议,主要可以分为4个领域:
(1)对称加密:用于加密任意大小的数据块,或数据流的内容,包括消息、文件、加密密钥和口令。
(2)非对称加密:用于加密小的数据块,如加密密钥,或者数字签名中使用的 Hash 函数值。
(3)数据完整性算法:用于保护数据块(例如一条消息)的内容免于被修改。
(4)认证协议:有许多基于密码算法的认证方案,用来认证实体的真实性。

对称加密

对称加密,也称传统加密,或单钥加密,是20世纪70年代公钥密码产生之前唯一的加密类型。

对称密码是一种加解密使用相同密钥的密码体制,也称为传统密码。
对称密码利用密钥和加密算法,将明文变为密文,运用相同的密钥和解密算法,可以从密文恢复出明文。

分组密码是一种加/解密方案,它将输入的明文分组当做一个整体处理,输出一个等长的密文分组。
许多分组密码都采用 Feistel 结果,这样的结构由许多相同的轮函数组成。
每一轮中,对输入数据的一半进行代替,接着用一个置换来交换数据的两个等分部分。
扩展初始的密钥是的每一轮中使用不同的子密钥。

DES(Data Encryption Standard,数据加密标准)一直是应用最为广泛的加密算法,
它于1977年被美国国家标准局(NBS),及现在的国家标准和技术协会(NIST)采纳为联邦信息处理标准46(FIPS PUB 46)。
DES 体现了经典的 Feistel 结构,使用64位的分组和56位的密钥。
它将64位的输入经过一系列变换得到64位的输出,解密则使用了相同的步骤和相同的密钥。

56位密钥共有2的56次方种可能,这个数字大概是7.2乘以10的16次方。
1998年7月,电子前哨基金会(EFF)宣布一台造价不到25万美元的特殊设计的机器,破译了DES,
DES终于被清楚的证明是不安全的,这次攻击所花的时间不到三天。
幸运的是,有大量DES的替代算法,最重要的有AES和3DES。

一个有限域就是有有限个元素的域。
可以证明有限域的阶(元素的个数)一定可以写为素数的幂形式p的n次方,n为一个整数,p为素数。
阶为p的有限域,可以有模p算术来定义。
阶为p的n次方(n>1)的有限域,可以有多项式算术来定义。

美国国家标准技术研究所(NIST)在2001年发布了AES(Advanced Encryption Standard,高级加密标准),
AES是一个对称分组密码算法,旨在取代DES称为广泛使用的标准。
其分组长度为128位,密钥长度为128位,192位或256位。
AES未采用 Feistel 结构,每轮由4个单独的运算组成:字节代替,置换,有限域上的算术运算,以及与密钥的异或运算。

DES在穷举攻击之下相对比较脆弱,因此很多人在想办法用某种算法替代它。
一种方案是设计全新的算法,例如AES。
还有一种方案,是对DES进行多次加密,且使用多个密钥,例如三重DES(3DES)算法

多重加密是将一个加密算法多次使用的技术。
在第一使用中,明文通过加密算法转化为密文,然后将该密文作为输入重新执行加密算法。
三重DES,在三个阶段使用DES算法,共用到两组或三组密钥。

流密码是对称密码算法,从明文输入流逐位或逐字节产生密文输出。
使用最为广泛的此类密码是 RC4。
RC4 是 Ron Rivest 为 RSA 公司在1987年设计的一种流密码。它是一个可变密钥长度,面向字节操作的流密码。
它被用于为网络浏览器和服务器间通信而制定的 SSL/TLS(安全套接字协议/传输层安全协议)标准中,
它也应用于作为IEEE 802.11无线局域网标准一部分WEP(Wired Equivalent Privacy)协议和新的WiFi受保护访问协议(WPA)中。

非对称加密

公钥密码学的发展是整个密码学发展历史中最伟大的一次革命,也许可以说是唯一的一次革命。
公钥密码学与其前的密码学完全不同。
首先,公钥算法,是基于数学函数而不是基于代替和置换。
更重要的是,与只使用一个密钥的对称密码不同,公钥密码是非对称的,它使用两个独立的密钥。

非对称加密是一种密码体制,其加密算法和解密算法使用不同的密钥:一个是公钥,另一个是私钥。
非对称密码,也称为公钥密码。
非对称密码使用两个密钥中的一个以及加密算法将明文转换为密文。
用另一个密钥以及解密算法,从密文恢复出明文。

应用最广泛的公钥密码是RSA(Rivest-Shamir-Adleman)。
它是MIT的Ron Rivest,Adi Shamir和Len Adleman与1977年提出并与1978年首次发表的算法,是最早提出的成功的公钥算法之一。
RSA是一种分组密码,其明文和密文均是0至n-1之间的整数,通常n的大小为1024位二进制数,或309位十进制数。

Diffie-Hellman密钥交换是一个简单的公钥算法,这个协议使得通信的双方利用基于离散对数问题的公钥算法建立密钥。
许多商业商品都使用了这种密钥交换技术。
该算法的目的是使两个用户能安全的交换密钥,以便在后续的通信中用该密钥对信息加密。
该算法本身只限于进行密钥交换。

1984年,T.Elgamal提出了一种基于离散对数的公开密钥体制,它与 Diffie-Hellman密钥分配体制密切相关。
ElGamal密码体系应用于一些技术标准中,如数字签名标准(DSS)和S/MIME电子邮件标准。

大多数使用公钥密码学进行加密和数字签名的产品和标准都使用RSA算法。
为了保证RSA使用的安全性,最近这些年来密钥的位数一直在增加,这对使用RSA的应用是很重的负担,
对进行大量安全交易的电子商务来说更是如此。

近来出现的一种具有强大竞争力的椭圆曲线密码学(ECC)对RSA提出了挑战。
与RSA相比,ECC的主要诱人之处在于,它可以使用比RSA短得多的密钥得到相同的安全性,因此可以减少处理负荷。


参考

密码编码学与网络安全

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,142评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,298评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,068评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,081评论 1 291
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,099评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,071评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,990评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,832评论 0 273
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,274评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,488评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,649评论 1 347
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,378评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,979评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,625评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,796评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,643评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,545评论 2 352

推荐阅读更多精彩内容