编码解码哈希加密格式化时间转换开发生成文本处理网络工具其他工具
首页 / 哈希加密 / XOR加密

XOR加密

XOR 异或加密解密。

输入
结果

这个工具能做什么

这个工具做的是最基础的对称加密:你输入一段文本和一个密钥,它把文本按 UTF-8 编码成字节序列,再用密钥的字节循环地和明文逐字节做异或(XOR)运算,最后把结果转成十六进制字符串输出。解密时反过来,粘贴那串十六进制、填回同一个密钥,就能还原出原文。它解决的痛点很具体:当你在学算法、调试协议、或者只想给一小段文本做个可逆的轻量混淆时,不必现写脚本、也不必翻 CyberChef,填两个框就能立刻看到 XOR cipher 的加解密结果。整个异或运算加密过程都在浏览器本地完成,不上传服务器。

原理上,XOR 之所以能同时用于加密和解密,靠的是异或运算的自反性:对任意比特 a,有 a XOR k XOR k = a,所以对密文再异或一次相同的密钥就回到明文,加密和 xor解密是完全相同的一个操作。当密钥比明文短时,这里采用重复密钥(repeating-key XOR)的方式循环取字节,这也是它区别于理论上绝对安全的一次性密码本(OTP)的关键——OTP 要求密钥和明文等长且完全随机、只用一次。输出选十六进制而不是直接给字节,是因为异或后的结果往往包含不可打印字符甚至 0 字节,直接当文本会乱码或被截断,十六进制(或 Base64)是承载二进制的稳妥载体。理解这一点也就明白了:XOR 本身不做任何编码转换,它只是在字节层面翻转比特,中文等多字节字符是先经 UTF-8 变成字节再参与异或的。

典型场景之一是教学和刷题:讲解对称加密、流密码或 CTF 里的经典 XOR 题时,用它现场演示「同一密钥、同一操作、加解密对称」这个性质,比口头讲清楚得多;比如把「hello」用密钥「key」异或,学生能直观看到密文的十六进制,再异或回来验证自反性。另一个场景是给配置项或测试数据做轻量混淆:你不想让日志或截图里的一段字符串一眼可读,又不需要真正的安全强度,用一个固定密钥 XOR 一下、存成十六进制,需要时再解开,足够挡住随手一瞥。它也常用来快速核对别人用异或加密写的小工具输出对不对——把对方的密钥和密文贴进来,能不能还原,一目了然。

必须强调:XOR 加密只适合学习、演示和无关紧要的混淆,别用于任何真正的安全需求。重复密钥 XOR 有众所周知的弱点——如果攻击者知道或猜到部分明文,异或一下就能直接算出对应位置的密钥字节;密钥一旦短于明文并被重复,密文里就会泄露统计规律,存在已知明文攻击和频率分析的破解路径。它和哈希也完全不是一回事:哈希(如 MD5SHA-256)是单向不可逆的,而 XOR 是可逆的对称加密,两者用途相反,别混用。真要保护数据,请用 AES-GCM、ChaCha20 这类经过验证的现代算法,并配合正确的密钥管理。

XOR加密是一个免费的在线工具,打开网页就能用,不用下载也不用注册。平时大家搜的“xor加密”、“异或加密”、“xor cipher”,说的都是这个。

常见使用场景

使用方法

  1. 把内容粘贴到输入框(生成类工具直接设置选项)。
  2. 按需要选择选项,点操作按钮。
  3. 结果出现在下方,点「复制结果」即可带走。

常见问题

为什么加密结果是一串十六进制,不是可读文字?
异或后的字节经常落在不可打印区间,甚至出现 0 字节,当成普通文本会乱码或被截断。用十六进制(每字节两个字符)把二进制结果无损地表达出来,解密时再把这串十六进制还原回字节即可。
加密和解密要用不同的操作或不同的密钥吗?
不需要,XOR 是对称的:加密和解密是同一个异或操作,用的也是同一个密钥。区别只在这里的界面约定——加密框输入明文、输出十六进制,解密框输入十六进制、输出明文。
密钥比文本短会怎么样,支持中文密钥和中文文本吗?
密钥比文本短时会循环重复使用(repeating-key XOR),这是它能加密任意长度文本的方式,但也正是安全弱点所在。中文完全支持:文本和密钥都先按 UTF-8 编码成字节再异或,所以中文明文或中文密钥都能正常处理。
XOR 加密和 MD5、SHA 这类哈希有什么区别?
XOR 是可逆的对称加密,用同一密钥能加密也能解密还原原文;哈希是单向的,只能算摘要、无法从结果反推原文。二者用途相反:需要还原用加密,需要校验完整性或存口令用哈希。
用它加密敏感信息安全吗?
不安全,重复密钥 XOR 极易被已知明文攻击和频率分析破解,只适合教学演示和无关紧要的混淆。真正的敏感数据请用 AES-GCM、ChaCha20 等现代加密算法。

相关工具

查看全部「哈希加密」工具 →

相关名词解释