# Russian translation of manpages # This file is distributed under the same license as the manpages-l10n package. # Copyright © of this file: # Azamat Hackimov , 2014. # Dmitriy S. Seregin , 2013. # Dmitry Bolkhovskikh , 2017. # Katrin Kutepova , 2018. # Yuri Kozlov , 2011-2019. # Иван Павлов , 2017. msgid "" msgstr "" "Project-Id-Version: manpages-l10n\n" "POT-Creation-Date: 2023-06-27 19:23+0200\n" "PO-Revision-Date: 2019-10-05 07:56+0300\n" "Last-Translator: Yuri Kozlov \n" "Language-Team: Russian \n" "Language: ru\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n" "%100>=11 && n%100<=14)? 2 : 3);\n" "X-Generator: Lokalize 2.0\n" #. type: Dd #: debian-bookworm debian-unstable #, fuzzy, no-wrap #| msgid "October 2021" msgid "October 11, 2017" msgstr "октябрь 2021 г." #. type: Dt #: debian-bookworm debian-unstable #, fuzzy, no-wrap #| msgid "CRYPT" msgid "CRYPT 3" msgstr "CRYPT" #. type: Os #: debian-bookworm debian-unstable #, no-wrap msgid "Openwall Project" msgstr "" #. type: Sh #: debian-bookworm debian-unstable #, no-wrap msgid "NAME" msgstr "ИМЯ" #. type: Plain text #: debian-bookworm debian-unstable msgid "E<.Nm crypt , crypt_r , crypt_rn , crypt_ra>" msgstr "" #. type: Nd #: debian-bookworm debian-unstable #, no-wrap msgid "passphrase hashing" msgstr "" #. type: Sh #: debian-bookworm debian-unstable #, no-wrap msgid "LIBRARY" msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "E<.Lb libcrypt>" msgstr "" #. type: Sh #: debian-bookworm debian-unstable #, no-wrap msgid "SYNOPSIS" msgstr "СИНТАКСИС" #. type: In #: debian-bookworm debian-unstable #, no-wrap msgid "crypt.h" msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "E<.Ft \"char *\"> E<.Fo crypt> E<.Fa \"const char *phrase\"> E<.Fa \"const " "char *setting\"> E<.Fc> E<.Ft \"char *\"> E<.Fo crypt_r> E<.Fa \"const char " "*phrase\"> E<.Fa \"const char *setting\"> E<.Fa \"struct crypt_data *data\"> " "E<.Fc> E<.Ft \"char *\"> E<.Fo crypt_rn> E<.Fa \"const char *phrase\"> E<.Fa " "\"const char *setting\"> E<.Fa \"struct crypt_data *data\"> E<.Fa \"int size" "\"> E<.Fc> E<.Ft \"char *\"> E<.Fo crypt_ra> E<.Fa \"const char *phrase\"> " "E<.Fa \"const char *setting\"> E<.Fa \"void **data\"> E<.Fa \"int *size\"> " "E<.Fc>" msgstr "" #. type: Sh #: debian-bookworm debian-unstable #, no-wrap msgid "DESCRIPTION" msgstr "ОПИСАНИЕ" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "The E<.Nm crypt>, E<.Nm crypt_r>, E<.Nm crypt_rn>, and E<.Nm crypt_ra> " "functions irreversibly E<.Dq hash> E<.Fa phrase> for storage in the system " "password database E<.Pq Xr shadow 5> using a cryptographic E<.Dq hashing " "method.> The result of this operation is called a E<.Dq hashed passphrase> " "or just a E<.Dq hash.> Hashing methods are described in E<.Xr crypt 5>." msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "E<.Fa setting> controls which hashing method to use, and also supplies " "various parameters to the chosen method, most importantly a random E<.Dq " "salt> which ensures that no two stored hashes are the same, even if the E<." "Fa phrase> strings are the same." msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "The E<.Fa data> argument to E<.Nm crypt_r> is a structure of type E<.Vt " "\"struct crypt_data\">. It has at least these fields:" msgstr "" #. type: Plain text #: debian-bookworm debian-unstable #, no-wrap msgid "" "struct crypt_data {\n" " char output[CRYPT_OUTPUT_SIZE];\n" " char setting[CRYPT_OUTPUT_SIZE];\n" " char input[CRYPT_MAX_PASSPHRASE_SIZE];\n" " char initialized;\n" "};\n" msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "Upon a successful return from E<.Nm crypt_r>, the hashed passphrase will be " "stored in E<.Fa output>. Applications are encouraged, but not required, to " "use the E<.Fa input> and E<.Fa setting> fields to store the strings that " "they will pass as E<.Fa input phrase> and E<.Fa setting> to E<.Nm crypt_r>. " "This will make it easier to erase all sensitive data after it is no longer " "needed." msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "The E<.Fa initialized> field must be set to zero before the first time a E<." "Vt \"struct crypt_data\"> object is first used in a call to E<.Fn crypt_r>. " "We recommend zeroing the entire object, not just E<.Fa initialized> and not " "just the documented fields, before the first use. (Of course, do this " "before storing anything in E<.Fa setting> and E<.Fa input>.)" msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "The E<.Fa data> argument to E<.Nm crypt_rn> should also point to a E<.Vt " "\"struct crypt_data\"> object, and E<.Fa size> should be the size of that " "object, cast to E<.Vt int>. When used with E<.Nm crypt_rn>, the entire E<." "Fa data> object (except for the E<.Fa input> and E<.Fa setting> fields) must " "be zeroed before its first use; this is not just a recommendation, as it is " "for E<.Nm crypt_r>. Otherwise, the fields of the object have the same uses " "that they do for E<.Nm crypt_r>." msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "On the first call to E<.Nm crypt_ra>, E<.Fa data> should be the address of a " "E<.Vt \"void *\"> variable set to NULL, and E<.Fa size> should be the " "address of an E<.Vt int> variable set to zero. E<.Nm crypt_ra> will " "allocate and initialize a E<.Vt \"struct crypt_data\"> object, using E<.Xr " "malloc 3>, and write its address and size into the variables pointed to by " "E<.Fa data> and E<.Fa size>. These can be reused in subsequent calls. " "After the application is done hashing passphrases, it should deallocate the " "E<.Vt \"struct crypt_data\"> object using E<.Xr free 3>." msgstr "" #. type: Sh #: debian-bookworm debian-unstable #, no-wrap msgid "RETURN VALUES" msgstr "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "Upon successful completion, E<.Nm crypt>, E<.Nm crypt_r>, E<.Nm crypt_rn>, " "and E<.Nm crypt_ra> return a pointer to a string which encodes both the " "hashed passphrase, and the settings that were used to encode it. This " "string is directly usable as E<.Fa setting> in other calls to E<.Nm crypt>, " "E<.Nm crypt_r>, E<.Nm crypt_rn>, and E<.Nm crypt_ra>, and as E<.Fa prefix> " "in calls to E<.Nm crypt_gensalt>, E<.Nm crypt_gensalt_rn>, and E<.Nm " "crypt_gensalt_ra>. It will be entirely printable ASCII, and will not " "contain whitespace or the characters E<.Sq Li \\&:>, E<.Sq Li \\&;>, E<.Sq " "Li \\&*>, E<.Sq Li \\&!>, or E<.Sq Li \\&\\e>. See E<.Xr crypt 5> for more " "detail on the format of hashed passphrases." msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "E<.Nm crypt> places its result in a static storage area, which will be " "overwritten by subsequent calls to E<.Nm crypt>. It is not safe to call E<." "Nm crypt> from multiple threads simultaneously." msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "E<.Nm crypt_r>, E<.Nm crypt_rn>, and E<.Nm crypt_ra> place their result in " "the E<.Fa output> field of their E<.Fa data> argument. It is safe to call " "them from multiple threads simultaneously, as long as a separate E<.Fa data> " "object is used for each thread." msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "Upon error, E<.Nm crypt_r>, E<.Nm crypt_rn>, and E<.Nm crypt_ra> write an E<." "Em invalid> hashed passphrase to the E<.Fa output> field of their E<.Fa " "data> argument, and E<.Nm crypt> writes an invalid hash to its static " "storage area. This string will be shorter than 13 characters, will begin " "with a E<.Sq Li \\&*>, and will not compare equal to E<.Fa setting>." msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "Upon error, E<.Nm crypt_rn> and E<.Nm crypt_ra> return a null pointer. E<." "Nm crypt_r> and E<.Nm crypt> may also return a null pointer, or they may " "return a pointer to the invalid hash, depending on how libcrypt was " "configured. (The option to return the invalid hash is for compatibility " "with old applications that assume that E<.Nm crypt> cannot return a null " "pointer. See E<.Sx PORTABILITY NOTES> below.)" msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "All four functions set E<.Va errno> when they fail." msgstr "" #. type: Sh #: debian-bookworm debian-unstable #, no-wrap msgid "ERRORS" msgstr "ОШИБКИ" #. type: It #: debian-bookworm debian-unstable #, fuzzy, no-wrap #| msgid "B" msgid "Er EINVAL" msgstr "B" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "E<.Fa setting> is invalid, or requests a hashing method that is not " "supported." msgstr "" #. type: It #: debian-bookworm debian-unstable #, fuzzy, no-wrap #| msgid "B" msgid "Er ERANGE" msgstr "B" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "E<.Fa phrase> is too long (more than E<.Dv CRYPT_MAX_PASSPHRASE_SIZE> " "characters; some hashing methods may have lower limits)." msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "E<.Nm crypt_rn> only: E<.Fa size> is too small for the hashing method " "requested by E<.Fa setting>." msgstr "" #. type: It #: debian-bookworm debian-unstable #, fuzzy, no-wrap #| msgid "B" msgid "Er ENOMEM" msgstr "B" #. type: Plain text #: debian-bookworm debian-unstable #, fuzzy #| msgid "Could not allocate memory." msgid "Failed to allocate internal scratch memory." msgstr "Невозможно выделить память." #. type: Plain text #: debian-bookworm debian-unstable msgid "E<.Nm crypt_ra> only: failed to allocate memory for E<.Fa data>." msgstr "" #. type: It #: debian-bookworm debian-unstable #, no-wrap msgid "Er ENOSYS No or Er EOPNOTSUPP" msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "Hashing passphrases is not supported at all on this installation, or the " "hashing method requested by E<.Fa setting> is not supported. These error " "codes are not used by this version of libcrypt, but may be encountered on " "other systems." msgstr "" #. type: Sh #: debian-bookworm debian-unstable #, fuzzy, no-wrap #| msgid "CAPABILITIES" msgid "PORTABILITY NOTES" msgstr "CAPABILITIES" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "E<.Nm crypt> is included in POSIX, but E<.Nm crypt_r>, E<.Nm crypt_rn>, and " "E<.Nm crypt_ra> are not part of any standard." msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "POSIX does not specify any hashing methods, and does not require hashed " "passphrases to be portable between systems. In practice, hashed passphrases " "are portable as long as both systems support the hashing method that was " "used. However, the set of supported hashing methods varies considerably " "from system to system." msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "The behavior of E<.Nm crypt> on errors isn't well standardized. Some " "implementations simply can't fail (except by crashing the program), others " "return a null pointer or a fixed string. Most implementations don't set E<." "Va errno>, but some do. POSIX specifies returning a null pointer and " "setting E<.Va errno>, but it defines only one possible error, E<.Er ENOSYS>, " "in the case where E<.Nm crypt> is not supported at all. Some older " "applications are not prepared to handle null pointers returned by E<.Nm " "crypt>. The behavior described above for this implementation, setting E<.Va " "errno> and returning an invalid hashed passphrase different from E<.Fa " "setting>, is chosen to make these applications fail closed when an error " "occurs." msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "Due to historical restrictions on the export of cryptographic software from " "the USA, E<.Nm crypt> is an optional POSIX component. Applications should " "therefore be prepared for E<.Nm crypt> not to be available, or to always " "fail (setting E<.Va errno> to E<.Er ENOSYS>) at runtime." msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "POSIX specifies that E<.Nm crypt> is declared in" msgstr "" #. type: In #: debian-bookworm debian-unstable #, no-wrap msgid "unistd.h ," msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "but only if the macro E<.Dv _XOPEN_CRYPT> is defined and has a value greater " "than or equal to zero. Since libcrypt does not provide" msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "it declares E<.Nm crypt>, E<.Nm crypt_r>, E<.Nm crypt_rn>, and E<.Nm " "crypt_ra> in" msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "instead." msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "On a minority of systems (notably recent versions of Solaris), E<.Nm crypt> " "uses a thread-specific static storage buffer, which makes it safe to call " "from multiple threads simultaneously, but does not prevent each call within " "a thread from overwriting the results of the previous one." msgstr "" #. type: Sh #: debian-bookworm debian-unstable #, no-wrap msgid "BUGS" msgstr "ОШИБКИ" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "Some implementations of E<.Nm crypt>, upon error, return an invalid hash " "that is stored in a read-only location or only initialized once, which means " "that it is only safe to erase the buffer pointed to by the E<.Nm crypt> " "return value if an error did not occur." msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "E<.Vt \"struct crypt_data\"> may be quite large (32kB in this implementation " "of libcrypt; over 128kB in some other implementations). This is large " "enough that it may be unwise to allocate it on the stack." msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "Some recently designed hashing methods need even more scratch memory, but " "the E<.Nm crypt_r> interface makes it impossible to change the size of E<.Vt " "\"struct crypt_data\"> without breaking binary compatibility. The E<.Nm " "crypt_rn> interface could accommodate larger allocations for specific " "hashing methods, but the caller of E<.Nm crypt_rn> has no way of knowing how " "much memory to allocate. E<.Nm crypt_ra> does the allocation itself, but " "can only make a single call to E<.Xr malloc 3>." msgstr "" #. type: Sh #: debian-bookworm debian-unstable #, no-wrap msgid "ATTRIBUTES" msgstr "АТРИБУТЫ" #. type: Plain text #: debian-bookworm debian-unstable #, fuzzy #| msgid "" #| "For an explanation of the terms used in this section, see " #| "B(7)." msgid "" "For an explanation of the terms used in this section, see E<.Xr attributes " "7>." msgstr "Описание терминов данного раздела смотрите в B(7)." #. type: tbl table #: debian-bookworm debian-unstable #, no-wrap msgid "Interface" msgstr "Интерфейс" #. type: tbl table #: debian-bookworm debian-unstable #, no-wrap msgid "Attribute" msgstr "Атрибут" #. type: tbl table #: debian-bookworm debian-unstable #, no-wrap msgid "Value" msgstr "Значение" #. type: tbl table #: debian-bookworm debian-unstable #, no-wrap msgid ".Nm crypt\n" msgstr "" #. type: tbl table #: debian-bookworm debian-unstable #, no-wrap msgid "Thread safety" msgstr "Безвредность в нитях" #. type: tbl table #: debian-bookworm debian-unstable #, no-wrap msgid "MT-Unsafe race:crypt" msgstr "MT-Unsafe race:crypt" #. type: tbl table #: debian-bookworm debian-unstable #, no-wrap msgid ".Nm crypt_r ,\n" msgstr "" #. type: tbl table #: debian-bookworm debian-unstable #, no-wrap msgid ".Nm crypt_rn ,\n" msgstr "" #. type: tbl table #: debian-bookworm debian-unstable #, no-wrap msgid ".Nm crypt_ra\n" msgstr "" #. type: tbl table #: debian-bookworm debian-unstable #, no-wrap msgid "MT-Safe" msgstr "MT-Safe" #. type: Sh #: debian-bookworm debian-unstable #, no-wrap msgid "HISTORY" msgstr "ИСТОРИЯ" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "A rotor-based E<.Nm crypt> function appeared in E<.At v6>. The E<.Dq " "traditional> DES-based E<.Nm crypt> first appeared in E<.At v7>." msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "E<.Nm crypt_r> originates with the GNU C Library. There's also a E<.Nm " "crypt_r> function on HP-UX and MKS Toolkit, but the prototypes and semantics " "differ." msgstr "" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "E<.Nm crypt_rn> and E<.Nm crypt_ra> originate with the Openwall project." msgstr "" #. type: Sh #: debian-bookworm debian-unstable #, no-wrap msgid "SEE ALSO" msgstr "СМОТРИТЕ ТАКЖЕ" #. type: Plain text #: debian-bookworm debian-unstable msgid "" "E<.Xr crypt_gensalt 3>, E<.Xr getpass 3>, E<.Xr getpwent 3>, E<.Xr shadow " "3>, E<.Xr login 1>, E<.Xr passwd 1>, E<.Xr crypt 5>, E<.Xr passwd 5>, E<.Xr " "shadow 5>, E<.Xr pam 8>" msgstr ""