/** [シングルトン]constructor */ private Crypt() { //main_security this.main_security = new Main_Security(); //work_list this.work_list = new System.Collections.Generic.List <WorkItem>(); //add_list this.add_list = new System.Collections.Generic.List <WorkItem>(); }
/** [シングルトン]constructor */ private Crypt() { //work this.work_pool = new List.NodePool <WorkItem>(16); this.work_add = new System.Collections.Generic.LinkedList <WorkItem>(); this.work_list = new System.Collections.Generic.LinkedList <WorkItem>(); //main_security this.main_security = new Main_Security(); //PlayerLoopType this.playerloop_flag = true; Fee.PlayerLoopSystem.PlayerLoopSystem.GetInstance().Add(Config.PLAYERLOOP_ADDTYPE, Config.PLAYERLOOP_TARGETTYPE, typeof(PlayerLoopType.Fee_Crypt_Main), this.Main); }
/** 更新。 * * return == true : 完了。 * */ public bool Main() { switch (this.mode) { case Mode.Start: { switch (this.request_type) { case RequestType.EncryptPublicKey: { if (Fee.Crypt.Crypt.GetInstance().GetMainSecurity().RequestEncryptPublicKey(this.request_binary, this.request_key) == true) { this.mode = Mode.Do_Security; } } break; case RequestType.DecryptPrivateKey: { if (Fee.Crypt.Crypt.GetInstance().GetMainSecurity().RequestDecryptPrivateKey(this.request_binary, this.request_key) == true) { this.mode = Mode.Do_Security; } } break; case RequestType.CreateSignaturePrivateKey: { if (Fee.Crypt.Crypt.GetInstance().GetMainSecurity().RequestCreateSignaturePrivateKey(this.request_binary, this.request_key) == true) { this.mode = Mode.Do_Security; } } break; case RequestType.VerifySignaturePublicKey: { if (Fee.Crypt.Crypt.GetInstance().GetMainSecurity().RequestVerifySignaturePublicKey(this.request_binary, this.request_signature_binary, this.request_key) == true) { this.mode = Mode.Do_Security; } } break; case RequestType.EncryptPass: { if (Fee.Crypt.Crypt.GetInstance().GetMainSecurity().RequestEncryptPass(this.request_binary, this.request_pass, this.request_salt) == true) { this.mode = Mode.Do_Security; } } break; case RequestType.DecryptPass: { if (Fee.Crypt.Crypt.GetInstance().GetMainSecurity().RequestDecryptPass(this.request_binary, this.request_pass, this.request_salt) == true) { this.mode = Mode.Do_Security; } } break; } } break; case Mode.End: { } return(true); case Mode.Do_Security: { Main_Security t_main = Fee.Crypt.Crypt.GetInstance().GetMainSecurity(); this.item.SetResultProgress(t_main.GetResultProgress()); if (t_main.GetResultType() != Main_Security.ResultType.None) { //結果。 bool t_success = false; switch (t_main.GetResultType()) { case Main_Security.ResultType.Binary: { if (t_main.GetResultBinary() != null) { this.item.SetResultBinary(t_main.GetResultBinary()); t_success = true; } } break; case Main_Security.ResultType.VerifySuccess: { this.item.SetResultVerifySuccess(); t_success = true; } break; } if (t_success == false) { this.item.SetResultErrorString(t_main.GetResultErrorString()); } //完了。 t_main.Fix(); this.mode = Mode.End; } else if (this.item.IsCancel() == true) { //キャンセル。 t_main.Cancel(); } } break; } return(false); }