CN108470083A - It is a kind of that finite state construction method is obscured based on Kruskal algorithms - Google Patents
It is a kind of that finite state construction method is obscured based on Kruskal algorithms Download PDFInfo
- Publication number
- CN108470083A CN108470083A CN201810105737.8A CN201810105737A CN108470083A CN 108470083 A CN108470083 A CN 108470083A CN 201810105737 A CN201810105737 A CN 201810105737A CN 108470083 A CN108470083 A CN 108470083A
- Authority
- CN
- China
- Prior art keywords
- state
- finite state
- state machine
- obscure
- obscuring
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
Abstract
Finite state construction method is obscured based on Kruskal algorithms the invention discloses a kind of, it is determined using Kruskal algorithms in this method and constructed obscure respectively obscuring for finite state machine and redirect mode between state, by Hamming distance any two obscured between state be defined as corresponding weight in Kruskal algorithms, minimum spanning tree (the Minimum Spanning Tree of weight minimum are looked for using Kruskal algorithms, MST), i.e., minimum Hamming distance;Advantage is that the expense for obscuring finite state machine of structure is smaller, pass through experimental verification, it is in reference circuit and cipher circuit the experimental results showed that, the circuit overhead of finite state machine of method of the invention structure obscured is obviously reduced on the whole than the circuit overhead for obscuring finite state machine that currently employed other methods are built.
Description
Technical field
The present invention relates to one kind obscuring finite state construction method, more particularly, to a kind of based on Kruskal algorithms
Obscure finite state construction method.
Background technology
Hardware intellectual property (Intellectual in integrated circuit (Integrated Circuit, IC) supply chain
Property, IP) it is pirate, excessively production and the phenomenon that reverse-engineering creates chance to the infringement of intellectual property.Existing number
It is to change IC designs by obscuring and reach protection purpose to hide the function of circuit according to protection.Current digital integrated electronic circuit
Mainly there are combinational circuit and sequence circuit two major classes.Combinational circuit obscure and is inserted into volume into the gate level netlist that IC is designed
Outer crucial door, and designer can be controlled by the function of key pair IC;It is by electricity to sequence circuit obscure
The modification of finite state machine (Finite State Machine, FSM) state in road so that modified state machine cannot be straight
The effective status for jumping to original finite state machine is connect, original limited shape could correctly be jumped to by needing IC designers to unlock it
The effective status of state machine, to protect Hardware I P cores.
Currently, for sequence circuit, the method for being commonly used to protection Hardware I P cores is that structure obscures finite state machine.
Lao etc. proposes that a kind of two-stage is obscured finite state machine framework and obscured the novel self-correcting pros of finite state machine based on two-stage
Method, the two-stage of structure obscure finite state machine framework and not only can verify that IP inside sequence circuit or sequence circuit, can also disappear
Except error correction techniques.But two-stage of its structure obscures finite state machine framework and does not account for each layer and obscures jump between state
Transfer the registration of Party membership, etc. from one unit to another, thus lead to problems such as structure to obscure finite state machine hardware spending larger.
Invention content
Had based on obscuring for Kruskal algorithms technical problem to be solved by the invention is to provide a kind of circuit overhead is small
Limit state machine construction method.
Technical solution is used by the present invention solves above-mentioned technical problem:It is a kind of to be had based on obscuring for Kruskal algorithms
State machine construction method is limited, is included the following steps:
1. the original finite state machine in sequence circuit to be protected is extracted using Quartus softwares and Debussy softwares,
The initial position of original finite state machine, the effective status of original finite state machine are determined according to the original finite state machine of extraction
Quantity and each effective status binary coding, the quantity of the effective status of original finite state machine is denoted as M;
2. the quantity for obscuring state for obscuring finite state machine to be built is denoted as N, N meets condition:M+N=2n,
Middle n is positive integer, and n is more than or equal to the binary-coded bit wide of the effective status of original finite state machine;
3. the corresponding decimal number of binary coding of M effective status of original finite state machine is calculated, from 0~2n-1
This 2nThe corresponding decimal number of binary coding that M effective status of original finite state machine is removed in a decimal number, obtains
It is located at 0~2 to N number ofnDecimal number between -1, by this N number of 0~2nDecimal number between -1 and obscure N in finite state machine
It is a to obscure state one-to-one correspondence, by it is each obscure the corresponding decimal number of state and be converted to n binary codings and assign this mix
Confuse state, and the title for respectively obscuring state of finite state machine is obscured in definition respectively;
4. using N number of title for obscuring state and N number of binary coding for obscuring state as the defeated of Kruskal algorithms
Enter, determines that the connection relation for respectively obscuring state under the sum of Hamming distance minimum, detailed process are:
A. use Kruskal algorithms calculate automatically each two obscure Hamming distance between the binary coding of state and
The value of the N being calculated × N number of Hamming distance is stored in the adjacency matrix of N × N by the Hamming distance for respectively obscuring state and itself
In, which there is symmetry, the value for the Hamming distance stored on the leading diagonal of the adjacency matrix to be all zero;
B. an empty line set E is set, triangular portions or lower triangular portions on adjacency matrix is chosen, is first found out of it
The value of Hamming distance minimum and it corresponding two obscure state, this two is obscured the morphogenetic side of shape and is put into line set E,
Then find in addition to the Hamming distance found value minimum in remaining Hamming distance and it corresponding two obscure shape
State, judge the two obscure shape it is morphogenetic while with it is preceding it is primary be put into line set E while whether can be formed into a loop, if it is
Give up the side, the side is also placed in line set E if not, and so on, obscure state up to connection is all, at this time side
Contain N-1 side in set E;
C. the connection relation of adjacency matrix and the determination of N-1 side respectively obscured between state is exported;
5. the connection relation respectively obscured between state is defined as being bi-directionally connected, while defining one of them and obscure state and being
Original state, and define and respectively obscure redirecting key and obscure effective shape of the state to original finite state machine between state
Key is redirected between state;
6. obscuring finite state machine structure to complete.
Compared with the prior art, the advantages of the present invention are as follows determine constructed to obscure by using Kruskal algorithms
Respectively obscuring for finite state machine redirects mode between state, by the way that any two to be obscured to the definition of the Hamming distance between state
For corresponding weight in Kruskal algorithms, the minimum spanning tree (Minimum of weight minimum is looked for using Kruskal algorithms
Spanning Tree, MST), i.e., thus minimum Hamming distance makes the expense for obscuring finite state machine of structure smaller, passes through
Experimental verification, it is in reference circuit and cipher circuit the experimental results showed that, method of the invention structure obscure it is limited
The circuit overhead of state machine is more apparent on the whole than the circuit overhead for obscuring finite state machine that currently employed other methods are built
Reduce.
Description of the drawings
Fig. 1 obscures finite state machine for method using the present invention structure;
Specific implementation mode
Below in conjunction with attached drawing embodiment, present invention is further described in detail.
Embodiment:It is a kind of that finite state construction method is obscured based on Kruskal algorithms, include the following steps:
1. the original finite state machine in sequence circuit to be protected is extracted using Quartus softwares and Debussy softwares,
The initial position of original finite state machine, the effective status of original finite state machine are determined according to the original finite state machine of extraction
Quantity and each effective status binary coding, the quantity of the effective status of original finite state machine is denoted as M;
2. the quantity for obscuring state for obscuring finite state machine to be built is denoted as N, N meets condition:M+N=2n,
Middle n is positive integer, and n is more than or equal to the binary-coded bit wide of the effective status of original finite state machine;
3. the corresponding decimal number of binary coding of M effective status of original finite state machine is calculated, from 0~2n-1
This 2nThe corresponding decimal number of binary coding that M effective status of original finite state machine is removed in a decimal number, obtains
It is located at 0~2 to N number ofnDecimal number between -1, by this N number of 0~2nDecimal number between -1 and obscure N in finite state machine
It is a to obscure state one-to-one correspondence, by it is each obscure the corresponding decimal number of state and be converted to n binary codings and assign this mix
Confuse state, and the title for respectively obscuring state of finite state machine is obscured in definition respectively;
4. using N number of title for obscuring state and N number of binary coding for obscuring state as the defeated of Kruskal algorithms
Enter, determines that the connection relation for respectively obscuring state under the sum of Hamming distance minimum, detailed process are:
A. use Kruskal algorithms calculate automatically each two obscure Hamming distance between the binary coding of state and
The value of the N being calculated × N number of Hamming distance is stored in the adjacency matrix of N × N by the Hamming distance for respectively obscuring state and itself
In, which there is symmetry, the value for the Hamming distance stored on the leading diagonal of the adjacency matrix to be all zero;
B. an empty line set E is set, triangular portions or lower triangular portions on adjacency matrix is chosen, is first found out of it
The value of Hamming distance minimum and it corresponding two obscure state, this two is obscured the morphogenetic side of shape and is put into line set E,
Then find in addition to the Hamming distance found value minimum in remaining Hamming distance and it corresponding two obscure shape
State, judge the two obscure shape it is morphogenetic while with it is preceding it is primary be put into line set E while whether can be formed into a loop, if it is
Give up the side, the side is also placed in line set E if not, and so on, obscure state up to connection is all, at this time side
Contain N-1 side in set E;
C. the connection relation of adjacency matrix and the determination of N-1 side respectively obscured between state is exported;
5. the connection relation respectively obscured between state is defined as being bi-directionally connected, while defining one of them and obscure state and being
Original state, and define and respectively obscure redirecting key and obscure effective shape of the state to original finite state machine between state
Key is redirected between state;
6. obscuring finite state machine structure to complete.
In the present embodiment, sequence circuit to be protected uses b15 sequence circuits in Itc99 reference circuits, using Quartus
Software and Debussy softwares extract the original finite state machine in b15 sequence circuits to be protected, have in original finite state machine
Effect number of states M is that the binary coding of 8,8 effective statuses is 0000-0111;The value of n is more than or equal to 4, minimum to add
For obscuring status number, it is 4 to take n, then the quantity N for obscuring state for obscuring finite state machine to be built is also 8.From 0~15
The corresponding decimal number of binary coding of 8 effective statuses of original finite state machine is removed in this 16 decimal numbers, is remained
8 remaining decimal numbers are 8~15, by 8~15 this 8 numbers and obscure in finite state machine 8 and obscure state and correspond, general
It is each obscure the corresponding decimal number of state and be converted to 4 binary codings and assign this obscure state, and definition is obscured respectively
The title for respectively obscuring state of finite state machine, i.e. this 8 entitled A~H for obscuring state, what is obtained at this time respectively obscures state
Respectively:A:1000, B:1001, C:1010, D:1011, E:1100, F:1101, G:1110, H:1111.Obscure state by 8
The input as Kruskal algorithms of title and 8 binary codings for obscuring state, the adjacency matrix of output 8 × 8 and
State connection relation is respectively obscured, wherein 8 × 8 adjacency matrix is:
Respectively obscuring state connection relation is:A --- B, A --- C, A --- E, B --- D, B --- F, C --- G, D ---
H.The connection respectively obscured between state is defined as being bi-directionally connected, while it is the original state for obscuring finite state machine to define A,
K1, k2, k3, k4 are redirecting key and obscure state between the effective status of original finite state machine between obscuring state
Redirect key, as shown in Figure 1.
Method (using Kruskal algorithms) using the present invention and existing method (not using Kruskal algorithms) are respectively
Structure is obscured for b04 sequence circuits, b13 sequence circuits, b15 sequence circuits, TDEA, MISTY1_1clk and SEED_3clk
Finite state machine, and the finite state machine of obscuring that structure obtains is added in corresponding circuit, TDEA, MISTY1_1clk and
SEED_3clk is current conventional cipher circuit and sequence circuit.The area of the method and existing method of the present invention
It is as shown in table 1 with the correction data of power consumption.
Table 1
1 data of analytical table are it is found that method using the present invention structure obscures finite state machine relative to using existing
What method was established obscures finite state machine, and the expenses such as circuit area and power consumption are substantially reduced.
Claims (1)
1. a kind of obscuring finite state construction method based on Kruskal algorithms, it is characterised in that include the following steps:
1. the original finite state machine in sequence circuit to be protected is extracted using Quartus softwares and Debussy softwares, according to
Extraction original finite state machine determine the initial position of original finite state machine, original finite state machine effective status number
The binary coding of amount and each effective status, M is denoted as by the quantity of the effective status of original finite state machine;
2. the quantity for obscuring state for obscuring finite state machine to be built is denoted as N, N meets condition:M+N=2n, wherein n is
Positive integer, and n is more than or equal to the binary-coded bit wide of the effective status of original finite state machine;
3. the corresponding decimal number of binary coding of M effective status of original finite state machine is calculated, from 0~2n- 1 this 2n
The corresponding decimal number of binary coding that M effective status of original finite state machine is removed in a decimal number, obtains N number of
Positioned at 0~2nDecimal number between -1, by this N number of 0~2nDecimal number between -1 and obscure N number of mixed in finite state machine
State of confusing corresponds, by it is each obscure the corresponding decimal number of state and be converted to n binary codings and assign this obscure shape
State, and the title for respectively obscuring state of finite state machine is obscured in definition respectively;
4. using N number of title for obscuring state and N number of binary coding for obscuring state as the input of Kruskal algorithms, really
Determine the connection relation for respectively obscuring state under the sum of Hamming distance minimum, detailed process is:
A. it uses Kruskal algorithms to calculate each two automatically and obscures Hamming distance between the binary coding of state and each mixed
The value of the N being calculated × N number of Hamming distance is stored in the adjacency matrix of N × N by the Hamming distance of state of confusing and itself,
There is the adjacency matrix symmetry, the value for the Hamming distance stored on the leading diagonal of the adjacency matrix to be all zero;
B. an empty line set E is set, triangular portions or lower triangular portions on adjacency matrix is chosen, first finds Hamming out of it
The minimum value of distance and it corresponding two obscure state, this two is obscured the morphogenetic side of shape and is put into line set E, then
Find in addition to the Hamming distance found value minimum in remaining Hamming distance and it corresponding two obscure state, sentence
Break the two obscure shape it is morphogenetic while with it is preceding once be put into line set E while whether can be formed into a loop, if it is give up
The side is also placed in line set E by the side if not, and so on, obscure state up to connection is all, at this time line set
Contain N-1 side in E;
C. the connection relation of adjacency matrix and the determination of N-1 side respectively obscured between state is exported;
5. the connection relation respectively obscured between state is defined as being bi-directionally connected, while it is initial to define one of them to obscure state
State, and define respectively obscure between state redirect key and obscure effective status from state to original finite state machine it
Between redirect key;
6. obscuring finite state machine structure to complete.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810105737.8A CN108470083A (en) | 2018-02-02 | 2018-02-02 | It is a kind of that finite state construction method is obscured based on Kruskal algorithms |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810105737.8A CN108470083A (en) | 2018-02-02 | 2018-02-02 | It is a kind of that finite state construction method is obscured based on Kruskal algorithms |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108470083A true CN108470083A (en) | 2018-08-31 |
Family
ID=63266068
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810105737.8A Pending CN108470083A (en) | 2018-02-02 | 2018-02-02 | It is a kind of that finite state construction method is obscured based on Kruskal algorithms |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108470083A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110659424A (en) * | 2019-09-23 | 2020-01-07 | 长沙理工大学 | Improved K-means double clustering recommendation method and system based on Kruskal algorithm and computer-readable storage medium |
CN112560470A (en) * | 2019-09-06 | 2021-03-26 | 富士通株式会社 | Method and device for generating finite state automaton and identification method |
CN113282970A (en) * | 2021-04-29 | 2021-08-20 | 温州大学 | Hardware confusion method for unlocking multiple hardware IP cores on demand |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6449292B1 (en) * | 1992-05-21 | 2002-09-10 | Alcatel | Time division multiplexed synchronous state machine having state memory |
CN102682157A (en) * | 2012-04-09 | 2012-09-19 | 宁波大学 | Method for optimizing dynamic power and peak current of finite-state machine |
CN104615952A (en) * | 2014-12-22 | 2015-05-13 | 天津大学 | IP hard core intellectual property protection method and device based on path delay |
CN105005718A (en) * | 2015-06-23 | 2015-10-28 | 电子科技大学 | Method for implementing code obfuscation by Markov chain |
CN105718765A (en) * | 2016-01-26 | 2016-06-29 | 国家信息技术安全研究中心 | Method for achieving code obfuscation through finite automaton |
CN107111727A (en) * | 2014-08-06 | 2017-08-29 | 智能Ic卡公司 | Circuit protection system and method |
-
2018
- 2018-02-02 CN CN201810105737.8A patent/CN108470083A/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6449292B1 (en) * | 1992-05-21 | 2002-09-10 | Alcatel | Time division multiplexed synchronous state machine having state memory |
CN102682157A (en) * | 2012-04-09 | 2012-09-19 | 宁波大学 | Method for optimizing dynamic power and peak current of finite-state machine |
CN107111727A (en) * | 2014-08-06 | 2017-08-29 | 智能Ic卡公司 | Circuit protection system and method |
CN104615952A (en) * | 2014-12-22 | 2015-05-13 | 天津大学 | IP hard core intellectual property protection method and device based on path delay |
CN105005718A (en) * | 2015-06-23 | 2015-10-28 | 电子科技大学 | Method for implementing code obfuscation by Markov chain |
CN105718765A (en) * | 2016-01-26 | 2016-06-29 | 国家信息技术安全研究中心 | Method for achieving code obfuscation through finite automaton |
Non-Patent Citations (5)
Title |
---|
Y. LAO, B. YUAN, H. K. CHRIS AND K. P. KESHAB: "Reliable PUF-based local authentication", 《IEEE TRANS. COMPUT.-AIDED DESIGN INTEGR. CIRCUITS SYST》 * |
潘钊, 张跃军, 丁代鲁: "基于 Kruskal 算法的混淆状态机设计", 《中国电子学会电路与系统分会第二十八届学术年会论文集》 * |
潘钊; 张跃军; 丁代鲁: "基于全同态MAC的消息认证算法设计", 《电子技术应用》 * |
邵孟良; 齐德昱; 刘东文: "一种多态内联代码混淆算法", 《计算机应用研究》 * |
黄坤: "基于Kruskal算法的最小生成树的构建", 《电脑知识与技术》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112560470A (en) * | 2019-09-06 | 2021-03-26 | 富士通株式会社 | Method and device for generating finite state automaton and identification method |
CN110659424A (en) * | 2019-09-23 | 2020-01-07 | 长沙理工大学 | Improved K-means double clustering recommendation method and system based on Kruskal algorithm and computer-readable storage medium |
CN113282970A (en) * | 2021-04-29 | 2021-08-20 | 温州大学 | Hardware confusion method for unlocking multiple hardware IP cores on demand |
CN113282970B (en) * | 2021-04-29 | 2022-05-27 | 温州大学 | Hardware confusion method for unlocking multiple hardware IP cores as required |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108470083A (en) | It is a kind of that finite state construction method is obscured based on Kruskal algorithms | |
US9223912B1 (en) | Systems, methods and devices for providing RLCK parasitic extraction back-annotation in electronic design automation | |
CN109960879B (en) | System-level chip security design method based on untrusted IP core | |
Wu et al. | Efficient CODEC designs for crosstalk avoidance codes based on numeral systems | |
EP2858295B1 (en) | Hardening data transmissions against power side channel analysis | |
CN103605518A (en) | Object deserialization method and device | |
Sengupta et al. | Protecting IP core during architectural synthesis using HLT‐based obfuscation | |
CN111523283B (en) | Method and device for verifying processor, electronic equipment and storage medium | |
US20100199252A1 (en) | Routability of integrated circuit design without impacting the area | |
CN107016223B (en) | Hardware Trojan resistant chip design method and system | |
US7729893B2 (en) | Methods, media, and means for forming asynchronous logic networks | |
Zhou et al. | Cost-aware synthesis of asynchronous circuits based on partial acknowledgement | |
Chen et al. | A chip-level anti-reverse engineering technique | |
CN104516820A (en) | One-hot code detection method and one-hot code detector | |
CN107391896B (en) | Low-overhead FPGA hardware Trojan design method | |
US8225245B2 (en) | Method of implementing physically realizable and power-efficient clock gating in microprocessor circuits | |
CN102622481A (en) | Method for designing complementary data redundancy structure type CMOS (Complementary Metal Oxide Semiconductor) standard cell circuit physical library model | |
CN105930572B (en) | A kind of pre- depicting method of multimedium towards the emulation of touch screen capacitance | |
JPH11328238A (en) | Evaluation device and method for multi-power integrated circuit | |
Labrado et al. | Design of a multilayer five‐input majority gate and adder/subtractor circuits in NML computing | |
Li et al. | An universal architecture for designing modulo (2n-2p-1) multipliers | |
CN102486806B (en) | The description method and device of netlist electronic circuit multistage exchange information | |
Schindler et al. | Adopting a standard track routing architecture for next-generation hybrid AC/DC-biased logic circuits | |
TW201520797A (en) | Device and method for checking printed circuitry | |
Raghunandan et al. | Bus-encoding technique to reduce delay, power and simultaneous switching noise (SSN) in RLC interconnects |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180831 |