首页 > 其他分享 >第1章 密码学基础模型与概念

第1章 密码学基础模型与概念

时间:2023-10-31 20:34:55浏览次数:601  
标签:加密 密码 模型 明文 概念 算法 密钥 密文 密码学

1.1 密码学基本概论

1.1.1 Scytale密码棒

明文:需要被保密的有意义的信息。

密文:被加密过的没有明确意义的乱码。

加密:通过相关方法将明文变成密文的过程。

解密:通过相关方法将密文变成明文的过程。

密钥:解决加密或者解密过程的相关方法。

公开信道/秘密信道

1.1.2 保密通信模型

保密通信模型:

1.1

Alice:协议的发起者。

Bob:协议的应答者。

Eve:窃听者和可能的攻击者。

密文c在公开的信道上传送。

密钥k在一个秘密的安全信道传送。

Eve(公开信道上的一个不可信的第三方):

可以根据恶意程度进行划分:

Oscar:被动的观察者,仅仅根据从公开信道获得的资料进行破译。

Malice/Mallory:主动的攻击者,可能会拦截数据、篡改信息、冒充合法的通信者。

密码学的作用:保证Alice和Bob能在公开的信道上通信,而窃听者、攻击者Eve不能理解他们通信的内容。

1.1.3 攻击者的能力

Eve有如下的几种攻击手段:

A.搭线窃听,读取Alice发送Bob的消息;

B.被动破译,试图寻找密钥并读取用该密钥加密的信息;

C.中断通信,从公开信道阻拦从Alice发送给Bob的信息;

D.篡改消息,拦截Alice发送给Bob的信息m,并用一个伪造的信息m1代替m;

E.伪造通信,伪装成Alice发送信息m给Bob,让Bob误以为是在和Alice通信。

1.2

A和B两种攻击属于被动攻击,通常用Oscar表示。

C、D和E属于主动攻击,通常用Malice表示。

被动攻击难检测易防范,主动攻击易检测难防范。

无论哪种攻击方式,攻击目的的达到都建立在对加密方法、解密方法以及密钥这三个核心资源的获取上。

Dolev-Yao威胁模型,明确地给出了Malice所具备的特征和攻击能力:

他能获得经过网络的任何消息;

他是网络的一个合法使用者,因而能够发起与任何其他用户的对话;

他有机会成为任何主题发出信息的接收者;

他能冒充任何别的主体给任意主体发消息。

1.1.4 现代密码学的基本原则

Kerckhoffs原则:

在评定一个密码体制的安全性时,必须假定攻击者知道所有目前使用的密码学方法。

该原则将过去基于算法保密的安全性转化为基于密钥保密的安全性。

Scytale密码棒方法就是基于算法保密的安全性
(当时大多数人并不知道该密码的加密方法)。

现代密码学的研究:公开征集安全的密码算法,人人都可以通过设置自己私有的密钥,而使用相同的公开的安全算法获得安全性。(基于公开算法和密钥保密的密码体制,公开地研究密码加密和解密算法,以复杂的数学理论保证该算法的不可破解性)

1.3

如式(1-1)、(1-2)所示,加密函数E和解密函数D是公开的,而k是秘密和私有的。已知密钥k,从明文x到密文y的计算是容易的;仅仅知道y、E、D,而不知道k,计算出x,在数学上或者说在当前的计算能力下,是不可能的。

1.1.5 密码分析的攻击方式

密码学:研究在不安全通道上传递信息及相关问题的总称,包括密码编码学和密码分析学。

密码编码学:使消息保密的技术和科学,通常指设计密码系统及完成相关功能的算法与机制,包括密码算法和安全通信协议。

密码分析学:破译密文的科学与技术,即揭穿伪装、破坏加密体制。

根据攻击所能获得的信息资源,可以将其攻击方式分为6类: (1)唯密文攻击:攻击者有一些消息的密文,这些消息都是用同一加密算法加密。攻击者的目的是恢复尽可能多的明文,当然最好是获得消息的加密密钥。

(2)已知明文攻击:攻击者在得到密文的同时,还知道这些消息的明文。攻击的目标就是根据加密信息推导出用来加密的密钥,或者等价的,即使没有找到密钥,但是能找出一种方法,能对同一密钥加密的密文获得其明文。

(3)选择明文攻击:攻击者不仅可以获得一些密文-明文消息对,而且能选择被加密的明文。这比已知明文攻击更有效,因为攻击者可以选择能加密的特定明文块去获得密文,那些块可能产生更多的密钥信息。

(4)自适应选择明文攻击:这是比选择明文攻击具有更多权限的攻击方式,攻击者不仅可以选择一大块明文用来加密获得密文,还可以基于以前的结果修正这个选择,选择另一与第一块明文相关的明文块。

(5)选择密文攻击:攻击者能选择不同的被加密的密文,并可能得到对应的解密的明文。譬如,攻击者获得了某个解密机;或者攻击者是渗透在保密系统内部的员工,可以有一定的权限获得某些密文的原文;而在公开密钥密码系统中,一些安全协议需要通过“加密-解密”的方式来验证身份,此时,密钥的所有者往往扮演了预言机的角色。

(6)选择密钥攻击:指密码分析者具有不同密钥间关系的有关知识。

1.2 基于密钥的算法

加密和解密算法,根据所使用密钥的性质,通常分为两类:对称算法和公开密钥算法。

1.4

如果加密密钥k1和解密密钥k2相同,或者相关(k1、k2可以相互推导,如知道k1可以推导出k2),则称为对称密钥密码算法;如果加密密钥k1和解密密钥k2之间没有任何关联,是否知道k1对获得解密密钥k2没有任何帮助,同样,知道k2对获得加密密钥k1也没有任何帮助,则称为非对称密钥算法。

由于非对称密钥密码算法在使用中,通常将加密密钥公开,所有人都可以用这个密钥加密,而只有解密密钥的持有者才可以解密,所以,也常被称为公开密钥算法。

1.2.1 对称密钥密码系统

在大多数对称算法中,加密/解密密钥是相同的,这些算法也叫秘密密钥算法或单密钥算法。古典加密体制以及著名的数据加密标准和高级加密标准都是基于对称密钥的。

对称算法分为两类:

序列算法——一次只对明文中的单个比特(有时对字节)运算。

分组算法——对明文中的一组比特进行运算。

现代计算机密码算法中典型的分组长度是64比特——这个长度大到足以防止分析破译,但又小到足以方便使用。

1.2.2 非对称密钥密码系统

在这个系统中,加密密钥也叫公开密钥,解密密钥也叫私钥。

1.3 密码协议

协议的特点:

(1)协议中的参与方都必须了解协议,并且预先知道所要完成的所有步骤;

(2)协议中的每个参与方都必须同意并遵守它;

(3)协议必须是清楚的,每一步必须明确定义,如进行通信,或完成一方或者多方运算,并且不会引起误解;

(4)协议必须是完整的,对每种可能的情况必须规定具体的动作。

1.3.1 引例:加密的银行转账

1.5

协议1-1中,KCB(m)表示对信息m用密钥KCB进行加密之后的密文。

1.3.2 一个攻击

1.6

1.3.3 增加认证(*)

1.7

1.8

1.3.4 对认证的攻击(*)

1.9

1.3.5 安全协议类型与特点

通常的网络协议,假定参与者是遵循协议要求、忠诚于协议的目标的;而密码协议则假定参与者以及第三方都是恶意的,希望在表面上对协议遵守规则去执行,而实际上却破坏协议的任务,希望在这个任务执行的过程中,达到自己不可告人的目的。

通常来说,密码协议在设计和执行的过程中,会预设一个场景,然后每个协议的参与者有一些特定的角色去扮演。我们对协议中常见的参与者(扮演角色),有一些约定俗成的任务名。

1.10

密码协议在安全系统中,其关键性目的并不是保证密码算法的不可破译,而是假设密码算法本身是安全的,借助这种安全的密码算法,达到以下4个主要目标:

(1)机密性。搭线窃听者Eve不能读取信道上传输的信息的明文,主要的手段是先加密后传输,由接收者解密;

(2)完整性。接收者Bob需要确认Alice的消息没有被更改过。有可能是传送错误,也可能是Mallory截获并修改了这个信息。密码学中的散列函数,就提供了检测方法来检测数据是否被攻击者有意无意地修改过。

(3)认证性。接收者Bob需要确认消息确实是Alice发送的,而不是冒名顶替的行为,通常这种认证包括两类:实体认证和数据源认证。对消息中所涉及参与方的鉴别,也常用身份鉴别来表示。身份认证主要是确认主体是否合法的参与者,数据源认证主要是确认消息是由他所声称的主体发送和生成的。

(4)抗抵赖性。也称为不可否认性,对于一个已经进行的行为,参与的主体不能否认,即发送者事后不能虚假地否认他发送的消息。

标签:加密,密码,模型,明文,概念,算法,密钥,密文,密码学
From: https://www.cnblogs.com/Ly227/p/17801260.html

相关文章

  • 大模型训练中的AI合成数据应用
    随着人工智能技术的飞速发展,数据成为了训练高级模型的关键因素。然而,很多时候,真实的数据并不总是能够满足模型训练的需求。为了解决这个问题,一些开发者开始尝试使用AI合成数据来训练模型。这种现象近年来逐渐引起人们的关注,但同时也充满了争议。使用AI合成数据训练模型具有很多优势......
  • 百度AICA首席AI架构师培养计划第七期毕业,大模型深入产业见成果
    10月28日,由深度学习技术及应用国家工程研究中心与百度联合创办的AICA首席AI架构师培养计划,迎来第7期毕业典礼,88位学员获得AI架构师认证。截至目前,AICA已累计为业界培养了410位产业AI领军人才。同时,AICA第7期毕业学员约有三分之一聚焦大模型产业应用课题并取得先期成果。百度文心......
  • 从数据预处理到模型部署
    近年来,人工智能技术的高速发展备受瞩目,而其中的一个关键领域就是机器学习模型的开发和部署。越来越多的企业和组织开始投入巨资进行模型开发和部署,以提升自身业务的智能化水平。为了帮助大家更好地理解和掌握模型开发与部署的相关知识,我们特地整理了本次直播的关键内容,带大家深入探......
  • 2023年8月第3周大模型荟萃
    2023年8月第3周大模型荟萃1、LLM-Adapters:可将多种适配器集成到大语言模型来自新加坡科技设计大学和新加坡管理大学的研究人员发布了一篇题为《LLM-Adapters:AnAdapterFamilyforParameter-EfficientFine-TuningofLargeLanguageModels》的论文。该论文介绍了一种名为LLM-......
  • flutter 快速生成模型文件
    安装依赖flutterpackagesaddbuild_runnerflutterpackagesaddjson_serializable定义文件lib/models/user.dartimport'package:json_annotation/json_annotation.dart';part'user.g.dart';@JsonSerializable()classUser{User(this.name,......
  • 【面试题】你理解中JS难理解的基本概念是什么?
    作用域与闭包作用域作用域是当前的执行上下文,值和表达式在其中“可见”或可被访问。如果一个变量或表达式不在当前的作用域中,那么它是不可用的。作用域也可以堆叠成层次结构,子作用域可以访问父作用域,反过来则不行。————MDN作用域最重要的特点是:子作用域可以访问父作用域,反之则......
  • 【ROS2机器人入门到实战】RVIZ2可视化移动机器人模型
    8.2RVIZ2可视化移动机器人模型写在前面当前平台文章汇总地址:ROS2机器人从入门到实战获取完整教程及配套资料代码,请关注公众号<鱼香ROS>获取教程配套机器人开发平台:两驱版|四驱版为方便交流,搭建了机器人技术问答社区:地址fishros.org.cn大家好,我是小鱼,上一节讲完joint和link,我们来......
  • 倾斜摄影三维模型的根节点合并注意事项浅析
    倾斜摄影三维模型的根节点合并注意事项浅析 倾斜摄影三维模型的根节点合并是构建高精度、真实感和稳定性的三维模型的关键步骤之一。在进行根节点合并时,需要注意以下几个重要的事项,以确保合并的准确性和可靠性。首先,准确的相机标定是进行根节点合并的基础。相机标定是确定相......
  • 除了注意力机制,以下是一些可以集成到LSTM模型中的其他模块:
    我明白了,你说的是将模块集成到LSTM中以预测土壤湿度。除了注意力机制,以下是一些可以集成到LSTM模型中的其他模块:卷积神经网络(CNN):在LSTM之前添加卷积层,用于提取土壤湿度数据中的时空特征。卷积-递归神经网络(ConvLSTM):ConvLSTM结合了卷积和循环结构,适用于处理时空序列数......
  • 背概念
    Lecture1.经济学基本原理决策时人们衡量收益和成本.某物的机会成本opportunitycost是为了得到它而放弃的东西,分为货币成本monetarycost和时间成本thecostoftime,强调行为之间的排他性.生产可能性边界ProductionPossibilityFrontier描述给定生产技术和要素,......