Visual CSharp .NET - desencriptar c#

 
Vista:
sin imagen de perfil
Val: 4
Ha aumentado su posición en 3 puestos en Visual CSharp .NET (en relación al último mes)
Gráfica de Visual CSharp .NET

desencriptar c#

Publicado por Francisco (2 intervenciones) el 01/04/2020 16:56:26
Hola, soy nuevo en estoy y necesito de su ayuda, necesito de sus consejos para Encriptar y desencriptar en un programa C#, tengo esta password ( QwqUbaxDxM8= ), para poder saber que Hash de encriptacion tiene existe alguna pagina o programa?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Leonardo
Val: 27
Ha mantenido su posición en Visual CSharp .NET (en relación al último mes)
Gráfica de Visual CSharp .NET

desencriptar c#

Publicado por Leonardo (10 intervenciones) el 04/04/2020 21:35:16
Me despista mucho lo del Password. Para encriptar o desencriptar un fichero o cualquier otra cosa no necesitas un password, necesitas una semilla que tú decides.

Explícate un poco más sobre cual es tu problema.

El password tiene sentido en aplicaciones de compresión o de encriptado que están protegidas por password, es decir, si no conoces la clave no podrás visualizar el contenido.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 4
Ha aumentado su posición en 3 puestos en Visual CSharp .NET (en relación al último mes)
Gráfica de Visual CSharp .NET

desencriptar c#

Publicado por Francisco (2 intervenciones) el 06/04/2020 16:51:17
Este es el codigo que se utiliza para encriptar la contraseña y la contraseña es QwqUbaxDxM8=

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Security.Cryptography;
 
namespace SendEmailO365
{
    public class CCryptorEngine
    {
        private string key;
 
        /// <summary>
        /// Constructor de la clase CCryptorEngine
        /// </summary>
        public CCryptorEngine()
        {
            // Establecer una clave. La misma clave debe ser utilizada para descifrar los datos que
            // son cifrados con esta clave. pueden ser los caracteres que uno desee
            key = "ABCDEFGHIJKLMÑOPQRSTUVWXYZabcdefghijklmnñopqrstuvwxyz";
        }
 
 
        /// <summary>
        /// Cifrar una cadena utilizando el método de cifrado. Regresa un texto de cifrado.
        /// </summary>
        /// <param name="texto">cadena de caracteres que se va a encriptar</param>
        /// <returns></returns>
        ///
        public string Encriptar(string texto)
        {
            //arreglo de bytes donde guardaremos la llave
            byte[] keyArray;
            //arreglo de bytes donde guardaremos el texto que vamos a encriptar
            byte[] Arreglo_a_Cifrar = UTF8Encoding.UTF8.GetBytes(texto);
 
            //se utilizan las clases de encriptacion proveidas por el Framework
            //Algritmo MD5
            MD5CryptoServiceProvider hashmd5 = new MD5CryptoServiceProvider();
            //se guarda la llave para que se le realice hashing
            keyArray = hashmd5.ComputeHash(UTF8Encoding.UTF8.GetBytes(key));
            hashmd5.Clear();
 
            //Algoritmo 3DAS
            TripleDESCryptoServiceProvider tdes = new TripleDESCryptoServiceProvider();
            tdes.Key = keyArray;
            tdes.Mode = CipherMode.ECB;
            tdes.Padding = PaddingMode.PKCS7;
 
            //se empieza con la transformaion de la cadena
            ICryptoTransform cTransform = tdes.CreateEncryptor();
 
            //arreglo de bytes donde se guarda la cadena cifrada
            byte[] ArrayResultado = cTransform.TransformFinalBlock(Arreglo_a_Cifrar, 0, Arreglo_a_Cifrar.Length);
            tdes.Clear();
            //se regresa el resultado en forma de una cadena
            return Convert.ToBase64String(ArrayResultado, 0, ArrayResultado.Length);
        }
 
        /// <summary>
        /// Desencripta un texto usando el metodo de deble cadena Regresa una cadena desencriptada.
        /// </summary>
        /// <param name="cipherString">cadena encriptada</param>
        /// <param name="useHashing">Puedes usar el Hasing para encriptar estos datos? pasa true si la respuesta es si</param>
        /// <param name="keyToDecrypt">El nombre de la clave en el archivo app.config para desencriptar</param>
        /// <returns>the decrypted string</returns>
        public string Desencriptar(string textoEncriptado)
        {
            byte[] keyArray;
            //convierte el texto en una secuencia de bytes
            byte[] Array_a_Descifrar = Convert.FromBase64String(textoEncriptado);
 
            //se llama a las clases ke tienen los algoritmos de encriptacion
            //se le aplica hashing
            MD5CryptoServiceProvider hashmd5 = new MD5CryptoServiceProvider();
            keyArray = hashmd5.ComputeHash(UTF8Encoding.UTF8.GetBytes(key));
            hashmd5.Clear();
 
            TripleDESCryptoServiceProvider tdes = new TripleDESCryptoServiceProvider();
            tdes.Key = keyArray;
            tdes.Mode = CipherMode.ECB;
            tdes.Padding = PaddingMode.PKCS7;
 
            ICryptoTransform cTransform = tdes.CreateDecryptor();
            byte[] resultArray = cTransform.TransformFinalBlock(Array_a_Descifrar, 0, Array_a_Descifrar.Length);
 
            tdes.Clear();
            string res = UTF8Encoding.UTF8.GetString(resultArray);
            return res;
        }
    }
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar