protected override void action_QKD(IAutomataStateFinite state) { //// BB84 GENERATE COMMON KEY //IBB84Protocol BB84Protocol = BB84ProtocolFactory.generateBB84Protocol(); //BB84Protocol.AgentMaster = Master.AgentBB84; //BB84Protocol.AgentSlave = this.AgentBB84; //BB84Protocol.BeforeStart += new EventHandlerProtocol(PropagateBB84BeforeStart); //BB84Protocol.AfterFinish += new EventHandlerProtocol(PropagateBB84AfterFinish); //BB84Protocol.GenerationStep1BeforeStart += new EventHandlerProtocol(PropagateBB84GenerationStep1BeforeStart); //BB84Protocol.GenerationStep1AfterFinish += new EventHandlerProtocol(PropagateBB84GenerationStep1AfterFinish); //BB84Protocol.GenerationStep2BeforeStart += new EventHandlerProtocol(PropagateBB84GenerationStep2BeforeStart); //BB84Protocol.GenerationStep2AfterFinish += new EventHandlerProtocol(PropagateBB84GenerationStep2AfterFinish); //BB84Protocol.GenerationStep3BeforeStart += new EventHandlerProtocol(PropagateBB84GenerationStep3BeforeStart); //BB84Protocol.GenerationStep3AfterFinish += new EventHandlerProtocol(PropagateBB84GenerationStep3AfterFinish); //BB84Protocol.VerifyKeyBeforeStart += new EventHandlerProtocol(PropagateBB84VerifyKeyBeforeStart); //BB84Protocol.VerifyKeyAfterFinish += new EventHandlerProtocol(PropagateBB84VerifyKeyAfterFinish); //BB84Protocol.ComparisonStep1BeforeStart += new EventHandlerProtocol(PropagateBB84ComparisonStep1BeforeStart); //BB84Protocol.ComparisonStep1AfterFinish += new EventHandlerProtocol(PropagateBB84ComparisonStep1AfterFinish); //BB84Protocol.ComparisonStep2BeforeStart += new EventHandlerProtocol(PropagateBB84ComparisonStep2BeforeStart); //BB84Protocol.ComparisonStep2AfterFinish += new EventHandlerProtocol(PropagateBB84ComparisonStep2AfterFinish); //BB84Protocol.ComparisonStep3BeforeStart += new EventHandlerProtocol(PropagateBB84ComparisonStep3BeforeStart); //BB84Protocol.ComparisonStep3AfterFinish += new EventHandlerProtocol(PropagateBB84ComparisonStep3AfterFinish); //BB84Protocol.DecisionBeforeStart += new EventHandlerProtocol(PropagateBB84DecisionBeforeStart); //BB84Protocol.DecisionAfterFinish += new EventHandlerProtocol(PropagateBB84DecisionAfterFinish); //BB84Protocol.OnBurstLogStart += new EventHandlerProtocol(PropagateOnBurstLogStart); //BB84Protocol.OnBurstLogFinish += new EventHandlerProtocol(PropagateOnBurstLogFinish); //BB84ProtocolFactory.generateSecretKey(BB84Protocol, keySize); }
protected override void action_Encoding(IAutomataStateFinite state) { //// MASTER ENCODES //byte[] masterKey = ArrayTools.BoolArrayToByteArray(BB84Protocol.AgentMaster.SecretSecureKey); //IVernamCryptosystem masterVernam = CryptosystemFactory.generateVernam(masterKey); //byte[] materData = ArrayTools.EncodingASCII_StringToArrayByte(Master.TransmitData); //byte[] masterCiphered = masterVernam.Cipher(materData); //bool[] masterBoolEncoded = ArrayTools.ByteArrayToBoolArray(masterCiphered); }
protected override void action_Decoding(IAutomataStateFinite state) { //// SLAVE DECODES //bool[] slaveBoolEncoded = this.AgentBurst.exportReceivedData(); //byte[] slaveCiphered = ArrayTools.BoolArrayToByteArray(slaveBoolEncoded); //byte[] slaveKey = ArrayTools.BoolArrayToByteArray(BB84Protocol.AgentSlave.SecretSecureKey); //IVernamCryptosystem slaveVernam = CryptosystemFactory.generateVernam(slaveKey); //byte[] slaveData = slaveVernam.Decipher(slaveCiphered); //this.Buffer = ArrayTools.EncodingASCII_ArrayByteToString(slaveData); }
public AutomataTransitionFiniteAbstract(IAutomataStateFinite statestart, IAutomataStateFinite stateend, params FiniteAutomataTransitionConditionDecision[] decisions) : base() { if (statestart.Automata != stateend.Automata) { new ExceptionAutomataFinite(); }; _statestart = statestart; _stateend = stateend; _automata = statestart.Automata; _conditions = FactoryAutomataFinite.GenerateAutomataTransitionConditionCollection(); Automata.Transitions.addObject(this); this.GenerateCondition(decisions); }
protected override void action_Transmission(IAutomataStateFinite state) { //// DATA TRANSMISSION //IBurstProtocolAgent DataMaster = Master.AgentBurst; //IBurstProtocolAgent DataSlave = this.AgentBurst; //IBurstProtocol DataProtocol = BurstProtocolFactory.generateBurstProtocol(); //DataMaster.Reset(); //DataMaster.importTransmitData(masterBoolEncoded); //DataSlave.Reset(); //DataProtocol.Master = DataMaster; //DataProtocol.Slave = DataSlave; //DataProtocol.BeforeStart += new EventHandlerProtocol(PropagateDataTransmissionBeforeStart); //DataProtocol.AfterFinish += new EventHandlerProtocol(PropagateDataTransmissionAfterFinish); ////DataProtocol.OnBurstLogStart += new EventHandlerProtocol(PropagateOnBurstLogStart); ////DataProtocol.OnBurstLogFinish += new EventHandlerProtocol(PropagateOnBurstLogFinish); //DataProtocol.Process(); }
protected override void action_Init(IAutomataStateFinite state) { //// STRING BAD; BOOL OK ;) //bool[] ASCIIBoolArray = ArrayTools.EncodingASCII_StringToArrayBool(this.Buffer); //int keySize = ASCIIBoolArray.Length; // debería ser múltiplo de 8 }
protected void eventExecuteAction(IAutomataStateFinite state) { string ID; if (state != null) { ID = state.ID; } else { ID = "<null>"; }; TesterLog("eventExecuteAction", ID); }
protected void InitBasic() { CheckInitialFinal(); _state = FindInitialState(); _active = true; DoOnStateEnter(State); if (State != null) { State.DoOnEnter(); } PerformExecution(); Eval(); }
public void DoOnStateEnter(IAutomataStateFinite state) { if (OnStateEnter != null) { OnStateEnter(state); } }
//private void action_Init(IFiniteAutomataState state) //{ // if ((Master == null) && (Slave == null)) // { throw new ProtocolException(); } // DoBeforeStart(); // // STRING BAD; BOOL OK ;) // bool[] ASCIIBoolArray = ArrayTools.EncodingASCII_StringToArrayBool(Master.TransmitData); // int keySize = ASCIIBoolArray.Length; // debería ser múltiplo de 8 //} //private void action_QKD(IFiniteAutomataState state) //{ // // BB84 GENERATE COMMON KEY // IBB84Protocol BB84Protocol = BB84ProtocolFactory.generateBB84Protocol(); // BB84Protocol.AgentMaster = Master.AgentBB84; // BB84Protocol.AgentSlave = Slave.AgentBB84; // BB84Protocol.BeforeStart += new EventHandlerProtocol(PropagateBB84BeforeStart); // BB84Protocol.AfterFinish += new EventHandlerProtocol(PropagateBB84AfterFinish); // BB84Protocol.GenerationStep1BeforeStart += new EventHandlerProtocol(PropagateBB84GenerationStep1BeforeStart); // BB84Protocol.GenerationStep1AfterFinish += new EventHandlerProtocol(PropagateBB84GenerationStep1AfterFinish); // BB84Protocol.GenerationStep2BeforeStart += new EventHandlerProtocol(PropagateBB84GenerationStep2BeforeStart); // BB84Protocol.GenerationStep2AfterFinish += new EventHandlerProtocol(PropagateBB84GenerationStep2AfterFinish); // BB84Protocol.GenerationStep3BeforeStart += new EventHandlerProtocol(PropagateBB84GenerationStep3BeforeStart); // BB84Protocol.GenerationStep3AfterFinish += new EventHandlerProtocol(PropagateBB84GenerationStep3AfterFinish); // BB84Protocol.VerifyKeyBeforeStart += new EventHandlerProtocol(PropagateBB84VerifyKeyBeforeStart); // BB84Protocol.VerifyKeyAfterFinish += new EventHandlerProtocol(PropagateBB84VerifyKeyAfterFinish); // BB84Protocol.ComparisonStep1BeforeStart += new EventHandlerProtocol(PropagateBB84ComparisonStep1BeforeStart); // BB84Protocol.ComparisonStep1AfterFinish += new EventHandlerProtocol(PropagateBB84ComparisonStep1AfterFinish); // BB84Protocol.ComparisonStep2BeforeStart += new EventHandlerProtocol(PropagateBB84ComparisonStep2BeforeStart); // BB84Protocol.ComparisonStep2AfterFinish += new EventHandlerProtocol(PropagateBB84ComparisonStep2AfterFinish); // BB84Protocol.ComparisonStep3BeforeStart += new EventHandlerProtocol(PropagateBB84ComparisonStep3BeforeStart); // BB84Protocol.ComparisonStep3AfterFinish += new EventHandlerProtocol(PropagateBB84ComparisonStep3AfterFinish); // BB84Protocol.DecisionBeforeStart += new EventHandlerProtocol(PropagateBB84DecisionBeforeStart); // BB84Protocol.DecisionAfterFinish += new EventHandlerProtocol(PropagateBB84DecisionAfterFinish); // BB84Protocol.OnBurstLogStart += new EventHandlerProtocol(PropagateOnBurstLogStart); // BB84Protocol.OnBurstLogFinish += new EventHandlerProtocol(PropagateOnBurstLogFinish); // BB84ProtocolFactory.generateSecretKey(BB84Protocol, keySize); //} //private void action_Encoding(IFiniteAutomataState state) //{ // // MASTER ENCODES // byte[] masterKey = ArrayTools.BoolArrayToByteArray(BB84Protocol.AgentMaster.SecretSecureKey); // IVernamCryptosystem masterVernam = CryptosystemFactory.generateVernam(masterKey); // byte[] materData = ArrayTools.EncodingASCII_StringToArrayByte(Master.TransmitData); // byte[] masterCiphered = masterVernam.Cipher(materData); // bool[] masterBoolEncoded = ArrayTools.ByteArrayToBoolArray(masterCiphered); //} //private void action_Transmission(IFiniteAutomataState state) //{ // // DATA TRANSMISSION // IBurstProtocolAgent DataMaster = Master.AgentBurst; // IBurstProtocolAgent DataSlave = Slave.AgentBurst; // IBurstProtocol DataProtocol = BurstProtocolFactory.generateBurstProtocol(); // DataMaster.Reset(); // DataMaster.importTransmitData(masterBoolEncoded); // DataSlave.Reset(); // DataProtocol.Master = DataMaster; // DataProtocol.Slave = DataSlave; // DataProtocol.BeforeStart += new EventHandlerProtocol(PropagateDataTransmissionBeforeStart); // DataProtocol.AfterFinish += new EventHandlerProtocol(PropagateDataTransmissionAfterFinish); // //DataProtocol.OnBurstLogStart += new EventHandlerProtocol(PropagateOnBurstLogStart); // //DataProtocol.OnBurstLogFinish += new EventHandlerProtocol(PropagateOnBurstLogFinish); // DataProtocol.Process(); //} //private void action_Decoding(IFiniteAutomataState state) //{ // // SLAVE DECODES // bool[] slaveBoolEncoded = DataSlave.exportReceivedData(); // byte[] slaveCiphered = ArrayTools.BoolArrayToByteArray(slaveBoolEncoded); // byte[] slaveKey = ArrayTools.BoolArrayToByteArray(BB84Protocol.AgentMaster.SecretSecureKey); // IVernamCryptosystem slaveVernam = CryptosystemFactory.generateVernam(slaveKey); // byte[] slaveData = slaveVernam.Decipher(slaveCiphered); // Slave.ReceivedData = ArrayTools.EncodingASCII_ArrayByteToString(slaveData); //} private void beforeStart(IAutomataStateFinite state) { DoBeforeStart(); }
public AutomataTransitionFiniteBasic(IAutomataStateFinite statestart, IAutomataStateFinite stateend, params FiniteAutomataTransitionConditionDecision[] decisions) : base(statestart, stateend, decisions) { }
protected void eventStateExit(IAutomataStateFinite state) { //TesterLog("eventStateExit", ID); }
protected void eventExecuteAction(IAutomataStateFinite state) { //TesterLog("eventExecuteAction", ID); }
public void state_Sending_OnExecution(IAutomataStateFinite state) { Transmit(); }
protected void eventStateEnter(IAutomataStateFinite state) { string ID; if (state != null) { ID = state.ID; } else { ID = "<null>"; }; TesterLog("eventStateEnter", ID); }
protected virtual void action_Decoding(IAutomataStateFinite state) { // SLAVE DECODES }
protected virtual void action_Encoding(IAutomataStateFinite state) { // MASTER ENCODES }
private void afterFinish(IAutomataStateFinite state) { DoAfterFinish(); }
protected virtual void action_Init(IAutomataStateFinite state) { }
protected void eventStateExit(IAutomataStateFinite state) { string ID; if (state != null) { ID = state.ID; } else { ID = "<null>"; }; TesterLog(DateTime.UtcNow.ToString("o"), "eventStateExit", ID); }
protected virtual void action_QKD(IAutomataStateFinite state) { // BB84 GENERATE COMMON KEY }
public void DoOnStateExit(IAutomataStateFinite state) { if (OnStateExit != null) { OnStateExit(state); } }
protected virtual void action_Transmission(IAutomataStateFinite state) { // DATA TRANSMISSION }
private void PerformTransition(IAutomataTransitionFinite transition) { if ((_state == transition.StateStart) && (_state != transition.StateEnd)) { if (State != null) { State.DoOnExit(); } DoOnStateExit(State); _state = transition.StateEnd; DoOnTransition(transition); DoOnStateEnter(State); if (State != null) { State.DoOnEnter(); } } }
public static IAutomataTransitionFinite GenerateAutomataTransition(IAutomataStateFinite statestart, IAutomataStateFinite stateend, params FiniteAutomataTransitionConditionDecision[] decisions) { IAutomataTransitionFinite transition = new AutomataTransitionFiniteBasic(statestart, stateend, decisions); return transition; }