本文目录一览:
- 1、如何对汉字进行可解密加密?
- 2、易语言文字加密解密问题!
- 3、以汉字笔画为密钥进行加密的方法请问如何进行解密?
- 4、如何用c语言加密和解密汉字
- 5、VBA md5 汉字加密问题?
- 6、文本被加密了,如何解密.
如何对汉字进行可解密加密?
先编个程序把汉字转换为代码,一个汉字占2字节,就转换为16位的,再加密
易语言文字加密解密问题!
建议不要对加密过的数据直接用到文本()命令转换为文本,建议用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)
.如果真结束
返回 (二进制数据)
以汉字笔画为密钥进行加密的方法请问如何进行解密?
其实简化一下就是:把汉字转成已知一个数串,数字范围1~5…长度不定(有分隔符)…往其中插入数字…问数串能破解不?总体上真不如把汉字的编码直接加密了……得到你的数字就很容易破解出汉字了(你的加密方法已经泄漏给我了…哇哈哈哈哈…)
采纳哦
如何用c语言加密和解密汉字
汉字应该是char类型的数据。你可以用强制类型转换将其转换为ASCII码,加密的时候加上2,然后下次解密的时候减去2,在强制转换为char类型的数据。代码大概就像这样:
int JiaMi(char s)
{
return (int)(s + 2);
}
char JieMi(int code)
{
return (char)(code - 2);
}
VBA md5 汉字加密问题?
:可以加密汉字啊!如果能解开的话,加密和解密结果肯定是一样的。不过md5解密很困难的。数字加字母的那种已经很难破解了!汉字的更别说了! 不仅仅是汉字,任何字符串都可以md5加密!
文本被加密了,如何解密.
基本思路简单,
首先用流把文件内容读出来,
然后把内容转成acsii码,
之后移位,可以全文用一种移位,也可以每行或者每个字用一种移位.
最后用流写回去即可.
比如 "我" 这个字的ascii码是\u6211,加1移位成\u6212(戒),这样一片文章就面目全非了.当然移位成什么看你自己的移位算法,然后再转成汉字写回去.
package test;
import java.io.IOException;
public class Native2ascii {
private static final String java_path = "G:\\Java\\jdk 1.6";//你的jdk的绝对路径
private static final String target_file = "C:\\a.txt"; //原始文本的完整路径
private static final String result_file = "C:\\b.txt";//转码后的路径
private static final String back_file = "C:\\c.txt";//转回的路径
private static final String encoding = "GBK";// 编码
public static void native2ascii()
{
try {
Runtime.getRuntime().exec(java_path+"\\bin\\native2ascii.exe -encoding "+encoding+" "+target_file+" "+result_file);
//读取b.txt中的内容进行移位,我的没有移位所以写回c.txt中还能够看懂.
Runtime.getRuntime().exec(java_path+"\\bin\\native2ascii.exe -reverse "+result_file+" "+back_file);
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String arg[]){
native2ascii();
}
}
另外,站长团上有产品团购,便宜有保证