博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何对网站用户进行实名认证
阅读量:6572 次
发布时间:2019-06-24

本文共 2478 字,大约阅读时间需要 8 分钟。

2016年国家网信办发布了《移动互联网应用程序信息服务管理规定》,明确了用户实名认证的要求;一是按照“后台实名、前台自愿”的原则,对注册用户进行真实身份信息认证;二是建立健全用户信息安全保护机制;三是建立健全信息内容审核管理机制,对发布违法违规信息内容的,视情采取警示、限制功能、暂停更新、关闭账号等处置措施;四是依法保障用户知情权和选择权;五是尊重和保护知识产权,不得制作、发布侵犯他人知识产权的应用程序;六是记录用户日志信息,并保存六十日。

对于目前主流的互联网系统实名认证方案有以下三种:

一、身份证实名认证
系统强制用户注册时填写个人的姓名和身份证号码,通调用第三方接口核验身份证号和姓名是否一致。这是一种较为简单的实名认证方式,很多验证是否是未成年人的系统多使用这种方案,因为身份证号码内含有出生日期。

发送数据:

bodys.put("idNo", "340421190210182345");    bodys.put("name", "张三");

返回数据:

{      "name": "张三",      "idNo": "340421190710145412",      "respMessage": "身份证信息匹配",      "respCode": "0000",      "province": "安徽省",      "city": "淮南市",      "county": "凤台县",      "birthday": "19071014",      "sex": "M",      "age": "111"    }

详情:

二、手机号实名认证

当用户在注册时通过短信验证码确认手机号为用户持有后,接下来强制用户填写姓名和身份证号码,然后在后台通过调用第三方接口确认填写的身份证信息是不是该手机号在运营商办理时使用的身份证,以此确认用户信息切实准确。这是一种较准确的实名认证方式,由于办理手机号需要本人持身份证到营业厅办理,能够认证成功表示确系本人操作,也是大多数系统使用的认证方式。
发送数据:

Map
bodys = new HashMap
(); bodys.put("idNo", "350298189012083221"); bodys.put("name", "张三"); bodys.put("phoneNo", "13511112222");

返回数据:

{      "name": "张三",      "idNo": "359345189012085813",      "phoneNo": "13511112222",      "respMessage": "身份证信息匹配",      "respCode": "0000"    }

详情:

三、银行卡实名认证

对于金融类系统,代收付业务离不开银行卡,对绑卡认证可以较为准确的核验用户信息,并且确保用户将来使用该银行卡无后顾之忧。具体流程为:先使用手机号注册基本信息,在到主界面绑卡,绑卡时填写银行卡号、姓名、身份证号码再加上已经注册了的手机号4个要素发送至第三方接口进行核验,如果验证通过表明该银行卡为用户本人所有,可以用于收付款业务。为避免套现风险一般绑定借记卡。

发送数据:

Map
bodys = new HashMap
(); bodys.put("ReturnBankInfo", "YES"); bodys.put("cardNo", "62155811111111111"); bodys.put("idNo", "340421199922225555"); bodys.put("name", "张三"); bodys.put("phoneNo", "13522221111");

返回数据:

{      "name": "张三",      "cardNo": "6225756663322156",      "idNo": "34042158962596321",      "phoneNo": "13699995555",      "respMessage": "结果匹配",      "respCode": "0000",      "bankName": "招商银行",      "bankKind": "招商银行信用卡",      "bankType": "信用卡",      "bankCode": "CMB"    }

详情:

如果用户只有付款需求,绑卡时只验证3要素即可,即:银行卡号、姓名、身份证号码。(银行代付业务一般只需要银行卡号、姓名、身份证号、金额)

发送数据:

Map
bodys = new HashMap
(); bodys.put("cardNo", "62155811111111111"); bodys.put("idNo", "340421199922225555"); bodys.put("name", "张三"); 返回数据:{ "name": "张三", "cardNo": "6215522222222223333", "idNo": "3404529999888855551111", "respMessage": "信息匹配", "respCode": "0000", "bankName": "中国工商银行", "bankKind": "工商银行", "bankType": "借记卡", "bankCode": "ICBC" }

详情:

如果大家在搬砖过程中遇到此类问题可以加博主QQ:1773542055,共同讨论ヾ(◍°∇°◍)ノ゙

转载地址:http://acmjo.baihongyu.com/

你可能感兴趣的文章
自定义View Client 登录方式(一)
查看>>
rsync搭建使用
查看>>
一台服务器上同时运行多个MySQL
查看>>
cenOS+nginx+php+mysql (非一键包安装)
查看>>
优秀程序员不一定是优秀的软件设计师
查看>>
JS系列
查看>>
在文件夹右键菜单中添加“进入DOS”命令的方法
查看>>
电脑蓝屏代码攻略
查看>>
我的友情链接
查看>>
我来自CSDN
查看>>
windowns
查看>>
java分享第十七天-02(封装操作excel类)
查看>>
在mysql表中插入大量测试数据
查看>>
怎么给电脑设置IP地址和DNS地址,各系统设置IP/DNS几种方法
查看>>
java 面试题解惑二 到底创建了几个String对象?
查看>>
面试总结之 oop desing 之 The Strategy Pattern
查看>>
必 备 习 题 集 (一)
查看>>
第 三 十 四 天:二 阶 段 复 习(五)
查看>>
windows下批量部署简易脚本
查看>>
python爬虫入门—统计豆瓣电影评论词频
查看>>