public ActionResult SaveDropzoneJsUploadedFiles()
        {
            var currentUserId = User.Identity.GetUserId();;

            foreach (string fileName in Request.Files)
            {
                HttpPostedFileBase file = Request.Files[fileName];

                string result = new StreamReader(file.InputStream).ReadToEnd();

                var config = JsonConvert.DeserializeObject <YubiCryptConfig>(result);

                YubiKey newToken = new YubiKey
                {
                    DateAdded       = DateTime.Now,
                    Active          = true,
                    Counter         = 0,
                    Time            = 0,
                    AESKey          = Convert.ToBase64String(OTPValidation.StringToByteArray(config.OTPAESKey)),
                    Privateidentity = config.OTPPrivateID,
                    YubiKeyUID      = config.OTPPublicID,
                    SerialNumber    = config.YubikeySerialNumber,
                    YubikeyVersion  = config.YubikeyVersion,
                    NDEFEnabled     = config.NDEFEnabled,
                    UserProfile     = db.Users.Where(u => u.Id == currentUserId).SingleOrDefault()
                };

                if (config.ChallengeResponseKey != null)
                {
                    var        parts  = config.ChallengeResponseKey.Split(':');
                    TFKDSecret secret = new TFKDSecret()
                    {
                        TFKDEncryptedSecret = parts[0],
                        TFKDEncryptionSalt  = parts[1]
                    };

                    newToken.TFKDSecret = secret;
                }

                db.YubiKeys.Add(newToken);
            }
            db.SaveChanges();
            return(Json(new { Message = string.Empty }));
        }