・ム・ケ・。シ・ノ、。「ヘソ、クオ、ヒ・鬣・タ・爨ヒネッケヤ、キ、゙、ケ。」 マ「ツウ、キ、ニスミ、ケセケ遉マ。「ヘソ、ホス魘イス、ノテテアーフ、ヌケヤ、テ、ニ、、、、ホ、ヌ。「テーユ、キ、ニ、ッ、タ、オ、、。」。ハ、ウ、ホハユ、マ。「ノャヘラ、ヒア、ク、ニ・ス。シ・ケ、ホス、タオ、、キ、ニ、ッ、タ、オ、、。ヒ
//---------------------------------------------------------- // ・ム・ケ・。シ・ノシォニータクタョ・ト。シ・ 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); }