구글, 안드로이드 앱에서 C++와 러스트 함께 쓴다

메모리 안정성 해결 위해 러스트 재단에 100만 달러 연구비 지원

컴퓨팅입력 :2024/02/12 10:11    수정: 2024/02/13 07:22

구글이 C++ 기반 안드로이드 앱의 메모리 오류를 제거하기 위해 러스트를 함께 사용하는 방안을 연구한다.

최근 뉴스택 등 외신에 따르면 구글은 러스트 재단에 100만 달러의 연구비를 지원했다고 공식 블로그를 통해 밝혔다.

이번 투자는 러스트의 코드 보안성을 높이고 C++와의 상호운용성을 개선하는 상호운용성 개선(Interop Initiative) 프로젝트에 쓰일 예정이다.

구글이 C++와 러스트를 같이 사용해 안드로이드를 개발하는 방안을 지원한다(이미지=챗GPT)

구글에서 해당 프로젝트를 진행하는 이유는 안드로이드의 프로그램 안정성을 향상시키기 위함이다.

C++는 빠른 속도와 폭 넓은 활용도가 장점으로 인프라 및 시스템, 게임 등 다양한 분야에서 쓰이고 있다. 지난해 프로그래밍 언어 인기 순위인 티오베에서 1위에 오르기도 했다.

하지만 구조적으로 해결되지 않는 메모리 버그로 인한 보안 취약점이 문제점으로 지목되고 있다.

구글에 따르면 안드로이드의 심각성 높은 보안 취약점의 70%가 메모리 버그로 인해 발생하고 있다. 하지만 C++가 앱에서 차지하는 비중이 크고 주요 기능이 구현돼 있는 만큼 한번에 전환이 어려웠다.

이에 구글은 수년 전부터 업데이트를 통해 러스트 등 메모리 취약점을 해결한 프로그래밍 언어를 점차 적용하며 취약점을 줄여왔다. 이번 프로젝트도 최종적으로는 기존에 작성된 C++ 코드를 러스트로 전환하기 위한 기반 작업의 일환이다.

관련기사

구글의 데이브 클라이더마흐 안드로이드 보안 및 개인정보 보호 부문 엔지니어링 부문 부사장은 “러스트를 통해 과거의 취약성 밀도 통계를 바탕으로 수많은 취약성이 안드로이드 생태계에 영향을 미치는 것을 사전에 예방했다”며 이번 투자는 플랫폼의 다양한 구성 요소에 걸쳐 러스트의 도입을 확대하는 것을 목표로 한다”고 밝혔다.

라스 베리스트롬 안드로이드 플랫폼 도구 이사 겸 러스트 재단 이사회 의장은 “소프트웨어 산업 전반에 걸쳐 메모리 안전성을 향상시키는 것은 주요 기술 과제 중 하나”라며 “커뮤니티와 업계 전반에 걸쳐 모든 사람을 위한 오픈 소스 생태계를 보호하기 위해 함께 협력할 것을 요청한다”고 말했다.