码迷,mamicode.com
首页 > 编程语言 > 详细

中文的加密传输(python版)

时间:2016-07-22 13:02:14      阅读:244      评论:0      收藏:0      [点我收藏+]

标签:

信息传输过程中,可能会被各种监听。

这里介绍一种简单的加密算法(可逆)。

 

正向加密:

字符串 -> 字节(char->int转换) -> 异或每个字节某个KEY  ->字节(int->char转换)-> 拼接字符串 -》-》utf-8加密 -》 16进制加密

 

反向解密:

字符串-》16进制解码->utf-8解码-》字节(char->int转换) -》 异或每个字节相同的KEY -》字节(int->char) -》字符串拼接

 

python源码如下:

key = 0xff
def encrypt(src):
    return ‘‘.join([unichr(ord(x)^key) for x in src]).encode(utf-8).encode(hex).upper()

def decrypt(src):
    return ‘‘.join([unichr(ord(x)^key) for x in src.decode(hex).decode(utf-8)])

 

 

测试:

>>> a=u中国
>>> print encrypt(a)
E4B9B8E59AA8
>>> print decrypt(encrypt(a))
中国

应用:

E4B9B8E59AA8 即为实际传输的内容,如此便有了一定的反监听效果。在算法和key不泄漏的前提下,相对安全。

 

转载请注明本来来源于Tommy.Yu的博客(cnblogs)

中文的加密传输(python版)

标签:

原文地址:http://www.cnblogs.com/Tommy-Yu/p/5694544.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!