Witam. Jestem nowy na forum, jeśli zły dział czy coś to proszę o przeniesienie.

Pracuję nad pewnym projektem który jest pisany w C# łączy się z bazą danych, konta użytkowników itd.
Chciałem dodać możliwość rejestracji, logowania itp z poziomu przeglądarki ale już na starcie napotkałem problem :/
A mianowicie kodowanie hasła przez program jest dla mnie nie do końca zrozumiałe i nie potrafię przerobić go na PHP
Oto kod C#
  1. var sha = new SHA256Managed();
  2. string pass = BitConverter.ToString(sha.ComputeHash(Encoding.UTF8.GetBytes("plaintext_password))).Replace("-", "");
  3. string salt = "AD07665AE12767B2B712752595D0E4C16479B01D07E66AF9F9E6081C811C4C21"; //Salt pulled from the database
  4. string encrypted_pass = BitConverter.ToString(sha.ComputeHash(Encoding.UTF8.GetBytes(pass + salt))).Replace("-", "");


Proszę o pomoc w napisaniu kodu PHP którego kodowanie będzie identycznym wynikiem jak kodowanie przez program.
Zaznaczam, że zmiana kodu w C# nie wchodzi w grę :/

EDIT:
Po kilku godzinach walki rozwiązałem swój problem.
Kod dla potomnych wink.gif
  1. function strToHex($string){
  2. $hex = '';
  3. for ($i=0; $i<strlen($string); $i++){
  4. $ord = ord($string[$i]);
  5. $hexCode = dechex($ord);
  6. $hex .= substr('0'.$hexCode, -2);
  7. }
  8. return strToUpper($hex);
  9. }
  10. $salt = "AD07665AE12767B2B712752595D0E4C16479B01D07E66AF9F9E6081C811C4C21";
  11. $pass = strToHex(hash('sha256',$password,true)).$salt;
  12. $hash = strToHex(hash('sha256',$pass,true));

Może ktoś kiedyś będzie miał podobny problem.