码迷,mamicode.com
首页 > 编程语言 > 详细

金蝶K/3加密算法

时间:2015-07-01 16:04:21      阅读:696      评论:0      收藏:0      [点我收藏+]

标签:加密   算法 集成   

开发集成性的软件,如果对方不提供接口。首先账套的破解是首要工作,不然的话,想要集成性就无从谈起。很多加密是固有的加密方式像   SHA1,MD5但很多软件都有属于自己的加密方法,所谓破解无非需找规律,公钥,密钥,散列算法,哈希算法,总之也不太懂。一下是我封装的方法,其实原先用的是用的正则表达式((Regex.IsMatch(strs[i].ToString(), "[A-Z]")))判断字符类型,然后再类型范围了。循环遍历多维数组。得到对应密文。但最后发现他们相似度太多,就把他们整合在一块了建立一个多维数字,取模后直接需找相等的字符,确定对应密文,总之我也不确定这两种方法的执行力那个更高一些。

public static  string getPass(string str)
    {
        string getStr = string.Empty;
        char[] strs = str.ToCharArray();
        for (int i = 0; i < strs.Length; i++)
        {
            int j = i % 6;
            if (strs[i].ToString() == ",")
            {
                string[] str2 = { "&nbspL&nbsp", "\"P&nbsp", "+&nbsp", "&nbspL&nbsp", "\"P&nbsp", "+&nbsp" };
                getStr = getStr + str[j];
            }
            else
            {
                string[,] strArray1 =
                    new string[93, 6]{
                        {"&nbspP&nbsp","#&nbsp&nbsp",",&nbsp&nbsp","P&nbsp","#&nbsp&nbsp",",&nbsp&nbsp"},
                 {"&nbspQ&nbsp","#$&nbsp",",0&nbsp","Q&nbsp","#$&nbsp",",0&nbsp"},
                 {"&nbspR&nbsp","#(&nbsp",",@&nbsp","R&nbsp","#(&nbsp",",@&nbsp"},
                 {"&nbspS&nbsp","#,&nbsp",",P&nbsp","S&nbsp","#,&nbsp",",@&nbsp"},
                 { "&nbspT&nbsp","#0&nbsp","-&nbsp&nbsp","T&nbsp","#0&nbsp","-&nbsp&nbsp"},
                 {"&nbspU&nbsp","#4&nbsp","-0&nbsp","U&nbsp","#4&nbsp","-0&nbsp"},
                 {"&nbspV&nbsp","#8&nbsp","-@&nbsp","V&nbsp","#8&nbsp","-@&nbsp"},
                 {"&nbspW&nbsp","#<&nbsp","-P&nbsp","W&nbsp","#<&nbsp","-P&nbsp"},
                 {"&nbspX&nbsp","#@&nbsp",".&nbsp&nbsp","X&nbsp","#@&nbsp",".&nbsp&nbsp"},
                 {"&nbspY&nbsp","#D&nbsp",".0&nbsp","Y&nbsp","#D&nbsp",".0&nbsp"},
                {"!!&nbsp","$$&nbsp"," 00","!!&nbsp"," $$&nbsp","00"},
                {"!\"&nbsp","$(&nbsp","0@","!\"&nbsp","$(&nbsp","0@"},
                {"!#&nbsp","$,&nbsp"," 0P","!#&nbsp"," $,&nbsp","0P"},
                {"!$&nbsp","$0&nbsp"," 1&nbsp","!$&nbsp","$0&nbsp","1&nbsp"},
                {"!%&nbsp","$4&nbsp"," 10","!%&nbsp"," $4&nbsp","10"},
                {"!&&nbsp","$8&nbsp"," 1@","!&&nbsp"," $8&nbsp","1@"},
                {"!‘&nbsp","$<&nbsp"," 1P","!‘&nbsp"," $<&nbsp","1P"},
                {"!(&nbsp","$@&nbsp"," 2&nbsp","!(&nbsp","$@&nbsp"," 2&nbsp"},
                {"!)&nbsp<","$D&nbsp","20","!)&nbsp","$D&nbsp"," 20‘"},
                {"!*&nbsp‘","$H&nbsp","2@","!*&nbsp","$H&nbsp","2@"},
                {"!+&nbsp","$L&nbsp"," 2P","!+&nbsp"," $L&nbsp","2P"},
                {"!,&nbsp","$P&nbsp"," 3&nbsp","!,&nbsp","$P&nbsp","3&nbsp"},
                {"!-&nbsp","$T&nbsp"," 30","!-&nbsp"," $T&nbsp","30"},
                {"!.&nbsp","$X&nbsp"," 3@","!.&nbsp"," $X&nbsp","3@"},
                {"!/&nbsp","$\\&nbsp","3P","!/&nbsp","$\\&nbsp"," 3P"},
                {"!0&nbsp","%&nbsp&nbsp","4&nbsp","!0&nbsp","%&nbsp&nbsp","4&nbsp"},
                {"!1&nbsp","%$&nbsp"," 40","!1&nbsp"," %$&nbsp","40"},
                {"!2&nbsp","%(&nbsp"," 4@","!2&nbsp"," %(&nbsp","4@"},
                {"!3&nbsp","%,&nbsp"," 4P","!3&nbsp"," %,&nbsp","4P"},
                {"!4&nbsp","%0&nbsp"," 5&nbsp","!4&nbsp","%0&nbsp"," 5&nbsp"},
                {"!5&nbsp","%4&nbsp"," 50","!5&nbsp"," %4&nbsp","50"},
                {"!6&nbsp","%8&nbsp"," 5@","!6&nbsp"," %8&nbsp","5@"},
                {"!7&nbsp","%<&nbsp"," 5P","!7&nbsp"," %<&nbsp","5P"},
                {"!8&nbsp","%@&nbsp"," 6&nbsp","!8&nbsp","%@&nbsp","6&nbsp"},
                {"!9&nbsp","%D&nbsp"," 60","!9&nbsp"," %D&nbsp","60"},
                {"!:&nbsp","%H&nbsp"," 6@","!:&nbsp"," %H&nbsp","6@"},
                {"!A&nbsp","&$&nbsp"," 80","!A&nbsp"," &$&nbsp","80"},
                {"!B&nbsp","&(&nbsp"," 8@","!B&nbsp"," &(&nbsp ","8@"},
                {"!C&nbsp","&,&nbsp"," 8P","!C&nbsp","&,&nbsp","8P"},
                {"!D&nbsp","&0&nbsp","9&nbsp","!D&nbsp","&0&nbsp","9&nbsp"},
                {"!E&nbsp","&4&nbsp"," 90","!E&nbsp"," &4&nbsp","90"},
                {"!F&nbsp","&8&nbsp"," 9@","!F&nbsp"," &8&nbsp","9@"},
                {"!G&nbsp","&<&nbsp"," 9P","!G&nbsp"," &<&nbsp","9P"},
                {"!H&nbsp","&@&nbsp",":&nbsp","!H&nbsp","&@&nbsp",":&nbsp"},
                {"!I&nbsp","&D&nbsp"," :0","!I&nbsp"," &D&nbsp",":0"},
                {"!J&nbsp","&H&nbsp",":@","!J&nbsp","&H&nbsp",":@"},
                {"!K&nbsp","&L&nbsp",":P","!K&nbsp","&L&nbsp",":P"},
                {"!L&nbsp","&P&nbsp",";&nbsp","!L&nbsp","&P&nbsp",";&nbsp"},
                {"!M&nbsp","&T&nbsp",";0","!M&nbsp","&T&nbsp",";0"},
                {"!N&nbsp","&X&nbsp",";@","!N&nbsp","&X&nbsp",";@"},
                {"!O&nbsp","&\\&nbsp",";P","!O&nbsp",@"&\&nbsp",";P"},
                {"!P&nbsp","‘&nbsp&nbsp","<&nbsp","!P&nbsp","‘&nbsp&nbsp","<&nbsp"},
                {"!Q&nbsp","‘$&nbsp","<0","!Q&nbsp","‘$&nbsp","<0"},
                {"!R&nbsp","‘(&nbsp"," <@","!R&nbsp"," ‘(&nbsp","<@"},
                {"!S&nbsp","‘,&nbsp"," <P","!S&nbsp"," ‘,&nbsp","<P"},
                {"!T&nbsp","‘0&nbsp"," =&nbsp","!T&nbsp","‘0&nbsp","=&nbsp"},
                {"!U&nbsp","‘4&nbsp"," =0","!U&nbsp"," ‘4&nbsp","=0"},
                {"!V&nbsp","‘8&nbsp"," =@","!V&nbsp"," ‘8&nbsp","=@"},
                {"!W&nbsp","‘<&nbsp","=P", "!W&nbsp","‘<&nbsp","=P"},
                {"!X&nbsp","‘@&nbsp"," >&nbsp","!X&nbsp","‘@&nbsp"," >&nbsp"},
                {"!Y&nbsp","‘D&nbsp"," >0","!Y&nbsp"," ‘D&nbsp",">0"},
                {"!Z&nbsp","‘H&nbsp"," >@","!Z&nbsp"," ‘H&nbsp",">@"},
                {"&nbspA&nbsp","\"$&nbsp ","(0"," &nbspA&nbsp","\"$&nbsp","(0"},
                {"&nbsp!&nbsp","$&nbsp&nbsp","0&nbsp","&nbsp!&nbsp","$&nbsp&nbsp","0&nbsp"},
                {"&nbspC&nbsp","\",&nbsp","(P","&nbspC&nbsp","\",&nbsp","(P"},
                {"&nbspD&nbsp","\"0&nbsp",")&nbsp","&nbspD&nbsp","\"0&nbsp",")&nbsp"},
                {"&nbspE&nbsp","\"4&nbsp",")0 ","&nbspE&nbsp ","\"4&nbsp",")0"},
                {"!>&nbsp","%X&nbsp","&nbsp‘>7@","!>&nbsp"," %X&nbsp","7@"},
                {"&nbspF&nbsp","\"8&nbsp",")@","&nbspF&nbsp","\"8&nbsp",")@"},
                {"&nbspJ&nbsp","\"H&nbsp","*@ ","&nbspJ&nbsp ","\"H&nbsp","*@"},
                {"&nbspH&nbsp","\"@&nbsp","*&nbsp","&nbspH&nbsp","\"@&nbsp","*&nbsp"},
                {"&nbspI&nbsp","\"D&nbsp", "*0","&nbspI&nbsp","\"D&nbsp","*0"},
                {"!?&nbsp","%\\&nbsp","7P" ,"!?&nbsp","%\\&nbsp","7P"},
                {"&nbspK&nbsp","\"L&nbsp","*P","&nbspK&nbsp", "\"L&nbsp","*P"},
                {"&nbsp]&nbsp","#T&nbsp","/0","&nbsp]&nbsp","#T&nbsp","/0"},
                {"&nbspM&nbsp","\"T&nbsp","+0","&nbspM&nbsp","\"T&nbsp","+0"},
                {"!;&nbsp","%L&nbsp","6P","!;&nbsp"," %L&nbsp","6P"},
                {"!=&nbsp","%T&nbsp"," 70","!=&nbsp"," %T&nbsp","70"},
                {"![&nbsp","‘L&nbsp"," >P","![&nbsp"," ‘L&nbsp",">P"},
                {"!]&nbsp","‘T&nbsp"," ?0","!]&nbsp"," ‘T&nbsp","?0"},
                {"&nbsp[&nbsp","#L&nbsp",".P","&nbsp[&nbsp","#L&nbsp",".P"},
                {"&nbspZ&nbsp","#H&nbsp",".@","&nbspZ&nbsp","#H&nbsp",".@"},
                {"&nbspB&nbsp","\"(&nbsp","(@ ","&nbspB&nbsp","\"(&nbsp","(@"},
                {"&nbspG&nbsp","\"<&nbsp",")P","&nbspG&nbsp","\"<&nbsp",")P"},
                
                {"&nbspN&nbsp","\"X&nbsp","+@","&nbspN&nbsp", "\"X&nbsp","+@"},
                {"&nbsp_&nbsp","#\\&nbsp","/P","&nbsp_&nbsp","#\\&nbsp","/P"},
                {"!<&nbsp","%P&nbsp"," 7&nbsp","!<&nbsp","%P&nbsp"," 7&nbsp"},
                {"!\\&nbsp","‘P&nbsp","?&nbsp","!\\&nbsp","‘P&nbsp","?&nbsp"},
                {"&nbsp0&nbsp","\"\\","+P","&nbsp0&nbsp" ,"\"\\","+P"},
                {"!@&nbsp","&&nbsp&nbsp","8&nbsp","!@&nbsp","&&nbsp&nbsp","8&nbsp"},
                {"!^&nbsp","‘X&nbsp"," ?@","!^&nbsp"," ‘X&nbsp","?@"},
                {"&nbsp\\&nbsp","#P&nbsp","/&nbsp","&nbsp\\&nbsp","#P&nbsp","/&nbsp"},
                {"&nbsp^&nbsp","#X&nbsp","/@","&nbsp^&nbsp","#X&nbsp","/@"}
                 };
                string strabc1 = "0,1,2,3,4,5,6,7,8,9," +
                    "a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,"
                   + "A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,"
                   + "!,@,#,$,%,^,&,*,(,),_,+,=,-,[,],{,},;,:,\",‘,.,?,\\,|,/,`,~,<,>,";
                string[] strabcs1 = strabc1.Split(‘,‘);
                for (int n = 0; n < strabcs1.Length; n++)
                {
                    if (strabcs1[n].ToString() == strs[i].ToString())
                    {
                        getStr = getStr + strArray1[n, j];
                        break;
                    }
                    
                }
            }

        }
              return getStr;
    } 

版权声明:本文为博主原创文章,未经博主允许不得转载。

金蝶K/3加密算法

标签:加密   算法 集成   

原文地址:http://blog.csdn.net/wyl900606/article/details/46710395

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!