Chat Signing
How to resolve issues caused by the introduction of the "Secure Chat" system in Minecraft 1.19.1+.
The Minecraft 1.19.1 update introduced the "Secure Chat" system to Minecraft.
This system introduced several new challenges for Minecraft plugins which need to prevent messages from being sent, particular at the proxy level.
When a signed chat packet is cancelled by a plugin on the proxy, it is prevented from reaching the Minecraft server the player is connected to. When the player later sends another signed chat packet that isn't cancelled, it will be received and verified by the Minecraft server. During this verification process, the signature will be invalid due to the message indexes not matching.
BungeeCord
If you are running BungeeCord and have players connected with Minecraft 1.19.1+, you may have players kicked from your backend servers with the following message:
This kick is caused by the server attempting to validate a signed packet with an invalid signature. This will occur if the player has a message cancelled on the proxy, and then sends another message that does not get cancelled.
Known workarounds
We recommend trying the following workarounds to resolve this issue. If you find any other workarounds, please contact us so that we can share them here!
Disable chat signing (Not Recommended) There are a few plugins you can use to achieve this, however AntiPopup has been tested to work properly. In order for AntiPopup to work, it must be installed on all of your servers.
This will cause all chat messages to be unsigned, which will prevent player messages from being reported to Mojang.
MarketplaceResource PageDisable the toggle and message prefix features These features require UltraStaffChatPro cancelling chat messages, which may cause the kick mentioned above when used with signed chat messages.
If you do not wish to disable chat signing, we recommend disabling these features in the
config.yml
file:Staff-chat toggle enabled - Set
enabled: false
Staff-chat prefix enabled - Set
enabled: false
Velocity
If you are running Velocity and have players connected with Minecraft 1.19.1+, you may have players kicked with the following error printed to console:
This kick was implemented by the Velocity team(opens in a new tab) to prevent mismatches on the server, instead opting to kick players from the proxy before this can happen.
Known workarounds
We recommend trying the following workarounds to resolve this issue. If you find any other workarounds, please contact us so that we can share them here!
Use SignedVelocity (Recommended) SignedVelocity allows plugins to cancel and modify messages/commands from Velocity without synchronisation issues. In order for SignedVelocity to work, it must be installed on both Velocity and all of your servers.
MarketplaceResource PageDisable chat signing with UnSignedVelocity (Not Recommended) UnSignedVelocity allows plugins to cancel and modify messages/commands by removing the signed information from chat packets sent by players using Minecraft 1.19.1+.
You will also need a plugin such as AntiPopup installed on all of your servers to prevent players sending unsigned messages from being kicked by the server.
This will cause all chat messages to be unsigned, which will prevent player messages from being reported to Mojang.
MarketplaceResource PageDisable the toggle and message prefix features These features require UltraStaffChatPro cancelling chat messages, which may cause the kick mentioned above when used with signed chat messages.
If you do not wish to use SignedVelocity or disable chat signing, we recommend disabling these features in the
config.yml
file:Staff-chat toggle enabled - Set
enabled: false
Staff-chat prefix enabled - Set
enabled: false
Last updated
Was this helpful?