2023-03-25 글 쓰는 날
글 쓰는 날
이번 주에 쓴 글 목록
트위터 _woojinkim이나 마스토돈 mastodon.woojinkim.org/@me를 팔로잉 하시면 달력의 일정에 따라 평일에는 하루에 하나씩 글을 보실 수 있습니다.
유비키 사용을 권장하지 않아요
집에서 아무 생각 없이 유튜브 앱을 새로고침 하다 보니 알고리즘이 점지 해 주신 유비키 사용방법을 설명하는 영상이 자주 나타났습니다. 지난번에 패스키가 어떻게 동작하는 건지 궁금해서 유튜브에서 튜토리얼 영상을 찾아본 적이 있는데 그 때문인지도 모르겠습니다.
이 글은 유비키에 대한 이야기이지만 말이 나온 김에 패스키에 대해 아주 짧게 설명하고 넘어가면 비대칭키 암호화 기술에 기반해 내 폰에 비밀키를, 인증을 요구하는 서비스가 공개키를 들고 서로 패스워드 없이 인증하는 방법입니다. 대강 내 폰에 여러 서비스에 걸쳐 안전하게 사용할 수 있는 마스터 패스워드가 들어있어 로그인 할 때마다 이 마스터 패스워드를 사용한다고 생각하면 완전히 틀리지는 않습니다. 다만 내 폰에 처음 마스터 패스워드를 저장하려고 할 때 내가 정말 나인지, 이 폰이 정말 내 폰인지 인증하는 절차가 기술적으로 정의되어 있지 않고 또 만약 내가 여러 이유로 폰을 바꾸면 그 대 다시 마스터 패스워드를 내 폰에 넣을 방법이 모호합니다. 실상 패스키 표준은 기술적인 배경을 제공할 뿐 실제 인증 인프라를 지탱하는 것은 실제 사람과 실제 그 사람의 폰을 확인하는 실행 주체가 별도로 필요한데 이런 실행 주체는 은행, 카드사, 통신회사 같은 전통적인 인증 업무 수행 주체들에게 떠미는 느낌이 강합니다. [계속]
패스워드 자동 채우기를 그대로 사용하세요
패스워드 관리 소프트웨어에는 보통 웹브라우저 익스텐션을 통해 웹브라우저에 나타난 로그인 폼에 로그인 정보를 자동으로 채워 주는 기능이 있습니다. 보안을 위해 모든 웹사이트에 서로 다른 패스워드를 사용하라는 권장 사항을 질리드록 들어 왔겠지만 이런 권장 사항을 안정적으로 실천할 수 있는 거의 유일한 방법은 패스워드 관리 소프트웨어를 사용하는 것입니다. 또한 모든 사이트마다 다른 패스워드를 사용하면서도 로그인이 별로 불편하지 않은 정도로 경험을 유지할 수 있는 이유 역시 패스워드 관리 소프트웨어가 제공하는 자동 로그인 기능 또는 자동 폼 채우기 기능 때문입니다. [계속]
기존 프랜차이즈를 MMO로 만들면 왜 욕부터 먹을까
무슨 게임인지 직접 게임 이름을 밝히지는 않겠지만 원래 MMO 장르가 아닌 게임 프랜차이즈를 기반으로 만든 MMO 게임이 좋은 평가를 받지 못하고 있는 모양입니다. 사실 MMO 게임이 개발 도중 좋은 평가를 받기는 아주 어렵습니다.
고객들의 눈높이는 오래 전에 서비스를 시작해 이미 몇 년에 걸쳐 업데이트 되어 온 성공적인 MMO 게임에 맞춰져 있기 때문입니다. 개발 중인 MMO 게임은 이런 눈높이에서 볼 때 만들고 있다기보다는 만들어진 것이 거의 없는 뭔가 허접하고 이상한 상태로 받아 들여질 가능성이 있습니다. 반면 몇 년에 걸쳐 서비스 해 온 MMO 게임은 일단 출시에 성공했고 여러 번의 업데이트를 거쳤으며 온갖 괴상한 사건 사고에도 불구하고 서비스가 무너지지 않고 버터 낸 상태이고요. 그래서 MMO 게임을 개발 도중에 공개하는 것은 상당한 위험을 감수해야 하는 행동입니다. 이걸 알면서도 공개한다는 것은 그런 위험을 감수해야만 하는 어떤 다른 이유가 있기 때문입니다. [계속]
카리 모라
문득 2022년에 읽은 책을 정리해 놓고 보니 2023년은 벌써 시간이 꽤 지났는데도 뭘 별로 읽지 못했음을 깨달았습니다. 작년에 읽은 ‘내가 행복한 이유’ 이후 같은 작가의 ‘쿼런틴'을 읽긴 했는데 나쁘지 않은 인상과 달리 '내가 행복한 이유’에 수록된 단편 중 한 가지 이야기로 이 정도 장편을 만들기에 적당한가 싶은 의문에 빠져 며칠 생각하다가 그만 아무 글도 남기지 못한 채 지나갔습니다.
‘카리 모라’는 궁금하긴 했지만 읽을지 말 지 상당히 고민했습니다. ‘블랙 선데이’부터 시작해 토머스 해리스의 이야기들을 무척 좋아하고 그 중 한니발을 가장 좋아한 나머지 피렌체에 가기도 했지만 ‘한니발 라이징’은 꽤 실망스러웠고 그 후로 시간이 많이 지났기 때문에 과연 이 분의 새 이야기가 오랜 세월에 걸쳐 오른 기대를 만족할 수 있을지 걱정이었습니다. 또한 먼저 책을 읽은 분들이 남긴 나쁜 평가 역시 괜히 돈 내고 시간 내고 실망스럽기만 한 경험을 하게 되지 않을지 걱정스러웠습니다. [계속]
반년 만에 다시 생각해 본 게임과 블록체인의 관계 정립
어느 날 2022년 가을 즈음에 게임과 블록체인에 대해 고민하며 썼던 글 게임과 블록체인의 관계 정립과 크립토 게임에 사용할 토큰 체계를 설계할 때 가질 마음가짐이 구글캘린더에 입력해 놓은 일정에 따라 타임라인에 나타났습니다. 2023년 봄 현재 이전 고민으로부터 반 년 정도 시간이 지났고 그 사이에 계속해서 일을 하며 생각을 반복하면서 이전에 비해 생각이 달라지기도 하고 또 달라진 생각을 정리하는 과정 역이 조금 달라졌다는 생각이 들어 ‘게임과 블록체인의 관계’에 대한 생각을 현재 시점에서 다시 한 번 정리하려고 합니다.
[계속]
수많은 재화를 지탱하는 보조 장치
2023년 봄 기준으로 두 달 전에 왜 현대 게임에 그렇게 많은 종류의 재화를 사용하나요?를 통해 온라인 게임에 이름을 전부 기억하기 어려울 정도로 많은 여러 가지 재화가 등장하는 이유를 설명했습니다. 크게 격리 수단과 보상을 통해 게임이 동작하도록 만들어야 하기 때문이라고 소개했습니다.
격리 수단으로써 재화는 게임의 한 부분에서 일어난 ���상이 너무 짧은 시간 동안 게임 경제 전체로 퍼져 의도하지 않은 동작을 일으키거나 게임을 망가뜨리지 않도록 해 줍니다. 유명한 게임의 데이터베이스가 망가져 데이터베이스 기술지원의 백업 복구 권고 상황에도 망가진 데이터베이스로부터 데이터를 복구한 이야기를 읽었는데 거기 달린 답글 중 ‘저쯤 되면 그냥 백섭 하는 편이 더 빨리 복구할 수 있었을 것’이라는 의견이 기억에 남습니다. [계속]
간편한 인증의 근본
전에 회사에서 디센트럴랜드 오프체인 랜드렌탈에 대해 설명하고 또 왜 디센트럴랜드 파운데이션 지갑으로 랜드를 옮겨야 할까에 대해 설명하다 보니 비대칭키 암호화의 역사 이야기가 나오면서 자연스럽게 1990년대 후반의 수출제한조치와 공인인증서의 등장에 대한 이야기로 이어졌습니다.
이제 그런 시대로부터 다시 20여년이 지나면서 2천년대 초반처럼 심각하게 엉망으로 만들어진 공인인증 관련 소프트웨어들이 서로 충돌하며 윈도우 기계를 엉망으로 만들던 상황을 훨씬 덜 겪게 되었습니다. 여러 보안 소프트웨어는 여전히 형편 없지만 그나마 자기들 끼리 충돌하며 시스템을 복구 불가능하게 만들지는 않습니다. 물론 여전히 은행 서비스 사용 후나 소프트웨어 제거 후에도 살아남아 시스템에 지속적인 성능 감소를 유발하거나 삭제되지 않은 루트인증서 같은 잠재적이고도 심각한 보안 문제를 남겨두긴 하지만요. 그나마 집에서 모든 윈도우 컴퓨터에 윈도우 프로페셔널 버전을 사용하며 윈도우 샌드박스를 활용해 형편 없는 소프트웨어의 습격으로부터 시스템을 보호하고 있고 또 꽤 오래 전부터 공인인증서를 요구하지 않는 간편송금 서비스를 제공하는 곳이 늘어나면서 이전 시대만큼 공인인증서가 인생을 비참하게 만들지 않게 되었습니다.
[계속]
인터페이스의 비활성 상태
최근에 게임 사용 로그를 설계하면서 버튼 사용 여부와 결과를 추적할 수 있도록 준비하기로 합니다. 고객의 인터페이스 사용에 대한 로그는 한때 웹에서 주로 남기고 있었지만 웹 기반 수집 도구들이 실시간으로 서버에 연결되지 않아도 로그를 남길 수 있는 모양으로 개선되면서 게임에서도 비슷한 방식으로 로그를 남길 수 있게 되었습니다.
대강 게임 상의 인터페이스를 사용할 때 팝업이 열리면 팝업이 열린 시각, 세션 정보, 이 팝업을 열게 만든 이전 행동, 열린 팝업 이름 따위를 기록하고 버튼을 클릭하면 클릭한 시각, 세션 정보, 클릭한 버튼 이름 따위를 기록하는데 여기서 좀 더 자세한 이야기로 들어가면 버튼을 클릭할 때 팝업의 설정 상태를 함께 기록해 분석에 활용할 수 있지만 데이터를 많이 수집한다고 해서 항상 효과적으로 분석할 수 있는 것은 아닙니다. 분석을 전담하는 조직이 있지 않은 이상 로그 대부분은 서버 구석의 스토리지를 차지한 채 ‘언제 한번 봐야지’ 하는 생각으로 맴돌 뿐 다음 일정에 치여 항상 가장 낮은 우선순위에서 영원히 밀리곤 합니다. [계속]
나도 뫄뫄 출신이라 잘 아는데
일할 때 내가 처한 상황을 공감해주고 또 내 어려움을 들어주며 이해해 줄 뿐 아니라 나아가 대안을 제시해 주는 동료나 상사가 있다면 프로젝트의 성공 여부에 관계 없이 이 기간을 통해 많이 성장할 수 있을 겁니다. 사실 그런 동료나 상사가 있다면 프로젝트가 성공하지 못할 가능성이 많이 줄어들기도 해서 프로젝트가 런칭에 성공하고 또 좋은 평가를 받기까지 한다면 이후 커리어 내내 두고 두고 우려먹을 강력한 경험을 얻게 됩니다. 그 동료들이나 상사들 역시 이런 사실을 잘 알고 있어 자신들이 알고 있는 좋은 동료나 상사로써 행동하기 위해 이전 시대보다 훨씬 더 노력하고 있는 것 같습니다. 단지 운이 좋아서 주변에 훌륭한 분들이 점점 더 늘어나는 것 만은 아닐 겁니다. [계속]
온라인 멀티플레이 게임에서 레벨디자인 변경
싱글플레이 게임에서는 캐릭터가 더 적극적으로 주변과 상호작용 하는 모습을 본 적이 있을 겁니다. 공간에 배치된 낮은 장애물을 손으로 짚으며 가볍게 뛰어 넘거나 장애물 앞에서 자연스럽게 걸음을 멈추기도 합니다. 어지간한 온라인 멀티플레이 게임에서는 하기 쉽지 않은 경험입니다.
또 공간에 큰 규모로 레벨디자인을 바꾸기도 합니다. 작게는 동적으로 장애물 위치를 옮겨 게임에 영향을 주기도 하고 크게는 레벨디자인을 구성하는 거대한 구조물을 움직여 이전과 완전히 다른 ��태를 만들기도 합니다. 온라인 멀티플레이 게임에서 레벨디자인 변화는 기껏해야 문을 여닫거나 다리가 무너지는 수준이거나 레벨디자인이 실시간으로 변하기 보다는 변화하는 과정을 컷씬으로 보여준 다음 완전히 변한 레벨에서 이어서 플레이 하는 식으로 처리하곤 합니다. [계속]