如何从Lua中的用户输入中检索密码,以便在使用密码完成程序后可以安全地从内存中删除?
的跟进如何在lua中将密码转换为十六进制?
一个简单的例子是:
“pass”变为{0x70,0x61,0x73,0x73}
答案 0 :(得分:1)
“十六进制”是什么意思?是否要将pass
转换为包含#pass*2
十六进制字符的字符串?那你想要这个:
function toHex(s)
return (string.gsub(s, ".", function (c)
return string.format("%02X", string.byte(c))
end))
end
print(toHex('password')) --> 70617373776F7264
或者您想要一个数字表,其中每个数字是一个字符代码(字节)?那你想要这个:
function toBytes(s)
return {string.byte(s, 1, #s)}
end
print(table.concat(toBytes('password'), ',')) --> 112,97,115,115,119,111,114,100