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

E-Mail Network V0.1

Started by ChaddJackson12, 02 January 2013 - 12:18 AM
ChaddJackson12 #1
Posted 02 January 2013 - 01:18 AM
E-Mail Network

Current Version: 0.1

Download: Server | Client


I have made an E-Mail Network. It features user accounts, and a server to contain all the user account info. This includes their messages, which makes it so that the user does not have to access their account on the same computer. As of now this program is in an early stage, and should still be improved upon and made better. Feedback is always appreciated, enjoy.

Program Features:
SpoilerBasic Features:
- E-Mail your friends while they are offline
- Easy to use menu interface
- Storage for messages (They don't have to have their computer on to receive the message)
- Unspecified modem side (Any side will work)

Advanced Features:
- User accounts
- Failed login reporting
- Message Subjects

Planned Features:
Spoiler- Improved GUI
- Choose your own themes
- An improved word wrap for messages
- Relays (For extended range rather than being limited to 64 blocks)
- Controllable server
- Select a user from a user list to send a message to, rather than having to know the name.

How to enable HTTP:
Spoiler1. Go to the root directory of the game, .minecraft/.techniclauncher
2. Make sure that you are in the folder that contains the Saves, Bin, ect…
3. In that folder, open the Config folder.
4. Find the file that is for computercraft. Mod_Computercraft
5. Open it and change enableAPI_http=0 to enableAPI_http=1
6. Save the file, and you're done! You may need to reboot the game though!

Screenshots:
Spoiler





Changelog:
SpoilerV0.1
SpoilerFirst release of program!
- Added User Accounts
- Added E-Mail
- Added Failed Login Reporting
- Added Storage for messages
- Added Message Subjects
FUCKCOMPUTERCRAFT!"£ #2
Posted 02 January 2013 - 07:35 AM
If you can touch the server you can access all usernames and password connected to that server.

I've written this:
http://pastebin.com/tAuLJSs1

It will get all the usernames and passwords from the server. Save it to a file from where it was ran.
Someone could have it on a floppy with a blank boot and rip all the usernames and passwords.
ChaddJackson12 #3
Posted 02 January 2013 - 07:28 PM
If you can touch the server you can access all usernames and password connected to that server.

I've written this:
http://pastebin.com/tAuLJSs1

It will get all the usernames and passwords from the server. Save it to a file from where it was ran.
Someone could have it on a floppy with a blank boot and rip all the usernames and passwords.
Yeah I know that. It is impossible to completely protect a computer from someone, which means that no matter what they can always be able to get that stuff. If you haven't noticed, most password programs on the forums have a few posts as to why it is impossible to protect a computer. But I really, really appreciate you releasing that on my post for everyone. :/
Heracles421 #4
Posted 02 January 2013 - 09:26 PM
I'll save you (Or at least try to)!
Spoiler

function startup()
os.pullEvent = os.pullEventRaw
term.clear()
term.setCursorPos(1,1)
print("Checking for hackers..")
local bOpen, sFreeSide = false, nil
for n,sSide in pairs(rs.getSides()) do	
	if peripheral.getType( sSide ) == "drive" then
		sFreeSide = sSide
	end
end
if sFreeSide then
	while true do
		local sEvent, param = os.pullEvent("disk")
		if sEvent == "disk" then
			if fs.exists("/disk/startup") then
				file = fs.open("/disk/startup", "r")
				key = file.readLine()
				file.close()
				if key ~= password then
					fs.delete("/disk/startup")
					print("Hacker discovered! Erasing startup file..")
				else
					print("Access granted")
					break
				end
			end
		end
	end
else
	print("No drive attached")
	print("Press any key to continue")
	local sEvent, param = os.pullEvent("key")
	if(sEvent == "key") then
		startup()
	end
end
end

password = "Anything can go in here"
startup()

This small program checks all the disks that are plugged into any disk drive that's connected to the machine for a startup file, if the computer finds a startup file in the disk it'll search inside it and check if the first line contains the magical word (Defined at the bottom of the program). If it does the computer is unlocked and you're free to type whatever you want (Feel free to change this if you're using it on your mail server), if it doesn't it'll erase the startup file to prevent users from stopping the console
Laserman34170 #5
Posted 03 January 2013 - 04:40 AM
I'll save you (Or at least try to)!
Spoiler

function startup()
os.pullEvent = os.pullEventRaw
term.clear()
term.setCursorPos(1,1)
print("Checking for hackers..")
local bOpen, sFreeSide = false, nil
for n,sSide in pairs(rs.getSides()) do	
	if peripheral.getType( sSide ) == "drive" then
		sFreeSide = sSide
	end
end
if sFreeSide then
	while true do
		local sEvent, param = os.pullEvent("disk")
		if sEvent == "disk" then
			if fs.exists("/disk/startup") then
				file = fs.open("/disk/startup", "r")
				key = file.readLine()
				file.close()
				if key ~= password then
					fs.delete("/disk/startup")
					print("Hacker discovered! Erasing startup file..")
				else
					print("Access granted")
					break
				end
			end
		end
	end
else
	print("No drive attached")
	print("Press any key to continue")
	local sEvent, param = os.pullEvent("key")
	if(sEvent == "key") then
		startup()
	end
end
end

password = "Anything can go in here"
startup()

This small program checks all the disks that are plugged into any disk drive that's connected to the machine for a startup file, if the computer finds a startup file in the disk it'll search inside it and check if the first line contains the magical word (Defined at the bottom of the program). If it does the computer is unlocked and you're free to type whatever you want (Feel free to change this if you're using it on your mail server), if it doesn't it'll erase the startup file to prevent users from stopping the console

That won't work. In the bios.lua, it calls the shell program, and in the shell program it checks for a startup file. It runs the disk startup, and is there isn't, it runs the startup on the computer. You never get ran first, so its impossible to protect the computer unless you edit the bios.lua / shell program.
FUCKCOMPUTERCRAFT!"£ #6
Posted 03 January 2013 - 04:48 AM
I'll save you (Or at least try to)!
Spoiler

function startup()
os.pullEvent = os.pullEventRaw
term.clear()
term.setCursorPos(1,1)
print("Checking for hackers..")
local bOpen, sFreeSide = false, nil
for n,sSide in pairs(rs.getSides()) do	
	if peripheral.getType( sSide ) == "drive" then
		sFreeSide = sSide
	end
end
if sFreeSide then
	while true do
		local sEvent, param = os.pullEvent("disk")
		if sEvent == "disk" then
			if fs.exists("/disk/startup") then
				file = fs.open("/disk/startup", "r")
				key = file.readLine()
				file.close()
				if key ~= password then
					fs.delete("/disk/startup")
					print("Hacker discovered! Erasing startup file..")
				else
					print("Access granted")
					break
				end
			end
		end
	end
else
	print("No drive attached")
	print("Press any key to continue")
	local sEvent, param = os.pullEvent("key")
	if(sEvent == "key") then
		startup()
	end
end
end

password = "Anything can go in here"
startup()

This small program checks all the disks that are plugged into any disk drive that's connected to the machine for a startup file, if the computer finds a startup file in the disk it'll search inside it and check if the first line contains the magical word (Defined at the bottom of the program). If it does the computer is unlocked and you're free to type whatever you want (Feel free to change this if you're using it on your mail server), if it doesn't it'll erase the startup file to prevent users from stopping the console

That won't work. In the bios.lua, it calls the shell program, and in the shell program it checks for a startup file. It runs the disk startup, and is there isn't, it runs the startup on the computer. You never get ran first, so its impossible to protect the computer unless you edit the bios.lua / shell program.

Wrong try doing it yourself… It deletes the startup when a floppy is entered try rebooting and putting in the floppy fast enough, it works but im looking for more exploits now.

Also can you make this run alongside the server as when i added it to startup the server never gets ran…
FUCKCOMPUTERCRAFT!"£ #7
Posted 03 January 2013 - 04:50 AM
If you can touch the server you can access all usernames and password connected to that server.

I've written this:
http://pastebin.com/tAuLJSs1

It will get all the usernames and passwords from the server. Save it to a file from where it was ran.
Someone could have it on a floppy with a blank boot and rip all the usernames and passwords.
Yeah I know that. It is impossible to completely protect a computer from someone, which means that no matter what they can always be able to get that stuff. If you haven't noticed, most password programs on the forums have a few posts as to why it is impossible to protect a computer. But I really, really appreciate you releasing that on my post for everyone. :/

Well the point of me doing so wasn't to be mean. Sorry… It was so someone would do something about it, incase someone use there MC password or something else and someone gets there hands on it… If i just said you can most likely no one would have done anything. Now look you got someone try to make it more secure…
FUCKCOMPUTERCRAFT!"£ #8
Posted 03 January 2013 - 06:27 AM
I'll save you (Or at least try to)!
Spoiler

function startup()
os.pullEvent = os.pullEventRaw
term.clear()
term.setCursorPos(1,1)
print("Checking for hackers..")
local bOpen, sFreeSide = false, nil
for n,sSide in pairs(rs.getSides()) do	
	if peripheral.getType( sSide ) == "drive" then
		sFreeSide = sSide
	end
end
if sFreeSide then
	while true do
		local sEvent, param = os.pullEvent("disk")
		if sEvent == "disk" then
			if fs.exists("/disk/startup") then
				file = fs.open("/disk/startup", "r")
				key = file.readLine()
				file.close()
				if key ~= password then
					fs.delete("/disk/startup")
					print("Hacker discovered! Erasing startup file..")
				else
					print("Access granted")
					break
				end
			end
		end
	end
else
	print("No drive attached")
	print("Press any key to continue")
	local sEvent, param = os.pullEvent("key")
	if(sEvent == "key") then
		startup()
	end
end
end

password = "Anything can go in here"
startup()

This small program checks all the disks that are plugged into any disk drive that's connected to the machine for a startup file, if the computer finds a startup file in the disk it'll search inside it and check if the first line contains the magical word (Defined at the bottom of the program). If it does the computer is unlocked and you're free to type whatever you want (Feel free to change this if you're using it on your mail server), if it doesn't it'll erase the startup file to prevent users from stopping the console

Broke it, found a way to make it crash….
Heracles421 #9
Posted 03 January 2013 - 06:53 AM
I'll save you (Or at least try to)!
Spoiler

function startup()
os.pullEvent = os.pullEventRaw
term.clear()
term.setCursorPos(1,1)
print("Checking for hackers..")
local bOpen, sFreeSide = false, nil
for n,sSide in pairs(rs.getSides()) do	
	if peripheral.getType( sSide ) == "drive" then
		sFreeSide = sSide
	end
end
if sFreeSide then
	while true do
		local sEvent, param = os.pullEvent("disk")
		if sEvent == "disk" then
			if fs.exists("/disk/startup") then
				file = fs.open("/disk/startup", "r")
				key = file.readLine()
				file.close()
				if key ~= password then
					fs.delete("/disk/startup")
					print("Hacker discovered! Erasing startup file..")
				else
					print("Access granted")
					break
				end
			end
		end
	end
else
	print("No drive attached")
	print("Press any key to continue")
	local sEvent, param = os.pullEvent("key")
	if(sEvent == "key") then
		startup()
	end
end
end

password = "Anything can go in here"
startup()

This small program checks all the disks that are plugged into any disk drive that's connected to the machine for a startup file, if the computer finds a startup file in the disk it'll search inside it and check if the first line contains the magical word (Defined at the bottom of the program). If it does the computer is unlocked and you're free to type whatever you want (Feel free to change this if you're using it on your mail server), if it doesn't it'll erase the startup file to prevent users from stopping the console

That won't work. In the bios.lua, it calls the shell program, and in the shell program it checks for a startup file. It runs the disk startup, and is there isn't, it runs the startup on the computer. You never get ran first, so its impossible to protect the computer unless you edit the bios.lua / shell program.
I know that, but if you don't insert a disk before running the program everything is fine. Why? Because if you insert the disk it will automatically erase the startup file, therefore the disk won't have any file to boot on startup and you'll be totally safe, assuming you are running the program.

Broke it, found a way to make it crash….
Could you wait a day before actually trying to break other's programs? Lol
You're a complete troll
FUCKCOMPUTERCRAFT!"£ #10
Posted 03 January 2013 - 07:02 AM
I'll save you (Or at least try to)!
Spoiler

function startup()
os.pullEvent = os.pullEventRaw
term.clear()
term.setCursorPos(1,1)
print("Checking for hackers..")
local bOpen, sFreeSide = false, nil
for n,sSide in pairs(rs.getSides()) do	
	if peripheral.getType( sSide ) == "drive" then
		sFreeSide = sSide
	end
end
if sFreeSide then
	while true do
		local sEvent, param = os.pullEvent("disk")
		if sEvent == "disk" then
			if fs.exists("/disk/startup") then
				file = fs.open("/disk/startup", "r")
				key = file.readLine()
				file.close()
				if key ~= password then
					fs.delete("/disk/startup")
					print("Hacker discovered! Erasing startup file..")
				else
					print("Access granted")
					break
				end
			end
		end
	end
else
	print("No drive attached")
	print("Press any key to continue")
	local sEvent, param = os.pullEvent("key")
	if(sEvent == "key") then
		startup()
	end
end
end

password = "Anything can go in here"
startup()

This small program checks all the disks that are plugged into any disk drive that's connected to the machine for a startup file, if the computer finds a startup file in the disk it'll search inside it and check if the first line contains the magical word (Defined at the bottom of the program). If it does the computer is unlocked and you're free to type whatever you want (Feel free to change this if you're using it on your mail server), if it doesn't it'll erase the startup file to prevent users from stopping the console

That won't work. In the bios.lua, it calls the shell program, and in the shell program it checks for a startup file. It runs the disk startup, and is there isn't, it runs the startup on the computer. You never get ran first, so its impossible to protect the computer unless you edit the bios.lua / shell program.
I know that, but if you don't insert a disk before running the program everything is fine. Why? Because if you insert the disk it will automatically erase the startup file, therefore the disk won't have any file to boot on startup and you'll be totally safe, assuming you are running the program.

Broke it, found a way to make it crash….
Could you wait a day before actually trying to break other's programs? Lol
You're a complete troll

He's correct, if it's already running it's almost impossible to insert a disk fast enough.

Also i will not release how i broke it, but i will post a video showing me doing it if you don't believe me?
Heracles421 #11
Posted 03 January 2013 - 07:04 AM
He's correct, if it's already running it's almost impossible to insert a disk fast enough.

Also i will not release how i broke it, but i will post a video showing me doing it if you don't believe me?
Go for it, I want to see if it's possible
FUCKCOMPUTERCRAFT!"£ #12
Posted 03 January 2013 - 07:31 AM
Uploading now…
FUCKCOMPUTERCRAFT!"£ #13
Posted 03 January 2013 - 07:35 AM
Watch in full screen and HD, as that makes it readable.

[media]http://www.youtube.com/watch?v=Re9LasFtmSs[/media]
ChaddJackson12 #14
Posted 03 January 2013 - 03:10 PM
If you can touch the server you can access all usernames and password connected to that server.

I've written this:
http://pastebin.com/tAuLJSs1

It will get all the usernames and passwords from the server. Save it to a file from where it was ran.
Someone could have it on a floppy with a blank boot and rip all the usernames and passwords.
Yeah I know that. It is impossible to completely protect a computer from someone, which means that no matter what they can always be able to get that stuff. If you haven't noticed, most password programs on the forums have a few posts as to why it is impossible to protect a computer. But I really, really appreciate you releasing that on my post for everyone. :/

Well the point of me doing so wasn't to be mean. Sorry… It was so someone would do something about it, incase someone use there MC password or something else and someone gets there hands on it… If i just said you can most likely no one would have done anything. Now look you got someone try to make it more secure…
It is ok. I have to figure out a password encryption and I will also make the server computer more secure.
theoriginalbit #15
Posted 03 January 2013 - 04:47 PM
Ok so this is one way that I had found with my door lock program to get around it with a startup disk. Crtl + S to shutdown computer, put in disk, turn on computer, and it will boot the disk's startup file…

Search the APIs and look for SHA1 hashing, it is the easiest way to encrypt the users passwords, and if you salt the password first it will make it more secure.
Heracles421 #16
Posted 03 January 2013 - 05:01 PM
Ok so this is one way that I had found with my door lock program to get around it with a startup disk. Crtl + S to shutdown computer, put in disk, turn on computer, and it will boot the disk's startup file…

Search the APIs and look for SHA1 hashing, it is the easiest way to encrypt the users passwords, and if you salt the password first it will make it more secure.
Yea, might be better than my fix
theoriginalbit #17
Posted 03 January 2013 - 05:20 PM

I'd suggest to use the concepts of both. That's what I did in my DoorLock program.
ChaddJackson12 #18
Posted 03 January 2013 - 05:20 PM
Ok so this is one way that I had found with my door lock program to get around it with a startup disk. Crtl + S to shutdown computer, put in disk, turn on computer, and it will boot the disk's startup file…

Search the APIs and look for SHA1 hashing, it is the easiest way to encrypt the users passwords, and if you salt the password first it will make it more secure.
Thanks. This will help me out a lot!
FUCKCOMPUTERCRAFT!"£ #19
Posted 05 January 2013 - 01:47 AM
ChaddJackson12 please see the CRAKKED thread, or PM me…
dmitchell94 #20
Posted 17 January 2013 - 12:00 PM
Great program but you should only be able to delete a account from the server.
TheOddByte #21
Posted 18 January 2013 - 10:45 AM
This seems pretty great but, Does it support CC 1.4? That is the latest in tekkit(I think)
With non advanced computers.
ChaddJackson12 #22
Posted 18 January 2013 - 05:07 PM
This seems pretty great but, Does it support CC 1.4? That is the latest in tekkit(I think)
With non advanced computers.
No. At the moment it does not support the Tekkit version.