首页
密码学
编码
算法
Server
Rust
Redis
Linux
数据库
MYSQL
Tools
瞬间
关于
友情链接
DataForge
Easy to understand and humorous
行动起来,活在当下
累计撰写
48
篇文章
累计创建
5
个标签
累计收到
3
条评论
栏目
首页
密码学
编码
算法
Server
Rust
Redis
Linux
数据库
MYSQL
Tools
瞬间
关于
友情链接
DataForge
目 录
CONTENT
以下是
fengyang
的文章
2025-06-19
算法概述
本文概述了通用加密算法的分类及核心特点。主要分为对称加密(如AES、DES、SM4,速度快但密钥管理难)、非对称加密(如RSA、ECC、SM2,安全性高但速度慢)及哈希算法(如MD5、SHA、SM3)。实际应用中,常结合两者优势:用非对称加密(如RSA)传输对称加密(如AES)的密钥,既解决密钥分发问题,又兼顾效率。此外,还介绍了国密算法(SM系列)、Base64编码、HMAC认证机制等,强调不同算法在安全性与性能上的权衡,以及数据库加密系统的分层防护策略。
2025-06-19
10
0
0
算法
2025-06-16
非对称加密算法: RSA、SM2、SM9
本文概述了非对称加密算法的核心内容。非对称加密使用公私钥对,公钥加密需私钥解密,私钥加密需公钥解密,安全性高但运算速度慢。常见算法包括RSA、ECC和ElGamal。RSA作为应用最广的公钥算法,基于大数分解难题,适用于数字签名、密钥交换等场景,但密钥生成复杂且分组长度大。中国国密算法SM2(ECC类型)以256位密钥提供超过RSA-2048的安全性,密钥更短、生成更快,广泛应用于电子政务、移动支付等领域。SM9为标识加密算法,直接使用用户标识(如手机号)作公钥,简化证书管理,适用于云服务、物联网等场景。
2025-06-16
26
1
1
算法
2025-06-13
XOR
异或运算(XOR)用于判断两个值是否不同:相同则结果为0,不同则为1,真值表展示了0和1的组合。运算律包括:自身异或得0(x^x=0),与0异或得自身(x^0=x),可交换性(x^y=y^x),结合性(x^(y^z)=(x^y)^z)。位运算技巧有:计算不进一和(x^y),进一和(x&y<<1),删除最后一位1(x&(x-1)),判断最后一位是否为1(x&1)。
2025-06-13
24
0
0
编码
2025-06-06
Unicode
本文介绍了Unicode编码的诞生与发展。ASCII编码仅支持拉丁字母,无法满足多语言需求,Unicode应运而生,为全球字符分配唯一编号(0x000000至0x10FFFF)。其存储方式包括UTF-8(变长1-4字节,兼容ASCII,无字节序问题)、UTF-16(2或4字节,需BOM标记大小端)和UTF-32(固定4字节,需BOM)。大小端存储模式影响多字节数据的读取顺序,UTF-8因高效兼容成为互联网主流编码。
2025-06-06
8
0
0
编码
2025-05-19
BASE64
Base16、Base32、Base64编码可通过字符集区分:Base16使用16字符(1-9, A-F),Base32使用32字符(A-Z, 2-7),Base64使用64字符(A-Z, a-z, 0-9, +, /)及填充“=”。Base64将二进制数据分6位块编码,长度为4的倍数,通过“=”填充不足部分,常用于二进制数据传输(如电子邮件),但数据膨胀1/3。三者均为编码方式,非加密,字符集数量是核心区别点。
2025-05-19
4
0
0
编码
2025-05-11
ASCII 编码
ASCII是美国信息交换标准代码,基于拉丁字母的单字节编码系统,用于显示现代英语和西欧语言。它是最通用的单字节编码,等同于ISO/IEC 646标准。ASCII收录128个字符,包括基本拉丁字母、阿拉伯数字、标点符号、特殊符号及控制字符(不显示),其中大写字母、小写字母和数字连续分布。二进制和十六进制可直接转换为ASCII编码。文章还提供了Java和Python代码示例演示其应用。
2025-05-11
7
0
0
编码
2025-05-08
编码技术 Kaiser
恺撒密码是一种简单且广为人知的替换加密技术,通过将字母表中的字母按固定数目偏移实现加密。例如,偏移量为3时,A变成D,B变成E等。该方法以古罗马恺撒命名,他曾用此与将军们通信。恺撒密码通常作为更复杂加密方法的步骤,其破解主要依靠字母频率分析,如英语中字母"e"出现频率最高。文章还提供了Java和Rust语言的加解密代码实现。
2025-05-08
20
1
1
编码
2024-10-06
IDEA 配置项目的JVM运行内存大小
本文介绍了在IDEA中调整JVM内存配置以优化服务启动内存占用的方法。默认情况下,IDEA服务启动占用1G内存,可通过修改虚拟机选项参数(如堆大小、新生代大小、Metaspace空间等)降低内存使用。配置方式为:进入“运行调试配置”-“编辑配置”-选中应用-“构建并运行”-“修改选项”-“增加虚拟机选项”,填入相应参数。通过检测工具可验证配置后的内存使用情况,如示例中将堆大小设为128MB后,内存占用显著降低。
2024-10-06
9
0
0
Tools
2024-10-06
IntelliJ IDEA的自动导入
本文介绍了IDE中自动添加导入语句的配置方法。用户可通过设置路径Editor→General→Auto Import,勾选"动态添加明确的import"选项,使IDE在粘贴代码时自动插入缺失的import语句,并可设置为"询问"或"从不"来控制插入行为。此外,用户还可通过Editor→Code Style→Java/Kotlin→Imports路径配置导入优化规则,包括类数量阈值、包排除列表和导入排序规则等。
2024-10-06
9
0
0
Tools
2024-10-03
IntelliJ IDEA 设置作者注释信息和描述
在IntelliJ IDEA中设置@author等注释信息可通过两种方式实现:文件和代码模板(新建文件时自动应用)和活动模板(需手动触发)。使用文件和代码模板时,需打开设置进入"编辑器|文件和代码模版",在Includes选项卡中创建新模板(如File Header),添加包含@author和日期等信息的注释代码,保存后新建Java类或接口文件时会自动应用该模板。
2024-10-03
9
0
0
Tools
1
2
3
4
5