내 텔레 그램 클라이언트에서 나는 유효한 세션을 생성하는 전형적인 과정을 거칩니다.
initConnection
로getNearestDc
sendCode
명령을 시도 하면 올바른 DC로 다른 전환이 발생합니다.이 프로세스의 여러 지점에서 MessageContainers
서버로부터 상태 및 MsgAcks
등을 표시하는 메시지를 받습니다 . 이것은 예상 된 것이며 이제 제대로 디코딩하고 있습니다. 이러한 메시지 중 일부는 다음 new_session_created
과 같은 유형 이며 다음과 같습니다.
{'msg': {u'new_session_created': {u'first_msg_id': 6327252208304908288L, u'unique_id': -4911750325772918873L, u'server_salt': 6799011375684265530L}}, 'seqno': 1, 'msg_id': 6327252210221112321L}
내 현재 server_salt는이 메시지의 것과 다릅니다. 새 솔트를 사용하도록 전환해야합니까? unique_id는 어떻습니까? 내 새 session_id입니까, 아니면 이러한 메시지를 무시합니까?
이 모든 것을 분류 한 후 다음에 클라이언트가 시작될 때 세션의 어떤 부분을 저장해야합니까? session_id, auth_key, auth_key_id?
이 세션에서 다음 요청을 위해 방금받은이 새로운 솔트를 저장하고 재사용하십시오.
subsequest 로그인을하려면 session_id
, recent_salt
및 auth_key
.
Auth_key_id
로부터 계산 auth_key
하면 수도 있으므로, 또는 보관을 선택하지 않을 수 있습니다
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다