IT-Tools 高频工具实战详解(核心篇)
IT-Tools 16 个高频工具逐个实测:令牌/UUID/bcrypt/多哈希/HMAC/JWT/Base64/URL/命名风格/JSON diff/正则/crontab/时间戳/子网/OTP/RSA/AES 对称加解密等,输入与真实输出逐行回显,2026-10-27。
IT-Tools 高频工具实战详解(核心篇)
目标:把开发者最常用的 16 个 IT-Tools 工具逐个真实过一遍——每个工具给出完整操作路径、逐行照抄的输入与输出回显、以及行为口径解读,读完即可对照复现。实测环境为自托管的 IT-Tools v2024.10.22-7ca5933(部署过程见《IT-Tools 安装与初始化实战》),实测日期 2026-10-27;全部输出均为真实运行回显,非编造。工具全集目录见《IT-Tools 工具集分类体系详解》;选型背景见《IT-Tools 介绍与选型指南》。
一、环境信息
| 项目 | 值(实测) |
|---|---|
| 实例 | 自托管 IT-Tools v2024.10.22-7ca5933,地址 http://127.0.0.1:8140 |
| 浏览器 | Chromium(Playwright 1.49.0 驱动,桌面分辨率渲染) |
| 界面语言 | English(保留英文界面实测,字段名以界面为准) |
| 实测方式 | 真实浏览器驱动:导航到工具路由 → 填入输入 → 读取页面输出区/结果区回显 |
| 记录原则 | 输入 = 实测填入值;输出 = 页面回显逐行照抄(随机类结果为当次实掷值) |
💡 关于随机类工具的输出:Token/UUID/RSA/OTP 等工具的结果每次都是新的。本文抄录的是当次实测值,你复现时数值必然不同——对照格式与结构,而不是具体值。
二、进入工具的两条路
- 搜索:顶栏「Search」按钮(自带
Ctrl + K提示)→ 输入工具名 → 回车。实测Ctrl + K全局可用; - 路由直达:每个工具路由形如
http://<实例>/token-generator,直接收藏或拼 URL。
三、高频工具逐个实测
3.1 Token generator(随机令牌生成)— /token-generator
操作:默认参数即生成;选项含 4 个字符集开关(Uppercase/Lowercase/Numbers/Symbols)与 Length 滑杆(默认 64)。
实测界面结构(内容区回显):
Token generator
Generate random string with the chars you want, uppercase or lowercase letters,
numbers and/or symbols.
Uppercase (ABC...) Lowercase (abc...) Numbers (123...) Symbols (!-;...)
Length (64)
Copy | Refresh
默认参数(全字符集、长度 64)当次实测输出:
Ydf7OiUOPSOkHwi2LHrQvZG7MG4fL9RkSS9up4hb1PqCVYyrIILf3mYLvUo7EabO
点击 Refresh 后输出必然变化(真随机)。口径:长度默认 64;只勾 Lowercase+Numbers 时输出退化为对应字符集;Copy 一键复制,Refresh 重掷。
3.2 UUIDs generator — /uuid-generator
操作:数量框填 3。
输入回显:UUID quantity = 3
输出回显(每行一个):
d9ab7644-5cf4-4dc4-b9e1-b747d90677d5
d8791cb0-ce47-4539-b0a3-a9446428819e
904e1873-c2e1-4ef6-9eb6-a8625d880ce0
口径:标准 v4 格式(第三段首位为 4,第四段首位落 8/9/a/b——上面三行均符合);数量输入即时生效。
3.3 Bcrypt(哈希与比对)— /bcrypt
操作:Hash 区输入口令 → 得哈希;Compare 区填入字符串与哈希 → 自动判等。
输入:Your string to bcrypt... = q1w2e3r4(Salt rounds 默认 10)
输出回显:
$2a$10$3MUk6DtV4h6eXSrFUu85Z.F2X5Px/lV6o5xUBvRZnYr66rAiHeIKi
Compare 区填入 Your string to compare... = q1w2e3r4、Your hash to compare... = $2a$10$3MUk6DtV4h6eXSrFUu85Z.F2X5Px/lV6o5xUBvRZnYr66rAiHeIKi,页面判定区回显:
Do they match ? Yes
口径:输出 $2a$10$ 前缀(算法 + 默认 10 轮盐);比对是自动的,无需点按钮;同一口令每次哈希结果不同(盐随机),但都能比对通过——这是 bcrypt 的正确行为。
3.4 Hash text(多哈希并行)— /hash-text
操作:输入一个字符串,八种哈希同时出。
输入:Your string to hash... = hello world
输出回显(自上而下,框序即算法序):
| 算法 | 实测输出 |
|---|---|
| MD5 | 5eb63bbbe01eeed093cb22bb8f5acdc3 |
| SHA1 | 2aae6c35c94fcfb415dbe95f408b9ce91ee846ed |
| SHA256 | b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9 |
| SHA224 | 2f05477fc24bb4faefd86517156dafdecec45b8ad3cf2522a563582b |
| SHA512 | 309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee511a7c7a9bcd3ca86d4cd86f989dd35bc5ff499670da34255b45b0cfd830e81f605dcf7dc5542e93ae9cd76f |
| SHA3-384 | fdbd8e75a67f29f701a4e040385e2e23986303ea10239211af907fcbb83578b3e417cb71ce646efd0819dd8c088de1bd |
| SHA3-512 | 3ee2b40047b8060f68c67242175660f4174d0af5c01d47168ec20ed619b0b7c42181f40aa1046f39e2ef9efc6910782a998e0013d172458957957fac9405b67d |
(第八个输出框为 SHA3-224 系列位,随版本批次存在。)
口径:与命令行 sha256sum/md5sum 对拍一致(hello world 的 MD5/SHA256 是公开已知值);中文输入按 UTF-8 字节参与运算。
3.5 Hmac generator — /hmac-generator
输入:Plain text to compute the hash... = hello world,Enter the secret key... = it-tools-secret(哈希函数选 SHA256)
输出回显:
6aabe6cdbf468b94c01f6abe4c8c36ca6346aaf45de80a9431e003089a4846e0
口径:HMAC-SHA256(key="it-tools-secret", msg="hello world") 的标准值;函数下拉可切 SHA1/SHA384/SHA512 等。
3.6 JWT parser — /jwt-parser
操作:构造一个 HS256 JWT 并贴入。实测使用的样例(头 {"alg":"HS256","typ":"JWT"}、载荷 {"sub":"1234567890","name":"John Doe","iat":1516239022}、密钥 your-256-bit-secret):
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
输出回显(解析区):
Header
alg (Algorithm) HS256 (HMAC using SHA-256)
typ (Type) JWT
Payload
sub (Subject) 1234567890
name (Full name) John Doe
iat (Issued At) 1516239022 (1/18/2018 1:30:22 AM)
口径:三段式解码不校验签名(本工具只解码展示);iat 自动附人类可读时间,排查「token 是什么时候签发的」最常用。工具页同时提供 Header/Payload 可编辑视图与签名区高亮。
3.7 Base64 string encoder/decoder — /base64-string-converter
编码实测:输入 quzuo IT-Tools 2024 中文 →
cXV6dW8gSVQtVG9vbHMgMjAyNCDkuK3mloc=
解码实测:输入 cXV6dW8gSVQtVG9vbHMgMjAyNCDkuK3mloc= →
quzuo IT-Tools 2024 中文
口径:中文按 UTF-8 编码参与 Base64(中 → E4B8AD 等三字节);双向都是即时转换。
⚠️ 排障实录:实测时曾故意贴入一段「手抄错」的 Base64(
...NCDkvZznmZTlhavpgZM=),解码结果为乱码quzuo IT-Tools 2024 作癔八道——Base64 工具不做 UTF-8 合法性报错,错一位就出汉字乱码且不报错。凡是解码出「莫名汉字」,先怀疑 Base64 源串抄错或传输被截断,再怀疑编码问题。
3.8 Encode/decode URL-formatted strings — /url-encoder
编码实测:输入 hello world&x=1/中文测试 →
hello%20world%26x%3D1%2F%E4%B8%AD%E6%96%87%E6%B5%8B%E8%AF%95
解码实测:输入 Hello%20world%20%3A) →
Hello world :)
口径:空格 → %20(+ 形态未使用,属 encodeURIComponent 风格);中文逐字节转 %E4%B8%AD 形态;左右两栏互不影响。
3.9 Case converter(15 种命名风格)— /case-converter
操作:输入一个字符串,15 种风格一次全出。
输入:hello IT Tools World
输出回显(标签 = 界面字段名,值 = 逐行照抄):
| 界面字段 | 实测输出 |
|---|---|
| Lowercase | hello it tools world |
| Uppercase | HELLO IT TOOLS WORLD |
| Camelcase | helloItToolsWorld |
| Capitalcase | Hello It Tools World |
| Constantcase | HELLO_IT_TOOLS_WORLD |
| Dotcase | hello.it.tools.world |
| Headercase | Hello-It-Tools-World |
| Nocase | hello it tools world |
| Paramcase | hello-it-tools-world |
| Pascalcase | HelloItToolsWorld |
| Pathcase | hello/it/tools/world |
| Sentencecase | Hello it tools world |
| Snakecase | hello_it_tools_world |
| Mockingcase | HeLlO It tOoLs wOrLd |
(15 个输出框;首行输入框不计。)
口径:写代码时从一句话拿全驼峰/下划线/常量名,一个页面解决;Mockingcase 是社区梗风格(SpongeBob mocking case)。
3.10 Slugify string — /slugify-string
输入:Hello IT-Tools 中文 Test 2024
输出回显:
hello-it-tools-test-2024
口径:中文字符被直接丢弃(无拼音/转写),仅保留 ASCII 词元并连字符连接——含中文的标题做 slug 前先自行转拼音/译名,这是最常见的预期偏差。
3.11 JSON diff — /json-diff
输入(两份仅差两处的 JSON):
{
"name": "it-tools",
"stars": 41000,
"license": "GPLv3"
}
{
"name": "it-tools",
"stars": 43000,
"lang": "en"
}
输出回显(差异树,⇄ 标改动、+ 标新增、- 标删除,实测渲染结构):
{
name: "it-tools",
stars: 41000 ⇄ 43000,
license: "GPLv3",
lang: "en",
},
口径:stars 键标为 41000→43000 的修改;license 键在右侧不存在(删除态);lang 在左侧不存在(新增态);「Only show differences」开关可只留差异项。
3.12 Regex Tester — /regex-tester
输入:Regex = \b(\d{4})-(\d{2})-(\d{2})\b(Global 开);Text to match = 发布日期 2024-10-22,构建 v2024.10.22-7ca5933,另一日期 2026-01-01。
输出回显(Matches 表,列:Index in text / Value / Captures Groups):
#5 2024-10-22 "1" = 2024 [5 - 9] "2" = 10 [10 - 12] "3" = 22 [13 - 15]
#44 2026-01-01 "1" = 2026 [44 - 48] "2" = 01 [49 - 51] "3" = 01 [52 - 54]
(行首序号 5/44 为该工具内部枚举序,非字符位置;括号 [5 - 9] 等为各捕获组在文本中的字符区间。)
同时实测到两个附加输出区:
Sample matching text
3667-67-83
Regex Diagram
(正则结构可视化图)
口径:捕获组逐个编号展示 + 字符区间定位 + 样本文本 + 结构图,是替代正则调试网站的主力;flags 区支持 g/i/m/s/u/v 六个开关。注意样本文本 3667-67-83 是工具按当前正则自动生成的「可匹配样例」。
3.13 Crontab generator — /crontab-generator
实测初始状态(默认值即非空):
表达式输出框: 40 * * * *
人类描述: At 40 minutes past the hour, every hour, every day
内置符号速查表(页面回显节选):
* Any value * * * * * Every minute
- Range of values 1-10 * * * Minutes 1 through 10
, List of values 1,10 * * * At minutes 1 and 10
/ Step values */10 * * * Every 10 minutes
@yearly 0 0 1 1 * Once every year at midnight of 1 January
@monthly 0 0 1 * * Once a month at midnight on the first day
@weekly 0 0 * * 0 Once a week at midnight on Sunday morning
@daily 0 0 * * * Once a day at midnight
@hourly 0 * * * * Once an hour at the beginning of the hour
@reboot Run at startup
口径:分区控件(分钟/小时/日/月/周)逐项点选即可拼表达式,右下附完整五段位示意图(秒位可选);「Verbose」开关展开每段的选项明细。写服务器 crontab 前先来这核对人类语义,比 man 5 crontab 直观。
3.14 Date-time converter — /date-time-converter
输入:1735689600(秒级时间戳)
输出回显(七个并行格式框,逐行照抄):
Wed Jan 01 2025 00:00:00 GMT+0000 (Coordinated Universal Time)
2025-01-01T00:00:00Z
2025-01-01 00:00:00
2025-01-01T00:00:00Z
Wed, 01 Jan 2025 00:00:00 GMT
1735689600
1735689600000
口径:ISO/本地串/RFC 2822/秒/毫秒一屏互查;反向粘贴任意可解析日期串同样生效。时区基准为浏览器时区(本实测浏览器为 UTC 渲染),自用时注意与服务器时区的差异。
3.15 IPv4 subnet calculator — /ipv4-subnet-calculator
输入:192.168.10.130/26
输出回显(逐项照抄):
Netmask 192.168.10.128/26
Network address 192.168.10.128
Network mask 255.255.255.192
Network mask in binary 11111111.11111111.11111111.11000000
CIDR notation /26
Wildcard mask 0.0.0.63
Network size 64
First address 192.168.10.129
Last address 192.168.10.190
Broadcast address 192.168.10.191
IP class C
口径:与手工推演一致(/26 → 64 地址、可用 62、广播 .191);「Previous block / Next block」按钮切换相邻网段;做网段划分审批单时这一屏就是全部依据。
3.16 Basic auth generator — /basic-auth-generator
输入:Your username... = admin、Your password... = q1w2e3r4
输出回显:
Authorization: Basic YWRtaW46cTF3MmUzcjQ=
口径:即 base64("admin:q1w2e3r4");Copy header 一键复制整行,可直接贴进 curl -H。注意该头等价于明文口令,仅限测试/内网使用。
3.17 Math evaluator — /math-evaluator
输入:2^10 * 3 + 5 / sqrt(16)
输出回显:
Result 3073.25
口径:1024*3 + 5/4 = 3073.25 正确;支持 sqrt/cos/sin/abs 等函数与 ^ 幂运算。
3.18 Percentage calculator — /percentage-calculator
操作:第一张卡片 X = 15、Y = 200
输出回显:
Result 30
口径:卡片一为「X% of Y」;页面共三张卡(含「X 是 Y 的百分之几」「从 X 到 Y 的增幅」),并行互算。
3.19 OTP code generator(TOTP)— /otp-code-generator-and-validator
输入:Paste your TOTP secret... = JBSWY3DPEHPK3PXP(Base32 密钥)
输出回显:
Secret in hexadecimal 48656c6c6f21deadbeef
Epoch 1793108490
Iteration 59770283 (Padded hex: 00000000039005ab)
Previous 477936
Current 502347
Next 191810
Next in 14s
口径:六位动态码随 30 秒窗口轮转,页面同时显示上/当/下三档与倒计时;hex 与迭代计数用于与 oathtool 等命令行对拍。对拍务必取「Current」且两端时钟同步。
3.20 RSA key pair generator — /rsa-key-pair-generator
操作:位数默认 2048,点 Refresh key-pair。
输出回显(公钥区节选,PEM 结构完整):
-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAu9lBCTQSWwS7q3zZtEeR
RoBc2nOA7Ml08/Gy/bgD0FdMUkluR9d/Ss4MrswKJTcQ4WpmqShkuImL/f9FhDro
P782xzaNsDn7NY6OCGXs2rSQHo76XOpeSdTW73wotixvCB5a4PMnkmu4Of/j6R4q
K4nvMA0nT/OgYDZ7hxxH1AzNEADy2piaxGKJJN92CugxNDp2wKhFTd7zyj4t+7ON
FKjNOET4+Al9vgaJjY6FgMngzYMQ/kJJwde+3C2gniWr1mmZTJNWyVK42Ij3ZuiE
iJvg26GDSXhtD6aNpwjxzz7LSo/I5DRbVBBSLECvEk9DjomBTecHDK8CwITQVQUJ
4QIDAQAB
-----END PUBLIC KEY-----
私钥区同屏生成(-----BEGIN PRIVATE KEY-----,本文不抄录)。口径:WebCrypto 本地生成,位数可选 512–4096;公钥可直接进授权文件,私钥生成后务必立即落盘保管。
3.21 Encrypt / decrypt text(对称加解密)— /encryption
加密实测:The string to cypher = top secret message、密钥 it-tools-key
输出回显(当次):
U2FsdGVkX1+0IZENx753fmRszhygDztDWP+/oV8dpe31LBBagThJ74EPDVHb19rR
解密回环实测:把上面密文与同一密钥填入解密侧 → 输出回显:
top secret message
口径:密文 U2FsdGVkX1 前缀即 OpenSSL Salted__ 头(Base64 形),说明兼容 OpenSSL 口令派生方案(openssl enc 可互解);同一明文每次加密结果不同(随机盐)——重复实测时密文必然变化,解密恒等。
3.22 Text diff — /text-diff
操作:左右两个编辑器分别输入,差异即时渲染。 左栏输入:
it-tools
stars: 41000
右栏输入:
it-tools
stars: 43000
输出回显(差异区):
1 original text it-tools
modified text it-tools
2 original text stars: 41000
modified text stars: 43000
口径:底层为 Monaco diff 编辑器(VS Code 同源),行级高亮;对比配置文件/环境变量文件片段足够用,二进制与超长文本不建议。
3.23 HTTP status codes(模糊搜索)— /http-status-codes
操作:搜索框输入 404
输出回显(命中列表节选):
404 Not Found The requested resource could not be found but may be
available in the future.
401 Unauthorized Similar to 403 Forbidden, but specifically for use when
authentication is required and has failed or has not yet
been provided.
204 No Content The server successfully processed the request and is not
returning any content.
304 Not Modified Indicates that the resource has not been modified since the
version specified by the request headers.
400 Bad Request The server cannot or will not process the request due to an
apparent client error.
402 Payment Required Reserved for future use. ...
口径:搜索为模糊匹配(404 能带出 401/204 等),要精确输入完整短语 Not Found;每个条目附标准释义,排查接口返回码时当词典用。
四、全局交互与键盘行为实测
| 行为 | 实测结果 |
|---|---|
| 全局搜索 | 顶栏按钮文本自带 Ctrl + K 快捷键提示;按 Ctrl + K 唤出搜索面板,输入即模糊匹配 |
| 全局快捷键 | 除搜索入口外无其他全局快捷键(源码布局层无全局键盘绑定实测佐证) |
| 语言切换 | 顶栏选择器 9 种语言即时切换,含「中文」,无需刷新 |
| 主题切换 | 顶栏月亮/太阳按钮,亮暗双主题即时生效 |
| 收藏 | 工具卡片收藏后聚合到首页 Favorites 区 |
| PWA | 构建含 Service Worker(预缓存 264 项),浏览器可「安装应用」,断网可用 |
工具页内键盘:输入框与下拉遵循浏览器/组件默认行为(Tab 移焦、Enter 确认),无自定义键位需要记忆——上手成本接近零。
五、排障实录
- 现象一:Base64 解码出「作癔八道」式乱码。根因:源串抄错/截断(3.7 节实录),工具不报 UTF-8 非法。解决:重抄源串或对已知明文做编码回拍;出现成对汉字乱码先查 Base64 本身。
- 现象二:自动化测试中往 Text diff 编辑器
fill文本无效。根因:Monaco 不是普通输入框,直接设值不触发其内部模型。解决:点击编辑区获得焦点后模拟真实键盘输入;人工使用不受影响。 - 现象三:OTP 对拍与手机认证器不一致。根因:取了 Previous/Next 档,或两端时钟偏差超过容差。解决:取 Current 档并在
Next in Ns倒计时前半段比对;系统时间偏差大的服务器先校时。 - 现象四:RSA 位数调到 4096 后生成明显变慢。根因:密钥生成是真大数运算,位数越高耗时越长。解决:属预期;2048 足够日常联调,生成时等 Refresh 完成再复制。
- 现象五:随机类工具两次输出不同,怀疑被改动。根因:Token/UUID/RSA/Lorem 等本就是真随机。解决:验证格式与结构而非具体值;需要固定值做回归测试时把当次输出抄进用例即可。
六、参考链接
- 官方站点(与本文实例同版本可对照):https://it-tools.tech
- 仓库与各工具源码:https://github.com/CorentinTh/it-tools (
src/tools/<tool-name>/) - 本组件系列文档:《IT-Tools 介绍与选型指南》《IT-Tools 安装与初始化实战》《IT-Tools 工具集分类体系详解》