г. Тюмень, 29-31 октября 2014 г.

Розов А.С.  

Оценка степени безопасности программ в специализированных языках программирования

Несмотря на то что большая часть программного обеспечения в настоящее вре-мя разрабатывается с использованием языков программирования общего назначения, таких как Java и C++, в областях, требующих высокой надежности и сопровождае-мости программных систем, широко распространено использование специализиро-ванных языков программирования. Преимущества специализированных языков – повышенная надежность программ, читаемость кода, простота сопровождения и мо-дификации. Эффективное использование языка в значительной мере зависит от сти-ля программирования. При этом синтаксис языка не может гарантировать качество текста программ и их безопасность. Это обуславливает интерес к методикам полу-чения численных оценок безопасности кода.
Проблема оценки безопасности рассматривается на примере разработки языка iC [1], выполненного как расширение языка C. Язык iC реализует концепцию про-цесс-ориентированного программирования, и предназначен для решения задач ав-томатизации на микроконтроллерных платформах. Анализ безопасности программ на iC предлагается разделить на три уровня: уровень гиперпроцесса, уровень про-цесса, и уровень состояния. На уровнях гиперпроцесса и процесса оценка безопас-ности программы может быть получена путем вычисления цикломатической слож-ности (McCabe). Оценку безопасности кода на уровне состояния предлагается вы-полнять следующим образом. Каждой синтаксической конструкции языка присваи-вается коэффициент Si, соответствующий базовой безопасности этой конструкции, и коэффициент Sci, зависящий от контекста (значения коэффициентов лежат в области от 0 до 1). Наличие коэффициента Sci обусловлено зависимостью уровня безопасно-сти конструкции от контекста ее использования. Общая безопасности участка кода вычисляется как произведение безопасностей всех входящих в него конструкций.
Полученные таким образом оценки безопасности могут быть использованы для выявления проблемных участков кода и последующего указания на них программи-сту, например, путем цветового выделения небезопасного синтаксиса. В продолже-ние работы предполагается разработка критериев задания коэффициентов Si и Sci, разработка методик анализа контекста использования синтаксических конструкций, и исследование  эффективности применения полученных оценок для увеличения общего качества кода.

Список литературы

1. Розов А.С. "Опыт использования процесс-ориентированного подхода при автоматизации на платформе Arduino" // XIII Всероссийская конференция молодых ученых по математическому моделированию и информационным технологиям, Новосибирск, 15-17 октября 2012, C. 60-61

Тезисы доклада:abstracts_247461_ru.pdf


К списку докладов

Комментарии

Имя:
Код подтверждения: