Python 加密和解密

一、概念和作用:

概念:

加密解密:一个信息干扰的过程,保证固定的人才可能看到你的信息。

把重要的数据变为乱码(加密)传送,到达目的地后再用相同或不同的手段还原(解密)。

作用:

网络信息传输安全涉及很多方面,其中主要有三个要解决的问题:

  • 保密性(Confidentiality):信息在传输时不被泄露
  • 完整性(Integrity): 信息在传输时不被篡改
  • 有效性(Availibility): 信息使用者是合法的
常用加密方式
数据加密方式 描述 主要解决的问题 常用算法
对称加密 指数据加密和解密使用相同的密钥 数据的机密性

DES     

AES

非对称加密 也叫公钥加密,指数据加密和解密使用不同的密钥--秘钥对 身份验证

DSA        

RSA

单向加密 只能加密数据,不能解密数据 数据的完整性

MD5

SHA系列算法

二、字符编码

进制

一个字节是计算机内存的最小单位,由8个二进制位组成, 2个16进制组成

F = 0000 1111 = 15 

FF = 1111 1111 = 255

十进制 十六进制 二进制
0 0 0000 0000
1 1 0000 0001
2 2 0000 0010
3 3 0000 0011
4 4 0000 0100 = 2^2
5 5 0000 0101
6 6 0000 0110
7 7 0000 0111
8 8 0000 1000 = 2^3
9 9 0000 1001=2^3+2^0
10 A 0000 1010=2^3+2^1
11 B 0000 1011
12 C 0000 1100
13 D 0000 1101=2^3+2^2+2^0
14 E 0000 1110=2^3+2^2+2^1
15 F 0000 1111=2^3+2^2+2^1+2^0

进制间转换方法

十进制与二进制

>>> bin(255)  #十进制转二进制
'0b11111111'
​
>>> int("0b11111111",2)  #二进制转十进制
255

十进制与十六进制

>>> hex(255)  #十进制转十六进制
'0xff'
​
>>> int("0xff",16)  #十六进制转十进制
255

unicode

字符和unicode编号是一一对应的关系,世界上的每个字符都对应着一个unicode编号,根据编号可以进行多种编码。utf-8,utf-16,utf-32...,gbk编码等

# ascii
​
>>> ord("中")
20013
>>> chr(20013)
'中'
>>> "中".encode("utf-8")  #汉字中utf-8编码
b'\xe4\xb8\xad'
>>> "中".encode(&#
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值