首页 > 最新文献

Formal Aspects of Computing最新文献

英文 中文
Introduction to the Special Section on FM 2021 FM 2021特别部分介绍
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-06-23 DOI: 10.1145/3604594
M. Huisman, C. Pasareanu, N. Zhan
Formal methods have been used in a wide range of domains, including software, cyber-physical systems, and integrated computer-based systems. In recent years, we have seen in particular the application of formal methods in a wide range of areas, such as systems-of-systems, security, artificial intelligence, human-computer interaction, manufacturing, sustainability, power, transport, smart cities, healthcare, and biology. Formal methods also get used more and more in industry. All of these developments are supported by the design and validation of various formal method tools. Formal Methods 2021 (FM 2021) solicited high-quality papers reporting novel research results, as well as tool papers and case study reports. To establish the program of FM 2021, we assembled a program committee of 46 renowned scientists from all over the world. We received a total of 161 abstract submissions, which resulted in 131 full paper submissions from authors in 28 different countries, from which we selected 33 full papers and 2 short tool papers. This special section contains a selection of the best theory papers from the FM 2021 conference that have been selected by the program committee. The articles cover a broad spectrum of topics in the area of formal methods. The six accepted articles include the following:
形式化方法已广泛应用于软件、网络物理系统和基于计算机的集成系统等领域。近年来,我们特别看到形式化方法在广泛领域的应用,如系统的系统、安全、人工智能、人机交互、制造、可持续性、电力、交通、智慧城市、医疗保健和生物学。形式方法在工业中也得到越来越多的应用。所有这些开发都得到各种形式化方法工具的设计和验证的支持。正式方法2021 (FM 2021)征集报告新颖研究成果的高质量论文,以及工具论文和案例研究报告。为了制定FM 2021计划,我们召集了一个由46名来自世界各地的知名科学家组成的计划委员会。我们共收到161篇摘要投稿,其中来自28个不同国家的作者投稿了131篇全文,我们从中选出了33篇全文和2篇简短的工具论文。这个特别的部分包含了由项目委员会选出的FM 2021会议的最佳理论论文。这些文章涵盖了形式化方法领域中广泛的主题。获接纳的六项条款包括:
{"title":"Introduction to the Special Section on FM 2021","authors":"M. Huisman, C. Pasareanu, N. Zhan","doi":"10.1145/3604594","DOIUrl":"https://doi.org/10.1145/3604594","url":null,"abstract":"Formal methods have been used in a wide range of domains, including software, cyber-physical systems, and integrated computer-based systems. In recent years, we have seen in particular the application of formal methods in a wide range of areas, such as systems-of-systems, security, artificial intelligence, human-computer interaction, manufacturing, sustainability, power, transport, smart cities, healthcare, and biology. Formal methods also get used more and more in industry. All of these developments are supported by the design and validation of various formal method tools. Formal Methods 2021 (FM 2021) solicited high-quality papers reporting novel research results, as well as tool papers and case study reports. To establish the program of FM 2021, we assembled a program committee of 46 renowned scientists from all over the world. We received a total of 161 abstract submissions, which resulted in 131 full paper submissions from authors in 28 different countries, from which we selected 33 full papers and 2 short tool papers. This special section contains a selection of the best theory papers from the FM 2021 conference that have been selected by the program committee. The articles cover a broad spectrum of topics in the area of formal methods. The six accepted articles include the following:","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-06-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"44866233","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
On Lexicographic Proof Rules for Probabilistic Termination 论概率终止的词典证明规则
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-06-23 DOI: https://dl.acm.org/doi/10.1145/3585391
Krishnendu Chatterjee, Ehsan Kafshdar Goharshady, Petr Novotný, Jiří Zárevúcky, Đorđe Žikelić

We consider the almost-sure (a.s.) termination problem for probabilistic programs, which are a stochastic extension of classical imperative programs. Lexicographic ranking functions provide a sound and practical approach for termination of non-probabilistic programs, and their extension to probabilistic programs is achieved via lexicographic ranking supermartingales (LexRSMs). However, LexRSMs introduced in the previous work have a limitation that impedes their automation: all of their components have to be non-negative in all reachable states. This might result in a LexRSM not existing even for simple terminating programs. Our contributions are twofold. First, we introduce a generalization of LexRSMs that allows for some components to be negative. This standard feature of non-probabilistic termination proofs was hitherto not known to be sound in the probabilistic setting, as the soundness proof requires a careful analysis of the underlying stochastic process. Second, we present polynomial-time algorithms using our generalized LexRSMs for proving a.s. termination in broad classes of linear-arithmetic programs.

考虑概率规划的几乎确定终止问题,它是经典命令式规划的一种随机扩展。字典排序函数为非概率程序的终止提供了一种可靠而实用的方法,并通过字典排序上鞅(LexRSMs)实现了它们对概率程序的扩展。然而,在前面的工作中引入的lexrsm有一个限制,阻碍了它们的自动化:它们的所有组件在所有可达状态下都必须是非负的。这可能导致即使对于简单的终止程序也不存在LexRSM。我们的贡献是双重的。首先,我们介绍了lexrsm的一般化,它允许某些组件为负。这种非概率终止证明的标准特征迄今为止还不知道在概率设置中是可靠的,因为可靠性证明需要对潜在的随机过程进行仔细的分析。其次,我们提出了多项式时间算法,使用我们的广义LexRSMs来证明广义线性算术程序中的自动终止。
{"title":"On Lexicographic Proof Rules for Probabilistic Termination","authors":"Krishnendu Chatterjee, Ehsan Kafshdar Goharshady, Petr Novotný, Jiří Zárevúcky, Đorđe Žikelić","doi":"https://dl.acm.org/doi/10.1145/3585391","DOIUrl":"https://doi.org/https://dl.acm.org/doi/10.1145/3585391","url":null,"abstract":"<p>We consider the almost-sure (a.s.) termination problem for probabilistic programs, which are a stochastic extension of classical imperative programs. Lexicographic ranking functions provide a sound and practical approach for termination of non-probabilistic programs, and their extension to probabilistic programs is achieved via lexicographic ranking supermartingales (LexRSMs). However, LexRSMs introduced in the previous work have a limitation that impedes their automation: all of their components have to be non-negative in all reachable states. This might result in a LexRSM not existing even for simple terminating programs. Our contributions are twofold. First, we introduce a generalization of LexRSMs that allows for some components to be negative. This standard feature of non-probabilistic termination proofs was hitherto not known to be sound in the probabilistic setting, as the soundness proof requires a careful analysis of the underlying stochastic process. Second, we present polynomial-time algorithms using our generalized LexRSMs for proving a.s. termination in broad classes of linear-arithmetic programs.</p>","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-06-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"138517742","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Benchmarking Combinations of Learning and Testing Algorithms for Automata Learning 自动机学习的学习和测试算法的基准组合
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-06-21 DOI: https://dl.acm.org/doi/10.1145/3605360
Bernhard K. Aichernig, Martin Tappler, Felix Wallner

Automata learning enables model-based analysis of black-box systems by automatically constructing models from system observations, which are often collected via testing. The required testing budget to learn adequate models heavily depends on the applied learning and testing techniques.

Test cases executed for learning (1) collect behavioural information and (2) falsify learned hypothesis automata. Falsification test-cases are commonly selected through conformance testing. Active learning algorithms additionally implement test-case selection strategies to gain information, whereas passive algorithms derive models solely from given data. In an active setting, such algorithms require external test-case selection, like repeated conformance testing to extend the available data.

There exist various approaches to learning and conformance testing, where interdependencies among them affect performance. We investigate the performance of combinations of six learning algorithms, including a passive algorithm, and seven testing algorithms, by performing experiments using 153 benchmark models. We discuss insights regarding the performance of different configurations for various types of systems. Our findings may provide guidance for future users of automata learning. For example, counterexample processing during learning strongly impacts efficiency, which is further affected by testing approach and system type. Testing with the random Wp-method performs best overall, while mutation-based testing performs well on smaller models.

自动机学习通过从系统观察(通常是通过测试收集的)中自动构建模型来支持基于模型的黑盒系统分析。学习足够的模型所需的测试预算在很大程度上取决于应用的学习和测试技术。为学习而执行的测试用例(1)收集行为信息,(2)伪造学习到的假设自动机。伪造测试用例通常通过一致性测试来选择。主动学习算法另外实现测试用例选择策略以获取信息,而被动算法仅从给定数据中导出模型。在活动设置中,这样的算法需要外部测试用例选择,比如重复的一致性测试来扩展可用数据。存在各种学习和一致性测试的方法,其中它们之间的相互依赖关系会影响性能。我们通过使用153个基准模型进行实验,研究了六种学习算法(包括一种被动算法)和七种测试算法的组合性能。我们将讨论关于不同类型系统的不同配置的性能的见解。我们的发现可能为未来的自动学习用户提供指导。例如,学习过程中的反例处理对效率的影响很大,而效率又受到测试方法和系统类型的影响。使用随机wp方法的测试总体上表现最好,而基于突变的测试在较小的模型上表现良好。
{"title":"Benchmarking Combinations of Learning and Testing Algorithms for Automata Learning","authors":"Bernhard K. Aichernig, Martin Tappler, Felix Wallner","doi":"https://dl.acm.org/doi/10.1145/3605360","DOIUrl":"https://doi.org/https://dl.acm.org/doi/10.1145/3605360","url":null,"abstract":"<p>Automata learning enables model-based analysis of black-box systems by automatically constructing models from system observations, which are often collected via testing. The required testing budget to learn adequate models heavily depends on the applied learning and testing techniques. </p><p>Test cases executed for learning (1) collect behavioural information and (2) falsify learned hypothesis automata. Falsification test-cases are commonly selected through conformance testing. Active learning algorithms additionally implement test-case selection strategies to gain information, whereas passive algorithms derive models solely from given data. In an active setting, such algorithms require external test-case selection, like repeated conformance testing to extend the available data. </p><p>There exist various approaches to learning and conformance testing, where interdependencies among them affect performance. We investigate the performance of combinations of six learning algorithms, including a passive algorithm, and seven testing algorithms, by performing experiments using 153 benchmark models. We discuss insights regarding the performance of different configurations for various types of systems. Our findings may provide guidance for future users of automata learning. For example, counterexample processing during learning strongly impacts efficiency, which is further affected by testing approach and system type. Testing with the random Wp-method performs best overall, while mutation-based testing performs well on smaller models.</p>","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-06-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"138517743","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Benchmarking Combinations of Learning and Testing Algorithms for Automata Learning 用于自动机学习的学习和测试算法的基准组合
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-06-21 DOI: 10.1145/3605360
B. Aichernig, Martin Tappler, Felix Wallner
Automata learning enables model-based analysis of black-box systems by automatically constructing models from system observations, which are often collected via testing. The required testing budget to learn adequate models heavily depends on the applied learning and testing techniques. Test cases executed for learning (1) collect behavioural information and (2) falsify learned hypothesis automata. Falsification test-cases are commonly selected through conformance testing. Active learning algorithms additionally implement test-case selection strategies to gain information, whereas passive algorithms derive models solely from given data. In an active setting, such algorithms require external test-case selection, like repeated conformance testing to extend the available data. There exist various approaches to learning and conformance testing, where interdependencies among them affect performance. We investigate the performance of combinations of six learning algorithms, including a passive algorithm, and seven testing algorithms, by performing experiments using 153 benchmark models. We discuss insights regarding the performance of different configurations for various types of systems. Our findings may provide guidance for future users of automata learning. For example, counterexample processing during learning strongly impacts efficiency, which is further affected by testing approach and system type. Testing with the random Wp-method performs best overall, while mutation-based testing performs well on smaller models.
自动机学习通过从系统观测值自动构建模型,实现了对黑匣子系统的基于模型的分析,这些观测值通常是通过测试收集的。学习足够模型所需的测试预算在很大程度上取决于应用的学习和测试技术。为学习而执行的测试用例(1)收集行为信息,(2)伪造学习到的假设自动机。伪造测试用例通常是通过一致性测试来选择的。主动学习算法还实现了测试用例选择策略以获取信息,而被动算法仅从给定数据中导出模型。在活动设置中,此类算法需要外部测试用例选择,如重复一致性测试以扩展可用数据。存在各种学习和一致性测试方法,它们之间的相互依赖性会影响性能。我们通过使用153个基准模型进行实验,研究了六种学习算法(包括一种被动算法和七种测试算法)的组合的性能。我们讨论了关于不同类型系统的不同配置的性能的见解。我们的发现可能为未来的自动机学习用户提供指导。例如,学习过程中的反例处理强烈影响效率,而效率又受到测试方法和系统类型的影响。随机Wp方法的测试总体表现最好,而基于突变的测试在较小的模型上表现良好。
{"title":"Benchmarking Combinations of Learning and Testing Algorithms for Automata Learning","authors":"B. Aichernig, Martin Tappler, Felix Wallner","doi":"10.1145/3605360","DOIUrl":"https://doi.org/10.1145/3605360","url":null,"abstract":"Automata learning enables model-based analysis of black-box systems by automatically constructing models from system observations, which are often collected via testing. The required testing budget to learn adequate models heavily depends on the applied learning and testing techniques. Test cases executed for learning (1) collect behavioural information and (2) falsify learned hypothesis automata. Falsification test-cases are commonly selected through conformance testing. Active learning algorithms additionally implement test-case selection strategies to gain information, whereas passive algorithms derive models solely from given data. In an active setting, such algorithms require external test-case selection, like repeated conformance testing to extend the available data. There exist various approaches to learning and conformance testing, where interdependencies among them affect performance. We investigate the performance of combinations of six learning algorithms, including a passive algorithm, and seven testing algorithms, by performing experiments using 153 benchmark models. We discuss insights regarding the performance of different configurations for various types of systems. Our findings may provide guidance for future users of automata learning. For example, counterexample processing during learning strongly impacts efficiency, which is further affected by testing approach and system type. Testing with the random Wp-method performs best overall, while mutation-based testing performs well on smaller models.","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-06-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"49533006","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
FVF-AKA: A Formal Verification Framework of AKA Protocols for Multi-server IoT FVF-AKA:多服务器物联网AKA协议的正式验证框架
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-05-25 DOI: 10.1145/3599731
Yuan Fei, Huibiao Zhu, Jiaqi Yin
As IoT in multi-server environment increases resources utilization, more and more problems of IoT authentication and key agreement are revealed. Authentication and Key Agreement (AKA) protocol plays an important role in solving these problems. Many AKA protocols have been proposed, and some of them support their own verifications. However, there lacks a unifying verification framework for multi-server IoT. In this paper, we propose a formal verification framework of AKA protocols for multi-server IoT (FVF-AKA). It supports the construction of CSP models for the AKA protocol, the implementation of the CSP models in PAT with C#, and the verification of formal models. With the help of C#, many complex functions in AKA protocol can be implemented. We also design an algorithm to support automatic conversion from CSP model to PAT model. FVF-AKA can verify four fundamental properties (deadlock freedom, entity legitimacy, timeout delay, and session key consistency). It also supports the verification of security properties for the AKA protocol suffering from four different attacks (relay attacks, denial of service attacks, server spoofing attacks, and session key attacks). Our approach can be applied to most AKA protocols for multi-server IoT generally. By applying FVF-AKA to two AKA protocols, we can verify whether they satisfy the fundamental properties and analyze their security properties in vulnerable environments. Our work would help to analyze the AKA protocol for multi-server IoT and provide the foundation for the analysis of enhancing its security and robustness.
随着多服务器环境下物联网资源利用率的提高,越来越多的物联网认证和密钥协议问题暴露出来。认证与密钥协议(AKA)在解决这些问题方面发挥了重要作用。已经提出了许多AKA协议,其中一些协议支持自己的验证。然而,多服务器物联网缺乏统一的验证框架。在本文中,我们提出了一个多服务器物联网AKA协议的正式验证框架(FVF-AKA)。它支持为AKA协议构建CSP模型,用c#在PAT中实现CSP模型,以及对形式化模型的验证。在c#的帮助下,可以实现AKA协议中的许多复杂功能。我们还设计了一种算法,支持从CSP模型到PAT模型的自动转换。FVF-AKA可以验证四个基本属性(死锁自由、实体合法性、超时延迟和会话密钥一致性)。它还支持验证遭受四种不同攻击(中继攻击、拒绝服务攻击、服务器欺骗攻击和会话密钥攻击)的AKA协议的安全属性。我们的方法通常可以应用于多服务器物联网的大多数AKA协议。通过将FVF-AKA应用于两种AKA协议,验证其是否满足基本属性,并分析其在脆弱环境下的安全属性。我们的工作将有助于分析多服务器物联网的AKA协议,并为提高其安全性和鲁棒性的分析提供基础。
{"title":"FVF-AKA: A Formal Verification Framework of AKA Protocols for Multi-server IoT","authors":"Yuan Fei, Huibiao Zhu, Jiaqi Yin","doi":"10.1145/3599731","DOIUrl":"https://doi.org/10.1145/3599731","url":null,"abstract":"As IoT in multi-server environment increases resources utilization, more and more problems of IoT authentication and key agreement are revealed. Authentication and Key Agreement (AKA) protocol plays an important role in solving these problems. Many AKA protocols have been proposed, and some of them support their own verifications. However, there lacks a unifying verification framework for multi-server IoT. In this paper, we propose a formal verification framework of AKA protocols for multi-server IoT (FVF-AKA). It supports the construction of CSP models for the AKA protocol, the implementation of the CSP models in PAT with C#, and the verification of formal models. With the help of C#, many complex functions in AKA protocol can be implemented. We also design an algorithm to support automatic conversion from CSP model to PAT model. FVF-AKA can verify four fundamental properties (deadlock freedom, entity legitimacy, timeout delay, and session key consistency). It also supports the verification of security properties for the AKA protocol suffering from four different attacks (relay attacks, denial of service attacks, server spoofing attacks, and session key attacks). Our approach can be applied to most AKA protocols for multi-server IoT generally. By applying FVF-AKA to two AKA protocols, we can verify whether they satisfy the fundamental properties and analyze their security properties in vulnerable environments. Our work would help to analyze the AKA protocol for multi-server IoT and provide the foundation for the analysis of enhancing its security and robustness.","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-05-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"46326242","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
FVF-AKA: A Formal Verification Framework of AKA Protocols for Multi-server IoT FVF-AKA:多服务器物联网AKA协议的正式验证框架
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-05-25 DOI: https://dl.acm.org/doi/10.1145/3599731
Yuan Fei, Huibiao Zhu, Jiaqi Yin

As IoT in multi-server environment increases resources utilization, more and more problems of IoT authentication and key agreement are revealed. Authentication and Key Agreement (AKA) protocol plays an important role in solving these problems. Many AKA protocols have been proposed, and some of them support their own verifications. However, there lacks a unifying verification framework for multi-server IoT. In this paper, we propose a formal verification framework of AKA protocols for multi-server IoT (FVF-AKA). It supports the construction of CSP models for the AKA protocol, the implementation of the CSP models in PAT with C#, and the verification of formal models. With the help of C#, many complex functions in AKA protocol can be implemented. We also design an algorithm to support automatic conversion from CSP model to PAT model. FVF-AKA can verify four fundamental properties (deadlock freedom, entity legitimacy, timeout delay, and session key consistency). It also supports the verification of security properties for the AKA protocol suffering from four different attacks (relay attacks, denial of service attacks, server spoofing attacks, and session key attacks). Our approach can be applied to most AKA protocols for multi-server IoT generally. By applying FVF-AKA to two AKA protocols, we can verify whether they satisfy the fundamental properties and analyze their security properties in vulnerable environments. Our work would help to analyze the AKA protocol for multi-server IoT and provide the foundation for the analysis of enhancing its security and robustness.

随着多服务器环境下物联网资源利用率的提高,越来越多的物联网认证和密钥协议问题暴露出来。认证与密钥协议(AKA)在解决这些问题方面发挥了重要作用。已经提出了许多AKA协议,其中一些协议支持自己的验证。然而,多服务器物联网缺乏统一的验证框架。在本文中,我们提出了一个多服务器物联网AKA协议的正式验证框架(FVF-AKA)。它支持为AKA协议构建CSP模型,用c#在PAT中实现CSP模型,以及对形式化模型的验证。在c#的帮助下,可以实现AKA协议中的许多复杂功能。我们还设计了一种算法,支持从CSP模型到PAT模型的自动转换。FVF-AKA可以验证四个基本属性(死锁自由、实体合法性、超时延迟和会话密钥一致性)。它还支持验证遭受四种不同攻击(中继攻击、拒绝服务攻击、服务器欺骗攻击和会话密钥攻击)的AKA协议的安全属性。我们的方法通常可以应用于多服务器物联网的大多数AKA协议。通过将FVF-AKA应用于两种AKA协议,验证其是否满足基本属性,并分析其在脆弱环境下的安全属性。我们的工作将有助于分析多服务器物联网的AKA协议,并为提高其安全性和鲁棒性的分析提供基础。
{"title":"FVF-AKA: A Formal Verification Framework of AKA Protocols for Multi-server IoT","authors":"Yuan Fei, Huibiao Zhu, Jiaqi Yin","doi":"https://dl.acm.org/doi/10.1145/3599731","DOIUrl":"https://doi.org/https://dl.acm.org/doi/10.1145/3599731","url":null,"abstract":"<p>As IoT in multi-server environment increases resources utilization, more and more problems of IoT authentication and key agreement are revealed. Authentication and Key Agreement (AKA) protocol plays an important role in solving these problems. Many AKA protocols have been proposed, and some of them support their own verifications. However, there lacks a unifying verification framework for multi-server IoT. In this paper, we propose a formal verification framework of AKA protocols for multi-server IoT (FVF-AKA). It supports the construction of CSP models for the AKA protocol, the implementation of the CSP models in PAT with C#, and the verification of formal models. With the help of C#, many complex functions in AKA protocol can be implemented. We also design an algorithm to support automatic conversion from CSP model to PAT model. FVF-AKA can verify four fundamental properties (deadlock freedom, entity legitimacy, timeout delay, and session key consistency). It also supports the verification of security properties for the AKA protocol suffering from four different attacks (relay attacks, denial of service attacks, server spoofing attacks, and session key attacks). Our approach can be applied to most AKA protocols for multi-server IoT generally. By applying FVF-AKA to two AKA protocols, we can verify whether they satisfy the fundamental properties and analyze their security properties in vulnerable environments. Our work would help to analyze the AKA protocol for multi-server IoT and provide the foundation for the analysis of enhancing its security and robustness.</p>","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-05-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"138517744","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Formal Specification and Verification of JDK’s Identity Hash Map Implementation JDK身份哈希图实现的形式化规范与验证
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-05-18 DOI: 10.1145/3594729
M. D. Boer, Stijn de Gouw, Jonas Klamroth, Christian Jung, Mattias Ulbrich, A. Weigl
Hash maps are a common and important data structure in efficient algorithm implementations. Despite their wide-spread use, real-world implementations are not regularly verified. In this paper, we present the first case study of the IdentityHashMap class in the Java JDK. We specified its behavior using the Java Modeling Language (JML) and proved correctness for the main insertion and lookup methods with KeY, a semi-interactive theorem prover for JML-annotated Java programs. Furthermore, we report how unit testing and bounded model checking can be leveraged to find a suitable specification more quickly. We also investigated where the bottlenecks in the verification of hash maps lie for KeY by comparing required automatic proof effort for different hash map implementations and draw conclusions for the choice of hash map implementations regarding their verifiability.
在高效算法实现中,哈希映射是一种常见且重要的数据结构。尽管它们被广泛使用,但现实世界的实现并没有得到定期验证。在本文中,我们介绍了Java JDK中IdentityHashMap类的第一个案例研究。我们使用Java建模语言(JML)指定了它的行为,并使用KeY证明了主要插入和查找方法的正确性,KeY是用于JML注释的Java程序的半交互式定理证明器。此外,我们还报告了如何利用单元测试和有界模型检查来更快地找到合适的规范。我们还通过比较不同哈希图实现所需的自动证明工作量,研究了KeY哈希图验证中的瓶颈所在,并就哈希图实现的可验证性得出了选择哈希图的结论。
{"title":"Formal Specification and Verification of JDK’s Identity Hash Map Implementation","authors":"M. D. Boer, Stijn de Gouw, Jonas Klamroth, Christian Jung, Mattias Ulbrich, A. Weigl","doi":"10.1145/3594729","DOIUrl":"https://doi.org/10.1145/3594729","url":null,"abstract":"Hash maps are a common and important data structure in efficient algorithm implementations. Despite their wide-spread use, real-world implementations are not regularly verified. In this paper, we present the first case study of the IdentityHashMap class in the Java JDK. We specified its behavior using the Java Modeling Language (JML) and proved correctness for the main insertion and lookup methods with KeY, a semi-interactive theorem prover for JML-annotated Java programs. Furthermore, we report how unit testing and bounded model checking can be leveraged to find a suitable specification more quickly. We also investigated where the bottlenecks in the verification of hash maps lie for KeY by comparing required automatic proof effort for different hash map implementations and draw conclusions for the choice of hash map implementations regarding their verifiability.","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-05-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"47826241","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Formal Specification and Verification of JDK’s Identity Hash Map Implementation JDK身份哈希映射实现的形式化规范与验证
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-05-18 DOI: https://dl.acm.org/doi/10.1145/3594729
Martin de Boer, Stijn de Gouw, Jonas Klamroth, Christian Jung, Mattias Ulbrich, Alexander Weigl

Hash maps are a common and important data structure in efficient algorithm implementations. Despite their wide-spread use, real-world implementations are not regularly verified.

In this paper, we present the first case study of the IdentityHashMap class in the Java JDK. We specified its behavior using the Java Modeling Language (JML) and proved correctness for the main insertion and lookup methods with KeY, a semi-interactive theorem prover for JML-annotated Java programs. Furthermore, we report how unit testing and bounded model checking can be leveraged to find a suitable specification more quickly. We also investigated where the bottlenecks in the verification of hash maps lie for KeY by comparing required automatic proof effort for different hash map implementations and draw conclusions for the choice of hash map implementations regarding their verifiability.

在高效算法实现中,哈希映射是一种常见且重要的数据结构。尽管它们被广泛使用,但现实世界的实现并没有得到定期验证。在本文中,我们介绍了Java JDK中IdentityHashMap类的第一个案例研究。我们使用Java建模语言(JML)指定了它的行为,并使用KeY证明了主要插入和查找方法的正确性,KeY是用于JML注释的Java程序的半交互式定理证明器。此外,我们还报告了如何利用单元测试和有界模型检查来更快地找到合适的规范。我们还通过比较不同哈希图实现所需的自动证明工作量,研究了KeY哈希图验证中的瓶颈所在,并就哈希图实现的可验证性得出了选择哈希图的结论。
{"title":"Formal Specification and Verification of JDK’s Identity Hash Map Implementation","authors":"Martin de Boer, Stijn de Gouw, Jonas Klamroth, Christian Jung, Mattias Ulbrich, Alexander Weigl","doi":"https://dl.acm.org/doi/10.1145/3594729","DOIUrl":"https://doi.org/https://dl.acm.org/doi/10.1145/3594729","url":null,"abstract":"<p>Hash maps are a common and important data structure in efficient algorithm implementations. Despite their wide-spread use, real-world implementations are not regularly verified. </p><p>In this paper, we present the first case study of the <monospace>IdentityHashMap</monospace> class in the Java JDK. We specified its behavior using the Java Modeling Language (JML) and proved correctness for the main insertion and lookup methods with KeY, a semi-interactive theorem prover for JML-annotated Java programs. Furthermore, we report how unit testing and bounded model checking can be leveraged to find a suitable specification more quickly. We also investigated where the bottlenecks in the verification of hash maps lie for KeY by comparing required automatic proof effort for different hash map implementations and draw conclusions for the choice of hash map implementations regarding their verifiability.</p>","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-05-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"138517751","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Bit-Vector Typestate Analysis 位矢量类型状态分析
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-05-17 DOI: 10.1145/3595299
Alen Arslanagic, Pavle Subotic, J. A. Pérez
Static analyses based on typestates are important in certifying correctness of code contracts. Such analyses rely on Deterministic Finite Automata (DFAs) to specify properties of an object. We target the analysis of contracts in low-latency environments, where many useful contracts are impractical to codify as DFAs and/or the size of their associated DFAs leads to sub-par performance. To address this bottleneck, we present a lightweight compositional typestate analyzer, based on an expressive specification language that can succinctly specify code contracts. By implementing it in the static analyzer Infer, we demonstrate considerable performance and usability benefits when compared to existing techniques. A central insight is to rely on a sub-class of DFAs whose analysis uses efficient bit-vector operations.
基于类型状态的静态分析对于证明代码契约的正确性非常重要。这种分析依赖于确定性有限自动机(DFA)来指定对象的属性。我们针对低延迟环境中的合同进行分析,在低延迟环境下,许多有用的合同无法编码,因为DFA和/或其相关DFA的大小会导致低于标准的性能。为了解决这个瓶颈,我们提出了一个轻量级的组合类型状态分析器,它基于一种表达性规范语言,可以简洁地指定代码契约。通过在静态分析器Infer中实现它,与现有技术相比,我们展示了相当大的性能和可用性优势。一个核心见解是依赖于DFA的一个子类,其分析使用有效的位向量运算。
{"title":"Bit-Vector Typestate Analysis","authors":"Alen Arslanagic, Pavle Subotic, J. A. Pérez","doi":"10.1145/3595299","DOIUrl":"https://doi.org/10.1145/3595299","url":null,"abstract":"Static analyses based on typestates are important in certifying correctness of code contracts. Such analyses rely on Deterministic Finite Automata (DFAs) to specify properties of an object. We target the analysis of contracts in low-latency environments, where many useful contracts are impractical to codify as DFAs and/or the size of their associated DFAs leads to sub-par performance. To address this bottleneck, we present a lightweight compositional typestate analyzer, based on an expressive specification language that can succinctly specify code contracts. By implementing it in the static analyzer Infer, we demonstrate considerable performance and usability benefits when compared to existing techniques. A central insight is to rely on a sub-class of DFAs whose analysis uses efficient bit-vector operations.","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-05-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"41966864","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Bit-Vector Typestate Analysis 位矢量类型状态分析
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-05-17 DOI: https://dl.acm.org/doi/10.1145/3595299
Alen Arslanagić, Pavle Subotić, Jorge A. Pérez

Static analyses based on typestates are important in certifying correctness of code contracts. Such analyses rely on Deterministic Finite Automata (DFAs) to specify properties of an object. We target the analysis of contracts in low-latency environments, where many useful contracts are impractical to codify as DFAs and/or the size of their associated DFAs leads to sub-par performance. To address this bottleneck, we present a lightweight compositional typestate analyzer, based on an expressive specification language that can succinctly specify code contracts. By implementing it in the static analyzer Infer, we demonstrate considerable performance and usability benefits when compared to existing techniques. A central insight is to rely on a sub-class of DFAs whose analysis uses efficient bit-vector operations.

基于类型状态的静态分析对于验证代码契约的正确性非常重要。这种分析依赖于确定性有限自动机(dfa)来指定对象的属性。我们的目标是在低延迟环境中分析合约,在这种环境中,许多有用的合约无法被编码为dfa,并且/或者它们相关的dfa的大小导致性能低于标准。为了解决这个瓶颈,我们提出了一个轻量级的组合类型状态分析器,它基于一种表达性规范语言,可以简洁地指定代码契约。通过在静态分析器Infer中实现它,与现有技术相比,我们展示了相当大的性能和可用性优势。一个核心的见解是依赖于dfa的子类,其分析使用有效的位向量操作。
{"title":"Bit-Vector Typestate Analysis","authors":"Alen Arslanagić, Pavle Subotić, Jorge A. Pérez","doi":"https://dl.acm.org/doi/10.1145/3595299","DOIUrl":"https://doi.org/https://dl.acm.org/doi/10.1145/3595299","url":null,"abstract":"<p>Static analyses based on <i>typestates</i> are important in certifying correctness of code contracts. Such analyses rely on Deterministic Finite Automata (DFAs) to specify properties of an object. We target the analysis of contracts in low-latency environments, where many useful contracts are impractical to codify as DFAs and/or the size of their associated DFAs leads to sub-par performance. To address this bottleneck, we present a <i>lightweight</i> compositional typestate analyzer, based on an expressive specification language that can succinctly specify code contracts. By implementing it in the static analyzer <span>Infer</span>, we demonstrate considerable performance and usability benefits when compared to existing techniques. A central insight is to rely on a sub-class of DFAs whose analysis uses efficient bit-vector operations.</p>","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-05-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"138517739","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
期刊
Formal Aspects of Computing
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1