TW201933165A - Security design apparatus, security design method, and security design program - Google Patents

Security design apparatus, security design method, and security design program Download PDF

Info

Publication number
TW201933165A
TW201933165A TW108101124A TW108101124A TW201933165A TW 201933165 A TW201933165 A TW 201933165A TW 108101124 A TW108101124 A TW 108101124A TW 108101124 A TW108101124 A TW 108101124A TW 201933165 A TW201933165 A TW 201933165A
Authority
TW
Taiwan
Prior art keywords
security
processing
model
processes
aforementioned
Prior art date
Application number
TW108101124A
Other languages
Chinese (zh)
Inventor
日夏俊
清水孝一
植田武
Original Assignee
日商三菱電機股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日商三菱電機股份有限公司 filed Critical 日商三菱電機股份有限公司
Publication of TW201933165A publication Critical patent/TW201933165A/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/54Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)

Abstract

In a security design apparatus (10), a security database (22) defines a plurality of security processes to be executed for dealing with respective threats. When an input model (M1) that defines a program processing procedure is inputted, a countermeasure introduction unit (21) selects, from among the plurality of security processes defined by the security database (22), one or more security processes to be introduced, and outputs an output model (M3) that defines the program processing procedure to be performed after the selected security processes have been introduced. If two or more security processes, which have introduced portions overlapping each other and are to be executed for dealing with the same threat, are included in the security processes selected by the countermeasure introduction unit (21), a redundancy inspection unit (23) excludes at least one of the two or more security processes from the processes to be introduced.

Description

安全設計裝置、安全設計方法及安全設計程式產品Safety design device, safety design method and safety design program product

本發明為有關一種安全設計裝置、安全設計方法及安全設計程式產品者。The invention relates to a safety design device, a safety design method and a safety design program product.

將控制機器的控制系統與外部網路連接的案例為常有的。伴隨該類案例的增加,恐怕也會使對控制系統的虛擬攻擊增加。因此,要求脆弱性減低及攻擊檢測等。除此之外,也指出安全設計的專家不足乙事。因此,今後即使沒有專業知識也能夠安裝適當的安全機能之工具為必須的。It is common to connect the control system that controls the machine with an external network. With the increase of such cases, I am afraid that it will also increase the virtual attacks on the control system. Therefore, reduced vulnerability and attack detection are required. In addition, it is pointed out that there are not enough experts in safety design. Therefore, it is necessary to be able to install tools with appropriate safety functions even without professional knowledge in the future.

在程式開發中,提出了根據使用方塊圖或模型等記述之程式模樣,自動產生原始碼之「模型庫開發技術」。作為對虛擬攻擊的對策,提出了以能夠自動產生包含安全機能的代碼之方式,利用模型庫開發技術設計系統的安全機能之技術。In program development, a "model library development technology" that automatically generates source code based on a program pattern described using block diagrams or models is proposed. As a countermeasure against a virtual attack, a technique for designing a security function of a system by using a model library development technology in a manner capable of automatically generating a code including the security function is proposed.

在專利文獻1中,提出了結合模型庫開發系統與威脅分析系統之技術。在該技術中,威脅分析系統針對利用模型庫開發系統所作成之各控制模型的要素,藉由從威脅資料庫擷取出吻合威脅的資料,作成顯示對控制模型的多個威脅之威脅一覽表後輸出。
先前技術文獻
專利文獻
In Patent Document 1, a technology combining a model library development system and a threat analysis system is proposed. In this technology, the threat analysis system, based on the elements of each control model created using the model library development system, extracts data that matches the threat from the threat database, creates a threat list that displays multiple threats to the control model, and outputs .
Prior art literature patent literature

[專利文獻1] 日本特開2017-068825號公報[Patent Document 1] Japanese Patent Laid-Open No. 2017-068825

發明欲解決之課題Problems to be solved by the invention

記載於專利文獻1的技術中,即使能夠利用控制模型的要素也就是裝置等級特定應導入安全機能之位置,但是也不能利用處理等級特定要導入安全機能之位置。對於提供即使沒有專業知識也能夠安裝適當的安全機能之工具而言,必須可以利用處理等級有效導入安全機能。In the technology described in Patent Document 1, even if an element of the control model can be used, that is, the position at which the safety function is to be introduced into the device level, the position to be introduced into the safety function cannot be specified by the processing level. In order to provide a tool capable of installing appropriate safety functions even without specialized knowledge, it is necessary to be able to effectively introduce safety functions using a processing level.

本發明以能夠利用處理等級有效導入安全機能為目的。
用以解決課題之手段
The purpose of the present invention is to enable efficient introduction of safety functions using processing levels.
Means to solve the problem

有關本發明一態樣之安全設計裝置,包括:
對策導入部,其當輸入定義程式的處理順序之輸入模型時,參照定義用以處置各個威脅而執行的多個安全處理之安全資料庫,從前述多個安全處理之中選擇導入到根據前述輸入模型所定義的處理順序之1個以上的安全處理,輸出定義導入有已選擇的安全處理後之前述程式的處理順序之輸出模型;及
冗長性檢查部,其在利用前述對策導入部所選擇的安全處理之中,若在前述程式的處理順序之導入處為重複,而且用以處置相同威脅而執行的安全處理包含2個以上時,將該等2個以上的安全處理之中的至少1個安全處理從對根據前述輸出模型所定義的處理順序之導入對象排除。
發明效果
A safety design device related to one aspect of the present invention includes:
The countermeasure introduction unit, when inputting an input model that defines a processing sequence of a program, refers to a security database that defines a plurality of security processes to be executed to deal with each threat, and selects and imports from among the plurality of security processes to the input based on the input. One or more security processes in the processing order defined by the model, and an output model that defines the processing order of the aforementioned program after the selected security process is imported; and a redundancy check section that uses the selected by the countermeasure importing section. In the case of security processing, if the introduction of the processing sequence of the aforementioned program is duplicated and there are two or more security processings performed to deal with the same threat, at least one of the two or more security processings Safe processing is excluded from the import object for the processing sequence defined according to the aforementioned output model.
Invention effect

在本發明中,從根據安全資料庫所定義的多個安全處理之中選擇1個以上要導入的安全處理。在已選擇的安全處理之中,若利用處理等級的導入處為重複,而且之用以處置相同威脅而執行的安全處理包含2個以上時,將該等2個以上的安全處理之中的至少1個安全處理從導入對象排除。因此,根據本發明,可以利用處理等級有效導入安全機能。In the present invention, one or more security processes to be imported are selected from a plurality of security processes defined by a security database. Among the selected security processes, if the introduction level of the processing level is duplicated and the security process performed to deal with the same threat includes two or more, at least one of the two or more security processes 1 security process is excluded from the import object. Therefore, according to the present invention, it is possible to effectively introduce a safety function using a processing level.

以下,針對本發明之實施形態使用圖面進行說明。各圖中對於相同或相當的部份附予相同符號。在實施形態的說明中,針對相同或相當的部分會適當省略或簡略化說明。又,本發明並非限定於以下說明的實施形態,因應必要可以進行各種變更。例如,在以下說明的實施形態之中,組合2個以上的實施形態再實施亦可。或是,在以下說明的實施形態之中,部分性實施1個實施形態或2個以上的實施形態的組合亦可。Hereinafter, embodiments of the present invention will be described using drawings. The same symbols are assigned to the same or corresponding parts in each drawing. In the description of the embodiment, the same or equivalent parts will be appropriately omitted or simplified. The present invention is not limited to the embodiments described below, and various changes can be made as necessary. For example, among the embodiments described below, two or more embodiments may be combined and then implemented. Alternatively, among the embodiments described below, one embodiment or a combination of two or more embodiments may be partially implemented.

實施形態1.
針對本實施形態,使用第1圖至第4圖進行說明。
Embodiment 1.
This embodiment will be described using FIGS. 1 to 4.

***構成說明***
參照第1圖,說明有關本實施形態之安全設計裝置10的構成。
*** Composition Explanation ***
The configuration of the safety design device 10 according to this embodiment will be described with reference to FIG. 1.

安全設計裝置10為電腦。安全設計裝置10包括處理器11,同時包括所謂記憶體12、通訊裝置13、輸入機器14及顯示器15之其他硬體。處理器11透過訊號線與其他硬體連接,控制此等其他硬體。The security design device 10 is a computer. The security design device 10 includes a processor 11 and other hardware including a so-called memory 12, a communication device 13, an input device 14, and a display 15. The processor 11 is connected to other hardware through a signal line, and controls these other hardware.

安全設計裝置10包括:對策導入部21、安全資料庫22及冗長性檢查部23。對策導入部21及冗長性檢查部23的機能為藉由軟體予以實現。安全資料庫22在本實施形態中雖然是架構在記憶體12上,但是架構在後述之輔助記憶裝置上亦可,架構在安全設計裝置10的外部亦可。The safety design device 10 includes a countermeasure introduction unit 21, a safety database 22, and a redundancy check unit 23. The functions of the countermeasure introduction unit 21 and the redundancy check unit 23 are realized by software. Although the security database 22 is structured on the memory 12 in this embodiment, it may be structured on an auxiliary memory device described later, or it may be structured outside the security design device 10.

處理器11為執行安全設計程式的裝置。安全設計程式為實現對策導入部21及冗長性檢查部23的機能之程式。處理器11例如為CPU。「CPU」為Central Processing Unit(中央處理單元)的簡稱。The processor 11 is a device that executes a security design program. The safety design program is a program that realizes the functions of the countermeasure introduction unit 21 and the redundancy check unit 23. The processor 11 is, for example, a CPU. "CPU" is an abbreviation for Central Processing Unit.

記憶體12為記憶安全設計程式的裝置。記憶體12例如為RAM、快閃記憶體或此等的組合。「RAM」為Random Access Memory(隨機存取記憶體)的簡稱。The memory 12 is a device for designing a memory security program. The memory 12 is, for example, a RAM, a flash memory, or a combination thereof. "RAM" is short for Random Access Memory.

通訊裝置13包含接收輸入到安全設計程式的資料之接收器、及傳送從安全設計程式輸出的資料之發送器。通訊裝置13例如為通訊晶片或NIC。「NIC」為Network Interface Card(網路介面卡)的簡稱。The communication device 13 includes a receiver that receives data input to the security design program, and a transmitter that transmits data output from the security design program. The communication device 13 is, for example, a communication chip or a NIC. "NIC" is short for Network Interface Card.

輸入機器14為用以對安全設計程式的資料輸入,藉由使用者所操作的機器。輸入機器14例如為滑鼠、鍵盤、觸控面板、或此等之中的幾個或全部的組合。The input device 14 is a device for inputting data into a security design program and is operated by a user. The input device 14 is, for example, a mouse, a keyboard, a touch panel, or a combination of several or all of them.

顯示器15為在畫面上顯示從安全設計程式所輸出的資料之機器。顯示器15例如為LCD。「LCD」為Liquid Crystal Display(液晶顯示器)的簡稱。The display 15 is a device that displays data output from the security design program on a screen. The display 15 is, for example, an LCD. "LCD" is an abbreviation for Liquid Crystal Display.

安全設計程式從記憶體12讀入到處理器11,利用處理器11予以執行。在記憶體12中不僅記憶安全設計程式,也記憶OS。「OS」為Operating System(作業系統)的簡稱。處理器11一邊執行OS、一邊執行安全設計程式。又,將安全設計程式的一部分或全部編入到OS內亦可。The security design program is read from the memory 12 to the processor 11 and executed by the processor 11. The memory 12 stores not only the security design program but also the OS. "OS" is an abbreviation for Operating System. The processor 11 executes an OS and executes a security design program. In addition, part or all of the security design program may be incorporated into the OS.

安全設計程式及OS記憶在輔助記憶裝置亦可。輔助記憶裝置例如為HDD、快閃記憶體或此等的組合。「HDD」為Hard Disk Drive(硬碟裝置)的簡稱。在安全設計程式及OS記憶在輔助記憶裝置的情況下,將其裝載到記憶體12,利用處理器11予以執行。The safety design program and OS can also be stored in the auxiliary memory device. The auxiliary memory device is, for example, an HDD, a flash memory, or a combination thereof. "HDD" is short for Hard Disk Drive. When the security design program and the OS are stored in the auxiliary memory device, they are loaded into the memory 12 and executed by the processor 11.

安全設計裝置10包括取代處理器11之多個處理器亦可。此等多個處理器分擔安全設計程式的執行。各處理器例如為CPU。The security design device 10 may include a plurality of processors instead of the processor 11. These multiple processors share the execution of the security design program. Each processor is, for example, a CPU.

根據安全設計程式所利用、處理或輸入的資料、資訊、訊號值及變數值記憶在記憶體12、輔助記憶裝置、或處理器11內的暫存器或快取記憶體。According to the data, information, signal value and variable value used, processed or input by the security design program, it is stored in the memory 12, the auxiliary memory device, or the register or cache memory in the processor 11.

安全設計程式為將藉由對策導入部21及冗長性檢查部23所進行的處理分別作為對策導入處理及冗長性檢查處理,使其等在電腦上執行之程式。安全設計程式為記錄在電腦可讀取的媒體後被提供亦可,儲存在記錄媒體後被提供亦可,作為程式產品被提供亦可。程式產品不限定於眼睛看到的形式之物品,其為裝載電腦可讀取的程式者。The safety design program is a program that executes the processing performed by the countermeasure introduction unit 21 and the redundancy check unit 23 as a countermeasure introduction process and a redundancy check process, respectively, and executes them on a computer. The security design program may be provided after being recorded in a computer-readable medium, or may be provided after being stored in a recording medium, or may be provided as a program product. The program product is not limited to an item in the form of eyes, it is a computer-readable program.

安全設計裝置10利用1台電腦予以構成亦可,利用多台電腦構成亦可。在安全設計裝置10為利用多台電腦構成的情況下,將對策導入部21及冗長性檢查部23的機能分散到各電腦後予以實現亦可。The security design device 10 may be configured by a single computer, or may be configured by a plurality of computers. In the case where the safety design device 10 is configured using a plurality of computers, the functions of the countermeasure introduction unit 21 and the redundancy check unit 23 may be realized by distributing the functions to the computers.

在第2圖顯示安全資料庫22的構成例。An example of the configuration of the security database 22 is shown in FIG. 2.

安全資料庫22為定義用以處置各種威脅而執行的多個安全處理之資料庫。安全資料庫22構成為網羅所有預測性的威脅。作為威脅的例示可以舉例如竄改及竊聽。各自的安全處理成為對威脅的對策,發揮安全機能。作為安全機能的例示,可以舉例如竄改檢測、加密與解密、以及認證。針對各安全機能保持有要處置的威脅及處理等級的導入處之定義。即,安全資料庫22針對多個安全處理的每個,定義導入處、及藉由導入到該導入處之安全處理所處置的威脅。The security database 22 is a database defining a plurality of security processes performed to deal with various threats. The security database 22 is constructed to capture all predictive threats. Examples of threats include tampering and eavesdropping. Each security process becomes a countermeasure against threats and exerts its security function. Examples of the security function include tamper detection, encryption and decryption, and authentication. For each security function, the definition of the place where the threat to be dealt with and the level of handling are maintained. That is, the security database 22 defines a lead-in place for each of a plurality of security processes, and a threat handled by the security process introduced into the lead-in place.

又,在第2圖中雖然記載了根據自然語言之定義的例示,但是根據以程式或模型可易於解釋的形式之定義也適用。In addition, although the illustration based on the definition of natural language is shown in FIG. 2, the definition based on the form which can be easily interpreted by a program or a model is also applicable.

***動作說明***
參照第3圖,說明有關本實施形態之安全設計裝置10的動作。安全設計裝置10的動作相當於有關本實施形態之安全設計方法。
*** Action description ***
The operation of the safety design device 10 according to this embodiment will be described with reference to FIG. 3. The operation of the safety design device 10 corresponds to the safety design method according to this embodiment.

使用者可以使用模型在不考量安全下進行軟體設計。Users can use models to design software without considering security.

在步驟S101中,將根據使用者所作成的輸入模型M1輸入到安全設計裝置10。In step S101, an input model M1 created by a user is input to the safety design device 10.

在步驟S102中,對策導入部21將輸入模型M1作為更新用模型M2保存在記憶體12。對策導入部21以安全資料庫22為基準,對於更新用模型M2在所有位置追加可導入的安全機能。In step S102, the countermeasure import unit 21 stores the input model M1 as the update model M2 in the memory 12. The countermeasure introduction unit 21 uses the safety database 22 as a reference, and adds an importable safety function to the update model M2 at all positions.

如此一來,對策導入部21對於使用者作成的輸入模型M1自動導入安全機能。但是利用對策導入部21所追加的機能在藉由後述的冗長性檢查部23的檢查結果判斷為冗長機能時,予以刪除。又,輸入模型M1及更新用模型M2等模型在本實施形態中,其為如流程圖之處理流程等級之模型。In this way, the countermeasure introduction unit 21 automatically introduces a safety function to the input model M1 created by the user. However, the function added by the countermeasure introduction unit 21 is deleted when it is judged to be a redundant function by the inspection result of the redundancy inspection unit 23 described later. In addition, models such as the input model M1 and the update model M2 are models of a processing flow level such as a flowchart in this embodiment.

在安全資料庫22中儲存有對策導入部21在對更新用模型M2導入安全機能時所使用的資訊。The safety database 22 stores information used by the countermeasure introduction unit 21 when introducing a safety function to the update model M2.

在步驟S103中,冗長性檢查部23進行模型檢查。具體而言,冗長性檢查部23確認更新用模型M2之冗長性的有無。In step S103, the redundancy check unit 23 performs a model check. Specifically, the redundancy check unit 23 confirms the presence or absence of redundancy of the update model M2.

在步驟S104中,若無冗長性,在步驟S105中,對策導入部21將該時點的更新用模型M2作為輸出模型M3予以輸出。接著,結束處理。In step S104, if there is no redundancy, in step S105, the countermeasure introduction unit 21 outputs the update model M2 at that time as the output model M3. Then, the process ends.

在步驟S104中,若有冗長性,在步驟S106中,冗長性檢查部23從冗長的安全機能之中刪除1個。接著,在步驟S103中,冗長性檢查部23再次進行模型檢查。If there is redundancy in step S104, the redundancy check unit 23 deletes one from the redundancy safety function in step S106. Next, in step S103, the redundancy check unit 23 performs a model check again.

如此一來,冗長性檢查部23對於更新用模型M2驗證安全機能的冗長性。作為驗證方法,在本實施形態中使用確認多個安全機能連續位於同一處情況下對於要處置的威脅是否重複的方法。又,在同一模型中確認相同的安全機能是否包含必要以上的方法、將作成的模型進行形式語言的轉換後驗證冗長性的方法、或是使用其他方法亦可。In this way, the redundancy check unit 23 verifies the redundancy of the safety function with respect to the update model M2. As a verification method, in this embodiment, a method of confirming whether or not a plurality of security functions are continuously located at the same place with respect to a threat to be treated is repeated. In addition, it is also possible to confirm whether the same safety function includes the above-mentioned methods in the same model, a method of verifying the redundancy after converting the created model into a formal language, or other methods.

反覆進行以上的處理直到可以確認完全沒有冗長性,在處理等級中將已實施脆弱性對策之模型作為輸出模型M3予以輸出。The above processing is repeated until it is confirmed that there is no redundancy at all, and the model in which the vulnerability countermeasure has been implemented is output as the output model M3 in the processing level.

使用第4圖所示的處理模型變化例,說明本實施形態之安全機能的追加及刪除之順序。A modification example of the processing model shown in FIG. 4 will be used to explain the procedure of adding and deleting the security function of this embodiment.

在此,假設將簡單的流程圖作為處理模型進行作成及輸出。使用者在不考慮安全機能下作成輸入模型M1。其中作為例示予以顯示的輸入模型M1為簡易的現場機器之控制軟體的模型。該輸入模型M1為控制軟體在啟動機器後,接收到停止指令作為輸入情況下,使機器停止後就結束的處理模型。Here, it is assumed that a simple flowchart is created and output as a processing model. The user creates the input model M1 without considering the safety function. Among them, the input model M1 displayed as an example is a model of a simple control software of a field device. This input model M1 is a processing model in which the control software stops the machine when it receives a stop command as an input after starting the machine.

對策導入部21將輸入模型M1、與第2圖的安全資料庫22進行比對,導入所有可導入的安全機能。藉此,得到更新用模型M2。冗長性檢查部23對於更新用模型M2進行模型檢查。冗長性檢查部23在確認到有冗長性時,決定要刪除的候補。其中,作為冗長性的確認方法,使用多個安全機能位於同一處情況下之確認要處置的威脅有無重複的方法。The countermeasure importing unit 21 compares the input model M1 and the safety database 22 in FIG. 2 to import all importable safety functions. Thereby, the update model M2 is obtained. The redundancy check unit 23 performs a model check on the update model M2. The redundancy check unit 23 determines a candidate to be deleted when it is confirmed that there is redundancy. Among them, as a verbose confirmation method, a method for confirming whether there is a duplication of a threat to be treated when multiple security functions are located at the same place is used.

在安全資料庫22中,以導入處為「啟動後」及「輸入前」的方式,針對各處理加以規定。在將機能導入到實際的模型之情況下,會有像是在更新用模型M2之從啟動後到輸入前之間,即使在安全資料庫22上為不同處但在同一處追加2個以上的機能之情況。In the safety database 22, each process is defined so that the introduction point is "after startup" and "before input". When the function is imported into the actual model, there may be a case where the update model M2 is added from the start to the input of the model, and the safety database 22 is different, but two or more are added in the same place. Functional condition.

在本例示中,更新用模型M2在啟動後輸入前之間有安全處理P1及安全處理P2、在輸入後分歧前之間有安全處理P3及安全處理P4、在分歧後停止前之間有安全處理P5及安全處理P6。安全處理P1、安全處理P2、安全處理P3、安全處理P4、安全處理P5及安全處理P6分別為具有安全1、安全2、安全3、安全4、安全5及安全6的機能之處理。In this example, the update model M2 has a security process P1 and a security process P2 before the input after the start, and a security process P3 and a security process P4 before the divergence after the input. Process P5 and securely process P6. The security processing P1, security processing P2, security processing P3, security processing P4, security processing P5, and security processing P6 are processings having functions of security 1, security 2, security 3, security 4, security 5, and security 6, respectively.

根據第2圖的安全資料庫22,在成為威脅3的對策之機能中有安全3、安全4及安全6。在本例示中,與其等對應的安全處理P3、安全處理P4及安全處理P6之中,安全處理P3與安全處理P4為在同一位置連續。因此,認為一方為不要的。冗長性檢查部23從更新用模型M2刪除安全處理P4。藉此,得到輸出模型M3。According to the security database 22 in FIG. 2, there are security 3, security 4 and security 6 as functions for countermeasures against threat 3. In this example, among the corresponding security processes P3, P4, and P6, the security process P3 and the security process P4 are continuous at the same position. Therefore, one side is considered unnecessary. The redundancy check unit 23 deletes the security process P4 from the update model M2. Thereby, an output model M3 is obtained.

又,在本例示中,冗長性檢查部23在比較2個安全機能時,雖然是比較在安全資料庫22的位置,刪除位於下方的機能,但是刪除位於上方的機能亦可。或者,冗長性檢查部23在比較2個安全機能時,刪除更新用模型M2的執行順序為先之機能亦可,刪除更新用模型M2的執行順序為後之機能亦可。Moreover, in this example, when comparing the two safety functions, the redundancy check unit 23 deletes the functions located below, but deletes the functions located above. Alternatively, when comparing the two safety functions, the redundancy check unit 23 may delete the execution order of the update model M2 as the first function, or delete the execution order of the update model M2 as the next function.

如以上說明所示,在對策導入部21中,輸入定義程式的處理順序之輸入模型M1。對策導入部21在輸入輸入模型M1時,參照安全資料庫22,從根據安全資料庫22所定義之多個安全處理之中,選擇導入到根據輸入模型M1所定義的處理順序之1個以上的安全處理。對策導入部21輸出定義導入有已選擇的安全處理後之程式的處理順序之輸出模型M3。「程式」在本實施形態中雖然是現場機器的控制程式,但是其為車載機器的控制程式等任意種類的程式亦可。As described above, the countermeasure introduction unit 21 inputs an input model M1 that defines a processing procedure of a program. The countermeasure import unit 21 refers to the safety database 22 when inputting the input model M1, and selects and imports from one of a plurality of security processes defined by the safety database 22 into one or more of the processing sequences defined by the input model M1. Safe handling. The countermeasure importing unit 21 outputs an output model M3 that defines a processing sequence in which the selected security processing program is introduced. Although the "program" in this embodiment is a control program for a field device, it may be any type of program such as a control program for a vehicle-mounted device.

在本實施形態中,「1個以上的安全處理」為根據安全資料庫22所定義的導入處存在於根據輸入模型M1所定義的處理順序之中的安全處理。在第4圖的例示中,「1個以上的安全處理」為安全處理P1、安全處理P2、安全處理P3、安全處理P4、安全處理P5及安全處理P6。In the present embodiment, the “one or more security processes” are security processes in which the import location defined by the security database 22 exists in the processing sequence defined by the input model M1. In the example shown in FIG. 4, “one or more security processes” are security process P1, security process P2, security process P3, security process P4, security process P5, and security process P6.

冗長性檢查部23在根據對策導入部21所選擇的安全處理之中,確認是否在程式的處理順序之導入處為重複,而且用以處置相同威脅而執行的安全處理包含2個以上。在包含那樣的2個以上之安全處理時,冗長性檢查部23將該等2個以上的安全處理之中的至少1個安全處理從對根據輸出模型M3所定義的處理順序之導入對象排除。冗長性檢查部23在本實施形態中為將「2個以上的安全處理」之中1個以外的安全處理作為「至少1個安全處理」從導入對象排除。The redundancy check unit 23 confirms whether the security processing selected by the countermeasure introduction unit 21 is duplicated in the processing sequence of the program, and includes two or more security processes executed to deal with the same threat. When two or more such security processes are included, the redundancy check unit 23 excludes at least one of the two or more security processes from the import target of the processing order defined by the output model M3. In the present embodiment, the redundancy check unit 23 excludes security processes other than one of the “two or more security processes” from the object of introduction as “at least one security process”.

在本實施形態中,「2個以上的安全處理」為在程式的處理順序之中連續執行,而且根據安全資料庫22所定義之威脅為一致之安全處理。在第4圖的例示中,「2個以上的安全處理」為利用第2圖的安全資料庫22對應威脅3之安全處理P3及安全處理P4。In this embodiment, the "two or more security processes" are continuously executed in the processing sequence of the program, and are consistent security processes based on the threats defined by the security database 22. In the illustration in FIG. 4, the “two or more security processes” are the security process P3 and the security process P4 corresponding to threat 3 using the security database 22 in FIG. 2.

在本實施形態中,冗長性檢查部23藉由安全資料庫22之「2個以上的安全處理」的登錄位置,決定是否從導入對象排除「2個以上的安全處理」的各個。在第4圖的例示中,冗長性檢查部23將安全處理P3及安全處理P4之中在第2圖的安全資料庫22位於下方的安全處理P4從導入對象排除。In the present embodiment, the redundancy check unit 23 determines whether or not to exclude each of the "two or more security processes" from the introduction target based on the registered position of "two or more security processes" in the security database 22. In the example shown in FIG. 4, the redundancy check unit 23 excludes the security process P4 that is located below the security database 22 in FIG. 2 among the security processes P3 and P4 from the import target.

又,冗長性檢查部23藉由程式的處理順序之「2個以上的安全處理」的執行順序,決定是否從導入對象排除「2個以上的安全處理」的各個亦可。在第4圖的例示中,認為是冗長性檢查部23將安全處理P3及安全處理P4之中為後執行的安全處理P4從導入對象排除亦可。In addition, the redundancy check unit 23 may determine whether or not to exclude each of the "two or more secure processes" from the object of introduction based on the execution order of the "two or more secure processes" in the processing order of the program. In the example shown in FIG. 4, it is considered that the redundancy check unit 23 may exclude the security process P4 that is executed later from the security process P3 and the security process P4 from the import target.

參照第5圖及第6圖,說明本實施形態的變形例。A modification of this embodiment will be described with reference to Figs. 5 and 6.

在第2圖的安全資料庫22中,雖然以「啟動後」及「停止前」的方式將安全導入處狹義規定,但是在第5圖的安全資料庫22中,以安全3的導入處「啟動以後~停止以前」的方式,可以將導入處廣義規定。In the safety database 22 in FIG. 2, the safety introduction place is narrowly defined as “after startup” and “before stopping”, but in the safety database 22 in FIG. 5, the safety introduction place “ After the start-to-stop "method, the introduction can be broadly defined.

使用第6圖所示之處理模型變化例,說明該變形例之安全機能的追加及刪除之順序。A modification example of the processing model shown in FIG. 6 will be used to explain the procedure of adding and deleting the security function of the modification example.

與第4圖的例示相同,當對於輸入模型M1在所有處導入機能時,可以得到第6圖的更新用模型M2。該更新用模型M2在啟動後到輸入前之間有安全處理P1、安全處理P2及安全處理P3a,在輸入後到分歧前之間有安全處理P3b及安全處理P4,在分歧後到停止前之期間有安全處理P3c、安全處理P5及安全處理P6。安全處理P3a、安全處理P3b及安全處理P3c都是具有安全3的機能之處理。針對安全處理P1、安全處理P2、安全處理P4、安全處理P5及安全處理P6為與第4圖的例示相同之處理。Similarly to the example illustrated in FIG. 4, when the function is introduced in all places for the input model M1, the update model M2 in FIG. 6 can be obtained. This update model M2 has a security process P1, a security process P2, and a security process P3a between startup and before input, and a security process P3b and security process P4 between input and before divergence. During this period, there are security processing P3c, security processing P5, and security processing P6. The security process P3a, the security process P3b, and the security process P3c are all processes having the function of security 3. The security process P1, security process P2, security process P4, security process P5, and security process P6 are the same processes as those illustrated in FIG. 4.

根據第5圖的安全資料庫22,在成為威脅3的對策中有安全3、安全4及安全6。在該變形例中,與該等對應之安全處理P3a、安全處理P3b、安全處理P3c、安全處理P4及安全處理6之中,安全處理P3b與安全處理4在同一位置連續。為此,認為一方為不要的。冗長性檢查部23從更新用模型M2刪除安全處理4。又,安全處理P3c與安全處理6在同一位置連續。為此,認為一方為不要的。冗長性檢查部23從更新用模型M2刪除安全處理6。藉此,得到第6圖的輸出模型M3。According to the security database 22 in FIG. 5, the countermeasures against threat 3 include security 3, security 4, and security 6. In this modification, among the corresponding security process P3a, security process P3b, security process P3c, security process P4, and security process 6, the security process P3b and the security process 4 are continuous at the same position. For this reason, one side is considered unnecessary. The redundancy check unit 23 deletes the security process 4 from the update model M2. The security process P3c and the security process 6 are continuous at the same position. For this reason, one side is considered unnecessary. The redundancy check unit 23 deletes the security process 6 from the update model M2. Thereby, the output model M3 of FIG. 6 is obtained.

***實施形態的效果說明***
在本實施形態中,從根據安全資料庫22所定義的多個安全處理之中,選擇1個以上要導入的安全處理。在已選擇的安全處理之中,若利用處理等級的導入處為重複,而且用以處置相同威脅而執行的安全處理包含2個以上時,將該等2個以上的安全處理之中的至少1個安全處理從導入對象排除。因此,根據本實施形態,能夠利用處理等級有效導入安全機能。
*** Explanation of the effect of the implementation ***
In this embodiment, one or more security processes to be imported are selected from a plurality of security processes defined by the security database 22. In the selected security processing, if the introduction level of the processing level is duplicated and the security processing performed to deal with the same threat includes two or more, at least one of the two or more security processings This security process is excluded from the import object. Therefore, according to this embodiment, it is possible to effectively introduce the safety function using the processing level.

在本實施形態中,對輸入模型M1將依據安全資料庫22可導入的安全機能全部導入,再以模型檢查為基準,反覆進行安全機能的刪除。根據本實施形態,藉由不特定脆弱性處導入安全機能,在處理流程的等級中可以不重複且在適當處導入適當的安全機能。In the present embodiment, all the security functions that can be imported based on the security database 22 are imported into the input model M1, and the security function is repeatedly deleted based on the model check. According to this embodiment, by introducing a safety function at an unspecified vulnerability, an appropriate safety function can be introduced at an appropriate place without duplication in the level of the processing flow.

***其他構成***
在本實施形態中,雖然對策導入部21及冗長性檢查部23的機能為藉由軟體予以實現,但是作為其他構成例,將對策導入部21及冗長性檢查部23的機能藉由軟體與硬體的組合予以實現亦可。即,對策導入部21及冗長性檢查部23的機能的一部分藉由專用的硬體予以實現,其餘部分藉由軟體予以實現亦可。
*** Other constructions **
In this embodiment, the functions of the countermeasure introduction unit 21 and the redundancy check unit 23 are implemented by software, but as another configuration example, the functions of the countermeasure introduction unit 21 and the redundancy check unit 23 are implemented by software and hardware. It is also possible to realize the combination of the bodies. That is, a part of the functions of the countermeasure introduction unit 21 and the redundancy check unit 23 may be realized by dedicated hardware, and the rest may be realized by software.

專用硬體例如為單一電路、複合電路、可程式化處理器、可平行程式化處理器、邏輯IC、GA、FPGA、ASIC、或此等之中的幾個或者所有的組合。「IC」為Integrated Circuit(積體電路)的簡稱。「GA」為Gate Array(閘陣列)的簡稱。「FPGA」為Field-Programmable Gate Array(現場可程式化閘陣列)的簡稱。「ASIC」為Application Specific Integrated Circuit(特殊應用積體電路)的簡稱。The dedicated hardware is, for example, a single circuit, a composite circuit, a programmable processor, a parallel programmable processor, a logic IC, a GA, an FPGA, an ASIC, or several or all combinations thereof. "IC" is an abbreviation for Integrated Circuit. "GA" is short for Gate Array. "FPGA" is short for Field-Programmable Gate Array. "ASIC" is an abbreviation for Application Specific Integrated Circuit.

處理器11及專用硬體都是處理電路。即,不論對策導入部21及冗長性檢查部23的機能為藉由軟體予以實現、或是藉由軟體與硬體的組合予以實現,對策導入部21及冗長性檢查部23的動作都是利用處理電路予以進行。The processor 11 and dedicated hardware are processing circuits. That is, regardless of whether the functions of the countermeasure introduction unit 21 and the redundancy check unit 23 are implemented by software or a combination of software and hardware, the operations of the countermeasure introduction unit 21 and the redundancy check unit 23 are used. The processing circuit proceeds.

實施形態2.
針對本實施形態,使用第7圖至第9圖主要說明與實施形態1的差異。
Embodiment 2.
Regarding this embodiment, the differences from Embodiment 1 will be mainly described using FIGS. 7 to 9.

***構成說明***
針對有關本實施形態之安全設計裝置10的構成,由於與第1圖所示之實施形態1者相同,因此省略說明。
*** Composition Explanation ***
The configuration of the safety design device 10 according to this embodiment is the same as that of the first embodiment shown in FIG. 1, and therefore description thereof is omitted.

在第7圖顯示安全資料庫22的構成例。An example of the structure of the security database 22 is shown in FIG.

安全資料庫22與實施形態1相同,其為定義用以處置各個威脅而執行的多個安全處理之資料庫。在本實施形態中,針對各安全機能除了處置的威脅與處理等級的導入處之定義外,也保持有優先順位的定義。即,在本實施形態中,安全資料庫22針對多個安全處理之中的至少一部分安全處理定義優先順位。The security database 22 is the same as the first embodiment, and is a database defining a plurality of security processes performed to deal with each threat. In this embodiment, in addition to the definitions of the threats to be handled and the introduction points of the processing levels, the definitions of the priorities are maintained. That is, in the present embodiment, the security database 22 defines a priority order for at least a part of a plurality of security processes.

又,在第7圖中,雖然記載了根據自然語言的定義之例示,但是根據以程式或模型可易於解釋的形式之定義亦適用。In addition, in FIG. 7, an example based on the definition of natural language is described, but the definition based on a form that can be easily interpreted by a program or a model is also applicable.

***動作說明***
參照第8圖,說明有關本實施形態之安全設計裝置10的動作。安全設計裝置10的動作相當於有關本實施形態之安全設計方法。
*** Action description ***
The operation of the safety design device 10 according to this embodiment will be described with reference to FIG. 8. The operation of the safety design device 10 corresponds to the safety design method according to this embodiment.

針對從步驟S201至步驟S205的處理,由於與實施形態1中之步驟S101至步驟S105的處理相同,因此省略說明。Since the processing from step S201 to step S205 is the same as the processing from step S101 to step S105 in the first embodiment, the description is omitted.

在步驟S204中有冗長性,在步驟S206中成為刪除候補的安全機能只有1個的話,在步驟S207中冗長性檢查部23刪除該安全機能。接著,在步驟S203中,冗長性檢查部23再次進行模型檢查。If there is redundancy in step S204, if there is only one safety function that is a candidate for deletion in step S206, the redundancy function check unit 23 deletes the safety function in step S207. Next, in step S203, the redundancy check unit 23 performs a model check again.

在步驟S204中有冗長性,在步驟S206中成為刪除候補的安全機能為多個的話,在步驟S208中,冗長性檢查部23選擇優先順位為低的刪除候補。在步驟S207中冗長性檢查部23刪除已選擇的安全機能。接著,在步驟S203中,冗長性檢查部23再次進行模型檢查。If there is redundancy in step S204, and if there are multiple safety functions that are candidates for deletion in step S206, then in step S208, the redundancy check unit 23 selects deletion candidates with a low priority. In step S207, the redundancy check unit 23 deletes the selected safety function. Next, in step S203, the redundancy check unit 23 performs a model check again.

反覆進行以上的處理直到可以確認完全沒有冗長性,在處理等級中將已實施脆弱性對策之模型作為輸出模型M3予以輸出。The above processing is repeated until it is confirmed that there is no redundancy at all, and the model in which the vulnerability countermeasure has been implemented is output as the output model M3 in the processing level.

使用第9圖所示之處理模型的變化例,說明本實施形態之安全機能的追加及刪除之順序。A modification example of the processing model shown in FIG. 9 will be used to explain the order of adding and deleting the security function of this embodiment.

其中,假設是作成及輸出對與第4圖的例示相同之輸入模型M1導入安全的模型。Here, it is assumed that a safe model is created and introduced into the input model M1 which is the same as the example illustrated in FIG. 4.

對策導入部21比對輸入模型M1及第7圖的安全資料庫22,導入所有可導入的安全機能。藉此,得到更新用模型M2。冗長性檢查部23對於更新用模型M2進行模型檢查。若冗長性檢查部23確認為有冗長性時,決定刪除的候補。其中,與第4圖的例示相同,作為冗長性的確認方法,使用在多個安全機能位於相同處情況下之確認要處置的威脅有無重複之方法。The countermeasure introduction unit 21 compares the input model M1 and the safety database 22 in FIG. 7 and imports all safety functions that can be imported. Thereby, the update model M2 is obtained. The redundancy check unit 23 performs a model check on the update model M2. When the redundancy check unit 23 confirms that there is redundancy, the candidate for deletion is determined. Among them, as in the example shown in FIG. 4, as a method for confirming redundancy, a method for confirming whether there is a duplication of threats to be handled when a plurality of security functions are located at the same place is used.

在本例示中,與第4圖的例示相同,更新用模型M2在啟動後輸入前之間有安全處理P1及安全處理P2、在輸入後分歧前之間有安全處理P3及安全處理P4、在分歧後停止前之間有安全處理P5及安全處理P6。安全處理P1、安全處理P2、安全處理P3、安全處理P4、安全處理P5及安全處理P6分別為具有安全1、安全2、安全3、安全4、安全5及安全6的機能之處理。In this example, similar to the illustration in FIG. 4, the update model M2 has a security process P1 and a security process P2 before the input after the start, and a security process P3 and a security process P4 between the inputs before the divergence. After the disagreement, there are security processing P5 and security processing P6. The security processing P1, security processing P2, security processing P3, security processing P4, security processing P5, and security processing P6 are processings having functions of security 1, security 2, security 3, security 4, security 5, and security 6, respectively.

根據第7圖的安全資料庫22,對於成為威脅3的對策之機能有安全3、安全4及安全6。在本例示中,在與該等對應之安全處理P3、安全處理P4及安全處理P6之中,安全處理P3及安全處理P4在同一位置連續。為此,認為一方為不要的。根據第7圖的安全資料庫22,由於安全3及安全4的優先順位分別為「2」及「1」,因此安全處理4的優先順位為高。因此,與第4圖的例示不同,冗長性檢查部23從更新用模型M2刪除安全處理P3。藉此,得到輸出模型M3。According to the security database 22 in FIG. 7, there are security 3, security 4 and security 6 as functions of countermeasures against threat 3. In this example, among the corresponding security processes P3, P4, and P6, the security process P3 and the security process P4 are continuous at the same position. For this reason, one side is considered unnecessary. According to the security database 22 in FIG. 7, since the priority order of security 3 and security 4 is “2” and “1”, respectively, the priority order of security process 4 is high. Therefore, unlike the example illustrated in FIG. 4, the redundancy check unit 23 deletes the security process P3 from the update model M2. Thereby, an output model M3 is obtained.

如此一來,在安全資料庫22中保持有多個可處置相同威脅的機能,而且該等機能在處理上被追加到同一位置的情況下,在第4圖的例示中,留下在安全資料庫22中位於上方的安全機能,刪除另一個,但是在本例示中則是刪除優先順位為低的安全機能。In this way, in the case where multiple functions capable of dealing with the same threat are maintained in the security database 22, and these functions are added to the same position in processing, the security information is left in the illustration in FIG. 4 The upper security function in the library 22 is deleted, but in this example, the security function with a low priority is deleted.

如以上說明所示,在本實施形態中,冗長性檢查部23藉由根據安全資料庫22所定義的優先順位,決定是否從導入對象排除「2個以上的安全機能」的各個。在第9圖的例示中,冗長性檢查部23將安全處理P3及安全處理P4之中利用第7圖的安全資料庫22優先順位為低的安全處理P3從導入對象排除。As described above, in the present embodiment, the redundancy check unit 23 determines whether or not to exclude each of the "two or more safety functions" from the object of introduction based on the priority defined by the safety database 22. In the example shown in FIG. 9, the redundancy check unit 23 excludes the security process P3 that has a low priority from the security process P3 and the security process P4 using the security database 22 of FIG. 7 from the import target.

***實施形態的效果說明***
在本實施形態中,對輸入模型M1將依據安全資料庫22可導入的安全機能全部導入,再以模型檢查及優先順位為基準,反覆進行安全機能的刪除。根據本實施形態,藉由不特定脆弱性處導入安全機能,在處理流程的等級中可以不重複且在適當處導入適當的安全機能。
*** Explanation of the effect of the implementation ***
In this embodiment, all the security functions that can be imported according to the security database 22 are imported into the input model M1, and the security functions are repeatedly deleted based on the model check and priority order. According to this embodiment, by introducing a safety function at an unspecified vulnerability, an appropriate safety function can be introduced at an appropriate place without duplication in the level of the processing flow.

實施形態3.
針對本實施形態,使用第10圖至第13圖主要說明與實施形態1的差異。
Embodiment 3.
Regarding this embodiment, the differences from Embodiment 1 will be mainly described using FIGS. 10 to 13.

***構成說明***
參照第10圖,說明有關本實施形態之安全設計裝置10的構成。
*** Composition Explanation ***
The configuration of the safety design device 10 according to this embodiment will be described with reference to FIG. 10.

安全設計裝置10除了對策導入部21、安全資料庫22及冗長性檢查部23之外,包括評估部24。對策導入部21、冗長性檢查部23及評估部24的機能藉由軟體予以實現。The safety design device 10 includes an evaluation unit 24 in addition to the countermeasure introduction unit 21, the safety database 22, and the redundancy check unit 23. The functions of the countermeasure introduction unit 21, the redundancy check unit 23, and the evaluation unit 24 are realized by software.

在第11圖顯示安全資料庫22的構成例。An example of the configuration of the security database 22 is shown in FIG. 11.

安全資料庫22與實施形態1相同,其為定義用以處置各個威脅而執行的多個安全處理之資料庫。在本實施形態中,針對各安全機能除了要處置的威脅與處理等級中的導入處之定義之外,也保持有機能導入所需成本之定義。即,在本實施形態中,安全資料庫22針對多個安全處理之每個定義成本。就成本的例示而言,舉例如加密長度、及安全機能執行所需時間。在安全資料庫22中,保持有多種類的成本定義亦可。The security database 22 is the same as the first embodiment, and is a database defining a plurality of security processes performed to deal with each threat. In this embodiment, in addition to the definition of the introduction point in the threat to be handled and the processing level for each safety function, the definition of the cost required for the introduction of the energy can also be maintained. That is, in this embodiment, the security database 22 defines a cost for each of a plurality of security processes. Examples of costs include, for example, the encryption length and the time required for the security function to execute. In the security database 22, various types of cost definitions may be maintained.

又,在第11圖中,雖然記載了根據自然語言的定義之例示,但是根據以程式或模型可易於解釋的形式之定義亦適用。In addition, in FIG. 11, although an example based on the definition of natural language is described, the definition based on a form that can be easily interpreted by a program or a model is also applicable.

***動作說明***
參照第12圖,說明有關本實施形態之安全設計裝置10的動作。安全設計裝置10的動作相當於有關本實施形態之安全設計方法。
*** Action description ***
The operation of the safety design device 10 according to this embodiment will be described with reference to FIG. 12. The operation of the safety design device 10 corresponds to the safety design method according to this embodiment.

在步驟S300中,評估部24依據性能及安全等、設計對象之模型中的使用者要求,設定及定義從成本算出的評估值,並且登錄在安全資料庫22。所謂性能為整體的處理速度。In step S300, the evaluation unit 24 sets and defines an evaluation value calculated from the cost according to a user request in the design target model such as performance and safety, and registers the evaluation value in the safety database 22. The so-called performance is the overall processing speed.

針對從步驟S301至步驟S305的處理,由於與實施形態1中的步驟S101至步驟S105之處理相同,因此省略說明。Since the processing from step S301 to step S305 is the same as the processing from step S101 to step S105 in the first embodiment, the description is omitted.

在步驟S304中有冗長性,在步驟S306中成為刪除候補的安全機能只有1個的話,在步驟S307中冗長性檢查部23刪除該安全機能。接著,在步驟S303中,冗長性檢查部23再次進行模型檢查。If there is redundancy in step S304, and if there is only one safety function that is a candidate for deletion in step S306, the redundancy function check unit 23 deletes the safety function in step S307. Next, in step S303, the redundancy check unit 23 performs a model check again.

在步驟S304中有冗長性,在步驟S306中成為刪除候補的安全機能為多個的話,在步驟S308中評估部24算出刪除各候補情況的評估值。具體而言,評估部24以保持在安全資料庫22之成本定義為基準,算出導入有安全機能之模型的評估值。就評估的例示而言,可以舉例如性能及安全強度的確認等。評估值為成本的單純加算值或乘算值亦可,根據使用者獨立定義的函數而求出的值亦可。冗長性檢查部23比較在評估部24所算出之模型的評估值,選擇評估值為低的刪除候補。在步驟S307中冗長性檢查部23刪除已選擇的安全機能。接著,在步驟S303中,冗長性檢查部23再次進行模型檢查。There is redundancy in step S304, and if there are multiple security functions that are candidates for deletion in step S306, the evaluation unit 24 calculates an evaluation value for deleting each candidate in step S308. Specifically, the evaluation unit 24 calculates an evaluation value of a model into which the safety function is introduced based on the cost definition held in the safety database 22. Examples of evaluation include confirmation of performance and safety strength. The evaluation value may be a simple addition value or a multiplication value of the cost, or a value obtained by a function independently defined by the user. The redundancy check unit 23 compares the evaluation values of the models calculated by the evaluation unit 24 and selects deletion candidates with low evaluation values. In step S307, the redundancy check unit 23 deletes the selected safety function. Next, in step S303, the redundancy check unit 23 performs a model check again.

反覆進行以上的處理直到可以確認完全沒有冗長性,在處理等級中將已實施脆弱性對策之模型作為輸出模型M3予以輸出。The above processing is repeated until it is confirmed that there is no redundancy at all, and the model in which the vulnerability countermeasure has been implemented is output as the output model M3 in the processing level.

使用第13圖所示之處理模型的變化例,說明本實施形態之安全機能的追加及刪除之順序。A modification example of the processing model shown in FIG. 13 will be used to explain the order of adding and deleting the security function of this embodiment.

其中,假設是作成及輸出對與第4圖的例示相同之輸入模型M1導入安全的模型。Here, it is assumed that a safe model is created and introduced into the input model M1 which is the same as the example illustrated in FIG. 4.

對策導入部21比對輸入模型M1及第11圖的安全資料庫22,導入可導入的所有安全機能。藉此,得到更新用模型M2。冗長性檢查部23對於更新用模型M2進行模型檢查。若冗長性檢查部23確認為有冗長性時,決定刪除候補。其中,與第4圖的例示相同,作為冗長性的確認方法,使用在多個安全機能位於相同處情況下之確認要處置的威脅有無重複之方法。The countermeasure introduction unit 21 compares the input model M1 and the safety database 22 in FIG. 11 and imports all safety functions that can be imported. Thereby, the update model M2 is obtained. The redundancy check unit 23 performs a model check on the update model M2. When the redundancy check unit 23 confirms that there is redundancy, it decides to delete the candidate. Among them, as in the example shown in FIG. 4, as a method for confirming redundancy, a method for confirming whether there is a duplication of threats to be handled when a plurality of security functions are located at the same place is used.

在本例示中,與第4圖的例示相同,更新用模型M2在啟動後輸入前之間有安全處理P1及安全處理P2、在輸入後分歧前之間有安全處理P3及安全處理P4、在分歧後停止前之間有安全處理P5及安全處理P6。安全處理P1、安全處理P2、安全處理P3、安全處理P4、安全處理P5及安全處理P6分別為具有安全1、安全2、安全3、安全4、安全5及安全6的機能之處理。In this example, similar to the illustration in FIG. 4, the update model M2 has a security process P1 and a security process P2 before the input after the start, and a security process P3 and a security process P4 between the inputs before the divergence. After the disagreement, there are security processing P5 and security processing P6. The security processing P1, security processing P2, security processing P3, security processing P4, security processing P5, and security processing P6 are processings having functions of security 1, security 2, security 3, security 4, security 5, and security 6, respectively.

根據第11圖的安全資料庫22,在成為威脅3的對策之機能中有安全3、安全4及安全6。在本例示中,與該等對應之安全處理P3、安全處理P4及安全處理P6之中,安全處理P3及安全處理P4在相同位置連續。為此,認為一方為不要的。因此,就得到的模型而言認為有刪除安全處理P4之輸出模型M3a、與刪除安全處理P3之輸出模型M3b。如此一來在刪除候補為多個的情況下,評估部24將對於各候補算出使用者所定義的評估值。冗長性檢查部23採用評估值為高的模型。若使用者所定義的評估值為模型具有的安全機能之成本總和的倒數時,輸出模型M3a的評估值為1/(C1+C2+C3+C5+C6),輸出模型M3b的評估值為1/(C1+C2+C4+C5+C6)。為此,利用C3與C4的大小決定要刪除的機能。若C3<C4,冗長性檢查部23從更新用模型M2刪除安全處理P4。藉此,得到輸出模型M3a。若C3>C4,冗長性檢查部23從更新用模型M2刪除安全處理P3。藉此,得到輸出模型M3b。若C3=C4,冗長性檢查部23從更新用模型M2刪除安全處理P4亦可,刪除安全處理P3亦可。如此一來在以多個候補而使評估值成為相同值的情況下,與實施形態1相同,以安全資料庫22上的位置為基準決定要刪除的機能亦可,與實施形態2相同,以優先順位為基準決定要刪除的機能亦可。According to the security database 22 in FIG. 11, there are security 3, security 4 and security 6 as functions for countermeasures against threat 3. In this example, among the corresponding security process P3, security process P4, and security process P6, the security process P3 and security process P4 are continuous at the same position. For this reason, one side is considered unnecessary. Therefore, in terms of the obtained model, it is considered that there are an output model M3a for deleting the security process P4 and an output model M3b for deleting the security process P3. In this way, when there are a plurality of deletion candidates, the evaluation unit 24 calculates an evaluation value defined by the user for each candidate. The redundancy check unit 23 uses a model with a high evaluation value. If the user-defined evaluation value is the reciprocal of the sum of the cost of the safety functions of the model, the evaluation value of the output model M3a is 1 / (C1 + C2 + C3 + C5 + C6) and the evaluation value of the output model M3b is 1 / (C1 + C2 + C4 + C5 + C6). For this reason, the size of C3 and C4 is used to determine the function to be deleted. If C3 <C4, the redundancy check unit 23 deletes the security process P4 from the update model M2. Thereby, an output model M3a is obtained. If C3> C4, the redundancy check unit 23 deletes the security process P3 from the update model M2. Thereby, an output model M3b is obtained. If C3 = C4, the redundancy check unit 23 may delete the security process P4 from the update model M2, or delete the security process P3. In this way, when multiple candidates are used to make the evaluation value the same value, the function to be deleted is determined based on the position on the safety database 22 as the same as in the first embodiment. It is also possible to decide the function to be deleted based on the priority order.

如以上說明所示,在本實施形態中,冗長性檢查部23藉由根據安全資料庫22所定義的成本,決定是否從導入對象排除「2個以上的安全處理」的各個。在從第13圖的例示中,冗長性檢查部23將安全處理P3及安全處理P4之中利用第11圖的安全資料庫22成本為低的安全處理從導入對象排除。As described above, in the present embodiment, the redundancy check unit 23 determines whether or not to exclude each of the “two or more security processes” from the introduction target based on the cost defined by the security database 22. In the example illustrated in FIG. 13, the redundancy check unit 23 excludes the security process using the security database 22 of FIG. 11 from the import target among the security processes P3 and P4.

***實施形態之效果說明***
在本實施形態中,對輸入模型M1將依據安全資料庫22可導入的安全機能全部導入,再以模型檢查及根據成本的模型評估為基準,反覆進行安全機能的刪除。根據本實施形態,可以一邊以安全及性能面考量使用者的要求,一邊導入安全機能。可以不特定脆弱性處導入安全機能,利用模型驗證確認脆弱性的有無,同時藉由確認使用者的要求,在處理流程的等級中可以不重複且在適當處導入適當的安全機能。
*** Explanation of the effect of the implementation form ***
In this embodiment, the input model M1 is imported with all the security functions that can be imported based on the security database 22, and then the security function is repeatedly deleted based on the model check and the cost-based model evaluation. According to this embodiment, the safety function can be introduced while considering the user's requirements in terms of safety and performance. Security functions can be introduced at unspecified vulnerabilities, and the existence of vulnerabilities can be confirmed by model verification. At the same time, by confirming the user's requirements, appropriate security functions can be introduced at the appropriate level in the process flow level.

***其他構成***
在本實施形態中,與實施形態1相同,雖然對策導入部21、冗長性檢查部23及評估部24的機能是藉由軟體予以實現,但是與實施形態1之其他構成例相同,對策導入部21、冗長性檢查部23及評估部24的機能藉由軟體與硬體的組合予以實現亦可。
*** Other constructions **
In this embodiment, the functions of the countermeasure introduction unit 21, the redundancy check unit 23, and the evaluation unit 24 are implemented by software in the same manner as in the first embodiment. However, the countermeasure introduction unit is the same as the other configuration examples of the first embodiment. 21. The functions of the redundancy check section 23 and the evaluation section 24 may be realized by a combination of software and hardware.

實施形態4.
針對本實施形態,使用第14圖至第20圖主要說明與實施形態1的差異。
Embodiment 4.
Regarding this embodiment, the differences from Embodiment 1 will be mainly described using FIGS. 14 to 20.

在本實施形態中,依據模型所使用的資訊資產,群組化模型內的處理,依據安全DB導入因應包含在各群組的資訊資產重要度之安全機能。
其中,所謂資訊資產為構成模型的要件。在軟體設計所用的模型之情況下,所謂資訊資產為在模型內所使用的變數、常數、處理、程序、機能、或函數等。
又,所謂資訊資產的重要度為模型之資訊資產的價值程度。又,所謂重要度為「安全強度」、「機密性」、「完整性」、「可用性」、「脆弱性」之類的特性或屬性亦可。又,所謂重要度為性能(整體的處理速度)、執行頻率、資源(CPU‧記憶體等)的使用頻率、資源的使用時間、資源的使用量之類的特性或屬性亦可。
In this embodiment, according to the information assets used in the model, the processing in the grouping model, and the security function corresponding to the importance of the information assets included in each group is introduced in accordance with the security DB.
Among them, the so-called information assets are the elements that constitute the model. In the case of a model used in software design, the so-called information assets are variables, constants, processes, procedures, functions, or functions used in the model.
The so-called importance of information assets is the value of the information assets of the model. In addition, the so-called importance may be characteristics or attributes such as "security strength", "confidentiality", "integrity", "availability", and "fragility". In addition, characteristics or attributes such as performance (overall processing speed), execution frequency, frequency of use of resources (CPU, memory, etc.), time of use of resources, and amount of use of resources may be used.

在本實施形態中,安全DB存在複數個,各安全DB根據安全強度而保持不同的安全機能與其導入規則。
在本實施形態中,根據從威脅防禦之資訊資產的重要度分開使用安全DB22。
In the present embodiment, there are a plurality of security DBs, and each security DB maintains a different security function and its introduction rule depending on the security strength.
In this embodiment, the security DB 22 is used separately according to the importance of information assets from threat defense.

***構成說明***
第14圖為顯示有關本發明實施形態之安全設計裝置10的構成圖。
第14圖的安全設計裝置10除了由與實施形態1相同的對策導入部21、安全DB22、及冗長性檢查部23之外,還有處理分類部25構成。
*** Composition Explanation ***
Fig. 14 is a block diagram showing a safety design device 10 according to an embodiment of the present invention.
The safety design device 10 of FIG. 14 includes a processing classification unit 25 in addition to the same countermeasure introduction unit 21, safety DB 22, and redundancy check unit 23 as those in the first embodiment.

處理分類部25輸入在模型內所用的資訊資產重要度資訊L1。資訊資產重要度資訊L1為顯示在模型內所用的資訊資產之重要度。
處理分類部25參照資訊資產重要度資訊L1,依據在模型內所使用的資訊資產將模型內的處理群組化。
安全DB22定義因應資訊資產的重要度之安全處理。
對策導入部21從複數個安全處理之中,對於藉由處理分類部25群組化的處理順序選擇要導入的安全處理,對於群組化後的處理順序導入已選擇的安全處理。
The processing classification unit 25 inputs information asset importance information L1 used in the model. Information asset importance information L1 is the importance of the information assets used in the model.
The processing classification unit 25 refers to the information asset importance information L1 and groups the processes in the model based on the information assets used in the model.
The security DB22 defines a security process according to the importance of information assets.
The countermeasure introduction unit 21 selects the security process to be imported from the plurality of security processes for the processing order grouped by the processing classification unit 25, and imports the selected security process for the grouped processing order.

第15圖之安全DB22A為重要度高之資訊資產用的安全DB具體例。
第16圖之安全DB22B為重要度低之資訊資產用的安全DB具體例。
適用於重要度高的資訊資產的安全DB22A大多包含強的安全機能。
反之,適用於重要度低的資訊資產的安全DB22B包含比較弱的安全機能。
利用複個數安全DB重複保持相同機能亦可。
The security DB 22A in FIG. 15 is a specific example of a security DB for a highly important information asset.
The security DB 22B in FIG. 16 is a specific example of a security DB for a low-importance information asset.
Most of the security DB22A suitable for high-importance information assets contains strong security functions.
Conversely, the security DB22B, which is suitable for information assets of low importance, contains relatively weak security functions.
It is also possible to repeatedly maintain the same function by using a plurality of safety DBs.

作為對於處理分類部25的輸入,除了輸入模型M1,也輸入資訊資產重要度資訊L1。
資訊資產重要度資訊L1例如顯示「指令A:重要度高」「指令B:重要度低」等、包含在輸入模型M1之資訊資產及其重要度。
將資訊的重要度分類為「機密性」、「完整性」、「可用性」等複數個特性,準備分別對應的安全DB亦可。又,事前得到模型內的脆弱性資訊,將其用於資訊資產重要度的判斷亦可。
As the input to the processing classification unit 25, in addition to the model M1, the information asset importance information L1 is also input.
The information asset importance information L1 displays, for example, "command A: high importance", "command B: low importance", etc., and the information assets included in the input model M1 and their importance.
The importance of information is classified into a plurality of characteristics such as "confidentiality", "integrity", and "availability", and it is also possible to prepare corresponding security DBs. In addition, the vulnerability information in the model can be obtained beforehand, and it can also be used to judge the importance of information assets.

處理分類部25擷取出在輸入模型內使用相同資訊資產的處理,並進行群組化。
作為實現群組化的方法之例示,舉例如擷取出使用相同變數的處理之方法、或是利用資料流向進行追跡的方法。群組化後的處理可以與實施形態1等的模型相同作業,在與安全DB22對照後輸入到後段的對策導入部21及冗長性檢查部23。
The processing classification unit 25 extracts processing that uses the same information assets in the input model and performs grouping.
As an example of a method for achieving grouping, for example, a method of extracting a process using the same variable, or a method of tracking using a data flow. The processing after grouping can be performed in the same manner as the model in the first embodiment or the like, and inputted to the countermeasure introduction unit 21 and the redundancy check unit 23 in the subsequent stage after collating with the safety DB 22.

但是,在本實施形態中由於是導入因應各資訊資產的重要度之安全機能,因此也認為會減少在實施形態1~3中存在的前提之冗長性、或者冗長性不存在。因此,也有使冗長性檢查部23沒有動作或不要的可能性。However, in this embodiment, since a security function is introduced in accordance with the importance of each information asset, it is considered that the redundancy of the premise existing in Embodiments 1 to 3 or the absence of redundancy is also considered to be absent. Therefore, there is a possibility that the redundancy inspection unit 23 is not operated or unnecessary.

***概要動作說明***
使用第17圖之安全設置裝置10的概要動作之流程圖,針對實施形態4之安全機能的追加順序進行說明。
*** Outline operation description **
Using the flowchart of the outline operation of the security setting device 10 in FIG. 17, the procedure for adding the security function in the fourth embodiment will be described.

使用者使用模型,在不考慮安全性下進行軟體設計。Users use models to design software without considering security.

在步驟S401中,將已作成的輸入模型M1及資訊資產重要度資訊L1輸入到本安全設計裝置10。即,使用者除了開發對象的控制模型之外,也輸入在模型內所用之資訊資產的重要度資訊。In step S401, the created input model M1 and the information asset importance information L1 are input to the security design device 10. That is, in addition to developing the control model of the object, the user also inputs the importance information of the information assets used in the model.

在步驟S402中,安全設計裝置10將模型輸入到處理分類部25。處理分類部25依據模型內所使用的資訊資產,將包含在模型內的處理群組化,將群組化後的模型作為更新用模型M2予以輸出。In step S402, the security design device 10 inputs the model to the processing classification unit 25. The processing classification unit 25 groups the processing included in the model according to the information assets used in the model, and outputs the grouped model as the update model M2.

在步驟S403中,對策導入部21以安全DB22為基準,在所有處追加對於更新用模型M2的各群組可導入的安全機能。In step S403, the countermeasure introduction unit 21 uses the safety DB 22 as a reference, and adds safety functions that can be introduced to each group of the update model M2 in all places.

接著,在步驟S404中,冗長性檢查部23進行模型檢查,確認更新用模型M2的冗長性有無。Next, in step S404, the redundancy check unit 23 performs a model check to confirm the presence or absence of the redundancy of the update model M2.

在步驟S405中,在判斷更新用模型M2沒有冗長性的情況下,將該時點的更新用模型M2作為輸出模型M3予以輸出,前進到步驟S406結束處理。In step S405, if it is determined that the update model M2 is not redundant, the update model M2 at this point in time is output as the output model M3, and the process proceeds to step S406 to end the process.

在步驟S405中,在判斷更新用模型M2有冗長性的情況下,在步驟S407中,對策導入部21刪除更新用模型M2之冗長的安全機能之中的1個,再度進行模型檢查。In step S405, if it is determined that the update model M2 is verbose, in step S407, the countermeasure introduction unit 21 deletes one of the redundant safety functions of the update model M2, and performs a model check again.

安全設計裝置10重複以上的處理直到可以確認完全沒有冗長性,在處理等級中輸出施加脆弱性對策的模型。The safety design device 10 repeats the above processing until it can be confirmed that there is no redundancy at all, and outputs a model that applies a vulnerability countermeasure at the processing level.

***根據DB與模型例之動作說明***
使用第18圖所示之根據群組化的模型變化例,說明安全機能的追加順序。
*** Description of operation based on DB and model examples **
Using the example of the group-based model change shown in FIG. 18, the order of adding safety functions will be described.

在此,假設將簡易的流程作為處理模型予以輸入並輸出。
使用者在不考慮安全機能下作成模型M410。其中作為例示顯示之模型M410假設為現場機器的控制軟體,分別從外部接收多個指令,即指令A與指令B,再者對外部傳送各指令後結束之處理模型。但是設定成指令A之重要度為高,指令B之重要度為低。
資訊資產重要度資訊L1為顯示指令A之重要度為高,指令B之重要度為低的資訊。
Here, it is assumed that a simple process is input and output as a processing model.
The user creates the model M410 without considering the safety function. Among them, the model M410 shown as an example is assumed to be the control software of a field machine, which receives a plurality of instructions from the outside, namely, instruction A and instruction B, and then ends the processing model after transmitting each instruction to the outside. However, the importance of instruction A is set to be high, and the importance of instruction B is set to be low.
Information asset importance information L1 is information showing that the importance of instruction A is high and the importance of instruction B is low.

使用者輸入處理模型M410及資訊資產重要度資訊L1。
處理分類部25依據在各處理所使用的資訊資產,將各處理群組化。
在模型M410中由於有使用指令A的處理、及使用指令B之處理,因此可以將各處理分類為2個群組。
The user inputs a processing model M410 and information asset importance information L1.
The processing classification unit 25 groups each processing in accordance with the information assets used in each processing.
The model M410 includes a process using the instruction A and a process using the instruction B. Therefore, each process can be classified into two groups.

如第18圖所示,處理分類部25將模型410分類成所謂使用指令A之群組G421、及使用指令B之群組G422的2個群組,作為模型M420予以輸出。As shown in FIG. 18, the processing classifying unit 25 classifies the model 410 into two groups called a group G421 using a command A and a group G422 using a command B, and outputs it as a model M420.

接著,對策導入部21對於已群組化的模型M420,對照第15圖的安全DB22A及第16圖的安全DB22B,在各群組導入可導入的安全機能。Next, the countermeasure introduction unit 21 introduces a security function that can be imported into each group with respect to the grouped model M420 by referring to the security DB22A of FIG. 15 and the security DB22B of FIG. 16.

對策導入部21在群組G421導入安全DB22A的安全機能,在群組G422導入安全DB22B的安全機能,作為模型M430予以輸出。The countermeasure introduction unit 21 imports the safety function of the safety DB22A into the group G421 and the safety function of the safety DB22B into the group G422, and outputs the safety function as a model M430.

之後,與實施形態1相同,因應必要對於模型M430進行模型檢查,刪除冗長機能。刪除後,再度進行模型檢查,確認冗長性的有無。After that, as in the first embodiment, if necessary, a model check is performed on the model M430 to delete redundant functions. After deletion, check the model again to confirm the verbosity.

***實施形態之效果說明***
根據本實施形態,可以導入因應使用者所決定的資訊資產重要度之安全機能。
*** Explanation of the effect of the implementation form ***
According to this embodiment, a security function can be introduced in accordance with the importance of the information asset determined by the user.

根據本實施形態,在不特定脆弱性處下導入安全機能,藉由根據模型驗證確認脆弱性的有無,同時確認資訊資產的重要度,可以在處理等級中不重複且適當的個數‧處所導入安全機能。According to this embodiment, the security function is introduced in the place where the vulnerability is not specified, and the existence of the vulnerability is confirmed based on the model verification. At the same time, the importance of the information asset can be confirmed, and it can be implemented in a non-repeated and appropriate number in the processing level Safety function.

***其他動作說明***
在前述的例示中依據使用完全相同的資訊資產,擷取‧群組化處理,但是在處理的擷取‧群組化方面,也考量利用資料流向的方法等其他方法。
*** Other operation instructions ***
In the foregoing examples, the same information assets are used for acquisition and grouping processing. However, in terms of processing and acquisition and grouping, other methods such as using data flow methods are also considered.

例如,在第19圖所示之根據群組化的模型變化例中,著重於資訊資產的處理內容。在輸入的模型Ma410中,雖然與前述相同使用指令A(重要度:高)及指令B(重要度:低),但是利用中途的處理Ma413進行指令加算。
處理分類部25將所謂「C=A+B」的加算處理Ma413、及加算處理以後之所謂「指令C傳送」的傳送處理Ma414之重要度提高作業。
For example, in the variation example of the model based on grouping shown in FIG. 19, the processing content of information assets is emphasized. In the input model Ma410, the instruction A (importance: high) and the instruction B (importance: low) are used in the same manner as described above, but the instruction addition is performed using the processing Ma413 in the middle.
The processing classification unit 25 increases the importance of the so-called "C = A + B" addition processing Ma413 and the so-called "command C transmission" transmission processing Ma414 after the addition processing.

處理分類部25將模型M420分類成所謂群組Ga421及群組Ga422之2個群組,作為模型Ma420予以輸出。
如此一來,在包含重要度不同的資訊資產的運算‧運算結果之情況下,將其等包含在重要度為高的資訊資產的群組。
The processing classifying unit 25 classifies the model M420 into two groups called a group Ga421 and a group Ga422, and outputs it as the model Ma420.
In this way, when the calculation and operation results of information assets with different importance are included, they are included in the group of information assets with high importance.

接著,對策導入部21與前述相同,對照第15圖的安全DB22A及第16圖的安全DB22B,輸出包含有每一資訊資產的安全機能之模型Ma430。Next, the countermeasure introduction unit 21 outputs the model Ma430 including the security function of each information asset by comparing the security DB22A of FIG. 15 and the security DB22B of FIG. 16 as described above.

***其他動作說明***
在第20圖所示之根據群組化的模型變化例中,著重於資訊資產的使用方法。
在輸入的模型Mb410中,雖然與前述相同使用指令A(重要度:高)及指令B(重要度:低),但是利用中途的處理Mb413將指令A用來作為分岐的控制變數。
*** Other operation instructions ***
The variation of the model based on grouping shown in Figure 20 focuses on the use of information assets.
In the input model Mb410, although the instruction A (importance: high) and instruction B (importance: low) are used in the same manner as described above, the instruction A is used as the control variable of the divergence using the processing Mb413 in the middle.

處理分類部25將所謂「指令A=?」的分岐處理Mb413、及分岐處理以後的傳送處理Mb414、Mb415之重要度提高作業。
如此一來,將重要度高的資訊資產用來作為控制變數的情況下,將其結果所進行的後段處理也包含在重要度高的群組(模型Mb420之群組Ga421)中。
The processing classification unit 25 increases the importance of the branch processing Mb413 called "command A =?" And the transfer processing Mb414 and Mb415 after the branch processing.
In this way, when a high-importance information asset is used as a control variable, the post-processing of the result is also included in the high-importance group (the group Ga421 of the model Mb420).

接著,對策導入部21與前述相同,對照第15圖的安全DB22A及第16圖的安全DB22B,輸出包含有每一資訊資產的安全機能之模型Mb430。Next, the countermeasure introduction unit 21 outputs the model Mb430 including the security function of each information asset against the security DB22A of FIG. 15 and the security DB22B of FIG. 16 in the same manner as described above.

實施形態5.
針對本實施形態,使用第21至第25圖主要說明與實施形態4的差異。
Embodiment 5.
Regarding this embodiment, the differences from Embodiment 4 will be mainly described using FIGS. 21 to 25.

在本實施形態中,對於沒有安全機能的模型,依據在模型所使用的資訊資產將模型內的處理群組化,依據安全DB對於群組導入所有可導入的安全機能。
在本實施形態中,其特徵為以模型檢查及根據成本之模型內的群組評估為基準,反覆進行安全機能的刪除或交換。
In this embodiment, for a model without a security function, the processing in the model is grouped based on the information assets used in the model, and all importable security functions are imported into the group according to the security DB.
In this embodiment, it is characterized by repeatedly deleting or exchanging security functions based on model checking and group evaluation within the model based on cost.

***構成說明***
第21圖為顯示有關本發明的實施形態之安全設計裝置10的構成圖。
第21圖的安全設計裝置10除了由與實施形態4相同的對策導入部21、安全DB22、冗長性檢查部23、及處理分類部25之外,還有群組評估部26構成。
群組評估部26依據藉由安全DB所定義的成本,求出群組化後的處理順序之安全處理的評估值,依據評估值決定是否將群組化後的處理順序之中的安全處理從導入對象排除。
*** Composition Explanation ***
Fig. 21 is a configuration diagram showing a safety design device 10 according to an embodiment of the present invention.
The safety design device 10 of FIG. 21 includes a group evaluation unit 26 in addition to the same countermeasure introduction unit 21, safety DB 22, redundancy check unit 23, and processing classification unit 25 as those in the fourth embodiment.
The group evaluation unit 26 obtains the evaluation value of the security processing of the grouped processing order based on the cost defined by the security DB, and determines whether to group the security processing in the grouped processing order from the evaluation value. Import objects are excluded.

安全DB22與實施形態4相同,其儲存在對策導入部21中對於更新用模型M2導入安全時所使用的資訊。The security DB 22 is the same as the fourth embodiment, and stores information used when the update model M2 is introduced into the countermeasure introduction unit 21 in a secure manner.

第22圖的安全DB22A、及第23圖的安全DB22B為第21圖之安全DB22的構成要件例示。
第22圖的安全DB22A為重要度高之資訊資產用的安全DB之具體例。
第23圖的安全DB22B為重要度低之資訊資產用的安全DB之具體例。
在安全DB22A與安全DB22B中,除了與實施形態4相同的安全機能導入規則之外,也保持機能導入所要的成本C。
作為成本C的例示,考量了加密的鍵長、安全機能執行所要時間等。1個DB內保持複數種類的成本亦可。
The security DB22A of FIG. 22 and the security DB22B of FIG. 23 are examples of the constituent elements of the security DB22 of FIG. 21.
The security DB 22A in FIG. 22 is a specific example of a security DB for information assets with high importance.
The security DB 22B in FIG. 23 is a specific example of a security DB for a low-importance information asset.
In the safety DB 22A and the safety DB 22B, in addition to the same safety function introduction rules as in Embodiment 4, the cost C required for the function introduction is maintained.
As an example of the cost C, the key length of encryption and the time required for security function execution are considered. It is also possible to maintain a plurality of types of costs in one DB.

群組評估部26以保持在安全DB22之成本C為基準,對於導入有安全機能之模型的群組,算出評估值。
就評估的目的而言,可以舉例如性能(整體的處理速度)或安全強度、CPU‧記憶體等資源限制的考慮等。評估值為成本的單純相加或相乘亦可,由使用者獨自定義函數亦可。
The group evaluation unit 26 calculates an evaluation value based on the cost C held in the safety DB 22 as a reference for a group in which a model of safety function is introduced.
For the purpose of evaluation, consideration can be given to, for example, performance (overall processing speed) or security strength, consideration of resource constraints such as CPU, memory, etc. It is also possible to simply add or multiply the evaluation value, or a user-defined function.

又,在群組評估部26中,算出模型的評估值,確認模型是否滿足使用者的要求。在沒有滿足要求的情況下,利用對策導入部21將安全機能刪除或是交換成其他的機能。或者,也考量對使用者提示警告的方法。In addition, the group evaluation unit 26 calculates an evaluation value of the model and confirms whether or not the model satisfies a user's request. When the requirements are not met, the safety introduction function 21 is used to delete or exchange the safety function to another function. Or consider ways to alert users.

但是,在本實施形態中與實施形態4相同,由於導入因應各資訊資產重要度的安全機能,因此也認為會減少或不存在實施形態1~3中存在的前提之冗長性。因此,也有使冗長性檢查部23沒有動作或不要的可能性。However, in this embodiment, as in the fourth embodiment, since the security function corresponding to the importance of each information asset is introduced, it is considered that the redundancy of the premise existing in the first to third embodiments is reduced or absent. Therefore, there is a possibility that the redundancy inspection unit 23 is not operated or unnecessary.

***概要動作說明***
使用第24圖之安全設計裝置10的概要動作流程圖,針對實施形態5之安全機能的導入順序進行說明。
首先,在步驟S500中,依據性能(整體的處理速度)或安全強度、CPU‧記憶體等資源限制等設計對象的模型之使用者要求,預先設定‧定義安全處理的處理時間之評估基準。
*** Outline operation description **
The procedure for introducing the safety function of the fifth embodiment will be described using a schematic operation flowchart of the safety design device 10 of FIG. 24.
First, in step S500, according to a user request of a design object model such as performance (overall processing speed) or security strength, resource constraints such as CPU, memory, etc., an evaluation criterion for setting and defining a processing time for security processing is set in advance.

在步驟S501中,使用者使用模型在不考慮安全下進行軟體設計,將已作成的輸入模型M1及資訊資產重要度資訊L1輸入到本安全設計裝置10。In step S501, the user uses the model to perform software design without considering security, and inputs the created input model M1 and information asset importance information L1 to the security design device 10.

在步驟S502中,在安全設計裝置10中,將輸入模型M1輸入到處理分類部25。處理分類部25依據被使用的資訊資產將包含在模型內的處理群組化,將群組化後的模型作為更新用模型M2予以輸出。In step S502, the security design device 10 inputs the input model M1 to the processing classification unit 25. The processing classification unit 25 groups the processing included in the model according to the used information assets, and outputs the grouped model as the update model M2.

在步驟S503中,對策導入部21以安全DB22為基準,在所有處追加對於更新用模型M2可導入的安全機能。In step S503, the countermeasure introduction unit 21 uses the safety DB 22 as a reference, and adds safety functions that can be imported to the update model M2 in all places.

在步驟S504中,在冗長性檢查部23中進行模型檢查,確認更新用模型M2的冗長性有無。In step S504, a model check is performed in the redundancy check unit 23 to confirm the presence or absence of the redundancy of the update model M2.

在步驟S504中,在判斷為更新用模型M2有冗長性的情況下,在步驟S505中,對策導入部21刪除冗長的安全機能之中的1個,再次進行模型檢查。In step S504, if it is determined that the update model M2 is redundant, in step S505, the countermeasure introduction unit 21 deletes one of the redundant safety functions and performs model checking again.

在步驟S504中,在判斷為更新用模型M2沒有冗長性的情況下,在步驟S507中,群組評估部26算出該時點之更新用模型M2的各群組之評估值。When it is determined in step S504 that the update model M2 is not redundant, in step S507, the group evaluation unit 26 calculates an evaluation value of each group of the update model M2 at that point in time.

在步驟S508中,若可以確認評估值滿足基準時,對策導入部21將該時點的更新用模型M2作為輸出模型M3,前進到步驟S509,結束處理。If it is confirmed in step S508 that the evaluation value satisfies the reference, the countermeasure introduction unit 21 uses the update model M2 at that time as the output model M3, and proceeds to step S509 to end the process.

若評估值沒有滿足基準時,在步驟S506中,對策導入部21將該時點之更新用模型M2內的安全機能刪除1個、或交換為成本值低的安全機能,冗長性檢查部23再次進行模型檢查。If the evaluation value does not satisfy the criterion, in step S506, the countermeasure introduction unit 21 deletes one safety function in the update model M2 at that point in time or exchanges the safety function with a low cost value, and the redundancy check unit 23 performs the operation again. Model check.

安全設計裝置10反覆以上處理直到可以確認沒有冗長性及評估值滿足基準,在處理等級中輸出對每一資訊資產施加安全機能的模型。The security design device 10 repeats the above processing until it can be confirmed that there is no redundancy and the evaluation value satisfies the reference, and outputs a model that applies a security function to each information asset in the processing level.

***根據DB與模型例之動作說明***
使用第25圖所示之根據群組化的模型變化例,說明實施形態5之安全機能的追加順序。
在此,輸入簡易的流程作為處理模型後再輸出。
使用者在不考慮安全機能下作成模型M510。其中作為例示之模型M510假設為現場機器的控制軟體,分別從外部接收多個指令,即指令A與指令B,再者對外部傳送各指令後結束之處理模型。
但是設定成指令A之重要度為高,指令B之重要度為低。
*** Description of operation based on DB and model examples **
An example of adding a security function according to the fifth embodiment will be described with reference to a grouped model change example shown in FIG. 25.
Here, a simple process is input as a processing model and then output.
The user creates the model M510 without considering the safety function. The model M510 as an example is assumed to be a control software of a field machine, which receives a plurality of instructions, namely, instruction A and instruction B from the outside, and then ends the processing model after transmitting each instruction to the outside.
However, the importance of instruction A is set to be high, and the importance of instruction B is set to be low.

使用者首先決定關於指令A的評估基準、關於指令B的評估基準。
例如,假設評估對於各指令之安全處理的處理時間。
使用者決定關於指令A的評估基準CA0 與關於指令B的評估基準CB0 作為安全處理的處理時間之評估基準,根據即時性的考量,各指令之安全處理的處理時間不能超過該評估基準。
The user first determines an evaluation criterion for the instruction A and an evaluation criterion for the instruction B.
For example, suppose that the processing time for the secure processing of each instruction is evaluated.
The user decides the evaluation criterion C A0 on the instruction A and the evaluation criterion C B0 on the instruction B as the evaluation criterion of the processing time of the security processing. According to the immediate consideration, the processing time of the security processing of each instruction cannot exceed the evaluation criterion.

使用者將處理模型M510作為輸入模型M1予以輸入。
處理分類部25依據各處理所使用之資訊資產,群組化各處理。
在模型M510中由於有使用指令A的處理、有使用指令B的處理,處理分類部25可以將各處理分類成2個群組(第25圖的模型M520之群組G521與群組G522)。
The user inputs the processing model M510 as the input model M1.
The processing classification unit 25 groups each processing according to the information assets used in each processing.
In the model M510, there are processing using the instruction A and processing using the instruction B. The processing classification unit 25 can classify each processing into two groups (group G521 and group G522 of the model M520 in FIG. 25).

接著,對策導入部21對於已群組化的模型M520,對照第22圖的安全DB22A與第23圖的安全DB22B,導入可導入各群組的安全機能。Next, the countermeasure introduction unit 21 introduces the security function of each group by referring to the security DB 22A of FIG. 22 and the security DB 22B of FIG. 23 to the grouped model M520.

對策導入部21在群組G521導入安全DB22A的安全機能,在群組G522導入安全DB22B的安全機能,並作為模型M530予以輸出。The countermeasure introduction unit 21 introduces the safety function of the safety DB22A into the group G521, and imports the safety function of the safety DB22B into the group G522, and outputs it as a model M530.

在冗長性檢查部23中進行模型檢查,確認更新用模型M2的冗長性有無。
在判斷更新用模型M2有冗長性的情況下,對策導入部21刪除冗長的安全機能之中的1個,再次進行模型檢查。
The redundancy check unit 23 performs a model check to confirm the presence or absence of redundancy of the update model M2.
When it is determined that the update model M2 is redundant, the countermeasure introduction unit 21 deletes one of the redundant safety functions and performs a model check again.

在判斷更新用模型M2沒有冗長性的情況下,群組評估部26算出該時點之更新用模型M2的各群組之評估值。When it is determined that the update model M2 is not redundant, the group evaluation unit 26 calculates an evaluation value of each group of the update model M2 at that point in time.

群組評估部26求出群組G531與群組G532之評估值。
例如,群組評估部26將成本值單純加算,可以得到群組G531之評估值CA =C1 +C2 +C3 、群組G532之評估值CB =C1
The group evaluation unit 26 obtains the evaluation values of the group G531 and the group G532.
For example, the group evaluation unit 26 simply adds up the cost values to obtain the evaluation value C A = C 1 + C 2 + C 3 of the group G531 and the evaluation value C B = C 1 of the group G532.

群組評估部26比較評估值與評估基準,得到CA >CA0 及CB <CB0
因為CA 超過基準CA0 ,必須進行所謂將群組G531的安全機能取消任1個或與其他機能交換的處理。
群組評估部26決定取消或與其他機能交換的安全機能後,向對策導入部21指示。
在第25圖中,顯示對策導入部21藉由取消竄改檢測處理M541,滿足CA <CA0 ,得到模型M540的例示。
The group evaluation unit 26 compares the evaluation value with the evaluation criterion, and obtains C A > C A0 and C B <C B0 .
Because C A exceeds the reference C A0 , it is necessary to perform a process of canceling one of the safety functions of group G531 or exchanging with other functions.
After the group evaluation unit 26 decides to cancel or exchange safety functions with other functions, it instructs the countermeasure introduction unit 21.
In FIG. 25, the display countermeasure introduction unit 21 satisfies C A &lt; C A0 by canceling the tamper detection processing M541, and obtains an example of the model M540.

所謂群組評估部26從群組之中取消或交換哪個安全機能的判斷,利用安全機能的優先順位亦可,利用安全機能的成本值大小等亦可。
又,群組評估部26並非自動刪除安全機能、或者自動性交換安全機能,而是以所謂群組評估部26向使用者提示刪除警告或選擇項目的形式亦可。
The so-called group evaluation unit 26 may cancel or exchange the determination of which safety function is from the group. The safety function may be used in priority order, and the cost value of the safety function may be used.
The group evaluation unit 26 does not automatically delete the security function or automatically exchanges the security function. Instead, the group evaluation unit 26 may prompt the user to delete the warning or select an item.

反覆進行以上處理直到可以確認更新用模型M2沒有冗長性及評估值滿足基準。
若可以根據群組評估部26確認所有群組的評估值都滿足基準時,對策導入部21將該時點的更新用模型M2作為輸出模型M3予以輸出。
The above process is repeated until it can be confirmed that the update model M2 has no redundancy and the evaluation value satisfies the benchmark.
When it can be confirmed by the group evaluation unit 26 that the evaluation values of all the groups satisfy the reference, the countermeasure introduction unit 21 outputs the update model M2 at that time as the output model M3.

***實施形態之效果說明***
根據本實施形態,可以導入因應使用者決定的資訊資產重要度之安全機能。
*** Explanation of the effect of the implementation form ***
According to this embodiment, a security function can be introduced in accordance with the importance of the information asset determined by the user.

根據本實施形態,因為設置群組評估部26,可以在考量系統的性能(整體的處理速度)、安全強度、硬體資源的限制等後導入安全機能。According to this embodiment, since the group evaluation unit 26 is provided, the security function can be introduced after considering the performance of the system (the overall processing speed), the security strength, and the limitation of hardware resources.

***其他實施形態***
將前述實施形態的一部分或全部與其他實施形態組合亦可。
前述實施形態的一部分或全部機能只藉由軟體、硬體、或者軟體與硬體的組合予以實現亦可。
*** Other implementations ***
A part or all of the foregoing embodiments may be combined with other embodiments.
A part or all of the functions of the foregoing embodiments may be realized only by software, hardware, or a combination of software and hardware.

10‧‧‧安全設計裝置10‧‧‧ Safety Design Device

11‧‧‧處理器 11‧‧‧ processor

12‧‧‧記憶體 12‧‧‧Memory

13‧‧‧通訊裝置 13‧‧‧Communication device

14‧‧‧輸入機器 14‧‧‧ input machine

15‧‧‧顯示器 15‧‧‧ Display

21‧‧‧對策導入部 21‧‧‧ Countermeasure introduction department

22‧‧‧安全資料庫 22‧‧‧ Safety Database

22A‧‧‧安全資料庫 22A‧‧‧Safety Database

22B‧‧‧安全資料庫 22B‧‧‧Safety Database

23‧‧‧冗長性檢查部 23‧‧‧ Lengthy Inspection Department

24‧‧‧評估部 24‧‧‧ Evaluation Department

25‧‧‧處理分類部 25‧‧‧Treatment and Classification Department

26‧‧‧群組評估部 26‧‧‧Group Evaluation Department

M1‧‧‧輸入模型 M1‧‧‧ input model

M2‧‧‧更新用模型 M2‧‧‧Update Model

M3‧‧‧輸出模型 M3‧‧‧ output model

M3a‧‧‧輸出模型 M3a‧‧‧ output model

M3b‧‧‧輸出模型 M3b‧‧‧ output model

P1‧‧‧安全處理 P1‧‧‧Safe handling

P2‧‧‧安全處理 P2‧‧‧Safe handling

P3‧‧‧安全處理 P3‧‧‧Safe handling

P3a‧‧‧安全處理 P3a‧‧‧Safe handling

P3b‧‧‧安全處理 P3b‧‧‧Safe handling

P3c‧‧‧安全處理 P3c‧‧‧Safe handling

P4‧‧‧安全處理 P4‧‧‧Safe handling

P5‧‧‧安全處理 P5‧‧‧Safe handling

P6‧‧‧安全處理 P6‧‧‧Safe handling

第1圖為顯示有關實施形態1之安全設計裝置的構成之方塊圖。Fig. 1 is a block diagram showing the configuration of a safety design device according to the first embodiment.

第2圖為顯示有關實施形態1之安全設計裝置的安全資料庫構成例之表。 Fig. 2 is a table showing an example of a safety database configuration of the safety design device according to the first embodiment.

第3圖為顯示有關實施形態1之安全設計裝置的動作之流程圖。 Fig. 3 is a flowchart showing the operation of the safety design device according to the first embodiment.

第4圖為顯示有關實施形態1的模型例之圖。 Fig. 4 is a diagram showing an example of a model according to the first embodiment.

第5圖為顯示有關實施形態1變形例之安全設計裝置的安全資料庫構成例之表。 Fig. 5 is a table showing a configuration example of a safety database of a safety design device according to a modification of the first embodiment.

第6圖為有關實施形態1變形例的模型例之圖。 Fig. 6 is a diagram showing a model example relating to a modification of the first embodiment.

第7圖為顯示有關實施形態2之安全設計裝置的安全資料庫構成例之表。 Fig. 7 is a table showing an example of a safety database configuration of a safety design device according to the second embodiment.

第8圖為顯示有關實施形態2之安全設計裝置的動作之流程圖。 Fig. 8 is a flowchart showing the operation of the safety design device according to the second embodiment.

第9圖為顯示有關實施形態2的模型例之圖。 Fig. 9 is a diagram showing an example of a model according to the second embodiment.

第10圖為顯示有關實施形態3之安全設計裝置的構成之方塊圖。 Fig. 10 is a block diagram showing a configuration of a safety design device according to a third embodiment.

第11圖為顯示有關實施形態3之安全設計裝置的安全資料庫構成例之表。 Fig. 11 is a table showing an example of a safety database configuration of a safety design device according to the third embodiment.

第12圖為顯示有關實施形態3之安全設計裝置的動作之流程圖。 Fig. 12 is a flowchart showing the operation of the safety design device according to the third embodiment.

第13圖為顯示有關實施形態3的模型例之圖。 Fig. 13 is a diagram showing an example of a model according to the third embodiment.

第14圖為顯示有關實施形態4之安全設計裝置的構成之方塊圖。 Fig. 14 is a block diagram showing a configuration of a safety design device according to a fourth embodiment.

第15圖為顯示有關實施形態4之高重要度資訊資產用的安全資料庫構成例之表。 FIG. 15 is a table showing an example of the structure of a security database for high-importance information assets according to the fourth embodiment.

第16圖為顯示有關實施形態4之低重要度資訊資產用的安全資料庫構成例之表。 FIG. 16 is a table showing a configuration example of a security database for a low-importance information asset according to the fourth embodiment.

第17圖為顯示有關實施形態4之安全設計裝置的動作之流程圖。 Fig. 17 is a flowchart showing the operation of the safety design device according to the fourth embodiment.

第18圖為顯示有關實施形態4之藉由根據安全設計裝置群組化之模型變化例之圖。 FIG. 18 is a diagram showing a modification example of the model according to the fourth embodiment by grouping the devices according to the security design.

第19圖為顯示有關實施形態4之藉由根據安全設計裝置群組化之模型變化例之圖。 FIG. 19 is a diagram showing a modification example of the model according to the fourth embodiment, which is grouped by the security design device.

第20圖為顯示有關實施形態4之藉由根據安全設計裝置群組化之模型變化例之圖。 FIG. 20 is a diagram showing a modification example of the model according to the fourth embodiment by grouping the devices according to the security design.

第21圖為顯示有關實施形態5之安全設計裝置的構成之方塊圖。 Fig. 21 is a block diagram showing a configuration of a safety design device according to a fifth embodiment.

第22圖為顯示有關實施形態5之高重要度資訊資產用的安全資料庫構成例之表。 Fig. 22 is a table showing an example of the structure of a security database for high-importance information assets according to the fifth embodiment.

第23圖為顯示有關實施形態5之低重要度資訊資產用的安全資料庫構成例之表。 FIG. 23 is a table showing an example of the structure of a security database for a low-importance information asset according to the fifth embodiment.

第24圖為顯示有關實施形態5之安全設計裝置的動作之流程圖。 Fig. 24 is a flowchart showing the operation of the safety design device according to the fifth embodiment.

第25圖為顯示有關實施形態5之藉由根據安全設計裝置群組化之模型變化例之圖。 FIG. 25 is a diagram showing a modification example of the model according to the fifth embodiment, which is grouped by the security design device.

Claims (11)

一種安全設計裝置,包括: 對策導入部,其當輸入定義程式的處理順序之輸入模型時,參照定義用以處置各個威脅而執行的多個安全處理之安全資料庫,從前述多個安全處理之中選擇導入到根據前述輸入模型所定義的處理順序之1個以上的安全處理,輸出定義導入有已選擇的安全處理後之前述程式的處理順序之輸出模型;及 冗長性檢查部,其在利用前述對策導入部所選擇的安全處理之中,若前述程式的處理順序之導入處為重複,而且用以處置相同威脅而執行的安全處理包含2個以上時,將該等2個以上的安全處理之中至少1個安全處理從對根據前述輸出模型所定義的處理順序之導入對象排除。A safety design device includes: The countermeasure introduction unit, when inputting an input model that defines a processing sequence of a program, refers to a security database that defines a plurality of security processes to be executed to deal with each threat, and selects and imports from among the plurality of security processes to the input based on the input. One or more security processes in the processing sequence defined by the model, and an output model that defines the processing sequence of the aforementioned program after introducing the selected security process; and The redundancy check unit, in the security process selected by the countermeasure introduction unit, if the introduction of the processing sequence of the program is repeated and the security process executed to deal with the same threat includes two or more, At least one of the two or more security processes is excluded from the import object to the processing order defined by the aforementioned output model. 如申請專利範圍第1項之安全設計裝置,其中,前述冗長性檢查部將前述2個以上的安全處理之中1個以外的安全處理作為前述至少1個安全處理從導入對象排除。For example, the security design device according to the first patent application scope, wherein the redundancy check section excludes security processing other than one of the two or more security processings from the import target as the at least one security processing. 如申請專利範圍第1項之安全設計裝置,其中,前述安全資料庫對於前述多個安全處理的各個,定義導入處及藉由導入到該導入處之安全處理所處置的威脅, 前述1個以上的安全處理為根據前述安全資料庫所定義的導入處存在於根據前述輸入模型所定義的處理順序之中的安全處理, 前述2個以上的安全處理為在前述程式的處理順序之中連續執行,而且根據前述安全資料庫所定義的威脅為一致之安全處理。For example, the security design device of the scope of application for a patent, in which the aforementioned security database defines, for each of the aforementioned plurality of security processes, the introduction place and the threats handled by the security treatment imported into the introduction place, The one or more security processes described above are security processes in which the import place defined by the security database exists in the processing order defined by the input model, The two or more security processes are executed continuously in the processing sequence of the program, and are consistent security processes according to the threats defined by the security database. 如申請專利範圍第1至3項中任一項之安全計設裝置,其中,前述冗長性檢查部根據前述安全資料庫之前述2個以上的安全處理之登錄位置,決定是否將前述2個以上的安全處理的各個從導入對象排除。For example, if the security design device according to any one of claims 1 to 3 is applied for, the aforementioned redundancy check section determines whether to register the above 2 or more according to the registration positions of the above 2 or more security processes of the aforementioned security database. Each of the security processing is excluded from the import object. 如申請專利範圍第1至3項中任一項之安全計設裝置,其中,前述安全資料庫針對前述多個安全處理之中至少一部分安全處理定義優先順位, 前述冗長性檢查部藉由利用前述安全資料庫所定義的優先順位,決定是否將前述2個以上的安全處理的各個從導入對象排除。For example, if the security design device of any one of claims 1 to 3 is applied for, the aforementioned security database defines a priority order for at least a part of the aforementioned plurality of security processes, The redundancy check unit determines whether or not to exclude each of the two or more security processes from the import target by using the priority order defined by the security database. 如申請專利範圍第1至3項中任一項之安全計設裝置,其中,前述安全資料庫針對前述多個安全處理的各個定義成本, 前述冗長性檢查部藉由利用前述安全資料庫所定義的成本,決定是否將前述2個以上的安全處理的各個從導入對象排除。For example, if the security design device according to any one of claims 1 to 3 is applied for, the aforementioned security database is defined for each of the aforementioned multiple security processes. The redundancy check unit decides whether or not to exclude each of the two or more security processes from the import target by using the cost defined by the security database. 如申請專利範圍第1至3項中任一項之安全計設裝置,其中,包括:處理分類部,其依據在前述輸入模型內所使用的資訊資產將前述輸入模型內的處理群組化, 前述對策導入部從前述多個安全處理之中,選擇對於群組化後的處理順序導入的安全處理,對於群組化後的處理順序導入已選擇的安全處理。For example, the security design device according to any one of claims 1 to 3 includes a processing classification unit that groups the processing in the input model according to the information assets used in the input model. The countermeasure introduction unit selects a security process to be imported into the processing order after grouping from among the plurality of security processes, and imports the selected security process to the processing order after grouping. 如申請專利範圍第7項之安全計設裝置,其中,前述處理分類部輸入在前述輸入模型內所用之資訊資產的重要度資訊,依據資訊資產的重要度資訊,將前述輸入模型內的處理群組化。For example, the security design device for the seventh scope of the application for a patent, in which the aforementioned processing classification unit inputs the importance information of the information assets used in the aforementioned input model, and according to the importance information of the information assets, the aforementioned input processing group in the model Organization. 如申請專利範圍第7項之安全計設裝置,其中,前述安全資料庫針對前述多個安全處理的各個定義成本,並且 包括:群組評估部,其依據利用前述安全資料庫所定義的成本,求出群組化後的處理順序之中的安全處理評估值,依據前述評估值決定是否將群組化後的處理順序之中的安全處理從導入對象排除。For example, the security design device of the scope of application for patent No. 7 wherein the aforementioned security database is defined for each of the aforementioned multiple security processes, and Including: a group evaluation unit, which uses the cost defined by the aforementioned security database to obtain a security processing evaluation value in the grouped processing order, and determines whether to group the processing order according to the foregoing evaluation value Security processing is excluded from the import object. 一種安全設計方法,當對策導入部輸入有定義程式的處理順序之輸入模型時,參照定義用以處置各個威脅而執行的多個安全處理之安全資料庫,從前述多個安全處理之中選擇導入到利用前述輸入模型所定義的處理順序之1個以上的安全處理,輸出定義導入有已選擇的安全處理後之前述程式的處理順序之輸出模型, 冗長性檢查部在利用前述對策導入部所選擇的安全處理之中,若在前述程式的處理順序之導入處為重複,而且用以處置相同威脅而執行的安全處理包含2個以上時,將該等2個以上的安全處理之中至少1個安全處理從對根據前述輸出模型所定義的處理順序之導入對象排除。A security design method. When a countermeasure importing unit inputs an input model that defines a processing sequence of a program, it refers to a security database that defines a plurality of security processes to be executed to deal with each threat, and selects and imports from the foregoing security processes. By using one or more security processes defined in the processing sequence defined by the input model, and outputting an output model that defines the processing sequence of the aforementioned program after introducing the selected security process, When the redundancy check section uses the security processing selected by the countermeasure introduction section, if the introduction of the processing sequence of the program is duplicated and the security processing performed to deal with the same threat includes two or more, Wait for at least one of the two or more security processes to be excluded from the import object for the processing order defined by the aforementioned output model. 一種安全設計程式產品,在電腦上執行: 對策導入處理,其為當輸入定義程式的處理順序之輸入模型時,參照定義用以處置各個威脅而執行的多個安全處理之安全資料庫,從前述多個安全處理之中選擇導入到根據前述輸入模型所定義的處理順序之1個以上的安全處理,輸出定義導入有已選擇的安全處理後之前述程式的處理順序之輸出模型;及 冗長性檢查處理,其為在利用前述對策導入部所選擇的安全處理之中,若在前述程式的處理順序之導入處為重複,而且用以處置相同威脅而執行的安全處理包含2個以上時,將該等2個以上的安全處理之中至少1個安全處理從對根據前述輸出模型所定義的處理順序之導入對象排除。A security design program product that runs on a computer: The countermeasure introduction process is a process of inputting a model that defines a processing sequence of a program, and refers to a security database that defines a plurality of security processes to be executed to deal with each threat. One or more security processes in the processing sequence defined by the input model, and an output model that defines the processing sequence of the aforementioned program after introducing the selected security process; and Redundancy check processing is performed when the security processing selected by the countermeasure introduction unit is repeated in the processing sequence of the aforementioned program and the security processing executed to deal with the same threat includes two or more , At least one of the two or more security processes is excluded from the import object of the processing order defined according to the aforementioned output model.
TW108101124A 2018-01-17 2019-01-11 Security design apparatus, security design method, and security design program TW201933165A (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
PCT/JP2018/001229 WO2019142267A1 (en) 2018-01-17 2018-01-17 Security design apparatus, security design method, and security design program
??PCT/JP2018/001229 2018-01-17
??PCT/JP2018/041818 2018-11-12
PCT/JP2018/041818 WO2019142469A1 (en) 2018-01-17 2018-11-12 Security design apparatus, security design method, and security design program

Publications (1)

Publication Number Publication Date
TW201933165A true TW201933165A (en) 2019-08-16

Family

ID=67301618

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108101124A TW201933165A (en) 2018-01-17 2019-01-11 Security design apparatus, security design method, and security design program

Country Status (3)

Country Link
JP (1) JP6632777B2 (en)
TW (1) TW201933165A (en)
WO (2) WO2019142267A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7272940B2 (en) * 2019-12-06 2023-05-12 株式会社日立製作所 Security risk reduction method and system
JP7023439B2 (en) * 2020-02-07 2022-02-21 三菱電機株式会社 Information processing equipment, information processing methods and information processing programs

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63155329A (en) * 1986-12-19 1988-06-28 Fujitsu Ltd Reducing device for redundant program of task module
JP3092563B2 (en) * 1997-10-27 2000-09-25 日本電気株式会社 State transition diagram converter
US8819637B2 (en) * 2010-06-03 2014-08-26 International Business Machines Corporation Fixing security vulnerability in a source code
JP5845888B2 (en) * 2011-12-26 2016-01-20 日本電気株式会社 Software correction apparatus, software correction system, software correction method, and software correction program
US9098292B1 (en) * 2014-04-29 2015-08-04 The Mathworks, Inc. Automatic generation of an optimized arrangement for a model and optimized code based on the model
JP2017068825A (en) * 2015-09-29 2017-04-06 パナソニックIpマネジメント株式会社 Software development system and program

Also Published As

Publication number Publication date
JPWO2019142469A1 (en) 2020-01-23
WO2019142267A1 (en) 2019-07-25
JP6632777B2 (en) 2020-01-22
WO2019142469A1 (en) 2019-07-25

Similar Documents

Publication Publication Date Title
US11526614B2 (en) Continuous vulnerability management system for blockchain smart contract based digital asset using sandbox and artificial intelligence
US11531773B2 (en) Verification of bitstreams
US9298924B2 (en) Fixing security vulnerability in a source code
JP2009087355A (en) System and method for providing symbolic execution engine for validating web application
CN107426173B (en) File protection method and device
JP6058246B2 (en) Information processing apparatus, information processing method, and program
US10140403B2 (en) Managing model checks of sequential designs
US20220019676A1 (en) Threat analysis and risk assessment for cyber-physical systems based on physical architecture and asset-centric threat modeling
TW201933165A (en) Security design apparatus, security design method, and security design program
US9430595B2 (en) Managing model checks of sequential designs
WO2020137847A1 (en) Attack tree generation device, attack tree generation method, and attack tree generation program
EP3631669B1 (en) Expression evaluation of database statements for restricted data
JP2019021161A (en) Security design assist system and security design assist method
US20220284109A1 (en) Backdoor inspection apparatus, backdoor inspection method, and non-transitory computer readable medium
US20220292201A1 (en) Backdoor inspection apparatus, backdoor inspection method, and non-transitory computer readable medium
Crincoli et al. Vulnerable smart contract detection by means of model checking
JP7008879B2 (en) Information processing equipment, information processing methods and information processing programs
Yuan et al. Secure integrated circuit design via hybrid cloud
JP7292505B1 (en) Attack scenario generation device, attack scenario generation method, and attack scenario generation program
CN113742724B (en) Security mechanism defect detection method of network protocol software
WO2020136793A1 (en) Information processing device, information processing method, and information processing program
Hahanov et al. Malware Searching Methods at FML-Architecture
Murphy Shift Left Early: An Empirical Study of Insecure Coding Patterns in Julia Programs
Yan et al. A Bayesian cogntive approach to quantifying software exploitability based on reachability testing
Yashavant SecSEC: Securing Smart Ethereum Contracts