密码技术简介之认证

前言

本文章是对《图解密码技术》一书第二部分的一个总结。

认证

本文章将介绍如何确认消息完整性(单向散列函数)、进行认证(消息认证码)已经防止否认(数字签名)。

单向散列函数

单向散列函数,也称消息摘要函数哈希函数或者杂凑函数,根据消息的内容计算出消息的散列值,通过散列值可以用来检查消息的完整性。

性质

单向散列函数有如下性质:

  • 根据任意长度的消息计算出固定长度的散列值
  • 能够快速计算出散列值
  • 消息不同散列值也不同
  • 具备单向性,即无法通过散列值反算出消息

应用

单向散列函数有如下应用:

  • 检查软件是否被篡改
  • 基于口令的加密
  • 消息认证码
  • 数字签名
  • 伪随机数生成器
  • 一次性口令

散列函数

常用的单向散列函数有:

  • MD4、MD5,目前这个两个算法的强抗碰撞性已经被破解,已经能够产生具备相同散列值的两条不同的消息。
  • SHA-1、SHA-2(SHA-256、SHA-384、SHA-512等), SHA的强抗碰撞性已经被攻破,SHA-2还尚未被攻破。
  • RIPEMD、RIPEMD-160, RIPEMD已经被攻破,RIPEMD-160尚未被攻破,比特币使用的是RIPEMD-160。
  • SHA-3,Keccak算法于2012年被选为SHA-3。

消息认证码

消息认证码(Message Authentication Code)是一种确认完整性并进行认证的技术,简称MAC

使用

其使用步骤如下图:


消息认证码使用步骤.PNG
  1. 发送者Alice与接收者Bob事先共享密钥;
  2. 发送者Alice根据汇款请求消息计算MAC值(使用共享密钥);
  3. 发送者Alice将汇款请求和MAC值两者发送给接收者Bob;
  4. 接收者Bob根据接收到的汇款请求消息计算MAC值(使用共享密钥);
  5. 接收者Bob将自己计算得MAC值和从Alice处收到的MAC值进行对比;
  6. 如果两个MAC值一致,则接收者Bob就可以断定汇款请求的确来找Alice(认证成功),如果不一致,则可以断定消息不是来找Alice(认证失败)。

数字签名

数字签名就是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明,可以用来识别篡改和伪装,还可以防止否认。数字签名是非对称密钥加密技术与数字摘要技术的应用。

签名生成和验证

数字签名中,包括生成消息签名验证消息签名两部分。

消息发送者使用签名密钥来生成消息的签名,而消息接收者或者验证者则使用验证密钥来验证消息的签名。签名密钥只能由签名的人持有,而验证密钥的则是任意需要验证签名的人都可以持有

实际上,数字签名跟公钥密码有非常紧密的联系,两者非常相似。简而言之,数字签名就是通过将公钥密码“反过来用”而实现的。


数字签名

数字签名方法

有两种生成数字签的方法:

  • 直接对消息签名的方法
  • 对消息的散列值签名的方法

直接对消息签名的方法
签名和验证流程如下图:

直接对消息签名和验证的方法

对消息的散列值签名的方法
签名和验证流程如下图:

对消息的散列值签名和验证的方法.PNG

应用

数字签名有如下一些应用:

  • 安全信息公告
  • 软件下载
  • 公钥证书
  • SSL/TLS

RSA实现数字签名

RSA生成签名:

签名 = 消息^D mod N

RSA验证签名:

由签名求得的消息 = 签名^E mod N

验证签名时,将“由签名求得的消息”与“消息”进行对比。

参考

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

推荐阅读更多精彩内容

  • 前言 《图解密码技术》一书介绍了很多关于密码的知识,通读一遍需要不少时间。为了方便学习,我对书中关键的部分进行了总...
    咖枯阅读 7,165评论 1 25
  • Guide to BluetoothSecurity原文 本出版物可免费从以下网址获得:https://doi.o...
    公子小水阅读 7,933评论 0 6
  • 所有货币都需要一些方法来控制供应,并强制执行各种安全属性以防止作弊。在法定货币方面,像中央银行这样的组织控制货币供...
    Nutbox_Lab阅读 3,083评论 1 3
  • 对称加密与非对称加密 按照密钥的使用形式,加密算法可以分为对称加密和非对称加密(又叫公钥加密)。对称加密在加密和解...
    邱振源的博客阅读 1,194评论 0 2
  • 对称加密: DES DES是1977年美国联邦信息处理标准中使用的一种对称密码技术,曾今被美国和其他国家政府银行使...
    十三亿少女梦丶阅读 1,117评论 0 10