名 前
xencrypt, xdecrypt, passwd2des − RFS パ ス ワ ー ド 暗 号 化
書 式
#include <rpc/des_crypt.h>
void passwd2des(char *passwd, char *key);
int xencrypt(char *secret, char *passwd);
int xdecrypt(char *secret, char *passwd);
説 明
関 数 passwd2des() は 任 意 の 長 さ の 文 字 列 passwd を と り 、 長 さ 8 の 文 字 配 列 key を 埋 め る 。 配 列 key は DES キ ー と し て 使 う の に 適 し て い る 。 こ の 配 列 の 各 バ イ ト の ビ ッ ト 0 は 奇 数 パ リ テ ィ で あ る 。 こ こ で 説 明 さ れ て い る 残 り の 2 つ の 関 数 は 、 こ の 関 数 を 使 い 、 引 き 数 passwd を DES キ ー に 変 換 す る 。
xencrypt() 関 数 は 16 進 数 で 与 え ら れ た ASCII 文 字 列 secret を と る 。 こ の 長 さ は 16 の 倍 数 で な け れ ば な ら な い 。 そ し て passwd2des() に よ っ て passwd か ら 導 き 出 さ れ た DES キ ー を 使 い 、 secret を 暗 号 化 す る 。 そ の 結 果 は 16 進 数 文 字 列 と し て secret に 再 び 同 じ 長 さ で 出 力 さ れ る 。
xdecrypt() 関 数 は 逆 の 操 作 を 行 う 。
返 り 値
関 数 xencrypt() と xdecrypt() は 、 成 功 し た 場 合 に 1 を 返 し 、 失 敗 し た 場 合 に 0 を 返 す 。
バ ー ジ ョ ン
こ れ ら の 関 数 は バ ー ジ ョ ン 2.1 以 降 の glibc で 提 供 さ れ て い る 。
バ グ
上 記 の イ ン ク ル ー ド フ ァ イ ル に プ ロ ト タ イ プ が な い 。
関 連 項 目
こ の 文 書 に つ い て
こ の man ペ ー ジ は Linux man−pages プ ロ ジ ェ ク ト の リ リ ー ス 3.79 の 一 部 で あ る 。 プ ロ ジ ェ ク ト の 説 明 と バ グ 報 告 に 関 す る 情 報 は http://www.kernel.org/doc/man−pages/ に 書 か れ て い る 。