npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

abracadabra-cn

v3.2.5

Published

Use Chinese to Encode Everything

Readme

Abracadabra 魔曰

JavaScript WASM

GitHub Repo stars

Abracadabra(魔曰) 是开源,安全,高效的文本加密工具。
将数据加密为汉字构成的文言文,完全开源,易于部署,易于使用。


✨ 查阅 快速使用 一节,快速开始使用/部署本项目。
✨ 查阅 项目主页,了解本项目的技术特点和细节。

👉 查阅 开放源代码许可 一节,了解本项目的依赖项和许可证。

特性

  • 仿真,使用文言语法句式
  • 开源,所有源代码公开可查。
  • 安全,完全离线的AES加密。
  • 可靠,代码经过严格单元测试。
  • 便捷,易于本地部署和使用。

熔古铸今:文言文仿真加密

镜有能弹,雨有谧然。以语,当笑速夜,非花称雪所将湛流。不应事也,畅则为动礼,迷则为达鲤,然则绣雪自恋致矣。

此棋有南涧迷森,悠雨清琴。遥家为鸢兮,宏梦为鹤。或指林写岩,进恋于雨,是语也,鸳极驿安,璃慧空舒。况请瀚者宏,是故无和无后,无安无舒,空之所连、城之所见也。光语筑天,良于璃韵,安铃振灯,局文放花。是故无余无青,无遥无寒,语之所事、琴之所歌也。虽火俊茶长,所以赴雨,其空速也,或弹物任绸,弹楼于声。

构造高仿真文言文,参考《古文观止》《经史百家杂钞》《古文辞类纂》等古代典籍。
标准 AES256 加密,引入更复杂的组句、语法匹配机制,将密码和中国古典文言文相融合。

密文高度随机,支持用户自定义随机性和文本风格偏好,打造前所未有的跨文化数字加密方案。

快速使用

请查阅 项目主页 ,详细了解使用/部署方法。

静态页面 / 前端源码

本项目有自动托管在Cloudflare Pages的静态页面可供直接使用。

如果你想自行快速部署这个静态页,可以在Release中下载快速部署文件包。若要自行编译或修改,请前往前端源代码仓库。

浏览器插件的源码同样在前端源代码仓库,位于 crx 分支。

浏览器插件

浏览器插件基于本项目的 JavaScript 实现。

已上架 Chrome WebStore, Edge 加载项Firefox 扩展

如果不方便访问Chrome插件商店,也可以访问Edge插件商店,和Firefox扩展商店。

提示:Edge 插件商店的上架审核速度十分缓慢,因此更新速度也更慢。不推荐从Edge商店下载本插件。

Android 客户端

本项目的 Android 客户端完全在 WebView 中静态运行。

image

APK使用HBuilderX自动打包,完全离线运行,没有自动更新等配套功能

功能和界面均和前端静态网页没有差异。

APK文件可以 在 Release 中下载

细节概要

请查阅 项目主页 了解更多。

Ask DeepWiki

加解密过程

明文 -> 压缩 -> AES-256-CTR -> Base64 -> 三重转轮 -> 映射汉字 -> 组句(仅仿真加密时) -> 密文

密文 -> 解仿真(仅仿真加密) -> 转轮逆映射 -> Base64 -> AES-256-CTR 解密 -> 解压缩 -> 明文

映射表

Abracadabra 以最常用的 3000 个汉字为密本,对大小写拉丁字母,阿拉伯数字和部分符号进行映射。

密表为纯人工编纂,没有让人眼花缭乱的生僻字。

映射表公开可查,查阅 映射表(传统) 或者 映射表(仿真) 以了解密本的全貌。

AES 加密

核心安全性由久经考验的 AES 加密算法提供,采用无填充的AES-256-CTR,节省密文长度。

AES 加密密钥和转轮密钥是同一个,均采用哈希值。

三重转轮混淆

模拟古老的转轮,每次加密均会对密本映射进行偏移。

简言之,程序会将给定的密钥进行 SHA256,得到一个长度为 32 的 Uint8_t 数组。

这个数组中的每个数字,都会决定三重转轮中每个转轮每次迭代的转动方向和转动距离。

数字/符号,字母分别拥有一套转轮,即总共六个转轮,改变密钥相当于更换一套完全不同的转轮。

转轮显著增加了 Base64 密文的安全性,查阅 项目主页 来了解转轮的详细运行机制。

压缩

为了削减密文的长度,每次加密前会对数据进行智能压缩。

针对短文本,采用专门为短文本优化的 Unishox2 压缩算法。
一般数据(>1KB)则采用GZIP。

压缩后会执行效率验证,如果出现无效压缩,则自动回落到原始数据。

密文对比

明文:Abracadabra

魔曰(仿真):不应报也。树将棋之,书曰:“天水探火,临于云楼” ,夜乃写定绸之莺,指之不为火,换之不为苗。

魔曰(仿真):流霞以停空,局返,作文换雪。不可彰也,火之无灯,璃说之文,智鸢湛事。

魔曰(传统):桨捷欤网炯棠囍设声沢仅氖城织把夹短阐瑞玖祉作

<-- ↓↓对比项目↓↓ -->

熊曰:呋食性類啽家現出爾常肉嘿達嗷很
佛曰:諸南隸僧南降南吽諸陀南摩隸南僧南缽南薩咤南心彌嚴迦聞婆吽願南眾南色南兜南眾南如婆如南
社会主义:自由民主公正文明法治文明公正民主公正和谐公正民主公正自由公正民主公正文明法治文明公正民主
兽音:~呜嗷嗷嗷嗷呜呜啊呜嗷呜嗷呜呜~嗷啊呜啊嗷啊呜嗷呜~呜~嗷~呜呜嗷嗷嗷嗷嗷嗷呜啊嗷呜啊呜嗷呜呜~嗷啊嗷啊嗷啊呜嗷嗷~~~嗷~呜呜嗷嗷嗷嗷嗷嗷呜啊嗷呜呜呜嗷呜呜~呜啊呜啊嗷啊呜嗷嗷~嗷啊
火星文:(不支持英文)

鸣谢

感谢 Unishox2 提供高效的短文本压缩方案。

感谢 中国哲学书电子化计划 提供高质量的古籍参考资料。

感谢 JS.ORG 为本项目提供域名支持。

感谢 @Amlkiller 为本项目提供十分有价值的反馈和建议。

感谢 熊曰(与熊论道)、佛曰、兽音译者 为本项目提供灵感和参考。

感谢贡献 PR 和参与测试的其他所有人,以及正在使用本项目的您

开放源代码许可

⚠️本项目受私有许可证保护,使用本项目则默认视为同意并遵守相关条款。禁止将本项目用于非法用途。
👉 查阅 AIPL-1.1 许可 来了解详细信息,也可以前往 #87 查阅简单介绍。


以下是本项目的依赖项:

  • Unishox2 短字符串压缩实现 ©Siara-cc, Apache-2.0 License.
  • crypto-js AES加密实现 ©Jeff Mott/Evan Vosberg, MIT License.
  • pako GZIP压缩实现 ©Vitaly Puzrin/Andrei Tuputcyn, MIT License.
  • js-base64 Base64编码工具实现 ©Dan Kogai, BSD-3-Clause License.
  • mersenne-twister 梅森旋转算法实现 ©Makoto Matsumoto/Takuji Nishimura, BSD-3-Clause License.
  • opencc-js 简繁体转换实现 ©nk2028, MIT License.

本项目许可证与所有依赖项的许可证兼容。

Star History

Star History Chart