Pythonを使用した暗号化-XORプロセス

この章では、XORプロセスとPythonでのコーディングについて理解しましょう。

アルゴリズム

暗号化と復号化のXORアルゴリズムは、プレーンテキストをASCIIバイト形式に変換し、XORプロシージャを使用して指定されたバイトに変換します。ユーザーに次の利点を提供します-

  • 高速計算
  • 左右に違いはありません
  • 理解と分析が簡単

コード

次のコードを使用して、XORプロセスを実行できます-

def xor_crypt_string(data, key = 'awesomepassword', encode = False, decode = False):
   from itertools import izip, cycle
   import base64
   
   if decode:
      data = base64.decodestring(data)
   xored = ''.join(chr(ord(x) ^ ord(y)) for (x,y) in izip(data, cycle(key)))
   
   if encode:
      return base64.encodestring(xored).strip()
   return xored
secret_data = "XOR procedure"

print("The cipher text is")
print xor_crypt_string(secret_data, encode = True)
print("The plain text fetched")
print xor_crypt_string(xor_crypt_string(secret_data, encode = True), decode = True)

出力

XORプロセスのコードは、次の出力を提供します-

説明

  • 関数 xor_crypt_string() エンコードとデコードのモードを指定するパラメータと、文字列値が含まれています。

  • 基本的な機能は、平文/暗号文を暗号化または復号化するためのXOR手順/操作に従うbase64モジュールで使用されます。

Note− XOR暗号化はデータの暗号化に使用され、ブルートフォース方式、つまり正しい暗号文と一致するランダムな暗号化キーを生成する方法では解読が困難です。