Geyser icon indicating copy to clipboard operation
Geyser copied to clipboard

All players fail to join with "Invalid signature for public profile key"

Open Budderman18 opened this issue 1 year ago • 6 comments

Describe the bug

It seems bedrock players no longer have profile keys, so they're unable to join a server that enforces secure profiles. Weird enough, when the join they actually show an error. Usually when someone disconnects for this reason it does not.

Error:

Invalid signature for profile public key. Try restarting your game. net.minecraft.server.network.LoginListener$a: Missing profile public key. This server requires secure profiles. at net.minecraft.server.network.ServerLoginPacketListenerImpl.validatePublicKey(ServerLoginPacketListenerImpl.java:256) ~[?:?] at net.minecraft.server.network.ServerLoginPacketListenerImpl.handleAcceptedLogin(ServerLoginPacketListenerImpl.java:183) ~[?:?] at net.minecraft.server.network.ServerLoginPacketListenerImpl.tick(ServerLoginPacketListenerImpl.java:95) ~[?:?] at net.minecraft.network.Connection.tick(Connection.java:568) ~[?:?] at net.minecraft.server.network.ServerConnectionListener.tick(ServerConnectionListener.java:233) ~[?:?] at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1584) ~[pufferfish-1.19.1.jar:git-Pufferfish-26] at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:449) ~[pufferfish-1.19.1.jar:git-Pufferfish-26] at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1417) ~[pufferfish-1.19.1.jar:git-Pufferfish-26] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1193) ~[pufferfish-1.19.1.jar:git-Pufferfish-26] at net.minecraft.server.MinecraftServer.lambda$spin$1(MinecraftServer.java:307) ~[pufferfish-1.19.1.jar:git-Pufferfish-26] at java.lang.Thread.run(Thread.java:833) ~[?:?]

To Reproduce

  1. Just join any server with "enforce-secure-profile" enabled in server.properties

Expected behaviour

Able to join without issue

Screenshots / Videos

No response

Server Version and Plugins

This server is running Pufferfish version git-Pufferfish-26 (MC: 1.19.1) (Implementing API version 1.19.1-R0.1-SNAPSHOT) (Git: 002f541 on HEAD)

Plugins (73): AdvancedReplay*, AdvancedSecurity*, ajParkour, AntiCheatReplay, AutoKiller*, BadlionClientModAPI, BedWars, BentoBox, betterbroadcaster, BuycraftX, Citizens, ClearLag, CommandSigns, ConsoleSpamFix, CrazyAuctions, Curses, Duels, Essentials, Essentials_WarpGUI, EssentialsChat, EssentialsDiscord, EssentialsGeoIP, EssentialsSpawn, F3NPerm, Factions, floodgate, Geyser-Spigot, GriefPrevention, GroupManager, HideAndSeek, HoloExtension, HolographicDisplays, HungerGames, Images, IngotVanillaTweaker, IngotWarn, JukeBox, KillerMoney*, LastLoginAPI, LibsDisguises, LunarClient-API*, LunarClient-Impl*, Maintenance, MobArena, Morphy, Multiverse-Core, Multiverse-Inventories, Multiverse-NetherPortals, Multiverse-Portals, MultiWorldMoney*, NoChatReports, NoteBlockAPI, Parties, PlaceholderAPI, PlotSquared, PlugReloader*, Prison, ProtocolLib, RandomTeleport, SignShop, SkyblockOres, SpigotPing, StaffChat, StartupCommands*, Themis, TimeManager, TitleManager, TowerDefense*, UltraCosmetics, Vault, Votifier, VotingPlugin, WorldEdit

Geyser Dump

https://dump.geysermc.org/VFL3AVcwkbEvqdltV2iIsW5IPgC20dFq

Geyser Version

This server is running Geyser version 2.0.6-SNAPSHOT (git-master-d826949) (Java: 1.19.1, Bedrock: 1.19.0/1.19.2 - 1.19.10/1.19.11)

Minecraft: Bedrock Edition Device/Version

1.19.11, IPhone XR

Additional Context

No response

Budderman18 avatar Jul 30 '22 14:07 Budderman18

Floodgate mode currently doesnt support chat signing at the moment, you can turn off enforce-secure-profile in server.properites

TypicalShavonne avatar Jul 30 '22 14:07 TypicalShavonne

that's strange as i have been able to use this setting on 1.19, but not 1.19.1.

Budderman18 avatar Jul 30 '22 14:07 Budderman18

Geyser and Floodgate do not support the provision of public keys nor chat signing. See our Discord for how this may change in the future.

This long error probably only occurs when Floodgate is in use (a shorter one would probably occur with Geyser only). The only workaround currently is what Shavonne wrote.

Konicai avatar Jul 30 '22 14:07 Konicai

Hello, The only solution I found is to set enforce-secure-profile to false in server.properties

shiftek-hosting avatar Aug 03 '22 02:08 shiftek-hosting

Just as a dumb question from me. Would it be possible to let the BE players join as "fake players"? I mean player NPCs also do not get kicked.

spikehidden avatar Aug 10 '22 15:08 spikehidden

It's probably possible but it would probably break a whole host of things. The way things are set up as-is, the fewest amount of plugins break.

Camotoy avatar Aug 10 '22 15:08 Camotoy

With 1.19.3, players are now able to join. and play just fine. Only chat is disabled for them, unless the enforce-secure-profiles requirement is set to false - this could be marked as resolved; unless there's some kind of specific fix that's planned (e.g. allowing floodgate players to circumvent this/1.19.1/2 specific fix)

onebeastchris avatar Feb 07 '23 00:02 onebeastchris

This issue is no longer relevant for us, as 1.19.3 Java players should run into this issue. And, see Chris's comment above.

Camotoy avatar Feb 08 '23 02:02 Camotoy