package com.unique.web; import java.math.BigInteger; import java.util.Date; import java.util.Random; import java.util.zip.CRC32; public class HH { /** * @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) { String name = "dev"; // 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))); } }
网上找来的,可以用,留个纪念吧。
相关推荐
此插件有两个版本,分别为squaretest-1.7.2和squaretest-1.8.2,分别对应不同版本的IDEA。squaretest-1.7.2兼容从IDEA 2020.3到2023.1.5的版本,而squaretest-1.8.2则是为2023.2及更高版本设计的。 单元测试是软件...
### 知识点生成 #### 一、项目概述与背景 **纹理生成图片系统**是一项旨在利用现代信息技术改进传统信息管理方式的应用系统。本系统基于Java语言开发,使用了SpringBoot框架,配合B/S(Browser/Server)架构及MVC...
在描述中提到的“注册码生成器”,指的是用于生成MyEclipse激活码的程序,这种程序通常被称为“注册机”或“算号器”。 然而,值得注意的是,使用这类注册码生成器是违反软件许可协议的行为,可能导致法律问题。...
【MyEclipse注册码生成器】是一个工具,用于生成MyEclipse集成开发环境的激活码。MyEclipse是一款强大的Java、Web、J2EE、Android等应用的开发工具,由Genuitec公司开发,是Eclipse IDE的商业扩展版本。它提供了更多...
标题"\"PVS-Studio_6.00原文件和注册码\"\"暗示我们正在讨论的是PVS-Studio的6.00版本,这个版本可能包含了完整的安装程序和用于激活软件的注册码。通常,这样的资源对于那些希望在项目中使用PVS-Studio但又没有购买...
2. **生成注册码**:在页面中找到 Subscriber 附近的文本区域,输入“Subscriber”,然后点击“生成注册码”按钮。这时,页面上会显示一个新的 Subscription Code(订阅码)。 **注意事项**: - 确保网络连接...
虽然描述中提到激活码可以随意输入,但实际使用中需要有效的注册码才能解锁全部功能。用户可以从官方渠道购买或者寻找试用版的激活码。 3. **注意事项**: - **兼容性**:确保插件版本与IDE版本相匹配,以免出现...
这款插件是Diffblue公司提供的社区版本,能够在IntelliJ IDEA(简称Idea)2022.3版本中无缝集成,帮助用户提高测试效率和代码覆盖率。 单元测试是软件开发过程中的重要环节,它用于验证代码的各个独立模块是否按...
如果是旧版本或已过期,需通过控制面板进行卸载:打开控制面板,选择“卸载程序”,找到IntelliJ IDEA并右键卸载。 2. 如果未安装,从官方渠道下载最新版的IntelliJ IDEA,或者使用提供的Intellij.zip压缩包。解压后...
在这个“邮箱注册demo,IDEA项目”中,我们主要关注的是使用集成开发环境IntelliJ IDEA(Idea)来构建一个包含邮箱验证功能的应用。这个项目可能使用了Maven作为构建工具,以便管理和依赖于其他必要的库和框架。 ...
注册方面,可以访问***获取注册码,并在Idea中粘贴注册码后保存生效。 手册中详细说明了如何集成和使用Git版本控制工具。Git是一款流行的分布式版本控制系统,Idea已经内置了Git插件,用户只需做一些简单的配置即可...
在IT行业中,二维码(Quick Response Code)是一种二维条形码,可以存储大量信息,如网址、文本、联系信息等,并且能够通过手机等设备快速扫描读取。在本示例中,我们关注的是如何使用Java编程语言将一个链接转换为...
在本项目中,“基于Java的闪聚支付项目-支付宝沙箱扫码支付功能”是一个实现线上支付功能的应用,主要聚焦于使用Java编程语言与支付宝接口进行集成,以支持扫码支付方式。这种支付方式常见于电子商务、餐饮、零售等...
【我的注册码】——解决MyEclipse工具过期问题指南 在软件开发领域,MyEclipse是一款备受开发者喜爱的集成开发环境(IDE),它基于Eclipse平台,提供了丰富的Java、Web、J2EE以及移动应用的开发功能。然而,免费...
2023.3.6 版本,找到idea插件安装目录,将此插件里面的intellij-rainbow-brackets-2023.3.6.jar 替换为附件中的jar Rainbowify各种类型的括号(圆形、波浪形、方形、角度) Rainbowify更多语言的变量&使用颜色...
5. 保存表结构,IDEA会自动生成相应的CREATE TABLE SQL语句,可以预览并执行。 接下来,关于用户管理,还需要考虑以下几点: - **权限控制**:设计角色(Role)和权限(Permission)系统,允许分配不同的操作权限...
3. 注册JProfiler:`注册机`通常用于生成激活码,使软件可以正常使用。然而,使用注册机涉及到版权问题,违反了软件的许可协议。我们强烈建议通过官方渠道购买授权,支持软件开发者的工作,合法使用JProfiler。 **...
AutoFlowchart 2.4.4,版本较老,不过够用了。每导入一次“99999999次试用.reg”注册表项,即可恢复99999999次试用
《Spring Boot 搭建 Mall 商城系统:IDEA 编程实践》 Spring Boot 是一个简化了 Spring 应用初始搭建以及开发过程的框架,它集成了大量常用的第三方库配置,如 JDBC、MongoDB、JPA、RabbitMQ、Quartz 等等,大大...
对于需要使用付费功能的用户,可以通过购买官方授权码或参加官方活动等方式获取注册码。 #### 二、基础设置 - **2.1 设置界面和编辑区主题** 在IntelliJ IDEA中可以自定义编辑器的主题,以提高编程体验。打开...