Python ile Kriptografi - XOR Süreci

Bu bölümde, XOR sürecini Python'daki kodlamasıyla birlikte anlayalım.

Algoritma

XOR şifreleme ve şifre çözme algoritması, düz metni ASCII bayt formatına dönüştürür ve onu belirli bir bayta dönüştürmek için XOR prosedürünü kullanır. Kullanıcılarına aşağıdaki avantajları sunar -

  • Hızlı hesaplama
  • Sol ve sağ tarafta fark yok
  • Anlaması ve analiz etmesi kolay

Kod

XOR işlemini gerçekleştirmek için aşağıdaki kod parçasını kullanabilirsiniz -

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)

Çıktı

XOR işleminin kodu size aşağıdaki çıktıyı verir -

Açıklama

  • İşlev xor_crypt_string() kodlama ve kod çözme modunu ve ayrıca dize değerini belirtmek için bir parametre içerir.

  • Temel işlevler, düz metni / şifreleme metnini şifrelemek veya şifresini çözmek için XOR prosedürünü / işlemini izleyen base64 modülleri ile alınır.

Note - XOR şifreleme, verileri şifrelemek için kullanılır ve kaba kuvvet yöntemiyle kırılması zordur, yani doğru şifre metniyle eşleştirmek için rastgele şifreleme anahtarları oluşturarak.