2012-10-12 54 views
0

我想生成訪問代碼到我正在創建的網站,並使其只能通過該令牌訪問。現在,我希望令牌具有特定的信息 - 電子郵件地址,時間+ 24小時。我想每小時執行一次cron作業,檢查是否已經達到了24小時,如果有,則刪除令牌。生成訪問代碼

我想使用哈希碼,但我怎樣才能從哈希碼檢索信息?在PHP中有這樣的函數來解碼哈希碼嗎?因爲我找不到它...

如果沒有,那麼可以使用什麼替代算法來生成訪問碼?

編輯:我將使用base64_encode()。謝謝

回答

1

不要將信息存儲在令牌中。將信息存儲在數據庫中。令牌應該是隨機生成的(並用作鍵值)。

(哈希被設計成單向的,你不應該能夠解碼它們)。

+0

我想我找到了我正在尋找的東西。我打算使用base64_encode() –

+0

@LukasBijaminas - 不要使用base64_encode,這是完全不必要的數據泄漏。使用隨機令牌。 – Quentin

1

你不能逆轉散列的過程。你所能做的最好的事情是一種不可靠的蠻力。

您應該創建一個散列字符串並將其與其他信息一起存儲在數據庫中。然後在你的cron腳本中,檢查數據庫。