GithubHelp home page GithubHelp logo

passrec's Introduction

C Assignment

Task 1 (Hash lookup wordlist generator)

  • This program takes in 3 parameters: wordlist filename, a integer representing the minimum length of the password and another integer representing the maximum length of the password.

  • This program uses the crypt.h library and its functions to create a simple MD5 and SHA-512 hash from a password in the wordlist file (specified on the command line).

  • Afterwards, the program writes the two respective hashes of the password into mytab2411.txt.

    Demo (Task 1)

    Compiling and Executing task1

    Execution time: 3-5mins depending on computing power (using wordlist.txt)

    Snippet of mytab2411.txt

  • Possible improvements/features

    • Add multithreading to enable reduce wait time when executing the program.
    • Error handling of wordlist file (e.g check to see if the file is a .txt file)

Task 2 (Password Lookup Program)

  • This program takes in 2 parameters, 2 files to be exact: first argument is for the location of the file with the username and the digest of the respective user's password (similar to /etc/shadow file in linux systems). The second file will be the lookup table we will be using containing all the possible password and hash pair. (we will be using mytab2411.txt as the lookup table)

  • This program compares each user's password hash with each hash in mytab2411.txt until EOF. The program also checks if the user's password digest is valid by checking the digest length.

    Demo (Task 2)

    contents of shadow.txt

    shadow.txt, which contains user and password digest pairs.

    Compiling and Executing task2

    Execution time: 3-5mins depending on computing power, pyc4's password could not be found as the hash length does not equal to 90 characters.

  • Possible improvements/features

    • Add a function to check if the user's password hash is md5 or sha-512, filtering out the number hashes in mytab2411.txt to reduce lookup time.
    • Add multithreading to enable reduce wait time when executing the program.

passrec's People

Contributors

javiery3889 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.