mcrypt_generic

(PHP 4 >= 4.0.2, PHP 5, PHP 7 < 7.2.0, PECL mcrypt >= 1.0.0)

mcrypt_genericEsta função criptografa dados

Aviso

Esta função foi DESCONTINUADA a partir do PHP 7.1.0 e foi REMOVIDA a partir do PHP 7.2.0. O uso desta função é fortemente desencorajado.

Descrição

mcrypt_generic(resource $td, string $data): string

Esta função criptografa dados. Os dados são preenchidos com "\0" para garantir que o comprimento dos dados seja n * tamanho_do_bloco. Esta função retorna os dados criptografados. Observe que o comprimento da string retornada pode, de fato, ser maior que a entrada, devido ao preenchimento dos dados.

Se houver necessidade de armazenar os dados criptografados em um banco de dados, certifique-se de armazenar a string inteira conforme retornada por mcrypt_generic, ou a string não será totalmente descriptografada corretamente. Se a string original tiver 10 caracteres e o tamanho do bloco for 8 (use mcrypt_enc_get_block_size() para determinar o tamanho do bloco), seriam necessários pelo menos 16 caracteres no campo do banco de dados. Observe que a string retornada por mdecrypt_generic() terá 16 caracteres também... use rtrim($str, "\0") para remover o preenchimento.

Se os dados forem, por exemplo, armazenados em um banco de dados MySQL, lembre-se de que campos "varchar" automaticamente têm espaços finais removidos durante a inserção. Como dados criptografados podem terminar em um espaço (ASCII 32), os dados serão corrompidos por essa remoção. Em vez disso, armazene os dados em um campo tinyblob/tinytext (ou maior).

Parâmetros

td

O descritor de criptografia.

O identificador de criptografia deve sempre ser inicializado com mcrypt_generic_init() com uma chave e um IV antes de chamar esta função. Onde a criptografia é feita, devem ser liberados os buffers de criptografia chamando mcrypt_generic_deinit(). Veja mcrypt_module_open() para um exemplo.

data

Os dados a serem criptografados.

Valor Retornado

Retorna os dados criptografados.

Veja Também

adicione uma nota

Notas Enviadas por Usuários (em inglês)

Não há notas de usuários para esta página.
To Top