6
votes

Faire une connexion sécurisée

J'ai essayé de créer une connexion sécurisée pour mon site que je développe.

Je ne peux tout simplement pas le faire fonctionner, j'utilise des bases de données MySQL avec PHP.

Je peux faire le formulaire pour ajouter l'utilisateur et leurs informations à la base de données, mais je n'arrive pas à le faire fonctionner avec le login.

Quel type de cryptage est utilisé avec HTML ?

Comment puis-je garder l'utilisateur connecté tout au long de leur visite sur mon site?

I Comment puis-je vérifier en toute sécurité s'il s'agit du bon mot de passe correspondant au nom d'utilisateur?

J'ai fait PHP pour peut-être un an maintenant, je n'ai pas encore appris cette partie, donc ce serait bien de savoir.


1 commentaires

Je ne sais pas pourquoi tu as eu un bowvote. +1


4 Réponses :


11
votes

Quel type de cryptage est utilisé avec HTML ??

aucun. L'entrée est juste masquée pour se protéger contre "en regardant les attaques du moniteur".

Si vous voulez une sécurité, transmettez vos données sur https (http avec SSL).

Comment puis-je garder l'utilisateur connecté tout au long de leur visite sur mon site?

La plupart des gens utilisent des cookies.

i Comment puis-je vérifier en toute sécurité s'il s'agit du bon mot de passe correspondant au nom d'utilisateur ??

sécurisé?

N'utilisez pas de serveur partagé. Suivez les étapes normales pour maintenir les données sur ce serveur sécurisé. Stockez les mots de passe comme des haltes, pas comme un texte brut.

chèque?

Convertissez le mot de passe soumis au hachage correspondant, puis comparez comme normal. En supposant que vous stockiez les données dans une base de données, sélectionnez simplement à partir des utilisateurs où User =? Et mot de passe =? et compter le nombre de lignes que vous recevez.


4 commentaires

Donc, un serveur partagé pourrait-il inclure les bases de données MySQL que Godaddy fournit? Aussi comment puis-je créer mon site Web https au lieu de http, implique-t-il SSL?


Je ne peux pas commenter la configuration des systèmes Godaddy. J'ai entendu assez d'histoires d'horreur sur cette entreprise pour ne jamais aller près d'eux. Pour utiliser HTTPS, vous achetez un certificat SSL, puis installez-le ... et comment vous faites cela dépend de votre serveur.


Alors, connaissez-vous des problèmes majeurs avec Godaddy B4, je reçois mon site complètement ??


J'ai vu des serveurs DNS de Godaddy Croak une ou deux fois et chaque fois que le DNS a fini par défaut sur un site porno.



2
votes

Je vais aborder la partie de protection par mot de passe de votre question.

Il n'y a pas de cryptage intégré avec le type d'entrée de mot de passe. Le navigateur le soumettra en tant que texte brut comme tout le reste. Il existe deux façons de protéger le mot de passe.

Le premier consiste à configurer un Système de défi / réponse mais cela nécessitera JavaScript pour fonctionner. Fondamentalement, vous prenez le mot de passe de l'utilisateur, appliquez une fonction de hachage si c'est ainsi que celle-ci est stockée sur le serveur, vous prenez un jeton de défi du serveur et de sel de la valeur du mot de passe pour un nouveau hachage. Le serveur prendra la valeur du mot de passe et appliquera également le défi. S'ils correspondent au mot de passe est correct et que quiconque n'a aucun moyen de savoir quel était le mot de passe réel. Cela nécessite JavaScript car le hachage doit être produit du côté du client si cette approche doit être efficace.

Une autre option simple, plus simple, doit nécessiter des HTTPS pour la partie de connexion du site.


0 commentaires


0
votes

Les entrées de mot de passe ne sont pas cryptées. Si vous ne voulez pas stocker des mots de passe en clair (comme retourné par le formulaire), vous devez exécuter l'une des nombreuses fonctions fournies par PHP et MySQL. Découvrez PHP's MD5 , SHA1 ou MySQL's chiffrer pour stocker des mots de passe.

Ensuite, pour vérifier si elles sont entrées dans le bon mot de passe pour vous connecter, vous pouvez utiliser la méthode de cryptage sur leur entrée, récupérer le mot de passe haché de la base de données et les comparer. (Aussi, regarde dans $ _session variable. ou Setcookie ()


0 commentaires