课程:安全中的逻辑/正式方法


22

目前,我开设了一门小课程(在安全级别上为时两个小时的讲座),涉及安全中的逻辑方法,尽管标题“ 安全中的形式方法”可能更合适。它简要介绍了以下主题(以及相关的逻辑方法):

  • 数字版权管理和政策执行(一般形式化,模态逻辑,通过自动机执行)

  • 带有证明的代码和带有证明的认证(证明理论,逻辑系统,Curry-Howard同构,验证)

  • 访问控制(非经典逻辑,证明理论)

  • 堆栈检查(编程语言语义,上下文对等,双仿真)

当然,该课程有多个目标,其中一个目标是吸引潜在的研究生。

在未来几年中,该课程可能会扩展为常规课程,这将需要更多内容。鉴于这里的人的背景与我的背景完全不同,我想知道您将在此课程中包括哪些内容。

Answers:


15

我建议让学生熟悉以下逻辑:

  • 认知逻辑:用于对参与协议的各方的知识进行建模,并证明对手无法获得某些秘密的知识。
  • BAN逻辑:一种古老的逻辑,用于证明身份验证协议的各种属性。(其他信念逻辑也是合适的。)
  • 过渡系统的逻辑包括LTL,CTL和LTL *之类的逻辑。(此类逻辑作用于协议的类似Kripke的模型。)
  • 流程代数:几个流程代数,例如Spi-calculus(或CSP,及其安全相关的工具Casper)对于建模安全协议很有用。
  • 诸如NuSPAAVISPA之类的工具非常有用。
  • 我还建议将安全协议的形式正确性作为课程教科书之一。

我的一个朋友Morteza Amini最近获得了博士学位。用逻辑建模访问控制。他设计了一种新的逻辑,称为,它表示“多权限宗宗逻辑和描述逻辑”。顾名思义,它结合了两种非经典逻辑(宗申逻辑+描述逻辑),以决定实体是否有权访问对象。如果您愿意,我可以鼓励他提供更多信息。MA(DL)2


感谢Sadeq。在前几年,我在本课程的模态逻辑入门中介绍了Epistimic Logic,但今年我放弃了该课程。学生经常选择论文主题的BAN逻辑。其他建议非常有用,尤其是工具,这些工具总是建议可能的学生作业。
戴夫·克拉克

@戴夫:很高兴听到这个消息!我曾经参加过Ramaznian博士撰写的出色的速成课程(约3个小时),内容涉及“安全协议的逻辑逻辑”。可以在以下位置找到演示文稿:ifile.it/xljn9s8/EpistemicLogic.rar。我建议在完全删除该主题之前先看一下。
MS Dousti

感谢您的链接。认知逻辑还没有被完全删除。今年只是不合适。
戴夫·克拉克

12

几年前,在卡耐基梅隆大学(Carnegie Mellon)上有一本名为“安全的语言和逻辑”的阅读课程,该课程试图调查有关身份验证,授权,信息流,协议计算,保护和信任管理的一些文献。该课程的网页上有我们讨论过的论文的幻灯片以及每个主题的参考文献的进一步列表。与您列出的主题相关的信息流尤其值得一看。

Anupam Datta的“安全与隐私基础 ”课程的课程也与此相关。


谢谢罗伯。实际上,我在设计原始课程内容时就使用了这两页。
戴夫·克拉克

啊 好吧,我想它对您的附加实用性是有限的!希望其他人也会发现它也有用:)。
罗伯·西蒙斯


6

我不确定您在“验证”一词下隐藏了什么,因此我尝试一下。也许您可以添加一些有关马尔可夫决策过程的定量验证以及概率时态逻辑(pLTL和PCTL)的使用的信息。在此框架中,您有一种很好的方式来建模对手,表达属性,并且存在易于使用的验证工具(例如PRISM)。


有趣。您是否知道PRISM的任何安全应用程序或这些逻辑?
戴夫·克拉克

在案例研究(prismmodelchecker.org/casestudies/index.php)中,有一些与安全性相关的示例。它们大多数是MDP,但更多是关于协议的安全性而不是实现的安全性。
Sylvain Peyronnet,2010年


1

关于可证明安全性的讲座可能会很有趣,尤其是使用博弈论。我认为Nisan等人关于算法博弈论的的第8章和第25章可以提供良好的基础。

我还将简要介绍现有的安全/安全标准,例如ITSEC / TCSEC和通用标准。总是要指出,为了达到通用标准的最高水平,有必要对系统进行正式的验证,设计和测试。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.