jxbrowser 是一个非常成熟的 java 内嵌浏览器。使用的是 chrome 内核。但是这个并不免费。
我来教大家怎么破解 最新了 6.16 版本。 6.x 版本 。 尽量不去破坏源代码的情况去实施破解工作。
声明: 仅仅供破解爱好使用,本人不负责任何版权问题。
官网下载解压之后。 jxbrowser-6.16-cross-desktop-win_mac_linux\demo\jxbrowserdemo.jar 解压 找到 META-INF\teamdev.licenses 文件 复制到自己的项目中 META-INF\teamdev.licenses
修改内容为
Product: JxBrowser Version: 6.x Licensed to: License type: Enterprise License info: JxBrowser License Expiration date: 01-01-9999 Support expiration date: NO SUPPORT Generation date: 01-01-1970 Platforms: win32/x86;win32/x64;mac/x86;mac/x64;linux/x86;linux/x64 Company name: TeamDev Ltd. SigB: 1 SigA: 1
然后在你调用 之前 写这么一段Java代码
static { try { Field e = ay.class.getDeclaredField("e"); e.setAccessible(true); Field f = ay.class.getDeclaredField("f"); f.setAccessible(true); Field modifersField = Field.class.getDeclaredField("modifiers"); modifersField.setAccessible(true); modifersField.setInt(e, e.getModifiers() & ~Modifier.FINAL); modifersField.setInt(f, f.getModifiers() & ~Modifier.FINAL); e.set(null, new BigInteger("1")); f.set(null, new BigInteger("1")); modifersField.setAccessible(false); } catch (Exception e1) { e1.printStackTrace(); } }
就可以成功破解
原理我大概解释一下
我找到了签名算法的函数 ay.b() 里面有个公式
( f ^ siga % d ) * ( siga ^ sigb % d ) % d = e ^ sha % d = 26462259068637991152391547961988549573195908021293613120352742382097401086123127593625299662130257259332932885822823122387677 e=33851717214292305582010417393402727812830176472733550790920844148355988054130010499992971193003524512509240474673101724848384 d=34051811835788252902797885733156696286414897221750775263783399829125079614056933876807669964513495918712211128108375406963673 f=25667112684517379948185296389386925307782598673250742557116530456931377273936147127185145251019629808481495879454212767959902 sha=805299536940350876288446176005730731798065487012179085006223925532583426956047503414412559272717070810491462643837331823 求 siga , sigb 的值
如果让 e = 1 f = 1 siga = 1 的话 式子永远成立 所以就达到了破解的目的
仅供学术参考,请勿商业用途
转载:http://itnoteshare.com/note/355/publicNoteDetail.htm