- 博客(92)
- 收藏
- 关注
原创 Java实现国密算法 SM2 /SM3 /SM4(基于 BouncyCastle)
主要示例国密sm2密钥对生成,sm4密钥生成与校验,sm2加解密,sm3摘要,sm4的加解密(CBC和GCMl两种模式)、AES的gcm模式加解密。
2025-11-05 16:22:46
472
原创 国密算法全解析
虽然其国家标准(GM/T 0002-2012)仅定义了核心加密逻辑和 ECB 模式,但在实际应用中,可通过行业标准或协议将其与 CBC、CFB、CTR 等分组工作模式结合使用,以满足不同安全场景的需求。SM9 是公开的国密标识密码算法(GM/T 0044-2016),用户直接用身份标识(如手机号、邮箱)作为公钥,由可信密钥中心(KGC)生成对应私钥,无需数字证书。为保障信息安全,中国国家密码管理局推出‘商用密码算法体系’,即‘国密算法’(SM:商密拼音缩写),形成了自主可控的密码标准体系。
2025-11-04 20:47:44
635
原创 密码学算法分类指南
特点无密钥、单向、不可逆将任意长度输入映射为固定长度输出提供完整性验证和数据指纹代表算法算法状态特点SHA-256推荐标准哈希函数SHA-3推荐基于 Keccak,抗量子结构SM3国密标准国密摘要算法不安全已被攻破,仅用于非安全应用BLAKE3推荐高性能、现代应用友好哈希函数并不保证“唯一性”,但提供“近似唯一的指纹”。抗碰撞性、一致性、原像抗性是关键安全属性。“对称 / 非对称 / 哈希” 是密码学最主流的三大类。
2025-10-31 14:59:28
802
原创 TLV结构中的变长长度编码(VLQ)详解:从入门到实战
字段含义举例TTag(标签)如:0x01 表示姓名LLength(长度)数据的长度VValue(值)实际的数据,如 “Alice”
2025-10-27 18:27:32
501
原创 U 盘写写保护解决方法
今天在使用 U 盘时遇到一个问题:插入电脑后系统提示“需要格式化”,尝试了格式化,总是失败。下面是我排查解决的过程。Win + Rregedit0Control0由于我之前用这个 U 盘制作了 Ubuntu 启动盘,可能是写入过程更改了分区结构或触发了芯片级保护,导致无法格式化。所以我索性用diskpart完全清除分区和数据。
2025-10-22 19:25:02
675
原创 Ubuntu系统安装教程<一>:制作启动盘
一台 windows 机器需要重装为 ubuntu 系统,系统版本需要与 A 项目版本一致,部署完成之后需要将 A 项目迁移到此机器上执行测试。5.点击写入硬盘映像,选择 u 盘、写入方式。RAW(位拷贝) 是最底层的写入方式,6.点击写入,提示 u 盘会被格式化,所以做好 u 盘数据备份。3.找到自己现在的镜像文件,确定即可。4.菜单栏选择启动->写入硬盘映像。7.点击是,开始制作系统启动盘。8.等待进度条走完,完成制作。2.菜单栏选择文件->打开。,将镜像下载到本地,
2025-10-22 17:26:39
364
原创 Ubuntu 系统安装教程(二):系统安装
启动盘制作完成后,插入需要安装的电脑,开机进入 BIOS/UEFI 设置界面。将设置为主启动设备,保存更改后重新启动。系统将从 USB 启动,然后进入 Ubuntu 安装流程。
2025-10-21 21:07:15
1590
原创 Linux 根分区爆满排查与解决
有一台 Ubuntu 服务器是我装的系统,同事安装 cuda 的时候。使用df -h查看磁盘使用情况:根分区已经,导致无法正常安装软件。
2025-10-21 15:42:16
334
原创 Git将本地项目推送到GitLab
Windows 下 Git 默认路径长度限制为 260 个字符,某些深层结构的项目会超出限制。这个警告通常不会影响功能,可以忽略。:Windows 和类 Unix 系统的换行符不同(CRLF vs LF)把所有文件添加到 Git 的暂存,提交一次初始版本。如果你使用的是较新的 Git 版本,默认分支可能是。我的默认分支是 master。是一个 git 仓库。
2025-10-20 14:34:59
351
原创 Linux 下使用 Docker-Compose 安装 Kafka 和 Kafka-UI(KRaft 模式)
通过 Kafka-UI 可以可视化查看消息流转情况,maven 依赖版本最好保持和 kafka 一致或高于 kafka 的版本。搭建本地 Kafka 环境,通过 Kafka-UI 可视化管理工具进行消息查看和调试的过程。集成在 ShenYu 插件中的 Kafka 消费者代码如下,用于日志订阅消费。创建的,Kafka 容器内的进程(通常为 UID 1000)无权限写入。是我从容器中搞出来的完整配置,按需修改端口和 ip, 我将端口改成了。Kafka 和 Kafka-UI 的完整部署配置。
2025-10-20 11:16:14
1181
原创 Java 调用 C++ 动态库(DLL)完整实践:有图像有实体处理场景
这是算法的头文件,jni 层需要根据他的方法调用即可。建议和 java 的方法保持一致,不保持一致也可以,自己在 jni 层处理好就可以。// 版本号// 偏色对比结果(双图比对)// 红色比对色偏指数// 绿色比对色偏指数// 黄色比对色偏指数// 蓝色比对色偏指数// ROI偏色占比Java 层将图像转换为 BGR 格式的 byte[],直接传给 JNI;Java 层传原始图像数据,JNI 使用 OpenCV 解码;
2025-09-16 20:35:53
956
原创 Java 调用 C++ 动态库(DLL)完整实践:无图像无实体处理场景
这是算法的头文件,jni 层需要根据他的方法调用。建议和 java 的方法保持一致,不保持一致也行,自己在 jni 层处理好就可以。/**** @title* @author**/static {// 获取版本号// 算法初始化// 调用算法// 每次调用算法后释放内存// 程序终止时释放AI模型内存这里介绍了 JNI 技术实现 Java 与 C++ 的深度集成。整个流程分为:编写 Java native 接口;使用javah生成 JNI 头文件;
2025-08-26 18:51:57
608
原创 Java 图像处理传 JNI 到 C++(OpenCV):两种高效实现方式对比
在图像处理时,Java 的图像数据换到 c++中是无法直接使用的,需要转为 BGR 格式,要么在 java 层处理,要么在 jni 层处理,算法工程师的提供的动态库一般不会处理图片格式,直接拿到图像数据就使用了,这里写的是我自己用过的两种实现方式。
2025-08-25 14:24:42
528
原创 Java 日期解析与格式化:从标准格式到自然语言解析
使用 Java 搭配 Apache Commons Lang3 和 Natty 库,实现灵活高效的日期解析与格式化。
2025-05-14 15:47:56
409
原创 Spring Boot 实现多种来源的 Zip 多层目录打包下载(本地文件&HTTP混合)
这里介绍了如何从本地服务器路径和HTTP混合读取文件并Zip打包下载,目录结构灵活可控。可根据实际需求扩展更多来源类型(如数据库、对象存储等)。
2025-04-30 10:34:00
927
原创 Nacos 2.0.2 在 CentOS 7 上开启权限认证(含 Docker Compose 配置与接口示例)
介绍如何在 Nacos 2.0.2 + CentOS 7 环境中开启权限认证,包括 **解压部署** 和 **Docker Compose 部署** 两种方式,提供客户端 Spring Boot 项目的接入配置和nacos接口验证示例。
2025-04-22 18:43:08
1343
原创 Linux漏洞修复:禁用外来的ICMP timestamp和禁止Traceroute探测
禁用外来的ICMP timestamp和禁止Traceroute探测漏洞修复
2025-04-21 10:28:17
2374
原创 Python 调用 C++ 动态库(cffi ABI 模式)
Python 中使用cffi的ABI模式调用已有的 C++ 动态链接库(DLL/.so)
2025-04-11 11:25:38
476
原创 Java 通过 JNI 调用 C++ 动态库的完整流程
梳理一下 Java 调用 C++ DLL 的完整流程。编写 Java 类并声明native方法使用javac -h或javah生成 JNI 头文件实现 JNI 桥接层,调用 DLL 中的 C++ 方法使用 Visual Studio 生成 DLL 文件Java 运行时加载并调用本地方法,或者封装成接口给别人使用。
2025-04-08 17:27:26
1080
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1