KR20180059217A - 메모리 데이터 보안 처리 장치 및 방법 - Google Patents

메모리 데이터 보안 처리 장치 및 방법 Download PDF

Info

Publication number
KR20180059217A
KR20180059217A KR1020160158518A KR20160158518A KR20180059217A KR 20180059217 A KR20180059217 A KR 20180059217A KR 1020160158518 A KR1020160158518 A KR 1020160158518A KR 20160158518 A KR20160158518 A KR 20160158518A KR 20180059217 A KR20180059217 A KR 20180059217A
Authority
KR
South Korea
Prior art keywords
data
value
processor
puf
memory
Prior art date
Application number
KR1020160158518A
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 KR1020160158518A priority Critical patent/KR20180059217A/ko
Publication of KR20180059217A publication Critical patent/KR20180059217A/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/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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • G11C16/105Circuits or methods for updating contents of nonvolatile memory, especially with 'security' features to ensure reliable replacement, i.e. preventing that old data is lost before new data is reliably written
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/007Encryption, En-/decode, En-/decipher, En-/decypher, Scramble, (De-)compress

Landscapes

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

Abstract

칩 수준의 데이터 보안 처리 장치가 제공된다. 장치는 반도체 공정 편차를 이용하여 예측 불가능한 무작위의 시불변 디지털 값인 제1 값을 제공하는 PUF; 및 상기 PUF가 제공하는 상기 제1 값을 이용하여 프로세서와 상기 프로세서에 연관되는 메모리 사이의 메모리 사이에서 스크램블 처리하는 스크램블러를 포함할 수 있다.

Description

메모리 데이터 보안 처리 장치 및 방법{APPARATUS AND METHOD FOR SECURE PROCESSING OF MEMORY DATA}
메모리의 데이터에 대한 보안 처리 장치 및 방법에 연관되며, 보다 특정하게는 PUF (Physically Unclonable Function)를 이용하여 메모리 데이터를 보안 처리하는 내용에 연관된다.
보안을 위한 하드웨어 칩(H/W chip)의 디지털 데이터를 보호하기 위해 많은 요소들이 이용된다. 예시적으로, NVM(non-volatile memory)과 RAM 등의 보호를 위해 암호화 과정 등 보안 처리가 수행된다. 일반적인 암호 알고리즘과 달리 칩 수준(chip level)에서 수행되는 방식은 암호화 대신 스크램블(scramble)이라는 방식이 많이 사용한다.
칩 수준 에서 프로세서(processor)와 메모리(RAM이나 NVM 등) 사이 블록 암호알고리즘 등을 사용하면 높은 보안 강도를 갖지만 블록(block) 내의 1 byte라도 값을 바꾸면 블록 전체를 복호화 한 후 다시 암호화하여 저장해야 하는 성능 저하가 있다.
한편, PUF는 예측 불가능한 (unpredictable) 디지털 값을 제공할 수 있다. 개개의 PUF들은 정확한 제조 공정이 주어지고, 동일한 공정에서 제조되더라도, 상기 개개의 PUF들이 제공하는 디지털 값은 다르다. PUF는 복제가 불가능한 POWF (Physical One-Way Function practically impossible to be duplicated)로 지칭될 수도 있다.
이러한 PUF의 복제 불가능한 특성은 보안 및/또는 인증을 위한 기기의 식별자(identifier)를 생성하는 데에 이용될 수 있다. 이를테면, 디바이스를 다른 디바이스와 구별하기 위한 유니크 키(unique key to distinguish devices from one another)를 제공하기 위해 PUF가 이용될 수 있다. PUF를 구현하는 방법에 관한 예시적 내용은 하기 선행기술문헌(특허문헌)에 제시된 바 있다.
(특허문헌 1) KR1139630 10
(특허문헌 2) KR0926214 10
일측에 따르면 반도체 공정 편차를 이용하여 예측 불가능한 무작위의 시불변 디지털 값인 제1 값을 제공하는 PUF; 및 상기 PUF가 제공하는 상기 제1 값을 이용하여 프로세서와 상기 프로세서에 연관되는 메모리 사이의 메모리 사이에서 스크램블 처리하는 스크램블러를 포함하는 메모리 데이터 보안 처리 장치가 제공된다.
일실시예에 따르면 상기 스크램블러는 상기 제1 값을 이용하여 상기 프로세서와 상기 메모리 사이의 어드레스 스크램블을 수행하는 어드레스 스크램블러를 포함한다.
일실시예에 따르면 상기 스크램블러는 상기 제1 값을 이용하여 상기 프로세서와 상기 메모리 사이의 데이터 스크램블을 수행하는 데이터 스크램블러를 포함한다.
다른 일측에 따르면, 칩에 포함되는 PUF가 반도체 공정 편차에서 기인하는 예측 불가능한 무작위의 시불변 디지털 값인 제1 값을 제공하는 단계; 및 상기 칩에 포함되는 스크램블러가 상기 PUF가 제공하는 상기 제1 값을 이용하여 프로세서와 상기 프로세서에 연관되는 메모리 사이의 메모리 사이에서 스크램블 처리하는 스크램블 단계를 포함하는 메모리 데이터 보안 처리 방법이 제공된다.
일실시예에 따르면 상기 스크램블 단계는, 상기 칩에 포함되는 어드레스 스크램블러가 상기 제1 값을 이용하여 상기 프로세서와 상기 메모리 사이의 어드레스 스크램블을 수행하는 단계를 포함한다.
일실시예에 따르면 상기 스크램블 단계는, 상기 칩에 포함되는 데이터 스크램블러가 상기 제1 값을 이용하여 상기 프로세서와 상기 메모리 사이의 데이터 스크램블을 수행하는 단계를 포함한다.
도 1은 일실시예에 따른 메모리 데이터 보안 처리 장치의 블록도이다.
도 2은 일실시예에 따른 메모리 데이터 보안 처리 장치의 예시적 회로도이다.
도 3은 다른 일실시예에 따른 메모리 데이터 보안 처리 장치의 예시적 회로도이다.
이하에서, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 권리범위는 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
아래 설명에서 사용되는 용어는, 연관되는 기술 분야에서 일반적이고 보편적인 것으로 선택되었으나, 기술의 발달 및/또는 변화, 관례, 기술자의 선호 등에 따라 다른 용어가 있을 수 있다. 따라서, 아래 설명에서 사용되는 용어는 기술적 사상을 한정하는 것으로 이해되어서는 안 되며, 실시예들을 설명하기 위한 예시적 용어로 이해되어야 한다.
또한 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 설명 부분에서 상세한 그 의미를 기재할 것이다. 따라서 아래 설명에서 사용되는 용어는 단순한 용어의 명칭이 아닌 그 용어가 가지는 의미와 명세서 전반에 걸친 내용을 토대로 이해되어야 한다.
도 1은 일실시예에 따른 메모리 데이터 보안 처리 장치의 블록도이다.
칩 수준에서 메모리 데이터 보안을 위해 스크램블 방식의 보안 처리를 수행한다. Scramble은 address와 data signal을 바꾸어 배치하거나 특정 bit inverse, xor, addition, substitution 등의 간단한 방식을 사용할 수 있고 block cipher나 hash함수에서 사용하는 함수를 이용하여 만든 값을 xor하여 사용 할 수도 있다.
NVM의 scramble은 모든 chip이 같도록 설계하는 경우가 많고 RAM의 scramble은 NVM의 serial number 등 chip 별로 다른 data를 key(scramble 방식을 결정)로 scramble 한다.
이렇게 scramble 방식으로 암호화 해도 회로와 NVM의 내용을 역공학(reverse engineering)을 통해 분석하면 scramble 방식(알고리즘)을 분석할 수 있고 NVM을 분석하면 숨기려는 원래의 data를 알 수 있다.
RAM의 경우 위에서 밝힌 데로 NVM을 이용하여 chip별로 다르게 scramble된 경우도 있지만 scramble 회로와 NVM을 분석할 수 있다면 이런 scramble도 공격될 수 있다.
PUF를 key로 하여 NVM, RAM, bus를 암호화하면 PUF값을 알아내기 전에는 그 내용을 파악할 수 없다.
하나의 chip에서 scramble 방식을 알아낸 후 공격 대상의 chip을 분석하면 비밀 data를 알아낼 수 있는 것과는 달리 PUF를 key로 scramble 하면 하나의 chip을 분석하여 scramble algorithm(방식)을 알아내도 다른 chip의 내용을 분석할 수 없다.
따라서 일반적인 data의 경우 scramble 방식으로 암호화하는데 이 때도 PUF를 사용하면 PUF값을 알기 전에는 data를 알아 낼 수 없다.
Scramble은 address를 변환하여 저장되는 위치를 바꾸는 방법과 data를 저장 단위인 byte나 word 단위로 변환하는 방식 중 하나 또는 두 가지를 모두 사용할 수 있다.
Address를 변환하는 parameter를 data를 변환하는 parameter에도 같이 사용하면 다른 address에 대하여 data를 다르게 암호화할 수 있어 보안성을 높일 수 있다.
NVM, RAM, bus 등은 H/W 자원이기 때문에 변환하는 방식을 전단사 함수(1:1 대응)를 사용하는 경우가 대부분이다.
예를 들어 8bits의 data를 저장하기 위해 9bits을 이용하여 변환하면 보안성은 높아지지만 chip의 크기를 늘리고 비용을 증가시킨다.
따라서 8bits의 data를 저장하기 위해 8bits의 저장 공간 또는 bus를 사용하는데 전단사 함수를 사용해서 변환한다.
Address도 자원을 절약하기 위해 전단사 함수를 사용하는 경우가 대부분이다.
일부 실시예에는 전단사 함수를 사용해 원래의 용량과 저장하는 용량이 같은 경우에 연관된다. 그러나, 이에 그치지 않고 다른 실시예들은 원래 data의 용량보다 더 큰 용량의 저장 공간이 필요한 확장 변환 함수를 사용하거나 원래 data의 용량보다 더 작은 용량의 저장 공간만 필요한 압축 함수를 사용한 경우도 포함된다.
CPU 또는 H/W logic에 변환된 값을 전달해야 하기 때문에 fetch 시간 내에 변환하거나 변환이 완료된 것을 알리는 signal을 함께 구성해야 한다.
도 2은 일실시예에 따른 메모리 데이터 보안 처리 장치의 예시적 회로도이다. 도 2에서 도시된 실시예에서는 Bus = Bus xor PUF Key는 Bus의 값을 PUF Key에 의해 반전시킬지 결정하는 방식이고 Bus0 = Bus0 xor (Bus1 and PUF Key)는 PUF Key에 의해 Bus0의 값에 Bus1의 값을 xor 시킬지 여부를 결정하는 방식이다.
두 번째 방식을 이용하면 선형성을 제거하는 용도로 사용될 수 있고 Bus를 교환하는 것으로 사용할 수 있다.
A ← A ^ B (A ← A0 ^ B0)
B ← A ^ B (B ← (A0 ^ B0) ^ B0 = A0)
A ← A ^ B (A ← (A0 ^ B0) ^ A0 = B0)
이렇게 되도록 회로를 설계하면 A와 B Bus를 교환 할 수 있다.
여기에 교환을 할지 결정하는 것을 PUF key로 제어할 수 있다.
도 3은 다른 일실시예에 따른 메모리 데이터 보안 처리 장치의 예시적 회로도이다. Random function을 이용하여 scramble을 수행하는 예로 PUF key와 다른 parameter (address의 경우 상위 address 등, data의 경우 address 등)를 이용하여 Random function을 구성할 수 있다.
예를 들어 RAM을 구성하는데 16kbytes의 용량을 사용한 시스템이 있다고 가정ㅎ나다. 그러면 16kbytes로 address가 14 signal line으로 구성되고 data는 8 signal line으로 구성된다.
여기에 14개의 address 중 0, 11의 line을 서로 맞바꿀 것이지 결정하는 것을 PUF 하나의 bit로 제어하고 2, 4의 line을 맞바꿀지 또 다른 PUF가 결정하고 하는 방식으로 여러 개의 PUF를 적용시킬 수 있다. 또한 14개의 address 중 n번째의 값을 반전시킬지를 PUF line과 xor 하여 구현할 수 있다.
Data의 선형성(linearity)를 없애기 위해 치환(substitution) 과정을 거칠 수 있는데 어떤 값을 또 다른 어떤 값으로 바꿀지 PUF bit를 이용하여 바꿀 수 있다.
암호화할 때와 복호화 할 때 사용될 data의 address가 같기 때문에 Address line은 암호화와 복호화 시 같은 회로를 사용한다.
Data line의 복호화 회로를 설계할 때 signal line에 직접 연산을 한 경우 치환은 암호화와 반대의 logic을 다시 설계해고 더하기는 빼기로 바꾸어야 하고 xor, inverse, 교환은 그대로 설계한다.
다만 암호화의 순서와 반대로 복호화 한다.
만약 도 3의 예시와 같이 Random function을 이용하여 scramble 하였다면 복호화할 때도 그대로 사용할 수 있다. Data signal line 8개는 address signal line을 암호화한 PUF를 이용하여 암호화하면 더 좋은 결과를 만들 수 있다.
이 것은 address에서 사용한 PUF를 사용하면 data가 address에 따라 다르게 암호화 되어 분석하기 더 어려워진다. 이 것은 실시 예이고 CPU와 RAM 등의 특성에 따라 address line, data line의 개수는 맞춰야 한다.
NVM의 scramble은 NVM을 write하는 블록 단위만큼을 따로 암호화 하는 경우가 많다.
이 것은 write할 때 연속되지 않은 data를 저장하면 연속되지 않은 data가 속한 모든 block을 암호화하여 다시 저장해야 하기 때문에 수행 시간이 늘어나고 수명을 단축될 수 있다.
예를 들어 용량이 16kbytes이고 32bytes 블록 단위로 write하는 경우라면 address signal line을 암호화할 때 5~13까지 9개만 암호화하고 나머지 address signal line 0~4는 32bytes 내의 signal로 따로 암호화 하던가 data signal line 위치와 섞어 위치만 바꾼 후 data를 암호화 해야 한다.
즉 32bytes 블록은 address를 scramble하여 그 위치가 정해지면 그 정해진 위치 내에서만 scramble해야 실제 쓸 때 한 번에 write할 수 있다.
그래야 1 블록 크기의 NVM을 write 할 때 하나의 블록 내에서 암호화를 수행할 수 있다.
RAM에 write할 때도 2bytes 혹은 4bytes 단위로 write하도록 설계된 경우 NVM과 마찬가지로 address에서 1 line 혹은 2 line을 따로 scramble 한다.
Scramble 방식의 또 다른 장점은 암호화된 data가 어디에 위치했는지 알 수 없다는 것이다. 그러나 일반적인 scramble은 같은 종류의 chip을 이용하여 일부를 변경한 후 분석해 보면 어느 위치에 저장되었는지 알 수 있다. 하지만 PUF를 이용한 scramble은 같은 chip에서만 같은 방식으로 암호화되기 때문에 동일 모델의 chip을 구하여 분석해도 공격 대상의 chip에 대한 scramble을 분석하는데 아무런 도움이 되지 않는다.
Scramble 사용되는 key를 외부에서 주입하고 그것을 PUF로 암호화하는 경우도 이 특허의 대상으로 한다. 즉 scramble 방식으로 암호화한 code를 외부에 Flash memory에 대량으로 생산하여 연결한 경우 chip 내부에 scramble key를 외부에서 주입해야 chip이 인식할 수 있다.
이 경우 scramble key를 외부에서 주입하고 그것을 보관할 때 PUF를 사용하여 암호화하는 응용에서도 사용될 수 있다. 이와 같이 RAM이나 NVM이 chip내에 같이 설계된 응용과 외부에 연결하여 사용하는 응용에도 사용될 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (7)

  1. 반도체 공정 편차를 이용하여 예측 불가능한 무작위의 시불변 디지털 값인 제1 값을 제공하는 PUF; 및
    상기 PUF가 제공하는 상기 제1 값을 이용하여 프로세서와 상기 프로세서에 연관되는 메모리 사이의 메모리 사이에서 스크램블 처리하는 스크램블러
    를 포함하는 메모리 데이터 보안 처리 장치.
  2. 제1항에 있어서,
    상기 스크램블러는 상기 제1 값을 이용하여 상기 프로세서와 상기 메모리 사이의 어드레스 스크램블을 수행하는 어드레스 스크램블러를 포함하는 메모리 데이터 보안 처리 장치.
  3. 제1항에 있어서,
    상기 스크램블러는 상기 제1 값을 이용하여 상기 프로세서와 상기 메모리 사이의 데이터 스크램블을 수행하는 데이터 스크램블러를 포함하는 메모리 데이터 보안 처리 장치.
  4. 칩에 포함되는 PUF가 반도체 공정 편차에서 기인하는 예측 불가능한 무작위의 시불변 디지털 값인 제1 값을 제공하는 단계; 및
    상기 칩에 포함되는 스크램블러가 상기 PUF가 제공하는 상기 제1 값을 이용하여 프로세서와 상기 프로세서에 연관되는 메모리 사이의 메모리 사이에서 스크램블 처리하는 스크램블 단계
    를 포함하는 메모리 데이터 보안 처리 방법.
  5. 제4항에 있어서,
    상기 스크램블 단계는, 상기 칩에 포함되는 어드레스 스크램블러가 상기 제1 값을 이용하여 상기 프로세서와 상기 메모리 사이의 어드레스 스크램블을 수행하는 단계를 포함하는 메모리 데이터 보안 처리 방법.
  6. 제4항에 있어서,
    상기 스크램블 단계는, 상기 칩에 포함되는 데이터 스크램블러가 상기 제1 값을 이용하여 상기 프로세서와 상기 메모리 사이의 데이터 스크램블을 수행하는 단계를 포함하는 메모리 데이터 보안 처리 방법.
  7. 제4항 내지 제6항 중 어느 한 항의 메모리 데이터 보안 처리 방법을 수행하는 프로그램을 수록한 컴퓨터 판독 가능 기록 매체.
KR1020160158518A 2016-11-25 2016-11-25 메모리 데이터 보안 처리 장치 및 방법 KR20180059217A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160158518A KR20180059217A (ko) 2016-11-25 2016-11-25 메모리 데이터 보안 처리 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160158518A KR20180059217A (ko) 2016-11-25 2016-11-25 메모리 데이터 보안 처리 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20180059217A true KR20180059217A (ko) 2018-06-04

Family

ID=62628003

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160158518A KR20180059217A (ko) 2016-11-25 2016-11-25 메모리 데이터 보안 처리 장치 및 방법

Country Status (1)

Country Link
KR (1) KR20180059217A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020139690A1 (en) * 2018-12-28 2020-07-02 Micron Technology, Inc. Physical unclonable function (puf) with nand memory array
KR20210083999A (ko) * 2019-12-27 2021-07-07 주식회사 안랩 암호화폐 지갑 보안장치 및 암호화폐 지갑 보안방법
US11295805B2 (en) 2020-04-20 2022-04-05 Samsung Electronics Co., Ltd. Memory modules and stacked memory devices

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020139690A1 (en) * 2018-12-28 2020-07-02 Micron Technology, Inc. Physical unclonable function (puf) with nand memory array
US11469909B2 (en) 2018-12-28 2022-10-11 Micron Technology, Inc. Physical unclonable function with NAND memory array
US11722323B2 (en) 2018-12-28 2023-08-08 Micron Technology, Inc. Physical unclonable function with NAND memory array
KR20210083999A (ko) * 2019-12-27 2021-07-07 주식회사 안랩 암호화폐 지갑 보안장치 및 암호화폐 지갑 보안방법
US11295805B2 (en) 2020-04-20 2022-04-05 Samsung Electronics Co., Ltd. Memory modules and stacked memory devices

Similar Documents

Publication Publication Date Title
TWI715619B (zh) 用於硬體強制單向密碼學的處理器、方法及系統
KR102013841B1 (ko) 데이터의 안전한 저장을 위한 키 관리 방법 및 그 장치
KR102113937B1 (ko) 메모리 무결성
US9432184B2 (en) Provisioning of secure storage for both static and dynamic rules for cryptographic key information
CN108449172B (zh) 加密/解密方法和计算设备的集成电路
US20170046281A1 (en) Address dependent data encryption
US9135450B2 (en) Systems and methods for protecting symmetric encryption keys
US8745411B2 (en) Protecting external volatile memories using low latency encryption/decryption
US9501429B2 (en) Dynamic key and rule storage protection
US8036379B2 (en) Cryptographic processing
US10452564B2 (en) Format preserving encryption of object code
US9183414B2 (en) Memory controller and memory device including the memory controller
CN103824032A (zh) 在微控制器中用于数据安全性处理的方法和装置
JP2010509662A (ja) 外部不揮発性メモリに記憶された情報の暗号化のための方法およびシステム
EP3319265B1 (en) Configuration based cryptographic key generation
US11783094B2 (en) System and method for providing protected data storage in data memory
TW201918923A (zh) 安全邏輯系統及操作安全邏輯系統的方法
US20170046280A1 (en) Data processing device and method for protecting a data processing device against attacks
US9729319B2 (en) Key management for on-the-fly hardware decryption within integrated circuits
KR20180059217A (ko) 메모리 데이터 보안 처리 장치 및 방법
KR101126596B1 (ko) 단일 및 다중 aes 동작을 지원하기 위한 듀얼 모드 aes 장치 및 방법
US11061996B2 (en) Intrinsic authentication of program code
CN113536331B (zh) 存储器和计算***的数据安全
JP2004280678A (ja) データ処理装置、およびデータ処理方法
JP2009075474A (ja) 暗号処理装置

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application