1 |
1
호스트로부터 호스트 버스를 통해 RX TLP 패킷을 분석하여 메모리 읽기 요청(Memory Request), 응답(Completion) 및 쓰기 요청(Write Request) 처리를 수행하도록 PCI-Express 종단장치와 TLP 패킷 분석 및 생성 장치를 포함하는 PCI-Express 호스트 정합부와; 상기 TLP 패킷에 포함된 명령블럭을 분석하여 작업 스케쥴러에 설정된 스케쥴링 알고리즘과 암호코어의 가용 자원에 대한 상태 레지스터를 참조하여 처리 순서를 결정하고 명령블럭을 분석하여 공개키 및 키관리에 관련된 명령어를 생성하고, 보안 서비스 결과를 호스트로 전송하는 다중 암호엔진 관리부와; 내부의 암호코어로 명령블럭을 수신하여 상기 명령블럭을 분석하여 내부의 세션메모리 정합부로 세션ID와 명령어를 전달하여 상기 암호코어를 동작시키는 다중 암호엔진부와; 시스템 초기화 기능과 상기 다중 암호엔진 관리부에서 수신한 공개키 및 키 관리에 관련된 명령블럭을 처리하는 시스템 제어부와; 상기 다중 암호엔진부와 연동되어 암호 알고리즘 처리 동작에 필요한 세션 데이터를 저장하는 세션 메모리부로 구성되는 것을 특징으로 하는 다중 암호엔진을 사용하는 고성능 암호화 장치
|
2 |
2
제1항에 있어서, 상기 다중 암호엔진부는, PCI-Express 버스를 통해 PCI-Express 종단장치에 전달된 상기 TLP 패킷을 분석하여 명령블럭을 추출하고 이를 내부에 구성된 암호처리부에 전달하는 암호코어와; 상기 세션 메모리부가 상기 암호코어와 연동되어 세션 ID와 명령어를 입력받아 상기 암호코어를 구동시키는 데에 위해 필요한 세션 데이터를 읽어 암호코어를 초기화하도로 정합하는 세션메모리 정합부(122)로 구성되는 것을 특징으로 하는 다중 암호엔진을 사용하는 고성능 암호화 장치
|
3 |
3
제1항에 있어서, 상기 RX TLP패킷을 분석하여 메모리 읽기 요청(Memory Request), 응답(Completion) 및 쓰기 요청(Write Request) 처리를 수행하고, 상기 RX TLP 패킷 중 명령블럭으로 판단되는 경우 패킷 중 명령블럭을 추출하여 상기 다중 암호엔진 관리부로 전송하는 수신 패킷 제어 블록과; 수신된 상기 TLP 패킷에 대한 응답을 수행해야 하는 경우 호스트의 응답요청에 대한 결과인 송신 TLP 패킷을 생성하여 호스트로 전송하는 기능을 수행하는 송신 패킷 제어 블록과; 상기 호스트의 요청 패킷에 대한 응답 패킷을 생성할 때 사용하기 위한 요청 패킷의 임시 저장 메모리인 Bypass FIFO와; 호스트가 메모리로 인식하며 메모리 읽기 및 쓰기에 대한 명령을 전송하면 송신 패킷 제어 블록(102b)을 통해 호스트로 DMA 요청 패킷이 전송되는 DMA(Direct Memory Access) 레지스터와; 보안 서비스 결과를 호스트로 전송하기 위한 패킷을 생성할 때 사용하기 위한 라우팅 정보인 Tag을 저장하는 Tag 레지스터(102e)와; 송신/수신 패킷 제어 블록(102a, 102b)에서 명령블럭 대기큐(111)와 응답블럭 대기큐(112)의 상태를 저장하는 FIFO 상태 레지스터(102f)를 포함하여 구성된 것을 특징으로 하는 다중 암호엔진을 사용하는 고성능 암호화 장치
|
4 |
4
제 1항에 있어서, 상기 시스템 제어부는 다중 암호엔진부의 암호자원의 가용 상태와 세션 ID에 대한 정보를 이용하여 고정적인 암호코어 할당 방식을 지원하는 정적 스케쥴링 방법과 암호코어 응용 환경에 적합하도록 스케쥴링을 가변시킬 수 있는 동적 스케쥴링 알고리즘을 선택적으로 사용하는 것을 특징으로 하는 다중 암호엔진을 사용하는 고성능 암호화 장치
|
5 |
5
제4항에 있어서, 상기 동적 스케쥴링은 FIFO큐 스케쥴링, 짧은 일 우선(Shortest-Job-First) 스케쥴링, 우선순위 스케쥴링, 라운드 로빈(Round robin) 스케쥴링 및 페어 큐(Fair Queue) 스케쥴링 중 선택된 어느 하나의 스케쥴링을 사용하는 것을 특징으로 하는 다중 암호엔진을 사용하는 고성능 암호화 장치
|
6 |
6
제4항에 있어서, 상기 작업 스케쥴러는, 상기 시스템 제어부로부터 응용환경에 적합한 스케쥴링 알고리즘을 수신받아 이를 저장하고 있는 알고리즘 레지스터와; 상기 암호코어 자원의 현재 상태를 보여주는 상태 레지스터와; 상기 알고리즘 레지스터에 설정된 스케쥴링 알고리즘과 복수의 상기 암호코어를 효율적으로 사용할 수 있도록 참조하여 명령블럭에 대한 처리 순서와 처리할 상기 암호코어를 선택하는 명령작업 스케쥴러와; 상기 알고리즘 레지스터에 설정된 스케쥴링 알고리즘과 복수의 암호코어를 효율적으로 사용할 수 있도록 참조하여 응답블럭에 대한 처리 순서와 처리할 상기 암호코어를 선택하는 응답작업 스케쥴러(113d)로 구성된 것을 특징으로 하는 다중 암호엔진을 사용하는 고성능 암호화 장치
|
7 |
7
제1항 내지 제4항 중 어느 한 항에 있어서, 상기 암호코어는, 상기 암호코어를 복수로 구성하고 상기 암호코어가 동작된 이후에 해당 명령에 대한 응답을 처리하기 위해 응답처리기로 명령 헤더를 전달하는 구조를 갖는 것을 특징으로 하는 다수의 다중 암호엔진을 사용하는 고성능 암호화 장치
|
8 |
8
제2항에 있어서, 상기 세션 메모리부는, 암호 알고리즘 처리 동작에 필요한 세션 데이터를 저장하는 세션메모리와; 상기 각각의 암호코어 간에 상기 세션메모리에 대한 접근 권한을 중재하여 고속의 암호처리를 구현하는 세션메모리 공유 중재기(141)로 구성된 것을 특징으로 하는 다중 암호엔진을 사용하는 고성능 암호화 장치
|
9 |
9
제 1항에 있어서, 상기 세션메모리에 저장된 알고리즘 선택변수, 초기값 및 키 데이터를 세션메모리 공유 중재기를 통해 세션 ID와 명령어 코드를 참조한 후 상기 암호코어의 내부 초기화 레지스터로 데이터를 전달할 수 있으며, 상기 시스템 제어부와도 제어 및 데이터 경로를 가지고 있는 듀얼 포드(Dual Port) 구조의 세션메모리를 가지는 다중 암호엔진을 사용하는 고성능 암호화 장치
|