# python-jetbrain **Repository Path**: shenmk/python-jetbrain ## Basic Information - **Project Name**: python-jetbrain - **Description**: No description available - **Primary Language**: Python - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 1 - **Created**: 2024-11-27 - **Last Updated**: 2026-07-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # GenActiveCode 使用文档 JetBrains IDE 激活码生成器 — Go 命令行版本 --- ## 目录 1. [环境要求](#环境要求) 2. [编译安装](#编译安装) 3. [快速开始](#快速开始) 4. [命令详解](#命令详解) 5. [交互式模式](#交互式模式) 6. [命令行模式](#命令行模式) 7. [支持的产品](#支持的产品) 8. [故障排除](#故障排除) 9. [技术原理](#技术原理) --- ## 环境要求 | 依赖 | 版本 | 说明 | |------|------|------| | Go | 1.23+ | 编译工具链 | | Windows | 10/11 | 支持 | | Linux | Ubuntu 20.04+ | 支持 | | macOS | 11.0+ | 支持(Intel + Apple Silicon) | --- ## 编译安装 ### 方式一:使用构建脚本(推荐) ```batch build_go.bat ``` 构建完成后生成 `genactive.exe`。 ### 方式二:手动编译 ```batch go build -o genactive.exe ./cmd ``` ### 方式三:使用 Go 代理加速 ```batch set GOPROXY=https://goproxy.cn,direct go build -o genactive.exe ./cmd ``` --- ## 快速开始 ### 方式一:一键安装(推荐) ```batch genactive.exe setup -product pycharm -name "张三" -dir "D:\jetbra" ``` 自动完成: 1. 解压 ja-netfilter 到指定目录 2. 生成 power.conf 并放置 3. 生成激活码 4. 配置 vmoptions 文件 ### 方式二:分步安装 ```batch :: 第一步:初始化 CA 证书 genactive.exe init :: 第二步:生成激活码 genactive.exe generate -product pycharm -name "张三" :: 第三步:手动配置 ja-netfilter ``` --- ## 命令详解 ### `genactive.exe setup` **一键安装 ja-netfilter + 生成激活码(推荐)** ```batch genactive.exe setup genactive.exe setup -product pycharm genactive.exe setup -product pycharm -name "张三" genactive.exe setup -product pycharm -name "张三" -date 2099-12-31 genactive.exe setup -product pycharm -name "张三" -dir "D:\jetbra" ``` | 参数 | 说明 | 默认值 | |------|------|--------| | `-product`, `-p` | IDE 产品类型 | `idea` | | `-name`, `-n` | 持有人名称 | `lemon` | | `-date`, `-d` | 到期日期 (YYYY-MM-DD) | `2099-01-01` | | `-dir` | 安装目录 | 当前目录 | **执行步骤:** ``` === 步骤 1/4: 解压 ja-netfilter === 已解压到: D:\jetbra === 步骤 2/4: 生成 power.conf === power.conf 已写入: D:\jetbra\jetbra\config-jetbrains\power.conf === 步骤 3/4: 生成激活码 === 激活码: FV8EM46DQYC5AW9-... === 步骤 4/4: 配置 vmoptions === vmoptions 已更新: C:\Users\...\PyCharm\pycharm.vmoptions ═══════════════════════════════════════════ 安装完成! ═══════════════════════════════════════════ 下一步: 1. 重启 JetBrains IDE 2. 选择 Activate License → Activation Code 3. 粘贴上面的激活码 ``` ### `genactive.exe init` 初始化 CA 证书。 ```batch genactive.exe init genactive.exe init -dir .\output ``` | 参数 | 说明 | 默认值 | |------|------|--------| | `-dir` | 输出目录 | 当前目录 | ### `genactive.exe generate` 生成激活码。 ```batch genactive.exe generate genactive.exe generate -product idea genactive.exe generate -product pycharm -name "李四" genactive.exe generate -product webstorm -name "王五" -date 2099-12-31 genactive.exe generate -product clion -dir .\keys ``` | 参数 | 说明 | 默认值 | |------|------|--------| | `-product`, `-p` | IDE 产品类型 | `idea` | | `-name`, `-n` | 持有人名称 | `lemon` | | `-date`, `-d` | 到期日期 (YYYY-MM-DD) | `2099-01-01` | | `-dir` | 输出目录 | 当前目录 | ### `genactive.exe power` 生成 ja-netfilter power.conf EQUAL 规则。 ```batch genactive.exe power genactive.exe power -dir .\config ``` | 参数 | 说明 | 默认值 | |------|------|--------| | `-dir` | 输出目录 | 当前目录 | ### `genactive.exe version` 显示版本信息。 ```batch genactive.exe version ``` ### `genactive.exe help` 显示帮助信息。 ```batch genactive.exe help genactive.exe -h ``` --- ## 交互式模式 无参数启动时进入交互式菜单: ```batch genactive.exe ``` ### 主菜单 ``` ╔═══════════════════════════════════════════╗ ║ GenActiveCode - JetBrains 激活码生成器 ║ ║ Go 命令行版本 v1.0.0 ║ ╚═══════════════════════════════════════════╝ ┌─────────────────────────────────────────┐ │ 功能菜单 │ ├─────────────────────────────────────────┤ │ [1] 一键安装(推荐) │ │ [2] 初始化 CA 证书 │ │ [3] 生成激活码 │ │ [4] 生成 power.conf 规则 │ │ [5] 查看支持的产品列表 │ │ [0] 退出 │ └─────────────────────────────────────────┘ 请选择功能 [0-5]: ``` ### 一键安装流程 1. 选择功能 `[1] 一键安装` 2. 选择产品(输入序号或名称) 3. 输入持有人名称(回车使用默认值) 4. 输入到期日期(回车使用默认值) 5. 输入安装目录(回车使用当前目录) 6. 自动完成安装,显示激活码 --- ## 命令行模式 ### 常用示例 ```batch :: 一键安装 PyCharm 激活 genactive.exe setup -product pycharm -name "张三" -dir "D:\jetbra" :: 一键安装 IntelliJ IDEA 激活 genactive.exe setup -product idea -name "李四" -dir "C:\jetbrain-activator" :: 批量安装所有产品 for %%p in (idea pycharm webstorm clion goland phpstorm) do ( genactive.exe setup -product %%p -name "张三" -dir "D:\jetbra-%%p" ) ``` ### 批量安装脚本 创建 `batch_setup.bat`: ```batch @echo off set NAME=张三 set DATE=2099-01-01 set BASE_DIR=D:\JetBrains echo ======================================== echo JetBrains 全家桶一键安装 echo ======================================== echo. echo [1/6] 安装 IntelliJ IDEA... genactive.exe setup -product idea -name "%NAME%" -date "%DATE%" -dir "%BASE_DIR%\IDEA" echo [2/6] 安装 PyCharm... genactive.exe setup -product pycharm -name "%NAME%" -date "%DATE%" -dir "%BASE_DIR%\PyCharm" echo [3/6] 安装 WebStorm... genactive.exe setup -product webstorm -name "%NAME%" -date "%DATE%" -dir "%BASE_DIR%\WebStorm" echo [4/6] 安装 CLion... genactive.exe setup -product clion -name "%NAME%" -date "%DATE%" -dir "%BASE_DIR%\CLion" echo [5/6] 安装 GoLand... genactive.exe setup -product goland -name "%NAME%" -date "%DATE%" -dir "%BASE_DIR%\GoLand" echo [6/6] 安装 PhpStorm... genactive.exe setup -product phpstorm -name "%NAME%" -date "%DATE%" -dir "%BASE_DIR%\PhpStorm" echo. echo ======================================== echo 全部安装完成! echo ======================================== echo. echo 请重启各 IDE 并使用生成的激活码激活 pause ``` --- ## 支持的产品 | 产品码 | 产品名称 | 模板文件 | |--------|----------|----------| | `II` | IntelliJ IDEA Ultimate | `idea.txt` | | `PS` | PyCharm Professional | `pycharm.txt` | | `WS` | WebStorm | `webstorm.txt` | | `CL` | CLion | `clion.txt` | | `GO` | GoLand | `goland.txt` | | `PCWMP` | PhpStorm | `phpstorm.txt` | | `PSI` | DataGrip | `datagrip.txt` | | `PDB` | DataSpell | `dataspell.txt` | | `PRR` | Rider | `rider.txt` | | `RR` | RubyMine | `rubymine.txt` | | `DB` | dotCover | `dotcover.txt` | | `DP` | dotTrace | `dottrace.txt` | | `DM` | dotMemory | `dotmemory.txt` | --- ## 故障排除 ### 问题:找不到模板文件 ``` failed to read template ... templates/idea.txt ``` **解决:** 确保在项目根目录运行命令,或使用 `-dir` 指定正确路径。 ### 问题:CA 证书已存在 ``` CA 证书已存在,跳过生成 ``` **说明:** 这是正常提示,表示 CA 证书已生成过。 ### 问题:Go 编译失败 ``` go: cannot find module ``` **解决:** ```batch go mod tidy go build -o genactive.exe ./cmd ``` ### 问题:激活码无效 **检查:** 1. 确认已安装 ja-netfilter(使用 `setup` 命令) 2. 确认 `power.conf` 已正确放置 3. 确认 IDE 已重启 ### 问题:vmoptions 未找到 ``` 配置 vmoptions 失败 ``` **解决:** 手动添加 javaagent 行到 vmoptions 文件: ```batch :: 找到 IDE 安装目录下的 bin/*.vmoptions 文件 :: 添加以下行: -javaagent:D:\path\to\jetbra\ja-netfilter.jar=jetbrains ``` --- ## 技术原理 ### 激活码格式 ``` LicenseID-base64(JSON)-base64(签名)-base64(证书) ``` ### 验证流程 1. IDE 解析激活码,提取 JSON、签名、证书 2. 使用证书公钥验证签名 3. ja-netfilter 拦截 `modPow` 调用 4. EQUAL 规则匹配后返回预期结果 5. 验证通过,IDE 激活 ### power.conf 规则 ``` [Result] EQUAL,{sign},{exponent},{modulus}->{fakeResult} ``` - `sign` — 自签名证书的签名值 - `exponent` — RSA 指数(固定 65537) - `modulus` — JetBrains 内置根证书公钥模数 - `fakeResult` — 证书 TBS 的 SHA256 + PKCS#1 v1.5 填充 --- ## 免责声明 本工具仅供学习研究 Java Agent 技术和 RSA 签名验证原理之用。 请勿用于商业或非法用途。请在 24 小时内删除生成的所有激活码。 支持正版软件,尊重知识产权。