- 密码学
(设置安全方式 加密方式、SSL等 修改邮件端口 最终是为了实现数据安全传输。)
- 密码常用术语:
明文、密文、加密、加密算法、加密密钥、解密、解密算法、解密秘钥。MD5是单向的不存在解密
- 密码分析:
截获密文者试图通过分析截获的密文从而推断出原来的明文或者密钥的过程。
- 主动攻击:
攻击者非法入侵密码系统,采用伪造、修改、删除等手段向系统注入假消息进行欺骗。(对密文具有破坏作用)
- 被动攻击:
对保密系统采取截获密文并对其进行分析和攻击。(对密文没有破坏作用)
-
密码*:由明文空间、密文空间、密钥空间、加密算法、和解密算法5部分组成。
-
密码协议:也称安全协议,指以密码学为基础的消息交换的通信协议,目的是在网络环境中提供安全服务。
-
密码系统:指用于加密、解密的系统。
-
柯克霍夫原则:数据的安全基于密钥而不是算法的保密。即系统的安全起决于密钥,对密钥保密,对算法公开——现代密码学设计的基本原则。
-
加解密基础
-
密码分类
按照时间分:古典密码(以字符为基本单位)
现代密码(以信息块为基本加密单元)
- 保密内容算法分:
受限算法—算法保密性基于保持算法的秘密—军事领域—类型
基于密钥算法—算法的保密性基于对密钥的保密—现在密码
- 密码*:
| 密码/算法 | 说明 |
| — | — |
| 对称密码 | 单钥密码或私钥密码,指加密密钥和解密密钥相同。 |
| 非对称密码 | 双密钥或公钥密码,指加密密钥与解密密钥不同,密钥分为公钥、私钥。 |
| 对称密码算法 | 单密码算法/私钥密码算法,指应用于对称密码的加密、解密算法。 |
| 非对称密码算法 | 双钥密码算法/公钥密码算法,指对应于非对称密码的加密、解密算法。 |
| 密码分类 | 明文处理方法 |
| 分组密码 | 指加密时将名为分成固定长度的组,用同一密钥和算法对每一块加密,输出也是固定长度的密文。多用于网络加密。 |
| 流密码 | 也称序列密码。指加密时每次加密一位或者一个字节明文。 |
- 散列函数是为了验证数据的完整性,并不是用来加解密的 长度不受限制,运算过程不可逆,单向。
特点:
- 1、长度不受限制;
- 2、哈希值容易计算;
- 3、散列运算过程不可逆(被称为单向函数的原因)。
- 相关算法:
- 1、消息摘要算法MD5等;
- 2、SHA:安全散列算法;
- 3、MAC:消息认证码算法。
- 4、数字签名:主要针对以数字的形式存储的信息进行的处理,会产生一种带有带有操作者身份信息的代码
4、java安全组成
OSI参考模型
TCP/IP安全机制
![TCP/IP安全机制](h
《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
【docs.qq.com/doc/DSkNLaERkbnFoS0ZF】 完整内容开源分享
ttps://img-blog.csdn.net/20160928104502510)
- JCA、JCE、JSSE、JAAS
- JCA- Java Cryptography Architecture(提供基本加密、消息摘要算法)
- JCE-Java Cryptography Extension(DES、AES、RSA算法通过JCE拓展提供)
- JSSE-Java Secure socket Extension(JSSE提供基于SSL的加密功能,主要用于网络传输)
- JAAS-Java Authentication and Authentication Service
(提供基于java开发的系统是认证、权限)
- 相关jdk类
- java.security-消息摘要
- javax.crypto-安全消息摘要,消息认证(鉴别)码