Advertisement
DevNeon

Vigenere Encryption

Oct 30th, 2019
153
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.05 KB | None | 0 0
  1. # Encryption.py
  2. # 비즈네르 암호화
  3.  
  4. characters = ["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"]
  5. key = []
  6. C_value = []
  7. result = []
  8.  
  9. # 입력
  10. str = input("문자열 입력 : ")
  11. str = str.upper()
  12. print(f"문자열 : {str}")
  13.  
  14. key_s = input("키값 입력 : ")
  15. key_s = key_s.upper()
  16. print(f"키값 : {key_s}")
  17.  
  18. # 각 배열 저장
  19. for idx in range(0, len(key_s)) :
  20.     key.append(characters.index(key_s[idx]))
  21. print(key)
  22.  
  23. for idx in range(0, len(str)) :
  24.     C_value.append(characters.index(str[idx]))
  25. print(C_value)
  26.    
  27. # 연산
  28. key_count = 0
  29. for s in range(0, len(C_value)) :
  30.     if key_count == len(key) :
  31.         key_count = 0
  32.  
  33.     temp = C_value[s] + key[key_count]
  34.     if temp > 26 :
  35.         temp = temp % 26
  36.  
  37.     print(temp, end=" ")
  38.     result.append(characters[temp])
  39.     key_count += 1
  40.  
  41. # 출력
  42. print("\n─────────────────────────")
  43. print("\n암호문 : ", end="")
  44. for out in result :
  45.     print(out, end=" ")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement