استفاده از روش برنامه نویسی پدافندی جهت افزایش امنیت نرم افزار در زبان #C
محل انتشار: مجله پدافند غیر عامل، دوره: 8، شماره: 3
سال انتشار: 1396
نوع سند: مقاله ژورنالی
زبان: فارسی
مشاهده: 502
فایل این مقاله در 12 صفحه با فرمت PDF قابل دریافت می باشد
- صدور گواهی نمایه سازی
- من نویسنده این مقاله هستم
استخراج به نرم افزارهای پژوهشی:
شناسه ملی سند علمی:
JR_SAPD-8-3_003
تاریخ نمایه سازی: 1 مهر 1398
چکیده مقاله:
با توجه به اهمیت امنیت نرم افزارهای رایانه ای در سازمان های نظامی، برنامه نویسان و طراحان این سیستم ها ملزم به رعایت مسائل امنیتی در برنامه نویسی هستند. این مقاله بر روی مرحله کدنویسی در چرخه تولید نرم افزار تمرکز دارد. هدف کدنویسی پدافندی، جلوگیری از بروز حوادث ناشی از کدنویسی نامناسب است. این حوادث شامل ازکارافتادن برنامه، دسترسی به کد منبع، استفاده بیش ازحد از منابع سخت افزاری و افزایش زمان نیاز جهت به روزرسانی برنامه هستند. در ادامه استفاده از آرگومان های نامی در فراخوانی تابع معرفی گردید که این عوامل منجر به افزایش خوانایی و درنتیجه کاهش زمان به روزرسانی برنامه می شود. جهت مدیریت خطاهای حین اجرا، روش شکست سریع استثناءها و نحوه مدیریت مناسب آن ها ارائه شده است. این اقدامات موجب افزایش امنیت برنامه و عدم ازکارافتادن برنامه بهدلیل کدنویسی نامناسب گردیده و از طرفی موجب افزایش تعداد توابع، کلاس ها و درنتیجه افزایش تعداد خط کد می شود. این مسئله ممکن است موجب نگرانی درباره افزایش زمان اجرای برنامه و هزینه پردازشی شود. این مقاله به پیاده سازی یک برنامه در دو حالت کدنویسی پدافندی و غیرپدافندی پرداخته است. نتایج نشان میدهد که میانگین عمر نخ ها در حالت پدافندی 23/8 ثانیه است، درحالی که این مقدار برای حالت غیرپدافندی، 80/8 ثانیه بود. از طرفی، میزان درصد استفاده از پردازنده در حالت های پدافندی و غیرپدافندی به ترتیب 32/54% و 70/54%، از طرف دیگر برای هزینه پردازشی کاربر نیز بهترتیب 23/24% و 41/24% بود. این اعداد حاکی از هزینه پردازشی و زمان اجرای یکسان برنامه در دو حالت پدافندی و غیرپدافندی است.
کلیدواژه ها:
نویسندگان
سامان کشوری
دانشگاه جامع امام حسین(ع)
محمدرضا حسنی آهنگر
دانشگاه جامع امام حسین(ع)
ساناز کشوری
دانشگاه رازی کرمانشاه
مراجع و منابع این مقاله:
لیست زیر مراجع و منابع استفاده شده در این مقاله را نمایش می دهد. این مراجع به صورت کاملا ماشینی و بر اساس هوش مصنوعی استخراج شده اند و لذا ممکن است دارای اشکالاتی باشند که به مرور زمان دقت استخراج این محتوا افزایش می یابد. مراجعی که مقالات مربوط به آنها در سیویلیکا نمایه شده و پیدا شده اند، به خود مقاله لینک شده اند :