package keygen;
import java.math.BigInteger;
import java.util.Date;
import java.util.zip.CRC32;
public class Keygen {
private static final int version = 14;
/**
* @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] = 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;
}
}
分享到:
相关推荐
NULL 博文链接:https://unas.iteye.com/blog/265679
intellijidea keygen sn
本指南将详细解释如何使用Git进行版本控制,配置数据库,以及如何在IntelliJ IDEA这个流行的Java IDE中进行操作。 1. Git与GitHub的集成 Git是一种分布式版本控制系统,它允许开发者追踪代码的更改并协同工作。要...
此外,市场上还有许多开源或免费的IDE可供选择,如IntelliJ IDEA的社区版、NetBeans、Eclipse等,它们同样具备强大的开发功能,且无需担心版权问题。 总之,“MyEclipse_6.5.1 KeyGen”这一话题提醒我们,在追求...
phpStorm,webstorm 等工具的intellij idea 12 edition key generator tool.
本文将详细介绍如何在IntelliJ IDEA(简称IDEA)这一强大的Java集成开发环境中,利用Git来进行项目管理。 #### 二、Git安装与配置 ##### 1. Git安装 - **下载与安装**:访问[Git官方网站]...
### IDEA中SVN、Git的...通过以上步骤,您可以顺利地在IntelliJ IDEA中配置并使用SVN和Git,实现高效地版本控制管理。这些操作不仅适用于初学者,也适用于有一定经验的开发人员,有助于提升开发效率和代码管理能力。
在Intellij IDEA中引用已安装的Git路径,以便IDEA能够调用Git命令执行相关操作。 - 打开Intellij IDEA,选择“File”->“Settings”(或按`Ctrl+Alt+S`快捷键)。 - 在设置窗口中选择“Version Control”->“Git”...
其中,鲲鹏编译插件是这个套件的重要组成部分,它为开发者提供了集成开发环境(IDE)中的编译和调试功能,支持多种IDE平台,如VSCode和IntelliJ IDEA。 ### 鲲鹏编译插件2.3.T10常见问题与解答 #### 1.1 如何安装...
在这个例子中,标签提到了"Idea",这可能指的是JetBrains的IntelliJ IDEA,一个流行的Java开发IDE。IntelliJ IDEA支持内置的Git集成,允许用户在IDE内进行版本控制操作,如提交、分支管理、合并等,提高了开发效率。...
- **XML IDE集成**:可能增强了与其他XML开发环境的集成,如Eclipse或IntelliJ IDEA。 三、关于"keygen" “keygen”通常指的是密钥生成器,用于生成软件激活码。然而,这并不意味着Oxygen XML Editor官方支持或...
Java 开发环境是程序员进行 Java 应用程序开发的基础,主要包含 JDK(Java Development Kit)、集成开发环境(IDE)如 IntelliJ IDEA、应用服务器如 Tomcat、构建工具 Maven、热部署工具 jrebel 和版本控制系统 SVN...
IntelliJ IDEA 是一款广受欢迎的 Java 开发集成环境,其2020.1版本引入了新的功能,允许用户将他们的系统设置同步到 GitHub,以便在不同设备间保持一致性或与团队共享配置。这一特性对于开发者来说非常实用,特别是...
- 下载IntelliJ IDEA安装包。 - 安装并配置Scala插件。 - **配置Scala项目**: - 创建Scala项目。 - 配置项目依赖,如添加Spark和Hadoop库。 - **构建与打包**: - 使用Maven或SBT进行项目构建。 - 打包项目为...
同时,考虑使用开源的Java IDE,如Eclipse或IntelliJ IDEA,也是不错的选择,它们同样功能强大且支持丰富的插件生态系统。 总的来说,MyEclipse激活补丁是一个复杂的话题,涉及到软件许可、安全性以及道德问题。在...
7. **与其他工具集成**:Smart SVN可以与IDE(如IntelliJ IDEA、Eclipse等)集成,提供无缝的开发体验。 在使用Smart SVN之前,确保你的系统已安装Java运行环境(JRE),因为Smart SVN依赖于Java。此外,对于合法...
7. **与其他工具集成**:可以与Xcode、IntelliJ IDEA等IDE无缝集成,提升开发效率。 在使用SmartSVN时,了解基本的SVN概念,如Checkout(检出)、Commit(提交)、Update(更新)和Revert(还原),对于有效利用该...
6. **集成IDE**:能够与Eclipse、IntelliJ IDEA等集成开发环境无缝集成。 7. **命令行模拟**:对于熟悉Git命令的用户,也提供了命令行模拟窗口,可以在图形界面下输入Git命令。 总的来说,Smart GIT是一款强大的...