python-base64编码与解码

base64编码原理:

例如:

实例一:

#-*- coding: UTF-8 -*-

__author__ = ‘007‘
__date__ = ‘2015/12/23‘

import base64

code = "aGV5LOatpOWkhOWtmOWcqGpvb21sYea8j+a0nu+8jOivt+WPiuaXtuiBlOezuyB4eHh4eHhAMTI2LmNvbSDkv67lpI3mraTmvI/mtJ4="

print type(code)
cc = base64.decodestring(code)
print cc

u = u‘hey,此处存在joomla漏洞,请及时联系 [email protected] 修复此漏洞‘
print type(u)
d = u.encode(‘utf8‘)
print type(d)

dd = base64.encodestring(d)
print dd

运行结果:

<type ‘str‘>
hey,此处存在joomla漏洞,请及时联系 [email protected]126.com 修复此漏洞
<type ‘unicode‘>
<type ‘str‘>
aGV5LOatpOWkhOWtmOWcqGpvb21sYea8j+a0nu+8jOivt+WPiuaXtuiBlOezuyB4eHh4eHhAMTI2LmNvbSDkv67lpI3mraTmvI/mtJ4=

实例二:

#-*- coding: UTF-8 -*-

__author__ = ‘007‘
__date__ = ‘2016/2/15‘

import base64

#对字符串进行base64编码
def str2base64():
    str_encode = raw_input("请输入字符串:")
    en = base64.encodestring(str_encode)
    print en
#对字符串进行base64解码
def base64tostr():
    str_decode = raw_input("请输入base64串:")
    de = base64.decodestring(str_decode)
    print de
#对url字符串进行base64编码
def url2base64():
    url_encode = raw_input("请输入URL字符串:")
    en = base64.urlsafe_b64encode(url_encode)
    print en
#对url字符串进行base64解码
def base64tourl():
    url_decode = raw_input("请输入url的base64串:")
    de = base64.urlsafe_b64decode(url_decode)
    print de

#对文件里面的字符串进行base64编码
def file_base64_en():
    f1 = raw_input("请输入您要读取的文件:")
    f2 = raw_input("请输入您要写入的文件:")
    rf = open(f1,‘r‘)
    lines = rf.readlines()
    wf = open(f2,‘w‘)
    for line in lines:
        word = line.strip()
        en = base64.encodestring(word)
        #print en
        wf.write(word+"的base64编码结果是:"+en)
        #wf.write("\n")
    rf.close()
    wf.close()
#对文件里面的字符串进行base64解码
def file_base64_de():
    f1 = raw_input("请输入您要读取的文件:")
    f2 = raw_input("请输入您要写入的文件:")
    rf = open(f1,‘r‘)
    lines = rf.readlines()
    wf = open(f2,‘w‘)
    for line in lines:
        de = base64.decodestring(line)
        #print de
        wf.write(line+"的base64解码结果是:"+de)
        wf.write("\n")
    rf.close()
    wf.close()

def main():
    print u"a.字符串"
    print u"b.url字符串"
    print u"c.读取文件操作"
    ch = raw_input("请选择操作数据类型:")

    if ch == "a":
        print u"1.base64编码"
        print u"2.base64解码"

        choice = raw_input("请选择编码或解码:")
        if choice == "1":
            str2base64()
        elif choice == "2":
            base64tostr()
        else:
            print u"您的选择不是合理的编码或解码!"
    elif ch == "b":
        print u"1.base64编码"
        print u"2.base64解码"

        choice = raw_input("请选择编码或解码:")
        if choice == "1":
            url2base64()
        elif choice == "2":
            base64tourl()
        else:
            print u"您的选择不是合理的编码或解码!"
    elif ch == "c":
        print u"1.base64编码"
        print u"2.base64解码"

        choice = raw_input("请选择编码或解码:")
        if choice == "1":
            file_base64_en()
        elif choice == "2":
            file_base64_de()
        else:
            print u"您的选择不是合理的编码或解码!"
    else:
        print u"未找到您所需要编码或解码的数据类型!"

if __name__ == "__main__":
    main()
时间: 2024-10-12 12:56:59

python-base64编码与解码的相关文章

Python中进行Base64编码和解码

Base64编码是一种“防君子不防小人”的编码方式.广泛应用于MIME协议,作为电子邮件的传输编码,生成的编码可逆,后一两位可能有“=”,生成的编码都是ascii字符.优点:速度快,ascii字符,肉眼不可理解缺点:编码比较长,非常容易被破解,仅适用于加密非关键信息的场合Python中进行Base64编码和解码>>> import base64>>> s = '我是字符串'>>> a = base64.b64encode(s)>>>

python中base64编码与解码

引言: 在一些项目中,接口的报文是通过base64加密传输的,所以在进行接口自动化时,需要对所传的参数进行base64编码,对拿到的响应报文进行解码: Base64编码是一种"防君子不防小人"的编码方式.广泛应用于MIME协议,作为电子邮件的传输编码,生成的编码可逆,后一两位可能有"=",生成的编码都是ascii字符.优点:速度快,ascii字符,肉眼不可理解缺点:编码比较长,非常容易被破解,仅适用于加密非关键信息的场合python2中进行Base64编码和解码&g

win api 实现 base64编码、解码

最近在写小玩意,用到了base64编码,但是考虑到体积大小,网上的多种实现都是利用开源的代码,这就增加了其大小.我想win api能不能实现base64编码.解码.通过一通乱搜,还有收获.就有了以下代码 #pragma comment(lib,"crypt32.lib") LPSTR Base64Encode(LPBYTE lpBuffer,DWORD dwLen) { DWORD dwNeed; LPSTR lpBase64Str ; DWORD dwIndex ; DWORD dw

base64编码、解码的C语言实现

转自:http://www.cnblogs.com/yejianfei/archive/2013/04/06/3002838.html base64是一种基于64个可打印字符来表示二进制数据的表示方法.由于26=64,所以每6位为一个单位,对应某个可打印字符.三个字节共24位,对应于4个base64单位,即3个字节需要用4个可打印字符来表示.它常用来作为电子邮件的传输编码.在base64中的可打印字符包括大写英文字母A-Z,小写英文字母a-z.阿拉伯数字0-9,这样共有62个字符,此外两个可打印

PHP安全的URL字符串base64编码和解码

这篇文章主要介绍了PHP安全的URL字符串base64编码和解码,在base64的基础上替换了不安全的一些字符,需要的朋友可以参考下 如果直接使用base64_encode和base64_decode方法的话,生成的字符串可能不适用URL地址.下面的方法可以解决该问题: URL安全的字符串编码: function urlsafe_b64encode($string) {    $data = base64_encode($string);    $data = str_replace(array

java利用Base64编码和解码图片文件

1.编码与解码代码如下所示: import java.awt.image.BufferedImage; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.net.MalformedURLException; import java.net.URL; import javax.image

转: Javascript Base64编码与解码

Javascript Base64编码与解码 分类:            JavaScript            2015-02-04 14:25    212人阅读    评论(0)    收藏    举报 转自:http://blog.csdn.net/yanzhibo/article/details/20079943 [javascript] view plaincopy <html> <head> <META HTTP-EQUIV="MSThemeCo

Javascript Base64编码与解码

原文:[转]Javascript Base64编码与解码 <html> <head> <META HTTP-EQUIV="MSThemeCompatible" CONTENT="Yes"> <meta http-equiv="Content-Type" content="text/html; charset=unicode"> <script language="

android Java BASE64编码和解码二:图片的编码和解码

1.准备工作 (1)在项目中集成 Base64 代码,集成方法见第一篇博文:android Java BASE64编码和解码一:基础 (2)添加 ImgHelper 工具类 package com.app21; import java.io.ByteArrayOutputStream; import java.io.FileInputStream; import java.io.IOException; import android.graphics.Bitmap; import android

用python实现base64编码与解码

用到了python里的base64模块 用法: 编码: 1 import base64 2 a = 'HC'.decode() #将'HC'转为二进制 3 b = base64.b64encode(a) #将a转为base64编码 4 b.decode() #从二进制转回 5 6 base64.b64encode('HC'.encode()).decode() #简写'SEM= 解码: base64.b64decode('SEM=').decode()'HC' 其他常用函数: chr(x) 将十