Python 에서 실 현 된 텍스트 단순 역 암호 화 알고리즘 예시
사실은 매우 간단 하 다.바로 텍스트 의 모든 문 자 를 특정한 방식 으로 바 꾸 는 것 이다(예 를 들 어 1 추가).
이렇게 하면 텍스트 의 암호 화 작업 을 실현 할 수 있 고 복호화 가 바로 역 연산 이다.
# -*-coding:utf-8 -*-
import sys
reload(sys)
sys.setdefaultencoding('utf8')
#
def jiami():
filename=raw_input('please input file:
')
while True:
try:
password=int(raw_input('input number pass word:
'))
break
except:
print 'please input number:
'
fileword=open(filename,'r')
num=filename.rfind('.')
newfilename=filename[:num]+'[ ]'.encode('gbk')+filename[num:]
content=fileword.read(1)
newfileword=open(newfilename,'a+')
while len(content)>0:
contentInt=ord(content)
newContent=contentInt+password
c=chr(newContent)
newfileword.write(c)
content=fileword.read(1)
newfileword.close()
fileword.close()
#
def jiemi():
filename=raw_input('please input file:
')
while True:
try:
password=int(raw_input('input number pass word:
'))
break
except:
print 'please input number:
'
fileword=open(filename,'r')
num=filename.rfind('.')
num2=filename.rfind('[')
newfilename=filename[:num2]+'[ ]'.encode('gbk')+filename[num:]
content=fileword.read(1)
newfileword=open(newfilename,'a+')
while len(content)>0:
contentInt=ord(content)
newContent=contentInt-password
c=chr(newContent)
newfileword.write(c)
content=fileword.read(1)
newfileword.close()
fileword.close()
while True:
index=int(raw_input('--- ,1 2 3 ---
'.encode('gbk')))
if index==1:
jiami()
elif index==2:
jiemi()
elif index==3:
exit(0)
else:
pass
주의:① 중국어 인 코딩 문제 가 발생 하면.encode,.decode 인 코딩 을 통 해 디 코딩 할 수 있다.
② Python 의 절편 작업 을 통 해 파일 이름 을 처리 할 수 있 습 니 다.예 를 들 어 new filename=filename[:num]+'[암호 화]'encode('gbk')+filename[num:]
③ 가장 중요 한 것!!이 암호 화 방법 은 텍스트 문자 에+password 처 리 를 간단하게 하 는 것 일 뿐 입 니 다.그 방법 은 매우 불합리 합 니 다.만약 에 추 가 된 숫자 가 대회 가 지나 면 chr 바이트 가 부족 하기 때 문 입 니 다(예 를 들 어 1000 개 를 지 는 것)
그래서 이 코드 는 초보 자 연습 에 만 적용 되 고 진정한 처리 알고리즘 으로 사용 할 수 없습니다.
PS:암호 화 복호화 에 관심 이 있 는 친 구 는 본 사이트 의 온라인 도 구 를 참고 할 수 있 습 니 다.
MD5 온라인 암호 화 도구:
http://tools.jb51.net/password/CreateMD5Password
천둥,급행열차,회오리 URL 암호 화/복호화 도구:
http://tools.jb51.net/password/urlrethunder
온라인 해시/해시 알고리즘 암호 화 도구:
http://tools.jb51.net/password/hash_encrypt
온라인 MD5/hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160 암호 화 도구:
http://tools.jb51.net/password/hash_md5_sha
온라인 sha 1/sha 224/sha 256/sha 384/sha 512 암호 화 도구:
http://tools.jb51.net/password/sha_encode
파 이 썬 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있다.
본 논문 에서 말 한 것 이 여러분 의 Python 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Python의 None과 NULL의 차이점 상세 정보그래서 대상 = 속성 + 방법 (사실 방법도 하나의 속성, 데이터 속성과 구별되는 호출 가능한 속성 같은 속성과 방법을 가진 대상을 클래스, 즉 Classl로 분류할 수 있다.클래스는 하나의 청사진과 같아서 하나의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.