跳到内容

亚历山德罗·贝吉亚托/MultiUbic

存储库文件导航

MultiUbic工具v.0.3
本文件组织如下:
1.引言:对MultiUbic的简要描述
2.安装:如何编译MultiUbic
3.用法:如何使用MultiUbic
4.附加内容:与MultiUbic一起出现的内容

4.1工具

4.2脚本

  1. 以前的工具:MultiUbic是基于什么构建的
1.简介

这是工具MultiUbic(基于多级展开)的原型版本
干扰检查器)用于检查BNDC(基于双模拟的不可推导性
基于合成)和BINI(基于互模拟
非敏感非干扰)。这两个属性都是

旨在表征无干扰特性的非干扰特性

不受欢迎的信息流,并由安全部门代表进行检查

具有任意多个安全级别的域。

该工具基于Ubic2,这是一个用于执行基于展开的工具集
验证三级安全域上BINI属性的Petri网,

由Paolo Baldan和Francesco Burato开发。

MultiUbic工具由

亚历山德罗·贝吉亚托
Sysma研究部

卢卡IMT高级研究学校

电子邮件:alessandro.beggiato@imtlucca.it公司

2.安装

要安装MultiUbic,请移动到包含此文件的文件夹并键入:

制造所有

安装程序将二进制文件放在“MultiUbic/bin”文件夹中
您可以将它们复制到机器中的适当位置。请注意
此版本提供的辅助脚本期望二进制文件

在“MultiUbic/bin”中。您可以根据自己的需要轻松编辑它们。

如果您只想编译MultiUbic或只想编译提供的辅助工具

使用它,您可以分别键入

制作MultiUbic

制作工具

对于输入和输出文件格式,命令选项是指

cunf文档(见下文)

3.用法

输入网络必须以PEP ll_net格式表示,输出
可以以内部“cuf”格式或点文件(简单

或幻想)。

该工具可以生成e-complete前缀或在第一个弱前缀出现时停止
找到了原因所在。选择花式点输出格式时,

弱因果位置用红色表示。

有关文件格式的详细信息,请参阅CUNF

文件。

重要提示:在定义网络时
检查(以PEP ll_net格式)
转换由转换名称决定:所有转换
必须根据NAME_LEVEL方案命名
策略文件中定义的LEVEL。策略文件的格式

如下所示。

在不带参数的情况下执行MultiUbic,您将获得

命令行选项。

用法:

多Ubic[选项]NETFILE POLICYFILE

参数NETFILE是.ll_net输入文件的路径。

参数POLICYFILE是.msd策略文件的路径。

允许的选项包括:

-一旦发现第一个薄弱的原因,立即停止并报告。

(默认情况下为禁用,因此干涉的前缀完整为

生成)

-l添加NUMBER历史记录后停止

-t NAME插入转换NAME时停止

-d深度展开到给定深度

-o FILE用于存储展开的输出文件。如果未提供,

默认为删除了最后7个字符的NETFILE

(扩展名“.ll_net”)加上后缀,取决于选项-O

-f FORMAT以FORMAT格式写入展开。可用格式:'cuf'

“点”,“花哨”。默认值为“cuf”。“花式”格式弱

因果地点代表用红色表示

策略文件的MSD_FORMAT模板为:

材料安全数据

过渡/内在

LVL#级别

0级名称

1级名称

...

#级别1级别名称

政策

i至j

允许的流由约束i到j指定,其中i和j是
一些安全级别的数字id。例如,标准的高低二

级别可传递策略由指定:

材料安全数据

TRANSITIVE公司

第2层

0低

1高

政策

0到1

而标准的三级不及物策略是:

材料安全数据

TRANSITIVE公司

第3级

0低

1高

2降级

政策

0到1

0到3

1至3

3到0

4.附加内容

此版本的MultiUbic配备了一个工具,即分区器,用于映射
两级或三级多级安全域验证问题
安全域验证问题,取决于策略是否
原问题的是及物的还是不及物的。

我们还提供了一个工具来生成本文中使用的测试集。

4.1工具
----

要编译分区器和测试集生成器,只需运行

制作工具

如果您愿意,可以使用

制作隔板

生成testNetGen

如果您运行,它们也会与MultiUbic一起编译

制造所有

在编译它们的每一种方法中,都会在

MultiUbic/bin文件夹。

在不带参数的情况下执行它们,您将获得
命令行选项。

分区器的用法是:

分区器[选项]NETFILE POLICYFILE

它需要一个.llnet网络文件和一个.msd策略文件,并生成一组.llnet
Ubic2的文件,位于相同路径和输入网络名称相同的文件夹中。
如果指定了参数-m,它还将生成一组.msd文件,如下所示

如果输出适合MultiUbic。

测试集生成器的用法是

testNetGen[选项]OUT_DIR

它以OUT_DIR指定的路径生成单个网络系统。
论文的长篇中描述了这些参数。
生成的网络系统的命名方案是TestNet-N-L-E.ll_net
其中N、L和E是指定的参数。
提供了一个有用的脚本来立即生成一个大型测试集(见下文)。

当然,您可以根据需要轻松地对其进行编辑。

4.2脚本

我们在此版本的MultiUibc中提供了几个有用的脚本:

genetateTestSet.sh:此脚本生成我们在论文中用于比较Ubic2的测试集
和MultiUbic。它生成网络系统T(n,l,e),其中n在[100300]中,l在[1,3]中,e在[0,6]中
(详见论文)。然后将这些网络系统划分为等价的问题集
用于Ubic2。它希望在
MultiUbic/bin文件夹,以及MultiUvic/TestSystems/T/MultiUbic中的默认输出文件夹
用于多级域问题,MultiUbic/TestSystems/T/UBIC2用于分区

问题。您可以在脚本的标题中编辑所有这些路径。

tester.sh:这是一个简单的脚本,用于比较MultiUbic和Ubic2的运行时间。
通过注释掉变量netType的一个定义,可以指定
希望在testNetGen生成的T系统或Dijkstra系统上运行它
随此版本的MultiUbic提供。
脚本希望在根MultiUbic文件夹中找到一个名为netList.txt的文件,其中
指定比较必须在哪个网络上运行。我们包含了一个示例文件
用于第一个Dijkstra型系统。
测试仪的输出是一个简单的csv文件,默认放置在文件夹中
包含您用于测试的网络系统。
同样,您可以通过更改脚本的标题轻松编辑所有路径。
注意:测试程序脚本希望Ubic2和MultiUbic都位于
MultiUbic/bin文件夹。如果要运行比较,请下载Ubic2,

编译它并将其安装到该文件夹中。

5.以前的工具

---关于Ubic2工具---

====================
Ubic2工具v.0.1
====================
这是工具UBIC2(基于展开)的原型版本
干涉检查器2),用于检查BINI(基于双向模拟
非及物非干扰)。BINI属性是
旨在表征无干扰特性的非干扰特性

不受欢迎的信息流。

其基本思想很简单:系统是由以下部分组成的视图
三个不同保密级别的组件
H、 这应该是秘密的,低部分的,公开的,降级的
部分,表示解密事件。没有流动
从H到L的信息通过询问H的活动来获取
根据一些选定的
低水平的观察语义学。来自H的无流量
当发生解密或降级事件时,允许使用到L,
这可以想象为信息的加密。
在BINI形式化中,过程S被认为是不受干扰的
无论何时,从低水平来看,S单独在行为上是等效的
当S从开始时,到S与任何并行高级过程交互
其初始状态或降级事件后可到达的任何状态。
在上下文Petri网的设置中,转换分为三种
集合:高跃迁H、降级跃迁D和低跃迁L。
BINI属性可以用不需要的交互作用来表征
在高低转换之间。该工具利用了
用展开语义表示的这种交互,如
直接伤亡从高到低和直接冲突之间

在没有降级事件发生的情况下进行高级别和低级别转换。

该工具基于Ubic,这是一个用于执行基于展开的工具集
验证Paolo开发的BNDC属性的Petri网

巴尔丹和阿尔贝托·卡拉罗。

UBIC2工具由开发和维护

弗朗西斯科·布拉托
数学系

帕多瓦大学

电子邮件:弗朗西斯科·布拉托.1@studenti.unipd.it

安装

要安装UBIC2,请移动到“ubic/Release”文件夹并键入

以下命令:

制造所有

安装程序将二进制文件放在“ubic/Release”文件夹中

您可以将它们复制到机器中的适当位置。

ubic文件夹还包括一个文件夹

  • 示例本文中提到的示例
对于输入和输出文件格式,命令选项是指

cunf文档(见下文)

用法

输入网络必须以PEP ll_net格式表示,输出
可以以内部“cuf”格式或点文件(简单

或幻想)。

该工具可以生成一个e-complete前缀,也可以在第一个弱前缀后停止
找到了原因所在。选择花式点输出格式时,

弱因果位置用红色表示。

有关文件格式的详细信息,请参阅CUNF
文档。我们只在定义网络时提到这一点
检查(以PEP ll_net格式)
转换由转换名称决定:以h开头的名称
对应于高电平转换,所有其他转换为低电平

过渡。

在不带参数的情况下执行ubic,您将了解

命令行选项。

用法:

ubic2[选项]网络文件

参数NETFILE是.ll_net输入文件的路径。允许的选项包括:

-一旦发现第一个薄弱的原因,立即停止并报告。

(默认情况下为禁用,因此干扰的完整前缀为

生成)

-d深度展开到给定深度

-o FILE用于存储展开的输出文件。如果未提供,

默认为删除了最后7个字符的NETFILE

(扩展名“.ll_net”)加上后缀,取决于选项-O

-f FORMAT以FORMAT格式写入展开。可用格式:'cuf',

“点”,“花哨”。默认值为“cuf”。“花式”格式弱

因果地点代表用红色表示

---关于Ubic工具---

===================
Ubic工具v.0.1

这是工具UBIC(基于展开的干扰检查器)的原型版本,用于在安全Petri网上检查BNDC(基于双向模拟的合成不可重复性)。BNDC属性是一种非干扰属性,旨在描述不存在不希望的信息流的特征。

其基本思想很简单:系统被视为由不同保密级别的组件组成,在最简单的情况下,高部分H直觉上应该是机密的,低部分L是公开的。根据一些选定的观察语义学,在低水平L下,通过要求H的活动不决定可见效应来捕获从H到L的信息流的缺失。在BNDC形式化中,从低水平来看,只要S单独存在,过程S就被视为无干扰,在行为上等同于S与任何并行高级流程交互。在Petri网的设置中,转换被分为两组:高转换H和低转换L。BNDC属性可以根据高转换和低转换之间的不希望的交互来表征。该工具利用了以展开语义表示的此类交互的特征,如高层到低级转换的直接因果关系以及高层和低级转换之间的直接冲突。

该工具基于Cunf,Cunf是一个工具集,用于对扩展了读弧的Petri网(也称为上下文网或c-net)进行基于展开的验证,由Cesar Rodriguez开发。

UBIC工具由以下人员开发和维护

Paolo Baldan帕多瓦大学数学系

万维网:http://www.math.unipd.it/~巴尔丹/电子邮件:baldan@math.unipd.it

阿尔贝托·卡拉罗DAIS威尼斯福斯卡里大学-巴黎迪德罗大学PPS实验室,巴黎索邦城

万维网:网址:http://www.dsi.unive.it/~阿卡拉罗/电子邮件:acarararo@dsi.unive.it

安装

要安装UBIC,请移动到UBIC-0.1文件夹并键入以下命令:

制造所有制造距离

安装过程会将二进制文件放在“dist/bin”文件夹中,您可以将其复制到计算机中的适当位置。

ubic-0.1文件夹还包括一个文件夹

  • 示例本文中提到的示例
  • 二进制文件linux和mac-osx的预编译二进制文件

对于输入和输出文件格式,命令选项参见cunf文档(见下文)

用法

输入网络必须以PEP ll_net格式表示,输出可以以内部“cuf”格式或点文件(简单或奇特)生成。

该工具可以生成e-complete前缀,或在找到第一个弱因果位置后停止。当选择花式点输出格式时,弱因果位置用红色表示。

有关文件格式的详细信息,请参阅CUNF文档。我们只提到,当定义要检查的网络(以PEP ll_net格式)时,转换的机密性级别由转换名称决定:以h开头的名称对应于高级转换,所有其他名称对应于低级转换。

在不带参数的情况下执行ubic,您将获得命令行选项的概述。

用法:ubic[OPTIONS]NETFILE

参数NETFILE是.ll_net输入文件的路径。允许的选项包括:
-一旦发现第一个薄弱的原因,立即停止并报告。
(默认情况下为禁用,因此干扰的完整前缀为

生成)

-d DEPTH展开到给定的DEPTH-o FILE输出文件中以存储展开。如果未提供,则默认为删除最后7个字符的NETFILE(扩展名为'.ll_net')加上后缀,具体取决于选项-o-f FORMAT以格式FORMAT写入展开。可用格式:'cuf'、'dot'、'fance'。默认值为“cuf”。在“花式”格式中,弱因果地点代表用红色表示

---关于Cunf Tool---========================

Cunf Tool实际上是一组工具,用于对扩展了读弧的Petri网(也称为上下文网或c网)进行基于展开的验证。该软件包特别包含以下工具:

  • cunf:构建c-网的展开;
  • cna:使用cunf构造的展开来执行可达性和死锁分析;
  • 诸如pep2dot或grml2pep之类的脚本可以在各种Petri网格式、展开格式等之间进行格式转换。

Cunf是用C编写的,源代码在src/和/include中。Cna是用python编写的,依赖于“ptnet”模块;两者都位于tools/文件夹中。

Cna要求Minisat解算器位于$PATH中。为了方便起见,Minisat v.2.2.0的源代码位于Minisat/文件夹中,主Makefile将为您编译它。

作者和联系人

Cuff Tool由开发和维护

Cesar Rodríguez LSV,CNRS&ENS de Cachan 61,avenue du Président Wilson 94235 Cachan Cedex,法国

万维网:http://www.lsv.ens-cachan.fr/~z~罗德里格斯/电子邮件:cesar.rodriguez@lsv.ens-cachan.fr

快速安装

手册第3节提供了有关安装的全部详细信息:

https://cunf.googlecode.com/files/user-manual-v1.6.pdf

安装过程会将所有二进制文件和库放入“dist/”文件夹中,您可以从中将它们复制到计算机中的适当位置。

键入以下命令:

制造所有制造距离

之后,将模块提供给Python

dist/lib/ptnet,

通过将其复制到依赖于安装的默认模块搜索路径所指向的任何文件夹,或环境变量PYTHONPATH所指向的任意文件夹。没有这个步骤,Cna和其他Python脚本将无法工作。

文档

请参见https://cunf.googlecode.com/files/user-manual-v1.6.pdf

开发

Cunf工具位于https://code.google.com/p/cunf/。您可以在终端中获取键入的最新源代码:

git克隆https://code.google.com/p/cunf/

关于

基于CUNF的安全Petri网的基于展开的非干扰模型检查器,适用于多级安全域,可以处理传递和不传递安全策略。

资源

许可证

星星

观察者

叉子

包装

未发布包

语言文字