Maison développement back-end tutoriel php 深入密码加salt原理的分析_php技巧

深入密码加salt原理的分析_php技巧

May 17, 2016 am 09:02 AM
密码

我们知道,如果直接对密码进行散列,那么黑客可以对通过获得这个密码散列值,然后通过查散列值字典(例如MD5密码破解网站),得到某用户的密码。

加Salt可以一定程度上解决这一问题。所谓加Salt方法,就是加点“佐料”。其基本想法是这样的:当用户首次提供密码时(通常是注册时),由系统自动往这个密码里撒一些“佐料”,然后再散列。而当用户登录时,系统为用户提供的代码撒上同样的“佐料”,然后散列,再比较散列值,已确定密码是否正确。

这里的“佐料”被称作“Salt值”,这个值是由系统随机生成的,并且只有系统知道。这样,即便两个用户使用了同一个密码,由于系统为它们生成的salt值不同,他们的散列值也是不同的。即便黑客可以通过自己的密码和自己生成的散列值来找具有特定密码的用户,但这个几率太小了(密码和salt值都得和黑客使用的一样才行)。

下面以PHP示例,讲解md5($pass.$salt)加密函数。

复制代码 代码如下:

function hash($a) {
    $salt=”Random_KUGBJVY”;  //定义一个salt值,程序员规定下来的随机字符串
    $b=$a.$salt;  //把密码和salt连接
    $b=md5($b);  //执行MD5散列
    return $b;  //返回散列   
}
?>

调用方式:$new_password=hash($_POST[password]);   //这里接受表单提交值,并进行加密
 
下面详细介绍一下加Salt散列的过程。介绍之前先强调一点,前面说过,验证密码时要使用和最初散列密码时使用“相同的”佐料。所以Salt值是要存放在数据库里的。

用户注册时,

用户输入【账号】和【密码】(以及其他用户信息);系统为用户生成【Salt值】;系统将【Salt值】和【用户密码】连接到一起;对连接后的值进行散列,得到【Hash值】;将【Hash值1】和【Salt值】分别放到数据库中。
用户登录时,

用户输入【账号】和【密码】;系统通过用户名找到与之对应的【Hash值】和【Salt值】;系统将【Salt值】和【用户输入的密码】连接到一起;对连接后的值进行散列,得到【Hash值2】(注意是即时运算出来的值);比较【Hash值1】和【Hash值2】是否相等,相等则表示密码正确,否则表示密码错误。
有时候,为了减轻开发压力,程序员会统一使用一个salt值(储存在某个地方),而不是每个用户都生成私有的salt值。
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

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

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)

Comment résoudre le problème selon lequel Windows 11 vous demande de saisir le nom d'utilisateur et le mot de passe de l'administrateur pour continuer ? Comment résoudre le problème selon lequel Windows 11 vous demande de saisir le nom d'utilisateur et le mot de passe de l'administrateur pour continuer ? Apr 11, 2024 am 09:10 AM

Lorsque vous utilisez le système Win11, vous rencontrerez parfois une invite vous demandant de saisir le nom d'utilisateur et le mot de passe de l'administrateur. Cet article explique comment gérer cette situation. Méthode 1 : 1. Cliquez sur [Logo Windows], puis appuyez sur [Maj+Redémarrer] pour passer en mode sans échec ou entrez en mode sans échec de cette façon : cliquez sur le menu Démarrer et sélectionnez Paramètres ; Sélectionnez « Mise à jour et sécurité » ; sélectionnez « Redémarrer maintenant » dans « Récupération » après avoir redémarré et saisi les options, sélectionnez - Dépannage - Options avancées - Paramètres de démarrage -&mdash.

Comment définir le mot de passe WiFi du routeur à l'aide d'un téléphone mobile (en utilisant le téléphone mobile comme outil) Comment définir le mot de passe WiFi du routeur à l'aide d'un téléphone mobile (en utilisant le téléphone mobile comme outil) Apr 24, 2024 pm 06:04 PM

Les réseaux sans fil sont devenus un élément indispensable de la vie des gens dans le monde numérique d'aujourd'hui. Il est toutefois particulièrement important de protéger la sécurité des réseaux sans fil personnels. Définir un mot de passe fort est essentiel pour garantir que votre réseau WiFi ne puisse pas être piraté par d'autres. Pour assurer la sécurité de votre réseau, cet article vous présentera en détail comment utiliser votre téléphone mobile pour modifier le mot de passe WiFi du routeur. 1. Ouvrez la page de gestion du routeur - Ouvrez la page de gestion du routeur dans le navigateur mobile et saisissez l'adresse IP par défaut du routeur. 2. Entrez le nom d'utilisateur et le mot de passe de l'administrateur - Pour y accéder, entrez le nom d'utilisateur et le mot de passe de l'administrateur corrects dans la page de connexion. 3. Accédez à la page des paramètres sans fil – recherchez et cliquez pour accéder à la page des paramètres sans fil, dans la page de gestion du routeur. 4. Trouvez le Wi-Fi actuel

Tutoriel pour changer le mot de passe wifi sur téléphone mobile (opération simple) Tutoriel pour changer le mot de passe wifi sur téléphone mobile (opération simple) Apr 26, 2024 pm 06:25 PM

Les réseaux sans fil sont devenus un élément indispensable de nos vies avec le développement rapide d'Internet. Afin de protéger les informations personnelles et la sécurité du réseau, il est cependant très important de changer régulièrement votre mot de passe wifi. Pour vous aider à mieux protéger la sécurité de votre réseau domestique, cet article vous présentera un tutoriel détaillé sur la façon d'utiliser votre téléphone mobile pour changer votre mot de passe WiFi. 1. Comprenez l'importance des mots de passe Wi-Fi. Les mots de passe Wi-Fi constituent la première ligne de défense pour protéger les informations personnelles et la sécurité du réseau. À l'ère d'Internet, comprendre son importance permet de mieux comprendre pourquoi vous devez changer régulièrement votre mot de passe. 2. Confirmez que le téléphone est connecté au wifi. Tout d'abord, assurez-vous que le téléphone est connecté au réseau wifi dont vous souhaitez modifier le mot de passe avant de modifier le mot de passe wifi. 3. Ouvrez le menu des paramètres du téléphone et accédez au menu des paramètres du téléphone.

Comment utiliser Passkey pour votre compte Microsoft Comment utiliser Passkey pour votre compte Microsoft Feb 19, 2024 am 11:03 AM

Passkey est un moyen de connexion plus avancé et plus sécurisé et peut être utilisé avec un compte Microsoft. Cet article vous expliquera comment utiliser Passkey dans votre compte Microsoft, vous présentera ses avantages et les différences avec les mots de passe. Avant d'entrer dans les détails, nous soulignons que si vous oubliez fréquemment vos mots de passe ou si vous devez vous connecter rapidement, Passkey sera généralement mieux pour vous. Qu'est-ce que le mot de passe ? En quoi sont-ils différents des mots de passe ? Les mots de passe constituent une méthode d'authentification avancée et sécurisée qui peut remplacer les connexions par mot de passe traditionnelles. Chaque application possède une clé unique, garantissant la sécurité et empêchant les menaces telles que le phishing. Les utilisateurs peuvent confirmer leur identité par e-mail et mot de passe, ou utiliser la reconnaissance faciale, l'empreinte digitale ou la clé de sécurité.

Mot de passe incorrect, méfiez-vous de l'avertissement BitLocker Mot de passe incorrect, méfiez-vous de l'avertissement BitLocker Mar 26, 2024 am 09:41 AM

Cet article explique comment résoudre le problème des mots de passe erronés, en particulier la nécessité d'être prudent lors du traitement des avertissements BitLocker. Cet avertissement est déclenché lorsqu'un mot de passe incorrect est saisi plusieurs fois dans BitLocker pour déverrouiller le lecteur. Habituellement, cet avertissement se produit car le système dispose d'une politique qui limite les tentatives de connexion incorrectes (généralement trois tentatives de connexion sont autorisées). Dans ce cas, l'utilisateur recevra un message d'avertissement approprié. Le message d'avertissement complet est le suivant : Le mot de passe saisi est incorrect. Veuillez noter que la saisie continue de mots de passe incorrects entraînera le verrouillage du compte afin de protéger la sécurité de vos données. Si vous devez déverrouiller votre compte, vous devrez utiliser une clé de récupération BitLocker. Le mot de passe est incorrect, méfiez-vous de l'avertissement BitLocker que vous recevez lorsque vous vous connectez à votre ordinateur

Comment supprimer le mot de passe de l'écran de verrouillage de Windows 10 maintenant Comment supprimer le mot de passe de l'écran de verrouillage de Windows 10 maintenant Jan 09, 2024 pm 03:33 PM

Après la mise à niveau du système win101909, certains amis voudront peut-être annuler le mot de passe de l'écran de verrouillage de leur ordinateur. Si vous ne savez pas quoi faire, je pense que nous pouvons trouver les options de compte dans la fenêtre des paramètres de l'ordinateur. Jetons un coup d'œil aux méthodes spécifiques. Comment annuler le mot de passe de l'écran de verrouillage dans win101909 : 1. Appuyez d'abord sur Win+I pour ouvrir l'interface des paramètres. 2. Recherchez ensuite l'option de connexion au compte, puis définissez-la comme indiqué sur la figure. Comment annuler la connexion par mot de passe à la mise sous tension dans win101909 : 1. Exécutez regedit pendant l'exécution pour ouvrir le registre et accédez au chemin suivant : HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\Cu

Comment réparer le message « iPhone non disponible » Comment réparer le message « iPhone non disponible » Sep 17, 2023 pm 09:25 PM

Comment fonctionne la fonction de sécurité « iPhone n'est pas disponible » ? Le mécanisme de base qui déclenche le message « iPhone non disponible » est ancré dans les fonctionnalités de sécurité de la conception du système, qui suivent chaque saisie incorrecte d'un mot de passe. Cette protection passe à la vitesse supérieure dès la cinquième tentative incorrecte de déverrouillage de l'appareil. Une fois cette étape atteinte, l'iPhone définit une période de verrouillage temporaire d'une minute, pendant laquelle toute tentative supplémentaire de saisie du mot de passe devient vaine. Cette durée de verrouillage n’est pas statique mais suit un modèle croissant. Plus précisément, après la cinquième tentative de mot de passe, chaque tentative de mot de passe incorrecte entraînera une augmentation du délai de verrouillage d'une minute. Par exemple, la sixième tentative incorrecte entraînera un verrouillage de 2 minutes, et la septième tentative incorrecte entraînera un verrouillage de 3 minutes.

Que dois-je faire si mon mot de passe Win10 ne répond pas aux exigences de la politique de mot de passe ? Que faire si le mot de passe de mon ordinateur ne répond pas aux exigences de la politique ? Que dois-je faire si mon mot de passe Win10 ne répond pas aux exigences de la politique de mot de passe ? Que faire si le mot de passe de mon ordinateur ne répond pas aux exigences de la politique ? Jun 25, 2024 pm 04:59 PM

Dans le système Windows 10, la politique de mot de passe est un ensemble de règles de sécurité visant à garantir que les mots de passe définis par les utilisateurs répondent à certaines exigences de force et de complexité. Si le système vous indique que votre mot de passe ne répond pas aux exigences de la politique de mot de passe, cela signifie généralement que votre mot de passe est défini. Le mot de passe ne répond pas aux exigences définies par les normes Microsoft en matière de complexité, de longueur ou de types de caractères, alors comment éviter cela ? Les utilisateurs peuvent trouver directement la politique de mot de passe sous la politique de l'ordinateur local pour effectuer des opérations. Jetons un coup d'œil ci-dessous. Solutions qui ne sont pas conformes aux spécifications de la politique de mot de passe : Modifier la longueur du mot de passe : Selon les exigences de la politique de mot de passe, nous pouvons essayer d'augmenter la longueur du mot de passe, par exemple en changeant le mot de passe d'origine à 6 chiffres en 8 chiffres ou plus. Ajoutez des caractères spéciaux : les politiques de mot de passe nécessitent souvent l'inclusion de caractères spéciaux tels que @, #, $, etc. je

See all articles