身份证加权因子的计算由来

QT C++ 判断身份证合法性 我将我国的身份证合法性检测规则分为如下四步: 1、取身份证最后一位为校验数字; 2、将其余数字与相对应位置的加权因子相乘并累加; 3、将累加和对11取模得到校验码表下标,根据得到校验码; 4、将步骤3校验码和步骤1得到的校验数字比对,如果相等则身份证合法。 将上述规则通过QT C++代码实现如下: /** * @brief 验证身份证号码 * @para IDNum:身... 阅读详情


(1) 十七位数字本体码加权求和公式
       S = Ai * Wi, i = 2, ... , 18
       Y = mod(S, 11)
       i: 表示号码字符从右至左包括校验码字符在内的位置序号
       Ai:表示第i位置上的身份证号码字符值
       Wi:表示第i位置上的加权因子
       i:      18    17    16     15    14    13    12    11    10    9     8     7     6     5    4    3    2    1
       Wi:    7      9     10      5      8      4      2      1      6     3     7     9    10    5    8    4    2    1


(2) Y值对应的校验码字符值:
       Y:            0    1    2    3    4    5    6    7    8    9    10
       校验码:   1     0    X    9    8    7    6    5    4    3    2



试算一个:身份证号是14010519590215222a1
i:      18    17    16     15    14    13    12    11    10    9     8     7     6     5    4    3    2    1
Ai:     1      4      0       1       0     5       1     9      5     9     0     2     1     5    2    2    2    a1
Wi:    7      9     10      5      8      4      2      1      6     3     7     9    10    5    8    4    2    1
根据公式  S = Ai * Wi=7+36+0+5+0+20+2+9+30+27+0+18+10+25+16+8+4=217
217/11=19+8/11
Y = mod(S, 11)=mod(217,11)=8
所以,检验码为4,该人的身份证号为140105195902152224




注:本文转载自:http://hi.baidu.com/niuhongjuan/item/2e5c6a62cbdaf02668105b1e





CIC-IDS2017数据集训练和测试 1、数据集预处理 1.1整合数据并剔除脏数据 如上图所示,整个数据集是分开的,想要训练,必须要整合在一起,同时在数据集中存在Nan和Infiniti脏数据(只有第15列和第16列存在)需要剔除: 具体代码如下: ```python importpandasaspd #按行合并多个Dataframe数据 defmergeData(): monday=writeData("data\MachineLearningCVE\Monday-W... 阅读详情

相关推荐

东方财富网API接口逆向分析:手把手教你破解那个带jQuery回调的股票数据接口

本文详细解析了东方财富网股票数据API接口的逆向工程实战技巧,重点介绍了JSONP接口的核心机制、参数解析及数据处理方法。通过Python代码示例演示了如何构造请求、处理分页数据及应对反爬策略,帮助开发者高效获取股票数据。文章还提供了完整的爬虫实现案例和常见问题排查指南。

weixin_30790841的博客 710

身份证加权因子

身份证加权因子 身份证号码位置i:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 n: 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 Wi: 7 9 10 5 8 4 2 1 6 3 7 9

weixin_45804183的博客 2282

一文看懂英伟达A100、H100、A800、H800、H20

想要Deepseek私有化部署吗?无论是训练大型AI模型,还是进行高性能计算(HPC),还是Deepseek私有化部署,都需要强大的GPU支持。而英伟达(NVIDIA)作为全球领先的AI芯片制造商,推出了一系列高性能GPU,包括等,广泛应用于AI训练、推理、科学计算等领域。如果想搭建一个属于自己的算力中心,该如何选择合适的GPU?本文将带你详细了解这些GPU的特性,并指导你如何搭建算力中心。一、英伟达算力GPU系列解析1. A100:数据中心AI计算的奠基石:Ampere:6912:432。

【可全包】本人程序员,不需要做任何吹嘘,只是实在写点程序,写点文档,熟悉各类主流框架,SSM,SpringBoot,Flask,Djiango,Mysql,Sqlite,VUE,Uniapp等,各类程序设计专家,优质作者 2万+

L1-016 查验身份证 (15分)

题目 一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};然后将计算的和对11取模得到值Z;最后按照以下关系对应Z值与校验码M的值: Z:0 1 2 3 4 5 6 7 8 9 10 M:1 0 X 9 8 7 6 5 4 3 2 现在给定一些身份证号码,请你验证校验码的有效性,并输出有问题的号码。 输入格式: 输入第一行给出正整数N(≤100)是输入

Hanzoe的博客 868

Qt for Android:基于libusb实现CH340x串口通信的高效开发方案

本文详细介绍了在Qt for Android环境下,基于libusb实现CH340x串口通信的高效开发方案。通过绕过Android高版本系统的权限限制,利用libusb+JNI技术实现稳定通信,适用于工业手持终端等场景。文章涵盖环境搭建、核心实现、常见问题解决方案及性能调优经验,帮助开发者快速掌握这一关键技术。

weixin_42715608的博客 426

【AI之路】cmd命令行通过Huggingface镜像站快速下载模型文件的方法

Hugging Face Hub 是分享机器学习模型、演示、数据集和指标的首选之地。huggingface_hub 库可以轻松下载Huggingface上有用的模型和数据集元数据。但大模型文件通常较大,国内下载太慢,那有没有高效便捷的方法?这个当然必须有!看到了吗?只是添加一个参数,下载大模型就搞定了。当然也可以使用python程序来下载。具体见前期博文:【AI之路】使用huggingface_hub通过huggingface镜像站hf-mirror.com下载大模型(附代码,实现大模型自由)

IT里的交易员-博客 1848

[转]java实现—身份证号码验证

[color=red]原文地址:[/color][url]http://akunamotata.iteye.com/blog/333228[/url] 身份证号码的编码原理: 号码的结构 公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。排列顺序从左至右依次为:六位数字地址码 ,八位数字出生日期码 ,三位数字顺序码 和一位数字校验码 。 校验码的计算 (1)十七位数...

unixtux的专栏 270

【gridsample】地平线征程6芯片中gridsample算子的优化与部署实践

本文详细介绍了地平线征程6芯片中gridsample算子的优化与部署实践,重点探讨了PTQ和QAT量化方案在BEV感知任务中的应用。通过双线性插值优化、内存布局调整和混合精度配置等关键技术,显著提升了算子在自动驾驶场景下的性能和精度,为开发者提供了实用的部署指南和调优建议。

zero1的博客 1019

【贡献(权重)分配】Shapley Value 夏普利值的理解以及实例说明

是理论中的一个概念,由劳埃德-夏普利在1951年提出了这个概念,并因此在2012年获得了诺贝尔经济学奖。对于每个合作博弈,它为所有玩家的联盟产生的总盈余分配了一个独特的分配。

weixin_43578061的博客 1万+

腾讯滑块验证码collect参数逆向与JSVMP对抗实战

本文深入解析腾讯滑块验证码collect参数的逆向过程与JSVMP虚拟机对抗技术。通过详细的环境搭建、抓包分析和JSVMP逆向技巧,揭示collect参数的生成逻辑与加密流程,并提供完整的模拟实现方案和常见问题排查方法,助力开发者突破腾讯天御验证码的防护机制。

weixin_29009501的博客 1573

matlab kwave模拟超声换能器学习笔记

kwave模拟超声换能器的学习笔记,从零开始造车轮

SolvingMaster的博客 3195

身份证号码验证算法

做项目的时候需要对拿到的数据进行“清洗”,比如剔除一些不可能存在的身份证号码。查阅了网上的身份证号码验证算法,自己也总结一下。 (一)18身份证号码的结构  公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。   排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位校验码。 1、地址码   表示编码对象常住户口所在县(市、旗、区)的行政区域划分代码,按G...

weixin_33774308的博客 520

[Dify]-进阶5- 使用 Dify 构建多轮对话的客服机器人

本文介绍了如何利用Dify平台构建智能客服系统,重点阐述了ChatFlow框架的应用。系统支持多轮对话、业务接口集成和话术策略管理,具备订单查询、退货申请等核心功能。通过Classifier节点实现意图识别,借助Router节点分流处理流程,并结合API插件实现业务数据对接。文章还提供了部署调试、会话优化和监控分析的具体方法,强调模块化设计和插件化集成的重要性,为构建功能完善的智能客服系统提供了完整解决方案。

技术小甜甜:传播可落地技术,帮助个人和企业降低解决真实场景问题的成本 1658

身份证号的计算规则是怎样,如何校验一个身份证号是合法的?

我们要做校验身份证是否合法,首先要知道身份证号的组成规则,下面我们就来说说这个身份证号: 大家都应该知道我们身份号有两种,一种是15位数的身份证号 另一种是18位身份证号 15位:6位常住户口所在县(市、旗、区)的行政区划代码(xxyyzz),6位出生年月日(901212),最后三位称为顺序码,是对前12位编号相同的人编定的顺序号,其中奇数分配给男性,偶数分配给女性。 18位:6位...

banggujuan3308的博客 1657

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

加权相关-身份证验证码

统计学认为,在统计中计算平均数等指标时,对各个变量值具有权衡轻重作用的数值就称为权数.   还是举个例子吧,求下列数串的平均数   3、4、3、3、3、2、4、4、3、3、   一般求法为(3+4+3+3+3+2+4+4+3+3)/10=3.2   加权求法为(6*3+3*4+2)/10=3.2   其中3出现6次,4出现3次,2出现1次.6、3、1就叫权数。...

bangrulu3140的博客 270

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Java实现18位身份证号码的校验码计算校验

我国第二代公民身份号码是特征组合码,由前十七位数字本体码和最后一位数字校验码组成。排列顺序从左至右依次为六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。本文只介绍最后一位数字校验码的计算校验。 校验码算法 将本体码各位数字乘以对应加权因子并求和,除以11得到余数,根据余数通过校验码对照表查得校验码。 加权因子: 校验码: 算法举例: 本体码为:11010519491231002 第一步: 各位数与对应加权因子乘积求和1*7+1*9+0*10+1*5+***=167

益添的博客 4537

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

身份证有效性的验证

public class IdCardVerify { public static boolean idCardVerify(char[] idCardNum){ //身份证的编码规则(18位) //前六位是地区代码,第七位到第十四位出生年月日,第十五、十六为派出所代码,第十七为是性别,最后一位是校验码 //校验的计算公式:身份证最后一位=从左到右身份证的数字乘以加权因子求和 % 11 int sum=0; int[].

balingmobanche的博客 1545

js身份证校验方法集合

校验方法一: /* * 身份证15位编码规则:dddddd yymmdd xx p * dddddd:6位地区编码 * yymmdd: 出生年(两位年)月日,如:910215 * xx: 顺序编码,系统产生,无法确定 * p: 性别,奇数为男,偶数为女 * ...

滴水石穿 3365

身份证校验规则

/* * 身份证15位编码规则:dddddd yymmdd xx p * dddddd:6位地区编码 * yymmdd: 出生年(两位年)月日,如:910215 * xx: 顺序编码,系统产生,无法确定 * p: 性别,奇数为男,偶数为女 * * 身份证18位编码规则:dddddd yyyymmdd xxx y * dddddd:6位地区编码 * yyyymmdd: 出生年(四位年)月日,如:19910

sq66666的博客 1937

身份证号的校验码

某公民身份证号本体码为51078107010228001,其校验码计算过程如下,该公民身份证号为510781070102280016。表示从右到左包括校验码字符在内的位置序号;个位置上的加权因子,其计算公式为。取值为10时,用罗马数字X表示。个位置上的号码字符值;的换算关系如下表所示,

2301_78471905的博客 3130

比较严谨的检验身份证号的真实性与合法性

我们都知道,身份证号是我们每个人的唯一的标识,既然要做到唯一性,身份证号的设计肯定不会仅仅只是设计成18位,最后一位是数字或者“X”这么简单,仅仅只是这么来设计就太low了,而且很容易出现重复的情况,先看看身份证号每一位代表的意思 身份证号码各位数字代表含义 再看看身份证号的校验计算方法 身份证号校验计算方法 1、将前面的身份证号码17位数分别乘以不同的系数。从第一位到第十七位的系数分...

kivet的博客 4448

身份证验证

functioncardindex(){ varobj=$("input[name='card']"); varidCard=obj.val(); //15位和18位身份证号码的正则表达式 varregIdCard=/^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)| (^[1-9]\d{5}[...

printfl的博客 178

身份证号规则校验

第18位数字是校检码:也有的说是个人信息码,一般是随计算机的随机产生,用来检验身份证的正确性。第7-12位数字表示:出生年(缺省18,19,20这种)、月、日;第15位数字表示性别:奇数表示男性,偶数表示女性;第17位数字表示性别:奇数表示男性,偶数表示女性;第15、16位数字表示:所在地的派出所的代码;前1、2位数字表示:所在省份的代码;第3、4位数字表示:所在城市的代码;第5、6位数字表示:所在区县的代码;第3、4位数字表示:所在城市的代码;第5、6位数字表示:所在区县的代码;

qq_47614329的博客 5163

php下对中国内地身份证进行验证

//验证身份证是否有效 public function check_idcard($idcard) { if(preg_match('`^[0-9a-zA-Z\(\)]+$`', $idcard)){//基本格式 //return true; if (strlen($idcard) == 18) { check18IDCard($idcard); //18位身份证校验码有效性检查 } elseif ((strlen($idcard) == 15)) { $idcard

陌小白的博客 3480

使用Java实现身份证真假校验

(1)身份证18位数(2)前17位为是数字,最后一位为验证位,计算最后一位规则如下:证号码前17位数 从第一位开始到第十七位每位数分别于加权因子相乘求和 加权因子:7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2。再将和对11求余,得到余数余数于最后一位检验位对应关系如下 #########余数:0-1-2-3-4-5-6-7-8-9-10。 身份证最后一位:1-0-X-9-8-7-6-5-4-3- 2 。 例如,求得余数为3,则身份证最后一位为9 2.自定义方法isCard 代

weixin_44703268的博客 7634

python验证身份证

def get_checkcode(id): """ 计算身份证号码的校验位; :param: * id_number_str: (string) 身份证号的前17位,比如 3201241987010100 :returns: * 返回类型 (tuple) * flag: (bool) 如果身份证号格式正确,返回 True;格式错误,返回 False * checkcode: 计算身份证前17位的校验码 .

rta_bh的博客 740
上一篇: 常见纸飞机的折法
下一篇: Platform SDK 字符串处理 API
DavidHsing
博客等级 码龄19年 782粉丝 127原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值