package net.minecraft.network.login.client;
import java.io.IOException;
import java.security.PrivateKey;
import javax.crypto.SecretKey;
import net.minecraft.network.INetHandler;
import net.minecraft.network.Packet;
import net.minecraft.network.PacketBuffer;
import net.minecraft.network.login.INetHandlerLoginServer;
import net.minecraft.util.CryptManager;
public class C01PacketEncryptionResponse implements Packet
{
private byte[] field_149302_a = new byte[0];
private byte[] field_149301_b = new byte[0];
private static final String __OBFID = "CL_00001380";
/**
* Reads the raw packet data from the data stream.
*/
public void readPacketData(PacketBuffer data) throws IOException
{
this.field_149302_a = data.readByteArray();
this.field_149301_b = data.readByteArray();
}
/**
* Writes the raw packet data to the data stream.
*/
public void writePacketData(PacketBuffer data) throws IOException
{
data.writeByteArray(this.field_149302_a);
data.writeByteArray(this.field_149301_b);
}
/**
* Passes this Packet on to the NetHandler for processing.
*/
public void processPacket(INetHandlerLoginServer handler)
{
handler.processEncryptionResponse(this);
}
public SecretKey func_149300_a(PrivateKey key)
{
return CryptManager.decryptSharedKey(key, this.field_149302_a);
}
public byte[] func_149299_b(PrivateKey p_149299_1_)
{
return p_149299_1_ == null ? this.field_149301_b : CryptManager.decryptData(p_149299_1_, this.field_149301_b);
}
/**
* Passes this Packet on to the NetHandler for processing.
*/
public void processPacket(INetHandler handler)
{
this.processPacket((INetHandlerLoginServer)handler);
}
}