¿Cómo codificar y decodificar un mensaje usando Python?

El cifrado es el proceso de convertir un mensaje normal (texto sin formato) en un mensaje sin sentido (texto cifrado). Considerando que, el descifrado es el proceso de convertir un mensaje sin sentido (texto cifrado) en su forma original (texto sin formato). En este artículo, llevaremos adelante la idea del cifrado y descifrado y redactaremos un programa de python.

En este artículo, recibiremos un mensaje de una sola línea como entrada, se codifica o decodifica según los requisitos y el mensaje resultante se imprime como salida. Aquí, la conversión se ha realizado reemplazando A a Z, B a Y, … Z a A. El caso de los caracteres, números, espacios y caracteres especiales presentes en el mensaje se mantiene sin cambios.

Ejemplo de muestra 1:

Cifrado

Input : Hello World
Output : Svool Dliow

Explicación: (Referencia- tabla de conversión)

  • H se reemplaza con S
  • e se reemplaza con v
  • l se reemplaza con o
  • W se reemplaza por D
  • r se reemplaza con i

Descifrado

Input : Svool Dliow 
Output : Hello World 

Explicación: (Referencia- tabla de conversión)

  • S se reemplaza con H
  • v se reemplaza con e
  • o se reemplaza con l
  • D se reemplaza con W
  • i se reemplaza con r

Ejemplo de muestra 2:

Cifrado

Input : GeeksForGeeks
Output : TvvphUliTvvph

Explicación: (Referencia- tabla de conversión)

  • G se reemplaza con T
  • e se reemplaza con v
  • k se reemplaza con p
  • s se reemplaza con h
  • F se reemplaza con U
  • o se reemplaza con l
  • r se reemplaza con i

Descifrado

Input : TvvphUliTvvph 
Output : GeeksForGeeks

Explicación: (Referencia- tabla de conversión)

  • T se reemplaza con G
  • v se reemplaza con e
  • p se reemplaza con k
  • h se reemplaza con s
  • U se reemplaza con F
  • l se reemplaza con o
  • i se reemplaza con r

A continuación se muestra la implementación.

Python3

# Taking input from user
data = 'Welcome to GeeksForGeeks...'
  
  
# conversion Chart
conversion_code = {
    
    # Uppercase Alphabets
    'A': 'Z', 'B': 'Y', 'C': 'X', 'D': 'W', 'E': 'V', 'F': 'U',
    'G': 'T', 'H': 'S', 'I': 'R', 'J': 'Q', 'K': 'P', 'L': 'O',
    'M': 'N', 'N': 'M', 'O': 'L', 'P': 'K', 'Q': 'J', 'R': 'I',
    'S': 'H', 'T': 'G', 'U': 'F', 'V': 'E', 'W': 'D', 'X': 'C',
    'Y': 'B', 'Z': 'A',
  
    # Lowercase Alphabets
    'a': 'z', 'b': 'y', 'c': 'x', 'd': 'w', 'e': 'v', 'f': 'u',
    'g': 't', 'h': 's', 'i': 'r', 'j': 'q', 'k': 'p', 'l': 'o',
    'm': 'n', 'n': 'm', 'o': 'l', 'p': 'k', 'q': 'j', 'r': 'i',
    's': 'h', 't': 'g', 'u': 'F', 'v': 'e', 'w': 'd', 'x': 'c',
    'y': 'b', 'z': 'a'
}
  
# Creating converted output
converted_data = ""
  
  
for i in range(0, len(data)):
    if data[i] in conversion_code.keys():
        converted_data += conversion_code[data[i]]
    else:
        converted_data += data[i]
  
# Printing converted output
print(converted_data)
Producción

Dvoxlnv gl TvvphUliTvvph...

Publicación traducida automáticamente

Artículo escrito por aditya_taparia y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *