Décrypter la valeur SHA1 avec C#

J'ai un PHP service web que j'ai découvert, c'est en passant mon C# SHA-1 encrupted valeur. Les données de l'échantillon qui est passé pour moi, c'est "8cb2237d0679ca88db6464eac60da96345513964" qui je sais se traduit par "12345".

Comment puis-je traduire la valeur de hachage pour en revenir à "12345" avec un code semblable au suivant

public static string HashCode(string str)
{
string rethash = "";
try
{

      System.Security.Cryptography.SHA1 hash = System.Security.Cryptography.SHA1.Create();
       System.Text.ASCIIEncoding encoder = new System.Text.ASCIIEncoding();
       byte[] combined = encoder.GetBytes(str);
       hash.ComputeHash(combined);
       rethash = Convert.ToBase64String(hash.Hash);
}
catch (Exception ex)
{
       string strerr = "Error in HashCode : " + ex.Message;
}
return rethash;
}
  • EDIT *

Voici quelques portions de code qui est également workig avec "8cb2237d0679ca88db6464eac60da96345513964" et "12345"

require "digest/sha1"
class User
  attr_accessor :password
  def initialize(password)
    @password = hash_password(password)
  end
  def hash_password(password)
    Digest::SHA1.hexdigest(password)
  end
  def valid_password?(password)
    @password == hash_password(password)
  end
end
u = User.new("12345")
p u.password # => "8cb2237d0679ca88db6464eac60da96345513964"
p u.valid_password?("not valid") # => false
p u.valid_password?("12345") # => true
Je ne suis pas expert mais je pense que l'idée est que vous n'êtes pas censé le faire 😛
SHA-1 est un algorithme de hachage. La journée, il peut être déchiffré par une vieille application C# est le jour où il cesse d'être utile.
Quand je fais une recherche sur internet pour "8cb2237d0679ca88db6464eac60da96345513964 12345" je vois que beaucoup de gens ont le "12345" la valeur de toutes les hachés à la même valeur.
Bien sûr il y aura toujours de hachage à la même valeur. Et vous pouvez savoir précisément qui 8cb2237d0679ca88db6464eac60da96345513964 est 12345. Ce n'est pas le déchiffrement, si. Il n'y a pas/moyen pratique pour convertir un arbitraire de la valeur de hachage de la valeur d'origine.

OriginalL'auteur user2019423 | 2013-01-31