首页
社区
课程
招聘
flexlm ECC 问题
发表于: 2009-5-9 14:59 12066

flexlm ECC 问题

2009-5-9 14:59
12066
手上有个flexlm 9.2 的软件。我已经找到seed 了并patch了ECC。
但起软件时,程序还是说需要SIGN.
我用EFA licgen 生成的license。但EFA 只支持到8.0。如果不生成SIGN, license 能用。如果生成SIGN则license起的时候就会说非法。
大虾能不能帮我分析一下是咋回事?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (12)
雪    币: 324
活跃值: (192)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
请问你用的浮动还是node模式的license啊?
既然你的seeds已经找到,服务端应该没有问题了。如果你把客户端的ECC也patch了,那就随便写SIGN的内容都行啊。
有问题可联系我。
[email]NoFlexlm@163.com[/email]
2009-5-9 15:10
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
efa似乎是不支持使用高位的sign的,最好使用sdk吧,如果有vc2005/2008建议直接修改lmcrypt.c添加#define encryption_seed1/2 ,然后修改好lm_code.h直接make lmcrypt.exe
2009-5-9 20:44
0
雪    币: 216
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
谢谢大虾的指导。我上网上下了个9.2的SDK。可是编译的时候说缺lmgr.lib。我收了一下确实没有。是我下的不全还是要怎样?
另外回noflexlm,我生成的是floating的。按照你的提醒该了SIGN。发现只有SIGN长度对了才能起起来license server,如果乱写SIGN,license server 起不来。我的daemon也打过补丁了。
2009-5-10 22:18
0
雪    币: 199
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
乱写SIGN,license server 起不来。

破掉ECC的话好像只是检测SIGN这个标志吧,对SIGN的内容无关吧。会不会是有些文件还没打补丁?
2009-5-11 10:36
0
雪    币: 216
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
现在已经没有问题了。用的还是EFA 生成的license。SIGN的长度必须对。大侠能不能回答一下连lmgr.lib的问题啊?
2009-5-11 11:20
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
如果仅仅使用了长的SIGN=来验证的话,patch了以后乱写SIGN=就可以直接使用了了,sign的位数还是需要对的,但是内容已经无所谓了。

但是如果是这样的
INCREMENT xxx xxxx 4.0 24-nov-2010 uncounted 2B5E459216C1 \
        HOSTID=xxxxx  SIGN="1237 EDA4 B1A4 3ECC....

就必须使用SDK或者EFA配合正确的ENSEED来生成License,SIGN就不行乱写,同时需要patch文件。否则server起不来。

无论如何lic的格式一定要正确。

另外楼上说找不到lmgr.lib,你不会下的是sdk 9.2 full source 吧,找个别的sdk吧,这个编译太慢了。如果只能找到这个sdk,按照正确的方法编译吧。
2009-5-11 11:59
0
雪    币: 216
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
确实是SIGN="1234 5678 ... 这种格式的license。 楼上果然是大牛。不弄SDK了,反正能用了。
2009-5-11 12:17
0
雪    币: 324
活跃值: (192)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
说的确实不错,但建议不要用下面这种格式的license。下面是新旧混用的格式,既有旧格式的key,也有新格式的SIGN。key必须用seeds来生成,破掉ECC后,SIGN可以随便写,但位数必须和程序要求吻合。

2009-5-11 13:19
0
雪    币: 216
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
恩,谢谢NoFlexlm。您这么一说倒是提醒了我。我看正版的license没有以前的key的那段。我费力把它加上,看来是得不偿失阿。
我把SDK编译过了。有个问题是正版license有两个SIGN:SIGN,SIGN2。它们都是120位的。我生成的SIGN是120位的。SIGN2却是12位的。
为什么啊?
2009-5-11 14:32
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
恩,有道理,不过使用这样的license是厂商的事情,还是有不少厂商使用这样的方式的。

对于楼主:SIGN和SIGN2的产生需要设置ECC密钥的组数(最多支持4组好像?),可以使用多组针对不同SIGN的进行加密。不过既然你的没有使用key方式,那么用sdk生成license是没有意义的,直接复制SIGN成为SIGN2就可以了。

要生成SIGN和SIGN2都是120 char的,可以在lmcode.h中定义ENCRYPTION_SEED1~ENCRYPTION_SEED4,同时需要正确的填充CRO/TRL key
2009-5-11 16:06
0
雪    币: 216
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
恩reasly说的对,我就在正版license file 里看到有的有旧的key有的没有。时间早的有,晚的没有。当初也很疑惑,可能厂商当初也没有搞明白。
谢谢你们的帮助。我学到了不少东西。顺便鄙视一下FLEXLM。
这玩意太容易破了。像我这种入门级的折腾几下就能搞定。
2009-5-11 16:36
0
雪    币: 324
活跃值: (192)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
不是厂家没有搞明白,那是为了兼容低版本的软件用的。
也不要说flexlm简单,用得好也不容易破,关键是你用的技巧。。。

2009-5-12 09:43
0
游客
登录 | 注册 方可回帖
返回
//