/// <summary> 主构造函数.</summary> /// <remarks> windawings, 11/30/2015.</remarks> public ClassRegister() { try { //若存在存储文件,读取 if (File.Exists(DataName)) { var jsonStr = ClassEncrypt.DecryptReturn(DataName); Info = (BasicInfo)JsonConvert.DeserializeObject(jsonStr, typeof(BasicInfo)); } else { Info.CaptchaType = "manual"; Info.PictureType = "png"; Info.ImgUrl = FormMain.ImgUrl; } //若存在公钥文件 if (File.Exists(PubliKeyPath)) { var publicKeyBytes = ClassEncrypt.ReadKeyPair(PubliKeyPath); var publicKeyParameters = (ECPublicKeyParameters)PublicKeyFactory.CreateKey(publicKeyBytes); EcDsaSigner.Init(false, publicKeyParameters); } else { MessageBox.Show("公钥导入失败,将无法进行注册验证!若key.public文件丢失请联系作者!"); } } catch (Exception ex) { MessageBox.Show(ex.Message); Environment.Exit(0); } }
/// <summary> 静态构造函数.</summary> /// <remarks> windawings, 11/30/2015.</remarks> static ClassCaptcha() { //获取字典文件 var captchaJson = (Captcha[]) JsonConvert.DeserializeObject(ClassEncrypt.DecryptReturn(@"bin\captcha.bin"), typeof(Captcha[])); foreach (var captcha in captchaJson) { if (CaptchaDic.ContainsKey(captcha.ImgGuid)) { CaptchaDic[captcha.ImgGuid] = captcha.Value; } else { CaptchaDic.Add(captcha.ImgGuid, captcha.Value); } } }