티스토리 뷰

Engine-CUDA - code.google.com에 호스팅

'Engine_cudamrg for OpenSSL'은 CUDA를 지원하는 장치에서 수행되는 암호화 엔진이다. 현재 지원되는 암호화 타입은 다음과 같다.

  • AES-128-ECB
  • AES-128-CBC
  • AES-192-ECB
  • AES-192-CBC
  • AES-256-ECB
  • AES-256-CBC

engine-cuda - github.com 에 호스팅된 것 

engine-cuda는 유명한 OpenSSL 암호화 프레임워크를 위한 엔진이다. 이것은 CUDA와 OpenCL을 사용하는 GPU에서 서로 다른 블럭암호화를 실행할 수 있게 한다. 현재, 다음 암호화 알고리즘이 지원된다.
  • AES-128, AES-192, AES-256 (ECB, CBC decryption)

  • Blowfish (ECB, CBC decryption)

  • CAST5 (ECB, CBC decryption)

  • Camellia-128 (ECB, CBC decryption)

  • DES (ECB, CBC decryption)

  • IDEA (ECB, CBC decryption)


    OpenSSL-GPU 

     GPUCipher-mastersthesis.pdf

    이것은 2007년 에스토니아 Tartu대학에서 Urmas Rosenberg가 석사 논문으로 제출한 'Using Graphic Processing Unit in Block Cipher Calculations'의 구현이다. 

    코드는 2 파트로 구성되는데: 6800구현과 CUDA구현이다. 6800은 GPU와 통신하기 위해 OpenGL을 사용하는 방식으로 오래된 비디오카드는 이 방법으로만 가능하다. CUDA구현은 CUDA를 사용하였고, CUDA호환되는 nVIDIA 비디오카드(8800, 9800 등)로 가능하다.

    현재 구현에서는 AES 128 암호화 만을 지원한다.


    SSLShader

    A GPU-accelerated SSL Proxy

    카이스트에서 발표된 것이다. SSL을 가속하는 것이다.

    --------------------------------------- CUDA 관련 끝 -------------

    * 아직은 CUDA를 암호화 도구로  실전 배치하기에 적절하지 않아 보인다.

    I generally think of an "ssl accelerator" as a hardware solution (so "open source" doesn't really enter into the picture)...but in broader sense, you can use any one of a number of SSL proxies (Nginx, Apache, Pound, HAProxy, stunnel, etc) to offload your SSL processing onto a system other than your backend application.

    http://en.wikipedia.org/wiki/AES_instruction_set : CPU에서 암호화를 지원하고자 한 노력

        http://zombe.es/post/5183420528/accelerated-ssl : 인텔의 IPP 라이브러리를 이용한 OpenSSL개선안안

    http://en.wikipedia.org/wiki/SSL_acceleration :SSL가속보드

    SSL Acceleration and Offloading: What Are the Security Implications?