一种应用开发安全需求的生成方法及系统技术方案

技术编号:38837819 阅读:9 留言:0更新日期:2023-09-17 09:53
本发明专利技术涉及一种应用开发安全需求的生成方法及系统。将用户提出的安全需求内容转化为形式化模型,减少主观因素的干扰,提高安全需求的准确性和一致性,并基于安全需求内容、安全需求的质量要求特性、国家法律法规及行业标准定义期望的安全性质和约束条件,强化了对安全需求的规范性要求,再利用模型检测系统对安全需求模型和期望的性质规约进行分析以验证安全需求模型是否满足性质规约,并根据验证报告对安全需求模型进行修正及对安全需求进行更新,最终迭代得到最终的安全需求文本,自动生成满足用户期望和相关标准的高质量应用开发安全需求,极大提高效率、效果和准确性。效果和准确性。效果和准确性。

【技术实现步骤摘要】
一种应用开发安全需求的生成方法及系统


[0001]本专利技术属于应用开发
,尤其涉及一种应用开发安全需求的生成方法及系统。

技术介绍

[0002]在应用开发过程中,需要分析人员对用户的需求进行综合鉴别分析,以清除用户需求的模糊性、歧义性和不一致性等问题,从而找到应用要求中哪些要求是由于用户的片面性或短期行为所导致的不合理要求,哪些是用户尚未提出但具有真正价值的潜在需求。
[0003]而安全需求的生成确认是整个应用生命周期安全开发的起始点,这个阶段决定了整个应用系统的安全目标和实现方法。在安全需求生成确认阶段,在用户针对软件的安全性提出了一些特定需求后,需要对软件需求的安全程度进行识别和区分,并对各需求项的安全性进行描述,以便在软件需求中生成安全措施。
[0004]目前安全需求的生成也主要依赖人工,一般通过人工对用户需求进行分析及解释,并结合业务需求、法律法规和行业标准等进行安全性的分析和定义。然而,这种人工方式会存在以下问题和不足:1、人工分析容易受到个体主观认知和片面观点的影响,导致安全需求的缺失或不完整;2、人工分析容易导致安全需求的不一致性和模糊性,造成需求理解的困难和不确定性;3、若用户提出多个安全需求,如数千个安全需求项,人工分析需要耗费大量时间和人力资源,并且效率低下。

技术实现思路

[0005]本专利技术提供一种应用开发安全需求的生成方法及系统,旨在解决上述
技术介绍
提到的问题。
[0006]本专利技术是这样实现的,提供一种应用开发安全需求的生成方法,步骤包括:将用户提出的安全需求内容以安全需求文本的形式表示,从安全需求文本中提取安全需求元素,并将安全需求元素以规范的形式化模型的语言方式表示以得到安全需求模型;基于用户提出的安全需求内容、安全需求的质量要求特性、国家法律法规及行业标准定义期望的安全性质和约束条件,并将期望的安全性质和约束条件转化为期望的性质规约,安全需求的质量要求特性包括但不限于清晰性、完整性、一致性和可行性,期望的安全性质和约束条件为期望目标应用系统满足的安全性质和约束条件;将安全需求模型和期望的性质规约导入模型检测系统,以通过模型检测系统对安全需求模型和期望的性质规约进行分析以验证安全需求模型是否满足性质规约,并生成验证报告,验证报告包括验证结果和执行轨迹,执行轨迹用于描述在哪些条件下违反了性质规约,通过模型检测系统具体执行以下步骤:在Promela模型中定义目标应用系统的进程、通信通道、状态和状态转换规则,并根据Promela模型的定义生成目标应用系统的状态空间和状态转换关系,
将期望的性质规约转化为线性时序逻辑公式的表示形式,其中,线性时序逻辑公式用于表示目标应用系统的行为和状态之间的关系,从初始状态出发,通过广度优先搜索算法遍历搜索每个状态空间及执行每条状态转换路径,在状态空间搜索的每个步骤中,根据线性时序逻辑公式的结构和语义规则判断搜索到的当前状态或状态转换是否满足线性时序逻辑公式的部分条件,若搜索到的当前状态或状态转换不满足线性时序逻辑公式的部分条件,则得出不满足期望的性质规约的验证结果,并将与当前状态或状态转换关联的路径标记为反例路径,其中,与当前状态或状态转换关联的路径指当前状态或状态转换所在的路径,搜索完成后,判断搜索完成的每个状态或状态转换是否满足线性时序逻辑公式的全部条件,若目标状态或状态转换不满足线性时序逻辑公式的全部条件,则得出不满足期望的性质规约的验证结果,并将与目标状态或状态转换关联的路径标记为反例路径,其中,与目标状态或状态转换关联的路径指目标状态或状态转换所在的路径,根据验证结果和反例路径生成验证报告;基于验证报告对安全需求模型进行修正及对安全需求进行更新,将修正后的安全需求模型和期望的性质规约重新导入模型检测系统生成验证报告;通过多次迭代,以对安全需求模型进行不断修正及对安全需求文本进行不断更新,直至得出满足期望的性质规约的验证结果,终止迭代,并基于验证报告得到修正后的最终的安全需求模型及最终的安全需求文本。
[0007]更进一步的,所述从安全需求文本中提取安全需求元素的步骤包括:对安全需求文本进行预处理以保留与安全需求相关的内容,预处理包括去除标点符号、停用词和数字;利用分词工具将预处理后的安全需求文本切分成单词或短语以形成词汇单元;对切分的词汇单元进行词性标注以标注每个词汇的词性,词性包括名词、动词和形容词;从预定义的安全需求特点中提取相应的关键词或短语作为特征词汇并生成特征词汇表;将特征词汇表与词汇单元进行匹配以提取出词汇单元中包含的特征词汇,并设为安全需求元素。
[0008]更进一步的,所述将安全需求元素以规范的形式化模型的语言方式表示以得到安全需求模型的步骤包括:确定使用的形式化建模语言或工具;根据安全需求元素的特点将安全需求元素转化为形式化模型中的相应概念和结构;根据形式化建模语言或工具提供的语法和语义规则对安全需求元素之间的行为和状态转换关系进行表示;根据安全需求元素及安全需求元素之间行为和状态转换关系的模型表示方式构建形式化模型。
[0009]更进一步的,所述基于用户提出的安全需求内容、安全需求的质量要求特性、国家
法律法规及行业标准制定义期望的安全性质和约束条件,并将期望的安全性质和约束条件转化为期望的性质规约的步骤包括:从用户提出的安全需求内容、国家法律法规及行业标准中识别出关键特性和约束,并基于识别出的关键特性和约束及安全需求的质量要求特性制定期望的安全性质和约束条件;根据期望的安全性质和约束条件定义命题变量,命题变量用于描述目标应用系统状态和行为;通过线性时序逻辑的运算符和逻辑连接词对命题变量进行形式化的规约表达以得到期望的性质规约;将编写的性质规约转化为线性时序逻辑的形式化规约表达式,以确保性质规约准确而精确地描述期望的安全性质和约束条件。
[0010]更进一步的,所述基于验证报告对安全需求模型进行修正及对安全需求进行更新的步骤包括:从验证报告上获取未被满足的期望的性质规约及与其对应的反例路径;对与未被满足的期望的性质规约对应的反例路径上的关键因素进行分析,以确定引发问题的具体原因,反例路径上的关键因素包括反例路径上的状态属性、状态转换条件、环境因素、并发操作或交互动作以及约束条件;根据问题的具体原因 ,对安全需求模型的组成部分进行修正,组成部分包括状态定义、状态转换规则、安全策略和相关约束条件;将修正后的安全需求模型与现有的安全需求文本进行对比以确定安全需求模型中的变更部分,变更部分包括新增、修改或删除的安全性质和约束条件,并根据安全需求模型中的变更部分对安全需求文本进行更新以确保文本中反映了最新的安全性质和约束条件。
[0011]本专利技术还提供一种应用开发安全需求的生成系统,用于执行应用开发安全需求的生成方法,包括:模型构建模块:用于将用户提出的安全需求内容以安全需求文本的形式表示,从安全需求文本中提取安全需求元素,并将安全需求元素以规范的形式化模型的语言方式表示以得到安全需求模型;性质规约建立模块:用于基于用户提出的安全需求内容、安全需求的质量要求特性、国家法律法规本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种应用开发安全需求的生成方法,其特征在于,步骤包括:将用户提出的安全需求内容以安全需求文本的形式表示,从安全需求文本中提取安全需求元素,并将安全需求元素以规范的形式化模型的语言方式表示以得到安全需求模型;基于用户提出的安全需求内容、安全需求的质量要求特性、国家法律法规及行业标准定义期望的安全性质和约束条件,并将期望的安全性质和约束条件转化为期望的性质规约,安全需求的质量要求特性包括但不限于清晰性、完整性、一致性和可行性,期望的安全性质和约束条件为期望目标应用系统满足的安全性质和约束条件;将安全需求模型和期望的性质规约导入模型检测系统,以通过模型检测系统对安全需求模型和期望的性质规约进行分析以验证安全需求模型是否满足性质规约,并生成验证报告,验证报告包括验证结果和执行轨迹,执行轨迹用于描述在哪些条件下违反了性质规约,通过模型检测系统具体执行以下步骤:在Promela模型中定义目标应用系统的进程、通信通道、状态和状态转换规则,并根据Promela模型的定义生成目标应用系统的状态空间和状态转换关系,将期望的性质规约转化为线性时序逻辑公式的表示形式,其中,线性时序逻辑公式用于表示目标应用系统的行为和状态之间的关系,从初始状态出发,通过广度优先搜索算法遍历搜索每个状态空间及执行每条状态转换路径,在状态空间搜索的每个步骤中,根据线性时序逻辑公式的结构和语义规则判断搜索到的当前状态或状态转换是否满足线性时序逻辑公式的部分条件,若搜索到的当前状态或状态转换不满足线性时序逻辑公式的部分条件,则得出不满足期望的性质规约的验证结果,并将与当前状态或状态转换关联的路径标记为反例路径,其中,与当前状态或状态转换关联的路径指当前状态或状态转换所在的路径,搜索完成后,判断搜索完成的每个状态或状态转换是否满足线性时序逻辑公式的全部条件,若目标状态或状态转换不满足线性时序逻辑公式的全部条件,则得出不满足期望的性质规约的验证结果,并将与目标状态或状态转换关联的路径标记为反例路径,其中,与目标状态或状态转换关联的路径指目标状态或状态转换所在的路径,根据验证结果和反例路径生成验证报告;基于验证报告对安全需求模型进行修正及对安全需求进行更新,将修正后的安全需求模型和期望的性质规约重新导入模型检测系统生成验证报告;通过多次迭代,以对安全需求模型进行不断修正及对安全需求文本进行不断更新,直至得出满足期望的性质规约的验证结果,终止迭代,并基于验证报告得到修正后的最终的安全需求模型及最终的安全需求文本。2.根据权利要求1所述的应用开发安全需求的生成方法,其特征在于,所述从安全需求文本中提取安全需求元素的步骤包括:对安全需求文本进行预处理以保留与安全需求相关的内容,预处理包括去除标点符号、停用词和数字;利用分词工具将预处理后的安全需求文本切分成单词或短语以形成词汇单元;对切分的词汇单元进行词性标注以标注每个词汇的词性,词性包括名词、动词和形容词;
从预定义的安全需求特点中提取相应的关键词或短语作为特征词汇并生成特征词汇表;将特征词汇表与词汇单元进行匹配以提取出词汇单元中包含的特征词汇,并设为安全需求元素。3.根据权利要求1所述的应用开发安全需求的生成方法,其特征在于,所述将安全需求元素以规范的形式化模型的语言方式表示以得到安全需求模型的步骤包括:确定使用的形式化建模语言或工具;根据安全需求元素的特点将安全需求元素转化为形式化模型中的相应概念和结构;根据形式化建模语言或工具提供的语法和语义规则对安全需求元素之间的行为和状态转换关系进行表示;根据安全需求元素及安全需求元素之间行为和状态转换关系的模型表示方式构建形式化模型。4.根据权利要求1所述的应用开发安全需求的生成方法,其特征在于,所述基于用户提出的安全需求内容、安全需求的质量要求特性、国家法律法规及行业标准制定义期望的安全性质和约束条件,并将期望的安全性质和约束条件转化为期望的性质规约的步骤包括:从用户提出的安全需求内容、国家法律法规及行业标...

【专利技术属性】
技术研发人员:谢朝海齐大伟李志勇彭波谢朝战
申请(专利权)人:深圳海云安网络安全技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1