des算法密码多长_密码学中的多个DES

des算法密码多长

This is a DES that was susceptible to attacks due to tremendous advances in computer hardware in cryptography. Hence, it was a very complex or competent algorithm it would be feasible to reuse DES rather than writing an of cryptography.

由于加密技术中计算机硬件的巨大进步,这是一种易于受到攻击的DES 。 因此,这是一个非常复杂或称职的算法,重用DES而不是编写加密算法是可行的。

Required to this variation of DES were introduced known as multiple DES which was as follows as Shown:

引入这种DES变体所需的称为多重DES ,如下所示:

1)双DES (1) Double DES)

  • Mainly, Double DES is simple as it does that normal DES does. Double DES uses twp keys to say K1 and K2 in this algorithm. It first performs DES on the original plain text using K! to get the encrypted text in cryptography. Here, it again performs DES on the encrypted text but this time with the other key K2 in this algorithm.

    主要是, Double DES很简单,就像普通DES一样。 在此算法中,双DES使用twp键表示K1和K2。 它首先使用K对原始纯文本执行DES! 以加密方式获取加密的文本。 在这里,它再次对加密的文本执行DES,但是这次使用该算法中的另一个密钥K2。

  • Firstly, the final output is the encryption of encrypted text with the original plain text encrypted twice with two different keys shown in the structure as given below:

    首先,最终输出是加密的文本的加密,原始的纯文本用两个不同的密钥加密了两次,结构如下所示:

    Multiple DES (1)
  • While the doubly encrypted ciphertext block is first decrypted using the key K2 to produce singly encrypted ciphertext by plaintext or original text. Hence, this ciphertext block is then decrypted using the key K1 to obtain the original plain text block in cryptography.

    首先使用密钥K2对双重加密的密文块进行解密,以通过明文或原始文本生成单一加密的密文。 因此,然后使用密钥K1对该密文块进行解密以获得密码术中的原始明文块。

  • Mainly, the cryptanalysis for the basic version of DES requires a search of 256 thus the assumption is Double DES require 2128 keys which is not true for the message.

    主要是,对DES基本版本的密码分析需要搜索256,因此假设Double DES需要2128个密钥,这对于消息而言是不正确的。

    Here, a Meet-in-the-middle attack is the drawback of double DES in this. Mainly, this attack involves encryption from one end, decryption from the other and matching the results in the middle hence the name in the message.

    在此,中间相遇攻击是双重DES的缺点。 主要是,这种攻击涉及从一端进行加密,从另一端进行解密以及在中间匹配结果,从而在消息中使用名称。

Therefore, the simplest form of multiple encryptions has two encryption stages and two keys in this. Here, given a plaintext P and two encryption keys K1 and K2, ciphertext C is created as: C = E(K2, E(K1, P))

因此,多重加密的最简单形式具有两个加密阶段和两个密钥。 在此,给定明文P和两个加密密钥K1K2 ,将密文C创建为: C = E( K2 ,E( K1 ,P))

Then, Decryption requires that the keys be applied in reverse order as: P = D(K1, D(K2, C))

然后,解密要求以相反的顺序应用密钥,例如: P = D( K1 ,D( K2 ,C))

Now, For DES, this scheme involves a key length of 56 * 2 = 112 bits, resulting in a dramatic increase in cryptographic strength in this. Further, but we need to examine the algorithm more closely for this.

现在,对于DES,此方案涉及56 * 2 = 112位的密钥长度,从而导致加密强度显着提高。 此外,但是我们需要对此进行更仔细的研究。

2)三重DES (2) Triple DES)

Here, to improve the security of DES to a higher level triple DES was proposed in this. While this uses three stages on DES for encryption and decryption in cryptography.

在此,为了提高DES的安全性,提出了三重DES。 虽然这在DES上使用三个阶段来进行加密中的加密和解密。

Multiple DES (2)

There basically of two versions of triple-DES are as given:

基本上有两种版本的三重DES

i. Triple DES with Two Keys

一世。 两键三重DES

  • While in triple DES with two keys there are only two keys K1 used by the first and third stages and K2 used in the second stage in this. Basically, first, the plain text is encrypted with key K1 then the output of step one is decrypted with K2 and final the output second step is encrypted again with key K1 in cryptography.

    在具有两个密钥的三重DES中,第一级和第三级仅使用两个密钥K1 ,第二级中仅使用两个密钥K2 。 基本上,首先,用密钥K1加密纯文本,然后用K2解密步骤1的输出,最后再用密钥K1再次加密输出的第二步。





  • Multiple DES (3)




  • It is also called encrypt decrypt encrypt (ECE) mode in cryptography. Hence, Triple DES with two keys is not susceptible to the meet-in-the-middle attack in cryptography.

    在密码学中,它也称为加密解密解密(ECE)模式。 因此,具有两个密钥的三重DES不会受到密码学中的中间相遇攻击。

ii. Triple DES with Three Keys

ii。 三键三键DES

  • It basically had the idea of Triple-DES with three keys:

    它基本上具有使用三个密钥的Triple-DES的想法:





  • Multiple DES (4)




  • While the plain text block P is first encrypted with a key K1 then encrypts with a second key K2 and finally with a third key K3 where K1, K2, and K3 are all different from each other in this algorithm. This is Decryption is done in reverse order in this way. Therefore, this algorithm is mostly used in PGP and S/MIME in cryptography.

    虽然首先使用密钥K1加密纯文本块P ,然后使用第二密钥K2加密,最后使用第三密钥K3加密,其中该算法中的K1K2K3都互不相同。 这就是解密以这种方式以相反的顺序完成。 因此,此算法主要用于密码学中的PGP和S / MIME。

  • Therefore, the DES cipher's key size of multiple of 56 bits of the message was generally enough when that algorithm was designed but the availability of increasing computational power made brute force attacks feasible in this algorithm. Thus, the Triple-DES provides a relatively simple method of increasing the key size of DES to secure against such attacks like that, without the need to design a completely new block cipher algorithm by this technique in cryptography.

    因此,当设计该算法时,消息的56位的DES密码的密钥大小通常就足够了,但是计算能力的提高使暴力攻击在该算法中可行。 因此,Triple-DES提供了一种相对简单的方法来增加DES的密钥大小,以防止类似的攻击,而无需通过这种技术在密码学中设计一种全新的分组密码算法。

MEET-IN-THE-MIDDLE ATTACK

遇见中间攻击

Therefore, the use of double DES results in a mapping that is not equivalent to a single DES encryption in cryptography. Hence, but there is a way to attack this scheme, one that does not depend on any particular property of DES but that will work against any block encryption cipher in cryptography.

因此,使用双DES会导致映射不等同于密码学中的单个DES加密。 因此,但是有一种方法可以攻击这种方案,该方案不依赖于DES的任何特定属性,但是可以与密码学中的任何块加密密码一起工作。

Therefore, the algorithm known as a meet-in-the-middle attack was first described in [DIFF77]. It is based on the observation that we can say if we have it

因此,在[DIFF77]中首先描述了称为中间相遇攻击的算法。 基于观察,我们可以说是否拥有

Multiple DES (5)

Here, it has given a known pair, (P, C), the attack proceeds as follows as see. Firstly, encrypt P for all 256 possible values of K1 in this. While storing these results in a table and then sort the table by the values of X. Next, decrypt C using all 256 possible values of K2 in cryptography. Therefore, as each decryption is produced, check the result against the table for a match by this. Either if a match occurs, then test the two resulting keys against a new known-plaintext–ciphertext pair in cryptography. Hence, if the two keys produce the correct ciphertext, accept them as the correct keys in this algorithm.

在这里,它给出了一个已知的对(P,C) ,攻击如下所示进行。 首先,在此为K1的所有256个可能值加密P。 将这些结果存储在表中后,再按X的值对表进行排序。 接下来,使用密码学中K2的所有256个可能值解密C。 因此,随着每次解密的进行,以此将结果对照表进行核对。 如果发生匹配,则针对密码学中新的已知明文-密文对测试两个结果密钥。 因此,如果两个密钥产生正确的密文,则在此算法中将它们接受为正确的密钥。

For Example, for any given plaintext or original text P, 264 possible ciphertext values could be produced by double DES in this. This was Double DES uses, in effect, a 112-bit key, so that there are 2112 possible keys apply to messages. Therefore, on mean, for a given plaintext or original text P, the number of different 112-bit keys that will produce a given ciphertext as C is given: 2112/264 = 248

例如,对于任何给定的明文或原始文本P ,在此可以通过双DES产生264个可能的密文值。 实际上,这是Double DES使用的112位密钥,因此有2112种可能的密钥适用于消息。 因此,平均而言,对于给定的纯文本或原始文本P,给出将产生给定密文作为C的不同112位密钥的数目: 2112/264 = 248

While, the foregoing procedure will produce about 248 false alarms on the first (P, C) pair in this. Therefore, a similar argument indicates that with an additional 64 bits of known plaintext and ciphertext, the false alarm rate is reduced to 248 - 64 = 2 - 16 in mathematics. While putting another way, if the meet-in-the-middle attack is performed on two blocks of known plaintext–ciphertext, the probability that the correct keys are determined is 1 - 2 - 16 in this way. Thus, the result is that a known-plaintext attack will succeed against double DES, which has a key size of 112 bits, with an effort on the order of 256, which is not much more than the 255 required for single DES in cryptography.

同时,上述过程将在此第一对(P,C)上产生约248个错误警报。 因此,类似的论点表明,在已知的明文和密文有另外的64位的情况下,错误警报率在数学上降低为248-64 = 2-16。 换句话说,如果对已知的明文-密文的两个块执行中间相遇攻击,则以这种方式确定正确密钥的可能性为1-2-16。 因此,结果是,已知的明文攻击将成功抵御密钥大小为112位的双DES,而付出的努力约为256,这不超过密码术中单个DES所需的255。

Image source: https://www.tutorialspoint.com/cryptography/triple_des.htm

图片来源: https : //www.tutorialspoint.com/cryptography/triple_des.htm

翻译自: https://www.includehelp.com/cryptography/multiple-des.aspx

des算法密码多长

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/377260.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《MySQL——索引笔记》

目录回表覆盖索引最左前缀原则联合索引的时候,如何安排索引内的字段顺序?索引下推重建索引问题联合主键索引和 InnoDB 索引组织表问题in与between的区别回表 回到主键索引树搜索的过程,我们称为回表。 覆盖索引 覆盖索引就是在这次的查询中…

《操作系统知识点整理》

目录进程与线程比较多线程同步与互斥生产者与消费者哲学家就餐问题读者写者问题进程间通信管道消息队列共享内存信号量信号Socket锁互斥锁与自旋锁读写锁乐观锁与悲观锁死锁进程与线程比较 进程是资源(包括内存、打开的文件等)分配的单位,线…

操作系统大内核和微内核_操作系统中的内核

操作系统大内核和微内核A Kernel is the central component of an Operating System. The Kernel is also said to be the heart of the Operating System. It is responsible for managing all the processes, memory, files, etc. The Kernel functions at the lowest level …

《MySQL——锁》

全局锁是什么?全局锁有什么用?全局锁怎么用? 全局锁主要用在逻辑备份过程中,对于InnoDB 引擎的库,使用–single-transaction; MySQL 提供了一个加全局读锁的方法,命令是 Flush tables with read lock (FTW…

搜索引擎Constellio及Google Search Appliances connectors

做搜索产品的时候发现国外一个同类型的产品contellio,发现功能比较强大,先记录下来 貌似可以添加文档 网站 以及数据库等不同类型的数据源 http://wiki.constellio.com/index.php/Main_Page http://www.constellio.com/ http://www.constellio.com htt…

分类器是如何做检测的?——CascadeClassifier中的detectMultiScale函数解读

原地址:http://blog.csdn.net/delltdk/article/details/9186875 在进入detectMultiScal函数之前,首先需要对CascadeClassifier做初始化。 1. 初始化——read函数 CascadeClassifier的初始化很简单: cv::CascadeClassifier classifier; cl…

abs std::abs_ABS的完整形式是什么?

abs std::absABS:防抱死制动系统 (ABS: Anti-lock Braking System) ABS is an abbreviation of the Anti-lock Braking System. It is a safety anti-skid braking system that is used on a variety of aircraft, automobiles and other land vehicles, such as mo…

汉字速查使用方法简介

《汉字速查》(HanziSearcher)是一个支持全汉字字典和词典的检索工具。其界面如下所示。 界面上方为工具栏。 左方为字典和词典检索栏。 右方在启动时显示版权信息和作者的联系方式,在执行检索时,显示检索结果。 检索方法 汉字速查…

android jni示例_Android服务示例

android jni示例A service is a component that runs in the background for supporting different types of operations that are long running. The user is not interacted with these. These perform task even if application is destroyed. Examples include handling of…

空间换时间,把递归的时间复杂度降低到O(2n)

递归算法的时间复杂度除非只有前两项,否则都不是线性的,并且相当耗费内存。我们用最常见的的fibonacci数列来说明: function fibonacci(n){if( n 0 || n 1){return n;} else {return fibonacci(n - 1) fibonacci(n - 2);} } 这是一种最常见…

《MySQL——给长字符串加索引》

对于长字符串,可用如下方式建立索引: (1)前缀索引 (2)字符串倒叙前缀索引 (3)添加hash字段并在hash字段上加索引 (4)字段拆分(一个字段可拆分为两…

傻瓜教你看清MVC内部执行流程之ViewData数据传输,轻松学MVC--①目了然篇(待续)

1.首先在执行到Controller里面的action(方法)时,执行到最后会调用一个View()-->此方法是Controller的一个方法 源代码: View Code protected internal ViewResult View(){return View(null /* viewName */, null /* masterName */, null /* model */);} 2.然后继续调用自己…

poj 1088

题目:http://poj.org/problem?id1088 记忆化搜索,dp[r][c] max(dp[r - 1][c] , dp[r 1][c] , dp[r][c - 1] , dp[r][c 1]) 1 ( if (题目给的条件满足)) View Code 1 using namespace std;2 typedef long long ll;3 const in…

《MySQL——order by逻辑(全字段排序与rowid排序)》

创建一个表,然后使用查询语句: 查询城市是“杭州”的所有人名字,并且按照姓名排序返回前 1000 个人的姓名、年龄 create table t (id int(11) not null,city vachar(16) not null,name vachar(16) not null,age vachar(16) not null,addr va…

HTML5 video

摘要:本文主要介绍HTML5 video在android2.2中实现的主要架构和程序流程。 一、实现HTML5 video主要的类 1. 主要类结构及介绍 图1中绿色类为java类,其余为c类,下面是各个类的具体介绍: (1) HTMLElement类不是最上层类&#xff0c…

明源面试

明源面试,笔试题目如下 一、SQL测试题 1 有两张表 根据给出的SQL语句,写出返回的行数分别是多少?为了形象直观的显示,我给出了sql语句执行结果。 A 学生表 B分数表 新题目 select a.* from a inner join b on a.idb.id; …

肯德基收银系统模式_肯德基的完整形式是什么?

肯德基收银系统模式肯德基:肯塔基炸鸡 (KFC: Kentucky Fried Chicken) KFC is an abbreviation of "Kentucky Fried Chicken". It is a fast-food restaurant chain whose specialty is known for fried chicken because of its specialization in it. It…

泛型(CSDN转载)

函数的参数不同叫多态,函数的参数类型可以不确定吗? 函数的返回值只能是一个吗?函数的返回值可以不确定吗? 泛型是一种特殊的类型,它把指定类型的工作推迟到客户端代码声明并实例化类或方法的时候进行。 下面是两个经典…

pvr波形是什么意思_PVR的完整形式是什么?

pvr波形是什么意思PVR:Priya村路演 (PVR: Priya Village Roadshow) PVR is an abbreviation of Priya Village Roadshow. It is one of the biggest and leading multiplex cinema chains in India. PVR是Priya Village Roadshow的缩写 。 它是印度最大和领先的多元…

《MySQL——查询长时间不返回的三种原因与查询慢的原因》

目录查询长时间不返回等MDL锁等flush等行锁查询慢构造一张表,表有两个字段id和c,再里面插入了10万行记录 create table t (id int(11) not null,c int(11) default null,primary key (id) ) engine InnoDB;delimiter ;; create procedure idata() begi…