[2]
Fides Aarts, Joeri De Ruiter, and Erik Poll. 2013. Formal models of bank cards for free. In IEEE 6th International Conference on Software Testing, Verification and Validation Workshops. IEEE, 461–468.
[3]
Imran Hafeez Abbasi, Faiq Khalid Lodhi, Awais Mehmood Kamboh, and Osman Hasan. 2017. Formal verification of gate-level multiple side channel parameters to detect hardware trojans. In Formal Techniques for Safety-critical Systems, Cyrille Artho and Peter Csaba Ölveczky (Eds.). Springer International Publishing, Cham, 75–92.
[4]
Jean-Raymond Abrial. 2010. Modeling in Event-B: System and Software Engineering. Cambridge University Press, Cambridge, UK. DOI:
[5]
S. Abughazalah, K. Markantonakis, and K. Mayes. 2014. Secure mobile payment on NFC-enabled mobile phones formally analysed using CasperFDR. In IEEE 13th International Conference on Trust, Security and Privacy in Computing and Communications. IEEE, 422–431.
[6]
Sarita V. Adve and Kourosh Gharachorloo. 1996. Shared memory consistency models: A tutorial. IEEE Comput. 29, 12 (1996), 66–76.
[7]
Shakeel Ahamad, Siba Udgata, and V. Sastry. 2012. A new mobile payment system with formal verification. Int. J. Internet Technol. Secur. Trans. 4 (01 2012), 71–103. DOI:
[9]
Sabina Akhtar, Ehtesham Zahoor, and Olivier Perrin. 2017. Formal verification of authorization policies for enterprise social networks using PlusCal-2. In Collaborative Computing: Networking, Applications and Worksharing - 13th International Conference, CollaborateCom 2017, Edinburgh, UK, December 11–13, 2017, Proceedings(Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering, Vol. 252), Imed Romdhani, Lei Shu, Takahiro Hara, Zhangbing Zhou, Timothy J. Gordon, and Deze Zeng (Eds.). Springer, 530–540.
[10]
Jade Alglave, Alastair F. Donaldson, Daniel Kroening, and Michael Tautschnig. 2011. Making software verification tools really work. In Automated Technology for Verification and Analysis, Tevfik Bultan and Pao-Ann Hsiung (Eds.). Springer Berlin, 28–42.
[11]
A. Alshehri, J. A. Briffa, S. Schneider, and S. Wesemeyer. 2013. Formal security analysis of NFC M-coupon protocols using Casper/FDR. In 5th International Workshop on Near Field Communication (NFC). 1–6. DOI:
[12]
R. Alur, C. Courcoubetis, and D. Dill. 1990. Model-checking for real-time systems. In 5th Annual IEEE Symposium on Logic in Computer Science. IEEE, 414–425. DOI:
[13]
Amazon.com Inc. 2019. Amazon Simple Storage Service (S3). Retrieved from http://www.aws.amazon.com/s3/.
[14]
Amazon.com Inc. 2019. s2n. Retrieved from http://www.github.com/awslabs/s2n.
[15]
Raphael Amoah, Seyit Camtepe, and Ernest Foo. 2016. Formal modelling and analysis of DNP3 secure authentication. J. Netw. Comput. Applic. 59 (2016), 345–360. Retrieved from http://www.sciencedirect.com/science/article/pii/S1084804515001228.
[16]
Marcin Andrychowicz, Stefan Dziembowski, Daniel Malinowski, and Łukasz Mazurek. 2014. Modeling Bitcoin contracts by timed automata. In Formal Modeling and Analysis of Timed Systems, Axel Legay and Marius Bozga (Eds.). Springer International Publishing, Cham, 7–22.
[17]
Danil Annenkov and Martin Elsman. 2018. Certified compilation of financial contracts. In 20th International Symposium on Principles and Practice of Declarative Programming (PPDP’18). Association for Computing Machinery, New York, NY. DOI:
[18]
L. Apvrille, L. Li, and Y. Roudier. 2016. Model-driven engineering for designing safe and secure embedded systems. In Architecture-Centric Virtual Integration (ACVI). IEEE, 4–7. DOI:
[19]
Myrto Arapinis, Andriana Gkaniatsou, Dimitris Karakostas, and Aggelos Kiayias. 2019. A formal treatment of hardware wallets. In Financial Cryptography and Data Security, Ian Goldberg and Tyler Moore (Eds.). Springer International Publishing, Cham, 426–445.
[20]
Alessandro Armando, Wihem Arsac, Tigran Avanesov, Michele Barletta, Alberto Calvi, Alessandro Cappai, Roberto Carbone, Yannick Chevalier, Luca Compagna, Jorge Cuéllar, Gabriel Erzse, Simone Frau, Marius Minea, Sebastian Mödersheim, David von Oheimb, Giancarlo Pellegrino, Serena Elisa Ponta, Marco Rocchetto, Michael Rusinowitch, Mohammad Torabi Dashti, Mathieu Turuani, and Luca Viganò. 2012. The AVANTSSAR platform for the automated validation of trust and security of service-oriented architectures. In Tools and Algorithms for the Construction and Analysis of Systems, Cormac Flanagan and Barbara König (Eds.). Springer Berlin, 267–282.
[21]
A. Armando, D. Basin, Y. Boichut, Y. Chevalier, L. Compagna, J. Cuellar, P. Hankes Drielsma, P. C. Heám, O. Kouchnarenko, J. Mantovani, S. Mödersheim, D. von Oheimb, M. Rusinowitch, J. Santiago, M. Turuani, L. Viganò, and L. Vigneron. 2005. The AVISPA tool for the automated validation of internet security protocols and applications. In Computer Aided Verification, Kousha Etessami and Sriram K. Rajamani (Eds.). Springer Berlin, 281–285.
[22]
Anish Athalye, Adam Belay, M. Frans Kaashoek, Robert Morris, and Nickolai Zeldovich. 2019. Notary: A device for secure transaction approval. In 27th ACM Symposium on Operating Systems Principles (SOSP’19). Association for Computing Machinery, New York, NY, 97–113. DOI:
[23]
Kathy Wain Yee Au, Yi Fan Zhou, Zhen Huang, and David Lie. 2012. PScout: Analyzing the Android permission specification. In ACM Conference on Computer and Communications Security (CCS’12). ACM, New York, NY, 217–228. DOI:
[24]
Domagoj Babić, Stefan Bucur, Yaohui Chen, Franjo Ivančić, Tim King, Markus Kusano, Caroline Lemieux, László Szekeres, and Wei Wang. 2019. FUDGE: Fuzz driver generation at scale. In 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering (Tallinn, Estonia) (ESEC/FSE 2019). Association for Computing Machinery, New York, NY, 975–985. DOI:
[25]
Hamid Bagheri, Eunsuk Kang, Sam Malek, and Daniel Jackson. 2018. A formal approach for detection of security flaws in the Android permission system. Form. Asp. Comput. 30, 5 (01 Sep.2018), 525–544. DOI:
[26]
H. Bagheri, A. Sadeghi, J. Garcia, and S. Malek. 2015. COVERT: Compositional analysis of Android inter-app permission leakage. IEEE Trans. Softw. Eng. 41, 9 (Sep.2015), 866–886. DOI:
[27]
Guangdong Bai, Jianan Hao, Jianliang Wu, Yang Liu, Zhenkai Liang, and Andrew Martin. 2014. TrustFound: Towards a formal foundation for model checking trusted computing platforms. In FM 2014: Formal Methods, Cliff Jones, Pekka Pihlajasaari, and Jun Sun (Eds.). Springer International Publishing, Cham, 110–126.
[28]
Manuel Barbosa, Gilles Barthe, Karthik Bhargavan, Bruno Blanchet, Cas Cremers, Kevin Liao, and Bryan Parno. 2019. SoK: Computer-Aided Cryptography. Cryptology ePrint Archive. Retrieved from http://www.eprint.iacr.org/2019/1393.
[29]
John Barnes. 2012. Spark: The Proven Approach to High Integrity Software. Altran Praxis, UK.
[30]
Janet Barnes, Rod Chapman, Randy Johnson, James Widmaier, David Cooper, and Bill Everett. 2006. Engineering the Tokeneer enclave protection system. In 1st IEEE International Symposium on Secure Software Engineering. IEEE Computer Society Press.
[31]
Michael Barnett, Bor-Yuh Evan Chang, Robert DeLine, Bart Jacobs, and K. Rustan M. Leino. 2005. Boogie: A modular reusable verifier for object-oriented programs. In Formal Methods for Components and Objects, 4th International Symposium, FMCO 2005, Amsterdam, The Netherlands, November 1–4, 2005, Revised Lectures (Lecture Notes in Computer Science, Vol. 4111), Frank S. de Boer, Marcello M. Bonsangue, Susanne Graf, and Willem P. de Roever (Eds.). Springer, Berlin, 364–387.
[32]
David Basin. 2021. Formal methods for security. In
The Cyber Security Body of Knowledge v1.1, Awais Rashid, Howard Chivers, Emil Lupu, Andrew Martin, and Steve Schneider (Eds.). University of Bristol. Retrieved from
http://www.www.cybok.org.
[33]
David Basin, Jannik Dreier, Lucca Hirschi, Saša Radomirovic, Ralf Sasse, and Vincent Stettler. 2018. A formal analysis of 5G authentication. In ACM SIGSAC Conference on Computer and Communications Security. 1383–1396.
[34]
David A. Basin, Sebastian Mödersheim, and Luca Viganò. 2005. OFMC: A symbolic model checker for security protocols. Int. J. Inf. Sec. 4, 3 (2005), 181–208.
[35]
Elyes Ben Hamida, Kei Leo Brousmiche, Hugo Levard, and Eric Thea. 2017. Blockchain for enterprise: Overview, opportunities and challenges. In
13th International Conference on Wireless and Mobile Communications (ICWMC’17). IARIA XPS Press. Retrieved from
http://www.hal.archives-ouvertes.fr/hal-01591859.
[36]
Siavosh Benabbas, Rosario Gennaro, and Yevgeniy Vahlis. 2011. Verifiable delegation of computation over large datasets. In Advances in Cryptology – CRYPTO 2011, Phillip Rogaway (Ed.). Springer Berlin, 111–131.
[37]
Fabrizio Biondi, Thomas Given-Wilson, Axel Legay, Cassius Puodzius, and Jean Quilbeuf. 2018. Tutorial: An overview of malware detection and evasion techniques. In Leveraging Applications of Formal Methods, Verification and Validation. Modeling, Tiziana Margaria and Bernhard Steffen (Eds.). Springer International Publishing, Cham, 565–586.
[38]
Dines Bjørner. 1979. The Vienna development method (VDM). In Mathematical Studies of Information Processing, E. K. Blum, M. Paul, and S. Takasu (Eds.). Springer Berlin, 326–359.
[39]
M. R. Blackburn, Ramaswamy Chandramouli, and Robert Busser. 2001. Model-based approach to security test automation. Qual. Week (01 2001).
[40]
Bruno Blanchet. 2016. Modeling and verifying security protocols with the applied pi calculus and ProVerif. Found. Trends Priv. Secur. 1, 1–2 (2016), 1–135.
[41]
Bruno Blanchet, Ben Smyth, Vincent Cheval, and Marc Sylvestre. 2018. ProVerif 2.00: Automatic Cryptographic Protocol Verifier, User Manual and Tutorial. INRIA.
[42]
Sören Bleikertz, Carsten Vogel, Thomas Groß, and Sebastian Mödersheim. 2015. Proactive security analysis of changes in virtualized infrastructures. In 31st Annual Computer Security Applications Conference (ACSAC’15). Association for Computing Machinery, New York, NY, 51–60. DOI:
[43]
R. Bohn, John Messina, Fang Liu, Jin Tong, and Jian Mao. 2011. NIST cloud computing reference architecture. 594–596. DOI:
[44]
Sriramulu Bojjagani and V. N. Sastry. 2015. SSMBP: A secure SMS-based mobile banking protocol with formal verification. In WiMob Conference. IEEE Computer Society, 252–259.
[45]
J. Bonneau, C. Herley, P. C. v. Oorschot, and F. Stajano. 2012. The quest to replace passwords: A framework for comparative evaluation of web authentication schemes. In IEEE Symposium on Security and Privacy. IEEE, 553–567.
[46]
Ioana Boureanu, Aikaterini Mitrokotsa, and Serge Vaudenay. 2014. Towards secure distance bounding. In Fast Software Encryption, Shiho Moriai (Ed.). Springer Berlin, 55–67.
[47]
Alejandro Bracho, Can Saygin, HungDa Wan, Yooneun Lee, and Alireza Zarreh. 2018. A simulation-based platform for assessing the impact of cyber-threats on smart manufacturing systems. Procedia Manuf. 26 (2018), 1116–1127. Retrieved from http://www.sciencedirect.com/science/article/pii/S2351978918308242.
[48]
Sergey Bratus, Nihal D’Cunha, Evan R. Sparks, and Sean W. Smith. 2008. TOCTOU, traps, and trusted computing. In Trusted Computing - Challenges and Applications, First International Conference on Trusted Computing and Trust in Information Technologies, Trust 2008, Villach, Austria, March 11–12, 2008, Proceedings (Lecture Notes in Computer Science, Vol. 4968), Peter Lipp, Ahmad-Reza Sadeghi, and Klaus-Michael Koch (Eds.). Springer, Berlin, 14–32.
[49]
Alessandro Bruni, Michal Sojka, Flemming Nielson, and Hanne Riis Nielson. 2014. Formal security analysis of the MaCAN protocol. In Integrated Formal Methods, Elvira Albert and Emil Sekerinski (Eds.). Springer International Publishing, Cham, 241–255.
[50]
D. Bruschi, L. Cavallaro, A. Lanzi, and M. Monga. 2005. Replay attack in TCG specification and solution. In 21st Annual Computer Security Applications Conference (ACSAC’05). IEEE.
[51]
Michele Bugliesi, Silvia Crafa, Massimo Merro, and V. Sassone. 2005. Communication and mobility control in boxed ambients. Inf. Computat. 202 (10 2005), 39–86. DOI:
[52]
Michael Burrows, Martín Abadi, and Roger M. Needham. 1990. A logic of authentication. ACM Trans. Comput. Syst. 8, 1 (1990), 18–36.
[53]
Christoph Busold, Ahmed Taha, Christian Wachsmann, Alexandra Dmitrienko, Hervé Seudié, Majid Sobhani, and Ahmad-Reza Sadeghi. 2013. Smart keys for cyber-cars: Secure smartphone-based NFC-enabled car immobilizer. In 3rd ACM Conference on Data and Application Security and Privacy (CODASPY’13). Association for Computing Machinery, New York, NY, 233–242. DOI:
[54]
J. N. Buxton and B. Randell. 1970. Software Engineering Techniques: Report of a Conference Sponsored by the NATO Science Committee, Rome, Italy, 27-31 Oct. 1969, Brussels, Scientific Affairs Division, NATO.
[55]
Luca Cardelli and Andrew D. Gordon. 2000. Mobile ambients. Theoret. Comput. Sci. 240, 1 (2000), 177–213. Retrieved from http://www.sciencedirect.com/science/article/pii/S0304397599002315.
[56]
Roberto Cavada, Alessandro Cimatti, Michele Dorigatti, Alberto Griggio, Alessandro Mariotti, Andrea Micheli, Sergio Mover, Marco Roveri, and Stefano Tonetta. 2014. The nuXmv symbolic model checker. In International Conference on Computer -aided Verification. Springer, 334–342.
[57]
Common Criteria Recognition Agreement CCRA. 2006. Common Criteria for Information Technology Security Evaluation. Part 1: Introduction and General Model. Technical Report. Tech. Rep. CCMB-2006-09-001, Version 3.1, Revision 1. Common Criteria Management Board.
[58]
Sudipta Chattopadhyay and Abhik Roychoudhury. 2018. Symbolic verification of cache side-channel freedom. IEEE Trans. Comput.-aided Des. Integr. Circ. Syst. 37, 11 (2018), 2812–2823.
[59]
K. Cheang, C. Rasmussen, S. Seshia, and P. Subramanyan. 2019. A formal approach to secure speculation. In IEEE 32nd Computer Security Foundations Symposium (CSF). 288–28815. DOI:
[60]
S. Chen, H. Fu, and H. Miao. 2016. Formal verification of security protocols using Spin. In IEEE/ACIS 15th International Conference on Computer and Information Science (ICIS). IEEE, 1–6. DOI:
[61]
Xiaofeng Chen, Jin Li, Jian Weng, Jianfeng Ma, and Wenjing Lou. 2014. Verifiable computation over large database with incremental updates. In Computer Security - ESORICS 2014, Mirosław Kutyłowski and Jaideep Vaidya (Eds.). Springer International Publishing, Cham, 148–162.
[62]
Tom Chothia, Flavio D. Garcia, Joeri De Ruiter, Jordi Van Den Breekel, and Matthew Thompson. 2015. Relay cost bounding for contactless EMV payments. In International Conference on Financial Cryptography and Data Security. Springer, Berlin, 189–206.
[63]
Tom Chothia, Flavio D. Garcia, Chris Heppel, and Chris McMahon Stone. 2017. Why Banker Bob (still) can’t get TLS right: A security analysis of TLS in leading UK banking apps. In International Conference on Financial Cryptography and Data Security. Springer, Berlin, 579–597.
[64]
Andrey Chudnov, Nathan Collins, Byron Cook, Joey Dodds, Brian Huffman, Colm MacCárthaigh, Stephen Magill, Eric Mertens, Eric Mullen, Serdar Tasiran, Aaron Tomb, and Eddy Westbrook. 2018. Continuous formal verification of Amazon s2n. In Computer Aided Verification, Hana Chockler and Georg Weissenbacher (Eds.). Springer International Publishing, Cham, 430–446.
[65]
Alessandro Cimatti, Edmund M. Clarke, Fausto Giunchiglia, and Marco Roveri. 1999. NUSMV: A new symbolic model verifier. In 11th International Conference on Computer Aided Verification (CAV’99). Springer-Verlag, Berlin, 495–499.
[66]
Aniello Cimitile, Francesco Mercaldo, Vittoria Nardone, Antonella Santone, and Corrado Aaron Visaggio. 2018. Talos: No more ransomware victims with formal methods. Int. J. Inf. Secur. 17, 6 (01 Nov. 2018), 719–738. DOI:
[67]
Edmund Clarke, Daniel Kroening, and Flavio Lerda. 2004. A tool for checking ANSI-C programs. In Tools and Algorithms for the Construction and Analysis of Systems, Kurt Jensen and Andreas Podelski (Eds.). Springer Berlin, 168–176.
[68]
Michael R. Clarkson and Fred B. Schneider. 2010. Hyperproperties. J. Comput. Secur. 18, 6 (Sep. 2010), 1157–1210.
[69]
Rance Cleaveland and Steve Sims. 1996. The NCSU concurrency workbench. In Computer Aided Verification, Rajeev Alur and Thomas A. Henzinger (Eds.). Springer Berlin, 394–397.
[70]
D. Cofer, A. Gacek, J. Backes, M. W. Whalen, L. Pike, A. Foltzer, M. Podhradsky, G. Klein, I. Kuz, J. Andronick, G. Heiser, and D. Stuart. 2018. A formal approach to constructing secure air vehicle software. Computer 51, 11 (Nov. 2018), 14–23. DOI:
[71]
K. Cohn-Gordon, C. Cremers, B. Dowling, L. Garratt, and D. Stebila. 2017. A formal security analysis of the signal messaging protocol. In IEEE European Symposium on Security and Privacy (EuroS&P). IEEE, 451–466. DOI:
[72]
Byron Cook. 2018. Formal reasoning about the security of Amazon Web Services. In Computer Aided Verification, Hana Chockler and Georg Weissenbacher (Eds.). Springer International Publishing, Cham, 38–47.
[73]
Cas J. F. Cremers. 2008. The scyther tool: Verification, falsification, and analysis of security protocols. In Computer Aided Verification, Aarti Gupta and Sharad Malik (Eds.). Springer Berlin, 414–418.
[74]
Pascal Cuoq, Florent Kirchner, Nikolai Kosmatov, Virgile Prevosto, Julien Signoles, and Boris Yakobowski. 2012. Frama-C — A software analysis perspective. In Software Engineering and Formal Methods - 10th International Conference, SEFM 2012, Thessaloniki, Greece, October 1–5, 2012. Proceedings(Lecture Notes in Computer Science, Vol. 7504), George Eleftherakis, Mike Hinchey, and Mike Holcombe (Eds.). Springer, Berlin, 233–247.
[75]
Khanh-Huu-The Dam and Tayssir Touili. 2017. Learning Android malware. In 12th International Conference on Availability, Reliability and Security (ARES’17). ACM, New York, NY. DOI:
[76]
Khanh Huu The Dam and Tayssir Touili. 2018. Learning malware using generalized graph kernels. In 13th International Conference on Availability, Reliability and Security (ARES’18). ACM, New York, NY. DOI:
[77]
Anupam Datta, Jason Franklin, Deepak Garg, and Dilsun Kaynar. 2009. A logic of secure systems and its application to trusted computing. In IEEE Symposium on Security and Privacy. IEEE, 221–236. DOI:
[78]
Lucas Davi, Alexandra Dmitrienko, Ahmad-Reza Sadeghi, and Marcel Winandy. 2011. Privilege escalation attacks on Android. In Information Security, Mike Burmester, Gene Tsudik, Spyros Magliveras, and Ivana Ilić (Eds.). Springer Berlin, 346–360.
[79]
Jennifer A. Davis, Matthew Clark, Darren Cofer, Aaron Fifarek, Jacob Hinchman, Jonathan Hoffman, Brian Hulbert, Steven P. Miller, and Lucas Wagner. 2013. Study on the barriers to the industrial adoption of formal methods. In Formal Methods for Industrial Critical Systems, Charles Pecheur and Michael Dierkes (Eds.). Springer Berlin, 63–77.
[80]
Leonardo de Moura and Nikolaj Bjørner. 2008. Z3: An efficient SMT solver. In Tools and Algorithms for the Construction and Analysis of Systems, C. R. Ramakrishnan and Jakob Rehof (Eds.). Springer Berlin, 337–340.
[81]
Dorothy E. Denning and Giovanni Maria Sacco. 1981. Timestamps in key distribution protocols. Commun. ACM 24, 8 (Aug.1981), 533–536. DOI:
[82]
Michael Denzel, Mark Ryan, and Eike Ritter. 2017. A malware-tolerant, self-healing industrial control system framework. In ICT Systems Security and Privacy Protection, Sabrina De Capitani di Vimercati and Fabio Martinelli (Eds.). Springer International Publishing, Cham, 46–60.
[83]
Petr N. Devyanin, Alexey V. Khoroshilov, Victor V. Kuliamin, Alexander K. Petrenko, and Ilya V. Shchepetkov. 2014. Formal verification of OS security model with alloy and event-B. In Abstract State Machines, Alloy, B, TLA, VDM, and Z, Yamine Ait Ameur and Klaus-Dieter Schewe (Eds.). Springer Berlin, 309–313.
[84]
Dino Distefano, Manuel Fähndrich, Francesco Logozzo, and Peter W. O’Hearn. 2019. Scaling static analyses at Facebook. Commun. ACM 62, 8 (2019), 62–70.
[85]
Danny Dolev and Andrew Chi-Chih Yao. 1981. On the security of public key protocols (extended abstract). In 22nd Annual Symposium on Foundations of Computer Science. IEEE Computer Society, 350–357.
[86]
Jannik Dreier, Maxime Puys, Marie-Laure Potet, Pascal Lafourcade, and Jean-Louis Roch. 2017. Formally verifying flow properties in industrial systems. In SECRYPT 2017-14th International Conference on Security and Cryptography (Madrid, Spain) (Proceedings of the 14th International Joint Conference on e-Business and Telecommunications (ICETE 2017) - Volume 4: SECRYPT, Madrid, Spain, July 24–26, 2017.). SCITEPRESS Science And Technology Publications, Portugal, 55–66. DOI:
[87]
Zhangbo Duan, Hongliang Mao, Zhidong Chen, Xiaomin Bai, Kai Hu, and Jean-Pierre Talpin. 2018. Formal modeling and verification of blockchain system. In 10th International Conference on Computer Modeling and Simulation (ICCMS’18). Association for Computing Machinery, New York, NY, 231–235. DOI:
[88]
Andrea Enrici, Ludovic Apvrille, and Renaud Pacalet. 2014. TTool/DiplodocusDF: A UML Environment for Hardware/Software Co-Design of Data-Dominated Systems-on-Chip. DOI:
[89]
Levent Erkök and John Matthews. 2009. Pragmatic equivalence and safety checking in Cryptol. In 3rd Workshop on Programming Languages Meets Program Verification. ACM, New York, NY, 73–82.
[90]
Fabian Vogelsteller and Vitalik Buterin. 2020. ERC20 Token Standard. Retrieved from http://www.github.com/ethereum/EIPs/blob/master/EIPS/eip-20.md.
[91]
Adrienne Porter Felt, Erika Chin, Steve Hanna, Dawn Song, and David Wagner. 2011. Android permissions demystified. In 18th ACM Conference on Computer and Communications Security (CCS’11). ACM, New York, NY, 627–638. DOI:
[92]
Andrew Ferraiuolo, Yao Wang, Rui Xu, Danfeng Zhang, Andrew C. Myers, and G. Edward Suh. 2017. Full-processor Timing Channel Protection with Applications to Secure Hardware Compartments. Technical Report. Cornell University Library.
[93]
Andrew Ferraiuolo, Rui Xu, Danfeng Zhang, Andrew C. Myers, and G. Edward Suh. 2017. Verification of a practical hardware security architecture through static information flow analysis. SIGARCH Comput. Archit. News 45, 1 (Apr. 2017), 555–568. DOI:
[94]
D. Fett, P. Hosseyni, and R. Küsters. 2019. An extensive formal security analysis of the OpenID financial-grade API. In IEEE Symposium on Security and Privacy (SP). IEEE, 453–471. DOI:
[95]
Jean-Christophe Filliâtre and Claude Marché. 2007. The Why/Krakatoa/Caduceus platform for deductive program verification. In Computer Aided Verification, 19th International Conference, CAV 2007, Berlin, Germany, July 3–7, 2007, Proceedings(Lecture Notes in Computer Science, Vol. 4590), Werner Damm and Holger Hermanns (Eds.). Springer, Berlin, 173–177.
[96]
Kathleen Fisher, John Launchbury, and Raymond Richards. 2017. The HACMS program: Using formal methods to eliminate exploitable bugs. Philos. Trans. Roy. Societ. A: Math., Phys. Eng. Sci. 375, 2104 (2017), 20150401.
[97]
Mike Flynn, Tim Hoverd, and David Brazier. 1989. Formaliser — An interactive support tool for Z. In Proceedings of the Fourth Annual Z User Meeting, Oxford, UK, December 15, 1989 (Workshops in Computing), John E. Nicholls (Ed.). Springer, Berlin, 128–141. DOI:
[98]
Leo Freitas. 2018. VDM at large: Modelling the EMV® 2nd generation kernel. In Brazilian Symposium on Formal Methods. Springer, Berlin, 109–125.
[99]
Andrew Gacek, John Backes, Mike Whalen, Lucas G. Wagner, and Elaheh Ghassabani. 2017. The JKind Model Checker. Retrieved from
http://arxiv.org/abs/1712.01222.
[101]
R. Gandhi, A. Sharma, W. Mahoney, W. Sousan, Q. Zhu, and P. Laplante. 2011. Dimensions of cyber-attacks: Cultural, social, economic, and political. IEEE Technol. Societ. Mag. 30, 1 (Spring 2011), 28–38. DOI:
[102]
A. H. Ghamarian, M. J. de Mol, Arend Rensink, Eduardo Zambon, and M. V. Zimakova. 2010. Modelling and Analysis Using GROOVE. Number TR-CTIT-10-18 in CTIT Technical Report Series. Centre for Telematics and Information Technology (CTIT), Netherlands.
[103]
Thomas Gibson-Robinson. 2019.
FDR4: The CSP Refinement Checker. Oxford University Department of Computer Science. Retrieved from
www.cs.ox.ac.uk/projects/fdr/.
[104]
Mario Gleirscher and Diego Marmsoler. 2020. Formal methods in dependable systems engineering: A survey of professionals from Europe and North America. Empir. Softw. Eng. 25, 6 (2020), 4473–4546.
[105]
Shafi Goldwasser and Silvio Micali. 1984. Probabilistic encryption. J. Comput. Syst. Sci. 28, 2 (1984), 270–299.
[106]
Matt Griffin and Brijesh Dongol. 2021. Verifying secure speculation in Isabelle/HOL. In Formal Methods - 24th International Symposium, FM 2021, Virtual Event, November 20–26, 2021, Proceedings(Lecture Notes in Computer Science, Vol. 13047), Marieke Huisman, Corina S. Pasareanu, and Naijun Zhan (Eds.). Springer, 43–60. DOI:
[107]
Roberto Guanciale, Musard Balliu, and Mads Dam. 2020. InSpectre: Breaking and fixing microarchitectural vulnerabilities by formal analysis. In CCS’20: 2020 ACM SIGSAC Conference on Computer and Communications Security, Virtual Event, November 9–13, 2020, Jay Ligatti, Xinming Ou, Jonathan Katz, and Giovanni Vigna (Eds.). ACM, 1853–1869. DOI:
[108]
Roberto Guanciale, Hamed Nemati, Mads Dam, and Christoph Baumann. 2016. Provably secure memory isolation for Linux on ARM: Submission to special issue on verified information flow security. J. Comput. Secur. 24 (122016), 793–837. DOI:
[109]
Arjun Guha, Matthew Fredrikson, Benjamin Livshits, and Nikhil Swamy. 2011. Verified security for browser extensions. In IEEE Symposium on Security and Privacy. IEEE, 115–130.
[110]
X. Guo, R. G. Dutta, P. Mishra, and Y. Jin. 2016. Automatic RTL-to-formal code converter for IP security formal verification. In 17th International Workshop on Microprocessor and SOC Test and Verification (MTV). IEEE, 35–38. DOI:
[111]
X. Guo, R. G. Dutta, P. Mishra, and Y. Jin. 2016. Scalable SoC trust verification using integrated theorem proving and model checking. In IEEE International Symposium on Hardware Oriented Security and Trust (HOST). IEEE, 124–129. DOI:
[112]
X. Guo, R. G. Dutta, P. Mishra, and Y. Jin. 2017. Automatic code converter enhanced PCH framework for SoC trust verification. IEEE Trans. Very Large Scale Integ. (VLSI) Syst. 25, 12 (Dec.2017), 3390–3400. DOI:
[113]
J. Octavio Gutierrez-Garcia and Kwang Sim. 2010. Agent-based service composition in cloud computing. Commun. Comput. Inf. Sci. 121, 1–10. DOI:
[114]
Muluken Hailesellasie and Syed Rafay Hasan. 2018. Intrusion detection in PLC-based industrial control systems using formal verification approach in conjunction with graphs. J. Hardw. Syst. Secur. 2, 1 (01 Mar.2018), 1–14. DOI:
[115]
Anthony Hall. 2005. Realising the benefits of formal methods. In Formal Methods and Software Engineering, Kung-Kiu Lau and Richard Banach (Eds.). Springer, Berlin, 1–4.
[116]
Dick Hamlet. 2005. Invariants and state in testing and formal methods. SIGSOFT Softw. Eng. Notes 31, 1 (Sep.2005), 48–51. DOI:
[117]
Jianan Hao, Yang Liu, Wentong Cai, Guangdong Bai, and Jun Sun. 2013. vTRUST: A formal modeling and verification framework for virtualization systems. In Formal Methods and Software Engineering, Lindsay Groves and Jing Sun (Eds.). Springer, Berlin, 329–346.
[118]
Daniel Hartung and Christoph Busch. 2012. Biometric transaction authentication protocol: Formal model verification and “four-eyes” principle extension. In Financial Cryptography and Data Security, George Danezis, Sven Dietrich, and Kazue Sako (Eds.). Springer, Berlin, 88–103.
[119]
Dominik Harz and William Knottenbelt. 2018. Towards Safer Smart Contracts: A Survey of Languages and Verification Methods. arXiv:1809.09805v4. https://arxiv.org/abs/1809.09805.
[120]
J. Heneghan, S. A. Shaikh, J. Bryans, M. Cheah, and P. Wooderson. 2019. Enabling security checking of automotive ECUs with formal CSP models. In 49th Annual IEEE/IFIP International Conference on Dependable Systems and Networks Workshops (DSN-W). IEEE, 90–97. DOI:
[121]
E. Hildenbrandt, M. Saxena, N. Rodrigues, X. Zhu, P. Daian, D. Guth, B. Moore, D. Park, Y. Zhang, A. Stefanescu, and G. Rosu. 2018. KEVM: A complete formal semantics of the Ethereum virtual machine. In IEEE 31st Computer Security Foundations Symposium (CSF). IEEE, 204–217.
[122]
C. A. R. Hoare. 1978. Communicating sequential processes. Commun. ACM 21, 8 (Aug.1978), 666–677. DOI:
[123]
C. A. R. Hoare. 1985. Communicating Sequential Processes. Prentice-Hall, USA.
[124]
Bo-Yuan Huang, Sayak Ray, Aarti Gupta, Jason M. Fung, and Sharad Malik. 2018. Formal security verification of concurrent firmware in SoCs using instruction-level abstraction for hardware. In 55th Annual Design Automation Conference (DAC’18). ACM, New York, NY, 91:1–91:6. DOI:
[125]
John Hughes and Eve Maler. 2005. Security assertion markup language (SAML) v2. 0 technical overview. OASIS SSTC Working Draft sstc-saml-tech-overview-2.0-draft-08 13 (2005).
[126]
G. Iadarola, F. Martinelli, F. Mercaldo, and A. Santone. 2019. Formal methods for Android banking malware analysis and detection. In 6th International Conference on Internet of Things: Systems, Management and Security (IOTSMS). IEEE, 331–336.
[127]
Fahad Ibrar, Hamza Saleem, Sam Castle, and Muhammad Zubair Malik. 2017. A study of static analysis tools to detect vulnerabilities of branchless banking applications in developing countries. In 9th International Conference on Information and Communication Technologies and Development (ICTD’17). Association for Computing Machinery, New York, NY. DOI:
[128]
Daisuke Inoue and Masahiro Kuroda. 2006. Secure service framework on mobile ethernet. J. Nat. Inst. Inf. Commun. Technol. 53 (122006), 61–71.
[129]
ITSEC. 1991. Information Technology Security Evaluation Criteria (ITSEC): Preliminary Harmonised Criteria. Document COM(90) 314, Version 1.2. Commission of the European Communities.
[130]
Daniel Jackson. 2000. Automating first-order relational logic. ACM SIGSOFT Symp. Found. Softw. Eng. 25 (092000). DOI:
[131]
Daniel Jackson. 2012. Software Abstractions: Logic, Language, and Analysis. The MIT Press, Cambridge, MA.
[132]
Daniel Jackson and Jeanette Wing. 1996. Lightweight formal methods. IEEE Comput. 29, 4 (Apr.1996), 22–23.
[133]
Dongseok Jang, Zachary Tatlock, and Sorin Lerner. 2012. Establishing browser security guarantees through formal shim verification. In 21st USENIX Conference on Security Symposium (Security’12). USENIX Association, USA.
[135]
Y. Jarraya, A. Eghtesadi, M. Debbabi, Y. Zhang, and M. Pourzandi. 2012. Cloud calculus: Security verification in elastic cloud computing platform. In International Conference on Collaboration Technologies and Systems (CTS). IEEE, 447–454. DOI:
[136]
Karthick Jayaraman, Nikolaj Bjørner, Geoff Outhred, and Charlie Kaufman. 2014. Automated Analysis and Debugging of Network Connectivity Policies. Technical Report.Tech. Rep. MSR-TR-2014-102. MSR, Seattle, WA.
[137]
Kurt Jensen, Lars Michael Kristensen, and Lisa Marie Wells. 2007. Coloured Petri nets and CPN tools for modelling and validation of concurrent systems. Int. J. Softw. Tools Technol. Transf. 9, 3/4 (2007), 213–254. DOI:
[138]
Kurt Jensen and Lars M. Kristensen. 2009. Coloured Petri Nets: Modelling and Validation of Concurrent Systems (1st ed.). Springer Publishing Company, Incorporated, Berlin.
[139]
Richard Jüllig. 2002. Formal methods in enterprise computing. In Formal Methods and Software Engineering, Chris George and Huaikou Miao (Eds.). Springer, Berlin, 22–23.
[140]
Corey Kallenberg, Sam Cornwell, Xeno Kovah, and John Butterworth. 2014. Setup for failure: Defeating secure boot. The MITRE Corporation. Retrieved https://infocon.org/cons/SyScan/SyScan%202014%20Singapore/SyScan%202014%20presentations/SyScan2014_CoreyKallenberg_SetupforFailureDefeatingSecureBoot_WP.pdf.
[141]
Sheetal Kalra and Sandeep K. Sood. 2015. Secure authentication scheme for IoT and cloud servers. Pervas. Mob. Comput. 24 (2015), 210–223. Retrieved from http://www.sciencedirect.com/science/article/pii/S1574119215001510.
[142]
Michael Kenney. 2015. Cyber-terrorism in a post-Stuxnet world. Orbis 59 (122015). DOI:
[143]
H. Khurana, M. Hadley, N. Lu, and D. A. Frincke. 2010. Smart-grid security issues. IEEE Secur. Priv. 8, 1 (Jan.2010), 81–85. DOI:
[144]
Gerwin Klein, June Andronick, Kevin Elphinstone, Gernot Heiser, David Cock, Philip Derrin, Dhammika Elkaduwe, Kai Engelhardt, Rafal Kolanski, Michael Norrish, Thomas Sewell, Harvey Tuch, and Simon Winwood. 2010. seL4: Formal verification of an operating-system kernel. Commun. ACM 53, 6 (2010), 107–115.
[145]
P. Kocher, J. Horn, A. Fogh, D. Genkin, D. Gruss, W. Haas, M. Hamburg, M. Lipp, S. Mangard, T. Prescher, M. Schwarz, and Y. Yarom. 2019. Spectre attacks: Exploiting speculative execution. In IEEE Symposium on Security and Privacy (SP). IEEE, 1–19.
[146]
S. Kottler, M. Khayamy, S. R. Hasan, and O. Elkeelany. 2017. Formal verification of ladder logic programs using NuSMV. In SoutheastCon. IEEE, 1–5. DOI:
[147]
Simon Kramer and Julian C. Bradfield. 2010. A general definition of malware. J. Comput. Virol. 6, 2 (2010), 105–114.
[148]
Siwar Kriaa, Ludovic Pietre-Cambacedes, Marc Bouissou, and Yoran Halgand. 2015. A survey of approaches combining safety and security for industrial control systems. Reliab. Eng. Syst. Safety 139 (2015), 156–178. Retrieved from http://www.sciencedirect.com/science/article/pii/S0951832015000538.
[149]
Tomas Kulik, Brijesh Dongol, Peter Gorm Larsen, Hugo Daniel Macedo, Steve Schneider, Peter Würtz Vinther Tran-Jørgensen, and Jim Woodcock. 2021. A Survey of Practical Formal Methods for Security.
arxiv:2109.01362 [cs.FL].
[150]
Tomas Kulik, Peter W. V. Tran-Jørgensen, and Jalil Boudjadar. 2019. Formal security analysis of cloud-connected industrial control systems. In Innovative Security Solutions for Information Technology and Communications, Jean-Louis Lanet and Cristian Toma (Eds.). Springer International Publishing, Cham, 71–84.
[151]
Apurva Kumar. 2014. A lightweight formal approach for analyzing security of web protocols. In International Workshop on Recent Advances in Intrusion Detection. Springer, 192–211.
[152]
N. Kumar, V. Kumar, and M. Gaur. 2019. Banking trojans APK detection using formal methods. In 4th International Conference on Information Systems and Computer Networks (ISCON). IEEE, 606–609.
[153]
P. Kumar, A. Braeken, A. Gurtov, J. Iinatti, and P. H. Ha. 2017. Anonymous secure framework in connected smart home environments. IEEE Trans. Inf. Forens. Secur. 12, 4 (Apr.2017), 968–979. DOI:
[154]
Robert Künnemann and Graham Steel. 2013. YubiSecure? Formal security analysis results for the Yubikey and YubiHSM. In Security and Trust Management, Audun Jøsang, Pierangela Samarati, and Marinella Petrocchi (Eds.). Springer Berlin, 257–272.
[155]
Stefan Kupferschmid, Matthew Lewis, Tobias Schubert, and Bernd Becker. 2011. Incremental preprocessing methods for use in BMC. Form. Meth. Syst. Des. 39, 2 (2011), 185–204.
[156]
M. Kwiatkowska, G. Norman, and D. Parker. 2011. PRISM 4.0: Verification of probabilistic real-time systems. In Proc. 23rd International Conference on Computer Aided Verification (CAV’11) (LNCS, Vol. 6806), G. Gopalakrishnan and S. Qadeer (Eds.). Springer, 585–591.
[157]
Akash Lal, Shaz Qadeer, and Shuvendu K. Lahiri. 2012. A solver for reachability modulo theories. In Computer Aided Verification - 24th International Conference, CAV 2012, Berkeley, CA, July 7–13, 2012 Proceedings(Lecture Notes in Computer Science, Vol. 7358), P. Madhusudan and Sanjit A. Seshia (Eds.). Springer, Berlin, 427–443.
[158]
Leslie Lamport. 2002. Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers. Addison-Wesley Longman Publishing Co., Inc., Boston, MA.
[159]
Kim G. Larsen, Paul Pettersson, and Wang Yi. 1997. Uppaal in a nutshell. Int. J. Softw. Tools Technol. Transfer 1, 1 (01 Dec.1997), 134–152. DOI:
[160]
P. G. Larsen, B. S. Hansen, H. Brunn, N. Plat, H. Toetenel, D. J. Andrews, J. Dawes, G. Parkin, et al. 1996. Information Technology – Programming Languages, Their Environments and System Software Interfaces – Vienna Development Method – Specification Language – Part 1: Base language. ISO/IEC 13817-1:1996.
[161]
Peter Gorm Larsen, Kenneth Lausdahl, and Nick Battle. 2010. Combinatorial testing for VDM. In 8th IEEE International Conference on Software Engineering and Formal Methods (SEFM’10). IEEE Computer Society, Washington, DC, 278–285. DOI:. ISBN 978-0-7695-4153-2.
[162]
Lee W. Lerner, Zane R. Franklin, William T. Baumann, and Cameron D. Patterson. 2014. Using high-level synthesis and formal analysis to predict and preempt attacks on industrial control systems. In ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA’14). Association for Computing Machinery, New York, NY, 209–212. DOI:
[163]
Thomas Letan, Pierre Chifflier, Guillaume Hiet, Pierre Neron, and Benjamin Morin. 2016. SpecCert: Specifying and verifying hardware-based security enforcement. In Proceedings of the FM 2016: Formal Methods, John Fitzgerald, Constance Heitmeyer, Stefania Gnesi, and Anna Philippou (Eds.). 496–512.
[164]
E. Love, Y. Jin, and Y. Makris. 2011. Enhancing security via provably trustworthy hardware intellectual property. In IEEE International Symposium on Hardware-oriented Security and Trust. IEEE, 12–17. DOI:
[165]
Gavin Lowe. 1995. An attack on the Needham-Schroeder public-key authentication protocol. Inf. Process. Lett. 56, 3 (1995), 131–133.
[166]
Hugo Daniel Macedo and José Nuno Oliveira. 2015. A linear algebra approach to OLAP. Form. Asp. Comput. 27, 2 (2015), 283–307.
[167]
Hugo Daniel Macedo and Tayssir Touili. 2013. Mining malware specifications through static reachability analysis. In European Symposium on Research in Computer Security. Springer Berlin, 517–535.
[168]
N. E. Madhoun, F. Guenane, and G. Pujolle. 2016. An online security protocol for NFC payment: Formally analyzed by the Scyther tool. In 2nd International Conference on Mobile and Secure Services (MobiSecServ). IEEE, 1–7.
[169]
Taous Madi, Yosr Jarraya, Amir Alimohammadifar, Suryadipta Majumdar, Yushun Wang, Makan Pourzandi, Lingyu Wang, and Mourad Debbabi. 2018. ISOTOP: Auditing virtual networks isolation across cloud layers in OpenStack. ACM Trans. Priv. Secur. 22, 1 (Oct.2018). DOI:
[170]
Haohui Mai, Edgar Pek, Hui Xue, Samuel Talmadge King, and Parthasarathy Madhusudan. 2013. Verifying security invariants in ExpressOS. In 18th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS’13). Association for Computing Machinery, New York, NY, 293–304. DOI:
[171]
Antonio Marcedone, Rafael Pass, and Abhi Shelat. 2019. Minimizing trust in hardware wallets with two factor signatures. In Financial Cryptography and Data Security, Ian Goldberg and Tyler Moore (Eds.). Springer International Publishing, Cham, 407–425.
[172]
Fabio Martinelli, Francesco Mercaldo, and Vittoria Nardone. 2018. Identifying insecure features in android applications using model checking. In Proceedings of the 4th International Conference on Information Systems Security and Privacy, ICISSP 2018, Funchal, Madeira - Portugal, January 22–24, 2018, Paolo Mori, Steven Furnell, and Olivier Camp (Eds.). SciTePress, 589–596.
[173]
Fatma Masmoudi, Monia Loulou, and Ahmed Hadj Kacem. 2014. Formal security framework for agent based cloud systems. In International Workshop on Advanced Information Systems for Enterprises. DOI:
[174]
Jackson R. Mayo, Robert C. Armstrong, and Geoffrey C. Hulette. 2015. Digital system robustness via design constraints: The lesson of formal methods. In Annual IEEE Systems Conference (SysCon). IEEE, 109–114.
[175]
Maryam Mehrnezhad, Mohammed Aamir Ali, Feng Hao, and Aad van Moorsel. 2016. NFC payment spy: A privacy attack on contactless payments. In Security Standardisation Research, Lidong Chen, David McGrew, and Chris Mitchell (Eds.). Springer International Publishing, Cham, 92–111.
[176]
Simon Meier, Benedikt Schmidt, Cas Cremers, and David Basin. 2013. The TAMARIN prover for the symbolic analysis of security protocols. In Computer Aided Verification: 25th International Conference, CAV 2013, Saint Petersburg, Russia, July 13–19, 2013, Proceedings(Lecture Notes in Computer Science, Vol. 8044), Natasha Sharygina and Helmut Veith (Eds.). Springer, Berlin, 696–701. DOI:
[177]
F. Mercaldo, F. Martinelli, and A. Santone. 2019. Real-time SCADA attack detection by means of formal methods. In IEEE 28th International Conference on Enabling Technologies: Infrastructure for Collaborative Enterprises (WETICE). IEEE, 231–236. DOI:
[178]
Francesco Mercaldo, Vittoria Nardone, Antonella Santone, and Corrado Aaron Visaggio. 2016. Download malware? No, thanks: How formal methods can block update attacks. In 4th FME Workshop on Formal Methods in Software Engineering (FormaliSE’16). ACM, New York, NY. DOI:
[179]
José Meseguer. 2000. Rewriting logic and Maude: A wide-spectrum semantic framework for object-based distributed systems. In Formal Methods for Open Object-based Distributed Systems IV, Scott F. Smith and Carolyn L. Talcott (Eds.). Springer US, Boston, MA, 89–117.
[180]
Andrew Miller, Zhicheng Cai, and Somesh Jha. 2018. Smart contracts and opportunities for formal methods. In Leveraging Applications of Formal Methods, Verification and Validation. Industrial Practice, Tiziana Margaria and Bernhard Steffen (Eds.). Springer International Publishing, Cham, 280–299.
[181]
R. Milner. 1989. Communication and Concurrency. Prentice-Hall, Inc., USA.
[182]
M. Mohsin, M. U. Sardar, O. Hasan, and Z. Anwar. 2017. IoTRiskAnalyzer: A probabilistic model checking based framework for formal risk analytics of the Internet of Things. IEEE Access 5 (2017), 5494–5505. DOI:
[183]
R. Moreno-Vozmediano, R. S. Montero, and I. M. Llorente. 2012. IaaS cloud architecture: From virtualized datacenters to federated cloud infrastructures. Computer 45, 12 (2012), 65–72.
[184]
Greg Morrisett, Gang Tan, Joseph Tassarotti, Jean-Baptiste Tristan, and Edward Gan. 2012. RockSalt: Better, faster, stronger SFI for the X86. In 33rd ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI’12). Association for Computing Machinery, New York, NY, 395–404. DOI:
[185]
Sascha Mühlbach and Sebastian Wallner. 2008. Secure communication in microcomputer bus systems for embedded devices. J. Syst. Archit. 54, 11 (2008), 1065–1076. Retrieved from http://www.sciencedirect.com/science/article/pii/S1383762108000611.
[186]
Roberto Nardone, Ugo Gentile, Adriano Peron, Massimo Benerecetti, Valeria Vittorini, Stefano Marrone, Renato De Guglielmo, Nicola Mazzocca, and Luigi Velardi. 2015. Dynamic state machines for formalizing railway control system specifications. In Formal Techniques for Safety-critical Systems, Cyrille Artho and Peter Csaba Ölveczky (Eds.). Springer International Publishing, Cham, 93–109.
[187]
R. Nardone, R. J. Rodríguez, and S. Marrone. 2016. Formal security assessment of Modbus protocol. In 11th International Conference for Internet Technology and Secured Transactions (ICITST). IEEE, 142–147. DOI:
[188]
Zainalabedin Navabi. 1993. VHDL: Analysis and Modeling of Digital Systems, Vol. 2. McGraw-Hill New York.
[189]
George C. Necula. 2011. Proof-carrying code. In Encyclopedia of Cryptography and Security, 2nd ed., Henk C. A. van Tilborg and Sushil Jajodia (Eds.). Springer, Berlin, 984–986.
[190]
Roger M. Needham and Michael D. Schroeder. 1978. Using encryption for authentication in large networks of computers. Commun. ACM 21, 12 (1978), 993–999.
[191]
Matias Negrete-Pincetic, Felipe Yoshida, and George Gross. 2009. Towards quantifying the impacts of cyber attacks in the competitive electricity market environment. In IEEE Bucharest PowerTech Conference. IEEE, 1–8. DOI:
[192]
B. Ngabonziza, D. Martin, A. Bailey, H. Cho, and S. Martin. 2016. TrustZone explained: Architectural features and use cases. In IEEE 2nd International Conference on Collaboration and Internet Computing (CIC). IEEE, 445–451. DOI:
[193]
V. Nigam and C. Talcott. 2019. Formal security verification of industry 4.0 applications. In 24th IEEE International Conference on Emerging Technologies and Factory Automation (ETFA). IEEE, 1043–1050. DOI:
[194]
Tobias Nipkow and Gerwin Klein. 2014. Concrete Semantics — with Isabelle/HOL. Springer, Berlin.
[195]
P. J. C. Nunes, J. Fonseca, and M. Vieira. 2015. phpSAFE: A security analysis tool for OOP web application plugins. In 45th Annual IEEE/IFIP International Conference on Dependable Systems and Networks. IEEE, 299–306. DOI:
[196]
Peter W. O’Hearn. 2018. Continuous reasoning: Scaling the impact of formal methods. In 33rd Annual ACM/IEEE Symposium on Logic in Computer Science (LICS’18). Association for Computing Machinery, New York, NY, 13–25. DOI:
[197]
Iqra Obaid, Syed Kazmi, and Awais Qasim. 2017. Modeling and verification of payment system in E-banking. Int. J. Adv. Comput. Sci. Applic. 8 (01 2017). DOI:
[198]
Daejun Park, Yi Zhang, Manasvi Saxena, Philip Daian, and Grigore Roşu. 2018. A formal verification tool for Ethereum VM bytecode. In 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE’18). Association for Computing Machinery, New York, NY, 912–915. DOI:
[199]
Daejun Park, Yi Zhang, Manasvi Saxena, Philip Daian, and Grigore Roşu. 2018. A formal verification tool for ethereum VM bytecode. In 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE 2018). Association for Computing Machinery, New York, NY, 912–915. DOI:
[200]
Jianhua Peng, Feng Liu, Zhenju Zhao, Danqing Huang, and Rui Xue. 2010. ASM-SPV: A model checker for security protocols. In 6th International Conference on Intelligent Information Hiding and Multimedia Signal Processing. 458–461. DOI:
[201]
Uta Priss. 2006. Formal concept analysis in information science. Ann. Rev. Inf. Sci. Technol. 40 (01 2006). DOI:
[202]
Martin L. Puterman. 1994. Markov Decision Processes: Discrete Stochastic Dynamic Programming (1st ed.). John Wiley & Sons, Inc., USA.
[203]
Maxime Puys, Marie-Laure Potet, and Pascal Lafourcade. 2016. Formal analysis of security properties on the OPC-UA SCADA protocol. In Computer Safety, Reliability, and Security, Amund Skavhaug, Jérémie Guiochet, and Friedemann Bitsch (Eds.). Springer International Publishing, Cham, 67–75.
[204]
Davide Quarta, Marcello Pogliani, Mario Polino, Federico Maggi, Andrea Maria Zanchettin, and Stefano Zanero. 2017. An experimental security analysis of an industrial robot controller. In IEEE Symposium on Security and Privacy (SP). IEEE, 268–286. DOI:
[206]
Zvonimir Rakamaric and Michael Emmi. 2014. SMACK: Decoupling source language details from verifier implementations. In Computer Aided Verification - 26th International Conference, CAV 2014, Held as Part of the Vienna Summer of Logic, VSL 2014, Vienna, Austria, July 18–22, 2014. Proceedings(Lecture Notes in Computer Science, Vol. 8559), Armin Biere and Roderick Bloem (Eds.). Springer, Berlin, 106–113.
[207]
R. Rana, M. Staron, C. Berger, A. Nilsson, R. Scandariato, A. Weilenmann, and M. Rydmark. 2015. On the role of cross-disciplinary research and SSE in addressing the challenges of the digitalization of society. In 6th IEEE International Conference on Software Engineering and Service Science (ICSESS). IEEE, 1106–1109. DOI:
[208]
Awais Rashid, Howard Chivers, Emil Lupu, Andrew Martin, and Steve Schneider (Eds.). 2021. The Cyber Security Body of Knowledge v1.1. University of Bristol. Retrieved from www.cybok.org.
[209]
R. Rieke, M. Zhdanova, J. Repp, R. Giot, and C. Gaber. 2013. Fraud detection in Mobile payments utilizing process behavior analysis. In International Conference on Availability, Reliability and Security. IEEE, 662–669.
[210]
Marco Rocchetto and Nils Ole Tippenhauer. 2016. CPDY: Extending the Dolev-Yao Attacker with Physical-Layer Interactions. Retrieved from http://arxiv.org/abs/1607.02562.
[211]
Marco Rocchetto and Nils Ole Tippenhauer. 2017. Towards formal security analysis of industrial control systems. In ACM on Asia Conference on Computer and Communications Security (ASIA CCS’17). ACM, New York, NY, 114–126. DOI:
[212]
S. Roy, S. Chatterjee, A. K. Das, S. Chattopadhyay, N. Kumar, and A. V. Vasilakos. 2017. On the design of provably secure lightweight remote user authentication scheme for mobile cloud computing services. IEEE Access 5 (2017), 25808–25825. DOI:
[213]
Peter Y. A. Ryan, Steve Schneider, Michael Goldsmith, Gavin Lowe, and Bill Roscoe. 2001. Modelling and Analysis of Security Protocols. Addison-Wesley-Longman, USA.
[214]
O. Rysavy, J. Rab, and M. Sveda. 2013. Improving security in SCADA systems through firewall policy analysis. In Federated Conference on Computer Science and Information Systems. IEEE, 1435–1440.
[215]
Caitlin Sadowski, Edward Aftandilian, Alex Eagle, Liam Miller-Cushon, and Ciera Jaspan. 2018. Lessons from building static analysis tools at Google. Commun. ACM 61, 4 (Mar. 2018), 58–66. DOI:
[216]
Antonella Santone, Valentina Intilangelo, and Domenico Raucci. 2013. Efficient formal verification in banking processes. In IEEE 9th World Congress on Services. IEEE, 325–332.
[217]
N. Santos, Krishna P. Gummadi, and Rodrigo Rodrigues. 2009. Towards trusted cloud computing. In Conference on Hot Topics in Cloud Computing. USENIX Association.
[218]
Ralf Sasse, Samuel T. King, José Meseguer, and Shuo Tang. 2012. IBOS: A correct-by-construction modular browser. In International Workshop on Formal Aspects of Component Software. Springer, Berlin, 224–241.
[219]
Jinho Seol, Seongwook Jin, Daewoo Lee, Jaehyuk Huh, and Seungryoul Maeng. 2015. A trusted IaaS environment with hardware security module. IEEE Trans. Serv. Comput. 9 (01 2015), 1–1. DOI:
[220]
J. Sepulveda, D. Aboul-Hassan, G. Sigl, B. Becker, and M. Sauer. 2018. Towards the formal verification of security properties of a Network-on-Chip router. In IEEE 23rd European Test Symposium (ETS). IEEE, 1–6. DOI:
[221]
Rida Shaukat, Arooba Shahoor, and Aniqa Urooj. 2018. Probing into code analysis tools: A comparison of C# supporting static code analyzers. In 15th International Bhurban Conference on Applied Sciences and Technology (IBCAST). 455–464. DOI:
[222]
Yuchao She, Hui Li, and Hui Zhu. 2013. UVHM: Model checking based formal analysis scheme for hypervisors. In Information and Communication Technology, Khabib Mustofa, Erich J. Neuhold, A. Min Tjoa, Edgar Weippl, and Ilsun You (Eds.). Springer, Berlin, 300–305.
[223]
Roshan Shrestha, Hoda Mehrpouyan, and Dianxiang Xu. 2018. Model checking of security properties in industrial control systems (ICS). In 8th ACM Conference on Data and Application Security and Privacy (CODASPY’18). Association for Computing Machinery, New York, NY, 164–166. DOI:
[224]
Irfan Siddavatam, Sachin Parekh, Tanay Shah, and Faruk Kazi. 2017. Testing and validation of Modbus/TCP protocol for secure SCADA communication in CPS using formal methods. Scalable Comput.: Pract. Exper. 18 (112017). DOI:
[225]
Julien Signoles, Pascal Cuoq, Florent Kirchner, Nikolai Kosmatov, Virgile Prevosto, and Boris Yakobowski. 2012. Frama-C: A software analysis perspective. Form. Asp. Comput. 27 (102012). DOI:
[226]
R. Skowyra, A. Lapets, A. Bestavros, and A. Kfoury. 2014. A verification platform for SDN-enabled applications. In IEEE International Conference on Cloud Engineering. IEEE, 337–342. DOI:
[227]
Eric Smith and Alessandro Coglio. 2016. Android platform modeling and Android app verification in the ACL2 theorem prover. In Verified Software: Theories, Tools, and Experiments, Arie Gurfinkel and Sanjit A. Seshia (Eds.). Springer International Publishing, Cham, 183–201.
[228]
E. Snekkenes. 1991. Exploring the BAN approach to protocol analysis. In IEEE Computer Society Symposium on Research in Security and Privacy. IEEE, 171–181. DOI:
[229]
Fu Song and Tayssir Touili. 2012. Efficient malware detection using model-checking. In International Symposium on Formal Methods. Springer, Berlin, 418–433.
[230]
Fu Song and Tayssir Touili. 2014. Model-checking for Android malware detection. In Programming Languages and Systems, Jacques Garrigue (Ed.). Springer International Publishing, Cham, 216–235.
[231]
Fu Song and Tayssir Touili. 2014. Pushdown model checking for malware detection. Int. J. Softw. Tools Technol. Transfer 16, 2 (2014), 147–173.
[232]
S. Souaf, P. Berthome, and F. Loulergue. 2018. A cloud brokerage solution: Formal methods meet security in cloud federations. In International Conference on High Performance Computing Simulation (HPCS). 691–699. DOI:
[233]
J. M. Spivey. 1989. The Z Notation: A Reference Manual. Prentice-Hall, USA.
[234]
Andrei Stefanescu, Daejun Park, Shijiao Yuwen, Yilong Li, and Grigore Roşu. 2016. Semantics-based program verifiers for all languages. In ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA’16). Association for Computing Machinery, New York, NY, 74–91. DOI:
[235]
Susan Stepney, David Cooper, and Jim Woodcock. 2000. An Electronic Purse: Specification, Refinement, and Proof. Technical Monograph PRG-126. Oxford University Computing Laboratory.
[236]
C. Steward Jr., L. A. Wahsheh, A. Ahmad, J. M. Graham, C. V. Hinds, A. T. Williams, and S. J. DeLoatch. 2012. Software security: The dangerous afterthought. In 9th International Conference on Information Technology - New Generations. IEEE, 815–818. DOI:
[237]
Jun Sun, Yang Liu, and Jin Song Dong. 2008. Model checking CSP revisited: Introducing a process analysis toolkit. In Leveraging Applications of Formal Methods, Verification and Validation, Tiziana Margaria and Bernhard Steffen (Eds.). Springer Berlin, 307–322.
[238]
J. Sun, Y. Liu, J. S. Dong, and C. Chen. 2009. Integrating specification and programs for system modeling and verification. In 3rd IEEE International Symposium on Theoretical Aspects of Software Engineering. IEEE, 127–135.
[239]
Farid Molazem Tabrizi and Karthik Pattabiraman. 2016. Formal security analysis of smart embedded systems. In 32nd Annual Conference on Computer Security Applications (ACSAC’16). Association for Computing Machinery, New York, NY, 1–15. DOI:
[240]
Naoyuki Tamura, Tomoya Tanjo, and Mutsunori Banbara. 2008. System Description of a SAT-based CSP Solver Sugar., 71–75 pages. Retrieved https://tamura70.gitlab.io/papers/pdf/cpai08t.pdf.
[241]
Vincent F. Taylor and Ivan Martinovic. 2017. Short paper: A longitudinal study of financial apps in the Google Play store. In Financial Cryptography and Data Security, Aggelos Kiayias (Ed.). Springer International Publishing, Cham, 302–309.
[242]
The Coq Development Team. 2019. The Coq Reference Manual. LogiCal Project. Retrieved from http://coq.inria.fr. Version 8.9.1.
[243]
Donald Thomas and Philip Moorby. 2008. The Verilog® Hardware Description Language. Springer Science & Business Media.
[244]
Emina Torlak and Daniel Jackson. 2007. Kodkod: A relational model finder. In Tools and Algorithms for the Construction and Analysis of Systems, Orna Grumberg and Michael Huth (Eds.). Springer Berlin, 632–647.
[245]
Peter Würtz Vinther Tran-Jørgensen and Tomas Kulik. 2019. Migrating overture to a different IDE. In 17th Overture Workshop (Technical Report Series, CS-TR- 1530-2019), Carl Gamble and Luis Diogo Couto (Eds.). Newcastle University, UK, 32–47.
[246]
Peter W. V. Tran-Jørgensen, Tomas Kulik, Jalil Boudjadar, and Peter Gorm Larsen. 2019. Security analysis of cloud-connected industrial control systems using combinatorial testing. In 17th ACM-IEEE International Conference on Formal Methods and Models for System Design (MEMOCODE’19). Association for Computing Machinery, New York, NY. DOI:
[247]
K. Tsukada, K. Sawada, and S. Shin. 2016. A toolchain on model checking SPIN via Kalman Decomposition for control system software. In IEEE International Conference on Automation Science and Engineering (CASE). IEEE, 300–305. DOI:
[248]
Mathieu Turuani. 2006. The CL-Atse protocol analyser. In Term Rewriting and Applications, Frank Pfenning (Ed.). Springer, Berlin, 277–286.
[249]
Mathieu Turuani, Thomas Voegtlin, and Michael Rusinowitch. 2016. Automated verification of Electrum wallet. In International Conference on Financial Cryptography and Data Security. Springer, Berlin, 27–42.
[250]
Nils Urbach and Frederik Ahlemann. 2019. Digitalization as a Risk: Security and Business Continuity Management Are Central Cross-Divisional Functions of the Company. Springer International Publishing, Cham, 85–92. DOI:
[251]
A. Vasudevan, S. Chaki, L. Jia, J. McCune, J. Newsome, and A. Datta. 2013. Design, implementation and verification of an eXtensible and modular hypervisor framework. In IEEE Symposium on Security and Privacy. IEEE, 430–444. DOI:
[252]
Amit Vasudevan, Sagar Chaki, Petros Maniatis, Limin Jia, and Anupam Datta. 2016. überSpark: Enforcing verifiable object abstractions for automated compositional security analysis of a hypervisor. In 25th USENIX Security Symposium (USENIX Security’16). USENIX Association, 87–104. Retrieved from www.usenix.org/conference/usenixsecurity16/technical-sessions/presentation/vasudevan.
[253]
David von Oheimb and Sebastian Mödersheim. 2012. ASLan++ — A formal security specification language for distributed systems. In Formal Methods for Components and Objects, Bernhard K. Aichernig, Frank S. de Boer, and Marcello M. Bonsangue (Eds.). Springer, Berlin, 1–22.
[254]
R. Wang, Y. Guan, H. Song, X. Li, X. Li, Z. Shi, and X. Song. 2019. A formal model-based design method for robotic systems. IEEE Syst. J. 13, 1 (Mar.2019), 1096–1107. DOI:
[255]
T. Wang, Q. Su, and T. Chen. 2017. Formal analysis of security properties of cyber-physical system based on timed automata. In IEEE 2nd International Conference on Data Science in Cyberspace (DSC). 534–540. DOI:
[256]
W. Wang, Q. Zeng, and A. P. Mathur. 2012. A security assurance framework combining formal verification and security functional testing. In 12th International Conference on Quality Software. 136–139. DOI:
[257]
Dean C. Wardell, Robert F. Mills, Gilbert L. Peterson, and Mark E. Oxley. 2016. A method for revealing and addressing security vulnerabilities in cyber-physical systems by modeling malicious agent interactions with formal verification. Procedia Comput. Sci. 95 (2016), 24–31. Retrieved from http://www.sciencedirect.com/science/article/pii/S1877050916324619.
[258]
Sharon Weinberger. 2011. Computer security: Is this the start of cyberwarfare? Nature 474 (062011), 142–5. DOI:
[259]
Tobias Wich, Daniel Nemmert, and Detlef Hühnlein. 2017. Towards secure and standard-compliant implementations of the PSD2 directive. In
Open Identity Summit 2017, October 5–6, 2017, Karlstad University, Sweden (LNI, Vol. P-277), Lothar Fritsch, Heiko Roßnagel, and Detlef Hühnlein (Eds.). Gesellschaft für Informatik, Bonn, DE, 63–80. Retrieved from
http://www.dl.gi.de/20.500.12116/3581.
[260]
M. Williams, L. Axon, J. R. C. Nurse, and S. Creese. 2016. Future scenarios and challenges for security and privacy. In IEEE 2nd International Forum on Research and Technologies for Society and Industry Leveraging a Better Tomorrow (RTSI). IEEE, 1–6. DOI:
[261]
J. M. Wing. 1990. A specifier’s introduction to formal methods. Computer 23, 9 (Sep. 1990), 8–22. DOI:
[262]
Jeannette M. Wing. 1998. A symbiotic relationship between formal methods and security. In Proceedings Computer Security, Dependability, and Assurance: From Needs to Solutions (Cat. No. 98EX358). IEEE, 26–38.
[263]
Jim Woodcock and Jim Davies. 1996. Using Z: Specification, Refinement, and Proof. Prentice-Hall, USA.
[264]
Jim Woodcock, Peter Gorm Larsen, Juan Bicarregui, and John Fitzgerald. 2009. Formal methods: Practice and experience. ACM Comput. Surv. 41, 4 (Oct. 2009). DOI:
[265]
Jim Woodcock, Susan Stepney, David Cooper, John Clark, and Jeremy Jacob. 2008. The certification of the Mondex electronic purse to ITSEC Level E6. Formal Asp. Comput. 20, 1 (2008), 5–19.
[266]
Meihua Xiao, Zilong Wan, and Hongling Liu. 2014. The formal verification and improvement of simplified SET protocol. J. Softw. 9 (09 2014). DOI:
[268]
J. Yoo, Y. Jung, D. Shin, M. Bae, and E. Jee. 2019. Formal modeling and verification of a federated byzantine agreement algorithm for blockchain platforms. In IEEE International Workshop on Blockchain Oriented Software Engineering (IWBOSE). IEEE, 11–21.
[269]
Yu Zheng, D. He, Xiaohu Tang, and Hongxia Wang. 2005. AKA and authorization scheme for 4G Mobile networks based on trusted mobile platform. In 5th International Conference on Information Communications Signal Processing. 976–980. DOI:
[270]
Wen Zeng, Maciej Koutny, Paul Watson, and Vasileios Germanos. 2016. Formal verification of secure information flow in cloud computing. J. Inf. Secur. Applic. 27 (2016), 103–116.
[271]
Danfeng Zhang, Yao Wang, G. Edward Suh, and Andrew C. Myers. 2015. A hardware design language for timing-sensitive information-flow security. In 20th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS’15). Association for Computing Machinery, New York, NY, 503–516. DOI:
[272]
Wei Zhang, Wenke Ma, Huiling Shi, and Fu-qiang Zhu. 2012. Model checking and verification of the internet payment system with SPIN. JSW 7, 9 (2012), 1941–1949.
[273]
S. Zonouz, J. Rrushi, and S. McLaughlin. 2014. Detecting industrial control malware using automated PLC code analytics. IEEE Secur. Priv. 12, 6 (Nov.2014), 40–47. DOI: