Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local component = require("component")
- local event = require("event")
- local cor = require("coroutine")
- local m = component.modem -- get primary modem component
- local data = component.data
- local public, private = data.generateKeyPair()
- m.open(6241)
- local iv = data.random(16)
- print("System ready...")
- while (true) do
- local _, _, from, port, _, message = event.pull("modem_message")
- print("Message!")
- if message == "vpnlookup" then
- print("User Connected!")
- print("IV: " .. iv)
- local client = from
- m.send(client, 6242, "vpnfound")
- m.send(client, 6242, public.serialize())
- local _, _, from, port, _, noinoi = event.pull("modem_message")
- print("MSG RCVD:" .. noinoi)
- local wpk = data.deserializeKey(noinoi, "ec-public")
- local shared = data.ecdh(private, wpk)
- m.send(client, 6242, iv)
- local online = true
- while (online) do
- print("Message received!")
- local _, _, from, port, _, content = event.pull("modem_message")
- content = data.decrypt(content, shared, newSalt)
- print(content)
- os.sleep(0.01)
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement