@Override protected PskRsaClientKeyExchangeMessage createHandshakeMessage() { return new PskRsaClientKeyExchangeMessage(); }
@Override public void prepareHandshakeMessageContents() { msg.setIdentity(chooser.getPSKIdentity()); msg.setIdentityLength(msg.getIdentity().getValue().length); super.prepareHandshakeMessageContents(); }
/** * Reads the next bytes as the PSKIdentityLength and writes them in the * message * * @param msg * Message to write in */ private void parsePskIdentityLength(PskRsaClientKeyExchangeMessage msg) { msg.setIdentityLength(parseIntField(HandshakeByteLength.PSK_IDENTITY_LENGTH)); LOGGER.debug("PSK-IdentityLength: " + msg.getIdentityLength().getValue()); }
/** * Reads the next bytes as the PSKIdentity and writes them in the message * * @param msg * Message to write in */ private void parsePskIdentity(PskRsaClientKeyExchangeMessage msg) { msg.setIdentity(parseByteArrayField(msg.getIdentityLength().getValue())); LOGGER.debug("PSK-Identity: " + ArrayConverter.bytesToHexString(msg.getIdentity().getValue())); } }
/** * Writes the SerializedPublicKeyLength of the * PskRsaClientKeyExchangeMessage into the final byte[] */ private void writePSKIdentityLength(PskRsaClientKeyExchangeMessage msg) { appendInt(msg.getIdentityLength().getValue(), HandshakeByteLength.PSK_IDENTITY_LENGTH); LOGGER.debug("SerializedPSKIdentityLength: " + msg.getIdentityLength().getValue()); }
/** * Writes the SerializedPublicKey of the PskRsaClientKeyExchangeMessage into * the final byte[] */ private void writePSKIdentity(PskRsaClientKeyExchangeMessage msg) { appendBytes(msg.getIdentity().getValue()); LOGGER.debug("SerializedPSKIdentity: " + ArrayConverter.bytesToHexString(msg.getIdentity().getValue())); } }
return new PskEcDhClientKeyExchangeMessage(config); case PSK_RSA: return new PskRsaClientKeyExchangeMessage(config); case SRP_SHA_DSS: case SRP_SHA_RSA: