rework app registry - trust tweaks

This commit is contained in:
kepler155c@gmail.com
2017-05-19 19:00:23 -04:00
parent fbe2c9e909
commit 8ecfea1524
33 changed files with 282 additions and 68 deletions

View File

@@ -6,10 +6,6 @@ local Crypto = require('crypto')
local remoteId
local args = { ... }
local exchange = {
base = 11,
primeMod = 625210769
}
if #args == 1 then
remoteId = tonumber(args[1])
@@ -35,25 +31,18 @@ if not socket then
error('Unable to connect to ' .. remoteId .. ' on port 19')
end
local function modexp(base, exponent, modulo)
local remainder = base
for i = 1, exponent-1 do
remainder = remainder * remainder
if remainder >= modulo then
remainder = remainder % modulo
end
end
return remainder
end
local secretKey = os.getSecretKey()
local publicKey = modexp(exchange.base, secretKey, exchange.primeMod)
local publicKey = os.getPublicKey()
local password = SHA1.sha1(password)
socket:write(Crypto.encrypt({ pk = publicKey, dh = os.getComputerID() }, password))
print(socket:read(2) or 'No response')
local data = socket:read(2)
socket:close()
if data and data.success then
print(data.msg)
elseif data then
error(data.msg)
else
error('No response')
end