关于DES加密
数据加密算法(Data Encryption Algorithm,DEA)是一种对称加密算法,很可能是使用最广泛的密钥系统,特别是在保护金融数据的安全中,最初开发的DEA是嵌入硬件中的。通常,自动取款机(Automated Teller Machine,ATM)都使用DEA。它出自IBM的研究工作,IBM也曾对它拥有几年的专利权,但是在1983年已到期后,处于公有范围中,允许在特定条件下可以免除专利使用费而使用。1977年被美国政府正式采纳。
DES的原始思想可以参照二战德国的恩格玛机,其基本思想大致相同。传统的密码加密都是由古代的循环移位思想而来,恩格玛机在这个基础之上进行了扩散模糊。但是本质原理都是一样的。现代DES在二进制级别做着同样的事:替代模糊,增加分析的难度。
DES的加密原理,是使用一个 56 位的密钥以及附加的 8 位奇偶校验位,产生最大 64 位的分组大小。这是一个迭代的分组密码,使用称为 Feistel 的技术,其中将加密的文本块分成两半。使用子密钥对其中一半应用循环功能,然后将输出与另一半进行“异或”运算;接着交换这两半,这一过程会继续下去,但最后一个循环不交换。DES 使用 16 个循环,使用异或,置换,代换,移位操作四种基本运算。
类似于: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当然,这些都是base64编码。那么,什么是base64呢?
Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,大家可以查看RFC2045~RFC2049,上面有MIME的详细规范。Base64编码可用于在HTTP环境下传递较长的标识信息。例如,在Java Persistence系统Hibernate中,就采用了Base64来将一个较长的唯一标识符(一般为128-bit的UUID)编码为一个字符串,用作HTTP表单和HTTP GET URL中的参数。在其他应用程序中,也常常需要把二进制数据编码为适合放在URL(包括隐藏表单域)中的形式。此时,采用Base64编码不仅比较简短,同时也具有不可读性,即所编码的数据不会被人用肉眼所直接看到。
比如,编写一个“123”,得出的结果就是“MTIz”。
关于DES加密的更多相关文章
- Android数据加密之Des加密
前言: 端午节前有个同事咨询我有关Android DES加密的相关实现,简单的实现了一下,今天来总结一下. 其他几种加密方式: Android数据加密之Rsa加密 Android数据加密之Aes加密 ...
- php使用openssl进行Rsa长数据加密(117)解密(128) 和 DES 加密解密
PHP使用openssl进行Rsa加密,如果要加密的明文太长则会出错,解决方法:加密的时候117个字符加密一次,然后把所有的密文拼接成一个密文:解密的时候需要128个字符解密一下,然后拼接成数据. 加 ...
- DES加密
接口等加密字段 import java.security.SecureRandom; import javax.crypto.Cipher;import javax.crypto.SecretKey; ...
- c# DES加密解密
class DESHelper { string _iv = "9AUP"; string _key = "9d"; /// <summary> / ...
- (iOS)Base64加密和DES加密、以及JAVA和iOS中DES加密统一性问题
我们在项目中为了安全方面的考虑,通常情况下会选择一种加密方式对需要安全性的文本进行加密,而Base64加密和DES64加密是常用的加密算法.我记得我在前一个项目中使用的就是这两种加密算法的结合:Bas ...
- PYTHON实现DES加密及base64源码
要求是实现DES加密,解密,我是用python实现的,还是有挺多坑的,改bug就改了挺久,加密实现后,解密过程就比较轻松. 另外,附加base64编码源码 要求:输入秘钥为64位二进制数(有效位为56 ...
- des加密解密——java加密,php解密
最近在做项目中,遇到des加密解密的问题. 场景是安卓app端用des加密,php这边需要解密.之前没有接触过des这种加密解密算法,但想着肯定会有demo.因此百度,搜了代码来用.网上代码也是鱼龙混 ...
- DES加密解密
加密后生成Base64字符串,并去除'='字符. 加密后替换掉'+',这样加密后的字符串可以作为url参数传递. using System; using System.IO; using System ...
- iOS 开发之路(AES/DES加密实现) 三
最近接触的这个项目由于以前服务器上用的是DES/CBC/PKCS5Padding加密方式,为了让在iOS上的加密结果与服务器端保持一致,我做了很多尝试,现在分享给大家.PS:现在不推荐用DES了,只是 ...
- php des 加密解密实例
des加密是对称加密中在互联网应用的比较多的一种加密方式,php 通过mcrypt扩展库来支持des加密,要在Php中使用des加密,需要先安装mcrypt扩展库 $iv_size = mcrypt_ ...
随机推荐
- QT学习之事件处理
Qt事件机制 Qt程序是事件驱动的, 程序的每个动作都是由幕后某个事件所触发.. Qt事件的发生和处理成为程序运行的主线,存在于程序整个生命周期. Qt事件的类型很多, 常见的qt的事件如下: 键盘事 ...
- 设计模式21:State 状态模式(行为型模式)
State 状态模式(行为型模式) 动机(Motivation) 在软件构建过程中,某些对象的状态如果改变,其行为也会随之而发生变化,比如文档处于只读状态,其支持的行为和读写状态的行为就可能完全不同. ...
- css基础 引用方式 标签选择器 优先级 各式布局
今天讲的css基础,了解了css即层叠式表,是美化网页,控制页面的样式. 样式表引进网页的3种方式1内联式,语法例子:<div style="width: 100px;height: ...
- Java对称加密算法
对称加密算法概念 加密密钥和解密密钥相同,大部分算法加密揭秘过程互逆. 特点:算法公开.(相比非对称加密)计算量小.加密速度快.效率高. 弱点:双方都使用同样的密钥,安全性得不到保证. 常用对称加密算 ...
- Android小技巧
一.android:clipChildren属性 效果图 看到这个图时你可以先想想如果是你,你怎么实现这个效果.马上想到用RelativeLayout?NO,NO,NO,,, 实现代码 <?xm ...
- memcached整理の内存管理及删除机制
内存的碎片化 如果用C语言直接malloc,free来向操作系统申请和释放内存时,在不断申请和释放的过程中,形成了一些很小的内存片段,无法再利用.这种空闲但无法利用内存的现象称为内存的碎片化. sla ...
- Java API研究:获取本地环境所有网卡及每个网卡的所有网络配置
一个网卡(不太标准,应该叫做一个网络接口,一个网卡是可以拥有多个网络接口的,如SoftAP)拥有一套网络配置:ip地址,子网掩码,网关,dns等等. 自java 1.6开始,提供了访问网络配置的一些接 ...
- [修正] Firemonkey 中英文混排折行,省略字符,首字避开标点
问题:FMX 在移动平台的文字显示并非由该平台的原生 API 来显示,而是由 FMX.TextLayout.GPU 来处理,也许是官方没留意到中文字符的问题,造成在中英文混排折行时,有些问题. 修正: ...
- Adding Cache-Control headers to Static Files in ASP.NET Core
Thanks to the ASP.NET Core middleware pipeline, it is relatively simple to add additional HTTP heade ...
- auc的本质
AUC的本质 定义 auc是roc曲线下的面积.其中,roc是横坐标为fpr,纵坐标是tpr的坐标系上的曲线. TPR(true positive rate):所有正样本中被预测为正的比例 FPR(f ...