TLS 가속

TLS acceleration
2002년 도입된 Sun Microsystems SSL Accelerator PCI 카드

TLS Acceleration(이전의 SSL Acceleration)은 TLS(Transport Layer Security)와 그 전신인 SSL(Secure Sockets Layer)에 대한 프로세서 집약적인 공용암호화를 하드웨어 가속기로 오프로드하는 방법이다.

일반적으로 이는 SSL 처리의 대부분을 처리할 수 있는 하나 이상의 코프로세서를 포함하는 컴퓨터의 PCI 슬롯에 연결되는 별도의 카드를 갖는 것을 의미한다.

TLS 가속기는 기성 CPU를 사용할 수 있지만, 대부분의 경우 사용자 지정 ASICRISC 칩을 사용하여 어려운 연산 작업을 대부분 수행한다.

TLS 가속 작업의 원리

TLS 세션에서 계산적으로 가장 비용이 많이 드는 부분은 TLS 핸드셰이크인데, TLS 서버(보통 웹서버)와 TLS 클라이언트(보통 웹 브라우저)는 연결의 보안을 설정하는 여러 파라미터에 대해 합의한다. TLS 핸드셰이크 동안 서버와 클라이언트는 세션 키(대칭 키, 주어진 세션 기간 동안 사용됨)를 설정하지만, TLS 핸드셰이크 메시지 자체의 암호화 및 서명은 비대칭 키를 사용하여 이루어지는데, 이는 의 암호화/암호 해독에 사용되는 대칭 암호보다 더 많은 계산력을 필요로 한다. 세션 데이터

일반적으로 하드웨어 TLS 가속기는 실제 TLS 데이터 교환의 덜 강렬한 대칭 암호화를 처리하기 위해 서버 소프트웨어에 맡기는 동안 TLS 핸드셰이크의 처리를 오프로드하지만, 일부 가속기는 모든 TLS 작업을 처리하고 TLS 연결을 종료하므로 서버는 암호 해독된 연결만 보게 된다. 때때로 데이터 센터는 역방향 프록시 구성에서 TLS 가속을 위한 전용 서버를 채택한다.

중앙 프로세서 지원

현대식 x86 CPU는 2008년 3월 인텔이 제안한 AES 명령어 세트를 사용하여 하드웨어에서 AES(Advanced Encryption Standard) 인코딩 및 디코딩을 지원한다.

올위너 테크놀로지는 A10, A20, A30, A80 ARM 시스템 온칩 시리즈에서 하드웨어 암호 가속기를 제공하며, 모든 ARM CPU는 후기 ARMv8 아키텍처에서 가속도를 가진다. 액셀러레이터는 RSA 공용 키 알고리즘, 널리 사용되는 몇 가지 대칭알고리즘, 암호 해시 함수, 암호화된 보안 의사 난수 생성기를 제공한다.[1]

참고 항목

참조

외부 링크