I assume a compression error, like the packet is sent uncompressed (because it's normally sent before the compression start), but the client awaits compressed packets (because the compression start packet is already sent). ![]() I tried to use ProtocolLib to send it immediately after the PacketLoginOutSuccess, this causes the client to disconnect by a client error "Packet was larger than expected". ![]() Schedule the packet (PacketLoginOutEncryptionBegin) Taken from .YggdrasilMinecraftSessionService.hasJoinedServer(GameProfile, String, InetAddress) captured by ProtocolLib PacketEvent (_BEGIN) PacketLoginInEncryptionBegin packet = // e.g. This is the client packet you need to capture: Taken from 1_13_R2.LoginListener.a(PacketLoginInEncryptionBegin) Of Course you can send the PacketLoginOutEncryptionBegin, if the server doesn't, to receive a PacketLoginInEncryptionBegin from the client to generate the hash and do the HTTP GET. S -> C | 1_13_R2.PacketLoginOutSetCompressionĪs you can see the needed packet PacketLoginInEncryptionBegin is not received, because the server sends no PacketLoginOutEncryptionBegin. > OFFLINE S | 1_13_R2.PacketHandshakingInSetProtocol ![]() S -> C | 1_13_R2.PacketLoginOutEncryptionBegin S | 1_13_R2.PacketLoginInEncryptionBegin C | 1_13_R2.PacketLoginOutSetCompression > ONLINE S | 1_13_R2.PacketHandshakingInSetProtocolĬ -> S | 1_13_R2.PacketLoginInStart Check the packets sent in online-mode and offline-mode, then compare them: It contains the client shared secret needed for the hash.Ģ. Click to expand.The "second Encryption Response" is the PacketLoginInEncryptionBegin.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |