在C#中生成顺序密码

 82年的老代码 发布于 2023-02-12 13:23

我一直试图在C#(aaaa,aaab,aaac,... abcd,abce)中依次为哈希破解者生成密码(用于白帽).但是,我不知道该怎么做.

现在我有一个char数组,其最后一个元素由一个开关递增:

            switch (character) {
            case ('0'):
                character = '1';
                break;
            case ('1'):
                character = '2';
                break;
            case ('2'):
                character = '3';
                break;
            case ('3'):
                character = '4';
                break;
            case ('4'):
                character = '5';
                break;
            case ('5'):
                character = '6';
                break;
            case ('6'):
                character = '7';
                break;
            case ('7'):
                character = '8';
                break;
            case ('8'):
                character = '9';
                break;
            case ('9'):
                character = 'a';
                break;
            case ('a'):
                character = 'b';
                break;
            case ('b'):
                character = 'c';
                break;
            case ('c'):
                character = 'd';
                break;
            case ('d'):
                character = 'e';
                break;
            case ('e'):
                character = 'f';
                break;
            case ('f'):
                character = 'g';
                break;
            case ('g'):
                character = 'h';
                break;
            case ('h'):
                character = 'i';
                break;
            case ('i'):
                character = 'j';
                break;
            case ('j'):
                character = 'k';
                break;
            case ('k'):
                character = 'l';
                break;
            case ('l'):
                character = 'm';
                break;
            case ('m'):
                character = 'n';
                break;
            case ('n'):
                character = 'o';
                break;
            case ('o'):
                character = 'p';
                break;
            case ('p'):
                character = 'q';
                break;
            case ('q'):
                character = 'r';
                break;
            case ('r'):
                character = 's';
                break;
            case ('s'):
                character = 't';
                break;
            case ('t'):
                character = 'u';
                break;
            case ('u'):
                character = 'v';
                break;
            case ('v'):
                character = 'w';
                break;
            case ('w'):
                character = 'x';
                break;
            case ('x'):
                character = 'y';
                break;
            case ('y'):
                character = 'z';
                break;
            case ('z'):
                character = 'A';
                break;
            case ('A'):
                character = 'B';
                break;
            case ('B'):
                character = 'C';
                break;
            case ('C'):
                character = 'D';
                break;
            case ('D'):
                character = 'E';
                break;
            case ('E'):
                character = 'F';
                break;
            case ('F'):
                character = 'G';
                break;
            case ('G'):
                character = 'H';
                break;
            case ('H'):
                character = 'I';
                break;
            case ('I'):
                character = 'J';
                break;
            case ('J'):
                character = 'K';
                break;
            case ('K'):
                character = 'L';
                break;
            case ('L'):
                character = 'M';
                break;
            case ('M'):
                character = 'N';
                break;
            case ('N'):
                character = 'O';
                break;
            case ('O'):
                character = 'P';
                break;
            case ('P'):
                character = 'Q';
                break;
            case ('Q'):
                character = 'R';
                break;
            case ('R'):
                character = 'S';
                break;
            case ('S'):
                character = 'T';
                break;
            case ('T'):
                character = 'U';
                break;
            case ('U'):
                character = 'V';
                break;
            case ('V'):
                character = 'W';
                break;
            case ('W'):
                character = 'X';
                break;
            case ('X'):
                character = 'Y';
                break;
            case ('Y'):
                character = 'Z';
                break;
            case ('Z'):
                character = '@';
                break;
            case ('@'):
                character = '%';
                break;
            case ('%'):
                character = '/';
                break;
            case ('/'):
                character = '\\';
                break;
            case ('\\'):
                character = '\'';
                break;
            case ('\''):
                character = '!';
                break;
            case ('!'):
                character = '$';
                break;
            case ('$'):
                character = '#';
                break;
            case ('#'):
                character = '^';
                break;
            case ('^'):
                character = '?';
                break;
            case ('?'):
                character = ':';
                break;
            case (':'):
                character = ',';
                break;
            case (','):
                character = '(';
                break;
            case ('('):
                character = ')';
                break;
            case (')'):
                character = '[';
                break;
            case ('['):
                character = ']';
                break;
            case (']'):
                character = '{';
                break;
            case ('{'):
                character = '}';
                break;
            case ('}'):
                character = '-';
                break;
            case ('-'):
                character = '_';
                break;
            case ('_'):
                character = '+';
                break;
            case ('+'):
                character = '=';
                break;
            case ('='):
                character = '0';
                break;
                prev = true;
            default:
                character = '0';
                break;
        }

但是,当该元素再次达到0时,我需要增加密码的前一个数字,如果该数字也达到0,我需要增加该数字的前一个数字,依此类推.

此外,由于这是一个哈希破解者,它需要很快.有什么建议?

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有