首页
社区
课程
招聘
[求助]一个flexlm的Java程序问题
发表于: 2024-10-19 09:30 4338

[求助]一个flexlm的Java程序问题

2024-10-19 09:30
4338
收藏
免费 0
支持
分享
最新回复 (103)
雪    币: 307
活跃值: (385)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
26
既然是调用的pubkeyVerify,为什么直接在这里ret ture不能成功呢?

另外,您最后段的因果关系我没有弄明白,为啥是因为如下?字节码修改位置,将如下位置的变量修改就可以了?
2024-10-25 15:22
0
雪    币: 315
活跃值: (568)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
27
ggbaby 既然是调用的pubkeyVerify,为什么直接在这里ret ture不能成功呢? 另外,您最后段的因果关系我没有弄明白,为啥是因为如下?字节码修改位置,将如下位置的变量修改就可以了?

修改Prikey的pubkeyVerify也是可以的。把你修改内容和软件报错贴出来。

最后于 2024-10-25 15:41 被UnicornMaker编辑 ,原因:
2024-10-25 15:35
0
雪    币: 307
活跃值: (385)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
28
  
  public static boolean pubkeyVerify(byte[] paramArrayOfbyte1, byte[] paramArrayOfbyte2, VendorInfo paramVendorInfo, int paramInt) throws FlexlmException {
    String str2;
    KeyFactory keyFactory;
    PublicKey publicKey2;
    String str1 = initCerticom();
    if (str1 == null)
      throw new FlexlmException(-514, 4026); 
    switch (paramInt) {
      case 2:
        str2 = "sect113r1";
        break;
      case 3:
        str2 = "ec163a02";
        break;
      case 4:
        str2 = "ec239a03";
        break;
      default:
        throw new FlexlmException(-515, 4027);
    } 
    SystemConfig systemConfig = SystemConfig.getConfig();
    systemConfig.setCurve(str2);
    systemConfig.setConformance(16);
    systemConfig.setPtCompression(2);
    systemConfig.setFormat(10);
    PublicKey publicKey1 = paramVendorInfo.getPublicKey(paramInt);
    if (publicKey1 == null)
      throw new FlexlmException(-515, 4028); 
    byte[] arrayOfByte = publicKey1.getEncoded();
    X509EncodedKeySpec x509EncodedKeySpec = new X509EncodedKeySpec(arrayOfByte);
    try {
      keyFactory = KeyFactory.getInstance("ECDSA");
    } catch (NoSuchAlgorithmException noSuchAlgorithmException) {
      throw new FlexlmException(-515, 4029);
    } 
    try {
      publicKey2 = keyFactory.generatePublic(x509EncodedKeySpec);
    } catch (InvalidKeySpecException invalidKeySpecException) {
      throw new FlexlmException(-515, 4030);
    } 
    try {
      Signature signature = Signature.getInstance("ECDSA", str1);
      signature.initVerify(publicKey2);
      signature.update(paramArrayOfbyte1);
      boolean bool = signature.verify(paramArrayOfbyte2);
    } catch (NoSuchProviderException noSuchProviderException) {
      throw new FlexlmException(-515, 4031);
    } catch (NoSuchAlgorithmException noSuchAlgorithmException) {
      throw new FlexlmException(-515, 4032);
    } catch (InvalidKeyException invalidKeyException) {
      throw new FlexlmException(-515, 4033);
    } catch (SignatureException signatureException) {
      throw new FlexlmException(-515, 4034);
    } 
    return true;
我是这么改的,报错我回家弄一下看看,办公室弄不了。
2024-10-25 15:47
0
雪    币: 315
活跃值: (568)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
29
ggbaby public static boolean pubkeyVerify(byte[] paramArrayOfbyte1, byte[] paramArrayOfbyte2, VendorI ...
在函数头部修改
2024-10-25 15:53
0
雪    币: 307
活跃值: (385)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
30
错误信息如下,这个是按照您给的方式修改的
here is a problem with the license. Contact your system administrator 

FLEXlm ERROR 0 : -8: Authentication Failed (-8,3046) 
2024-10-25 16:00
0
雪    币: 307
活跃值: (385)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
31
删除所有,只返回True也出问题了,所以没有搞定。
2024-10-25 16:01
0
雪    币: 1641
活跃值: (7319)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
32
ggbaby 这两个地方并不能解决问题,您破解试试。反正我试了不行。
反正我的是行的!
2024-10-25 16:07
0
雪    币: 307
活跃值: (385)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
33
wandering 反正我的是行的!
对啊,我的出现问题是什么原因,您能贴出来您的修改吗?
2024-10-25 16:10
0
雪    币: 315
活跃值: (568)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
34
ggbaby 错误信息如下,这个是按照您给的方式修改的 here is a problem with the license. Contact your system administrator FLEX ...

-8就是不正确的签名,你怎么修改的?感觉你搞错位置了。


上传的附件:
2024-10-25 16:13
0
雪    币: 1641
活跃值: (7319)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
35

2024-10-25 16:30
1
雪    币: 307
活跃值: (385)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
36
果然两种都可以,谢谢各位大侠了。
2024-10-25 20:32
0
雪    币: 1641
活跃值: (7319)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
37
ggbaby 果然两种都可以,谢谢各位大侠了。
什么是两种都可以?哪两种啊?
2024-10-25 20:42
0
雪    币: 307
活跃值: (385)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
38

UnicornMaker大侠的修改方式,一种谁直接改prikey,一种改doAuthenticate()
2024-10-25 20:59
0
雪    币: 315
活跃值: (568)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
39
ggbaby UnicornMaker大侠的修改方式,一种谁直接改prikey,一种改doAuthenticate()
也可以使用java agent的方式去加载,不需要修改源文件。
2024-10-25 22:00
0
雪    币: 307
活跃值: (385)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
40
UnicornMaker 也可以使用java agent的方式去加载,不需要修改源文件。
这种方法没有见过,能仔细说说吗?
2024-10-25 22:18
0
雪    币: 307
活跃值: (385)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
41
UnicornMaker 也可以使用java agent的方式去加载,不需要修改源文件。
.net 的flexlm有什么说法吗?一点思路都没有。。。
2024-10-25 22:20
0
雪    币: 1641
活跃值: (7319)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
42
征集一下,大家都用什么软件和方法来修改jar文件?
2024-10-25 22:52
0
雪    币: 315
活跃值: (568)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
43
1. jadx查看
2. recaf直接修改字节码
3. 反编译为java,重新编译为class替换原始文件
4. java代理
2024-10-25 23:27
0
雪    币: 315
活跃值: (568)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
44
ggbaby .net 的flexlm有什么说法吗?一点思路都没有。。。
你发的这软件属于很简单的了,没涉及例如dll嵌入,完整性校验,加密这些。具体软件要具体分析,不过不混淆问题都不大。
2024-10-25 23:29
0
雪    币: 315
活跃值: (568)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
45
ggbaby 这种方法没有见过,能仔细说说吗?
就是运行时修改字节码,具体你可以搜下实现方法
2024-10-25 23:31
0
雪    币: 1641
活跃值: (7319)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
46
UnicornMaker 1. jadx查看 2. recaf直接修改字节码 3. 反编译为java,重新编译为class替换原始文件 4. java代理
相当详细,果然是高人,非常感谢!
2024-10-26 00:17
0
雪    币: 307
活跃值: (385)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
47
.net的怎么弄,有思路吗?
2024-10-26 08:56
0
雪    币: 307
活跃值: (385)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
48
这个是java的,我还有一个.net的软件找不到思路
2024-10-26 08:57
0
雪    币: 315
活跃值: (568)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
49
ggbaby 这个是java的,我还有一个.net的软件找不到思路
你要发出来,别人才能看
2024-10-26 11:09
0
雪    币: 307
活跃值: (385)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
50
好的,这个挺大,我看看能往哪里传
2024-10-26 12:35
0
游客
登录 | 注册 方可回帖
返回
//