File: crypt.3

package info (click to toggle)
manpages-es 1.24a-6
  • links: PTS
  • area: main
  • in suites: potato
  • size: 4,256 kB
  • ctags: 7
  • sloc: makefile: 66; sh: 62
file content (136 lines) | stat: -rw-r--r-- 5,775 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
.\" 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., 675 Mass Ave, Cambridge, MA 02139,
.\" USA.
.\"
.\" Sun Feb 19 21:32:25 1995, faith@cs.unc.edu edited details away
.\"
.\" A DO: This manual page should go more into detail how DES is perturbed, 
.\" which string will be encrypted, and what determines the repetition factor.
.\" Is a simple repetition using ECB used, or something more advanced?  I hope
.\" the presented explanations are at least better than nothing, but by no
.\" means enough.
.\"
.\" added _XOPEN_SOURCE, aeb, 970705 (agregado por nick@debian.org)
.\"
.\" Traducido al castellano (con permiso) por:
.\" Sebastian Desimone (chipy@argenet.com.ar) (desimone@fasta.edu.ar)
.\" Translation fixed on Thu Apr 23 16:27:38 CEST 1998 by Gerardo
.\" Aburruzaga Garca <gerardo.aburruzaga@uca.es>
.\"
.TH CRYPT 3 "9 Enero 1995" "Linux" "Manual del Programador Linux"
.SH NOMBRE
crypt \- cifrado de contraseas y datos
.SH SINOPSIS
.B #define _XOPEN_SOURCE
.br
.B #include <unistd.h>
.sp
.BI "char *crypt(const char *" key ", const char *" salt );
.SH DESCRIPCIN
.B crypt
es la funcin de cifrado de contraseas. Est basada en el 
algoritmo DES (Data Encryption Standard) con algunas variaciones tendentes
(junto con otras cosas) a desalentar el uso de implementaciones por hardware
de buscadores de claves.
.PP
.I key
es una contrasea tecleada por el usuario. 
.PP
.I salt
es una cadena de dos caracteres elegidas del conjunto 
[\fBa\fP\(en\fBzA\fP\(en\fBZ0\fP\(en\fB9./\fP]. Esta cadena se emplea para
variar el algoritmo en uno de 4096 modos diferentes.
.PP
Al tomar el 7 bit ms bajo de cada carcter de 
.IR key ,
se obtiene una clave de 56 bits. Esta clave de 56 bits se utiliza para 
cifrar repetidamente una cadena constante (usualmente una cadena 
consistente en ceros). El valor devuelto apunta a la contrasea
cifrada, una serie de 13 caracteres imprimibles (los primeros dos
caracteres representan al propio \fBsalt\fP).
El valor devuelto apunta a datos estticos cuyos contenidos se
sobreescriben en cada llamada.
.PP
Cuidado: El espacio de claves consiste en
.if t 2\s-2\u56\s0\d
.if n 2**56
igual a 7.2e16 valores posibles. Son posibles exhaustivas bsquedas en
este espacio de claves empleando computadores masivamente
paralelos. Existen programas, como
.BR crack (1),
que pueden buscar en la porcin del espacio de claves que
es generalmente usado por los humanos para sus contraseas. De aqu
que en la seleccin de contraseas se debe, como mnimo, evitar
palabras y nombres comunes. Se recomienda el uso de un programa 
.BR passwd (1)
que compruebe  durante el proceso de seleccin si la contrasea es vulnerable.
.PP
El algoritmo DES en s tiene unas peculiaridades que hacen que el empleo 
de la interfaz
.BR crypt (3)
sea una pobre eleccin para otro fin ms all de la autenticacin de
contraseas. Si est planeando utilizar la interfaz
.BR crypt (3)
para un proyecto criptogrfico, no lo haga: consiga un buen libro
sobre cifrado y una de las ampliamente disponibles programotecas DES.
.\" Este nivel de detalle no es necesario en esta pgina de Manual...
.\" Po fueno, po fale, po malegro... Po yo lo pongo y el que no lo
.\" quiera leer, que no lo lea, mirust.
.PP
Cuando se cifra un texto plano P mediante DES con la clave K, se
obtiene el texto cifrado C, y luego al cifrar el texto plano
complementario P' con la clave complementaria K' se obtendr el texto
cifrado complementario C'.
.PP
Son claves dbiles aqullas que permanecen invariantes tras la
transformacin de clave DES.
Deben evitarse las cuatro claves dbiles conocidas 0101010101010101,
fefefefefefefefe, 1f1f1f1f0e0e0e0e y e0e0e0e0f1f1f1f1.
.PP
Hay seis pares conocidos de claves medio dbiles, cuyas claves llevan
a los mismos datos cifrados. Las claves que son parte de tales grupos
de claves deberan evitarse.
Siento que no haya podido encontrar cules son.
.PP
Los datos fuertemente redundantes causan problemas con el cifrado DES,
cuando se emplean en el modo de 
.I libro de claves
que implementa
.BR crypt (3).
La interfaz
.BR crypt (3)
debera emplearse solamente para su propsito inicial de verificacin
de contraseas, y no como parte de una herramienta de cifrado de datos.
.PP
Los primeros y ltimos tres bits de salida de la cuarta caja-S pueden
representarse como funciones de sus bits de entrada. Estudios
empricos han demostrado que las cajas-S calculan parcialmente la
misma salida para similar entrada. Se sospecha que esto puede
representar una puerta trasera que podra permitir a la NSA descifrar
datos cifrados con DES.
.PP
Por las razones anteriormente expuestas, el hacer pblicamente
disponibles datos cifrados con crypt() debe considerarse como algo
inseguro. 
.SH "CONFORME A"
SVID, X/OPEN, BSD 4.3
.SH "VASE TAMBIN"
.BR login "(1), " passwd "(1), " encrypt "(3), " getpass "(3), " passwd (5)