KR20210089960A - 침습성 공격을 검출하기 위한 장치 및 방법 - Google Patents

침습성 공격을 검출하기 위한 장치 및 방법 Download PDF

Info

Publication number
KR20210089960A
KR20210089960A KR1020200003185A KR20200003185A KR20210089960A KR 20210089960 A KR20210089960 A KR 20210089960A KR 1020200003185 A KR1020200003185 A KR 1020200003185A KR 20200003185 A KR20200003185 A KR 20200003185A KR 20210089960 A KR20210089960 A KR 20210089960A
Authority
KR
South Korea
Prior art keywords
signal
circuit
random number
conductors
random
Prior art date
Application number
KR1020200003185A
Other languages
English (en)
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 삼성전자주식회사
Priority to KR1020200003185A priority Critical patent/KR20210089960A/ko
Priority to US17/003,313 priority patent/US11651071B2/en
Priority to CN202010964948.4A priority patent/CN113111394A/zh
Publication of KR20210089960A publication Critical patent/KR20210089960A/ko

Links

Images

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/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • 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/55Detecting local intrusion or implementing counter-measures
    • G06F21/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/76Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in application-specific integrated circuits [ASIC] or field-programmable devices, e.g. field-programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • 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/55Detecting local intrusion or implementing counter-measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/86Secure or tamper-resistant housings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/582Pseudo-random number generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/007Fail-safe circuits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • H03K19/17768Structural details of configuration resources for security
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/84Generating pulses having a predetermined statistical distribution of a parameter, e.g. random pulse generators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/20Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/20Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
    • H03K19/21EXCLUSIVE-OR circuits, i.e. giving output if input signal exists at only one input; COINCIDENCE circuits, i.e. giving output only if all input signals are identical

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Storage Device Security (AREA)

Abstract

장치는, 본 개시의 예시적 실시예에 따라, 집적 회로 및 집적 회로 상에 배치된 복수의 도선들을 포함할 수 있고, 집적 회로는, 난수(random number)에 기초하여, 랜덤 신호 및 선택 신호를 생성하는 신호 생성 회로, 선택 신호에 기초하여 복수의 도선들 중 적어도 하나의 도선을 선택하고, 적어도 하나의 도선을 통해서 랜덤 신호를 출력하는 송신 회로, 및 적어도 하나의 도선을 통해서 수신된 신호에 기초하여 집적 회로에 대한 침습성 공격을 검출하는 수신 회로를 포함할 수 있다.

Description

침습성 공격을 검출하기 위한 장치 및 방법{DEVICE AND METHOD FOR DETECTING INVASIVE ATTACK}
본 개시의 기술적 사상은 부적절한 공격으로부터 집적 회로를 보호하는 것에 관한 것으로서, 자세하게는 침습성 공격을 검출하기 위한 장치 및 방법에 관한 것이다.
집적 회로에 저장된 정보 및/또는 집적 회로에 의해서 수행되는 동작에 대한 정보 등과 같은 보안 정보를 집적 회로로부터 추출하기 위하여, 집적 회로에 대한 침습성(invasive) 공격이 가해질 수 있다. 예를 들면, 공격자들은 집적 회로를 포함하는 장치, 예컨대 반도체 장치를 해체하고 집적 회로에 전력을 공급한 후, 프로빙(probing)을 통해서 보안 정보의 획득을 시도할 수 있다. 반도체 장치는 이러한 해체를 감지함으로써 침습성 공격을 검출하기 위한 구조를 채택할 수 있으나, 침습성 공격은 해체를 검출하는 구조까지도 무력화시키기 위하여 고도화(advancement)되고 있다. 이에 따라, 침습성 공격을 검출하기 위한 구조는 고도화된 침습성 공격을 검출하기에 충분한 높은 성능을 가질 것이 요구될 수 있는 한편, 높은 효율성, 예컨대 높은 유연성, 낮은 소비 전력, 작은 면적 등을 가질 것이 요구될 수 있다.
본 개시의 기술적 사상은, 고도화된 침습성 공격을 효율적으로 검출하는 장치 및 방법을 제공한다.
상기와 같은 목적을 달성하기 위하여, 본 개시의 기술적 사상의 일측면에 따른 장치는, 집적 회로 및 집적 회로 상에 배치된 복수의 도선들을 포함할 수 있고, 집적 회로는, 난수(random number)에 기초하여, 랜덤 신호 및 선택 신호를 생성하는 신호 생성 회로, 선택 신호에 기초하여 복수의 도선들 중 적어도 하나의 도선을 선택하고, 적어도 하나의 도선을 통해서 랜덤 신호를 출력하는 송신 회로, 및 적어도 하나의 도선을 통해서 수신된 신호에 기초하여 집적 회로에 대한 침습성 공격을 검출하는 수신 회로를 포함할 수 있다.
본 개시의 기술적 사상의 일측면에 따른 장치는, 집적 회로 및 집적 회로 상에 배치된 복수의 도선들을 포함할 수 있고, 집적 회로는, 난수(random number)에 기초하여, 랜덤 신호 및 선택 신호를 생성하는 신호 생성 회로, 선택 신호에 기초하여 복수의 도선들 중 하나를 각각 선택하고 선택된 도선을 통해서 랜덤 신호의 한 비트를 각각 출력하는, 복수의 디멀티플렉서들을 포함하는 송신 회로, 및 선택 신호에 기초하여 복수의 도선들 중 하나를 각각 선택하고 선택된 도선을 통해서 수신된 신호를 각각 출력하는, 복수의 멀티플렉서들을 포함하고, 복수의 멀티플렉서들의 출력 신호들에 기초하여 집적 회로에 대한 침습성 공격을 각각 검출하는 수신 회로를 포함할 수 있다.
본 개시의 기술적 사상의 일측면에 따라 집적 회로 상에 배치된 복수의 도선들을 사용하여 침습성 공격을 검출하기 위한 방법은, 난수(random number)에 기초하여, 랜덤 신호 및 선택 신호를 생성하는 단계, 선택 신호에 기초하여, 복수의 도선들 중 적어도 하나의 도선을 선택하는 단계, 선택된 적어도 하나의 도선을 통해서 랜덤 신호를 출력하는 단계, 및 적어도 하나의 도선을 통해서 수신된 신호에 기초하여 침습성 공격을 검출하는 단계를 포함할 수 있다.
본 개시의 예시적 실시예에 따른 장치 및 방법에 의하면, 감소된 예측 가능성 및 개선된 구조에 기인하여 고도화된 침습성 공격의 검출이 가능할 수 있고, 이에 따라 강화된 보안이 제공될 수 있다.
또한, 본 개시의 예시적 실시예에 따른 장치 및 방법에 의하면, 높은 효율성에 기인하여 침습성 공격의 검출 구조가 용이하게 활용될 수 있고, 이에 따라 다양한 장치들에서 보안이 강화될 수 있다.
본 개시의 예시적 실시예들에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 아니하며, 언급되지 아니한 다른 효과들은 이하의 기재로부터 본 개시의 예시적 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 도출되고 이해될 수 있다. 즉, 본 개시의 예시적 실시예들을 실시함에 따른 의도하지 아니한 효과들 역시 본 개시의 예시적 실시예들로부터 당해 기술분야의 통상의 지식을 가진 자에 의해 도출될 수 있다.
본 명세서에 첨부된 도면들은 도해의 편의를 위하여 스케일에 맞지 아니할 수 있고, 구성요소들을 과장하거나 축소하여 도시할 수 있다.
도 1은 본 개시의 예시적 실시예에 따른 장치를 개략적으로 나타내는 도면이다.
도 2a 및 도 2b는 본 개시의 예시적 실시예들에 따른 복수의 도선들의 예시들을 나타내는 도면들이다.
도 3은 본 개시의 예시적 실시예에 따른 액티브 쉴드를 포함하는 장치의 예시를 나타내는 블록도이다.
도 4a 및 도 4b는 본 개시의 예시적 실시예에 따른 액티브 쉴드를 포함하는 장치의 예시들을 나타내는 블록도들이다.
도 5는 본 개시의 예시적 실시예에 따라 액티브 쉴드를 포함하는 장치의 예시를 나타내는 블록도이다.
도 6은 본 개시의 예시적 실시예에 따른 액티브 쉴드를 포함하는 장치의 예시를 나타내는 블록도이다.
도 7은 본 개시의 예시적 실시예에 따른 수신 회로의 예시를 나타내는 블록도이다.
도 8a 및 도 8b는 본 개시의 예시적 실시예에 따른 수신 회로의 예시들을 나타내는 블록도들이다.
도 9는 본 개시의 예시적 실시예에 따른 신호 생성 회로의 예시를 나타내는 블록도이다.
도 10은 본 개시의 예시적 실시예에 따라 액티브 쉴드를 포함하는 장치의 예시를 나타내는 블록도이다.
도 11은 본 개시의 예시적 실시예에 따라 액티브 쉴드를 포함하는 장치의 예시를 나타내는 블록도이다.
도 12는 본 개시의 예시적 실시예에 따른 액티브 쉴드를 포함하는 장치의 예시를 나타내는 블록도이다.
도 13은 본 개시의 예시적 실시예에 따라 액티브 쉴드를 테스트하는 방법의 예시를 나타내는 순서도이다.
도 14는 본 개시의 예시적 실시예에 따라 침습성 공격으로부터 장치를 보호하기 위한 방법의 예시를 나타내는 순서도이다.
도 15는 본 개시의 예시적 실시예에 따라 침습성 공격으로부터 장치를 보호하기 위한 방법의 예시를 나타내는 순서도이다.
도 16은 본 개시의 예시적 실시예에 따라 침습성 공격으로부터 장치를 보호하기 위한 방법의 예시를 나타내는 순서도이다.
도 1은 본 개시의 예시적 실시예에 따른 장치를 개략적으로 나타내는 도면이다. 도 1에 도시된 바와 같이, 장치(10)는 송신 회로(12), 신호 생성 회로(11), 보안 중요(security-critical) 회로(14) 및 수신 회로(13)를 포함할 수 있고, 본 명세서에서 송신 회로(12), 신호 생성 회로(11), 보안 중요 회로(14) 및 수신 회로(13)는 집적 회로로 총괄적으로 지칭될 수 있고, 송신 회로(12), 신호 생성 회로(11), 보안 중요 회로(14) 및 수신 회로(13)는 도 1에 도시된 바와 상이하게 배치될 수도 있다. 또한, 장치(10)는 집적 회로 상에 배치된 복수의 도선들(WS)을 포함할 수 있고, 복수의 도선들(WS)은 송신 회로(12) 및 수신 회로(13)와 전기적으로 연결될 수 있다. 일부 실시예들에서, 장치(10)는 반도체 공정에 의해서 제조되는 반도체 장치일 수 있고, 복수의 도선들(WS) 및/또는 집적 회로는 반도체 공정에 의해서 형성될 수 있다.
본 명세서에서, Z축 방향은 복수의 도선들(WS) 및 집적 회로가 대향하는 방향으로서 수직 방향으로 지칭될 수 있고, 다른 구성요소보다 상대적으로 +Z방향으로 배치된 구성요소는 다른 구성요소 위에 있는 것으로 지칭될 수 있으며, 다른 구성요소보다 상대적으로 -Z방향으로 배치된 구성요소는 다른 구성요소 아래에 있는 것으로 지칭될 수 있다. 또한, 구성요소의 표면들 중 +Z방향으로 노출된 표면은 구성요소의 상면으로 지칭될 수 있고, -Z방향으로 노출된 표면은 구성요소의 하면으로 지칭될 수 있다. Y축 방향 및 X축 방향 각각은 제1 수평 방향 또는 제2 수평 방향으로 지칭될 수 있고, X축 및 Y축으로 이루어진 평면은 수평면으로 지칭될 수 있다. 도해의 편의상 본 명세서의 도면들에서 일부 층들만이 도시될 수 있다.
보안 중요 회로(14)는 장치(10)의 외부로부터 보안이 유지되어야 하는 정보(이하에서, 보안 정보로서 지칭될 수 있다)를 저장하거나 처리할 수 있다. 일부 실시예들에서, 보안 중요 회로(14)는 암호화(cryptographic) 회로를 포함할 수 있고, 보안이 유지되어야 하는 키(key)를 저장하거나 키에 기초한 암호화/복호화 동작을 수행할 수 있다. 일부 실시예들에서, 보안 중요 회로(14)는 장치(10)의 정당한(authenticated) 사용자의 고유한 정보, 예컨대 지불 정보 등을 저장할 수도 있다. 공격자들은 보안 중요 회로(14)로부터 정보를 추출하기 위하여, 침습성(invasive) 공격을 장치(10)에 가할 수 있다. 예를 들면, 공격자들은 장치(10)의 상면으로부터 -Z방향으로 장치(10)의 해체를 진행할 수 있고, 해체된 장치(10)에 전력을 공급한 후 보안 중요 회로(14)를 프로빙(probing)함으로써 정보의 추출을 시도할 수 있다. 일부 실시예들에서, 장치(10)가 플립 칩(flip chip) 구조를 가지는 경우, 장치(10)의 해체는 솔더 볼(solder ball)들의 제거를 포함할 수도 있다. 이와 같은 액티브 프로빙(active probing)으로부터 보안 중요 회로(14)를 보호하기 위하여, 장치(10)는 침습성 공격을 검출하기 위한 쉴드(shield)로서 액티브 쉴드(active shield)를 포함할 수 있다.
액티브 쉴드는, 장치(10)의 해체를 검출하기 위하여 보안 중요 회로(14) 상에 배치된 복수의 도선들(WS)을 포함할 수 있고, 복수의 도선들(WS)을 통과하는 신호들에 발생하는 이상(abnormality)을 감지함으로써 침습성 공격을 검출할 수 있다. 복수의 도선들(WS)은 다양한 형태로 연장될 수 있다. 복수의 도선들(WS)은, 일부 실시예들에서 도 1에 도시된 바와 같이 X축 방향으로 상호 평행하게 연장될 수도 있고, 일부 실시예들에서 스파게티(spaghetti) 라우팅에 따라 곡선을 이룰 수도 있다.
침습성 공격은 프로빙을 위한 공간을 확보하기 위하여, 복수의 도선들(WS)을 통과하는 신호들을 추정하거나 동일한 전위를 가지는 도선들을 점퍼(jumper)로 연결함으로써 복수의 도선들(WS)의 일부를 제거할 수 있다. 이에 따라, 액티브 쉴드는 복수의 도선들(WS)을 통과하는 신호들의 예측가능성을 감소시키는 동시에, 복수의 도선들(WS) 중 일부가 동일한 전위를 가지는 것을 방지함으로써 침습성 공격을 방지하는 것이 요구될 수 있다. 또한, 액티브 쉴드는 높은 효율성, 예컨대 높은 유연성, 낮은 소비 전력, 작은 면적 등을 가질 것이 요구될 수 있고, 특히 장치(10)가 모바일 어플리케이션에 사용되는 경우 액티브 쉴드의 효율성은 중대할 수 있다. 이하에서 도면들을 참조하여 설명되는 바와 같이, 본 개시의 예시적 실시예에 따른 액티브 쉴드는 고도화된 침습성 공격을 검출하기 위한 구조 및 기능을 제공할 수 있는 동시에, 높은 효율성을 제공할 수 있다.
신호 생성 회로(11)는 난수(random number)에 기초하여 랜덤 신호 및 선택 신호를 생성할 수 있다. 예를 들면, 신호 생성 회로(11)는 적어도 하나의 난수 생성기를 포함할 수 있고, 랜덤 신호 및 선택 신호의 값들은 난수로부터 도출될 수 있다. 랜덤 신호 및/또는 선택 신호는 송신 회로(12) 및 수신 회로(13)에 제공될 수 있고, 신호 생성 회로(11)의 예시들은 도 9 등을 참조하여 후술될 것이다.
송신 회로(12)는 복수의 도선들(WS)과 전기적으로 연결될 수 있고, 신호 생성 회로(11)로부터 랜덤 신호 및 선택 신호를 수신할 수 있다. 송신 회로(12)는 난수에 기초하여 생성된 선택 신호에 따라 복수의 도선들(WS) 중 적어도 하나의 도선을 선택할 수 있고, 선택된 적어도 하나의 도선을 통해서 랜덤 신호를 출력할 수 있다. 예를 들면, 도 1에서 굵게 표시된 바와 같이, 복수의 도선들(WS) 중 일부 도선들이 송신 회로(12)에 의해서 선택될 수 있고, 선택된 도선들을 통해서 랜덤 신호가 전송될 수 있다. 전술된 바와 같이, 선택 신호가 난수에 기초하여 생성됨으로써 복수의 도선들(WS) 중 적어도 하나의 도선은 랜덤하게 선택될 수 있고, 난수에 기초하여 생성된 랜덤 신호가 선택된 도선들을 통해서 전송될 수 있다. 이에 따라 액티브 쉴드의 동작에 대한 예측가능성이 감소할 수 있을 뿐만 아니라 2이상의 도선들이 동일한 전위를 가지는 것이 방지될 수 있고, 침습성 공격에 대한 방어가 강화될 수 있다. 또한, 복수의 도선들(WS) 중 일부 선택된 도선들을 통해서 랜덤 신호가 송신되므로, 액티브 쉴드에 의한 전력 소비도 감소할 수 있다. 송신 회로(12)의 예시들은 도 3 등을 참조하여 후술될 것이다.
수신 회로(13)는 복수의 도선들(WS)과 전기적으로 연결될 수 있고, 신호 생성 회로(11)로부터 선택 신호를 수신할 수 있다. 송신 회로(12)와 유사하게, 수신 회로(13)는 난수에 기초하여 생성된 선택 신호에 따라 복수의 도선들(WS) 중 적어도 하나의 도선을 선택할 수 있고, 선택된 적어도 하나의 도선을 통해서 신호를 수신할 수 있다. 일부 실시예들에서, 송신 회로(12) 및 수신 회로(13)는 선택 신호를 공통적으로 수신할 수 있고, 이에 따라 복수의 도선들(WS) 중 적어도 하나의 도선을 동일하게 선택할 수 있다. 복수의 도선들(WS) 중 적어도 하나의 도선을 통해서 수신 회로(13)가 수신하는 신호는, 침습성 공격이 발생하지 아니하는 경우 송신 회로(12)가 출력한 랜덤 신호와 일치할 수 있는 한편, 침습성 공격이 발생한 경우 랜덤 신호와 상이할 수 있다. 이에 따라, 수신 회로(13)는 적어도 하나의 도선을 통해서 수신된 신호에 기초하여 침습성 공격을 검출할 수 있고, 수신 회로(13)의 예시들은 도 3 등을 참조하여 후술될 것이다. 일부 실시예들에서, 송신 회로(12), 신호 생성 회로(11), 수신 회로(13) 및 복수의 도선들(WS)이 액티브 쉴드로서 총괄적으로 지칭될 수 있다.
일부 실시예들에서, 복수의 도선들(WS) 중 선택 신호에 의해서 선택되지 아니한 도선들은, 이전에 선택된 상태에서 자신들을 통과한 랜덤 신호에 대응하는 전위를 유지할 수 있다. 예를 들면, 송신 회로(12) 및 수신 회로(13)는 선택되지 아니한 도선들을 플로팅시킬 수 있다. 일부 실시예들에서, 복수의 도선들(WS) 중 선택 신호에 의해서 선택되지 아니한 도선들은 일정한 전위를 가질 수 있다. 예를 들면, 송신 회로(12) 및/또는 수신 회로(13)는 선택되지 아니한 도선들에 일정한 전위, 예컨대 접지 전위를 인가할 수 있다. 이에 따라, 선택되지 아니한 도선들은, 선택된 도선들과 상이한 전위를 가질 수 있고, 결과적으로 복수의 도선들(WS)을 통과하는 신호들에 대한 예측가능성이 감소할 수 있다.
보안 중요 회로(14)는 침습성 공격이 검출되는 경우, 보안 정보의 유출을 방지하기 위한 동작을 수행할 수 있다. 일부 실시예들에서, 보안 중요 회로(14)는 침습성 공격의 검출에 응답하여, 수행 중인 동작을 중지할 수 있다. 일부 실시예들에서, 보안 중요 회로(14)는 침습성 공격의 검출에 응답하여, 적어도 하나의 패턴이나 소자를 비가역적인(irreversible) 상태로 천이시킴으로써 보안 정보의 유출을 방지할 수 있다. 예를 들면, 보안 중요 회로(14)는 미세한 패턴에 강한 전기적 신호를 인가함으로써 패턴을 개방(short)시킬 수 있고, 개방된 패턴을 통해서 신호가 전달되는 것을 차단할 수 있다. 일부 실시예들에서, 보안 중요 회로(14)는 침습성 공격의 검출에 응답하여, 임의의 데이터를 재기입(rewrite)하는 동작을 수행할 수 있다. 예를 들면, 보안 중요 회로(14)는 보안 정보를 저장하는 메모리에 임의의 데이터(예컨대, 모두 영인 데이터)를 재기입함으로써 보안 정보의 유출을 방지할 수 있다. 보안 중요 회로(14)가 침습성 공격의 검출에 응답하여 수행하는 동작들은 전술된 예시들에 제한되지 아니하며, 액티브 쉴드는 침습성 공격을 검출함으로써, 보안 정보의 유출을 방지하기 위한 보안 중요 회로(14)의 동작들을 트리거할 수 있다.
도 2a 및 도 2b는 본 개시의 예시적 실시예들에 따른 복수의 도선들의 예시들을 나타내는 도면들이다. 구체적으로, 도 2a 및 도 2b는 도 1의 장치(10)의 일부를 Y축 및 Z축으로 이루어진 평면과 평행한 평면으로 자른 단면의 예시들을 나타낸다. 이하에서, 도 2a 및 도 2b는 도 1을 참조하여 설명될 것이며, 도 2a 및 도 2b에 대한 설명 중 상호 중복되는 내용은 생략될 것이다.
도 2a를 참조하면, 장치(20a)는 복수의 도선들(WS)을 포함할 수 있고, 복수의 도선들(WS) 하에 배선 층들 및 FEOL(front-end-of-line)을 포함할 수 있다. FEOL은 반도체 장치(10)에서 개별 소자들, 예컨대 트랜지스터, 캐패시터, 저항 등이 기판(substrate) 상에 형성된 부분을 지칭할 수 있다. 예를 들면, FEOL은 웨이퍼를 평탄화(planarization)하고 세정(cleaning)하는 단계, 트랜치(trench)를 형성하는 단계, 웰(well)을 형성하는 단계, 게이트(gate) 라인을 형성하는 단계, 소스 및 드레인을 형성하는 단계 등에 의해서 형성될 수 있다. 배선 층들은 FEOL 상에 형성될 수 있고, FEOL의 소자들을 상호연결하는 도전 패턴들을 포함할 수 있다.
복수의 도선들(WS)은 복수의 층들에 배치된 도선들을 포함할 수 있다. 예를 들면, 도 2a에 도시된 바와 같이, 복수의 도선들(WS)은 제1 층(L1)에 배치된 제1 그룹 및 제2 층(L2)에 배치된 제2 그룹을 포함할 수 있다. 제1 층(L1) 및 제2 층(L2)에 배치된 복수의 도선들(WS) 및 배선 층들에 배치된 패턴들은 BEOL(back-end-of-line)로 총괄적으로 지칭될 수 있다. BEOL은, 예컨대 게이트, 소스 및 드레인 영역을 실리사이드화(silicidation)하는 단계, 유전체를 부가하는 단계, 평탄화 단계, 홀을 형성하는 단계, 금속층을 부가하는 단계, 비아를 형성하는 단계, 패시베이션(passivation)층을 형성하는 단계 등에 의해서 형성될 수 있다.
일부 실시예들에서, 도 2a에 도시된 바와 같이, 최상위(top-most) 층으로서 제1 층(L1)에 배치된 제1 그룹의 도선들은 제2 층(L2)에 배치된 제2 그룹의 도선들 보다 넓은 폭 및 간격을 가질 수 있다. 예를 들면, 도 2a에 도시된 바와 같이, 제1 그룹의 도선들은 제1 간격(S1)을 가질 수 있고, 제2 그룹의 도선들은 제2 간격(S2)을 가질 수 있으며, 제1 간격(S1) 및 제2 간격(S2)은 상이할 수 있다. 일부 실시예들에서, 제1 그룹의 도선들 및 제2 그룹의 도선들은 동일한 피치(pitch)를 가질 수 있다. 예를 들면, 도 2a에 도시된 바와 같이, 제1 그룹의 도선들은 제1 피치(P1)를 가질 수 있고, 제2 그룹의 도선들은 제2 피치(P2)를 가질 수 있으며, 제1 피치(P1) 및 제2 피치(P2)는 일치할 수 있다. 일부 실시예들에서, 제1 그룹의 도선들 각각은 제2 그룹의 인접한 도선들의 중심 상에 배치될 수 있다. 이에 따라, 도 2a에 도시된 바와 같이 복수의 도선들(WS)을 -Z방향으로 바라볼 때 제1 그룹의 도선들 및 제2 그룹의 도선들은 일정한 간격(D0)을 가질 수 있다.
도 2b를 참조하면, 장치(20b)는 복수의 도선들(WS), 배선 층들 및 FEOL을 포함할 수 있다. 복수의 도선들(WS)은 제1 층(L1)에 배치된 제1 그룹, 제2 층(L2)에 배치된 제2 그룹 및 제3 층(L3)에 배치된 제3 그룹을 포함할 수 있다. 일부 실시예들에서, 제1 그룹의 도선들, 제2 그룹의 도선들 및 제3 그룹의 도선들을 동일한 피치를 가질 수 있다. 예를 들면, 도 2b에 도시된 바와 같이, 제1 그룹의 도선들은 제1 피치(P1)를 가질 수 있고, 제2 그룹의 도선들은 제2 피치(P2)를 가질 수 있고, 제3 그룹의 도선들은 제3 피치(P3)를 가질 수 있으며, 제1 피치(P1), 제2 피치(P2) 및 제3 피치(P3)는 일치할 수 있다.
도 3은 본 개시의 예시적 실시예에 따른 액티브 쉴드를 포함하는 장치의 예시를 나타내는 블록도이다. 도 3의 장치(30)는, 도 1의 장치(10)와 유사하게, 신호 생성 회로(31), 송신 회로(32) 및 수신 회로(33)를 포함할 수 있고, 복수의 도선들(WS1, WS2,..., WSn)을 포함할 수 있다(n은 1보다 큰 정수). 또한, 장치(30)는 송신 회로(32) 및 수신 회로(33)에 연결된 복수의 도전 패턴들(35)을 더 포함할 수 있다.
신호 생성 회로(31)는 랜덤 신호(RS) 및 선택 신호(SEL)를 생성할 수 있다. 예를 들면, 신호 생성 회로(31)는 도 1을 참조하여 전술된 바와 같이, 난수를 생성할 수 있고, 난수에 기초하여 랜덤 신호(RS) 및 선택 신호(SEL)를 생성할 수 있다. 도 3에 도시된 바와 같이, 랜덤 신호(RS)는 멀티-비트 신호로서 n-비트 신호일 수 있고, 송신 회로(32)에 제공될 수 있다. 선택 신호(SEL) 역시 멀티-비트 신호일 수 있고, 송신 회로(32) 및 수신 회로(33)에 제공될 수 있다. 일부 실시예들에서, 랜덤 신호(RS) 및 선택 신호(SEL)는 복수의 도선들(WS1, WS2,..., WSn) 아래에서 (예컨대, 도 2a 및 도 2b의 배선 층들에서) 배치된 도전 패턴들을 통해서 전송될 수 있다.
송신 회로(32)는 제1 내지 제n 송신 단위 회로(TX1 내지 TXn)을 포함할 수 있다. 제1 내지 제n 송신 단위 회로(TX1 내지 TXn) 각각은, 선택 신호(SEL)를 수신할 수 있고, 선택 신호(SEL)에 기초하여 적어도 하나의 도선을 선택할 수 있다. 또한, 제1 내지 제n 송신 단위 회로(TX1 내지 TXn) 각각은, 랜덤 신호(RS)의 한 비트를 선택된 적어도 하나의 도선을 통해서 출력할 수 있다. 예를 들면, 제1 송신 단위 회로(TX1)는 선택 신호(SEL)에 기초하여 복수의 제1 도선들(WS1) 중 하나를 선택할 수 있고, 랜덤 신호(RS)의 제1 비트(RS[1])를 선택된 제1 도선을 통해서 출력할 수 있다. 또한, 제2 송신 단위 회로(TX2)는 선택 신호(SEL)에 기초하여 복수의 제2 도선들(WS2) 중 하나를 선택할 수 있고, 랜덤 신호(RS)의 제2 비트(RS[2])를 선택된 제2 도선을 통해서 출력할 수 있다. 또한, 제n 송신 단위 회로(TXn)는 선택 신호(SEL)에 기초하여 복수의 제n 도선들(WSn) 중 하나를 선택할 수 있고, 선택된 제n 도선을 통해서 랜덤 신호(RS)의 제 n비트(RS[n])를 선택된 제n 도선을 통해서 출력할 수 있다. 일부 실시예들에서, 복수의 제1 도선들(WS1)의 개수, 복수의 제2 도선들(WS2)의 개수 및 복수의 제n 도선들(WSn)의 개수는 동일할 수 있다.
수신 회로(33)는 제1 내지 제n 수신 단위 회로(RX1 내지 RXn)를 포함할 수 있다. 제1 내지 제n 수신 단위 회로(RX1 내지 RXn) 각각은, 선택 신호(SEL)를 수신할 수 있고, 선택 신호(SEL)에 기초하여 적어도 하나의 도선을 선택할 수 있다. 예를 들면, 제1 수신 단위 회로(RX1)는 선택 신호(SEL)에 기초하여 복수의 제1 도선들(WS1) 중 하나를 선택할 수 있고, 제2 수신 단위 회로(RX2)는 선택 신호(SEL)에 기초하여 복수의 제2 도선들(WS2) 중 하나를 선택할 수 있으며, 제n 수신 단위 회로(RXn)는 선택 신호(SEL)에 기초하여 복수의 제n 도선들(WSn) 중 하나를 선택할 수 있다.
일부 실시예들에서, 송신 회로(32)는 복수의 도전 패턴들(35)을 통해서 반전된 랜덤 신호(/RS)를 출력할 수 있고, 수신 회로(33)는 복수의 도전 패턴들(35)을 통해서 반전된 랜덤 신호(/RS)를 수신할 수 있다. 또한, 수신 회로(33)는 복수의 도선들(WS1, WS2,..., WSn) 중 선택된 도선들을 통해서 수신된 신호 및 복수의 도전 패턴들(35)을 통해서 수신되는 반전된 랜덤 신호(/RS)에 기초하여 검출 신호(DET)를 생성할 수 있다. 예를 들면, 수신 회로(33)는 복수의 도선들(WS1, WS2,..., WSn) 중 선택된 도선들을 통해서 수신된 신호 및 반전된 랜덤 신호(/RS)가 비트별로(bitwise) 상이하지 아니한 경우, 침습성 공격이 발생함을 나타내는 활성화된 검출 신호(DET)를 생성할 수 있다. 도 3에 도시된 바와 같이, 검출 신호(DET)는 제1 내지 제n 검출 신호(DET1 내지 DETn)를 포함할 수 있고, 제1 내지 제n 수신 단위 회로(RX1 내지 RXn)는 제1 내지 제n 검출 신호(DET1 내지 DETn)를 각각 생성할 수 있다.
일부 실시예들에서, 도 3에 도시된 바와 상이하게, 송신 회로(32)는 복수의 도전 패턴들(35)을 통해서 반전된 랜덤 신호(/RS) 대신 랜덤 신호(RS)를 출력할 수 있고, 수신 회로(33)는 복수의 도전 패턴들(35)을 통해서 랜덤 신호(/RS)를 수신할 수 있다. 수신 회로(33)는 복수의 도선들(WS1, WS2,..., WSn) 중 선택된 도선들을 통해서 수신된 신호 및 복수의 도전 패턴들(35)을 통해서 수신되는 랜덤 신호(RS)가 비트별로 일치하지 아니한 경우, 침습성 공격이 발생함을 나타내는 활성화된 검출 신호(DET)를 생성할 수 있다. 이하에서, 도 3에 도시된 바와 같이, 수신 회로(33)가 반전된 랜덤 신호(/RS)를 수신하는 예시들이 주로 설명될 것이나, 본 개시의 예시적 실시예들이 이에 제한되지 아니하는 점은 이해될 것이다.
일부 실시예들에서, 송신 단위 회로 및 수신 단위 회로는, 복수의 도선들(WS1, WS2,..., WSn)이 연장되는 방향과 수직한 방향(예컨대, 도 1의 Y축 방향)으로 동일한 길이를 가질 수 있다. 도 4a 및 도 4b를 참조하여 후술되는 바와 같이, 한 쌍의 송신 단위 회로 및 수신 단위 회로는 독립적으로 침습성 공격을 검출할 수 있으므로, 동일한 구조를 가지는 송신 단위 회로 및 수신 단위 회로의 쌍들을 포함하는 액티브 쉴드는, 높은 유연성(flexibility) 및 높은 확장가능성을 제공할 수 있다. 예를 들면, 장치(30)의 크기 또는 장치(30)에 포함되는 보안 중요 회로의 크기에 따라 액티브 쉴드에서 단위 송신 회로 및 단위 수신 회로의 쌍이 용이하게 추가되거나 제거될 수 있다.
도 4a 및 도 4b는 본 개시의 예시적 실시예에 따른 액티브 쉴드를 포함하는 장치의 예시들을 나타내는 블록도들이다. 구체적으로, 도 4a 및 도 4b의 블록도들은 도 3의 장치(30)에 포함된 한 쌍의 송신 단위 회로 및 수신 단위 회로로서 제2 송신 단위 회로(TX2) 및 제2 수신 단위 회로(RX2)의 예시들을 나타낸다. 이하에서, 도 4a 및 도 4b에 대한 설명 중 상호 중복되는 내용 및 도 3에 대한 설명과 중복되는 내용은 생략될 것이다.
도 4a를 참조하면, 장치(40a)는 제2 송신 단위 회로(TX2) 및 제2 수신 단위 회로(RX2)를 포함할 수 있고, 제2 송신 단위 회로(TX2)와 동일한 구조의 송신 단위 회로들 및 제2 수신 단위 회로(RX2)와 동일한 구조의 수신 단위 회로들을 포함할 수 있다. 제2 송신 단위 회로(TX2)는 디멀티플렉서(DEMUX) 및 인버터(G41)를 포함할 수 있다. 디멀티플렉서(DEMUX)는 랜덤 신호(RS)의 제2 비트(RS[2]) 및 선택 신호(SEL)를 수신할 수 있고, 복수의 제2 도선들(WS2) 중 선택 신호(SEL)에 따라 선택된 하나의 제2 도선을 통해서 랜덤 신호(RS)의 제2 비트(RS[2])를 출력할 수 있다. 또한, 인버터(G41)는 랜덤 신호(RS)의 제2 비트(RS[2])를 반전시킴으로써 반전된 랜덤 신호(/RS)의 제2 비트(/RS[2])를 생성하여 도전 패턴(45_1)을 통해서 출력할 수 있다. 일부 실시예들에서, 복수의 제2 도선들(WS2)은 2이상의 상이한 층들에 형성될 수 있고, 예컨대 2개의 상이한 층들(예컨대, 도 2a의 L1 및 L2)에 교번적으로 배치될 수 있다.
제2 수신 단위 회로(RX2)는 멀티플렉서(MUX) 및 XOR 게이트(G42)를 포함할 수 있다. 멀티플렉서(MUX)는 선택 신호(SEL)를 수신할 수 있고, 복수의 제2 도선들(WS2) 중 선택 신호(SEL)에 따라 선택된 하나의 제2 도선을 통해서 수신되는 신호를 XOR 게이트(G42)에 제공할 수 있다. XOR 게이트(G42)는 도전 패턴(45_1)을 통해서 반전된 랜덤 신호(/RS)의 제2 비트(/RS[2])를 수신할 수 있고, 멀티플렉서(MUX)의 출력 신호를 수신할 수 있으며, 제2 검출 신호(DET2)를 생성할 수 있다. 이에 따라, 반전된 랜덤 신호(/RS)의 제2 비트(/RS[2]) 및 멀티플렉서(MUX)의 출력 신호가 상이한 경우, 즉 반전된 랜덤 신호(/RS)의 제2 비트(/RS[2])가 멀티플렉서(MUX)의 출력 신호의 반전된 버전과 일치하는 경우, 제2 검출 신호(DET2)는 하이 레벨을 가질 수 있다. 다른 한편으로, 반전된 랜덤 신호(/RS)의 제2 비트(/RS[2]) 및 멀티플렉서(MUX)의 출력 신호가 일치하는 경우, 즉 복수의 제2 도선들(WS2)에서 침습성 공격과 같은 이벤트가 발생한 경우, 제2 검출 신호(DET2)는 로우 레벨을 가질 수 있다. 일부 실시예들에서, 도 4a에 도시된 바와 상이하게, 제2 송신 단위 회로(TX2)에서 인버터(G41)가 생략될 수 있고, 랜덤 신호(RS)의 제2 비트(RS[2])가 도전 패턴(45_1)을 통해서 제2 수신 단위 회로(RX2)에 제공될 수도 있다. 또한, 일부 실시예들에서, 도 4a에 도시된 바와 상이하게, 제2 수신 단위 회로(RX2)는 XOR 게이트(G42) 대신 XNOR 게이트를 포함할 수도 있다. 예를 들면, 제2 수신 단위 회로(RX2)가 반전된 랜덤 신호(/RS)의 제2 비트(/RS[2]) 대신, 랜덤 신호(RS)의 제2 비트(RS[2])를 수신하는 경우, 제2 수신 단위 회로(RX2)는 XOR 게이트(G42) 대신 XNOR 게이트를 포함할 수 있다.
도 4b를 참조하면, 장치(40b)는 제2 송신 단위 회로(TX2) 및 제2 수신 단위 회로(RX2)를 포함할 수 있고, 제2 송신 단위 회로(TX2)와 동일한 구조의 송신 단위 회로들 및 제2 수신 단위 회로(RX2)와 동일한 구조의 수신 단위 회로들을 포함할 수 있다. 제2 송신 단위 회로(TX2)는, 도 4a의 제2 송신 단위 회로(TX2)와 비교할 때, 복수의 제2 도선들(WS2) 중 하나의 제2 도선을 통해서 랜덤 신호(RS)의 제2 비트(RS[2])의 반전된 비트를 출력할 수 있다. 예를 들면, 제2 송신 단위 회로(TX2)는, 도 4a의 제2 송신 단위 회로(TX2)와 유사하게, 제1 디멀티플렉서(DEMUX1) 및 제1 인버터(G43)를 포함할 수 있는 한편, 랜덤 신호(RS)의 제2 비트(RS[2])를 반전시키는 제2 인버터(G44) 및 랜덤 신호(RS)의 제2 비트(RS[2])의 반전된 비트를 복수의 제2 도선들(WS2) 중 하나의 제2 도선을 통해서 출력하는 제2 디멀티플렉서(DEMUX2)를 더 포함할 수 있다. 이에 따라, 복수의 제2 도선들(WS2)을 포함하는 복수의 도선들(WS)은 상호 반전된 신호들이 통과하는 도선들의 쌍들을 포함할 수 있고, 복수의 도선들(WS) 중 동일한 전위를 가지는 도선들의 발생이 더욱 감소할 수 있다. 일부 실시예들에서, 제1 인버터(G43)는 생략될 수 있고, 제2 인버터(G44)의 출력 신호가 도전 패턴(45_2)을 통해서 출력될 수도 있다.
제2 수신 단위 회로(RX2)는, 도 4a의 제2 수신 단위 회로(RX2)와 비교할 때, 복수의 제2 도선들(WS2) 중 하나의 제2 도선을 통해서 랜덤 신호(RS)의 제2 비트(RS[2])의 반전된 비트를 수신할 수 있다. 예를 들면, 제2 수신 단위 회로(RX2)는, 도 4a의 제2 수신 단위 회로(RX2)와 유사하게, 제1 멀티플렉서(MUX1) 및 제1 XOR 게이트(G45)를 포함할 수 있는 한편, 랜덤 신호(RS)의 제2 비트(RS[2])의 반전된 비트를 복수의 제2 도선들(WS2) 중 하나의 제2 도선을 통해서 수신하는 제2 멀티플렉서(MUX)를 더 포함할 수 있다. 또한, 제2 단위 수신 단위 회로(RX2)는 도전 패턴(45_2)을 통해서 수신되는 반전된 랜덤 신호(/RS)의 제2 비트(/RS[2])를 반전시키기 위한 제3 인버터(G46), 제2 XOR 게이트(G47) 및 AND 게이트(G48)를 더 포함할 수 있고, 제2 검출 신호(DET2)는 AND 게이트(G48)의 출력 신호에 대응할 수 있다. 일부 실시예들에서, 도 4a를 참조하여 전술된 바와 같이, 복수의 제2 도선들(WS2)은 2개의 상이한 층들(예컨대, 도 2a의 L1 및 L2)에 교번적으로 배치될 수 있다.
도 5는 본 개시의 예시적 실시예에 따라 액티브 쉴드를 포함하는 장치의 예시를 나타내는 블록도이다. 도 5의 장치(50)는, 도 3의 장치(30)와 유사하게, 신호 생성 회로(51), 송신 회로(52) 및 수신 회로(53)를 포함할 수 있고, 복수의 도선들(WS1, WS2,..., WSn)을 포함할 수 있다. 도 3의 장치(30)와 비교할 때, 도 5의 수신 회로(53)는 신호 생성 회로(51)로부터 반전된 랜덤 신호(/RS)를 수신할 수 있다. 이하에서, 도 5에 대한 설명 중 도 3에 대한 설명과 중복되는 내용은 생략될 것이다.
신호 생성 회로(51)는 랜덤 신호(RS) 및 선택 신호(SEL)를 생성할 수 있고, 반전된 랜덤 신호(/RS)를 더 생성할 수 있다. 도 5에 도시된 바와 같이, 신호 생성 회로(51)는 랜덤 신호(RS) 및 선택 신호(SEL)를 송신 회로(52)에 제공할 수 있고, 반전된 랜덤 신호(/RS) 및 선택 신호(SEL)를 수신 회로(53)에 제공할 수 있다. 일부 실시예들에서, 랜덤 신호(RS), 반전된 랜덤 신호(/RS) 및 선택 신호(SEL)는 복수의 도선들(WS1, WS2,..., WSn) 아래에서 (예컨대, 도 2a 및 도 2b의 배선 층들에서) 배치된 도전 패턴들을 통해서 전송될 수 있다.
일부 실시예들에서, 도 9를 참조하여 후술되는 바와 같이, 신호 생성 회로(51)는, 제1 난수(RN1), 제2 난수(RN2) 및 제3 난수(RN3)를 각각 생성하는, 진정 난수 생성기, 제1 의사 난수 생성기 및 적어도 하나의 제2 의사 난수 생성기를 포함할 수 있고, 랜덤 신호(RS) 및 선택 신호(SEL)는 제3 난수(RN3)로부터 생성될 수 있다. 이 경우, 신호 생성 회로(51)는, 제2 난수(RN2)를 공통으로 수신하고 동일한 구조를 가지는 2개의 제2 의사 난수 생성기들을 포함할 수 있고, 2개의 제2 의사 난수 생성기들은 송신 회로(52) 및 수신 회로(53)에 각각 인접하게 배치될 수 있고, 동일한 제3 난수들을 각각 생성할 수 있다. 신호 생성 회로(51)는 수신 회로(53)에 인접하게 배치된 제2 의사 난수 생성기가 생성하는 제3 난수를 반전시킴으로써 반전된 랜덤 신호(/RS)를 수신 회로(53)에 제공할 수 있다. 일부 실시예들에서, 도 5에 도시된 바와 상이하게, 신호 생성 회로(51)는, 반전된 랜덤 신호(/RS) 대신 랜덤 신호(RS)를 수신 회로(53)에 제공할 수도 있다. 예를 들면, 신호 생성 회로(51)는 수신 회로(53)에 인접하게 배치된 제2 의사 난수 생성기가 생성하는 제3 난수를 랜덤 신호(RS)로서 수신 회로(53)에 제공할 수 있다.
송신 회로(52)는 제1 내지 제n 송신 단위 회로(TX1 내지 TXn)를 포함할 수 있다. 송신 회로(52)는 신호 생성 회로(51)로부터 랜덤 신호(RS) 및 선택 신호(SEL)를 수신할 수 있고, 복수의 도선들(WS1, WS2,..., WSn) 중 선택 신호(SEL)에 따라 선택된 도선들을 통해서 랜덤 신호(RS)를 출력할 수 있다. 수신 회로(53)는 신호 생성 회로(51)로부터 반전된 랜덤 신호(RS) 및 선택 신호(SEL)를 수신할 수 있고, 복수의 도선들(WS1, WS2,..., WSn) 중 선택 신호(SEL)에 따라 선택된 도선들을 통해서 수신된 신호 및 반전된 랜덤 신호(RS)에 기초하여, 제1 내지 제n 검출 신호(DET1 내지 DETn)를 포함하는 검출 신호(DET)를 생성할 수 있다.
도 6은 본 개시의 예시적 실시예에 따른 액티브 쉴드를 포함하는 장치의 예시를 나타내는 블록도이다. 구체적으로, 도 6의 블록도는 도 5의 장치(50)에 포함된 한 쌍의 송신 단위 회로 및 수신 단위 회로로서 제2 송신 단위 회로(TX2) 및 제2 수신 단위 회로(RX2)의 예시를 나타낸다. 도 6에 도시된 바와 같이, 장치(60)는 제2 송신 단위 회로(TX2) 및 제2 수신 단위 회로(RX2)를 포함할 수 있고, 제2 송신 단위 회로(TX2)와 동일한 구조의 송신 단위 회로들 및 제2 수신 단위 회로(RX2)와 동일한 구조의 수신 단위 회로들을 포함할 수 있다. 이하에서 도 6에 대한 설명 중 도 5에 대한 설명과 중복되는 내용은 생략될 것이다.
제2 송신 단위 회로(TX2)는 디멀티플렉서(DEMUX)를 포함할 수 있다. 디멀티플렉서(DEMUX)는 랜덤 신호(RS)의 제2 비트(RS[2]) 및 선택 신호(SEL)를 수신할 수 있고, 복수의 제2 도선들(WS2) 중 선택 신호(SEL)에 따라 선택된 제2 도선을 통해서 랜덤 신호(RS)의 제2 비트(RS[2])를 출력할 수 있다. 도 4a의 제2 송신 단위 회로(TX2)와 비교할 때, 도 6의 제2 송신 단위 회로(TX2)에서 인버터가 생략될 수 있고 반전된 랜덤 신호(/RS)의 제2 비트(/RS[2])의 출력이 생략될 수 있다.
제2 수신 단위 회로(RX2)는 멀티플렉서(MUX) 및 XNOR 게이트(G60)를 포함할 수 있다. 멀티플렉서(MUX)는 선택 신호(SEL)를 수신할 수 있고, 복수의 제2 도선들(WS2) 중 선택 신호(SEL)에 따라 선택된 하나의 제2 도선을 통해서 수신되는 신호를 XNOR 게이트(G60)에 제공할 수 있다. XNOR 게이트(G60)는 신호 생성 회로(예컨대, 도 5의 51)로부터 반전된 랜덤 신호(/RS)의 제2 비트(/RS[2])를 수신할 수 있고, 멀티플렉서(MUX)의 출력 신호를 수신할 수 있으며, 제2 검출 신호(DET2)를 생성할 수 있다. 이에 따라, 반전된 랜덤 신호(/RS)의 제2 비트(/RS[2]) 및 멀티플렉서(MUX)의 출력 신호가 상이한 경우, 즉 반전된 랜덤 신호(/RS)의 제2 비트(/RS[2])가 멀티플렉서(MUX)의 출력 신호의 반전된 버전과 일치하는 경우, 제2 검출 신호(DET2)는 로우 레벨을 가질 수 있다. 다른 한편으로, 반전된 랜덤 신호(/RS)의 제2 비트(/RS[2]) 및 멀티플렉서(MUX)의 출력 신호가 일치하는 경우, 즉 복수의 제2 도선들(WS2)에서 침습성 공격과 같은 이벤트가 발생한 경우, 제2 검출 신호(DET2)는 하이 레벨을 가질 수 있다. 일부 실시예들에서, 도 4a에 도시된 바와 상이하게, 일부 실시예들에서, 도 6에 도시된 바와 상이하게, 제2 수신 단위 회로(RX2)는 XNOR 게이트(G60) 대신 XOR 게이트를 포함할 수도 있다.
도 7은 본 개시의 예시적 실시예에 따른 수신 회로의 예시를 나타내는 블록도이다. 도 7에 도시된 바와 같이, 수신 회로(70)는 제1 내지 제n 수신 단위 회로(RX1 내지 RXn)를 포함할 수 있고, NAND 게이트(G70)를 더 포함할 수 있다. 이하 도 7에 대한 설명에서, 도 7의 제1 내지 제n 수신 단위 회로(RX1 내지 RXn) 각각은 도 4a의 제2 수신 단위 회로(RX2)와 동일한 구조를 가지는 것으로 가정된다.
수신 회로(70)는 복수의 도선들(WS)에 연결될 수 있다. 예를 들면, 도 7에 도시된 바와 같이, 제1 수신 단위 회로(RX1)는 복수의 제1 도선들(WS1)에 연결될 수 있고, 제2 수신 단위 회로(RX2)는 복수의 제2 도선들(WS2)에 연결될 수 있으며, 제n 수신 단위 회로(RXn)는 복수의 제n 도선들(WSn)에 연결될 수 있다. 도 4a를 참조하여 전술된 바와 같이, 제1 내지 제n 수신 단위 회로(RX1 내지 RXn) 각각은 자신에 연결된 도선들을 통과하는 신호에서 이상이 발생하는 경우, 로우 레벨의 검출 신호를 생성할 수 있다. 예를 들면, 제1 수신 단위 회로(RX1)는 복수의 제1 도선들(WS1)을 통과하는 신호에서 이상이 발생하는 경우, 로우 레벨의 제1 검출 신호(DET1)를 생성할 수 있다.
NAND 게이트(G70)는, 도 7에 도시된 바와 같이, 제1 내지 제n 검출 신호(DET1 내지 DETn)를 수신할 수 있고, 검출 신호(DET')를 생성할 수 있다. 이에 따라, 검출 신호(DET')는 복수의 도선들(WS) 중 선택된 도선들을 통과하는 신호에서 이상이 발생하는 경우, 하이 레벨을 가질 수 있다. 일부 실시예들에서, 도 1의 보안 중요 회로(14)는 도 7의 검출 신호(DET')에 기초하여 침습성 공격의 발생을 인식할 수 있다. 일부 실시예들에서, 도 7에 도시된 바와 상이하게, 제1 내지 제n 검출 신호(DET1 내지 DETn)를 수신하는 NAND 게이트(G70)는 수신 회로(70)의 외부, 예컨대 도 1의 보안 중요 회로(14)에 포함될 수도 있다. 또한, 일부 실시예들에서, 도 7의 제1 내지 제n 수신 단위 회로(RX1 내지 RXn) 각각이 도 6의 제2 수신 단위 회로(RX2)와 동일한 구조를 가지는 경우, 수신 회로(70)는 NAND 게이트(G70) 대신 검출 신호(DET')를 생성하는 OR 게이트를 포함할 수 있다.
도 8a 및 도 8b는 본 개시의 예시적 실시예에 따른 수신 회로의 예시들을 나타내는 블록도들이다. 도 7의 수신 회로(70)와 비교할 때, 도 8a 및 도 8b의 수신 회로들(80a, 80b)에서 검출 신호(DET')는 제1 내지 제n 수신 단위 회로들(RX1 내지 RXn)에 의해서 순차적으로 생성되는 누적 검출 신호로서 생성될 수 있다. 후술되는 바와 같이, 도 8a 및 도 8b의 제1 내지 제n 수신 단위 회로(RX1 내지 RXn)에 의해서 누적 검출 신호가 전파될 수 있고, 이에 따라 도 7의 수신 회로(70)와 비교할 때, 제1 내지 제n 검출 신호(DET1 내지 DETn)의 라우팅을 위한 패턴들이 감소할 수 있다. 이하에서, 도 8a 및 도 8b에 대한 설명 중 상호 중복되는 내용은 생략될 것이다.
도 8a를 참조하면, 수신 회로(80a)는 제1 내지 제n 수신 단위 회로(RX1 내지 RXn) 및 인버터(G83)를 포함할 수 있다. 제1 내지 제n 수신 단위 회로(RX1 내지 RXn) 각각은 누적 검출 신호를 생성할 수 있다. 예를 들면, 제2 수신 단위 회로(RX2)는 멀티플렉서(MUX), XOR 게이트(G81) 및 AND 게이트(G82)를 포함할 수 있다. 멀티플렉서(MUX)는 복수의 제2 도선들(WS2)과 연결될 수 있고, 선택 신호(SEL)를 수신할 수 있다. XOR 게이트(G81)는 멀티플렉서(MUX)의 출력 신호 및 반전된 랜덤 신호(/RS)의 제2 비트(/RS[2])를 수신할 수 있고, 제2 검출 신호(DET2)를 생성할 수 있다. 이에 따라, 제2 검출 신호(DET2)는, 도 4a를 참조하여 전술된 바와 같이, 복수의 제2 도선들(WS2)을 통과하는 신호에서 이상이 발생하는 경우, 로우 레벨을 가질 수 있다. AND 게이트(G82)는 제2 검출 신호(DET2) 및 제1 수신 단위 회로(RX1)로부터 제공되는 제1 누적 검출 신호(ACC1)를 수신할 수 있고, 제2 누적 검출 신호(ACC2)를 생성할 수 있다. 도 8a에 도시된 바와 같이, 제1 수신 단위 회로(RX1)에서 제1 누적 검출 신호(ACC1)는 제1 검출 신호(DET1) 및 하이 레벨의 신호(H)를 수신하는 AND 게이트에 의해서 생성되었으므로, 로우 레벨의 제2 누적 검출 신호(ACC2)는 복수의 제1 도선들(WS1)을 통과하는 신호 및/또는 복수의 제2 도선들(WS2)을 통과하는 신호에서 이상이 발생한 것을 나타낼 수 있다. 유사하게, 제n 수신 단위 회로(RXn)는 제n 누적 검출 신호(ACCn)를 생성할 수 있고, 로우 레벨의 제n 누적 검출 신호(ACCn)는 복수의 도선들(WS1, WS2,..., WSn)을 통과하는 신호에서 이상이 발생한 것을 나타낼 수 있다. 인버터(G83)는 제n 누적 검출 신호(ACCn)를 반전시킴으로써 검출 신호(DET')를 생성할 수 있고, 이에 따라 하이 레벨의 검출 신호(DET')는 복수의 도선들(WS1, WS2,..., WSn)을 통과하는 신호에서 이상이 발생한 것을 나타낼 수 있다. 일부 실시예들에서, 도 4b를 참조하여 전술된 바와 같이 제1 내지 제n 검출 신호(DET1 내지 DETn)가 생성되는 경우에도 도 8a에 도시된 바와 유사하게 검출 신호(DET')가 생성될 수 있는 점은 이해될 것이다.
도 8b를 참조하면, 수신 회로(80b)는 제1 내지 제n 수신 단위 회로(RX1 내지 RXn)를 포함할 수 있다. 제1 내지 제n 수신 단위 회로(RX1 내지 RXn) 각각은 누적 검출 신호를 생성할 수 있다. 예를 들면, 제2 수신 단위 회로(RX2)는 멀티플렉서(MUX), XNOR 게이트(G84) 및 OR 게이트(G85)를 포함할 수 있다. 멀티플렉서(MUX)는 복수의 제2 도선들(WS2)과 연결될 수 있고, 선택 신호(SEL)를 수신할 수 있다. XNOR 게이트(G84)는 멀티플렉서(MUX)의 출력 신호 및 반전된 랜덤 신호(/RS)의 제2 비트(/RS[2])를 수신할 수 있고, 제2 검출 신호(DET2)를 생성할 수 있다. 이에 따라, 제2 검출 신호(DET2)는, 도 6을 참조하여 전술된 바와 같이, 복수의 제2 도선들(WS2)을 통과하는 신호에서 이상이 발생하는 경우, 하이 레벨을 가질 수 있다. OR 게이트(G85)는 제2 검출 신호(DET2) 및 제1 수신 단위 회로(RX1)로부터 제공되는 제1 누적 검출 신호(ACC1)를 수신할 수 있고, 제2 누적 검출 신호(ACC2)를 생성할 수 있다. 도 8b에 도시된 바와 같이, 제1 수신 단위 회로(RX1)에서 제1 누적 검출 신호(ACC1)는 제1 검출 신호(DET1) 및 로우 레벨의 신호(L)를 수신하는 OR 게이트에 의해서 생성되었으므로, 하이 레벨의 제2 누적 검출 신호(ACC2)는 복수의 제1 도선들(WS1)을 통과하는 신호 및/또는 복수의 제2 도선들(WS2)을 통과하는 신호에서 이상이 발생한 것을 나타낼 수 있다. 유사하게, 제n 수신 단위 회로(RXn)는 제n 누적 검출 신호(ACCn)를 생성할 수 있고, 하이 레벨의 제n 누적 검출 신호(ACCn)는 복수의 도선들(WS1, WS2,..., WSn)을 통과하는 신호에서 이상이 발생한 것을 나타낼 수 있고, 제n 누적 검출 신호(ACCn)는 검출 신호(DET')로서 출력될 수 있다.
도 9는 본 개시의 예시적 실시예에 따른 신호 생성 회로의 예시를 나타내는 블록도이다. 일부 실시예들에서, 신호 생성 회로(90)는 난수, 즉 제3 난수(RN3)의 일부로서 랜덤 신호(RS)를 생성할 수 있고, 제3 난수(RN3)의 다른 일부로서 선택 신호(SEL)를 생성할 수 있다. 도 9에 도시된 바와 같이, 신호 생성 회로(90)는 진정 난수 생성기(true random number generator; TRNG)(91), 제1 의사 난수 생성기(pseudo random number generator; PRNG)(92) 및 적어도 하나의 제2 의사 난수 생성기(93)를 포함할 수 있다. 본 명세서에서, 진정 난수 생성기(91) 및 제1 의사 난수 생성기(92)는 제1 난수 생성기 및 제2 난수 생성기로서 각각 지칭될 수 있고, 적어도 하나의 제2 의사 난수 생성기(93)는 적어도 하나의 제3 난수 생성기로서 지칭될 수 있다.
진정 난수 생성기(91)는 예측이 불가능한 제1 난수(RN1)를 생성할 수 있다. 진정 난수 생성기(91)는 예측이 불가능한 제1 난수(RN1)를 생성하는 임의의 구조를 가질 수 있다. 진정 난수 생성기(91)는, 일부 실시예들에서 주기적으로 제1 난수(RN1)를 생성할 수도 있고, 일부 실시예들에서 제1 의사 난수 생성기(92)의 요청에 응답하여 제1 난수(RN1)를 생성할 수도 있다. 진정 난수 생성기(91)는 제1 난수(RN1)를 생성하기 위하여 상대적으로 높은 전력을 소비할 수 있고, 상대적으로 긴 시간이 새로운 제1 난수(RN1)를 생성하는데(즉, 제1 난수(RN1)를 갱신하는데) 요구될 수 있다. 이에 따라, 진정 난수 생성기(91)가 생성하는 제1 난수(RN1)의 일부로서 랜덤 신호(RS) 및/또는 선택 신호(SEL)를 생성함으로써 고도화된 침습성 공격으로부터 보안 중요 회로(예컨대, 도 1의 13)를 보호하는 것은 용이하지 아니할 수 있다. 이에 따라, 신호 생성 회로(90)는 제1 난수(RN1)를 시드(seed)로서 사용하는 적어도 하나의 의사 난수 생성기(예컨대, 92)를 더 포함할 수 있다.
제1 의사 난수 생성기(92)는 제1 난수(RN1)에 기초하여 제2 난수(RN2)를 생성할 수 있다. 일부 실시예들에서, 제1 의사 난수 생성기(92)는, 난수들의 특성들에 근사화된 특성들을 가지는 시퀀스에 따라 제2 난수(RN2)를 생성하고 제1 난수(RN1)에 따라 시퀀스의 출발점이 변동하는 임의의 구조를 가질 수 있다. 예를 들면, 제1 의사 난수 생성기(92)는 자가-루프(self-looped) 대입-치환 네트워크(substitution-permutation network; SPN)를 포함할 수 있고, 제1 난수(RN1)는 자가-루프 대입-치환 네트워크의 초기 입력으로 제공될 수 있다. 이에 따라, 제1 의사 난수 생성기(92)는 조절가능한 주기로 제2 난수(RN2)를 생성, 즉 제2 난수(RN2)를 갱신할 수 있다. 일부 실시예들에서, 제1 의사 난수 생성기(92)는, 후술되는 적어도 하나의 제2 의사 난수 생성기(93)와 상이하게, 고정된 주기로 제2 난수(RN2)를 갱신하도록 설정될 수 있다. 또한, 일부 실시예들에서, 도 11을 참조하여 후술되는 바와 같이, 제1 의사 난수 생성기(92)는 신호 생성 회로(90)의 외부로부터 수신되는 신호에 따라 조절되는 주기로 제2 난수(RN2)를 갱신할 수도 있다.
적어도 하나의 제2 의사 난수 생성기(93)는 제2 난수(RN2)에 기초하여 제3 난수(RN3)를 생성할 수 있다. 예를 들면, 제2 의사 난수 생성기(93_1)는 제2 난수(RN2)에 기초하여 제3 난수(RN31)를 생성할 수 있고, 제2 의사 난수 생성기(93_k)는 제2 난수(RN2)에 기초하여 제3 난수(RN31)를 생성할 수 있다. 일부 실시예들에서, 2이상의 제2 의사 난수 생성기들(93_1, 93_k)에 의해서 생성된 제3 난수들(RN31, RN3k)은 도 10을 참조하여 후술되는 바와 같이, 상이한 액티브 쉴드들을 위해서 각각 사용될 수 있고, 상이한 비트 폭들을 가질 수도 있다. 또한, 일부 실시예들에서, 제2 의사 난수 생성기(93_1) 및 제2 의사 난수 생성기(93_k)는 제2 난수(RN2)의 상이한 적어도 일부를 수신할 수도 있다. 일부 실시예들에서, 적어도 하나의 제2 의사 난수 생성기(93)는 제2 난수(RN2)의 적어도 일부를 시드(seed)로서 사용하여 제3 난수(RN3)를 생성할 수 있을 뿐만 아니라, 제2 난수(RN2)의 적어도 일부에 기초하여 제3 난수(RN3)의 갱신 주기를 조절할 수도 있다. 일부 실시예들에서, 도 9에 도시된 바와 상이하게, 적어도 하나의 제2 의사 난수 생성기(93)가 생략될 수 있고, 랜덤 신호(RS) 및 선택 신호(SEL)는 제2 난수(RN2)로부터 생성될 수 있다. 또한, 일부 실시예들에서, 도 9에 도시된 바와 상이하게, 신호 생성 회로(90)는 제3 난수(RN3)를 수신하는 추가적인 의사 난수 생성기를 더 포함할 수도 있고, 추가적인 의사 난수 생성기에 의해서 생성되는 난수로부터 랜덤 신호(RS) 및 선택 신호(SEL)가 생성될 수도 있다.
도 10은 본 개시의 예시적 실시예에 따라 액티브 쉴드를 포함하는 장치의 예시를 나타내는 블록도이다. 구체적으로, 도 10은 제1 액티브 쉴드(AS1) 및 제2 액티브 쉴드(AS2)를 포함하는 반도체 칩(100)을 나타낸다. 일부 실시예들에서, 액티브 쉴드는 반도체 칩(100)에서 보안 중요 회로가 배치된 영역에만 배치될 수 있다.
도 10을 참조하면, 제1 액티브 쉴드(AS1)는 진정 난수 생성기(101), 제1 의사 난수 생성기(102) 및 제2 의사 난수 생성기(103)를 포함할 수 있다. 진정 난수 생성기(101)는 제1 난수(RN1)를 제1 의사 난수 생성기(102)에 제공할 수 있고, 제1 의사 난수 생성기(102)는 제1 난수(RN1)에 기초하여 제2 난수(RN2)를 생성할 수 있다. 제1 난수 생성기(101)는 제2 난수(RN2)를 제2 의사 난수 생성기(103)뿐만 아니라 제2 액티브 쉴드(AS2)에 포함된 제2 의사 난수 생성기(104)에 제공할 수 있다. 제2 의사 난수 생성기(103)는 제1 액티브 쉴드(AS1)에서 사용되는 랜덤 신호 및 선택 신호로서 제3 난수를 생성할 수 있는 한편, 제2 의사 난수 생성기(104)는 제2 액티브 쉴드(AS2)에서 사용되는 랜덤 신호 및 선택 신호로서 제3 난수를 생성할 수 있다. 결과적으로, 제1 액티브 쉴드(AS1) 및 제2 액티브 쉴드(AS2)는 진정 난수 생성기(101) 및 제1 의사 난수 생성기(102)를 공유할 수 있다.
도 11은 본 개시의 예시적 실시예에 따라 액티브 쉴드를 포함하는 장치의 예시를 나타내는 블록도이다. 구체적으로, 도 11의 블록도는 액티브 쉴드뿐만 아니라 장치(110)에 대한 공격을 검출하기 위한 다른 구조, 즉 해킹 검출 회로(112)를 더 포함하는 장치(110)를 나타낸다. 도 11에 도시된 바와 같이, 장치(110)는 신호 생성 회로(111) 및 해킹 검출 회로(112)를 포함할 수 있다.
신호 생성 회로(111)는 진정 난수 생성기(111_1), 제1 의사 난수 생성기(111_2) 및 적어도 하나의 제2 의사 난수 생성기(111_3)를 포함할 수 있고, 제1 난수(RN1), 제2 난수(RN2) 및 제3 난수(RN3)가 생성될 수 있다. 도 9를 참조하여 전술된 바와 같이, 의사 난수 생성기들, 즉 제1 의사 난수 생성기(111_2) 및 적어도 하나의 제2 의사 난수 생성기(111_3)는 조절가능한 주기로 제2 난수(RN2) 및 제3 난수(RN3)를 각각 생성할 수 있다.
해킹 검출 회로(112)는 공격 대응수단(attach countermeasure)으로 지칭될 수도 있고, 임의의 방식으로 장치(110)에 대한 공격을 검출함으로써 출력 신호(OUT)를 생성할 수 있다. 예를 들면, 해킹 검출 회로(112)는 신호 생성 회로(111)에 독립적인 다른 액티브 쉴드를 포함할 수도 있고, 해체시 장치(110) 내부로 유입되는 빛을 감지하기 위한 광 감지 센서(예컨대, 포토 다이오드)를 포함할 수도 있다.
신호 생성 회로(111)를 포함하는 액티브 쉴드는 해킹 검출 회로(112)에 의해서 공격이 검출되는 경우 침습성 공격의 검출을 강화할 수 있다. 일부 실시예들에서, 신호 생성 회로(111)는 해킹 검출 회로(112)에 의해서 공격이 검출되는 경우 난수의 갱신 속도를 증가시킬 수 있다. 예를 들면, 도 11에 도시된 바와 같이, 제1 의사 난수 생성기(111_2)는 해킹 검출 회로(112)로부터 출력 신호(OUT)를 수신할 수 있고, 출력 신호(OUT)가 공격의 검출을 나타내는 경우, 제2 난수(RN2)의 갱신 주기를 단축시킬 수 있다. 또한, 도 11에서 점선으로 표시된 바와 같이, 적어도 하나의 제2 의사 난수 생성기(111_3)도 해킹 검출 회로(112)로부터 출력 신호(OUT)를 수신할 수 있고, 출력 신호(OUT)가 공격의 검출을 나타내는 경우, 제3 난수(RN3)의 갱신 주기를 단축시킬 수 있다. 이에 따라, 장치(110)의 다른 영역에서 또는 다른 방식으로 공격이 검출된 경우, 신호 생성 회로(111)를 포함하는 액티브 쉴드는 침습성 공격의 검출을 강화할 수 있다.
도 12는 본 개시의 예시적 실시예에 따른 액티브 쉴드를 포함하는 장치의 예시를 나타내는 블록도이다. 도 12에 도시된 바와 같이, 장치(120)는 신호 생성 회로(121), 송신 회로(122), 수신 회로(123) 및 복수의 도선들(WS)을 포함할 수 있고, 테스트 회로(126)를 더 포함할 수 있다. 도 12에 대한 설명 중 도면들을 참조하여 전술된 바와 중복되는 내용은 생략될 것이다.
신호 생성 회로(121)는 난수에 기초하여 랜덤 신호(RS) 및 선택 신호(SEL)를 생성할 수 있다. 예를 들면, 도 9를 참조하여 전술된 바와 같이, 신호 생성 회로(121)는 제1 난수(RN1)를 생성하는 진정 난수 생성기를 포함할 수 있다. 도 12에 도시된 바와 같이, 신호 생성 회로(121)는 랜덤 신호(RS)를 송신 회로(122)에 제공할 수 있고, 선택 신호(SEL)를 송신 회로(122) 및 수신 회로(123)에 제공할 수 있다. 또한, 신호 생성 회로(121)는 진정 난수 생성기에 의해서 생성된 제1 난수(RN1)를 테스트 회로(126)에 제공할 수 있다. 송신 회로(122) 및 수신 회로(123)는 복수의 도선들(WS)을 통해서 연결될 수 있고, 수신 회로(123)는 복수의 도선들(WS)을 통과하는 신호들에서 이상 발생 여부를 나타내는 검출 신호(DET)를 생성할 수 있다. 도 12에 도시된 바와 같이, 검출 신호(DET)는 테스트 회로(126)에 제공될 수도 있다.
테스트 회로(126)는 액티브 쉴드를 테스트할 수 있다. 예를 들면, 도 12에 도시된 바와 같이, 테스트 회로(126)는 활성화된 인에이블 신호(ENA)에 응답하여 테스트를 개시할 수 있고, 액티브 쉴드를 테스트한 결과를 나타내는 결과 신호(RES)를 생성할 수 있다. 일부 실시예들에서, 인에이블 신호(ENA)가 생략될 수 있고, 테스트 회로(126)는 장치(120)에 전력이 공급되면 액티브 쉴드의 테스트를 개시할 수 있다. 결과 신호(RES)가 액티브 쉴드의 테스트 통과를 나타내고, 검출 신호(DET)가 침습성 공격의 미발생을 나타내는 경우, 액티브 쉴드는 침습성 공격을 검출하기 위한 동작을 개시할 수 있다. 또한, 일부 실시예들에서, 인에이블 신호(ENA)는 주기적으로 활성화될 수도 있다. 도 12에 도시된 바와 같이, 테스트 회로(126)는 액티브 쉴드의 테스트를 위하여 제1 난수(RN1)를 수신할 수 있고, 제어 신호(CTR)를 신호 생성 회로(121)에 제공할 수 있다. 테스트 회로(126)에 의한 액티브 쉴드의 테스트 방법의 예시가 도 13을 참조하여 후술될 것이다.
도 13은 본 개시의 예시적 실시예에 따라 액티브 쉴드를 테스트하는 방법의 예시를 나타내는 순서도이다. 일부 실시예들에서, 도 13의 테스트 방법은 도 12의 테스트 회로(126)에 의해서 수행될 수 있다. 도 13에 도시된 바와 같이, 액티브 쉴드의 테스트 방법은 복수의 단계들(S10 내지 S19)을 포함할 수 있고, 이하에서 도 13은 도 12를 참조하여 설명될 것이다.
단계 S10에서, 테스트 모드에 진입하는 동작이 수행될 수 있다. 예를 들면, 테스트 회로(126)는 활성화된 인에이블 신호(ENA)에 응답하여 테스트 모드에 진입할 수 있다. 일부 실시예들에서, 인에이블 신호(ENA)는 장치(120)에 전력의 공급이 개시되면 활성화될 수 있고, 장치(120)에 전력이 공급되는 동안 주기적으로 활성화될 수도 있다. 또한, 일부 실시예들에서, 인에이블 신호(ENA)가 생략될 수 있고, 테스트 회로(126)는 장치(120)에 전력의 공급이 개시되면 테스트 모드에 진입할 수도 있다. 일부 실시예들에서, 테스트 회로(126)는 테스트 모드 진입시 액티브 쉴드가 테스트를 통과하지 아니함을 나타내는, 예컨대 비활성화된 결과 신호(RES)를 생성할 수 있다.
단계 S11에서, 신호 생성 회로(121)를 리셋하는 동작이 수행될 수 있다. 예를 들면, 테스트 회로(126)는 제어 신호(CTR)를 통해서 신호 생성 회로(121)를 리셋할 수 있다. 신호 생성 회로(121)에 포함된 난수 생성기들, 예컨대 진정 난수 생성기 및 의사 난수 생성기들은 제어 신호(CTR)에 응답하여 리셋될 수 있다. 이에 따라, 진정 난수 생성기는 리셋 전 상태와 상이한 상태에서 제1 난수(RN1)를 생성할 수 있다.
단계 S12에서 제1 난수들을 수집하는 동작이 수행될 수 있고, 단계 S13에서 제1 난수들의 엔트로피를 측정하는 동작이 수행될 수 있다. 도 12를 참조하여 전술된 바와 같이, 제1 난수(RN1)는 신호 생성 회로(121)에 포함된 진정 난수 생성기에 의해서 생성될 수 있고, 테스트 회로(126)는 신호 생성 회로(121)로부터 제공되는 제1 난수들을 수집함으로써 제1 난수들의 엔트로피(entropy)를 측정할 수 있다. 예를 들면, 테스트 회로(126)는 제1 난수(RN1)의 해밍 가중치(Hamming weight)를 계산할 수 있고, 해밍 가중치들의 산포에 기초하여 제1 난수들의 엔트로피, 즉 신호 생성 회로(121)에 포함된 진정 난수 생성기의 엔트로피를 측정할 수 있다.
단계 S14에서 측정된 엔트로피를 기준치와 비교하는 동작이 수행될 수 있다. 도 13에 도시된 바와 같이, 제1 난수들의 엔트로피가 기준치보다 큰 경우 단계 S15이 후속하여 수행될 수 있는 한편, 제1 난수들의 엔트로피가 기준치 이하인 경우 단계 S11에서 신호 생성 회로(121)를 리셋하는 동작이 다시 수행될 수 있다. 의사 난수 생성기의 엔트로피는 시드의 엔트로피에 의존할 수 있고, 이에 따라 의사 난수 생성기의 시드로서 사용되는 제1 난수들의 엔트로피가 검증됨으로써 복수의 도선들(WS)을 통과하는 신호의 예측가능성이 감소할 수 있다.
단계 S15에서, 액티브 쉴드의 상태를 갱신하는 동작이 수행될 수 있다. 예를 들면, 도 12의 신호 생성 회로(121)는, 도 9를 참조하여 전술된 바와 같이, 진정 난수 생성기, 제1 의사 난수 생성기 및 적어도 하나의 제2 의사 난수 생성기를 포함할 수 있고, 테스트 회로(126)는 제어 신호(CTR)를 통해서 제1 의사 난수 생성기, 즉 제2 난수(RN2)를 갱신한 후에, 적어도 하나의 제2 의사 난수 생성기, 즉 제3 난수(RN3)를 갱신할 수 있다. 이에 따라, 제3 난수(RN3)로부터 생성되는 랜덤 신호(RS) 및 선택 신호(SEL)가 갱신될 수 있고, 갱신된 랜덤 신호(RS) 및 선택 신호(SEL)에 대응하는 검출 신호(DET)가 생성될 수 있다.
단계 S16에서, 공격의 검출 여부를 판정하는 동작이 수행될 수 있다. 예를 들면, 테스트 회로(126)는 수신 회로(123)로부터 제공되는 검출 신호(DET)에 기초하여 공격의 검출 여부를 판정할 수 있다. 도 13에 도시된 바와 같이, 공격이 검출된 경우, 즉 복수의 도선들(WS)을 통과하는 신호에 이상이 발생한 경우, 단계 S17에서 테스트 실패가 판정될 수 있고, 테스트 회로(126)는 테스트 실패에 대응하는 결과 신호(RES)를 생성할 수 있다. 다른 한편으로, 도 13에 도시된 바와 같이, 공격이 검출되지 아니한 경우, 즉 랜덤 신호(RS)가 복수의 도선들(WS)을 정상적으로 통과하여 수신 회로(123)에 도달한 경우, 단계 S18에서 테스트 통과가 판정될 수 있고, 테스트 회로(126)는 테스트 통과에 대응하는 결과 신호(RES)를 생성할 수 있다. 그 다음에, 단계 S19에서, 테스트 모드를 해제하는 동작이 수행될 수 있고, 액티브 쉴드의 테스트 방법은 종료할 수 있다.
도 14는 본 개시의 예시적 실시예에 따라 침습성 공격으로부터 장치를 보호하기 위한 방법의 예시를 나타내는 순서도이다. 일부 실시예들에서, 도 14는 도 1의 장치(10)에서 수행될 수 있고, 액티브 쉴드의 동작 방법으로서 지칭될 수도 있다. 도 14에 도시된 바와 같이, 침습성 공격으로부터 장치를 보호하기 위한 방법은 복수의 단계들(S20, S40, S60, S80)을 포함할 수 있고, 이하에서 도 14는 도 1을 참조하여 설명될 것이다.
단계 S20에서, 랜덤 신호 및 선택 신호를 생성하는 동작이 수행될 수 있다. 예를 들면, 신호 생성 회로(11)는 난수를 생성할 수 있고, 난수에 기초하여 랜덤 신호 및 선택 신호를 생성할 수 있다. 단계 S20의 예시는 도 15를 참조하여 후술될 것이다.
단계 S40에서, 적어도 하나의 도선을 선택하는 동작이 수행될 수 있다. 예를 들면, 송신 회로(12) 및 수신 회로(13)는 선택 신호를 공통으로 수신할 수 있고, 선택 신호에 기초하여 복수의 도선들(WS) 중 적어도 하나를 선택할 수 있다. 도 3 등을 참조하여 전술된 바와 같이, 송신 회로(12) 및 수신 회로(13)는 송신 단위 회로 및 수신 단위 회로의 복수의 쌍들로 구성될 수 있고, 한 쌍의 송신 단위 회로 및 수신 단위 회로는 자신에 연결된 도선들 중 하나를 선택 신호에 기초하여 선택할 수 있다. 난수에 기초하여 생성된 선택 신호에 따라 복수의 도선들(WS) 중 적어도 일부가 선택됨으로써, 복수의 도선들(WS)을 통과하는 신호의 예측가능성이 감소할 뿐만 아니라, 복수의 도선들(WS) 중 동일한 전위를 가지는 도선들이 제거될 수 있으며, 결과적으로 액티브 쉴드의 해체에 대한 난이도가 상승할 수 있다.
단계 S60에서, 적어도 하나의 도선을 통해서 랜덤 신호를 출력하는 동작이 수행될 수 있다. 예를 들면, 송신 회로(12)는 선택 신호에 기초하여 선택된 적어도 하나의 도선을 통해서 랜덤 신호를 출력할 수 있다. 침습성 공격이 발생하지 아니하는 경우 랜덤 신호는 수신 회로(13)에 정상적으로 도달할 수 있는 한편, 침습성 공격이 발생함으로써 복수의 도선들(WS) 중 적어도 일부가 개방되거나 단락되는 경우 랜덤 신호는 수신 회로(13)에 정상적으로 도달하지 아니할 수 있다.
단계 S80에서, 침습성 공격을 검출하는 동작이 수행될 수 있다. 예를 들면, 수신 회로(13)는 반전된 랜덤 신호(또는 랜덤 신호)를 수신할 수 있고, 반전된 랜덤 신호 및 복수의 도선들(WS) 중 선택된 적어도 하나의 도선을 통해서 수신되는 신호에 기초하여 검출 신호를 생성할 수 있다. 단계 S80의 예시는 도 16을 참조하여 후술될 것이다.
도 15는 본 개시의 예시적 실시예에 따라 침습성 공격으로부터 장치를 보호하기 위한 방법의 예시를 나타내는 순서도이다. 구체적으로, 도 15의 순서도는 도 14의 단계 S20의 예시를 나타낸다. 도 14를 참조하여 전술된 바와 같이, 도 15의 단계 S20'에서 랜덤 신호 및 선택 신호를 생성하는 동작이 수행될 수 있다. 일부 실시예들에서, 도 15의 단계 S20'은 도 9의 신호 생성 회로(90)에 의해서 수행될 수 있다. 도 15에 도시된 바와 같이, 단계 S20'은 복수의 단계들(S22, S24, S26)을 포함할 수 있고, 이하에서 도 15는 도 9를 참조하여 설명될 것이다.
단계 S22에서, 주기적으로 제1 난수(RN1)를 생성하는 동작이 수행될 수 있다. 예를 들면, 신호 생성 회로(90)의 진정 난수 생성기(91)는 제1 난수(RN1)를 주기적으로 생성할 수 있다. 일부 실시예들에서, 도 9를 참조하여 전술된 바와 같이, 제1 난수(RN1)의 갱신 주기는 상대적으로 길 수 있다.
단계 S24에서, 제1 난수(RN1)에 기초하여 제2 난수(RN2)를 생성하는 동작이 수행될 수 있다. 예를 들면, 신호 생성 회로(90)의 제1 의사 난수 생성기(92)는 제1 난수(RN1)를 수신할 수 있고, 제1 난수(RN1)를 시드로서 사용함으로써 제2 난수(RN2)를 생성할 수 있다. 일부 실시예들에서, 도 9를 참조하여 전술된 바와 같이, 제2 난수(RN2)의 갱신 주기는 조절가능할 수 있다.
단계 S26에서, 제2 난수(RN2)에 기초하여 랜덤 신호 및 선택 신호를 생성하는 동작이 수행될 수 있다. 예를 들면, 신호 생성 회로(90)의 적어도 하나의 제2 의사 난수 생성기(93)는 제2 난수(RN2)를 수신할 수 있고, 제2 난수(RN2)의 적어도 일부를 시드로서 사용함으로써 제3 난수(RN3)를 생성할 수 있으며, 랜덤 신호 및 선택 신호는 제3 난수(RN3)의 상이한 부분들로 구성될 수 있다. 일부 실시예들에서, 도 9를 참조하여 전술된 바와 같이, 적어도 하나의 제2 의사 난수 생성기(93)는 제2 난수(RN2)의 적어도 일부에 기초하여 제3 난수(RN3)의 갱신 주기를 조절할 수 있다.
도 16은 본 개시의 예시적 실시예에 따라 침습성 공격으로부터 장치를 보호하기 위한 방법의 예시를 나타내는 순서도이다. 구체적으로, 도 16의 순서도는 도 14의 단계 S80의 예시를 나타낸다. 도 14를 참조하여 전술된 바와 같이, 도 16의 단계 S80'에서 침습성 공격을 검출하는 동작이 수행될 수 있다. 일부 실시예들에서, 도 16의 단계 S80'은 도 3 및 도 5의 수신 회로들(33, 53)에 의해서 수행될 수 있다. 도 16에 도시된 바와 같이, 단계 S80'은 복수의 단계들(S82, S84, S86)을 포함할 수 있고, 이하에서 도 16은 도 3을 참조하여 설명될 것이다.
단계 S82에서, 적어도 하나의 도선을 통해서 신호를 수신하는 동작이 수행될 수 있다. 예를 들면, 수신 회로(33)는 송신 회로(32)와 공통으로 선택 신호(SEL)를 수신할 수 있고, 선택 신호(SEL)에 기초하여 선택된 복수의 도선들(WS) 중 적어도 하나의 도선을 통해서 신호를 수신할 수 있다.
단계 S84에서, 반전된 랜덤 신호(/RS)를 수신하는 동작이 수행될 수 있다. 예를 들면, 수신 회로(33)는 복수의 도선들(WS) 하에 배치된 복수의 도전 패턴들(35)을 통해서 송신 회로(32)로부터 반전된 랜덤 신호(/RS)를 수신할 수 있다. 일부 실시예들에서, 도 5를 참조하여 전술된 바와 같이, 반전된 랜덤 신호(/RS)는 복수의 도선들(WS) 하에 배치된 복수의 도전 패턴들을 통해서 신호 생성 회로(31)로부터 수신될 수도 있다.
단계 S86에서, 검출 신호(DET)를 생성하는 동작이 수행될 수 있다. 예를 들면, 수신 회로(33)는 제1 내지 제n 수신 단위 회로(RX1 내지 RXn)를 포함할 수 있고, 제1 내지 제n 수신 단위 회로(RX1 내지 RXn) 각각은 선택된 하나의 도선을 통해서 수신되는 신호 및 반전된 랜덤 신호(/RS)의 한 비트를 비교함으로써 제1 내지 제n 검출 신호(DET1 내지 DETn) 각각을 생성할 수 있다. 일부 실시예들에서, 제1 내지 제n 검출 신호(DET1 내지 DETn)가 보안 중요 회로(예컨대, 도 1의 14)에 직접 제공될 수 있다. 일부 실시예들에서, 도 7, 도 8a 및 도 8b를 참조하여 전술된 바와 같이, 수신 회로(33)는 제1 내지 제 n 검출 신호(DET1 내지 DETn)로부터 검출 신호(DET')를 생성할 수 있고, 검출 신호(DET')를 보안 중요 회로(예컨대, 도 1의 14)에 제공할 수도 있다.
이상에서와 같이 도면과 명세서에서 예시적인 실시예들이 개시되었다. 본 명세서에서 특정한 용어를 사용하여 실시예들이 설명되었으나, 이는 단지 본 개시의 기술적 사상을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 개시의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 개시의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (20)

  1. 집적 회로 및 상기 집적 회로 상에 배치된 복수의 도선들을 포함하고,
    상기 집적 회로는,
    난수(random number)에 기초하여, 랜덤 신호 및 선택 신호를 생성하도록 구성된 신호 생성 회로;
    상기 선택 신호에 기초하여 상기 복수의 도선들 중 적어도 하나의 도선을 선택하고, 상기 적어도 하나의 도선을 통해서 상기 랜덤 신호를 출력하도록 구성된 송신 회로; 및
    상기 적어도 하나의 도선을 통해서 수신된 신호에 기초하여 상기 집적 회로에 대한 침습성 공격을 검출하도록 구성된 수신 회로를 포함하는 것을 특징으로 하는 장치.
  2. 청구항 1에 있어서,
    상기 수신 회로는, 상기 선택 신호에 기초하여 상기 적어도 하나의 도선을 선택하도록 구성된 것을 특징으로 하는 장치.
  3. 청구항 1에 있어서,
    상기 복수의 도선들은, 복수의 제1 도선들을 포함하고,
    상기 송신 회로는, 상기 선택 신호에 기초하여 상기 복수의 제1 도선들 중 하나를 선택하고 선택된 제1 도선을 통해서 상기 랜덤 신호의 제1 비트를 출력하도록 구성된, 제1 송신 단위 회로를 포함하고,
    상기 수신 회로는, 상기 선택 신호에 기초하여 상기 복수의 제1 도선들 중 하나를 선택하고 선택된 제1 도선을 통해서 수신된 비트 신호에 기초하여 상기 침습성 공격을 검출하도록 구성된, 제1 수신 단위 회로를 포함하는 것을 특징으로 하는 장치.
  4. 청구항 3에 있어서,
    상기 복수의 도선들은, 복수의 제2 도선들을 포함하고,
    상기 송신 회로는, 상기 선택 신호에 기초하여 상기 복수의 제2 도선들 중 하나를 선택하고 선택된 제2 도선을 통해서 상기 랜덤 신호의 제2 비트를 출력하도록 구성된, 제2 송신 단위 회로를 포함하고,
    상기 수신 회로는, 상기 선택 신호에 기초하여 상기 복수의 제2 도선들 중 하나를 선택하고 선택된 제2 도선을 통해서 수신된 비트 신호에 기초하여 상기 침습성 공격을 검출하도록 구성된, 제2 수신 단위 회로를 포함하는 것을 특징으로 하는 장치.
  5. 청구항 4에 있어서,
    상기 송신 회로 및 상기 수신 회로는, 제1 수평 방향으로 대향하고,
    상기 제1 송신 단위 회로, 상기 제1 수신 단위 회로, 상기 제2 송신 단위 회로 및 제2 수신 단위 회로는, 상기 제1 수평 방향과 수직한 제2 수평 방향으로 동일한 길이를 가지는 것을 특징으로 하는 장치.
  6. 청구항 3에 있어서
    상기 제1 수신 단위 회로는, 상기 랜덤 신호의 제1 비트에 대응하는 제1 비트 신호 또는 상기 제1 비트 신호를를 반전시킴으로써 생성된 제1 반전된 비트 신호를 수신하고, 선택된 상기 제1 도선을 통해서 수신된 상기 비트 신호를 상기 제1 비트 신호 또는 상기 제1 반전된 비트 신호와 비교함으로써 제1 검출 신호를 생성하도록 구성된 것을 특징으로 하는 장치.
  7. 청구항 6에 있어서
    상기 수신 회로는, 상기 제1 수신 단위 회로의 양측에서 인접하게 배치되고 상기 제1 수신 단위 회로와 동일한 구조를 가지는 제3 수신 단위 회로 및 제4 수신 단위 회로를 더 포함하고,
    상기 제1 수신 단위 회로는, 상기 제3 수신 단위 회로로부터 수신된 제1 누적 검출 신호 및 상기 제1 검출 신호로부터 제2 누적 검출 신호를 생성하고, 상기 제2 누적 검출 신호를 상기 제4 수신 단위 회로에 제공하도록 구성된 것을 특징으로 하는 장치.
  8. 청구항 3에 있어서
    상기 제1 송신 단위 회로는, 상기 선택 신호에 기초하여 상기 복수의 제2 도선들 중 다른 하나를 선택하고, 선택된 다른 하나의 제1 도선을 통해서 상기 랜덤 신호의 상기 제1 비트의 반전된 비트 신호를 출력하도록 구성되고,
    상기 제1 수신 단위 회로는, 상기 선택 신호에 기초하여 상기 복수의 제1 도선들 중 다른 하나를 선택하고, 선택된 다른 하나의 제1 도선을 통해서 수신된 비트 신호에 더 기초하여 상기 침습성 공격을 검출하도록 구성된 것을 특징으로 하는 장치.
  9. 청구항 1에 있어서,
    상기 복수의 도선들 하에서, 상기 송신 회로 및 상기 수신 회로에 연결된 복수의 도전 패턴들을 더 포함하고,
    상기 송신 회로는, 상기 랜덤 신호 또는 상기 랜덤 신호를 반전시킴으로써 생성된 반전된 랜덤 신호를, 상기 복수의 도전 패턴들을 통해서 출력하도록 구성된 것을 특징으로 하는 장치.
  10. 청구항 1에 있어서,
    상기 신호 생성 회로는, 상기 랜덤 신호를 상기 송신 회로에 제공하고, 상기 랜덤 신호 또는 상기 랜덤 신호를 반전시킴으로써 생성된 반전된 랜덤 신호를 상기 수신 회로에 제공하도록 구성된 것을 특징으로 하는 장치.
  11. 청구항 1에 있어서,
    상기 신호 생성 회로는,
    주기적으로 제1 난수를 생성하도록 구성된 제1 난수 생성기; 및
    상기 제1 난수에 기초하여 제2 난수를 생성하도록 구성된 제2 난수 생성기를 포함하고,
    상기 랜덤 신호 및 상기 선택 신호는, 상기 제2 난수에 기초하여 생성되는 것을 특징으로 하는 장치.
  12. 청구항 11에 있어서,
    상기 제1 난수 생성기는, 진정(true) 난수 생성기이고,
    상기 제2 난수 생성기는, 상기 제1 난수를 시드(seed)로 사용하도록 구성된 의사(pseudo) 난수 생성기인 것을 특징으로 하는 장치.
  13. 청구항 11에 있어서,
    상기 제2 난수의 적어도 일부를 시드로 사용함으로써 제3 난수를 생성하도록 구성된 적어도 하나의 제3 난수 생성기를 더 포함하고,
    상기 랜덤 신호 및 상기 선택 신호는, 상기 제3 난수의 상이한 비트들을 각각 포함하는 것을 특징으로 하는 장치.
  14. 청구항 13에 있어서,
    상기 적어도 하나의 제3 난수 생성기는, 상기 제2 난수의 적어도 일부에 기초하여 상기 제3 난수를 갱신하도록 구성된 것을 특징으로 하는 장치.
  15. 청구항 1에 있어서,
    상기 집적 회로에 대한 침습성 공격을 검출하도록 구성된 해킹 검출 회로를 더 포함하고,
    상기 신호 생성 회로는, 상기 해킹 검출 회로의 출력 신호에 기초하여 상기 랜덤 신호 및/또는 상기 선택 신호의 갱신 주기를 조절하도록 구성된 것을 특징으로 하는 장치.
  16. 청구항 1에 있어서,
    상기 집적 회로는, 테스트 모드에서 상기 수신 회로에 의해서 상기 침습성 공격이 검출되지 아니하는 경우, 상기 테스트 모드를 해제하도록 구성된 테스트 회로를 더 포함하는 것을 특징으로 하는 장치.
  17. 청구항 1에 있어서
    상기 복수의 도선들은, 제1 층에 배치된 제1 그룹 및 제2 층에 배치된 제2 그룹을 포함하고,
    상기 제1 그룹의 도선들 및 상기 제2 그룹의 도선들은 동일한 피치(pitch)를 가지고,
    상기 제1 그룹의 도선들은, 상기 제2 그룹의 인접한 도선들의 중심 상에 배치되는 것을 특징으로 하는 장치.
  18. 청구항 1에 있어서
    상기 송신 회로는, 상기 복수의 도선들 중 선택되지 아니한 도선들을 플로팅시키거나 일정한 전위를 인가하도록 구성된 것을 특징으로 하는 장치.
  19. 집적 회로 및 상기 집적 회로 상에 배치된 복수의 도선들을 포함하고,
    상기 집적 회로는,
    난수(random number)에 기초하여, 랜덤 신호 및 선택 신호를 생성하도록 구성된 신호 생성 회로;
    상기 선택 신호에 기초하여 상기 복수의 도선들 중 하나를 각각 선택하고 선택된 도선을 통해서 상기 랜덤 신호의 한 비트를 각각 출력하도록 구성된, 복수의 디멀티플렉서들을 포함하는 송신 회로; 및
    상기 선택 신호에 기초하여 상기 복수의 도선들 중 하나를 각각 선택하고 선택된 도선을 통해서 수신된 신호를 각각 출력하도록 구성된, 복수의 멀티플렉서들을 포함하고, 상기 복수의 멀티플렉서들의 출력 신호들에 기초하여 상기 집적 회로에 대한 침습성 공격을 각각 검출하도록 구성된 수신 회로를 포함하는 장치.
  20. 집적 회로 상에 배치된 복수의 도선들을 사용하여 침습성 공격을 검출하기 위한 방법으로서,
    난수(random number)에 기초하여, 랜덤 신호 및 선택 신호를 생성하는 단계;
    상기 선택 신호에 기초하여, 상기 복수의 도선들 중 적어도 하나의 도선을 선택하는 단계;
    선택된 적어도 하나의 도선을 통해서 상기 랜덤 신호를 출력하는 단계; 및
    상기 적어도 하나의 도선을 통해서 수신된 신호에 기초하여 상기 침습성 공격을 검출하는 단계를 포함하는 방법.
KR1020200003185A 2020-01-09 2020-01-09 침습성 공격을 검출하기 위한 장치 및 방법 KR20210089960A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020200003185A KR20210089960A (ko) 2020-01-09 2020-01-09 침습성 공격을 검출하기 위한 장치 및 방법
US17/003,313 US11651071B2 (en) 2020-01-09 2020-08-26 Apparatus and methods for detecting invasive attacks within integrated circuits
CN202010964948.4A CN113111394A (zh) 2020-01-09 2020-09-15 用于检测对集成电路的侵入性攻击的设备和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200003185A KR20210089960A (ko) 2020-01-09 2020-01-09 침습성 공격을 검출하기 위한 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20210089960A true KR20210089960A (ko) 2021-07-19

Family

ID=76708965

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200003185A KR20210089960A (ko) 2020-01-09 2020-01-09 침습성 공격을 검출하기 위한 장치 및 방법

Country Status (3)

Country Link
US (1) US11651071B2 (ko)
KR (1) KR20210089960A (ko)
CN (1) CN113111394A (ko)

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5861662A (en) 1997-02-24 1999-01-19 General Instrument Corporation Anti-tamper bond wire shield for an integrated circuit
DE50013937D1 (de) 2000-08-21 2007-02-15 Infineon Technologies Ag Vorrichtung zum Schutz einer integrierten Schaltung
DE10223176B3 (de) 2002-05-24 2004-01-22 Infineon Technologies Ag Integrierte Schaltung mit sicherheitskritischen Schaltungskomponenten
KR20060119410A (ko) * 2005-05-20 2006-11-24 한국전자통신연구원 가변 정전압을 발생하는 장치 및 방법
US7352203B1 (en) 2006-12-26 2008-04-01 Atmel Corporation Method to reduce power in active shield circuits that use complementary traces
KR101299602B1 (ko) 2007-03-27 2013-08-26 삼성전자주식회사 리버스 엔지니어링을 보호하는 집적회로
US9634835B2 (en) * 2010-10-08 2017-04-25 Id Quantique Sa Apparatus and method for the detection of attacks taking control of the single photon detectors of a quantum cryptography apparatus by randomly changing their efficiency
US10678951B2 (en) * 2011-10-24 2020-06-09 Maxim Integrated Products, Inc. Tamper detection countermeasures to deter physical attack on a security ASIC
US8901954B2 (en) 2011-11-18 2014-12-02 Tubitak Active shield with electrically configurable interconnections
FR2986632B1 (fr) 2012-02-06 2016-02-12 Altis Semiconductor Snc Protection d'un circuit integre contre des attaques invasives
US9330255B2 (en) * 2012-05-03 2016-05-03 Cisco Technology, Inc. Method and system for monitoring a computer system
US9280678B2 (en) * 2013-12-02 2016-03-08 Fortinet, Inc. Secure cloud storage distribution and aggregation
US9813232B2 (en) * 2015-03-17 2017-11-07 Cypress Semiconductor Corporation Device and method for resisting non-invasive attacks
KR101809076B1 (ko) 2016-07-05 2017-12-15 고려대학교 산학협력단 역설계 방지 집적회로칩
US10069805B1 (en) * 2016-09-14 2018-09-04 Cipherloc Corporation Polymorphic one time pad matrix
US10530567B2 (en) * 2016-10-05 2020-01-07 Megachips Corporation Encryption device and memory device
US9946899B1 (en) * 2016-10-14 2018-04-17 Google Llc Active ASIC intrusion shield
EP3542261B1 (en) * 2016-11-15 2020-04-08 Telefonaktiebolaget LM Ericsson (PUBL) Method for performing a trustworthiness test on a random number generator
US10573605B2 (en) * 2016-12-13 2020-02-25 University Of Florida Research Foundation, Incorporated Layout-driven method to assess vulnerability of ICs to microprobing attacks
US11419046B2 (en) * 2018-04-13 2022-08-16 Telefonaktiebolaget Lm Ericsson (Publ) Methods and systems for performing multi-domain network slice selection and approval
KR102245773B1 (ko) * 2019-06-11 2021-04-27 연세대학교 산학협력단 침투 공격에 대해 검출 및 보호가 가능한 온칩 보안 회로
US11436383B2 (en) * 2019-10-29 2022-09-06 Nxp B.V. Active shielding device and method of active shielding

Also Published As

Publication number Publication date
CN113111394A (zh) 2021-07-13
US20210216626A1 (en) 2021-07-15
US11651071B2 (en) 2023-05-16

Similar Documents

Publication Publication Date Title
US20200349295A1 (en) Tamper detection countermeasures to deter physical attack on a security asic
KR100490114B1 (ko) 엔코딩 기능을 가진 마이크로 프로세서 장치
US20090024890A1 (en) Circuit arrangement, data processing device comprising such circuit arrangement as well as method for identifying an attack on such circuit arrangement
US9747472B2 (en) Mesh grid protection
US10289840B2 (en) Integrated circuit with tamper protection and method therefor
EP2962534B1 (en) Anti-tamper system based on dual random bits generators for integrated circuits
US9946899B1 (en) Active ASIC intrusion shield
US9455233B1 (en) System for preventing tampering with integrated circuit
EP3503466B1 (en) Countermeasures to frequency alteration attacks on ring oscillator based physical unclonable functions
EP2524334A2 (en) System and methods for generating unclonable security keys in integrated circuits
US10256199B2 (en) Integrated receiver circuit for electromagnetic pulse detection in wireless microcontrollers
KR20210038663A (ko) 집적 회로의 템퍼 검출
US20090327381A1 (en) True random number generator
KR20210089960A (ko) 침습성 공격을 검출하기 위한 장치 및 방법
Dubrova et al. Keyed logic BIST for Trojan detection in SoC
Rajski et al. Hardware Root of Trust for SSN-basedDFT Ecosystems
Akkaya et al. Secure chip odometers using intentional controlled aging
JP2001244414A (ja) 半導体集積回路
US9374219B2 (en) Method and apparatus for securing access to an integrated circuit
US20140049359A1 (en) Security device and integrated circuit including the same
Nagata et al. On-chip physical attack protection circuits for hardware security
Nagata et al. Analog Techniques for Digital Security: My gratitudes to visionary discussions
KR100884566B1 (ko) 레이저 어택 검출기를 갖는 스마트 카드
Yi et al. Practical silicon-backside-protection method for abnormally detection
KR20030055745A (ko) 전자칩의 외부공격 탐지장치

Legal Events

Date Code Title Description
A201 Request for examination