PDA

View Full Version : اگر ما در یک برنامه Encrypt و Decrypt (مثلاً AES 128) هر دو رو پیاده سازی کنیم دردسر میشه؟!



arash_ebrahimi_nk
سه شنبه 19 فروردین 1393, 08:42 صبح
سلام

من برنامه ای نوشتم که یک فایل تولید میکنه و من میخوام به هنگام تولید این فایل (یعنی موقع save) اون رو Encrypt کنم بر اساس شماره سخت افزار سیستم و زمان ذخیره سازی فایل و...؛ و ایده م این هست که فایل فقط در صورتی Decrypt بشه که توی همون سیستم با همون شماره سخت افزار باشه.

توی این روش کُدهای Encrypt و کُدهای Decrypt هر دو در فایل اجرایی کامپایل میشن.
من دارم از مجموعه سورس باز سایت http://www.wolfgang-ehrhardt.de/ و روش رمزنگاری AES 128 استفاده میکنم.

با توجه به شرایط فوق کرک میتونه خودش فایل رو Decrypt کنه؟!

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

از قبل تشکر میکنم.

Nima NT
چهارشنبه 20 فروردین 1393, 23:37 عصر
وقتی شما فایل رو رمزگشایی میکنید در واقع اون رو در حافظه کپی میکنید مهندس معکوس میتونه اطلاعات رمزگشایی شده رو از حافظه استخراج کنه پس فرقی نمیکنه که شما از چه الگوریتمی و چه کلیدی استفاده کنید چون در صورتی که فایل اجرایی این کار رو انجام بده مسلما" کسی سراغ رمزگشایی ایستا نمیره

از طرفی برنامه فول و رجیستر شده دیگه روی فایل رمزنگاری نمیکنه در این صورت چه خطراتی ممکنه پیش بیاد در زمینه امنیت.
خب اینطوری دیگه همه چیز محیا هست برای کپی کردن اطلاعات.
البته اگر منظورتون این باشه که روی سیستمی که نصب و رجیستر شده دیگه رمزگذاری/گشایی نمیکنه کاربر میتونه برنامه رو به یه سیستم با اطلاعات سخت افزاری متفاوت منتقل کنه مثلا" یه ماشین مجازی ؛ به نظر من شما به فکر مبهم سازی و محافظت از روتین های رمزنگاری و رمزگشایی کد خودتون باشید اینطوری امنیت برنامتون بهتر تامین میشه

sadegh.javan
سه شنبه 20 خرداد 1393, 11:56 صبح
طبق اصول شش گانه رمزنگاری تمامی الگوریتم ها باید در اختیار عموم باشند .
چیزی که برای محرمانگی اون تلاش میکنیم کلید رمزنگاری .
خوب بنابراین شما کلید رو هم یه جورایی بر طبق الگوریتمی درست میکنین که میشه با بررسی نرمافزارتون پیداش کرد .
الگوریتم هایی مثل ای ای اس 256 ذاتا ایمن هستند این پیاده سازی های ماست که اونا رو غیر ایمن میکنه !

این نظر منه ، منم یه دانشجو هستم
پس بنابراین احتمال اشتباهم زیاده
اساتید اگر اشتباه میکنم اصلاح کنید لطفا ;)

cmsdqq2
سه شنبه 26 تیر 1397, 20:21 عصر
وقتی شما فایل رو رمزگشایی میکنید در واقع اون رو در حافظه کپی میکنید مهندس معکوس میتونه اطلاعات رمزگشایی شده رو از حافظه استخراج کنه پس فرقی نمیکنه که شما از چه الگوریتمی و چه کلیدی استفاده کنید چون در صورتی که فایل اجرایی این کار رو انجام بده مسلما" کسی سراغ رمزگشایی ایستا نمیره

خب اینطوری دیگه همه چیز محیا هست برای کپی کردن اطلاعات.
البته اگر منظورتون این باشه که روی سیستمی که نصب و رجیستر شده دیگه رمزگذاری/گشایی نمیکنه کاربر میتونه برنامه رو به یه سیستم با اطلاعات سخت افزاری متفاوت منتقل کنه مثلا" یه ماشین مجازی ؛ به نظر من شما به فکر مبهم سازی و محافظت از روتین های رمزنگاری و رمزگشایی کد خودتون باشید اینطوری امنیت برنامتون بهتر تامین میشه




ممنون از پاسخگویی شما و در اختیار قراردادن تجربیاتتون.

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