He estado buscando una manera de hash una cadena dada en C# que utiliza una clave predeterminada.Hash MD5 dado una clave en C#
En mis aventuras a través de Internet tratando de encontrar un ejemplo, he visto muchos ejemplos de MD5CryptoServiceProvider que parecen usar una clave predeterminada para la máquina, pero ninguno de ellos aplica una clave específica. Necesito tener una clave específica para codificar datos y sincronizarla con el servidor de otra persona. Les entrego una cadena hash y un número de identificación y usan eso para analizar los datos y devolverme un conjunto similar. Entonces, de todos modos hay que obtener md5 para hash a través de una clave específica que sea consistente con ambos.
Preferiría que esto se haga en C#, pero si no es posible con las bibliotecas, ¿puede hacerlo con algunos lenguajes web como php o asp?
Editar: Entiende mal la situación en la que me lanzaron y después de un rato sentado y pensando en por qué me tendrían que usar una llave, parece que quieren una clave añadida al final de la cadena y hash. De esta forma, el servidor puede agregar la clave que tiene junto con los datos pasados para garantizar que sea una computadora con acceso válido. De todos modos ... gracias a todos^_^
Edit2: Como dice mi comentario a continuación, era el término 'salazón' que era ajeno. Oh las alegrías de ser arrojado a algo nuevo sin direcciones.
No hay clave para MD5 ... como Tom Ritter señaló, es ** ** no un algoritmo de cifrado –
Como todo el mundo ha señalado MD5 es hashing, no cifrado, pero no es claro a partir de su entrada si en realidad * do * quiere hashing y misspoke o realmente quiere cifrado. Aclarar por favor – annakata
Su edición realmente no clarificó su pregunta. MD5 no usa ninguna "clave predeterminada" sobre la que está preguntando. Sin embargo, si todo lo que necesita hacer es comparar hashes, simplemente tome el hash de sus dos entradas y compare los resultados bit a bit. Tenga en cuenta que MD5 por lo general (salvo el muy poco probable caso de colisión hash) da resultados completamente diferentes, incluso si las entradas varían en la cantidad más pequeña. – Naaff