Package net.minecraft.network.message
Class MessageChain
java.lang.Object
net.minecraft.network.message.MessageChain
A class for handling the "message chain".
MessageHeader includes the signature of the last message the client has seen.
This can be used to verify the legitimacy of a chain of messages, since if the chain
is valid, the last message's "previous signature" should be able to verify the preceding
message.
Clients signing a message with its preceding message's signature is called "packing", and the server creating a signed message with its preceding message's signature is called "unpacking". Unpacked messages can then be verified to check the chain's legitimacy.
- Mappings:
Namespace Name official seintermediary net/minecraft/class_7610named net/minecraft/network/message/MessageChain
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfacePackers sign a message on the client with its preceding message's signature.static final recordstatic interfaceUnpacker creates a signed message on the server with the server's preceding message signature when they receive a message. -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static SignedMessagecreateMessage(MessageChain.Signature signature, @Nullable MessageSignatureData precedingSignature, MessageMetadata metadata, DecoratedContents contents, LastSeenMessageList lastSeenMessage) private MessageChain.Signaturepack(Signer signer, MessageMetadata metadata, DecoratedContents contents, LastSeenMessageList lastSeenMessages) private static MessageSignatureDatasign(Signer signer, MessageMetadata metadata, @Nullable MessageSignatureData precedingSignature, DecoratedContents contents, LastSeenMessageList lastSeenMessages) private SignedMessageunpack(MessageChain.Signature signature, MessageMetadata metadata, DecoratedContents contents, LastSeenMessageList lastSeenMessages)
-
Field Details
-
precedingSignature
- Mappings:
Namespace Name Mixin selector official aLse;a:Lrx;intermediary field_39818Lnet/minecraft/class_7610;field_39818:Lnet/minecraft/class_7469;named precedingSignatureLnet/minecraft/network/message/MessageChain;precedingSignature:Lnet/minecraft/network/message/MessageSignatureData;
-
-
Constructor Details
-
MessageChain
public MessageChain()
-
-
Method Details
-
pack
private MessageChain.Signature pack(Signer signer, MessageMetadata metadata, DecoratedContents contents, LastSeenMessageList lastSeenMessages) - Mappings:
Namespace Name Mixin selector official aLse;a(Lamo;Lry;Lrh;Lru;)Lse$c;intermediary method_44875Lnet/minecraft/class_7610;method_44875(Lnet/minecraft/class_7501;Lnet/minecraft/class_7470;Lnet/minecraft/class_7634;Lnet/minecraft/class_7635;)Lnet/minecraft/class_7610$class_7613;named packLnet/minecraft/network/message/MessageChain;pack(Lnet/minecraft/network/encryption/Signer;Lnet/minecraft/network/message/MessageMetadata;Lnet/minecraft/network/message/DecoratedContents;Lnet/minecraft/network/message/LastSeenMessageList;)Lnet/minecraft/network/message/MessageChain$Signature;
-
sign
private static MessageSignatureData sign(Signer signer, MessageMetadata metadata, @Nullable @Nullable MessageSignatureData precedingSignature, DecoratedContents contents, LastSeenMessageList lastSeenMessages) - Mappings:
Namespace Name Mixin selector official aLse;a(Lamo;Lry;Lrx;Lrh;Lru;)Lrx;intermediary method_44876Lnet/minecraft/class_7610;method_44876(Lnet/minecraft/class_7501;Lnet/minecraft/class_7470;Lnet/minecraft/class_7469;Lnet/minecraft/class_7634;Lnet/minecraft/class_7635;)Lnet/minecraft/class_7469;named signLnet/minecraft/network/message/MessageChain;sign(Lnet/minecraft/network/encryption/Signer;Lnet/minecraft/network/message/MessageMetadata;Lnet/minecraft/network/message/MessageSignatureData;Lnet/minecraft/network/message/DecoratedContents;Lnet/minecraft/network/message/LastSeenMessageList;)Lnet/minecraft/network/message/MessageSignatureData;
-
unpack
private SignedMessage unpack(MessageChain.Signature signature, MessageMetadata metadata, DecoratedContents contents, LastSeenMessageList lastSeenMessages) - Mappings:
Namespace Name Mixin selector official aLse;a(Lse$c;Lry;Lrh;Lru;)Lsb;intermediary method_44878Lnet/minecraft/class_7610;method_44878(Lnet/minecraft/class_7610$class_7613;Lnet/minecraft/class_7470;Lnet/minecraft/class_7634;Lnet/minecraft/class_7635;)Lnet/minecraft/class_7471;named unpackLnet/minecraft/network/message/MessageChain;unpack(Lnet/minecraft/network/message/MessageChain$Signature;Lnet/minecraft/network/message/MessageMetadata;Lnet/minecraft/network/message/DecoratedContents;Lnet/minecraft/network/message/LastSeenMessageList;)Lnet/minecraft/network/message/SignedMessage;
-
createMessage
private static SignedMessage createMessage(MessageChain.Signature signature, @Nullable @Nullable MessageSignatureData precedingSignature, MessageMetadata metadata, DecoratedContents contents, LastSeenMessageList lastSeenMessage) - Mappings:
Namespace Name Mixin selector official aLse;a(Lse$c;Lrx;Lry;Lrh;Lru;)Lsb;intermediary method_44877Lnet/minecraft/class_7610;method_44877(Lnet/minecraft/class_7610$class_7613;Lnet/minecraft/class_7469;Lnet/minecraft/class_7470;Lnet/minecraft/class_7634;Lnet/minecraft/class_7635;)Lnet/minecraft/class_7471;named createMessageLnet/minecraft/network/message/MessageChain;createMessage(Lnet/minecraft/network/message/MessageChain$Signature;Lnet/minecraft/network/message/MessageSignatureData;Lnet/minecraft/network/message/MessageMetadata;Lnet/minecraft/network/message/DecoratedContents;Lnet/minecraft/network/message/LastSeenMessageList;)Lnet/minecraft/network/message/SignedMessage;
-
getUnpacker
- Mappings:
Namespace Name Mixin selector official aLse;a()Lse$a;intermediary method_44874Lnet/minecraft/class_7610;method_44874()Lnet/minecraft/class_7610$class_7611;named getUnpackerLnet/minecraft/network/message/MessageChain;getUnpacker()Lnet/minecraft/network/message/MessageChain$Unpacker;
-
getPacker
- Mappings:
Namespace Name Mixin selector official bLse;b()Lse$b;intermediary method_44880Lnet/minecraft/class_7610;method_44880()Lnet/minecraft/class_7610$class_7612;named getPackerLnet/minecraft/network/message/MessageChain;getPacker()Lnet/minecraft/network/message/MessageChain$Packer;
-