necesito una versión PHP del siguiente código C#:¿Cómo traduciría este código C# en PHP?
string dateSince = "2010-02-01";
string siteID = "bash.org";
string sharedSecret = "12345"; // the same combination on my luggage!
using System.Security.Cryptography;
MD5CryptoServiceProvider x = new MD5CryptoServiceProvider();
byte[] dataBytes = System.Text.Encoding.ASCII.GetBytes(string.Format("{0}{1}{2}", dateSince, siteID, sharedSecret));
string result = BitConverter.ToString(x.ComputeHash(dataBytes));
... este fragmento de código parece estar incompletos. Pero esto es lo que creo que está pasando:
concatenando dateSince, siteID y SharedSecret. Robando ropa interior.
???
convirtiendo esa cadena en una matriz de bytes codificada en ascii.
tomando el hash MD5 de esa matriz.
Este misterioso objeto BitConverter parece convertir esa matriz de hash MD5, en una cadena de números hexadecimales. De acuerdo con el documento mencionado anteriormente, el valor del resultado debe ser similar a: "6D-E9-9A-B6-73-D8-10-79-BC-4F-EE-51-A4-84-15-D8"
¡Cualquier ayuda es muy apreciada!
Olvidó incluir esto antes. Aquí está la versión de PHP de lo que he escrito hasta ahora:
$date_since = "2010-02-01";
$site_id = "bash.org";
$shared_secret = "12345";
$initial_token = $date_since.$site_id.$shared_secret;
$ascii_version = array();
foreach($i=0; $i < strlen($initial_token); $i++) {
$ascii_version[] = ord(substr($initial_token,$i,1));
}
$md5_version = md5(join("", $ascii_version));
$hexadecimal_bits = array();
foreach($i=0; $i < strlen($md5_version); $i++) {
// @todo convert to hexadecimal here?
$hexadecimal_bits[] = bin2hex(substr($md5_version,$i,1));
}
$result = join("-", $hexadecimal_bits);
Por favor, publique el código que ha escrito hasta ahora. En general, a la gente no le gusta escribir tu código por ti. –
Ah, perdón por eso; Soy nuevo aquí. Un momento ... – sayajay
+1 para la misma combinación que su equipaje. – benjy