密码学知识普及

密码学知识普及

Table of Contents

  • 加密
  • 单向加密
  • 信息认证码
  • 数字签名
  • 公钥基础设施 PKI
  • 随机数

加密

对称密码: 机密和解密的密钥是相同的, 因此必须向接受者配送密钥
公钥密钥 (非对称密码): 无需向接收者配送用于解密的密钥

对称密码算法: DES, 3DES, AES (Rijndael)
公钥密码算法: RSA, ELGamal, Rabin, 椭圆曲线

加密密钥 和 解密密钥 不同

接收者 先将加密密钥发给发送者 (在这个过程中, 加密密钥即使被窃听者知道了也没所谓),
发送者使用加密密钥对通信内容进行加密并发送给接收者,
而只有拥有解密密钥的人 (即接收者本人) 才能够进行解密

加密密码 叫 公钥 pubilc key, 解密密码叫 private key

中间人攻击:

假装成接收者, 向发送者提供自己的公钥, 然后发送者以 假公钥 加密内容, 中间人就可以解密了

对称密码不会被公钥密码取代:

公钥密码处理速度只有对称密码的几百分之一, 因此, 公钥密码并不适合用来对很长的消息内容进行加密

混合密码系统:

用对称密码提高速度, 用公钥密码保护回话密钥

dec 和 dec3 加密可以通过一定的时间来破解, 目前比较好的算法是 aes
aes 又有 ECB CBC CFB OFB CTR 等模式, 不推荐使用 ECB 模式, CBC 和 CTR 比较好 – 《实用密码学》

加密 openssl enc -des3 -a -salt -in IN_FILE_NAME -out OUT_FILE_NAME
解密 openssl enc -d -des3 -a -salt -in IN_FILE_NAME -out OUT_FILE_NAME

openssl enc -aes-xxx -a salt -in IN_FILE_NAME -out OUT_FILE_NAME
openssl enc -d -aes-xxx -a salt -in IN_FILE_NAME -out OUT_FILE_NAME

单向加密

对数据进行计算特征码, 特性 One-Way (Collision-free)



算法:

md5       已经被攻破
sha1      已经被攻破
sha256
sha512

openssl dgst [-md5|-md4|-md2|-sha1|-sha|-mdc2|-ripemd160|-dss1][-out filename] /path/to/somefile

信息认证码

单向加密的延伸应用 message authentication code MAC

数据完整性检验, 通信双方认证

算法:

CBC-MAC
HMAC: 使用 md5 和 sha1 算法

MAC 的应用

  1. SWIFT 环球银行金融电信协会
  2. IPsec
    对互联网基本通信协议 – IP 协议 增加安全性的一种方式, 对通信内容的认证和完整性校验都是采用消息认证码
  3. SSL/TLS
    https

数字签名

  1. 生成消息签名的行为
    由消息发送者完成 (称为对消息签名), 意味着 "我认可该消息的内容"
  2. 验证消息签名的行为
    接收者 或者 第三方机构验证者完成, 验证成功意味着这个签名是正确的, 失败意味着这个消息是伪造的

在数字签名中, 生成签名和验证签名都是需要 不同的密钥 完成的

签名密钥只有发送方才有 (private key)
验证密钥是 第三方机构 或者 接收者拥有 (public key)
使用 private key 进行数字签名, 其他人无法生成相同的签名 (密文)

和公钥密码相反的是

数字签名使用 private key 加密生成签名, 用 public key 解密验证签名

实际上, 由于消息一般很长, 不对消息进行签名, 而对消息的散列值进行签名

签名的应用:

如, 确定发布的网页没有被第三方篡改

中间人攻击:

伪装成接收者, 对发送者发送的数据进行接收, 然后以发送者的身份发送给接收者,
接收者误以为他是发送者, 就 确定接收, 然后中间人就可以发送垃圾信息了, 例如篡改网页

证书, 就是 public key

certification authority, CA 认证机构 (就是第三方机构, 用来确认 public key 是不是真的)
VeriSign 公司: 最有名的认证公司

证书的标准规范 X.509

公钥基础设施 PKI

假设 a 访问 b, b 为了证明自己是真的, 就要向 CA 证明自己是真的

  1. 生成一个密钥对
  2. 然后向 CA 发送一个请求, 生成一个证书 (里面含有公钥信息) 保存到 CA 仓库中
  3. CA 提供仓库中的证书给 a, 让 a 下载得到 b 的 public key

随机数

伪随机数, 例如可以使用 time() 函数, 然后对一个数取模, 这样容易遭受到攻击
真随机数, 事先在一个名为随机数池的文件中积累随机比特序列, 当密码软件需要伪随机数种子的时候,
可以从这个随机数池中去取出所需长度的随机比特序列来使用 (当前随机池里面的内容要保密, 否则没有意义)

时间: 2024-10-25 23:53:07

密码学知识普及的相关文章

PMP认证知识普及:PMP考试介绍

1 PMP简介 PMP(Project Management Professional)指项目管理专业人士(人事)资格认证.美国项目管理协会(PMI)举办的项目管理专业人员(PMP)认证考试在全球190多个国家和地区推广,是目前项目管理领域含金量最高的认证.获取PMP证书,不仅提升项目经理的项目管理水平,也直接体现项目经理的个人竞争力,是项目管理专业人士身份的象征. 国内自1999年开始推行PMP认证,由国际监考机构普尔文进行监考及考试组织! PMP作为项目管理资格认证考试,已在国际上树立了其权

PMP认证知识普及:PMP认证有哪些价值?

一.目前拥有PMP较多的公司 1.跨国公司(只罗列部分公司,排名不分先后)IBM . Microsoft .Oracle Corp . SAP.GE . Siemens .KPMG .DELL.Hewlett Packard . EDS . ATT .Accenture .Blue Cross Blue Shield  .SAIC .NOKIA.Alcatel/Lucent .Computer Sciences Corp .Ericsson .Satyam Computer Services .

PMP认证知识普及:PMBOK中主要讲解哪些内容?

目前PMP考试是以美国项目管理协会编写的<项目管理知识体系指南 >PMBOK2012版本为依据,教材主要内容框架如下: 领域 启动过程组 规划过程组 执行过程组 监控过程组 收尾过程组 项目整合管理 4.1制定项目章程 4.2 制定项目管理计划 4.3指导与管理项目工作 4.4监控项目工作 4.6结束项目或阶段 4.5实施整体变更 项目范围管理 5.1 规划范围管理 5.5确认范围 5.2收集需求 5.6控制范围 5.3 定义范围 5.4创建WBS 项目进度管理 6.1 规划进度管理 6.7控

PMP认证知识普及:学习PMP需要多少时间和费用?

1.所需时间:备考时间通常是3个月左右,累计学习时间不少于200小时.中国大陆在考试后6周左右出成绩,纸质证书通常在成绩出来后2个月可以领取.中国大陆每年考4次,2014年3月22.6月28.9月20.12月13日各一次考试:考试时间是4个小时.2.考试形式:试题统一由美国PMI项目管理协会负责出题和翻译,中国大陆采用笔试,共200道中英文对照四选一的选择题,涂写答题卡的形式完成试卷,第三方国际监考公司监考和印制.3.认证费用:培训机构收取培训费通常在1700元至3500元不等,考试费统一由国家

FastCGI和CGI运行差异知识普及

一.FastCGI是什么? FastCGI是语言无关的.可伸缩架构的CGI开放扩展,其主要行为是将CGI解释器进程保持在内存中并因此获得较高的性能. 众所周知,CGI解释器的反复加载是CGI性能低下的主要原因,如果CGI解释器保持在内存中并接受FastCGI进程管理器调度,则可以提供良好的性能.伸缩性.Fail-Over特性等. 二.FastCGI的工作原理 1)FastCGI进程管理器自身初始化,启动多个CGI解释器进程(多个php-cgi进程)并等待来自Web Server的连接.php-f

【转】科普知识普及 - 桥接VS中继

首先要说明一个很多人理解的误区,中继比桥接好用,真的是这么回事么? 答案是否定的. 我们在说桥接和中继的时候我们要先了解,桥接和中继的工作原理.还有一个问题,估计很多人都想不明白:为什么中继搜到的信号可以比桥接的多? 其实这些问题.我们要从网络的基础说起. 中继,相信很多人都知道的东西.中继中继,顾名思义,把信号接受过来,然后继续发送出去. 桥接,这个词很多人知道,但是相对于中继来说很多人比较陌生.桥接桥接,就是把wifi信号用无线桥接受过来. 这样说可能很多人不明白这两者到底有什么区别! 用白

投行知识普及【转】

整个金融行业大致分为buy side和sell side两大类.Sell side做的主要是把各种asset变成各种金融产品,提供给市场.Sell side主要指的是通常意义上的投行.投行内部结构也很复杂,按照产品分大致分为fixed income和equity两大类.按照业务分大致分为IBD, sales & trading,equity research, asset management(这部分和buy side性质是类似的)等.IBD是最传统的投资银行业务,靠近的是corporate一边

开源-基本知识普及 来自互联网

 一.开源软件发展的保障:分发协议 前不久,4月26日,是 世界知识产权日.知识产权日旨在促进人们树立尊重知识.崇尚科学和保护知识产权的意识,营造鼓励创新和保护知识产权的法律环境. 在4月28日,我们发布了来自BlenderCN社区罗聪翼的文章< 自由的成本--当开源遇上伪自主>,为大家介绍了国内两起涉嫌侵犯Blender分发协议,伤害开发者权益的事件,痛陈国内开源软件权利维护之路漫长且艰难.文章一经发出,迅速在微博上引起了一场关于维护开源软件权利的讨论,我们希望透过这一事件,引起大家对开

硬盘分区表格式GUID和MBR知识普及

我们的电脑硬盘分区格式一共有两种,一种是GUID(GPT),一种是MBR 如果你的电脑原装系统是win8或者以上的,那么他的硬盘分区表格式为GUID(GPT)格式的:如果是win7以下的,那么一般就是MBR的了. 除此之外我们还可以利用分区工具DiskGenius进行判断,这个工具当进入U启动的时候就可以看到 点击硬盘,如果转换分区表类型为MBR是可以选中的,那么说明你的为GUID的,反之,则为MBR的. MBR和GUID知识普及: MBR 主引导记录(Master Boot Record,缩写