Maison développement back-end tutoriel php Créer une signature à partir de Hash_hmac() et Sha256 en PHP

Créer une signature à partir de Hash_hmac() et Sha256 en PHP

Feb 29, 2024 pm 02:34 PM
php编程 后端开发 安全传输

En PHP, c'est une pratique de sécurité courante d'utiliser la fonction Hash_hmac() en combinaison avec l'algorithme Sha256 pour créer des signatures. Cette méthode peut aider à vérifier l’intégrité et l’authenticité des données pendant la transmission des données et à empêcher que les données soient falsifiées ou falsifiées. En combinant Hash_hmac() et Sha256, un hachage sécurisé basé sur une clé peut être généré, garantissant une transmission et un traitement sécurisés des données. Dans cet article, nous examinerons en profondeur comment utiliser Hash_hmac() et Sha256 en PHP pour créer des signatures, et comment appliquer cette approche pour améliorer la sécurité des données.

Nous allons vous montrer comment utiliser hash_hmacsha256 加密器来创建安全签名, que vous pouvez stocker dans une base de données ou utiliser dans votre formulaire de connexion.


fonction en hash_hmac()php

hash_hmac() 创建一个字母数字键控的秘密哈希值。它利用称为 HMAC Créez un hachage secret à clé alphanumérique. Il utilise une technologie d'authentification cryptographique appelée méthode HMAC.

Grammaire :

hash_hmac($alGo, $data, $key, $binary = false);
Copier après la connexion
  1. $algo 是 hash_hmac 参数之一,用作签名秘密键控哈希值 (String).
  2. $data, une valeur de hachage (généralement le mot de passe de l'utilisateur). Il peut être alphanumérique.
  3. $key 是从 HMAC méthode générée, qui est la clé que vous obtenez de la fonction, et d'autres utilisations de programmation.
  4. Le dernier paramètre $binary est une valeur binaire.

Il lance un hex minuscule sur TRUE 时返回原始数据,并在 FALSE .


Utiliser hash_hmac()sha256 et sha256

en PHP

Exemple :

<?php
//sha256 is a $algo
$PassWord= &#39;ThisIS123PasswORD&#39; ; //data
$secret ="ABCabc"; //$key
//false is bool value to check whether the method works or not
$hash_it = hash_hmac("sha256", utf8_encode($Password), $secret, false);//all four parameters
if(!$hash_it){ //checks true or false
	echo "Password was not encrypted!";
}
echo "Your encrypted signature is:<b> &#39;.$hash_it.&#39; </b>";
?>
Copier après la connexion

Résultat :

Your encrypted signature is: &#39;.46e9757dc98f478c28f035cfa871dbd19b5a2bf8273225191bcca78801304813
Copier après la connexion

Utilisez hash_hmac()base64_encode() et base64_encode()

Si vous souhaitez que vos signatures cryptographiques soient plus sécurisées, vous pouvez également exécuter l'extrait de code suivant.

Exemple :

<?php
$my_sign = "abc123";
$key = TRUE;
 $base64_encode = base64_encode(hash_hmac(&#39;sha256&#39;, $my_sign, $key, true));
if(!$base64_encode){
echo "Your signature with the base64_decode(hash_hmac()); failed";
}
else{
echo "Your base64_decode(hash_hmac()); encrypted signature is is:<b> $base64_encode.&#39; </b>";
}
?>
Copier après la connexion

Résultat :

Your base64_decode(hash_hmac()); encrypted signature is is: &#39;.00g0QMQlnluXxijqot60WZf6InDi07b/Mb5lL7eVZ34
Copier après la connexion

Utilisez hash_hmac()sha256 并应用 hex2bin/bin2hex et sha256 en PHP et appliquez la transformation hex2bin/bin2hex

  • hex2bi&#110;() - Cette fonction décode une chaîne binaire qui a été codée en hexadécimal.
  • bin2he&#120;() - 使用 bin2he&#120;() La méthode convertit la chaîne ASCII en valeur hexadécimale.

Disons que vous disposez de données financières critiques que vous souhaitez chiffrer et créer une clé pour l'utilisateur.

Exemple :

<?php
$createhashmackey = "2974924872949278487322348237749823";
$bank_acc = "029480247299262947328749287";
$current_bal = $sum * 10000 / 450;
$bank_locker_no = &#39;AC54-A76X&#39;;
$last_deposit= $when;
$se = hex2bi&#110;($createhashmackey);
$create_his_signature = $bank_acc . $current_bal. $bank_locker_no . $last_deposit;
$enigma = bin2he&#120;(hash_hmac(&#39;sha256&#39;, $create_his_signature, $se));
echo "The secret signature is.$enigma.";
Copier après la connexion

Résultat :

The secret signature is.33633066323533383537663538323937373536393764396530343661663336666438636435363631383934363864383966316133633433633965343234336233.
Copier après la connexion

Il s'agit du résultat de tous les exemples de code de cet article.

在 PHP 中从 Hash_hmac() 和 Sha256 创建签名

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Lignes de formatage PHP en CSV et écriture du pointeur de fichier Lignes de formatage PHP en CSV et écriture du pointeur de fichier Mar 22, 2024 am 09:00 AM

Cet article expliquera en détail comment PHP formate les lignes en CSV et écrit les pointeurs de fichiers. Je pense que c'est assez pratique, je le partage donc avec vous comme référence. J'espère que vous pourrez gagner quelque chose après avoir lu cet article. Formater les lignes au format CSV et écrire dans le pointeur de fichier Étape 1 : Ouvrir le pointeur de fichier $file=fopen("path/to/file.csv","w"); Étape 2 : Convertir les lignes en chaîne CSV à l'aide de la fonction fputcsv( ) convertit les lignes en chaînes CSV. La fonction accepte les paramètres suivants : $file : pointeur de fichier $fields : champs CSV sous forme de tableau $delimiter : délimiteur de champ (facultatif) $enclosure : guillemets de champ (

PHP modifie l'umask actuel PHP modifie l'umask actuel Mar 22, 2024 am 08:41 AM

Cet article expliquera en détail la modification de l'umask actuel en PHP. L'éditeur pense que c'est assez pratique, je le partage donc avec vous comme référence. J'espère que vous pourrez gagner quelque chose après avoir lu cet article. Présentation de PHP modifiant l'umask actuel umask est une fonction php utilisée pour définir les autorisations de fichier par défaut pour les fichiers et répertoires nouvellement créés. Il accepte un argument, qui est un nombre octal représentant l'autorisation de bloquer. Par exemple, pour empêcher l'autorisation d'écriture sur les fichiers nouvellement créés, vous utiliserez 002. Méthodes pour modifier l'umask Il existe deux manières de modifier l'umask actuel en PHP : En utilisant la fonction umask() : La fonction umask() modifie directement l'umask actuel. Sa syntaxe est : intumas

Trois secrets pour déployer de grands modèles dans le cloud Trois secrets pour déployer de grands modèles dans le cloud Apr 24, 2024 pm 03:00 PM

Compilation|Produit par Xingxuan|51CTO Technology Stack (ID WeChat : blog51cto) Au cours des deux dernières années, j'ai été davantage impliqué dans des projets d'IA générative utilisant de grands modèles de langage (LLM) plutôt que des systèmes traditionnels. Le cloud computing sans serveur commence à me manquer. Leurs applications vont de l’amélioration de l’IA conversationnelle à la fourniture de solutions d’analyse complexes pour diverses industries, ainsi que de nombreuses autres fonctionnalités. De nombreuses entreprises déploient ces modèles sur des plates-formes cloud, car les fournisseurs de cloud public fournissent déjà un écosystème prêt à l'emploi et constituent la voie de moindre résistance. Cependant, cela n’est pas bon marché. Le cloud offre également d'autres avantages tels que l'évolutivité, l'efficacité et des capacités informatiques avancées (GPU disponibles sur demande). Il existe certains aspects peu connus du déploiement de LLM sur les plateformes de cloud public

PHP calcule le hachage MD5 du fichier PHP calcule le hachage MD5 du fichier Mar 21, 2024 pm 01:42 PM

Cet article expliquera en détail le calcul par PHP du hachage MD5 des fichiers. L'éditeur pense que c'est assez pratique, je le partage donc avec vous comme référence. J'espère que vous pourrez gagner quelque chose après avoir lu cet article. PHP calcule le hachage MD5 d'un fichier. MD5 (MessageDigest5) est un algorithme de chiffrement unidirectionnel qui convertit les messages de longueur arbitraire en une valeur de hachage de 128 bits de longueur fixe. Il est largement utilisé pour garantir l’intégrité des fichiers, vérifier l’authenticité des données et créer des signatures numériques. Calculer le hachage MD5 d'un fichier en PHP PHP propose plusieurs méthodes pour calculer le hachage MD5 d'un fichier : Utilisez la fonction md5_file() La fonction md5_file() calcule directement la valeur de hachage MD5 du fichier et renvoie une valeur de 32 caractères.

PHP renvoie un tableau avec les valeurs clés inversées PHP renvoie un tableau avec les valeurs clés inversées Mar 21, 2024 pm 02:10 PM

Cet article expliquera en détail comment PHP renvoie un tableau après avoir inversé la valeur de la clé. L'éditeur pense que c'est assez pratique, je le partage donc avec vous comme référence. J'espère que vous pourrez gagner quelque chose après avoir lu cet article. PHP Key Value Flip Array Key Value Flip est une opération sur un tableau qui échange les clés et les valeurs du tableau pour générer un nouveau tableau avec la clé d'origine comme valeur et la valeur d'origine comme clé. Méthode d'implémentation En PHP, vous pouvez effectuer un retournement clé-valeur d'un tableau via les méthodes suivantes : Fonction array_flip() : La fonction array_flip() est spécialement utilisée pour les opérations de retournement clé-valeur. Il reçoit un tableau en argument et renvoie un nouveau tableau avec les clés et les valeurs échangées. $original_array=[

PHP détermine si une clé spécifiée existe dans un tableau PHP détermine si une clé spécifiée existe dans un tableau Mar 21, 2024 pm 09:21 PM

Cet article expliquera en détail comment PHP détermine si une clé spécifiée existe dans un tableau. L'éditeur pense que c'est très pratique, je le partage donc avec vous comme référence. J'espère que vous pourrez gagner quelque chose après avoir lu cet article. PHP détermine si une clé spécifiée existe dans un tableau : En PHP, il existe de nombreuses façons de déterminer si une clé spécifiée existe dans un tableau : 1. Utilisez la fonction isset() : isset($array["key"]) Cette fonction renvoie une valeur booléenne, vraie si la clé spécifiée existe, fausse sinon. 2. Utilisez la fonction array_key_exists() : array_key_exists("key",$arr

Réponse PHP 401 : résoudre les erreurs non autorisées et améliorer la sécurité Réponse PHP 401 : résoudre les erreurs non autorisées et améliorer la sécurité Apr 09, 2024 pm 03:15 PM

En développement Web, une erreur 401 non autorisée signifie que le client n'est pas autorisé à accéder à une ressource spécifique. PHP fournit plusieurs méthodes de traitement : 1. Utiliser le code d'état HTTP 401 ; 2. Afficher la réponse JSON 3. Rediriger vers la page de connexion ; Pour améliorer la sécurité, vous pouvez prendre les mesures suivantes : 1. Utiliser HTTPS ; 2. Activer la protection CSRF ; 3. Implémenter la validation des entrées ; 4. Utiliser un cadre d'autorisation ;

Mar 22, 2024 pm 12:31 PM

Cet article expliquera en détail le codage numérique du message d'erreur renvoyé par PHP lors de l'opération Mysql précédente. L'éditeur pense que c'est assez pratique, je le partage donc avec vous comme référence. J'espère que vous pourrez gagner quelque chose après avoir lu cet article. . Utilisation de PHP pour renvoyer les informations d'erreur MySQL Introduction au codage numérique Lors du traitement des requêtes MySQL, vous pouvez rencontrer des erreurs. Afin de gérer efficacement ces erreurs, il est crucial de comprendre le codage numérique des messages d’erreur. Cet article vous guidera dans l'utilisation de php pour obtenir l'encodage numérique des messages d'erreur Mysql. Méthode d'obtention du codage numérique des informations d'erreur 1. mysqli_errno() La fonction mysqli_errno() renvoie le numéro d'erreur le plus récent de la connexion MySQL actuelle. La syntaxe est la suivante : $erro

See all articles