public AuthInfoDTO GetSecretDateAndPin(string nuid)
        {
            WebOperationContext.Current.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.OK;
            try
            {
                IList <authentication_info> authInfo = GetAuthInfoByNuid(nuid);
                if (authInfo == null || authInfo.Count() == 0)
                {
                    return(null);
                }
                else
                {
                    AuthInfoDTO result = new AuthInfoDTO();
                    result.NUID = authInfo.First().NUID;
                    result.PIN  = authInfo.First().PIN;
                    if (result.PIN.Equals("DISABLED"))
                    {
                        result.ANSWER = ClsTripleDES.Decrypt(authInfo.First().ANSWER);
                    }
                    else
                    {
                        result.ANSWER = authInfo.First().ANSWER;
                    }

                    return(result);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
예제 #2
0
 private void btn_Encrypt_Click(object sender, EventArgs e)
 {
     try {
         txt_encrypted.Text         = ClsTripleDES.Encrypt(txt_message.Text.Trim(), txt_secrect_key_1.Text.Trim());
         txt_Encrypted_Message.Text = txt_encrypted.Text;
         MessageBox.Show("Success !");
     } catch {
         MessageBox.Show("F**k You !");
     }
 }
        public System.IO.Stream SetSecretDate(string nuid, string secretDate, string sessionId)
        {
            string status = "0";
            string result = "0";

            try
            {
                IList <authentication_info> authInfo = GetAuthInfoByNuid(nuid);
                if (authInfo == null || authInfo.Count() == 0)
                {
                    status = "1";
                }
                else if (authInfo.Count() > 1)
                {
                    status = "2";
                }
                else
                {
                    if (authInfo.First().PIN.Equals("DISABLED"))
                    {
                        status = "-1";
                        result = "User Already Registered";
                    }
                }
                string encryptSecretDate = ClsTripleDES.Encrypt(secretDate);

                try
                {
                    QuickFactorAuthenticationServiceModel tstDb = new QuickFactorAuthenticationServiceModel();
                    authInfo.First().PIN    = "DISABLED";
                    authInfo.First().ANSWER = encryptSecretDate;
                    tstDb.authentication_info.AddOrUpdate(authInfo.First());
                    int saveStatus = tstDb.SaveChanges();
                }
                catch (Exception ex)
                {
                    status = "-1";
                    result = ex.Message;
                }
            }
            catch (Exception ex)
            {
                status = "-1";
                result = ex.Message;
            }

            StringBuilder sb = new StringBuilder();

            sb.AppendLine("<!DOCTYPE html PUBLIC \" -//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">");
            sb.AppendLine("<html xmlns = \"http://www.w3.org/1999/xhtml\">");
            sb.AppendLine("<head>");
            sb.AppendLine("<title> Password Express - IVR SetSecretDate </title>");
            sb.AppendLine("<meta http - equiv = \"Content -Type\" content = \"text/html; charset=ISO-8859-1\">");
            sb.AppendLine("</head>");
            sb.AppendLine("<body>");
            sb.AppendLine("<center>");
            sb.AppendLine("<h1> IVR Secret Date Page </h1>");
            sb.AppendFormat("<h2> Status: {0}</h2>", status);
            sb.AppendFormat("<h3> Result: {0}</h3>", result);
            sb.AppendFormat("<status> {0} </status>", status);
            sb.AppendFormat("<result>{0}</result>", result);
            sb.AppendFormat("<sessionID> {0} </sessionID>", sessionId);
            sb.AppendLine("</center>");
            sb.AppendLine("</body>");
            sb.AppendLine("</html>");

            byte[] resultBytes = Encoding.UTF8.GetBytes(sb.ToString());
            WebOperationContext.Current.OutgoingResponse.ContentType = "text/html";
            WebOperationContext.Current.OutgoingResponse.StatusCode  = System.Net.HttpStatusCode.OK;
            return(new MemoryStream(resultBytes));
        }
        public Stream AuthenticateUser(string nuid, string secretDate)
        {
            string status    = "0";
            string result    = "0";
            string sessionId = Guid.NewGuid().ToString();

            try
            {
                IList <authentication_info> authInfo = GetAuthInfoByNuid(nuid);
                if (authInfo == null || authInfo.Count() == 0)
                {
                    status = "1";
                }
                else if (authInfo.Count() > 1)
                {
                    status = "2";
                }
                else
                {
                    if (authInfo.First().ANSWER == null)
                    {
                        status = "-1";
                        result = "Secret Date is missing";
                    }
                    else
                    {
                        string storedSecretDate = ClsTripleDES.Decrypt(authInfo.First().ANSWER);
                        if (secretDate.Equals(storedSecretDate))
                        {
                            status = "0";
                        }
                        else
                        {
                            status = "-1";
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                status = "-1";
                result = ex.Message;
            }


            StringBuilder sb = new StringBuilder();

            sb.AppendLine("<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">");
            sb.AppendLine("<html xmlns=\"http://www.w3.org/1999/xhtml\">");
            sb.AppendLine("<head>");
            sb.AppendLine("<title>Password Express -  IVR User Authentication</title>");
            sb.AppendLine("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=ISO-8859-1\">");
            sb.AppendLine("</head>");
            sb.AppendLine("<body>");
            sb.AppendLine("<center>");
            sb.AppendLine("<h1>IVR Authentication Web Page</h1>");
            sb.AppendFormat("<h2>Status:  {0}</h2>", status);
            sb.AppendLine("<h3>Number of Groups:  </h3>");
            sb.AppendLine("<h4>Group Names:  </h4>");
            sb.AppendFormat("<status>{0}</status>", status);
            sb.AppendFormat("<result>{0}</result>", result);
            sb.AppendFormat("<sessionID>{0}</sessionID>", sessionId);
            sb.AppendLine("<NumberOfGroups></NumberOfGroups>");
            sb.AppendLine("<GroupName></GroupName>");
            sb.AppendLine("<TargetName></TargetName>");
            sb.AppendLine("</center>");
            sb.AppendLine("</body>");
            sb.AppendLine("</html>");

            byte[] resultBytes = Encoding.UTF8.GetBytes(sb.ToString());
            WebOperationContext.Current.OutgoingResponse.ContentType = "text/html";
            WebOperationContext.Current.OutgoingResponse.StatusCode  = System.Net.HttpStatusCode.OK;
            return(new MemoryStream(resultBytes));
        }