codefalse
Messages postés1123Date d'inscriptionmardi 8 janvier 2002StatutModérateurDernière intervention21 avril 2009
-
14 déc. 2007 à 00:10
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 2012
-
10 mars 2009 à 12:00
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 10 mars 2009 à 12:00
non, comme beaucoup de choses que j'ai faites et montres ici, je l'ai fait pour le defis, mais c'est un captcha assez peu accessible.
valbarel
Messages postés2Date d'inscriptionjeudi 5 mars 2009StatutMembreDernière intervention10 mars 2009 10 mars 2009 à 09:28
Bel objet mathématique. Répond-t-il aux besoins ?
J'ai de bons yeux donc pas de problèmes pour moi au niveau de la lisibilité de ton captcha 3D, dans la majorité des cas. Par contre, si l'on veut l'utiliser dans un site ouvert à tous, beaucoup n'arriveront pas à lire ce type de captcha (ou ne feront pas l'effort d'essayer la nouveauté). De plus, les mal-voyants ont besoin d'une version audio (on ne peut plus continuer à exclure les personnes différentes du web, entre autre).
C'est pourquoi je me demandais si tu avais testé le fameux reCAPTCHA de Carnegie Mellon University, version PHP. C'est une version avec un serveur dédié utilisant un couple (clef publique, clef privée). Le Défi image aide indirectement à numériser des livres (pour comprendre, lire http://recaptcha.net/) et le Défi audio existe en plusieurs langues, dont le français.
J'ai tout testé : du point de vu des fonctionnalités (réponses aux besoins), je n'ai pas (encore) trouvé mieux.
codefalse
Messages postés1123Date d'inscriptionmardi 8 janvier 2002StatutModérateurDernière intervention21 avril 20091 4 déc. 2008 à 19:09
J'avais fait à l'époque une traduction d'un blog sur divers tests sur les spams.
Ceci est ma version, mais vous trouverez dans ce post le lien vers la version originale :)
beubass
Messages postés7Date d'inscriptionmercredi 30 novembre 2005StatutMembreDernière intervention 4 décembre 2008 4 déc. 2008 à 16:59
ok, je te remercie pour l'info, discussion interressante.
Bonne journée à vous
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 4 déc. 2008 à 16:51
exactement
les robots floodeurs sont concus pour un formulaire bien precis, alors que les robots spammeurs se baladent et postent (parfois plusieurs fois sur la meme page d'ailleur...)
beubass
Messages postés7Date d'inscriptionmercredi 30 novembre 2005StatutMembreDernière intervention 4 décembre 2008 4 déc. 2008 à 16:40
Juste pour infos, en fait tu parametres ton robot afin d elui demander qu'elles champs remplir ?? si c'est le cas, effectivement, le simulateur de captcha n'est pas efficace.
Mais alors, qu'elle la diffréence entre un robot flooder et un spam-automatique ???
Dans le robot-flooder, tu cible un site bien précis et un spam-auto, il recherche automatiquement des sites avec formluaire sur la toile ???
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 4 déc. 2008 à 16:21
bien sur que non... si t'achetes un nom de domaine, alors t'as aucun probleme pour avoir autant d'adresses mails que tu veux...
les captchas ne contrent pas les floods fait par des humains (qui sont vraiment limites...) mais les captchas empechent les robots de flooder...
quand tu attaques un site, tu n'iras pas poster manuellement 50 000 messages, par contre, tu vas demander a un robot de le faire pour toi. et c'est la que mon captcha intervient.
beubass
Messages postés7Date d'inscriptionmercredi 30 novembre 2005StatutMembreDernière intervention 4 décembre 2008 4 déc. 2008 à 16:12
Et si derrière tout ça tu mets en place un système de validation d'inscription par envoie de mail, je pense que le flood est contré.
De plus, le captcha ne contre pas non plus le flood mon cher ami. Le système capatcha a été mis en place pour contre-carrer les attaques des bots, un point c'est tout.
Donc je pense que ce système est finalement le meilleur jusqu'a c'que les robots analyse le css. peut etre que c'est déjà le cas, je me suis pas encore suffisament penché sur la question.
Sincerement, ne prend pas mal tout ce que je dis. en fait, je fais actuellement de la veille technologique concernant le stechnologie du web.
C'est vraiment dans un but de recherche d'efficacité et d'accessibilité d'un point de vue developpeur et utilisateur.
codefalse
Messages postés1123Date d'inscriptionmardi 8 janvier 2002StatutModérateurDernière intervention21 avril 20091 4 déc. 2008 à 16:10
En effet si on prends en compte le flood, c'est une autre affaire :p
codefalse
Messages postés1123Date d'inscriptionmardi 8 janvier 2002StatutModérateurDernière intervention21 avril 20091 4 déc. 2008 à 16:10
@Beubass : j'avais aussi vu cette méthode. Elle comporte de gros avantages (notamment le fait de ne pas imposer à l'utilisateur des éléments supplémentaires futiles), mais si un robot s'attaque particulièrement à ton site, il va falloir ruser ! Il peux détecter quel champs à un css en display: none et ne pas le remplir.
Tu peux ensuite t'amuser à donner des noms aléatoires à tes champs, mémoriser en session quel champ appartient à quel valeur (zpoefqfsdfq = login), et du coup le bot ne pourra plus se baser sur le nom tel que "spam_captcha". Ce qui lui complique la tache.
Et plutot que lui mettre un display: none, tu devrais aussi lui mettre une position absolute et un top/left en -10000. Le bot doit-être vraiment doué pour se douter que le champ est hors limite ! :p
a voir !
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 4 déc. 2008 à 15:58
ta methode marche pour les spams automatiques (sauf si t'es developpeur d'un truc connu genre phpbb ou autre) mais pas pour le flood.
pour te proteger du flood, il te faut un VRAI captcha.
beubass
Messages postés7Date d'inscriptionmercredi 30 novembre 2005StatutMembreDernière intervention 4 décembre 2008 4 déc. 2008 à 15:41
Je te propose une alternative au captcha. apres des recherche sur le web, j'ai trouvé ceci :
Une astuce très simple pour simuler un CAPTCHA
En cherchant sur le Web une méthode pour implémenter un système CAPTCHA dans un formulaire, j’ai trouvé une solution très simple qui fonctionne très bien.
Il suffit d’ajouter dans son formulaire un champ du type :
Ensuite, dans votre CSS vous ajoutez :
.cfrm { display: none; }
Cette classe CSS va masquer le champ “host”, l’utilisateur final ne verra pas le champ dans le formulaire.
Lorsque le formulaire est posté, il suffit de vérifier que le champ “host” est vide. En effet, la plus part des robots rempliront ce champ. Ils ne s’apercevront pas que celui-ci ne fait pas parti du formulaire.
J’ai testé cette astuce sur plusieurs sites et le résultat est sans appel, 99% des posts effectués par les robots sont éliminés !!
-----
T'en pense quoi ???
ça m'a l'air vraiment efficace, tres simple a mettre en place, et surtout, non contraignant pour l'utilisateur.
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 4 déc. 2008 à 15:07
en fait, il y a des gens qui voient tres bien dans l'espace et qui sauront lire naturellement, sans efforts, ce captcha.
d'autres auront plus de mal...
beubass
Messages postés7Date d'inscriptionmercredi 30 novembre 2005StatutMembreDernière intervention 4 décembre 2008 4 déc. 2008 à 14:59
franchement coucou, peut etre que ton systèeme est fiable a 100%, c'est super, mais moi à ce moment la, je peu t'en faire un systeme fiable a 100%.
Je place un champ caché dans lequel je met une valeur, et apres je demande de deviner cette valeur.
sincerement, c'est illisible ton truc, on voit rien, on est obligé de généré 4 fois l'image pour avoir un texte qui peut etre décrypté a l'oeil.
On voit que tu maitrises bien la programmation, mais faut au final, ton truc est inutilisable.
le code c'est bien, mais faut penser aux utilisateurs...
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 22 nov. 2008 à 13:27
pour ca faut l'adapter a ton site.
j'ai mis test.php pour te montrer un exemple
laurentmerlin
Messages postés4Date d'inscriptionmardi 20 mai 2003StatutMembreDernière intervention20 novembre 2008 20 nov. 2008 à 00:03
encore merci pour le coup de main ;-)
mais j'ai un problème au niveau de la session je crois.
je reviens toujours sur la page proposant le captcha quelle que soit ma réponse.
pourrais-tu préciser ce que tu veux dire par
// VOUS DEVEZ INSERER ICI VOTRE CODE D'ENREGISTREMENT DE $txt et $rand EN SESSION.
merci,
Laurent.
laurentmerlin
Messages postés4Date d'inscriptionmardi 20 mai 2003StatutMembreDernière intervention20 novembre 2008 19 nov. 2008 à 23:41
ok, c'est bon. je sais pas pourquoi mais du texte c'était glissé dans la page captcha.php juste avant le début du code php ...
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 19 nov. 2008 à 23:33
Warning: Cannot modify header information - headers already sent by (output started at F:\users\httpdocs\captcha.php:1) in F:\users\httpdocs\captcha.php on line 159
t'as probablement mis qqch avant <?php
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 19 nov. 2008 à 23:32
le fichier s'ouvre avec win rar, mais il me reste cette erreur
Warning: Cannot modify header information - headers already sent by (output started at F:\users\httpdocs\captcha.php:1) in F:\users\httpdocs\captcha.php on line 159
besoin d'une petit coup de pouce ;-)
laurentmerlin
Messages postés4Date d'inscriptionmardi 20 mai 2003StatutMembreDernière intervention20 novembre 2008 19 nov. 2008 à 23:16
hello, il me manque les fichiers psf.
où puis-je les trouver ?
merci,
Laurent.
GillesWebmaster
Messages postés496Date d'inscriptionmercredi 30 juin 2004StatutMembreDernière intervention29 juillet 20091 5 août 2008 à 12:00
Gros effort tant au niveau programmation, que au niveau exécution du script pour un résultat mitigé puisque difficilement lisible!
Mais la technique reste parfaitement maîtrisée et très intéressante!
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 27 juin 2008 à 20:01
c'est pas tellement eux qui reprennent la technique...
sinon, un captcha ne doit pas bannir, le captcha ne fait que differencier un humain d'un bot, il ne ban pas.
pour la version handicapes, il faut plusieurs captchas, et pas un seul.
bobatheboss
Messages postés12Date d'inscriptiondimanche 19 janvier 2003StatutMembreDernière intervention30 septembre 2008 27 juin 2008 à 18:46
Bravo à toi !
Ton code est désormais utilisé par rapidshare.com !
(enfin il reprenne la technique en tout cas...)
Tu a touché les droit d'auteur au moins ;) ?
Bravo et merci de nous faire partager la technique.
PS: Compte tu continuer à développer ton code ?
Améliorer la sécurité, ajouter un permaban IP/FAI pour les bots, un ban minutes pour les nuls, un lecteur flash/wav ou mp3 pour les handicapés, un bouton actualisé, etc...
Donc 9/10 et je mettrais 10 quand il y aura une version complète de chez complète !
chankalan
Messages postés16Date d'inscriptionmercredi 2 mars 2005StatutMembreDernière intervention17 décembre 2007 17 déc. 2007 à 10:21
bravo !
je trouve assez illisible dans les paramétrages par défaut, mais en jouant un peu on arrive à faire ce qu'on veut... chapeau
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 15 déc. 2007 à 21:07
par fleme de chercher le nom de la constante
kankrelune
Messages postés1293Date d'inscriptionmardi 9 novembre 2004StatutMembreDernière intervention21 mai 2015 15 déc. 2007 à 20:55
Rien à redire si ce n'est une petite question... pourquoi définir une constante PI plutot qu'utiliser la constante M_PI... .. ?
@ tchaOo°
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 15 déc. 2007 à 06:45
heureusement que j'ai mis a jours, c'etait (un peu) fait a la rache avant :)
codefalse
Messages postés1123Date d'inscriptionmardi 8 janvier 2002StatutModérateurDernière intervention21 avril 20091 15 déc. 2007 à 00:16
Alors ca vaut vraiment le coup ! :)
10/10 :)
Surtout pour avoir fait une mise à jour :)
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 14 déc. 2007 à 22:56
pour l'arreter :
* @param $h2 la hauteur des ondes
il suffit de mettre ce parametre a 0, on obtient alors :
$matrice=getmatrice($alphabet, randstr(), 10, 0);
codefalse
Messages postés1123Date d'inscriptionmardi 8 janvier 2002StatutModérateurDernière intervention21 avril 20091 14 déc. 2007 à 22:47
yééé !! ca commence à etre vraiment très interessant !! :)
Bien joué d'avoir mis l'image à jour aussi ;)
Ca me plait déjà plus personnellement pour un captcha :)
Par contre, une question, est-ce que l'on peux arreter le voilage ?
# * @param $h2 la hauteur des ondes
# * @param $CANGLE l'angle des vagues
# * @param $CX le coef en X des vagues
# * @param $CY le coef en Y des vagues
Si cela permet de modifier l'inclinaison, le "voilage" et tout, alors jte met un 10 :) ta source est nikel ! :)
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 14 déc. 2007 à 21:51
je crois avoir tennu compte de tout les commentaires sur cette mise a jours, vous trouvez ca plus lisible comme ca ?
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 14 déc. 2007 à 18:56
Hello,
je ne suis pas non plus convaincu pour un captcha, mais en tous cas l'effet est très sympa. Et le code est court, très sympa :-)
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 14 déc. 2007 à 02:12
getmatrice te donne une matrice de hauteur qui correspond a la chaine, iso3dmatrice permet d'afficher cette matrice, il est tres important de les separer, elles ne font pas la meme chose, et les deux peuvent etre utiles dans d'autres scripts.
c'est vrai que j'ai pas commente ca, et que je n'ai pas optimise les boucles
$a est l'angle de decalade en 3d iso
kankrelune
Messages postés1293Date d'inscriptionmardi 9 novembre 2004StatutMembreDernière intervention21 mai 2015 14 déc. 2007 à 01:25
oups...
> $a array_fill(0, 8*strlen($chaine)+2, 0);
résidu de copier collé... lol... .. .
@ tchaOo°
kankrelune
Messages postés1293Date d'inscriptionmardi 9 novembre 2004StatutMembreDernière intervention21 mai 2015 14 déc. 2007 à 01:22
Assez illisible pour un captcha il faut l'avouer... d'autant plus si tu as une vue imparfaite... mais l'utilisation de la 3D je dis chapeau... .. .
Par contre ce qui me plais moins c'est...
for ($i=0;$i<=8*strlen($chaine)+2;$i++){
$a[]=0;
}
pourquoi ne pas intégrer getmatrice() à iso3dmatrice(), voir même les fusionner... y a t'il un intérêt à sauvegarder la matrice dans une variable extérieur... pour la remodifier ou autre... si ce n'est pas le cas autant fusionner les deux... .. ?
pour finir à quoi correspond l'argument $a... ça manque de commentaire... le fond y est mais un petit manque dans la forme... .. . ;o)
6/10
@ tchaOo°
codefalse
Messages postés1123Date d'inscriptionmardi 8 janvier 2002StatutModérateurDernière intervention21 avril 20091 14 déc. 2007 à 00:10
je sais pas vous, mais perso ton image, j'arrive pas à lire ce que c'est. Et en tant que visiteur, si je doit valider en écrivant ce qui ya dans ton image pour poster ou m'inscrire, j'abandonnerai :/
10 mars 2009 à 12:00
10 mars 2009 à 09:28
J'ai de bons yeux donc pas de problèmes pour moi au niveau de la lisibilité de ton captcha 3D, dans la majorité des cas. Par contre, si l'on veut l'utiliser dans un site ouvert à tous, beaucoup n'arriveront pas à lire ce type de captcha (ou ne feront pas l'effort d'essayer la nouveauté). De plus, les mal-voyants ont besoin d'une version audio (on ne peut plus continuer à exclure les personnes différentes du web, entre autre).
C'est pourquoi je me demandais si tu avais testé le fameux reCAPTCHA de Carnegie Mellon University, version PHP. C'est une version avec un serveur dédié utilisant un couple (clef publique, clef privée). Le Défi image aide indirectement à numériser des livres (pour comprendre, lire http://recaptcha.net/) et le Défi audio existe en plusieurs langues, dont le français.
J'ai tout testé : du point de vu des fonctionnalités (réponses aux besoins), je n'ai pas (encore) trouvé mieux.
4 déc. 2008 à 19:09
http://blog.reflectiv.net/2008/09/02/affichez-vos-emails-tout-en-evitant-le-spam/
Ceci est ma version, mais vous trouverez dans ce post le lien vers la version originale :)
4 déc. 2008 à 16:59
Bonne journée à vous
4 déc. 2008 à 16:51
les robots floodeurs sont concus pour un formulaire bien precis, alors que les robots spammeurs se baladent et postent (parfois plusieurs fois sur la meme page d'ailleur...)
4 déc. 2008 à 16:40
Mais alors, qu'elle la diffréence entre un robot flooder et un spam-automatique ???
Dans le robot-flooder, tu cible un site bien précis et un spam-auto, il recherche automatiquement des sites avec formluaire sur la toile ???
4 déc. 2008 à 16:21
les captchas ne contrent pas les floods fait par des humains (qui sont vraiment limites...) mais les captchas empechent les robots de flooder...
quand tu attaques un site, tu n'iras pas poster manuellement 50 000 messages, par contre, tu vas demander a un robot de le faire pour toi. et c'est la que mon captcha intervient.
4 déc. 2008 à 16:12
De plus, le captcha ne contre pas non plus le flood mon cher ami. Le système capatcha a été mis en place pour contre-carrer les attaques des bots, un point c'est tout.
Donc je pense que ce système est finalement le meilleur jusqu'a c'que les robots analyse le css. peut etre que c'est déjà le cas, je me suis pas encore suffisament penché sur la question.
Sincerement, ne prend pas mal tout ce que je dis. en fait, je fais actuellement de la veille technologique concernant le stechnologie du web.
C'est vraiment dans un but de recherche d'efficacité et d'accessibilité d'un point de vue developpeur et utilisateur.
4 déc. 2008 à 16:10
4 déc. 2008 à 16:10
Tu peux ensuite t'amuser à donner des noms aléatoires à tes champs, mémoriser en session quel champ appartient à quel valeur (zpoefqfsdfq = login), et du coup le bot ne pourra plus se baser sur le nom tel que "spam_captcha". Ce qui lui complique la tache.
Et plutot que lui mettre un display: none, tu devrais aussi lui mettre une position absolute et un top/left en -10000. Le bot doit-être vraiment doué pour se douter que le champ est hors limite ! :p
a voir !
4 déc. 2008 à 15:58
pour te proteger du flood, il te faut un VRAI captcha.
4 déc. 2008 à 15:41
lien : http://www.deep-know.com/2008/01/04/une-astuce-tres-simple-pour-simuler-un-captcha/
explication :
Une astuce très simple pour simuler un CAPTCHA
En cherchant sur le Web une méthode pour implémenter un système CAPTCHA dans un formulaire, j’ai trouvé une solution très simple qui fonctionne très bien.
Il suffit d’ajouter dans son formulaire un champ du type :
Ensuite, dans votre CSS vous ajoutez :
.cfrm { display: none; }
Cette classe CSS va masquer le champ “host”, l’utilisateur final ne verra pas le champ dans le formulaire.
Lorsque le formulaire est posté, il suffit de vérifier que le champ “host” est vide. En effet, la plus part des robots rempliront ce champ. Ils ne s’apercevront pas que celui-ci ne fait pas parti du formulaire.
J’ai testé cette astuce sur plusieurs sites et le résultat est sans appel, 99% des posts effectués par les robots sont éliminés !!
-----
T'en pense quoi ???
ça m'a l'air vraiment efficace, tres simple a mettre en place, et surtout, non contraignant pour l'utilisateur.
4 déc. 2008 à 15:07
d'autres auront plus de mal...
4 déc. 2008 à 14:59
Je place un champ caché dans lequel je met une valeur, et apres je demande de deviner cette valeur.
sincerement, c'est illisible ton truc, on voit rien, on est obligé de généré 4 fois l'image pour avoir un texte qui peut etre décrypté a l'oeil.
On voit que tu maitrises bien la programmation, mais faut au final, ton truc est inutilisable.
le code c'est bien, mais faut penser aux utilisateurs...
22 nov. 2008 à 13:27
j'ai mis test.php pour te montrer un exemple
20 nov. 2008 à 00:03
mais j'ai un problème au niveau de la session je crois.
je reviens toujours sur la page proposant le captcha quelle que soit ma réponse.
pourrais-tu préciser ce que tu veux dire par
// VOUS DEVEZ INSERER ICI VOTRE CODE D'ENREGISTREMENT DE $txt et $rand EN SESSION.
merci,
Laurent.
19 nov. 2008 à 23:41
donc ca pouvait pas marcher. plus d'info sur ce genre d'erreur : http://www.commentcamarche.net/forum/affich-1257704-php-warning-cannot-modify-header-information
19 nov. 2008 à 23:33
t'as probablement mis qqch avant <?php
19 nov. 2008 à 23:32
max@max-desktop:/usr/share/consolefonts$ ls
Arabic-Fixed15.psf.gz Lat15-Terminus16.psf.gz
Arabic-Fixed16.psf.gz Lat15-Terminus20x10.psf.gz
Arabic-VGA14.psf.gz Lat15-Terminus24x12.psf.gz
Arabic-VGA16.psf.gz Lat15-Terminus28x14.psf.gz
Arabic-VGA8.psf.gz Lat15-Terminus32x16.psf.gz
Armenian-Fixed13.psf.gz Lat15-TerminusBold12x6.psf.gz
Armenian-Fixed14.psf.gz Lat15-TerminusBold14.psf.gz
Armenian-Fixed15.psf.gz Lat15-TerminusBold16.psf.gz
Armenian-Fixed16.psf.gz Lat15-TerminusBold20x10.psf.gz
Armenian-Fixed18.psf.gz Lat15-TerminusBold24x12.psf.gz
CyrAsia-Fixed13.psf.gz Lat15-TerminusBold28x14.psf.gz
CyrAsia-Fixed14.psf.gz Lat15-TerminusBold32x16.psf.gz
CyrAsia-Fixed15.psf.gz Lat15-TerminusBoldVGA14.psf.gz
CyrAsia-Fixed16.psf.gz Lat15-TerminusBoldVGA16.psf.gz
CyrAsia-Fixed18.psf.gz Lat15-VGA14.psf.gz
CyrAsia-Terminus12x6.psf.gz Lat15-VGA16.psf.gz
CyrAsia-Terminus14.psf.gz Lat15-VGA8.psf.gz
CyrAsia-Terminus16.psf.gz Lat2-Fixed13.psf.gz
CyrAsia-Terminus20x10.psf.gz Lat2-Fixed14.psf.gz
CyrAsia-Terminus24x12.psf.gz Lat2-Fixed15.psf.gz
CyrAsia-Terminus28x14.psf.gz Lat2-Fixed16.psf.gz
CyrAsia-Terminus32x16.psf.gz Lat2-Fixed18.psf.gz
CyrAsia-TerminusBold12x6.psf.gz Lat2-Terminus12x6.psf.gz
CyrAsia-TerminusBold14.psf.gz Lat2-Terminus14.psf.gz
CyrAsia-TerminusBold16.psf.gz Lat2-Terminus16.psf.gz
CyrAsia-TerminusBold20x10.psf.gz Lat2-Terminus20x10.psf.gz
CyrAsia-TerminusBold24x12.psf.gz Lat2-Terminus24x12.psf.gz
CyrAsia-TerminusBold28x14.psf.gz Lat2-Terminus28x14.psf.gz
CyrAsia-TerminusBold32x16.psf.gz Lat2-Terminus32x16.psf.gz
CyrAsia-TerminusBoldVGA14.psf.gz Lat2-TerminusBold12x6.psf.gz
CyrAsia-TerminusBoldVGA16.psf.gz Lat2-TerminusBold14.psf.gz
CyrKoi-Fixed13.psf.gz Lat2-TerminusBold16.psf.gz
CyrKoi-Fixed14.psf.gz Lat2-TerminusBold20x10.psf.gz
CyrKoi-Fixed15.psf.gz Lat2-TerminusBold24x12.psf.gz
CyrKoi-Fixed16.psf.gz Lat2-TerminusBold28x14.psf.gz
CyrKoi-Fixed18.psf.gz Lat2-TerminusBold32x16.psf.gz
CyrKoi-Terminus12x6.psf.gz Lat2-TerminusBoldVGA14.psf.gz
CyrKoi-Terminus14.psf.gz Lat2-TerminusBoldVGA16.psf.gz
CyrKoi-Terminus16.psf.gz Lat2-VGA14.psf.gz
CyrKoi-Terminus20x10.psf.gz Lat2-VGA16.psf.gz
CyrKoi-Terminus24x12.psf.gz Lat2-VGA8.psf.gz
CyrKoi-Terminus28x14.psf.gz Lat38-Fixed13.psf.gz
CyrKoi-Terminus32x16.psf.gz Lat38-Fixed14.psf.gz
CyrKoi-TerminusBold12x6.psf.gz Lat38-Fixed15.psf.gz
CyrKoi-TerminusBold14.psf.gz Lat38-Fixed16.psf.gz
CyrKoi-TerminusBold16.psf.gz Lat38-Fixed18.psf.gz
CyrKoi-TerminusBold20x10.psf.gz Lat38-VGA14.psf.gz
CyrKoi-TerminusBold24x12.psf.gz Lat38-VGA16.psf.gz
CyrKoi-TerminusBold28x14.psf.gz Lat38-VGA8.psf.gz
CyrKoi-TerminusBold32x16.psf.gz Lat7-Fixed13.psf.gz
CyrKoi-TerminusBoldVGA14.psf.gz Lat7-Fixed14.psf.gz
CyrKoi-TerminusBoldVGA16.psf.gz Lat7-Fixed15.psf.gz
CyrKoi-VGA14.psf.gz Lat7-Fixed16.psf.gz
CyrKoi-VGA16.psf.gz Lat7-Fixed18.psf.gz
CyrKoi-VGA8.psf.gz Lat7-Terminus12x6.psf.gz
CyrSlav-Fixed13.psf.gz Lat7-Terminus14.psf.gz
CyrSlav-Fixed14.psf.gz Lat7-Terminus16.psf.gz
CyrSlav-Fixed15.psf.gz Lat7-Terminus20x10.psf.gz
CyrSlav-Fixed16.psf.gz Lat7-Terminus24x12.psf.gz
CyrSlav-Fixed18.psf.gz Lat7-Terminus28x14.psf.gz
CyrSlav-Terminus12x6.psf.gz Lat7-Terminus32x16.psf.gz
CyrSlav-Terminus14.psf.gz Lat7-TerminusBold12x6.psf.gz
CyrSlav-Terminus16.psf.gz Lat7-TerminusBold14.psf.gz
CyrSlav-Terminus20x10.psf.gz Lat7-TerminusBold16.psf.gz
CyrSlav-Terminus24x12.psf.gz Lat7-TerminusBold20x10.psf.gz
CyrSlav-Terminus28x14.psf.gz Lat7-TerminusBold24x12.psf.gz
CyrSlav-Terminus32x16.psf.gz Lat7-TerminusBold28x14.psf.gz
CyrSlav-TerminusBold12x6.psf.gz Lat7-TerminusBold32x16.psf.gz
CyrSlav-TerminusBold14.psf.gz Lat7-TerminusBoldVGA14.psf.gz
CyrSlav-TerminusBold16.psf.gz Lat7-TerminusBoldVGA16.psf.gz
CyrSlav-TerminusBold20x10.psf.gz Lat7-VGA14.psf.gz
CyrSlav-TerminusBold24x12.psf.gz Lat7-VGA16.psf.gz
CyrSlav-TerminusBold28x14.psf.gz Lat7-VGA8.psf.gz
CyrSlav-TerminusBold32x16.psf.gz Thai-Fixed13.psf.gz
CyrSlav-TerminusBoldVGA14.psf.gz Thai-Fixed14.psf.gz
CyrSlav-TerminusBoldVGA16.psf.gz Thai-Fixed15.psf.gz
CyrSlav-VGA14.psf.gz Thai-Fixed16.psf.gz
CyrSlav-VGA16.psf.gz Thai-Fixed18.psf.gz
CyrSlav-VGA8.psf.gz Uni1-Fixed15.psf.gz
Ethiopian-Fixed15.psf.gz Uni1-Fixed16.psf.gz
Ethiopian-Fixed18.psf.gz Uni1-VGA14.psf.gz
Ethiopian-Goha12.psf.gz Uni1-VGA16.psf.gz
Ethiopian-Goha14.psf.gz Uni1-VGA8.psf.gz
Ethiopian-Goha16.psf.gz Uni2-Fixed13.psf.gz
Ethiopian-GohaClassic12.psf.gz Uni2-Fixed14.psf.gz
Ethiopian-GohaClassic14.psf.gz Uni2-Fixed15.psf.gz
Ethiopian-GohaClassic16.psf.gz Uni2-Fixed16.psf.gz
Georgian-Fixed13.psf.gz Uni2-Fixed18.psf.gz
Georgian-Fixed14.psf.gz Uni2-Terminus12x6.psf.gz
Georgian-Fixed15.psf.gz Uni2-Terminus14.psf.gz
Georgian-Fixed16.psf.gz Uni2-Terminus16.psf.gz
Georgian-Fixed18.psf.gz Uni2-Terminus20x10.psf.gz
Greek-Fixed13.psf.gz Uni2-Terminus24x12.psf.gz
Greek-Fixed14.psf.gz Uni2-Terminus28x14.psf.gz
Greek-Fixed15.psf.gz Uni2-Terminus32x16.psf.gz
Greek-Fixed16.psf.gz Uni2-TerminusBold12x6.psf.gz
Greek-Fixed18.psf.gz Uni2-TerminusBold14.psf.gz
Greek-Terminus12x6.psf.gz Uni2-TerminusBold16.psf.gz
Greek-Terminus14.psf.gz Uni2-TerminusBold20x10.psf.gz
Greek-Terminus16.psf.gz Uni2-TerminusBold24x12.psf.gz
Greek-Terminus20x10.psf.gz Uni2-TerminusBold28x14.psf.gz
Greek-Terminus24x12.psf.gz Uni2-TerminusBold32x16.psf.gz
Greek-Terminus28x14.psf.gz Uni2-TerminusBoldVGA14.psf.gz
Greek-Terminus32x16.psf.gz Uni2-TerminusBoldVGA16.psf.gz
Greek-TerminusBold12x6.psf.gz Uni2-VGA14.psf.gz
Greek-TerminusBold14.psf.gz Uni2-VGA16.psf.gz
Greek-TerminusBold16.psf.gz Uni2-VGA8.psf.gz
Greek-TerminusBold20x10.psf.gz Uni3-Fixed13.psf.gz
Greek-TerminusBold24x12.psf.gz Uni3-Fixed14.psf.gz
Greek-TerminusBold28x14.psf.gz Uni3-Fixed15.psf.gz
Greek-TerminusBold32x16.psf.gz Uni3-Fixed16.psf.gz
Greek-TerminusBoldVGA14.psf.gz Uni3-Fixed18.psf.gz
Greek-TerminusBoldVGA16.psf.gz Uni3-Terminus12x6.psf.gz
Greek-VGA14.psf.gz Uni3-Terminus14.psf.gz
Greek-VGA16.psf.gz Uni3-Terminus16.psf.gz
Greek-VGA8.psf.gz Uni3-Terminus20x10.psf.gz
Hebrew-Fixed13.psf.gz Uni3-Terminus24x12.psf.gz
Hebrew-Fixed14.psf.gz Uni3-Terminus28x14.psf.gz
Hebrew-Fixed15.psf.gz Uni3-Terminus32x16.psf.gz
Hebrew-Fixed16.psf.gz Uni3-TerminusBold12x6.psf.gz
Hebrew-Fixed18.psf.gz Uni3-TerminusBold14.psf.gz
Hebrew-VGA14.psf.gz Uni3-TerminusBold16.psf.gz
Hebrew-VGA16.psf.gz Uni3-TerminusBold20x10.psf.gz
Hebrew-VGA8.psf.gz Uni3-TerminusBold24x12.psf.gz
Lao-Fixed14.psf.gz Uni3-TerminusBold28x14.psf.gz
Lao-Fixed15.psf.gz Uni3-TerminusBold32x16.psf.gz
Lao-Fixed16.psf.gz Uni3-TerminusBoldVGA14.psf.gz
Lat15-Fixed13.psf.gz Uni3-TerminusBoldVGA16.psf.gz
Lat15-Fixed14.psf.gz Vietnamese-Fixed13.psf.gz
Lat15-Fixed15.psf.gz Vietnamese-Fixed14.psf.gz
Lat15-Fixed16.psf.gz Vietnamese-Fixed15.psf.gz
Lat15-Fixed18.psf.gz Vietnamese-Fixed16.psf.gz
Lat15-Terminus12x6.psf.gz Vietnamese-Fixed18.psf.gz
Lat15-Terminus14.psf.gz
max@max-desktop:/usr/share/consolefonts$
19 nov. 2008 à 23:29
Le package ftp://sunsite.unc.edu/pub/Linux/system/keyboards/console-data-1999.08.29.tar.gz
le fichier s'ouvre avec win rar, mais il me reste cette erreur
Warning: Cannot modify header information - headers already sent by (output started at F:\users\httpdocs\captcha.php:1) in F:\users\httpdocs\captcha.php on line 159
besoin d'une petit coup de pouce ;-)
19 nov. 2008 à 23:16
où puis-je les trouver ?
merci,
Laurent.
5 août 2008 à 12:00
Mais la technique reste parfaitement maîtrisée et très intéressante!
27 juin 2008 à 20:01
sinon, un captcha ne doit pas bannir, le captcha ne fait que differencier un humain d'un bot, il ne ban pas.
pour la version handicapes, il faut plusieurs captchas, et pas un seul.
27 juin 2008 à 18:46
Ton code est désormais utilisé par rapidshare.com !
(enfin il reprenne la technique en tout cas...)
Tu a touché les droit d'auteur au moins ;) ?
Bravo et merci de nous faire partager la technique.
PS: Compte tu continuer à développer ton code ?
Améliorer la sécurité, ajouter un permaban IP/FAI pour les bots, un ban minutes pour les nuls, un lecteur flash/wav ou mp3 pour les handicapés, un bouton actualisé, etc...
Donc 9/10 et je mettrais 10 quand il y aura une version complète de chez complète !
17 déc. 2007 à 10:21
je trouve assez illisible dans les paramétrages par défaut, mais en jouant un peu on arrive à faire ce qu'on veut... chapeau
15 déc. 2007 à 21:07
15 déc. 2007 à 20:55
@ tchaOo°
15 déc. 2007 à 06:45
15 déc. 2007 à 00:16
10/10 :)
Surtout pour avoir fait une mise à jour :)
14 déc. 2007 à 22:56
* @param $h2 la hauteur des ondes
il suffit de mettre ce parametre a 0, on obtient alors :
$matrice=getmatrice($alphabet, randstr(), 10, 0);
14 déc. 2007 à 22:47
Bien joué d'avoir mis l'image à jour aussi ;)
Ca me plait déjà plus personnellement pour un captcha :)
Par contre, une question, est-ce que l'on peux arreter le voilage ?
# * @param $h2 la hauteur des ondes
# * @param $CANGLE l'angle des vagues
# * @param $CX le coef en X des vagues
# * @param $CY le coef en Y des vagues
Si cela permet de modifier l'inclinaison, le "voilage" et tout, alors jte met un 10 :) ta source est nikel ! :)
14 déc. 2007 à 21:51
14 déc. 2007 à 18:56
je ne suis pas non plus convaincu pour un captcha, mais en tous cas l'effet est très sympa. Et le code est court, très sympa :-)
14 déc. 2007 à 02:12
c'est vrai que j'ai pas commente ca, et que je n'ai pas optimise les boucles
$a est l'angle de decalade en 3d iso
14 déc. 2007 à 01:25
> $a array_fill(0, 8*strlen($chaine)+2, 0);
résidu de copier collé... lol... .. .
@ tchaOo°
14 déc. 2007 à 01:22
Par contre ce qui me plais moins c'est...
for ($i=0;$i<=8*strlen($chaine)+2;$i++){
$a[]=0;
}
rooo voyons...
for($i=0,$j=8*strlen($chaine)+2;$i<=$j;$i++){
$a[]=0;
}
ou encore...
$a = array_fill(0, 8*strlen($chaine)+2, 'banana');
pareil pour...
for ($y=0;$y<count($matrice)-1;$y++){
for ($x=0;$x<count($matrice[0])-1;$x++){
>
for ($y=0,$c=count($matrice)-1;$y<$c;$y++){
for ($x=0,$l=count($matrice[0])-1;$x<$l;$x++){
Là c'est sous réserve toujours est il que j'aurais plutot fais
$cos=cos($a);
$sin=sin($a);
imageline($image,
($x+$y*$cos)*$dx, $matrice[$y][$x]+($y+$x*$sin($a))*$dy,
($x+1+$y*$cos)*$dx, $matrice[$y][$x+1]+($y+($x+1)*$sin)*$dy,
$couleur);
au lieu de
imageline($image,
($x+$y*cos($a))*$dx, $matrice[$y][$x]+($y+$x*sin($a))*$dy,
($x+1+$y*cos($a))*$dx, $matrice[$y][$x+1]+($y+($x+1)*sin($a))*$dy,
$couleur);
pourquoi ne pas intégrer getmatrice() à iso3dmatrice(), voir même les fusionner... y a t'il un intérêt à sauvegarder la matrice dans une variable extérieur... pour la remodifier ou autre... si ce n'est pas le cas autant fusionner les deux... .. ?
pour finir à quoi correspond l'argument $a... ça manque de commentaire... le fond y est mais un petit manque dans la forme... .. . ;o)
6/10
@ tchaOo°
14 déc. 2007 à 00:10