ChallengeValidationError class
Base class for all challenge validation errors in SEP-0010 authentication.
Thrown when a challenge transaction received from the WebAuth server fails validation checks according to SEP-10 requirements. This ensures that clients only sign legitimate challenge transactions and protects against various attack vectors.
Challenge transactions must meet strict requirements:
- Must be ENVELOPE_TYPE_TX transaction type
- Must have sequence number of 0
- Must contain only ManageData operations
- Must have valid time bounds within grace period
- Must be signed by the server's signing key
- Must have correct source accounts for all operations
- Must include proper home domain and web auth domain values
Subclasses provide specific validation error types for different failures. Always validate challenge transactions before signing them to prevent signing malicious or manipulated transactions.
See also:
- WebAuth.validateChallenge for the validation implementation
- SEP-10 Specification
- Implemented types
- Implementers
- ChallengeValidationErrorInvalidHomeDomain
- ChallengeValidationErrorInvalidMemoType
- ChallengeValidationErrorInvalidMemoValue
- ChallengeValidationErrorInvalidOperationType
- ChallengeValidationErrorInvalidSeqNr
- ChallengeValidationErrorInvalidSignature
- ChallengeValidationErrorInvalidSourceAccount
- ChallengeValidationErrorInvalidTimeBounds
- ChallengeValidationErrorInvalidWebAuthDomain
- ChallengeValidationErrorMemoAndMuxedAccount
Constructors
- ChallengeValidationError(String _message)
- Creates a ChallengeValidationError with error message.
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
Returns a string representation of this instance for debugging.
override
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited