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

java BCC异或校验例子

需求

对一个十六进制的字符串进行BCC校验

方法

    private static String XORCheck(String rawMsg) {// 16进制字符串需要转成10进制数组进行校验,然后再返回16进制字符串用于与原来的字符匹配byte[] bytes = HexDumpMsgFormat.hexStr2DesBytes(rawMsg);return BytesUtil.bytesXORCheck(bytes);}

    /*** 十六进制字符串转10进制字节数组*/public static byte[] hexStr2DesBytes(String hex) {int len = (hex.length() / 2);byte[] result = new byte[len];int k = 0;for (int i = 0; i < len; i++) {byte high = (byte) (Character.digit(hex.charAt(k), 16) & 0xff);byte low = (byte) (Character.digit(hex.charAt(k + 1), 16) & 0xff);result[i] = (byte) (high << 4 | low);k += 2;}return result;}

 如果是普通的字符串

bytesXORCheck("xxxxx".getBytes())

    /*** OXR校验* 在线BBC校验: http://www.ip33.com/bcc.html** @param bytes* @return*/public static String bytesXORCheck(byte[] bytes) {int nAll = 0;for (int nTemp : bytes) {nAll = nAll ^ nTemp;}return String.format("%02X", nAll & 0xff);}

验证

BCC校验(异或校验)在线计算_ip33.com

BCC一般是对前端内容校验,然后拼到最后,给设备下发指令。 

相关文章:

java BCC异或校验例子

需求 对一个十六进制的字符串进行BCC校验 方法 private static String XORCheck(String rawMsg) {// 16进制字符串需要转成10进制数组进行校验&#xff0c;然后再返回16进制字符串用于与原来的字符匹配byte[] bytes HexDumpMsgFormat.hexStr2DesBytes(rawMsg);return BytesUt…...

Python第十六课:深度学习入门 | 神经网络解密

🎯 本节目标 理解生物神经元与人工神经网络的映射关系掌握激活函数与损失函数的核心作用使用Keras构建手写数字识别模型可视化神经网络的训练过程掌握防止过拟合的基础策略一、神经网络基础(大脑的数字化仿生) 1. 神经元对比 生物神经元人工神经元树突接收信号输入层接收特…...

若依-导出后端解析

针对若依框架微服务版本学习 若依导入导出功能的具体使用详见&#xff1a;后台手册 | RuoYi 1.导出逻辑&#xff1a; 导出文件的逻辑是先创建一个临时文件&#xff0c;等待前端请求下载结束后马上删除这个临时文件。但是有些下载插件&#xff0c;例如迅雷&#xff08;他们是二…...

华为OD机试九日集训第1期 - 按算法分类,由易到难,循序渐进,提升编程能力和解题技巧,从而提高机试通过率(Python/JS/C/C++)

目录 一、适合人群二、本期训练时间三、如何参加四、数据结构与算法大纲五、华为OD九日集训第1期第1天、逻辑分析第2天、数组第3天、双指针第4天、map与list第5天、队列第6天、栈第7天、滑动窗口第8天、二叉树第9天、矩阵 六、国内直接使用满血ChatGPT4o、o1、o3-mini-high、Cl…...

Python 机器学习小项目:手写数字识别(MNIST 数据集)

本项目将使用 scikit-learn 库&#xff0c;基于 支持向量机&#xff08;SVM&#xff09; 模型来构建一个手写数字识别系统。数据集选用 MNIST&#xff0c;其中包含 0-9 的手写数字图像&#xff0c;每张图片是 88 像素的灰度图。 项目步骤 安装必要的库加载数据集数据预处理划…...

STM32中输入/输出有无默认电平

结论&#xff1a; 输入从严格意义上来讲没有默认高低电平之说 推挽输出模式&#xff1a; 在推挽输出模式下&#xff0c;STM32的GPIO引脚可以输出高电平和低电平。如果没有通过软件明确设置引脚的电平状态&#xff0c;STM32的某些型号&#xff08;或特定情况下&#xff09;可能会…...

webshell一些上传心得

我们以upload-labs为基础 一、前端拦截&#xff1a; 如第一关 工作方式&#xff1a; 直接在前端拦截 绕过方式&#xff1a; 因为没有限制后端&#xff0c;所有可以用bs 绕过前端修改格式即可 将需要上传的php文件改成jpg格式 使用burp suite 拦截上传后&#xff0c;使用re…...

ROS实践(二)构建Gazebo机器人模型文件urdf

目录 一、基础语法 1. urdf文件组成 2. robot根标签 3. link 和 joint标签 4. sensor标签 二、 实验&#xff1a;使用launch文件启动rviz查看机器人模型 1. 编写机器人模型的urdf文件。 2. 编写launch文件。 3. 运行launch&#xff0c;查看效果。 URDF&#xff08;Unifi…...

Linux 入门:常用命令速查手册

目录 一.指令 1.pwd&#xff08;显示所在路径&#xff09; 2.ls&#xff08;列出所有子目录与文件&#xff09; 3.touch&#xff08;创建文件&#xff09; 4.mkdir&#xff08;创建目录&#xff09; 5.cd&#xff08;改变所处位置&#xff09; 6.rm&#xff08;删除&…...

kali linux web扫描工具

Kali Linux是一款专为网络安全领域而打造的操作系统&#xff0c;提供了众多优秀的安全工具&#xff0c;其中就包括了强大的web扫描工具。Web扫描是网络安全检测的一个重要环节&#xff0c;它可以帮助安全专家检测网站的漏洞&#xff0c;提升网站的安全性。 Kali Linux中集成了…...

2路模拟量同步输出卡、任意波形发生器卡—PCIe9100数据采集卡

品牌&#xff1a;阿尔泰科技 型号&#xff1a; PCIe9100、PCIe9101、PXIe9100、PXIe9101 产品系列&#xff1a;任意波形发生器 支持操作系统&#xff1a;XP、Win7、Win8、Win10 简要介绍&#xff1a; 910X 系列是阿尔泰科技公司推出的 PCIe、PXIe 总线的任意波形发生器&…...

Facebook 隐私保护技术的发展与未来趋势

Facebook 隐私保护技术的发展与未来趋势 在这个数字化时代&#xff0c;个人隐私保护已成为全球关注的焦点。Facebook&#xff0c;作为全球最大的社交网络平台之一&#xff0c;其在隐私保护技术的发展上扮演着重要角色。本文将探讨 Facebook 在隐私保护技术方面的进展&#xff…...

Android TCP封装工具类

TCP通信的封装&#xff0c;我们可以从以下几个方面进行改进&#xff1a; 线程池优化&#xff1a;使用更高效的线程池配置&#xff0c;避免频繁创建和销毁线程。 连接重试机制&#xff1a;在网络不稳定时&#xff0c;自动重试连接。 心跳机制&#xff1a;保持长连接&#xff…...

Python基于Django的医用耗材网上申领系统【附源码、文档说明】

博主介绍&#xff1a;✌Java老徐、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;&…...

Java虚拟机之垃圾收集(一)

目录 一、如何判定对象“生死”&#xff1f; 1. 引用计数算法&#xff08;理论参考&#xff09; 2. 可达性分析算法&#xff08;JVM 实际使用&#xff09; 3. 对象的“缓刑”机制 二、引用类型与回收策略 三、何时触发垃圾回收&#xff1f; 1. 分代回收策略 2. 手动触发…...

【mysql】mysql数据库,权限授予,账号设置

创建一个可用的数据库&#xff0c;名字为gitea&#xff0c;支持中文utf8mb4 CREATE DATABASE gitea CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; # 设置东八区时区 SET GLOBAL time_zone 08:00; FLUSH PRIVILEGES; # 查询当前时间 SELECT NOW();给【普通用户】授予查…...

Html5学习教程,从入门到精通, HTML5超链接应用的详细语法知识点和案例代码(18)

HTML5超链接应用的详细语法知识点和案例代码 超链接&#xff08;Hyperlink&#xff09;&#xff0c;也称为跃点链接&#xff0c;是互联网和文档编辑中的一种重要概念。 超链接的定义 超链接是指从一个网页指向一个目标的连接关系&#xff0c;这个目标可以是另一个网页&#…...

⭐LeetCode(数学分类) 48. 旋转图像——优美的数学法转圈(原地修改)⭐

⭐LeetCode(数学分类) 48. 旋转图像——优美的数学法转圈(原地修改)⭐ 示例 1&#xff1a; 输入&#xff1a;root [5,3,6,2,4,null,8,1,null,null,null,7,9] 输出&#xff1a;[1,null,2,null,3,null,4,null,5,null,6,null,7,null,8,null,9] 示例 2&#xff1a; 输入&#xff1…...

深度学习PyTorch之13种模型精度评估公式及调用方法

深度学习pytorch之22种损失函数数学公式和代码定义 深度学习pytorch之19种优化算法&#xff08;optimizer&#xff09;解析 深度学习pytorch之4种归一化方法&#xff08;Normalization&#xff09;原理公式解析和参数使用 深度学习pytorch之简单方法自定义9类卷积即插即用 实时…...

tomcat单机多实例部署

一、部署方法 多实例可以运行多个不同的应用&#xff0c;也可以运行相同的应用&#xff0c;类似于虚拟主机&#xff0c;但是他可以做负载均衡。 方式一&#xff1a; 把tomcat的主目录挨个复制&#xff0c;然后把每台主机的端口给改掉就行了。 优点是最简单最直接&#xff0c;…...

Java开发者如何接入并使用DeepSeek

目录 一、准备工作 二、添加DeepSeek SDK依赖 三、初始化DeepSeek客户端 四、数据上传与查询 五、数据处理与分析 六、实际应用案例 七、总结 【博主推荐】&#xff1a;最近发现了一个超棒的人工智能学习网站&#xff0c;内容通俗易懂&#xff0c;风格风趣幽默&#xff…...

win10电脑鼠标速度突然变的很慢?

电脑鼠标突然变很慢&#xff0c;杀毒检测后没问题&#xff0c;鼠标设置也没变&#xff0c;最后发现可能是误触鼠标的“DPI”调节键。 DPI调节键在鼠标滚轮下方&#xff0c;再次点击即可恢复正常鼠标速度。 如果有和-的按键&#xff0c;速度变快&#xff0c;-速度变慢。 图源&…...

第四次CCF-CSP认证(含C++源码)

第四次CCF-CSP认证 第一道&#xff08;easy&#xff09;思路及AC代码 第二道&#xff08;easy&#xff09;思路及AC代码遇到的问题 第三道&#xff08;mid&#xff09;思路及AC代码 第一道&#xff08;easy&#xff09; 题目链接 思路及AC代码 这题就是将这个矩阵旋转之后输出…...

Netty基础—1.网络编程基础一

大纲 1.什么是OSI开放系统互连 2.OSI七层模型各层的作用 3.TCP/IP协议的简介 4.TCP和UDP的简介 5.TCP连接的三次握手 6.TCP连接的四次挥手 7.TCP/IP中的数据包 8.TCP通过确认应答与序列号提高可靠性 9.HTTP请求的传输过程 10.HTTP协议报文结构 11.Socket、短连接、长…...

【理想解法学习笔记】

目录 理想解法原理简介算法步骤属性值规范化方法代码示例 理想解法 原理简介 TOPSIS(Technique for Order Preference by Simi larity to IdealSolution)法是一种逼近理想解的排序方法。其基本的处理思路是&#xff1a;首先建立初始化决策矩阵&#xff0c;而后基于规范化后的初…...

98.在 Vue3 中使用 OpenLayers 根据 Resolution 的不同显示不同的地图

在 Vue3 中使用 OpenLayers 根据 Resolution 的不同显示不同的地图 前言 在 Web GIS&#xff08;地理信息系统&#xff09;应用开发中&#xff0c;地图的 Resolution&#xff08;分辨率&#xff09;是一个重要的概念。不同的 Resolution 适用于不同的地图层级&#xff0c;有时…...

Docker 部署 Vaultwarden

一、前言 1. 官网 1.1 Vaultwarden https://github.com/dani-garcia/vaultwarden https://github.com/wcjxixi/Vaultwarden-Wiki-Chn https://hub.docker.com/r/vaultwarden/server https://rs.ppgg.in/ # Vaultwarden Wiki 中文版 https://geekdaxue.co/read/Vaultward…...

Smart contract -- 自毁合约

在区块链开发中&#xff0c;Solidity 语言提供了强大的功能&#xff0c;其中自毁合约是一个独特且重要的特性。今天&#xff0c;就让我们深入探讨一下 Solidity 中的自毁合约&#xff0c;以及如何使用 selfdestruct 函数。 注意&#xff1a;使用继承时请确保代码的正确性&#…...

unity学习64,第3个小游戏:一个2D跑酷游戏

目录 学习参考 素材资源导入 1 创建项目 1.1 创建1个2D项目 1.2 导入素材 2 背景图bg 2.0 bg素材 2.1 创建背景 2.2 修改素材&#xff0c;且修改摄像机等 2.2.1 修改导入的原始prefab素材 2.2.2 对应调整摄像机 2.2.3 弄好背景 2.3 背景相关脚本实现 2.3.1 错误…...

Python Flask 在网页应用程序中处理错误和异常

Python Flask 在网页应用程序中处理错误和异常 Python Flask 在网页应用程序中处理错误和异常 Python Flask 在网页应用程序中处理错误和异常 在我们所有的代码示例中&#xff0c;我们没有注意如何处理用户在浏览器中输入错误的URL或向我们的应用程序发送错误的参数集的情况。…...