Учебники

Криптография с 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 () включает в себя параметр для указания режима кодирования и декодирования, а также строковое значение.

  • Основные функции выполняются с модулями base64, которые следуют процедуре / операции XOR для шифрования или дешифрования обычного текста / зашифрованного текста.

Функция xor_crypt_string () включает в себя параметр для указания режима кодирования и декодирования, а также строковое значение.

Основные функции выполняются с модулями base64, которые следуют процедуре / операции XOR для шифрования или дешифрования обычного текста / зашифрованного текста.

Примечание. Шифрование XOR используется для шифрования данных, и его трудно взломать методом грубой силы, т. Е. Путем генерации случайных ключей шифрования для сопоставления с правильным текстом шифра.