我試圖在php中創建一個管理頁面,我希望管理員不能看到真正的IP,只能加密。我試圖做到這一點,因爲用戶說,如果管理員可以看到他們的真實IP不好,並可以做它不好的事情。 我想僅從ip加密一個或兩個部分,例如127.0.x.1或127.x.1,並且x被加密。這可能嗎?加密和解密IP
Q
加密和解密IP
-2
A
回答
-1
<?
$ip = "192.168.11.22";
$parts = explode(".", $ip);
$secret1 = 123;
$secret2 = 321;
$parts[2] = $parts[2] * $secret1;
$parts[3] = $parts[3] * $secret2;
$encrypted = implode(".", $parts);
?>
結果:192.168.1353.7062
在調用/profile/iplog/192.168.1353.2706
只是做反向計算。
當然,算法可能比只乘以'祕密數字'更復雜。
特別提示:這只是一個例子!在實際代碼中代替瑣碎$parts[2] * $secret1
應該使用對稱密碼算法!
0
我解決了通過使用crc32和sha512哈希。
我使用此功能可將IP展現給管理員:
public static function readable_encrypted_ip($ip)
{
$s = explode('.', $ip);
$encrypt = hash('crc32', $s[1] . $s[2]);
$result = $s[0] . "." . $encrypt . "." . $s[3];
return $result;
}
而這個功能在使用環節:
public static function encrypt_ip($ip)
{
return hash('sha512', $ip);
}
相關問題
- 1. 加密和解密
- 2. 加密和解密
- 3. 加密和解密
- 4. 加密和解密
- 5. 加密和解密密碼
- 6. C#(加密)和Java(解密)之間的AES加密/解密
- 7. VB.NET加密和解密
- 8. 加密和解密在iphonesdk
- 9. C#加密和解密
- 10. 加密和解密文件
- 11. PHP加密和VB.net解密
- 12. 加密和解密餅乾
- 13. 加密和解密對象
- 14. php加密和解密
- 15. Android - 加密和解密
- 16. Android AES加密和解密
- 17. PGP加密和解密
- 18. ESAPI加密和解密
- 19. 文件加密和解密
- 20. gpg加密和解密
- 21. ActionScript3和Java加密/解密
- 22. web.config加密和解密
- 23. Asp.net加密和解密
- 24. Android - 加密和解密
- 25. AES加密和解密Java
- 26. 圖像加密和解密
- 27. 文件加密和解密
- 28. DES-ECB加密和解密
- 29. AES加密和解密
- 30. c#加密和解密
是的,它是完全可能的。 – Terry
管理員可以訪問數據庫嗎?如果沒有,只需在請求獲取用戶數據時用隨機字母替換。 –
不,管理員無法訪問數據庫。是的,我可以用隨機字母來替換,但是這些字母必須與該IP相關聯,因爲我使用隨機字母來查看用戶日誌,如/profile/iplog/127.x.1 –