数据加密--学习

作者: Kevin_Curry | 来源:发表于2016-03-16 11:18 被阅读55次

常用加密算法 AES  MD5 BASE64 RSA DES 3DES RC4 

对称加密 des,3des,aes

非对称加密 rsa

不可逆加密 md5

BASE 64

1. Base64使用A--Z,a--z,0--9,+,/ 这64个字符. 

2. 编码原理:将3个字节转换成4个字节( (3 X 8) = 24 = (4 X 6) )先读入3个字节,每读一个字节,左移8位,再右移四次,每次6位,这样就有4个字节了.

3. 解码原理:将4个字节转换成3个字节.先读入4个6位(用或运算),每次左移6位,再右移3次,每次8位.这样就还原了.

Base64是一种很常见的编码规范,其作用是将二进制序列转换为人类可读的ASCII字符序列,常用在需用通过文本协议(比如HTTP和SMTP)来传输二进制数据的情况下。Base64并不是一种用于安全领域的加密解密算法(这类算法有DES等),尽管我们有时也听到使用Base64来加密解密的说法,但这里所说的加密与解密实际是指编码(encode)和解码(decode)的过程,其变换是非常简单的,仅仅能够避免信息被直接识别。

MD5

MD5是不可逆的,只能加密而不能解密。比如明文是yanzi1225627,得到MD5加密后的字符串是:14F2AE15259E2C276A095E7394DA0CA9  但不能由后面一大串倒推出yanzi1225627.因此可以用来存储用户输入的密码在服务器上。现在下载文件校验文件是否中途被篡改也是用的它,原理参见:http://blog.csdn.net/forgotaboutgirl/article/details/7258109无论在Android上还是pc上用java实现MD5都比较容易,因为java已经把它做到了java.security.MessageDigest里。

特点

1、压缩性:任意长度的数据,算出的MD5值长度都是固定的。

2、容易计算:从原数据计算出MD5值很容易。

3、抗修改性:对原数据进行任何改动,哪怕只修改1个字节,所得到的MD5值都有很大区别。

4、强抗碰撞:已知原数据和其MD5值,想找到一个具有相同MD5值的数据(即伪造数据)是非常困难的。

RSA加密

RSA是可逆的,一个字符串可以经rsa加密后,经加密后的字符串传到对端如服务器上,再进行解密即可。前提是服务器知道解密的私钥,当然这个私钥最好不要再网络传输。RSA算法描述中需要以下几个变量:

blog.csdn.net/yanzi1225627/article/details/26508035

相关文章

  • 数据加密--学习

    常用加密算法 AES MD5 BASE64 RSA DES 3DES RC4 对称加密 des,3des,aes非...

  • Android数据加密(转)

    Android数据加密之Rsa加密 Android数据加密之Aes加密 Android数据加密之Des加密 And...

  • 三段式加密原理

    学习本知识,需要了解一下预备知识: 摘要算法对称加密非对称加密 三段式加密,顾名思义,就是数据传输过程中,加密数据...

  • iOS学习-数据加密

    在iOS端使用RSA加密的记录 一、需求: SDK开发,使用RSA加密和后台进行数据交互,后台是PHP要求:1、p...

  • 数据传输加密

    为了数据安全经常会使用到加密技术,学习了一下Android中会用到的加密方法和场景 加密方法 在数据传输过程中,数...

  • Python-RSA加密实现

    实现RSA不对称加密算法的大数据加密 1.加密模块:传入参数:需要加密的字节数据,返回数据:加密后的字节数据2.解...

  • DES加密

    知识补充: 数据安全包含通道加密https和上传数据加密全问题(一些算法加密,对称加密和非对称加密)。 ...

  • iOS加密1——概述

    一、简单说明数据安全包含通道加密https和上传数据加密全问题(一些算法加密,对称加密和非对称加密)。加密算法通常...

  • iOS加密——概述

    一、简单说明数据安全包含通道加密https和上传数据加密全问题(一些算法加密,对称加密和非对称加密)。加密算法通常...

  • iOS-归档NSCoding序列化

    归档 归档->数据持久化的方式->加密(把文件加密《不是把数据加密》 归档分为: 1、存储数据(编码、序列化、归档...

网友评论

    本文标题:数据加密--学习

    本文链接:https://www.haomeiwen.com/subject/ixmzkttx.html