android学习笔记5——安全方面知识
来源:互联网 发布:java list json 转换 编辑:程序博客网 时间:2024/05/17 01:54
由于业务安全需要,原来的RSA加密算法中的填充方式要替换为新的,所以最近两天把一些安全知识重新学习了一下。
AES, RSA, MD5, SHA1等等算法,之前只是听说过,然而并不清楚其本质以及使用场景。经过最近阶段的学习,基本上搞清楚了这些概念,因此总结梳理一下:
一、加密 解密 签名 验证签名
加密解密很好理解,就是发送方为了信息的保密性,通过算法将信息加密,发送给接收方。而接收方通过解密算法解出来的过程。就像二战时期,日军发送的无线电信息被盟军截获破解,就是加密算法被破解的缘故。
签名验证签名是这样的,发送方发送信息,并且通过一定的算法进行签名,接收方都过一定的算法进行签名验证,用来确保接收到的信息没有被篡改,也用来保证信息确实是由对方发出的。类型于银行支票的签名,银行通过笔记对票据进行验证。
二、对称加密 非对称加密
加密算法一般分为对称加密和非对称加密。
对称加密就是加密解密都是用同一套密钥。发送方通过输入密钥对信息进行加密,接收方也通过输入密钥对信息解密。使用对称加密,通信的双方要互相知道密钥。
在特定场景下,对称加密并不适合。比如互联网场景,密钥不能通过网络传输,否则可能被截获。 在这样场景下,可以使用非对称加密。非对称加密需要一对密钥,称为公钥和私钥。 信息接收方发送公钥,公钥是可以被任何人知道的。如果需要对接收方发送信息,发送方可以使用公钥进行加密。公钥加密的信息只能使用私钥解密,从而保证通信是安全的。
签名:对信息进行签名可以借鉴非对称加密过程。将非对称加密过程反过来,发送方使用私钥加密,接受对方通过公钥解密,那么就可以确认此信息肯定是由发送方发出的。
对称加密算法包括:DES,AES。一般现在使用AES。
非对称加密算法包括:RSA。
另外MD5, SHA1并不是加密算法,而是信息摘要算法。可以对一段任意长度的信息,生成一段固定长度的摘要。摘要算法不可以逆向。加密解密算法中可以使用摘要算法进行加解密。摘要算法也有个作用:发送接收双发确定一个摘要算法,生成的摘要可以就用来做签名,防止信息篡改。
- android学习笔记5——安全方面知识
- Android 安全方面知识汇总
- FCK 安全方面知识
- 邮件安全知识学习笔记
- Android知识体系梳理笔记五:Kotlin学习笔记二:空安全,操作符,Lambad表达式...
- 决定学习下Android安全的知识
- android 广告方面知识汇总
- 《Android攻防实战》度数笔记——Android安全评估工具——Drozer (日后学习)
- C++11学习笔记5——提高类型安全
- <JAVA学习笔记5>——线程同步、安全
- 学习笔记——安全测试
- Android安全小知识
- 读C#线程方面知识做笔记
- Unity3D学习笔记——初级知识
- Android自习笔记——架构知识
- 开始学习工作流方面的知识
- 学习工控方面的知识
- 关系型数据库方面知识学习
- github资源
- TortoiseGit的使用
- Java基础——Java的反射机制
- iOS 从相册中导入二维码图片识别
- 软件中断和硬件中断的区别
- android学习笔记5——安全方面知识
- C++中的srand(time(null))利用时间设置随机种子产生随机数 http://blog.csdn.net/youoran/article/details/10950671
- quartz
- 白手起家学习数据科学 ——线性代数之“Matrices篇”(二)
- 从一个URL下载原始数据,基于byte字节
- 相关教程解压密码
- apt-get updat执行出现错误
- Android布局中实现圆角边框
- 关于ios的autoLayout的一些简单介绍以及使用方法