利用异或运算对输入的文本进行加密解密输出,用户输入一个文本(字符串,设不超过20个字符),然后输入作为密钥的字符,程序输入加密及解密的字符串。
时间: 2023-05-17 15:04:56 浏览: 221
Java中使用异或运算符实现加密字符串
好的,这是一个简单的加密解密程序,使用异或运算进行加密和解密:
```lua
-- 加密函数
function encrypt(text, key)
local result = ""
for i = 1, #text do
local char = string.sub(text, i, i)
local keychar = string.sub(key, (i - 1) % #key + 1, (i - 1) % #key + 1)
local xorchar = string.char(string.byte(char) ~ string.byte(keychar))
result = result .. xorchar
end
return result
end
-- 解密函数
function decrypt(text, key)
return encrypt(text, key)
end
-- 测试
print("请输入要加密的文本:")
local text = io.read()
print("请输入密钥字符:")
local key = io.read()
local encrypted = encrypt(text, key)
print("加密后的文本为:" .. encrypted)
local decrypted = decrypt(encrypted, key)
print("解密后的文本为:" .. decrypted)
```
对于输入的文本和密钥字符,程序会输出加密后的字符串和解密后的字符串。注意,这个程序只能加密和解密 ASCII 字符集中的字符。
阅读全文