package com.idea.key; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.math.BigInteger; import java.util.Date; import java.util.Random; import java.util.zip.CRC32; public class keygen { /** * @param s * @param i * @param bytes * @return */ public static short getCRC(String s, int i, byte bytes[]) { CRC32 crc32 = new CRC32(); if (s != null) { for (int j = 0; j < s.length(); j++) { char c = s.charAt(j); crc32.update(c); } } crc32.update(i); crc32.update(i >> 8); crc32.update(i >> 16); crc32.update(i >> 24); for (int k = 0; k < bytes.length - 2; k++) { byte byte0 = bytes[k]; crc32.update(byte0); } return (short) (int) crc32.getValue(); } /** * @param biginteger * @return String */ public static String encodeGroups(BigInteger biginteger) { BigInteger beginner1 = BigInteger.valueOf(0x39aa400L); StringBuilder sb = new StringBuilder(); for (int i = 0; biginteger.compareTo(BigInteger.ZERO) != 0; i++) { int j = biginteger.mod(beginner1).intValue(); String s1 = encodeGroup(j); if (i > 0) { sb.append("-"); } sb.append(s1); biginteger = biginteger.divide(beginner1); } return sb.toString(); } /** * @param i * @return */ public static String encodeGroup(int i) { StringBuilder sb = new StringBuilder(); for (int j = 0; j < 5; j++) { int k = i % 36; char c; if (k < 10) { c = (char) (48 + k); } else { c = (char) ((65 + k) - 10); } sb.append(c); i /= 36; } return sb.toString(); } /** * @param name * @param days * @param id * @return */ public static String MakeKey(String name, int days, int id) { id %= 100000; byte bkey[] = new byte[12]; bkey[0] = (byte) 1; // Product type: IntelliJ IDEA is 1 bkey[1] = 13; // version Date d = new Date(); long ld = (d.getTime() >> 16); bkey[2] = (byte) (ld & 255); bkey[3] = (byte) ((ld >> 8) & 255); bkey[4] = (byte) ((ld >> 16) & 255); bkey[5] = (byte) ((ld >> 24) & 255); days &= 0xffff; bkey[6] = (byte) (days & 255); bkey[7] = (byte) ((days >> 8) & 255); bkey[8] = 105; bkey[9] = -59; bkey[10] = 0; bkey[11] = 0; int w = getCRC(name, id % 100000, bkey); bkey[10] = (byte) (w & 255); bkey[11] = (byte) ((w >> 8) & 255); BigInteger pow = new BigInteger("89126272330128007543578052027888001981", 10); BigInteger mod = new BigInteger("86f71688cdd2612ca117d1f54bdae029", 16); BigInteger k0 = new BigInteger(bkey); BigInteger k1 = k0.modPow(pow, mod); String s0 = Integer.toString(id); String sz = "0"; while (s0.length() != 5) { s0 = sz.concat(s0); } s0 = s0.concat("-"); String s1 = encodeGroups(k1); s0 = s0.concat(s1); return s0; } public static void main(String[] args) throws IOException { System.out.println("input the name you want to register"); BufferedReader br1=new BufferedReader(new InputStreamReader(System.in)); String name = br1.readLine().trim(); // if (args.length == 0) // { // System.err.printf("*** Usage: %s name%n", keygen.class.getCanonicalName()); // System.exit(1); // } Random r = new Random(); System.out.println("regName:"+name); System.out.println("regCode:"+MakeKey(name, 0, r.nextInt(100000))); } }
相关推荐
对于IntelliJ IDEA,注册机可能会生成假冒的激活码,使得用户无需购买即可使用。这种行为不仅违反了软件的许可协议,还存在诸多风险: 1. 法律风险:使用注册机是非法的,可能导致法律纠纷,损害个人或企业的声誉。...
IntelliJ IDEA 12 web项目部署详细说明 IntelliJ IDEA 是一款功能强大且流行的集成开发环境(IDE),它提供了许多实用的功能来帮助开发者快速高效地开发项目。下面,我们将详细介绍如何使用 IntelliJ IDEA 12 部署 ...
在本文中,我们将详细探讨如何使用 IntelliJ IDEA 12.1.4 从安装到应用程序部署的过程。IntelliJ IDEA 是一款流行的集成开发环境(IDE),尤其适合Java开发者,同时也支持其他编程语言。下面我们将按照步骤逐一介绍...
IntelliJ IDEA是一款强大的Java集成开发环境,深受开发者喜爱。这篇使用详解将引导你从安装、配置到实际项目开发的全过程。 首先,安装IntelliJ IDEA。下载对应版本(如ideaIU-12.1.4)后,执行安装程序,确保勾选...
1. 解压`idea-jprofiler.zip`,将解压后的文件夹复制到IntelliJ IDEA的插件目录(通常是`<IDEA安装路径>/plugins`)。 2. 重启IntelliJ IDEA,进入插件设置,确认JProfiler插件已被安装并启用。 3. 在IDEA中,你...
3. **开源或免费替代品**:如果预算有限,可以考虑使用Eclipse社区版或其他免费的Java IDE,如IntelliJ IDEA社区版。这些开源工具同样强大,且无需付费。 4. **学术优惠**:学生和教育机构往往可以享受特别折扣或...
**JBuilder全系列注册机详解** JBuilder是一款由Borland公司开发的集成...同时,随着技术的进步,转向更现代的开发工具,如IntelliJ IDEA、Eclipse或Visual Studio Code等,也是提高开发效率和代码质量的良好选择。
MyEclipse 8.5 注册机是一款工具,主要用于生成MyEclipse 8.5的激活码,使得用户能够无限制地使用这款强大...对于个人学习和小型项目,很多开源和免费的IDE,如Eclipse本身、IntelliJ IDEA的社区版等,也是不错的选择。
6. **集成IDE支持**:JProfiler11可以无缝集成到IntelliJ IDEA等开发环境中,方便开发者在编写代码的同时进行性能测试。 7. **远程连接**:支持远程分析,可以在不同的机器上对运行中的Java应用进行性能监控。 8. ...
同时,现代的开源IDE如IntelliJ IDEA和Eclipse本身也提供了丰富的功能,可以作为替代方案考虑。 总的来说,了解如何使用注册机对 MyEclipse 5.5 进行激活,虽然能暂时解决许可问题,但长期来看,合法授权和保持软件...
7. **集成与定制**: 它可以与其他IDE(如Eclipse, IntelliJ IDEA)集成,提供便捷的工作流程。同时,JProfiler提供了丰富的API,允许自定义插件和报告,满足特定需求。 关于“JProfiler11+注册机+使用手册”,请...
5. **集成**:PVS-Studio可与Visual Studio、CLion、IntelliJ IDEA等IDE无缝集成,也可与Git、SVN等版本控制系统配合使用。 6. **报告生成**:自动生成详细的分析报告,方便开发者理解和修复问题。 【标签】"pvs ...
此外,许多开源的替代品,如Eclipse本身、IntelliJ IDEA等,也提供了免费的版本,适合个人和教育用途。 总的来说,虽然注册机可能提供了一种看似方便的激活方式,但它带来的潜在风险和负面影响远大于短暂的利益。...
现在有许多优秀的Java IDE可供选择,例如免费开源的Eclipse和IntelliJ IDEA,它们同样提供了强大的开发工具和社区支持。这些IDE不仅有丰富的插件库,还经常更新,以适应不断变化的Java开发环境。 总的来说,尽管...
如果资金有限,可以考虑使用Eclipse的开源版本,或者寻找其他免费的开源开发工具,如IntelliJ IDEA社区版等,它们同样提供了强大的开发功能。合法合规的使用软件,既能保证开发效率,又能避免潜在风险。
6. **集成IDE**:能够与Eclipse、IntelliJ IDEA等集成开发环境无缝集成。 7. **命令行模拟**:对于熟悉Git命令的用户,也提供了命令行模拟窗口,可以在图形界面下输入Git命令。 总的来说,Smart GIT是一款强大的...
在Java开发中,合法的授权方式包括购买个人或企业版的MyEclipse许可证,或者转向开源且免费的开发工具,如Eclipse、IntelliJ IDEA等,这些工具同样提供了丰富的功能和社区支持,有助于保持开发者的合法性与专业形象...
6. **与IDE集成**:Smart SVN可以与许多流行的集成开发环境(IDE)无缝集成,如Eclipse、IntelliJ IDEA等,提升开发效率。 7. **支持SVN 1.7**:Smart SVN 7.5版本兼容Subversion 1.7,这是SVN的一个重要版本,引入...
JCreator 4.5作为一款早期的版本,虽然在功能上可能不及现代的IDE如Eclipse或IntelliJ IDEA那么全面,但它以其简洁的用户界面和快速的启动速度脱颖而出。该软件特别适合初学者学习Java编程,因为它提供了基本的代码...
同时,开发者社区也提供了许多开源的免费IDE,如Eclipse、IntelliJ IDEA等,它们同样具备强大的开发功能,可供选择。 总的来说,虽然MyEclipse注册机能短暂解决许可证问题,但其潜在的风险和法律问题不容忽视。尊重...