알아낸 것을 정리한 글임
틀린 내용이 있을 수도 있음
밤의 통치자의 세이브 데이터는 sl2 확장자 파일로, AES-128-CBC 암호화가 되어 있음
키는 18 f6 32 66 05 bd 17 8a 55 24 52 3a c0 a0 c6 09, iv는 헤더 제외 맨 앞부터 16바이트
사실 암호화 쪽은 배운 적이 없어서 잘 모르겠고
세이브 데이터는 총 14개의 파일로 이루어져 있음
각각 USERDATA00 ~ USERDATA13
00~09는 플레이어, 10~13은 (플레이어 구분 없는)전적 및 기타 데이터
이건 플레이어 데이터(00~09)
대부분의 플레이어와 관련된 것들이 이 곳에 저장됨
아는 건 전혀 없지만, 게임을 한 번 플레이한 후 이전 데이터와 대조해보았을 때 기존 데이터가 새로운 데이터에 의해 384바이트만큼 밀렸음
16바이트를 1줄로 친다면 정확히 24줄이 밀림
이를 통해 뭔가를 알아낼 수 있을지도
10의 경우 전적 데이터
매칭 비밀번호도 이 곳에 저장되고, 세션에 참여했던 플레이어의 닉네임 등이 이 곳에 저장됨
위 이미지만 봐도 유저 닉네임으로 추정되는 것이 바로 보일 것
11은 확실치는 않은데, 헤더에 GER이라는 아스키 문자가 있음
세이브파일이므로 Global(or Game) Event Record의 약자로 추정
유저 세이브파일과 분리되어 있으니 뭔가 특별한 것을 저장할 것 같기는 한데, 약간 보이다시피 데이터가 사람이 읽을 수 있는 것이 아님
참고로 이 파일은 세션을 한 판 진행한 후에도 변화가 없었음
즉 세션과는 관련이 없다
12 또한 헤더에 힌트가 있음
RSLT라는 아스키 문자가 보이는데, 당연히 Result의 약자로 보임
전적의 상세 정보, 즉 전과 이력의 각 전적을 클릭하면 나오는 창에 띄우는 정보들이 이 곳에 저장되는 것으로 추정됨
때문에 크기도 가장 크다
RSLT 아래에는 DCX, LDCS, DCP, DCA라는 아스키 문자가 보이는데 이건 프롬 소프트웨어에서 내부적으로 사용하는 포맷들
DCP는 압축 포맷이고, 뒤에 붙은 DFLT는 Deflate의 약어라고 하는데 세세한 건 스킵하도록 하고
13은 헤더에 DSNA라는 아스키 문자가 있음
DSNA는 알려진 게 전혀 없는데, 플레이어 닉네임이 저장되어 있는 것으로 보아 Dark Souls Name Array로 추정
물론 이게 정확히 무엇을 하는지는 모름
유저 닉네임이 심상치 않네요
정보 추출하는것도 일이겠다