KR100746033B1 - 무결성 측정 장치 및 방법 - Google Patents

무결성 측정 장치 및 방법 Download PDF

Info

Publication number
KR100746033B1
KR100746033B1 KR1020060015706A KR20060015706A KR100746033B1 KR 100746033 B1 KR100746033 B1 KR 100746033B1 KR 1020060015706 A KR1020060015706 A KR 1020060015706A KR 20060015706 A KR20060015706 A KR 20060015706A KR 100746033 B1 KR100746033 B1 KR 100746033B1
Authority
KR
South Korea
Prior art keywords
memory
hash value
integrity
loaded
allocation unit
Prior art date
Application number
KR1020060015706A
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 KR1020060015706A priority Critical patent/KR100746033B1/ko
Priority to US11/655,213 priority patent/US8423787B2/en
Priority to JP2007026491A priority patent/JP2007220105A/ja
Priority to EP07101840A priority patent/EP1821450A1/en
Priority to CNB2007100788842A priority patent/CN100524314C/zh
Application granted granted Critical
Publication of KR100746033B1 publication Critical patent/KR100746033B1/ko
Priority to JP2011116778A priority patent/JP2011170888A/ja

Links

Images

Classifications

    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/273Tester hardware, i.e. output processing circuits
    • G06F11/277Tester hardware, i.e. output processing circuits with comparison between actual response and known fault-free response

Abstract

본 발명은 무결성 측정 장치 및 방법에 관한 것으로서, 더욱 상세하게는 무결성을 측정하기 위한 객체의 불필요한 메모리로의 로딩을 방지할 수 있는 무결성 측정 장치 및 방법에 관한 것이다.
본 발명의 실시예에 따른 무결성 측정 장치는, 메모리의 할당 단위에 따라 제 1객체로부터 둘 이상으로 분해된 제 2객체들 중 적어도 하나를 상기 메모리에 로딩하는 맵핑 모듈, 상기 분해된 제 2객체에 대한 해쉬값을 저장하는 저장 모듈, 및 상기 로딩된 제 2객체에 대한 해쉬값과 상기 저장된 해쉬값을 통해 상기 제 1객체의 무결성을 측정하는 측정 모듈을 포함한다.
무결성, 해쉬값

Description

무결성 측정 장치 및 방법{Apparatus and method for measuring integrity}
도 1은 종래의 기술에 따른 무결성 측정 장치가 도시된 도면.
도 2는 본 발명의 실시예에 따른 무결성 측정 장치가 도시된 도면.
도 3은 본 발명의 실시예에 따른 제 1객체가 메모리 할당 단위에 따라 분해된 제 2객체가 로딩된 메모리가 도시된 도면.
도 4는 본 발명의 실시예에 따른 제 1객체가 메모리 할당 단위에 따라 분해된 각 제 2객체에 따라 저장 모듈에 저장된 해쉬값이 도시된 도면.
도 5는 본 발명의 실시예에 따른 무결성 측정 방법이 도시된 도면.
<도면의 주요 부분에 관한 부호의 설명>
110: 메모리 120: 맵핑 모듈
130: 저장 모듈 140: 측정 모듈
본 발명은 무결성 측정 장치 및 방법에 관한 것으로서, 더욱 상세하게는 무결성을 측정하기 위한 객체의 불필요한 메모리로의 로딩을 방지할 수 있는 무결성 측정 장치 및 방법에 관한 것이다.
DES와 같은 대칭형 암호 또는 RSA 공개키 암호는 정당한 송신자와 수신자 이외의 제 3자로부터 데이터의 내용을 은닉시키기 위해서 사용되는 암호와 알고리즘이다. 최근, 통신 네트워크를 통한 데이터의 교환이 활발해 짐에 따라 단순히 데이터의 기밀성을 유지하는 것만으로는 충분하지가 않게 되었다.
수신자의 입장에서는 수신된 데이터가 전송되는 과정에서 불법적인 제 3자에 의해서 의도적으로 변조되지 않았다는 확신을 갖게 하는 데이터에 대한 무결성(Integrity) 및 수신된 데이터의 실제 작성자를 확인하는 데이터 인증(Data Authentication)이 요구된다.
원칙적으로 무결성과 데이터 인증은 분리해서 취급될 수 없는 개념으로서 데이터 인증은 무결성을 포함하고 반대로 무결성은 데이터 인증을 포함하고 있다. 그 이유는 원래의 메시지 작성자가 보낸 데이터가 중도에서 제 3자에 의해 변조되었다면, 즉 무결성이 만족되지 못한다면 그 변조된 데이터의 작성자가 새로운 송신자가 되고 또한, 데이터의 실제 작성자를 파악할 수가 없다면 데이터의 무결성은 의미가 없어지기 때문이다.
해시함수는 데이터의 무결성을 보장하는 것으로, 해시함수는 소정 데이터를 입력값으로 하는 소정의 출력값을 출력하게 된다. 이러한 출력값은 데이터가 변경된다면 더 이상 유효하지 않으며, 데이터가 안전하지 못한 장소에 저장된다면, 무결성은 때때로 출력값의 재계산과 출력값이 변하지 않은 것의 확인을 통해서 점검할 수 있다.
도 1은 종래의 기술에 따른 무결성 측정 장치가 도시된 도면이다.
도시된 바와 같이, 종래의 기술에 따른 무결성 측정 장치(10)는, 메모리(11), 무결성을 측정하고자 하는 데이터(이하, 제 1데이터라 함)를 메모리(11)의 메모리 할당 단위에 따라 분해한 적어도 하나의 데이터(이하, 제 2데이터라 함)를 선택적으로 메모리(11)에 로딩하는 맵핑 모듈(12), 제 1데이터에 대한 해쉬값을 저장하는 저장 모듈(13), 메모리(11)에 로딩된 제 2데이터와 그렇지 않은 데이터를 통합하는 통합 모듈(14), 및 제 1데이터에 대한 무결성을 측정하는 측정 모듈(15)를 포함한다.
이때, 메모리(11)에는 제 1데이터가 메모리 할당되는 분해된 다수개의 제 2데이터가 선택적으로 로딩된다. 예를 들어, 제 1데이터가 메모리 할당 단위에 따라 N개의 제 2데이터로 분해된 경우 N개의 제 2데이터가 모두 로딩되거나 선택적으로 일부개의 제 2데이터만이 로딩된다.
측정 모듈(15)는 저장 모듈(13)에 저장된 제 1데이터에 대한 해쉬값을 통해 제 1데이터의 무결성을 측정하기 때문에 메모리(11)에 다수개의 제 2데이터가 선택적으로 로딩된 경우에는 통합 모듈(14)를 통해 메모리(11)에 로딩되지 않은 제 2데이터를 로딩된 제 2데이터와 통합하게 된다. 또한, 측정 모듈(15)은 통합된 데이터를 저장 모듈(13)의 해쉬값을 구하기 위해 사용된 해쉬함수와 동일한 해쉬함수의 입력값으로 하여 구해지는 출력값을 저장된 해쉬값과 비교하여 제 1데이터의 무결성을 측정하게 된다.
그러나, 종래의 기술에 따른 무결성 측정 장치(10)는, 메모리 할당 단위에 따라 분해되기 전의 제 1데이터의 해쉬값을 통해 제 1데이터의 무결성을 측정하기 때문에 제 1데이터가 적어도 하나의 제 2데이터로 분해되고, 분해된 적어도 하나의 제 2데이터가 선택적으로 메모리(11)에 로딩되는 경우, 로딩되지 않는 제 2데이터도 메모리(11)에 로딩해야 하기 때문에 불필요한 데이터의 로딩으로 인해 무결성 측정의 성능이 저하되는 문제점이 있다.
미국 공개 특허 2004-210736은 메모리 할당에 있어서, 드라이버 엔진은 해시 함수장치와 메모리 할당 장치를 가지며, 메모리의 충돌이 발생하면 선택적으로 해당 해쉬 테이블의 값에 따라 식별자를 할당하는 방법을 개시하고 있으나, 이는 데이터의 무결성을 측정하기 위해 불필요한 데이터의 로딩을 방지하여 무결성 측정시 성능 저하를 방지할 수 있는 방안은 제안되고 있지 않다.
본 발명은 무결성 측정시 불필요한 메모리 로딩을 줄임으로써 오버헤드를 감소시켜 효율적인 무결성 측정을 가능케 하는 무결성 측정 장치 및 방법을 제공하는데 그 목적이 있다.
본 발명의 목적은 이상에서 언급한 목적들로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해되어 질 수 있을 것이다.
상기 목적을 달성하기 위하여, 본 발명의 실시예에 따른 무결성 측정 장치는, 메모리의 할당 단위에 따라 제 1객체로부터 둘 이상으로 분해된 제 2객체들 중 적어도 하나를 상기 메모리에 로딩하는 맵핑 모듈, 상기 분해된 제 2객체에 대한 해쉬값을 저장하는 저장 모듈, 및 상기 로딩된 제 2객체에 대한 해쉬값과 상기 저장된 해쉬값을 통해 상기 제 1객체의 무결성을 측정하는 측정 모듈을 포함한다.
또한, 상기 목적을 달성하기 위하여, 본 발명의 실시예에 따른 무결성 측정 방법은, 메모리의 할당 단위에 따라 제 1객체로부터 둘 이상으로 분해된 제 2객체들 중 적어도 하나를 상기 메모리에 로딩하는 단계, 상기 분해된 제 2객체에 대한 해쉬값을 저장하는 단계, 및 상기 로딩된 제 2객체에 대한 해쉬값과 상기 저장된 해쉬값을 통해 상기 제 1객체의 무결성을 측정하는 단계를 포함한다.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범수를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
이하, 본 발명의 실시예들에 의하여 무결성 측정 장치 및 방법을 설명하기 위한 블록도 또는 처리 흐름도에 대한 도면들을 참고하여 본 발명에 대해 설명하도록 한다. 이 때, 처리 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있음을 이해할 수 있을 것이다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때 로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
도 2는 본 발명의 실시예에 따른 무결성 측정 장치가 도시된 도면이다.
도시된 바와 같이, 본 발명의 실시예에 따른 무결성 측정 장치(100)는, 메모리(110), 맵핑 모듈(120), 저장 모듈(130), 및 측정 모듈(140)을 포함할 수 있다.
메모리(110)는 캐쉬, ROM, PROM, EPROM, EEPROM, 플래쉬, SRAM 및 DRAM과 같은 형태의 장치들이 포함될 수 있으나, 이에 한정되지는 않는다. 또한, 본 발명의 실시예에서 메모리(110)는 메모리 영역을 할당하기 위한 할당 단위를 가지게 된다. 예를 들어, 플래시 메모리의 경우에는 데이터를 쓸 때 페이지 단위로 쓰여지게 되므로 메모리 할당 단위는 페이지가 될 수 있다. 따라서, 소정 객체를 메모리(110)에 로딩할 때 그 크기가 메모리 할당 단위를 초과하는 경우에는 효과적인 메모리 맵핑을 위해 객체를 메모리 할당 단위로 분해하여 로딩하게 된다. 이때, 본 발명의 실시예에서 사용되는 용어 중 객체는 운영체제, 커널, 파일 및 응용 프로그램 등을 포함할 수 있으나, 이에 한정되지 않는다.
맵핑 모듈(120)은 객체를 메모리(110)에 로딩하게 되며, 로딩하는 객체의 크기가 메모리(110)의 메모리 할당 단위를 초과할 경우에는 메모리 할당 단위에 따라 객체를 분해하여 로딩할 수 있다. 이하, 본 발명의 실시예에서 메모리(110)에 로딩되기 전의 객체를 제 1객체라 칭하고, 제 1객체가 메모리 할당 단위에 따라 분해된 객체를 제 2객체라 칭하기로 한다. 따라서, 제 2객체가 메모리(110)에 로딩되는 것으로 이해될 수 있다.
또한, 제 1객체의 크기가 메모리 할당 단위를 초과하는 경우 제 1객체는 메 모리 할당 단위에 따라 분해되어 로딩될 수 있으므로, 제 2객체는 적어도 하나 이상으로 이루어질 수 있다. 따라서, 제 1객체는 메모리(110)에 로딩될 때 하나의 제 2객체로 이루어지거나 다수개의 제 2객체로 이루어질 수 있다.
이때, 제 1객체가 하나의 제 2객체로 이루어지는 경우는 제 1객체의 크기가 메모리(110)의 메모리 할당 단위와 같거나 메모리 할당 단위보다 작은 것으로 이해될 수 있다.
또한, 맵핑 모듈(120)은 메모리(110)에 로딩된 제 2객체에 대한 맵핑 정보를 저장할 수 있다. 이때, 맵핑 정보는 메모리(110)에 저장되거나 별도의 저장 매체에 저장될 수 있으며, 메모리(110)에 로딩된 제 2객체가 위치한 주소 등으로 이해될 수 있다. 이러한 맵핑 정보는 차후에 메모리(110)에 로딩된 제 2객체에 접근할 경우 참조되어 사용될 수 있다.
한편, 제 1객체가 메모리(110)의 메모리 할당 단위를 초과하여 메모리 할당 단위에 따라 다수개의 제 2객체로 분해된 경우, 다수개의 제 2객체는 모두 로딩될수도 있고, 선택적으로 로딩될수도 있다.
구체적으로, 맵핑 모듈(120)은 도 3과 같이, 제 1객체(210)를 메모리(110)의 메모리 할당 단위(111)에 따라 분해한 다수개의 제 2객체(220)를 선택적으로 메모리(110)에 로딩하는 것이다.
저장 모듈(130)는 제 1객체가 메모리 할당 단위에 따라 분해된 적어도 하나 이상의 제 2객체를 입력값으로 하는 해쉬함수의 출력값을 저장할 수 있다. 이하, 본 발명의 실시예에서 해쉬 함수의 출력값을 해쉬값이라 칭하기로 한다.
예를 들어, 제 1객체의 크기가 메모리(110)의 메모리 할당 단위를 초과하는 경우, 제 1객체는 메모리 할당 단위에 따라 분해가 이루어지게 된다. 이때, 제 1객체가 N개의 제 2객체로 분해된 경우, 도 4와 같이 각각의 제 2객체를 제 2객체1, 제 2객체2, 제 2객체3, ... ,제 2객체N-1, 제 2객체N이라 가정하면, 저장 모듈(110)은 각각의 제 2객체 입력값으로 하는 해쉬함수의 출력값인 N개의 해쉬값을 저장할 수 있다. 다시 말해서, 저장 모듈(130)은, 각각 제 2객체1, 제 2객체2, 제 2객체3, ... ,제 2객체N-1, 제 2객체N에 따른 해쉬값인 해쉬값1, 해쉬값2, 해쉬값3, ... , 해쉬값N-1, 해쉬값N이 저장되는 것이다. 물론, 제 1객체의 크기가 메모리(110)의 메모리 할당 단위와 같거나 메모리 할당 단위보다 작은 경우에는 제 2객체는 하나로 이루어지므로 해쉬값 또한 하나가 저장될 수 있다.
한편, 저장 모듈(130)은 외부로부터의 접근으로 인해 저장된 해쉬값이 변경되는 것이 방지될 수 있도록 읽기 전용 영역으로 이루어지거나 위조 방지 기술인 TRM(Temper Resistance Management) 기술과 같은 기술이 적용될 수 있다.
측정 모듈(140)은 메모리(110)에 로딩된 적어도 하나의 제 2객체에 대한 해쉬값을 저장 모듈(130)로부터 추출한 다음, 추출된 해쉬값과 메모리(110)에 로딩된 적어도 하나의 제 2객체를 입력값으로 하는 해쉬함수의 출력값을 비교하여 제 1객체의 무결성을 측정할 수 있다. 예를 들어, 제 1객체가 N개의 제 2객체로 분해되고, 분해된 N개의 제 2객체 중 제 2객체1, 제 2객체2, 제 2객체3이 메모리(110)에 로딩된 경우, 측정 모듈(140)은 저장 모듈(130)로부터 제 2객체1, 제 2객체2, 제 2객체3에 대한 해쉬값인 해쉬값1, 해쉬값2, 해쉬값3을 추출한 다음, 저장 모듈(130)에 저장된 해쉬값을 얻기 위해 사용된 해쉬함수에 로딩된 제 2객체1, 제 2객체2, 제 2객체3을 입력하여 출력값을 산출하게 된다. 이후, 측정 모듈(140)은 추출된 해쉬값과 산출된 해쉬값을 비교하여 동일한 경우, 제 1객체가 무결성이 보장되는 것으로 판단하고, 그렇지 않은 경우 무결성이 보장되지 않는 것으로 판단하게 된다.
따라서, 기존에 제 1객체의 무결성을 측정하기 위하여 메모리(110)에 로딩된 제 2객체뿐만 아니라, 로딩되지 않은 제 2객체로 메모리(110)에 로딩하여 제 1객체를 입력값으로 하는 해쉬함수의 출력값을 통해 제 1객체의 무결성을 측정하는 경우에 비하여 불필요한 제 2객체의 로딩이 필요치 않게 되어 무결성 측정에서 발생되는 성능 저하를 방지할 수 있게 된다.
도 5는 본 발명의 실시예에 따른 무결성 측정 방법이 도시된 도면이다.
도시된 바와 같이, 본 발명의 실시예에 따른 무결성 측정 방법은, 먼저 제 1객체와 메모리(110)의 메모리 할당 단위를 비교하고(S110), 비교 결과에 따라 제 1객체를 메모리 할당 단위에 따라 적어도 하나의 제 2객체로 분해한다(S120). 예를 들어, 메모리(110)가 플래시 메모리인 경우, 메모리 할당 단위는 페이지가 되고, 제 1객체의 크기가 페이지의 크기를 초과하는 경우 페이지의 크기에 따라 분해되는 것이다. 또한, 제 1객체의 크기가 메모리 할당 단위와 같거나 메모리 할당 단위보다 작은 경우, 제 1객체는 분해가 이루어지지 않기 때문에 하나의 제 2객체로도 이 루어질 수 있다.
맵핑 모듈(120)은 메모리 할당 단위에 따라 분해된 적어도 하나의 제 2객체를 선택적으로 메모리(110)에 로딩하게 된다(S130). 다시 말해서, 제 1객체가 메모리 할당 단위에 따라 N개의 제 2객체로 분해된 경우, N개의 제 2객체가 모두 메모리(110)에 로딩될 수도 있고, 선택적으로 로딩될 수도 있다.
또한, 맵핑 모듈(120)는 메모리(110)에 제 2객체를 로딩할 때 로딩된 제 2객체의 맵핑 정보를 저장할 수 있다. 이러한 맵핑 정보는 메모리(110)에 로딩된 제 2객체 및 로딩된 제 2객체가 위치한 주소 등의 정보를 포함할 수 있다.
측정 모듈(130)은 저장 모듈(140)로부터 메모리(110)에 로딩된 제 2객체에 따른 해쉬값을 추출한다(S140). 이때, 측정 모듈(130)은 맵핑 모듈(120)이 메모리(110)에 적어도 하나의 제 2객체를 로딩할 때 저장되는 맵핑 정보를 통해 메모리(110)에 로딩된 제 2객체를 확인할 수 있다. 따라서, 측정 모듈(130)은 맵핑 정보에 따라 로딩된 제 2객체에 대한 해쉬값을 저장 모듈(140)로부터 추출할 수 있다.
측정 모듈(130)은 저장 모듈(140)에 저장된 해쉬값들을 얻기 위해 사용된 해쉬함수와 동일한 해쉬함수를 통해 메모리(110)에 로딩된 적어도 하나의 제 2객체들에 대한 해쉬값을 산출한다(S150). 이때, 메모리(110)에 로딩된 제 2객체의 해쉬값을 산출하기 위해 사용하는 해쉬함수는 저장 모듈(140)에 저장된 해쉬값을 구하기 위해 사용된 해쉬 함수와 동일한 해쉬함수가 사용될 수 있다.
측정 모듈(130)은 추출된 해쉬값과 산출된 해쉬값을 비교하고(S160), 비교 결과 추출된 해쉬값과 산출된 해쉬값이 동일한 경우에는 제 1객체의 무결성이 보장 되는 것으로 판단한다(S170).
만일, 비교 결과 추출된 해쉬값과 산출된 해쉬값이 동일하지 않은 경우에는 제 1객체의 무결성이 보장되지 않는 것으로 판단된다(S180).
이와 같이, 제 1객체가 메모리(110)의 메모리 할당 단위에 따라 분해된 적어도 하나의 제 2객체가 선택적으로 메모리(110)에 로딩되었을 때 로딩된 제 2객체의 해쉬값을 저장 모듈(140)로부터 추출하고, 로딩된 제 2객체의 해쉬값을 산출하여 추출된 해쉬값과 산출된 해쉬값을 통해 제 1객체의 무결성을 측정하기 때문에 기존에 제 1객체의 무결성을 측정하기 위하여 메모리(110)에 로딩된 제 2객체 뿐만 아니라, 로딩되지 않은 제 2객체 또한 메모리(110)에 로딩하여 제 1객체 전체의 해쉬값을 통해 제 1객체의 무결성을 측정하는 경우에 비하여 불필요하게 로딩되지 않은 제 2객체를 로딩하지 않기 때문에 무결성 측정의 효율이 높아지고 무결성 측정을 통해 발생되는 성능 저하를 방지할 수 있게 된다.
상기 '모듈'는 소프트웨어 또는 Field Programmable Gate Array(FPGA) 또는 주문형 반도체(Application Specific Integrated Circuit, ASIC)과 같은 하드웨어 구성요소를 의미하며, 모듈은 어떤 역할들을 수행한다. 그렇지만 모듈은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. 모듈은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 실행시키도록 구성될 수도 있다. 따라서, 일 예로서 모듈은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그 먼트들, 드라버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 모듈들에서 제공되는 기능은 더 작은 수의 구성요소들 및 모듈들로 결합되거나 추가적인 구성요소들과 모듈들로 더 분리될 수 있다.
이상과 같이 본 발명에 따른 무결성 측정 장치 및 방법을 예시된 도면을 참조로 하여 설명하였으나, 본 명세서에 개시된 실시예와 도면에 의해 본 발명은 한정되지 않으며 그 발명의 기술사상 범위내에서 당업자에 의해 다양한 변형이 이루어질 수 있음은 물론이다.
상기한 바와 같은 본 발명의 무결성 측정 장치 및 방법에 따르면, 제 1객체가 메모리 할당 단위에 따라 분해된 다수개의 제 2객체 중 선택적으로 메모리에 로딩된 제 2객체를 통해 제 1객체의 무결성을 측정하기 때문에 메모리에 로딩되지 않은 제 2객체를 불필요하게 메모리에 로딩하기 않아 무결성 측정으로 인한 성능 저하를 방지할 수 있는 효과가 있다.

Claims (12)

  1. 메모리의 할당 단위에 따라 제 1객체로부터 둘 이상으로 분해된 제 2객체들 중 적어도 하나를 상기 메모리에 로딩하는 맵핑 모듈;
    상기 분해된 제 2객체에 대한 해쉬값을 저장하는 저장 모듈;
    상기 로딩된 제 2객체에 대한 해쉬값과 상기 저장된 해쉬값의 비교를 통해 상기 제 1객체의 무결성을 측정하는 측정 모듈을 포함하는 무결성 측정 장치.
  2. 제 1 항에 있어서,
    상기 맵핑 모듈은, 상기 제 1객체의 크기가 상기 메모리의 할당 단위보다 클 때 상기 제 1객체를 상기 메모리 할당 단위로 분해하는 무결성 측정 장치.
  3. 제 1 항에 있어서,
    상기 맵핑 모듈은, 상기 다수의 제 2객체 중 선택된 제 2객체를 상기 메모리에 로딩하는 무결성 측정 장치.
  4. 제 1 항에 있어서,
    상기 저장 모듈은, 상기 각 제 2객체에 대한 모든 해쉬값을 저장하는 무결성 측정 장치.
  5. 제 4 항에 있어서,
    상기 측정 모듈은, 상기 메모리에 할당된 제 2객체에 해당하는 해쉬값을 상기 저장 모듈로부터 추출하는 무결성 측정 장치.
  6. 제 5 항에 있어서,
    상기 측정 모듈은, 상기 메모리에 로딩된 제 2객체에 대한 해쉬값을 산출하고, 상기 산출된 해쉬값과 상기 추출된 해쉬값을 비교하여 상기 제 1객체의 무결성을 측정하는 무결성 측정 장치.
  7. 메모리의 할당 단위에 따라 제 1객체로부터 둘 이상으로 분해된 제 2객체들 중 적어도 하나를 상기 메모리에 로딩하는 단계;
    상기 분해된 제 2객체에 대한 해쉬값을 저장하는 단계; 및
    상기 로딩된 제 2객체에 대한 해쉬값과 상기 저장된 해쉬값의 비교를 통해 상기 제 1객체의 무결성을 측정하는 단계를 포함하는 무결성 측정 방법.
  8. 제 7 항에 있어서,
    상기 다수의 제 2객체를 상기 메모리에 로딩하는 단계는, 상기 제 1객체의 크기가 상기 메모리의 할당 단위보다 클 때 상기 제 1객체를 상기 메모리 할당 단위로 분해하는 단계를 포함하는 무결성 측정 방법.
  9. 제 7 항에 있어서,
    상기 다수의 제 2객체를 상기 메모리에 로딩하는 단계는, 상기 다수의 제 2객체 중 선택된 제 2객체를 상기 메모리에 로딩하는 단계를 포함하는 무결성 측정 방법.
  10. 제 7 항에 있어서,
    상기 해쉬값을 저장하는 단계는, 모든 제 2객체에 대한 해쉬값을 저장하는 단계를 포함하는 무결성 측정 방법.
  11. 제 10 항에 있어서,
    상기 무결성을 측정하는 단계는, 상기 메모리에 로딩된 제 2객체에 해당하는 해쉬값을 상기 저장 모듈로부터 추출하는 단계를 포함하는 무결성 측정 방법.
  12. 제 11 항에 있어서,
    상기 무결성을 측정하는 단계는, 상기 메모리에 로딩된 제 2객체에 대한 해쉬값을 산출하는 단계; 및
    상기 산출된 해쉬값과 상기 추출된 해쉬값을 비교하여 상기 제 1객체의 무결성을 측정하는 단계를 포함하는 무결성 측정 방법.
KR1020060015706A 2006-02-17 2006-02-17 무결성 측정 장치 및 방법 KR100746033B1 (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020060015706A KR100746033B1 (ko) 2006-02-17 2006-02-17 무결성 측정 장치 및 방법
US11/655,213 US8423787B2 (en) 2006-02-17 2007-01-19 Apparatus and method of measuring integrity
JP2007026491A JP2007220105A (ja) 2006-02-17 2007-02-06 整合性測定装置及び方法
EP07101840A EP1821450A1 (en) 2006-02-17 2007-02-06 Apparatus and method of measuring integrity
CNB2007100788842A CN100524314C (zh) 2006-02-17 2007-02-16 测量完整性的设备和方法
JP2011116778A JP2011170888A (ja) 2006-02-17 2011-05-25 整合性測定装置及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060015706A KR100746033B1 (ko) 2006-02-17 2006-02-17 무결성 측정 장치 및 방법

Publications (1)

Publication Number Publication Date
KR100746033B1 true KR100746033B1 (ko) 2007-08-06

Family

ID=38123724

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060015706A KR100746033B1 (ko) 2006-02-17 2006-02-17 무결성 측정 장치 및 방법

Country Status (5)

Country Link
US (1) US8423787B2 (ko)
EP (1) EP1821450A1 (ko)
JP (2) JP2007220105A (ko)
KR (1) KR100746033B1 (ko)
CN (1) CN100524314C (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8296337B2 (en) 2006-12-06 2012-10-23 Fusion-Io, Inc. Apparatus, system, and method for managing data from a requesting device with an empty data token directive
US8151082B2 (en) * 2007-12-06 2012-04-03 Fusion-Io, Inc. Apparatus, system, and method for converting a storage request into an append data storage command
US8161353B2 (en) 2007-12-06 2012-04-17 Fusion-Io, Inc. Apparatus, system, and method for validating that a correct data segment is read from a data storage device
CN101582106B (zh) * 2009-06-19 2011-07-06 重庆邮电大学 细粒度数据完整性检验方法
JP5759827B2 (ja) * 2011-08-04 2015-08-05 株式会社メガチップス メモリシステム、情報処理装置、メモリ装置、およびメモリシステムの動作方法
CN106685640B (zh) * 2016-12-15 2020-03-31 周影 电子证据固定信息的生成方法及电子证据固定服务器
CN106713297B (zh) * 2016-12-15 2020-03-31 周影 基于云服务的电子数据固定平台

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990053174A (ko) * 1997-12-23 1999-07-15 정선종 해쉬함수를 이용한 정보의 무결성 확인방법
KR20060019548A (ko) * 2003-06-19 2006-03-03 인터내셔널 비지네스 머신즈 코포레이션 3단계 암호화를 사용하여 메시지를 암호화 및 검증하는시스템 및 방법

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5123045A (en) * 1989-08-18 1992-06-16 Massachusetts Institute Of Technology Comprehensive software protection system
JPH06309236A (ja) * 1993-04-21 1994-11-04 Nec Corp メモリの不正書込み検出回路
JPH07319775A (ja) * 1994-05-23 1995-12-08 Nec Corp メモリ照合方式
JPH0944410A (ja) * 1995-07-26 1997-02-14 Kyocera Corp ロードモジュールの管理方式
US6115799A (en) * 1996-07-19 2000-09-05 Canon Kabushiki Kaisha Information processing apparatus and associated method for managing a memory using a next fit and for reducing a memory fragmentation problem
US5757919A (en) * 1996-12-12 1998-05-26 Intel Corporation Cryptographically protected paging subsystem
CA2384185A1 (en) * 2002-04-29 2003-10-29 Ibm Canada Limited-Ibm Canada Limitee Resizable cache sensitive hash table
US20040210736A1 (en) * 2003-04-18 2004-10-21 Linden Minnick Method and apparatus for the allocation of identifiers
JP2004328042A (ja) * 2003-04-21 2004-11-18 Canon Inc 時刻保証方式
US7509473B2 (en) * 2003-08-27 2009-03-24 Adaptec, Inc. Segmented storage system mapping
US7103779B2 (en) * 2003-09-18 2006-09-05 Apple Computer, Inc. Method and apparatus for incremental code signing
US7831838B2 (en) * 2004-03-05 2010-11-09 Microsoft Corporation Portion-level in-memory module authentication

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990053174A (ko) * 1997-12-23 1999-07-15 정선종 해쉬함수를 이용한 정보의 무결성 확인방법
KR20060019548A (ko) * 2003-06-19 2006-03-03 인터내셔널 비지네스 머신즈 코포레이션 3단계 암호화를 사용하여 메시지를 암호화 및 검증하는시스템 및 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
1019990053174
1020060019548

Also Published As

Publication number Publication date
EP1821450A1 (en) 2007-08-22
CN101025762A (zh) 2007-08-29
JP2011170888A (ja) 2011-09-01
US20070198852A1 (en) 2007-08-23
US8423787B2 (en) 2013-04-16
CN100524314C (zh) 2009-08-05
JP2007220105A (ja) 2007-08-30

Similar Documents

Publication Publication Date Title
KR100746033B1 (ko) 무결성 측정 장치 및 방법
JP7376593B2 (ja) 人工知能を利用した安全保障システム
CN107426165B (zh) 一种支持密钥更新的双向安全云存储数据完整性检测方法
US10686589B2 (en) Combining hashes of data blocks
CN109831487B (zh) 分片文件验证方法及终端设备
CN105184118B (zh) 一种基于代码碎片化的Android应用程序加壳保护方法及装置
US8631500B2 (en) Generating minimality-attack-resistant data
EP3899770A1 (en) System and method for detecting data anomalies by analysing morphologies of known and/or unknown cybersecurity threats
CN110020544B (zh) 区块链的区块中存储记录的哈希信息处理方法和系统
US20140223192A1 (en) Method for protecting the integrity of a fixed-length data structure
JP5401477B2 (ja) 誤りに基づく攻撃から電子回路を保護する方法
JP6120961B2 (ja) 特定フォーマットを有する代替データの生成および検証
US20200202002A1 (en) Firmware security
WO2021027367A1 (zh) 代码混淆方法、装置、计算机设备和存储介质
WO2021098385A1 (zh) 在可信执行环境中训练gbdt模型的方法、装置及设备
US20210152326A1 (en) White-box encryption method for prevention of fault injection attack and apparatus therefor
CN107111730B (zh) 用于数据存储的完整性保护
US9853952B2 (en) Apparatus and method for encryption
CN111400670A (zh) 一种水印添加方法、装置、设备及存储介质
JPWO2020065958A1 (ja) 署名生成装置、署名プログラム生成装置、署名生成方法、署名プログラム生成方法、署名プログラム、及び署名生成プログラムの生成プログラム
WO2023216077A1 (zh) 一种验证方法、装置和系统
Barker et al. Rethinking the adversary and operational characteristics of deniable storage
CN117459327B (zh) 一种云数据透明加密保护方法、系统及装置
CN113328848B (zh) 参数化s盒生成方法、装置、设备及存储介质
US20190005249A1 (en) Assured computer architecture -volatile memory design and operation

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130627

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140627

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150629

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160629

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170629

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee