首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

统一社会信用代码 验证js

统一社会信用代码是一组长度为18位的用于法人和其他组织身份识别的代码。其验证主要涉及到校验码的计算等方面。

一、基础概念

  1. 组成结构
    • 统一社会信用代码由登记管理部门代码(1位)、机构类别代码(1位)、登记管理机关行政区划码(6位)、主体标识码(9位,采用组织机构代码)和校验码(1位)组成。
  • 校验码计算原理
    • 按照特定的加权算法对前面17位数字进行计算得到校验码。每个数位都有对应的权重因子,例如从左到右第1位权重为1,第2位为3,第3位为9,第4位为27,第5位为19,第6位为26,第7位为16,第8位为17,第9位为20,第10位为29,第11位为25,第12位为13,第13位为8,第14位为24,第15位为10,第16位为30,第17位为28。
    • 将前面17位数字分别乘以对应的权重因子后求和,再将这个和除以31取余数。然后用31减去这个余数得到校验码(如果余数为0,则校验码为0;如果余数为30,则校验码为X)。

二、应用场景

  1. 企业注册登记
    • 在工商登记过程中,用于唯一标识企业身份,确保企业在不同部门之间的信息共享和管理的准确性。
  • 信用监管
    • 相关监管部门可以通过统一社会信用代码快速查询企业的信用信息,包括是否有违法违规记录等。
  • 商务合作
    • 企业在与其他企业进行商务合作时,可以通过验证统一社会信用代码来初步判断对方企业的合法性和信誉状况。

三、JavaScript验证示例代码

代码语言:txt
复制
function validateCreditCode(code) {
    const weightFactors = [1, 3, 9, 27, 19, 26, 16, 17, 20, 29, 25, 13, 8, 24, 10, 30, 28];
    const checkCodeMap = {
        '0': 0,
        '1': 1,
        '2': 2,
        '3': 3,
        '4': 4,
        '5': 5,
        '6': 6,
        '7': 7,
        '8': 8,
        '9': 9,
        'X': 30
    };
    if (code.length!== 18) {
        return false;
    }
    let sum = 0;
    for (let i = 0; i < 17; i++) {
        const digit = parseInt(code[i]);
        if (isNaN(digit)) {
            return false;
        }
        sum += digit * weightFactors[i];
    }
    const mod = sum % 31;
    const expectedCheckCode = checkCodeMap[31 - mod];
    const actualCheckCode = checkCodeMap[code[17]];
    return expectedCheckCode === actualCheckCode;
}

在上述代码中:

  1. 首先定义了权重因子数组weightFactors和校验码映射对象checkCodeMap
  2. 检查输入的统一社会信用代码长度是否为18位。
  3. 计算前面17位数字与权重因子的乘积之和。
  4. 根据计算得到的余数求出预期的校验码,并与实际输入的第18位校验码进行比较,如果相等则验证通过,否则验证失败。
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

企业统一社会信用代码规则

依据《关于加快推进“五证合一、一照一码”登记制度改革的通知》(国办发〔2016〕53号)决定,在全面实施工商营业执照、组织机构代码证、税务登记证“三证合一”登记制度的基础上,再整合社会保险登记证和统计登记证...从2016年10月1日起正式实施“五证合一、一照一码”(即是“统一社会信用代码”)。社会信用代码,也称统一社会信用代码,是企业在全国范围内的唯一、不变的法定身份识别代码。...一般来说,我们可以在营业执照的右上角,找到该企业的统一社会信用代码。...统一社会信用代码规则 依据《国务院关于批转发展改革委等部门法人和其他组织统一社会信用代码制度建设总体方案的通知》(国发[2015]33号)的规定,建立“统一社会信用代码”,统一代码设计为18位,由“登记管理部门代码...PS:常见的公司统一社会信用代码开头的“91”代表着,登记管理部门为“市场监督管理局”,机构类别为“企业”。

1.8K30

Python 生成、识别社会统一信用代码

三证合一之后,社会统一信用代码就是企业的身份证。也就是说只要你的程序涉及企业信息的录入,那就少不了社会统一信用代码的录入。...这里分享一个工具,可以用 Python 来识别社会统一信用代码,也可以随机生成社会统一信用代码。 社会统一信用代码,共 18 位,其中 第 1 位:登记管理部门码。...第 3-8 位:表示行政区划代码,如350100是福建省福州市 第 9-17 位:企业的主体识别码,比如组织机构代码。 第 18 位:校验位。...至于校验规则,一两句话也说不清,可以查相关资料,也可以看下面的代码。 识别或生成社会统一信用代码,就是看是否符合以上规则。...social_unified_creditcode 用法: 1、安装 pip install git+https://github.com/somenzz/social_unified_creditcode.git 2、使用 # 随机一个统一社会信用代码

1.5K10
  • 统一社会信用代码管理 大数据发挥重要作用

    由国家信用体系建设联席会议编制完成的《社会信用体系建设规划纲要(2014-2020)》显示,以政务、商务、社会、司法等四大领域为主体的信用体系建设方案实现了社会信用的全面覆盖。...规划提出建立以公民身份证为基础的公民统一社会代码制度的方案;建立以组织机构代码为基础的法人和其他组织统一社会信用代码制度。这意味着公民和企业法人组织都将有统一信用代码。   ...按照规划,在未来,每一个公民、法人和社会组织将会将有唯一的信用代码,各项信用信息的整合也将具备可行基础,当前信用信息种类多、发布广、整合难、处理繁的局面将会得到有效化解,信用体系建设的基础设施将初具雏形...,信用查询、公示和基于信用的服务体系将实现联动,覆盖全社会的社会信用体系建设将驶上快车道。   ...贾丕星认为文思海辉将进一步展望,统一信用账户,完善征信系统过程中,大数据和商业智能技术的潜在机会。

    1.3K60

    ASP.NET 中验证的自定义返回和统一社会信用代码的内置验证实现

    本文介绍 ASP.NET 中内置的验证功能,并介绍如何自定义验证返回信息,最后以统一社会信用代码为例,实现自定义的数据验证。...修改结果 自定义验证规则 内置的验证虽然满足了基本的使用需求,但如何自定义验证规则呢?下面我们就以统一社会信用代码为例,介绍如何自定义内置验证规则。...验证规则介绍 我们要验证统一社会信用代码,首先就需要了解它。统一社会信用代码是一组长度为18位的用于法人和其他组织身份识别的代码。相当于我们自己的身份证号,是推动社会信用体系建设的一项重要改革措施。...在设计公司信息的相关数据存储时,我们可能需要验证统一社会信用代码的真实性。 统一社会信用代码由18位数字或者大写字母组成,但是字母不包括 I、O、Z、S、V一共由五部分组成,下表就是其详细的组成。...= "请填写统一社会信用代码")] public string?

    97530

    企业工商四要素核验API的实现原理和功能介绍

    该API可以通过传入企业名称、社会统一信用代码、法人名称、法人身份证等信息,快速进行核验,确保这四要素的一致性,从而提高对企业信息的信任度。...用户可以通过传入企业名称、社会统一信用代码、法人名称、法人身份证等信息,API将返回验证结果,帮助用户判断所输入信息是否与工商数据库中的信息一致。2.欺诈检测该API还可以用于欺诈检测。...4.自动化流程通过API,企业可以实现对四要素的自动验证,加快合作流程。这对于大规模的企业信息验证,尤其是在金融、贷款等领域,可以大幅提高工作效率。...企业工商四要素核验API推荐使用APISpace 的 企业工商四要素核验API,传入企业名称、社会统一信用代码、法人名称、法人身份证,校验此四项是否一致。官方权威核验,实时更新。...除了四要素核验,APISpace 还有企业工商三要素核验 API,通过输入企业名称、法人、注册号 /组织机构代码 /统一社会信用代码,验证三者是否匹配一致。

    48930

    浏览器插件和前端埋点方案

    .**.com/*"], "js": ["./js/style.js"], "css": ["....本来想着这件事很简单,找到对应的网站,看看都需要哪些接口,然后按照流程,输入公司名称,社会统一信用编码,验证码,点击查询就可以了。而且也非常快速的实现了一个这样的插件。...无需打开网站,只需点开浏览器插件,输入公司名称,社会统一信用编码,验证码,点击查询就可以查到该公司被执行信息的列表,点击也可以查看详情。...然后就这样把代码发给了领导,领导的回复原话是: 像那么回事儿,但是这样跟我直接打开网站查有什么区别呢?如果跟我打开网站去查没有区别,那么开发这个插件的意义是什么呢?。...然后重新梳理了一下需求: 插件支持导入需要查询的企业的excle表格 无需手动输入验证码 自动识别验证码以后,遍历表格中的企业进行查询 查询结果支持导出excle 甚至支持导出详情 接下来就是对这些需求重新进行开发

    88740

    探索企业主要人员API在金融领域的应用

    这些信息可以帮助金融机构更准确地评估客户的信用风险,并据此决定是否提供贷款、信用卡等产品。企业人员信息API还可以帮助金融机构进行市场研究。...例如,一些金融科技公司已经使用API来验证客户的身份、评估和预测客户信用风险、自动化贷款申请和审批等。这些应用使金融机构更加高效、便捷和准确地处理业务,同时也提高了客户的体验。...企业主要人员API推荐APISpace 的 企业主要人员,通过公司名称/公司ID/注册号或社会统一信用代码获取企业主要人员信息,同时还可以获取到企业历史主要人员信息。...1.企业主要人员API接口描述:通过公司名称/公司ID/注册号或社会统一信用代码获取企业主要人员信息,主要人员信息包括董事、监事、高级管理人员姓名、职位、主要人员总数等字段的详细信息。...执行董事" ] },... ] }, "reason": "ok", "error_code": 0}2.历史主要人员API接口描述:通过公司名称/公司ID/注册号或社会统一信用代码获取历史主要人员信息

    14530

    【参赛经验分享】分析js代码开启游玩新世界与Pierre Dellacherie算法本地验证

    文件代表的用途都写的很清楚,代码也不多翻一下也可以找到) 我找到一段控制台报错提示,我直接明白的record的含义 record:是一段用户的操作过程,包含移动旋转,生成新方块 我没看到悬停功能指向的代码...Src: https://geek.qq.com/tetris/js/tetris.game.js (编译前的源文件) * •游戏介绍: •1、将 10000 块按固定顺序出现的方块堆叠,有消除行即得分...画布垂直方向满屏后,结束游戏 •5、方块出现的总数最大为 10000 个,超过后结束游戏 •6、每个方块的类型(已有:I,L,J,T,O,S,Z 型方块)、形态(各类型每旋转90度后的形态)会从配置中按照统一顺序...规则6给出了方块顺序与角度顺序,所以我调整了本地pygame代码,以便调整做本地分数校验。...代码,以便进行10000个方块的运算 //随机数种子 var randomConfig = { a: 27073, M: 32749, C: 17713, v: 12358 }; //计算下一个随机数v

    2.8K221

    什么是启信宝?如何自动查询企业三要素

    启信宝从全国企业信用信息公示系统、中国法院裁判文书网、中国执行信息公开网等100家网站提取官方数据,所有数据由国家公开发布在网络上,按照关键字查询、股东/法人名查询 、经营范围查询、失信人查询及高级检索查询五种方式...启信宝现已接入腾讯云HiFlow,可以零代码连接350+款应用,解决商务招标、企业合作时查询企业资质等情况,实现将企业信息,包括三要素等内容自动写入至表格。...现在,我们支持的执行动作有执行动作: ● 企业模糊搜索:通过关键字搜索企业列表信息,比如公司名称或ID、成立日期等 ● 查询企业工商照面:比如统一社会信用代码、注册资本、经营范围、企业法定代表人等 ●...查询企业联系方式:比如工商公示企业联系方式,包括地址、电话、邮件等 ● 企业三要素验证:可验证企业名称、法人、统一社会信用代码三者是否匹配一致启信宝自动查询场景示例:我们可以通过腾讯云HiFlow将启信宝与在线表格...图片腾讯云HiFlow是什么产品腾讯云HiFlow是腾讯云推出的零代码的自动化工作流程平台,目前已经实现了连接了比如企业微信、腾讯会议、腾讯文档、腾讯电子签、TAPD、乐享、兔小巢、微信小商店、企点、公众号

    1.1K40

    【应用】揭秘互联网金融的大数据风控

    其他的验证客户的方式包括让客户出示其他银行的信用卡及刷卡记录,或者验证客户的学历证书和身份认证。...企业可以借助于SDK或JS来采集申请人在各个环节的行为,计算客户阅读条款的时间,填写信息的时间,申请贷款的时间等,如果这些申请时间大大小于正常客户申请时间,例如填写地址信息小于2秒,阅读条款少于3秒钟,...央行和上海经信委正在联合多家互联网金融公司建立统一的黑名单平台,但是很多互联网金融公司都不太愿意贡献自家的黑名单,这些黑名单是用真金白银换来的教训。...七、参考社会关系来评估信用情况 物以类聚,人与群分。一般情况下,信用好的人,他的朋友信用也很好。...互联网金融企业通过分析申请人的社会行为数据来控制信用风险,将资金借给合格贷款人,保证资金的安全。 来源:CDA数据分析师

    1.4K40

    【钱塘号专栏】揭秘互联网金融的大数据风控

    其他的验证客户的方式包括让客户出示其他银行的信用卡及刷卡记录,或者验证客户的学历证书和身份认证。...企业可以借助于SDK或JS来采集申请人在各个环节的行为,计算客户阅读条款的时间,填写信息的时间,申请贷款的时间等,如果这些申请时间大大小于正常客户申请时间,例如填写地址信息小于2秒,阅读条款少于3秒钟,...央行和上海经信委正在联合多家互联网金融公司建立统一的黑名单平台,但是很多互联网金融公司都不太愿意贡献自家的黑名单,这些黑名单是用真金白银换来的教训。...七、参考社会关系来评估信用情况 物以类聚,人与群分。一般情况下,信用好的人,他的朋友信用也很好。...互联网金融企业通过分析申请人的社会行为数据来控制信用风险,将资金借给合格贷款人,保证资金的安全。 钱塘号作者:鲍忠铁

    1K70

    国务院发布:运用大数据意见36条(附细则+各部委行动时间表)

    以国家统一的信用信息共享交换平台为基础,运用大数据推动社会信用体系建设,建立跨地区、多部门的信用联动奖惩机制,构建公平诚信的市场环境。 提高政府服务水平和监管效率,降低服务和监管成本。...加快建立公民、法人和其他组织统一社会信用代码制度。...全面实行工商营业执照、组织机构代码证和税务登记证“三证合一”、“一照一码”登记制度改革,以简化办理程序、方便市场主体、减轻社会负担为出发点,做好制度设计。...建立统一社会信用代码制度。建立健全各部门政府信息记录和采集制度。建立政府信息资源管理制度,加强知识产权保护。加快出台关于推进公共信息资源开放共享的政策意见。制定政务信用信息公开共享办法和信息目录。...国务院办公厅 2015年6月24日 附件:重点任务分工及进度安排表 序号 工作任务 负责单位 时间进度 1 加快建立公民、法人和其他组织统一社会信用代码制度。

    1.8K60

    国务院发布:运用大数据意见36条(附细则+各部委行动时间表)

    以国家统一的信用信息共享交换平台为基础,运用大数据推动社会信用体系建设,建立跨地区、多部门的信用联动奖惩机制,构建公平诚信的市场环境。 提高政府服务水平和监管效率,降低服务和监管成本。...加快建立公民、法人和其他组织统一社会信用代码制度。...全面实行工商营业执照、组织机构代码证和税务登记证“三证合一”、“一照一码”登记制度改革,以简化办理程序、方便市场主体、减轻社会负担为出发点,做好制度设计。...建立统一社会信用代码制度。建立健全各部门政府信息记录和采集制度。建立政府信息资源管理制度,加强知识产权保护。加快出台关于推进公共信息资源开放共享的政策意见。制定政务信用信息公开共享办法和信息目录。...国务院办公厅 2015年6月24日 附件:重点任务分工及进度安排表 序号 工作任务 负责单位 时间进度 1 加快建立公民、法人和其他组织统一社会信用代码制度。

    778110

    Java 常用验证方法(commons-validator,hutool)

    背景 为了实现接口响应全量字段断言,开发断言表达式框架时,除了调研常用的断言框架之外,也调研了一些验证框架和方法(非hibernate-validator、spring-validator验证注解)。...验证方法比较 仅仅从验证方法比较: commons-validator除了通用验证方法外,还支持国际通用数字标准验证,比如:IBAN (International Bank Account Number...commons-validator基本一致,由于国人开源,验证方法较“中国”化些,比如:身份证、手机号、车牌号、邮政编码、社会统一信用代码、是否汉字等。...*t$")); // 信用卡验证 Assert.assertTrue(GenericValidator.isCreditCard("6227612145830440"))...11010119900307299X")); Assert.assertTrue(IdcardUtil.isValidCard18("11010119900307299X")); // 统一社会信用代码

    2.5K20

    【工具】15个非常实用的 JavaScript 表单验证库

    3、Valid.js 地址:https://github.com/dleitee/valid.js Valid.js是用于数据验证的简单JavaScript库。这是验证功能。...它已经通过100%代码覆盖率的单元测试,可以使用。validate.js的目标是提供一种验证数据的跨框架和跨语言方式。验证约束可以用JSON声明,并在客户端和服务器之间共享。 ?...通过将JavaScript应用程序中最基本但最常见的数据和类型验证统一为单个,简洁且高度优化的操作,可以提高应用程序的效率和可读性。...它支持各种领域,例如信用卡cvc,信用卡有效期,信用卡号,电子邮件地址,日期,号码,安大略省的驾照号码等等。 ?...可以轻松地将脚本插入现有的HTML表单代码中,而无需大量更改HTML代码。或从头开始实施。

    6.2K20

    涵盖日常开发中所需要的60多个正则验证!!

    文档有正则,但不只正则,还有很多常用的 js 方法等待大家发现,希望小伙伴们多多支持~ 在线文档 源码地址 感觉对你有帮助的小伙伴帮忙点个 star,或者常来文档看看,不定期更新更多的 js 技巧。...result2 = imeiReg('12345678998765432234') console.log(result1) // true console.log(result2) // false 20.统一社会信用代码...(宽松) 验证统一社会信用代码,15位 / 18位 / 20位 的 数字 或者 字母。...result2 = codsReg('91330526MA345BR13A') console.log(result1) // true console.log(result2) // true 21.统一社会信用代码...(严格) 验证统一社会信用代码,须符合 《法人和其他组织统一社会信用代码编码规则》 。

    1.2K20

    建立一个跨平台可复用C++代码的实例工程(二)windows,android下webview中js调用原生代码统一接口

    三端界面统一用webview加载h5实现,所以需要统一定义一个js调用原生代码的接口。...android需要转个弯,因为安卓没有原生的支持js异步调用原生代码的回调返回参数。要用evaluateJavascript来实现。所以js不好用匿名函数。只能在js端定义一个工具类。...js端的代码如下。用ddm类布置一个全局回调,原生代码调用这个回调后,qu'de函数名,关联的匿名回调函数,然后再分发回调。 <!...CefRegisterExtension("v8/ddmcorejsapi", extensionCode, this); } 然后v8里面处理js调用native代码的映射。...} exception = ""; return true; } return false; } 封装一下数据处理好,原生c++代码回调

    1.1K10
    领券