오늘(17일) 판교 더 퍼스트클래스에서 진행된 신흥시장 오픈 포럼에서 HTML5 게임의 가능성을 테마로 하는 '글로벌 진출을 위한 트렌드 세미나'가 열렸다.

HTML은 '하이퍼텍스트 마크업 언어'라는 뜻으로, 웹페이지를 구성하는 데 지배적인 역할을 하는 마크업 언어다. 이를 기반으로 하는 HTML5 게임은 웹이 구동 가능한 디바이스에서는 얼마든지 구동이 가능해 플랫폼에 구애 받지 않고 게임을 즐길 수 있다는 장점이 있다.

이렇듯 크로스플랫폼이 용이하고, 별도 프로그램 설치 없이 즐길 수 있다는 점 때문에 HTML5 게임은 차세대 게임으로 주목받았다. 이번 글로벌 진출을 위한 트렌드 세미나에서는 이를 주제로 업계 관계자들이 모여서 HTML5 게임 개발 노하우와 국내와 해외의 HTML5 게임 시장 현황, 앞으로의 HTML5 게임의 방향과 현재 수준에 대해 이야기하는 시간을 가졌다.


■ HTML5 게임의 이해, 그리고 현재 글로벌 시장 현황은?

▲ 모비게임즈 송원영 대표

모비게임즈 송원영 대표는 HTML5에 대해서 우선 정의했다. 그는 HTML5는 세간에는 차세대 게임을 위한 도구, 현재는 캐주얼 게임에 많이 사용되는 도구라는 식으로 여겨지는 경향이 있다고 보았다. 그렇지만 개발자의 관점에서 볼 때, HTML5는 단순히 하나의 언어에 불과하다고 설명했다. 이 관점에서 보면 굳이 HTML5로 인스턴스 게임을 만들어야 한다거나, 웹게임 형태로 만들어야 한다는 제약이 의미가 없다. 단순히 개발할 때, 사용하기 나름인 것이다.

이런 관점에 치우치면 사업적인 효용성을 보지 못하기 때문에 사업적인 측면에서 HTML5을 보게 됐지만, 그로 인해서 HTML5에 대해서 제한적으로 보고 있다고 송원영 대표는 설명했다.


모비게임즈는 현재 HTML5에 대해서 사업적 효용의 측면에서 눈여겨보고 있다. 이에 대해서 일각에서는 "HTML5가 수익이 되는 사업인가?"라는 의문을 제기하기도 한다. 송원영 대표는 이미 HTML5 게임 시장이 존재하고 있으며, 앞으로도 계속 유지될 것이라는 전망을 제시했다. 다만 현재 국내 사정상, HTML5 시장이 굉장히 소규모에 특정 장르에만 국한되어있기 때문에 선입견을 갖고 바라보고 있다고 설명했다.

송원영 대표는 HTML5 시장의 근간은 웹게임과 플래시 게임에서 비롯됐다고 언급한다. 플래시 게임에서 웹게임으로 발전했고, 웹게임이 더 발전해서 HTML5가 된 이후, 네이티브 앱과 클라이언트를 기반으로 하는 게임까지도 아우를 수 있게 됐다는 것이다.

HTML5의 강점으로는 우선 2D 게임 개발 시 비용 대비 효과가 높다는 것으로 꼽았다. 우선 게임을 하나 만들고 난 뒤, 활로가 여타 게임보다 많기 때문이다. 실제로 네이티브 앱, 클라이언트 등을 기반으로 하는 게임들은 그에 맞는 플랫폼, 혹은 크로스플랫폼을 고려해서 만든 빌드의 수만큼만 활로를 뚫을 수 있다. 그러나 HTML5 게임은 별도의 빌드 없이도 PC, 모바일, 메신저 게임 등 여러 방면으로 출시가 가능하다. 그런 점에서 저비용으로도 예상 외의 효과를 누릴 수 있다는 것이다.

뿐만 아니라 최근에는 네이티브 게임, 즉 앱이나 클라이언트 기반 방식으로도 출시가 가능해진 데다가, 브라우저를 지원하는 모든 디바이스에서 활용이 가능해져서 더 다양한 시장에 활로를 개척할 수 있게 됐다. 그 대표적인 사례로 송원영 대표는 스마트 TV와 기내 게임을 꼽았다. 특히나 스마트 TV 등에서는 광고 수익 등, 다양한 수익 모델을 붙일 수 있기 때문에 앞으로 더 다양한 콘텐츠와 연계해서 활용될 여지가 있다고 예측했다.


특히나 최근 시장의 변화를 보면, 웹이나 소셜 플랫폼이 다양한 콘텐츠와 서비스를 한 데 아우르고 있는 경향을 보이고 있다. 카카오톡 기반으로 웹소설, 송금 등 다양한 서비스를 제공하고 있는 것이 그 좋은 예다. 여기에 게임도 이미 그런 종합 서비스의 한 축을 담당하고 있다고 송원영 대표는 설명했다. 카카오톡의 별게임이나 페이스북 게임 등, 메신저와 SNS에서 인스턴스 게임들이 그 에다.

▲ 이미 다양한 플랫폼, SNS, 메신저 등에서 HTML5 산업에 뛰어들고 있다

현재는 이런 소규모 게임들이 대다수를 차지하기 때문에 HTML5 게임=하이퍼캐주얼 게임이라는 일종의 공식처럼 자리잡고 있다. 그러나 HTML5에 대응하는 3D 게임 엔진도 나오고 있고, 이를 활용한 게임도 나오고 있는 상황인 만큼 하이코어급은 아니더라도 미들코어급 게임이 출시될 것이라고 전망했다.

이미 HTML5 시장은 메신저 주도 하에 큰 규모로 시장이 조성이 되어있다. 뿐만 아니라 북미와 유럽, 러시아에서는 HTML5 기반의 포탈 사이트나 회사도 여러 곳이 있다. 이들은 하이퍼캐주얼 게임 위주초 출시하면서 광고 수익 모델로 이윤을 창출하고 있고, 이를 토대로 더 다양한 콘텐츠를 확보해서 몸집을 불려나가고 있다고 송원영 대표는 설명했다.

그렇다면 HTML5 시장의 규모는 어느 정도일까? 현재 HTML5 게임 시장 중 가장 규모가 큰 곳은 중국으로, 2018년 기준으로 이용자가 5억 명 이상이고, 매출은 5조 538억 원 가량을 기록했다. HTML5 엔진 개발사인 백로엔진사에 따르면 중국에 출시된 HTML5 게임은 약 8,681종인 것으로 나타났으며, 카지노, 슬롯 같은 테이블 게임은 이미 HTML5 게임으로 거의 이동하는 추세다. 뿐만 아니라 MMORPG 등으로 장르가 확대되고 있으며, 아울러 IP를 바탕으로 한 게임도 HTML5로 출시되고 있다. 중국의 개발 추세가 아닌 현재 출시된 게임들의 매출은 어느 정도일까? 대표적인 HTML5 플랫폼인 페이스북 게임의 경우, 100위권까지 게임의 매출은 상당한 것으로 추정되고 있다.


일본 또한 업계에서는 2017년부터 자체 엔진 개발 등, HTML5 게임 시장에 진출하려는 움직임을 보이고 있다. 그렇지만 우리나라에서는 HTML5 시장과 게임에 대한 인식이 아직 닫혀있는 상황이다. 현재 모비게임즈는 HTML5 게임 플랫폼인 팝콘 게임을 KT와 제휴를 통해서 3월 중으로 오픈할 계획이며, 펌프잇업 HTML5 버전을 출시했다. 아울러 그라비티와 협력해서 라그나로크 클리커 M을 개발 중에 있다. 이러한 노력들이 HTML5 게임 시장에 대해서 유저나 개발사들이 새로운 관점으로 접근하는 계기가 되었으면 한다고 밝히면서 강연을 마쳤다.

▲ 안다미로와 협력해서 개발, 출시한 '펌프잇업 HTML5 버전'

▲ 그라비티와 협력해서 개발, 3월 출시 예정인 '라그나로크 클리커 HTML5'



■ 중국 HTML5 게임의 현 주소와 트렌드를 살펴보다

▲ 차이나랩 이두일 대표

차이나랩 이두일 대표는 중국에서 본격적으로 HTML5 게임이 자리잡은 것을 2016년 무렵이라고 설명했다. 당시는 모바일 게임이 PC 산업의 규모를 넘어서고, 유저들이 점점 모바일 게임에 익숙해지던 시기였다. 그 상황에서 12월 28일, 모바일에 맞춘 HTML5 미니게임이 등장하면서 시장이 점점 더 커지기 시작했던 것이다. 이후 2018년 4월 위챗 미니 게임 플랫폼이 정식 오픈하고, 60억 위안 규모로 자리잡으면서 점차 중국 게임 시장에서 그 위치를 공고히 하고 있다.


이러한 배경을 이두일 대표는 PC 게임 단계에서 하드웨어와 인프라가 PC 게임의 발전 속도를 쫓아가지 못한 것으로 꼽았다. 점차 요구 사양이 높아지는 PC 게임을 즐기기 어렵다보니, 저사양에서 편하게 즐길 수 있는 게임을 추구하게 됐다는 것이다. 뿐만 아니라 PC 게임을 즐기던 유저층이 나이를 먹어가면서 게임을 즐길 시간이 줄어들자, 그들이 짜투리 시간에 플레이할 수 있는 유형의 게임으로 발전해나간 것이 현재의 웹게임의 형태라고 이두일 대표는 추론했다.


이후 스마트폰의 폭발적 성장을 눈여겨본 중국은 모바일 게임 시장에 투자를 했으며, 놀라운 발전을 거두었다. 그러나 게임 시장이 고도화되면서 과열 경쟁이 일어났고. 2018년에는 게임 규제가 생기는 등 여러 가지로 악재가 발생했다. 이에 대한 대처로 게임업계에서는 HTML5 게임을 주목하게 됐다. 즉 중국 업체들이 편의성 뿐만 아니라 틈새 시장을 공략하겠다는 취지에서 HTML5 게임에 접근했다는 것이다

특히나 HTML5 게임은 판호 발급에서 비교적 자유롭기 때문에, 일련의 상황에서 사업적 전략이자 돌파구로 적합했다. 뿐만 아니라 저사양의 디바이스에서도 구동을 하기 때문에 동남아시아 시장 등을 공략하기도 편하다는 이점이 있었다. 이렇듯 HTML5 게임은 중국 업체들에게 사업적 전략이자, 돌파구로 채택이 되면서 그 규모가 자연히 커지게 됐다고 이두일 대표는 설명했다.

▲ 판호 발급에서 비교적 자유롭다는 점에서 HTML5는 하나의 돌파구로 채택됐다

중국의 HTML5는 크게 두 가지로 나뉜다. 하나는 웹게임에서 HTML5로 발전한 게임들로, 이런 게임들은 다수가 IP를 중심으로 하고 있다. '뮤', '미르의 전설2', 그 외에 삼국지를 기반으로 하는 각종 HTML5 게임들이 그 예다. 또 다른 하나는 가벼운 미니 게임으로, 중국에서는 위챗 미니앱인 '샤오청쉬'로 대변되는 유형의 게임이다.

특히 '샤오청쉬'는 DAU 1억 이상이고, 업계에서 눈여겨보고 있는 시장이다. 중국은 구글 플레이스토어가 없는 대신, 서드파티 마켓이 굉장히 많기 때문에 유저 유입을 각 마켓마다 따로 해야 한다는 번거로움이 있다. 또한 출시 과정도 복잡한 편이다. 그렇지만 미니 게임은 간단한 과정으로 쉽게 출시할 수 있고, 유저를 곳곳에서 유입하기도 편하다. 채널 플랫폼에 올리면 금방 출시가 되며, 검수 과정도 일반 앱이나 게임에 비해서 짧은 편이다.

▲ 일반 앱 기반 게임보다

▲ HTML5 기반 게임이 더 출시 절차가 간편하다

뿐만 아니라 개인 개발자가 만든 샤오청쉬는, 판호 없이도 게임을 출시할 수 있다는 이점이 있다. 여기에는 인앱 결제나 유료 판매 상품이 없어야 하고, 광고 수익 모델만 해당된다는 규정이 있는 데다가 개발자가 중국인일 때에만 해당된다는 조건이 있긴 하다. 이런 점 때문에 개인 개발자로 등록해서 출시되는 샤오청쉬의 비중이 약 44% 가량을 차지하고 있는 상황이다.

▲ 나름의 조건이 있긴 하지만, 어쨌든 판호를 거치지 않고 기존의 게임보다 더 간단히 출시가 가능하다

시간이 지나면서 HTML5 게임, 샤오청쉬도 절차가 좀 더 복잡해졌다. 데이터 분석 업체, 광고 플랫폼, 클라우드, 샤오청쉬 플래폼, 엔진, 매체, 퍼블리셔 등등 다양한 분야가 생겨난 것이다. 뿐만 아니라 시장도 점차 포화 상태에 이르고 있는 추세다. 상반기에 약 천여 개였던 샤오청쉬는, 이제 8천 개 이상 출시가 된 것이다.

그런 상황에서 중국의 미니 게임 개발자들은 다른 활로를 모색하고 있다고 이두일 대표는 설명했다. 중국 업계에서는 현재 미니 게임이 교육과 전자상거래와 결합해서, 새로운 시장을 만들어낼 것이라고 전망하고 있다. 실제로 텐센트에서는 위챗페이가 급성장하게 된 주요 요인 중 하나가 위챗 기반의 HTML5 게임 플랫폼, 샤오청쉬라고 발표하기도 했다. HTML5 게임이 소비자의 앱 리텐션을 높였고, 이를 기반으로 위챗페이가 발전할 수 있었다는 것이다.

마지막으로 이두일 대표는 중국 HTML5 게임 시장이 크고, 다양하게 발전한 것은 맞지만 국내에서 진출하기는 쉽지 않을 것이라고 조심스럽게 전망했다. 우선 판호 발급 없이도 가능한 개인 개발자 등록은 중국인 개발자를 통해서만 진행이 가능하다. 명의를 중국 개발자로 등록하면 가능은 하지만, 소위 '먹튀'를 당했을 때 대처하기 어렵다는 것이다. 반면 간접 서비스나 현지 파트너십을 활용한 중도 서비스로 가게 되면 판호 발급을 거쳐야 하기 때문에, 난관은 있다.

▲ 국내에서는 여전히 중국 시장을 직접 접근하기는 어렵다

이런 상황에서 중국 HTML5 시장을 직접 체감하거나 진출하기는 어렵지만 HTML5 시장에서 중국이 다양한 활로를 보여주고 있는 만큼, 그에 대해서 알고 대비할 필요는 있다고 강조했다.



■ 다방면에서 활용되고 있는 HTML5, 현재 그 기술 수준은?

▲ 잔디소프트 윤세민 대표

잔디소프트의 윤세민 대표는 HTML5 게임을 좀 더 기술적으로 접근했다. 실제로 잔디소프트는 HTML5 기반 MMORPG '매드월드'를 개발 중인 만큼, 그 과정에서 느꼈던 HTML5의 기술적인 특징을 공유한 것이다.

HTML5는 잘 알려진 것처럼 웹 브라우징 기술을 기반으로 한다. 즉 브라우저 위에서 실행이 된다는 것이다. 다양한 플랫폼에서 구현 가능하다는 말은, 정확히 말하자면 브라우저가 실행되는 환경에서 구동이 가능하다는 의미이기도 하다.


과거에는 각 기기마다 서로 다른 개발 환경이기 때문에 불가능했지만, 2014년에 브라우저를 기준으로 했을 때, 모든 기기에서 통합할 수 있는 표준형이 만들어졌다. 그것이 HTML5였으며, 이때를 기점으로 HTML5는 다양한 영역에서 활용되기 시작했다.

흔히 말하는 것처럼 플랫폼으로서만이 아니라, HTML5는 생각 외로 다양한 분야에서 이용되고 있다. 일례로 트위치, 네이버의 스트리밍 서비스에서도 활용되고 있으며 클라이언트에서도 일부 응용되고 있다. 대표적인 사례가 리그 오브 레전드의 개편된 클라이언트다.

▲ 이미 다방면에서 HTML5 기술은 활용되고 있다

뿐만 아니라 플레이스테이션 스토어의 로비 화면과 유튜브도 HTML5을 기반으로 만들어지는 등, 다양한 분야에서 HTML5가 활용되고 있다는 것을 알 수 있다. 예전에는 영상 미디어나 채팅, 화면 속 화면은 플래시나 플러그인을 활용했지만, 이 분야를 HTML5가 대체하면서 좀 더 전환이 자연스러워지고, 더 많은 콘텐츠를 소화해낼 수 있게 한 것이다. 최근에는 네이버에서도 영상, 플레이어에서 플러그인을 줄이고 HTML5을 도입하는 등, 경량화를 시도하고 있다.

그렇다면 게임에서의 HTML5는 어떨까? 윤세민 대표는 게임에서 가장 핵심적인 분야인 렌더링과 사운드, 인풋, 네트워크, 엔진 측면에서 고찰했다. 우선 렌더링은 WebGL을 활용해서, 클라이언트 베이스에서 보여준 렌더링을 어느 정도까지는 따라오고 있다고 판단했다. 실제로 WebGL2.0까지 HTML5는 소화가 가능한데, 이는 OpenGl과 언리얼로 비유하자면 3.x 버전대에서 구현 가능한 수준이라고 평가했다.


윤세민 대표가 특히 놀라운 발전을 거뒀다고 평가한 부분은 사운드 부분이었다. 최근에는 웹에서 음악을 듣고 스트리밍하는 것이 익숙하지만, 2010년대만 하더라도 웹 기반에서 게임 음악 같은 복잡한 사운드를 구축하기가 어려웠기 때문이다. 특히나 사운드플레이가 가능할 정도로 입체적인 3D 사운드 기술은 웹에서 지원이 되지 않았고, 따라서 구현할 수가 없었다.

그렇지만 HTML5에서는 구현이 가능해지면서 점차 다양한 시도가 가능해졌다. 모비게임즈에서 출시한 펌프잇업 HTML5 버전처럼, 리듬게임이나 음악 게임의 사운드트랙을 만들어내고 소화해낼 수 있을 정도로 발전했기 때문이다.

조작에 중요한 영향을 미치는 인풋을 보면, HTML5 쪽이 다양한 컨트롤러 지원을 하기 때문에 최근에는 더 편해졌다고 평가했다. 키보드, 터치, 마우스클릭, 태블릿 펜 기능도 손쉽게 구현할 수 있도록 기술이 뒷받침됐으며, 이로 인해서 네이티브 게임 개발 대비 3분의 1에서 5분의 1 가량 코스트가 든다고 평가했다.


네트워크 능력은 웹 개발에서는 한동안 문제가 많았지만, 웹 소켓을 활용해서 이 부분을 해소했다고 설명했다. 실제로 예전 웹 단계에서는 실시간 채팅도 제약적일 정도로 네트워크가 제대로 뒷받침되지가 못했다. 그러나 지금은 HTML5 기술을 활용하면서 영상 촬영과 동시에 채팅이 가능해질 정도로 리스폰스가 빨라졌다.

게임 개발에서 중요한 엔진을 보면, HTML5를 기반으로 하는 엔진들이 이미 시중에 여러 가지가 존재하고 있다. 이들은 업데이트도 꾸준히 갱신되고 있으며, 사용자 수도 네이티브 엔진만큼이나 높은 것으로 나타났다. 대표적인 엔진으로는 하이퍼캐주얼 장르에서 많이 사용하는 페이저 엔진, 디즈니에서 렌더링 엔진으로 활용하고 있난 Pixi.Js, 렌더링에 특화된 바빌론 JS 등이 있다.

▲ 바빌론.JS는 상용 엔진에 못지 않은 렌더링을 보여주고 있다

윤세민 대표는 HTML5 게임이 이렇게 기반이 갖춰지긴 했지만, 아직 넘어야 할 현실이 있다고 조언했다. 현실을 살펴보면 HTML5 게임들 다수가 하이퍼캐주얼 위주이며, MMORPG는 현재 웹게임을 HTML5로 포팅한 것 위주로 출시되고 있다. 사업 모델 역시도 하이퍼캐주얼 위주로 조성이 되어있는 현실이다.

그렇다면 왜 현재 HTML5 게임은 아직도 이 단계에 있는 것일까? 윤세민 대표는 우선 네이티브 대비 성능이 낮다는 점을 지적했다. 실제로 고성능 게임을 브라우저와 네이티브 환경에서 벤치마킹했을 때, 5에서 10배까지 성능 차이가 난다. 라이트한 게임은 처리하는 데 크게 문제가 없지만 고성능 인공지능 처리, CPU 처리는 브라우저에서 소화해내기엔 아직 벅차기 때문이다.

▲ 벤치마크 결과를 보면, 아직 네이티브를 따라가지 못한다는 것을 보여주고 있다

좋은 게임이 모두 다 고사양을 요구하는 것은 아니지만, 어느 정도 퀄리티를 갖추기 위해서는 일정 사양을 요구하게 된다. 아직은 HTML5은 이를 완벽히 소화할 수 없고, 제약이 있기 때문에 적극적으로 활용되기 어려운 것이다.

여기에 데이터처리 문제 또한 HTML5의 문제 중 하나다. 하이퍼캐주얼 게임은 데이터를 처리할 게 적기 때문에 문제가 되지 않지만, RPG만 해도 데이터 관리가 어려워진다. 컴퓨터에서 일반적으로 데이터를 처리하는 방식은, 자신이 저장해둔 파일을 여는 방식이다. 그렇지만 웹 방식은 파일을 직접 여는 것이 아니라, 서버에 요청을 한 뒤 서버에서 파일을 접근한 뒤, 이를 전송하는 방식이다. 즉 파일에 접근하는 과정이 좀 더 복잡하기 때문에, 데이터 처리가 어려워지는 것이다.


뿐만 아니라 엔진의 편의성 측면에서도 아직 HTML5 기반 엔진들은 상용 엔진에 비해서 부족한 수준이다. 상용 엔진은 HTML5 포팅을 지원하기는 하지만, HTML5 기반 엔진과는 달리 제한적으로 HTML5 포팅이 가능한 수준이다.

그렇다면 잔디소프트에서 개발 중인 HTML5 MMORPG, '매드월드'는 어떤 과정을 거쳤을까? 처음에는 HTML5의 WebGL을 검증하고, 서버와 클라이언트 구조를 검증하는 단계를 거쳤다. 이때는 그래픽보다는 서버에 집중했다고 밝혔다. 그 외에는 호환성과 크로스플랫폼이 잘 되는지 여부를 먼저 파악하고, 개발 엔진과 라이브러리를 체크하는 단계를 거쳤다.

▲ 프로젝트 M 처음 단계의 매드 월드의 모습

이러한 검증을 끝낸 뒤에는 두 번째 단계로 돌입 본격적으로 엔진을 구성하기 시작했으며, 툴과 성능을 체크하기 시작했다. 또한 이 단계에서부터 본격적으로 게임성에 대해서 검증에 들어갔다고 밝혔다. 이때의 화두 중 하나는 그래픽 성능이 어디까지 올라올 수 있는지 여부였다. 최초에는 갤럭시 노트 3 정도로 잡았으며, 스파인 애니메이션을 지원하지 않아서 자체 적용하는 등 미완성 단계였다. 그런 상황이었지만 개발에서 큰 문제는 없었다고 윤세민 대표는 회고했다

그리고 세 번째 단계는 최적화와 멀티플랫폼을 검증하면서, 그래픽 컨셉과 게임 개발 프로세스도 체크하는 시기였다. 이 단계까지 도달하는 데 2년 정도가 걸렸으며, 현 단계에서는 이보다 더 진화한 상태라고 윤세민 대표는 밝혔다.

▲ 아직 프로젝트 M 상태지만, 어느 정도 틀이 완성됐을 때의 모습

몇 년 간의 개발 기간 동안 그는 HTML5가 접근성이 굉장히 높은 도구라는 점을 체감했다. 개발을 하면서 HTML5 브라우저가 지원되는 모든 기기에서 즐길 수 있는 데다가, 앞으로는 고성능 게임 개발이 가능해질 것이라는 확신이 들었기 때문이다. 여기에 웹의 장점을 모두 갖고 있는 만큼, 앞으로 다양한 시장을 열 기술이자 도구라고 강조하면서 강연을 마쳤다.



■ HTML5 게임, 보안 관리는 어떻게 해야 할까?

▲ 잉카엔트웍스 홍진선 이사

웹과 앱 보안을 전문으로 하는 잉카엔트웍스의 홍진선 이사는 보안이라는 관점에서 HTML5를 조명했다. 우선 그는 콘텐츠, 플랫폼으로서 HTML5는 장점이 많다는 점에는 동의했다. 크로스플랫폼이 쉽고, 플러그인 없이 네이티브 앱과 동일한 수준의 UX를 제공할 수 있는 데다가 네이티브 디바이스 기능도 활용 가능하기 때문이다. 뿐만 아니라 웹 기반인 만큼 개발 인력풀도 넓고, 개발 속도도 빠른 데다가 라이브러리도 풍부하다는 장점도 갖추고 있다.

▲ 이렇듯 HTML5은 많은 장점을 갖고 있다

특히나 네이티브 디바이스 기능을 활용하기 쉽다는 것은 기존의 HTML에서 보지 못한 장점이라고 설명했다. 예전에는 그런 인터페이스가 갖춰지지 않은 데다가, 오프라인에서는 구동이 불가능했기 때문이다. 그렇지만 HTML5는 그 약점을 보완한 것이다.

그렇지만 HTML5과, 이를 기반으로 한 게임은 완벽하지는 않다. 홍진선 이사는 이를 설명하기 전에 우선 HTML5 게임의 구성을 간단하게 설명했다. HTML5 게임은 HTML이라고 하는 마크업, CSS라고 하는 스타일리시에 자바스크립트 언어, 이미지나 사운드를 포함한 리소스로 구분이 되어있다. 이 중에서 보안에서 중요한 부분은 자바스크립트 파트다. 자바스크립트는 동적으로 콘텐츠를 변경하거나, 멀티미디어를 다루거나, 움직이는 이미지를 관리하는 등 웹페이지를 구성할 때 필요한 프로그래밍 언어로, 브라우저 API 및 서드파티 API를 활용한다.


HTML5 게임은 앞서 언급했던 것처럼 웹 브라우저와 자바스크립트를 기반으로 하고 있다. 이는 곧 웹 브라우저와 장점과 단점을 공유한다는 의미이기도 하다. 실제로 브라우저가 구동되는 환경이면 어디에서든 이용할 수 있다는 HTML5 게임의 장점은 웹 브라우저의 장점이기 때문이다.

여기에서 홍진선 이사는 웹 브라우저의 철학을 상기시켰다. 웹 브라우저는 무언가를 공유하고, 공개하자는 철학을 바탕으로 만들어졌다. 그 때문에 한동안 널리 퍼지거나, 대가 없이 공유되기를 원하지 않았던 프리미엄 콘텐츠가 유통되지 않았던 전례가 있었다. 그러다가 HTML5로 넘어오면서 암호화, 보호 API가 갖춰지면서 점차 프리미엄 콘텐츠도 유통되기 시작한 것이다. 하지만 개발툴도 발전한 데다가, 웹의 기본 철학이 공유와 공개인 만큼 보안에서 문제가 발생할 수밖에 없다고 설명했다.

▲ 개인 정보 보호를 지원하지만, 개발툴 등도 강력해지면서 파해가 가능하다

웹과 HTML 보안에 대해서 오픈소스 웹 애플리케이션 보안 프로젝트(OWASP)는 10개의 가이드라인을 제시했다. 인젝션 및 취약한 인증, 잘못된 보안 구성, 크로스사이트 스크립트 등으로 DB가 노출될 수 있고, 이를 유의해야 한다는 점이다.


그렇다면 HTML5 게임은 어떤 식으로 보안에 신경을 써야 할까? 우선 그는 자바스크립트 보안에 대해서 설명했다. HTML5 게임의 로직은 클라이언트에서 구동하는 방식이다. 그리고 게임 로직은 자바스크립트에 포함되는 형태다. 즉 공격자는 자바스크립트만 보면 게임의 구조를 이해할 수 있도록 되어있다. 심한 경우, 이를 분석하고 조작하는 것만으로도 해킹이 가능하다는 것이다. 초기 스낵 게임이나 인스턴스 게임은 실제로 간단한 방법으로 데이터 조작이 가능했던 적도 있었다고 홍진선 이사는 설명했다.

이를 막기 위한 방법으로는 첫 번째로 난독화 및 압축이 있다. 단순한 코드도 복잡한 형태로 변환해서, 공격자가 읽기 어렵도록 하는 것이다. 이 방법은 가장 간단한 방법이지만, 게임 퍼포먼스에 영향을 미친다는 단점이 있다. 읽기 어려워진 만큼, 처리하는 데 시간이 걸리기 때문이다. 뿐만 아니라 상당히 많이 활용하는 방법인 만큼, 난독화를 푸는 툴도 많다는 단점도 있다.


또 다른 방법으로는 코드를 퍼가지 못하도록 하는 방법이다. 이 방식은 블로그 등에서 흔히 보이는 우클릭, 드래그 방지 같은 방법도 있고, F12키 방어나 개발자 툴이 실행되는 것을 인식해서 방어하는 방식이다.

코드가 클라이언트에 남는 것을 방지하기 위해서 서버사이드에서 로딩하는 방식도 일부에서는 사용하고 있다. 서버사이드의 J쿼리를 이용해서 서버에 로딩하는 식인데, 이는 다 서버에서 구동하는 만큼 트래픽에 따라서 성능에 영향을 끼칠 수 있다는 단점이 있다. 코드를 PNG로 변경, 캔버스 기능을 활용해서 로딩하는 방식도 많이 활용되는 보안 방법이다. 그렇게 하면 클라이언트에서는 이미지만 떠있고, 화면에는 아무 것도 뜨지 않고 동작하기 때문이다.


궁극적으로는 브라우저 보안을 활용하는 방법이 있다. 실제로 프리미엄 콘텐츠가 HTML5로 들어오게 된 이유는, 브라우저 보안으로 자바스크립트를 암호화하고 소스 및 네트워크 뷰 기능에 대응해서 보안을 유지할 수 있게 됐기 때문이다. 실제로 구글 크롬 기준으로 볼 때, 보호기능을 쓰면 서버탭에서 로그가 출력되던 부분이 보이지 않게 되고, 네트워크 자바 스크립트가 암호화되고 난독화되기 때문에 공격자들이 구조를 알 수 없도록 했다.


이렇듯 HTML5 게임은 기본적으로 웹을 바탕으로 하는 만큼, 웹 콘텐츠와 유사하게 보안취약점을 갖고 있다고 홍진선 이사는 다시 한 번 강조했다. 그런 만큼 웹 콘텐츠 개발 시에 지켜야 할 보안 사항을 알아두는 것이 좋다고 조언했다. 웹은 공유와 공개를 바탕으로 하지만, 콘텐츠에는 그래야 할 부분이 있고 안 될 부분이 있기 때문이다.