Page 1 sur 1
Système de votes : IP ou cookies ?
Posté : 05 juin 2011, 11:36
par street51
Bonjour, je suis en train de réaliser un système de votes, et j'aimerais avoir votre avis : quelle protection choisir entre l'adresse IP et les cookies ?
Je sais que l'idéal serait un système de login, mais je veux que ça reste le plus simple possible pour l'utilisateur...
Merci pour vos avis

Re: Système de votes : IP ou cookies ?
Posté : 05 juin 2011, 12:15
par nhachet
L'IP n'est pas un indicateur fiable puisqu'il peut changer d'un jour à l'autre. Il peut également y avoir plusieurs personnes sur la même IP (c'est de plus en plus le cas). De même les cookies peuvent tout à fait être effacés par l'utilisateur. Si tu souhaites un niveau de sécurité important, il n'y a que le certificat numérique.
Re: Système de votes : IP ou cookies ?
Posté : 05 juin 2011, 12:19
par Ryle
Le problème de l'IP, c'est que tu n'as pas nécessairement la même adresse à chaque connexion et que dans certains établissements (écoles, bureaux ...), tu peux avoir une seule ip pour plusieurs utilisateurs...
Le problème du cookie, c'est que ça se refuse et/ou s'efface, et qu'il est possible de changer d'ordinateur ou de session...
Donc effectivement, la solution idéale c'est d'authentifier l'utilisateur pour savoir s'il a déjà voté. Mais ça ne reste qu'un vote donc tu n'as pas forcément besoin d'une sécurité maximale
Côté réalisation, le système de cookie sera le plus simple à mettre en oeuvre (à ajouter et à contrôler), mais tu peux tout à fait combiner les deux

Re: Système de votes : IP ou cookies ?
Posté : 05 juin 2011, 12:20
par moogli
salut,
les deux n'étant pas vraiment fiable je dirais les deux car dans la plus part des cas cela suffira
tu peux placer un cookie avec un "hash" et sauvegarder l'ip, tu regarde ensuite si l'un ou l'autre existe dans la tables des réponses.
tu peux aussi demander une adresse les gens n'en n'ont pas 400 ça limite un peu les soucis

(après faut vérifier le motif, le mieux serais de valider le vote avec un lien, mais je pense que tu va estimer cela trop contraignant ?).
@+
edit : nhachet : certificat numérique, genre en créer un par vote ? (comme les impots ^^), mais tu peux très bien le supprimer ou simplement changer de navigateur
bref pas de système 100% fiable :/
Re: Système de votes : IP ou cookies ?
Posté : 05 juin 2011, 14:57
par nhachet
@moogli : ouaip comme les impôts. Disons que pour une sécurité optimale, il faudrait coupler un système d'authentification classique login/mot de passe avec un certificat numérique installé sur ton navigateur.
Maintenant je ne suis pas sûr que ce soit la problématique de street51. Perso pour des votes simples (genre +1 / j'aime / etc.), je calcule un hash des données de requêtes (tout simplement un md5($_SERVER['HTTP_USER_AGENT'] . $_SERVER['HTTP_HOST']); que je stocke en base et que je teste lors de l'ajout d'un nouveau vote.
Re: Système de votes : IP ou cookies ?
Posté : 06 juin 2011, 17:37
par street51
Merci pour vos réponses, je vais donc conserver le système par cookies, même s'il est très facilement contournable.
Peut-être que j'y ajouterai un contrôle de l'IP, stockée dans une table remise à zéro toutes les heures par exemple.
nhachet, en quoi consiste ta méthode ?
Re: Système de votes : IP ou cookies ?
Posté : 06 juin 2011, 19:29
par nhachet
L'idée est de stocker un hash de la concaténation de l'adresse IP cliente et de la signature du navigateur.
Re: Système de votes : IP ou cookies ?
Posté : 06 juin 2011, 22:48
par street51
Merci, ça me semble pas mal comme solution, je vais faire ça.

Re: Système de votes : IP ou cookies ?
Posté : 23 juin 2011, 10:52
par street51
Je reviens car le même problème se pose pour moi, mais avec l'iPhone cette fois-ci.
Existe-t-il un moyen d'identifier un iPhone ? Car j'imagine que la signature du navigateur ne doit pas changer d'un utilisateur à un autre, et je ne sais pas non plus comment fonctionne l'attribution de l'IP...

Re: Système de votes : IP ou cookies ?
Posté : 23 juin 2011, 11:14
par Mazarini
Bonjour,
La signature du navigateur est propre à chaque version de navigateur. 2 utilisateurs utilisant IE9 par exemple auront la même signature. Cependant, il est possible de modifier la signature de son navigateur pour faire croire que l'on en utilise une autre.
Pour l'IP, en général le FAI attribue une adresse lors de la connexion à son réseau. Cette adresse est fournie pour une certaine durée. A la fin de la durée une demande est renvoyée pour renouvellement. Lors du renouvellement une autre adresse IP peut être attribuée. Souvent la même adresse est redonnée systématiquement mais il n'y a jamais de certitude sauf contrat spécifique d'IP fixe.
Je dirai que pour frauder, il suffit de redémarrer sa box et d'effacer les cookies.
Dans le cas de gestion via des utilisateurs, ils sont identifiés par leur adresse mail, mais rien n'empêche le propriétaire d'un nom de domaine de s'inscrire une infinité de fois sans trop de difficulté.
Re: Système de votes : IP ou cookies ?
Posté : 23 juin 2011, 15:07
par street51
Merci, mais en fait j'ai réglé ce problème. mon souci concerne maintenant l'identification individuelle de chaque iPhone.

Re: Système de votes : IP ou cookies ?
Posté : 23 juin 2011, 15:17
par Mazarini
Les iphones n'ont pas d'adresse IP ? et n'acceptent pas les cookies ?
Fais une page :
<?PHP
phpinfo();
?>
Et demande à un possesseur d'Iphone de l'appeler. Tu verras tout ce qui est dispo pour l'identifier.
Re: Système de votes : IP ou cookies ?
Posté : 23 juin 2011, 15:55
par moogli
le seul truc exploitable c'est le $_SERVER['HTTP_USER_AGENT'] et de chercher iphone dedans
par contre tu pourra différencier un navigateur sur iphone (par défaut a voir sur d'autre navigateur comme opéra) mais pas différencier deux tel différents (voir info de mazarini).
extrait du phpinfo :
@+
Re: Système de votes : IP ou cookies ?
Posté : 23 juin 2011, 16:52
par street51
Je vais faire un hash de $_SERVER['HTTP_USER_AGENT'] et $_SERVER['REMOTE_ADDR']; pour les iPhone, en espérant que ce soit efficace pour distinguer deux appareils différents. Merci pour vos réponses
