Beispiel #1
0
        /*
         * string str = "你好";
         * var buff = System.Text.Encoding.Unicode.GetBytes(str);
         * string str2 = Convert.ToBase64String(buff);//加密str2
         *                                         //=================下面是解码的部分
         * buff =Convert.FromBase64String(str2);
         *  str=System.Text.Encoding.Unicode.GetString(buff);
         */
        /// <summary>
        /// 生成请求码
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button4_Click_1(object sender, EventArgs e)
        {
            try
            {
                string strendrq  = DateTime.Now.ToString("yyyy-MM-dd");
                string strRandom = NewGuid.NextRandom(10000, 1).ToString();
                string i         = this.textBox1.Text.ToString();
                string n         = this.tbx1.Text.ToString();


                if (string.IsNullOrEmpty(i))
                {
                    MessageBox.Show("请填写企业Id!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Hand, MessageBoxDefaultButton.Button1);
                    return;
                }

                if (string.IsNullOrEmpty(n))
                {
                    MessageBox.Show("请填写企业名称!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Hand, MessageBoxDefaultButton.Button1);
                    return;
                }

                var    buff = System.Text.Encoding.Unicode.GetBytes(n);
                string str2 = Convert.ToBase64String(buff);

                JsonParser.JsonRegister jsonRegister = new JsonParser.JsonRegister();
                jsonRegister.I = i;
                jsonRegister.R = strRandom;
                jsonRegister.M = GetModuleCode();
                jsonRegister.N = str2;
                jsonRegister.T = strendrq;

                var registerEntity = new JsonParser.JsonRegister
                {
                    I = EncodeBase32(jsonRegister.I.Trim()),
                    R = EncodeBase32("Y" + jsonRegister.R),
                    M = EncodeBase32(jsonRegister.M),

                    N    = EncodeBase32(jsonRegister.N),
                    T    = EncodeBase32("K" + jsonRegister.T),
                    Info = 0
                };
                string strCode = Newtonsoft.Json.JsonConvert.SerializeObject(registerEntity); //序列化成JSON
                                                                                              //string p = DecodeBase32(registerEntity.P);
                string strEncode32  = EncodeBase32(strCode);
                string strEncode    = RsaEncrypt(strEncode32);
                string strAesEncode = AesClass.AesEncrypt(strEncode);
                this.richTextBox1.Text = strAesEncode;
            }catch (Exception ex)
            {
                MessageBox.Show("操作失败!原因:" + ex.Message, "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Hand, MessageBoxDefaultButton.Button1);
                return;
            }
        }
Beispiel #2
0
        /// <summary>
        /// 生成激活码
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button2_Click(object sender, EventArgs e)
        {
            string strjsonRegister = this.richTextBox3.Text.ToString().Trim();

            if (strjsonRegister.Trim().Equals(string.Empty) || strjsonRegister.Length == 0)
            {
                MessageBox.Show("请选解析请求码!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Hand, MessageBoxDefaultButton.Button1);
                return;
            }
            string strendrq = Start_dateTimePicker.Value.ToString("yyyy-MM-dd");

            string strRandom        = NewGuid.NextRandom(10000, 1).ToString();
            JavaScriptSerializer js = new JavaScriptSerializer();

            JsonParser.JsonRegister jsonRegister = js.Deserialize <JsonParser.JsonRegister>(strjsonRegister);

            var    buff = System.Text.Encoding.Unicode.GetBytes(jsonRegister.N.ToString().Trim());
            string str2 = Convert.ToBase64String(buff);//加密str2

            jsonRegister.I = EncodeBase32(jsonRegister.I.Trim());
            jsonRegister.R = EncodeBase32("Y" + strRandom.ToString().Trim());
            jsonRegister.M = GetModuleCode();
            jsonRegister.M = EncodeBase32(jsonRegister.M);//(jsonRegister.M.ToString().Trim());

            jsonRegister.N = EncodeBase32(str2);
            jsonRegister.T = EncodeBase32(strendrq.ToString().Trim());

            JsonParser.JsonSign jsonSign = new JsonParser.JsonSign();
            jsonSign.data = jsonRegister;                                            //js.Serialize(jsonRegister).Trim(); //序列化成JSON
            string registerStortJson = StortJson(js.Serialize(jsonRegister), false); //排序

            jsonSign.sing = Sign(registerStortJson);

            string strJsonCode = js.Serialize(jsonSign).Trim();   //序列化成JSON
            //string strEncode32 = EncodeBase32(strJsonCode);
            string strEncode           = RsaEncrypt(strJsonCode); //RSAFromPkcs8.BlockEncrypt(strEncode32);//privateKey 加密
            string strAesEncode        = AesClass.AesEncrypt(strEncode);
            string strEncodeBase32Code = EncodeBase32(strAesEncode);

            this.richTextBox2.Text = strEncodeBase32Code;

            //BANLF7GEKN5MKJ7LK6SRDQIP6AJL367T6LV53Q4VYAALSSBEYNRPJ8GUYSV5UMJMCXY83IGCA67QM8BVCX7MQXJJCAMAL8JGDH7AUTJTKYULV383FTSRUXTSKYSM3TK3KT8PLTNQCI48KITTKNKAGVKJ6CAUQJGFKAF4HP4J6PTPUPGAKFSQ3PTIFPNM3INQKY7AJSKN6WT4UJN3DAAQD3B3KA3MW3BABNGUG3J3BAILWCN8ACYRD7NJUPWA38JYKFRQD8JEUTY83Q45AXR8DCVB63W56XG8CANMKMTBF3W8GJVQUT6RFXJA6YHRKBVE6AS4LIVSKPRQ9I4QBYW5GC74YA8GQIGKDXQMMD4EUATUVIKUCTCAD74AYP7RMQ86FXXUDQ4IFTBQLJJ4FIYR6TYSFXFQUWVAFCUAJ6TICY8RDMKFKPTLQSBNENA8LTJQEYIMW874UC4UFPYIAXT86XTTYT58G6BLENJADP4P6IBMKQ4SEAWRDKTEBYR83TTJYY5MQVJAYX4LVWYIDPJR63ISUXA5DTBK6CLUM6KEUI7MU8Y3FIPMF8JD6IFMSCJUUTBADXJNKXGUKI4A6CTPUDBCCY8QFJ78UTTL6XVI6ISMQXIPCNQA6Q4JUTPQWX8JKYPPHQY36WSUDSJEEAMPM745YN6AK385FI44K8VYKIVPJ7I3CC85GDBEUNI8KDGUDP4LDT46YMVMM7KKFTHP38KQYY5U99YPKIV4GMGYKTUQD3KVYNGP367CAX8A66856TWM9X8TUAUR6WJCYIJMFCJIUP78GWNMKH7L37G5ACQU3JKS6C7G9PBMCIAL3CGRCCHRUSB36CR8GCKNEAVMWSKICCV8UKTSBAVQFK7RUTA568NSCTKAD3JMDYRQ3I74AXQ5UTIEKCFPMS7FYYK5UPVVKY44LI8FKXP4L3YIFI7MVWNPYWVMD8V6UPI8KXBGCNVLK9KRKIWR6WITFASMV9K3FANMDP8DDY7M68VQEAM4JJGACAIAF7GUDXPGQJ85FXFL36KFCYPU6DG3UYSRJBV4DYPA3QBLEYQ4DIVIDN7PMMGICA74DK76CAJRMIG4YNNMUW7D6AR5UMY8ENNMLMIRUNPRJM4UKY7RJX4LDFV8JIBJKPY5LIJGCY7L67BVUXVUU9KQUHTLMWGCUIYL9V45CNP4FDBNCAI5HPYMYMVRG8JLENV5FTJ5D3PPK743YIW8F9IJCXKM3C7DDISGQWNJFXWLFXKRBNQRGDK4FCT4U3YTKY7A3W7VCXWAHJJ4DHVM6WVNY3WLGX8AYXR4G7BMY6VMLQKJFS7Q6T8LUIFMGS7VDY7QUMVPCIJ5KVTMELVG98K36I3QWJ75CNAAJV8BFX783CJLDF7LUPVRU3RQ3IVDYY6QMVVVCAQL96G4FAMAJTJAUPGAGCGPKPI5LTK8KPP5LT85DC6UDIY3DC78J8JGKYS8KW4YFAUQJI8B6T65FKTQYPT83QKSDYBU6DBVFXFLFQNSBAJPLSBCDXML3SBY6CR4KQJ6YT6QU3BYUIYALXYE6CBLJ884BATQ3BV4BYYQDJ4NKTVLFXJS6PNMUCJ4YX4L68NIYN5L6C44CY7Q38NJ6XHMV7GU6Y5R66JYDSRRGQ8T6SSQ3TI8DCWMFW8AUIIAL7YT5NRR66KQYFWRDCVMDSVMFTNSFYYMUWGEYAMQGK7TYPGPFXNSYXUU69IBUNW5LBVMYXKQDWKNDYUAGSYIYX8UWXVSUAURDC4UDAGUM64SCX3R36VTCXUMJSY3YCFAUDNMCAI5JPJU6IIU39GAFCW537I3CWRPFMNM6I6MSMBGUAQ43TTS6P7QVQBPKNVUMMBLKTNLQXGSKIRRMSBDUNHRM9BGUANUGVIJUALQG98SACB5MCNQKIUQDDBJUNG43WK4FTK43884KYIQ6645KLRP6XB36PNM6C8NYMTAM68PDPLLK9BDBN5UJW7REAAQDQ4FCXJQVT83Y3WPMTYSBYYLKV8Y6AFUD7IB6PBMJCGQBL7A6W73ENQ53W88FILQSTBUBN4A3T7PEAH8G68YEAFLF9YTDXWLSPJ86WSRHPJKDW7PD6TJDPWLUXVRUWS4UJYIDN7LDS7CYNFQM38F6TAULX8YFMTRHPJSKIYQFVGJDCWUDTVVACHQD6GTYF7G967QCMTPGMVFFYYGQWK5FIRLU6BSUM7PJIBKKNGR6W4EUYQ5FW8K6I3Q6J8CYX8LQWIPFXMMJSKNU3TAJQ8SDXS46MGPKNCAM9B3AXG43X8VDNP4F3KCFAL5F3TM6TKAHI4MKLTU6VIIACBAFC4K6XJADDY36PALSQ8JDFWM6X8DEFPRDXNIUSRRK74VCARM9SKP6Y7AJQ4QAX8PLWVFYXPRDPVYUIHPUPGC6WTL66VJF6WR6Q4J5A8PMJJNFPRUSX8VFTKUG6BKYHTR6XJMKPQ4HMT8YFWL9CGB6Y4L6XJLDNV8GJ8VYCFUQCNTYTKAH3VR5HWU678JDXN53IJKDSTLM7TTUSSMQITRUXCUUMIMFAKQQ38DKPPMV88CUAHMLJ7CYAXUQD4SDPM5HVNMUCU4LQGACXLAHIKKYAKJQQKJCNB4JIGNUCWU98YBCAA5F8VA6PNMJDYSCI4UFSJJBAF56V7JUMW8GC74DPX4JC4PF6WALINBA678HCNRKXLQUXIBBAYP6XKNFCLR6MYSFXNAUXBTFAILLIBG6PSQ9XK5CLTAUMGGDHWALQJ8FCWMS8G5UXVM38GD5NLQQ3B8DTI5L98TYMVPLV7DKTNQQ6GS6CAUUDG46Y4UU8K6FTTLVIVNCTYULW7YAXP4JW4PCXMLGCJFYPC4DCKIUNQ5M68G63RM6CGLDYP4UW8NYYVQK94CDT54FCBAAC44HKTQFCPMLC88KH7RG88FDYKAFMT3DAQ83KVSCCPU6M7ACPTAK88TBAM5GSB4DCGAM3BRCPQAK68PDSWPGMKCUT55HPVYUY6A3V7GYSS8FWIS6AMLGJB3BYY5KIGPCAGMKMNTKASRLTVYDX5A68T3YYUQ3J7DUNYPHXN35NJQFJ7RUCTMM3B8FYIAUVV3UP4UVQGG5LTQS9GTFI7QSDBGCFP8GW8AUPLMVJGQCABRG3YPKA5QLMNP5NM5K67BUI7UKWKKYMR83CG8DP55K9IBYPMUJMJ4FSVQ66JLULV5L38DFALU9SIMAXYPH7T3CCVU3CIRKCAMGCNSCWVRD7YIAXS5KCVECITRU77CC3PMV9YPF6VMU7KIFY6L384JDY6RM8NM5AFP698KDYAMFCGECMV8KTVADSVPFB7DBY5QMJ8JEN7UFW85UFRM6QNRU3TLUSBC6TTMW9BLFCU4FQBTFMVLQJVLCMVAJM8QCAKQ69YEUTUAH6JFCNG4LXV4CAMUV6BVCWSGQT4CFXPLKBTSKNKPJCGDFXX5HVTTUNT4FPVRUAM4UQ8EFT38HSKDCYCAM7B6YPMAG9B6YN746VJRAX54H9YQCCGMKWVPDF75H88IEA4QUXI3CWPMV6VUYNGUKW74FXI53PBYDCFJQ77T6PMQF67MY6VAMM7J6CWPLP4RYP5UQCNMKIKAMI7Q6IP56XBJ6CTP668PKLRJQ8NEBA6QSSJ3FATUMTT8YXFQG9NIUSS43VTRFPLL9D4V5ARUKB7DYP75DWBIYXAQUJ8NFF7ULQBAFILQ9JB5YSW4JWJFEAWLWQKSACMMQ7KGDWVLKTV85HSR6PBGKH7PDQJUKPCU3XVLEAS863736MRRLP4Q63W8D84Y6XT8G9IIFYAQKINPCCVMD8JDKX5MFTK6EAQMVJBPDPALQ7JNDYSRLSJ6EN6LSWV3BHTUMVVYKAVUJJVDCPHQS3IEDWWLGS88DAJLDVVPUFTPLM4VBYVU3BV3UTSAFXIBUAUM3XJ4FXRQW37ADHRPLI4JYTPR6VJEKP6RGTG5FY7US9JFCNBMF9BG6CUMVVVJKLVQDCGCDMTLWWJQCP7UU7KAYTPLVQG3UNVAFVISFI6Q36G3CYVQMCJMUWS4L8GE6TFUKWKVEY653MBYUATU3CGVKMTLDX7KFYS4K9IIDSV8H38ADYVUJTGC6AVML78TKHTUVDGYCWW8DMTBCLSMQP4KCPT4J3JDFCKU9DG6DLVMWVJ4DAKAFJV4UTNRGVKAEAU5KQ4DBA8QGTVRDPR56I75CWS5FJTI6FPRUCBB5A74JDYJ63TPLVB3CMSMGM7LCHSU3B7VBYUUD9G6CYC5GC83FTJMFPKVDYS8DJVECL7UGWNTKSWPFC44FCQ4FDKD6XWUFMNS6FPQMXITUPX4FCTRENLRH8VICXBQWKTJKXQRJ7J66T4ULQ86FPVALT4SFY3QGXNEUCVU9JGIUCY56QYICCMMVW4NYTKLDP7CUIPAUV46YAYLLXI36IFH
        }