처리중입니다. 잠시만 기다려주세요.
TTJ 코딩클래스
정규반 단과 자료실 테크 뉴스 코딩 퀴즈
테크 뉴스
Hacker News 2026.05.31 30

메모리 할당 없이 돌아가는 C 라이브러리, wolfCOSE가 임베디드 보안의 새 기준이 될까

Hacker News 원문 보기
메모리 할당 없이 돌아가는 C 라이브러리, wolfCOSE가 임베디드 보안의 새 기준이 될까

작은 기기에서도 안전한 통신이 필요해진 시대

요즘 세상에 인터넷에 연결되지 않은 기기 찾기가 더 어렵죠. 스마트 전구, 도어락, 자동차, 의료 기기까지 전부 네트워크에 물려 있어요. 그런데 이런 작은 기기들은 우리가 쓰는 노트북이나 스마트폰처럼 메모리가 넉넉하지 않거든요. 어떤 건 메모리가 KB 단위로 측정될 정도로 작아요. 그래서 보안 라이브러리 하나 넣는 것도 쉽지 않은 일입니다.

그동안 임베디드 보안 분야에서 묵묵히 일해온 회사가 있어요. 바로 wolfSSL입니다. TLS 같은 통신 보안 라이브러리를 작은 기기에서도 돌아가게 최적화하는 걸로 유명한 곳인데요, 이번에 wolfCOSE라는 새 제품을 내놨어요. 이게 뭐냐면 COSE(CBOR Object Signing and Encryption)라는 표준을 구현한 C 라이브러리예요. 핵심 특징은 "제로 얼로케이션(zero allocation)", 그러니까 동작 중에 메모리를 동적으로 할당하지 않는다는 거예요.

COSE가 뭔지부터 차근차근

COSE라는 이름이 낯설 수 있는데, 이게 IoT 세계에서 점점 중요해지는 표준입니다. 우리가 웹에서 자주 보는 JWT(JSON Web Token)라는 게 있죠. 사용자 로그인 정보 같은 걸 JSON 형태로 만들어서 서명하고 주고받는 거요. 그런데 JSON은 사람이 읽기 좋은 대신 용량이 큽니다. 작은 IoT 기기에서는 이 몇 바이트가 아쉬워요.

그래서 등장한 게 CBOR(Concise Binary Object Representation)이에요. JSON의 친구인데 바이너리로 표현해서 훨씬 작고 빠르게 처리할 수 있어요. 그리고 이 CBOR로 인코딩된 데이터에 서명하거나 암호화하는 표준이 바로 COSE입니다. 쉽게 말해 "IoT용 JWT"라고 생각하면 돼요. 자동차의 ECU끼리 통신할 때, 의료 기기가 펌웨어 업데이트를 받을 때, 스마트홈 기기가 명령을 받을 때 "이게 진짜 정품 명령인지" 검증하는 데 쓰입니다.

왜 "제로 얼로케이션"이 그렇게 중요할까

일반적인 프로그램은 필요할 때마다 malloc()으로 메모리를 할당받고, 다 쓰면 free()로 반환합니다. 편하지만 임베디드 환경에서는 이게 큰 문제가 돼요. 첫째, 메모리 단편화(fragmentation) 문제가 있습니다. 작은 메모리를 계속 할당하고 해제하다 보면 사용 가능한 메모리가 잘게 쪼개져서 나중에는 큰 덩어리를 못 잡게 되거든요. 둘째, 예측 가능성 문제예요. 자동차나 의료 기기처럼 실시간성이 중요한 곳에서는 "이 함수가 정확히 몇 마이크로초 안에 끝난다"는 보장이 필요한데, 동적 할당은 그게 안 됩니다.

wolfCOSE는 호출자가 미리 버퍼를 잡아서 넘겨주는 방식으로 동작해요. 라이브러리 내부에서 멋대로 메모리를 잡지 않습니다. 덕분에 자동차 안전 표준인 ISO 26262나 의료 기기 표준인 IEC 62304 같은 까다로운 인증을 받아야 하는 환경에서도 쓸 수 있어요. 이런 인증은 동적 메모리 할당을 거의 금지하다시피 하거든요.

기존 옵션들과 비교해보면

COSE 구현체가 wolfCOSE만 있는 건 아닙니다. ARM에서 만든 t_cose라는 라이브러리가 있고, libcose도 있어요. 하지만 t_cose는 일부 동적 할당이 있거나 특정 암호 라이브러리(예: MbedTLS)와 결합되어 있는 경우가 많고, 다른 구현들은 풀스택을 제공하지 않거나 라이선스가 까다로운 경우가 있어요.

wolfCOSE의 장점은 같은 회사의 wolfCrypt(암호 연산 라이브러리)와 자연스럽게 통합된다는 점이에요. wolfCrypt는 이미 FIPS 140-3 인증을 받은 검증된 라이브러리거든요. 그래서 "COSE 구현 + 검증된 암호 백엔드 + 제로 얼로케이션"이 한 세트로 묶이는 거예요. 라이선스도 GPLv2와 상용 라이선스 듀얼 모드라서, 오픈소스 프로젝트는 무료로, 상업 제품은 라이선스 사고 쓰는 wolfSSL의 익숙한 모델을 따릅니다.

한국 개발자에게는 어떤 의미가 있을까

한국이 자동차와 가전 산업에서 강하잖아요. 현대차, 기아, 삼성, LG 모두 점점 더 많은 소프트웨어를 내장 시스템에 넣고 있어요. SDV(Software Defined Vehicle) 시대로 가면서 차량 내부 모듈끼리, 그리고 차량과 클라우드 사이의 안전한 통신이 필수가 됐어요. 이때 COSE 같은 표준이 중요해집니다. 펌웨어 업데이트(FOTA)할 때 "이 펌웨어가 진짜 제조사가 만든 거 맞아?"를 검증하는 데 쓰이거든요.

임베디드 쪽 일을 한다면 wolfCOSE 같은 라이브러리를 한번 봐두는 게 좋습니다. 당장 회사 프로젝트에 못 쓰더라도, "제로 얼로케이션 API는 어떻게 설계하나"를 배울 수 있는 좋은 교본이에요. 함수 시그니처에 항상 버퍼와 버퍼 크기를 받고, 출력 크기를 반환하는 패턴 같은 게 일관성 있게 적용돼 있거든요. 이런 설계 패턴은 일반 서버 코드 쓸 때도 응용할 수 있어요. 메모리 할당이 성능 병목인 핫패스에서는 같은 사고방식이 통하니까요.

마무리

한 줄 요약하면, "인증과 안전성이 필요한 임베디드 IoT 보안에서 COSE 표준을 진지하게 다룬 첫 번째 상용급 옵션"이 등장했다는 소식이에요. 임베디드와 보안, 두 분야가 만나는 지점에 관심 있다면 한 번쯤 코드를 들여다볼 만합니다.

여러분은 어떻게 보세요? 임베디드 보안이 점점 중요해지는 흐름에서, 한국 IoT 생태계는 이런 표준 채택에 얼마나 빠르게 움직이고 있다고 느끼시나요?


🔗 출처: Hacker News

이 뉴스가 유용했나요?

TTJ 코딩클래스 정규반

월급 외 수입,
코딩으로 만들 수 있습니다

17가지 수익 모델을 직접 실습하고, 1,300만원 상당의 자동화 도구와 소스코드를 받아가세요.

144+실전 강의
17개수익 모델
4.9수강생 평점
정규반 자세히 보기

"비전공 직장인인데 반년 만에 수익 파이프라인을 여러 개 만들었습니다"

실제 수강생 후기
  • 비전공자도 6개월이면 첫 수익
  • 20년 경력 개발자 직강
  • 자동화 프로그램 + 소스코드 제공

매일 AI·개발 뉴스를 받아보세요

주요 테크 뉴스를 매일 아침 이메일로 전해드립니다.

스팸 없이, 언제든 구독 취소 가능합니다.