2017-10-12 1 views
-5

.net에서이 함수가 있지만 PHP 코드에서 사용해야합니다. 어떻게하면됩니까? 감사합니다.어떻게이 함수를 PHP로 변환 할 수 있습니까?

originalPassword=user+password; 
public static string Encrypt(string originalPassword) 
    { 
string key = "7f9facc418f74439c5e9709832;0ab8a5:OCOdN5Wl,q8SLIQz8i|8agmu¬s13Q7ZXyno/yv.XSN1DsgKq9zi]XrE^gx8vPC^Av8=e/bF4pX1Oe hfqGb#JK~RONkS1wx5w=RE0$DxZSu7evPfshBw7p5Gb&suEkw=RE0DxZSu7e´vPfshBw7p+5GbsuEkw=H1fTWFXfsXo}z0fOd{KTt[IdDG2y6E="; 

SHA512 sha512 = new SHA512CryptoServiceProvider(); 
byte[] inputBytes = (new UnicodeEncoding()).GetBytes(originalPassword + key); 
     byte[] hash = sha512.ComputeHash(inputBytes); 
     return Convert.ToBase64String(hash); 
} 
+2

_ "나는 그렇게 할 수 있습니까?"_ - 당신이 주어진 코드의 개별 조각이 무엇을 알아내는 것으로 시작, 다음이 _research_를 이동합니다 어떻게 PHP로 동일한 단계를 거쳐야 하는가? – CBroe

+0

18 년 전에 탱고에서 PHP로 옮겼을 때 나는 많은 것을했습니다 ... PHP에서 equivs를 원했던 많은 탱고 기능이 있었기 때문에 각각을 연구하고 세부 사항을 파악하고 PHP 기능. 그래서, 그 긴 과정 ...하지만 그것을하고있는 동안 많이 배웁니다! – IncredibleHat

+0

PHP 해시를 사용 하시겠습니까? http://php.net/manual/en/function.hash.php –

답변

0

이 트릭을 수행해야합니다

<?php 

function hash_data($data) 
{ 
    $data = mb_convert_encoding($data, 'UTF-16LE', 'UTF-8'); 
    $hash = hash('sha512', $data, true); 
    return base64_encode($hash); 
} 

$user = 'admin'; 
$password = 'secret'; 
$key = "7f9facc418f74439c5e9709832;0ab8a5:OCOdN5Wl,q8SLIQz8i|8agmu¬s13Q7ZXyno/yv.XSN1DsgKq9zi]XrE^gx8vPC^Av8=e/bF4pX1Oe hfqGb#JK~RONkS1wx5w=RE0$" . "DxZSu7evPfshBw7p5Gb&suEkw=RE0DxZSu7e´vPfshBw7p+5GbsuEkw=H1fTWFXfsXo}z0fOd{KTt[IdDG2y6E="; 
$data = $user . $password . $key; 

// 6xecArT38JVtGKH2yQs/T6btOUF41vW5ptaPjgrd8hTaZZKnbJed5551LuYV7vR/Dr3Jb873JMvX0je+8XUpxw== 
echo hash_data($data); 
관련 문제