des_crypt

Autres langues

Langue: ja

Autres versions - même langue

Version: 2007-05-18 (openSuse - 09/10/07)

Section: 3 (Bibliothèques de fonctions)

̾Á°

des_crypt, ecb_crypt, cbc_crypt, des_setparity, DES_FAILED - ¹â®¤Ê DES °Å¹æ²½

½ñ¼°


#include <rpc/des_crypt.h>



int ecb_crypt(char *key, char *data, unsigned datalen,

              unsigned mode);



int cbc_crypt(char *key, char *data, unsigned datalen,

              unsigned mode, char *ivec);



void des_setparity(char *key);



int DES_FAILED(int status);

ÀâÌÀ

ecb_crypt() ¤È cbc_crypt() ¤Ï NBS DES (Data Encryption Standard, ¥Ç¡¼¥¿°Å¹æ²½µ¬³Ê) ¤ò¼ÂÁõ¤·¤Æ¤¤¤ë¡£ ¤³¤ì¤é¤Î¥ë¡¼¥Á¥ó¤Ï crypt(3) ¤è¤ê¤â¹â®¤Ç¤è¤ê°ìÈÌŪ¤ÊÌÜŪ¤Ë»ÈÍѤǤ­¤ë¡£ ÍøÍѲÄǽ¤Ç¤¢¤ì¤Ð¡¢¤³¤ì¤é¤Î¥ë¡¼¥Á¥ó¤Ï DES ¥Ï¡¼¥É¥¦¥§¥¢¤ò»ÈÍѤ¹¤ë¤³¤È¤â¤Ç¤­¤ë¡£ ecb_crypt() ¤Ï ECB (Electronic Code Book) ¥â¡¼¥É¤Ç°Å¹æ²½¤¹¤ë¡£ ¤³¤Î¥â¡¼¥É¤Ç¤Ï (¸Ä¡¹¤Î) ¥Ç¡¼¥¿¤Î¥Ö¥í¥Ã¥¯¤òÆÈΩ¤·¤Æ°Å¹æ²½¤¹¤ë cbc_crypt() ¤Ï CBC (Cipher Block Chaining) ¥â¡¼¥É¤Ç°Å¹æ²½¤¹¤ë¡£ ¤³¤Î¥â¡¼¥É¤Ç¤ÏϢ³¤¹¤ë¥Ö¥í¥Ã¥¯¤ò¸ß¤¤¤ËÏ¢º¿¤µ¤»¤Æ°Å¹æ²½¤¹¤ë¡£ CBC ¤Ï¥Ö¥í¥Ã¥¯¤ÎÁÞÆþ¡¦ºï½ü¡¦ÃÖ¤­´¹¤¨¤«¤éÊݸ¤ë¡£ ¤Þ¤¿Ê¿Ê¸¤Îµ¬Â§À­¤¬°Å¹æʸ¤Ë¸½¤ì¤Ê¤¤¡£

¤³¤ì¤é¤Î¥ë¡¼¥Á¥ó¤Î»ÈÍÑË¡¤ò¼¨¤¹¡£ Âè 1 °ú¤­¿ô key ¤Ï¥Ñ¥ê¥Æ¥£ÉÕ¤­¤Î 8 ¥Ð¥¤¥È¤Î°Å¹æ²½¸°¤Ç¤¢¤ë¡£ ¸°¤Î¥Ñ¥ê¥Æ¥£¤òÀßÄꤹ¤ë¤Ë¤Ï des_setparity() ¤ò»È¤¦¤³¤È¡£ DES ¤Î¾ì¹ç¡¢¸°¤Î¥Ñ¥ê¥Æ¥£¤Ï³Æ¥Ð¥¤¥È¤ÎºÇ²¼°Ì¥Ó¥Ã¥È¤Ç¤¢¤ë¡£ Âè 2 °ú¤­¿ô data ¤Ï°Å¹æ²½¤Þ¤¿¤ÏÉü¹æ²½¤µ¤ì¤ë¥Ç¡¼¥¿¤ò´Þ¤à¡£ Âè 3 °ú¤­¿ô datalen ¤Ï data ¤Î¥Ð¥¤¥ÈŤǤ¢¤ê¡¢8 ¤ÎÇÜ¿ô¤Ç¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£ Âè 4 °ú¤­¿ô mode ¤Ï¤¤¤¯¤Ä¤«¤ÎÃͤò OR ¤¹¤ë¤³¤È¤ÇºîÀ®¤¹¤ë¡£ °Å¹æ²½¤ÎÊý¸þ (ÌõÃð: °Å¹æ²½¤Ê¤Î¤«Éü¹æ²½¤Ê¤Î¤«) ¤ò»ØÄꤹ¤ë¤¿¤á¡¢ DES_ENCRYPT ¤Þ¤¿¤Ï DES_DECRYPT ¤ò 'or' ¤¹¤ë¡£ °Å¹æ²½¤ò¥½¥Õ¥È¥¦¥§¥¢¤Ç¹Ô¤¦¤«¥Ï¡¼¥É¥¦¥§¥¢¤Ç¹Ô¤¦¤«¤ò»ØÄꤹ¤ë¤¿¤á¡¢ DES_HW ¤Þ¤¿¤Ï DES_SW ¤ò 'or' ¤¹¤ë¡£ DES_HW ¤¬»ØÄꤵ¤ì¤Æ¤¤¤Æ¡¢¤«¤Ä¥Ï¡¼¥É¥¦¥§¥¢¤¬¤Ê¤¤¾ì¹ç¡¢ °Å¹æ²½¤Ï¥½¥Õ¥È¥¦¥§¥¢¤Ç¼Â¹Ô¤µ¤ì¤Æ¡¢¥ë¡¼¥Á¥ó¤Ï DESERR_NOHWDEVICE ¤òÊÖ¤¹¡£ cbc_crypt() ¤Ë¤ª¤¤¤Æ¡¢°ú¤­¿ô ivec ¤Ï¥Ç¡¼¥¿¥Ö¥í¥Ã¥¯¤òÏ¢º¿¤µ¤»¤ëºÝ¤Î 8 ¥Ð¥¤¥È¤Î½é´ü²½¥Ù¥¯¥È¥ë¤Ç¤¢¤ë¡£ ¤³¤Î°ú¤­¿ô¤Ï¥ë¡¼¥Á¥ó¤«¤éÌá¤ë¤È¤­¤Ë¼¡¤Î½é´ü²½¥Ù¥¯¥È¥ë¤Ë¹¹¿·¤µ¤ì¤ë¡£

ÊÖ¤êÃÍ

DESERR_NONE
¥¨¥é¡¼¤Ê¤·¡£
DESERR_NOHWDEVICE
°Å¹æ²½¤ÏÀ®¸ù¤·¤¿¤¬¡¢Í׵ᤵ¤ì¤¿¥Ï¡¼¥É¥¦¥§¥¢¤ÎÂå¤ï¤ê¤Ë¥½¥Õ¥È¥¦¥§¥¢¤Ç¼Â¹Ô¤µ¤ì¤¿¡£
DESERR_HWERROR
¥Ï¡¼¥É¥¦¥§¥¢¤Þ¤¿¤Ï¥É¥é¥¤¥Ð¤Ç¥¨¥é¡¼¤¬È¯À¸¤·¤¿¡£
DESERR_BADPARAM
¥ë¡¼¥Á¥ó¤Ø¤Î°ú¤­¿ô¤¬ÉÔÀµ¤Ç¤¢¤ë¡£

·ë²Ì¤Î¾õÂÖ stat ¤òÍ¿¤¨¤¿¤È¤­¡¢¥Þ¥¯¥í DES_FAILED(stat) ¤¬ false ¤Ë¤Ê¤ë¤Î¤Ï¡¢ºÇ½é¤Î 2 ¤Ä¤À¤±¤Ç¤¢¤ë¡£

¥Ð¡¼¥¸¥ç¥ó

¤³¤ì¤é¤Î¥ë¡¼¥Á¥ó¤Ï libc 4.6.27 °Ê¹ß¤È glibc 2.1 °Ê¹ß¤Ë¸ºß¤¹¤ë¡£

½àµò

4.3BSD. POSIX.1-2001 ¤Ë¤Ï¤Ê¤¤¡£

´ØÏ¢¹àÌÜ

des(1), crypt(3), xcrypt(3)