On 1.8.x-1.9, some servers giving the error "Invalid signature for public key of profile". If ViaProxy is translating between 1.8.9 and 1.19+ it should translate the encryption.
Actually, I think the problem may be that:
- Client connects to ViaProxy on 1.8.9
- ViaProxy connects to the real server using 1.19+
- The real server sends a request for encryption with profile key requirements
- 1.8.9 encryption request is sent to ViaProxy
- Client sends encryption response 1.8.9 (verifyToken)
- ViaProxy translates this into 1.19+ encryption response
- But ViaProxy can not generate a valid signature because it does not have the profile keys
So the issue is on the side of any version of ViaProxy.
The solution would be to:
- Connect to ViaProxy with a newer protocol version that supports signature encryption
- Or pass the profile keys to ViaProxy somehow
- Or connect directly to the server with the correct version (it's somehow different on servers)
Game logs:
[14:23:11] [Client thread/INFO]: Connecting to 1227.0.0.1:25568
[14:23:12] [Client thread/INFO]: Logging in...
[14:23:12] [Netty Client IO #1/ERROR]: Exception caught in pipeline
io.netty.handler.codec.DecoderException: java.lang.IllegalArgumentException: Invalid signature for profile public key
at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:473)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:276)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319)
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324)
at net.minecraft.network.NettyCompressionDecoder.decode(NettyCompressionDecoder.java:33)
at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:441)
... (another 20+ lines of the Java stack trace) ...
Caused by: java.lang.IllegalArgumentException: Invalid signature for profile public key
at net.minecraft.network.login.server.SPacketLoginSuccess.readPacketData(SPacketLoginSuccess.java:45)
at net.minecraft.network.login.server.SPacketLoginSuccess.readPacketData(SPacketLoginSuccess.java:14)
at net.minecraft.network.PacketBuffer.readPacketData(PacketBuffer.java:256)
at net.minecraft.network.NetworkManager.handlePacket(NetworkManager.java:320)
... (a few more lines) ...
[14:23:12] [Client thread/INFO]: Disconnecting: Invalid signature for profile public key
On
1.8.x-1.9, some servers giving the error "Invalid signature for public key of profile". If ViaProxy is translating between 1.8.9 and 1.19+ it should translate the encryption.Actually, I think the problem may be that:
So the issue is on the side of any version of ViaProxy.
The solution would be to:
Game logs: