python中base64加密和解密

2021-08-29 12:25:16 字數 3143 閱讀 4939

base64加密和解密有點頭疼,必須要記錄下來,以後忘了也能再來複習下

當然啦,能一直記住是最好的…加油吧,少年(其實已經好老了)

win10,python3

這個還是別人講的好,詳情請看:base64編碼原理與應用

其實它的原理不是很難,以下是幾個小案例

import base64

str=

'admin'

str=

str.encode(

'utf-8'

)#加密

bs64=base64.b64encode(

str)

print

(bs)

#結果是 b'ywrtaw4='

bs32=base64.b32encode(

str)

print

(bs32)

#結果是 b'mfsg22lo'

bs16=base64.b16encode(

str)

print

(bs16)

#結果是 b'61646d696e'

#解密debs64=base64.b64decode(bs64)

print

(debs64)

#結果是 b'admin'

debs32=base64.b32decode(bs32)

print

(debs32)

#結果是 b'admin'

debs16=base64.b16decode(bs16)

print

(debs16)

#結果是 b'admin'

請看**:

import base64

import random

#flag="flag"

#base64加密

defbase64_encode

(flag)

:#定義編碼方式

basecode=

#將『str』型別轉換成『bytes』型別

pp=flag.encode(

'utf-8'

)#進行迴圈編碼

for i in

range(10

):order=random.choice(

['16'

,'32'

,'64'])

pp=basecode[order]

(pp)

#將『bytes』型別轉換成『str』型別

pp=pp.decode(

'utf-8'

)#寫入檔案中

with

open

("ciphertext.txt"

,'w'

)as fp:

fp.write(pp)

return

'###加密成功###'

#base64解密

defbase64_decode

(ciphertext)

: result=

''with

open

(ciphertext+

".txt"

,'r'

)as fp:

ciphertext=fp.read(

) ciphertext=ciphertext.encode(

'utf-8'

)#定**密方式

basedecode=

for j in

range(10

):try:

ciphertext=basedecode[

'16'

](ciphertext)

except

:try

: ciphertext=basedecode[

'32'

](ciphertext)

except

: ciphertext=basedecode[

'64'

](ciphertext)

result=ciphertext.decode(

'utf-8'

)print

(result)

return

'###解密成功###'

defmain()

: functions=

input

('輸入a加密,輸入b解密,其它關閉》'

)if functions==

'a':

plaintext=

input

('請輸入加密文字明文》'

)print

(base64_encode(plaintext)

)if functions==

'b':

ciphertext =

input

('請輸入密文檔名》'

)print

(base64_decode(ciphertext)

)if __name__==

'__main__'

: main(

)

runfile(

'c:/users/lenovo/documents/我的python筆記/作業4.py'

, wdir=

'c:/users/lenovo/documents/我的python筆記'

)輸入a加密,輸入b解密,其它關閉》

>>a

請輸入加密文字明文》

>abcdefg

###加密成功###

runfile(

'c:/users/lenovo/documents/我的python筆記/作業4.py'

, wdir=

'c:/users/lenovo/documents/我的python筆記'

)輸入a加密,輸入b解密,其它關閉》

>>b

請輸入密文檔名》

>ciphertext

abcdefg

###解密成功###

在解碼的時候,由於加密的時候是隨機加密的,隨意該怎麼用正確的解碼方式去解碼就成了關鍵。

這裡找了"try…except…"的語句去實現,乙個乙個方式去試,最終試出明文。

Python使用base64加密

有時候我們要是進行登入操作的話,需要使用加密方法,以確保安全。今天我們來說一種加密解密的方法 base64,實際上它是一種應用於的編碼格式。本次我們需要在windows系統上的python3。一如既往,老操作 開啟開發工具,新建乙個空的python文件,輸入以下 from base64 import...

Base64加密解密

public class base64 對應asicc字元的位置 public static string base64encode string str c2 str i if i len c3 str i out base64encodechars c1 2 out base64encodech...

base64加密 例子

12349 50 51 31 32 33 00110001 00110010 00110011 001100 010011 001000 110011 00001100 00010011 00001000 00110011 12 19 8 51 mtiz base64編碼說明 base64編碼要求把...