encode && decode && 加密 &&解密
1.urlencode
当字符串数据以url的形式传递给web服务器时,字符串中是不允许出现空格和特殊字符的(除了 -_.)
string urlencode ( string $str )
返回字符串,此字符串中除了 -_. 之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数,空格则编码为加号(+)
urleocode只是为了url中一些非ascii字符,可以正确无误的被传输,至于使用哪种编码,就不是encode所关心和解决的问题了。编码问题,不是urlencode所要解决的。
2.base64编码
可加密可解密
明文(plaintext):加密之前的原始数据
密文(ciphertext):通过密码运算后得到的结果成为密文
密码(cipher):密码算法
密钥:
对称加密:为共享密钥加密,对称密钥在加密和解密的过程中使用的密钥是相同的,DES、3DES、AES、RC5、RC6。
非对称加密:
公开密钥加密,RSA,服务端会生成一对密钥,一个私钥保存在服务端,仅自己知道,另一个是公钥,公钥可以自由发布供任何人使用。客户端的明文通过公钥加密后的密文需要用私钥解密。
1.服务端生成配对的公钥和私钥
2.私钥保存在服务端,公钥发送给客户端
3.客户端使用公钥加密明文传输给服务端
4.服务端使用私钥解密密文得到明文
摘要:
数字签名:
验证传输的内容是不是真实服务器发送的数据,发送的数据有没有被篡改过
是非对称加密的一种应用场景,反过来用私钥来加密,通过与之配对的公钥来解密。
数字证书:

参考网址:http://blog.csdn.net/Exaggeration08/article/details/76690587
encode && decode && 加密 &&解密的更多相关文章
- mysql encode decode加密和解密
加密:模板:insert into user(userpass) values(encode('useerpass','str')) insert into user(userid,username, ...
- [PHP]加密解密函数
非常给力的authcode加密函数,Discuz!经典代码(带详解) function authcode($string, $operation = 'DECODE', $key = '', $exp ...
- Python下RSA加密/解密, 签名/验证
原文是py2环境,而我的环境是py3,所以对原代码做了修改:decode(), encode() import rsa # 生成密钥 (pubkey, privkey) = rsa.newkeys(1 ...
- .NET/android/java/iOS AES通用加密解密(修正安卓)
移动端越来越火了,我们在开发过程中,总会碰到要和移动端打交道的场景,比如.NET和android或者iOS的打交道.为了让数据交互更安全,我们需要对数据进行加密传输.今天研究了一下,把几种语言的加密都 ...
- java加密-解密小结
加密算法可以分为 双向加密(对称加密.不对称加密) 单向加密(不可逆加密)—— MD5.sha.hmac... 在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密 有: ...
- JS实现base64加密解密
JS实现base64加密解密 转载自http://blog.csdn.net/fengzheng0306/archive/2006/04/25/676055.aspx 方法一: <HTML> ...
- php字符串常用算法--字符串加密解密
/** * 加密.解密字符串 * * @global string $db_hash * @global array $pwServer * @param $string 待处理字符串 * @para ...
- Android RSA加密解密
概述 RSA是目前最有影响力的公钥加密算法,该算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要对其乘积进行因式分解却极其困 难,因此可以将乘积公开作为加密密钥,即公钥,而两个大素数 ...
- 实现Base64加密解密
using System; using System.Text; namespace Common { /// <summary> /// 实现Base64加密解密 /// </ ...
随机推荐
- 踩坑记录-用koa-session设置session报错
报如下错误: 原因 设置signed: true后,它就会寻找req.secret(一个秘钥字符串),进行加密 allen返回浏览器. const SESS_CONFIG = { key: 'kkb: ...
- ubantu18.04 配置nginx与uwsgi(前后端分离)
ubantu18.04 配置nginx与uwsgi 一.首先先安装nginx静态服务 先更新 sudo apt-get update 1.安装gcc g++的依赖库 sudo apt-get in ...
- 基于vue的购物车清单
<!doctype html> <html> <head> <meta charset="utf-8"> <link rel= ...
- 检测jquery是否正确引入
if(typeof(jQuery)=="undefined"){ alert("jQuery is not imported"); }else{ alert(& ...
- GNS3
什么是GNS? GNS Graphical Network Simulator Simulator or Emulator? 尽管GNS全拼包含simulator,但实际上是emulator.我们说其 ...
- Windows10关闭自动更新方法
你在为windows10自动更新而烦恼吗?下面教你一招如何关闭自动更新
- jquery进行each遍历时,根据条件取消某项操作
示例代码: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" c ...
- Python3+Appium学习笔记06-noReset参数
百度很多文章说noReset这个参数是用来防止重复安装app的.可能这是以前的用法.目前最新版本appium默认是清除session信息,并且不会删除应用的. noReset这个参数,根据appi ...
- springboot中,使用redisTemplate操作redis
知识点: springboot中整合redis springboot中redisTemplate的使用 redis存数据时,key出现乱码问题 一:springboot中整合redis (1)pom. ...
- MySQl 进阶一 基本查询及练习
知识点及练习 USE myemployees; #.查询表中的单个字段 SELECT last_name FROM employees; #.查询表中多个字段 #.查询全部 SELECT * FROM ...