password

from Wikipedia, the free encyclopedia

A password is a string of characters that is used for access control or access control.

Delimitation and related terms

The term password has been used since the 16th century and comes from the military sector. Back then, a single word was enough to make it happen.

Closely related to this is the password , which does not emphasize passing, but the identifier as a shared secret.

As computers could quickly try passwords, individual words became too insecure as passwords, and in some areas the term passphrase was established to emphasize the need for longer passwords.

Are rarely used keyword , code word (also code word ).

In the military field, slogans , passwords or slogans (from Italian la parola , the word) were also used.

A personal identification number (PIN) is a password that usually only consists of digits .

Areas of application

Registration with Wikipedia

A slogan in the military is originally a word used as a distinguishing mark to distinguish friend and foe in the dark or in the case of unknown combatants . Even today, soldiers on night patrol ask questions about the slogan at the watch or on maneuvers . Throughout history, some sieges have been decided by betrayal of the password.

Frequent use of passwords takes place in the computer world in connection with a user name , e.g. B. at Wikipedia . Here the password is a self-selected or an automatically generated, mostly alphanumeric string of characters.

Passwords are used in numerous areas, for example as an element of parental control to prevent children from accessing televisions , receivers or unsuitable program content.

In addition to the task of identifying people , passwords are also used to prove certain authorizations : Anyone who knows the password (the correct code) is considered authorized. Examples: a password in the military or an access code to open doors.

The authenticity of those who identify themselves in this way is only preserved as long as the password remains secret, i.e. it is not known to third parties. The connection between the password and its user must be established and checked separately (for example by the bank on the post, which is particularly protected from manipulation (according to the law).

Types of use

Commonly known password

The simplest procedure is to agree on a common password within a clearly defined group of initiates. In IT technology one speaks of a " shared secret ". The essential thing with this procedure is that all communication partners know the same "correct" password. A disadvantage of this method is that if the password is betrayed, everyone involved must be equally suspected of not having handled the password confidentially. In addition, after the password is known, all communication partners must agree on a new password.

Personal password

The usual use case of passwords is that a password is assigned to a single person and that this person keeps the password secret.

One-time password

One-time passwords can only be used once for authentication and are then invalid. This way, there is no damage if the password is spied out during authentication. Traditionally, several one-time passwords are set in advance and noted in the form of a list that must be kept safe. Such one-time passwords are used, for example, as transaction numbers (TAN) in online banking . However, they can also be generated shortly before they are used, including the time and a PIN, and can only be used within a few minutes.

Saving passwords

When saving passwords, the state of the art since 1975 is that the password itself is not saved. The clear text password is ideally stored in the head of a single person.

Instead, a cryptographic hash is calculated from the password , which is then saved in place of the password. If the password is now used to gain access to the system, the hash is calculated again for the password entered. Access is granted if this hash matches the stored hash.

The cryptographic hash is formed according to a firmly defined process in such a way that the password cannot be recalculated in a realistic time from the knowledge of the hash. This means that administrators or, in the event of a data leak, attackers cannot read the password directly. However, you can still look up a database of known passwords and their hashes to see if the password you are looking for is there. To prevent this, a random value, the so-called salt , is added to the password when the hash is calculated . This ensures that there are many possible hashes for a single password (in 1975 there were 4096, that was still quite insecure, state of the art 2020 are several trillion by trillion), so that it is not worthwhile for an attacker to use the hashes in the To calculate in advance.

If an attacker comes into possession of a hashed password, he can attempt to guess the password through systematic trial and error ( brute force method ). In order to slow down this guessing, a special hash function is used, which intentionally requires a lot of computing time and memory (password derivation function). This makes it a little less attractive to try out passwords on a massive scale. It also slows down the legitimate checking of the password on the actual server, but this is of no consequence in most systems. If a password check takes less than a tenth of a second, this is a sign that the system is not up to date.

Choosing secure passwords

Video: Unbreakable but easy to remember! - Passwords simply explained

The security of a password is a direct result of how long it would take an attacker to find out. If the attacker cannot resort to torture , data leaks or similar side-channel attacks, the only option left is to guess the password in a targeted manner. To make this guessing as time-consuming as possible, the password should have a high entropy . The entropy of a password is the number of yes / no questions an attacker has to ask one after the other in order to guess the password. Since the attacker usually does not get a direct answer to each of these yes / no questions, he has to combine all of the yes / no questions. With 40 yes / no questions, he has to try out more than 1 billion possible passwords.

In practice, however, the entropy of a password is often not aimed at, but rather the password length. This approach is wrong and creates deceptive security, because the password A1a1a1a1a1a1a1a1a1a1is 20 characters long and consists of capital letters, small letters and numbers, but it is structured according to an easily recognizable scheme. Therefore, the entropy of this password is significantly smaller than the length suggests. The password “ Beef Labeling Supervision Task Transfer Act ” is also impressive in length, but the entropy is very low as it is a fixed term and therefore appears in many word lists.

The minimum length of a password depends on what it is used for. The Federal Office for Information Security (BSI) recommends using passwords with at least twelve upper and lower case letters as well as special characters and numbers for online access, while passwords with at least twenty characters for WLAN access. This is particularly necessary if an unlimited number of attempts with different passwords allows access and thus enables an attack ("guessing") according to the so-called brute force method .

The exception is that such “guessing” is considerably restricted if there is only a very limited number of consecutive entries (e.g. a maximum of three attempts, calling up additional entries from a certain number of unsuccessful attempts, etc.) B. is used in the encryption techniques of most banks), and then the person entering is locked out and referred to a key that is only personally accessible. Unless the number sequences are extremely simply chosen (e.g. 1234 or 9876 ), this can only be effectively overcome today by spying on them. The same applies to the three-digit encryption on a suitcase: The usually three-digit number offers little time for guessing during processing and thus makes it more secure: The prerequisite is, however, that the owner has changed at least the factory setting 000 beforehand.

Modern encryption methods are technically so advanced that in practice, apart from testing all possible keys - the brute force method - they can usually only be broken by a dictionary attack . The weak point in both attacks is the password chosen by the user. So that a password is not more insecure than the actual encryption (many common methods use 128-bit keys), a sequence of around 20 random alphanumeric characters is theoretically required for this. If the password does not consist of evenly distributed random characters, even significantly longer character strings are necessary to achieve the same level of security.

In contrast, the US National Institute of Standards and Technology (NIST) published new rules for secure passwords in mid-August 2017. According to the authors, many of the old rules - such as upper and lower case letters, special characters, frequent changing of passwords - which have been an important recommendation in recent years, created little or no additional security.

Safety factors

The security of a password depends mainly on 2 factors:

  • The password must remain secret.
  • The password must not be easy to guess.

confidentiality

Authentication passwords offer the greatest level of security if they are only used once. Each repeated use of the password increases the risk of revealing the password in the event of unencrypted transfer or espionage measures (e.g. through keylogging or phishing ). Because passwords are permanently valid, the passwords obtained in this way can be reused, in contrast to transaction numbers , which can only be used once.

The requirement that passwords be changed regularly comes from this consideration. However, what speaks against this requirement is that it is difficult for people to remember a completely new password every 3 months. In practice, it often happens that such passwords end with a number that is increased by 1 every 3 months. This method does not significantly increase the security of the password, since a password that has become known allows future passwords to be inferred.

The transmission of the password from the user to the system should be secure, e.g. B. by using encrypted channels for transmission (see also TLS ). With a secure implementation and sufficient strength of the encryption it is almost impossible for the attacker to find out the password, since the computing capacity of today's computers is by far not sufficient to crack modern encryption in a reasonable time.

Passwords should not be written down, but ideally only stored in the head of the authorized person. This requires that the password can be easily remembered. However, this conflicts with the fact that unauthorized persons are not allowed to find out the password by guessing. In this area of ​​tension, password guidelines try to find a pragmatic compromise.

The password must not be saved in plain text. In the case of the point that checks whether an entered password matches a previously entered password, the password itself does not have to be saved at all, for example, it is sufficient to save a hash value calculated using a cryptographic hash function . In order to prevent attacks on the hash value with the help of hash tables (e.g. rainbow tables ), a random value ( salt ) must also be included in the hash value . In addition, the function should be computationally intensive (e.g. PBKDF2 ) in order to prevent rapid testing.

Guessing Passwords

It is advisable to assign a different password for each application . If the password of an application is determined by an attacker, access to another application is still denied to the attacker.

Especially against phishing on the Internet, it is advisable to create the password as a hash value from a password that the user chooses and the domain of the website. On the one hand, this means that every website is automatically assigned a different password, even if the user should always enter the same password. Many phishing methods can be prevented in this way. However, this only helps to a limited extent against keyloggers.

Many passwords, like 123456 , can be easily guessed by attackers due to their simplicity. Since most passwords are entered by human users (as opposed to generation by random number generators ) and, above all, must be easy to remember, passwords that are easy to guess are often used, such as B. your own name or the name of a family member, friend or pet, as well as birthdays or addresses.

When generating by random number generators, it should be noted that the passwords received are difficult to remember and the user therefore tends to save or write them down. An alternative is the combination of random mechanisms and easy-to-remember elements, e.g. B. as when using diceware .

The password should be long enough so that it cannot be determined by trial and error (brute force attack). The system should also use a sufficiently large character set with which the password is formed. The required length and composition depends on several factors:

  • Which characters are used (numbers, letters, special characters, ordered by complexity as numbers permit only ten variations of 0-9, letters, however, 26 or character case even 52 variations for each character that a brute-force attack on make the password much more difficult).
  • A password can also be made more secure by using characters that are not found on the keyboard, e.g. B. "®, ¤, ©". These characters are mostly ignored in brute force attacks . For typing in, use Alt+ 0174, Alt+ 0164and Alt+ under Windows 0169. The digits must be typed on the numeric keypad with the Num Lock activated . This method cannot be used on all systems because either only a restricted character set is permitted for the password (e.g. some mainframes) or it cannot be entered using a physical keyboard (e.g. smartphones).
  • A password should not be found using a dictionary attack . This can be done using made-up words without any logical reference, such as For example, “whistle lights” or “bird's keyboard” cannot be completely prevented, since dictionary attacks access lists of known passwords and terms and more complex dictionary attacks with hybrid functions can combine several series of words and thus break artificial words. By combining several words, the number of combinations to be guessed increases very quickly, so that quite strong passwords can be generated by several arbitrarily selected words. The use of Leetspeak can serve to complicate by interspersed special characters a dictionary attack and keep the word still readable.

The password checking system should only allow a small number of log-in attempts from an IP address in a certain period of time, e.g. B. only one password per second. Otherwise rate attacks ( brute force ) can be started directly on the system.

Insecure passwords

This includes the lightest passwords, i.e. words that make sense or whose use as passwords is well documented. This is possible if large amounts of passwords are revealed through compromising a website. These passwords include not only static terms, but also educational patterns that are predictable. Some examples:

Examples Explanation
Roller coaster , chrysanthemum , cypress Words from a dictionary are easy to guess
asdf, wsxedc, tzughj Simple strings from the keyboard
123456 , 54321, 13131 Simple strings of digits
Martin, Sonja Proper names - as these are often found in dictionaries, a dictionary attack is made possible
Spatzi, Mausi Well-known nicknames, nicknames and nicknames
1985, July 3, 1976 Years of birth, birthdays, etc.
Mausi 1976, I July 3, 1976 and using it as an appendix to another term
Password June 2020 Typical techniques to simplify password changes, such as: B. Appending digits or month abbreviations to a fixed term

These so-called trivial passwords can be summarized in comparatively clear lists and are easy to research. Password crackers have been generating them partly automatically for many years, so they no longer have any protective effect.

Passwords that are used by other providers, where they may be passed on or stolen, or guessable modifications are just as insecure. Is z. Used for example on Facebook Wa64h8NR2RKGsQfacebook, it is easy for someone with access to Facebook passwords to guess that Wa64h8NR2RKGsQwikipedia may be used on Wikipedia. The same applies to Wa64h8NR2RKGsQ01 and Wa64h8NR2RKGsQ02. A downstream hash function can help.

The patterns presented above do not make a password more secure, as these patterns are also known to the attackers. Therefore, secure passwords have to get their security from other sources, for example by choosing a sufficient number of different words that are combined.

Password formulas

With passwords created using formulas, users remain independent from external providers. At the same time, this principle enables an arbitrarily high level of security. The user remembers a formula that applies to all passwords, which results in different passwords in connection with a variable factor. Examples of such variable factors are, for example, an Internet address or a company name. The user only remembers the encryption code required to create the password and thus receives individual and secure passwords at the same time. It is important that the generated password cannot be used to infer the formula so that a password intercepted on a less well-secured page cannot be used to infer that of other pages.

Typically a constant password is used and this is hashed together with something specific to the service . There are various programs that do this automatically.

example

Processing stage example.tld wikipedia.org
Constant password Wa64h8NR2RKGsQ Wa64h8NR2RKGsQ
Second level domain example.tld wikipedia.org
Supplemented password Wa64h8NR2RKGsQbeispiel.tld Wa64h8NR2RKGsQwikipedia.org
Supplemented password in hex 5761363468384e5232524b4773516265
69737069656c2e746c64
5761363468384e5232524b4773517769
6b6970656469612e6f7267
Added password in Base64 V2E2NGg4TlIyUktHc1FiZWlzcGllbC50bGQ= V2E2NGg4TlIyUktHc1F3aWtpcGVkaWEub3Jn
Hashed password in hex 5942b19324253a01c69b04e8165428c4
ee0da5b0f1436f0e8623f388b1b30bd4
9958e7f183f746e836aab22e9ed82046
46269abae35b2f184d9fb512205193de
Hashed password in Base64 WUKxkyQlOgHGmwToFlQoxO4NpbDxQ28O
hiPziLGzC9Q=
mVjn8YP3Rug2qrIuntggRkYmmrrjWy8Y
TZ+1EiBRk94=

The "constant password" is the same for both domains. If an attacker intercepts this password, he can use it directly on the other website.

The "supplemented password" is the constant password, supplemented by the domain of the respective website. It differs between the websites, but at the end of the password you can clearly see how it is structured. By simply replacing the “example.tld” part, an attacker could easily guess the password for other websites.

The "added password in hex" is just a different representation. At first glance, it looks random, but if you look closely, you can see that the passwords in both columns start with the same digits and only differ at the end.

The “added password in Base64” is also just another representation. Here, 3 characters of the plain text password are always converted into 4 characters of the coded password in blocks. Here, too, the beginning of the coded password is the same on both sides, only the end is different.

By using a cryptographic hash function (in this example SHA-256), the password is so jumbled that it is not possible to infer the original password or parts of it from the result.

The output from SHA-256 is a sequence of bits or bytes. In order to display this sequence in text form, it must be coded, for example with hexadecimal digits or Base64 . The representation in hexadecimal is relatively true to the original, as the individual bits can still be easily recognized. The representation in Base64 is shorter, but hides the individual bits, so that it is more difficult to see whether the data encoded in this way is actually jumbled or whether the coding is just the effect.

The main difference between the coded and hashed variants of the password is that the original password can easily be calculated from the coded variants, whereas this is not possible with the hashed variants.

Pass phrase for the password

When used correctly and easy to remember, pass phrases are considered safe. This means sentences which are easy to remember but too complicated to guess. The first letters of all words in the sentence make up the password. For example, " W hen d u v ersuchst m a P assword z u k warm w earth i ch d i v erhauen". The 11-digit password WdvmPzkwidv can be constructed from this. These eleven digits can only be guessed or guessed by the brute force method with great expenditure of time. calculate.

If the password can be of any length and spaces are allowed, the entire pass phrase is more secure than the password derived from it. However, there are enough situations in which such passwords are not allowed by the system.

Trying out passwords

The following table shows the maximum computing time required for a brute force attack on various passwords. In this example, a computing power of 1 billion keys is assumed, which the attacker can try out per second. This roughly corresponds to the performance of a modern standard PC with a powerful graphics card (e.g. Radeon HD 6770 from 2011). The underlying formula for calculating the maximum number of attempts required is as follows: Character space size Password length, i.e. for alphanumeric passwords (62 characters) with a length of 10, a maximum of 62 10 attempts would result . Furthermore, it is assumed for this example that the password is available as an md5 hash . It should be noted that the values ​​in this table are only an example and can also differ very significantly in practice:

Maximum computing time of a brute force attack at 1 billion keys per second
  Password length
drawing room 4 characters 5 characters 6 characters 7 characters 8 characters 9 characters 10 characters 11 characters 12 characters
10 [0-9] <1 ms <1 ms 1 ms 10 ms 100 ms 1 second 10 seconds 2 minutes 17 minutes
26 [a – z] <1 second <1 second <1 second 8 seconds 4 minutes 2 hours 2 days 42 days 3 years
52 [AZ; a – z] <1 second <1 second 20 seconds 17 minutes 15 hours 33 days 5 years 238 years 12,400 years
62 [AZ; a-z; 0-9] <1 second <1 second 58 seconds 1 hour 3 days 159 days 27 years 1,649 years 102,000 years
96 (+ special characters) <1 second 8 seconds 13 minutes 21 hours 84 days 22 years 2,108 years 202,000 years 19 million years

Alternatives

Instead of having to enter passwords manually, keys can also be stored in a key file. For applications such as SSH , a public key method can also be used in addition to authentication with a password . The advantage here is that the remote station cannot see the secret private key . Here, too, the private key is kept in a file and can be protected against unauthorized reading with a password.

Access control can also be carried out by identifying the person using (almost) unique personal characteristics such as fingerprints or the iris pattern . However, it is now possible to forge such features, which is why biometric authentication methods should not be used for sensitive data. In addition, with biometric procedures, access by authorities or other third parties can be forced.

Another alternative for access control is, instead of requiring knowledge of a password, to require possession of a unique object. This object, which is called a security token , can be a chip card or a special USB stick , for example . Tokens were and are used in the railroad industry to ensure that only one train moves on a single-track route. In order to protect the modern token from misuse, it is often additionally protected by a password. One then speaks of a two-factor authentication , since both “possession of an object” and “knowledge of a secret” are required for authentication.

See also

Web links

Wiktionary: Password  - explanations of meanings, word origins, synonyms, translations

Individual evidence

  1. Password in duden.de , accessed on April 17, 2017.
  2. Recommendation of the BSI on choosing a password
  3. Secure passwords: Many of the conventional security rules are useless . heise.de. Retrieved August 14, 2017.
  4. Password data from Flirtlife.de compromised . In: Heise online . June 22, 2006.
  5. Bruce Schneier : MySpace Passwords Aren't So Dumb . In: Wired . December 14, 2006.
  6. 10 Most Common Passwords . In: PC Magazin . April 18, 2007.
  7. PwdHash (English) Description of the problem Multiple use of passwords. Retrieved January 4, 2014.
  8. Password security with pass phrase
  9. Pass phrase is easier to remember than password
  10. hashcat.net ( memento of October 9, 2010 in the Internet Archive ). Retrieved August 23, 2011
  11. ^ Thor's Password Strength Checker . Retrieved August 16, 2011
  12. Password recovery speeds . Retrieved December 13, 2012
  13. ccc.de
  14. mashable.com