/* /* * oxAuth is available under the MIT License (2008). See http://opensource.org/licenses/MIT for full text. * * Copyright (c) 2015, Gluu */ package org.xdi.oxauth.model.fido.u2f.protocol; import java.io.Serializable; import org.codehaus.jackson.annotate.JsonProperty; import org.xdi.oxauth.model.fido.u2f.U2fConstants; /** * FIDO U2F device authentication request * * @author Yuriy Movchan Date: 05/13/2015 */ public class AuthenticateRequest implements Serializable { private static final long serialVersionUID = 8479635006453668632L; /** * Version of the protocol that the to-be-registered U2F token must speak. * For the version of the protocol described herein, must be "U2F_V2" */ @JsonProperty private final String version = U2fConstants.U2F_PROTOCOL_VERSION; /** * The websafe-base64-encoded challenge. */ @JsonProperty private final String challenge; /** * The application id that the RP would like to assert. The U2F token will * enforce that the key handle provided above is associated with this * application id. The browser enforces that the calling origin belongs to * the application identified by the application id. */ @JsonProperty private final String appId; /** * websafe-base64 encoding of the key handle obtained from the U2F token * during registration. */ @JsonProperty private final String keyHandle; public AuthenticateRequest(@JsonProperty("challenge") String challenge, @JsonProperty("appId") String appId, @JsonProperty("keyHandle") String keyHandle) { this.challenge = challenge; this.appId = appId; this.keyHandle = keyHandle; } public String getKeyHandle() { return keyHandle; } public String getChallenge() { return challenge; } public String getAppId() { return appId; } @Override public String toString() { StringBuilder builder = new StringBuilder(); builder.append("AuthenticateRequest [version=").append(version).append(", challenge=").append(challenge).append(", appId=").append(appId) .append(", keyHandle=").append(keyHandle).append("]"); return builder.toString(); } }