Jump to content




BouTech Login System


  • You cannot reply to this topic
42 replies to this topic

#1 boudragon

  • Members
  • 107 posts

Posted 08 July 2013 - 08:30 AM

Alright so after about a week of working on this I THINK it's done (for now but more is planned). It may be a bit sloppy but it works. You are all welcome to comment, suggest or even help clean this beast up a bit. Welcome to my login system! Let me take a minute to explain it's features.

LOGIN FEATURES
  • Matches username and password to allow access to a program that requires credentials. (username is a file in users/[username] and password is a line of text within said file)
  • Ignores blank entries for both username and password and after several failed attempts will kick you back to the main menu.
  • Will ignore unknown usernames.
  • Will lock down an account after three failed attempts to log in with an invalid password. (locked accounts are moved from users folder to pending folder and renamed to a random number for safe keeping. Will also check to ensure the random file name is not already in use)
  • Admin override feature allows the system owner to enter the system shell without risk of major security breaches by utilizing a random password algorithm to generate new passwords upon each override request. (Current algorithm is (rnd + 11) * 83 where rnd = a random number generated by the system and displayed as an override code. Admin override login name is currently adminovrride)
  • Reads the user account and applies an access level based on what the Admin has set for that user. (Currently only two access levels, admin and user, with more able to be added)
CREATE ACCOUNT FEATURES
  • Allows user to create an account by providing a username and password. The system then puts the information in a randomly generated file in the pending folder for safe keeping and admin approval at a later time. (Will check to ensure random file name is not already in use)
  • Ignores blank entries for both username and password and after several failed attempts will kick you back to the main menu.
  • Will ignore usernames already in use.
  • Will disallow the creation of an account using the same login of the admin override feature.
  • Matches password and confirm password to ensure the user selected a proper password for themselves.
GENERAL FEATURES
  • Ctrl-T is disallowed.
  • Max input length is currently set to 12 but can be changed.
  • Easy to modify to suit your needs.
  • Self-sustained program in itself to allow easy integration to your system and it's other programs.
  • Basic design to allow users of both basic and advanced computers to use this login system.
REQUIREMENTS
  • Two directories need to be pre-made prior to running. These directories are [users] and [pending] without the brackets and must be placed in the root of the system.
SCREENSHOTS

PLANNED FEATURES
  • Ability to determine whether the user is an admin or user. (Possibly other access levels as well)
  • Integration into an overall OS where the system boots and does a system check. (memory, file structure etc.) If the check fails it will initiate a system restore sequence from disk to restore the system to it's previous state including any back-up files saved.
  • Checks to see if the "pending" and the "users" directory exists. If not the program will create them.
Without further hesitation... here it is! Please keep in mind this is only my SECOND program released so don't be too critical ok? :) Enjoy!

Spoiler

PASTEBIN
  • Pastebin get tK3ikweu (You can also get this code (Ctrl-T function is allowed) from Pastebin)


#2 Zudo

  • Members
  • 800 posts
  • LocationUK

Posted 08 July 2013 - 01:08 PM

Screenies?

#3 boudragon

  • Members
  • 107 posts

Posted 08 July 2013 - 02:02 PM

I didn't post any cause it's a fairly simple menu... but I can in a sec...

#4 boudragon

  • Members
  • 107 posts

Posted 08 July 2013 - 02:22 PM

Screenshots up... enjoy :)

#5 Thib0704

  • Members
  • 93 posts
  • LocationgetServer().getPlayer("Thib0704").getLocation();

Posted 08 July 2013 - 03:07 PM

I seem to get an error when I create an account : System :372: attempt to index ?( a nil value ).
But the GUI look's quite nice

#6 Thib0704

  • Members
  • 93 posts
  • LocationgetServer().getPlayer("Thib0704").getLocation();

Posted 08 July 2013 - 03:10 PM

I seem to get an error :
system : 372 : attempt to index ? ( a nil value )
But the GUI look's nice.

EDIT : damn my post didnt show up

#7 boudragon

  • Members
  • 107 posts

Posted 08 July 2013 - 03:11 PM

did you add two folders into your root? you need to mkdir users and mkdir pending

#8 Zudo

  • Members
  • 800 posts
  • LocationUK

Posted 08 July 2013 - 03:14 PM

The GUI looks nice!


#9 boudragon

  • Members
  • 107 posts

Posted 08 July 2013 - 03:22 PM

Thank you :) It's just something I threw together really...

#10 boudragon

  • Members
  • 107 posts

Posted 14 July 2013 - 10:21 AM

New version uploaded to Pastebin. Check it out and let me know what you think :)

#11 boudragon

  • Members
  • 107 posts

Posted 29 September 2013 - 09:03 AM

Know it's been a while since my last updates or post but I cleaned this up a little and posted the new version on Pastebin. Wanted to know if anyone actually likes and or uses this and would like to see it improve further. Suggestions and comments are all welcome.

#12 Kamefrede

  • Members
  • 30 posts
  • LocationPortugal,porto

Posted 29 September 2013 - 09:22 AM

This is actually a good program, i like, but could u make a nyan cat( rainbow) version of this , i really like rainbows hehe

#13 boudragon

  • Members
  • 107 posts

Posted 29 September 2013 - 09:33 AM

LOL I've never actually seen what you are talking about so I would have to look it up... plus I programmed it using the basic computer so there is no color scheme but it obviously can be done. Just takes some time and effort :) You are more than welcome to play around with the code just be sure to give credit where due :)

#14 willwac

  • Members
  • 182 posts

Posted 30 September 2013 - 06:01 PM

I like it a lot, it reminds me of my DuoStep Login system, but better!
I'd like to help you make this.

#15 boudragon

  • Members
  • 107 posts

Posted 30 September 2013 - 10:12 PM

View Postwillwac (NewCoolPC), on 30 September 2013 - 06:01 PM, said:

I like it a lot, it reminds me of my DuoStep Login system, but better!
I'd like to help you make this.

As far as the login aside from maybe cleaning it up and what not it works perfect. The rest is a bit sketchy as far as implementing it into an actual OS or other program because everyone's needs are different. But I am open to ideas just inbox me! :)

#16 boudragon

  • Members
  • 107 posts

Posted 18 October 2013 - 09:24 PM

Fixed a few minor details with login system. System manager is coming along nicely and with the help of Sir Lyqyd may even become a client/host control panel for devices and such. If anyone is interested in this let me know... I need some motivation! :-p

#17 Dragon53535

  • Members
  • 973 posts
  • LocationIn the Matrix

Posted 18 October 2013 - 09:43 PM

Hehe, this seems nice, but i would recommend using some encryption in the passwords if you haven't already like sha256 or something, other than that, this works pretty much like my own code i wrote a few weeks ago.

#18 boudragon

  • Members
  • 107 posts

Posted 18 October 2013 - 09:54 PM

well considering the program will not allow ANY form of unauthorized program termination plus it's split between multiple files rather than just one big program... it should be relatively safe. I disabled floppy disk startup files from loading on my server for just that reason... security. I can still look into it though and I appreciate the idea :)

#19 Dragon53535

  • Members
  • 973 posts
  • LocationIn the Matrix

Posted 18 October 2013 - 10:00 PM

i'm actually curious how you got it to place the files under a random name inside a directory, and then still knowing which file is which user.

#20 boudragon

  • Members
  • 107 posts

Posted 19 October 2013 - 09:16 AM

Well it's simple really. I just told it to randomly pick a number between A and B and then check if a file with that number already exists. If it does it tries again if it doesn't it creates the file and puts the name and password in that file. Mind you its just pending account at this point becuase after all this is a secure system so it wouldn't make sense to allow instant access. Plus a user access level has to be applied by an admin anyways.

Once the System manager is complete any admin will be able to go in and approve pending or locked files and change user access levels. Right now the only way to do so is manually either prior to running the login system or using the adminovrride login name which I LOVE the access password for that ;-) basically it generates a 3 digit number which you then must know the proper algorithm to get the password. in case you didn't find it... its (RND+11)*83 = password. RND is the override code it generates. Check it out when you get a chance :)





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users