分类目录归档:编程

随机生成信用卡号原理

信用卡后面条上的7位数字是什么意思

1、信用卡基本常识 信用卡号由一串16位的数字组成。

4开头的卡是VISA卡,5开头的卡是万事达卡,JCB卡和运通卡通常都是3开头的,而最常见的中国银联的卡是62开头。

2、信用卡卡号数字排列的含义 我们以中国银行长城环球通VISA芯片信用卡为例,来解剖信用卡的数字含义,卡号一共16位,四位一组,一共四组。

那么这组排列到底有什么含义呢?我们来看下表: 在这张表格中,我们很清楚的看到,亮黄色区域的卡号1-6位数字是发卡行识别码,也就是的我们熟悉的BIN码;土黄色区域的卡号7-15位数字是银行账户(美国运通卡除外,下同),它的含义是由发卡行自定义的,各个银行的定义标准不同,我们也就不一一细说;而草绿色区域第16位是校验码,英文说法是check digit,它是用来验证卡号有效性的,回头我会来说说这数字怎么算出来的。

3、发卡行识别码(BIN码) 我们先了解一下什么是发卡行识别码(BIN码)吧。

很多卡友都知道这是卡组织分配给银行的6位数字,但具体怎么来的,很多人可能并不清楚。

卡号前六位数字被称为BIN,是英文Bank Identification Number的缩写;这组数字也被称为IIN,是英文Issuer Identification Number(发行者识别号码)的缩写,它是按照ISO/IEC7812文件而制定。

这些数字可以帮助持卡人和商户识别出银行卡的发行机构。

符合ISO/IEC7812标准的银行卡号通常为16位,最长可达19位,标准结构就是如表一所示。

按照ISO/IEC7812规范,卡号第一位严格来说是MII??–Major Industry Identifier,也就是主要产业标识码,可以很方便的帮助我们识别出卡片所属行业。

比如,3开头的号码分配给旅游、娱乐和银行/金融业,4和5开头的号码被完全分配给银行/金融业,6开头的号码分配给商业和银行/金融业。

卡号的2-6位是叫IIN,即发行者识别号码。

当然我们这里是讨论银行卡,不需要说的这么细,感兴趣的朋友可以自己去网上查找资料。

为了简便起见,我们还是用BIN码来称呼银行卡前6位数字。

IIN数据库和成员目前由美国国家标准协会(American National Standards Institute,ANSI)管理并每月更新一次。

美国国家标准协会负责向发行网络分配IIN范围。

银联就是向该组织申请62开头的国际标准卡编号。

有很多网站提供BIN码的查询,我们只要输入卡前6位就能知道自己的卡片发卡国家和银行,还有卡片种类,这里给大家推荐一个BIN码的查询网站http://www.exactbins.com/ ,有兴趣的朋友不妨查询自己的卡片种类,当然结果仅供参考。

4、卡号的第7-15位数字 信用卡的第7-15位数字也就是银行账户,都是由银行自己定义的,每个银行的规则都不同,大家只要理解为这是自己的银行账户就可以了。

这里再拿中国银行长城环球通卡额外说一下。

长城卡的这组账户数字非常有意思,他把卡号7-8位定义为省级发卡行识别号,比如31代表上海,32代表江苏等等。

剩下9-15位才是自己的账户号,最后一位仍然是校验码。

我们用看下面表二来了解一下具有中行长城卡特色的卡号结构: 顺便再给大家提供长城环球通卡省级发卡行识别号: 北京11、天津12、河北13、山西14、内蒙古自治区15、辽宁21、吉林22、黑龙江23、上海31、江苏32、浙江33、安徽34、福建35、江西36、山东37、河南41、湖北42、湖南43、广东44、深圳48、广西45、海南46、重庆50、四川51、贵州52、云南53、西藏54、陕西61、甘肃52、青海53、宁夏64、新疆65 有兴趣的朋友不妨对照一下自己手中的长城卡。

5、最后一位校验码 现在就剩下卡片最后一位校验码还没说,不过在介绍这第十六位校验码之前,我们先学习一个专有名词——-Luhn算法。

Luhn算法(Luhn algorithm),也称为“模10算法”(Modulus 10或Mod 10)算法,是一种简单的校验和算法,一般用于验证身份识别码,例如发卡行识别码、国际移动设备辨识码(IMEI),美国国家提供商标识号码,或是加拿大社会保险号码。

它是由IBM科学家Hans Peter Luhn创造,于1954年1月6日申请专利,1960年8月23日颁证,美国专利号2950048。

该算法已经得到了广泛的应用,例如和我们信用卡相关ISO/IEC 7812-1标准就采纳了这一算法。

设计它的目的只是防止意外出错而不是恶意攻击。

很多信用卡和众多的政府身份识别号码都使用该算法从一系列的随机数字中提取有效的数字,但是中国银联并没有使用这种算法,至于使用何种算法目前还不得而知。

我们用本文中的真实卡号来了解一下这个算法的特点,看看是如何算出最后一位校验码,即校验码9 计算步骤: 1. 第三列,从校验位开始,从右往左,偶数位乘2,然后将两位数字的个位与十位相加; 2. 第四列,把得到的数字与原数字串的奇数位相加在一起,得到71; 3. 取结果的个位数1 4. 用10减去个位数1,得到9,就是实卡中最后一位校验码 还有一种算法是,按照上述步骤1-2算出总和71,然后: 1. 将结果71乘以9,得到639, 2. 取结果的个位数9,即为校验码 现在我们知道信用卡的最后一位校验码是通过Luhn算法计算出来的,它的作用就是验证卡片的有效性,而不是银行电脑里面随便生成一个数字印上去的。

一些网上流行的信用卡号码生成器也是利用该…

python怎么随机生成15位随机数字

展开全部 如是招行账户, 公司账号的是15位纯数字,由10位客户号 2位货币号 3位顺序号组成。

账号的开头部分是不固定的。

目前我行的个人银行卡卡号位数有以下几种(我行账号包含数字,不包含字母): ① 12位卡号(较早开户的账户,以城市区号开头,如城市区号不足四位,首位以0补足); ② 有银联标志或VISA/MASTERCard标志的16位卡号(包括普通一卡通、银联金卡、银联金葵花卡、国际借记卡、IC卡、M+卡等); ③ 存折账号为15位; ④ 19位卡号(目前只有TOUCH卡)。

请问储蓄卡是18位数字,而所有的信用卡都是16位数字吗

展开全部/*写一个函数来实现功能:随机生成一个长度为5~15位英文+数字组成的字符串。

要求:字符串按照 大写小写数字的顺序间隔排列,生成的字符串作为函数返回值传出。

例如函数名为随机生成英文字母,调用这个函数名后返回了字符串 "Ew2Tr1Yu6Vd4"*/Dim lengthDim resultlength = InputBox("请输入字符串长度:")result = randStr(length)//TracePrint lengthIf (result – 1 ) Then MsgBox resultElse TracePrint resultMsgBox "你输入的长度不符合要求"End IfFunction randStr(length)If (length > 15 or length randStr = -1 Else randStrTemp=""group_count =int(length / 3) //length完整组数:大写字母+小写字母+数字,是一组rema = length mod 3 //length对3取余//TracePrint group_count//TracePrint remai=0While(i//函数_随机取数=Int((high – (low) + 1) * Rnd + (low))//随机大写字母Randomizecapital = chr(Int((90 – 65 + 1) * Rnd + 65))//随机小写字母Randomizelowercase = chr(Int((122 – 97 + 1) * Rnd + 97))//随机数字Randomizenum = chr(Int((57 – 48 + 1) * Rnd + 48))randStrTemp = randStrTemp + capital + lowercase + numi=i+1 //修改循环变量If (i=group_count) Then Select Case remaCase 1//随机大写字母Randomizecapital = chr(Int((90 – 65 + 1) * Rnd + 65))randStrTemp = randStrTemp + capitalCase 2//随机大写字母Randomizecapital = chr(Int((90 – 65 + 1) * Rnd + 65))//随机小写字母Randomizelowercase = chr(Int((122 – 97 + 1) * Rnd + 97))randStrTemp = randStrTemp + capital + lowercase End SelectEnd IfWendrandStr = randStrTempEnd IfEnd Function

招商银行有15位数的信用卡么? 我看到卡的背面有写有信用卡。

一、有二、招行美国运通卡是15位的,前四位是:3702三、分辨借记卡与信用卡:1、卡面有明确的“信用卡”“贷记卡”字样的为信用卡。

2、信用卡正面有激光防伪标志,而借记卡是没有的(个别银行借记卡除外)3、信用卡一定有有效日期。

4、卡面明确有“借记卡”“储蓄卡”“提款卡”“MAESTRO”“CIRRUS”字样为借记卡。

5、信用卡卡号均为凸印的。

借记卡有平面印刷的也有凸印的。

6、信用卡正面有持卡人姓名的汉语拼音,部分还有性别“MR”“MS”。

借记卡是不一定有7、信用卡消费时一般不需要输入密码(除深发信用卡、中信实业信用卡、建行部分信用卡)、只要8、在密码键上随意输入6位或4位数字确认即可。

我的中国农业银行卡号有19位数,系统说‘信用卡卡号是15

在你添加银行卡的时候要选择借记卡,选择信用卡会提示银行卡号是15-18位数字。

可以直接在支付宝账户中心添加银行卡,不会提示银行卡号位数错误。

提示:银行卡称为借记卡,卡号由19位数字组成,每个银行的卡号都有自己固定的编号方式。

信用卡称为贷记卡,卡号一般是15到18位数字。

信用卡背面末三位数字在哪里?

信用卡背后的7位数字,前四位是信用卡卡号的最后四位,而后三位数字则是信用卡的安全码。

如下图:无论是VISA 组织还是MASTER组织的信用卡,其安全码的生成原理都是一样的。

而信用卡的安全码主要是网络交易或者信用卡销户时的验证码。

背后的三位数字和持卡人的签名一样属于“机密”,应妥善保管。

建议热衷网上交易的持卡人,一定要确保进行交易的商户的真实性和合法性,不要随便将卡面信息泄露给他人,否则将给自己留下安全隐患。

中国银行信用卡随机码怎么填

不是短信之类的,直接填写就可以了。

如果是数字的话,如图所示出现的“9340”,直接按图填写,填“9340”。

扩展资料;防止恶意破解密码、刷票、论坛灌水、刷页。

有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登录尝试,实际上使用验证码是现在很多网站通行的方式(比如招商银行的网上个人银行,百度社区),我们利用比较简易的方式实现了这个功能。

虽然登录麻烦一点,但是对网友的密码安全来说这个功能还是很有必要,也很重要。

但我们还是 提醒大家要保护好自己的密码 ,尽量使用混杂了数字、字母、符号在内的6位以上密码,不要使用诸如1234之类的简单密码或者与用户名相同、类似的密码 ,免得你的账号被人盗用给自己带来不必要的麻烦。

验证码通常使用一些线条和一些不规则的字符组成,主要作用是为了防止一些黑客把密码数据化盗取。

参考资料;百度百科-验证码

CentOS下cp直接覆盖命令的方法

cp覆盖时,无论加什么参数-f之类的还是提示是否覆盖,当没有打包的情况下直接复制把test目录下的文件复制到test1目录:cp –r test/* test1

执行上面的命令时,test1存在的每个文件都会提示是否覆盖;

cp –rf test/* test1

执行上面的命令时,test1存在的每个文件都不再会提示;

这是我们希望的理想状态,但是有时加了-f了,还会有提示.

因为服务器会默认增加别名 alias cp=’cp -i’,当你执行cp时,其实执行的是cp –i。alias下就可以看出来了。

# alias
可以找到 alias cp=’cp -i’

用下面可以解决

# vi ~/.bashrc

在alias cp=’cp -i’前加上”#”注释掉这行,:wq!保存推出,然后重新登陆就可以了。

下次在使用cp -rf 就可以直接覆盖已经存在了文件了

当然你不想改变别名的话可以转义掉,\cp -rf即可

参考:CentOS下cp如何直接覆盖命令?CentOS下cp直接覆盖命令的方法

Mysql受到爆破攻击导致内存不足挂掉

PHP游戏挂掉,游戏日志里全是mysql的报错,查看/var/log/mysql/mysqld.log,发现受到爆破攻击

截图记录

使用sytemctl restart mysql始终报错,最后在mysqld.log中发现报错:

是系统空间不足导致的,清理系统空间,见CentOS清理/dev/vda1系统盘

这次删掉的是16G大小的/usr/local/php/var/log/php-fpm.log,可怕

随后在控制台关掉了以前没注意到的端口访问问题,现3306端口只能指定IP访问,可避免爆破攻击。

参考:惊魂未定,回忆mysql挂掉运维历程

WordPress问题汇集

1、wordpress安装主题报错Unable to locate WordPress Content directory

2、参考:让WordPress的摘要显示自定义排版格式

WordPress默认摘录的功能是在wp-includes/formatting.php这个文件里,我们要修改的只有主题functions.php文件,请把下面的代码加入到functions.php文件中

remove_filter('get_the_excerpt', 'wp_trim_excerpt');
add_filter('get_the_excerpt', 'improved_trim_excerpt');
function improved_trim_excerpt($text) {
        global $post;
        if ( '' == $text ) {
                $text = get_the_content('');
                $text = apply_filters('the_content', $text);
                $text = str_replace('\]\]\>', ']]>', $text);
                $text = preg_replace('@<script[^>]*?>.*?</script>@si', '', $text);
                $text = strip_tags($text, '<p>');
                $excerpt_length = 80;
                $words = explode(' ', $text, $excerpt_length + 1);
                if (count($words)> $excerpt_length) {
                        array_pop($words);
                        array_push($words, '[...]');
                        $text = implode(' ', $words);
                }
        }
        return $text;
}

3、 WordPress提示“在裁剪您的图像时发生了错误”的解决方法 问题:在WordPress中使用裁剪图片功能时,出现:”在裁剪您的图像时发生了错误。”或者”There has been an error cropping your image.” 原因:缺少PHP GD库。 CentOS: yum install php-gd 安装PHP-GD库后重启服务器应用即可使用~ ​​​​

4、修改wordpress中twentytwelve主题显示文章摘要,先在控制台-设置-阅读里,选择摘要,再在wp-content/themes/twentytwelve/content.php文件中找到is_search(),后面会有批注:// Only display Excerpts for Search,添加is_category() || is_archive() || is_home()判断条件,在这些情况下都显示摘要,只有查看文章时才全部显示。

修改后为:if ( is_search() || is_category() || is_archive() || is_home()) : // Only display Excerpts for Search category archive home

5、修改Foot显示居中,在控制台-外观-主题编辑器中,找到Footer.php,修改为:

6、手动更新wordpress:美国服务器太慢了!!在这里找最新的安装包,在服务器端使用:wget 下载地址下载安装包并解压,删除wp-content:rm -rf wordpress/wp-content
将wordpress文件夹更名为网站根目录名:cp -r wordpress wpSampleName
修改读写权限:chmod -R 777 wpSampleName
拷贝覆盖:cp -rf /hxxe/fxxxxqi/wpSampleName /var/wxx/hxxx
访问http://你的博客地址/wp-admin/upgrade.php手动更新

参考:linux下载文件命令
wordpress一键全站迁移和备份
WordPress 5.2手动更新详细教程
Centos7解压Zip文件
CentOS下cp直接覆盖命令的方法

7、更新下载失败。: cURL error 28: Operation timed out after 300000 milliseconds with 949869 out of 13920060 byte。原因:下载太慢,建议手动更新,见6。

8、删除默认评论:控制台-设置-讨论,默认文章设置里的前两项取消勾选,参考原文

Linux常用命令

文件操作

查找文件或文件夹:find / -name 文件名或文件夹名
移动/重命名文件:mv 完整文件路径名1 新的完整文件路径名2
复制文件:cp 完整文件路径名1 新的完整文件路径名2

参考:centos彻底删除文件夹、文件命令

网络

查看开放端口:netstat -lnpt
检查端口被哪个进程占用:netstat -lnpt |grep 5672
查看进程的详细信息:ps 6832
中止进程:kill -9 6832

常用

查看状态:systemctl status nginx
启动服务:systemctl start nginx
开机启动:systemctl enable nginx
停止开机启动:systemctl disable nginx
停止服务:systemctl stop nginx
重启服务:systemctl restart nginx
firewalld指令集

wordpress安装主题报错Unable to locate WordPress Content directory

1、 chmod -R 777 wordpress #提高网站文件夹权限

2、在wp-config.php末尾加上下面的代码片段:

if(is_admin()) {
add_filter('filesystem_method', create_function('$a', 'return "direct";' ));
define( 'FS_CHMOD_DIR', 0751 );
}

参考:安装主题 Unable to locate WordPress Content directory (wp-content)

Unit mysql.service could not be found解决

方法一

1、首先你需要找到 mysql.server 文件,这个 和 mysqld 文件是一模一样的,只不过文件名不相同
执行命令
find / -name mysql.server
找到文件后,将它复制到/etc/init.d/ 目录下,并重命名
cp /phpstudy/mysql/support-files/mysql.server /etc/init.d/mysqld
再运行 service mysql status

方法二

如果上面的没能解决你的问题:

 $   yum install -y mariadb-server 
 $   systemctl start mariadb.service  
 $   systemctl enable mariadb.service 
 $   mysql_secure_installation 
[mysql]> use mysql; 
       > select  User,authentication_string,Host from user; 
       > GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456'; 
       > flush privileges; 

参考:Failed to start mysqld.service: Unit not found