동형암호 편집하기

이동: 둘러보기, 검색

경고: 로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다. 로그인하거나 계정을 생성하면 편집자가 아이디(ID)으로 기록되고, 다른 장점도 있습니다.

편집을 되돌릴 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 저장해주세요.
최신판 당신의 편집
77번째 줄: 77번째 줄:
 
: HElib는 동형암호(HE)를 구현하는 소프트웨어 라이브러리이다. 현재 Smart-Vercauteren 암호문 패킹 기술과 Gentry-Halevi-Smart 최적화의 효과적인 사용에 주로 초점을 맞추어 동질성 평가를 빠르게 수행하는 많은 최적화와 함께 Brakerski-Gentry-Vaikuntanathan (BGV) 체계의 구현이 가능하다. 기본 암호 시스템은 동형에 적용 할 수 있는 일련의 운용을 정의하고 비용을 명시한다는 점에서 HElib의 '하드웨어 플랫폼'과 동일한 역할을 한다. 이 플랫폼은 SIMD 환경(Intel SSE 등과 유사)이지만 고유한 비용 지표와 매개변수를 가지고 있다. 동형 암호화를 위해 공개키가 구성되는 방식은 키 스위칭 매트릭스 때문에 비용이 많이 든다. 각 매트릭스는 공개키에 수 메가바이트를 추가하며, HElib에서는 공개키에 수백 개의 매트릭스가 있을 수 있다. 연구원들은 일반적인 작업에 대해 매트릭스의 크기를 33~50% 줄일 수 있다고 말한다. 또한, HElib는 연구 수준 프로젝트이며 유사 암호화를 위한 어셈블리 언어를 사용한다.<ref>Richard Chirgwin, 〈[https://www.theregister.co.uk/2018/03/08/ibm_faster_homomorphic_encryption/ IBM's homomorphic encryption accelerated to run 75 times faster]〉, 《The Register》, 2018-03-08</ref><ref>GitHub 공식 홈페이지 - 〈[https://github.com/homenc/HElib HElib]〉</ref>
 
: HElib는 동형암호(HE)를 구현하는 소프트웨어 라이브러리이다. 현재 Smart-Vercauteren 암호문 패킹 기술과 Gentry-Halevi-Smart 최적화의 효과적인 사용에 주로 초점을 맞추어 동질성 평가를 빠르게 수행하는 많은 최적화와 함께 Brakerski-Gentry-Vaikuntanathan (BGV) 체계의 구현이 가능하다. 기본 암호 시스템은 동형에 적용 할 수 있는 일련의 운용을 정의하고 비용을 명시한다는 점에서 HElib의 '하드웨어 플랫폼'과 동일한 역할을 한다. 이 플랫폼은 SIMD 환경(Intel SSE 등과 유사)이지만 고유한 비용 지표와 매개변수를 가지고 있다. 동형 암호화를 위해 공개키가 구성되는 방식은 키 스위칭 매트릭스 때문에 비용이 많이 든다. 각 매트릭스는 공개키에 수 메가바이트를 추가하며, HElib에서는 공개키에 수백 개의 매트릭스가 있을 수 있다. 연구원들은 일반적인 작업에 대해 매트릭스의 크기를 33~50% 줄일 수 있다고 말한다. 또한, HElib는 연구 수준 프로젝트이며 유사 암호화를 위한 어셈블리 언어를 사용한다.<ref>Richard Chirgwin, 〈[https://www.theregister.co.uk/2018/03/08/ibm_faster_homomorphic_encryption/ IBM's homomorphic encryption accelerated to run 75 times faster]〉, 《The Register》, 2018-03-08</ref><ref>GitHub 공식 홈페이지 - 〈[https://github.com/homenc/HElib HElib]〉</ref>
  
* '''SEAL
+
* '''간단한 암호화 알고리즘(SEAL)
: 마이크로소프트에서 만든 동형암호 라이브러리이다. <ref>GitHub 공식 홈페이지 - 〈[https://github.com/microsoft/SEAL SEAL]〉</ref>
+
: 간단한 암호화 알고리즘은 128비트 키에 대해 128비트 블록을 변환한다. 통계 분석을 기반으로 알고리즘의 특징은 강력함과 균일하게 분포된 출력이 있다. 키 또는 일반 텍스트 블록의 비트가 변경되면 암호화 텍스트 블록이 크게 달라진다. 구현 시 오류가 없음을 확인할 수 있는데, 이것은 알고리즘이 실행되는 속도를 극대화하기 위해 처리된 모든 블록에 대한 오류 검사가 암호화의 성능을 낮출 수 있기 때문이다. 구현 시 동일한 키에 대한 다중 블록 암호화 / 암호 해독에 SEAL이 사용되는 모드를 제공하지 않는다. 이것은 중요한 데이터를 보호하기 위해 알고리즘을 사용하는 것에 대한 억제 수단으로 생략되었다.<ref>GitHub 공식 홈페이지 - 〈[https://github.com/jkstpierre/seal Simple Encryption ALgorithm]〉</ref>
  
 
== 장단점 ==
 
== 장단점 ==

해시넷에서의 모든 기여는 다른 기여자가 편집, 수정, 삭제할 수 있다는 점을 유의해 주세요. 만약 여기에 동의하지 않는다면, 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다 (자세한 사항은 해시넷:저작권 문서를 보세요). 저작권이 있는 내용을 허가 없이 저장하지 마세요!

취소 | 편집 도움말 (새 창에서 열림)