Formal Specifications for the Merchant

modeling the secure electronic transaction protocol 214 R2: idle, ProcessInitResponse; CardCInitRestrue; true = true; R3: ProcessInitResponse, idle; RegFormReqtrue; true = true; R4: idle, ProcessRegFormRes; RegFormRestrue; true = true; R5: ProcessRegFormRes, idle; CertReqtrue; true = true; R6: idle, ValidateCertRes; CertRestrue; true = true; R7: ValidateCertRes, idle; CertlnqReqtrue; true = true; R8: idle, ValidateCertInqRes; CertlnqRestrue; true = true; R9: idle, idle; PlnitReqtrue; true = true; RIO: idle, ProcessPInitRes; PlnitRestrue; true = true; Rll: ProcessPInitRes, idle; PReqtrue; true = true; R12: idle, ProcessPres; PRestrue; true = true; R13: ProcessPres, idle; InqReqtrue; true = true; R14: idle, ProcessInqRes; InqRestrue; true = true; Time-Constraints: End

5.3 Formal Specifications for the Merchant

Agent Merchant[B, A, D] Events: Me-AqCInitReqA, Me-AqCInitRes?A, CertReqA, CertRes?A, CertInqReqA, CertInqRes?A, PInitReq?B, PInitResB, PReq?B, PResB, AuthReqD, AuthRes?D, AuthRevReqD, AuthRevRes?D, InqReq?B, InqResB, CapReqD, CapRes?D, CapRevReqD, CapRevRes?D, CredReqD, CredRes?D, CredRevReqD, CredRevRes?D, PCertReqD, PCertRes?D, BatchAdminReqD, BatchAdminRes?D States: idle, ProcessCInitRes, ValidateCertRes, ValidateCertlnqRes, ProcessPInitReq, ProcessPReq, ProcessAuthRes, ProcessAuthRevRes, ProcessInqReq, ProcessCapRes, ProcessInqReq, ProcessCapRevRes, ProcessCredRes, ProcessPCertRes, ProcessBatchAdminRes Attributes: Traits: idle—»{}; Attribute-Function: idle—•{}; ProcessCInitRes—{}; ValidateCertRes—{}; ValidateCertlnqRes {}; ProcessPInitReq— {} ;ProcessPReq, ProcessAuthRes- {}; ProcessAuthRevRes—»• {}; ProcessInqReq—• { }; ProcessCapRes, ProcessInqReq—{}; ProcessCapRevRes{}; ProcessCredRes { } ;ProcessPCertRes—»• { }; ProcessBatchAdminRes— { }; Transition-Specifications: Rl: idle, idle; Me-AqCInitReqtrue; true = true; R2: idle, ProcessCInitRes; Me-AqCInitRestrue; true true; modeling the secure electronic transaction protocol 215 R3: ProcessCInitRes, idle; CertReqtrue; true = true; R4: idle, ValidateCertRes; CertRestrue; true true; R5: ValidateCertRes, idle; CertlnqReqtrue; true = true; R6: idle, ValidateCertInqRes; CertlnqRestrue; true = true; R7: idle, ProcessPInitReq; PlnitReqtrue; true = true; R8: ProcessPInitReq, idle; PlnitRestrue; true = true; R9: idle, ProcessPReq; PReqtrue; true = true; RIO: ProcessPReq, idle; PRestrue; true = true; Rll: idle, idle; AuthReqtrue; true = true; R12: idle, ProcessAuthRes; AuthRestrue; true = true; R13: ProcessAuthRes, idle; AuthRevReqtrue; true = true; R14: idle, ProcessAuthRevRes; AuthRevRestrue; true = true; R15: ProcessAuthRevRes, ProcessInqReq; InqReqtrue; true = true; R16: ProcessInqReq, idle; InqRestrue; true = true; R17: idle, idle; CapReqtrue; true = true; R18: idle, processCapRes; CapRestrue; true = true; R19: ProcessCapRes, ProcessInqReq; InqReqtrue; true = true; R20: ProcessInqReq, idle; InqRestrue; true = true; R21: idle, idle; CapRevReqtrue; true = true; R22: idle, ProcessCapRevRes; CapRevRestrue; true = true; R23: ProcessCapRevRes, idle; CredReqtrue; true = true; R24: idle, ProcessCredRes; CredRestrue; true = true; R25: ProcessCredRes, ProcessInqReq; InqReqtrue; true = true; R26: ProcessInqReq, idle; InqRestrue; true = true; R27: idle, idle; CredRevReqtrue; true = true; R28: idle, ProcessCredRes; CredRevRestrue; true = true; R29: idle, idle; PCertReqtrue; true = true; R30: idle, ProcessPCertRes; PCertRestrue; true = true; R31: idle, idle; BatchAdminReqtrue; true = true; R32: idle, ProcessBatchAdminRes; BatchAdminRestrue; true = true; Time-Constraints: End

5.3 Formal Specifications for the Payment Gateway