Mac Hash PHP
===================
Mac OS X 系統(tǒng)中自帶了 OpenSSL 擴展庫,因此并不需要額外安裝 OpenSSL,任何 Mac 用戶都可以很方便地在 PHP 中使用 hash 加密算法。
***
關于加密算法,可能最為熟知的是 MD5 和 SHA1,不過這兩種算法已經(jīng)被證明并不安全。目前常用的算法是 SHA2(Sha-256 和 Sha-512),因為它們提供了更高的安全性和更大的 Hash 值。hash 函數(shù)同時支持其他算法,比如 Sha-1, Sha-224, Sha-256, Sha-384, Sha-512, MDC2, MD5, RIPEMD160, Tiger, 和 Whirlpool。
在 PHP 中,我們可以使用 `hash()` 函數(shù)實現(xiàn)散列哈希值的計算。下面是一個示例:
```php```
我們將字符串 `This is some data to hash` 傳遞給 `hash()` 函數(shù),同時指定算法為 Sha-256(`sha256`),該函數(shù)將返回一個 64 個字符的散列值。
***
`hash_hmac()` 函數(shù)帶有一個密鑰參數(shù)。對于需要在計算哈希時使用密鑰(例如 HMAC),可以使用此函數(shù)。 `hash_hmac()` 函數(shù)的語法與 `hash()` 函數(shù)類似:
```php```
這里,我們在 `hash_hmac()` 函數(shù)的第二個參數(shù)中傳遞了一個密鑰。SHA-2 算法同樣也是可用的:
```php```
***
除了指定算法外,也可以使用 `hash_algos()` 函數(shù)羅列當前系統(tǒng)支持的所有哈希算法。這里是一個例子:
```php';
}
?>```
這段代碼將返回當前系統(tǒng)支持的所有哈希算法,如下所示:
```
md2
md4
md5
sha1
sha224
sha256
sha384
sha512/224
sha512/256
sha512
ripemd128
ripemd160
tiger128,3
tiger160,3
tiger192,3
tiger128,4
tiger160,4
tiger192,4
snefru
snefru256
gost
adler32
crc32b
fnv132
fnv1a32
fnv164
fnv1a64
joaat
haval128,3
haval160,3
haval192,3
haval224,3
haval256,3
haval128,4
haval160,4
haval192,4
haval224,4
haval256,4
haval128,5
haval160,5
haval192,5
haval224,5
haval256,5
```
下一篇mac ice php