Ce code permet de consulter 15 bases de données en ligne afin de trouver la version texte d'un hash MD5.
Il s'agit bel-et-bien ici de renverser un encodage MD5 !
Les bases de données enregistrent actuellement environ 70'000'000 hashes.
Compatibilité: Le code a été testé pour mIRC 6.03 et +.

Version en Français
CODE
; Reverse MD5 par C-Dryk
; utilisation: /rmd5 [hash md5]
; /* Inspiré du script de Noutrious :o)
; www.tg007.net/downloadsmsn/pafiledb.php?action=file&id=1116 */
alias rmd5 {
  var %v, %t Bases de données de Hash MD5 en ligne...
  if (!$1) %v = $$?"MD5 Hash ?" | else %v = $1
  sockopen $+(_md5_,%v) www.md5.noisette.ch 80
  sockmark $+(_md5_,%v) %v
  echo -tea  $+ %t $+ 
}
On *:SOCKOPEN:_md5_*: {
  echo $color(normal) -a 8• Hash: $+ $color(quit) $sock($sockname).mark
  if ($sockerr > 0) { echo $color(normal) -a 4• Erreur $+ $iif($sock($sockname).wsmsg,: $+ $color(kick) $replace($ifmatch,Unknown Error,Erreur Inconnue),.) | linesep -a | return }
  var %l $crlf, %a User-Agent: Mozilla/5.0 (compatible; MSIE 6.0; Windows NT 5.1), %h Host: md5.noisette.ch
  sockwrite $sockname GET $+(/md5.php?hash=,$sock($sockname).mark) $+(HTTP/1.1,%l,Accept: */*,%l,%a,%l,%h,%l,Connection: Close,%l,%l)
}
On *:SOCKREAD:_md5_*: {
  if ($sockerr > 0) { echo $color(normal) -a 4• Erreur $+ $iif($sock($sockname).wsmsg,: $+ $color(kick) $replace($ifmatch,Unknown Error,Erreur Inconnue),.) | linesep -a | return }
  var %r, %d
  sockread %r
  while ($sockbr) {
    if ($regex(cdata, %r, <(string|error)><!\[CDATA\[(.*)\]\]></(string|error)>) > 0) {
      if ($regml(cdata,1) == string) {
        if (*(converted to utf8)* iswm $regml(cdata,2)) %d = $remove($regml(cdata,2),&Acirc;,&Atilde;,&Auml;,&Aring;,$chr(194))
        else %d = $iif($utfdecode(Cédric) === Cédric,$utfdecode($regml(cdata,2)),$regml(cdata,2))
        echo $color(normal) -a 9• Texte: $+ $color(topic) $replace(%d,converted to utf8,converti en utf8)
      }
      elseif ($regml(cdata,1) == error) echo $color(normal) -a 4• Erreur: $+ $color(kick) $replace($regml(cdata,2),No value in MD5 database for this hash,Aucune valeur dans les bases de données MD5 pour ce hash,The string provided is not a true MD5 hash,La chaîne envoyée n'est pas un hash MD5 valide,Please try again,Veuillez essayer à nouveau)
      echo $color(info2) - Requête terminée en $sock($sockname).ls secondes
      linesep -a | sockclose $sockname | return
    }
    sockread %r
  }
}


English Version
CODE
; Reverse MD5 by C-Dryk
; usage: /rmd5 [md5 hash]
; /* Inspired of Noutrious's script :o)
; www.tg007.net/downloadsmsn/pafiledb.php?action=file&id=1116 */
alias rmd5 {
  var %v, %t MD5 Hash Online Databases...
  if (!$1) %v = $$?"MD5 Hash ?" | else %v = $1
  sockopen $+(_md5_,%v) md5.noisette.ch 80
  sockmark $+(_md5_,%v) %v
  echo -tea  $+ %t $+ 
}
On *:SOCKOPEN:_md5_*: {
  echo $color(normal) -a 8• Hash: $+ $color(quit) $sock($sockname).mark
  if ($sockerr > 0) { echo $color(normal) -a 4• Error $+ $iif($sock($sockname).wsmsg,: $+ $color(kick) $ifmatch,.) | linesep -a | return }
  var %l $crlf, %a User-Agent: Mozilla/5.0 (compatible; MSIE 6.0; Windows NT 5.1), %h Host: md5.noisette.ch
  sockwrite $sockname GET $+(/md5.php?hash=,$sock($sockname).mark) $+(HTTP/1.1,%l,Accept: */*,%l,%a,%l,%h,%l,Connection: Close,%l,%l)
}
On *:SOCKREAD:_md5_*: {
  if ($sockerr > 0) { echo $color(normal) -a 4• Error $+ $iif($sock($sockname).wsmsg,: $+ $color(kick) $ifmatch,.) | linesep -a | return }
  var %r, %d
  sockread %r
  while ($sockbr) {
    if ($regex(cdata, %r, <(string|error)><!\[CDATA\[(.*)\]\]></(string|error)>) > 0) {
      if ($regml(cdata,1) == string) {
        if (*(converted to utf8)* iswm $regml(cdata,2)) %d = $remove($regml(cdata,2),&Acirc;,&Atilde;,&Auml;,&Aring;,$chr(194))
        else %d = $iif($utfdecode(Cédric) === Cédric,$utfdecode($regml(cdata,2)),$regml(cdata,2))
        echo $color(normal) -a 9• Text: $+ $color(topic) %d
      }
      elseif ($regml(cdata,1) == error) echo $color(normal) -a 4• Error: $+ $color(kick) $regml(cdata,2)
      echo $color(info2) - Request completed in $sock($sockname).ls seconds
      linesep -a | sockclose $sockname | return
    }
    sockread %r
  }
}