Khái quát thuật toán

Một phần của tài liệu LUẬN VĂN: KIỂM CHỨNG CƠ CHẾ BẢO MẬT DỰA TRÊN AST potx (Trang 44 - 46)

Thuật toán duyệt cây như sau:

Với tổ chức của AST cần phải duyệt từ trên xuống dưới. Trong quá trình duyệt từ trên xuống nếu nhận được những hàm tác động đến mô hình RBAC hay dữ liệu nhạy cảm cần quan tâm. Ví dụ, có một đoạn mã nguồn mà ảnh hưởng trực tiếp đến dữ liệu nhạy

ifStatement

Expression

cảm “write (“RBAC.TXT”)” sau khi xác định được node này (thuộc loại node gì?) Sau đó, đi ngược lên trên để tìm điều kiện tương ứng.

Phần này chỉ tìm hiểu một số Statement đơn giản là các Statement chứa các điều

kiện liên quan đến vấn đề cần kiểm chứng. Khi xác định điều kiện cần xem node ảnh

hưởng đến dữ liệu nằm trong các Statement nào? Với Statement là if cần xem xét biểu

thức điều kiện của if. Nếu điều kiện của if thuộc một trong những điều kiện đã giới hạn

cũng như đã quy định từ trước khi đó bắt đầu xét sâu đến Statement này. Khi kiểm

chứng, nếu Statement có điều kiện thỏa mãn với yêu cầu kiểm chứng tiếp tục đi lên trên nếu không thỏa mãn in ra thông báo lỗi luôn. Sau khi đi lên trên, kiểm tra xem tiếp các

Statement với các điều kiện đã quy định và cứ tiếp tục như vậy cho đến khi đi đến Statement ngoài cùng thì thôi.

Thuật toán sẽ duyệt cây từ dưới lên, lấy cha của node xác định là tác động đến dữ

liệu sau khi đi lên trên xác định đâu là các Statement mới khai thác chi tiết.

CDT là một công cụ rất quan trọng để kiểm chứng thuật toán. Thuật toán được xây

dựng dựa trên kiến trúc của AST. CDT sinh ra AST để có cái nhìn rõ ràng nhất về cấu

trúc tổ chức của một mã nguồn C/C++. Trong tương lai, nếu muốn cải tiến thuật toán với công cụ khác là JDT thì tìm hiểu và sử dụng thành thạo công cụ CDT sẽ làm cho công

Mô hình dùng để mô tả cách triển khai thuật toán dựa trên AST như sau:

Hình 4.2: Mô tả thuật toán kiểm chứng cơ chế bảo mật

Với mô hình này, thuật toán được triển khai dựa trên hai thành phần chính là AST

và RBAC. Với một cơ chế bảo mật được xây dựng sẵn dựa trên các mô hình của RBAC, một đoạn mã nguồn đưa vào với đặc trưng các mô hình RBAC. Thuật toán được xây

dựng phải làm nổi bật rõ ràng nhất những ưu điểm của các mô hình RBAC và có sự kiểm soát mã nguồn một cách chi tiết và toàn diện nhất.

Một phần của tài liệu LUẬN VĂN: KIỂM CHỨNG CƠ CHẾ BẢO MẬT DỰA TRÊN AST potx (Trang 44 - 46)

Tải bản đầy đủ (PDF)

(81 trang)