دوره های آموزشی سایت دانشجویار

سورس پروژه رمز نگاری ایمیل در ASP.NET

Loading...
رمز نگاری ایمیل

رمز نگاری ایمیل ، در این نمونه سورس که در محیط کنسول نوشته شده درمواقع عملیات های رمزنگاری در ارسال ایمیل را برسی کرده است ، این پروژه بیشتر در پروژه تحت وب میتواند کاربرد داشته باشد برای مثال یک فایل متنی که حاوی اطلاعات ایمیل است را به پروژه داده و میتوانید با الگوریتم های نوشته در نمونه سورس آن را به حالت Encoding میبرد.امید وارم استفاده کنید.سورس کامل نیز در ادامه براتون قرار دادم.

    using System;  
    using System.Collections.Generic;  
    using System.IO;  
    using System.Linq;  
    using System.Text.RegularExpressions;  
      
    namespace Program  
    {  
        public class EmailEncoding  
        {  
            private static Dictionary<string, string> m_keyValue = new Dictionary<string, string>();  
      
            static void Main(string[] args)  
            {  
                try  
                {  
                    string INPUT_FILE = @"input.txt";  
                    string OUTPUT_FILE = @"output.txt";  
      
                    if (!File.Exists(INPUT_FILE))  
                    {  
                        File.Create(INPUT_FILE).Close();  
                        return;  
                    }  
      
                    if (!File.Exists(OUTPUT_FILE))  
                    {  
                        File.Create(OUTPUT_FILE).Close();  
                    }  
      
                    StreamReader streamReader = new StreamReader(INPUT_FILE);  
                    using (streamReader)  
                    {  
                        using (StreamWriter streamWriter = new StreamWriter(OUTPUT_FILE, false))  
                        {  
                            string line;  
                            while ((line = streamReader.ReadLine()) != null)  
                            {  
                                string output = string.Empty;  
                                if (ValidateInput(line, out output))  
                                {  
                                    streamWriter.WriteLine(output);  
                                }  
                                else  
                                {  
                                    streamWriter.WriteLine("ERROR");  
                                }  
                            }  
                        }  
                    }  
                    streamReader.Close();  
                    streamReader.Dispose();  
      
                }  
                catch (Exception)  
                {  
      
                }  
            }  
      
            public static bool ValidateInput(string input, out string modifiedValue)  
            {  
                modifiedValue = input;  
                bool result = EmailValidate(input);  
                if (!result)  
                {  
                    var match = ValidateKey(input);  
                    if (match != null && match.Success)  
                    {  
                        modifiedValue = UpdateKeyValue(match.Value.ToString(), modifiedValue);  
      
                        while (true)  
                        {  
                            Match nextMatch = match.NextMatch();  
                            if (nextMatch == null || !nextMatch.Success)  
                                break;  
                            modifiedValue = UpdateKeyValue(nextMatch.Value.ToString(), modifiedValue);  
      
                            match = nextMatch;  
                        }  
                        result = true;  
                    }  
      
                    var keyMatch = ValidateReplaceKey(input);  
      
                    //if (keyMatch.Success && match.Success)  
                    //    return false;  
      
                    if (keyMatch != null && keyMatch.Success)  
                    {  
                        modifiedValue = ReplaceKeyToValue(keyMatch.Value.ToString(), modifiedValue);  
                        while (true)  
                        {  
                            Match nextMatch = keyMatch.NextMatch();  
                            if (nextMatch == null || !nextMatch.Success)  
                                break;  
      
                            modifiedValue = ReplaceKeyToValue(nextMatch.Value.ToString(), modifiedValue);  
      
                            keyMatch = nextMatch;  
                        }  
      
                        result = true;  
                    }  
                    // After success, check whether modfied string is valid email id.  
                    if (result && EmailValidate(modifiedValue))  
                        return result;  
                    else  
                        result = false;  
                }  
                else  
                    return true;  
      
                return result;  
            }  
      
            private static string UpdateKeyValue(string matchValue, string originalItem)  
            {  
                string modifiedValue = originalItem;  
                string captureValue = matchValue.Replace("{", "").Replace("}", "");  
                string[] values = captureValue.Split(' ');  
                if (values.Length > 1)  
                {  
                    if (m_keyValue.ContainsKey(values[0]))  
                        m_keyValue[values[0]] = values[1];  
                    else  
                        m_keyValue.Add(values[0], values[1]);  
                }  
                modifiedValue = modifiedValue.Replace(matchValue, values[1]);  
      
                return modifiedValue;  
            }  
      
            private static string ReplaceKeyToValue(string matchValue, string originalItem)  
            {  
                string modifiedValue = originalItem;  
                string captureKey = matchValue.Replace("{", "").Replace("}", "");  
                if (!m_keyValue.ContainsKey(captureKey))  
                    m_keyValue.Add(captureKey, string.Empty);  
                modifiedValue = modifiedValue.Replace(matchValue, m_keyValue[captureKey]);  
      
                return modifiedValue;  
            }  
      
            private static bool EmailValidate(string line)  
            {  
                string pattern = @"^[a-z][a-z|0-9|]*?@[a-z][a-z|0-9|]*\.([a-z][a-z|0-9]*(\.[a-z][a-z|0-9]*)?)$";  
      
                Match match = Regex.Match(line.Trim(), pattern, RegexOptions.IgnoreCase);  
                if (match.Success)  
                    return true;  
      
                return false;  
      
            }  
      
            private static Match ValidateKey(string line)  
            {  
                string pattern = @"{([a-z|0-9|]+ [a-z|0-9|.|]+)}";  
                Match match = Regex.Match(line.Trim(), pattern, RegexOptions.IgnoreCase);  
                if (match.Success)  
                    return match;  
      
                return null;  
      
            }  
      
            public static Match ValidateReplaceKey(string line)  
            {  
                string pattern = @"{([a-z|0-9|]+)}";  
                Match match = Regex.Match(line.Trim(), pattern, RegexOptions.IgnoreCase);  
                if (match.Success)  
                    return match;  
      
                return null;  
      
            }  
        }  
    }

 


اطلاعات دانلود
  • حجم فايل پيوست: 40 KB
  • پسورد: www.mspsoft.com

avatar مسعود شریفی پور

از سال 88 که با برنامه نویسی آشنا شدم خیلی علاقه مند بودم یک بستر آموزشی بسازم در فضای وب و به انتشار آموزش های در این زمینه بپردازم.حالا یک تیم داریم و با قدرت رو به جلو حرکت میکنیم.

آخرین مطالب و تخفیفات در کانال تلگرام :) کانال تلگرام ام اس پی سافت
مطالب مرتبط
ديدگاه خود را ارسال کنيد


۲ دیدگاه رو شما می توانید ببینید
محبوب ترين ويدئو هاي انلاين
دوره برنامه نویسی فروشگاه اینترنتی
  • تعداد اعضا 80k
  • قيمت دوره۱۳۰,۰۰۰ تومان
  • امتيازدهي
    1 vote, average: 5٫00 out of 51 vote, average: 5٫00 out of 51 vote, average: 5٫00 out of 51 vote, average: 5٫00 out of 51 vote, average: 5٫00 out of 5( 5٫00 از 1 رای )
    Loading...
دوره آموزشی سیستم ثبت سفارش آنلاین
  • تعداد اعضا 80k
  • قيمت دوره--
  • امتيازدهي
    1 vote, average: 5٫00 out of 51 vote, average: 5٫00 out of 51 vote, average: 5٫00 out of 51 vote, average: 5٫00 out of 51 vote, average: 5٫00 out of 5( 5٫00 از 1 رای )
    Loading...
دوره طراحی سیستم مدیریت مشتریان
  • تعداد اعضا 80k
  • قيمت دوره۶۵,۵۰۰ تومان
  • امتيازدهي
    1 vote, average: 5٫00 out of 51 vote, average: 5٫00 out of 51 vote, average: 5٫00 out of 51 vote, average: 5٫00 out of 51 vote, average: 5٫00 out of 5( 5٫00 از 1 رای )
    Loading...