Botan
1. 개요
Botan은 다양한 암호화 알고리즘을 지원하는 암호화 라이브러리이다. 공개키 암호화, 공개키 서명, 키 교환, 블록 사이퍼, 스트림 사이퍼, 해시 함수 등 다양한 종류의 암호화 알고리즘을 제공하며, RSA, ElGamal, AES, SHA-256 등 널리 사용되는 알고리즘들을 포함한다. 분산 리비전 콘트롤 프로그램인 모노톤 등에서 사용된다.
| 유형 | 응용 프로그래밍 인터페이스(API) |
|---|---|
| 라이선스 | 단순화된 BSD 라이선스 |
| 최초 릴리스 | 2000년 |
| 최신 릴리스 버전 | 3.6.1 |
| 최신 릴리스 날짜 | 2024년 10월 26일 |
| 프로그래밍 언어 | C++ |
| 웹사이트 | Botan 공식 웹사이트 |
| 개발자 | Jack Lloyd |
|---|
-
전송 계층 보안 구현 -
OpenSSL
OpenSSL은 1998년에 설립된 암호화 도구 프로젝트로, 다양한 암호화 알고리즘과 프로토콜을 지원하며, 아파치 라이선스를 채택했고, 보안 문제와 API 호환성 문제 등의 비판을 받았다. -
전송 계층 보안 구현 -
LibreSSL
-
C++ 라이브러리 -
D-Bus
D-Bus는 2002년에 시작된 프로세스 간 통신 시스템으로, 시스템 버스와 세션 버스를 통해 정보 공유, 모듈성, 권한 격리를 제공하며, 일대일 요청-응답 및 발행/구독 통신 방식을 지원한다. -
C++ 라이브러리 -
액티브 템플릿 라이브러리
액티브 템플릿 라이브러리(ATL)는 마이크로소프트의 C++ 템플릿 라이브러리로, COM 객체 개발을 간편하게 하고, RAII 클래스를 통해 메모리 관리 및 데이터 형식 처리를 용이하게 하며, Visual Studio 2013부터는 정적 연결을 지원하여 DLL 배포 부담을 줄였다. -
공식 웹사이트에 알 수 없는 변수를 사용한 문서 -
브루클린 미술관
브루클린 미술관은 1823년 브루클린 견습생 도서관으로 시작하여 현재 약 50만 점의 소장품을 보유한 뉴욕 브루클린 소재의 미술관으로, 다양한 분야의 예술 작품을 전시하며 특히 아프리카 미술과 여성주의 미술에 대한 기여가 크다. -
공식 웹사이트에 알 수 없는 변수를 사용한 문서 -
광주지방기상청
광주지방기상청은 광주광역시와 전라남도 지역의 기상 예보, 특보, 관측, 기후 정보 제공 등의 업무를 수행하는 기상청 소속 기관으로, 1949년 광주측후소로 설치되어 1992년 광주지방기상청으로 개편되었으며, 기획운영과, 예보과, 관측과, 기후서비스과와 전주기상지청, 목포기상대를 두고 있다.
2. 지원하는 알고리즘
Botan은 다양한 암호화 알고리즘을 지원하여 여러 보안 요구 사항을 충족시킨다. 지원하는 주요 알고리즘은 다음과 같다.
* 공개키 암호화 및 서명, 키 교환
* RSA, ElGamal, DLIES, DSA, ECDSA, Nyberg-Rueppel, Rabin-Williams, Diffie-Hellman, ECKAEG
* 블록 사이퍼 모드
* ECB, CBC, CBC/CTS, CFB, OFB, CTR, EAX
* 블록 사이퍼
* AES (Rijndael), Serpent, Twofish, MARS, CAST-256, RC6, DES, 3DES, DESX, SEED, KASUMI, MISTY1, GOST, Skipjack, Blowfish, CAST-128, IDEA, Noekeon, TEA, XTEA, RC2, RC5, SAFER-SK, Square
* 스트림 사이퍼
* ARC4, Salsa20, Turing, WiderWake4+1
* 해시 함수
* SHA-224, SHA-256, SHA-384, SHA-512, Whirlpool, SHA-1, Tiger, RIPEMD-160, RIPEMD-128, HAS-160, FORK-256
2.2. 공개키 서명
데이터 무결성 및 인증을 위한 디지털 서명 알고리즘을 제공한다. 지원하는 주요 알고리즘은 다음과 같다.
2.3. 키 교환
Botan은 안전한 키 공유를 위한 프로토콜을 제공하며, 디피-헬만, ECKAEG 등을 지원한다.
| 알고리즘 |
|---|
| 디피-헬만 |
| ECKAEG |
2.4. 블록 사이퍼
Botan은 데이터를 고정된 크기의 블록 단위로 암호화하는 대칭키 알고리즘을 제공한다. ECB, CBC, CBC/CTS, CFB, OFB, CTR, EAX 등 다양한 모드를 지원한다.
Botan에서 지원하는 블록 사이퍼 알고리즘은 다음과 같다.
2.5. 스트림 사이퍼
데이터를 연속적인 스트림으로 암호화하는 대칭키 알고리즘을 제공한다. ARC4, Salsa20, Turing, WiderWake4+1 등을 지원한다.
2.6. 해시 함수
Botan은 데이터 무결성 검사를 위한 단방향 해시 함수를 제공한다. 지원하는 해시 함수는 다음과 같다.
| 지원하는 해시 함수 |
|---|
3. 사용처
Botan은 분산 리비전 컨트롤 프로그램인 모노톤에 쓰이고 있다.