add otp.generate_secret()

This commit is contained in:
BuckarooBanzay 2023-01-28 19:47:01 +01:00
parent 02f90efcaa
commit 10e82093b6
2 changed files with 15 additions and 0 deletions

View file

@ -164,3 +164,12 @@ function otp.create_qr_png(data)
return minetest.encode_png(width, height, png_data, 2)
end
function otp.generate_secret()
local buf = minetest.sha1("" .. math.random(10000), true)
local s = ""
for i=1,20 do
s = s .. string.char(string.byte(buf, i))
end
return s
end

View file

@ -58,3 +58,9 @@ mtt.register("otp.create_qr_png", function(callback)
f:close()
callback()
end)
mtt.register("otp.generate_secret", function(callback)
local s = otp.generate_secret()
assert(#s == 20)
callback()
end)