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.invalidDataFromServerDeclaration
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.