نمایش نتایج 1 تا 5 از 5

نام تاپیک: تحلیل کد

  1. #1
    کاربر دائمی آواتار Reza,M
    تاریخ عضویت
    تیر 1389
    محل زندگی
    ايران سراي من است
    پست
    412

    تحلیل کد

    با سلام
    از دوستان کسی میتونه منو در تحلیل این کد کمک کنه
    using System.Security.Cryptography;


    namespace WindowsFormsApplication9
    {
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();

    }

    const int keySize = 1024;
    string publicAndPrivateKey;
    string publicKey;



    private void button1_Click(object sender, EventArgs e)
    {
    Form1.GenerateKeys(keySize, out publicKey, out publicAndPrivateKey);
    string text = txt_clear.Text;

    string encrypted = Form1.EncryptText(text, keySize, publicKey);
    string decrypted = Form1.DecryptText(encrypted, keySize, publicAndPrivateKey);
    txt_cipher.Text = encrypted;
    }


    private void button2_Click(object sender, EventArgs e)
    {
    Form1.GenerateKeys(keySize, out publicKey, out publicAndPrivateKey);
    string text = txt_clear.Text;
    // string text = "reza";
    string encrypted = Form1.EncryptText(text, keySize, publicKey);
    string decrypted = Form1.DecryptText(encrypted, keySize, publicAndPrivateKey);
    txt_plain.Text = decrypted;
    }



    private static bool _optimalAsymmetricEncryptionPadding = false;

    public static void GenerateKeys(int keySize, out string publicKey, out string publicAndPrivateKey)
    {
    using (var provider = new RSACryptoServiceProvider(keySize))
    {
    publicKey = provider.ToXmlString(false);
    publicAndPrivateKey = provider.ToXmlString(true);
    }
    }

    public static string EncryptText(string text, int keySize, string publicKeyXml)
    {
    var encrypted = Encrypt(Encoding.UTF8.GetBytes(text), keySize, publicKeyXml);
    return Convert.ToBase64String(encrypted);
    }

    public static byte[] Encrypt(byte[] data, int keySize, string publicKeyXml)
    {
    if (data == null || data.Length == 0) throw new ArgumentException("Data are empty", "data");
    int maxLength = GetMaxDataLength(keySize);
    if (data.Length > maxLength) throw new ArgumentException(String.Format("Maximum data length is {0}", maxLength), "data");
    if (!IsKeySizeValid(keySize)) throw new ArgumentException("Key size is not valid", "keySize");
    if (String.IsNullOrEmpty(publicKeyXml)) throw new ArgumentException("Key is null or empty", "publicKeyXml");

    using (var provider = new RSACryptoServiceProvider(keySize))
    {
    provider.FromXmlString(publicKeyXml);
    return provider.Encrypt(data, _optimalAsymmetricEncryptionPadding);
    }
    }

    public static string DecryptText(string text, int keySize, string publicAndPrivateKeyXml)
    {
    var decrypted = Decrypt(Convert.FromBase64String(text), keySize, publicAndPrivateKeyXml);
    return Encoding.UTF8.GetString(decrypted);
    }

    public static byte[] Decrypt(byte[] data, int keySize, string publicAndPrivateKeyXml)
    {
    if (data == null || data.Length == 0) throw new ArgumentException("Data are empty", "data");
    if (!IsKeySizeValid(keySize)) throw new ArgumentException("Key size is not valid", "keySize");
    if (String.IsNullOrEmpty(publicAndPrivateKeyXml)) throw new ArgumentException("Key is null or empty", "publicAndPrivateKeyXml");

    using (var provider = new RSACryptoServiceProvider(keySize))
    {
    provider.FromXmlString(publicAndPrivateKeyXml);
    return provider.Decrypt(data, _optimalAsymmetricEncryptionPadding);
    }
    }

    public static int GetMaxDataLength(int keySize)
    {
    if (_optimalAsymmetricEncryptionPadding)
    {
    return ((keySize - 384) / 8) + 7;
    }
    return ((keySize - 384) / 8) + 37;
    }

    public static bool IsKeySizeValid(int keySize)
    {
    return keySize >= 384 &&
    keySize <= 16384 &&
    keySize % 8 == 0;
    }

    private void Form1_Load(object sender, EventArgs e)
    {

    }

    private void button3_Click(object sender, EventArgs e)
    {
    Application.Exit();
    }




    }
    }

    آخرین ویرایش به وسیله Reza,M : سه شنبه 04 آذر 1393 در 22:02 عصر

  2. #2
    مدیر بخش آواتار محمد رضا فاتحی
    تاریخ عضویت
    مهر 1387
    محل زندگی
    کهنسالترین موجود زنده در شهر منه
    پست
    1,181

    نقل قول: تحلیل کد

    دقیقا چی رو می خوای؟؟؟؟
    یه کلاس از نوع فرمه که توابع مربوط به رمزنگاری(رشته و فایل) داخلش اومده حالا دقیقا منظورت از تحلیل چیه من نمی دونم

  3. #3
    کاربر دائمی آواتار Reza,M
    تاریخ عضویت
    تیر 1389
    محل زندگی
    ايران سراي من است
    پست
    412

    نقل قول: تحلیل کد

    مثلا کار این قسمت چیه
     public static int GetMaxDataLength(int keySize)        {
    if (_optimalAsymmetricEncryptionPadding)
    {
    return ((keySize - 384) / 8) + 7;
    }
    return ((keySize - 384) / 8) + 37;
    }



    و یا
     public static bool IsKeySizeValid(int keySize)        {
    return keySize >= 384 &&
    keySize <= 16384 &&
    keySize % 8 == 0;
    }



  4. #4
    کاربر دائمی آواتار khokhan
    تاریخ عضویت
    دی 1388
    محل زندگی
    اسکو
    پست
    2,176

    نقل قول: تحلیل کد

    نقل قول نوشته شده توسط Reza,M مشاهده تاپیک
    مثلا کار این قسمت چیه
     public static int GetMaxDataLength(int keySize)        {
    if (_optimalAsymmetricEncryptionPadding)
    {
    return ((keySize - 384) / 8) + 7;
    }
    return ((keySize - 384) / 8) + 37;
    }



    و یا
     public static bool IsKeySizeValid(int keySize)        {
    return keySize >= 384 &&
    keySize <= 16384 &&
    keySize % 8 == 0;
    }


    می خوای keygen بسازی؟؟؟؟؟؟؟؟

  5. #5
    کاربر دائمی آواتار Reza,M
    تاریخ عضویت
    تیر 1389
    محل زندگی
    ايران سراي من است
    پست
    412

    نقل قول: تحلیل کد

    نقل قول نوشته شده توسط khokhan مشاهده تاپیک
    می خوای keygen بسازی؟؟؟؟؟؟؟؟
    نه بابا keygen چیه؟؟!

تاپیک های مشابه

  1. کمک در تحلیل برنامه
    نوشته شده توسط sahra_777 در بخش تحلیل و طراحی نرم افزار
    پاسخ: 1
    آخرین پست: یک شنبه 02 مرداد 1384, 18:32 عصر
  2. تحلیل یک دیتابیس اکسس2000
    نوشته شده توسط VBCODEMAN در بخش مطالب مرتبط با بانکهای اطلاعاتی در VB6
    پاسخ: 1
    آخرین پست: شنبه 31 مرداد 1383, 12:05 عصر
  3. تحلیل مقدماتی الگوریتمها
    نوشته شده توسط Kambiz در بخش الگوریتم، کامپایلر، هوش مصنوعی و ساختمان داده ها
    پاسخ: 3
    آخرین پست: یک شنبه 23 شهریور 1382, 16:19 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •