加解密与HTTPS(1)

news2025/1/20 21:51:06

您好,我是湘王,这是我的CSDN博客,欢迎您来,欢迎您再来~

网络安全是最近几年越来越被社会和国家高层关注的问题,比如米国网络部队、棱镜门、乌云网事件、摄像头偷拍等。武汉在2019年就建成了全国最大也是唯一的网络安全基地(2016年10月1日,国家批示在武汉建设世界一流的国家网络安全学院)。

网络安全,外行看热闹,内行看门道——大多数人只知道是防范黑客对信息的窃取和攻击,但与黑客相比,代表黑灰产的黄牛党、羊毛党、金融诈骗、洗钱,甚至网络攻击,才是网络安全的重点盯、防、打对象。而密码学、通信协议、认证授权就是整个网络安全的三大底层支撑,就好比人离不开呼吸,没有它们,信息安全无从谈起。

密码学,顾名思义,就是研究编制密码和破译密码的学问,以前经常在谍战片中看到摩尔斯码,就是一种密码学的应用。

明文,是要发送的信息;而密文,是经过加密处理之后,隐藏原文含义的信息。

密钥就是那个加密过程。最直接的,就是密电本,比如一本书,收发双方知道书的页码和行列规则就可以据此来加密和解密信息。

现代密码学所涉及的学科包括:信息论、概率论、数论、计算复杂性理论、线性代数、离散数学、几何学、逻辑学等。

这里只说密码,只说和实际开发应用相关的东西。

加密算法,就是把明文变成密文的过程。这个过程可以有三种方式:

1、对称加密

2、非对称加密

3、不可逆加密

这里先说说对称加密算法。

所谓对称加密,就是信息的收发双方都需要事先知道密钥和加密规则,很多谍战剧中的主角,用就是这种对称加密算法。因为双方的密钥完全相同,所以叫对称加密。有几种常用的对称加密算法:

1、DES

2、3DES

3、AES

对称加密算的一般流程是这样的:

全称数据加密标准(Data Encryption Standard),广泛应用于POS、ATM、收费站等金融领域。DES是一种分组加密算法:每次处理固定长度的数据段,分组大小是64位。DES的安全性依赖于“混淆”与“扩散”这两个原则:混淆的目的是为隐藏任何明文同密文、或者密钥之间的关系,而扩散的目的则是使明文和密钥一起组成尽可能多的密文。DES加密过程的关键就是从给定的初始密钥中得到16个子密钥。

要加密一组明文,每个子密钥按照顺序(1-16)以一系列的位操作施加于数据上,每个子密钥一次,一共重复16次,每一次迭代称之为一轮:

而3DES,也就是Triple DES,是从DES向AES过渡的算法,使用3条56位的密钥对数据进行3次加密,是DES的升级版。

1、3DES的加密过程:加密-解密-加密(不全是加密)

2、3DES的解密过程:解密-加密-解密(不全是解密)

AES全称高级加密标准(Advanced Encryption Standard),微信小程序的加密传输就是用的它。

AES的加密过程大体上可以分为字节代换、行位移、列混合和轮密钥加这几个步骤,把DES的混淆和扩散最大化。AES也采取分组加密的方式,就是把一段话分成几段,每一段分别加密,然后再把它们拼接到一起成为密文。同样会把明文用相同的加密方法重复加密很多次。

密钥和明文一样,也会被分组,每次都将密钥中的一组数据加入到被加密的密文中,参与加密过程,这就是通常所说的轮密钥加。


感谢您的大驾光临!咨询技术、产品、运营和管理相关问题,请关注后留言。欢迎骚扰,不胜荣幸~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/92912.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Nature论文:VR中OLED和LCD的时空图像质量探究

VR头显对空间分辨率和响应时间的要求很高,然而,在VR头显移动时,还没有一种可以在时空域中量化VR图像质量的标准方法。近期在一项新研究中,科研人员测试了三款VR头显(HTC Vive、Vive Pro、Vive Pro 2)在平滑…

微信公众号开发——实现用户微信网页授权流程

😊 作者: 一恍过去💖 主页: https://blog.csdn.net/zhuocailing3390🎊 社区: Java技术栈交流🎉 主题: 微信公众号开发——实现用户微信网页授权流程⏱️ 创作时间: …

阿里云效产品【代码管理Codeup】企业项目代码管理

文章目录前言一、Codeup是什么二、使用步骤1.首先登录阿里云2.进入云效3.进入云效4.代码分组5.新建代码库三、SSH 密钥总结前言 阿里云Code(新版:代码托管Codeup)阿里云代码管理 Codeup是基于 Git 的代码管理平台,10万企业正在使…

【头歌C语言程序与设计】顺序结构程序设计

目录 写在前面 正文 第1关:加法运算 第2关:不使用第3个变量,实现两个数的对调 第3关:用宏定义常量 第4关:数字分离 第5关:计算总成绩和平均成绩 第6关:求三角形的面积 第7关&#xff1…

黑客入门指南,学习黑客必须掌握的技术

黑客一词,原指热心于计算机技术,水平高超的电脑专家,尤其是程序设计人员。是一个喜欢用智力通过创造性方法来挑战脑力极限的人,特别是他们所感兴趣的领域,例如电脑编程等等。 提起黑客,总是那么神秘莫测。…

CentOS7安装MySQL

CentOS7安装MySQL 在CentOS中默认安装有MariaDB,这个是MySQL的分支,但为了需要,还是要在系统中安装MySQL,而且安装完成之后可以直接覆盖掉MariaDB。 下载并安装MySQL官方的 Yum Repository ​[rootlocalhost ~]# wget -i -c ht…

Sms开源短信及消息转发器,不仅只转发短信,备用机必备神器

Sms开源短信及消息转发器,不仅只转发短信,备用机必备神器。 短信转发器——不仅只转发短信,备用机必备神器! 监控Android手机短信、来电、APP通知,并根据指定规则转发到其他手机:钉钉群自定义机器人、钉钉企业内机器人、企业微信…

c#入门-接口显式实现

接口显式实现 接口的显式实现主要解决两个问题 基类型隐式实现了一个接口成员。但是他的成员没有标记虚拟的,无法重写。接口可以多继承,那么重名了怎么办 显式继承语法 interface I回血 {public void 回血(); }显式继承时,不能写访问修饰…

团队新人多,稳定性经验不足,研发质量怎么保障?|TakinTalks论道

# 一分钟精华速览 #在研发和稳定性保障过程中,人与设备、程序、组织的交互是一个复杂的过程,虽然人们极少会恶意犯错,但由于受特定情景下的实际条件影响,人为失误也时有发生,那么,如何尽可能减少这些失误的…

Jenkins持续集成项目搭建与实践——基于Python Selenium自动化测试(自由风格)

📌 博客主页: 程序员二黑 📌 专注于软件测试领域相关技术实践和思考,持续分享自动化软件测试开发干货知识! 📌 公号同名,欢迎加入我的测试交流群,我们一起交流学习! 目录…

Linux无法访问本机mysql

问题描述:maven打包成jar包运行再linux中,数据库访问主机无法访问 可能问题: 目录 1.未修改mysql访问权限,修改user表,%表示任意ip 2.ip地址不对,需要找到ipV4的地址 3.导入jar包不对 4.打包成jar包插…

Mac 窗口管理分屏工具软件【Wins】

Wins,为 Mac 带来系统级的分屏功能,快速分屏,只需拖动窗口到屏幕边缘即可进行分屏操作。提供了分屏预览动画和触发分屏后的动画效果。 单设备永久使用,免费更新。仅需95 Wins 激活码:Wins - Mac 窗口管理分屏工具软…

HBM MM CDM Latch-Up

1、HBM(Human Body model):正常2000V JEDEC document JEP155 states that 500-V HBM allows safe manufacturing with a standard ESD control process。 HBM VS System ESD 2、MM(Machine Model),已经被J…

遥感测深方法综述(三)机载雷达测深系统关键参数

下面两张图分别是CZMIL Nova和SuperNova的技术参数,从图中可以看出,与最大探测深度有关的参数是Kd ,且标称的最大深度4.X/Kd要求底质反射率大于15%。 1、海底底质对测量的影响 在进行激光测深的时候,海底底质的反射率对测量结果将…

【C++】继承(万字详解) —— 切片 | 隐藏 | 子类的默认成员函数 | 菱形继承

🌈欢迎来到C专栏~~继承 (꒪ꇴ꒪(꒪ꇴ꒪ )🐣,我是Scort目前状态:大三非科班啃C中🌍博客主页:张小姐的猫~江湖背景快上车🚘,握好方向盘跟我有一起打天下嘞!送给自己的一句鸡汤&#x1…

力扣 1945. 字符串转化后的各位数字之和

题目 给你一个由小写字母组成的字符串 s ,以及一个整数 k 。 首先,用字母在字母表中的位置替换该字母,将 s 转化 为一个整数(也就是,‘a’ 用 1 替换,‘b’ 用 2 替换,… ‘z’ 用 26 替换&am…

华为二面,原来是我对自动化测试的理解太肤浅了..

如何使用Python实现自动化测试 如果你入职一家新的公司,领导让你开展自动化测试,作为一个新人,你肯定会手忙脚乱,你会如何落地自动化测试呢?资深测试架构师沉醉将告诉你如何落地自动kan化测试,本次话题主要…

ChatGPT+Midjourney实现儿童绘本故事及其插图(数字1~10的故事)

一、背景 近期AI对话技术与AI绘画技术突飞猛进。其中1.)AI对话技术是指用于模拟人类语言交流的人工智能技术。它可以让机器通过自然语言文本或语音与人类进行交流,并能理解人类的话语内容并做出相应的回应。对话技术在语音助手、智能客服、智能创作等领域…

Android核心基础总结——小菜爱教程

-0基础学习路线 Java基础 设计模式 Linux基础 数据库 网络协议 Android基础 服务器端开发 然后就是环境搭建、activity、intent、Android基础、基础应用开发。如阶梯图: 核心基础进阶 1、泛型、注解 2、动态编程技术 3、虚拟机 4、虚拟机垃圾回收 5、类与对象…

忘掉Xavier初始化吧!最强初始化方法ZerO来了

文 | 小戏谈及最典型的深度学习模型的训练,脑海里浮现的格式化的套路是什么?给定一个问题,给定一个数据集,弯弯绕绕确定好选择的神经网络的架构,然后上手调参,接下来的工作彷佛像是固定的重复工作&#xff…