# زبان های اسکریپتی > PHP > امنیت در PHP >  ادامهء یک بحث تخصصی دربارهء امنیت و رمزنگاری!

## SZsXsZS

بنده در اینجا یک بحثی با شخصی (ادمین اون فروم) داشتم:
https://goo.gl/4kfTcm
اما متاسفانه ایشون حرفهای غیرمنطقی زدن و بنده رو هم اخراج کردن.
البته قبول دارم بهشون پرخاش و توهین کردم و از این بابت عذرخواهی میکنم، ولی باعث عصبانیت بنده بی منطقی خودشون بوده که اینجا به وضوح نشون میدم و ثابت میکنم!
ایشون یک کلاس و کد PHP برای رمزنگاری گذاشتن که بنده بخاطر مطالعات و تخصصی که دارم سریعا فهمیدم اشکالات و اشتباه و ضعف های قابل توجهی داره که براشون توضیح هم دادم، و دونه دونهء چیزهایی رو که ادعا کردم میشه از منابع تخصصی ثابت کرد، مثلا میتونیم در crypto.stackexchange.com سوال کنیم، البته اگر همونجا یا توی گوگل هم سرچ کنیم بنظرم منابع و مطالب کافی از قبل موجوده، هرچند متاسفانه هر روز بیشتر از پیش متوجه میشم که سطح علم و سواد هیچکس در این مملکت اونقدری نیست که بتونه از این همه منابع و مطالب گسترده استفادهء زیادی بکنه، چون از فهم کامل و دقیق خیلی موارد ناتوان هستن.

بهرحال آدم بزرگ ذهنش بازه و حقایق و احتمالات رو گرچه جدید و ناخوشایند، باید بپذیره، نه اینکه بدون منطق و دلیل صرفا انکار کنه.

حالا جالبه ایشان قبول دارن که تخصص خاصی به در این زمینه ندارن چون بقول خودشون علاقه و نیاز چندانی به این موارد نداشتن. ولی در عین حال نظرات بنده رو نقد میکنن و میگن اغراق هست یا صرفا اصطلاحات فنی قلمبه سلمبه استفاده میکنم که خودمو مطرح کنم! باید از ایشون بپرسم دوست عزیز، شما که تخصص و صلاحیتی در این فیلد که باید بدونید به شدت تخصصی و علمی است، و رشتهء سخت و پیچیده ایست، ندارید، پس چطور درمورد گفته های من قضاوت میکنید و اتهام میزنید و فتوا میدید؟! از کجا مطمئن هستید؟ سند و دلایل شما کجاست؟

حالا در ادامه بحث جالبتر از این هم شد. ایشون منبع کدهایی رو که درج کرده بودن ارائه دادن: http://stackoverflow.com/questions/3...ncrypt-decrypt
ولی در همین منبع به وضوح اشاره کرده که این کدها ناقص و غیراصولی و ناامن هستن، بالاش این تیتر رو بصورت برجسته درج کرده:
Warning: insecure code follows
ترجمه: «هشدار: کدهای زیر ناامن هستند.»
حالا نمیدونم ایشون این متن رو موقعی که اون کدها رو برداشتن دیدن یا نه؛ شاید این متن رو بعد اونجا اضافه شده (ظاهرا متن بعدا ویرایش و تکمیل شده) و موقعی که ایشون کدها رو برداشته این هشدارها اونجا نبودن.




> ببین آقا حمیدرضای عزیز، بنده شما رو خوب میشناسم و شما هم بنده رو میشناسین و میدونین اهل اینکه رو هوا حرف بزنم نیستم و هرجا هم کدی که گذاشتم مشکل خاصی داشته قبول کردم


خب پس چرا الان اشکال کدت رو قبول نمیکنی؟
از یک طرف نه تخصصی داری و نه سند و دلایل روشنی ارائه میکنی معیار مشخص و قابل تحلیل و اندازه گیری ارائه نمیدی و فقط کلی گویی و مبهم گویی میکنی، از طرف دیگه میگی بنده اغراق میکنم و به اونقدر امنیت نیازی نیست. بنده باز هم از شما میپرسم، شما که هیچ تخصص و اطلاعات و سند و دلیلی ندارید، و حتی منبع خودتون داره میگه این کدها ناامن هستن، از کجا فهمیدید، بر مبنای چه سند و دلایل و محاسبات اصولی ای، چه معیاری، حداقل چه حدس بقدر کافی آگاهانه و تخصصی ای، اینقدر مطمئن هستید که این کدها فلان درجهء امنیت رو دارن و برای فلان سطح و اهمیت کار و برنامه های شما یا کس دیگه اون حداقل از امنیت رو دارن؟ واقعا این برای من جای سواله، چون در گفتار شما جز ادعا و حدس و تصورات غیرتخصصی کسی که صلاحیتی در این فیلد نداره هیچ چیز دیگری دیده نمیشه!
وقتی طرف خودش نوشته این کدها ناامنه، و نگفته تا چه حد، پس آیا ممکن نیست امنیت این کدها از چیزی هم که شما فکر میکنید و نیاز دارید کمتر باشه؟ شما نه تخصصی دارید، نه سندی، نه دلایلی، نه محاسبه ای، نه عددی، نه رقمی... واقعا تعجب میکنم پس چطور ادعا و تصوری دارید و ازش مطمئن هستید!
خب یه مشکلی که در رابطه با امنیت و بخصوص فیلد رمزنگاری هست همیشه همین بوده که برنامه نویسان عادی که تخصص و اطلاعاتش رو ندارن این مسائل رو دست کم میگیرن و طبق عادت و روال کار برنامه نویسی عادی میخوان باهاش برخورد کنن، درحالیکه امنیت و بخصوص بخش رمزنگاری با برنامه نویسی عادی خیلی فرق میکنه، بخاطر همین هم هست که رمزنگاری یک رشتهء جداگانه و فوق تخصصی است و جزو علوم کامپیوتر محسوب میشه، درحالیکه برنامه نویسی عادی عمدتا جزو فیلد مهندسیه. ضمنا اگر بررسی کنید متوجه میشید که اکثریت مطلق افراد مشهور و متخصصان برجستهء این رشته، رشته شون ریاضیات یا فیزیک بوده یا بعضیا حداقل همون علوم کامپیوتر که بنده در طول چند سال مطالعات و تحقیقاتی که از منابع مختلف داشتم متوجه این قضیه شدم. علتش اینه که علم رمزنگاری بسیار به ریاضیات وابسته است و اتکا داره. بخاطر همینه که بنده میگم همه چیز حتی الامکان باید محاسبه بشه و عدد و رقم داشته باشیم، چون بنده که این منابع رو خوندم میدونم علم و اصولش اینطور هست و جور دیگه اصلا معنا نمیده و همون تصورات سطحی یه عده آدم بی اطلاع و بدون تخصص است. کسی هم که اطلاعات و تخصصش رو نداشته باشه نمیدونه طرز محاسبه و حتی تخمین یا حدس تخصصی توی این رشته چیه؛ قادر به انجامش نیست! به همین سادگی. واقعا این مسئله اینقدر عجیب و غیرمنطقی هست بنظر شما؟!
بارها گفته ام، بازم میگم، حالا کسی خواست متوجه بشه و قبول بکنه به نفع خودشه حداقل یک آگاهی جدید بدست آورده: امنیت و رمزنگاری مثل برنامه نویسی عادی نیست که همینطور بشه با آزمون و خطا کار کرد و از درستی اون اطمینان خوبی داشت؛ در برنامه نویسی عادی کد اشتباه بنویسی کار نمیکنه خطا میده باگ میده مشخص میشه، کدت رو درست میکنی کار میکنه و تاحد زیادی خیالت راحت میشه، ولی در مسائل امنیت و رمزنگاری راهی جز دانش و تحلیل حرفه ای و محاسبه برای تخمین و اطمینان از درجهء امنیت مورد نیاز وجود نداره. بنابراین یا باید خودت متخصص باشی یا از افراد این کاره کمک بگیری. اما متاسفانه رفتار شما برعکس بوده و میاید حرف بنده رو که چند سال زحمت کشیدم و منابع حجیم و سنگین این رشته رو مطالعه کردم، البته نه کامل ولی تا حدی که میتونستم و پایهء تحصیلیم اجازه میداد درش پیش رفتم (و بعید نیست یکی از خیلی معدود افرادی در ایران باشم که چنین اطلاعات و بینش گسترده ای رو در این رشته داره)، براحتی مورد قضاوت قرار میدید و انکار میکنید و حتی کل تخصص و صلاحیت بنده رو زیر سوال میبرید، بدون اینکه خودتون هیچ تخصص و صلاحیتی در این رشته داشته باشید و یک صدم بنده هم در این زمینه وقت و انرژی صرف کرده باشید و مطالعه و تحقیق کرده باشید.

اگر در یک فیلدی علاقه ندارید تخصص ندارید نمیتونید وقت و انرژی بذارید، حداقل اینقدر روی هوا اظهار نظر و حرفهای دیگری رو نفی نکنید! اونم بنده که خودتون بارها اذعان کردید تخصص خوبی در امنیت دارم. ولی وقتی بحث میشه آخرش میگید که نه و حرفهای من اشتباهه یا اغراق هست یا اینکه کلا فقط اصطلاحات قلمبه سلمبه استفاده میکنم!!
البته حق با شماست که بنده از اصطلاحات قلمبه سلمبه استفاده میکنم، ولی این قلمبه سلمبه گی واقعیه، بخاطر اینه که واقعا هم این رشته و منابعی که بنده مطالعه کردم سطح علمی و تخصصی بالایی دارن و واقعا قلمبه سلمبه است خب! یعنی نمیشه بنظر شما؟ مثلا یکی که تخصص در فیزیک کوانتم داره اگر از اصطلاحات قلمبه سلمبه استفاده کنه بنظر شما نشون میده که سواد واقعی نداره؟ خب بعضیا شاید زیاد مهارت یا علاقه و انگیزه ندارن که مفاهیم پیشرفته و پیچیدهء علمی رو با زبان ساده و همه فهم برای دیگران بیان کنن، ولی سوادشون بالاست اطلاعات و ادعاهاشون درسته، و از طرف دیگر اینم بنظر بنده حرف خام و خنده داریه که انتظار داشته باشیم همه چیز رو بشه با زبان ساده و همه فهم بیان کرد! اون چیزایی که مثلا از فیزیک کوانتم میگن برای عموم و توی مجله ها و مقاله های عمومی درج میکنن یه چیزهای خیلی ساده و محدود شده است و صرفا برای کمی اطلاعات عمومی و جذب مخاطب عمومی است، وگرنه کسی با خوندن چندتا از این مقاله ها، حتی بگی هزارتا، هیچوقت متخصص واقعی فیزیک کوانتم نمیشه و واقعیت های این رشته رو بطور کامل و دقیق نمیفهمه! مگه میشه مگه داریم؟ طرفی که میره سالها زحمت میکشه کلی ریاضیات سخت و چیزهای پیچیده کار میکنه یاد میگیره، واقعا میشه یه آدم عادی رو باهاش مقایسه کرد یا اون چیزها رو به این راحتی بهش یاد داد؟ هرچیزی زبان خودش رو داره و پایه و پیشنیازهای خودش رو هم طلب میکنه! کسی با این چیزهای ساده و محدود نه ریاضیدان میشه نه فیزیکدان و نه متخصص رمزنگاری واقعی! البته تاحدی میشه اطلاعات عمومی خوب و حتی کاربردی بدست آورد، ولی بازهم مسلما یک متخصص واقعی این رشته ها دانش و توانایی خیلی بالاتری داره و کارهای سخت و پیچیده رو فقط چنان شخصی میتونه بفهمه و انجام بده.

در کشورهای پیشرفته در اروپا و آمریکا امنیت و رمزنگاری خودش یک تخصص و رشته و حیطهء شغلی جداگانه است، و افرادی هستن شغل و نقششون فقط همینه، شرکتهای متعددی وجود دارن که کارشون مشاوره و کمک و تامین امنیت پروژه ها و سیستم هاست. مثل اینکه میگیم یکی توسعه دهنده است و یکی گرافیست. نمیگم پیدا نمیشه، اما بنظرم کم پیدا میشه طرف هم توسعه دهندهء خیلی خوبی باشه و هم گرافیست حرفه ای. همینطور امنیت و رمزنگاری هم تخصص های گسترده و جداگانه ای نسبت به برنامه نویسی عادی هستن، بخصوص رمزنگاری که زیرمجموعه ای از امنیت است، حتی خیلی افرادی که تخصص امنیت دارن با این حال در علم رمزنگاری آنچنان متخصص و توانا نیستن چون همونطور که گفتم به تنهایی رشتهء گسترده و بسیار تخصصی است؛ اون چیزی که برنامه نویسان معمولی از این علم میدونن خیلی محدود و ناقص و ضعیف است و براحتی هم در این زمینه مرتکب اشتباه میشن ولی متوجه نیستن و تصور دیگری دارن، ولی بنده بهرحال خوره بودم و چون یجورایی وقت و انرژی آزاد بیشتری نسبت به دیگران داشتم، خیلی بیشتر در این وادی پیش رفتم و میشه گفت هم دانش و توانایی برنامه نویسی خوبی دارم و هم در امنیت و رمزنگاری دانش و توانایی واقعا خوبی دارم. البته نه کامل، ولی از بقیه خیلی بیشتر!

این پست دیگر رو هم میذارم چون بنظرم استدلال ها و اطلاعات خوبی درش هست، هرکس خودش میتونه قضاوت کنه:



> این باعث نمیشه که فکر کنیم توی اغلب پروژه‌ها به اون سطح از امنیت نیاز داریم و بخوایم یه الگوریتم پیچیده‌ی امنیتی رو برای یه اپلیکیشن ساده‌ی موبایل یا یه سایت شخصی پیاده‌سازی کنیم.


آخه این چیزی که شما میگی ابهام اندر ابهامه، اصلا سر و ته نداره، هیچ معیار روشن و محکمی نداره، قابل اندازه گیری نیست، در حالیکه امنیت و بخصوص رمزنگاری یک علم روشن و دقیقی هست باید همه چیز توش تا حد امکان روشن و محکم و محاسبه شده باشه. شما حتی نمیدونی روش و الگوریتمی که استفاده کردی واقعا چقدر امنیت داره، از کجا میدونی همون سطح پایین تری هم که خودت کافی میدونی رو هم تامین میکنه؟ اصلا اون سطح پایین تر رو چطوری بدست آوردی، چطور محاسبه کردی یا تخمین زدی، معیاری داره؟ فرمولی داره؟ عدد و رقمی داره؟ هرکس بقول معروف از ظن خودش میشه یار و یه حدسی میزنه، حدس غیرتخصص و روی هوا، و چیزی میگه، ولی بقول معروف میان ماه من تا ماه گردون تفاوت از زمین تا آسمان است!
اصلا شما بیای یه الگوریتم غیراصولی استفاده کنی، میدونی واقعا روشن نیست حتی تخمین زدن میزان امنیتش هم دشواره بعضی وقتا خیلی هم دشوار تقریبا غیرممکن، یکی بخاطر اینکه هیچ متخصصی روی چیزهای غیراصولی زیاد وقت و انرژی صرف نمیکنه و تحلیل کامل و دقیق نمیشه و محاسبه نمیشه عدد و رقم و روش و فرمولی برای برآورد امنیتش ارائه نمیدن. حالا چه برسه افراد ناآگاه و غیرمتخصص که اصلا نمیتونن برآورد هم بکنن یک حدس آگاهانه و تخصصی هم بزنن که واقعا امنیتش چقدره. امنیتش ممکنه از حدی باشه که یک نفر روی یک PC بتونه اون رو ظرف مدت کوتاهی بشکنه، و ممکنه خیلی بیشتر باشه، ولی بهرحال مخدوشه و روی هواست، تا وقتی تحلیل و تحقیق تخصصی کافی نشده تا حد زیادی حدس و تصوره صرفا.
مثل اینکه شما بیای یکسری تجهیزات ایمنی یک اتومبیل مدل بالا رو حذف کنی یا ضعیف ترش رو بذاری و بگی من همیشه توی شهر رانندگی میکنم و به این همه امنیت نیازی ندارم، ولی واقعا خودت هم سر از کار اون تجهیزات درنمیاری و هیچ دانش و تخصص و صلاحیتی در این زمینه نداری! از کجا معلوم چطور محاسبه کردی چطور تخمین زدی با چه معیاری چه دانشی چه صلاحیتی که واقعا امنیتش چقدره آیا همون حداقل رو هم که شما فکر میکنی تامین میکنه یا نه؟ و اصلا شاید بعدا مشکل و خطر جدی برات پیش بیاد و متوجه بشی از ابتدا ذهنیت غلطی داشتی و اون چیزی که فکر میکردی توی شهر ممکن نیست یا خیلی بعیده برات پیش بیاد واقعا اونطورها هم نبوده، شاید اصلا برخلاف پیشبینی و انتظار خودت نیازت بشه بری بیرون شهر توی جاده هم رانندگی کنی!
میگن کار از محکم کاری عیب نمیکنه. حالا ما الگوریتمی استفاده میکنیم که کم و بیش بی نقص باشه. چه اشکالی داره؟ البته پیچیدگی بیشتره، پرفورمنس هم کمتره، ولی بنده شخصا ترجیح میدم در این زمینه ریسک نکنم، چون امنیت مبحث مهم و موثری هست امروزه، و جذاب و خواستنی. ضمنا پیچیدگی رو هم که یک بار زحمت میکشی انجام میدی توی کلاسها یا تابع و اینها پیاده میکنی و بعدا ازش فقط استفاده میکنی. که من سعی کردم این کار رو بکنم. البته اینها رو باز میشه تمیزتر کرد و بهبود داد و باید هر از گاهی بروز کرد. لامصب این علم خیلی گسترده است و تغییر هم زیاد داره و جزییات مهم تا دلت بخواد توش هست.
درمورد سایت و برنامهء مردم هم نمیشه قضاوت مطمئنی داشت. البته بنده هم اشاره کردم که اکثر برنامه نویسان و برنامه هاشون به هیچ وجه در اون حدی نیست که رمزنگاری ضعیف ترین حلقهء زنجیر امنیت اونا بشه، ولی خب بازم این زیاد نمیشه مطمئن بود. مثلا طرف ممکنه داده های حساس رو رمزنگاری میکنه میفرسته روی سروری چیزی ذخیره میکنه، درحالیکه بقیهء برنامه روی دستگاه شخصی و کم و بیش در امنیت است. پس نفوذگر ممکنه فقط به داده های روی سرور دسترسی پیدا کنه و عملا به بقیهء برنامه دسترسی نداشته باشه، و اونوقت هست که اگر امنیت رمزنگاری شما پایین باشه میتونه بشکنه، البته اگر فرد وارد به کاری باشه، فرض گیریم که روش و الگوریتم مورد استفادهء شما رو هم میدونه در دسترسش هست یا بالاخره یجوری کشفش میکنه (در امنیت حرفه ای فرض باید همین باشه).
بنظر بنده جایی که مشکل پرفورمنس جدی نداریم از الگوریتم کامل و امن استفاده کنیم، ضرری نداره، شاید همین باعث شد از ضررهایی در آینده جلوگیری بشه. البته من شخصا این کار رو میکنم، ولی برای بقیه سخت تره چون هرچی هم کد میذاری و توضیح میدی بازم فهمیدن و استفاده و رعایت دقیق نکاتی که میگم برای آدمهای غیرمتخصص دشواره و احتمال اشتباه بالایی دارن.

----------


## SZsXsZS

> خیلی خودتو دست بالا نگیر. باور کن اصلاً در حدی که فکر میکنی، برام مهم نیستی. اگه ایراد فنی وجود داشته باشه خوشحال میشم اصلاح بشه و اطلاعات خودم هم افزایش پیدا کنه ولی اگه بخوای باز منم منم راه بندازی و خودتو بالا ببری و دیگران رو تحقیر کنی، همون بهتر که جواب ندی.


والا منکه سند و مدرک هم بذارم کسی نمیفهمه تخصص و صلاحیت نداره، یا بهرصورت فقط در پی نفی هستن. بدون هیچ دلیل و مدرک روشن  و محکمی!
الان این نشانهء چیه بنظر شما؟
بنظر من یا نادانی یا غرور یا منافع شخصی، یا ترکیبی از چندتا یا همهء اینا!
بعد منم منم بنده این وسط اشکال منه و خیلی مهمه؟
خب شما ملت همین هستید همتون سطحی و ظاهرساز و حقه باز، بخاطر همین هم پیشرفت نمیکنید از یه سطحی بالاتر نمیرید.
حساسیت شما در زمینهء منم منم زیادی هست دوست عزیز! چرا واقعا منم منم باید واسه شما اینقدر مهم باشه؟ لابد بخاطر اینکه خودتون هم منی همونقدر بزرگ یا حتی بزرگتر در ذهن و روان خودتون دارید، ولی فرق من و شما اینه که من ظاهر و باطنم یکیه و رک هستم و رعایت کسی و چیزی رو نمیکنم.
واسه من بشخصه هم مهم نیست کسی توی این محیط مجازی یا اصلا هرجای دیگه منم منم بکنه یا نه، بنظر من بیشتر مسئلهء شخصی است و سود و ضرری داشته باشه واسه خودشه و به دیگران ضرر جدی ای نمیزنه تجاوزی به حقوق دیگران نیست. من اگر یه آدم باسواد ببینم که چیزهایی میدونه که من نمیدونم، سعی میکنم ازش استفاده کنم یاد بگیرم دانشش رو بیرون بکشم. حالا منم منم بکنه! واسه من اصلا مهم نیست، تنها چیزی که در زندگی برام مهمه کسب قدرته، بخاطر همین هم الان دانش و توانایی هایی دارم که کمتر کسی در ایران داره. تازه منم منم میتونه حس رقابت ایجاد کنه که میتونه برای پیشرفت خوب باشه، البته اگر کسی مثل من باشه که واقعا میره دنبال یاد گرفتن و افزایش قدرت خودش، نه افراد مثل شما که فقط میخواید از سر باز کنید؛ البته تقصیر خودتون هم نیست میدونم اینقدر گرفتاری و مشغله واسه خودتون دارید که دیگه نمیتونید دنبال یادگیری مباحث خیلی گسترده و سخت علمی برید، اما بهرحال دلیل نمیشه به یک متخصص و دانشمند کشور خودتون توهین کنید و با دروغ و حقه بازی سعی کنید نفی اش کنید.

----------


## golbafan

> والا منکه سند و مدرک هم بذارم کسی نمیفهمه تخصص و صلاحیت نداره، یا بهرصورت فقط در پی نفی هستن. بدون هیچ دلیل و مدرک روشن  و محکمی!
> الان این نشانهء چیه بنظر شما؟
> بنظر من یا نادانی یا غرور یا منافع شخصی، یا ترکیبی از چندتا یا همهء اینا!
> بعد منم منم بنده این وسط اشکال منه و خیلی مهمه؟
> خب شما ملت همین هستید همتون سطحی و ظاهرساز و حقه باز، بخاطر همین هم پیشرفت نمیکنید از یه سطحی بالاتر نمیرید.
> حساسیت شما در زمینهء منم منم زیادی هست دوست عزیز! چرا واقعا منم منم باید واسه شما اینقدر مهم باشه؟ لابد بخاطر اینکه خودتون هم منی همونقدر بزرگ یا حتی بزرگتر در ذهن و روان خودتون دارید، ولی فرق من و شما اینه که من ظاهر و باطنم یکیه و رک هستم و رعایت کسی و چیزی رو نمیکنم.
> واسه من بشخصه هم مهم نیست کسی توی این محیط مجازی یا اصلا هرجای دیگه منم منم بکنه یا نه، بنظر من بیشتر مسئلهء شخصی است و سود و ضرری داشته باشه واسه خودشه و به دیگران ضرر جدی ای نمیزنه تجاوزی به حقوق دیگران نیست. من اگر یه آدم باسواد ببینم که چیزهایی میدونه که من نمیدونم، سعی میکنم ازش استفاده کنم یاد بگیرم دانشش رو بیرون بکشم. حالا منم منم بکنه! واسه من اصلا مهم نیست، تنها چیزی که در زندگی برام مهمه کسب قدرته، بخاطر همین هم الان دانش و توانایی هایی دارم که کمتر کسی در ایران داره. تازه منم منم میتونه حس رقابت ایجاد کنه که میتونه برای پیشرفت خوب باشه، البته اگر کسی مثل من باشه که واقعا میره دنبال یاد گرفتن و افزایش قدرت خودش، نه افراد مثل شما که فقط میخواید از سر باز کنید؛ البته تقصیر خودتون هم نیست میدونم اینقدر گرفتاری و مشغله واسه خودتون دارید که دیگه نمیتونید دنبال یادگیری مباحث خیلی گسترده و سخت علمی برید، اما بهرحال دلیل نمیشه به یک متخصص و دانشمند کشور خودتون توهین کنید و با دروغ و حقه بازی سعی کنید نفی اش کنید.



به به
 باز هم شما تشریف فرما شدید اینبار با این اکانت  :تشویق: 
ما که ملت بیسوادی هستیم ولی شما یکم از کشور و ملتت بگین شاید ماهم یاد گرفتیم
از علوم غیبی وافر خودتون مارو محروم نفرمایید


در مورد رمز نگاری دوست عزیز...
هر زمان تونستید الگوریتمی پیدا کنید تا بشه با یک کلید ثابت و الگوریتم مشخص و ورودی ثابت هر دفعه خروجی های رمز شده متفاوتی گرفت که در برگشت دادن و رمز گشایی به اشکال نخوره و روشهای داده کاوی روی انبوه اطلاعات رو بی اعتبار کنه بیاین تا با هم بحث های ریاضی بکنیم. 
یا علی

----------


## SZsXsZS

> به به
>  باز هم شما تشریف فرما شدید اینبار با این اکانت 
> ما که ملت بیسوادی هستیم ولی شما یکم از کشور و ملتت بگین شاید ماهم یاد گرفتیم
> از علوم غیبی وافر خودتون مارو محروم نفرمایید


نمیدونم شما ملت چرا اینقدر مشکل دارید واقعا  :متفکر: 
همتون فقط بلدید حرف های بیهوده بزنید.




> هر زمان تونستید الگوریتمی پیدا کنید تا بشه با یک کلید ثابت و الگوریتم مشخص و ورودی ثابت هر دفعه خروجی های رمز شده متفاوتی گرفت


خب الگوریتم های رمزنگاری مدرن همینطور هستن دیگه!
مثلا شما با AES در مد CBC با یک کلید ثابت و دیتای ثابت هر چند بار هم رمز کنی هر بار خروجی کاملا متفاوت خواهد بود.
به این خاصیت Probabilistic encryption گفته میشه و هدفش جلوگیری از نشت اطلاعاته.




> که در برگشت دادن و رمز گشایی به اشکال نخوره و روشهای داده کاوی روی انبوه اطلاعات رو بی اعتبار کنه بیاین تا با هم بحث های ریاضی بکنیم.


یعنی چی دقیقا؟  :متفکر: 
الگوریتم های مدرن اگر درست پیاده بشن امنیت بسیار بالایی دارن.
شما بگو چطوری میخوای باهاش چکار کنی، سند و نمونه ارائه بده، وگرنه اصلا برای بنده بشخصه معلوم نیست چی میگی!

----------


## golbafan

قرار نیست کاری باهاش بکنم...
شما هم که انگلیسیت بد نیست برو تحقیق کن و ببین چطوری دنیا داره با داده کاوی اطلاعات رمز شده شما رو تحلیل میکنه
شاید برات معلوم بشه صحبت من در رابطه با چیه و به یک کلید 128 بیتی متقارن که با متد Rijndael نوشتی اینقدر افتخار نکنی عزیزم
در ضمن اگر تعریف شما از متدهای مدرن واقعا استفاده از حالت هایی مثل cbc هست که تولید سال 1976 بوده بهتره خوتون رو آپدیت کنید

----------


## golbafan

اینکه گفتم در رمز گشایی به مشکل بر نخوریم برای اینه که احتمالا میدونی که گاها cbc مشکلش اینه که بعلت زنجیر وار بودن حتی اگر یک بیت در اول دیتا جابجا بشه و یا از بین بره دیگه نمیشه پیام رو درست رمز گشایی کرد و در دنیایی که امروزه همه چیز روی ارتباطات اونهم ناامن و نا پایدار میچرخه از دست دادن بیت ها فاجعه باره
بنابراین بهتر بود از pcbc اسم میبردی که یکم وضعیت رو بهتر میکنه ولی مشکل در کندی اون هست... (البته باز هم تا مطلبی که من میگم فاصله داره بعلت مشکلات توضیع در پروتکل kerberos)
در نهایت سعی کن روی روشهایی تحقیق کنی که بیتونه با تعداد بیت های کمتر مثلا 1/5 کلیدهای RSA به همون سطح امنیت برسه

----------


## SZsXsZS

> شما هم که انگلیسیت بد نیست برو تحقیق کن و ببین چطوری دنیا داره با داده کاوی اطلاعات رمز شده شما رو تحلیل میکنه


منکه نشنیدم و توی منبع معتبری نخوندم که چکار میکنن  :متفکر: 
شاید شما اشتباه فهمیدی اشتباه خوندی ترجمه کردی (یا کردن)، یا منبع نامعتبر و شایعه ای چیزی بوده.
امروزه روز مطالب اشتباه و شایعات و چیزهای گمراه کننده زیاده!
البته خیلی از رمزگذاری هایی که هست بعلت اینکه اصولش رعایت نمیشه و اشتباهاتی توش هست، هم در طراحی و هم در پیاده سازی، و خیلی ها توسط افرادی که تخصص و صلاحیت کافی نداشتن صورت گرفته، ضعف هایی دارن که قابل بهره برداریه. بارها از اینطور مسائل بوده. اما کد اصولی و بی نقص اگر باشه شما تونستی یک سند و نمونه ارائه بده ببینم کسی چکار میتونه بکنه باهاش  :چشمک: 

خود بنده الگوریتم هایی که نوشتم بارها بهبود دادم و ضعف و نقص های اونا رو برطرف کردم. از بعضی مسائل و ضعف ها البته از قبل اطلاع داشتم ولی یا حال و وقتش رو نداشتم یا خیلی جدی نگرفته بودم بهرحال اون زمان انجام ندادم، چون خیلی وقتا تحقیق و تحلیل و و پیاده سازی درست این همه جزییات و پیچیدگی کار واقعا سختیه. بعضی موارد هم بعدا تازه فهمیدم یا اینکه متوجه نیاز بیشتری برای جدی گرفتن اونا شدم. اینقدر این علم گسترده و پیچیده است و پر از جزییات و ظرافت که آدم سالها طول میکشه تا به حد تسلط خوبی برسه.

امنیت همینطوره که دائم مسابقه بین نفوذ و امن کردن برقراره. هیچوقت هم نمیشه امنیت رو 100% تضمین کرد. حتی بزرگترین متخصصان هم نمیتونن. خطاهای انسانی و موارد غیرمنتظره بهرحال همیشه میتونن پیش بیان. ولی اینطورها کشکی هم که شما میگید نیست عزیز جان! خیلی حساب شده تر و مطمئن تر از اینه، اگر درستش رو بفهمی و استفاده کنی. اشکال اینه اکثریت موارد طراحی و پیاده سازی ضعف دارن که یا بخاطر کمبود دانش و احاطه به علم امنیت و رمزنگاری بوده یا بهرصورت اهمال و کم کاری یا شاید براشون اصلا صرف نمیکرده مهم نبوده رسوندن امنیت به حداکثر!




> شاید برات معلوم بشه صحبت من در رابطه با چیه و به یک کلید 128 بیتی متقارن که با متد Rijndael نوشتی اینقدر افتخار نکنی عزیزم


تصور شما از امنیت کلید 128 بیتی متقارن کاملا اشتباه است دوست عزیز و در تاپیک دیگر مطرح کردی جواب دادم!
128 بیت متقارن برای عمدهء کارهای معمولی کاملا کفایت میکنه و از حد تصورت هم خیلی امن تره! در همین 128 بیت جای زیادی برای احتیاط گذاشتن (بقول معروف security margin داره). تنها تهدید جدی که علیه 128 بیت وجود داره کامپیوترهای کوانتمی است که اونم هنوز جدی نشده و خیلی ها حتی شک دارن کامپیوترهای کوانتمی که بقدر کافی بزرگ و پرقدرت باشن که بتونن کلیدهای 128 بیتی رو بشکنن اصولا قابل ساخته شدن باشن (بخاطر یکسری مشکلات و مسائل پیچیدهء علمی که سر راه هست - وگرنه رایانهء کوانتمی در مقیاس کوچک و آزمایشگاهی ساخته شده، ولی مشکل در مقیاس های بزرگ واقعی است که وجود داره).
نهایت خیلی وسواس داری، امنیت اطلاعاتت اهمیت جدی امنیت ملی داره، یا نیاز به امنیت داده های رمز شده برای طولانی مدت (مثلا بیشتر از 10 یا 20 سال) داری میتونی از کلید 256 بیتی استفاده کنی، ولی معمولا این 256 بیت که میگن بیشتر برای تبلیغات و از جنبهء روانی است که در عمل استفاده میشه و تاثیر داره و عملا یا نیازی نیست یا بخاطر ضعف های متعدد دیگری که در جاهای دیگر زنجیر امنیتی وجود داره بی فایده است. اگر هم چیزی واقعا امنیت خیلی زیادی برای طولانی مدت بخواد، شخصا روش پیشرفته تری پیاده میکنم که بیشتر از این تمهیدات امنیتی داشته باشه و بنظر بنده استفاده از 256 بیت به تنهایی کمه (یک اطلاعات و ایده هایی در این مورد دارم).




> در ضمن اگر تعریف شما از متدهای مدرن واقعا استفاده از حالت هایی مثل cbc هست که تولید سال 1976 بوده بهتره خوتون رو آپدیت کنید


درسته میدونم مد CBC قدیمی است، و همینطور الگوریتم AES هم قدیمیه، ولی اطلاعات بنده بروز هست و میدونم که با اینحال هنوزم امنیت کافی رو دارن. هنوز هیچ ضعف جدی ای در مد CBC یا الگوریتم AES پیدا نشده. البته در بعضی موارد خاص ضعف های کم و بیش جدی هست که اونا موارد خاصه و داستان خودش رو داره، مثلا حمله های side channel روی AES قوی هستن چون زمانی که AES ساخته شد این روشهای حمله هنوز آنچنان شناخته و مورد توجه نبودن و AES برای امنیت در مقابل اونها طراحی نشده. البته اینطور حمله ها شرایط خودش رو میطلبه و هرجایی و هرکسی نمیتونه انجام بده؛ همینطور جلوگیری کامل ازشون هم خیلی سخته و انواع زیادی داره که سیستمی که بخواد در برابر این حمله ها به خوبی امن بشه خیلی تمهیدات دیگر هم نیاز داره و فقط بحث AES نیست. مثلا میتونن از طریق امواج الکترومغناطیس بخشهای مختلف سخت افزار، مثلا کیبورد یا CPU و اجزاء و مدارهای دیگر کامپیوتر، همچنین از طریق اندازه گیری دقیق و تحلیل نوسانات جریان برق مصرفی، اطلاعات حساسی مثل پسوردها و کلیدها رو سرقت کنن (حتی از فاصلهء 10 متری و پشت دیوار)، این امواج حتی ممکنه از طریق کابل های برق به مسافت دورتری هم منتقل بشن.
الان الگوریتم ها و مدهای جدیدتری هم آمده که خصوصیات برتری دارن و مثلا یکیش همین که امنیت در برابر side channel attack درشون لحاظ شده، البته فقط بخش مربوط به خودشون رو انجام میدن و مثلا امنیت کیبورد و بقیهء سخت افزارهای شما که بر عهدهء الگوریتم رمزنگاری نیست، ولی الگوریتم های جدید هم یکسری ابهامات و دردسرهای خودشون رو دارن، مثلا مشکل ساپورت و سازگاری هست که مسلما استفاده از الگوریتم های جا افتاده که تقریبا هرجایی در هر زبان و کتابخانه و سیستمی ساپورت میشن مزایای فنی زیادی داره، یک مسئلهء دیگر اینکه اصولا خود سابقه و میزان تحلیل های امنیتی تخصصی که روی یک الگوریتم شده یک معیار مهم برای اطمینان از امنیت بالای اون محسوب میشه، و هیچ الگوریتمی تاحالا به اندازهء AES مورد تحلیل تخصصی قرار نگرفته! (ضمنا AES128 بیشتر از AES256 بررسی و تحلیل تخصصی شده) الگوریتم های جدید چون اینقدر سابقه ندارن و در عمل محک کافی نخوردن و تحلیل نشدن و دشمنان جدی خطرناکی نداشتن، نسبت به امنیت اونها مقداری ابهام وجود داره، اما بهرحال به مرور به این الگوریتم ها و مدها کوچ و سویچ صورت میگیره. بهرحال برای من و شما و کاربردهای معمولی اینقدری عجله ای نیست و گفتم که در کاربردهای عادی همین AES128-CBC کفایت میکنه و خیلی هم امنه، مگر اینکه اشکالی در طراحی یا پیاده سازی در بخش دیگری باشه (که معمولا اینطوره)، اعم از سخت افزار و نرم افزار، و این هم ربطی به الگوریتم و طول کلید رمزنگاری شما نداره.

----------


## prans68

خب الگوریتم های رمزنگاری مدرن همینطور هستن دیگه!
مثلا شما با AES در مد CBC با یک کلید ثابت و دیتای ثابت هر چند بار هم رمز کنی هر بار خروجی کاملا متفاوت خواهد بود.
به این خاصیت Probabilistic encryption گفته میشه و هدفش جلوگیری از نشت اطلاعاته.
 علتش جلوگیری از انتشار خطا هست چون با انتشار خطا میشه الگوریتم رمز و ریورس کرد . شایدم فرمایش شما از نشت اطاعات همون انتشر خطا باشه ولی تو دنیای تخصصی رمزنگاری ما انتشار خطا میگیم - موفق باشید

----------


## charcharkh

بی خیال بابا صلوات بفرسیتد 
اگر واقعا میخواهید چیزی یاد بگیرید یا یاد بدهید دیگه این همه مشاجره نیاز نداره برادر من عزیز من  :چشمک:

----------


## golbafan

> تصور شما از امنیت کلید 128 بیتی متقارن کاملا اشتباه است دوست عزیز و در تاپیک دیگر مطرح کردی جواب دادم!
> 128 بیت متقارن برای عمدهء کارهای معمولی کاملا کفایت میکنه و از حد تصورت  هم خیلی امن تره! در همین 128 بیت جای زیادی برای احتیاط گذاشتن (بقول  معروف security margin داره). تنها تهدید جدی که علیه 128 بیت وجود داره  کامپیوترهای کوانتمی است که اونم هنوز جدی نشده و خیلی ها حتی شک دارن  کامپیوترهای کوانتمی که بقدر کافی بزرگ و پرقدرت باشن که بتونن کلیدهای 128  بیتی رو بشکنن اصولا قابل ساخته شدن باشن (بخاطر یکسری مشکلات و مسائل  پیچیدهء علمی که سر راه هست - وگرنه رایانهء کوانتمی در مقیاس کوچک و  آزمایشگاهی ساخته شده، ولی مشکل در مقیاس های بزرگ واقعی است که وجود  داره).
> نهایت خیلی وسواس داری، امنیت اطلاعاتت اهمیت جدی امنیت ملی داره، یا نیاز  به امنیت داده های رمز شده برای طولانی مدت (مثلا بیشتر از 10 یا 20 سال)  داری میتونی از کلید 256 بیتی استفاده کنی، ولی معمولا این 256 بیت که میگن  بیشتر برای تبلیغات و از جنبهء روانی است که در عمل استفاده میشه و تاثیر  داره و عملا یا نیازی نیست یا بخاطر ضعف های متعدد دیگری که در جاهای دیگر  زنجیر امنیتی وجود داره بی فایده است. اگر هم چیزی واقعا امنیت خیلی زیادی  برای طولانی مدت بخواد، شخصا روش پیشرفته تری پیاده میکنم که بیشتر از این  تمهیدات امنیتی داشته باشه و بنظر بنده استفاده از 256 بیت به تنهایی کمه  (یک اطلاعات و ایده هایی در این مورد دارم).


اگر نظر شما اینه که AES 256 صرفا تبلیغاته که دیگه هیچی...
اما بهتره بدونید فعلا فقط این نوع از 256 AES تونسته (البته اون هم فقط در مدل CBC و البته اخیرا مدل ترکیبی GCM) در مقابل کامپیوترهای کوانتومی مقاونت نشون بده و نه اون دو مدل دیگه (بیت های کمتر شکست خوردن)





> درسته میدونم مد CBC قدیمی است، و همینطور الگوریتم AES هم قدیمیه، ولی اطلاعات بنده بروز هست و میدونم که با اینحال هنوزم امنیت کافی رو دارن. هنوز هیچ ضعف جدی ای در مد CBC یا الگوریتم AES پیدا نشده. البته در بعضی موارد خاص ضعف های کم و بیش جدی هست که اونا موارد خاصه و داستان خودش رو داره، مثلا حمله های side channel روی AES قوی هستن چون زمانی که AES ساخته شد این روشهای حمله هنوز آنچنان شناخته و مورد توجه نبودن و AES برای امنیت در مقابل اونها طراحی نشده. البته اینطور حمله ها شرایط خودش رو میطلبه و هرجایی و هرکسی نمیتونه انجام بده؛ همینطور جلوگیری کامل ازشون هم خیلی سخته و انواع زیادی داره که سیستمی که بخواد در برابر این حمله ها به خوبی امن بشه خیلی تمهیدات دیگر هم نیاز داره و فقط بحث AES نیست. مثلا میتونن از طریق امواج الکترومغناطیس بخشهای مختلف سخت افزار، مثلا کیبورد یا CPU و اجزاء و مدارهای دیگر کامپیوتر، همچنین از طریق اندازه گیری دقیق و تحلیل نوسانات جریان برق مصرفی، اطلاعات حساسی مثل پسوردها و کلیدها رو سرقت کنن (حتی از فاصلهء 10 متری و پشت دیوار)، این امواج حتی ممکنه از طریق کابل های برق به مسافت دورتری هم منتقل بشن.
> الان الگوریتم ها و مدهای جدیدتری هم آمده که خصوصیات برتری دارن و مثلا یکیش همین که امنیت در برابر side channel attack درشون لحاظ شده، البته فقط بخش مربوط به خودشون رو انجام میدن و مثلا امنیت کیبورد و بقیهء سخت افزارهای شما که بر عهدهء الگوریتم رمزنگاری نیست، ولی الگوریتم های جدید هم یکسری ابهامات و دردسرهای خودشون رو دارن، مثلا مشکل ساپورت و سازگاری هست که مسلما استفاده از الگوریتم های جا افتاده که تقریبا هرجایی در هر زبان و کتابخانه و سیستمی ساپورت میشن مزایای فنی زیادی داره، یک مسئلهء دیگر اینکه اصولا خود سابقه و میزان تحلیل های امنیتی تخصصی که روی یک الگوریتم شده یک معیار مهم برای اطمینان از امنیت بالای اون محسوب میشه، و هیچ الگوریتمی تاحالا به اندازهء AES مورد تحلیل تخصصی قرار نگرفته! (ضمنا AES128 بیشتر از AES256 بررسی و تحلیل تخصصی شده) الگوریتم های جدید چون اینقدر سابقه ندارن و در عمل محک کافی نخوردن و تحلیل نشدن و دشمنان جدی خطرناکی نداشتن، نسبت به امنیت اونها مقداری ابهام وجود داره، اما بهرحال به مرور به این الگوریتم ها و مدها کوچ و سویچ صورت میگیره. بهرحال برای من و شما و کاربردهای معمولی اینقدری عجله ای نیست و گفتم که در کاربردهای عادی همین AES128-CBC کفایت میکنه و خیلی هم امنه، مگر اینکه اشکالی در طراحی یا پیاده سازی در بخش دیگری باشه (که معمولا اینطوره)، اعم از سخت افزار و نرم افزار، و این هم ربطی به الگوریتم و طول کلید رمزنگاری شما نداره.


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

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




> مثلا  میتونن از طریق امواج الکترومغناطیس بخشهای مختلف سخت افزار، مثلا کیبورد  یا CPU و اجزاء و مدارهای دیگر کامپیوتر، همچنین از طریق اندازه گیری دقیق و  تحلیل نوسانات جریان برق مصرفی، اطلاعات حساسی مثل پسوردها و کلیدها رو  سرقت کنن (حتی از فاصلهء 10 متری و پشت دیوار)، این امواج حتی ممکنه از  طریق کابل های برق به مسافت دورتری هم منتقل بشن.


توصیه میکنم فیلم های تخیلی کمتر ببین یا حد اقل مباحث مربوط به نسبت سیگنال به نویز رو مطالعه کن...
فکر میکنم اونور آبی ها خیلی توی ذهنت گنده هستن همونطور که ایرانی ها در ذهنت کوچک هستند

----------


## golbafan

این مبحث رو هم بهت پیشنهاد میکنم مطالعه کنی:
statistical analysis encrypted data


و همچنین روش های مبتنی بر tau statistic test

----------


## SZsXsZS

> اگر نظر شما اینه که AES 256 صرفا تبلیغاته که دیگه هیچی...
> اما بهتره بدونید فعلا فقط این نوع از 256 AES تونسته (البته اون هم فقط در مدل CBC و البته اخیرا مدل ترکیبی GCM) در مقابل کامپیوترهای کوانتومی مقاونت نشون بده و نه اون دو مدل دیگه (بیت های کمتر شکست خوردن)


دوست عزیز من همهء اینا رو قبلا خوندم میدونم!
رایانه های کوانتمی باعث میشن امنیت کلیدهای الگوریتم های متقارن نصف بشه.
از اونجایی که حداقل امنیت استاندارد امروزه 128 بیت است و نصف که بشه میشه 64 که قابل شکستن است، پس مجبوریم از طول کلید دو برابر، یعنی 256 بیت استفاده کنیم تا به امنیت 128 بیت امروزه در زمان رایانه های کوانتمی دست پیدا کنیم. وگرنه AES128 و AES256 هر دو یک الگوریتم هستن و فقط در طول کلید و مقداری هم جزییات خاصی تفاوت میکنن.
و اما چون هنوز رایانه های کوانتمی اونقدر قدرتمندی که بتونن خطر جدی برای AES128 محسوب بشن ساخته نشدن، و در سر راه این کار مشکلات علمی و فنی بزرگی وجود داره، AES128 هنوز امنه. حداقل برای کاربردهای عادی مشکلی نداره.
حالا من نمیدونم با کجای این حرفا دقیقا چرا مشکل دارید، بفرمایید!



> نمیدونم چرا قانع نمیشی؟
> مشکل اینه که داری میبینی همه با نظرت مخالف هستند اما بجای قبول اشتباهاتت فکر میکنی بقیه اشتباه میکنن و در ایران فقط شما درست میگی
> اوکی... واقعا میخوام برام شرح بدی که چظوری میتونی با رمزنگاری متقارن یک تروجان بنویسی و امنیت اطلاعاتی رو که برمیداری و مسیر مقصد رو تضمین کنی؟؟؟
> 
> البته منکر این قضیه نیستم که شما برای رمزنگاری فایلهای خودت هرکاری بکنی از نظر من مشکل نداره (یک چیزی شبیه winrar درست کنی) ولی وقتی بخوای فایلهات رو بفرستی توی دل خطر اونوقت نمیتونی به همین راحتی کارت رو انجام بدی چون با یک دیباگر ساده و یک دامپر حافظه روی سیستم عامل میشه الگوریتم و کلید شما رو بدست اورده و بدون اینکه بفهمی رصد معکوس علیه تو انجام بشه


منکه نفهمیدم دقیقا چی میگی کلی گویی و مبهم گویی میکنی و ظاهرا به مباحث دیگری پرداختی!
همه با نظر من مخالف هستن؟ کدوم همه؟ اصلا بحساب میان؟ مگه اینجا کسی تخصص و صلاحیت تشخیص و اظهار نظر در علم رمزنگاری رو داره؟ جک میگی؟  :لبخند: 
شما یک نفر هستی که حالا هم کم آوردی و مباحث فرعی و بی ربط با موضوع اصلی رو پیش میکشی.
بنده اینجا روی یک چیز خاص و مشخص بحث میکنم، بحث دیگه با شما ندارم.

----------


## golbafan

> اصلا بحساب میان؟ مگه اینجا کسی تخصص و  صلاحیت تشخیص و اظهار نظر در علم رمزنگاری رو داره؟


گاهی اوقات هم یکی مثل شما پیدا میشه که حد اکثر 5 ماه (یعنی مهر 95) با رمزنگاری آشنا شده و ادعا میکنه سالها داره کار میکنه...
حد اکثر عملی هم که انجام داده اومده با استفاده از کتابخانه های اوپن سورس و آماده، یک برنامه رمز کننده فایل نوشته و توابع کتابخانه رو فراخوانی کرده
البته حرف هم تا دلت بخواد میتونه بزنه :چشمک: 
خیلی هم دوست داده تو محیط کارش بهش بها بدن و مثلا معاون رئیس بشه :قهقهه: 
چون کار مفیدی هم بلد نیست بکنه برای همین بیکار توی شرکت ول میچرخه.
 آخر هنرش نوشتن یک ریموت کنترل در شرکته و البته فکر میکنه شاخ غول شکونده
با اینحال بدش نمیاد به شرکتش خیانت کنه و کارهای داخل رو بیرون بفروشه...

افتخارشم اینه که کارش از رییسش آسونتره و کمتر زحمت رو دوششه

بهر حال من فقط میتونم اظهار تاسف بکنم چون:

آن کس که نداند و نداند که نداند......         در جهل مرکب ابد الدهر بماند...

----------


## SZsXsZS

> حد اکثر عملی هم که انجام داده اومده با استفاده از کتابخانه های اوپن سورس و آماده، یک برنامه رمز کننده فایل نوشته و توابع کتابخانه رو فراخوانی کرده


شما تا اینجا بی سوادی خودت رو در چند مورد حرفهایی که زدی نشون دادی! (مثلا مقایسهء طول کلید الگوریتم های متقارن با نامتقارن)
البته شاید انصاف نباشه بگم بی سواد، باید بگم کم سواد  :چشمک: 
اون کتابخانه هم یک بخشی از کار است. بنده چند تابع و الگوریتم جانبی رو بهش اضافه کردم (مثلا MAC, HKDF, CSPRNG) و یکسری جزییات و تمهیداتی که بنظرم مهم هستن و دانستن و انجام درست همین موارد کار کوچکی نیست و هرکسی دانشش رو نداره. کما اینکه کدهای ضعیف و اشتباه تاحالا زیاد دیدم و توی نت هم زیاده. درواقع بنده هم اینها رو از خودم اختراع نکردم، بلکه در نت تحقیق و مطالعه کردم و از چندین منبع چند کد و روش رو که تشخیص دادم از همه درست تر هستن جمع آوری و با هم ترکیب کردم، البته چندتا ابتکار جزیی هم خودم داشتم. ولی کار بیشتر از این رو فقط متخصصان بزرگ این رشته صلاحیت دارن و میتونن با اطمینان کافی انجام بدن، که بنده از ابتدا هم گفتم علم و درجهء بنده در این رشته کامل نیست، چون خیلی گسترده و پیچیده و علمی است و مثلا ریاضیات قوی هم نیاز داره خیلی از مباحث اون. البته همین الان و چند روز پیش هم در حال مطالعهء چند مورد از این مباحث بودم که شاید بتونم باز هم پیشرفت بیشتری در این رشته بکنم. ولی شما یا دیگران چی دوست عزیز؟ فکر نمیکنم یک صدم بنده اهل مطالعه و یادگیری اصولی بوده باشید و به خودتون زحمت این کارها رو بدید! بعد میاید با من بحث و تمسخر میکنید! میشه بپرسم شما تخصصتون چی هست و چه چیزهایی چطوری مطالعه کردید مثلا؟




> آخر هنرش نوشتن یک ریموت کنترل در شرکته و البته فکر میکنه شاخ غول شکونده


شما همون رو هم نمیتونی بنویسی، اگر بنویسی پر از باگ و اشکال، و همچنین ضعف های امنیتی.
به کوچکی ظاهری که نیست، هزار جور جزییات و مشکل داره. اتفاقا اینطور چیزها رو هرکسی نمیتونه بصورت اصولی بنویسه. حالا من در بخش امنیتش هم خوب کار کردم و این جنبه طبیعتا برام خیلی مهم بود.
برنامه های دیگر هم در این زمینه هست، خیلی ها نوشتن، ولی شرط میبندم از بیشترشون میشه ایرادهای قابل توجهی درآورد.
برنامه با برنامه ظاهرش ممکنه شبیه باشه، ولی توی کار و جزییات خیلی مسائل هست.
یه برنامه ریموت کنترل هم اتفاقا برنامهء پیشرفته ای محسوب میشه، بخاطر اینکه چند حیطه ای است و کلی دانش و تخصص گسترده میخواد، مثلا باید سمت سرور بلد باشی، سمت کلاینت بلد باشی، به سیستم عامل و خط فرمان حتی من زیاد نیاز داشتم استفاده کردم و نکات ریز و حرفه ای زیاد داره، باید امنیت و رمزنگاری بلد باشی، ...




> با اینحال بدش نمیاد به شرکتش خیانت کنه و کارهای داخل رو بیرون بفروشه...


نمیدونم چه اصراری داری چرندیات سر هم کنی دوست عزیز!
کار بنده در شرکتمون برنامه نویسی نیست و اصلا شرکت مربوط به این چیزها نمیشه. این برنامه رو بصورت شخصی بخاطر خودم و راحت کردن کار خودم و البته علاقه و کسب مهارت و محک زدن دانش و توانایی های خودم، بیشتر هم در خانه و وقت آزادم نوشتم. چه ربطی به شرکت و خیانت و این حرفا داره؟!!
تازه ازش تاحالا چند مورد برای کمک به کار شرکت هم استفاده کردم که به نفع کارفرما بوده، ولی اون خبر نداره قضیه چیه و مثلا فلان کار رو با برنامه ای که خودم نوشتم انجام دادم.




> افتخارشم اینه که کارش از رییسش آسونتره و کمتر زحمت رو دوششه


خب مگه چه اشکالی داره؟
بنده قدری کار میکنم که بنظرم ازشش رو داشته باشه بصرفه، و همونقدر هم حقوق میگیرم.
اگر به نظر دیگران یا کارفرما باشه که دمار از روزگار آدم درمیارن و استثمارش میکنن!
کار هم صرفا یک توافق دو طرفه است که البته خیلی بخشها از این توافق بصورت ضمنی یا با کشاکش منافع و خواسته های شخصی دو طرف و بر اثر یک تعادل قدرت دو طرف شکل میگیره، رئیسم از کار من راضیه فکر میکنه براش کافیه در مقابل پولی که بهم میده، منم راضیم. اگر براش صرف نمیکرد یا بهرصورت اینطور فکر نمیکرد که خب منو استخدام نمیکرد بهم حقوق نمیداد. ولی اگر فقط به اون بود و هرچی میگفت من گوش میکردم که کلی کار ازم میکشید و حقوق کمی هم میداد، و آخرش هم هیچی به هیچی! ولی من از ابتدا چون دیدم اون نمیخواد یا نمیتونه شاید اصلا براش صرف نمیکرد حقوق بالاتری بده، حاضر نشدم زیاد کار کنم، چون ارزشش رو نداشت منصفانه نبود برام صرف نمیکرد. از اون وقت و انرژی آزادم هم استفادهء مفید کردم برای خودم و کلی چیز جدید یاد گرفتم در برنامه نویسی و خیلی زمینه های دیگر، و به تخصص و توانایی های خودم اضافه کردم که فردا پشتوانهء زندگی و کار و درآمد خودم باشه، و البته از این افزایش دانش و توانایی بهرحال شغل فعلی و رئیسم هم منتفع شدن بنوعی!
کار کردن تنها یا بهترین فعالیت مفید نیست لزوما! اگر مثل من استعداد و علاقه و همت علم و قدرتهای درونی رو داشته باشی، یادگیری و افزایش قدرت ممکنه خیلی بیشتر از کار و درآمد کمی بیشتر به درد خودت بخوره، و حتی ممکنه در نهایت به درد دیگران و جامعه هم بیشتر بخوره.
من اتفاقا زیاد کار میکنم، ولی کارم یادگیری و پیشرفته!
کار دیگران صرفا کاری هست که به درآوردن پول و پیشرفت مادی منجر میشه. کار من کاریه که به پیشرفت وجود خودم منجر میشه.

----------


## golbafan

من اگر جای شما بودم میرفتم تایپیست میشدم...
ماشاالله متن های طولانی...




> شما تا اینجا بی سوادی خودت رو در چند مورد حرفهایی  که زدی نشون دادی! (مثلا مقایسهء طول کلید الگوریتم های متقارن با  نامتقارن)


من کلیدهای متقارن و نا متقارن رو از نظر امنیت مقایسه نکردم عزیز دل
یکبار دیگه جمله من رو با دقت بخون
گفتم در دنیایی که رمز های 2048 نامتقارن رو میشکونن به رمز متقارن 128 دل خوش نکن
منتها برداشت شما سطحی بود و مثل همیشه فکر کردید دارید درست قضاوت میکنید

درسته که پیدا کردن رمز های متقارن AES خیلی زمانبره ولی این مال موقعی هست که نرم افزار رمز کننده و یا سیستم عامل رمز کننده 
در دسترس نباشه و شما بخوای صرفا با روش b-force کلید رو پیدا کنی 
(که البته در پست های قبلی روش های سریعتر رو هم اشاره کردم که روی اردرهای کمتر از 14 برای حتی AES256 جواب داده)

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

----------


## golbafan

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

----------


## golbafan

یک نکته هم برای اطلاعات عمومیت میگم
در حال حاظر NSAو  NIST دارن به وضعیت دنیا بعد از فراگیر شدن کامپیوترهای کوانتومی فکر میکنن
و از حالا فراخوان دادن برای کشف روشهای جدید
میدونی وقتی چندسال دیگه هر بچه ای تو خونش یک رایانه کوانتومی داشته باشه چه وضعی برای امنیت جهان پیش میاد؟
فکر میکنی حتی دیگه میشه به AES256 اعتماد کرد؟؟؟

----------


## SZsXsZS

> گفتم در دنیایی که رمز های 2048 نامتقارن رو میشکونن به رمز متقارن 128 دل خوش نکن


خب این حرف زیاد معنی نمیده و مبنای روشن و محکمی نداره!
اولا که کلیدهای رمزنگاری نامتقارن، مثلا RSA، از اولش مقداری ضعیف انتخاب شدن، که فکر میکنم علت این امر حجیم بودن و سنگین بودن این الگوریتم و کلیدهاش است، بخاطر همین سعی کردن از حداقل طول کلیدی استفاده کنن که امنیت کافی رو برای زمان خودش تامین میکرد.
همین 2048 بیت هم هنوز امنیتش به اندازهء 128 متقارن نمیرسه، و حدود 112 میشه، ولی هنوزم شکستنش در حال حاضر ممکن نیست و چیزی از اینکه کسی به این کار حتی نزدیک شده باشه نشنیدم.
گفتم که، تهدید جدی در مقابل 128 بیت تنها رایانه های کوانتمی هستن که اونم هنوز ساخته نشده، ولی با این حال فرایند انتقال به رمزهای قوی تر کم و بیش شروع شده چون ممکنه مثلا تا 10 سال یا 20 سال دیگه رایانه های کوانتمی کاملا محقق بشن. البته کسی نمیدونه تضمین زیادی وجود نداره، شاید کمی زودتر، ولی شاید هم خیلی دیرتر، و حتی شاید هیچوقت رایانه های کوانتمی محقق نشن (البته با سابقه و سرعت پیشرفت علم و فناوری بشر شاید این حرف زیاد درست نباشه و بعیده نتونن این کار رو حتی مثلا تا 100 سال دیگر هم بکنن).
فعلا 128 بیت خیلی بیشتر از چیزی که شما فکر میکنی امنه!
دل خوش نکن و این حرفا چندان معنی نمیده.
فعلا استفاده میکنیم هرکس هم ادعاش میشه بشکنه نشون بده خب!
هروقت هم نیاز شد خب سویچ میکنیم به 256. کار سختی نیست. سریع هم انجام میشه. همین کدهام رو من میتونم در عرض یک شب به 256 ارتقا بدم! منتها دیدم هیچ دلیل معقول کافی نداره فعلا. شما الان نگران رایانه های کوانتمی هستی که هنوز در حد تخیل هستن، ولی من به این توجه دارم که الگوریتم AES128 بیشتر از AES256 مورد Cryptanalysis قرار گرفته و بنابراین نمیشه دل به بیشتر بودن 256 از 128 خوش کرد، و در واقع میشه گفت در حال حاضر AES128 یجورایی حتی شاید امن تر از 256 باشه! چون اگر بحث brute-force باشه، به این زودی ها درمورد هیچکدام نمیشه انجام داد و عملا در این زمینه بین 128 و 256 فرقی وجود نداره، ولی اگر بحث ضعف در خود الگوریتم باشه شکستنش امکان داره و طول کلید بیشتر لزوما باعث جلوگیری از این عمل نمیشه.




> درسته که پیدا کردن رمز های متقارن AES خیلی زمانبره ولی این مال موقعی هست که نرم افزار رمز کننده و یا سیستم عامل رمز کننده 
> در دسترس نباشه و شما بخوای صرفا با روش b-force کلید رو پیدا کنی


خب چه ربطی به بحث ما داره؟
شما اصلا بیا یه trojan horse روی سیستم نصب کن، یک key logger، ...، خب وقتی اینقدر دسترسی به سیستمی داشته باشی که دیگه امنیت معنا نداره و رمزنگاری بیهوده است.
دسترسی اگر کامل هم نباشه ولی ضعف و حفره ای جایی باشه بازهم نفوذگر میتونه ازش استفاده کنه، ولی بازم به بحث رمزنگاری چه ربطی داره؟
ما با این فرض کار میکنیم که سیستم بنوعی دست هکر نیافتاده و ضعف جدی ای در جای دیگر نیست.




> که البته در پست های قبلی روش های سریعتر رو هم اشاره کردم که روی اردرهای کمتر از 14 برای حتی AES256 جواب داده


شما همش حرفهای مبهم و کلی میزنید و ادعا میکنید و میگید اشاره کردم! به چی اشاره کردید دقیقا؟ یه منبع و سندی چیزی بدید بشه صحت و سقم و جزییاتش رو بررسی کرد که دقیقا منظور چیه از طریق چه چیزی عمل شده چه ضعفی کجا در کار بوده و چرا.




> در دنیای ارتباطات کافیه یک سر قضیه دست عموم باشه تا با روشهایی مثل دامپینگ سیستم کلید رو بدست بیارن
> و از اونجایی که کلید رمز نگاری و رمز گشایی باهم برابره میشه پیامها رو براحتی باز کرد... 
> این یکی از کارهای روزمره تیم ماست


خب دیگه رفتی توی بحث امنیت و هک و نفوذ بطور کلی.
والا بنده اینجا بحث هک نداشتم و ندارم.
این چیزا هم از اهمیت و کاربرد رمزنگاری چیزی کم نمیکنه. همین امنیت و امکاناتی هم که هست، اگر علم رمزنگاری نبود شدنی نبود.
البته بقیهء بخشهای امنیت هم جزییات و علم خودش رو داره و گسترده است و بعضا راهکارهایی برای این روشهای نفوذ هم که میگی وجود دارن، اما خیلی سیستمها ضعف دارن، یعنی اگر بقدر کافی اهمیت داده میشد و وقت و هزینه میکردن کار برای هکرها واقعا سخت تر میشد، ولی خب معمولا چون هزینه بر هست و سخته و از طرفی بنظر طرفها اون کاربرد و سیستم و داده ها اهمیت خیلی بالایی ندارن بیخیالش میشن.

----------


## golbafan

راستی یاد اون جمله جالب شما افتادم که گفتی از طریق نوسانات برق میشه کلید رمز رو پیدا کرد
واقعا دیدم سواد کمی دارم

----------


## SZsXsZS

> راستی یاد اون جمله جالب شما افتادم که گفتی از طریق نوسانات برق میشه کلید رمز رو پیدا کرد
> واقعا دیدم سواد کمی دارم


بهش میگن Power analysis که زیرمجموعه/نوعی از side channel attack است.

----------


## golbafan

شما که تنها انگلیسی دان در ایرانی یک نگاهی به ویکی پیدا بنداز و روشهای مبتنی بر tau رو ببین که تحقیق روز nsa هستند
همچنین سایر روشهای آماری و روشهای مبتنی بر توان 2 که روی aes با مرتبه 7 و کمتر چقدر سریع هست

----------


## golbafan

میگم فیلم زیاد میبینی حالا بگو نه...
این پاور آنالیز در حد یک ایده تخیلی 20 سال پیش بود که عملا هیچ وقت هم جواب نداده 
حتی یک مورد!!!
مخصوصا که الان رایانه ها کیفیت بهتری نسبت به قبل دارن

----------


## SZsXsZS

> شما که تنها انگلیسی دان در ایرانی یک نگاهی به ویکی پیدا بنداز و روشهای مبتنی بر tau رو ببین که تحقیق روز nsa هستند


بنده جستجو کردم و چند مطلب و منبعی رو هم بررسی کردم:
https://www.schneier.com/blog/archiv...cuments_o.html
http://www.spiegel.de/international/...a-1010361.html
ولی چیز مشخص و مطمئنی درشون پیدا نکردم. یه اشاره ها و شایعاتی هست و ظاهرا به افشاگری های اسنودن هم ربط داره، ولی خیلی کلی و مبهم هست و نمیشه مطمئن بود و چیز زیادی ازشون فهمید.
شما اگر منبع خوبی سراغ دارید یا پیدا کردید بذارید خب.



> همچنین سایر روشهای آماری و روشهای مبتنی بر توان 2 که روی aes با مرتبه 7 و کمتر چقدر سریع هست


دوست عزیز این چیزهایی که میگی برای بنده که این همه مطالب تخصصی رمزنگاری خوندم مبهمه نمیفهمم دقیقا منظورت چیه.
مثلا توان 2 یک حرف خیلی خیلی کلی و مبهم است. دقیقا یعنی چی؟  :متفکر: 
معمولا اصطلاحات خیلی تخصصی تر و دقیق تر و روشن تری برای توصیف اینطور مسائل هست، نه اینکه بگیم توان دو!!
حداقل یه منبع بذارم ببینم جریان چیه اون چیزی که میخوای بگی دقیقا چی هست!
البته فکر کنم منظورت از مرتبه همون Round باشه. چرا از این ترجمه های فارسی که اصلا سر و تهشون معلوم نیست استفاده میکنید! خیلی هم مبهم هستن شاید اصلا مناسب و درست نباشن. مرتبه دقیقا یعنی چی؟ اگر میگفتید «دور» مشخص بود، ولی منظور از مرتبه دقیقا چیه؟
کمترین تعداد Round که AES در حالت واقعی و استاندارد داره 10 است. اگر حمله ای با تعداد دور 7 جواب میده یعنی هنوز روی AES ای که من و شما و همه استفاده میکنن واقعا کار نمیکنه، بلکه روی یک نسخهء ضعیف شده از AES عمل میکنه. معمولا برای تحلیل و طراحی حمله ها تعداد دورها رو کاهش میدن تا کار راحت و شدنی بشه، بعد اگر بتونن سعی میکنن حمله رو به دورهای کامل تعمیم بدن، که البته در خیلی موارد نمیتونن، ولی اگر حمله ای باشه که روی تعداد دورهای قابل توجهی باشه، مثلا همین 7 قابل توجه است، و اگر مقداری که امنیت رو پایین میاره و سریعتر از brute-force میکنه قابل توجه باشه (یعنی جزیی نباشه مثلا بگید 2 به توان 126 این زیاد مهم نیست)، اونوقت وضع امنیت اون الگوریتم خطرناک میشه. وگرنه ما حمله های تئوریک روی الگوریتم های با تعداد دور کاهش یافته (و بنابراین تضعیف شده) زیاد داریم، ولی اکثرا در عمل خطر جدی محسوب نمیشن. بعضیا هم روی دورهای کامل قابل اعمال هستن، ولی میزانی که امنیت رو پایین میارن در حد جزیی است و بنابراین عملا خطری نداره، مثل اینکه شما از یک پارچ آب یک قاشق آب برداری چیز زیادی ازش کم نمیشه و مهم نیست.

----------


## SZsXsZS

اوه اینو الان در ویکیپدیا دیدم تعجب کردم، چون فکر کردم این قضیه tau که گفتی شایعه و hoax ای چیزی است، ولی ظاهرا شوخی نبوده:

According to the Snowden documents, the NSA is doing research on whether a cryptographic attack based on tau statistic may help to break AES.[29]

ترجمه: بر طبق اسناد اسنودن، NSA در حال تحقیق بر روی این است که آیا یک حمله بر اساس tau statistic ممکن است بتواند به شکستن AES کمک کند.

خب پس تا اینجا متوجه میشیم که NSA فقط داره تحقیق میکنه این روش شاید بتونه به شکستن AES کمک کنه. همین! چیز زیادی نیست بنظرم و همینطور بدون هیچ اطلاعات و شواهد دیگری دلیل زیادی برای نگرانی وجود نداره. خب خیلی ها تاحالا روشهای مختلفی رو برای شکستن الگوریتم های رمزنگاری بررسی کردن، و خیلی وقتا موفق نشدن! از کجا معلوم این قضیه عملی باشه؟ متن هیچ قطعیتی نداره، میگه یک تحقیق، مثل یک حدس، و تازه طرز بیانش طوری هست میگه شاید کمک کنه، نه اینکه به این راحتی ها به تنهایی بتونه AES رو بشکنه. خلاصه در حد ایده و بررسی هست. اینو همه میدونن که سازمانهای امنیتی روی این چیزا تحقیق میکنن! چیز جدیدی نیست.
تازه الان که این اسناد نشت کرده، خوبیش اینه متخصصان مستقل هم از این روش و احتمال آگاه شدن و روی این قضیه حتما تفکرها و تحقیق و بررسی هایی میکنن، و اگر این امر جدی باشه و احتمال قابل توجهی باشه که شدنی باشه، هشدار خواهند داد و شاید روشهایی برای جلوگیری ازش هم ارائه کنن، مثلا تغییراتی در AES یا سویچ به الگوریتم دیگری که در این زمینه امن تر باشه (خوشبختانه الگوریتم های دیگر با امنیت کافی کم نیست).

بعدش هم نوشته:
At present, there are no known practical attacks that would allow anyone to read correctly implemented AES encrypted data.

ترجمه: در حال حاضر هیچ حملهء شناخته شدهء عملی ای که بتواند اجازه دهد کسی داده هایی را که توسط AES به درستی پیاده سازی شده رمز شده اند بخواند وجود ندارد.

ضمنا خود این اسناد و گفته ها، اگر درست باشن، نشون میدن که حتی سازمان NSA با اون همه انگیزه و منابع انسانی و مالی فراوان که در اختیار داره، هنوز قادر نشده AES رو بشکنه؛ و این خود دلیلی است بر امنیت بالای AES و اینکه کلکی توی کارش نبوده!
حالا شما اگر واقعا نگران هستید خیلی وسواس و حساسیت دارید، راه هایی برای امنیت بیشتر هم هست اینطور نیست بگیم نمیشه از AES فراتر رفت، ولی خب این راه ها طبیعتا پیچیدگی و دشواری افزودهء خودشون رو دارن و پرفورمنس رو پایین میارن و غیره، و بنده شخصا فکر نمیکنم برای کارهای عادی اینقدر وسواس و هزینه دلیلی داشته باشه.

----------


## golbafan

> اوه اینو الان در ویکیپدیا دیدم تعجب کردم، چون فکر کردم این قضیه tau که گفتی شایعه و hoax ای چیزی است، ولی ظاهرا شوخی نبوده:
> According to the Snowden documents, the NSA is doing research on whether  a cryptographic attack based on tau statistic may help to break  AES.[29]
> ترجمه: بر طبق اسناد اسنودن، NSA در حال تحقیق بر روی این است که آیا یک  حمله بر اساس tau statistic ممکن است بتواند به شکستن AES کمک کند.
> خب پس تا اینجا متوجه میشیم که NSA فقط داره تحقیق میکنه این روش شاید  بتونه به شکستن AES کمک کنه. همین! چیز زیادی نیست بنظرم و همینطور بدون  هیچ اطلاعات و شواهد دیگری دلیل زیادی برای نگرانی وجود نداره. خب خیلی ها  تاحالا روشهای مختلفی رو برای شکستن الگوریتم های رمزنگاری بررسی کردن، و  خیلی وقتا موفق نشدن! از کجا معلوم این قضیه عملی باشه؟ متن هیچ قطعیتی  نداره، میگه یک تحقیق، مثل یک حدس، و تازه طرز بیانش طوری هست میگه شاید  کمک کنه، نه اینکه به این راحتی ها به تنهایی بتونه AES رو بشکنه. خلاصه در  حد ایده و بررسی هست. اینو همه میدونن که سازمانهای امنیتی روی این چیزا  تحقیق میکنن! چیز جدیدی نیست.
> تازه الان که این اسناد نشت کرده، خوبیش اینه متخصصان مستقل هم از این روش و  احتمال آگاه شدن و روی این قضیه حتما تفکرها و تحقیق و بررسی هایی میکنن، و  اگر این امر جدی باشه و احتمال قابل توجهی باشه که شدنی باشه، هشدار  خواهند داد و شاید روشهایی برای جلوگیری ازش هم ارائه کنن، مثلا تغییراتی  در AES یا سویچ به الگوریتم دیگری که در این زمینه امن تر باشه (خوشبختانه  الگوریتم های دیگر با امنیت کافی کم نیست).
> بعدش هم نوشته:
> At present, there are no known practical attacks that would allow anyone to read correctly implemented AES encrypted data.
> ترجمه: در حال حاضر هیچ حملهء شناخته شدهء عملی ای که بتواند اجازه دهد کسی  داده هایی را که توسط AES به درستی پیاده سازی شده رمز شده اند بخواند  وجود ندارد.


اگر هم پیدا کنند مطمئن باش لو نمیدن و اول خودشون کمال استفاده رو میبرن
اسنودن هم قرار نیست کل جزئیات پروژه های فنی اونها رو بدونه :چشمک: 

من به این نتیجه رسیدم اشکال کار شما اینه که خیلی تئوریک کارها رو دنبال میکنید و به دنیای عملی بهای کمی میدید
برای همین تصور کردید هرچی در مقاله ها و رفرنس ها خوندید خیلی دقیق هست و بی برو برگرد تئوری درستی داشته
بعید میدونم شما مقاله ISI در این زمینه ارائه کرده باشی و یا حتی مدرک معتبر زبان داشته باشی
در ضمن من منبع فارسی مناسبی هنوز ندیدم در این موارد...

----------


## SZsXsZS

> من به این نتیجه رسیدم اشکال کار شما اینه که خیلی تئوریک کارها رو دنبال میکنید و به دنیای عملی بهای کمی میدید
> برای همین تصور کردید هرچی در مقاله ها و رفرنس ها خوندید خیلی دقیق هست و بی برو برگرد تئوری درستی داشته
> بعید میدونم شما مقاله ISI در این زمینه ارائه کرده باشی و یا حتی مدرک معتبر زبان داشته باشی
> در ضمن من منبع فارسی مناسبی هنوز ندیدم در این موارد...


دوست عزیز شما خودت دوتا منبع و دلیل و شواهد حتی نیم بند هم ارائه نکردی! همش کلی گویی و مبهم گویی میکنی. و ادعاهای روی هوا. بعد از من ایراد میگیری؟
خب شما چیز بیشتری داری میتونی نمونهء عملی نشون بدی چیزی فراتر از این رو ثابت کنی نشون بده ارائه کن ببینیم واقعیت داره یا نه!
وگرنه همینطور یک بند داری فقط حرف میزنی و ادعا میکنی، اونم کاملا غیرتخصصی و حتی دوتا اصطلاح درست و کامل هم توی حرفات نیست همش قاطی پاتی و ناقص و غیراصولی!!

----------


## golbafan

> دوست عزیز شما خودت دوتا منبع و دلیل و شواهد حتی نیم بند هم ارائه نکردی! همش کلی گویی و مبهم گویی میکنی. و ادعاهای روی هوا. بعد از من ایراد میگیری؟
> خب شما چیز بیشتری داری میتونی نمونهء عملی نشون بدی چیزی فراتر از این رو ثابت کنی نشون بده ارائه کن ببینیم واقعیت داره یا نه!
> وگرنه همینطور یک بند داری فقط حرف میزنی و ادعا میکنی، اونم کاملا غیرتخصصی و حتی دوتا اصطلاح درست و کامل هم توی حرفات نیست همش قاطی پاتی و ناقص و غیراصولی!!


من روش کارم رو بطور خلاصه گفتم
قرار نیست بشینم روی شکستن کلید کار کنم
گفتم تیم ما روشهای ساده تری داره که مربوط به برداشتن کلید از روی حافظه سیستم میشه

همچنین قرار نیست من آدم همه چیز دانی باشم.
کار تیمی انجام میدیم چون نتیجش همیشه فراتر از حد باهوشترین و داناترین افراد بصورت تکی هست
روش کارمون هم scrum هست یعنی وقت خودمون رو برای اصطلاحات و تئوریهای دست و پاگیر تلف نمیکنیم و به خروجی های مفید و سریع اهمیت میدیم
به شما هم پیشنهاد میکنم اینطوری باشید

----------


## SZsXsZS

> اگر هم پیدا کنند مطمئن باش لو نمیدن و اول خودشون کمال استفاده رو میبرن
> اسنودن هم قرار نیست کل جزئیات پروژه های فنی اونها رو بدونه


بله بنده هم اینا رو میدونم، ولی بحث اینه وقتی چیزی رو نمیشه ثابت کرد و شواهد و دلایل کافی نداره خب که چی؟
شما هر الگوریتمی هم استفاده کنی، فرض اصلا خودت مخ باشی متخصص باشی به خیال خودت یک الگوریتم خیلی قوی تر استفاده کنی، همیشه همین احتمالات درمورد اون هم وجود داره و هیچکس نمیتونه هیچ تضمین مطلقی بده.
بالاترین درجهء کاری که ما میتونیم بکنیم و تضمینی که بدست بیاریم کم و بیش در همین حد هست که منابع تخصصی رو بخونیم، درک کنیم، بررسی کنیم، خودمون قضاوت کنیم، ببینیم بنظرمون ما بیشتر میفهمیم آیا میتونیم چیز بهتری طراحی و پیاده سازی کنیم یا نه...
اگر نمیتونیم که خب از همین ها که موجوده استفاده میکنیم. چه کار بیشتری میشه کرد؟
AES سالهاست استفاده شده و تاحالا کسی هیچ شواهدی چه عملی و چه تئوریک ارائه نکرده کشف نکرده که ضعف جدی درش باشه کسی یا سازمانی تونسته باشه اون رو بشکنه. وقتی ده ها متخصص طراز اول دنیا، دانشمندان و نابغه های این رشته بررسی کردن و نظرشون اینه، حالا شما میگی نه کافی نیست درست نیست؟! خب شما راهکار خودتون رو بفرمایید! لابد شما خودت تنهایی تخصص و اطلاعات و اطمینان بیشتری داری و الگوریتم خودت رو درست میکنی و ما هم باید باورت کنیم!
شما یه حرف مستند بزن یه استدلال درست و قانع کننده ارائه بده یه راهکار عملی بده بجای این همه کلی گویی و مبهم گویی و ادعاهایی که پایهء روشن و محکمی ندارن قابل اثبات نیستن. وگرنه همش ایراد گرفتن و زیر سوال بردن خالی اونم بدون پشتوانه و دلیل و شواهد و سند کافی که فایده نداره نشد کار.

----------


## golbafan

> بله بنده هم اینا رو میدونم، ولی بحث اینه وقتی چیزی رو نمیشه ثابت کرد و شواهد و دلایل کافی نداره خب که چی؟
> شما هر الگوریتمی هم استفاده کنی، فرض اصلا خودت مخ باشی متخصص باشی به  خیال خودت یک الگوریتم خیلی قوی تر استفاده کنی، همیشه همین احتمالات  درمورد اون هم وجود داره و هیچکس نمیتونه هیچ تضمین مطلقی بده.
> بالاترین درجهء کاری که ما میتونیم بکنیم و تضمینی که بدست بیاریم کم و بیش  در همین حد هست که منابع تخصصی رو بخونیم، درک کنیم، بررسی کنیم، خودمون  قضاوت کنیم، ببینیم بنظرمون ما بیشتر میفهمیم آیا میتونیم چیز بهتری طراحی و  پیاده سازی کنیم یا نه...
> اگر نمیتونیم که خب از همین ها که موجوده استفاده میکنیم. چه کار بیشتری میشه کرد؟
> AES سالهاست استفاده شده و تاحالا کسی هیچ شواهدی چه عملی و چه تئوریک  ارائه نکرده کشف نکرده که ضعف جدی درش باشه کسی یا سازمانی تونسته باشه اون  رو بشکنه. وقتی ده ها متخصص طراز اول دنیا، دانشمندان و نابغه های این  رشته بررسی کردن و نظرشون اینه، حالا شما میگی نه کافی نیست درست نیست؟! خب  شما راهکار خودتون رو بفرمایید! لابد شما خودت تنهایی تخصص و اطلاعات و  اطمینان بیشتری داری و الگوریتم خودت رو درست میکنی و ما هم باید باورت  کنیم!
> شما یه حرف مستند بزن یه استدلال درست و قانع کننده ارائه بده یه راهکار  عملی بده بجای این همه کلی گویی و مبهم گویی و ادعاهایی که پایهء روشن و  محکمی ندارن قابل اثبات نیستن. وگرنه همش ایراد گرفتن و زیر سوال بردن خالی  اونم بدون پشتوانه و دلیل و شواهد و سند کافی که فایده نداره نشد  کار.



دوستان دارن کلی راهکار عملی از اون موقع میدن دیگه...
تمرکز رو از روی رمز بردار و سعی کن امن سازی رو از لایه بستر انجام بدی بعد میبینی حتی نیاز به رمز کننده هم شاید برای کارهات نداشته باشی
مثلا استفاده از ipsec با کلیدهای متغیر میتونه بیشتر کمک کنه حتی استفاده از NSG سخت افزاری گاهی کار رو تموم میکنه

----------


## golbafan

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

----------


## SZsXsZS

> من روش کارم رو بطور خلاصه گفتم
> قرار نیست بشینم روی شکستن کلید کار کنم
> گفتم تیم ما روشهای ساده تری داره که مربوط به برداشتن کلید از روی حافظه سیستم میشه
> 
> همچنین قرار نیست من آدم همه چیز دانی باشم.
> کار تیمی انجام میدیم چون نتیجش همیشه فراتر از حد باهوشترین و داناترین افراد بصورت تکی هست
> روش کارمون هم scrum هست یعنی وقت خودمون رو برای اصطلاحات و تئوریهای دست و پاگیر تلف نمیکنیم
> به شما هم پیشنهاد میکنم اینطوری باشید


دوست عزیز اینا که میگی درست ولی چه ربطی به بحث و موضوع این تاپیک و بنده داره؟
اینا که میگی بنده قبلا خوندم میدونم خیلی وقتا روشهای خیلی راحت تر و شدنی تر و سریع تری برای درواقع دور زدن (نه شکستن) رمزنگاری وجود داره. ولی تمام اینها دلیل نمیشه اهمیت و ارزش علم رمزنگاری رو انکار کنیم. علم رمزنگاری و الگوریتم های ایمن هم اگر نبودن شما همینقدر امنیت و امکانات رو هم که در اینترنت و جاهای دیگر هست نمیتونستید بدست بیارید. هر بخش کار خودش رو میکنه نقش خودش رو داره. اینا همش حلقه های زنجیر امنیت هست، بنده هم بارها اشاره کرده ام، هر حلقه جایگاه خودشو داره، و زنجیر همیشه از ضعیف ترین حلقه پاره میشه، ولی شما میتونی هر حلقه رو تاحدی که میتونی قوی کنی، یک حلقه علم رمزنگاری و الگوریتم ها و روشها و پروتکل های تخصصی است، حلقه های دیگر امنیت فیزیکی سیستم، حفره های نرم افزارها و سیستم عامل، حتی ضعف های نیروی انسانی، و خیلی مسائل دیگر.
حالا اگر بنظر شما یک سیستمی اونقدر ضعف و حفره های دیگر داره که نفوذ بهش کاملا امکان پذیر است، خب اصلا از رمزنگاری استفاده نکن زیاد مهم نیست، چون احتمال خیلی زیاد هیچ فایده ای نداره! ولی لزوما تمام سیستمها که اینطور نیستن همیشه شما به این راحتی اینقدر دسترسی و راه نفوذ دیگر ندارید. مثلا من الان یک دیتای خیلی مهمی رو رمز کردم طوری میفته دست شما، چطوری میخوای رمزگشایی کنی؟ ضمنا شما که به این کارها وارد هستید شاید بتونید اون ضعف و حفره های سیستمها رو تاحد زیادی برطرف کنید، اونوقت است که حلقه های ضعیف رو قوی تر کردید و حالا رمزنگاری حرفه ای میتونه برای شما لازم باشه چون راه های دیگر بسته شده یا خیلی سخت تر شده. مثل اینکه هوا آلوده است شما بگی پس اینکه میگن سیگار نکشید فایده ای نداره. خب باید گفت سیگار نکشیدن هم یک جزء از تضمین سلامتی شماست، و هوای پاک هم یک جزء دیگر. حالا بله درسته وقتی در هوای آلوده زندگی میکنی اینکه سیگار نکشی تضمین خیلی کمتری برای سلامتی شماست تا زمانیکه در هوای پاک زندگی میکنید، ولی بازم فکر میکنم سیگار نکشید عاقلانه باشه! هر وقت هم محیط زندگیست هوای سالمی داشت، اونوقت سیگار نکشیدن اهمیت خیلی بیشتری هم برای سلامتی شما پیدا میکنه. ما باید حتی الامکان همه چیز رو سعی کنیم رعایت کنیم استفاده کنیم. یک چیز و دو چیز به تنهایی کامل نیست.

----------


## golbafan

> ضمنا خود این اسناد و گفته ها، اگر درست باشن، نشون میدن که حتی سازمان NSA با اون همه انگیزه و منابع انسانی و مالی فراوان که در اختیار داره، هنوز قادر نشده AES رو بشکنه؛ و این خود دلیلی است بر امنیت بالای AES و اینکه کلکی توی کارش نبوده!
> حالا شما اگر واقعا نگران هستید خیلی وسواس و حساسیت دارید، راه هایی برای امنیت بیشتر هم هست اینطور نیست بگیم نمیشه از AES فراتر رفت، ولی خب این راه ها طبیعتا پیچیدگی و دشواری افزودهء خودشون رو دارن و پرفورمنس رو پایین میارن و غیره، و بنده شخصا فکر نمیکنم برای کارهای عادی اینقدر وسواس و هزینه دلیلی داشته باشه.


نمیدونم رو چه حسابی میگی کلکی تو کار NSA نبوده!!!
البته اینا (سرویسهای امنیتی) معمولا با راحت سازی خیال مردم و گمراه کردن افکار باعث میشن مثلا همه بیان سراغ مثلا AES تا بشه اطلاعات بیشتری رو استخراج کرد 
(البته این روش کارشونه . معلوم نیست واقعا رمز رو شکوندن یا نه)

من البته وسواسی ندارم و خیلی موراد اگر فایلی رو بخوام رمز کنم از همون winrar استفاده میکنم
بنابراین فکر کنم وسواس شما بیشتره که به این نرم افزار اعتماد نکردید

----------


## golbafan

> دوست عزیز اینا که میگی درست ولی چه ربطی به بحث و موضوع این تاپیک و بنده داره؟
> اینا که میگی بنده قبلا خوندم میدونم خیلی وقتا روشهای خیلی راحت تر و شدنی تر و سریع تری برای درواقع دور زدن (نه شکستن) رمزنگاری وجود داره. ولی تمام اینها دلیل نمیشه اهمیت و ارزش علم رمزنگاری رو انکار کنیم. علم رمزنگاری و الگوریتم های ایمن هم اگر نبودن شما همینقدر امنیت و امکانات رو هم که در اینترنت و جاهای دیگر هست نمیتونستید بدست بیارید. هر بخش کار خودش رو میکنه نقش خودش رو داره. اینا همش حلقه های زنجیر امنیت هست، بنده هم بارها اشاره کرده ام، هر حلقه جایگاه خودشو داره، و زنجیر همیشه از ضعیف ترین حلقه پاره میشه، ولی شما میتونی هر حلقه رو تاحدی که میتونی قوی کنی، یک حلقه علم رمزنگاری و الگوریتم ها و روشها و پروتکل های تخصصی است، حلقه های دیگر امنیت فیزیکی سیستم، حفره های نرم افزارها و سیستم عامل، حتی ضعف های نیروی انسانی، و خیلی مسائل دیگر.
> حالا اگر بنظر شما یک سیستمی اونقدر ضعف و حفره های دیگر داره که نفوذ بهش کاملا امکان پذیر است، خب اصلا از رمزنگاری استفاده نکن زیاد مهم نیست، چون احتمال خیلی زیاد هیچ فایده ای نداره! ولی لزوما تمام سیستمها که اینطور نیستن همیشه شما به این راحتی اینقدر دسترسی و راه نفوذ دیگر ندارید. مثلا من الان یک دیتای خیلی مهمی رو رمز کردم طوری میفته دست شما، چطوری میخوای رمزگشایی کنی؟ ضمنا شما که به این کارها وارد هستید شاید بتونید اون ضعف و حفره های سیستمها رو تاحد زیادی برطرف کنید، اونوقت است که حلقه های ضعیف رو قوی تر کردید و حالا رمزنگاری حرفه ای میتونه برای شما لازم باشه چون راه های دیگر بسته شده یا خیلی سخت تر شده. مثل اینکه هوا آلوده است شما بگی پس اینکه میگن سیگار نکشید فایده ای نداره. خب باید گفت سیگار نکشیدن هم یک جزء از تضمین سلامتی شماست، و هوای پاک هم یک جزء دیگر. حالا بله درسته وقتی در هوای آلوده زندگی میکنی اینکه سیگار نکشی تضمین خیلی کمتری برای سلامتی شماست تا زمانیکه در هوای پاک زندگی میکنید، ولی بازم فکر میکنم سیگار نکشید عاقلانه باشه! هر وقت هم محیط زندگیست هوای سالمی داشت، اونوقت سیگار نکشیدن اهمیت خیلی بیشتری هم برای سلامتی شما پیدا میکنه. ما باید حتی الامکان همه چیز رو سعی کنیم رعایت کنیم استفاده کنیم. یک چیز و دو چیز به تنهایی کامل نیست.



بالاخره منظور ما رو متوجه شدی تبریک میگم :تشویق: 
حرف ماهم از اول همین بود
حالا چه خونده باشید چه نخونده باشید

----------


## golbafan

مکالمه خوبی بود حمید آقا 
موفق باشید :قلب:

----------


## SZsXsZS

> دوستان دارن کلی راهکار عملی از اون موقع میدن دیگه...
> تمرکز رو از روی رمز بردار و سعی کن امن سازی رو از لایه بستر انجام بدی بعد میبینی حتی نیاز به رمز کننده هم شاید برای کارهات نداشته باشی
> مثلا استفاده از ipsec با کلیدهای متغیر میتونه بیشتر کمک کنه حتی استفاده از NSG سخت افزاری گاهی کار رو تموم میکنه


آخه تو فکر میکنی من اینا رو نمیدونستم؟
عزیزم بنده بحث گستردهء امنیت رو خیلی وقت پیش بقدر کافی کامل مطالعه کردم. اون چیزایی که شما میگی رو هم میدونم و بلد هستم حداقل در حدی که از یک برنامه نویس آگاه انتظار میره. هکر دیگه نیستم، ولی در حد خیلی خوبی بلد هستم جلوی هکرها هرچی میتونم مانع و سختی بذارم و حفره ها رو تاجاییکه شدنی است و صرف میکنه و در حیطهء کار و دسترسی من است ببندم. رمزنگاری هم این وسط یک ابزار قوی ای هست که به موقع خودش در جای خودش میتونه حیاتی باشه. مثلا همین برنامه ای که من نوشتم برای کنترل از راه دور و دائم داره بسته های کوچکی از دیتا رو در اینترنت رد و بدل میکنه، خب این دیتا ممکنه از ده مکان در دنیا و ده تا کامپیوتر و سرور و پراکسی و غیره عبور کنه، آیا عاقلانه است که از رمزنگاری حرفه ای استفاده نکنم؟ بیام بگم خب سیستم ویندوزه و ممکنه کسی با این همه حفرهء امنیتی بهش نفوذ کنه پس رمزنگاری بیهوده است؟!
بنده هم دنبال رمزنگاری رفتم چون خیلی علمی و استخوان دار و بجای خودش خیلی قدرتمند هست هیچ چیزی در امنیت درجهء قدرت رمزنگاری حرفه ای رو نداره. بجای خودش عالیه و رقیب نداره. وگرنه اکثر اطلاعات و روشهای دیگر در نفوذ یا امنیت، افراد زیادی هستن میتونن یاد بگیرن و استفاده کنن، منم در حد نیاز خودم بعنوان یک برنامه نویس (نه هکر و نفوذگر) تاجاییکه به من مربوط میشه بلد هستم و استفاده میکنم. ولی این فیلد رمزنگاری هست که بهش علاقه دارم چون اونای دیگه برای من زیاد سخت و هنری محسوب نمیشه، خیلی مباحثش برای بنده نسبتا پیش پا افتاده است! ضمنا به هک هم علاقه ندارم کار چندان عاقلانه و مفید و سالمی نمیدونم که بخوام برم این کاره بشم.




> همیشه اینو به یاد داشته باش که آدم ها درخت نیستند و میتونن جابجا بشن پس اطلاعات هم همیشه درحال جابجایی هست
> مثلا ما اطلاعات رو با موبایل و لپ تاپ و ... همیشه داریم جابجا میکنیم
> دیگه بحث اینترنت که کلا فراتر از این هست


خب منم دقیقا همینو میخواستم بگم و مثال بزنم برات، اینکه چرا رمزنگاری قوی میتونه مهم باشه حتی در شرایطی که در وهلهء اول لازم بنظر نمیاد.
چیزهایی که میگی میشه جور دیگر هم دید و تفسیر کرد. فقط یک جهت و جنبه ندارن!
میگی اطلاعات جابجا میشن معلوم نیست از کجا سردرمیارن. خب یک همچین بحثی مثلا اینه که ممکنه سیستم شما خوب هم تحت کنترل و امن باشه، فرضا یک سروری چیزی داری، ولی اون بکاپ هایی که از داده های شما گرفته میشه ممکنه روی سیستم دیگه ای ذخیره بشن، و زمانی سر از جایی دربیارن زیر دست افراد ناشناس یا غیرقابل اطمینانی بیفتن، که اینها در کنترل کامل شما نیست، خیلی وقتا افراد نمیدونن یا حضور ذهن ندارن فراموش میکنن، بخصوص برای داده هایی که امنیت طولانی مدت اونا مهم است این مسئله اهمیت بیشتری پیدا میکنه. شما اگر داده ها رو موقع ذخیره سازی رمز کرده باشی، اونوقت اون بکاپ هم امن میمونه، ولی اگر رمز نکرده باشی فردا ممکنه کسی بهشون دسترسی پیدا کنه و انواع مختلف سوء استفاده ازشون ممکن است.
رمزنگاری یکسری خواص و کاربردها داره، بقیهء چیزها هم همینطور. هرچیزی جای خودش! شما هیچوقت نمیتونی رمزنگاری حرفه ای رو حذف کنی و بعد ادعا کنی در هر جایی و هر کاربردی امنیت بالایی داری! این امروزه نشدنی است.

----------


## SZsXsZS

> نمیدونم رو چه حسابی میگی کلکی تو کار NSA نبوده!!!


تاجاییکه ما میتونیم بفهمیم، بر اساس شواهد و مدارک و علم و بررسی و تحلیل و نظر متخصصان این رشته در طول سالها، کلکی در کار نبوده. حالا دیگه هیچکس خدا نیست که چیزی رو تضمین مطلق بکنه! ممکنه کلک و حفره ای هم در کار بوده باشه، ولی احتمالش از نظر منطقی کمه. ضمنا راهکار بهتری بهرحال در دسترس نبوده خب! چه میشود کرد؟ شما الگوریتمی که خودت درست کنی فکر میکنی امن تر میشه؟ البته گفتم اگر وسواس باشیم یا اطلاعاتمون خیلی خیلی مهم باشه، میشه یک ترفندهایی زد و بهبودهایی رو اعمال کرد حتی روی همین AES، ولی باید ببینی واقعا ارزشش رو داره صرف میکنه یا نه.
بهرحال این همه دانشمند و متخصص خوب و نابغه این کاره توی دنیا هست، البته تعدادشون خیلی هم زیاد نیستا، ولی بهرحال همشون که برای NSA کار نمیکنن!
تازه میدونستی همین چند سال پیش یک الگوریتم مشکوکی توسط مراجع استاندارد تصویب شد، که متخصصان به ضعیف بودنش و اینکه درش احتمالا یک backdoor است پی بردن و در این زمینه هشدار دادن، و الان دیگه تقریبا کسی حاضر نیست از اون الگوریتم استفاده کنه. شواهدی هست که نشون میده NSA پشت این قضیه بوده و عمدا سعی کرده این الگوریتم رو بصورت استاندارد عمومی دربیاره و همه استفاده کنن! ولی بهرحال کشف شد. یعنی به این سادگی ها هم نیست! و این متخصصان و دانشمندان بزرگ این رشته برگ چغندر نیستن!

البته سالها پیش، اون زمانی که AES تصویب شد، درواقع تحت نظر همین NSA، داستان از جهات مختلف تفاوت زیادی میکرد.
اون زمان NSA اینقدر فاسد و منحرف نشده بود. چنین برنامه ها و خواستی برای جاسوسی و قدرت نامحدود نداشت. به دلایل مختلف منجمله شرایط سیاسی و داخلی اون زمان.
و درمورد AES تمام متخصصان در طول سالها اذعان کردن که بعیده کلکی توی کار بوده باشه!
تازه AES رو هم که خود NSA طراحی نکرد، بلکه یک فراخوان و مسابقهء عمومی گذاشت که در این بین الگوریتم Rijndael فاینالیست شد و پس از استاندارد شدن و تعیین یکسری پارامترهاش، به نام AES خوانده شد.




> من البته وسواسی ندارم و خیلی موراد اگر فایلی رو بخوام رمز کنم از همون winrar استفاده میکنم
> بنابراین فکر کنم وسواس شما بیشتره که به این نرم افزار اعتماد نکردید


البته تردید من یکی بخاطر کدبسته بودن این نرم افزار بود، یکی هم اینکه در طول تحقیقات و مشاهداتم در طول سالها متوجه شدم که اشتباه در پیاده سازی زیاد هست. چون این نرم افزار کدبسته است تردید هست آدم نمیتونه براحتی مطمئن بشه آیا backdoor توش نباشه یا اصلا غیرعمد خطای انسانی در پیاده سازی صورت نگرفته باشه (خطای انسانی در این زمینه واقعا زیاد هست تاحالا خیلی دیدم؛ گاهی بخاطر کمبود اطلاعات و تخصص در رمزنگاری است و گاهی هم صرفا خطای انسانی معمولی). ضمنا طراحی و ساخت برنامهء خودم برای بنده کار سختی نبود و برای تمرین و استفاده های آینده در برنامه ها و نیازهای دیگر هم مفید بود.
تازه این نرم افزارها که ما استفاده میکنیم مستقیم از منبع اصلی که نمیگیریم و اغلب کرک شده و اینها هستن معلوم نیست ممکنه جای دیگه طور دیگه آلوده باشن.

----------


## golbafan

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

مثلا همین استفاده از AES-128 (CBC) + HMAC-SHA256 رو که اخیرا بکار بردی خیلی دست بالا نگیر چون سالهاست داره استفاده میشه (معمولا در ssl/tls) و خیلی وقته رفته تو حوزه "old-school"
پس کار جدیدی انجام ندادی هنوز و اینکه آدم یک سری کتابخانه آماده رو فراخوانی کنه نباید فکر کنه کار عظیمی رخ داده و دیگران از عهده فهمش و سوادش بر نمیان
یا اینکه در ایران جزو برترین ها در این رشته هست...

حتی از نوشته هات متوجه شدم خبر نداری رشته های دانشگاهی متعدد در این حوزه در ایران وجود داده و صدها دانشجوی فوق لیسانس و دکترا دارن کارهای جدید ارائه میکنن
این نگرش رو تغییر بده تا بتونی موفق بشی

----------

