Type-driven Verification of Communicating Systems

通信系统的类型驱动验证

基本信息

  • 批准号:
    EP/N024222/1
  • 负责人:
  • 金额:
    $ 11.98万
  • 依托单位:
  • 依托单位国家:
    英国
  • 项目类别:
    Research Grant
  • 财政年份:
    2016
  • 资助国家:
    英国
  • 起止时间:
    2016 至 无数据
  • 项目状态:
    已结题

项目摘要

It is considered a fact of life that computer software routinely fails. Often, this is merely inconvenient. When a PC, tablet or mobile phone crashes, we can restart it, perhaps losing only a small amount of work. On the other hand, errors in systems software or in network or security infrastructure can be disastrous. Recent high profile security vulnerabilities such as the "Heartbleed" bug show that even well tested and widely used software can contain serious and undetected flaws.This project forms the initial part of an ambitious long term vision of a platform for full-stack verified software development, accessible byboth programming practitioners and researchers. We will use a type-driven approach to software verification, using the dependently typed programming language Idris.The promise of dependently typed languages is that we can, in principle, guarantee important functional properties of software (such as preservation of size and ordering properties of data) and extra-functional properties such as resource safety (for example, that a protocol is followed accurately). However, proving such properties in general remains impractical for typical application developers, due to the difficulty of constructing proofs, the difficulty of reading and maintaining software due to proof details interfering with the details of an algorithm, and the lack of robustness and efficiency in even state of the art implementations of dependently typed languages.Idris aims to address these problems, having been built specifically with the goal of generating good quality executable code which can interroperate with existing systems. Furthermore, it supports language constructs for building "Domain Specific Languages" (DSLs). In this project, we will further develop Idris, focussing on robustness and efficiency, and show how its support for DSL construction and type-level programming allow us to develop secure communication protocol implementations, described as a type-level DSL and verified by type checking.In particular, we will construct verified implementations of Diffie-Hellman key exchange, and the Needham-Schroeder-Lowe protocol, and use these to implement a demonstrator application. This application (a networked chat system) will support secure communication (up to the guarantees given in the protocols), be efficient (no overhead due to proof obligations) and be able to communicate with alternative implementations in other languages.
计算机软件经常失败,这被认为是生活中的一个事实。通常,这仅仅是不方便而已。当PC、平板电脑或手机崩溃时,我们可以重启它,也许只会丢失少量工作。另一方面,系统软件或网络或安全基础设施中的错误可能是灾难性的。最近备受瞩目的安全漏洞,如“心脏出血”漏洞表明,即使是经过良好测试和广泛使用的软件也可能包含严重且未被检测到的缺陷。该项目形成了一个雄心勃勃的长期愿景的第一部分,即建立一个可供编程从业者和研究人员访问的全栈验证软件开发平台。我们将使用依赖类型编程语言IDRIS,使用类型驱动的方法进行软件验证。依赖类型语言的承诺是,原则上,我们可以保证软件的重要功能属性(如数据的大小和排序属性的保留)和额外的功能属性,如资源安全(例如,准确遵循协议)。然而,对于典型的应用程序开发人员来说,由于构造校样的难度、由于校样细节干扰算法细节而导致的阅读和维护软件的困难、以及在依赖类型语言的最新技术实现中缺乏健壮性和效率,Idris旨在解决这些问题,其目标是专门构建以生成可与现有系统询问的高质量可执行代码。此外,它还支持用于构建“领域特定语言”(DSL)的语言构造。在这个项目中,我们将进一步开发IDRIS,重点关注健壮性和效率,并展示它对DSL构建和类型级编程的支持如何允许我们开发安全的通信协议实现,描述为类型级DSL并通过类型检查进行验证。特别是,我们将构建Diffie-Hellman密钥交换和Needham-Schroeder-Lowe协议的验证实现,并使用这些实现来实现一个演示应用程序。该应用程序(网络聊天系统)将支持安全通信(达到协议中给出的保证)、高效(不会因证明义务而产生开销),并能够与其他语言的替代实现进行通信。

项目成果

期刊论文数量(7)
专著数量(0)
科研奖励数量(0)
会议论文数量(0)
专利数量(0)
Elaborator reflection: extending Idris in Idris
Value-Dependent Session Design in a Dependently Typed Language
  • DOI:
    10.4204/eptcs.291.5
  • 发表时间:
    2019-04
  • 期刊:
  • 影响因子:
    0
  • 作者:
    Jan de Muijnck-Hughes;Edwin C. Brady;W. Vanderbauwhede
  • 通讯作者:
    Jan de Muijnck-Hughes;Edwin C. Brady;W. Vanderbauwhede
TYPE-DRIVEN DEVELOPMENT OF CONCURRENT COMMUNICATING SYSTEMS
并发通信系统的类型驱动开发
  • DOI:
    10.7494/csci.2017.18.3.1413
  • 发表时间:
    2017
  • 期刊:
  • 影响因子:
    0
  • 作者:
    Brady E
  • 通讯作者:
    Brady E
Repurposing of existing antibiotics for the treatment of diabetes mellitus.
重新利用现有抗生素来治疗糖尿病。
  • DOI:
    10.1007/978-3-319-17713-7_4
  • 发表时间:
    2022
  • 期刊:
  • 影响因子:
    0
  • 作者:
    Alam MS
  • 通讯作者:
    Alam MS
A Framework for Resource Dependent EDSLs in a Dependently Typed Language
依赖类型语言中的资源依赖 EDSL 框架
  • DOI:
  • 发表时间:
    2020
  • 期刊:
  • 影响因子:
    0
  • 作者:
    Jan De Muijnck-Hughes
  • 通讯作者:
    Jan De Muijnck-Hughes
{{ item.title }}
{{ item.translation_title }}
  • DOI:
    {{ item.doi }}
  • 发表时间:
    {{ item.publish_year }}
  • 期刊:
  • 影响因子:
    {{ item.factor }}
  • 作者:
    {{ item.authors }}
  • 通讯作者:
    {{ item.author }}

数据更新时间:{{ journalArticles.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ monograph.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ sciAawards.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ conferencePapers.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ patent.updateTime }}

Edwin Brady其他文献

Idris 2: Quantitative Type Theory in practice
Idris 2:实践中的定量类型理论
  • DOI:
  • 发表时间:
    2021
  • 期刊:
  • 影响因子:
    0
  • 作者:
    Edwin Brady
  • 通讯作者:
    Edwin Brady

Edwin Brady的其他文献

{{ item.title }}
{{ item.translation_title }}
  • DOI:
    {{ item.doi }}
  • 发表时间:
    {{ item.publish_year }}
  • 期刊:
  • 影响因子:
    {{ item.factor }}
  • 作者:
    {{ item.authors }}
  • 通讯作者:
    {{ item.author }}

{{ truncateString('Edwin Brady', 18)}}的其他基金

Programming as Conversation: Type-Driven Development in Action
编程即对话:类型驱动开发的实际应用
  • 批准号:
    EP/T007265/1
  • 财政年份:
    2020
  • 资助金额:
    $ 11.98万
  • 项目类别:
    Research Grant

相似国自然基金

Data-driven Recommendation System Construction of an Online Medical Platform Based on the Fusion of Information
  • 批准号:
  • 批准年份:
    2024
  • 资助金额:
    万元
  • 项目类别:
    外国青年学者研究基金项目
基于Cache的远程计时攻击研究
  • 批准号:
    60772082
  • 批准年份:
    2007
  • 资助金额:
    28.0 万元
  • 项目类别:
    面上项目

相似海外基金

Trust Matrix: A blockchain-driven system for business identity verification, increasing business efficiency and reducing fraud.
Trust Matrix:区块链驱动的企业身份验证系统,可提高业务效率并减少欺诈。
  • 批准号:
    10099958
  • 财政年份:
    2024
  • 资助金额:
    $ 11.98万
  • 项目类别:
    Collaborative R&D
CAREER: A Data-Driven Approach for Verification and Control of Cyber-Physical Systems
职业:用于验证和控制网络物理系统的数据驱动方法
  • 批准号:
    2145184
  • 财政年份:
    2022
  • 资助金额:
    $ 11.98万
  • 项目类别:
    Continuing Grant
Verification of ERA5 reanalysis for thermally driven winds in mountainous terrain
验证山区热驱动风的 ERA5 再分析
  • 批准号:
    542107-2019
  • 财政年份:
    2019
  • 资助金额:
    $ 11.98万
  • 项目类别:
    University Undergraduate Student Research Awards
SHF: Small: Rigorous Synthesis and Verification of Decisions Using Data-Driven Models
SHF:小型:使用数据驱动模型对决策进行严格的综合和验证
  • 批准号:
    1815983
  • 财政年份:
    2018
  • 资助金额:
    $ 11.98万
  • 项目类别:
    Standard Grant
Verification of Learning Driven Probabilistic Planning
学习驱动概率规划的验证
  • 批准号:
    1913482
  • 财政年份:
    2017
  • 资助金额:
    $ 11.98万
  • 项目类别:
    Studentship
I-Corps: Formal Specification Driven Verification and Validation Framework for Cyber-Physical Systems
I-Corps:网络物理系统的正式规范驱动的验证和确认框架
  • 批准号:
    1454143
  • 财政年份:
    2014
  • 资助金额:
    $ 11.98万
  • 项目类别:
    Standard Grant
Algorithmic development and verification of a remote-sensing driven global forest monitoring system over British Columbian focus areas
不列颠哥伦比亚省重点地区遥感驱动的全球森林监测系统的算法开发和验证
  • 批准号:
    436436-2012
  • 财政年份:
    2013
  • 资助金额:
    $ 11.98万
  • 项目类别:
    Collaborative Research and Development Grants
Improving Coverage Driven Verification for Hardware Using Machine Learning
使用机器学习改进覆盖率驱动的硬件验证
  • 批准号:
    25330061
  • 财政年份:
    2013
  • 资助金额:
    $ 11.98万
  • 项目类别:
    Grant-in-Aid for Scientific Research (C)
Performance-driven SAT- and QBF-based solutions for a modern VLSI verification, debugging and test environment
性能驱动的基于 SAT 和 QBF 的解决方案,适用于现代 VLSI 验证、调试和测试环境
  • 批准号:
    227044-2009
  • 财政年份:
    2013
  • 资助金额:
    $ 11.98万
  • 项目类别:
    Discovery Grants Program - Individual
Algorithmic development and verification of a remote-sensing driven global forest monitoring system over British Columbian focus areas
不列颠哥伦比亚省重点地区遥感驱动的全球森林监测系统的算法开发和验证
  • 批准号:
    436436-2012
  • 财政年份:
    2012
  • 资助金额:
    $ 11.98万
  • 项目类别:
    Collaborative Research and Development Grants
{{ showInfoDetail.title }}

作者:{{ showInfoDetail.author }}

知道了