
可以把文本转换成字节集,然后在把每个字节加上(或减去)一个数,解密时同样把每个字节减去(或加上)之前那个数。易语言有加密数据()和解密数据()。还可以用RC4加密。如果处理的是密码的话用MD5加密(不能解密)
版本 2
支持库 iext
支持库 dp1
程序集 窗口程序集1
子程序 _按钮1_被单击
局部变量 a, 文本型
局部变量 i, 整数型
' '''''''''''''''''''这是写
计次循环首 (超级列表框1取表项数 (), i)
a = 超级列表框1取标题 (i - 1, 0) + “,” + 超级列表框1取标题 (i - 1, 1) + “,” + 超级列表框1取标题 (i - 1, 2) + “,"' '''''''''''''''''''我这就3个报头
写到文件 (取运行目录 () + “\1sav”, 加密数据 (解密数据 (读入文件 (取运行目录 () + “\1sav”), “密”, #RC4算法) + 到字节集 (a + #换行符), “密”, #RC4算法))' '''''''''''''''''''这可能第一次保存的内容和第二次保存内容会加在一起你可以用打开文件
计次循环尾 ()
子程序 _按钮2_被单击
局部变量 a, 文本型, , "0"
局部变量 i, 整数型
局部变量 b, 文本型, , "0"
局部变量 k, 整数型
' '''''''''''''''''''这是读
a = 分割文本 (到文本 (解密数据 (读入文件 (取运行目录 () + “\1sav”), “密”, #RC4算法)), #换行符, )
计次循环首 (取数组成员数 (a), i)
b = 分割文本 (a [i], “,”, )
计次循环首 (取数组成员数 (b), k)
超级列表框1插入表项 (, , , , , )
超级列表框1置标题 (i - 1, k - 1, b [k])
计次循环尾 ()
计次循环尾 ()
建议不要对加密过的数据直接用到文本()命令转换为文本,建议用base64编码为文本,解密时先base64解码,然后再解密。
可以用超级加解密支持库里的BASE64编码 ()和BASE64解码 ()命令来实现编码和解码。
如果不想下支持库的话下面是BASE64编码和BASE64解码的代码:
版本 2
子程序 BASE64编码, 文本型, 公开, BASE64编码处理(返回编码后的文本)
参数 待编码数据, 字节集, , 待编码字节集
局部变量 余数
局部变量 临时, 字节型, , "3"
局部变量 变量
局部变量 集合, 字节集
局部变量 长度, 整数型
局部变量 字符, 字节集
局部变量 i
长度 = 取字节集长度 (待编码数据)
如果真 (长度 < 1)
返回 (“”)
如果真结束
余数 = 长度 % 3
如果真 (余数 > 0)
待编码数据 = 待编码数据 + 取空白字节集 (3 - 余数)
如果真结束
长度 = 取字节集长度 (待编码数据)
字符 = 取空白字节集 (长度 × 4 ÷ 3)
i = 1
集合 = 到字节集 (“ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/”)
变量循环首 (1, 长度, 3, 变量)
临时 [1] = 待编码数据 [变量]
临时 [2] = 待编码数据 [变量 + 1]
临时 [3] = 待编码数据 [变量 + 2]
字符 [i] = 集合 [右移 (临时 [1], 2) + 1]
字符 [i + 1] = 集合 [左移 (位与 (临时 [1], 3), 4) + 右移 (临时 [2], 4) + 1]
字符 [i + 2] = 集合 [左移 (位与 (临时 [2], 15), 2) + 右移 (临时 [3], 6) + 1]
字符 [i + 3] = 集合 [位与 (临时 [3], 63) + 1]
i = i + 4
变量循环尾 ()
如果真 (余数 > 0)
长度 = 取字节集长度 (字符)
如果 (余数 = 1)
字符 [长度 - 1] = 取代码 (“=”, )
字符 [长度] = 取代码 (“=”, )
否则
字符 [长度] = 取代码 (“=”, )
如果结束
如果真结束
返回 (到文本 (字符))
子程序 BASE64解码, 字节集, 公开, BASE64解码处理(返回解码后的字节集数据)
参数 编码文本, 文本型, 参考, 待解码的文本
局部变量 文本长度
局部变量 整倍数
局部变量 三字节组, 字节型, , "3"
局部变量 四字节组, 字节型, , "4"
局部变量 编码值
局部变量 X
局部变量 n
局部变量 二进制数据, 字节集
编码文本 = 删全部空 (编码文本)
编码文本 = 子文本替换 (编码文本, #换行符, , , , 真)
文本长度 = 取文本长度 (编码文本)
整倍数 = 文本长度 \ 4
如果真 (文本长度 % 4 ≠ 0)
整倍数 = 整倍数 + 1
如果真结束
计次循环首 (整倍数, X)
计次循环首 (4, n)
四字节组 [n] = 取代码 (编码文本, (X - 1) × 4 + n)
编码值 = 寻找文本 (“ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/”, 字符 (四字节组 [n]), , 假)
如果真 (编码值 = -1)
跳出循环 ()
如果真结束
四字节组 [n] = 编码值 - 1
计次循环尾 ()
三字节组 [1] = 位或 (四字节组 [1] × 4, 四字节组 [2] ÷ 16)
三字节组 [2] = 位或 (四字节组 [2] × 16, 四字节组 [3] ÷ 4)
三字节组 [3] = 位或 (四字节组 [3] × 64, 四字节组 [4])
二进制数据 = 二进制数据 + 到字节集 (三字节组)
处理事件 ()
计次循环尾 ()
如果真 (n < 5) ' 最后一组4字符是提前退出的,截取字节集
n = 5 - n
二进制数据 = 取字节集左边 (二进制数据, 取字节集长度 (二进制数据) - n)
如果真结束
返回 (二进制数据)
一关于制作DZ登录功能
DZ登录是使用POST提交的登录数据,如果密码有加密则找到对应的加密JS,加密后通过网络模块提交POST数据即可
二获取登录用户数据
DZ在使用post登录后,会返回json格式的数据,里面包含用户基础信息(ID,昵称,登录时间等),详细系统通过cookies访问DZ个人中心地址,使用正则或者文本取中间,取出需要的用户信息即可
以上就是关于易语言如何进行文本加密全部的内容,包括:易语言如何进行文本加密、易语言怎么把超级列表框里的数据(最好能加密一下)写成一个文件,然后又可以读入文件,显示在超级列表框里、易语言文字加密解密问题!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)