Logo Zephyrnet

Theo dõi luồng thông tin tại RTL. Đổi mới trong xác minh – Semiwiki

Ngày:

Các đường dẫn lén lút và rõ ràng để rò rỉ hoặc xâm phạm thông tin tiếp tục là mối đe dọa đối với an ninh. Bài viết này trình bày sự cải tiến của các kỹ thuật theo dõi luồng thông tin (IFT) cấp cổng hiện có được mở rộng sang RTL, khuyến khích tối ưu hóa bảo mật ở giai đoạn đầu. Paul Cunningham (Phó chủ tịch/GM cấp cao, Xác minh tại Cadence), Raúl Camposano (Silicon Catalyst, doanh nhân, cựu CTO Synopsys và hiện là CTO Silvaco) và tôi tiếp tục loạt bài về ý tưởng nghiên cứu. Như mọi khi, phản hồi hoan nghênh.

Cải tiến Mới

Sự đổi mới

Lựa chọn của tháng này là Đăng ký theo dõi luồng thông tin cấp độ truyền tải để thiết kế phần cứng có thể đảm bảo an toàn. Bài viết này xuất hiện vào DATE 2017 và đã thu thập được 53 trích dẫn ấn tượng. Các tác giả đến từ Đại học California San Diego.

Nhóm này trước đó đã phát triển công nghệ IFT (GLIFT) cấp cổng, ra mắt dưới dạng sản phẩm thuộc Tortuga Logic (sau này được đổi tên thành Cycuity). Các kỹ thuật luồng thông tin cung cấp một cách tiếp cận tổng quát và chính thức hơn để lập mô hình và suy luận về các thuộc tính bảo mật hơn là kiểm tra theo các trường hợp sử dụng lỗ hổng bảo mật. Phương pháp này khái quát hóa bằng cách truyền bá thông tin bị hư hỏng cùng với việc đánh giá logic thông thường, gắn cờ cho biết tín hiệu có nguồn gốc từ miền không an toàn kiểm soát lựa chọn điều kiện trong miền an toàn. Kết hợp điều này với các phương pháp xác minh chính thức mang lại tiềm năng đảm bảo an ninh mạnh mẽ.

Việc mở rộng phân tích sang RTL cho phép thực hiện một số cải tiến: khả năng mở rộng cho các mạch lớn hơn, ứng dụng sớm hơn trong thiết kế và cải thiện phần nào sự hiểu biết về các phụ thuộc cấp cao hơn trong mục đích thiết kế mà không cần chú thích do người dùng cung cấp. Các tác giả cũng mô tả một phương pháp mà các nhà thiết kế có thể cân bằng giữa hiệu suất bảo mật và xác minh để phục vụ các nhu cầu thị trường khác nhau.

Quan điểm của Paul

Xác minh bảo mật là điều tôi vô cùng quan tâm – chúng ta không thể tin tưởng vào dữ liệu kỹ thuật số nếu không có nó và điều này bao gồm cả dữ liệu cá nhân của tôi! Bài viết của tháng này là một bài viết dễ đọc nêu bật một trong những kỹ thuật chủ đạo trong xác minh bảo mật: thêm các bit “bị nhiễm độc” (tức là bị xâm phạm hoặc không còn đáng tin cậy) vào tất cả các tín hiệu trong một thiết kế và cải tiến các mô hình cổng truyền các bit bị nhiễm độc qua các cổng cũng như các giá trị tín hiệu .

Sự lan truyền bit bị nhiễm độc về mặt khái niệm gần giống với “lan truyền X” trong các luồng xác minh thiết kế chính thống: nếu một tín hiệu bị nhiễm độc thì có vẻ như chúng ta không biết giá trị của nó vì chúng ta không tin vào giá trị của nó.

Bài viết này đề xuất hai điều: thứ nhất, thực hiện chú thích và truyền bá bit bị nhiễm độc ở cấp độ RTL thay vì cấp độ cổng; và thứ hai, thực hiện tương đương với những gì các công cụ EDA chính thống gọi là “loại bỏ chủ nghĩa bi quan X”. Cái sau đề cập đến việc không đánh dấu kết quả của một toán tử là X đơn giản vì ít nhất một trong các đầu vào của nó là X, mà chỉ đánh dấu nó là X nếu nó thực sự là X dựa trên định nghĩa của toán tử đó. Ví dụ, hãy xem xét c = a & b. Nếu a=0 thì c=0 ngay cả khi b là X. Tương tự, trong xác minh bảo mật, nếu a=0 và a không bị nhiễm độc, thì c=0 và không bị nhiễm độc ngay cả khi b bị nhiễm độc. Có vẻ dễ dàng đối với “&”, trở nên phức tạp hơn một chút đối với các cấu trúc if, else và case.

Như bạn có thể mong đợi, bài báo kết thúc với một số điểm chuẩn cho thấy rõ ràng việc truyền các bit bị nhiễm độc ở RTL nhanh hơn nhiều so với ở cấp độ cổng và việc truyền bá bit bị nhiễm độc “chính xác” (tức là loại bỏ bi quan về bit bị nhiễm độc) làm giảm tỷ lệ dương tính giả đối với các bit bị nhiễm độc ở đầu ra thiết kế một tỷ lệ đáng kể. Tất cả việc đo điểm chuẩn này được thực hiện trong bối cảnh chứng minh chính thức, không phải bối cảnh mô phỏng logic. Trường hợp đóng cửa.

Chúc tất cả các bạn một kỳ nghỉ lễ vui vẻ!

Quan điểm của Raúl

Theo dõi luồng thông tin (IFT) là một kỹ thuật bảo mật máy tính mô hình hóa cách truyền thông tin khi hệ thống tính toán. Nó được Denning giới thiệu vào những năm 70, có thể tìm thấy phần giới thiệu và khảo sát hay tại đây. Ý tưởng cơ bản là gắn nhãn dữ liệu bằng một lớp bảo mật và sau đó theo dõi các nhãn này khi dữ liệu được sử dụng để tính toán. Vì mục đích của bài viết đã được đánh giá, nhãn chỉ là một phần cho biết dữ liệu là “vết bẩn” (nhãn=1, không đáng tin cậy). Cách tiếp cận thận trọng nhất trong việc sử dụng nhãn này là đầu ra của bất kỳ hoạt động nào liên quan đến vết bẩn dữ liệu là vết bẩn; hay nói ngược lại, chỉ những thao tác với tất cả dữ liệu đầu vào được không bị vấy bẩn mang lại một không bị vấy bẩn đầu ra. Bài viết phần nào nới lỏng cách tiếp cận này như tôi sẽ giải thích sau.

Bảo mật máy tính nhằm mục đích duy trì thông tin bảo mậttính toàn vẹn. Bảo mật có nghĩa là thông tin chỉ được tiết lộ cho các tổ chức được ủy quyền. IFT xác minh xem thông tin bí mật có thể được tiết lộ hay không bằng cách theo dõi rằng tất cả các vị trí mà nó truyền đến cũng là bí mật (không bị vấy bẩn), ví dụ: khóa bí mật không bị rò rỉ ra ngoài không gian bộ nhớ bị hạn chế. Tính toàn vẹn thì ngược lại: để duy trì tính chính xác và nhất quán của dữ liệu, các thực thể không đáng tin cậy không được phép hoạt động trên thông tin đáng tin cậy. Cách thông tin truyền qua hệ thống máy tính là rất quan trọng để xác định tính bảo mật và tính toàn vẹn. IFT là một trong những kỹ thuật được sử dụng nhiều nhất để lập mô hình và suy luận về bảo mật.

Bài viết đánh giá các phương pháp tiếp cận IFT hiện có ở cấp độ cổng và cấp độ RTL. Ở mức cổng, sự hội tụ lại là nguồn gốc của sự thiếu chính xác. Trong bộ ghép kênh, tín hiệu chọn lọc mờ sẽ mang lại vết bẩn đầu ra ngay cả khi cả hai đầu vào đều không bị vấy bẩn. Việc lập mô hình bộ ghép kênh ở cấp độ RTL cho phép khắc phục điều này. Các cách tiếp cận cấp độ RTL hiện tại liên quan đến nhu cầu sửa đổi mã RTL. Hệ thống do các tác giả RTLIFT triển khai đã khắc phục được cả hai nhược điểm trên. Nó cung cấp một thư viện các toán tử RTL cho phép thực hiện các cách tiếp cận khác nhau đối với IFT, chẳng hạn như làm hỏng đầu ra nếu có bất kỳ đầu vào nào bị lỗi. vết bẩn (bảo thủ) hoặc một cách tiếp cận phức tạp hơn chẳng hạn như làm hỏng đầu ra của bộ ghép kênh chỉ khi một trong các đầu vào dữ liệu bị hỏng. vết bẩn (tránh kết quả dương tính giả). Nó cũng cung cấp bản dịch tự động của thiết kế RTL trong Verilog sang phiên bản nâng cao IFT có thể được sử dụng cho mục đích xác minh.

Kết quả trên lõi mật mã cho thấy RTLIFT nhanh hơn khoảng 5 lần so với IFT cấp cổng (GLIFT). Trên bộ sưu tập gồm 8 bộ cộng, bộ nhân và logic đường dẫn điều khiển, RTLIFT cho thấy tỷ lệ dương tính giả giảm 5%-37% (sai vết bẩn) qua GLIFT cho mô phỏng 220 mẫu đầu vào ngẫu nhiên

Một bài viết toàn diện về bảo mật, mở rộng IFT sang RTL, một bài đọc rất thú vị!

Chia sẻ bài đăng này qua:

tại chỗ_img

Tin tức mới nhất

tại chỗ_img