NoEncryption is a Minecraft server plugin developed by Doclic and V1nc3ntWasTaken. NoEncryption, or NE for short, is a Minecraft plugin intended to combat against the new chat reporting system implemented in 1.19. NoEncryption is your first, and last solution to this new chat reporting system by stripping messages of their signatures so there is no way for a client to validate that a chat message or command came from a certain player, thus making your messages un-reportable.
NoEncryption supports versions 1.19
through 1.19.4
. The latest stable downloads can be found here in the Assets
section near the bottom.
The Reflection build is compatible with multiple versions, but might run a bit slower.
NoEncryption works by stripping chat packets of their signatures before they are sent back to your client, and other clients. NoEncryption modifies outbound packets specifically to allow other plugins such as chat managers, and filters to properly modify chat contents before reaching NoEncryption. NoEncryption injects into a player's connection line, allowing it to modify the chat packets before they are sent to the client. Popup blocking works in the same way.
Check the tables below for a list of commands, and permissions that NoEncryption has:
Command | Description | Permission | Restrictions |
---|---|---|---|
/ne |
Display the help menu in chat/console. | noencryption.usecommand |
None |
/ne suppressnotices |
Suppress config notices on startup | noencryption.command.suppressnotices |
Only executable by Console |
/ne checkforupdates |
Manually check for updates on GitHub | noencryption.command.checkforupdates |
None |
Permission | Description | Default | Children |
---|---|---|---|
noencryption.* |
Grants all NoEncryption permissions. | op |
|
noencryption.usecommand |
Allows usage of /ne . |
true |
None |
noencryption.command.* |
Allows usage of all /ne subcommands. |
op |
|
noencryption.command.suppressnotices |
Allows usage of /ne suppressnotices . |
op |
None |
noencryption.command.checkforupdates |
Allows usage of /ne checkforupdates . |
op |
None |
The generated config files/folders for NoEncryption are located at plugins/NoEncryption/
. There are a few folders available here: settings
, and storage
.
settings
File | Description |
---|---|
config.yml |
The main configuration file for NoEncryption. |
storage
File | Description |
---|---|
notices.yml |
The storage file for suppressed config notices. This file is automatically modified, and should not be edited manually. |
Currently, there is no way to remove the gray bar and indent without the use of texture packs. This is because it is in the clientside code to include the gray bar for unsigned messages, and always include the indentation. There is an available texture pack that solves this issue, which can be found here.
Injecting the packet handler into the player's connection is in no way a vulnerability. The NoEncryption packet handler is designed to intercept only certain packet types, such as ClientboundPlayerChatPacket, ClientboundPlayerChatHeaderPacket, and ClientboundServerDataPacket (For popup blocking). When one of these packets are detected, certain contents are stored from these packets, and a brand new packet is created in place of it, reusing the contents that were stored from the original packet, and dropping certain contents such as the signature, and the salt.
The only outside services that NoEncryption actively uses is bStats, and requests to the GitHub API. bStats is used to keep track of certain statistics of the plugin such as the build type, plugin version, server version, messages stripped, popups blocked, and other default bStats values. GitHub API requests are made to check for any updates to NoEncryption, which will be displayed at startup. For the bStats privacy policy, click here. For the GitHub privacy policy, click here. Use of bStats and GitHub API can be toggled in the NoEncryption config.
To report a bug with NoEncryption, you can create an issue about the bug here. We ask that you make one issue per bug, and only one bug per issue. If your issue contains sensitive info, please notify us in the Discord Server, or email dev.v1nc3ntwastaken@gmail.com. (Both can be found at the top of the README)
You can make contributions to the NoEncryption project through the use of Pull Requests. When making a contribution, make sure that you review all the checks in the PR.
mvn -v
.
BuildTools.jar
into it's own folder.
2. Open a terminal in the newly created folder's directory
3. Run the command below to start the install process (This will take a few minutes to complete):
java -jar BuildTools.jar --rev 1.19 --remapped
BuildTools.jar
into it's own folder.
2. Open a terminal in the newly created folder's directory
3. Run the command below to start the install process (This will take a few minutes to complete):
java -jar BuildTools.jar --rev 1.19.1 --remapped
BuildTools.jar
into it's own folder.
2. Open a terminal in the newly created folder's directory
3. Run the command below to start the install process (This will take a few minutes to complete):
java -jar BuildTools.jar --rev 1.19.2 --remapped
BuildTools.jar
into it's own folder.
2. Open a terminal in the newly created folder's directory
3. Run the command below to start the install process (This will take a few minutes to complete):
java -jar BuildTools.jar --rev 1.19.3 --remapped
git clone https://github.com/Doclic/NoEncryption
, or by downloading the ZIP file for the main branch.
After cloning NoEncryption, you can build the plugin through Maven using the following commands:
mvn clean install
3. After the above command completes, run the following command to build the JAR files:
mvn clean package
4. After the above command completes, a new target
folder will be created.
5. Inside the target
folder will be multiple JAR files. The JAR file that should be used is NoEncryption-MODULE-VERSION.jar
. Do not use JAR files starting/ending with original-
, -remapped.jar
, or -remapped-obf.jar
.
We do not ask you for your money, or for your contributions as support. The kind of support that helps us is spreading the word of NoEncryption, and how it can prevent your servers from chat reports. Chat reports can be abused in favor of spammers and DDOSers who will raid a server with bots to spam-report a user's message. Before 1.19, chat messages were not monitored by Mojang/Microsoft, and were not reportable. After the 1.19 update, chat messages were being sent to Mojang/Microsoft servers for signatures. We believe this violates the privacy of a player, and so we are taking action against it. What we ask for is your help in spreading the word, and the plugin name out.