JavaScript randomly generates credit card number code

From , 4 Years ago, written in JavaScript, viewed 53 times.
URL https://pastebin.vip/view/3487596c
  1. /*
  2. Javascript credit card number generator
  3. Copyright (C) 2006-2012 Graham King graham@gkgk.org
  4.  
  5. This program is free software; you can redistribute it and/or
  6. modify it under the terms of the GNU General Public License
  7. as published by the Free Software Foundation; either version 2
  8. of the License, or (at your option) any later version.
  9.  
  10. This program is distributed in the hope that it will be useful,
  11. but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  13. GNU General Public License for more details.
  14.  
  15. You should have received a copy of the GNU General Public License
  16. along with this program; if not, write to the Free Software
  17. Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  18.  
  19. www.darkcoding.net
  20. */
  21.  
  22. var visaPrefixList = new Array(
  23.     "4539",
  24.     "4556",
  25.     "4916",
  26.     "4532",
  27.     "4929",
  28.     "40240071",
  29.     "4485",
  30.     "4716",
  31.     "4"
  32. );
  33.  
  34. var mastercardPrefixList = new Array(
  35.     "51",
  36.     "52",
  37.     "53",
  38.     "54",
  39.     "55"
  40. );
  41.  
  42. var amexPrefixList = new Array(
  43.     "34",
  44.     "37"
  45. );
  46.  
  47. var discoverPrefixList = new Array("6011");
  48.  
  49. var dinersPrefixList = new Array(
  50.     "300",
  51.     "301",
  52.     "302",
  53.     "303",
  54.     "36",
  55.     "38"
  56. );
  57.  
  58. var enRoutePrefixList = new Array(
  59.     "2014",
  60.     "2149"
  61. );
  62.  
  63. var jcbPrefixList = new Array(
  64.     "35"
  65. );
  66.  
  67. var voyagerPrefixList = new Array("8699");
  68.  
  69.  
  70. function strrev(str) {
  71.    if (!str) return '';
  72.    var revstr='';
  73.    for (i = str.length-1; i>=0; i--)
  74.        revstr+=str.charAt(i)
  75.    return revstr;
  76. }
  77.  
  78. /*
  79. 'prefix' is the start of the CC number as a string, any number of digits.
  80. 'length' is the length of the CC number to generate. Typically 13 or 16
  81. */
  82. function completed_number(prefix, length) {
  83.  
  84.     var ccnumber = prefix;
  85.  
  86.     // generate digits
  87.  
  88.     while ( ccnumber.length < (length - 1) ) {
  89.         ccnumber += Math.floor(Math.random()*10);
  90.     }
  91.  
  92.     // reverse number and convert to int
  93.  
  94.     var reversedCCnumberString = strrev( ccnumber );
  95.  
  96.     var reversedCCnumber = new Array();
  97.     for ( var i=0; i < reversedCCnumberString.length; i++ ) {
  98.         reversedCCnumber[i] = parseInt( reversedCCnumberString.charAt(i) );
  99.     }
  100.  
  101.     // calculate sum
  102.  
  103.     var sum = 0;
  104.     var pos = 0;
  105.  
  106.     while ( pos < length - 1 ) {
  107.  
  108.         odd = reversedCCnumber[ pos ] * 2;
  109.         if ( odd > 9 ) {
  110.             odd -= 9;
  111.         }
  112.  
  113.         sum += odd;
  114.  
  115.         if ( pos != (length - 2) ) {
  116.  
  117.             sum += reversedCCnumber[ pos +1 ];
  118.         }
  119.         pos += 2;
  120.     }
  121.  
  122.     // calculate check digit
  123.  
  124.     var checkdigit = (( Math.floor(sum/10) + 1) * 10 - sum) % 10;
  125.     ccnumber += checkdigit;
  126.  
  127.     return ccnumber;
  128.  
  129. }
  130.  
  131. function credit_card_number(prefixList, length, howMany) {
  132.  
  133.     var result = new Array();
  134.     for (var i = 0; i < howMany; i++) {
  135.  
  136.         var randomArrayIndex = Math.floor(Math.random() * prefixList.length);
  137.         var ccnumber = prefixList[ randomArrayIndex ];
  138.         result.push( completed_number(ccnumber, length) );
  139.     }
  140.  
  141.     return result;
  142. }
  143.  
  144.  
  145. //javascript/7105

Reply to "JavaScript randomly generates credit card number code"

Here you can reply to the paste above

captcha

https://burned.cc - Burn After Reading Website