通过NodeInject和Yporaject进行Typora激活
众所周知,Typora是一款非常优秀的Markdown编辑器,而我日常撰写博文使用的也正是Typora。然而,正版Typora高达89元的售价让不少像我这样的学生党望而却步,不得不通过其他技术手段来使用Typora。
但是,在互联网上公开的破解手段中,大多数都是采用对 Typora 加密的核心js进行修改或直接Patch二进制的方式实现绕过授权校验的。这些方案当然可行,但仍存在版本针对性强、侵入性高等诸多缺陷。
在这种情况下,吾爱破解论坛的hlrlqy大佬提出的一种通过对Node.js的相关实现进行Hook从而修改数据的方法就成为了更加理想的破解方式。
本文仅记录我部署这一项目的过程,仍然强烈推荐有经济能力的朋友支持正版Typora。
用于进行注入的 NodeInject 项目和用于生成License Key的 NodeInject_Hook_example 项目是这一方案的官方Rust实现。由hazukieq大佬Fork的版本 Yporaject 合并了上述两个项目并撰写了详细的教程。在此对二位大佬的所做的工作表示感谢。
注意:
1.根据 Yporaject 项目的说明,由于Typora在MacOS上的打包方法和运行环境与其他平台存在差异,该方案仅适用于Windows和Linux系统。
2.由于 Yporaject 与原项目代码不同步,可能因为代码滞后导致对Typora的更新版本失效。如果遇到此问题,请查看 NodeInject 项目和 NodeInject_Hook_example 项目。
环境信息
Manjaro Linux (Linux Kernel 6.5.3-1-MANGARO x64)
Windows 10 IoT 企业版 LTSC 21H2 (19044.3448)
cargo 1.72.1 (103a7ff2e 2023-08-15)
Typora 1.7.5
配置Rust编译环境
Linux:curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Windows:参照官方教程使用RUSTUP-INIT.exe安装。
安装官方版Typora
Linux:flatpak install io.typora.Typora
Linux下的其他安装方法详见Typora官网。
Windows:官网下载安装包后直接安装。
克隆 Yporaject 项目
git clone https://github.com/hazukieq/Yporaject.git --depth=1
如果在克隆项目时遇到网络问题,可以使用gitclone.com提供的镜像加速:
git clone https://gitclone.com/github.com/hazukieq/Yporaject.git --depth=1
也可以使用
git config --global http.proxy/https.proxy
来为Git设置代理,本文不再赘述。
编译 Yporaject 项目
下面的命令适用于 Linux Bash/Zsh ,Windows Powershell需要略作调整。
1 | # 进入 Yporaject 项目 |
复制二进制程序到安装目录下
1 | # 记录当前目录路径 |
获取License Key
1 | # 返回项目 |
你将会得到下面这样的输出:
1 | Finished dev [unoptimized + debuginfo] target(s) in 0.00s |
复制 License for you后面的那一串序列码备用。
激活 Typora
1 | #运行 Typora (或直接在桌面上点击程序图标) |
依次点击界面上方菜单栏的帮助 > 我的许可证...(Help > My license)
打开激活界面,然后输入激活邮箱(可以任意填写)和上面复制的序列码。
如果遇到网络问题导致的“序列码激活软件失败,连接不上服务器”,可以在偏好设置 > 通用
中勾选 “使用Typora国内服务器”。如果问题仍然没有解决,可以挂代理后使用国外激活服务器(不勾选 “使用Typora国内服务器”)重试。
参考资料
通过NodeInject和Yporaject进行Typora激活