반응형

 

문자열 암호화 복호화 - DES 방식

 

글. 오상문 sualchi@daum.net


 

from Crypto.Cipher import DES

 

#문자열을 8바이트 배수 단위로 만드는 함수
def pad(text):
    while len(text) % 8 != 0:
        text += ' '
    return text

 

# 8바이트 키
key = 'abcdefgh'.encode()   # key = b'abcdefgh'

 

# DES 암호화 객체
des = DES.new(key, DES.MODE_ECB)

 

# 원본 문자열
text = 'Python rocks!'
print("원본: " + text)

 

# 8바이트 배수 단위로 묶어야 해서 모자란 부분을 ' '으로 채워주는 pad 함수 이용
padded_text = pad(text)

 

encrypted_text = des.encrypt(padded_text.encode()) # bytes 자료로 변경해서 전달

 

print("DES 암호화된 자료:")
print(encrypted_text)

 

#결과: b'>\xfc\x1f\x16x\x87\xb2\x93\x0e\xfcH\x02\xd59VQ'

 

 

 

# 복호화
decrypted_text = des.decrypt(encrypted_text)

 

print("복호: " + decrypted_text.decode())
# 결과: Python rocks!  

 

<이상>

 

반응형

+ Recent posts