本文实例讲述了Python随机生成信用卡卡号的实现方法。分享给大家供大家参考。具体分析如下:
这段Python代码根据信用卡卡号产生规则随机生成信用卡卡号,是可以通过验证的,仅供学习参考,请不要用于非法用途,否则后果自负。
#!/usr/bin/python """ gencc: A simple program to generate credit card numbers that pass the MOD 10 check (Luhn formula). Usefull for testing e-commerce sites during development. Copyright 2003-2012 Graham King This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA """ # Different naming convention, because translated from PHP # pylint: disable=C0103 from random import Random import copy visaPrefixList = [ ['4', '5', '3', '9'], ['4', '5', '5', '6'], ['4', '9', '1', '6'], ['4', '5', '3', '2'], ['4', '9', '2', '9'], ['4', '0', '2', '4', '0', '0', '7', '1'], ['4', '4', '8', '6'], ['4', '7', '1', '6'], ['4']] mastercardPrefixList = [ ['5', '1'], ['5', '2'], ['5', '3'], ['5', '4'], ['5', '5']] amexPrefixList = [['3', '4'], ['3', '7']] discoverPrefixList = [['6', '0', '1', '1']] dinersPrefixList = [ ['3', '0', '0'], ['3', '0', '1'], ['3', '0', '2'], ['3', '0', '3'], ['3', '6'], ['3', '8']] enRoutePrefixList = [['2', '0', '1', '4'], ['2', '1', '4', '9']] jcbPrefixList = [['3', '5']] voyagerPrefixList = [['8', '6', '9', '9']] def completed_number(prefix, length): """ 'prefix' is the start of the CC number as a string, any number of digits. 'length' is the length of the CC number to generate. Typically 13 or 16 """ ccnumber = prefix # generate digits while len(ccnumber) < (length - 1): digit = str(generator.choice(range(0, 10))) ccnumber.append(digit) # Calculate sum sum = 0 pos = 0 reversedCCnumber = [] reversedCCnumber.extend(ccnumber) reversedCCnumber.reverse() while pos < length - 1: odd = int(reversedCCnumber[pos]) * 2 if odd > 9: odd -= 9 sum += odd if pos != (length - 2): sum += int(reversedCCnumber[pos + 1]) pos += 2 # Calculate check digit checkdigit = ((sum / 10 + 1) * 10 - sum) % 10 ccnumber.append(str(checkdigit)) return ''.join(ccnumber) def credit_card_number(rnd, prefixList, length, howMany): result = [] while len(result) < howMany: ccnumber = copy.copy(rnd.choice(prefixList)) result.append(completed_number(ccnumber, length)) return result def output(title, numbers): result = [] result.append(title) result.append('-' * len(title)) result.append('\n'.join(numbers)) result.append('') return '\n'.join(result) # # Main # generator = Random() generator.seed() # Seed from current time print("darkcoding credit card generator\n") mastercard = credit_card_number(generator, mastercardPrefixList, 16, 10) print(output("Mastercard", mastercard)) visa16 = credit_card_number(generator, visaPrefixList, 16, 10) print(output("VISA 16 digit", visa16)) visa13 = credit_card_number(generator, visaPrefixList, 13, 5) print(output("VISA 13 digit", visa13)) amex = credit_card_number(generator, amexPrefixList, 15, 5) print(output("American Express", amex)) # Minor cards discover = credit_card_number(generator, discoverPrefixList, 16, 3) print(output("Discover", discover)) diners = credit_card_number(generator, dinersPrefixList, 14, 3) print(output("Diners Club / Carte Blanche", diners)) enRoute = credit_card_number(generator, enRoutePrefixList, 15, 3) print(output("enRoute", enRoute)) jcb = credit_card_number(generator, jcbPrefixList, 16, 3) print(output("JCB", jcb)) voyager = credit_card_number(generator, voyagerPrefixList, 15, 3) print(output("Voyager", voyager))
运行结果如下:
darkcoding credit card generator Mastercard ---------- 5249241445603178 5474662131739768 5581517450441661 5588253309068355 5514774944030079 5122826749528287 5152966434002124 5268127987312292 5385676074198087 5330181839518097 VISA 16 digit ------------- 4539503803848378 4716973052847436 4556149936260376 4486565514724761 4556309354978160 4486560485591158 4916213564870669 4486704671699934 4532839100193192 4486613519985266 VISA 13 digit ------------- 4929905559973 4556870828321 4916868200216 4556189916056 4024007171180 American Express ---------------- 376197656730660 342421777432696 342896016604918 343458311286898 374543958196088 Discover -------- 6011676180456692 6011298953567876 6011699666196053 Diners Club / Carte Blanche --------------------------- 30066643308583 38302315481859 38251784096120 enRoute ------- 214935400146170 201435309964331 201450317314858 JCB --- 3506641780149880 3561856856065701 3508395818816022 Voyager ------- 869984254736122 869938197246102 869921075232782
希望本文所述对大家的Python程序设计有所帮助。
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
暂无评论...
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新日志
2024年11月24日
2024年11月24日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]