Défis informatiques

Nalinux

It's not a bug, it's a feature.
Les maths, c'est sympa. Mais il faut 1/ avoir de la patience et de la concentration, et 2/ avoir de la chance de trouver de bons profs, auteurs, etc. qui savent bien expliquer. :)
Surtout !!!!
C est d ailleurs valable dans la plupart des domaines que j ai connu, de la plomberie au VHDL :)

Ps : farid_h doit savoir, mais le VHDL est un langage de programmation pour des composants électroniques a base de portes logiques programmables.
Encore un truc fabuleux mais un peu a la **** vu que ça demande de maitriser un minimum plusieurs domaines en même temps.
 

farid_h

<defunct>
Contributeur
Selon la complexite des captchas, un programme ocr base sur un neuronal net ou sur un hidden markov model devrait faire l'affaire.
 
Selon la complexite des captchas, un programme ocr base sur un neuronal net ou sur un hidden markov model devrait faire l'affaire.
je ne connais rien de tout ça, j'ai juste découpé le captcha en plusieurs morceau un par caractère, j'ai créé un script qui dump depuis le site les images possible pour chaque caractère de 0 a 9 puis de A a Z, une fois ma petite base construite je m'en sert pour décoder chaque caractère ...

c'est fait a la main et ça marche :D
le but maintenant est de proposer une appli sur ios et android qui permet de consulter ses points permis et d'envoyer des notifications en cas de changement
 

farid_h

<defunct>
Contributeur
je ne connais rien de tout ça, j'ai juste découpé le captcha en plusieurs morceau un par caractère, j'ai créé un script qui dump depuis le site les images possible pour chaque caractère de 0 a 9 puis de A a Z, une fois ma petite base construite je m'en sert pour décoder chaque caractère ...

c'est fait a la main et ça marche :D
le but maintenant est de proposer une appli sur ios et android qui permet de consulter ses points permis et d'envoyer des notifications en cas de changement
Si cette application devient populaire, ca va submerger le serveur et ils vont compliquer l'acces (reCaptchas, etc). Il faut plutot leur demander d'offrir une API (REST par exemple) pour faciliter l'acces automatique.
 
Si cette application devient populaire, ca va submerger le serveur et ils vont compliquer l'acces (reCaptchas, etc). Il faut plutot leur demander d'offrir une API (REST par exemple) pour faciliter l'acces automatique.
Pas faut :wazaa:
Ils vont pas apprécier que je passe outre leur protection, c'est peut etre pas une bonne idée ...
Merci :ange:

Par contre j'ai lu sur le net qu'il existe un prix pour celui qui produit un reCaptcha Solver efficace, c'est un service de google et ça change presque tous les jours ...
 
Si on veut programmer avec ces bignums, on peut utiliser des languages de programmation qui sont capables d'operer sur des bignums comme par ex. Common Lisp, ou on utilise des bibliotheques specialises avec des languages comme C et C++, par ex. gmp ou cln que j'ai mentionne plus haut. L'article sur le decryptage de RSA mentionne aussi la Bignum-Bibliotheque BN du programme openssl.

Wai ! On appelle ça aussi en informatique "des directives de préprocesseur" ! Le langage C c'est bien pour apprendre la programmation ! :cool:
 
19 pages et pas une seule ligne de code, c'est pas sérieux les mecs
il faut se lancer de vrais défis pas juste papoter hein :D

bon, qui peut coder un script pour trouver la position des chiffres dans la matrice suivante:



0 est en position (0,0), 9 est en position (2,2) ...
 

Pièces jointes

  • LTk4LTEwOC0xMTctMTAyLTcwLTU2LTUxLTUxLTExNS01NS01MS0xMDAtNTItNzgtNzQtODItODQtNzItNTMtNTAtNTMtNzEt.gif
    LTk4LTEwOC0xMTctMTAyLTcwLTU2LTUxLTUxLTExNS01NS01MS0xMDAtNTItNzgtNzQtODItODQtNzItNTMtNTAtNTMtNzEt.gif
    1.6 KB · Affichages: 0

farid_h

<defunct>
Contributeur
Wai ! On appelle ça aussi en informatique "des directives de préprocesseur" ! Le langage C c'est bien pour apprendre la programmation ! :cool:
gmp et cln ne sont pas que des headers, ce sont de veritables bibliotheques. Il faut les linker au programme avec -lgmp ou -lcln. Tu penses peut etre a Boost?
 
gmp et cln ne sont pas que des headers, ce sont de veritables bibliotheques. Il faut les linker au programme avec -lgmp ou -lcln. Tu penses peut etre a Boost?

gmp est une librairie très puissante !!! Personnellement je pense pas que mon pc est capable de gérer 20000 milles chiffres??? Moi je trouve plus simple d'utiliser la bibliothèque "math.h" avec des floats ou des doubles avec des petits nombres à calculer bien sûr !! :rolleyes:
 

farid_h

<defunct>
Contributeur
J'ai pas encore trouve du temps pour jouer avec msieve, mais si j'ai bien compris, ce programme s'auto-checkpointe lui-meme, pour qu'on puisse le redemarrer et continuer les calculs la ou ils ont ete interrompus. Si c'est le cas (j'ai pas encore verifie), ce serait vraiment cool!
 

farid_h

<defunct>
Contributeur
J'avais deja execute des simulations qui prenaient presque 4 jours de calculs. Comme ces programmes etaient ecrit par des scientifiques qui n'ont pas pense a checkpointer leurs resultats, et que je n'avais pas envie de perdre tout le travail en cas de problemes, je les executait dans VirtualBox avec des snapshots par cron toutes les 30 minutes. Mieux que rien, mais pas comparable a un programme qui se checkpointe tres regulierement. ;)
 

Nalinux

It's not a bug, it's a feature.
J'avais deja execute des simulations qui prenaient presque 4 jours de calculs. Comme ces programmes etaient ecrit par des scientifiques qui n'ont pas pense a checkpointer leurs resultats, et que je n'avais pas envie de perdre tout le travail en cas de problemes, je les executait dans VirtualBox avec des snapshots par cron toutes les 30 minutes. Mieux que rien, mais pas comparable a un programme qui se checkpointe tres regulierement. ;)
Pas bête !
C est une merveille Vbox ...
 
Pour revenir sur les grands nombres, il y a aussi BN de openssl:

https://www.openssl.org/docs/crypto/bn.html

Salam,

Je suppose qu'il faut passer sous linux et installer openssl ???? Parce que sur windows avec dev ça marche quedalle !! loool
C:\Users\Tadawit\Desktop\mm.c [Error] openssl/bn.h: No such file or directory

En tout cas merci pour cette nouvelle librairie que je ne connaissais pas, par contre faut être un sacré encodeur pour taper tout ça et être très patient !!! looool

//directive au compilateur OK !!! //
#include <openssl/bn.h>

// définir les fonctions principales OK !!! //
BIGNUM *BN_new(void);
void BN_free(BIGNUM *a);
void BN_clear(BIGNUM *a);
void BN_clear_free(BIGNUM *a);
BN_CTX *BN_CTX_new(void);
void BN_CTX_free(BN_CTX *c);
(...)

Je comprends pas très cette fonction sqr !!

int BN_add(BIGNUM *r, const BIGNUM *a, const BIGNUM *b);
int BN_sub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b);
int BN_mul(BIGNUM *r, BIGNUM *a, BIGNUM *b, BN_CTX *ctx);
int BN_sqr(BIGNUM *r, BIGNUM *a, BN_CTX *ctx);
int BN_div(BIGNUM *dv, BIGNUM *rem, const BIGNUM *a, const BIGNUM *d,
BN_CTX *ctx);

Ici la fonction sqr, fait un "reporting" c'est bien ça ???
 

farid_h

<defunct>
Contributeur
Salam,

Je suppose qu'il faut passer sous linux et installer openssl ???? Parce que sur windows avec dev ça marche quedalle !! loool
C:\Users\Tadawit\Desktop\mm.c [Error] openssl/bn.h: No such file or directory

Essayes sous Cygwin...

En tout cas merci pour cette nouvelle librairie que je ne connaissais pas, par contre faut être un sacré encodeur pour taper tout ça et être très patient !!! looool

//directive au compilateur OK !!! //
#include <openssl/bn.h>

// définir les fonctions principales OK !!! //
BIGNUM *BN_new(void);
void BN_free(BIGNUM *a);
void BN_clear(BIGNUM *a);
void BN_clear_free(BIGNUM *a);
BN_CTX *BN_CTX_new(void);
void BN_CTX_free(BN_CTX *c);
(...)

Je comprends pas très cette fonction sqr !!

int BN_add(BIGNUM *r, const BIGNUM *a, const BIGNUM *b);
int BN_sub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b);
int BN_mul(BIGNUM *r, BIGNUM *a, BIGNUM *b, BN_CTX *ctx);
int BN_sqr(BIGNUM *r, BIGNUM *a, BN_CTX *ctx);
int BN_div(BIGNUM *dv, BIGNUM *rem, const BIGNUM *a, const BIGNUM *d,
BN_CTX *ctx);

Ici la fonction sqr, fait un "reporting" c'est bien ça ???

BN_sqr() calcule r = a^2 plus rapidement qu'en multipliant a*a avec BN_mul().
D'apres la man page:

BN_sqr() takes the square of a and places the result in r ("r=a^2"). r
and a may be the same BIGNUM. This function is faster than
BN_mul(r,a,a).

Voila le source code de BN_sqr():

https://github.com/openssl/openssl/blob/master/crypto/bn/bn_sqr.c

Ou tu as des problemes avec BN_CTX?

http://www.openssl.org/docs/crypto/BN_CTX_new.html
 
Dernière édition:
Haut