徽标
联盟百科
通讯
下载应用,请到 Google Play
新! 在您的Android™设备上下载联盟百科!
下载
比浏览器更快的访问!
 

S盒

指数 S盒

在密码学中,一个S盒(Substitution-box,替换盒)是對稱密鑰加密算法执行替换计算的基本结构。在块密码中,它们通常用于模糊密钥与密文之间的关系——香农的混淆理论。 通常,S-Box接受特定数量的输入比特m,并将其转换为特定数量的输出比特n,其中n 不一定等于m。一个m×n的S盒可以通过包含2m条目,每条目n比特的查找表实现。S盒通常是固定的(例如DES和AES加密算法), 也有一些加密算法的S盒是基于密钥动态生成的(例如Blowfish和双鱼算法加密算法)。 DES的6×4位S盒(S5)是一个很好的例子: 给定6比特输入,将首尾两个比特作为行条件、中间四个比特(inner four bits)作为列条件进行查表,最终获得4比特输出。例如,输入“011011”,通过首尾两个比特“01”和中间的比特“1101”进行查表,最终的输出应该是“1001”。.

10 关系: 双鱼算法密码学密文對稱密鑰加密克劳德·香农Blowfish (密码学)高级加密标准資料加密標準查找表混淆與擴散

双鱼算法

双鱼算法(Twofish)是布鲁斯·施奈尔带领的项目组于1998年研发的区块加密算法。美国国家标准技术研究所(NIST)公开招募的高级加密标准(AES)算法最终候选算法之一,但最终并未当选高级加密标准算法。双鱼算法的标志性特点是它采用了和密钥相关的替换盒(S盒)。密钥输入位的一半被用于“真正的”加密流程进行编排并作为Feistel的轮密钥使用,而另一半用于修改算法所使用的S盒。双鱼算法的密钥编排非常复杂。 软件实现的128位双鱼算法在大多数平台上的运行速度不及最终获胜的128位的AES标准算法Rijndael,不过,256位的双鱼算法运行速度却较AES-256稍快。.

新!!: S盒和双鱼算法 · 查看更多 »

密码学

密碼學(Cryptography)可分为古典密码学和现代密码学。在西欧語文中,密码学一词源於希臘語kryptós“隱藏的”,和gráphein“書寫”。古典密码学主要关注信息的保密书写和传递,以及与其相对应的破译方法。而现代密码学不只关注信息保密问题,还同时涉及信息完整性验证(消息验证码)、信息发布的不可抵赖性(数字签名)、以及在分布式计算中产生的来源于内部和外部的攻击的所有信息安全问题。古典密码学与现代密码学的重要区别在于,古典密码学的编码和破译通常依赖于设计者和敌手的创造力与技巧,作为一种实用性艺术存在,并没有对于密码学原件的清晰定义。而现代密码学则起源于20世纪末出现的大量相关理论,这些理论使得现代密码学成为了一种可以系统而严格地学习的科学。 密码学是数学和计算机科学的分支,同时其原理大量涉及信息论。著名的密碼學者罗纳德·李维斯特解釋道:「密碼學是關於如何在敵人存在的環境中通訊」,自工程學的角度,這相當于密碼學與純數學的差异。密碼學的发展促進了计算机科学,特別是在於電腦與網路安全所使用的技術,如存取控制與資訊的機密性。密碼學已被應用在日常生活:包括自动柜员机的晶片卡、電腦使用者存取密碼、電子商務等等。.

新!!: S盒和密码学 · 查看更多 »

密文

在密码学中,密文(ciphertext或cyphertext)是明文经过加密算法所产生的。因为密文是一种除非使用恰当的算法进行解密,人类或计算机不可以直接阅读理解的明文的形态,所以可以被理解为加密的信息。解密与加密是相对的,即一种使密文转化为明文的过程。 M.

新!!: S盒和密文 · 查看更多 »

對稱密鑰加密

對稱密鑰加密(Symmetric-key algorithm)又稱為對稱加密、私鑰加密、共享密鑰加密,是密碼學中的一類加密演算法。這類演算法在加密和解密時使用相同的密鑰,或是使用兩個可以簡單地相互推算的密鑰。事实上,這組密鑰成為在兩個或多個成員間的共同祕密,以便維持專屬的通訊聯繫。與公开密钥加密相比,要求雙方取得相同的密鑰是對稱密鑰加密的主要缺點之一。 常见的对称加密算法有DES、3DES、AES、Blowfish、IDEA、RC5、RC6。 对称加密的速度比公钥加密快很多,在很多场合都需要对称加密。.

新!!: S盒和對稱密鑰加密 · 查看更多 »

克劳德·香农

克劳德·艾尔伍德·香农(Claude Elwood Shannon,),美国数学家、电子工程师和密码学家,被誉为信息论的创始人。 香农是密西根大學學士,麻省理工學院博士。 1948年,香农发表了划时代的论文——通信的数学原理,奠定了现代信息论的基础。不仅如此,香农还被认为是数字计算机理论和数字电路设计理论的创始人。1937年,21岁的香农是麻省理工學院的硕士研究生,他在其硕士论文中提出,将布尔代数应用于电子领域,能够构建并解决任何逻辑和数值关系,被誉为有史以来最具水平的硕士论文之一。二战期间,香农为军事领域的密码分析——密码破译和保密通信——做出了很大贡献。.

新!!: S盒和克劳德·香农 · 查看更多 »

Blowfish (密码学)

Blowfish是布鲁斯·施奈尔于1993年开发的区块加密算法,对称加密的一种。.

新!!: S盒和Blowfish (密码学) · 查看更多 »

高级加密标准

進階加密标准(Advanced Encryption Standard,缩写:AES),在密码学中又称Rijndael加密法,是美国联邦政府采用的一種區塊加密标准。这个标准用来替代原先的DES,已經被多方分析且廣為全世界所使用。經過五年的甄選流程,進階加密標準由美國國家標準與技術研究院(NIST)於2001年11月26日發佈於FIPS PUB 197,並在2002年5月26日成為有效的標準。2006年,進階加密标准已然成為对称密钥加密中最流行的演算法之一。 该演算法為比利时密码学家Joan Daemen和Vincent Rijmen所設計,結合兩位作者的名字,以Rijndael為名投稿進階加密標準的甄選流程。(Rijndael的發音近於"Rhine doll").

新!!: S盒和高级加密标准 · 查看更多 »

資料加密標準

数据加密标准(Data Encryption Standard,縮寫為 DES)是一种對稱密鑰加密块密码演算法,1976年被美国联邦政府的国家标准局确定为联邦资料处理标准(FIPS),随后在国际上广泛流传开来。它基于使用56位密钥的对称算法。这个算法因为包含一些机密设计元素,相对短的密钥长度以及怀疑内含美國國家安全局(NSA)的后门而在开始时有争议,DES因此受到了强烈的学院派式的审查,并以此推动了现代的块密码及其密码分析的发展。 DES现在已经不是一种安全的加密方法,主要因为它使用的56位密钥过短。1999年1月,distributed.net与电子前哨基金会合作,在22小时15分钟内即公开破解了一个DES密钥。也有一些分析报告提出了该算法的理论上的弱点,虽然在实际中难以应用。为了提供实用所需的安全性,可以使用DES的衍生算法3DES来进行加密,虽然3DES也存在理论上的攻击方法。在2001年,DES作为一个标准已经被高级加密标准(AES)所取代。另外,DES已经不再作为国家标准科技协会(前国家标准局)的一个标准。 在某些文献中,作为算法的DES被称为DEA(Data Encryption Algorithm,数据加密算法),以与作为标准的DES区分开来。在发音时,DES可以作为缩写按字母拼出来(),或作为一个词念成。.

新!!: S盒和資料加密標準 · 查看更多 »

查找表

在计算机科学中,查找表(Lookup Table)是用简单的查询操作替换运行时计算的数组或者关联数组这样的数据结构。由于从内存中提取数值经常要比复杂的计算速度快很多,所以这样得到的速度提升是很显著的。 一个经典的例子就是三角函數表。每次计算所需的正弦值在一些应用中可能会慢得无法忍受,为了避免这种情况,应用程序可以在刚开始的一段时间计算一定数量的角度的正弦值,譬如计算每个整数角度的正弦值,在后面的程序需要正弦值的时候,使用查找表从内存中提取临近角度的正弦值而不是使用数学公式进行计算。 在计算机出现之前,人们使用类似的表格来加快手工计算的速度。非常流行的表格有三角、对数、统计density函数。另外一种用来加快手工计算的工具是计算尺。 一些折衷的方法是同时使用查找表和插值这样需要少许计算量的方法,这种方法对于两个预计算的值之间的部分能够提供更高的精度,这样稍微地增加了计算量但是大幅度地提高了应用程序所需的精度。根据预先计算的数值,这种方法在保持同样精度的前提下也减小了查找表的尺寸。 在图像处理中,查找表将索引号与输出值建立联系。'''颜色表'''作为一种普通的 LUT 是用来确定特定图像中每一像素所要显示的颜色和强度。 另外需要注意的一个问题是,尽管查找表经常效率很高,但是如果所替换的计算相当简单的话就会得不偿失,这不仅仅因为从内存中提取结果需要更多的时间,而且因为它增大了所需的内存并且破坏了高速缓存。如果查找表太大,那么几乎每次访问查找表都会导致高速缓存缺失,这在处理器速度超过内存速度的时候愈发成为一个问题。在编译器优化的(rematerialization)过程中也会出现类似的问题。在一些环境如Java编程语言中,由于强制性的边界检查带来的每次查找的附加比较和分支过程,所以查找表可能开销更大。 如何构建查找表有两个基本的约束条件,一个是可用内存的数量;不能构建一个超过能用内存空间的表格,尽管可以构建一个以查找速度为代价的基于磁盘的查找表。另外一个约束条件是初始计算查找表的时间——尽管这项工作不需要经常做,但是如果耗费的时间不可接受,那么也不适合使用查找表。.

新!!: S盒和查找表 · 查看更多 »

混淆與擴散

在密碼學當中,混淆(confusion)與擴散(diffusion)是设计密码学算法的兩種主要方法。這樣的定義最早出現在--1945年的論文《密码学的数学理论》當中。 在--的定義之中,混淆主要是用來使密文和對稱式加密方法中金鑰的關係變得盡可能的複雜;而擴散則主要是用來使用明文和密文關的關係變得盡可能的複雜,明文中任何一點小更動都會使得密文有很大的差異。 混乱用于掩盖明文与密文之间的关系。这可以挫败通过研究密文以获取冗余度和统计模式的企图。做到这一点最容易的方法是“代替”。 扩散通过将明文冗余度分散到密文中使之分散开来。即将单个明文或密钥位的影响尽可能扩大到更多的密文中去。产生扩散最简单的方法是换位(置换)。.

新!!: S盒和混淆與擴散 · 查看更多 »

传出传入
嘿!我们在Facebook上吧! »