Package net.handle.hdllib
Class ChallengeResponse
java.lang.Object
net.handle.hdllib.AbstractMessage
net.handle.hdllib.AbstractResponse
net.handle.hdllib.ChallengeResponse
- All Implemented Interfaces:
Cloneable
Object used to represent a challenge sent to a user asking for
proof of their identity. The challenge includes a nonce (a random
unpredictable set of bytes) as well as a digest of the request that
is being challenged (so that the user can verify that they are only
authorizing a specific operation).
-
Field Summary
FieldsFields inherited from class net.handle.hdllib.AbstractResponse
secureStream, socket, stream, streaming
Fields inherited from class net.handle.hdllib.AbstractMessage
authoritative, cacheCertify, certify, continuous, doNotRefer, encodedMessage, encrypt, expiration, ignoreRestrictedValues, keepAlive, majorProtocolVersion, messageBody, minorProtocolVersion, mintNewSuffix, OC_ADD_VALUE, OC_BACKUP_SERVER, OC_CREATE_HANDLE, OC_DELETE_HANDLE, OC_DUMP_HANDLES, OC_GET_NEXT_TXN_ID, OC_GET_SITE_INFO, OC_HOME_NA, OC_LIST_HANDLES, OC_LIST_HOMED_NAS, OC_MODIFY_VALUE, OC_REMOVE_VALUE, OC_RESERVED, OC_RESOLUTION, OC_RESPONSE_TO_CHALLENGE, OC_RETRIEVE_TXN_LOG, OC_SESSION_EXCHANGEKEY, OC_SESSION_SETUP, OC_SESSION_TERMINATE, OC_UNHOME_NA, OC_VERIFY_CHALLENGE, opCode, overwriteWhenExists, RC_AUTHEN_ERROR, RC_AUTHEN_TIMEOUT, RC_AUTHENTICATION_FAILED, RC_AUTHENTICATION_NEEDED, RC_ERROR, RC_HANDLE_ALREADY_EXISTS, RC_HANDLE_NOT_FOUND, RC_INSUFFICIENT_PERMISSIONS, RC_INVALID_ADMIN, RC_INVALID_CREDENTIAL, RC_INVALID_HANDLE, RC_INVALID_SESSION_KEY, RC_INVALID_SESSIONSETUP_REQUEST, RC_INVALID_VALUE, RC_NEED_RSAKEY_FOR_SESSIONEXCHANGE, RC_OPERATION_NOT_SUPPORTED, RC_OUT_OF_DATE_SITE_INFO, RC_PREFIX_REFERRAL, RC_PROTOCOL_ERROR, RC_RECURSION_COUNT_TOO_HIGH, RC_RESERVED, RC_SERVER_BACKUP, RC_SERVER_NOT_RESP, RC_SERVER_TOO_BUSY, RC_SERVICE_REFERRAL, RC_SESSION_FAILED, RC_SESSION_MESSAGE_REJECTED, RC_SESSION_TIMEOUT, RC_SUCCESS, RC_VALUE_ALREADY_EXISTS, RC_VALUES_NOT_FOUND, rdHashType, recursionCount, recursive, requestDigest, requestId, responseCode, returnRequestDigest, sessionCounter, sessionId, signature, signerHdl, signerHdlIdx, siteInfoSerial, suggestMajorProtocolVersion, suggestMinorProtocolVersion
-
Constructor Summary
ConstructorsConstructorDescriptionChallengeResponse
(int opCode, byte[] nonce) Construct a challenge to the specified request.Construct a challenge to the specified request.ChallengeResponse
(AbstractRequest req, boolean compatibility) Construct a challenge to the specified request. -
Method Summary
Modifier and TypeMethodDescriptionstatic byte[]
Generate a nonce.static final void
static final void
initializeRandom
(byte[] seed) Methods inherited from class net.handle.hdllib.AbstractResponse
getContinuedResponse, streamResponse, takeDigestOfRequest
Methods inherited from class net.handle.hdllib.AbstractMessage
clearBuffers, clone, getEncodedMessage, getEncodedMessageBody, getResponseCodeMessage, hasEqualOrGreaterVersion, hasEqualOrGreaterVersion, setSupportedProtocolVersion, setSupportedProtocolVersion, setSupportedProtocolVersion, shouldEncrypt, signatureIsMac, signMessage, signMessage, takeValuesFrom, toString, verifyMessage, verifyMessage
-
Field Details
-
nonce
public byte[] nonce
-
-
Constructor Details
-
ChallengeResponse
public ChallengeResponse(int opCode, byte[] nonce) Construct a challenge to the specified request. This constructor is used on the client side, when decoding messages. -
ChallengeResponse
Construct a challenge to the specified request. This constructor is used on the server side.- Throws:
HandleException
-
ChallengeResponse
Construct a challenge to the specified request. The compatibility parameter should be set to true when this challenge response is being created artificially to check a secret key.- Throws:
HandleException
-
-
Method Details
-
initializeRandom
public static final void initializeRandom() -
initializeRandom
public static final void initializeRandom(byte[] seed) -
generateNonce
public static byte[] generateNonce()Generate a nonce.
-