Preface of《Introduction To Modern Cryptography》

现代密码学(Introduction to Modern Cryptography) 现代密码学三个基本原则: 1.Formulation of exact definitions 2.Reliance on precise assumptions 3.Rogorous proofs of security 阅读详情

        《Introduction to modern cryptography》是一本非常合适的现代密码学入门书籍。本书的特点紧凑、严谨、系统地展现了现代密码学的核心范式和准则。对于密码学的初学者而言,本书可能具有相当的难度,但依旧非常具备仔细钻研的价值。

        与现代密码学相对应的称作古典密码学,但二者并不应当以时间作为严格的划分界限。现代密码学有着扎实的数学基础,并且是可以被证明安全的。

        现代密码学所强调的,是以下三点:

  •         定义(definition):如果想要设计任何的密码学准则或者协议,首先应当给出方案(scheme)以及安全(security)的形式化定义。如果都不知道你所设计的方案是干什么的,所要达到的安全是什么,那么设计也就无从谈起。在本书中涉及到许多内容的定义。例如方案,包括私钥加密、消息认证码、公钥加密、数字签名,以及密钥交换方案等等。对于每种方案,都有相应的安全定义。例如私钥加密和公钥加密都涉及到的eva-secure、cpa-secure、cca-secure的安全定义。消息验证码则有"secure"和"strong-secure"的安全定义。这种定义也应当包括敌手(adversary)或攻击者(attacker)的攻击模式,是局限在被动的窃听,还是可以主动的篡改?
  •         准确的假设(precise assumption):许多密码学的方案和构造(construction)并不是无条件安全的。这里的假设应当从两个方面理解:第一个方面是敌手(adversary)或攻击者(attacker)的算力。敌手的攻击模式应当是定义的内容,而这里我们关注的是算力,假设敌手具备多项式级别的算力(而不是指数级别)。第二个方面则是密码学的构造,通常依赖许多的数学难题。例如,私钥加密涉及到伪随机数和为随机生成器的存在,而公钥加密的某些构造则依赖于大素数分解问题、离散对数问题等等。我们总是假设这些问题是很难破解的。因此,为了学习具体的密码学方案的构造,我们需要深入理解这些难题。
  •         关于安全的严格证明(rigorous proofs of security)。有了对于方案和安全的准确描述,以及数学难题的假设,我们就能给出关于安全的严格证明,来说明我们的构造是符合要求的。在古典密码学当中,有一些方案天花乱坠,看上去纷繁复杂实则存在致命的漏洞。现代密码学的方案构造,必须要有相对应的安全证明。

        在整本书的学习当中,我们都应当强调这三点。同时,我们应当从以下的五个角度去理解现代密码学的组成部分:

  •         方案(scheme):方案是我们想要在现实世界中达到的目标。在第3章我们介绍第一种方案私钥加密(Private Key Encryption),它的目标是保护信息的机密性。私钥加密假设通信双方都拥有相同的密钥key,这个密钥仅有通信双方知道,这样即使在不安全的信道上也可以保护信息。第4章介绍了消息验证码(Message Authentication Code),它的目标是保护信息的完整性。如果具有主动攻击能力的敌手想要篡改信息,那么消息验证码能够提醒通信方,消息被篡改。本书的大部分内容都在介绍与机密性相关的方案(私钥加密、公钥加密)和完整性相关的方案(消息验证码、数字签名),也包括一些其余的方案(哈希函数、密钥交换机制)等。我们主要关注方案的定义,以及究竟在现实世界中达到怎样的目标。
  •         敌手(adversary):我们关注敌手的能力。注意,敌手能力是相对于方案而言的。如果是私钥加密、公钥加密这种保护机密性的方案,那么敌手的目标就是尽可能获取原文消息的信息。这个时候敌手的能力包括窃听攻击、选择明文攻击、选择密文攻击等等。如果是对于消息验证码这种保护完整性的方案,敌手的目标就是想办法篡改消息而不让通信方察觉。我们主要以实验的方式,形式化给出敌手的能力。而对于算力,我们会在第2章假设敌手的算力是无穷的,在第3章及其之后假设敌手的算力是多项式级别的。
  •         安全(security):安全的定义,和方案与敌手紧密相关。 
  •         假设(assumption):一些数学难题。
  •         构造(construction):方案是抽象的,可以理解为接口,而构造则是它们的具体实现。构造依赖于假设,即数学难题。

        最后,介绍下《Introduction To Modern Cryptography》(Third Edition)的全部内容。本书大致可以分为三个部分,第一个部分将带着我们从古典密码学走入现代密码学。

  1. 第一章介绍了古典密码学,并对于序言涉及到的现代密码学特征、准则有了更深的讨论。我们的重心并不是古典密码学,但应当对此有所了解。
  2. 第二章介绍了“完美加密”。听起来,如果我们学完了完美加密,似乎一切问题都结束了。但实际上完美加密并不完美。首先,它假设的敌手能力很差,只限于窃听攻击。同时,它并不具备实际使用的价值。但是完美加密在现代密码学的过程中依旧非常重要,它可以理解为进入到现代密码学世界的桥梁。

        第二部分是第三章到第八章,这部分内容被称作“私钥密码学”或者“对称密码学”。私钥和对称在这里是一个意思——我们假设通信双方都有着相同的、保密的密钥key。

  1. 第三章介绍了第一种方案:私钥加密(Private Key Encryption)。
  2. 第四章介绍了第二种方案:消息验证码
  3. 第五章回到了私钥加密。我们讨论如何结合二者,创造出cca-secure的私钥加密方案。
  4. 第六章介绍了哈希函数。这是密码学的重要基础,也可以理解为一种方案,因为我们依旧讨论了相关的敌手和安全问题。
  5. 第七章是比较底层的内容。第三章的时候我们假设伪随机数和伪随机生成器的存在,这一章我们讨论几种实际使用的伪随机数和伪随机生成器。        
  6. 第八章从更加数学的角度讨论对称密码学。

        第三部分是第九章到第十五章。在对称密码学中,我们没有介绍怎么做到使得通信双方具备相同的密钥。实际上在现时使用中做不到事先约定好这样的密钥。因此我们介绍非对称密码学,或者称作公钥密码学。

  1. 第九章讨论数论、群论和用于公钥密码学的难题假设。这个顺序和学习私钥密码学的顺序完全相反。那时候我们先学习方案、敌手、安全,在第七、八章才讨论假设和构造。
  2. 第十章继续讨论数论和群论。我们简单介绍下,为什么难题是困难的。
  3. 第十一章是密钥管理。
  4. 第十二章是公钥加密。
  5. 第十三章是数字签名。
  6. 第十四章是后量子密码学。
  7. 第十五章是公钥加密当中的前沿主题。        

Introduction to Modern Cryptography-现代密码学导论[一] 目录Perfect secrecy Encryption1.Perfect secrecy(完美保密)2.Perfect (adversarial) indistinguishability(完美不可区分性)EAV-Security3.The One-time Pad(一次性密码本)4.Limitations of Perfect secrecy5.*Shannon’s TheoremComputational security Encryption6.Computational securityThe A 阅读详情

相关推荐

第一章 简介和古典密码(粗略版) - 现代密码学导论 Introduction to Modern Cryptography

Chapter 1 简介和古典密码 1.1 密码学和现代密码学 ​    简明牛津字典(2006)将密码学定义为“编写或破解密码”的艺术。这个定义在历史上上可能是准确的,但它并没有抓住现代密码学的本质。首先,它只关注秘密通信的问题。这一点可以从以下事实中看出:定义中指明的“密码”,在其他地方被称为“预先安排的信号系统,特别是用于确保传输信息的保密性”。其次,该定义将密码学视为一种艺术。的确,直到20世纪(可以说直到该世纪末),密码学是一门艺术。无论是构建好的密码,或是

red1y 1万+

免费分享 introduction to modern cryptography

老样子 看评论区!

吴彦祖的博客 2704

前言 - 现代密码学导论 Introduction to Modern Cryptography

Introduction to Modern Cryptography - Jonathan Katz and Yehuda Lindell 前言 ​    这本书介绍了密码学的基本原理和原则。旨在作为密码学本科或研究生课程的教科书,作为适合自学的一般介绍(特别是对于即将毕业的学生(beginning graduate students)),并作为学生、研究人员和从业人员的参考资料。 ​    如今已有许多其他的密码学教科书,读

red1y 2761

Introduction to modern Cryptography 现代密码学原理与协议第一章笔记

(2) 加密算法Enc,输入为密钥k和明文m,输出为密文c。(3)解密算法Dec,输入为密钥k和密文c,输出为明文m。(1) 密钥产生算法Gen是一个概率算法,能够根据方案定义的某种分布方案分布选择并输出一个密钥k。eg: m:=Deck(c),表示密文c通过密钥k可以得到唯一的一个结果。对任意加密方案的基本要求是:对于任何通过Gen输出的密钥k,每个明文消息。,表示加密可能是随机的,同一组数据分别加密两次得到的密文也可能不同。加密的语法由三个算法组成:密钥产生,加密,解密。用:=表示结果是确定性的。

2201_75595843的博客 1315

现代密码学概论(Introduction to modern cryptography),第四章MAC消息认证码

Introduction to modern cryptography Chapter 4消息认证码(Message authentication code)完整性的概念MAC方案的定义安全的MAC方案强安全MAC方案构造安全的MAC方案构造固定长度消息的安全MAC方案构造任意长度消息的安全MAC方案CBC-MAC参考网址 消息认证码(Message authentication code) 本文将对密码学书中MAC方案一章进行介绍,主要从完整性的概念,MAC方案的定义,安全的MAC方案定义以及如何构造一个

baidu_40973299的博客 1566

Introduction to Modern Cryptography - Jonathan Katz & Yehuda Lindell

Introduction to Modern Cryptography - Jonathan Katz & Yehuda Lindell

【亲测免费】 探索现代密码学:《Introduction to Modern Cryptography》项目解析

探索现代密码学:《Introduction to Modern Cryptography》项目解析 本文将向您介绍一个极具价值的学习资源——项目。这是一个全面、深入的现代密码学教程,旨在帮助开发者和学者理解加密技术的核心原理及其在网络安全中的应用。 项目简介 该项目是一个在线版的《Introduction to Modern Cryptography》教材,由耶鲁大学教授 Jonathan Kat...

gitblog_00081的博客 764

Introduction to Modern Cryptography

Introduction to Modern Cryptography

Introduction to Modern Cryptography-数论基础篇

设 a,b∈Z , a≠0。如果,使得,那么就说 b可被a整除,记作。

2301_79553633的博客 430

现代密码学导论Introduction to Modern Cryptography

本文档侧重于现代密码学作为一门科学。 包括有关分组密码,伪随机,对称和非对称加密,哈希,身份验证和数字签名的主题。

高频面试题-项目介绍篇

聊聊如何介绍项目经历。

m0_73359763的博客 1908

【现代密码学】笔记1.2 -- 对称密钥加密、现代密码学的基本原则《introduction to modern cryphtography》现代密码学原理与协议

在对称密钥加密系统中,通信双方共享一段密码信息,称为密钥(key当他们希望安全地通信时,会使用这个共享密钥。发送方使用密钥来加密(或者“混合”)消息。接收方收到消息后,使用相同的密钥来解密(或者“去混合”)以恢复原始消息。这里所说的消息本身称为明文plaintext),而从发送方传输到接收方的经过加密处理的消息称为密文ciphertext),如图 1.1 所示。在这种设置中,共享的密钥用来从所有潜在的窃听者中区分通信双方(这通常假设是通过一个公共信道进行传输的)。描述。

定期分享我的发现和想法,感谢你的陪伴和支持 5083

从ROS2到ROS1:Lightning-LM激光SLAM模块的移植实践与核心代码解析

本文详细解析了将高性能激光SLAM算法Lightning-LM从ROS2移植到ROS1的完整实践过程。针对ROS1与ROS2在节点初始化、话题通信、参数服务器及TF发布等核心API的差异,文章提供了loc_system和slam模块的核心代码改造示例,并给出了适配catkin的CMakeLists.txt与package.xml配置方案,帮助开发者在现有ROS1生态中高效集成先进的SLAM模块。

weixin_29224529的博客 172

《Introduction To Modern Cryptography》读书笔记一

《Introduction To Modern Cryptography》读书笔记 本笔记纯粹个人读书习惯与相应见解,内容归纳完全出于个人需要与个人局限,如有修改意见(比如哪儿应该是值得加粗的重点),欢迎斧正,QQ:2570101165 一、 Introduction 1.1 Cryptography and Modern Cryptography 经典密码学:编写或解决代码的艺术 现代密码学:保护数字信息、系统和分布式计算免受对抗式攻击的数学技术的研究(不完整定义) 例如:确保完整性的机制、交换密.

weixin_45935647的博客 5181

PyTorch实战(2)——使用PyTorch构建神经网络

在本节中,我们使用 PyTorch 在简单数据集上构建了一个神经网络,训练神经网络来映射输入和输出,并通过执行反向传播来更新权重值以最小化损失值,并利用 Sequential 类简化网络构建过程;介绍了获取网络中间值的常用方法,以及如何使用 save、load 方法保存和加载模型,以避免再次训练模型。

盼小辉丶的博客 1万+

SAP S/4 FICO科目辅助余额表开发说明书(包括测试样例、程序代码仅作参考,不保证一定可以运行)

SAP S/4 FICO科目辅助余额表开发说明书(包括测试样例、程序代码仅作参考,不保证一定可以运行)

我好像病了的博客 329

Introduction to Modern Cryptography-抽象代数篇

集合 {b|∃a(aRb)} 为R的。

2301_79553633的博客 1428

MicroPython学习:在STM32上进行移植

本文将介绍如何在STM32上移植MicroPython,并提供相应的源代码。通过以上步骤,你已经成功地将MicroPython移植到STM32上,并可以使用MicroPython语言编写和运行代码。你可以进一步探索MicroPython的功能和API,以利用STM32的各种外设和功能。使用STM32CubeProgrammer或其他适当的烧录工具,将编译生成的MicroPython固件烧录到STM32微控制器中。打开该文件,并根据你的STM32微控制器类型进行必要的配置更改。模块来控制STM32的LED。

JeeVue的博客 1237

Introduction to modern Cryptography 现代密码学原理与协议第二章笔记

M表示明文空间,K表示密钥空间,C表示所有可能的密文集合。必要性证明略,此证明为条件概率的简单应用。简化约定,不再特殊声明。

2201_75595843的博客 1224

大语言模型与ROS集成的自然语言机器人控制:开源框架与应用实例

近年来,大语言模型(LLM)与机器人操作系统(ROS)的集成逐步成熟,使得自然语言驱动的机器人控制成为可能。用户输入“捡起绿色方块”或“把微波炉里的饭热好端过来”这类日常语句,机器人能够自动拆解步骤、规划动作并执行。本文梳理2026年前后发布的三个代表性开源框架——ROS-LLM、ROSClaw以及LLM+Nav2基准测试系统,介绍其技术路径与工程落地情况。

Studying…… 634

QGis二次开发 —— 5、基于qgis开发多种在线地图预览,并加入经纬度坐标显示等(附:源码)

QGis二次开发 —— 5、基于qgis开发多种在线地图预览,并加入经纬度坐标显示等(附:源码

369

Introduction to Modern Cryptography-Key Management and the Public-Key Revolution(密钥管理与公钥改革)

1.公钥加密允许通过公共(但经过验证的)通道进行密钥分发。这可以简化共享密钥的分发和更新。2.公钥加密减少了用户存储许多秘密密钥的需要。使用公钥加密,每个员工只需存储一个私钥(他们自己的)和所有其他员工的公钥。重要的是,后面这些密钥不需要保密;它们甚至可以存储在某个公共存储库中。3.最后,公钥加密更适合于开放环境,在这种环境中,以前从未交互过的各方希望能够安全地进行通信。作为一个常见的例子,公司可以在线发布其公钥;当用户需要加密其信用卡信息以发送给该公司时,可以根据需要购买该公司的公钥。

2301_79553633的博客 375

MaxScript批量修改材质、贴图名称

MaxScript批量修改材质、贴图名称1 实现效果1.1 修改前材质、贴图名称1.2 修改后2 代码 1 实现效果 1.1 修改前材质、贴图名称 1.2 修改后 2 代码 prefixName = "prefiname" maxFile = "maxfilepath" makeDir "newBitmappath" mapsPath = newbitmappath + "\\" fn formatStr index = ( str = index as string newS

郑德帅 3241

Chapter 1:第1.1节 — 第1.3节 教材:Introduction to Modern Cryptography (Third Edition)

Chapter 1---Introduction to Modern Cryptography (Third Edition)

mingtian20112020的博客 2859

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

【现代密码学】笔记3.1-3.3 --规约证明、伪随机性《introduction to modern cryphtography》

定义私钥加密方案回顾私钥加密相关定义窃听不可区分实验在窃听不可区分实验中,敌手和挑战者之间进行一个思维实验。敌手根据安全参数产生两个相同长度的不同消息,并发送给挑战者;挑战者根据安全参数生成密钥,并对随机选择的一个消息进行加密,将挑战密文发送给敌手。敌手输出一个比特,来表示对被加密消息的猜测,若猜对,则实验成功。一个敌手AA与一个挑战者CC进行3轮交互:AA选择两个长度相同、内容不同明文m0m1m_0, m_1m0​m1​,并发送给CC;CC。

定期分享我的发现和想法,感谢你的陪伴和支持 4875

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

下一篇: Chapter2.1 Definitions. 《Introduction To Modern Cryptography》
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值