当前位置: 首页 > news >正文

安全相关的一些基础知识(持续更新)

目录

1. TRNG真随机数生成

2. 对称加密和非对称加密及其区别

3. Hash算法(摘要算法)

4. HTTPS、TLS、SSL、HTTP区别和关系

HTTPS的基本原理

5. PSS


1. TRNG真随机数生成

True Random Number Generator

在真随机数的生成里,把随机数的生成分为两个部分

1. 熵生成,指的就是各类噪声

2. 熵提取,指的就是把噪声数据进行变化

在熵提取的算法里,有几个比较经典的算法:

冯诺依算法:对于输入的一串0,1比特,两个两个的一组,如果输入的是00或者11就不输出,如果输入的是10就输出1,如果输入的是01就输出0

Hash函数:SHA-1或者MD5或者国密SM3都是可选项

2. 对称加密和非对称加密及其区别

对称加密:加密和解密的密钥是同一个

优点: 算法公开、计算量小、加密速度快、加密效率高

缺点: 在数据传送前,发送方和接收方必须商定好秘钥,然后 使双方都能保存好秘钥。其次如果一方的秘钥被泄露,那么加密信息也就不安全了。

常见的对称加密算法有: DES、3DES、Blowfish、IDEA、RC4、RC5、RC6 和 AES 。

非对称加密:有两个密钥:Public Key公开密钥和Private Key私有密钥

非对称加密算法实现机密信息交换的基本过程是:甲方生成一对密钥并将其中的一把作为公用密钥向其它方公开;得到该公用密钥的乙方使用该密钥对机密信息进行加密后再发送给甲方;甲方再用自己保存的另一把专用密钥对加密后的信息进行解密。甲方只能用其专用密钥解密由其公用密钥加密后的任何信息。

优点: 安全

缺点: 速度较慢

常见的非对称加密算法有: RSA、ECC(移动设备用)、Diffie-Hellman、El Gamal、DSA(数字签名用)

3. Hash算法(摘要算法)

Hash算法特别的地方在于它是一种单向算法,用户可以通过hash算法对目标信息生成一段特定长度的唯一hash值,却不能通过这个hash值重新获得目标信息。因此Hash算法常用在不可还原的密码存储、信息完整性校验等。

常见的摘要算法有: MD2、MD4、MD5、HAVAL、SHA。

4. HTTPS、TLS、SSL、HTTP区别和关系

HTTPS,也称作HTTP over TLS。

TLS的前身是SSL,TLS 1.0通常被标示为SSL 3.1,TLS 1.1为SSL 3.2,TLS 1.2为SSL 3.3。

HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比HTTP协议安全。

HTTPS的基本原理

HTTPS其实是有两部分组成:HTTP +SSL/ TLS,也就是在HTTP上又加了一层处理加密信息的模块。服务端和客户端的信息传输都会通过TLS进行加密,所以传输的数据都是加密后的数据。具体是如何进行加密,解密,验证的,且看下图。

 

5. PSS

PSS (Probabilistic Signature Scheme)私钥签名流程的一种填充模式。

目前主流的RSA签名包括RSA-PSS和RSA-PKCS#1 v1.5。

相对应PKCS(Public Key Cryptography Standards)是一种能够自我从签名中恢恢复原来的签名,而PSS无法从签名中恢恢复原来的签名。

openssl-1.1.x以后默认使用更安全的PSS的RSA签名模式。

http://www.lryc.cn/news/369546.html

相关文章:

  • 使用TensorFlow和Keras对以ResNet50模型进行微调
  • Shell脚本要点和难点以及具体应用和优缺点介绍
  • 移动端浏览器的扫描二维码实现(vue-qrcode-reader与jsQR方式)
  • android中调用onnxruntime框架
  • 【机器学习】与【数据挖掘】技术下【C++】驱动的【嵌入式】智能系统优化
  • Apollo9.0 PNC源码学习之Control模块(二)
  • 直线度测量仪发展历程!
  • 09-spring的bean创建流程(一)
  • spring中基于setting和构造器的注入方式
  • 爬虫基本原理?介绍|实现|问题解决
  • DevOps的原理及应用详解(六)
  • 手撸 串口交互命令行 及 AT应用层协议解析框架
  • Redis几种部署模式介绍
  • 【STM32HAL库学习】定时器功能、时钟以及各种模式理解
  • 3588麒麟系统硬解码实战
  • 十二 nginx中location重写和匹配规则
  • python的视频处理FFmpeg库使用
  • 接口测试时, 数据Mock为何如此重要?
  • 未授权与绕过漏洞
  • 云原生周刊:Kubernetes 十周年 | 2024.6.11
  • ClickHouse内幕(1)数据存储与过滤机制
  • 1.Mongodb 介绍及部署
  • Java 技巧:如何获取字符串中最后一个英文逗号后面的内容
  • 玩转微服务-GateWay
  • Amortized bootstrapping via Automorphisms
  • 【人工智能】ChatGPT基本工作原理
  • The First项目报告:Stargate Finance重塑跨链金融的未来
  • Python魔法之旅-魔法方法(22)
  • 公司面试题总结(三)
  • PLSQL 报错 could not locate oci.dll