서지주요정보
Reliability and performance improvement techniques for counter caches in secure memories = 시큐어 메모리의 카운터 캐시 최적화를 통한 신뢰성 및 성능 향상 기법
서명 / 저자 Reliability and performance improvement techniques for counter caches in secure memories = 시큐어 메모리의 카운터 캐시 최적화를 통한 신뢰성 및 성능 향상 기법 / Jesung Kim.
발행사항 [대전 : 한국과학기술원, 2022].
Online Access 원문보기 원문인쇄

소장정보

등록번호

8039585

소장위치/청구기호

학술문화관(도서관)2층 학위논문

DCS 22018

휴대폰 전송

도서상태

이용가능(대출불가)

사유안내

반납예정일

리뷰정보

초록정보

Secure memory is one of the hardware-based trusted execution environment techniques. It prevents unauthorized access and forgery of data transferring between the processor and main memory from an attacker and achieves this by guaranteeing confidentiality and integrity. Confidentiality can be achieved by encrypting data passing between the processor and memory. However, to satisfy the integrity, tree traversal must be performed for the integrity tree composed of counter nodes for every data access. A large amount of additional memory access causes significant performance degradation in this process. To mitigate this performance penalty, a counter cache is used that stores part of the counter nodes in the integrity tree. However, the counter cache introduces new reliability and performance issues that do not occur in traditional data caches. This dissertation proposes a reliability and performance improvement technique for the counter cache. In particular, we distinguish the difference between the traditional data cache and the counter cache and improve the reliability against the transient error and the efficiency of the counter cache based on the structural and operational characteristics of the counter cache. First, we analyze the new reliability issues caused by the counter cache and propose low-cost detection and recovery techniques. All counters in the counter node are propagated to lower nodes or data areas when a transient error occurs because all nodes are dependent on child nodes according to the inherent characteristics of the integrity tree. In addition, access to data in a wide area may become impossible depending on the logical level of the counter node in which the error has occurred. When a counter node is loaded in the counter cache, it is verified through a message authentication code (MAC). This MAC verification process can be used to detect and recover errors. In addition, we introduce a low-cost replicating method for vulnerable counters in the counter cache that cannot be recovered from an error. Second, we discuss counter cache allocation techniques that can increase the effectiveness of the counter cache. The counter cache loads 64-byte counter nodes from main memory which embed multiple counters. According to our observation, after a counter node is loaded into the counter cache, only a small amount of counters are accessed and then evicted from the cache again. This access pattern can be seen more frequently if the counter nodes are reside in the lower level of the integrity tree. In other words, most counters loaded into the counter cache are unused and cause space overheads. If these waste spaces can be eliminated, the utilization of the counter cache can be increased. Therefore, we propose a technique to increase the cache efficiency by loading only required counters into the counter cache. The proposed methods were evaluated through cycle-accurate simulators and selected memory-intensive workloads in various benchmarks. Through experiments, we demonstrate that the proposed methods based on the characteristics of secure memory can efficiently improve the reliability and performance of the counter cache.

시큐어 메모리는 하드웨어 기반의 신뢰 실행 환경 기법들 중 하나로써 프로세서와 주 메모리를 오가는 데이터에 대하여 공격자로부터의 허가되지 않은 접근 및 위/변조를 방지하며 이는 기밀성과 무결성을 보장하여 달성한다. 기밀성을 달성하는 것은 프로세서와 메모리 사이에 오가는 데이터에 대하여 암호화를 수행하는 것으로 비교적 쉽게 달성할 수 있다. 그러나 무결성을 만족시키기 위해서는 매 데이터 접근마다 카운터 노드 로 구성된 무결성 트리에 대해 트리 순회를 수행해야 하며, 이 과정에서 많은 추가적 메모리 접근으로 인해 큰 성능 저하가 발생하게 된다. 이러한 성능 저하를 완화하기 위하여 무결성 트리의 노드들을 일부 저장할 수 있는 카운터 캐시를 사용한다. 그러나 카운터 캐시의 사용은 전통적인 데이터 캐시에서는 발생하지 않는 새로운 신뢰성 및 성능 효율성 문제를 야기하였다. 본 학위 논문에서는 카운터 캐시에 대한 신뢰성 및 성능 향상 기법을 제안한다. 특히 기존의 전통적인 데이터 캐시와 카운터 캐시의 차이를 명확히 구분하고 카운터 캐시에만 존재하는 구조적 차이 및 동작 특성에 기반하여 트랜젼트 에러에 대한 신뢰성 향상 및 카운터 캐시의 효율성 향상을 목표로 한다. 첫 번째로는, 카운터 캐시로 인하여 발생하는 새로운 신뢰성 문제를 분석하고 이를 저비용으로 탐지하고 복구할 수 있는 기법을 논의한다. 카운터 노드 내의 모든 카운터들은 무결성 트리의 태생적 특징에 따라 모든 노드가 자식 노드와 의존성이 있기 때문에 트랜젼트 에러 발생시 이는 하위 노드 또는 데이터 영역으로 전파된다. 뿐만 아니라, 에러가 발생한 카운터 노드의 논리적 레벨에 따라 광범위한 영역의 데이터에 대한 접근이 불가능해질 수 있다. 카운터 캐시에서는 카운터 노드가 적재될 때 메시지 인증 코드를 통해 검증을 하게 되는데, 이 검증 과정을 활용하여 에러를 검출하고 복구할 수 있다. 또한 에러로부터 복구될 수 없는 몇몇의 취약한 카운터들을 위하여 저비용으로 카운터를 캐시라인 내에 복제하는 기법 또한 소개한다. 두 번째로는, 카운터 캐시의 효율성을 증대시킬 수 있는 카운터 캐시 적재 기법을 논의한다. 카운터 캐시는 64 바이트의 카운터 노드 단위로 적재를 수행하며 카운터 노드 내에는 여러 개의 카운터들이 존재 한다. 우리의 관측에 의하면 카운터 노드가 캐시에 적재된 후 적은 양의 카운터만 접근되어진 후 다시 캐시 밖으로 내보내어지며, 이 현상은 무결성 트리에서 하위 노드일수록 더 빈번하게 발생한다. 다시 말하면, 카운터 캐시에 적재되는 카운터들 중 대부분은 사용되지 않고 공간만 차지하며, 이러한 낭비를 제거할 수 있다면 카운터 캐시의 이용률을 증가시킬 수 있다. 따라서 우리는 사용되어지는 카운터만을 카운터 캐시에 적재하여 공간적 낭비를 제거함으로써 카운터 캐시의 효율을 증가시킬 수 있는 기법을 제안한다. 제안 기법들은 사이클 기반 시뮬레이터와 다양한 벤치마크들에서 선별된 메모리 접근 집약적 작업들을 통해 평가되었으며, 실험을 통해 시큐어 메모리의 특성에 기반하는 제안 기법들이 카운터 캐시의 신뢰성 및 성능을 효율적으로 향상시킬 수 있음을 보였다.

서지기타정보

서지기타정보
청구기호 {DCS 22018
형태사항 v, 73 p. : 삽도 ; 30 cm
언어 영어
일반주기 저자명의 한글표기 : 김제성
지도교수의 영문표기 : Soontae Kim
지도교수의 한글표기 : 김순태
Including appendix
학위논문 학위논문(박사) - 한국과학기술원 : 전산학부,
서지주기 References : p. 67-71
주제 Secure memory
Cache memory
Reliability
Performance
시큐어 메모리
캐시 메모리
신뢰성 설계
성능 향상
QR CODE

책소개

전체보기

목차

전체보기

이 주제의 인기대출도서