Advertisement
programcreator

Turtle: Remote Control Client

Jan 27th, 2015
313
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.67 KB | None | 0 0
  1. modemSide = "right"
  2. modem = peripheral.wrap(modemSide)
  3. modem.open(512)
  4. msgTab = {}
  5. info = {"turtle",os.getComputerID(),gps.locate()}
  6. modem.transmit(65529,57,textutils.serialize(info))
  7. secretPass = "Ehfks87-i"
  8. secretPass2 = "sgxyg&%UI33%^&HS34DH-N"
  9.  
  10.  
  11. function clear()
  12.   term.clear()
  13.   term.setCursorPos(1,1)
  14. end
  15.  
  16. clear()
  17.  
  18. function makeString(l)
  19.         if l < 1 then return nil end -- Check for l < 1
  20.         local s = "" -- Start string
  21.         for i = 1, l do
  22.                 s = s .. string.char(math.random(32, 126)) -- Generate random number from 32 to 126, turn it into character and add to string
  23.         end
  24.         return s -- Return string
  25. end
  26.  
  27. function authentificationServer(port)
  28.     authPass = false
  29.     rndString = tostring(makeString(math.random(8,20)))
  30.     modem.transmit(65529,port,textutils.serialize({"turtle",encrypt.encrypt(rndString,secretPass)}))
  31.     qevent, qside, qch1, qch2, qmsg = os.pullEvent("modem_message")
  32.     qmsgTab = textutils.unserialize(qmsg)
  33.     if encrypt.decrypt(qmsgTab[2],secretPass2) == rndString then
  34.         authPass = true
  35.     end
  36.     return authPass
  37. end
  38.  
  39. function authentificationClient(port)
  40.     qevent, qside, qch1, qch2, qmsg = os.pullEvent("modem_message")
  41.     qmsgTab = textutils.unserialize(qmsg)
  42.     print("msg")
  43.     modem.transmit(65529,57,textutils.serialize({"turtle",encrypt.encrypt(encrypt.decrypt(qmsgTab[2],secretPass),secretPass2)}))
  44. end
  45.  
  46. authentificationClient(57)
  47. clear()
  48.  
  49. while true do
  50.     event, side, ch1, ch2, msg = os.pullEvent("modem_message")
  51.     msgTab = textutils.unserialize(msg)
  52.     if msgTab[1]    == "run" and    msgTab[2]   == os.getComputerID()   then
  53.         --if authentificationServer(57) == true then
  54.             shell.run(msgTab[3])
  55.         --end
  56.     end
  57. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement