This is a read-only snapshot of the ComputerCraft forums, taken in April 2020.
darkrising's profile picture

Dark programs: Base security / Remote login / Keycards / Server & multiple clients

Started by darkrising, 22 September 2012 - 02:15 AM
darkrising #1
Posted 22 September 2012 - 04:15 AM
My programs are on github!

Mostly updated to computercraft 1.6+ , there may be a few bugs!

Darkprograms are a collection of programs written for base security. Features include keycards and remote passwords (for now!)
I recently did a major rewrite of all the programs but this functionality is implemented.

Features / Recent Changes:
  • All programs use stealth updates
  • Cardgen program is now built into the server!
  • Server has a more refined gui
  • Encryption is available for bundled cables (and rednet! - Encryption is always one
  • Communication is now done with tables rather than splits and joins (a lot more efficient)
Latest changes:
  • Security of communications has been improved
  • Disk ID gui now is security level filtered
  • Security levels now cascade with level 1 being the highest. (Meaning anyone with security level 1 clearance can open any level below them, 2,3,4,5,6,7,8 etc etc)
  • Client now has a much improved installer interface
  • Server has had a few changes too, pressing "l" (as in Lama) will bring up the security level switching interface for easy security level switching!
  • The client is now security enforced again, no more [Ctrl] + T
  • Various bug fixes and additions
How this works
A basic setup consists of a server and client computer
first you add the client computers id to the servers pc whitelist so that they can communicate, you then add a user to the servers user list
Type the user and password into the client computer and it will send to the information to the server for inspection, granting or denying access

How to download!
There is actually 2 ways of doing this, either grab my installer from pastebin just type: pastebin get Cf3NtVMi installer
Or you can grab my more up to date package downloader: pastebin get N22T449A dr
And then run the installer by typing: installer or dr

Note: dr stands for Dark Retriever, my more advanced package download system.

Tutorial
SpoilerHello and welcome to Dark Programs 101!
This tutorial is a step by step guide on how to setup and use each program.

Http: is it enabled?
To download programs from pastebin you need http enabled. To do this navigate to your .minecraft/config folder, inside this you will find a file called ComputerCraft.cfg open that up with a text editor such as notepad and navigate to this line:
[b]enableapi_http {[/b]
[b]   # Enable the "http" API on Computers[/b]
[b]   general=false[/b]
[b]}[/b]
If "general = false" change it to "general = true" This will enable http on your in-game computers.

Note: if you are playing on a server this option might already be enabled, if its not; ask the server owner about it.

Download instructions:
To download my programs you can either use the Dark Retriever or Dark Installer, for the less ComputerCraft savvy among you I would suggest getting the Dark Installer as it can generate a startup script for you. To do this type 'pastebin get Cf3NtVMi install' into the computer (without quotation marks) and run that program by typing 'install'. You will now get the option of downloading the server or the client.

Note: My programs work best on advanced computers!

Server
​This program is basically the core of my programs, it has a database and communication functions that store information and communicate with the client computers. Find a safe place in your base, preferably behind a secret door or hidden in a wall and use the above instructions to download the server program. When the installer has generated a startup script and restarted the computer you should be prompted with the server setup screen. It will ask you for the security level amount, type a number in here. For a simple setup of just one level, just type in 1 and press enter (you can change this later)

Next you will want to setup a user account and promote it to admin, click or press the option "User manager" and then hit "User manager" again on the next window. You will now be presented with the list user interface. At the moment it will be blank but users for the selected level will appear here. We need to add a user so hit 1 on the keyboard or click Add at the bottom of the screen. Follow the instructions to add the user. After you have done this your new user account will be on the list! People's logins for the different areas will appear here. Now we must promote your user account to admin so we can add a client computer to the system. Hit 3 on your keyboard or click back at the bottom and lets go into the admin menu! (Again hit 3 or press admin manager to get there) You will now be presented with a similar interface to the last one, but using this UI we can promote a user to admin. So hit 1 or press promote and type in your username! If you did this right your username will be now shown on the list. Admin accounts can login to any security level and can also be used to add client computers to the server. Experiment with the menus and adding and removing users to get used to the interface! But for now we must setup our first client computer.


Client
-Tutorial coming soon-

Screenshots
SpoilerNew ones coming soon.
Edited on 20 April 2014 - 02:22 PM
Pwrocks5648 #2
Posted 29 September 2012 - 01:11 AM
Um Sorry im not very good at coding so this may seem like a noob question but i set it up but no matter what i do the computer just pops the card out with my sounds even though i tried every programname and program text i can think of, Please Help
Edit: oh wait sorry i was silly and didnt see the cardgen program
Edit2: sorry to bother you again but when i tried using cardgen to genorate a card then after it says "creating card….." then it says "bios:219:File not found" without the "" ofc but i think you missed some of the cardgen files in the download
Edit3: sorry i didnt read that the cardgen wasnt finished sorry, but what do you put on the card for the program to accept though? thats what i wounder and i cant find which lines check the disk for authentication
Edit4:still regarding the stuff in edit3 but also do i have to use a relay before the computers can connect?
darkrising #3
Posted 03 October 2012 - 08:01 PM
Um Sorry im not very good at coding so this may seem like a noob question but i set it up but no matter what i do the computer just pops the card out with my sounds even though i tried every programname and program text i can think of, Please Help
Edit: oh wait sorry i was silly and didnt see the cardgen program
Edit2: sorry to bother you again but when i tried using cardgen to genorate a card then after it says "creating card….." then it says "bios:219:File not found" without the "" ofc but i think you missed some of the cardgen files in the download
Edit3: sorry i didnt read that the cardgen wasnt finished sorry, but what do you put on the card for the program to accept though? thats what i wounder and i cant find which lines check the disk for authentication
Edit4:still regarding the stuff in edit3 but also do i have to use a relay before the computers can connect?

Hi there :(/>/> the cardgen program is a bit of a work in progress so all it does at the moment is write a file to the disk called "card" with a number ID. (At the moment it just writes "1" "2" "3" etc)

The part that writes the file is:

function idsend(level)
  dofile("store")
  local numbea = numbea + 1
  levelchooser(level, numbea)
  local file = io.open("store", "w")
		file:write("numbea = "..numbea)
		file:close()
  return numbea
end
If it is throwing the error "file not found" just create a file on the computer called "store" as a temporary fix.
This is where the number that is put onto the disk is stored. I'm currently trying to work on a better system for the cardgen as "1, 2, 3, 4, 5" etc is not the most secure :D/>/>

Regarding the relay, you only need one if the client computer is too far from the server to communicate, its like a bridge between them as rednet only has a limited range.

Edit: I forgot to add, the client program (the one that waits for the disk) sends the id of the card from the file "card" on the disk to the server which then checks its ID array (sort of acting as a database) for the ID of the card, so all the cardgen program does is send a request to the server which then adds the ID to an array and stores it.
So if you add an ID to the server, say for example "djhannz" (it doesn't have to be a number) on the keycard inside a file called "card" you would have "djhannz" (without quotes)
I hope this explains it a bit better.

If you require anymore assistance don't hesitate to ask B)/>/>

Edit: information here may not apply to new programs
darkrising #4
Posted 17 October 2012 - 11:27 PM
Edit: Added up there :P/>/>
esteves25565 #5
Posted 19 October 2012 - 04:34 PM
HI! My cardgen has a problem. when it ask the security level i put A.
when he ask a name, i put my name
but when i insert the disk and press enter the computer sad: bios:219: File not found
Please HELP!!!
esteves25565 #6
Posted 19 October 2012 - 04:36 PM
HI! My cardgen has a problem. when it ask the security level i put A.
when he ask a name, i put my name
but when i insert the disk and press enter the computer sad: bios:219: File not found
Please HELP!!!
Forgot :P/>/>
darkrising #7
Posted 19 October 2012 - 07:52 PM
HI! My cardgen has a problem. when it ask the security level i put A.
when he ask a name, i put my name
but when i insert the disk and press enter the computer sad: bios:219: File not found
Please HELP!!!
Forgot :P/>/>

Yeah, i'm currently rewriting all of the programs, there will be a better cardgen program soon :)/>/>
Pwrocks5648 #8
Posted 25 October 2012 - 09:59 AM
Hey dose this version opnly work of 1.45?
darkrising #9
Posted 25 October 2012 - 02:09 PM
Hey dose this version opnly work of 1.45?

It was made using 1.43 but should be back compatible as far back as when rednet was added.
Juul #10
Posted 25 October 2012 - 07:37 PM
I'm getting an error:
cardgen:75: attempt to call nil
I've installed the cardgen correctly and when running the super PC I inserted a floppy disk, then it gave this error.
I've done everything needed, added the correct ID of my server, added the SPC as an SPC on the server, but it doesn't really feel like working.
Can you help with this or is this a bug which you are fixing?
darkrising #11
Posted 25 October 2012 - 10:31 PM
I'm getting an error:
cardgen:75: attempt to call nil
I've installed the cardgen correctly and when running the super PC I inserted a floppy disk, then it gave this error.
I've done everything needed, added the correct ID of my server, added the SPC as an SPC on the server, but it doesn't really feel like working.
Can you help with this or is this a bug which you are fixing?

Okay, thats odd, I'll look into it.

Edit: I have been unable to recreate the problem

Lines 74 and 75 are:

event, DiskSide = os.pullEvent("disk")
ID = tostring(disk.getDiskID(DiskSide)) 

It basically just fetches the disk's id when placed in the disk drive.

Can you tell me the version of computercraft you are running?
Pwrocks5648 #12
Posted 26 October 2012 - 07:46 AM
Hey dark what ever happened to the teir thing? or are you gonna add it in in a later version? also what about an autoupdating system for people with http api enabled?
darkrising #13
Posted 26 October 2012 - 01:53 PM
Hey dark what ever happened to the teir thing? or are you gonna add it in in a later version? also what about an autoupdating system for people with http api enabled?

Yes I'm working on a "one server" solution for security levels, the server program is getting more and more complex each day it seems :D/>/> For now you could just have n amount of servers with clients to each server, for example server A, B, C, D :)/>/>

Regarding an auto updating system, I'm also working on that too, I'm wondering if i should build it directly into the programs or just have a update disk. I have a few ideas for that :D/>/>

Edit: All programs now have an inbuilt auto update feature using pastebin!
Juul #14
Posted 26 October 2012 - 09:59 PM
I'm getting an error:
cardgen:75: attempt to call nil
I've installed the cardgen correctly and when running the super PC I inserted a floppy disk, then it gave this error.
I've done everything needed, added the correct ID of my server, added the SPC as an SPC on the server, but it doesn't really feel like working.
Can you help with this or is this a bug which you are fixing?

Okay, thats odd, I'll look into it.

Edit: I have been unable to recreate the problem

Lines 74 and 75 are:

event, DiskSide = os.pullEvent("disk")
ID = tostring(disk.getDiskID(DiskSide))

It basically just fetches the disk's id when placed in the disk drive.

Can you tell me the version of computercraft you are running?

I'm running it on Tekkit which should auto update it, but I see now that it runs version 1.3.3, which is pretty old i think. I guess thats where the problem comes from. I'll have to wait for tekkit to upgrade then.
darkrising #15
Posted 26 October 2012 - 10:28 PM
Edit: Quoteception!
Spoiler
I'm getting an error:
cardgen:75: attempt to call nil
I've installed the cardgen correctly and when running the super PC I inserted a floppy disk, then it gave this error.
I've done everything needed, added the correct ID of my server, added the SPC as an SPC on the server, but it doesn't really feel like working.
Can you help with this or is this a bug which you are fixing?

Okay, thats odd, I'll look into it.

Edit: I have been unable to recreate the problem

Lines 74 and 75 are:

event, DiskSide = os.pullEvent("disk")
ID = tostring(disk.getDiskID(DiskSide))

It basically just fetches the disk's id when placed in the disk drive.

Can you tell me the version of computercraft you are running?

I'm running it on Tekkit which should auto update it, but I see now that it runs version 1.3.3, which is pretty old i think. I guess thats where the problem comes from. I'll have to wait for tekkit to upgrade then.

Aha I see, disk.getID() was added in cc 1.4, if you want I could change a few things so that it would work for cc 1.3.3

edit: just spent 10 mins changing the cardgen and client so they read a file instead of the disk id, as i don't have cc 1.3.3 I cant test it but I'm sure it will work :D/>/>

Cardgen for cc 1.3.3
Spoiler

--Title: Dark Card Generator
--Version: Ver. 2.1 (cc 1.3.3 port)
--Author: Darkrising (minecraft name djhannz)
--Platform: ComputerCraft Lua Virtual Machine
--
term.clear()
term.setCursorPos(1,1)
x, y = term.getSize()
-- cc 1.3.3
function MakeID()
  if fs.exists("IDdb") == false then
    file = io.open("IDdb","w")
    file:write("IDdb = 0")
    file:close()
  end
  dofile("IDdb")  
  IDdb = IDdb + 1
  file = io.open("IDdb","w")
  file:write("IDdb = "..IDdb)
  file:close()
  return IDdb
end

function LOG(Text)
  local Time = textutils.formatTime(os.time(), true)
  local Log
  Log = fs.open("Dark_dglog", "a")
  Log.writeLine("ID:"..ID.." "..Time..Text)
  Log.close()
  print(Text)
end
function findModem() -- finds and opens attached modem
  for _,s in ipairs(rs.getSides()) do
    if peripheral.isPresent(s) and peripheral.getType(s) == "modem" then
      rednet.open(s)
      return true
    end
  end
  return false
end
function screenwrite(text, line, nextline)
  local l = string.len(text)
  local nx = (x/2 - l/2)
  term.setCursorPos(nx,line)
  term.write(text)
  if nextline then
    term.setCursorPos(1, nextline)
  end
end
function lineacross(text, line, nextline)
  term.setCursorPos(1,line)
  for i=1,x do
    term.setCursorPos(i,line)
    term.write(text)
  end

  if nextline then
    term.setCursorPos(1, nextline)
  end
end
function Header(text)
  lineacross("-", 1)
  screenwrite(text, 2)
  lineacross("-", 3, 4)
end
if fs.exists("DarkDG_conf") == false then
  term.clear()
  term.setCursorPos(1,1)
  Header("Dark Card Generator Setup")
  write("Please type the server / relay id: ")
  server = io.read()

  local file = io.open("DarkDG_conf","w")
  file:write("server = "..server)
  file:close()

  print("nsetup complete! Restarting...")
  sleep(1.5)
  os.reboot()
  dofile("DarkDG_conf")
else
  dofile("DarkDG_conf")
end

term.clear()
term.setCursorPos(1,1)
if not findModem() then print("Please attach Modem") return exit end -- checks for modem
print("running cardgen.")

while true do
  event, DiskSide = os.pullEvent("disk")
  if fs.exists("/disk/id") == false then
    ID = MakeID()
    file = io.open("/disk/id","w")
    file:write("ID = "..ID)
    file:close()
    rednet.send(server, "ADDID#"..ID)
    LOG("ID Added")
  elseif fs.exists("/disk/id") == true then
    dofile("/disk/id")
    rednet.send(server, "DELETEID#"..ID)
    LOG("ID Deleted")
    fs.delete("/disk/id")
  end
  disk.eject(DiskSide)  
end

Client for cc 1.3.3
Spoiler

--Title: Dark Client
--Version: Ver. 2.6 (cc 1.3.3 Port)
--Author: Darkrising (minecraft name djhannz)
--Platform: ComputerCraft Lua Virtual Machine
--
-- Global variables
x, y = term.getSize()
-- functions

function findModem() -- finds and opens attached modem
  for _,s in ipairs(rs.getSides()) do
    if peripheral.isPresent(s) and peripheral.getType(s) == "modem" then
      rednet.open(s)
      return true
    end
  end
  return false
end
-- Screen related functions
function screenwrite(text, line, nextline)
  local l = string.len(text)
  local nx = (x/2 - l/2)
  term.setCursorPos(nx,line)
  term.write(text)
  if nextline then
    term.setCursorPos(1, nextline)
  end
end
function lineacross(text, line, nextline)
  term.setCursorPos(1,line)
  for i=1,x do
    term.setCursorPos(i,line)
    term.write(text)
  end

  if nextline then
    term.setCursorPos(1, nextline)
  end
end
function Header(text)
  lineacross("-", 1)
  screenwrite(text, 2)
  lineacross("-", 3, 4)
end
-- Main functions
function keycard_mainProgram()
  while true do
    event, eventinfo, extrainfo = os.pullEvent("disk") --waiting for a disk.
    if ((disk.hasData(eventinfo) == true) and (fs.exists("/disk/id") == true)) then
      --dID = tostring(disk.getDiskID(eventinfo)) -- Get disk's id      
      dofile("/disk/id")
      rednet.send(server, "QUERY#"..ID) -- send disk's id to server
      S, M = rednet.receive(2) -- get servers response
      if M == "#GRANTED#" then -- if accepted opens door
        disk.eject(eventinfo)
        rs.setOutput(doorside, true)
        sleep(2.5)
        rs.setOutput(doorside, false)
      end
      disk.eject(eventinfo)
    else
      disk.eject(eventinfo)
    end
  end
end
function userandpassword_mainProgram()
  while true do
    term.clear() term.setCursorPos(1,1)
    Header(terminalLabel)
    print("") print("")
    write("User: ") status, User = pcall(read)
    write("Password: ") status, password = pcall(read, "*")
    if ((User ~= nil) or (password ~= nil)) then
      rednet.send(server, "PASSQUERY#"..User.."#"..password)
      ID, MES = rednet.receive(2)
      if MES == nil then
      print("nNo response from server!")
      sleep(2)
      else
        if MES == "#GRANTED#" then
          screenwrite("Correct", 4, 4)
          rs.setOutput(doorside, true)
          sleep(2.5)
          rs.setOutput(doorside, false)
        else
          print("")
          screenwrite("Incorrect", 4, 4)
          sleep(1)
        end
      end
    end
  end
end

if not findModem() then print("Please attach Modem") return exit end -- checks for modem
if fs.exists("DarkC_conf") == false then
  term.clear()
  term.setCursorPos(1,1)
  Header("Dark Client Setup")
  write("Please type the server / relay id: ")
  ServerID = io.read()
  write("Which side do I output redstone? (Door side?) ")
  DoorSide = io.read()
  print("What is the 'label' of this terminal? (eg. Workshop, smelting room etc)" )
  TLabel = io.read()  

  local file = io.open("DarkC_conf","w")
  file:write("server = "..ServerID.." doorside = "..[["]]..DoorSide..[["]].." terminalLabel = "..[["]]..TLabel..[["]])
  file:close()

  print("nsetup complete! Restarting...")
  sleep(1.5)
  os.reboot()
  dofile("DarkC_conf")
else
  dofile("DarkC_conf")
end
parallel.waitForAll(keycard_mainProgram, userandpassword_mainProgram) -- runs keycard function and user function at the same time
ibitmyeye3 #16
Posted 31 October 2012 - 01:05 AM
I'm getting a no response from server while trying to log in with my client. I've added myself to the users…
DMACNZ #17
Posted 31 October 2012 - 05:25 AM
could you maybe do a tutorial please
darkrising #18
Posted 01 November 2012 - 01:23 AM
I'm getting a no response from server while trying to log in with my client. I've added myself to the users…

Have you tried updating the server? I release minor bug fixes quite frequently so you might have a bugged version.
Edit: i just re-read that, have you added the computer id to the server's pc whitelist?

could you maybe do a tutorial please

Yes, I'm planning on writing one to explain everything, I would do a youtube video but my upload speed is terrible.

Edit: I wrote a tutorial, its in a spoiler half way down the post
darkrising #19
Posted 01 December 2012 - 11:10 AM
I have updated the server file to version 3.0 this includes my new api that will download automagicly if the http api is enabled.

Not much has changed front end but I'm planning a lot more features for the server / client / cardgen programs.

The update feature has been changed slightly to allow for a more diverse system, the new server program uses the new update system!

more updates soon :)/>
BeastCoder123 #20
Posted 04 December 2012 - 05:01 AM
Is it possible to use this just like a login database?

I want to use your program, but i cant really figure out why the client keeps resseting! (Back to the login screen)

I tried for 6 hours to figure it out with a friend of mine and we couldnt. :(/>

Please help
darkrising #21
Posted 04 December 2012 - 07:19 AM
Is it possible to use this just like a login database?

I want to use your program, but i cant really figure out why the client keeps resseting! (Back to the login screen)

I tried for 6 hours to figure it out with a friend of mine and we couldnt. :(/>/>

Please help

The "client" program is just for base security (for example opening a door), its not written for terminal security (yet) but that is something I am working on.
darkrising #22
Posted 07 January 2013 - 01:03 PM
I have moved my programs to github with a shiney new update feature! I'm working on remote logins and a whole new gui interface for them, Also in the works is remote directory sharing and other crazy things!
nateracecar5 #23
Posted 07 January 2013 - 04:14 PM
I have moved all my programs to github!

Features / Recent Changes:
  • Moved to github!
  • All programs use a completely new update system (stealth updates)
How this works:
A basic setup consists of a server and client computer
first you add the client computers id to the servers pc whitelist so that they can communicate, you then add a user to the servers user list
Type the user and password into the client computer and it will send to the information to the server for inspection, granting or denying access

For a more advanced setup you need server, client and cardgen computers
Do the same as above but add the cardgen computers id to the servers super pc list
pop a disk into the cardgen computers disk drive and voila its added to the servers id list
you can now use the disk as a security card

Tutorial
SpoilerHello and welcome to Dark Programs 101!
This tutorial is a step by step guide on how to setup and use each program.

Http: is it enabled?
To download programs from pastebin you need http enabled. To do this navigate to your .minecraft/config folder, inside this you will find a file called ComputerCraft.cfg open that up with a text editor such as notepad and navigate to this line:
[b]enableapi_http {[/b]
[b]   # Enable the "http" API on Computers[/b]
[b]   general=false[/b]
[b]}[/b]
If "general = false" change it to "general = true" This will enable http on your in-game computers.

Note: if you are playing on a server this option might already be enabled, if its not; ask the server owner about it.

Download instructions:
Attach a disk drive to your http enabled pc with a blank floppy in, open your in-game pc and type "pastebin get unzMGFhn downloader" This will download the file from pastebin and save it as a program called "downloader". Next just run the downloader program which will put all the programs onto the disk.

Your installation floppy disk is ready! All you have to do now is place it in a disk drive, reboot the computer and hit the number of the program you want to install.

Computer IDs
Each in-game computer has a unique id, you can find this by typing "id" into the terminal or by placing running the installer disk. These are very important as they are used by programs that use rednet to communicate. Make sure to write down the id of the computer as this is very important for the setup of Dark Programs.

Dark server
The server is the core functionality of all the dark programs, it is used to store disk ids, pc white lists, usernames and passwords. Make sure you write down the ID of the server as it is very important. After installing the server you are presented with a screen saying:
"Dark server running, press 'o' for control panel"
That is "o" as in orange (this might be changed in future versions)

When you press "o" the server is stopped and the menu screen appears (please remember the server is stopped whilst the menu screen is running) to leave the menu and run the server press "5" on your keyboard.

Let's do a tour of the GUI!
There are a few options here, ID management, User management, Pc whitelist and Super Pc list. To start with lets add a user, just press "2" on your keyboard to go to the User management sub menu.
The sub menu quite self explanatory, to add a user press "1", type the user's name and press enter, then type the user's password and press enter. Your new user should appear on the screen, and is now added to the list. To delete a user press "2" and type the user's name. Use keys 4 and 5 change the current page. Amount of users and pages are displayed at the bottom right of the screen. To leave the sub menu press "3".

Note: ID managment refers to disk ids rather than computer ids.

Server white lists are used to allow computers to communicate with the server. The server has two white lists, pc and spc (super pc). Client computers and relays should be added to the pc white list where as card generator computers should be added to the super pc white list. This is important to remember for the rest of the tutorial.

Dark Client
The client is the 2nd most important program in the list as it is need to open doors using keycard or username and passwords. To start with place your computer next to a door with a disk drive and modem attached. Place in your install disk and write down the Clients ID. When you have installed the "client" program onto the computer it will ask for the server ID , type this in and press enter, the setup will then ask you for the side you wish to output redstone, this will be the door's side (top, bottom, left, right, front, back are the options). Finally the setup will ask for the room's label, for example "Smelting room", type in anything you like and press enter. The computer will now restart and now will ask for your username and password to open the door. (you can also put in keycards to open the door on this screen)
If you type in your username and password that you entered into the server now the client will hang and then display "no response from server". You should now go to your server and add the client pc's ID to the pc white list. Now when you type in the user and password, the door should open!
Note: remember rednet has a distance of 60 blocks, your pc could be out of range!


Dark Cardgen
Install the cardgen program on a computer near your server (Remeber to write down the computer's id!) it needs a disk drive and a modem to function. When you have installed the cardgen program it will -like last time- ask for the server's id, type this in and press enter. The cardgen program will now run. Go to your server and add the cardgen computer's id to the "super pc list". This will allow the card gen program to add disk id's into the server's database. All you have to do now is place any disk into the cardgen computers disk drive, it will be spat out. Look at your server it should say that the disk has been added! If you place the disk back into the cardgen computer's disk drive, the disk will be removed from the server's id list. When a disk is on the server's id list it can open any door the username and password can. Place the disk in the client pc's drive and the door should open.
Note: Any disk can be used as a key card


Dark Relay
The relay is only needed if the client computer is out of range of the server. It acts as a bridge betwen the two. All you have to do is setup the relay with the server computer's id. Instead of typing in the server's id on the client type in the relay computer's id. It will forward any message it receives to the server. Multiple relays can be used to make a very large bridge between the client and server computers, they are however a bit insecure and are not recommended for cardgen computers.

Screenshots
Spoiler





One thing to add: more functions to the client. Other than that, enginious programs!
micmou #24
Posted 13 January 2013 - 12:27 PM
I love your program but if i may be so bold.
The program currently does not work on Minecraft 1.2.5.
And i was hoping that you could add support for it.
Also if i may suggest a unique card identifier.
Like where a computer needs a specific level. maybe a base and the main entrance is accesible by level 1 but say the armory assuming there is one is only accesible by lvl 10
darkrising #25
Posted 15 January 2013 - 11:55 AM
I love your program but if i may be so bold.
The program currently does not work on Minecraft 1.2.5.
And i was hoping that you could add support for it.
Also if i may suggest a unique card identifier.
Like where a computer needs a specific level. maybe a base and the main entrance is accesible by level 1 but say the armory assuming there is one is only accesible by lvl 10

Okay, ill take a look into it if you tell me your version of computercraft :)/>

As for security levels, it is on my to-do list! :)/>

@nateracecar5: I am open to suggestions :D/>
micmou #26
Posted 16 January 2013 - 02:16 AM
It is cc 1.41 because i only really play tekkit classic but even after manually downloading them from pastebin they do not work:(
also on your website i signed up and my email provider will not recieve your email for some reason if you think you could help i signed up as
micmou

EDIT: also the downloader doesnt work and it is not something i am doing because other programs work fine
darkrising #27
Posted 16 January 2013 - 03:51 AM
It is cc 1.41 because i only really play tekkit classic but even after manually downloading them from pastebin they do not work:(
also on your website i signed up and my email provider will not recieve your email for some reason if you think you could help i signed up as
micmou

EDIT: also the downloader doesnt work and it is not something i am doing because other programs work fine

Okay, I think that version of CC is missing an api function that was added in later on, I'll have to look into a possible fix for that!

As for the downloader, if thats the pastebin one it is out of date and I'm working on a new and improved github one. (also make sure http is enabled in the cc config)

Regarding the website, if you mean my server's forum I can manually go in and activate your account if you wish, a lot of people seem to have the same problem, I think some email hosts block the email for some reason, (also on my to-do list hah!)

Edit: fixed the issue with CC 1.41 (I hope) I don't have it so I can't test it, let me know how it goes :)/>

Edit 2: I made a downloader, its on gihub :)/>
micmou #28
Posted 16 January 2013 - 08:36 AM
I am at school will test when i get home but hmm if you could add security levels also one more request maybe a strictly keycard client or maybe an option to chose either keycard password or both. I tried messing with it to see if i could add security levels but sadly i have no idea what some of your functions do and based on the way the database stores keycards you would have to add a greater to level with a marker or have a search function for a specific string

Edit: also if you could activate me that would be great
darkrising #29
Posted 16 January 2013 - 09:48 AM
I am at school will test when i get home but hmm if you could add security levels also one more request maybe a strictly keycard client or maybe an option to chose either keycard password or both. I tried messing with it to see if i could add security levels but sadly i have no idea what some of your functions do and based on the way the database stores keycards you would have to add a greater to level with a marker or have a search function for a specific string Edit: also if you could activate me that would be great

Basicly the database is just stored arrays in a hidden folder, take a look at my api, it sheds more light on it!

As for my forum I couldnt find anyone by the name of "micmou" however I did find a user called "mimcou", (typo?)

I have manually activated your account and if you want, I could change your username :)/>

As for security levels, I am working on it, I just have to find the time to do it :D/>
micmou #30
Posted 16 January 2013 - 11:46 AM
Hmm i would still like to see maybe a keycard only client or the option to choose both or one or the other
maybe a quick fix for maybe a option is to have the password come up by pressing a key like hmm "P"
security levels would be awesome i dont think it would be to hard.
All you need to do is have a pin set by user on card for like a granted access but that really isnt security levels is it hmm
I guess that idea wouldnt work as it would have to be a reasonable range of numbers like 1-10
so hmm
darkrising #31
Posted 17 January 2013 - 01:28 AM
Hmm i would still like to see maybe a keycard only client or the option to choose both or one or the other
maybe a quick fix for maybe a option is to have the password come up by pressing a key like hmm "P"
security levels would be awesome i dont think it would be to hard.
All you need to do is have a pin set by user on card for like a granted access but that really isnt security levels is it hmm
I guess that idea wouldnt work as it would have to be a reasonable range of numbers like 1-10
so hmm

Or I could make a new table for security levels and have it sent with the request from the client, the client "type" sounds like a cool idea, I'll implement that when I get a chance. :)/>
micmou #32
Posted 18 January 2013 - 05:49 AM
Hmm well i will patiently wait when i am un grounded i will make a mod pack for your server so all people have to do is load it as a custom in the tekkit launchet
twitch204 #33
Posted 20 January 2013 - 10:06 AM
Hi,
I have tryed to use your installer by adding it to one of my computers. I keep getting an error about not an http url. Sorry, im new to CC and trying to learn it :)/>

Code I am useing

–Title: Dark Card Generator
Version = 3.1
–Author: Darkrising (minecraft name djhannz)
–Platform: ComputerCraft Lua Virtual Machine
AutoUpdate = true
if fs.exists("dark") == false then – load darkAPI
print("Missing DarkAPI")
sleep(2)
print("Attempting to download…")
getGit = http.get("https://github.com/darkrising/darkprograms/raw/darkprograms/darksecurity/dark")
getGit = getGit.readAll()
file = fs.open("dark", "w")
file.write(getGit)
file.close()
os.reboot()
else
os.loadAPI("dark")
end
function Header(text)
dark.printL("-", 1)
dark.printC(text, 2)
dark.printL("-", 3, 4)
end
if fs.exists("DarkDG_conf") == false then
term.clear()
term.setCursorPos(1,1)
Header("Dark Card Generator Setup")
write("Please type the server / relay id: ")
server = io.read()

local file = io.open("DarkDG_conf","w")
file:write("server = "..server)
file:close()

print("\nsetup complete! Restarting…")
sleep(1.5)
os.reboot()
dofile("DarkDG_conf")
else
dofile("DarkDG_conf")
end
term.clear() term.setCursorPos(1,1)
S = dark.findPeripheral("modem")
if S == false then
print("Please attach Modem")
return exit
else
rednet.open(S)
end
if AutoUpdate == true then
if ((dark.gitUpdate("cardgen", shell.getRunningProgram(), Version) == true) or (dark.gitUpdate("dark", "dark",

dark.DARKversion) == true)) then
os.reboot()
end
end
print("running cardgen.")
while true do
event, DiskSide = os.pullEvent("disk")
ID = tostring(disk.getDiskID(DiskSide))
rednet.send(server, "QUERY#"..ID)
S, M = rednet.receive(2)

if M == "#DENIED#" then
rednet.send(server, "ADDID#"..ID)
print("ID Added")
elseif M == "#GRANTED#" then
rednet.send(server, "DELETEID#"..ID)
print("ID Deleted")
else
print("No response from server.")
end
disk.eject(DiskSide)
end
twitch204 #34
Posted 20 January 2013 - 10:09 AM
Sorry full error code is

bios:333: Not an Http URL
micmou #35
Posted 20 January 2013 - 05:47 PM
Hmm hope you get time soon dark i am patiently waiting. i believe he has a downloader and what version of CC do you have i have been running over his code might not be able to help fully
twitch204 #36
Posted 21 January 2013 - 03:25 PM
Hi,
I am using CC 1.3 on Tekkit Classic. I found the downloader in the dark folders on githhub. Its using minecraft 1.2.5
micmou #37
Posted 22 January 2013 - 08:03 AM
Hmm have you tried his updated version for the fix Hmm upadte tekkit it should be 1.41 are you on tekkit 3.1.3
twitch204 #38
Posted 22 January 2013 - 08:58 AM
The launcher says 1.1.1.0
Madx #39
Posted 24 January 2013 - 02:38 AM
Hi Dark

Is It possible that you can comment in your code it would help alot in understanding the code, I have some questions where do you get the Gitget function from cant find it in the dark API and cant find getGit.readAll() either is this a build in function of the http api for cc ? or is it your doing ?
your programs are awsome and I would like to learn more about programming things like this and your code is a great help just needing some comments in the code :P/>
darkrising #40
Posted 25 January 2013 - 08:46 AM
Sorry full error code is

bios:333: Not an Http URL
Reason for that is the url is https which wasnt added into cc until version 1.4 (source)
You change the "autoupdate" to false and manually download the api (called dark) along with the program of choice, that would be a temp fix for now.


Hi Dark

Is It possible that you can comment in your code it would help alot in understanding the code, I have some questions where do you get the Gitget function from cant find it in the dark API and cant find getGit.readAll() either is this a build in function of the http api for cc ? or is it your doing ?
your programs are awsome and I would like to learn more about programming things like this and your code is a great help just needing some comments in the code :P/>

Yes, I will think I will add comments to the code.

getGit is the variable I assigned for the fs.open() function (lookup the fs api for more on that)

I like to help people to learn, so if you do have anymore questions about my code don't hesitate to ask. :)/>

Edit: sorry I didn't reply sooner, I've had a busy week with my new job
Also my English is terrible as I write this! haha (I blame lack of sleep)
darkrising #41
Posted 12 February 2013 - 03:20 AM
Yes, its finally here! The update to the client and server!

This will be the first of many more coming soon!
coryb2007 #42
Posted 14 February 2013 - 09:27 AM
I love this set of utilities, they have been extremely useful. I hope I can make a couple suggestions for addons I think would be great with this. You should implement a server that will keep security logs if you want to you is such as "USER entered LOCATION at TIME" with the words being in caps would obviously be a variable. And then of course a way to remotely read the logs on another computer if that computer has the access. Of course this would mean you would need to tie in location with the computer id and the disk id with a username. I cannot wait for the next update!
darkrising #43
Posted 15 February 2013 - 10:52 AM
I love this set of utilities, they have been extremely useful. I hope I can make a couple suggestions for addons I think would be great with this. You should implement a server that will keep security logs if you want to you is such as "USER entered LOCATION at TIME" with the words being in caps would obviously be a variable. And then of course a way to remotely read the logs on another computer if that computer has the access. Of course this would mean you would need to tie in location with the computer id and the disk id with a username. I cannot wait for the next update!

Thanks very much, I appreciate feedback! :)/>
I did have a logging system before but removed it due to various reasons that I can't remember.

I could implement this at some point in the near future, I have big plans for the admin side of things!
coryb2007 #44
Posted 25 February 2013 - 11:17 AM
Thanks very much, I appreciate feedback! :)/>
I did have a logging system before but removed it due to various reasons that I can't remember.

I could implement this at some point in the near future, I have big plans for the admin side of things!
I hope so, this program has been great, I manually tied it in with a logging server I use from another program where it stores the logs on a floppy and every now and then I can run a report of those logs. Have a city going and I'm the security officer so I have to make sure no one is coming in that shouldn't be and it has been a major help, thanks for the programs, I look forward to the updates.
RustikGaming #45
Posted 16 April 2013 - 03:35 AM
@DarkRising I have submitted a pull request on the Github repository with a few changes that I think you may like.
billbertking1 #46
Posted 19 April 2013 - 02:38 AM
What kind of discs does this take? Or is it regular floppy? It's also not letting me do keygen so with the disks :(/>

All it's doing is:
darkrising #47
Posted 20 April 2013 - 11:24 AM
What kind of discs does this take? Or is it regular floppy? It's also not letting me do keygen so with the disks :(/>

All it's doing is:..

It should just take regular floppies, what version of CC are you running?
billbertking1 #48
Posted 21 April 2013 - 06:55 AM
What kind of discs does this take? Or is it regular floppy? It's also not letting me do keygen so with the disks :(/>

All it's doing is:..

It should just take regular floppies, what version of CC are you running?

I was doing it FTB Mindcrack, therefore I'm not sure. I'm trying to do it in the latest version of minecraft on the reg. launcher, but FML isn't loading right… I think I have to delete the 1.4.7 folders in .minecraft before trying again. It's not launching right…
darkrising #49
Posted 01 May 2013 - 03:36 AM
it was actually down to an api change in cc 1.5, but as said before we lost our posts, I have updated the server and client programs to a more shiny interface and they have a lot more features too!
darkrising #50
Posted 01 May 2013 - 03:39 AM
I love this set of utilities, they have been extremely useful. I hope I can make a couple suggestions for addons I think would be great with this. You should implement a server that will keep security logs if you want to you is such as "USER entered LOCATION at TIME" with the words being in caps would obviously be a variable. And then of course a way to remotely read the logs on another computer if that computer has the access. Of course this would mean you would need to tie in location with the computer id and the disk id with a username. I cannot wait for the next update!

This will be implemented in the next few versions!
darkrising #51
Posted 01 May 2013 - 03:40 AM
-derp double post-
Tigsen #52
Posted 05 May 2013 - 07:07 PM
Loved it and decided to install on my new server, but it doesn't create the masterdb so just get errors when trying to use it
darkrising #53
Posted 06 May 2013 - 05:42 PM
Loved it and decided to install on my new server, but it doesn't create the masterdb so just get errors when trying to use it

The masterdb is hidden so its actually saved as .masterdb what type of errors are you getting?
Punisher482 #54
Posted 19 May 2013 - 11:30 PM
Edit: Had to ask for help anyways, as I came across a new problem.
I've set up the system in my base, but when I try to add a new user to the list, he doesn't get access to anything. I've even tried making him admin, but I only get the error message: "Wrong or no response from server".

Any ideas?


Edit: It worked when I just replaced all the computers, and installed the program again (Hurray for the good ol' fashioned reinstall :P/> ), so guess there must've been a mistake when I created the second profile.

Anyways, I really enjoy this program! But wouldn't it be a good idea to make it possible for a person with higher level access to access all lower levels? Like a person with security level 8 beeing able to access all computers with a security of 1 to 8?
Just an idea :)/>


Regards
Joe
Edited on 21 May 2013 - 09:06 AM
coolmark1995 #55
Posted 22 June 2013 - 01:15 PM
Hello Dark I am a fan of this program and I was wondering if there was going to be anything added to the main cp for computer ids to allow a few people to open a password door not just one guy to login
darkrising #56
Posted 22 June 2013 - 07:34 PM
Hello Dark I am a fan of this program and I was wondering if there was going to be anything added to the main cp for computer ids to allow a few people to open a password door not just one guy to login

I'm unsure what you mean :huh:/>
darkrising #57
Posted 07 July 2013 - 08:10 AM
A few recent updates, (I've kinda lost track of updates :/)
  • Security of communications has been improved
  • Disk ID gui now is security level filtered
  • Security levels now cascade with level 1 being the highest. (Meaning anyone with security level 1 clearance can open any level below them, 2,3,4,5,6,7,8 etc etc)
  • Client now has a much improved installer interface
  • Server has had a few changes too, pressing "l" (as in Lama) will bring up the security level switching interface for easy security level switching!
  • The client is now security enforced again, no more [Ctrl] + T
  • Various bug fixes and additions
Dave-ee Jones #58
Posted 12 July 2013 - 03:04 AM
Uhh, what quick tip:

Keycards aren't the best thing to do for a security program. They can be easily hacked. Believe me, I know. I'm trying to make a program that prevents it…
darkrising #59
Posted 12 July 2013 - 03:43 AM
Uhh, what quick tip:

Keycards aren't the best thing to do for a security program. They can be easily hacked. Believe me, I know. I'm trying to make a program that prevents it…k

It's hard to copy a unique disk ID without creative.
micmou #60
Posted 12 July 2013 - 03:59 AM
Hmm a idea I had was maybe to include a gui keypad. I love all of your programs BTW.
darkrising #61
Posted 12 July 2013 - 04:15 AM
Hmm a idea I had was maybe to include a gui keypad. I love all of your programs BTW.

It's not released yet, but I have a working version of a keypad, the only problem I'm facing is how to implement multiple users into the current system with unique IDs. I have a few ideas for this, maybe the user could have a "profile" and choose their unique ID or one could be assigned to them on user creation. The user would also have to choose their own ID.

As it currently stands, the user is faced with a numeric keypad on a 1x1 monitor, they type in their account number and press hash then type in there passcode and press hash. The screen has quite a nice interface too!
micmou #62
Posted 13 July 2013 - 02:25 AM
Hmm a idea I had was maybe to include a gui keypad. I love all of your programs BTW.

It's not released yet, but I have a working version of a keypad, the only problem I'm facing is how to implement multiple users into the current system with unique IDs. I have a few ideas for this, maybe the user could have a "profile" and choose their unique ID or one could be assigned to them on user creation. The user would also have to choose their own ID.

As it currently stands, the user is faced with a numeric keypad on a 1x1 monitor, they type in their account number and press hash then type in there passcode and press hash. The screen has quite a nice interface too!

Hmm that seems nice. I was also wondering about moving into things like. Peripherals. Maybe some sort of RFID system??? Mag cards can be read tho so that is not so secure. Not to sure bout RFID either. It would be cool tho.
I also had a kinda far idea out there. A large screen maybe 5x5 with a combo dial. Like Umm either spin or multiple digits controlled by the scroll wheel.
darkrising #63
Posted 13 July 2013 - 03:02 PM
Hmm a idea I had was maybe to include a gui keypad. I love all of your programs BTW.

It's not released yet, but I have a working version of a keypad, the only problem I'm facing is how to implement multiple users into the current system with unique IDs. I have a few ideas for this, maybe the user could have a "profile" and choose their unique ID or one could be assigned to them on user creation. The user would also have to choose their own ID.

As it currently stands, the user is faced with a numeric keypad on a 1x1 monitor, they type in their account number and press hash then type in there passcode and press hash. The screen has quite a nice interface too!

Hmm that seems nice. I was also wondering about moving into things like. Peripherals. Maybe some sort of RFID system??? Mag cards can be read tho so that is not so secure. Not to sure bout RFID either. It would be cool tho.
I also had a kinda far idea out there. A large screen maybe 5x5 with a combo dial. Like Umm either spin or multiple digits controlled by the scroll wheel.

I don't really want to move into external peripherals, I would rather keep my programs vanilla CC.

You can't use the scroll wheel on a monitor, I much prefer numeric keypad over a combo lock.
NOTUSEDPLEASEDELETE #64
Posted 30 July 2013 - 04:41 PM
I know a way to make the 'Please attach modem' better:
Make your program have this at the please attach modem screen:
Client:

event, side = os.pullEvent("peripheral")
shell.run("client")
Server:

event, side = os.pullEvent("peripheral")
shell.run("server")
And then make the computer's reaction to the modem being detached is to error.
The event name is 'peripheral_detach' and the function is 'error()'!
And great work on your program!
Cozzimoto #65
Posted 01 August 2013 - 12:27 PM
dude i love this, ive only read about it, but im interested in talking to you further as i am working on a security features over rednet, i just got my feet wet about a week ago and im making progress on my project, i just would like to talk in how you solved some issues with your development and see how you got inspired to do this. really great work. im creating a dynamic channel connection between two computers for a banking system. i want to go all out and create accounts, transfer, CDs, Loans, supply and demand, merchant client systems connection to the bank, credit cards, hashing and encrypting, and a turtle that places the assets in a vault for viewing.

~Cozzy
trey2k #66
Posted 02 August 2013 - 07:45 PM
How do you enable http

I try to run the program and it said http is not enabled pleas enable it
darkrising #67
Posted 08 August 2013 - 11:28 AM
I try to run the program and it said http is not enabled pleas enable it

You will have to enable it on your client.

Quoted from the computercraft wiki: The HTTP API must be enabled in mod_ComputerCraft.cfg before being used. To enable it open .minecraft/config/ComputerCraft.cfg and change enableAPI_http=false to enableAPI_http=true
darkrising #68
Posted 08 August 2013 - 11:30 AM
dude i love this, ive only read about it, but im interested in talking to you further as i am working on a security features over rednet, i just got my feet wet about a week ago and im making progress on my project, i just would like to talk in how you solved some issues with your development and see how you got inspired to do this. really great work. im creating a dynamic channel connection between two computers for a banking system. i want to go all out and create accounts, transfer, CDs, Loans, supply and demand, merchant client systems connection to the bank, credit cards, hashing and encrypting, and a turtle that places the assets in a vault for viewing.

~Cozzy

Sounds really cool, yes I wouldn't mind talking further. Let me know by pm whats best for you :)/>
coolmark1995 #69
Posted 19 November 2013 - 03:26 PM
Hello Darkrising coolmark1995 here I was wondering is there a way to get the server to detect the computer id? it does not show computers on the network in the server
darkrising #70
Posted 21 November 2013 - 05:08 PM
Hello Darkrising coolmark1995 here I was wondering is there a way to get the server to detect the computer id? it does not show computers on the network in the server

It's been a while since I've worked on this program, but I'm thinking of getting back in and releasing some new updates.

Do you mean like a list of computer ID currently associated with the server, or more of a live update type deal. The client computers do send their ID to the server (as far as I remember)
CraveMode #71
Posted 25 November 2013 - 06:24 PM
Hey, I was trying to install your db lock program on a FTB Unleashed 1.5.2 server, trying to set up the server. I skip where to install as tutorial says and choose 1 for security, once it reboots, it gives the error

parallel :22: dark:356: attempt to index ? (a number value)

UPDATE: Well, I went and redone this later and it seems to be working now. Loving it!


Another Update: Started our own server for 1.6.4 and the script works flawlessly. Just incase anyone saw this message previously and thought it might be broken.

Thanks for it!
Edited on 29 November 2013 - 07:23 PM
darkrising #72
Posted 29 November 2013 - 08:46 PM
Hey, I was trying to install your db lock program on a FTB Unleashed 1.5.2 server, trying to set up the server. I skip where to install as tutorial says and choose 1 for security, once it reboots, it gives the error

parallel :22: dark:356: attempt to index ? (a number value)

UPDATE: Well, I went and redone this later and it seems to be working now. Loving it!


Another Update: Started our own server for 1.6.4 and the script works flawlessly. Just incase anyone saw this message previously and thought it might be broken.

Thanks for it!

Yeh I was renaming some things on github, so probably that was the cause, thought noone was using the update at that time haha :)/>
CraveMode #73
Posted 30 November 2013 - 03:26 AM
Hey, I was trying to install your db lock program on a FTB Unleashed 1.5.2 server, trying to set up the server. I skip where to install as tutorial says and choose 1 for security, once it reboots, it gives the error

parallel :22: dark:356: attempt to index ? (a number value)

UPDATE: Well, I went and redone this later and it seems to be working now. Loving it!


Another Update: Started our own server for 1.6.4 and the script works flawlessly. Just incase anyone saw this message previously and thought it might be broken.

Thanks for it!

Yeh I was renaming some things on github, so probably that was the cause, thought noone was using the update at that time haha :)/>

Lol.. after I made that post, I logged into my server only to find a parallel:22: dark:19: nil soemthing haha, just my luck. But, I tried to reinstall with the installer I had, and it wouldn't work on line 19 which is the line that calls a url.. checked the installer on your github and the url doesnt have /raw/ so i redownloaded the installer and only reinstalled my server, everything got back up and running.
matiyarosz #74
Posted 30 November 2013 - 06:39 AM
Hey, I was trying to install your db lock program on a FTB Unleashed 1.5.2 server, trying to set up the server. I skip where to install as tutorial says and choose 1 for security, once it reboots, it gives the error

parallel :22: dark:356: attempt to index ? (a number value)

UPDATE: Well, I went and redone this later and it seems to be working now. Loving it!


Another Update: Started our own server for 1.6.4 and the script works flawlessly. Just incase anyone saw this message previously and thought it might be broken.

Thanks for it!

Yeh I was renaming some things on github, so probably that was the cause, thought noone was using the update at that time haha :)/>
Error still appears on my Client and Sever Machines ;/
darkrising #75
Posted 01 December 2013 - 12:34 PM
Ah, that could be a problem, I actually changed a heep of links in the programs, didn't realise people were still using them lol :P/>

Edit: To all those having problems, just re-download either the installer or Dark Retriever to get the most up to date links.
Edited on 02 December 2013 - 10:12 AM
gknova61 #76
Posted 13 December 2013 - 12:54 PM
Potential security hole in your client. They don't check the ID of the computer sending the '#granted' message so you can just make a program sending that encrypted over and over until the redstone signal happens.
darkrising #77
Posted 13 December 2013 - 01:07 PM
Potential security hole in your client. They don't check the ID of the computer sending the '#granted' message so you can just make a program sending that encrypted over and over until the redstone signal happens.

Edit: I fixed this issue, the client now checks for distance of the server, if it doesn't match the one in the database, the granted message is rejected.
Edited on 13 December 2013 - 01:04 PM
Kwok #78
Posted 22 December 2013 - 01:07 PM
First of all: i´m a nooby Noob in Computercraft and my englisch is very bad.

I installed a server and promoted myself to a admin. Then I installed the Client on a other one. It seemed as it works, but when i enter my nickname and password (and press Enter) nothing happend. The client is shown in the list of the server.
darkrising #79
Posted 30 December 2013 - 11:10 AM
First of all: i´m a nooby Noob in Computercraft and my englisch is very bad.

I installed a server and promoted myself to a admin. Then I installed the Client on a other one. It seemed as it works, but when i enter my nickname and password (and press Enter) nothing happend. The client is shown in the list of the server.

I fixed this, dunno what was going wrong but it is working now, you may have to re-download the program though.