版块导航
正在加载中...
客户端APP下载
论文辅导
申博辅导
登录
注册
帖子
帖子
用户
本版
应《网络安全法》要求,自2017年10月1日起,未进行实名认证将不得使用互联网跟帖服务。为保障您的帐号能够正常使用,请尽快对帐号进行手机号验证,感谢您的理解与支持!
24小时热门版块排行榜
>
论坛更新日志
(549)
>
虫友互识
(76)
>
休闲灌水
(43)
>
基金申请
(21)
>
导师招生
(20)
>
硕博家园
(20)
>
考博
(20)
>
论文投稿
(15)
>
公派出国
(14)
>
找工作
(10)
>
考研
(6)
>
论文道贺祈福
(5)
>
教师之家
(5)
>
招聘信息布告栏
(4)
>
博后之家
(4)
>
有机交流
(4)
小木虫论坛-学术科研互动平台
»
计算模拟区
»
程序语言
»
VB
»
脚本求解密
27
2/3
返回列表
上一页
1
2
3
下一页
查看: 2446 | 回复: 26
只看楼主
@他人
存档
新回复提醒
(忽略)
收藏
在APP中查看
anntoy
木虫
(著名写手)
应助: 40
(小学生)
金币: 2318
散金: 962
红花: 1
沙发: 14
帖子: 1989
在线: 136.3小时
虫号: 1271536
注册: 2011-04-20
【答案】应助回帖
引用回帖:
10楼
:
Originally posted by
libralibra
at 2012-07-07 19:25:28
这位兄弟厉害,都解密出来了
奇怪没算法你咋解的?...
运行程序呗,然后内存里dump出来
算法现在大致分析了一下,不过要还原成c代码还需要时间
赞
一下
回复此楼
11楼
2012-07-07 20:37:09
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
anntoy
木虫
(著名写手)
应助: 40
(小学生)
金币: 2318
散金: 962
红花: 1
沙发: 14
帖子: 1989
在线: 136.3小时
虫号: 1271536
注册: 2011-04-20
【答案】应助回帖
下面是解码的c代码,解码后是unicode格式,如果要转换成utf-8自己转吧
算法是个什么名字不知道,你可以自己看看是什么算法,编码过程还知道
CODE:
#include
#include
#include
int trans(int in)
{
if(in >= '0' && in <= '9')
return in + 4;
if(in >= 'a' && in <= 'z')
return in - 0x47;
if(in >= 'A' && in <= 'Z')
return in - 0x41;
if(in == '+')
return '>';
if(in == '/')
return '?';
return -1;
}
int main()
{
FILE * fpi, *fpo;
int i, k, j, filelen, outlen = 0;
char *inbuf,*outbuf, *h, *in;
short *out, n;
fpi = fopen("in","rb+");
fpo = fopen("out","wb+");
fseek(fpi,0,SEEK_END);
filelen = ftell(fpi);
inbuf = malloc(filelen);
outbuf = malloc(filelen);
fseek(fpi,0,SEEK_SET);
fread(inbuf,1, filelen, fpi);
in = inbuf;
inbuf += 6;
while(*inbuf) {
for(i = 0, k = 0; i < 4 && *inbuf; inbuf++){
j = trans(*inbuf);
if(j == -1){
continue;
}
k = k << 6;
k |= j;
i++;
}
i = 3;
h = (char *)&k;
while(i--) {
outbuf[outlen++] = h[i];
}
}
while(!outbuf[--outlen]);
out = (short *)outbuf;
outlen = (--outlen >> 1);
n = out[outlen];
out[outlen] = 0;
while(*out) {
*out++ -= n;
}
k = 0xfeff;
fwrite((char *)&k,2,1,fpo);
fwrite(outbuf,2,outlen,fpo);
fclose(fpi);
fclose(fpo);
free(in);
free(outbuf);
return 0;
}
赞
一下
(1人)
回复此楼
12楼
2012-07-08 02:56:28
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
wolflash
金虫
(小有名气)
应助: 0
(幼儿园)
金币: 625.3
散金: 200
帖子: 276
在线: 38.9小时
虫号: 190145
注册: 2006-02-19
性别: GG
专业: 教学论
wolflash: 回帖置顶
2012-07-09 17:16:40
引用回帖:
12楼
:
Originally posted by
anntoy
at 2012-07-08 02:56:28
下面是解码的c代码,解码后是unicode格式,如果要转换成utf-8自己转吧
算法是个什么名字不知道,你可以自己看看是什么算法,编码过程还知道
#include <stdio.h>
#include <stdlib.h>
#include &l ...
能否將unicode格式转换成utf-8 的C代碼也貼出?砉蚁肟纯矗x啦
赞
一下
回复此楼
如果不能骄傲的活着,我选择死亡!—《红色恋人》
13楼
2012-07-09 17:09:55
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
anntoy
木虫
(著名写手)
应助: 40
(小学生)
金币: 2318
散金: 962
红花: 1
沙发: 14
帖子: 1989
在线: 136.3小时
虫号: 1271536
注册: 2011-04-20
引用回帖:
13楼
:
Originally posted by
wolflash
at 2012-07-09 17:09:55
能否將unicode格式转换成utf-8 的C代碼也貼出?砉蚁肟纯矗x啦...
那个就得查表了,你直接用记事本打开,另存为,选择utf-8不就可以了,写什么程序呀
赞
一下
回复此楼
14楼
2012-07-09 21:41:10
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
wolflash
金虫
(小有名气)
应助: 0
(幼儿园)
金币: 625.3
散金: 200
帖子: 276
在线: 38.9小时
虫号: 190145
注册: 2006-02-19
性别: GG
专业: 教学论
引用回帖:
14楼
:
Originally posted by
anntoy
at 2012-07-09 21:41:10
那个就得查表了,你直接用记事本打开,另存为,选择utf-8不就可以了,写什么程序呀...
但是還是一堆的中文字,很奇怪,轉不了
赞
一下
回复此楼
如果不能骄傲的活着,我选择死亡!—《红色恋人》
15楼
2012-07-09 22:14:44
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
anntoy
木虫
(著名写手)
应助: 40
(小学生)
金币: 2318
散金: 962
红花: 1
沙发: 14
帖子: 1989
在线: 136.3小时
虫号: 1271536
注册: 2011-04-20
引用回帖:
15楼
:
Originally posted by
wolflash
at 2012-07-09 22:14:44
但是還是一堆的中文字,很奇怪,轉不了...
呃……刚看了这个转码还是比较简单的,我写写看啊
赞
一下
回复此楼
16楼
2012-07-09 22:16:36
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
wolflash
金虫
(小有名气)
应助: 0
(幼儿园)
金币: 625.3
散金: 200
帖子: 276
在线: 38.9小时
虫号: 190145
注册: 2006-02-19
性别: GG
专业: 教学论
引用回帖:
16楼
:
Originally posted by
anntoy
at 2012-07-09 22:16:36
呃……刚看了这个转码还是比较简单的,我写写看啊...
呵呵,前面的C源碼我是用VC6.0 運行,將123123.TH文件改成 in 然後得到 out ,這個out 用記事本打開,另存一下,結果沒有還是一堆中文。我這樣操作有沒有問題?
赞
一下
回复此楼
如果不能骄傲的活着,我选择死亡!—《红色恋人》
17楼
2012-07-09 22:29:36
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
wolflash
金虫
(小有名气)
应助: 0
(幼儿园)
金币: 625.3
散金: 200
帖子: 276
在线: 38.9小时
虫号: 190145
注册: 2006-02-19
性别: GG
专业: 教学论
引用回帖:
16楼
:
Originally posted by
anntoy
at 2012-07-09 22:16:36
呃……刚看了这个转码还是比较简单的,我写写看啊...
06年學過C++,那時考試都得優秀的,這麼多年,忘得差不多了。
赞
一下
回复此楼
如果不能骄傲的活着,我选择死亡!—《红色恋人》
18楼
2012-07-09 22:37:55
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
anntoy
木虫
(著名写手)
应助: 40
(小学生)
金币: 2318
散金: 962
红花: 1
沙发: 14
帖子: 1989
在线: 136.3小时
虫号: 1271536
注册: 2011-04-20
引用回帖:
18楼
:
Originally posted by
wolflash
at 2012-07-09 22:37:55
06年學過C++,那時考試都得優秀的,這麼多年,忘得差不多了。...
这个是转码的代码,用那个改的
CODE:
#include
#include
#include
int main()
{
FILE * fpi, *fpo;
int filelen, outlen = 0;
unsigned short *inbuf, *in, i;
char *outbuf;
fpi = fopen("in","rb+");
fpo = fopen("out","wb+");
fseek(fpi,0,SEEK_END);
filelen = ftell(fpi);
inbuf = malloc(filelen);
outbuf = malloc(filelen);
fseek(fpi,0,SEEK_SET);
fread(inbuf,1, filelen, fpi);
in = inbuf;
inbuf++;
outbuf[outlen++] = (char)0xef;
outbuf[outlen++] = (char)0xbb;
outbuf[outlen++] = (char)0xbf;
while(i = *inbuf++) {
if(i < 0x80) {
outbuf[outlen++] = (char)i;
} else if(i >= 0x80 && i < 0x800) {
outbuf[outlen++] = 0xc0 | (char)(i>>6);
outbuf[outlen++] = 0x80 | (char)(i & 0x3f);
} else if(i >= 0x800) {
outbuf[outlen++] = 0xe0 | (char)(i>>12);
outbuf[outlen++] = 0x80 | (char)((i & (0x3f<<6))>>6);
outbuf[outlen++] = 0x80 | (char)(i & 0x3f);
}
}
fwrite(outbuf,1,outlen,fpo);
fclose(fpi);
fclose(fpo);
free(in);
free(outbuf);
return 0;
}
赞
一下
回复此楼
» 本帖已获得的红花(最新10朵)
wolflash
19楼
2012-07-09 22:56:26
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
anntoy
木虫
(著名写手)
应助: 40
(小学生)
金币: 2318
散金: 962
红花: 1
沙发: 14
帖子: 1989
在线: 136.3小时
虫号: 1271536
注册: 2011-04-20
引用回帖:
15楼
:
Originally posted by
wolflash
at 2012-07-09 22:14:44
但是還是一堆的中文字,很奇怪,轉不了...
打开之后确实有一部分中文,应该是这种的
CODE:
赞
一下
回复此楼
20楼
2012-07-09 22:57:50
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
相关版块跳转
第一性原理
量子化学
计算模拟
分子模拟
仿真模拟
程序语言
我要订阅楼主
wolflash
的主题更新
27
2/3
返回列表
上一页
1
2
3
下一页
如果回帖内容含有宣传信息,请如实选中。否则帐号将被全论坛禁言
普通表情
龙
兔
虎
猫
百度网盘
|
360云盘
|
千易网盘
|
华为网盘
在新窗口页面中打开自己喜欢的网盘网站,将文件上传后,然后将下载链接复制到帖子内容中就可以了。
信息提示
关闭
请填处理意见
关闭
确定