# Go가 FIPS 140-3 인증을 받음

> Clean Markdown view of GeekNews topic #29245. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=29245](https://news.hada.io/topic?id=29245)
- GeekNews Markdown: [https://news.hada.io/topic/29245.md](https://news.hada.io/topic/29245.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2026-05-07T09:11:47+09:00
- Updated: 2026-05-07T09:11:47+09:00
- Original source: [csrc.nist.gov](https://csrc.nist.gov/projects/cryptographic-module-validation-program/certificate/5247)
- Points: 1
- Comments: 1

## Topic Body

- **Certificate #5247**은 Go Cryptographic Module에 대한 CMVP 인증이며, **FIPS 140-3** 표준에서 Active 상태로 등록됨
- Go Cryptographic Module은 Go 표준 라이브러리와 다른 Go 애플리케이션에 암호 기능을 제공하는 **소프트웨어 라이브러리**이며, 전체 보안 수준은 **Level 1**임
- 인증은 **approved mode**로 운용될 때 적용되며, Sunset Date는 **2031년 4월 26일**로 표시됨
- 검증 이력은 **2026년 4월 27일 Initial**이고, 시험 기관은 **Lightship Security, Inc.** 임
- 공급자는 [**Geomys LLC**](https://geomys.org/fips140)이고 연락 담당자는 **Filippo Valsorda**이며, 관련 파일로 [Security Policy](https://csrc.nist.gov/CSRC/media/projects/cryptographic-module-validation-program/documents/security-policies/140sp5247.pdf)가 제공됨

---

### 인증 개요
- **Certificate #5247**은 Go Cryptographic Module에 대한 Cryptographic Module Validation Program(CMVP) 인증 항목임
- 표준은 **FIPS 140-3**, 상태는 **Active**, 전체 보안 수준은 **Level 1**로 등록됨
- Sunset Date는 **2031년 4월 26일**로 표시됨
- 검증 이력은 **2026년 4월 27일 Initial**이며, 시험 기관은 **Lightship Security, Inc.** 임

### 모듈 정보
- **Go Cryptographic Module**은 Go 표준 라이브러리와 다른 Go 애플리케이션에 암호 기능을 제공하는 소프트웨어 라이브러리임
- Module Type은 **Software**이며, Embodiment는 **MultiChipStand**로 표시됨
- Security Level Exceptions는 **Physical security: N/A**, **Non-invasive security: N/A**로 등록됨

### 운용 조건과 제한
- 인증은 **approved mode**로 운용될 때 적용됨
- 생성된 SSPs, 예를 들어 키에 대해 **최소 강도 보증이 없음**으로 명시됨
- 외부에서 로드된 SSPs, 예를 들어 키와 비트 문자열, 또는 외부 로드 SSPs로 설정된 SSPs에 대해 **최소 보안 보증이 없음**으로 명시됨

### 공급자와 관련 파일
- [Geomys LLC](https://geomys.org/fips140)가 공급자로 등록되어 있으며, 주소는 9450 SW Gemini Dr PMB 52960, Beaverton, OR 97008, United States임
- 연락 담당자는 **Filippo Valsorda**로 표시됨
- [Security Policy](https://csrc.nist.gov/CSRC/media/projects/cryptographic-module-validation-program/documents/security-policies/140sp5247.pdf)가 관련 파일로 제공됨

## Comments



### Comment 56984

- Author: neo
- Created: 2026-05-07T09:11:47+09:00
- Points: 1

###### [Lobste.rs 의견들](https://lobste.rs/s/feqwqw/go_is_fips_140_3_certified) 
- 꽤 긴 여정이었음. 자세한 내용은 [작년 글](https://go.dev/blog/fips140)에서 볼 수 있고, 인증서에 대한 새 글도 곧 올라갈 예정임  
  늘 그렇듯 **FIPS 140-3**가 필요한지 모르겠다면 필요 없는 것이지만, 정말 필요하다면 Go가 이를 달성하는 가장 쉽고 안전한 방법 중 하나라고 꽤 확신함. FIPS 140-3 규칙을 지키면서도 다른 사용자에게 제공하던 보안성과 편의성을 유지하는 일이 특히 어려웠지만, 꽤 잘 해냈다고 봄
  - 특정 고객 환경에서 **FIPS 준수**가 필요한 대규모 bring-your-own-cloud 배포를 다루고 있는데, 아쉽게도 Go를 전혀 쓰고 있지 않음. 이 변화가 Go 도입의 계기가 될 수도 있겠음

- Go는 **BoringSSL**을 쓰는 것 아닌가? 그걸 어떻게 FIPS 인증했는지 궁금함
  - 아니고, 그건 이전 해법이었음. 새 방식은 **순수 Go 구현**이라 CGO가 필요 없음: https://go.dev/blog/fips140
  - 현재 FIPS 준수는 BoringSSL 소스 트리를 쓰되 OpenSSL에 맞춰 컴파일하는 방식으로 가능했음. OpenSSL은 준수 상태이고, Red Hat이 RHEL에서 그렇게 하며 우리도 모든 워크로드에서 그 방식에 의존함. 기본적으로 https://github.com/golang-fips/go 와 같은 방식임  
    이번 새 방식은 전부 네이티브 Go임. 더 이상 OpenSSL이나 다른 우회가 아니라 그냥 표준 라이브러리로 해결됨

- 실제로 어떤 결과가 생길지 궁금함. 이제 Go가 일부 회사나 조직에 더 매력적인 선택지가 되는 건지, 아니면 순전히 보안 관련 변화인지 궁금함
  - 보안 측면에서는 **다운그레이드**지만, 일부 정부 환경에서 사용할 수 있게 해줌
  - 이제 미국 군산복합체 계약업체들이 Go 프로그래머를 더 많이 채용하고 그 기반으로 소프트웨어를 납품할 수 있음
  - 전체적으로 보안에는 마이너스에 가깝다고 조심스럽게 봄. **(X)ChaCha20-Poly1305** 같은 현대적인 암호를 쓸 수 없기 때문임
  - 우리 회사는 상용 제품과 정부용 제품을 모두 제공하는데, 후자에는 **FIPS**가 필수 요구사항임. Go 쪽은 Red Hat이 올바르게 처리해 주는 것에 의존하고, 그 결과 어느 환경에서도 쓸 수 있는 바이너리가 나옴

- 좋음. 예전에 Red Hat의 FIPS Go 빌드를 써서 배포한 적이 있는데, FIPS를 맞추기 위해 **Go 스택 전체를 다른 버전**으로 써야 하는 점이 늘 마음에 들지 않았음  
  미국 정부에 판매하는 많은 제품은 FIPS 사용이 요구되고, FIPS 버전과 비-FIPS 버전을 따로 만들고 싶어 하지 않으므로, 기업들이 Go를 도입할 수 있게 되는 데 큰 의미가 있음
