易语言简单字符串加解密

该文章描述了一种基于位异或的字符串加密和解密方法。通过将文本转化为字节集,然后对每个字节执行位异或操作来实现加密。解密过程则是相同的异或操作但使用不同的参数。此外,还包含了内存管理函数,如内存置零,确保数据安全。
.版本 2


.子程序 字符串加密, 字节集

.参数 加密内容, 文本型

.局部变量 内容指针, 整数型

.局部变量 文本长度, 整数型

.局部变量 i, 整数型

.局部变量 结果内容, 字节集


内容指针 = 取指针_文本型 (加密内容)

' 调试输出 (取十六进制文本 (内容指针))

文本长度 = 文本_取长度 (内容指针)

结果内容 = 取空白字节集 (文本长度)

.计次循环首 (文本长度, i)

    结果内容 [i] = 到字节 (位异或 (指针_到字节 (内容指针 + i - 1), i + 33))

.计次循环尾 ()

' 原字符串置0 需要内存可写权限

内存置零 (内容指针, 文本长度)

返回 (结果内容)



.子程序 解密字符串, 文本型

.参数 解密内容, 字节集

.局部变量 解密长度, 整数型

.局部变量 解密指针, 整数型

.局部变量 解密结果, 字节集

.局部变量 i, 整数型


解密长度 = 取字节集长度 (解密内容)

解密指针 = 取字节集地址 (解密内容)

解密结果 = 取空白字节集 (解密长度)

.计次循环首 (解密长度, i)

    解密结果 [i] = 到字节 (位异或 (解密内容 [i], i + 33))

.计次循环尾 ()

返回 (到文本 (解密结果))


.子程序 取指针_文本型, 整数型

.参数 文本, 文本型


置入代码 ({ 139, 69, 8, 139, 0, 201, 194, 4, 0 })

返回 (0)


.子程序 文本_取长度, 整数型

.参数 文本指针, 整数型


置入代码 ({ 81, 199, 69, 252, 0, 0, 0, 0, 139, 69, 8, 15, 190, 8, 133, 201, 116, 20, 139, 85, 252, 131, 194, 1, 137, 85, 252, 139, 69, 8, 131, 192, 1, 137, 69, 8, 235, 226, 139, 69, 252, 139, 229, 93, 194, 4, 0 })

返回 (0)



.子程序 指针_到字节, 字节型

.参数 指针, 整数型


置入代码 ({ 139, 69, 8, 138, 0, 139, 229, 93, 194, 4, 0 })

返回 (0)



.子程序 内存置零

.参数 内存地址, 整数型

.参数 置零长度, 整数型


置入代码 ({ 81, 87, 139, 125, 8, 133, 255, 116, 7, 139, 77, 12, 51, 192, 243, 170, 95, 89 })


.子程序 取字节集地址, 整数型

.参数 变量, 字节集, 参考


置入代码 ({ 139, 69, 8, 139, 0, 131, 192, 8, 201, 194, 4, 0 })

返回 (0)

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CinCode

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值