AD

전수진 공부 프로젝트 딥롤에서 닉변해도 계속 추적이 가능한 이유 [LOL API]

모데충
2022-08-16 14:37:01 1788 9 5

언젠가 방송에서 순당무님이 "딥롤에서는 닉변해도 계속 스트리머 태그가 따라붙는다"라며 의문을 표한 적이 있습니다. 오늘은 간단하게 그 이유에 대해서 알아보도록 하겠습니다.


프로그래밍에 조금이라도 관심이 있으신 분들은 api에 대해서 들어보신적 있으실 겁니다. api는 쉽게 설명하면  프로그램의 관리자가 사용자에게 프로그램의 기능 일부를 사용할 수 있도록 열어주는 것을 말합니다. 제가 올린 자바 메소드 부분을 잘 이해하신 분들이라면 public과 private의 접근 제어자가 떠오를 것입니다.


어쨋든 라이엇도 사용자들에게 자신들의 기능 중 일부를 사용할 수 있도록 열어준것이 대표적으로는 전적검색 시스템입니다. 옵지,포우,딥롤등 모든 전적 검색 사이트들은 다 라이엇의 api를 기반으로 작동됩니다. 그래서 혹여나 라이엇이 "더이상 전적검색 관련 api를 제공하지 않습니다."라고 하면은 전적 검색 사이트들은 그 즉시 작동이 중단됩니다. 왜냐하면은 정상적인 루트를 통해서는 더이상 라이엇의 전적검색 데이터에 접근하는것이 불가능하기 때문입니다. 


그러면은 다시 본론으로 넘어가서 어떻게 계속 닉변을 하는데도 태그가 따라붙게 되는 것일까요? 정답은 바로 해당 데이터의 "고유값"입니다. 고유값이 뭔지 잘 모르시는 분들은 아래의 사진을 보시면 한번에 이해가 갈 것이라고 생각합니다.

6a7890dc0423c00d9a8118d3bc7f4c18.png

자 둘리의 주민증록증에서 우리가 알 수 있는 값들은 이름,주민번호,주소가 있습니다. 그러면 여기서 고유값은 무엇일까요? 다들 생각하셨듯이 주민번호입니다. 둘리가 이름을 셋리로 바꾸로 넷리로 바꾸더라도 주민번호라는 고유값은 변하지 않기 때문에 둘리를 특정지을 수가 있습니다. 


그러면 실제 라이엇에서 제공하는 api를 이용해서 고유값을 알아보도록 하겠습니다.

https://developer.riotgames.com/

위 사이트에서 api를 제공하고 있습니다.


소환사와 관련된 api는 총 5가지가 있습니다. 저는 모데를 좋아하니 모데카이저라는 닉네임으로 검색을 해보겠습니다. 2번째 api를 이용하면 될듯 하네요.

666a75b52274595223f24f1a95d78617.png

결과는 아래와 같습니다.

bf61080e2df02d8009550d7737d40c13.png

7가지의 데이터가 결과로 나왔네요. 이 중에서 실제 고유값은 암호화를 통해 나온 id,accountId,puuid가 아닐까 싶습니다. 실제op.gg에서 검색해본 결과와 비교해보겠습니다.

8312717112f3f561e96ac6e5487581ee.png

name과 summonerLevel이 같은걸 보니 데이터가 정확한것 같습니다.(모데카이저인데 왜 아이콘은 나서스지)


딥롤의 경우 저 3가지의 고유값을 통해서 매칭된 닉네임에 태그를 붙여버리는것 같습니다. 


여기서 저는 이 글을 작성하다가 한가지 더 흥미로운 사실을 발견했습니다. 다른 계정으로 동일한 데이터를 조회해 봤는데...

140e79efc7d1839583e1827ef28de4d8.png

두 계정 다 같은 모데카이저를 조회했는데 서로 id,accountId,puuid가 다른것을 확인할 수가 있습니다. 이것은 두가지 이유가 있습니다.

1.암호화 key가 다르기 때문

ㄴ보통 데이터를 암호화 하는 방식은 key라는 특정한 데이터를 가지고 암호화를 진행하게 됩니다. 이 key값을 통해서 해당 데이터를 다시 복호화 할 수도 있는데요. 계정마다 다 암호화하는 key가 달라서 저렇게 암호화구문이 다르게 나오는 것입니다.


2.악용 방지를 위해서

ㄴ만약 key가 같다면 모두 똑같은 암호화값이 나올 것이고 그러면 어떤 사람이 해당 데이터를 가져갔는지 라이엇측에서는 파악하기가 어렵습니다. 그렇기 때문에 key값을 다르게 한다면 해당 데이터를 가져간 사람이 누군인지를 파악할 수 있기 때문에 서버관리가 좀 더 원할하게 진행이 됩니다. 아마 저 암호화된 값에는 사용자의 진짜 데이터와 해당 데이터를 조회한 계정의 데이터가 같이 들어가 있을 것입니다.

57f0f0287cdbc296b08cce3e4535fb01.png

3줄 요약

1.닉변을 하더라도

2.해당 계정을 판단하는 고유값이 있기 때문에

3.걸리면 무슨짓을 하더라도 끝까지 태그가 달린다.

댓글 5개  
이전 댓글 더 보기
▲윗글 응애.. 고기먹는판다
▼아랫글 돌겜 베롱베롱호리
잡담신고팬아트건의함게임추천이벤트순클립전수진 공부 프로젝트음식을 올려보아요마지막 클립 불태우기
3
08-18
6
잡담
강제휴가는 싫어요 흑 [6]
광주나들이2
08-18
5
잡담
투데이 순스타 [4]
푸른작약
08-18
5
음식을 올려보아요
마지막 같은 회 [2]
베롱베롱호리
08-17
3
순클립
220817 마비노기 클립
소눈확
08-17
6
잡담
다음 방?송 [3]
고기먹는판다
08-17
3
전수진 공부 프로젝트
트게더를 만들어보자 - DB(DataGrip 설치) - [마감] [15]
모데충
08-17
3
잡담
튜닝의 끝은 순정 [2]
광주나들이2
08-17
3
순클립
220816 러스트 클립
소눈확
08-17
8
잡담
액타 샀읍니다. [1]
현생맨
08-17
3
잡담
내일 방?송
고기먹는판다
08-17
6
잡담
핵붕이 근황
프런티어_
08-16
3
잡담
이거 뭐지...? [2]
시든장미
08-16
2
잡담
당무님 러스트함?? [3]
나만다람쥐없어
08-16
3
잡담
응애.. [2]
고기먹는판다
08-16
»
08-16
3
잡담
돌겜 [1]
베롱베롱호리
08-16
4
잡담
유니폼을 샀어요
고기먹는판다
08-15
9
잡담
오늘자 순스타 [2]
푸른작약
08-15
3
음식을 올려보아요
맘스땃쥐 [4]
tnsqkqh
08-15
0
건의함
허락이 되시는지? [2]
안분대장
08-15
4
08-15
5
순클립
220813, 220814 이틀의 클립 [1]
소눈확
08-15
7
잡담
다음 방?송
고기먹는판다
08-15
0
잡담
당무님! [1]
블뤼헤
08-15
14
잡담
대딩의 소소한 목표달성 [4]
광주나들이2
08-14
3
08-14
2
잡담
아침까지 쭉 달린다길래
고기먹는판다
08-14
6
음식을 올려보아요
라면 궁극기 [1]
베롱베롱호리
08-14
인기글 글 쓰기