2016-02-28 39 views
-2

我對PHP很陌生,我正在尋找一些處理哈希的Provability Fair代碼。我想知道當值被散列時究竟發生了什麼。我知道它將它轉換爲hexits,但它究竟是如何做到的。還有什麼是「 - 」完全是?這裏是我正在看的代碼給每個人一個更好的主意。提前致謝!使用PHP進行散列。 SHA-256如何工作?

$server_seed = "39b7d32fcb743c244c569a56d6de4dc27577d6277d6cf155bdcba6d05befcb34"; 
$lotto = "0422262831"; 
$round_id = "1"; 
$hash = hash("sha256",$server_seed."-".$lotto."-".$round_id); 
$roll = hexdec(substr($hash,0,8)) % 15; 
echo "Round $round_id = $roll"; 
+0

SHA-256是一個衆所周知的散列函數。我們不是來執行密碼學課程的。您可以隨時從Coursera的Dan Boneh免費學習像Crypto I這樣的課程。 –

回答

0

SHA-256是一個256位(32字節)散列算法,可以計算最多264-1位輸入的散列碼。它經歷了64輪哈希。計算出的散列碼將是一個64位十六進制數字。例如,rajeshpatel的SHA-256哈希碼是5662895e0af2b7b9c23c753b44b3628299a009949000e6cfd60fd16c02c00433

PHP有hash()函數來計算SHA-256哈希碼。

<?php 
echo hash('sha256', 'www.MyTecBits.com'); 
?> 
+0

請不要發佈導致文件在人們的計算機上下載的縮短鏈接。 – josliber