AD

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

모데충
2022-08-16 14:37:01 2390 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
댓글 5개  
이전 댓글 더 보기
이 글에 댓글을 달 권한이 없습니다. 로그인해 보세요.
잡담신고팬아트건의함게임추천이벤트순클립전수진 공부 프로젝트음식을 올려보아요마지막 클립 불태우기
2
전수진 공부 프로젝트
에펙 뉴비 순당무님을 위한 팁글 모음.link [1]
쥐펄
07-29
4
전수진 공부 프로젝트
초전도체 논문 [2]
서카포노예제발
07-29
6
04-06
3
03-30
15
전수진 공부 프로젝트
순손실 방지 프로젝트 - 1.다시보기 자동저장하기 [17]
모데충
03-29
4
전수진 공부 프로젝트
심심해서 쓰는 인터넷 신청부터 점검까지 [3]
모데충
03-23
0
전수진 공부 프로젝트
녹화에 음악 안남게 하기 [3]
모데충
12-20
11
전수진 공부 프로젝트
씹덕일러를 그려보자 (2) - 김욾 선화, 밑색 칠하기 [6]
미노일세
11-15
7
11-07
16
전수진 공부 프로젝트
걸게이머 결승에 관하여(뇌피셜) [8]
모데충
11-03
7
전수진 공부 프로젝트
망 사용료 논쟁에 대해서 알아보자(초스압 주의) [7]
모데충
09-30
8
전수진 공부 프로젝트
연애 잘하는 법,권태기와 식은 마음의 구분 [3]
boysick12
09-25
2
전수진 공부 프로젝트
트게더를 만들어보자 - 다음 과정 의견수렴 [3]
모데충
09-17
2
09-10
5
전수진 공부 프로젝트
발?성법 [1]
라ㅡ떼
09-10
3
전수진 공부 프로젝트
트게더를 만들어보자 - DB(Table Join) [마감] [15]
모데충
09-05
5
전수진 공부 프로젝트
트게더를 만들어보자 - DB(Table 정규화) [2]
모데충
09-02
2
전수진 공부 프로젝트
방장 공부하자 (서버, 서버의 기본 3)
라ㅡ떼
09-01
3
전수진 공부 프로젝트
방장 공부하자 (서버, 서버의 기본 2)
라ㅡ떼
08-28
5
전수진 공부 프로젝트
방장 공부하자 (서버, 서버의 기본 1) [2]
라ㅡ떼
08-26
3
전수진 공부 프로젝트
트게더를 만들어보자 - DB(Table 제약 조건)
모데충
08-23
3
전수진 공부 프로젝트
트게더를 만들어보자 - DB(CRUD 조건문) [마감] [8]
모데충
08-19
3
전수진 공부 프로젝트
트게더를 만들어보자 - DB(DataGrip 설치) - [마감] [15]
모데충
08-17
»
08-16
인기글 글 쓰기