crypt

Autres langues

Langue: ja

Autres versions - même langue

Version: 2001-12-23 (openSuse - 09/10/07)

Autres sections - même nom

Section: 3 (Bibliothèques de fonctions)

̾Á°

crypt - ¥Ñ¥¹¥ï¡¼¥É¤È¥Ç¡¼¥¿¤Î°Å¹æ²½

½ñ¼°

#define _XOPEN_SOURCE
#include <unistd.h>

char *crypt(const char *key, const char *salt);

-lcrypt ¤Ç¥ê¥ó¥¯¤¹¤ë¡£

ÀâÌÀ

crypt() ¤Ï¥Ñ¥¹¥ï¡¼¥É°Å¹æ²½´Ø¿ô¤Ç¤¢¤ë¡£ ¸°Ãµº÷¤Î¥Ï¡¼¥É¥¦¥§¥¢¤Ë¤è¤ë¼ÂÁõ¤ò˸¤²¤ë¤è¤¦¤Ë(¤½¤Î¾¤Ë¤â¤¤¤í¤¤¤í) Êѹ¹¤·¤¿ Data Encryption Standard ¥¢¥ë¥´¥ê¥º¥à¤ò¸µ¤Ë¤·¤Æ¤¤¤ë¡£

key ¤Ï¥æ¡¼¥¶¤¬ÆþÎϤ¹¤ë¥Ñ¥¹¥ï¡¼¥É¤Ç¤¢¤ë¡£

salt ¤Ï½¸¹ç [a-zA-Z0-9./] ¤«¤éÁª¤Ð¤ì¤¿ 2 ʸ»ú¤Îʸ»úÎó¤Ç¤¢¤ë¡£ ¤³¤Îʸ»úÎó¤Ï¥¢¥ë¥´¥ê¥º¥à¤Î½ÐÎϤò 4096 Ä̤ê¤Ë¤«¤­Í𤹤Τ˻Ȥï¤ì¤ë¡£

key ¤ÎºÇ½é¤Î 8 ʸ»ú¤Î³Æʸ»ú¤«¤é²¼°Ì 7 ¥Ó¥Ã¥È¤ò¤È¤Ã¤Æ 56 ¥Ó¥Ã¥È¤Î¸°¤¬ÆÀ¤é¤ì¤ë¡£ ¤³¤Î 56 ¥Ó¥Ã¥È¤Î¸°¤ÏÆÃÄê¤Îʸ»úÎó(¤Õ¤Ä¤¦¤Ï¤¹¤Ù¤Æ 0 ¤Îʸ»úÎó) ¤ò·«¤êÊÖ¤·°Å¹æ²½¤¹¤ë¤Î¤ËÍѤ¤¤é¤ì¤ë¡£ ÊÖ¤êÃͤϰŹ沽¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¤Ø¤Î¥Ý¥¤¥ó¥¿¤Ç¡¢13 ¤Î°õ»ú²Äǽ¤Ê ASCII ʸ»ú ¤«¤é¤Ê¤ë(ºÇ½é¤Î 2 ʸ»ú¤Ï salt ¤½¤Î¤â¤Î)¡£ ÊÖ¤êÃͤϡ¢´Ø¿ô¸Æ½Ð¤·¤Î¤¿¤Ó¤Ë¾å½ñ¤­¤µ¤ì¤ëÀÅŪ¤Ê¥Ç¡¼¥¿¤Ø¤Î¥Ý¥¤¥ó¥¿¤Ç¤¢¤ë¡£

·Ù¹ð: ¸°¶õ´Ö¤Ï 2**56 = 7.2e16 ¤Î²Äǽ¤ÊÃͤ«¤éÀ®¤ë¡£ ¤³¤Î¸°¶õ´Ö¤ÎÁ´Ãµº÷¤Ï¶¯ÎϤÊÊÂÎó·×»»µ¡¤ò»È¤¨¤Ð²Äǽ¤Ç¤¢¤ë¡£¤Þ¤¿ crack(1) ¤Î¤è¤¦¤Ê¥½¥Õ¥È¥¦¥§¥¢¤Ï¤³¤Î¸°¶õ´Ö¤ÎÃæ¤Ç¡¢Â¿¤¯¤Î¿Í¤Ë¥Ñ¥¹¥ï¡¼¥É¤È¤·¤Æ »È¤ï¤ì¤ë¤è¤¦¤Ê¸°¤Ë¤Ä¤¤¤Æ¤ÎÁ´Ãµº÷¤¬²Äǽ¤Ç¤¢¤ë¡£ ¤½¤ì¤æ¤¨¡¢¥Ñ¥¹¥ï¡¼¥É¤òÁªÂò¤¹¤ë¤È¤­¤Ë¤Ï¡¢¤¹¤¯¤Ê¤¯¤È¤â¡¢ °ìÈÌŪ¤Ë»È¤ï¤ì¤ëñ¸ì¤È̾Á°¤ÏÈò¤±¤ë¤Ù¤­¤Ç¤¢¤ë¡£ passwd(1) ¤ò»È¤¦»þ¤Ë¤Ï¥¯¥é¥Ã¥¯¤µ¤ì¤¦¤ë¥Ñ¥¹¥ï¡¼¥É¤Ë¤Ä¤¤¤Æ¤Î¸¡ºº¤ò¤¹¤ë¤³¤È¤¬ ¿ä¾©¤µ¤ì¤ë¡£

DES ¥¢¥ë¥´¥ê¥º¥à¤Ë¤Ï¤¤¤¯¤Ä¤«¤ÎÊʤ¬¤¢¤ê¡¢¤½¤ì¤Ë¤è¤Ã¤Æ¥Ñ¥¹¥ï¡¼¥Éǧ¾Ú°Ê³°¤Ë crypt(3) ¤ò»È¤¦¤Î¤Ï¤¿¤¤¤Ø¤ó¤è¤¯¤Ê¤¤ÁªÂò¤È¤Ê¤Ã¤Æ¤¤¤ë¡£¤â¤· crypt(3) ¤ò°Å¹æ¥×¥í¥¸¥§¥¯¥È¤Ë»È¤ª¤¦¤È¤¤¤¦°Æ¤ò¤â¤Ã¤Æ¤¤¤ë¤Ê¤é¤Ð¡¢¤½¤ì¤Ï¤ä¤á¤¿¤Û¤¦¤¬ ¤è¤¤¡£°Å¹æ²½¤Ë¤Ä¤¤¤Æ¤Î¤è¤¤ËܤÈï¤Ç¤âÆþ¼ê¤Ç¤­¤ë DES ¥é¥¤¥Ö¥é¥ê¤Î¤Ò¤È¤Ä¤ò ¼ê¤Ë¤¤¤ì¤ë¤Ù¤­¤À¡£

ÊÖ¤êÃÍ

°Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¤Ø¤Î¥Ý¥¤¥ó¥¿¡¼¤¬ÊÖ¤µ¤ì¤ë¡£ ¥¨¥é¡¼¤Î¾ì¹ç¤Ë¤Ï NULL ¤¬ÊÖ¤µ¤ì¤ë¡£

¥¨¥é¡¼

ENOSYS
crypt() ´Ø¿ô¤¬¼ÂÁõ¤µ¤ì¤Æ¤¤¤Ê¤¤¡£Â¿Ê¬¥¢¥á¥ê¥«¤ÎÍ¢½Ðµ¬À©¤Î¤¿¤á¤Ë¡£

½àµò

SVr4, 4.3BSD, POSIX.1-2001

Ãí°Õ

glibc ¤Ç¤ÎÃí°Õ

¤³¤Î´Ø¿ô¤Î glibc2 ÈǤϰʲ¼¤Î¤è¤¦¤Ê³ÈÄ¥µ¡Ç½¤¬¤¢¤ë¡£ ¤â¤· salt ¤Îʸ»úÎó¤ÎºÇ½é¤Î 3 ʸ»ú¤¬ "$1$" ¤Ç¤¢¤ê¡¢ºÇÂç 8 ʸ»ú¤Î¸å¡¢ ºÇ¸å¤Ë "$" ¤Ç½ª¤ï¤Ã¤Æ¤¤¤ë(¤³¤ì¤Ï¤Ê¤¯¤Æ¤â¤è¤¤)¾ì¹ç¡¢ DES ¤Ç¤Ï¤Ê¤¯ MD5 ¤ò»È¤Ã¤¿°Å¹æ²½¥¢¥ë¥´¥ê¥º¥à¤¬ÍѤ¤¤é¤ì¡¢ ½ÐÎϤϺÇÂç 34 ¥Ð¥¤¥È¤È¤Ê¤ë¡£ ½ÐÎÏ¤Ï "$1$<salt>$<encoded>" ¤Î·Á¼°¤Ç¤¢¤ê¡¢ "<salt>" ¤Ï salt ¤Ë¤ª¤±¤ë "$1$" ¤Ë°ú¤­Â³¤¯ 8 ʸ»ú°Ê²¼¤Îʸ»úÎó¡¢ "<encoded>" ¤Ï°ú¤­Â³¤¯ 22 ʸ»ú¤Îʸ»úÎó¤Ç¤¢¤ë¡£ "<salt>" ¤È "<encoded>" ¤Îʸ»ú¤Ï [a-zA-Z0-9./] ¤Î½¸¹ç¤«¤é Áª¤Ð¤ì¤ë¡£ ¤³¤Î¾ì¹ç¡¢(ºÇ½é¤Î 8 ʸ»ú¤Ç¤Ï¤Ê¤¯) ¥­¡¼ Á´ÂΤ¬°ÕÌ£¤¬¤¢¤ë¡£

´ØÏ¢¹àÌÜ

login(1), passwd(1), encrypt(3), getpass(3), passwd(5), feature_test_macros(7)