Dependencies (these are auto-downloaded upon running the API):
My modified Ring LWE API
Anavrins' ChaCha20 API
Anavrins' PBKDF2/HMAC API
Features:
- Key exchange using Ring LWE
- Fast yet secure ChaCha20 encryption
- Replay attack protection via HMAC
- Authentication via public/private keys generated via Ring LWE
pastebin get tUe94t9J ringnet
Functions:
--something encased in [ ] means it's optional. -- HID = 8-character hexadecimal "handshake ID" -- CID = long hexadecimal "session" or "connection" ID. -- Starts a loop that listens for Ring LWE messages and converts them into events. Needs to be run on server AND client. connectionHandler([client mode]) -- Initiates a handshake with targetID, over frq. Needs connectionHandler open to be any good. -- Auto calculates frequency, which is used for sendData openTunnel(targetHID, frequency) -- Sends encrypted data to targetID, over frq -- A handshake must have already been initiated for this! sendData(targetCID, data) -- Opens a channel on the API's modem object openChannel(channel)
Events:
-- Occurs when handshake is finished
local ev, cid_from = os.pullEvent("tunnel_finish")
-- Occurs upon receiving encrypted data.
local ev, cid_from, data, distance = os.pullEvent("secure_receive")
Edited by Quartz101, 09 June 2018 - 10:28 PM.












