Libgcrypt

Libgcrypt
원저자워너 코흐
개발자GnuPG 커뮤니티
프로그래밍 언어C
운영 체제크로스 플랫폼
종류암호화 라이브러리
라이선스GNU 약소 일반 공중 사용 허가서 (LGPLv2.1+) / GNU 일반 공중 사용 허가서 (GPLv2+)
웹사이트gnupg.org/software/libgcrypt/

Libgcrypt는 GnuPG의 분리된 모듈로 개발된 암호화 라이브러리이다. 이 라이브러리는 GnuPG와 독립적으로 사용할 수 있지만, 오류 보고 라이브러리인 Libgpg-error에 의존한다.

모든 기초적인 암호화 빌딩 블록을 위한 기능을 제공한다:

기본 요소 또는 연산알고리즘 또는 구현
대칭 암호: AES (128, 192, 256비트), DES, 3DES, IDEA, CAST5, Blowfish, Twofish (128, 256비트), Ron's Cipher 2 / RC2 (40, 128비트), ARCfour / RC4, SEED (RFC 4269), Serpent (128, 192, 256비트), Camellia (128, 192, 256비트), Salsa20, Salsa20/12, ChaCha20, GOST 28147-89 (RFC 5830) / GOST R 34.12-2015 (Magma: RFC 8891 & Kuznyechik: RFC 7801), SM4, ARIA
암호 운용 모드: ECB, CFB, CBC, OFB, CTR, CCM, GCM, OCB, EAX, XTS, Stream, AES Key Wrap (RFC 3394), 패딩 포함 AES Key Wrap (RFC 5649), SIV (RFC 5297) 및 GCM-SIV (RFC 8452)
공개 키 알고리즘: RSA, ElGamal, DSA, ECDSA, EdDSA, Ed448, DH, EDH, 타원곡선 디피-헬먼
해시 알고리즘: MD2, MD4, MD5, SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, SHA3-224, SHA3-256, SHA3-384, SHA3-512, SHAKE128, SHAKE256, RIPEMD-160, TIGER/192, TIGER1, TIGER2, Whirlpool, 순환 중복 검사 (RFC 2440와 동일), CRC-32 (ISO 3309와 동일), CRC-32 (RFC 1510와 동일), GOST R 34.11-94 / GOST 34.311-95, GOST R 34.11-2012 (Stribog) / RFC 6986, BLAKE2b (128, 160, 224, 256비트), BLAKE2s (160, 256, 384, 512비트), SM3
메시지 인증 코드: 모든 해시 알고리즘에 대한 HMAC, 모든 암호 알고리즘에 대한 CMAC, 일부 암호 알고리즘에 대한 GMAC, Poly1305
키 유도 함수: S2K (RFC 4880와 동일: simple, salted, iterated+salted), PBKDF2, Scrypt, Argon2d, Argon2i, Argon2id, Balloon
타원 곡선: NIST (P-256, P-384, P-521), SECG (secp256k1), 타원곡선 암호 / RFC 5639 (P256r1, P384r1, P512r1), 번스타인 (Curve25519, Curve448), GOST R 34.10-2012 (RFC 7091), SM2

Libgcrypt는 자체적인 임의 정밀도 산술 구현을 특징으로 하며, Alpha, AMD64, HP PA-RISC, i386, i586, M68K, MIPS 3, PowerPC, SPARC 등 다양한 프로세서에 대한 어셈블러 구현을 포함하고 있다. 또한 유닉스 계열과 윈도우 기기에서 각각 다르게 작동하는 엔트로피 수집 유틸리티도 제공한다.

보통 Libgcrypt의 여러 안정적인 브랜치가 병렬로 유지 관리된다. 2026년 5월 기준으로 Libgcrypt 1.12 브랜치는 LTS ("장기 지원") 브랜치이며, 1.11 브랜치는 이전의 안정판 브랜치로서 최소 2028년 6월 30일까지 유지 관리될 예정이다. 또한 1.8 브랜치는 "old-LTS" 브랜치로, 원래의 지원 종료 날짜가 2024년 12월 31일이었음에도 불구하고 "연장 장기 지원 계약"을 맺은 고객이 존재하는 한 계속 유지 관리된다.

같이 보기

각주

  1. ↑ “AUTHORS”. 2021년 2월 9일에 확인함.
  2. ↑ “Copying”. 《Libgcrypt》. 2021년 2월 4일. 2021년 2월 9일에 확인함.
  3. ↑ Koch, Werner (1998년 12월 4일). “libgcrypt” (메일링 리스트). gnupg-devel. 2017년 8월 30일에 확인함.
  4. ↑ “Libgpg-error”. 《GnuPG software》. 2017년 3월 22일. 2017년 12월 13일에 확인함.
  5. ↑ “src/cipher.h”. 2017년 6월 16일. 2017년 8월 30일에 확인함.
  6. ↑ “Available ciphers”. 《The Libgcrypt Reference Manual》. 2017년 8월 27일. 2017년 8월 30일에 확인함.
  7. ↑ “Available cipher modes”. 《The Libgcrypt Reference Manual》. 2017년 8월 27일. 2017년 8월 30일에 확인함.
  8. ↑ “Available algorithms”. 《The Libgcrypt Reference Manual》. 2017년 8월 27일. 2017년 8월 30일에 확인함.
  9. ↑ “Cryptographic Functions”. 《The Libgcrypt Reference Manual》. 2017년 8월 27일. 2017년 8월 30일에 확인함.
  10. ↑ “Available hash algorithms”. 《The Libgcrypt Reference Manual》. 2017년 8월 27일. 2017년 8월 30일에 확인함.
  11. ↑ Shen, Sean; Lee, Xiaodong; Tse, Ronald Henry; Kit, Wong Wai; Yang, Paul (2018년 1월 8일). “The SM3 Cryptographic Hash Function”. 국제 인터넷 표준화 기구. 2023년 11월 16일에 확인함.
  12. ↑ “Available MAC algorithms”. 《The Libgcrypt Reference Manual》. 2017년 8월 27일. 2017년 8월 30일에 확인함.
  13. ↑ “Key Derivation”. 《The Libgcrypt Reference Manual》. 2017년 8월 27일. 2017년 8월 30일에 확인함.
  14. ↑ Shen, Sean; Lee, Xiaodong (2014년 2월 14일). “SM2 Digital Signature Algorithm”. 국제 인터넷 표준화 기구. 2023년 11월 16일에 확인함.
  15. ↑ “End-of-life dates for GnuPG and Libgcrypt”. 《GnuPG software》. 2026년 5월 14일. 2026년 5월 14일에 확인함.