Méthodes de hachage en php : hash_algos(), hash_copy(), hash_equals(), hash_file(), hash_final(), hash_hkdf(), hash_hmac(), hash_init(), hash(), etc.
L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 7.1, ordinateur DELL G3
Méthode de hachage en php
hash_algos — Renvoie la liste des algorithmes de hachage enregistrés
hash_algos()
hash_algos () code>
hash_copy - Copier le contexte de l'opération de hachage
Syntaxe :hash_copy($context)
hash_algos()
返回值:返回一个数值索引的数组, 包含了受支持的哈希算法名称。
hash_copy()
hash_copy — 拷贝哈希运算上下文
语法:hash_copy($context)
$context:由 hash_init() 函数返回的哈希运算上下文。
返回值:返回哈希运算上下文的一个复本。
hash_equals()
hash_equals — 可防止时序攻击的字符串比较
语法:hash_equals($known_string, $user_string)
$known_string:已知长度的、要参与比较的 string
$user_string:用户提供的字符串
返回值:当两个字符串相等时返回 true,否则返回 false。
hash_file()
hash_file — 给指定文件的内容生成哈希值
语法:hash_file($algo,$filename,$binary = false)
$algo:要使用的哈希算法的名称(例如:"md5","sha256","haval160,4" 等)。 可以在 hash_algos() 中查看当前支持的算法。
$filename:要进行哈希运算的文件位置的 URL ;支持 fopen 封装协议。
$binary:设置为 true 时,输出原始二进制数据。 设置为 false 时,输出小写的十六进制字符串。
返回值:如果 binary 设置为 true, 则返回原始二进制数据表示的信息摘要, 否则返回十六进制小写字符串格式表示的信息摘要。
hash_final()
hash_final — 结束增量哈希,并且返回摘要结果
语法:hash_final($context,$raw_output = false)
$context:hash_init() 函数返回的哈希运算上下文资源。
$raw_output:设置为 true,输出格式为原始的二进制数据。 设置为 false,输出小写的 16 进制字符串。
返回值:如果 raw_output 设置为 true, 则返回原始二进制数据表示的信息摘要, 否则返回 16 进制小写字符串格式表示的信息摘要。
hash_init()
hash_init — 初始化增量哈希运算上下文
语法:hash_init($algo,$options = 0, $key = null)
$context : Le contexte de l'opération de hachage renvoyé par la fonction hash_init().
Valeur de retour : renvoie une copie du contexte de l'opération de hachage.
hash_equals($known_string, $user_string)
hash_file($algo,$filename,$binary = false)
🎜🎜🎜🎜 $algo : Le nom de l'algorithme de hachage à utiliser (par exemple : "md5", "sha256", "haval160,4", etc.). Vous pouvez vérifier les algorithmes actuellement pris en charge dans hash_algos(). 🎜🎜🎜🎜$filename : URL de l'emplacement du fichier à hacher ; prend en charge le protocole d'encapsulation fopen. 🎜🎜🎜🎜$binary : lorsqu'elle est définie sur true, les données binaires originales sont sorties. Lorsqu'il est défini sur false, une chaîne hexadécimale minuscule est générée. 🎜🎜🎜🎜Valeur de retour : si binaire est défini sur vrai, le résumé des informations représenté par les données binaires d'origine est renvoyé, sinon le résumé des informations représenté par le format de chaîne hexadécimale minuscule est renvoyé. 🎜🎜🎜hash_final()🎜🎜🎜hash_final - Termine le hachage incrémentiel et renvoie le résultat récapitulatif🎜🎜Syntaxe : hash_final($context,$raw_output = false)
🎜🎜🎜🎜$context: hash_init ( ) La ressource de contexte d'opération de hachage renvoyée par la fonction. 🎜🎜🎜🎜$raw_output : défini sur true, le format de sortie est des données binaires brutes. Définissez sur false pour générer une chaîne hexadécimale minuscule. 🎜🎜🎜🎜🎜Valeur de retour : si raw_output est défini sur true, le résumé des informations représenté par les données binaires d'origine est renvoyé, sinon le résumé des informations représenté par le format de chaîne minuscule hexadécimale est renvoyé. 🎜🎜🎜hash_init()🎜🎜🎜hash_init — Initialise le contexte de l'opération de hachage incrémentiel🎜🎜Syntaxe : hash_init($algo,$options = 0, $key = null)
🎜🎜🎜🎜$algo : Le nom de l'algorithme de hachage à utiliser, par exemple : "md5", "sha256", "haval160,4", etc. Pour savoir comment obtenir une liste des algorithmes pris en charge, consultez hash_algos(). 🎜🎜🎜🎜$options : paramètres facultatifs pour le hachage. Actuellement, une seule option est prise en charge : HASH_HMAC. Lors de la spécification de cette option, le paramètre key doit être spécifié. 🎜🎜🎜🎜🎜$key : Lorsque le paramètre options est HASH_HMAC, utilisez ce paramètre pour transmettre la clé partagée pour le hachage HMAC. 🎜🎜Valeur de retour : renvoie l'objet de contexte d'opération de hachage à utiliser par les fonctions hash_update(), hash_update_stream(), hash_update_file() et hash_final().
. . . .
Apprentissage recommandé : "Tutoriel vidéo PHP"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!