Pre-Sign FIDO U2F Device

WCF


Method
  AuthServerU2FResponseSignAppU2FInit SignAppU2FInit(string authServerPartnerLoginName,
                                                                      string authServerPartnerLoginPassword,
                                                                      string appId,
                                                                      string authServerPartnerUserLoginName,
                                                                      string printedSerialNumber)
WCF parameterdata typedescription
authServerPartnerLoginNamestringSurePassID account login name
authServerPartnerLoginPasswordstringSurePassID account login key
authServerPartnerUserLoginNamestringUser account login name
appIdstringFido appId (origin) or facetId
printedSerialNumberstring

A specific device assigned to this user. If this is left empty then the first device assigned

Sample WCF C# Method
 AuthServerU2FResponseSignAppU2FInit resp = SignAppU2FInit("accountLogin",
                                                                      "accountKey",
                                                                      "https://mysite.relayingparty.com",
                                                                      "Mandy",
                                                                      string.Empty);
Sample WCF C# Repsonse
 if (resp.ErrorCode != 0)  {      
       message.Text = resp.ErrorMsg;
       return false;
 }


REST


REST parameterdata typedescription
spAccountLoginNamestringSurePassID account login name
spAccountLoginKeystringSurePassID account login key
usernamestringuser account login name
typestringpre_sign
appIdstringFido appId (origin) or facetId
psnstring

A specific device assigned to this user. If this is left empty then the first device assigned

Sample REST/Json Method
 {
  "spAccountLoginName": "accountLogin",  
  "spAccountLoginKey": "accountKey",
  "type": "pre_sign",
  "username": "Mandy",
  "appId:": "https://mysite.relayingparty.com"
}
Sample REST/Json Response
{
  "SignRequest": [
    {
      "challenge": "E1nXljvftbJ-dfG3ckTY15P4_ixwcFNXfMhirLh71TI",
      "appId": "https://mysite.relayingparty.com",
      "sessionId": "NDQ3MDcyNDI1ODMyNzk0NDZGNzQ1NTRBNjUzMTMyNEYzNzUzMzE0NTU5Nzk0QTYyNkY0MjQ5NDU0RjQ1Mzg1NzYzMzE0QTU0NkM0OTM1NzQ2MTc3NkM2MjUwNzI1MTcyNUE3Ng==",
      "keyHandle": "YTb8yZwgviGKybmbF-NVXNFp3_jPmvawsxiu9V-pe2k_zotKoppig7J5KteaRTAU-_p2vhUyEO8Sn8cKNCk56IKSsD-RaMyPcbByfSv6ybZ5uOfCCRqWWC4IvWu7D_OvyJNR2rff_wBfr3bFZsMcgXSgJwbWo_xZaBCBCTw8d4_il595OusDw_F-R7fdvwzzPFi4YCklMD5zbf947raNsod3xbpSL9IX9W_GtPVepVd711Zm4s8Rs6tZP8bSYZ5I",
      "version": "U2F_V2",
      "securityKeyName": "My Key",
      "transports": [
        "nfc",
        "usb"
      ]
    },
    {
      "challenge": "NAsjFVNY3eSLCQg3Y-dIJr_3Dk_J-NwePbZCNCneo7c",
      "appId": "https://mysite.relayingparty.com",
      "sessionId": "NzY3OTY2NTI1NzZCNkQ2NzUyNzQ0NDYxNEE0MzUyNEY1Nzc2NDg2MTM2MzU2QjZENDE2MzM3NTk0RjQ4NjM1ODQ0NjczODQ3Mzk2RDMxMzI2NjRCNzY2QzU3NDE2QzM4NjUzNg==",
      "keyHandle": "WAc5Wv2amIzo2X5oETdG9RN8q9gE2frIyATHfagvja0AaGlLB6N5aURv1IvT9rwVauVlRYL5SZHuhQ3YGquIuGzJlp2UcnLp5TgCMAuIi-JYtq47h9q6flAq4l6uJCpmAKlAKKVY4pa0SSlLl2IM8eV0SEOkBbyllnHn4JP-mMHo-_UGPxv3YuVISt7ttqjdTBI0u78qxvBllMDFqCQf9wKpW4dgVyVnScrYmvKkYYUPBpm2l9rIWrUEmjRBhWUf",
      "version": "U2F_V2",
      "securityKeyName": "BLE Security Key",
      "transports": [
        "nfc",
        "ble",
        "usb",
        "bt"
      ]
    }
  ],
  "errorMessage": "",
  "errorCode": 0,
  "type": "u2f_sign_request"
}