HotpChallenge

public final class HotpChallenge : NSObject, ChallengeProtocol

HMAC Algorithm (HOTP) challenge accepts a value that an algorithm has computed to produce a one-time password from a shared secret key.

  • Initializes a new HotpChallenge mechanism.

    Declaration

    Swift

    required public convenience override init()
  • Initializes a new HotpChallenge mechanism.

    Declaration

    Swift

    required public init(messagePrompt: String)

    Parameters

    messagePrompt

    The message to display in the alert when prompted.

  • The name of the mechanism.

    Declaration

    Swift

    open var name: String { get }
  • The description of the mechanism.

    Declaration

    Swift

    open override var description: String { get }
  • The identifier of the mechanism.

    Remark

    The identifier value is: urn:ibm:security:authentication:asf:mechanism:hotp.

    Declaration

    Swift

    open var identifier: String { get }
  • The postback URI of the mechanism.

    Remark

    This value is set in the parse method.

    Declaration

    Swift

    open var postbackUri: String
  • The state represents the unique identifier of the machanism request.

    Remark

    This value is set in the parse method.

    Declaration

    Swift

    open var state: String
  • The message to display in the alert when prompted.

    Declaration

    Swift

    open fileprivate(set) var messagePrompt: String
  • Initializes a new challenge mechanism.

    Throws

    IBMMobileKitError.invalidDataFromServer

    Declaration

    Swift

    open func parse(_ data: [String : Any]) throws -> HotpChallenge

    Parameters

    data

    A data object containing JSON data.

    Return Value

    The instance of HotpChallenge.

  • This method launches an UIAlertController to prompt for a HMAC based one-time password.

    Declaration

    Swift

    open func launchUI(_ viewController: UIViewController, completion: @escaping (_ data: [String:Any], _ error: Error?) -> Void)

    Parameters

    viewController

    The view controller that is presented by this view controller, or one of its ancestors in the view controller hierarchy.

    completion

    The data to verify represented as an dictionary of String:Any and Error object to identify an error.

  • This method launches an UIAlertController to prompt for a time based one-time password.

    Declaration

    Swift

    open func launchUI(_ completion: @escaping (_ data: [String:Any], _ error: Error?) -> Void)

    Parameters

    completion

    The data to verify represented as an dictionary of String:Any and Error object to identify an error.