Decryption process - brute forcing the hash

Assignment Help Web Project
Reference no: EM133083222

Programming and Algorithms - Brute-Forcing a Password

Learning Outcome 1: Understand basic theoretical aspects that apply to programming

Learning Outcome 2: Design simple software to meet given specifications

Task: Tasks are to be undertaken in the Python programming language. You will be expected to include comments in your code to explain the behaviour of your code and provide a justification of your algorithm selection. You are also strongly advised to test your code for compilation on a system other than your own, prior to submission. Non-compiling code will not pass, see the marking rubric for further information.

You will create GitHub private repository to store your source-code and manage version control of your work. Evidence of version control must be included in your regular commits to the repository over the period between the hand out date and due date. Your eventual submission via TurnItIn will link to that repository which must include all of your source-code.

The purpose of this assignment is to create an application whereby a user can insert a MD5 hash via the command-line or a file and brute-force it to decrypt the password. The assignment has been split into a collection of mini-tasks to help you build up the overall application. A CSV file will be provided for this task with a MD5 hash to brute-force, along with the password in plain-text for debugging.

The password hash used to check your code will consist of numbers, letters and special characters that are typically found on a UK-layout keyboard. The password will also be no more than five characters long. You do not need to use a salt when encrypting the guessed password.

Assignment Tasks
To successfully complete this assignment you are required to complete the following tasks. Each task has a weight that is attributed towards a portion of the overall grade.

Task 1: User Input
For this task you are required to accept a user input and store it appropriately to be used in the decryption function. It will be expected that the user can insert either a single hash, or multiple hashes via the command line.

Task 2: File Input
For this task you will be asked to read a supplied CSV file that will consist of MD5 hashes. The file may consist of a single hash, or multiple hashes, and it will be expected that these are stored appropriately.

Task 3: Brute Forcing the Hash
For this task, you are expected to take the collection of hashes (either user-inserted, or from a file) and decrypt them.
Each step in the decryption method should be shown in the command line, with the final output of the proposed password and the total amount of time taken for the decryption process.

It will be expected to see that students' have used multiple commits with descriptive messages for each commit. It will also be expected to see that you have made comments in your code to explain the methodology of the function.

Attachment:- Programming and algorithm.rar

Reference no: EM133083222

Questions Cloud

What is cy of each generation without money : Consider an OLG (Overlapping Generations) economy where each generation has 20 bananas when young, and 0 bananas when old.
Explain the rationale and benefit of inspection : At the last city council meeting, the fire chief updated the council on the previous month's fire statistics and initiatives. One of the major talking points wa
Theory of the firm and agency costs : The Theory of the Firm attempts to explain how and why corporations exist. In its simplest form, corporations exist to maximize profits. As the economy grows in
Shiller excess volatility test of classical theory of asset : What was Shiller's Excess Volatility Test of the Classical Theory of Asset Prices? Explain the basis of his test in detail. What did he find
Decryption process - brute forcing the hash : Design simple software to meet given specifications and Understand basic theoretical aspects that apply to programming - explain the methodology of the function
Result in economies of scale for the firm : Choose a contemporary business and discuss any three factors that may result in economies of scale for the firm
What is a financial system : What is a financial system? Does money have a part in the financial system?
Ceo for consideration before engaging in strategy : The CEO of a regional airline recently learned that its only competitor is suffering from a significant cash-flow constraint. The CEO realizes that its competit
What is the variable cost of a simple cycle : Using the following assumptions calculate the marginal cost of both a simple cycle and combined cycle gas generator:

Reviews

Write a Review

Web Project Questions & Answers

  Evaluating an ecommerce website

Create a check list that contains key point for evaluating an ecommerce website - Write a short, reflective report about website

  Gpc and runtime magic quotes

Create a script that lets you know whether Zeus or Helios has the GPC and Runtime Magic Quotes turned on or off. The output should have appropriate labels that define what output signified and should display 'ON' or 'OFF' depending on the setting.

  Creating functions through conditional operator

Use the conditional operator and the cal_days_in_month function, determine the number of days in the current month and output to browser whether it is normal month or a leap month.

  Web development projects with database

Since the vast majority of web-development projects involve a database, do you think that computational activities should be performed there, or do you think they belong in the XML page or stylesheet?

  Comparing shelf software packages

Required assistance with comparing and contrasting two main off the shelf software packages that could be implemented in an organization.

  Web based scams

Web phishing, pharming and vishing are popular web based scams. Talk about currently used tools and recommended measures to defeat this kind of attacks efficiently?

  Explanation of contextual links

The most powerful hypertext capabilities is the the contextual link. Wikipedia . com is a great example of a site that utilizes contextual links.

  How architectural and protocol changes occur

Discuss how architectural and protocol changes happen, the administrative organization that oversees the technical development of the Internet,

  Traditional approaches for training professionals

Webinars and other web conferencing techniques have proved most beneficial for the provision of affordable quality corporate training.

  Internet for business

Discuss how can a business use the Internet and give at least three examples with web links demonstrating your answer.

  It influences the behavior of organizations

Information technology influences the behavior of organizations. Name one effect of Information technology implementation and long-term usage you suppose having a positive contribution and one having a negative consequence.

  Importance of a guided navigation system

Explain the use and importance of a guided navigation system and shopping cart for a website designed for e-commerce and business purpose.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd