ArticleslgStudy

computer science

Master Password (algorithm)

Master Password (algorithm) is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Master Password (algorithm) rather than just read about it. In short: Master Password is a type of algorithm first implemented by Maarten Billemont for creating unique passwords in a reproducible manner. It differs from traditional password managers in that the passwords are not stored on disk or in the cloud, but are regenerated every time from information entered by the user: Their name, a master password, and a unique identifier for the service the password is intended for (usually…

Key takeaways

  • Master Password (algorithm) belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Master Password (algorithm) to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Master Password (algorithm) from memory before moving on to harder problems.

Reference excerpt

Master Password is a type of algorithm first implemented by Maarten Billemont for creating unique passwords in a reproducible manner. It differs from traditional password managers in that the passwords are not stored on disk or in the cloud, but are regenerated every time from information entered by the user: Their name, a master password, and a unique identifier for the service the password is intended for (usually the URL). By not storing the passwords anywhere, this approach makes it harder for attackers to steal or intercept them. It also removes the need for synchronization between devices, backups of potential password databases and risks of data breach. This is sometimes called sync-less password management.

Algorithm Billemont's implementation involves the following parameters:

name: The username, used as a salt. The user's full name is chosen as it provides a sufficiently high level of entropy while being unlikely to be forgotten. master_password: The secret for generating the master key. site_name: A unique name for the service the password is intended for. Usually the bare domain name. counter: An integer that can be incremented when the service requests a new password. By default, it is 1. password_type: The password type defines the length and the constitution of the resulting password, see below.

Master key generation In Billemont's implementation, the master key is a global 64-byte secret key generated from the user's secret master password and salted by their full name. The salt is used to avoid attacks based on rainbow tables. The scrypt algorithm, an intentionally slow key derivation function, is used for generating the master key to make a brute-force attack infeasible.

Template seed generation The template seed is a site-specific secret in binary form, generated from the master key, the site name and the counter using the HMAC-SHA256 algorithm. It is later converted to a character string using the password templates. The template seed makes every password unique to the website and to the user.

Password generation The binary template seed is then converted to one of six available password types. The default type is the Maximum Security Password, others can be selected if the service's password policy does not allow passwords of that format:

Maximum Security Password (20 ASCII printable characters) Long Password (14 ASCII printable characters) Medium Password (8 ASCII printable characters) Short Password (4 ASCII printable characters) Basic Password (8 alphanumeric characters) PIN (4 digits)

Implementations Billemont also created multiple free software implementations of the Master Password algorithm, licensed under the GPLv3.:

An app for iOS. The iOS implementation was first released in 2012. An app for Mac OS X An app for Android A Graphical desktop application written in Java A command-line application written in C A browser plugin for Firefox and Chromium-based browsers A web client written in JavaScript.

References

External links Official website

Worked examples

Example 1 — a first encounter with Master Password (algorithm)

Start with the simplest possible case. Write down what Master Password (algorithm) claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Master Password (algorithm) before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Master Password (algorithm) ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Master Password (algorithm)

In research
Master Password (algorithm) appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Master Password (algorithm) in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Master Password (algorithm) is common in secondary-school and first-year university syllabi. It links to neighbouring topics Cryptographic algorithms, Free security software, so understanding it makes those chapters shorter.
In everyday life
Look for Master Password (algorithm) outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Master Password (algorithm) in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Master Password (algorithm) means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Master Password (algorithm) out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Master Password (algorithm) in simple terms?

Master Password is a type of algorithm first implemented by Maarten Billemont for creating unique passwords in a reproducible manner. It differs from traditional password managers in that the passwords are not stored on disk or in the cloud, but are regenerated every time from information entered b…

Why does Master Password (algorithm) matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Master Password (algorithm)?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Master Password (algorithm).

Tags

  • Cryptographic algorithms
  • Free security software

Keep exploring