/ etc / passwdおよび/ etc / shadowのパスワードを暗号化するためにどのような方法が使用されていますか?


19

/etc/passwd/etc/shadowファイルを注意深く調べると、保存されているパスワードが何らかの形式のハッシュ関数を使用してハッシュされていることがわかります。

Googleのクイック検索では、デフォルトで、パスワードはDESを使用して暗号化されていることがわかります。エントリがで始まる場合、$他のハッシュ関数が使用されたことを示しています。

たとえば、私のUbuntuマシンのいくつかのエントリは$6$...で始まります

さまざまな数字は何を表していますか?

回答:


28

完全なリストはman 3 cryptWebバージョン)にあります。

          ID  | Method
          -------------------------------------------------
          1   | MD5
          2a  | Blowfish (on some Linux distributions)
          5   | SHA-256 (since glibc 2.7)
          6   | SHA-512 (since glibc 2.7)

(BlowfishはWikipedia Crypt(Unix)のいずれか、$2$または$2a$それに準じます。)

だから、$6$手段SHA-512

システムが使用するものは、pam_unix PAMモジュールに渡されるオプションによって管理されます

Ubuntuの最新バージョンのデフォルトは次の場所に設定されてい/etc/pam.d/common-passwordます。

password        [success=1 default=ignore]      pam_unix.so obscure sha512

これは、次回パスワードを変更するときに、アカウントがNIS / LDAP / Kerberosなどではなくローカルであると想定して、SHA-512を使用してハッシュされることを意味します。

こちらもご覧ください:


私のクイックダブルチェックは、/etc/shadowで始まる2つのエントリを示しています$6$
ネイサンオスマン

SHA-256およびSHA-512は、ハッシュ関数のSHA-2セットの一部であることに注意してください。
mattdm

4
SHA-2に基づく暗号化ハッシュはプレーンSHA-2ではないことに注意してください。プレーンSHA-2は辞書攻撃に対して弱いため、これは悪いでしょう。SHA-2暗号化スキームは、プレーンハッシュをビルディングブロックとして使用しますが、変数ワークファクター(辞書攻撃を遅くするため)とソルトを追加します。
CodesInChaos

私のUbuntuマシンでは、ルートのパスワードに感嘆符記号(!)が付いています。を読むman shadowと、パスワードがロックされているため、unixパスワードを使用して直接ログインすることはできません。デフォルトで無効になっているUbuntu set rootアカウントに関係しています。
Akronix
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.