마이크로소프트 씰

Microsoft SEAL
마이크로소프트 씰
Microsoft-SEAL.png
개발자마이크로소프트 리서치
초기 릴리즈2018년 12월 3일; 3년(2018-12-03)
안정적 해제
3.6.1 / 2020년 12월 8일; 15개월(2020-12-08)
리포지토리github.com/Microsoft/SEAL
기록 위치C++
운영 체제Microsoft Windows, MacOS, Linux, Android
플랫폼IA-32, x86-64, ARM64
유형동형 암호화 라이브러리
면허증MIT 라이선스
웹사이트www.microsoft.com/en-us/research/project/microsoft-seal

Simple Encrypted Mathry Library 또는 SEAL마이크로소프트 리서치가 개발한 무료 오픈소스 크로스 플랫폼 소프트웨어 라이브러리로 다양한 형태의 동형 암호화를 구현한다.[1][2]

역사

개발은 원래 크립토네츠 논문에서 나왔으며,[3] 인공지능 알고리즘이 동질적으로 암호화된 데이터에서 실행될 수 있음을 증명했다.[4]

오픈소스(MIT 라이선스 이하)이며, 외부 의존성 없이 표준 C++로 작성되어 있어 크로스 플랫폼 컴파일 할 수 있다.공무원.C#로 작성된 NET 래퍼를 사용할 수 있으며 를 위해 더 쉽게 사용할 수 있다.SEAL과 상호 작용하기 위한 NET 애플리케이션.

특징들

알고리즘

마이크로소프트 SEAL은 비대칭대칭(버전 3.4에 추가) 암호화 알고리즘을 모두 지원한다.

구성표 유형

Microsoft SEAL은 매우 다른 속성을 가진 두 가지 동형 암호화 체계를 가지고 있다.

  • BFV:[5] BFV 체계는 암호화된 정수에 대해 모듈식 산술을 수행할 수 있도록 한다.정확한 값이 필요한 애플리케이션의 경우 BFV 방식만이 유일한 선택이다.
  • CKKS:[6] CKKS 체계는 암호화된 실제 또는 복잡한 숫자에 대한 추가와 승수를 허용하지만, 대략적인 결과만 산출한다.암호화된 실수의 합계, 암호화된 데이터에 대한 머신러닝 모델 평가, 암호화된 위치의 거리 계산 등과 같은 애플리케이션에서 CKKS는 단연 최고의 선택이 될 것이다.

압축

데이터 압축은 Zlib 지원으로 SEAL을 구축하면 가능하다.기본적으로 데이터는 DEFLAT 알고리즘을 사용하여 압축되며, 이 알고리즘은 암호화 매개변수, 암호문, 일반문자 및 사용 가능한 모든 키(Public, Secret, Relin(relineration), Galois)와 같은 객체를 직렬화할 때 상당한 메모리 설치 공간을 절약할 수 있다.압축은 항상 비활성화할 수 있다.

유용성

현재 개발 중인 다른 언어에 대한 SEAL의 몇 가지 알려진 포트가 있다.

C++

C#/F#

  • 누겟(마이크로소프트 공식 패키지)

파이톤

자바스크립트

타이프스크립트

참조

  1. ^ Microsoft SEAL is an easy-to-use and powerful homomorphic encryption library.: microsoft/SEAL, Microsoft, 2019-11-20, archived from the original on 2019-05-31, retrieved 2019-11-20
  2. ^ Coron, Jean-Sébastien; Nielsen, Jesper Buus (2017-04-10). Advances in Cryptology – EUROCRYPT 2017: 36th Annual International Conference on the Theory and Applications of Cryptographic Techniques, Paris, France, April 30 – May 4, 2017, Proceedings. Springer. p. 104. ISBN 9783319566146.
  3. ^ Downlin, Nathan; Gilad-Bachrach, Ran; Laine, Kim; Lauter, Kirstin; Naehrig, Michael; Wernsing, John (2016-05-25). "CryptoNets: Applying Neural Networks to Encrypted Data with High Throughput and Accuracy" (PDF). Proceedings of the 33rd International Conference on Machine Learning. Archived from the original (PDF) on 2018-08-26.
  4. ^ "The Microsoft Simple Encrypted Arithmetic Library goes open source". Microsoft Research. 2018-12-03. Archived from the original on 2019-11-12. Retrieved 2019-11-20.
  5. ^ Fan, Junfeng; Vercauteren, Frederik (2012). "Somewhat Practical Fully Homomorphic Encryption". {{cite journal}}:Cite 저널은 필요로 한다. journal=(도움말)
  6. ^ Cheon, Jung Hee; Kim, Andrey; Kim, Miran; Song, Yongsoo (2017). Takagi, Tsuyoshi; Peyrin, Thomas (eds.). "Homomorphic Encryption for Arithmetic of Approximate Numbers". Advances in Cryptology – ASIACRYPT 2017. Lecture Notes in Computer Science. Cham: Springer International Publishing. 10624: 409–437. doi:10.1007/978-3-319-70694-8_15. ISBN 978-3-319-70694-8.

외부 링크