当前位置: 首页 > news >正文

联通iccid 19转20 使用luhn 算法的计算公式

联通iccid 19转20 使用luhn 算法的计算公式

第一次对接iccid 才知道 使用的是luhn 算法 19转20位

  • 文章来源于 文章来源

当时也是一脸懵逼 的状态,然后各种chatgpt 寻找,怎么找都发现不对,最后看到这片java的文章实验是正确的,因为像这种好多鉴权、加密、升级等都是java的,还没有文档,只能试着去碰,最后终于对了

原文的思路,然后从java 改成php

ICCID共20位, 最后一位的校验位计算规则如下:

  1. 取前19位 . 从左到右奇数位开始. 乘以2 然后计算个位与十位数之和.

  2. 将所有偶数位的数字与上一步得到的值全部相加

  3. 将上一步得到的值乘以9 然后取余. 得到的值就是第20位的校验位

例: 89860262191507034404 最后一位校验位是4

在这里插入图片描述

第三行相加 1+6+9+1+6+6+0+2+1+2+2+2+9+2+5+0+7+0+3+8+4+0=76

最后 76*9 = 684

校验位就是 684%10=4 各位可以到 验证该计算方法.`

代码如下,希望能帮到大家
/*** @param string $iccid* @return int|string*/public function checkLuhn($iccid = ''){$strLen = strlen($iccid);if ($strLen == 19) {$rest = 0;for ($i = 0; $i < $strLen; $i++) {if($i % 2 == 0){$oddNum = $iccid[$i] * 2;$rest += intval($oddNum / 10) + $oddNum % 10;} else {$rest += $iccid[$i];}}$rest  = $rest * 9;$str =  $rest % 10;} else {$str =  6;}return $iccid. $str;}

相关文章:

联通iccid 19转20 使用luhn 算法的计算公式

联通iccid 19转20 使用luhn 算法的计算公式 第一次对接iccid 才知道 使用的是luhn 算法 19转20位 文章来源于 文章来源 当时也是一脸懵逼 的状态&#xff0c;然后各种chatgpt 寻找&#xff0c;怎么找都发现不对&#xff0c;最后看到这片java的文章实验是正确的&#xff0c;因…...

I.MX6ULL的MAC网络外设设备树实现说明一

一. 简介 IMX6ULL芯片内部集成了两个 10/100M 的网络 MAC 外设&#xff0c;所以&#xff0c;ALPHA开发板上的有线网络的硬件方案是&#xff1a; SOC内部集成网络MAC外设 PHY网络芯片方案。 本文来说明一下MAC网络外设的设备节点信息的实现。 因此&#xff0c; I.MX6ULL 网络…...

vue弹出的添加信息组件中 el-radio 单选框无法点击问题

情景描述:在弹出的添加信息的组件中的form中有一个单选框,单选框无法进行点击切换 原因如下: 单选框要求有个默认值,因为添加和更新操作复用同一个组件,所以我在初始化时对相关进行了判定,如果为空则赋初始值 结果这样虽然实现了初始值的展示,但是就是如此造成了单选框的无法切…...

蓝桥杯刷题day13——玩游戏【算法赛】

一、问题描述 小 A 和小 B 两个人在海边找到了 n 个石子&#xff0c;准备开始进行一些游戏&#xff0c;具体规则如下&#xff1a;小 B 首先将 n 个石子分成若干堆&#xff0c;接下来从小 A 开始小 A 和小 B 轮流取石子&#xff0c;每次可以任选一堆石子取走任意个&#xff0c;…...

Three.js——scene场景、几何体位置旋转缩放、正射投影相机、透视投影相机

个人简介 &#x1f440;个人主页&#xff1a; 前端杂货铺 &#x1f64b;‍♂️学习方向&#xff1a; 主攻前端方向&#xff0c;正逐渐往全干发展 &#x1f4c3;个人状态&#xff1a; 研发工程师&#xff0c;现效力于中国工业软件事业 &#x1f680;人生格言&#xff1a; 积跬步…...

springboot集成rabbitmq

一 添加pom <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId> </dependency>二&#xff0c;配置yml spring:rabbitmq:host: 192.168.56.200port: 5672username: adminpasswor…...

腾讯云轻量4核8G12M应用服务器性能测评和优惠价格表

腾讯云4核8G服务器价格&#xff1a;轻量4核8G12M优惠价格646元15个月、CVM S5服务器4核8G配置1437元买1年送3个月。腾讯云4核8G服务器支持多少人同时在线&#xff1f;支持30个并发数&#xff0c;可容纳日均1万IP人数访问。腾讯云百科txybk.com整理4核8G服务器支持多少人同时在线…...

判断点在多边形内的算法

在计算几何中&#xff0c;判定点是否在多边形内&#xff0c;是个非常有趣的问题。通常有两种方法&#xff1a; 一、Crossing Number&#xff08;交叉数&#xff09; 它计算从点P开始的射线穿过多边形边界的次数。当“交叉数”是偶数时&#xff0c;点在外面;当它是奇数时&…...

Network AIS Receiver R400N

目录 Introduction OVERVIEW BASIC FEATURES APPLICATIONS SPECIFICATIONS Introduction OVERVIEW The R400N provides a method of monitoring the position, speed and heading of AIS vessels within VHF range. It can decode of Class A, Class B, Aids to Navigat…...

JavaScript循环

JavaScript的循环有两种&#xff0c;一种是for循环&#xff0c;通过初始条件、结束条件和递增条件来循环执行语句块&#xff1a; var x 0; var i; for (i1; i<10000; i) { x x i; } x; // 50005000 for循环的3个条件都是可以省略的&#xff0c;如果没有退出循环的判断条件…...

9Proxy,跨境电商一站式解决方案

文章目录 跨境电商什么是跨境电商跨境电商的机遇跨境电商技术支撑 海外代理IP什么是海外代理IP海外代理IP的作用如何选择海外代理IP 9Proxy9Proxy的优势9Proxy的解决方案价格汇总搜索引擎优化市场调查多重核算数据抓取广告技术 价格上手体验注册登录下载安装数据采集 总结福利 …...

ObjectiveC-08-OOP面向对象程序设计-类的分离与组合

本节用一简短的文章来说下是ObjectiveC中的类。类其实是OOP中的一个概念&#xff0c;概念上简单来讲类是它是一组关系密切属性的集合&#xff0c;所谓的关系就是对现实事物的抽象。 上面提到的关系包括很多种&#xff0c;比如has a&#xff0c; is a&#xff0c;has some等&…...

Qt 总结

由于工作需要用到Qt。把过程中学习到的东西记录下来&#xff0c;希望能帮到他人和将来的自己。 由于需要快速实现需求&#xff0c;所以对Qt只是使用&#xff0c;并没有对原理的深入理解。 故此文只适合入门&#xff0c;不适合深入学习Qt。 文章目录 安装&维护示例&教…...

中间件复习之-RPC框架

什么是RPC框架&#xff1f; RPC(Remote Procedure Call):远程过程调用。当多个应用部署在多个服务器上时&#xff0c;由于他们不在一个内存空间上&#xff0c;因此需要网络来进行通信&#xff0c;而RPC允许它像调用本地方法一样调用远程服务。 RPC原理 服务消费方通过RPC客户…...

AcWing 787. 归并排序——算法基础课题解

AcWing 787. 归并排序 文章目录 题目描述CGo模板 题目描述 给定你一个长度为 n 的整数数列。 请你使用归并排序对这个数列按照从小到大进行排序。 并将排好序的数列按顺序输出。 输入格式 输入共两行&#xff0c;第一行包含整数 n。 第二行包含 n 个整数&#xff08;所有…...

力扣1379---找出克隆二叉树的相同节点(Java、DFS、简单题)

目录 题目描述&#xff1a; 思路描述&#xff1a; 代码&#xff1a; &#xff08;1&#xff09;&#xff1a; &#xff08;2&#xff09;&#xff1a; 题目描述&#xff1a; 给你两棵二叉树&#xff0c;原始树 original 和克隆树 cloned&#xff0c;以及一个位于原始树 ori…...

FLink学习(三)-DataStream

一、DataStream 1&#xff0c;支持序列化的类型有 基本类型&#xff0c;即 String、Long、Integer、Boolean、Array复合类型&#xff1a;Tuples、POJOs 和 Scala case classes Tuples Flink 自带有 Tuple0 到 Tuple25 类型 Tuple2<String, Integer> person Tuple2.…...

Failed to resolve import “Home/components/HomeNew.vue“. Does the file exist?

错误信息 [plugin:vite:import-analysis] Failed to resolve import "/apis/home.js" from "src/views/Home/components/HomeNew.vue". Does the file exist? 错误原因 路径错误 解决方法...

《价值》-张磊-高瓴资本-3-建立人脉和信任;顺应趋势,把握机遇;

第三章 价值投资初试炼 2005.6.1 创办高瓴资本 许多人问我为什么一直在创业&#xff0c;其实我倒没想到自己非要创业成功不可&#xff0c;只是觉得一定要做点事&#xff0c;做点有意义的事。归根到底&#xff0c;可能是“爱折腾&#xff0c;不满足现状&#xff0c;爱挑战自己”…...

游戏引擎中的物理应用

一、 角色控制器 Character Controller和普通的动态对象&#xff08;Dynamic Actor &#xff09;是不同的&#xff0c;主要的三个特点是: 它拥有可控制的刚体间的交互假设它是有无穷的摩擦力&#xff08;可以站停在位置上&#xff09;&#xff0c;没有弹性加速和刹车几乎立即…...

Gridfinity Rebuilt OpenSCAD优化技巧:节省材料、提升打印质量的7个方法

Gridfinity Rebuilt OpenSCAD优化技巧&#xff1a;节省材料、提升打印质量的7个方法 【免费下载链接】gridfinity-rebuilt-openscad A ground-up rebuild of the stock gridfinity bins in OpenSCAD 项目地址: https://gitcode.com/gh_mirrors/gr/gridfinity-rebuilt-opensca…...

别再用Excel解方程了!手把手教你用C++实现高斯消元法(附洛谷P3389模板题实战)

从数学公式到AC代码&#xff1a;高斯消元法的竞赛级C实现 在算法竞赛和科学计算中&#xff0c;线性方程组求解是一个无法回避的经典问题。当你面对洛谷P3389这样的模板题时&#xff0c;是否曾困惑于如何将教科书上的数学步骤转化为高效的C代码&#xff1f;本文将彻底打破理论与…...

FanControl风扇识别故障排查指南:从零开始解决“风扇隐身“问题

FanControl风扇识别故障排查指南&#xff1a;从零开始解决"风扇隐身"问题 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/G…...

反向传播不神秘:手把手调试一个计算图,看梯度是怎么‘流’回来的

反向传播不神秘&#xff1a;手把手调试一个计算图&#xff0c;看梯度是怎么"流"回来的 在深度学习的实践中&#xff0c;我们常常会调用loss.backward()这样的魔法函数&#xff0c;然后梯度就自动计算好了。但这个过程究竟发生了什么&#xff1f;为什么调整参数时梯度…...

League-Toolkit终极指南:英雄联盟玩家的智能自动化神器

League-Toolkit终极指南&#xff1a;英雄联盟玩家的智能自动化神器 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power &#x1f680;. 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit 如果你是英雄联盟玩家&…...

不使用库函数,实现 strcpy,strcat,strcmp

文章目录 1、strcpy 原型2、strcmp 原型 1、strcpy 原型 char* strcpy(char* des, const char* source) {char* r des;assert((des ! NULL) && (source ! NULL));while((*r *source)!\0);return des; }可以自行实现&#xff1a; char* myStrcpy(char* dest, char* …...

别再傻傻点图标了!用VSCode的code命令,在Windows/Mac/Linux终端里秒开项目

终端极客的VSCode效率革命&#xff1a;用命令行秒开项目的深度指南 每次在终端和编辑器之间频繁切换&#xff0c;就像在高速公路和乡间小路间不断换道——效率低下且令人烦躁。作为深度终端用户&#xff0c;我们渴望一种无缝衔接的工作流&#xff0c;而VSCode的code命令正是解决…...

专业级英雄联盟回放分析工具:ROFL-Player完整实战指南

专业级英雄联盟回放分析工具&#xff1a;ROFL-Player完整实战指南 【免费下载链接】ROFL-Player (No longer supported) One stop shop utility for viewing League of Legends replays! 项目地址: https://gitcode.com/gh_mirrors/ro/ROFL-Player ROFL-Player是一款专为…...

GitHub中文化插件完整指南:3分钟让GitHub界面变中文的终极方案

GitHub中文化插件完整指南&#xff1a;3分钟让GitHub界面变中文的终极方案 【免费下载链接】github-chinese GitHub 汉化插件&#xff0c;GitHub 中文化界面。 (GitHub Translation To Chinese) 项目地址: https://gitcode.com/gh_mirrors/gi/github-chinese 还在为GitH…...

X鱼屏蔽codex后,我的优质token粮仓告急

自从codex被X鱼全面封杀下架&#xff0c;我的优质token来源就又少了关键来源渠道了&#xff0c;多么怀念40元90刀每天额度月卡&#xff0c;30元1000刀的日子&#xff0c;看着其它中转站那些0.15元/刀&#xff0c;0.3元/刀&#xff0c;百万token等于4刀左右吧。一点兴趣都没有&a…...