查看完整版本: [-- 花了一个小时才追到的函数,APRS五位验证码的秘密,能看懂的就自己算吧 --]

哈罗CQ火腿社区 -> APRS专题 -> 花了一个小时才追到的函数,APRS五位验证码的秘密,能看懂的就自己算吧 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

bg8bin 2012-01-15 11:01

花了一个小时才追到的函数,APRS五位验证码的秘密,能看懂的就自己算吧

short dohash(const char* thecall)
{
  char rootcall[10];     // need to copy call to remove ssid from parse
  char *p1 = rootcall;

  while ((*thecall != '-') && (*thecall != 0)) *p1++ = toupper(*thecall++);
    *p1 = 0;

  short hash = kkey;     // initialize with the key value
  short i = 0;
  short len = strlen(rootcall);
  char *ptr = rootcall;
 
  while (i < len) {         // loop through the string two bytes at a time
    hash ^= (*ptr++)<<8;   // xor high byte with accumulated hash
    hash ^= (*ptr++);     // xor low byte with accumulated hash
    i += 2;
  }
  return hash & 0x7fff;     // mask off the high bit so number is always positive
}

bd8te 2012-01-15 11:05
不懂   能具体点说说嘛

BA7CK 2012-01-15 11:22
'
short dohash(const char* thecall)
{
  char rootcall[10];     // need to copy call to remove ssid from parse
  char *p1 = rootcall;
  while ((*thecall != '-') && (*thecall != 0)) *p1++ = toupper(*thecall++);
    *p1 = 0;
  short hash = kkey;     // initialize with the key value
  short i = 0;
  short len = strlen(rootcall);
  char *ptr = rootcall;
 
  while (i < len) {         // loop through the string two bytes at a time
    hash ^= (*ptr++)<<8;   // xor high byte with accumulated hash
    hash ^= (*ptr++);     // xor low byte with accumulated hash
    i += 2;
  }
  return hash & 0x7fff;     // mask off the high bit so number is always positive
}
[表情]
'

bg8bin 2012-01-15 11:24
就是aprs服务器接口的验证码的算法。比如igate的网络端等需要进行互联网连接aprs服务器进行数据发送时,服务器会验证发送或转发者呼号是否经过aprs服务管理人员的5位数字认证码(aprs系统设定的途径是把自己的呼号发送给aprs服务器管理人员,核对后你的身份后返回论证码给你)。平常我们在电脑上或是在智能手机上使用aprs软件时,一般情况下都要求你输入此验证码。服务器收到数据后会计算出5位验证码和你提供的验证码进行比对,正确才会进行数据转发。

发这个函数也只是研究一下系统的安全运作,共同学习一下。 大家就不要做成能直接运行的程序了,以示对aprs服务器贡献者的尊敬

bg8bin 2012-01-15 11:31
这个是必须要的

#define kkey 0x73e2            // this is the key for the data

BG3OGR 2012-01-15 13:21
最初,是自愿向当地的癌症研究机构捐款,通过电子邮件从授权人获取验证码
后来,论坛有几个人可以帮助ham计算
再后来,计算源代码公开
到最后,人人都可能随意编几个呼号,自己计算验证码。

我预感:有一天,aprs服务器可能会封杀所有b电台,到时候谁也别玩!就像arriss封杀中国一样,不同的是arriss疑似政客们斗争的延续,而aprs封杀b电台则是ham自己造成的。
立此存证!

BH1IEO 2012-01-15 14:28
同意楼上的看法,自己会了就得,不宜公开。万一楼主的本意被整斜了就有乐子看了。 [s:114] 就像echolink一样,到了china就变味,对面的管理对b字头很有看法。

BD1GO 2012-01-15 14:30
公开了也没几个懂的,懂得早会算了。

bg8bin 2012-01-15 20:51
by台的素质提高与官方的目标有关系,天天喊口号穿制服的成了主流,大环境会好吗?玩短波引爱好都入会的速度远不如搞什么中继穿制服来得快。官方有几个地方在引导大家参与世界性的比赛,提高会员水平?
aprs对于商业应用是无意义的,太落后了;对于冒充别人呼号也没什么意义。by台的素质好坏与公不公开这些资料无关,这些资料本来就是公开的,我只是做了个路标而也。通过公开这个,只是想让更多的人对研究aprs的原理与底层实现产生兴趣。

bg8bin 2012-01-15 21:05
'
最初,是自愿向当地的癌症研究机构捐款,通过电子邮件从授权人获取验证码
后来,论坛有几个人可以帮助ham计算
再后来,计算源代码公开
到最后,人人都可能随意编几个呼号,自己计算验证码。
我预感:有一天,aprs服务器可能会封杀所有b电台,到时候谁也别玩!就像arriss封杀中国一样,不同的是arriss疑似政客们斗争的延续,而aprs封杀b电台则是ham自己造成的。 [表情]
立此存证!
'

不要这么夸张,公开一个函数而也,只是认大家理解一下底层的实现。固步自封提高不了大家的兴趣和水平,也提高不了by台的形象。

bd4rs 2012-01-16 09:14
学习秘密,研究秘密。
深入底层学习中。。。

BG2BHC 2012-01-16 09:18
'
最初,是自愿向当地的癌症研究机构捐款,通过电子邮件从授权人获取验证码
后来,论坛有几个人可以帮助ham计算
再后来,计算源代码公开
到最后,人人都可能随意编几个呼号,自己计算验证码。
我预感:有一天,aprs服务器可能会封杀所有b电台,到时候谁也别玩!就像arriss封杀中国一样,不同的是arriss疑似政客们斗争的延续,而aprs封杀b电台则是ham自己造成的。 [表情]
立此存证!
'
“最初”那条貌似早就不用捐款了

bd4rs 2012-01-16 09:43
'
同意楼上的看法,自己会了就得,不宜公开。万一楼主的本意被整斜了就有乐子看了。 [表情] 就像echolink一样,到了china就变味,对面的管理对b字头很有看法。
'
echolink china味啥个味道,可能又有一年没上去了。
等上去找你,感觉感觉中国味

bg8bin 2012-01-16 10:00
没用过echolink,不过我觉得产生那样的结果与我前面说的原因有很大关系。对于那群人来说,喊口号才是他们的主要任务。对于怎么应急通信,怎么用aprs协助调度等是没有兴趣的。如果你对他介绍aprs,他会说那是个什么东西?用什么基站......

BD8ADT 2012-01-16 10:14
那群人喔.......表说aprs这落後的东西,就连小小手台咋个设置上中继都大有人不会
还应急通信个p

BG4EBC 2012-01-16 10:48
高手!!!!!!

以后可以自己授权了?

BG3OGR 2012-01-16 11:01
不做任何争论!

BH1IEO 2012-01-16 11:30
哈哈 好好过小年儿,春节后把aprs介绍给区应急办和民防办,争取他们上几套设备给我们,这样用到实处。

BG1QXU 2012-01-16 11:30
这个帖子值得顶一下,

技术探讨~

记得这一年多,在网上,最少看过2个 小号 在用 aprs ~

不知道是哪位大佬发的密码~ 呵呵

BA1AK 2012-01-16 12:23
'
哈哈 好好过小年儿,春节后把aprs介绍给区应急办和民防办,争取他们上几套设备给我们,这样用到实处。
'

木有错,他们天天喊应急通信,aprs他们都不想弄明白,怎么应急?

bg8bin 2012-01-16 13:44
小号不一定就是自己通过网络发送到服务器的,igate也可以转发到服务器的,这种情况更多一些。

haog131 2012-02-12 16:22
用什么语言来编译啊???

bg1pv 2012-02-20 13:57
作为一个既得利益者,我很开心
我的密码丢过很多次,每次都要麻烦人家给我重新算。弄得自己都不好意思

从长远看,确实值得担心
很多顶尖黑客可能自己作恶,但他们为研究目的公布的一些工具,往往会被小“黑客”使用来对其他人进行人身攻击

BA5DX 2012-02-20 14:14
'
最初,是自愿向当地的癌症研究机构捐款,通过电子邮件从授权人获取验证码
后来,论坛有几个人可以帮助ham计算
再后来,计算源代码公开
到最后,人人都可能随意编几个呼号,自己计算验证码。
我预感:有一天,aprs服务器可能会封杀所有b电台,到时候谁也别玩!就像arriss封杀中国一样,不同的是arriss疑似政客们斗争的延续,而aprs封杀b电台则是ham自己造成的。 [表情]
立此存证!
'
aprs 和 ui-view32是两回事

BA7CK 2012-03-03 00:46
有消息说,中国将在不久的将来建立一个独立的免费的公开的aprs系统。

bd8te 2012-03-03 07:41
我的是付费得到的,出了5位码外还有一个ui32软件用的15位码。

BD8CS 2012-09-17 15:57
这个不能用于非法用途啊!

BD8CS 2012-09-20 13:25
用vs得变1下头文件。。。。和那个叫什么标准名什么的,5年了,忘完了

bg8bin 2012-09-27 14:49
没那么复杂,用什么程序都成


查看完整版本: [-- 花了一个小时才追到的函数,APRS五位验证码的秘密,能看懂的就自己算吧 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Time 0.022324 second(s),query:6 Gzip enabled