Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

CARTAGE (30AVRIL2008) - FUSION EDITION


Information sur la source

Description

Beaucoup en ont rêvé, peu s'y sont risqués, et maintenant c'est à votre portée !
Cartage est un générateur libre de numéros de cartes bancaires.
La version postée ne contient pas l'ensemble des données, mais reste fonctionnelle.
Les commentaires n'ont pas tous été corrigés, mais restent, pour la plupart, compréhensibles.

Si vous doutez que cette source puisse traiter de craking, hacking ou autres procédés illégaux, alors essayez de payer avec en ligne : vous serez déçus.  Cela ne fonctionnera pas !!
Les numéros sont uniquement générés.  Il n'y as pas de ré-génération ou d'extraction via des transactions financiaires existantes (tickets de caisse ou de guichets).

L'intérêt ?
Faire peur aux ignorants et rassurer les experts. (ou serait-ce l'inverse?)

 

Source

  • <HTML>
  • <HEAD>
  • <title>Générateur libre de numéros de cartes bancaires</title>
  • <script>
  • //_/!\_ La liste des cartes contient les elements suivant separes par des ¬
  • // 0 ¬ 1 ¬ 2 ¬ 3 ¬ 4 ¬ 5 ¬ 6 ¬ 7 ¬
  • // Type ¬ Banque ¬ Modele ¬ Prefixe ¬ Taille du numero ¬ Periode de validation en mois (entre la date d'emission et celle d'expiration) ¬ Taille du numéro de contrôle ¬ Nationalite du titulaire ¬
  • var lcartes = new Array("AMERICAN EXPRESS¬¬1¬372034¬16¬1¬4¬US¬",
  • "AMERICAN EXPRESS¬¬2¬372407¬16¬12¬4¬US¬",
  • "AMERICAN EXPRESS¬¬3¬372861¬16¬12¬4¬US¬",
  • "AMERICAN EXPRESS¬¬4¬373227¬16¬12¬4¬US¬",
  • "AMERICAN EXPRESS¬¬5¬37¬16¬12¬4¬US¬",
  • "AMERICAN EXPRESS¬¬6¬34¬16¬12¬4¬US¬",
  • "CARTE BLEUE¬¬¬¬16¬12¬3¬FR¬",
  • "CARTE FNAC¬¬¬5886¬16¬¬¬FR¬",
  • "CYRILLUS¬¬¬5886¬16¬¬¬FR¬",
  • "Diner's Club / Carte Blanche¬¬1¬300¬14¬¬3¬US¬",
  • "Diner's Club / Carte Blanche¬¬2¬301¬14¬¬3¬US¬",
  • "Diner's Club / Carte Blanche¬¬3¬302¬14¬¬3¬US¬",
  • "Diner's Club / Carte Blanche¬¬4¬303¬14¬¬3¬US¬",
  • "Diner's Club / Carte Blanche¬¬5¬304¬14¬¬3¬US¬",
  • "Diner's Club / Carte Blanche¬¬6¬305¬14¬¬3¬US¬",
  • "Diner's Club / Carte Blanche¬¬7¬36¬14¬¬3¬US¬",
  • "Diner's Club / Carte Blanche¬¬8¬38¬14¬¬3¬US¬",
  • "DISCOVER¬¬¬6011¬16¬¬3¬US¬",
  • "E-CARTE BLEUE¬¬¬¬16¬12¬3¬US¬",
  • "enRoute¬¬1¬2014¬15¬¬¬US¬",
  • "enRoute¬¬2¬2149¬15¬¬¬US¬",
  • "EUROCARD¬AB¬1¬5275¬16¬12¬3¬US¬",
  • "EUROCARD¬AB¬2¬53004¬16¬12¬3¬US¬",
  • "EUROCARD¬AB¬3¬541256¬16¬12¬3¬US¬",
  • "EUROCARD¬Belgique-Luxembourg¬1¬540054¬16¬12¬3¬BE¬",
  • "EUROCARD¬Belgique-Luxembourg¬2¬541327¬16¬12¬3¬BE¬",
  • "EUROCARD¬Belgique-Luxembourg¬3¬544327¬16¬12¬3¬BE¬",
  • "EUROCARD¬Danemark¬¬541303¬16¬12¬3¬DK¬",
  • "EUROCARD¬France¬1¬5294¬16¬12¬3¬FR¬",
  • "EUROCARD¬France¬2¬5295¬16¬12¬3¬FR¬",
  • "EUROCARD¬France¬3¬513¬16¬12¬3¬FR¬",
  • "EUROCARD¬International¬1¬541333¬16¬12¬3¬FR¬",
  • "EUROCARD¬International¬2¬544333¬16¬12¬3¬FR¬",
  • "EUROCARD¬International¬3¬545333¬16¬12¬3¬FR¬",
  • "EUROCARD¬International¬4¬546333¬16¬12¬3¬FR¬",
  • "EUROCARD¬Pays-Bas¬¬541330¬16¬12¬3¬FR¬",
  • "EUROCARD¬Suisse¬¬541325¬16¬12¬3¬FR¬",
  • "JCB¬¬1¬3¬16¬¬¬US¬",
  • "JCB¬¬2¬30¬16¬¬¬US¬",
  • "JCB¬¬3¬31¬16¬¬¬US¬",
  • "JCB¬¬4¬1800¬15¬¬¬US¬",
  • "JCB¬¬5¬2100¬15¬¬¬US¬",
  • "JCB¬¬6¬2131¬15¬¬¬US¬",
  • "KANGOUROU¬¬¬588639¬19¬¬¬FR¬",
  • "MASTERCARD¬Accord Finances¬¬5¬16¬12¬3¬US¬",
  • "MASTERCARD¬All Access¬¬5189¬16¬12¬3¬US¬",
  • "MASTERCARD¬Bank of America¬¬5490¬16¬12¬3¬US¬",
  • "MASTERCARD¬BarclayCard¬1¬5301¬16¬36¬3¬UK¬",
  • "MASTERCARD¬BarclayCard¬2¬5452¬16¬36¬3¬UK¬",
  • "MASTERCARD¬BarclayCard¬3¬49294¬16¬36¬3¬UK¬",
  • "MASTERCARD¬Barnes & Noble¬¬5156¬16¬12¬3¬UK¬",
  • "MASTERCARD¬Benefits Card¬¬5543¬16¬12¬3¬UK¬",
  • "MASTERCARD¬Capital One¬¬5460¬16¬36¬3¬UK¬",
  • "MASTERCARD¬Crédit Agricole¬Retrait¬5131¬16¬12¬3¬FR¬",
  • "MASTERCARD¬Finedis¬¬5¬16¬12¬3¬FR¬",
  • "MASTERCARD¬First Ontario Credit Union¬¬5491¬16¬12¬3¬US¬",
  • "MASTERCARD¬Non identifée¬1¬5206¬16¬12¬3¬US¬",
  • "MASTERCARD¬Non identifée¬2¬5419¬16¬24¬3¬US¬",
  • "MASTERCARD¬RBS¬¬5412¬16¬12¬3¬UK¬",
  • "MASTERCARD¬University of Westminster¬¬5522¬16¬24¬3¬UK¬",
  • "MASTERCARD¬Virgin Money¬¬5412¬16¬12¬3¬UK¬",
  • "MASTERCARD¬WSPA Mosaik¬¬5191¬16¬12¬3¬UK¬",
  • "MASTERCARD¬¬Général 1¬51¬16¬12¬3¬US¬",
  • "MASTERCARD¬¬Général 2¬52¬16¬12¬3¬US¬",
  • "MASTERCARD¬¬Général 3¬53¬16¬12¬3¬US¬",
  • "MASTERCARD¬¬Général 4 (Virgin Money)¬54¬16¬24¬3¬UK¬",
  • "MASTERCARD¬¬Général 5¬55¬16¬12¬3¬US¬",
  • "PRINTEMPS¬¬¬5016¬16¬¬¬FR¬",
  • "VISA¬Banque Populaire¬¬4¬16¬12¬3¬FR¬",
  • "VISA¬Banque Sofinco¬¬4976¬16¬12¬3¬FR¬",
  • "VISA¬BNP¬¬4974¬16¬24¬3¬FR¬",
  • "VISA¬Caisse d'Epargne¬Paiement¬4978¬16¬12¬3¬FR¬",
  • "VISA¬Caisse d'Epargne¬Retrait¬4927¬16¬12¬3¬FR¬",
  • "VISA¬Crédit Commercial¬¬4¬16¬12¬3¬FR¬",
  • "VISA¬Crédit Lyonnais¬¬4972¬16¬12¬3¬FR¬",
  • "VISA¬ICICI Bank¬¬4477¬16¬12¬3¬FR¬",
  • "VISA¬La Bred¬¬4975¬16¬12¬3¬FR¬",
  • "VISA¬La Poste¬¬4970¬16¬12¬3¬FR¬",
  • "VISA¬Société Générale¬¬4973¬16¬12¬3¬FR¬",
  • "VISA¬¬Général (13 chiffres)¬4¬13¬12¬3¬US¬",
  • "VISA¬¬Général (16 chiffres)¬4¬16¬12¬3¬US¬",
  • "Voyager¬¬¬8699¬15¬¬¬US¬");
  • //_/!\_ La liste des noms contient l'indicatif du pays (idem a celui de l'IBAN, sauf pour les Etats-Unis d'Amerique qui n'utilisent pas l'IBAN et sont indiques par "US"). Les noms sont classes du plus populaire au moins reference.
  • // Sources:
  • // - US: http://names.mongabay.com/most_common_surnames.htm
  • var lnoms = new Array("US_SMITH¬JOHNSON¬WILLIAMS¬JONES¬BROWN¬DAVIS¬MILLER¬WILSON¬MOORE¬TAYLOR¬ANDERSON¬THOMAS¬JACKSON¬WHITE¬HARRIS¬MARTIN¬THOMPSON¬GARCIA¬MARTINEZ¬ROBINSON¬CLARK¬RODRIGUEZ¬LEWIS¬LEE¬WALKER¬HALL¬ALLEN¬YOUNG¬HERNANDEZ¬KING¬WRIGHT¬LOPEZ¬HILL¬SCOTT¬GREEN¬ADAMS¬BAKER¬GONZALEZ¬NELSON¬CARTER¬MITCHELL¬PEREZ¬ROBERTS¬TURNER¬PHILLIPS¬CAMPBELL¬PARKER¬EVANS¬EDWARDS¬COLLINS¬STEWART¬SANCHEZ¬MORRIS¬ROGERS¬REED¬COOK¬MORGAN¬BELL¬MURPHY¬BAILEY¬RIVERA¬COOPER¬RICHARDSON¬COX¬HOWARD¬WARD¬TORRES¬PETERSON¬GRAY¬RAMIREZ¬JAMES¬WATSON¬BROOKS¬KELLY¬SANDERS¬PRICE¬BENNETT¬WOOD¬BARNES¬ROSS¬HENDERSON¬COLEMAN¬JENKINS¬PERRY¬POWELL¬LONG¬PATTERSON¬HUGHES¬FLORES¬WASHINGTON¬BUTLER¬SIMMONS¬FOSTER¬GONZALES¬BRYANT¬ALEXANDER¬RUSSELL¬GRIFFIN¬DIAZ¬HAYES¬MYERS¬FORD¬HAMILTON¬GRAHAM¬SULLIVAN¬WALLACE¬WOODS¬COLE¬WEST¬JORDAN¬OWENS¬REYNOLDS¬FISHER¬ELLIS¬HARRISON¬GIBSON¬MCDONALD¬CRUZ¬MARSHALL¬ORTIZ¬GOMEZ¬MURRAY¬FREEMAN¬WELLS¬WEBB¬SIMPSON¬STEVENS¬TUCKER¬PORTER¬HUNTER¬HICKS¬CRAWFORD¬HENRY¬BOYD¬MASON¬MORALES¬KENNEDY¬WARREN¬DIXON¬RAMOS¬REYES¬BURNS¬GORDON¬SHAW¬HOLMES¬RICE¬ROBERTSON¬HUNT¬BLACK¬DANIELS¬PALMER¬MILLS¬NICHOLS¬GRANT¬KNIGHT¬FERGUSON¬ROSE¬STONE¬HAWKINS¬DUNN¬PERKINS¬HUDSON¬SPENCER¬GARDNER¬STEPHENS¬PAYNE¬PIERCE¬BERRY¬MATTHEWS¬ARNOLD¬WAGNER¬WILLIS¬RAY¬WATKINS¬OLSON¬CARROLL¬DUNCAN¬SNYDER¬HART¬CUNNINGHAM¬BRADLEY¬LANE¬ANDREWS¬RUIZ¬HARPER¬FOX¬RILEY¬ARMSTRONG¬CARPENTER¬WEAVER¬GREENE¬LAWRENCE¬ELLIOTT¬CHAVEZ¬SIMS¬AUSTIN¬PETERS¬KELLEY¬FRANKLIN¬LAWSON¬FIELDS¬GUTIERREZ¬RYAN¬SCHMIDT¬CARR¬VASQUEZ¬CASTILLO¬WHEELER¬CHAPMAN¬OLIVER¬MONTGOMERY¬RICHARDS¬WILLIAMSON¬JOHNSTON¬BANKS¬MEYER¬BISHOP¬MCCOY¬HOWELL¬ALVAREZ¬MORRISON¬HANSEN¬FERNANDEZ¬GARZA¬HARVEY¬LITTLE¬BURTON¬STANLEY¬NGUYEN¬GEORGE¬JACOBS¬REID¬KIM¬FULLER¬LYNCH¬DEAN¬GILBERT¬GARRETT¬ROMERO¬WELCH¬LARSON¬FRAZIER¬BURKE¬HANSON¬DAY¬MENDOZA¬MORENO¬BOWMAN¬MEDINA¬FOWLER¬BREWER¬HOFFMAN¬CARLSON¬SILVA¬PEARSON¬HOLLAND¬DOUGLAS¬FLEMING¬JENSEN¬VARGAS¬BYRD¬DAVIDSON¬HOPKINS¬MAY¬TERRY¬HERRERA¬WADE¬SOTO¬WALTERS¬CURTIS¬NEAL¬CALDWELL¬LOWE¬JENNINGS¬BARNETT¬GRAVES¬JIMENEZ¬HORTON¬SHELTON¬BARRETT¬OBRIEN¬CASTRO¬SUTTON¬GREGORY¬MCKINNEY¬LUCAS¬MILES¬CRAIG¬RODRIQUEZ¬CHAMBERS¬HOLT¬LAMBERT¬FLETCHER¬WATTS¬BATES¬HALE¬RHODES¬PENA¬BECK¬NEWMAN¬HAYNES¬MCDANIEL¬MENDEZ¬BUSH¬VAUGHN¬PARKS¬DAWSON¬SANTIAGO¬NORRIS¬HARDY¬LOVE¬STEELE¬CURRY¬POWERS¬SCHULTZ¬BARKER¬GUZMAN¬PAGE¬MUNOZ¬BALL¬KELLER¬CHANDLER¬WEBER¬LEONARD¬WALSH¬LYONS¬RAMSEY¬WOLFE¬SCHNEIDER¬MULLINS¬BENSON¬SHARP¬BOWEN¬DANIEL¬BARBER¬CUMMINGS¬HINES¬BALDWIN¬GRIFFITH¬VALDEZ¬HUBBARD¬SALAZAR¬REEVES¬WARNER¬STEVENSON¬BURGESS¬SANTOS¬TATE¬CROSS¬GARNER¬MANN¬MACK¬MOSS¬THORNTON¬DENNIS¬MCGEE¬FARMER¬DELGADO¬AGUILAR¬VEGA¬GLOVER¬MANNING¬COHEN¬HARMON¬RODGERS¬ROBBINS¬NEWTON¬TODD¬BLAIR¬HIGGINS¬INGRAM¬REESE¬CANNON¬STRICKLAND¬TOWNSEND¬POTTER¬GOODWIN¬WALTON¬ROWE¬HAMPTON¬ORTEGA¬PATTON¬SWANSON¬JOSEPH¬FRANCIS¬GOODMAN¬MALDONADO¬YATES¬BECKER¬ERICKSON¬HODGES¬RIOS¬CONNER¬ADKINS¬WEBSTER¬NORMAN¬MALONE¬HAMMOND¬FLOWERS¬COBB¬MOODY¬QUINN¬BLAKE¬MAXWELL¬POPE¬FLOYD¬OSBORNE¬PAUL¬MCCARTHY¬GUERRERO¬LINDSEY¬ESTRADA¬SANDOVAL¬GIBBS¬TYLER¬GROSS¬FITZGERALD¬STOKES¬DOYLE¬SHERMAN¬SAUNDERS¬WISE¬COLON¬GILL¬ALVARADO¬GREER¬PADILLA¬SIMON¬WATERS¬NUNEZ¬BALLARD¬SCHWARTZ¬MCBRIDE¬HOUSTON¬CHRISTENSEN¬KLEIN¬PRATT¬BRIGGS¬PARSONS¬MCLAUGHLIN¬ZIMMERMAN¬FRENCH¬BUCHANAN¬MORAN¬COPELAND¬ROY¬PITTMAN¬BRADY¬MCCORMICK¬HOLLOWAY¬BROCK¬POOLE¬FRANK¬LOGAN¬OWEN¬BASS¬MARSH¬DRAKE¬WONG¬JEFFERSON¬PARK¬MORTON¬ABBOTT¬SPARKS¬PATRICK¬NORTON¬HUFF¬CLAYTON¬MASSEY¬LLOYD¬FIGUEROA¬CARSON¬BOWERS¬ROBERSON¬BARTON¬TRAN¬LAMB¬HARRINGTON¬CASEY¬BOONE¬CORTEZ¬CLARKE¬MATHIS¬SINGLETON¬WILKINS¬CAIN¬BRYAN¬UNDERWOOD¬HOGAN¬MCKENZIE¬COLLIER¬LUNA¬PHELPS¬MCGUIRE¬ALLISON¬BRIDGES¬WILKERSON¬NASH¬SUMMERS¬ATKINS¬WILCOX¬PITTS¬CONLEY¬MARQUEZ¬BURNETT¬RICHARD¬COCHRAN¬CHASE¬DAVENPORT¬HOOD¬GATES¬CLAY¬AYALA¬SAWYER¬ROMAN¬VAZQUEZ¬DICKERSON¬HODGE¬ACOSTA¬FLYNN¬ESPINOZA¬NICHOLSON¬MONROE¬WOLF¬MORROW¬KIRK¬RANDALL¬ANTHONY¬WHITAKER¬OCONNOR¬SKINNER¬WARE¬MOLINA¬KIRBY¬HUFFMAN¬BRADFORD¬CHARLES¬GILMORE¬DOMINGUEZ¬ONEAL¬BRUCE¬LANG¬COMBS¬KRAMER¬HEATH¬HANCOCK¬GALLAGHER¬GAINES¬SHAFFER¬SHORT¬WIGGINS¬MATHEWS¬MCCLAIN¬FISCHER¬WALL¬SMALL¬MELTON¬HENSLEY¬BOND¬DYER¬CAMERON¬GRIMES¬CONTRERAS¬CHRISTIAN¬WYATT¬BAXTER¬SNOW¬MOSLEY¬SHEPHERD¬LARSEN¬HOOVER¬BEASLEY¬GLENN¬PETERSEN¬WHITEHEAD¬MEYERS¬KEITH¬GARRISON¬VINCENT¬SHIELDS¬HORN¬SAVAGE¬OLSEN¬SCHROEDER¬HARTMAN¬WOODARD¬MUELLER¬KEMP¬DELEON¬BOOTH¬PATEL¬CALHOUN¬WILEY¬EATON¬CLINE¬NAVARRO¬HARRELL¬LESTER¬HUMPHREY¬PARRISH¬DURAN¬HUTCHINSON¬HESS¬DORSEY¬BULLOCK¬ROBLES¬BEARD¬DALTON¬AVILA¬VANCE¬RICH¬BLACKWELL¬YORK¬JOHNS¬BLANKENSHIP¬TREVINO¬SALINAS¬CAMPOS¬PRUITT¬MOSES¬CALLAHAN¬GOLDEN¬MONTOYA¬HARDIN¬GUERRA¬MCDOWELL¬CAREY¬STAFFORD¬GALLEGOS¬HENSON¬WILKINSON¬BOOKER¬MERRITT¬MIRANDA¬ATKINSON¬ORR¬DECKER¬HOBBS¬PRESTON¬TANNER¬KNOX¬PACHECO¬STEPHENSON¬GLASS¬ROJAS¬SERRANO¬MARKS¬HICKMAN¬ENGLISH¬SWEENEY¬STRONG¬PRINCE¬MCCLURE¬CONWAY¬WALTER¬ROTH¬MAYNARD¬FARRELL¬LOWERY¬HURST¬NIXON¬WEISS¬TRUJILLO¬ELLISON¬SLOAN¬JUAREZ¬WINTERS¬MCLEAN¬RANDOLPH¬LEON¬BOYER¬VILLARREAL¬MCCALL¬GENTRY¬CARRILLO¬KENT¬AYERS¬LARA¬SHANNON¬SEXTON¬PACE¬HULL¬LEBLANC¬BROWNING¬VELASQUEZ¬LEACH¬CHANG¬HOUSE¬SELLERS¬HERRING¬NOBLE¬FOLEY¬BARTLETT¬MERCADO¬LANDRY¬DURHAM¬WALLS¬BARR¬MCKEE¬BAUER¬RIVERS¬EVERETT¬BRADSHAW¬PUGH¬VELEZ¬RUSH¬ESTES¬DODSON¬MORSE¬SHEPPARD¬WEEKS¬CAMACHO¬BEAN¬BARRON¬LIVINGSTON¬MIDDLETON¬SPEARS¬BRANCH¬BLEVINS¬CHEN¬KERR¬MCCONNELL¬HATFIELD¬HARDING¬ASHLEY¬SOLIS¬HERMAN¬FROST¬GILES¬BLACKBURN¬WILLIAM¬PENNINGTON¬WOODWARD¬FINLEY¬MCINTOSH¬KOCH¬BEST¬SOLOMON¬MCCULLOUGH¬DUDLEY¬NOLAN¬BLANCHARD¬RIVAS¬BRENNAN¬MEJIA¬KANE¬BENTON¬JOYCE¬BUCKLEY¬HALEY¬VALENTINE¬MADDOX¬RUSSO¬MCKNIGHT¬BUCK¬MOON¬MCMILLAN¬CROSBY¬BERG¬DOTSON¬MAYS¬ROACH¬CHURCH¬CHAN¬RICHMOND¬MEADOWS¬FAULKNER¬ONEILL¬KNAPP¬KLINE¬BARRY¬OCHOA¬JACOBSON¬GAY¬AVERY¬HENDRICKS¬HORNE¬SHEPARD¬HEBERT¬CHERRY¬CARDENAS¬MCINTYRE¬WHITNEY¬WALLER¬HOLMAN¬DONALDSON¬CANTU¬TERRELL¬MORIN¬GILLESPIE¬FUENTES¬TILLMAN¬SANFORD¬BENTLEY¬PECK¬KEY¬SALAS¬ROLLINS¬GAMBLE¬DICKSON¬BATTLE¬SANTANA¬CABRERA¬CERVANTES¬HOWE¬HINTON¬HURLEY¬SPENCE¬ZAMORA¬YANG¬MCNEIL¬SUAREZ¬CASE¬PETTY¬GOULD¬MCFARLAND¬SAMPSON¬CARVER¬BRAY¬ROSARIO¬MACDONALD¬STOUT¬HESTER¬MELENDEZ¬DILLON¬FARLEY¬HOPPER¬GALLOWAY¬POTTS¬BERNARD¬JOYNER¬STEIN¬AGUIRRE¬OSBORN¬MERCER¬BENDER¬FRANCO¬ROWLAND¬SYKES¬BENJAMIN¬TRAVIS¬PICKETT¬CRANE¬SEARS¬MAYO¬DUNLAP¬HAYDEN¬WILDER¬MCKAY¬COFFEY¬MCCARTY¬EWING¬COOLEY¬VAUGHAN¬BONNER¬COTTON¬HOLDER¬STARK¬FERRELL¬CANTRELL¬FULTON¬LYNN¬LOTT¬CALDERON¬ROSA¬POLLARD¬HOOPER¬BURCH¬MULLEN¬FRY¬RIDDLE¬LEVY¬DAVID¬DUKE¬ODONNELL¬GUY¬MICHAEL¬BRITT¬FREDERICK¬DAUGHERTY¬BERGER¬DILLARD¬ALSTON¬JARVIS¬FRYE¬RIGGS¬CHANEY¬ODOM¬DUFFY¬FITZPATRICK¬VALENZUELA¬MERRILL¬MAYER¬ALFORD¬MCPHERSON¬ACEVEDO¬DONOVAN¬BARRERA¬ALBERT¬COTE¬REILLY¬COMPTON¬RAYMOND¬MOONEY¬MCGOWAN¬CRAFT¬CLEVELAND¬CLEMONS¬WYNN¬NIELSEN¬BAIRD¬STANTON¬SNIDER¬ROSALES¬BRIGHT¬WITT¬STUART¬HAYS¬HOLDEN¬RUTLEDGE¬KINNEY¬CLEMENTS¬CASTANEDA¬SLATER¬HAHN¬EMERSON¬CONRAD¬BURKS¬DELANEY¬PATE¬LANCASTER¬SWEET¬JUSTICE¬TYSON¬SHARPE¬WHITFIELD¬TALLEY¬MACIAS¬IRWIN¬BURRIS¬RATLIFF¬MCCRAY¬MADDEN¬KAUFMAN¬BEACH¬GOFF¬CASH¬BOLTON¬MCFADDEN¬LEVINE¬GOOD¬BYERS¬KIRKLAND¬KIDD¬WORKMAN¬CARNEY¬DALE¬MCLEOD¬HOLCOMB¬ENGLAND¬FINCH¬HEAD¬BURT¬HENDRIX¬SOSA¬HANEY¬FRANKS¬SARGENT¬NIEVES¬DOWNS¬RASMUSSEN¬BIRD¬HEWITT¬LINDSAY¬LE¬FOREMAN¬VALENCIA¬ONEIL¬DELACRUZ¬VINSON¬DEJESUS¬HYDE¬FORBES¬GILLIAM¬GUTHRIE¬WOOTEN¬HUBER¬BARLOW¬BOYLE¬MCMAHON¬BUCKNER¬ROCHA¬PUCKETT¬LANGLEY¬KNOWLES¬COOKE¬VELAZQUEZ¬WHITLEY¬NOEL¬VANG¬",
  • "BE_PEETERS¬JANSSENS¬MAES¬JACOBS¬MERTENS¬WILLEMS¬CLAES¬GOOSSENS¬WOUTERS¬DE SMET¬",
  • "FR_MARTIN¬BERNARD¬THOMAS¬ROBERT¬RICHARD¬PETIT¬DURAND¬LEROY¬MOREAU¬SIMON¬LAURENT¬LEFEBVRE¬MICHEL¬GARCIA¬DAVID¬BERTRAND¬ROUX¬VINCENT¬FOURNIER¬¬MOREL¬GIRARD¬ANDRE¬LEFEVRE¬MERCIER¬",
  • "UK_SMITH¬JONES¬WILLIAMS¬TAYLOR¬BROWN¬DAVIES¬EVANS¬WILSON¬THOMAS¬JOHNSON¬ROBERTS¬ROBINSON¬THOMPSON¬WRIGHT¬WALKER¬WHITE¬EDWARDS¬HUGUES¬GREEN¬HALL¬LEWIS¬HARRIS¬CLARKE¬PATEL¬JACKSON¬");
  • //_/!\_ La liste des noms contient l'indicatif du pays identique a celui de l'IBAN, sauf exceptions decrites ci-apres, suivi d'un tiret ("-") et de la lettre "M" pour les prenoms Masculins ou exclusivement la lettre "F" pour les prenoms Feminins. Les prenoms sont classes du plus populaire au moins reference.
  • // Correspondance des indicatifs par pays:
  • // - FR = France
  • // Exceptions (pour les pays n'utilisant pas l'IBAN):
  • // - US = Les Etats-Unis d'Amerique
  • // Sources:
  • // - US-M: http://names.mongabay.com/male_names.htm
  • // - US-F: http://names.mongabay.com/female_names.htm
  • // - Europe -M et -F: http://en.wikipedia.org/wiki/Most_popular_given_names
  • var lprenoms = new Array("US-M_JAMES¬JOHN¬ROBERT¬MICHAEL¬WILLIAM¬DAVID¬RICHARD¬CHARLES¬JOSEPH¬THOMAS¬CHRISTOPHER¬DANIEL¬PAUL¬MARK¬DONALD¬GEORGE¬KENNETH¬STEVEN¬EDWARD¬BRIAN¬RONALD¬ANTHONY¬KEVIN¬JASON¬MATTHEW¬GARY¬TIMOTHY¬JOSE¬LARRY¬JEFFREY¬FRANK¬SCOTT¬ERIC¬STEPHEN¬ANDREW¬RAYMOND¬GREGORY¬JOSHUA¬JERRY¬DENNIS¬WALTER¬PATRICK¬PETER¬HAROLD¬DOUGLAS¬HENRY¬CARL¬ARTHUR¬RYAN¬ROGER¬JOE¬JUAN¬JACK¬ALBERT¬JONATHAN¬JUSTIN¬TERRY¬GERALD¬KEITH¬SAMUEL¬WILLIE¬RALPH¬LAWRENCE¬NICHOLAS¬ROY¬BENJAMIN¬BRUCE¬BRANDON¬ADAM¬HARRY¬FRED¬WAYNE¬BILLY¬STEVE¬LOUIS¬JEREMY¬AARON¬RANDY¬HOWARD¬EUGENE¬CARLOS¬RUSSELL¬BOBBY¬VICTOR¬MARTIN¬ERNEST¬PHILLIP¬TODD¬JESSE¬CRAIG¬ALAN¬SHAWN¬CLARENCE¬SEAN¬PHILIP¬CHRIS¬JOHNNY¬EARL¬JIMMY¬ANTONIO¬DANNY¬BRYAN¬TONY¬LUIS¬MIKE¬STANLEY¬LEONARD¬NATHAN¬DALE¬MANUEL¬RODNEY¬CURTIS¬NORMAN¬ALLEN¬MARVIN¬VINCENT¬GLENN¬JEFFERY¬TRAVIS¬JEFF¬CHAD¬JACOB¬LEE¬MELVIN¬ALFRED¬KYLE¬FRANCIS¬BRADLEY¬JESUS¬HERBERT¬FREDERICK¬RAY¬JOEL¬EDWIN¬DON¬EDDIE¬RICKY¬TROY¬RANDALL¬BARRY¬ALEXANDER¬BERNARD¬MARIO¬LEROY¬FRANCISCO¬MARCUS¬MICHEAL¬THEODORE¬CLIFFORD¬MIGUEL¬OSCAR¬JAY¬JIM¬TOM¬CALVIN¬ALEX¬JON¬RONNIE¬BILL¬LLOYD¬TOMMY¬LEON¬DEREK¬WARREN¬DARRELL¬JEROME¬FLOYD¬LEO¬ALVIN¬TIM¬WESLEY¬GORDON¬DEAN¬GREG¬JORGE¬DUSTIN¬PEDRO¬DERRICK¬DAN¬LEWIS¬ZACHARY¬COREY¬HERMAN¬MAURICE¬VERNON¬ROBERTO¬CLYDE¬GLEN¬HECTOR¬SHANE¬RICARDO¬SAM¬RICK¬LESTER¬BRENT¬RAMON¬CHARLIE¬TYLER¬GILBERT¬GENE¬MARC¬REGINALD¬RUBEN¬BRETT¬ANGEL¬NATHANIEL¬RAFAEL¬LESLIE¬EDGAR¬MILTON¬RAUL¬BEN¬CHESTER¬CECIL¬DUANE¬FRANKLIN¬ANDRE¬ELMER¬BRAD¬GABRIEL¬RON¬MITCHELL¬ROLAND¬ARNOLD¬HARVEY¬JARED¬ADRIAN¬KARL¬CORY¬CLAUDE¬ERIK¬DARRYL¬JAMIE¬NEIL¬JESSIE¬CHRISTIAN¬JAVIER¬FERNANDO¬CLINTON¬TED¬MATHEW¬TYRONE¬DARREN¬LONNIE¬LANCE¬CODY¬JULIO¬KELLY¬KURT¬ALLAN¬NELSON¬GUY¬CLAYTON¬HUGH¬MAX¬DWAYNE¬DWIGHT¬ARMANDO¬FELIX¬JIMMIE¬EVERETT¬JORDAN¬IAN¬WALLACE¬KEN¬BOB¬JAIME¬CASEY¬ALFREDO¬ALBERTO¬DAVE¬IVAN¬JOHNNIE¬SIDNEY¬BYRON¬JULIAN¬ISAAC¬MORRIS¬CLIFTON¬WILLARD¬DARYL¬ROSS¬VIRGIL¬ANDY¬MARSHALL¬SALVADOR¬PERRY¬KIRK¬SERGIO¬MARION¬TRACY¬SETH¬KENT¬TERRANCE¬RENE¬EDUARDO¬TERRENCE¬ENRIQUE¬FREDDIE¬WADE¬",
  • "US-F_MARY¬PATRICIA¬LINDA¬BARBARA¬ELIZABETH¬JENNIFER¬MARIA¬SUSAN¬MARGARET¬DOROTHY¬LISA¬NANCY¬KAREN¬BETTY¬HELEN¬SANDRA¬DONNA¬CAROL¬RUTH¬SHARON¬MICHELLE¬LAURA¬SARAH¬KIMBERLY¬DEBORAH¬JESSICA¬SHIRLEY¬CYNTHIA¬ANGELA¬MELISSA¬BRENDA¬AMY¬ANNA¬REBECCA¬VIRGINIA¬KATHLEEN¬PAMELA¬MARTHA¬DEBRA¬AMANDA¬STEPHANIE¬CAROLYN¬CHRISTINE¬MARIE¬JANET¬CATHERINE¬FRANCES¬ANN¬JOYCE¬DIANE¬ALICE¬JULIE¬HEATHER¬TERESA¬DORIS¬GLORIA¬EVELYN¬JEAN¬CHERYL¬MILDRED¬KATHERINE¬JOAN¬ASHLEY¬JUDITH¬ROSE¬JANICE¬KELLY¬NICOLE¬JUDY¬CHRISTINA¬KATHY¬THERESA¬BEVERLY¬DENISE¬TAMMY¬IRENE¬JANE¬LORI¬RACHEL¬MARILYN¬ANDREA¬KATHRYN¬LOUISE¬SARA¬ANNE¬JACQUELINE¬WANDA¬BONNIE¬JULIA¬RUBY¬LOIS¬TINA¬PHYLLIS¬NORMA¬PAULA¬DIANA¬ANNIE¬LILLIAN¬EMILY¬ROBIN¬PEGGY¬CRYSTAL¬GLADYS¬RITA¬DAWN¬CONNIE¬FLORENCE¬TRACY¬EDNA¬TIFFANY¬CARMEN¬ROSA¬CINDY¬GRACE¬WENDY¬VICTORIA¬EDITH¬KIM¬SHERRY¬SYLVIA¬JOSEPHINE¬THELMA¬SHANNON¬SHEILA¬ETHEL¬ELLEN¬ELAINE¬MARJORIE¬CARRIE¬CHARLOTTE¬MONICA¬ESTHER¬PAULINE¬EMMA¬JUANITA¬ANITA¬RHONDA¬HAZEL¬AMBER¬EVA¬DEBBIE¬APRIL¬LESLIE¬CLARA¬LUCILLE¬JAMIE¬JOANNE¬ELEANOR¬VALERIE¬DANIELLE¬MEGAN¬ALICIA¬SUZANNE¬MICHELE¬GAIL¬BERTHA¬DARLENE¬VERONICA¬JILL¬ERIN¬GERALDINE¬LAUREN¬CATHY¬JOANN¬LORRAINE¬LYNN¬SALLY¬REGINA¬ERICA¬BEATRICE¬DOLORES¬BERNICE¬AUDREY¬YVONNE¬ANNETTE¬JUNE¬SAMANTHA¬MARION¬DANA¬STACY¬ANA¬RENEE¬IDA¬VIVIAN¬ROBERTA¬HOLLY¬BRITTANY¬MELANIE¬LORETTA¬YOLANDA¬JEANETTE¬LAURIE¬KATIE¬KRISTEN¬VANESSA¬ALMA¬SUE¬ELSIE¬BETH¬JEANNE¬VICKI¬CARLA¬TARA¬ROSEMARY¬EILEEN¬TERRI¬GERTRUDE¬LUCY¬TONYA¬ELLA¬STACEY¬WILMA¬GINA¬KRISTIN¬JESSIE¬NATALIE¬AGNES¬VERA¬WILLIE¬CHARLENE¬BESSIE¬DELORES¬MELINDA¬PEARL¬ARLENE¬MAUREEN¬COLLEEN¬ALLISON¬TAMARA¬JOY¬GEORGIA¬CONSTANCE¬LILLIE¬CLAUDIA¬JACKIE¬MARCIA¬TANYA¬NELLIE¬MINNIE¬MARLENE¬HEIDI¬GLENDA¬LYDIA¬VIOLA¬COURTNEY¬MARIAN¬STELLA¬CAROLINE¬DORA¬JO¬VICKIE¬MATTIE¬TERRY¬MAXINE¬IRMA¬MABEL¬MARSHA¬MYRTLE¬LENA¬CHRISTY¬DEANNA¬PATSY¬HILDA¬GWENDOLYN¬JENNIE¬NORA¬MARGIE¬NINA¬CASSANDRA¬LEAH¬PENNY¬KAY¬PRISCILLA¬NAOMI¬CAROLE¬BRANDY¬OLGA¬BILLIE¬DIANNE¬TRACEY¬LEONA¬JENNY¬FELICIA¬SONIA¬MIRIAM¬VELMA¬BECKY¬BOBBIE¬VIOLET¬KRISTINA¬TONI¬MISTY¬MAE¬SHELLY¬DAISY¬RAMONA¬SHERRI¬ERIKA¬KATRINA¬CLAIRE¬LINDSEY¬LINDSAY¬GENEVA¬GUADALUPE¬BELINDA¬MARGARITA¬SHERYL¬CORA¬FAYE¬ADA¬NATASHA¬SABRINA¬ISABEL¬MARGUERITE¬HATTIE¬HARRIET¬MOLLY¬CECILIA¬KRISTI¬BRANDI¬BLANCHE¬SANDY¬ROSIE¬JOANNA¬IRIS¬EUNICE¬ANGIE¬INEZ¬LYNDA¬MADELINE¬AMELIA¬ALBERTA¬GENEVIEVE¬MONIQUE¬JODI¬JANIE¬MAGGIE¬KAYLA¬SONYA¬JAN¬LEE¬KRISTINE¬CANDACE¬FANNIE¬MARYANN¬OPAL¬ALISON¬YVETTE¬MELODY¬LUZ¬SUSIE¬OLIVIA¬FLORA¬SHELLEY¬KRISTY¬MAMIE¬LULA¬LOLA¬VERNA¬BEULAH¬ANTOINETTE¬CANDICE¬JUANA¬JEANNETTE¬PAM¬KELLI¬HANNAH¬WHITNEY¬BRIDGET¬KARLA¬CELIA¬LATOYA¬PATTY¬SHELIA¬GAYLE¬DELLA¬VICKY¬LYNNE¬SHERI¬MARIANNE¬KARA¬JACQUELYN¬ERMA¬BLANCA¬MYRA¬LETICIA¬PAT¬KRISTA¬ROXANNE¬ANGELICA¬JOHNNIE¬ROBYN¬FRANCIS¬ADRIENNE¬ROSALIE¬ALEXANDRA¬BROOKE¬BETHANY¬SADIE¬BERNADETTE¬TRACI¬JODY¬KENDRA¬JASMINE¬NICHOLE¬RACHAEL¬CHELSEA¬MABLE¬ERNESTINE¬MURIEL¬MARCELLA¬ELENA¬KRYSTAL¬ANGELINA¬NADINE¬KARI¬ESTELLE¬DIANNA¬PAULETTE¬LORA¬MONA¬DOREEN¬ROSEMARIE¬ANGEL¬DESIREE¬ANTONIA¬HOPE¬GINGER¬JANIS¬BETSY¬CHRISTIE¬FREDA¬MERCEDES¬MEREDITH¬LYNETTE¬TERI¬CRISTINA¬EULA¬LEIGH¬MEGHAN¬SOPHIA¬ELOISE¬ROCHELLE¬GRETCHEN¬CECELIA¬RAQUEL¬HENRIETTA¬ALYSSA¬JANA¬KELLEY¬GWEN¬KERRY¬JENNA¬TRICIA¬LAVERNE¬OLIVE¬ALEXIS¬TASHA¬SILVIA¬ELVIRA¬CASEY¬DELIA¬SOPHIE¬KATE¬PATTI¬LORENA¬KELLIE¬SONJA¬LILA¬LANA¬DARLA¬MAY¬MINDY¬ESSIE¬MANDY¬LORENE¬ELSA¬JOSEFINA¬JEANNIE¬MIRANDA¬DIXIE¬LUCIA¬MARTA¬FAITH¬LELA¬JOHANNA¬SHARI¬CAMILLE¬TAMI¬SHAWNA¬ELISA¬EBONY¬MELBA¬ORA¬NETTIE¬TABITHA¬OLLIE¬JAIME¬WINIFRED¬KRISTIE¬MARINA¬ALISHA¬AIMEE¬RENA¬MYRNA¬MARLA¬TAMMIE¬LATASHA¬BONITA¬PATRICE¬RONDA¬SHERRIE¬ADDIE¬FRANCINE¬DELORIS¬STACIE¬ADRIANA¬CHERI¬SHELBY¬ABIGAIL¬CELESTE¬JEWEL¬CARA¬ADELE¬REBEKAH¬LUCINDA¬DORTHY¬CHRIS¬EFFIE¬TRINA¬REBA¬SHAWN¬SALLIE¬AURORA¬LENORA¬ETTA¬LOTTIE¬KERRI¬TRISHA¬NIKKI¬ESTELLA¬FRANCISCA¬JOSIE¬TRACIE¬MARISSA¬KARIN¬BRITTNEY¬JANELLE¬LOURDES¬LAUREL¬HELENE¬FERN¬ELVA¬CORINNE¬KELSEY¬INA¬BETTIE¬ELISABETH¬AIDA¬CAITLIN¬INGRID¬IVA¬EUGENIA¬CHRISTA¬GOLDIE¬CASSIE¬MAUDE¬JENIFER¬THERESE¬FRANKIE¬DENA¬LORNA¬JANETTE¬LATONYA¬CANDY¬MORGAN¬CONSUELO¬TAMIKA¬ROSETTA¬DEBORA¬CHERIE¬POLLY¬DINA¬JEWELL¬FAY¬JILLIAN¬DOROTHEA¬NELL¬TRUDY¬ESPERANZA¬PATRICA¬KIMBERLEY¬SHANNA¬HELENA¬CAROLINA¬CLEO¬STEFANIE¬ROSARIO¬OLA¬JANINE¬MOLLIE¬LUPE¬ALISA¬LOU¬MARIBEL¬SUSANNE¬BETTE¬SUSANA¬ELISE¬CECILE¬ISABELLE¬LESLEY¬JOCELYN¬PAIGE¬JONI¬RACHELLE¬LEOLA¬DAPHNE¬ALTA¬ESTER¬PETRA¬GRACIELA¬IMOGENE¬JOLENE¬KEISHA¬LACEY¬GLENNA¬GABRIELA¬KERI¬URSULA¬LIZZIE¬KIRSTEN¬SHANA¬ADELINE¬MAYRA¬JAYNE¬JACLYN¬GRACIE¬SONDRA¬CARMELA¬MARISA¬ROSALIND¬CHARITY¬TONIA¬BEATRIZ¬MARISOL¬CLARICE¬JEANINE¬SHEENA¬ANGELINE¬FRIEDA¬LILY¬ROBBIE¬SHAUNA¬MILLIE¬CLAUDETTE¬CATHLEEN¬ANGELIA¬GABRIELLE¬AUTUMN¬KATHARINE¬SUMMER¬JODIE¬STACI¬LEA¬CHRISTI¬JIMMIE¬JUSTINE¬ELMA¬LUELLA¬MARGRET¬DOMINIQUE¬SOCORRO¬RENE¬MARTINA¬MARGO¬MAVIS¬CALLIE¬BOBBI¬MARITZA¬LUCILE¬LEANNE¬JEANNINE¬DEANA¬AILEEN¬LORIE¬LADONNA¬WILLA¬MANUELA¬GALE¬SELMA¬DOLLY¬SYBIL¬ABBY¬LARA¬DALE¬IVY¬DEE¬WINNIE¬MARCY¬LUISA¬JERI¬MAGDALENA¬OFELIA¬MEAGAN¬AUDRA¬MATILDA¬LEILA¬CORNELIA¬BIANCA¬SIMONE¬BETTYE¬RANDI¬VIRGIE¬LATISHA¬BARBRA¬GEORGINA¬ELIZA¬LEANN¬BRIDGETTE¬RHODA¬HALEY¬ADELA¬NOLA¬BERNADINE¬FLOSSIE¬ILA¬GRETA¬RUTHIE¬NELDA¬MINERVA¬LILLY¬TERRIE¬LETHA¬HILARY¬ESTELA¬VALARIE¬BRIANNA¬ROSALYN¬EARLINE¬CATALINA¬AVA¬MIA¬CLARISSA¬LIDIA¬CORRINE¬ALEXANDRIA¬CONCEPCION¬TIA¬SHARRON¬RAE¬DONA¬ERICKA¬JAMI¬ELNORA¬CHANDRA¬LENORE¬NEVA¬MARYLOU¬MELISA¬TABATHA¬SERENA¬AVIS¬ALLIE¬SOFIA¬JEANIE¬ODESSA¬NANNIE¬HARRIETT¬LORAINE¬PENELOPE¬MILAGROS¬EMILIA¬BENITA¬ALLYSON¬ASHLEE¬TANIA¬TOMMIE¬ESMERALDA¬KARINA¬EVE¬PEARLIE¬ZELMA¬MALINDA¬NOREEN¬TAMEKA¬SAUNDRA¬HILLARY¬AMIE¬ALTHEA¬ROSALINDA¬JORDAN¬LILIA¬ALANA¬GAY¬CLARE¬ALEJANDRA¬ELINOR¬MICHAEL¬LORRIE¬JERRI¬DARCY¬EARNESTINE¬CARMELLA¬TAYLOR¬NOEMI¬MARCIE¬LIZA¬ANNABELLE¬LOUISA¬EARLENE¬MALLORY¬CARLENE¬NITA¬SELENA¬TANISHA¬KATY¬JULIANNE¬JOHN¬LAKISHA¬EDWINA¬MARICELA¬MARGERY¬KENYA¬DOLLIE¬ROXIE¬ROSLYN¬KATHRINE¬NANETTE¬CHARMAINE¬LAVONNE¬ILENE¬KRIS¬TAMMI¬SUZETTE¬CORINE¬KAYE¬JERRY¬MERLE¬CHRYSTAL¬LINA¬DEANNE¬LILIAN¬JULIANA¬ALINE¬LUANN¬KASEY¬MARYANNE¬EVANGELINE¬COLETTE¬MELVA¬LAWANDA¬YESENIA¬NADIA¬MADGE¬KATHIE¬EDDIE¬OPHELIA¬VALERIA¬NONA¬MITZI¬MARI¬GEORGETTE¬CLAUDINE¬FRAN¬ALISSA¬ROSEANN¬LAKEISHA¬SUSANNA¬REVA¬DEIDRE¬CHASITY¬SHEREE¬CARLY¬JAMES¬ELVIA¬ALYCE¬DEIRDRE¬GENA¬BRIANA¬ARACELI¬KATELYN¬ROSANNE¬WENDI¬TESSA¬BERTA¬MARVA¬IMELDA¬MARIETTA¬MARCI¬LEONOR¬ARLINE¬SASHA¬MADELYN¬JANNA¬JULIETTE¬DEENA¬AURELIA¬JOSEFA¬AUGUSTA¬LILIANA¬YOUNG¬CHRISTIAN¬LESSIE¬AMALIA¬SAVANNAH¬ANASTASIA¬VILMA¬NATALIA¬ROSELLA¬LYNNETTE¬CORINA¬ALFREDA¬LEANNA¬CAREY¬AMPARO¬COLEEN¬TAMRA¬AISHA¬WILDA¬KARYN¬CHERRY¬QUEEN¬MAURA¬MAI¬EVANGELINA¬ROSANNA¬HALLIE¬ERNA¬ENID¬MARIANA¬LACY¬JULIET¬JACKLYN¬FREIDA¬MADELEINE¬MARA¬HESTER¬CATHRYN¬LELIA¬CASANDRA¬BRIDGETT¬ANGELITA¬JANNIE¬DIONNE¬ANNMARIE¬KATINA¬BERYL¬PHOEBE¬MILLICENT¬KATHERYN¬DIANN¬CARISSA¬MARYELLEN¬LIZ¬LAURI¬HELGA¬GILDA¬ADRIAN¬RHEA¬MARQUITA¬HOLLIE¬TISHA¬TAMERA¬ANGELIQUE¬FRANCESCA¬BRITNEY¬KAITLIN¬LOLITA¬FLORINE¬ROWENA¬REYNA¬TWILA¬FANNY¬JANELL¬INES¬CONCETTA¬BERTIE¬ALBA¬BRIGITTE¬ALYSON¬VONDA¬PANSY¬ELBA¬NOELLE¬LETITIA¬KITTY¬DEANN¬BRANDIE¬LOUELLA¬LETA¬FELECIA¬SHARLENE¬LESA¬BEVERLEY¬ROBERT¬ISABELLA¬HERMINIA¬TERRA¬CELINA¬",
  • "BE-M_Noah¬Thomas¬Nathan¬Lucas¬Louis¬Arthur¬Milan¬Hugo¬Maxime¬Mohamed¬",
  • "UK-M_Jack¬Thomas¬Oliver¬Joshua¬Harry¬Charlie¬Daniel¬William¬James¬Alfie¬Jack¬James¬Matthew¬Daniel¬Ryan¬Thomas¬Adam¬Joshua¬Dylan¬Ben¬Lewis¬Jack¬Ryan¬James¬Callum¬Cameron¬Daniel¬Liam¬Jamie¬Kyle¬Jack¬Dylan¬Thomas¬Joshua¬Rhys¬Daniel¬Ethan¬Oliver¬William¬James¬",
  • "FR-M_Enzo¬Mathis¬Lucas¬Hugo¬Mathéo¬Nathan¬Théo¬Noah¬Mattéo¬Thomas¬",
  • "BE-F_Emma¬Marie¬Laura¬Julie¬Louise¬Clara¬Manon¬Léa¬Sarah¬Luna¬",
  • "UK-F_Grace¬Ruby¬Olivia¬Emily¬Jessica¬Sophie¬Chloe¬Lily¬Ella¬Amelia¬Ruby¬Megan¬Grace¬Chloe¬Emily¬Ffion¬Olivia¬Seren¬Ella¬Sophie¬Sophie¬Emma¬Lucy¬Katie¬Erin¬Ellie¬Amy¬Emily¬Chloe¬Olivia¬",
  • "FR-F_Emma¬Léa¬Manon¬Clara¬Chloé¬Inès¬Camille¬Sarah¬Océane¬Jade¬");
  • //==========================================================================================================
  • //=> La fonction permet d'extraire une valeur d'une liste dont les elements sont separes par une etoile * <=
  • //==========================================================================================================
  • function extraire(liste_asArray,ligne_asNumber,colonne_asNumber,separateur_asString)
  • {
  • var str0 = liste_asArray[ligne_asNumber];
  • var col = colonne_asNumber;
  • var strSep = separateur_asString;
  • var stra = str0;
  • var a = stra.search(strSep);
  • var cpta = 0;
  • var str1 = "";
  • while (a>=0)
  • {
  • if (cpta==col)
  • {
  • str1 = stra.substr(0,a);
  • a = -1;
  • }
  • else
  • {
  • stra = stra.substr(a+1,stra.length-a);
  • a = stra.search(strSep);
  • cpta++;
  • }
  • } //end while
  • return str1;
  • } //end function
  • //==============================================================================================
  • //=> La fonction permet de charger la liste des cartes, des noms et prenoms dans la page HTML <=
  • //==============================================================================================
  • function chargement()
  • {
  • //#########################################################################
  • //#___Generation du menu deroulant pour la liste des cartes disponibles___#
  • //#########################################################################
  • strCarteModele = "<select id='SelectCarteModele' onChange='javascript:AfficherNation();'>";
  • for(i=0;i<lcartes.length;i++)
  • {
  • var strType = extraire(lcartes,i,0,"¬");
  • var strBanque = extraire(lcartes,i,1,"¬");
  • var strModele = extraire(lcartes,i,2,"¬");
  • var strCarte = strType;
  • if (strBanque=="")
  • {
  • if (strModele=="")
  • {
  • //rien
  • }
  • else
  • {
  • strCarte += " - Modèle "+ strModele;
  • } //end if else
  • }
  • else
  • {
  • if (strModele=="")
  • {
  • strCarte += " ("+ strBanque +")";
  • }
  • else
  • {
  • strCarte += " ("+ strBanque +") - Modèle "+ strModele;
  • } //end if else
  • } //end if else
  • strCarteModele += "<option value ="+ i +">"+ strCarte +"</option>";
  • } //end for i
  • document.getElementById("CarteModele").innerHTML = strCarteModele + "</select>";
  • //#####################################################################################################
  • //#___Generation du menu deroulant pour la liste des nationalites disponibles pour les noms/prenoms___#
  • //#####################################################################################################
  • //__Recherche du nombre de nations disponibles dans la liste des noms__
  • var lcptNoms = new Array();
  • var cpt = 0;
  • for(i=0;i<lnoms.length;i++)
  • {
  • var strNom = lnoms[i].substr(0,2);
  • var deja = 0;
  • for(j=0;j<cpt;j++)
  • {
  • if (strNom == lcptNoms[j])
  • {
  • deja = 1;
  • }
  • } //end for j
  • if (deja == 0)
  • {
  • lcptNoms[cpt] = strNom;
  • cpt++;
  • }
  • } //end for i
  • //__Recherche du nombre de nations disponibles dans la liste des prenoms__
  • var lcptPrenoms = new Array();
  • var cpt = 0;
  • for(i=0;i<lprenoms.length;i++)
  • {
  • var strPrenom = lprenoms[i].substr(0,2);
  • var deja = 0;
  • for(j=0;j<cpt;j++)
  • {
  • if (strPrenom == lcptPrenoms[j])
  • {
  • deja = 1;
  • }
  • } //end for j
  • if (deja == 0)
  • {
  • lcptPrenoms[cpt] = strPrenom;
  • cpt++;
  • }
  • } //end for i
  • //__Recherche du nombre de nations identiques entre les 2 listes lcptNoms et lcptPrenoms__
  • var lcptNations = new Array();
  • var cpt = 0;
  • for(i=0;i<lnoms.length;i++)
  • {
  • for(j=0;j<lprenoms.length;j++)
  • {
  • if (lcptNoms[i] == lcptPrenoms[j])
  • {
  • var strNation = lcptNoms[i];
  • }
  • var deja = 0;
  • for(k=0;k<cpt;k++)
  • {
  • if (strNation == lcptNations[k])
  • {
  • deja = 1;
  • }
  • } //end for k
  • if (deja == 0)
  • {
  • lcptNations[cpt] = strNation;
  • cpt++;
  • }
  • } //end for j
  • } //end for i
  • //__Creation de la liste deroulante__
  • strNations = "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
  • strNations += "<input type='checkbox' id='CheckBoxFixerNation'> ";
  • strNations += "Fixer la nationalité du titulaire : ";
  • strNations += "<select id='SelectFixerNation' onchange=";
  • strNations += '"javascript:document.getElementById(';
  • strNations += "'CheckBoxFixerNation').checked=true;";
  • strNations += '">';
  • for(i=0;i<lcptNations.length;i++)
  • {
  • strNations += "<option value ='"+ lcptNations[i] +"'>"+ lcptNations[i] +"</option>";
  • } //end for i
  • strNations += "</select> (liste produite a partir des noms et prenoms disponibles pour une meme nationalite)";
  • strNations += "<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
  • strNations += "Par défaut, la nationalité du titulaire est basée sur la liste définie pour le modèle de carte sélectionné.";
  • document.getElementById("Nations").innerHTML = strNations;
  • } //end function
  • //============================================================================================================
  • //=> La fonction permet de verifier si valeurs saisies pour les options selectionnees sont correctes ou non <=
  • //============================================================================================================
  • function verifier()
  • {
  • var index = document.getElementById("SelectCarteModele").selectedIndex;
  • //_____Liste de verification des options_____
  • //__[0] = nb de numeros a generer
  • //__[1] = numero de carte fixe
  • //__[2] = cvc
  • //__[3] = date
  • //__[4] = nom du titulaire
  • //__[5] = doublons carte
  • //__[6] = suites carte
  • //__[7] = doublons cvc
  • //__[8] = suites cvc
  • //__[9] = Afficher Prenom Complet
  • //__[10] = CVC a partir de 2 cles via T-DES
  • //__[11] = Afficher les resultats dans une zone de texte
  • //__[12] = Fixer la nationalite du titulaire
  • var lverif = new Array(1,
  • "Generer",
  • "Generer",
  • "Generer",
  • "Generer",
  • 0,
  • 0,
  • 0,
  • 0,
  • false,
  • false,
  • false,
  • "Generer");
  • //___Option: Quantite de cartes a generer ?___
  • if (document.getElementById("CheckBoxNbCB").checked==true)
  • {
  • var strNumero = document.getElementById("NbCB").value;
  • if (strNumero=="")
  • {
  • alert("Vous n'avez pas saisi de quantite de cartes a generer.\nUn seul numero de carte sera donc genere.");
  • }
  • else
  • {
  • lverif[0] = Number(strNumero);
  • } //end if else
  • } //end if then
  • //___Option: Numero de carte fixe ?___
  • if (document.getElementById("CheckBoxFixerCarte").checked==true)
  • {
  • var strNumero = document.getElementById("FixerCarte").value;
  • if (strNumero=="")
  • {
  • alert("Vous n'avez pas saisi de numero de carte bancaire.\nLe numero sera donc genere automatiquement.");
  • }
  • else
  • {
  • strNumero = strNumero.replace(/-/g, "");
  • strNumero = strNumero.replace(/ /g, "");
  • var taille = Number(extraire(lcartes,index,4,"¬"));
  • if (strNumero.length==taille)
  • {
  • lverif[1] = strNumero;
  • }
  • else
  • {
  • alert("La taille du numero de carte bancaire saisi ("+ strNumero.length +") ne correspond pas a celle du modele de carte selectionne ("+ taille +").\nLe numero sera donc genere automatiquement.");
  • } //end if else
  • } //end if else
  • } //end if then
  • //___Option: Numero de controle (CVC) fixe ?___
  • if (document.getElementById("CheckBoxFixerCVC").checked==true)
  • {
  • var strCVC = document.getElementById("FixerCVC").value;
  • if (strCVC=="")
  • {
  • alert("Vous n'avez pas saisi de numero de controle (CVC).\nLe numero sera donc genere automatiquement.");
  • }
  • else
  • {
  • strCVC = strCVC.replace(/ /g, "");
  • var taille = Number(extraire(lcartes,index,6,"¬"));
  • if (strCVC.length==taille)
  • {
  • lverif[2] = strCVC;
  • }
  • else
  • {
  • alert("La taille du numero de controle (CVC) saisi ("+ strCVC.length +") ne correspond pas a celle du modele de carte selectionne ("+ taille +").\nLe numero sera donc genere automatiquement.");
  • } //end if else
  • } //end if else
  • } //end if then
  • //___Option: Date fixe ?___
  • if (document.getElementById("CheckBoxFixerDate").checked==true)
  • {
  • var indexMois = document.getElementById("mois").selectedIndex;
  • var mois = document.getElementById("mois").options[indexMois].value;
  • var indexAnnee = document.getElementById("annee").selectedIndex;
  • var annee = document.getElementById("annee").options[indexAnnee].value;
  • lverif[3] = mois +"/"+ annee;
  • } //end if then
  • //___Option: Nom du titulaire fixe ?___
  • if (document.getElementById("CheckBoxFixerNom").checked==true)
  • {
  • var strTitulaire = document.getElementById("FixerNom").value;
  • if (strTitulaire=="")
  • {
  • alert("Vous n'avez pas saisi de nom de titulaire.\nLe nom sera donc genere automatiquement.");
  • }
  • else
  • {
  • lverif[4] = strTitulaire;
  • } //end if else
  • } //end if then
  • //___Option: Interdire doublons dans le numero de carte ?___
  • if (document.getElementById("CheckBoxDoublonsCarte").checked==true)
  • {
  • var strDoublonsCarte = document.getElementById("DoublonsCarte").value;
  • if (strDoublonsCarte=="")
  • {
  • alert("Vous n'avez pas saisi le nombre maximum de chiffres a considerer par doublons.\nLes doublons ne seront donc pas interdits.");
  • }
  • else
  • {
  • lverif[5] = Number(strDoublonsCarte);
  • } //end if else
  • if (document.getElementById("CheckBoxFixerCarte").checked==true)
  • {
  • alert("L'interdiction des doublons ne s'applique pas sur le numero de carte fixé.");
  • }
  • } //end if then
  • //___Option: Interdire suites dans le numero de carte ?___
  • if (document.getElementById("CheckBoxSuitesCarte").checked==true)
  • {
  • var strSuitesCarte = document.getElementById("SuitesCarte").value;
  • if (strSuitesCarte=="")
  • {
  • alert("Vous n'avez pas saisi le nombre maximum de chiffres pour une suite a interdire.\nLes suites ne seront donc pas interdites.");
  • }
  • else
  • {
  • lverif[6] = Number(strSuitesCarte);
  • } //end if else
  • if (document.getElementById("CheckBoxFixerCarte").checked==true)
  • {
  • alert("L'interdiction des suites ne s'applique pas sur le numero de carte fixé.");
  • }
  • } //end if then
  • //___Option: Interdire doublons dans le numero de controle (CVC) ?___
  • if (document.getElementById("CheckBoxDoublonsCVC").checked==true)
  • {
  • var strDoublonsCVC = document.getElementById("DoublonsCVC").value;
  • if (strDoublonsCVC=="")
  • {
  • alert("Vous n'avez pas saisi le nombre maximum de chiffres a considerer par doublons.\nLes doublons ne seront donc pas interdits.");
  • }
  • else
  • {
  • lverif[7] = Number(strDoublonsCVC);
  • } //end if else
  • if (document.getElementById("CheckBoxFixerCVC").checked==true)
  • {
  • alert("L'interdiction des doublons ne s'applique pas sur le numero de controle (CVC) fixé.");
  • }
  • } //end if then
  • //___Option: Interdire suites dans le numero de controle (CVC) ?___
  • if (document.getElementById("CheckBoxSuitesCVC").checked==true)
  • {
  • var strSuitesCVC = document.getElementById("SuitesCVC").value;
  • if (strSuitesCVC=="")
  • {
  • alert("Vous n'avez pas saisi le nombre maximum de chiffres pour une suite a interdire.\nLes suites ne seront donc pas interdites.");
  • }
  • else
  • {
  • lverif[8] = Number(strSuitesCVC);
  • } //end if else
  • if (document.getElementById("CheckBoxFixerCVC").checked==true)
  • {
  • alert("L'interdiction des suites ne s'applique pas sur le numero de controle (CVC) fixé.");
  • }
  • } //end if then
  • //___Option: Afficher Prenom Complet ?___
  • if (document.getElementById("CheckBoxPrenomComplet").checked==true)
  • {
  • lverif[9] = true;
  • } //end if then
  • //___Option: Generer le numero ce controle (CVC) a partir de 2 cles en utilisant le Triple-DES ?___
  • if (document.getElementById("CheckBoxDESCVC").checked==true)
  • {
  • lverif[10] = true;
  • } //end if then
  • //___Option: Afficher Resultats dans une Zone de Texte ?___
  • if (document.getElementById("CheckBoxTypeAffichage").checked==true)
  • {
  • lverif[11] = true;
  • } //end if then
  • //___Option: NAtionalite du titulaire fixe ?___
  • if (document.getElementById("CheckBoxFixerNation").checked==true)
  • {
  • var indexNation = document.getElementById("SelectFixerNation").selectedIndex;
  • var strNation = document.getElementById("SelectFixerNation").options[indexNation].value;
  • lverif[12] = strNation;
  • } //end if then
  • return lverif;
  • } //end function
  • //======================
  • //=> GenererCarte.txt <=
  • //======================
  • function genererCarte(index_asNumber)
  • {
  • var index = index_asNumber;
  • var strChiffres = "0123456789";
  • var strPrefixe = extraire(lcartes,index,3,"¬");
  • var taille = Number(extraire(lcartes,index,4,"¬"));
  • var strCarte = strPrefixe;
  • var restant = taille - strPrefixe.length - 1;
  • for(i=0;i<restant;i++)
  • {
  • var aleatoire = Math.floor((strChiffres.length) * Math.random());
  • strCarte += strChiffres.substr(aleatoire,1);
  • }
  • strCarte += trouverCleLuhn(strCarte);
  • return strCarte;
  • } //end function
  • //=========================================================================================================================
  • //=> La fonction permet de trouver le dernier chiffre d'un numero de carte bancaire selon l'algorithme de la Cle de Luhn <=
  • //=========================================================================================================================
  • //Source: http://javascript.internet.com/forms/val-credit-card.html
  • function trouverCleLuhn(numero_asString)
  • {
  • var str0 = numero_asString;
  • var strCle = "0123456789";
  • var cle = 0;
  • var str1 = str0 + strCle.substr(cle,1);
  • while (mod10(str1) == false)
  • {
  • cle++;
  • str1 = str0 + strCle.substr(cle,1);
  • }
  • return strCle.substr(cle,1);
  • } //end function
  • function mod10(numero_asString)
  • {
  • var str0 = numero_asString;
  • var lstr0 = new Array(str0.length);
  • var n = 0;
  • for(n=0;n<str0.length;n++)
  • {
  • lstr0[n] = parseInt(str0.charAt(n));
  • } //end for n
  • for(n=lstr0.length-2;n>=0;n-=2)
  • {
  • lstr0[n] *= 2;
  • if (lstr0[n] > 9)
  • {lstr0[n] -= 9;}
  • } //end for n
  • var s = 0;
  • for(n=0;n<lstr0.length;n++)
  • {
  • s += lstr0[n];
  • } //end for n
  • return (((s%10)==0)?true : false);
  • } //end function
  • //===========================
  • //=> GenererCVC_Random.txt <=
  • //===========================
  • function genererCVC_random(index_asNumber)
  • {
  • var index = index_asNumber;
  • var strChiffres = "0123456789";
  • var taille = Number(extraire(lcartes,index,6,"¬"));
  • var strCVC = "";
  • for(i=0;i<taille;i++)
  • {
  • var aleatoire = Math.floor((strChiffres.length) * Math.random());
  • strCVC += strChiffres.substr(aleatoire,1);
  • }
  • return strCVC;
  • } //end function
  • //================================
  • //=> DataEncryptionStandard.txt <=
  • //================================
  • //Source: http://people.eku.edu/styere/Encrypt/JS-DES.html
  • // special value stored in x[0] to indicate a problem
  • var ERROR_VAL = -9876;
  • // initial permutation (split into left/right halves )
  • // since DES numbers bits starting at 1, we will ignore x[0]
  • var IP_perm = new Array( -1,
  • 58, 50, 42, 34, 26, 18, 10, 2,
  • 60, 52, 44, 36, 28, 20, 12, 4,
  • 62, 54, 46, 38, 30, 22, 14, 6,
  • 64, 56, 48, 40, 32, 24, 16, 8,
  • 57, 49, 41, 33, 25, 17, 9, 1,
  • 59, 51, 43, 35, 27, 19, 11, 3,
  • 61, 53, 45, 37, 29, 21, 13, 5,
  • 63, 55, 47, 39, 31, 23, 15, 7 );
  • // final permutation (inverse initial permutation)
  • var FP_perm = new Array( -1,
  • 40, 8, 48, 16, 56, 24, 64, 32,
  • 39, 7, 47, 15, 55, 23, 63, 31,
  • 38, 6, 46, 14, 54, 22, 62, 30,
  • 37, 5, 45, 13, 53, 21, 61, 29,
  • 36, 4, 44, 12, 52, 20, 60, 28,
  • 35, 3, 43, 11, 51, 19, 59, 27,
  • 34, 2, 42, 10, 50, 18, 58, 26,
  • 33, 1, 41, 9, 49, 17, 57, 25 );
  • // per-round expansion
  • var E_perm = new Array( -1,
  • 32, 1, 2, 3, 4, 5,
  • 4, 5, 6, 7, 8, 9,
  • 8, 9, 10, 11, 12, 13,
  • 12, 13, 14, 15, 16, 17,
  • 16, 17, 18, 19, 20, 21,
  • 20, 21, 22, 23, 24, 25,
  • 24, 25, 26, 27, 28, 29,
  • 28, 29, 30, 31, 32, 1 );
  • // per-round permutation
  • var P_perm = new Array( -1,
  • 16, 7, 20, 21, 29, 12, 28, 17,
  • 1, 15, 23, 26, 5, 18, 31, 10,
  • 2, 8, 24, 14, 32, 27, 3, 9,
  • 19, 13, 30, 6, 22, 11, 4, 25 );
  • // note we do use element 0 in the S-Boxes
  • var S1 = new Array(
  • 14, 4, 13, 1, 2, 15, 11, 8, 3, 10, 6, 12, 5, 9, 0, 7,
  • 0, 15, 7, 4, 14, 2, 13, 1, 10, 6, 12, 11, 9, 5, 3, 8,
  • 4, 1, 14, 8, 13, 6, 2, 11, 15, 12, 9, 7, 3, 10, 5, 0,
  • 15, 12, 8, 2, 4, 9, 1, 7, 5, 11, 3, 14, 10, 0, 6, 13 );
  • var S2 = new Array(
  • 15, 1, 8, 14, 6, 11, 3, 4, 9, 7, 2, 13, 12, 0, 5, 10,
  • 3, 13, 4, 7, 15, 2, 8, 14, 12, 0, 1, 10, 6, 9, 11, 5,
  • 0, 14, 7, 11, 10, 4, 13, 1, 5, 8, 12, 6, 9, 3, 2, 15,
  • 13, 8, 10, 1, 3, 15, 4, 2, 11, 6, 7, 12, 0, 5, 14, 9 );
  • var S3 = new Array(
  • 10, 0, 9, 14, 6, 3, 15, 5, 1, 13, 12, 7, 11, 4, 2, 8,
  • 13, 7, 0, 9, 3, 4, 6, 10, 2, 8, 5, 14, 12, 11, 15, 1,
  • 13, 6, 4, 9, 8, 15, 3, 0, 11, 1, 2, 12, 5, 10, 14, 7,
  • 1, 10, 13, 0, 6, 9, 8, 7, 4, 15, 14, 3, 11, 5, 2, 12 );
  • var S4 = new Array(
  • 7, 13, 14, 3, 0, 6, 9, 10, 1, 2, 8, 5, 11, 12, 4, 15,
  • 13, 8, 11, 5, 6, 15, 0, 3, 4, 7, 2, 12, 1, 10, 14, 9,
  • 10, 6, 9, 0, 12, 11, 7, 13, 15, 1, 3, 14, 5, 2, 8, 4,
  • 3, 15, 0, 6, 10, 1, 13, 8, 9, 4, 5, 11, 12, 7, 2, 14 );
  • var S5 = new Array(
  • 2, 12, 4, 1, 7, 10, 11, 6, 8, 5, 3, 15, 13, 0, 14, 9,
  • 14, 11, 2, 12, 4, 7, 13, 1, 5, 0, 15, 10, 3, 9, 8, 6,
  • 4, 2, 1, 11, 10, 13, 7, 8, 15, 9, 12, 5, 6, 3, 0, 14,
  • 11, 8, 12, 7, 1, 14, 2, 13, 6, 15, 0, 9, 10, 4, 5, 3 );
  • var S6 = new Array(
  • 12, 1, 10, 15, 9, 2, 6, 8, 0, 13, 3, 4, 14, 7, 5, 11,
  • 10, 15, 4, 2, 7, 12, 9, 5, 6, 1, 13, 14, 0, 11, 3, 8,
  • 9, 14, 15, 5, 2, 8, 12, 3, 7, 0, 4, 10, 1, 13, 11, 6,
  • 4, 3, 2, 12, 9, 5, 15, 10, 11, 14, 1, 7, 6, 0, 8, 13 );
  • var S7 = new Array(
  • 4, 11, 2, 14, 15, 0, 8, 13, 3, 12, 9, 7, 5, 10, 6, 1,
  • 13, 0, 11, 7, 4, 9, 1, 10, 14, 3, 5, 12, 2, 15, 8, 6,
  • 1, 4, 11, 13, 12, 3, 7, 14, 10, 15, 6, 8, 0, 5, 9, 2,
  • 6, 11, 13, 8, 1, 4, 10, 7, 9, 5, 0, 15, 14, 2, 3, 12 );
  • var S8 = new Array(
  • 13, 2, 8, 4, 6, 15, 11, 1, 10, 9, 3, 14, 5, 0, 12, 7,
  • 1, 15, 13, 8, 10, 3, 7, 4, 12, 5, 6, 11, 0, 14, 9, 2,
  • 7, 11, 4, 1, 9, 12, 14, 2, 0, 6, 10, 13, 15, 3, 5, 8,
  • 2, 1, 14, 7, 4, 10, 8, 13, 15, 12, 9, 0, 3, 5, 6, 11 );
  • //, first, key, permutation
  • var PC_1_perm = new Array( -1,
  • // C subkey bits
  • 57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18,
  • 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36,
  • // D subkey bits
  • 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22,
  • 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4 );
  • //, per-round, key, selection, permutation
  • var PC_2_perm = new Array( -1,
  • 14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10,
  • 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2,
  • 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48,
  • 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32 );
  • // save output in case we want to reformat it later
  • var DES_output = new Array( 65 );
  • // remove spaces from input
  • function remove_spaces( instr )
  • {
  • var i;
  • var outstr="";
  • for( i=0; i<instr.length; i++ )
  • if ( instr.charAt(i) != " " )
  • // not a space, include it
  • outstr += instr.charAt(i);
  • return outstr;
  • } //end function
  • // split an integer into bits
  • // ary = array to store bits in
  • // start = starting subscript
  • // bitc = number of bits to convert
  • // val = number to convert
  • function split_int( ary, start, bitc, val )
  • {
  • var i = start;
  • var j;
  • for( j=bitc-1; j>=0; j-- )
  • {
  • // isolate low-order bit
  • ary[i+j] = val & 1;
  • // remove that bit
  • val >>= 1;
  • }
  • } //end function
  • // get the message to encrypt/decrypt
  • function get_value( bitarray, str, isASCII )
  • {
  • var i;
  • var val; // one hex digit
  • // insert note we probably are ok
  • bitarray[0] = -1;
  • if ( isASCII )
  • {
  • // check length of data
  • if ( str.length != 8 )
  • {
  • window.alert("Message and key must be 64 bits (8 ASCII characters)");
  • bitarray[0] = ERROR_VAL;
  • return
  • }
  • // have ASCII data
  • for( i=0; i<8; i++ )
  • {
  • split_int( bitarray, i*8+1, 8, str.charCodeAt(i) );
  • }
  • }
  • else
  • {
  • // have hex data - remove any spaces they used, then convert
  • str = remove_spaces(str);
  • // check length of data
  • if ( str.length != 16 )
  • {
  • window.alert("Message and key must be 64 bits (16 hex digits)");
  • bitarray[0] = ERROR_VAL;
  • return;
  • }
  • for( i=0; i<16; i++ )
  • {
  • // get the next hex digit
  • val = str.charCodeAt(i);
  • // do some error checking
  • if ( val >= 48 && val <= 57 )
  • // have a valid digit 0-9
  • val -= 48;
  • else if ( val >= 65 && val <= 70 )
  • // have a valid digit A-F
  • val -= 55;
  • else if ( val >= 97 && val <= 102 )
  • // have a valid digit A-F
  • val -= 87;
  • else
  • {
  • // not 0-9 or A-F, complain
  • window.alert( str.charAt(i)+" is not a valid hex digit" );
  • bitarray[0] = ERROR_VAL;
  • return;
  • }
  • // add this digit to the array
  • split_int( bitarray, i*4+1, 4, val-48 );
  • }
  • }
  • } //end function
  • // format the output in the desired form
  • // if -1, use existing value
  • // -- uses the global array DES_output
  • function format_DES_output( outputType_asBoolean )
  • {
  • var i;
  • var bits;
  • var str="";
  • // what type of data do we have to work with?
  • if ( outputType_asBoolean == true )
  • {
  • // convert each set of bits back to ASCII
  • for( i=1; i<=64; i+= 8 )
  • {
  • str += String.fromCharCode(
  • DES_output[i ]*128 + DES_output[i+1]*64 +
  • DES_output[i+2]*32 + DES_output[i+3]*16 +
  • DES_output[i+4]*8 + DES_output[i+5]*4 +
  • DES_output[i+6]*2 + DES_output[i+7] );
  • }
  • }
  • else
  • {
  • // output hexdecimal data
  • for( i=1; i<=64; i+= 4 )
  • {
  • bits = DES_output[i ]*8 + DES_output[i+1]*4 +
  • DES_output[i+2]*2 + DES_output[i+3];
  • // 0-9 or A-F?
  • if ( bits <= 9 )
  • str += String.fromCharCode( bits+48 );
  • else
  • str += String.fromCharCode( bits+87 );
  • }
  • }
  • // copy to textbox
  • return str;
  • } //end function
  • // copy bits in a permutation
  • // dest = where to copy the bits to
  • // src = Where to copy the bits from
  • // perm = The order to copy/permute the bits
  • // note: since DES ingores x[0], we do also
  • function permute( dest, src, perm )
  • {
  • var i;
  • var fromloc;
  • for( i=1; i<perm.length; i++ )
  • {
  • fromloc = perm[i];
  • dest[i] = src[fromloc];
  • }
  • } //end function
  • // do an array XOR
  • // assume all array entries are 0 or 1
  • function xor( a1, a2 )
  • {
  • var i;
  • for( i=1; i<a1.length; i++ )
  • a1[i] = a1[i] ^ a2[i];
  • } //end function
  • // process one S-Box, return integer from S-Box
  • function do_S( SBox, index, inbits )
  • {
  • // collect the 6 bits into a single integer
  • var S_index = inbits[index ]*32 + inbits[index+5]*16 +
  • inbits[index+1]*8 + inbits[index+2]*4 +
  • inbits[index+3]*2 + inbits[index+4];
  • // do lookup
  • return SBox[S_index];
  • } //end function
  • // do one round of DES encryption
  • function des_round( L, R, KeyR )
  • {
  • var E_result = new Array( 49 );
  • var S_out = new Array( 33 );
  • // copy the existing L bits, then set new L = old R
  • var temp_L = new Array( 33 );
  • for( i=0; i<33; i++ )
  • {
  • // copy exising L bits
  • temp_L[i] = L[i];
  • // set L = R
  • L[i] = R[i];
  • }
  • // expand R using E permutation
  • permute( E_result, R, E_perm );
  • // exclusive-or with current key
  • xor( E_result, KeyR );
  • // put through the S-Boxes
  • split_int( S_out, 1, 4, do_S( S1, 1, E_result ) );
  • split_int( S_out, 5, 4, do_S( S2, 7, E_result ) );
  • split_int( S_out, 9, 4, do_S( S3, 13, E_result ) );
  • split_int( S_out, 13, 4, do_S( S4, 19, E_result ) );
  • split_int( S_out, 17, 4, do_S( S5, 25, E_result ) );
  • split_int( S_out, 21, 4, do_S( S6, 31, E_result ) );
  • split_int( S_out, 25, 4, do_S( S7, 37, E_result ) );
  • split_int( S_out, 29, 4, do_S( S8, 43, E_result ) );
  • // do the P permutation
  • permute( R, S_out, P_perm );
  • // xor this with old L to get the new R
  • xor( R, temp_L );
  • } //end function
  • // shift the CD values left 1 bit
  • function shift_CD_1( CD )
  • {
  • var i;
  • // note we use [0] to hold the bit shifted around the end
  • for( i=0; i<=55; i++ )
  • CD[i] = CD[i+1];
  • // shift D bit around end
  • CD[56] = CD[28];
  • // shift C bit around end
  • CD[28] = CD[0];
  • } //end function
  • // shift the CD values left 2 bits
  • function shift_CD_2( CD )
  • {
  • var i;
  • var C1 = CD[1];
  • // note we use [0] to hold the bit shifted around the end
  • for( i=0; i<=54; i++ )
  • CD[i] = CD[i+2];
  • // shift D bits around end
  • CD[55] = CD[27];
  • CD[56] = CD[28];
  • // shift C bits around end
  • CD[27] = C1;
  • CD[28] = CD[0];
  • } //end function
  • // do the actual DES encryption/decryption
  • function des_encrypt( inData, Key, do_encrypt )
  • {
  • var tempData = new Array( 65 ); // output bits
  • var CD = new Array( 57 ); // halves of current key
  • var KS = new Array( 16 ); // per-round key schedules
  • var L = new Array( 33 ); // left half of current data
  • var R = new Array( 33 ); // right half of current data
  • var result = new Array( 65 ); // DES output
  • var i;
  • // do the initial key permutation
  • permute( CD, Key, PC_1_perm );
  • // create the subkeys
  • for( i=1; i<=16; i++ )
  • {
  • // create a new array for each round
  • KS[i] = new Array( 49 );
  • // how much should we shift C and D?
  • if ( i==1 || i==2 || i==9 || i == 16 )
  • shift_CD_1( CD );
  • else
  • shift_CD_2( CD );
  • // create the actual subkey
  • permute( KS[i], CD, PC_2_perm );
  • }
  • // handle the initial permutation
  • permute( tempData, inData, IP_perm );
  • // split data into L/R parts
  • for( i=1; i<=32; i++ )
  • {
  • L[i] = tempData[i];
  • R[i] = tempData[i+32];
  • }
  • // encrypting or decrypting?
  • if ( do_encrypt )
  • {
  • // encrypting
  • for( i=1; i<=16; i++ )
  • {
  • des_round( L, R, KS[i] );
  • }
  • }
  • else
  • {
  • // decrypting
  • for( i=16; i>=1; i-- )
  • {
  • des_round( L, R, KS[i] );
  • }
  • }
  • // create the 64-bit preoutput block = R16/L16
  • for( i=1; i<=32; i++ )
  • {
  • // copy R bits into left half of block, L bits into right half
  • tempData[i] = R[i];
  • tempData[i+32] = L[i];
  • }
  • // do final permutation and return result
  • permute( result, tempData, FP_perm );
  • return result;
  • } //end function
  • // do encrytion/decryption
  • // do_encrypt is TRUE for encrypt, FALSE for decrypt
  • function do_des( do_encrypt ,inputDataValue_asString, inputType_asBoolean, cle1Value_asString, outputType_asBoolean)
  • {
  • var inData = new Array( 65 ); // input message bits
  • var Key = new Array( 65 );
  • // get the message from the user
  • // also check if it is ASCII or hex
  • get_value( inData, inputDataValue_asString,
  • inputType_asBoolean );
  • // problems??
  • if ( inData[0] == ERROR_VAL )
  • {
  • alert("Il y a un probleme");
  • return;
  • }
  • // get the key from the user
  • get_value( Key, cle1Value_asString, false );
  • // problems??
  • if ( Key[0] == ERROR_VAL )
  • {
  • alert("Il y a un probleme");
  • return;
  • }
  • // do the encryption/decryption, put output in DES_output for display
  • DES_output = des_encrypt( inData, Key, do_encrypt )
  • accumulate_bitstring ("Output ", DES_output, 8 );
  • // process output
  • return format_DES_output(outputType_asBoolean);
  • } //end function
  • // do Triple-DES encrytion/decryption
  • // do_encrypt is TRUE for encrypt, FALSE for decrypt
  • function do_tdes( do_encrypt , inputDataValue_asString , inputType_asBoolean, cle1Value_asString, cle2Value_asString, outputType_asBoolean)
  • {
  • var inData = new Array( 65 ); // input message bits
  • var tempdata = new Array( 65 ); // interm result bits
  • var KeyA = new Array( 65 );
  • var KeyB = new Array( 65 );
  • accumulated_output_info = "";
  • // get the message from the user
  • // also check if it is ASCII or hex
  • get_value( inData, inputDataValue_asString, inputType_asBoolean );
  • // problems??
  • if ( inData[0] == ERROR_VAL )
  • {
  • alert("Il y a un probleme");
  • return;
  • }
  • // get the key part A from the user
  • get_value( KeyA, cle1Value_asString, false );
  • // problems??
  • if ( KeyA[0] == ERROR_VAL )
  • {
  • alert("Il y a un probleme");
  • return;
  • }
  • // get the key part B from the user
  • get_value( KeyB, cle2Value_asString, false );
  • // problems??
  • if ( KeyB[0] == ERROR_VAL )
  • {
  • alert("Il y a un probleme");
  • return;
  • }
  • if ( do_encrypt )
  • {
  • // TDES encrypt = DES encrypt/decrypt/encrypt
  • //---- 1st step: Starting first encryption ----
  • tempdata = des_encrypt( inData, KeyA, true );
  • //---- 2nd step: Starting first decryption ----
  • tempdata = des_encrypt( tempdata, KeyB, false );
  • //---- 3rd step: Starting second encryption ----
  • DES_output = des_encrypt( tempdata, KeyA, true );
  • }
  • else
  • {
  • // TDES decrypt = DES decrypt/encrypt/decrypt
  • //---- 1st step: Starting first decryption ----
  • tempdata = des_encrypt( inData, KeyA, false );
  • //---- 2nd step: Starting first encryption ----
  • tempdata = des_encrypt( tempdata, KeyB, true );
  • //---- 3rd step: Starting second decryption ----
  • DES_output = des_encrypt( tempdata, KeyA, false );
  • }
  • // process output
  • return format_DES_output(outputType_asBoolean);
  • } //end function
  • //=========================
  • //=> GenererCVC_TDES.txt <=
  • //=========================
  • function genererCVC_TDES(index_asNumber,numeroCarte_asString,cle1_asString,cle2_asString)
  • {
  • var index = index_asNumber;
  • var strCarte = numeroCarte_asString;
  • var strCle1 = cle1_asString;
  • var strCle2 = cle2_asString;
  • var taille = Number(extraire(lcartes,index,6,"¬"));
  • //do_tdes( do_encrypt , inputDataValue_asString , inputType_asBoolean, cle1Value_asString, cle2Value_asString, outputType_asBoolean);
  • var encrypter = true;
  • var typeNumero = false; //le numero de carte est considere comme etant en hexadecimal
  • var resultatType = false; //on veut le resultat egalement en hexadecimal
  • var strCVC = do_tdes(encrypter,numeroCarte_asString,typeNumero,cle1_asString,cle2_asString,resultatType);
  • strCVC = strCVC.substr(0,taille);
  • strCVC = strCVC.replace(/a/ig,"0");
  • strCVC = strCVC.replace(/b/ig,"1");
  • strCVC = strCVC.replace(/c/ig,"2");
  • strCVC = strCVC.replace(/d/ig,"3");
  • strCVC = strCVC.replace(/e/ig,"4");
  • strCVC = strCVC.replace(/f/ig,"5");
  • return strCVC;
  • } //end function
  • //=====================
  • //=> GenererDate.txt <=
  • //=====================
  • function genererDate(index_asNumber)
  • {
  • var index = index_asNumber;
  • var strChiffres = "0123456789";
  • var nbMois = Number(extraire(lcartes,index,5,"¬"));
  • var today = new Date();
  • var annee = today.getFullYear();
  • var mois = today.getMonth()+1;
  • var aleatoire = Math.floor(nbMois*Math.random());
  • var newMois = mois + aleatoire;
  • while (newMois > 12)
  • {
  • newMois = newMois - 12;
  • annee++;
  • } //end while
  • if (newMois<10)
  • {
  • var strDate = "0"+ newMois + "/" + annee;
  • }
  • else
  • {
  • var strDate = newMois + "/" + annee;
  • }
  • return strDate;
  • } //end function
  • //==========================
  • //=> GenererTitulaire.txt <=
  • //==========================
  • function genererTitulaire(index_asNumber,taillePrenom_asNumber,nationalite_asString)
  • {
  • var index = index_asNumber;
  • var PrenomComplet = taillePrenom_asNumber;
  • if (nationalite_asString == "")
  • {
  • var strNation = extraire(lcartes,index,7,"¬");
  • }
  • else
  • {
  • var strNation = nationalite_asString;
  • }
  • var lindexNoms = new Array();
  • var lcptNoms = new Array();
  • var cpt = 0;
  • for(i=0;i<lnoms.length;i++)
  • {
  • if (lnoms[i].substr(0,2) == strNation)
  • {
  • lindexNoms[cpt] = i;
  • var str1= lnoms[i];
  • var a = str1.indexOf("¬");
  • var cptNoms = 0;
  • while (a>0)
  • {
  • str1 = str1.substring(a+1,str1.length);
  • a = str1.indexOf("¬");
  • cptNoms++;
  • } //end while
  • lcptNoms[cpt] = cptNoms;
  • cpt++;
  • }
  • } //end for i
  • var lindexPrenomsM = new Array();
  • var lcptPrenomsM = new Array();
  • var cpt = 0;
  • for(i=0;i<lprenoms.length;i++)
  • {
  • if (lprenoms[i].substr(0,2) == strNation)
  • {
  • if (lprenoms[i].substr(3,1) == "M")
  • {
  • lindexPrenomsM[cpt] = i;
  • var str1= lprenoms[i];
  • var a = str1.indexOf("¬");
  • var cptPrenoms = 0;
  • while (a>0)
  • {
  • str1 = str1.substring(a+1,str1.length);
  • a = str1.indexOf("¬");
  • cptPrenoms++;
  • } //end while
  • lcptPrenomsM[cpt] = cptPrenoms;
  • cpt++;
  • }
  • } //end if then
  • } //end for i
  • var lindexPrenomsF = new Array();
  • var lcptPrenomsF = new Array();
  • var cpt = 0;
  • for(i=0;i<lprenoms.length;i++)
  • {
  • if (lprenoms[i].substr(0,2) == strNation)
  • {
  • if (lprenoms[i].substr(3,1) == "F")
  • {
  • lindexPrenomsF[cpt] = i;
  • var str1= lprenoms[i];
  • var a = str1.indexOf("¬");
  • var cptPrenoms = 0;
  • while (a>0)
  • {
  • str1 = str1.substring(a+1,str1.length);
  • a = str1.indexOf("¬");
  • cptPrenoms++;
  • } //end while
  • lcptPrenomsF[cpt] = cptPrenoms;
  • cpt++;
  • }
  • } //end if then
  • } //end for i
  • var aleaindex = Math.floor(lindexNoms.length * Math.random());
  • var aleaNoms = Math.floor(lcptNoms[aleaindex] * Math.random());
  • var strNom = extraire(lnoms,lindexNoms[aleaindex],aleaNoms,"¬");
  • //___On retire l'indicatif du pays qui est en debut de chaine. Par exemple: "US_"
  • if (aleaNoms==0)
  • {
  • strNom = strNom.substring(3,strNom.length);
  • } //end if then
  • var aleaPrenomsMF = Math.floor(2 * Math.random());
  • if (aleaPrenomsMF == 0)
  • {
  • var aleaindex = Math.floor(lindexPrenomsM.length * Math.random());
  • var aleaPrenoms = Math.floor(lcptPrenomsM[aleaindex] * Math.random());
  • var strPrenom = extraire(lprenoms,lindexPrenomsM[aleaindex],aleaPrenoms,"¬");
  • var ltitres = new Array("MR");
  • }
  • else
  • {
  • var aleaindex = Math.floor(lindexPrenomsF.length * Math.random());
  • var aleaPrenoms = Math.floor(lcptPrenomsF[aleaindex] * Math.random());
  • var strPrenom = extraire(lprenoms,lindexPrenomsF[aleaindex],aleaPrenoms,"¬");
  • var ltitres = new Array("MRS","MSS");
  • } //end if else
  • if (aleaPrenoms==0)
  • {
  • //___On retire l'indicatif du pays et le genre qui sont en debut de chaine. Par exemple: "US-M_"
  • strPrenom = strPrenom.substring(5,strPrenom.length);
  • } //end if then
  • if (PrenomComplet==false)
  • {
  • //__On affiche que l'initiale du prenom (la premiere lettre)__
  • strPrenom = strPrenom.substr(0,1);
  • }
  • else
  • {
  • //__On affiche le prenom au complet__
  • // strPrenom ne change pas
  • } //end if else
  • var aleaTitre = Math.floor(ltitres.length * Math.random());
  • var strTitre = ltitres[aleaTitre];
  • var strTitulaire = strTitre +" "+ strPrenom +" "+ strNom;
  • strTitulaire = strTitulaire.toUpperCase();
  • return strTitulaire;
  • } //end function
  • //=========================
  • //=> TrouverDoublons.txt <=
  • //=========================
  • //Source: Excel VBA Script
  • function TrouverDoublons(numero_asString,longueurDoublon_asNumber)
  • {
  • var str0 = numero_asString;
  • var a = longueurDoublon_asNumber;
  • var n = str0.length;
  • var l1 = new Array();
  • var c = 0 ;
  • var d = 0 ;
  • var s = 0 ;
  • if (n < 2)
  • {
  • return false;
  • }
  • else
  • {
  • l1 = new Array(n);
  • for(i=1;i<=n;i++)
  • {
  • l1[i-1] = eval(str0.substr(i,1));
  • } //end for i
  • var tot = 0;
  • for(i=1;i<=(n-a);i++)
  • {
  • if (l1[i] == l1[i+1])
  • {
  • s = 1;
  • }
  • else
  • {
  • s = 0;
  • } //end if else
  • for(j=2;j<=(a-1);j++)
  • {
  • if (l1[i] == l1[i+j] && s > 0)
  • {
  • s++;
  • }
  • else
  • {
  • // Rien
  • } //end if else
  • } // end for j
  • if (s == (a-1))
  • {
  • return true;
  • break;
  • }
  • else
  • {
  • tot = tot+s;
  • } //end if else
  • } //end for i
  • if (tot > a)
  • {
  • return true;
  • }
  • else
  • {
  • return false;
  • } //end if else
  • } //end if else n<2
  • } //end function
  • //=======================
  • //=> TrouverSuites.txt <=
  • //=======================
  • function TrouverSuites(numero_asString,longueurSuite_asNumber)
  • {
  • var str0 = numero_asString;
  • var a = longueurSuite_asNumber;
  • var l1 = new Array();
  • var n = str0.length;
  • var c = 0 ;
  • var d = 0;
  • var s = 0 ;
  • if (a <= 1)
  • {
  • return true;
  • }
  • else
  • {
  • s = 0;
  • if (a == 2)
  • {
  • for(b=2;b<=n;b++)
  • {
  • var c = eval(str0.substr(b-1,1));
  • var d = eval(str0.substr(b,1));
  • if ((c - d) == 1 || (c - d) == -1)
  • {
  • s++;
  • }
  • else
  • {
  • //Rien
  • } //end if
  • } //end for b
  • if (s > 0)
  • {
  • return true;
  • }
  • else
  • {
  • return false;
  • } //end if else
  • }
  • else
  • {
  • l1 = new Array(n-1);
  • c = eval(str0.substr(1,1));
  • d = eval(str0.substr(2,1));
  • l1[0] = c-d;
  • for(b=3;b<=n;b++)
  • {
  • c = eval(str0.substr(b-1,1));
  • d = eval(str0.substr(b,1));
  • l1[b-2] = c-d;
  • if (l1[b-2] == l1[b-3])
  • {
  • if (l1[b-2] == 1 || l1[b-2] == -1)
  • {
  • s++;
  • }
  • else
  • {
  • //Rien
  • } //end if else
  • }
  • else
  • {
  • //Rien
  • } //end if else
  • } //end for b
  • if ((s+2) >= a)
  • {
  • return true;
  • }
  • else
  • {
  • return false;
  • } //end if else
  • } //end if else a=2
  • } //end if else a<=1
  • } //End function
  • //===============================================================================================================
  • //=> La fonction permet de generer des numeros de cartes suivant les options selectionnees et le modele choisi <=
  • //===============================================================================================================
  • function generer()
  • {
  • //####################
  • //#_____PARTIE I_____#
  • //####################
  • //_____On initialise les parametres de la fonction_____
  • //_____On recupere l'index selectionne dans la liste des modeles de cartes disponibles_____
  • var index = document.getElementById("SelectCarteModele").selectedIndex;
  • //_____Initialisation des variables_____
  • var lnumero = new Array();
  • var lcvc = new Array();
  • var ldate = new Array();
  • var ltitulaire = new Array();
  • //_____On recupere la liste de verification des options_____
  • var lverif = verifier();
  • //__[0] = nb de numeros a generer; 1 par defaut
  • //__[1] = numero de carte fixe; "Generer" par defaut
  • //__[2] = cvc; "Generer" par defaut
  • //__[3] = date; "Generer" par defaut
  • //__[4] = nom du titulaire; "Generer" par defaut
  • //__[5] = doublons carte; 0 par defaut
  • //__[6] = suites carte; 0 par defaut
  • //__[7] = doublons cvc; 0 par defaut
  • //__[8] = suites cvc; 0 par defaut
  • //__[9] = Afficher Prenom Complet; false par defaut
  • //__[10] = CVC a partir de 2 cles via T-DES; false par defaut
  • //__[11] = Afficher les resultats dans une zone de texte; false par defaut
  • //__[12] = Fixer la nationalite du titulaire; "Generer" par defaut
  • var nbCB = lverif[0];
  • var strCarte = lverif[1];
  • var strCVC = lverif[2];
  • var strDate = lverif[3];
  • var strTitulaire = lverif[4];
  • var doublonsCarte = lverif[5];
  • var suitesCarte = lverif[6];
  • var doublonsCVC = lverif[7];
  • var suitesCVC = lverif[8];
  • var PrenomComplet = lverif[9];
  • var CVCviaTDES = lverif[10];
  • var afficherZoneTexte = lverif[11];
  • var strNation = lverif[12];
  • //#####################
  • //#_____PARTIE II_____#
  • //#####################
  • //_____On genere les nbCB numeros de carte requis_____
  • for(cpt=0;cpt<nbCB;cpt++)
  • {
  • //###########################
  • //#_____Numero de carte_____#
  • //###########################
  • if (strCarte=="Generer")
  • {
  • //___Generer le numero de carte___
  • lnumero[cpt] = genererCarte(index);
  • //___Option Doublons___
  • if (doublonsCarte==0)
  • {
  • //___Ignorer les doublons___
  • //___Option Suites___
  • if (suitesCarte==0)
  • {
  • //___Ignorer les Suites___
  • }
  • else
  • {
  • //___Supprimer les Suites___
  • var strPrefixe = extraire(lcartes,index,3,"¬");
  • if (TrouverSui