Cómo usar C# para cifrar una cadena que contiene letras y números en una cadena de letras y descifrarla
{
//?
//?¿Usar cifrado de cadena de clave predeterminado?
//? ?
//? texto sin formato?
//?
público?static?string?Encrypt(string?original)
{
return?Encrypt(original,?" xyzABc*$!") )
}
//?
//?¿Usar clave predeterminada para descifrar?
//? ?
//? texto cifrado?
//?
public;static;string;Descifrar(cadena;original)
{
return;Descifrar(original,?" xyzABc*$!" ,?Sistema .Text.Encoding.Default);
}
}
//?
//?Usar para ¿Descifrado con una clave determinada?
//? ?
//? texto cifrado?
//? ¿Clave?
//?
cadena estática pública Decrypt(cadena original, clave de cadena)
{
¿retorno?
//?Utilice la clave predeterminada para ¿Descifrar el mensaje y devolver texto sin formato en la codificación especificada?
//?
//?
//? texto cifrado?
//? Método de codificación?
//?
público?estático?cadena?Decrypt(cadena?original,?Codificación?codificación)
{
return?Decrypt(original,?" xyzABc*$ !" ,?codificación);
}
//?
//? ¿Cifrar usando la clave proporcionada?
//? ?
//?
¿Texto original?
//? Palabra clave?
//? Esquema de codificación de caracteres?
//?
cadena estática pública Encrypt(cadena original, clave de cadena)
{
byte[]?buff?=?System.Text.Encoding.Default.GetBytes GetBytes(original);
byte[]?kb?=?System.Text.Encoding.Default.GetBytes(clave);
return?Convert.ToBase64String(Encrypt(buff, ?kb));
}
//?
//?¿Descifrar usando la clave proporcionada?
//? ?
//? texto cifrado?
//? ¿Clave?
//? Esquema de codificación de caracteres?
//?
cadena estática pública Decrypt(cadena cifrada, clave de cadena, codificación de codificación)
{
byte[]?FromBase64String(cifrado);
byte[]?kb?=?System.Text.Encoding.Default.GetBytes(key);
return?encoding.(buff,?kb));
}
//?
//?¿Generar resumen MD5?
//? ?
//? Fuente de datos?
//?
public?static?byte[]?MakeMD5(byte[]?original)
{
MD5CryptoServiceProvider?hashmd5?=?new?MD5CryptoServiceProvider ();
byte[]?keyhash?=?hashmd5.ComputeHash(original);
hashmd5?=?null;
retorno?
//?¿Cifrar usando la clave proporcionada?
//? ?
//?
soy?name="original"> texto sin formato?
//? clave?
//?
public?static?byte[]?Encrypt(byte[]?original,?byte[]?key)
{
TripleDESCryptoServiceProvider?des?= ?new?TripleDESCryptoServiceProvider();
des.Key?=?MakeMD5(key);
des.Mode?=?CipherMode.ECB;
regresar ?des.CreateEncryptor().TransformFinalBlock(original,?0,?original.Length);
}
/?
// ?¿Descifrar datos usando la clave proporcionada?
//? ?
//? texto cifrado?
//? ¿Clave?
//?
public?static?byte[]?Decrypt(byte[]?encrypted,?byte[]?key)
{
TripleDESCryptoServiceProvider?des?= ?new?TripleDESCryptoServiceProvider();
des.Key?=?MakeMD5(key);
des.Mode?=?CipherMode.ECB;
regresar ?des.CreateDecryptor().TransformFinalBlock(encrypted,?0,?encrypted.Length);
}
//?
/ /? ¿Cifrar usando la clave proporcionada?
//? ?
//? Datos originales?
//? Palabra clave?
//?
public?static?byte[]?Encrypt(byte[]?original)
{
byte[]?key?=?System.Text. Encoding.Default.GetBytes("xyzABc*$!") ;
return?Encrypt(original,?key);
}
//? resumen>?
//?¿Usar clave predeterminada para descifrar datos?
//
? ?
//? texto cifrado?
//? ¿Clave?
//?
byte estático público[]?Decrypt(byte[]?encrypted)
{
byte[]?key?=?System.Text.Encoding. Default.GetBytes("xyzABc*$!" ) )
return?Decrypt(cifrado,?clave);
}
}
}