.\" Michael Haardt (michael@cantor.informatik.rwth.aachen.de) Sat Sep 3 22:00:30 MET DST 1994 .\" .\" This is free documentation; you can redistribute it and/or .\" modify it under the terms of the GNU General Public License as .\" published by the Free Software Foundation; either version 2 of .\" the License, or (at your option) any later version. .\" .\" The GNU General Public License's references to "object code" .\" and "executables" are to be interpreted as the output of any .\" document formatting or typesetting system, including .\" intermediate and printed output. .\" .\" This manual is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public .\" License along with this manual; if not, write to the Free .\" Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, .\" USA. .\" .\" Sun Feb 19 21:32:25 1995, faith@cs.unc.edu edited details away .\" .\" A FAZER: esta página deve descrever com mais detalhes o comportamento do DES, .\" a string que será codificada e os determinantes dos fatores de repetição. .\" Usa-se uma repetição simples com ECB ou algo mais avançado? Espero que as explicações .\" atuais sejam úteis, mas não suficientes. .\" .\" acrescentado _XOPEN_SOURCE, aeb, 970705 .\" " .TH CRYPT 3 "September 3, 1994" "" "Library functions" .SH NOME crypt \- encriptação de senhas e dados .SH SINOPSE .B #define _XOPEN_SOURCE .br .B #include .sp .BI "char *crypt(const char *" key ", const char *" salt ); .SH DESCRIÇÃO .B crypt é a função de encriptação de senhas. É baseada no algoritmo DES, que é implementado de modo a, entre outras coisas, dificultar implementações em hardware de buscas de chaves. .PP .I key é a senha digitada pelo usuário. .PP .I salt é uma string de dois caracteres do conjunto [\fBa\fP\(en\fBzA\fP\(en\fBZ0\fP\(en\fB9./\fP]. Esta string pode modificar o algoritmo de 4096 modos diferentes. .PP Uma chave de 56 bits é obtida usando os 7 bits menos significativos de .IR key . Esta chave codifica repetidamente uma string constante (normalmente uma string só de zeros), e o valor resultante aponta para a senha codificada: uma seqüência de 13 caracteres ASCII imprimíveis (sendo os primeiros dois o salt). O valor retornado aponta para dados estáticos cujo conteúdo é sobrescrito a cada chamada da função. .PP Aviso: a chave tem .if t 2\s-2\u56\s0\d .if n 2**56 7.2e16 valores possíveis. Podem ser feitas buscas exaustivas com computadores maciçamente paralelos. Programas como o .BR crack (1), testam as senhas mais usadas por pessoas. Estas senhas não devem, portanto, ser nomes ou palavras comuns. recomenda-se usar um programa como .BR passwd (1) que procure senhas fracas durante o processo de seleção. .PP O próprio algoritmo DES tem características que tornam o uso de .BR crypt (3) uma má escolha para qualquer outra coisa que não senhas. Se você estiver pensando em usá-la para criptografia, não o faça, mas procure um bom livro sobre criptografia e uma das bibliotecas DES (são fáceis de encontrar). .\" Estes detalhes não são necessários a esta manpage. . . .\" .PP .\" .\" Se, ao codificar um texto P com DES usando uma chave K for gerado o texto C, .\" o texto complementar P' codificado com a chave complementar K' gerará o texto complementar .\" C'. .\" .\" .PP .\" .\" Chaves fracas são aquelas que permanecem invariantes sob a transformação DES. As quatro .\" chaves fraces conhecidas são 0101010101010101, fefefefefefefefe, 1f1f1f1f0e0e0e0e .\" e e0e0e0e0f1f1f1f1. Elas devem ser evitadas. .\" .PP .\" Há seis pares conhecidos de chaves semi-fracas, que levam a dados idênticos, e que também .\" devem ser evitadas. .\" Infelizmente eu não sei quais são .\" .\" .PP .\" .\" Dados muitos redundantes causam problemas com DES usado no modo .\" .I codebook .\" implementado por .\" .BR crypt (3) .\" A interface .\" .BR crypt (3) .\" interface should be used only for its intended purpose of password .\" verification, and should not be used at part of a data encryption tool. .\" .PP .\" The first and last three output bits of the fourth S-box can be .\" represented as function of their input bits. Empiric studies have .\" shown that S-boxes partially compute the same output for similar input. .\" It is suspected that this may contain a back door which could allow the .\" NSA to decrypt DES encrypted data. .\" .PP .\" Making encrypted data computed using crypt() publically available has .\" to be considered insecure for the given reasons. .SH "DE ACORDO COM" SVID, X/OPEN, BSD 4.3 .SH "VER TAMBÉM" .BR login "(1), " passwd "(1), " encrypt "(3), " getpass "(3), " passwd (5) .SH TRADUZIDO POR LDP-BR em 21/08/2000. \&\fR\&\f(CWPaulo César Mendes (tradução)\fR \&\fR\&\f(CWxxxxxxxxxxxxxxxxxxxxxxxxx (revisão)\fR