消息加密和解密(一)
1:基本概念
(1) 编码:信息(包括文字、图片、音频、视频等)转换成数字化表示就叫做编码。
注意:(1)任何编码都可以叫加密,但反过来不一定。
区别:编码是使用公开的方案把信息转换为另外的一种格式,主要用于编码用于维护数据可用性。
而加密往往是使用毕竟私密的的方案把消息转换为另外一种格式,只有特定的人才能解码。
(2)解码:从数字化的信息中解析出对应的信息叫解密。
(3)码表:将信息和文字对应的一个表格叫码表,比较出名的是ASCII 表,比如65 表示A, 97表示a。
(4) 把一段信息转换成为别人看不懂的数码(CODE)这个过程就叫做加密
(5) 反过来把这段数码转换成对应信息的过程就叫做解密。
(6) 用来加密和解密的信息叫秘钥。个人理解:算法+秘钥 组合完成加密和解密的过程。
2.现代密码学最基础的三大分支是:
单向哈希算法
对称密码算法
非对称密码算法
2.1单向Hash算法
涵义:把消息一个消息映射为一定长度的字符串的算法。该消息可以经过算法映射为该字符串,但从该字符串无法映射为该消息。
常见的例子:比如消息摘要算法,其本质是一个不可逆hash 算法。这是一类算法,具体如,MD5 ,SHA(根据强度的不同,SHA-1,SHA-256,SHA-512等)
MD5 和SHA的区别:
(1) 起源相同:MD5是由MD2、MD3、MD4发展而来的,而SHA-1也是从MD4发展而来。
(2) MD5的加密强度比SHA要低一些(128位 VS 起步160位),算法上MD5易受密码统计分析的攻击。
(3) 速度上MD5比较快
单向哈希常用于加密密码、校验完整性、以及数字签名等。
加密密码:比如某个网站需要保存用户的密码,保存明文很不安全,万一被黑客黑了就回引起大事故,所以保存用某种单向hash算法讲秘密转换为密文,就安全多了。
校验完整性:消息发送之前先用某种单向hash算法计算出消息摘要,和消息一起发送给对方,对方收到后再使用该hash算法计算收到的消息的消息摘要,如果两个摘要一样,则消息完整.
数字签名:数字签名是单向哈希算法和非对称密码算法的结合,其中会用到利用单向哈希算法验证消息完整性。
2.2 对称密码算法
涵义:消息的加密和解密使用的算法秘钥是一样的。
常见的案例:DES,3DES,AES等,目前主要用的是AES,他们发展的先后顺序是DES > 3DES > AES。
它们的关系:工程师最先发明DES, 其秘钥默认长度是56, 为了增加安全性,发明了3DES, 起秘钥默认长度是156为,但是3DES算法的效率不高,最后发明AES.
实际应用中:主要用于加密消息,消息可以很长.
2.3 非称密码算法
涵义:消息的加密和解密使用的秘钥是不一样的,有两个:公钥和私钥。
消息是一方加密,另一方用另一把钥匙解密。
常见的例子:RSA算法。
实际应用中:这种算法主要用于加密秘钥之类,效率低,消息长度毕竟短。
本文记录了的加密和解密的一些基本概念。
消息加密和解密(一)相关推荐
- php7.2微信明文加密,微信公众平台开发:消息加密
前不久,微信的企业号使用了强制的消息加密方式,随后公众号也加入了可选的消息加密选项.目前企业号和公众号的加密方式是一致的(格式会有少许差别). 加密设置 进入公众号后台的"开发者中心&quo ...
- 企业微信加密消息体_微信公众平台开发者中心安全模式消息体加解密实现
关键字:微信公众平台 消息体签名 消息体加解密 EncodingAESKey 安全模式 一.消息体加解密 微信公众平台在配置服务器时,提供了3种加解密的模式供开发者选择,即明文模式.兼容模式.安全模式 ...
- alin的学习之路:加密相关知识(加密和解密,常见加密算法,消息验证码HMAC,数字签名)
alin的学习之路:加密相关知识(加密和解密,常见加密算法,消息验证码HMAC,数字签名) 1. 加密和解密 1.1 加密的三要素 原始数据 加密操作: 明文 -> 密文 解密操作: 密文 -& ...
- 开放平台的消息加密解密技术方案-柚果云开发日志
一,消息加密解密 1) 注意:开放平台的消息加密解密技术方案基AES加解密算法 常见错误: xml 格式不对:如写成了 (s 小写了且 p 和>中间有空格 公众平台网站提供了修改 Encodin ...
- 加密与解密以及openssl的应用
废话不多说,直入主题. 本文主要简单介绍下: 一.数据加密的三种方式: 二.Openssl的基础应用以及创建CA证书与发证: 一.数据加密的三种方式: 1.对称加密:加密与解密方使用同一个算法, 将数 ...
- 加密与解密、OpenSSL(SSL/TLS)、OpenSSH(ssh)、dropbear
下面介绍的是Linux的加密与解密.OpenSSL(SSL/TLS).OpenSSH(ssh).dropbear. 一.数据的加密与解密 1.进程间通信基础 (1).进程间通信方式 同一主机间进程间的 ...
- 安全与加密-使用gpg和openssl实现加密与解密
加密可以分为对称加密和非对称加密.两者的主要区别就是是否使用同一个秘钥,对称加密需要用同一个秘钥.非对称加密不需要用同一个秘钥,而是需要两个秘钥:公开密钥(publickey)和私有密钥(privat ...
- 数字证书应用综合揭秘(包括证书生成、加密、解密、签名、验签)
引言 数字证书是一个经证书授权中心数字签名的包含公开密钥拥有者信息以及公开密钥的文件.为现实网络安全化标准如今大部分的 B2B.B2C.P2P.O2O 等商业网站含有重要企业资料个人资料的信息资信网站 ...
- Java加密与解密笔记(三) 非对称加密
非对称的特点是加密和解密时使用的是不同的钥匙.密钥分为公钥和私钥,用公钥加密的数据只能用私钥进行解密,反之亦然. 另外,密钥还可以用于数字签名.数字签名跟上文说的消息摘要是一个道理,通过一定方法对数据 ...
最新文章
- 算法基础知识科普:8大搜索算法之二叉搜索树(上)
- 1. vi 与 vim 有什么区别呢,它们之间有什么关系?
- Jmeter(七)-参数化
- 帝国cms内部会员组的使用方法以及应用场景
- git每次操作都要输入账号密码 解决方案
- windows找不到文件javaw_windows电脑上,怎么快速找文件?
- php foreach面试题,PHP引用理解之神奇的foreach面试题
- 详解Session分布式共享(.NET CORE版)
- ukt机器人_doc/readme/feishu.md · 贫道法号-乱来/PrometheusAlert - Gitee.com
- mysql innodb4大特征_MYSQL中InnoDB特性浅谈
- python股票数据分析_Python股票分析(一)获取历史数据
- android百度在线音乐api,百度音乐免费API接口
- 2020年日历电子版(打印版)_2020年日历表(带农历)下载-2020年日历全年表Excel打印版下载 - 欧普软件园...
- 视频教程-【国内首套H3C V7交换机实战课程-2】以太网端口和链路聚合配置与管理-H3C认证
- Ubuntu 软件安装(网易云音乐,有道词典,flash插件)
- 改善宝宝过敏就吃伊敏舒,azg与Aibeca爱楽倍佳携手守护中国宝宝成长
- (转)360和腾讯之争,哪个比较痛?
- matlab霍夫曼吗仿真,霍夫曼编译码的Matlab代码实现
- 关于GPIO的内部结构及编程步骤
- RTB广告大数据时代 人才奇缺培养迫在眉睫
热门文章
- python批量替换数值_通过python批量修改mxd的数据源
- 《考 研 后 悔 行 为 大 赏 》
- e盘计算机管理无法格式化,D,E,F盘无法格式化.急急急!
- css 相对定位取消占位,css position 相对定位
- 一阶广义差分模型_广义差分法与自相关系数估计.ppt
- UDS 34/36/37 服务
- 微信好友分享的棋牌游戏类app下载链接在微信中无法打开的解决方案
- 《SPA设计与架构》之客户端路由
- MySQL开发技巧——行列转换
- Unity UGUI 拖拽组件