- Äɲ䵤줿¹Ô¤Ï¤³¤Î¿§¤Ç¤¹¡£
- ºï½ü¤µ¤ì¤¿¹Ô¤Ï¤³¤Î¿§¤Ç¤¹¡£
#contents
*³µÍ× [#j2c32203]
¥Ñ¥¹¥ï¡¼¥É¤ò¡¢Íð¿ô¤ò¸µ¤Ë¥é¥ó¥À¥à¤Ëȯ¹Ô¤·¤Þ¤¹¡£
Ϣ³¤·¤Æ½Ð¤¹¾ì¹ç¤Ï¡¢Íð¿ô¤Î½é´ü²½¤òÉÃñ°Ì¤Ç¹Ô¤Ã¤Æ¤¤¤ë¤Î¤Ç¡¢Ãí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£¡Ê¤³¤ÎÊդϡ¢É¬Íפ˱þ¤¸¤Æ¥½¡¼¥¹¤Î½¤Àµ¤ò¤·¤Æ¤¯¤À¤µ¤¤¡Ë
*¥½¡¼¥¹¥³¡¼¥É [#jf6fe820]
//----------------------------------------------------------
// ¥Ñ¥¹¥ï¡¼¥É¼«Æ°À¸À®¥Ä¡¼¥ë Ver.0.1
// by myasu 2001/12/10
//----------------------------------------------------------
#include
#include
#include
//¥Ç¥Ð¥Ã¥°ÍÑ
//#define DEBUG
#ifdef DEBUG
#define _MYDEBUG(x) x
#else
#define _MYDEBUG(x)
#endif
//À¸À®¤¹¤ëʸ»ú¤Î¼ïÎà
enum Char_type {cAlphaUp, cAlphaLw, cNum, cSign };
//----------------------------------------------------------
//»þ´Ö¡õÍð¿ôÀ¸À®
int TimeDaySecond(void)
{
struct tm *nowtime;
long gettime;
time(&gettime);
nowtime = localtime(&gettime);
return(nowtime->tm_hour * 3600 + nowtime->tm_min * 60 + nowtime->tm_sec);
}
void Randomize(int num)
{
srand(num);
}
int Random(int bigin, int end)
{
int data;
for(;;){
data = rand() % (end + 1);
if(data >= bigin)
return(data);
}
}
//----------------------------------------------------------
//¥Ñ¥¹¥ï¡¼¥ÉÀ¸À®
int main(int argc, char **argv)
{
int i,
string_length, //À¸À®¤¹¤ë¥Ñ¥¹¥ï¡¼¥É¤ÎŤµ
chrmode; //¥Ñ¥¹¥ï¡¼¥É¤Ë´Þ¤àʸ»ú¤Î¼ïÎà
char passwd[32]; //À¸À®¤·¤¿¥Ñ¥¹¥ï¡¼¥É
enum Char_type chrtype; //ʸ»ú¤Î¼ïÎà
//Íð¿ô¤Î½é´ü²½
Randomize(TimeDaySecond());
//°ú¿ô¤¬¤Ê¤¤¾ì¹ç
if(argc <= 1){
printf("\nmake passwd - ¥Ñ¥¹¥ï¡¼¥É¼«Æ°À¸À®¥Ä¡¼¥ë Ver.0.1\n\n");
printf("usage : makepasswd [ʸ»ú¿ô] [¥Ñ¥¹¥ï¡¼¥É¤Ë´Þ¤àʸ»ú¤Î¼ïÎà]\n\n");
printf("[ʸ»ú¿ô] : 32ʸ»ú¤Þ¤Ç\n");
printf("[¥Ñ¥¹¥ï¡¼¥É¤Ë´Þ¤àʸ»ú]\n");
printf(" : 0 - ±ÑÂçʸ»ú\n");
printf(" : 1 - ±ÑÂçʸ»ú¡¢±Ñ¾®Ê¸»ú\n");
printf(" : 2 - ±ÑÂçʸ»ú¡¢±Ñ¾®Ê¸»ú¡¢¿ô»ú\n");
printf(" : 3 - ±ÑÂçʸ»ú¡¢±Ñ¾®Ê¸»ú¡¢¿ô»ú¡¢µ¹æ[!\"#$%&'()*+,-./]\n\n");
return 1;
}
//À¸À®¤¹¤ë¥Ñ¥¹¥ï¡¼¥É¤ÎŤµ¤ò°ú¿ô¤«¤é¼è¤ê¹þ¤à
string_length = atoi(argv[1]);
if(string_length > 32){
printf("[Âè1°ú¿ô] : 33ʸ»ú°Ê¾å¤ÏÀ¸À®¤Ç¤¤Þ¤»¤ó¡£\n");
}
//À¸À®¤¹¤ë¥Ñ¥¹¥ï¡¼¥É¤Ë´Þ¤àʸ»ú¤Î¼ïÎà¤ò°ú¿ô¤«¤é¼è¤ê¹þ¤à
chrmode = atoi(argv[2]);
if(chrmode > 4 || chrmode < 0){
printf("[Âè2°ú¿ô] : 0,1,2,3¤«¤éÁª¤ó¤Ç¤¯¤À¤µ¤¤¡£\n");
}
//¥Ç¥Ð¥Ã¥°ÍÑ
_MYDEBUG(printf("string_length : %d\n", string_length));
_MYDEBUG(printf("string_mode : %d\n", chrmode));
//¥Ñ¥¹¥ï¡¼¥É¤ÎÀ¸À®
for(i = 0; i < string_length; ++i){
//ʸ»ú¤Î¼ïÎà¤òÁªÂò
chrtype = Random(0, chrmode);
//ÁªÂòÈÖ¹æ¤Çʬ´ô
switch(chrtype){
case cAlphaUp:
//Âçʸ»ú¤òÀ¸À®
passwd[i] = Random(0x41, 0x5a);
break;
case cAlphaLw:
//¾®Ê¸»ú¤òÀ¸À®
passwd[i] = Random(0x61, 0x7a);
break;
case cNum:
//¿ô»ú¤òÀ¸À®
passwd[i] = Random(0x30, 0x39);
break;
case cSign:
//µ¹æ¤òÀ¸À®
passwd[i] = Random(0x21, 0x2f);
break;
default:
break;
}
}
//NULL¤ÇÊĤ¸¤ë
passwd[i] = '\0';
printf("%s\n", passwd);
}
RIGHT:2005-07-12 14:16:53 (²Ð)
----
[[²È¥µ¡¼¥Ð´ÉÍýÄ¢]]