Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
/usr/lib/security/$ISA/crypt_sha256.so
The crypt_sha256 module is a one-way password hashing module for use with crypt(3C) that uses the SHA-256 message hash algorithm. The algorithm identifier for crypt.conf(4) and policy.conf(4) is 5.
This module is designed to make it difficult to crack passwords that use brute force attacks based on high speed SHA-256 implementations that use code inlining, unrolled loops, and table lookup.
The maximum password length for crypt_sha256 is 255 characters.
The following options can be passed to the module by means of crypt.conf(4): rounds=<positive_number>
Specifies the number of rounds of SHA-256 to use in generation of the salt; the default number of rounds is 5000. Negative values have no effect and are ignored. The minimum number of rounds cannot be below 1000. The number of additional rounds is stored in the salt string returned by crypt_gensalt(3C). For example:
$5,rounds=6000$nlxmTTpz$When crypt_gensalt(3C) is being used to generate a new salt, if the number of additional rounds configured in crypt.conf(4) is greater than that in the old salt, the value from crypt.conf(4) is used instead. This allows for migration to stronger (but more time-consuming) salts on password change.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE ATTRIBUTE VALUE |
Interface Stability Committed |
MT-Level Safe |
passwd(1), crypt(3C), crypt_genhash_impl(3C), crypt_gensalt(3C), crypt_gensalt_impl(3C), getpassphrase(3C), crypt.conf(4), passwd(4), policy.conf(4), attributes(5)