Mhash - Funções de hash
Introdução
Essas funções são planejadas para trabalhar com » mhash. Com o Mhash você pode criar checksums, digests de mensagens, códigos de autenticação de mensagens e mais.
Esta é uma interface para a biblioteca mhash. O mhash suporta uma grande variedade de algoritmos de hash como MD5, SHA1, GOST e muitos outros. Para uma lista completa das hashs suportadas, verifique a documentação do mhash. A regra geral é: você pode acessar o algoritmo de hash a partir do PHP com MHASH_NOMEdoHASH, Por exemplo, para acessar o algoritmo TIGER, você utiliza a constante MHASH_TIGER.
Nota: Esta extensão foi movida para o repositório » PECL e não é mais distribuida em conjunto com o PHP a partir do PHP 5.3.0. This extension is obsoleted by Hash.
Dependências
Para usá-las, faça o download da distribuição do mhash em » https://mhash.sourceforge.net/ e siga as instruções de instalação inclusas.
Instalação
You need to compile PHP with the --with-mhash[=DIR] parameter to enable this extension. DIR is the mhash install directory.
Configurações em execução
Esta extensão não define nenhum parâmetro de configuração no php.ini.
Tipos Resource
Esta extensão não possui nenhum tipo resource.
Constantes pré-definidas
As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.
Aqui está a lista de hashes que são atualmente suportadas por mhash. Se uma hash não está listada aqui, mas é listada pelo mhash como suportada, você pode assumir seguramente que esta documentação está desatualizada.
- MHASH_ADLER32
- MHASH_CRC32
- MHASH_CRC32B
- MHASH_GOST
- MHASH_HAVAL128
- MHASH_HAVAL160
- MHASH_HAVAL192
- MHASH_HAVAL256
- MHASH_MD4
- MHASH_MD5
- MHASH_RIPEMD160
- MHASH_SHA1
- MHASH_SHA256
- MHASH_TIGER
- MHASH_TIGER128
- MHASH_TIGER160
Exemplos
Example#1 Calcular o MD5 digest e hmac e imprimir como hex
<?php
$input = "what do ya want for nothing?";
$hash = mhash (MHASH_MD5, $input);
echo "A hash é " . bin2hex ($hash) . "<br />\n";
$hash = mhash (MHASH_MD5, $input, "Jefe");
echo "A hmac é " . bin2hex ($hash) . "<br />\n";
?>
Este código irá produzir:
A hash é d03cb659cbf9192dcd066272249f8412 A hmac é 750c783e6ab0b503eaa86e310a5db738
Índice
- mhash_count — Ler o mais alto hash id disponível
- mhash_get_block_size — Ler o tamanho do bloco da hash específicada
- mhash_get_hash_name — Ler o nome da hash especificada
- mhash_keygen_s2k — Gerar uma chave
- mhash — Computar a hash