[기고]오픈소스SW, 활용을 넘어서 기여로!
오픈소스SW, 활용을 넘어서 기여로!
- (사)한국공개소프트웨어협회 회장 김택완 대표 -
현대 소프트웨어 개발에서 오픈소스SW의 역할은 그 어느 때보다 중요합니다. 소프트웨어의 80%는 오픈소스SW로 채워져 있는 것이 현실입니다. 오픈소스SW를 쓰지 않고 소프트웨어를 개발할 수도, 경쟁을 할 수도 없습니다. 소프트웨어를 개발하기 위해서 오픈소스SW의 사용은 선택이 아닌 필수인 시대입니다.
오픈소스SW의 힘
오픈소스SW는 누구나 자유롭게 사용하고 수정하며 배포할 수 있는 자유로운 소프트웨어입니다. 이러한 접근성 덕분에 수많은 개발자들이 오픈소스SW를 활용하여 최신 기술을 습득하고 응용할 수 있습니다.
최근 2024 GITNUX MARKETDATA 보고서의 오픈소스SW 통계를 살펴보면 90% 이상의 개발자는 상용SW를 개발할 때 오픈소스SW에 의존하고 있다고 합니다. 96% 이상의 애플리케이션들이 적어도 하나 이상의 오픈소스 컴포넌트를 포함하고 있으며, 현대 애플리케이션에서 사용되는 소프트웨어 코드의 80% 이상을 오픈소스SW가 차지하고 있습니다. 또한 기업의 78%가 오픈소스SW를 사용하고 있으며 기업들이 오픈소스SW를 사용하면서 약 33%의 비용을 절감하고 있다고 합니다.
[그림 1] Open Source Software Statistics
이처럼 오픈소스SW는 현대 소프트웨어 개발의 핵심적인 요소로 여겨지고 있으며 기업에서도 효율성 증대를 위해 적극적으로 채택되고 있습니다.
오픈소스SW의 가치
그러면 이러한 오픈소스SW의 가치는 얼마나 될까요?
하버드 비즈니스스쿨의 조사에 의하면 오픈소스SW의 가치는 수요자 측면에서 약 8.8조 달러로 추정합니다. 이는 한화로 약 11,440조 원, 즉 1.144경 원에 해당합니다. 그런데 경(京)이라는 단위는 쉽게 가늠하기 어려울 정도로 거대한 숫자입니다. 이를 쉽게 이해하기 위해 2023년 회계연도의 마이크로소프트 매출 약 2,110억 달러(약 274조 원)로 비교해보면 오픈소스SW의 가치는 마이크로소프트 1년 매출의 약 40배에 해당합니다. 이러한 무한대와 같은 가치를 지닌 오픈소스SW를 우리는 무상으로 활용하고 있습니다. 그러므로 우리는 오픈소스SW를 사용할 수밖에 없습니다.
오픈소스SW의 안전한 활용
현재 우리는 오픈소스SW 활용을 통해 많은 기업과 개발자들이 최신 기술을 빠르게 적용하고 기업의 비용을 절감하며 개발 효율성을 높이는 등의 혜택을 누리고 있습니다. 이러한 거대한 가치를 지닌 오픈소스SW를 활용할 때 많은 혜택이 주어지지만 동시에 리스크도 존재합니다. 특히 라이선스 관리와 보안취약점 이슈는 주요한 문제로 떠오르고 있습니다.
라이선스 관리와 관련하여 고려해야 할 점은 오픈소스SW를 활용하여 애플리케이션을 개발할 때, 오픈소스SW 라이선스의 의무사항이 발생한다는 점입니다. 그러나 어떠한 이유로 이러한 의무사항을 지키지 않을 경우 여러 가지 법적인 문제에 봉착하기도 합니다. 예를 들어 프랑스 최대의 통신사인 Orange 사는 GPL 라이선스 의무사항을 지키지 않았다는 이유로 약 65만 유로(한화 약 10억 원)의 배상금을 지불하게 되었습니다. 미국의 Vizio사도 GPL 라이선스 위반에 대한 소송이 진행 중입니다. 이는 오픈소스SW 사용에 있어 라이선스 의무사항 준수가 얼마나 중요한지를 잘 보여주는 사례입니다. 또한 오픈소스SW를 활용할 때 보안 취약점 관리도 필요합니다. OpenSSL, Log4j 등 흔하게 사용되는 오픈소스SW에서 발견되는 보안취약점으로 인해 기업들이 다양한 침해 피해를 입기도 합니다.
이와 같이 라이선스와 보안취약점 리스크를 잘 관리하여 안전하게 오픈소스SW를 활용하는 것은 비즈니스에서 매우 중요합니다. 하지만 아직 많은 소프트웨어 개발자들이 사용한 오픈소스SW의 정확한 범위나 조건을 알지 못하는 경우가 있습니다. 또한, 보안취약점이 조치되지 않은 상태의 오픈소스SW가 그대로 사용된 경우도 많아 이러한 리스크를 해결하기 위한 철저한 관리와 교육이 필요합니다.
SBOM, 리스크 관리를 위한 필수 사항
이러한 오픈소스SW 라이선스 및 보안 취약점을 포함하여 소프트웨어를 효과적으로 관리하는 방법으로는 SBOM(Software Bill of Material)이 있습니다. 식품의 성분표처럼 소프트웨어 안에 포함되어있는 구성 요소들을 리스트하여 소프트웨어 공급 시 제출하도록 하는 것입니다.
미국은 이미 2021년에 행정명령(EO14028)을 통해 공공기관에 납품하는 소프트웨어는 SBOM을 함께 제출하도록 하였습니다. 점점 민간으로도 확대되고 있습니다. 유럽은 더욱 적극적으로 강제화하여 EU 내 유통되는 모든 소프트웨어와 소프트웨어를 포함하는 제품에는 반드시 SBOM을 첨부해야 하는 사이버복원력법(CRA)이 통과되었고 2027년부터 시행될 예정입니다. 일본은 SBOM 표준을 만들고 있으며 한국은 지난 5월에 국가정보원과 과기정통부가 함께 ‘SW 공급망 보안 가이드라인’을 배포하고 SBOM 시행을 위해 준비를 하고 있습니다.
이렇듯 비즈니스에서 소프트웨어 및 소프트웨어를 포함하는 제품을 공급/유통할 때는 SBOM 제출이 의무화가 되어가고 있습니다. 앞으로 SBOM을 관리하는 것은 모든 기업에서 필수 사항이 될 것입니다.
오픈소스SW를 잘 관리하고 있는 기업들
그러면 우리나라 기업들은 어떤 형태로 오픈소스SW를 관리하고 있을까요?
일례로 대한항공의 예약 앱을 살펴보면 오픈 라이선스라는 항목을 확인할 수 있는데 그 앱에 사용된 다양한 오픈소스SW들과 그 오픈소스SW가 위치하는 레파지토리를 공개하고 있습니다. SBOM을 잘 관리하고 있으므로 이러한 정보를 제공할 수 있는 것입니다.
[그림 2] 대한항공 예약 앱 내 오픈 라이선스 항목
신한금융과 같이 금융회사들은 오픈소스SW를 매우 보수적으로 사용한다고 알려져 있으나 사실 그렇지 않습니다. 실제로 소프트웨어를 공급하거나 판매하는 기업이 아닌 금융기업들도 오픈소스SW 관리 포털을 구축하고 오픈소스SW 라이선스나 보안취약점을 관리해나가기 시작했습니다. CJ 그룹과 같은 기업도 오픈소스SW 관리시스템을 구축하고 SBOM을 관리하고 있습니다. 이렇듯 다양한 기업에서 어느 정도 SBOM 관리를 잘하고 있습니다.
이렇게 SBOM을 생성하고 수렴하고 관리하는 업무는 엄청나고 피곤한 일입니다. 그런데 이러한 리소스가 많이 드는 SBOM 관리를 기업의 오픈소스SW 라이선스나 보안취약점 리스크를 회피하고 방어하는 목적으로만 사용한다면 들어가는 비용이나 노력이 아까울 수 있습니다.
이런 SBOM을 좀 더 생산적인 목적으로 활용한다면 들어간 수고와 노력이 더욱 가치 있을 것입니다. 이 SBOM을 통해서 다음과 같은 사실을 알 수가 있습니다.
- “우리 기업은 어떤 오픈소스SW를 가장 많이 사용할까?”
- “우리 공급망에서 어떤 오픈소스SW를 가장 많이 활용할까?”
- “개발자들은 어떤 오픈소스SW를 가장 많이 선호할까?”
이러한 내용을 확인하여 우리 회사에서 가장 많이 사용하는 오픈소스SW에 대한 정보를 얻어 해당 오픈소스SW 전문 엔지니어를 양성할 수 있다면 이는 결국 우리 회사의 경쟁력을 높이는 지름길이 될 수 있을 것입니다. 해당 오픈소스SW 전문 엔지니어를 양성하는 가장 좋은 방법은 바로 그 오픈소스SW 프로젝트에 우리 개발자들을 참여시켜 그 커뮤니티에서 활동/기여하도록 하는 것입니다. 그럼으로써 우리 회사에서 많이 사용하는 오픈소스에 대한 개발자를 양성할 수 있기도 하고, 또한 우리가 그 오픈소스에서 필요한 기능을 추가로 개발할 필요 없이 커뮤니티의 개발 메인스트림에 반영할 수도 있게 됩니다. 하지만 아직 우리나라의 많은 기업과 개발자들은 오픈소스SW를 활용하는 것에만 머물고 있습니다. 오픈소스SW를 사용하는 기업은 많지만 기여하는 기업은 상대적으로 적습니다. 이제는 우리도 단순히 오픈소스SW를 활용하는 것을 넘어서, 오픈소스SW 프로젝트에 참여하여 기여하는 것이 필요합니다.
오픈소스에 기여하는 기업들
그렇다면 글로벌 기업들은 오픈소스SW 프로젝트에 얼마나 많은 개발자들을 참여시키고 있을까요? GitHub 오픈소스SW 기여도에 따라 기업별 활동 기여자 랭킹을 확인할 수 있는 Open Source Contributor Index(OSCI, https://opensourceindex.io/)라는 사이트에서 확인해볼 수가 있습니다.
[그림 3] Open Source Contributor Index(OSCI) 화면
구글(3,640명, 1위), 마이크로소프트(3,131명, 2위), 인텔(1,477명, 4위), 아마존(1,199명, 6위) 등의 글로벌 기업들이 상위권에 랭크되어 있습니다. 중국 기업도 화웨이(607명, 9위), 알리바바(262명, 25위), 텐센트(186명, 33위), 바이두(82명, 68위), Ant그룹(61명, 85위) 등 다수가 상위 100위 안에 있습니다. 국내기업은 150위 안에 삼성(140명, 41위)과 LG전자(33명, 135위) 단 두 개 기업이 있었습니다.
여기에서 확인할 수 있듯이 오픈소스SW에서 중국의 역할이 점점 커지고 있습니다.
2021년 MERICS PRIMER의 ‘중국의 오픈소스 기술 개발’ 보고서에 따르면 중국은 더 이상 오픈소스 소비자가 아니라 글로벌 컨트리뷰터 국가라는 통계를 내놓았습니다. 이미 3년 전부터 중국은 글로벌 기여자로 자리매김하고 있었습니다.
[그림 4] 중국 개발자 및 기업의 글로벌 오픈소스 커뮤니티 참여 현황
* 출처: China’s Open-Source Tech Development, 2021, MERICS PRIMER
클라우드 네이티브 컴퓨팅 재단(CNCF, Cloud Native Computing Foundation)의 멤버를 살펴보면 약 30% 정도가 중국 기업들이 가입되어있습니다. 리눅스재단의 프로젝트로 인공지능, 머신러닝, 딥러닝 및 데이터 등의 오픈소스SW 기술 프로젝트를 지원하는 LF AI&DATA 재단도 프리미어 멤버 12개 기업 중 4개가 중국 기업이며 일반 멤버에는 더 많은 중국 기업들이 가입되어있습니다. 이미 중국 기업들은 정부의 적극적인 지원하에 다양한 분야의 각종 오픈소스SW 커뮤니티에서 활발히 참여하고, 활동/기여하며 개발자 양성은 물론 기업의 경쟁력을 강화해나가고 있습니다.
우리도 오픈소스SW의 활용을 넘어 참여로 가야 합니다!
앞에서 살펴보았듯이 오픈소스SW는 현대 업무에 필수적인 도구가 되었습니다. 이제 우리도 단순히 소비자로서 머무르지 않고 기여자로서 오픈소스SW 커뮤니티에 참여하여 함께 발전해 나아가야 할 때입니다. 오픈소스SW 커뮤니티에 기여하는 방법이 코드에 기여하는 것만 있는 것은 아닙니다. 버그 리포트, 문서화 작업, 문서 한글 번역 등 다양한 방식으로 참여할 수 있습니다. 이러한 다양한 기여 방식을 통해 개인이나 기업이 자신의 역량에 맞게 오픈소스SW 프로젝트에 참여할 수 있습니다.
삼성, LG처럼 개별적으로 참여할 수 있는 역량이 있는 기업도 있습니다. 그러나 어디서 어떻게 시작하여 참여해야 할지 모르는 기업들도 있을 것입니다. 그런 기업들은 저희 한국공개소프트웨어협회를 통해 오픈소스SW 프로젝트 참여를 위한 노하우를 공유하고 함께 오픈소스SW에 기여할 수 있는 방법을 찾아갈 수 있습니다. 우리의 작은 기여들이 모이면 오픈소스SW를 넘어 국내 소프트웨어, 더 나아가 국내 모든 산업의 미래를 더욱 밝게 만들 것입니다.
김택완 대표 現 오에스비씨㈜ 대표 現 한국공개소프트웨어협회 제16대 협회장 |
0개 댓글