Ứng dụng của DICE

Công cụ kết hợp giá trị nhận dạng thiết bị (DICE) là một tính năng bảo mật của Android, cung cấp tính năng chứng thực mạnh mẽ và cải thiện tính toàn vẹn của thiết bị bằng cách tạo một danh tính mã hoá duy nhất cho mỗi thiết bị. DICE đặc biệt hữu ích trong việc tạo danh tính thiết bị có thể được sử dụng trong các trường hợp yêu cầu bằng chứng danh tính mạnh và giao tiếp an toàn.

Cung cấp khoá từ xa (RKP)

Việc sử dụng DICE để cấp khoá từ xa mang lại một số lợi ích chính.

Giảm thiểu bề mặt tấn công

DICE tăng cường RKP bằng cách đặt gốc niềm tin trong cơ sở điện toán đáng tin cậy (TCB) nhỏ nhất có thể có trên thiết bị, thường là chính khối xếp, thay vì trong Môi trường thực thi đáng tin cậy (TEE). Điều này làm giảm đáng kể bề mặt tấn công và giảm thiểu nguy cơ xâm phạm RKP vĩnh viễn.

Khôi phục sau khi bị xâm phạm TEE

DICE cung cấp một cơ chế để khôi phục niềm tin vào thiết bị ngay cả khi có sự xâm phạm trong TEE hoặc trình tải khởi động có thể ảnh hưởng đến tính hợp lệ của chứng thực khoá do KeyMint tạo ra.

Trước đây, các lỗ hổng trong môi trường thực thi đáng tin cậy (TEE) hoặc trình tải khởi động đã dẫn đến việc thu hồi hoàn toàn khoá chứng thực cho tất cả thiết bị bị ảnh hưởng, không có cách nào để khôi phục niềm tin ngay cả khi các lỗ hổng đã được vá. Nguyên nhân là do TEE đã thực hiện quy trình xác minh từ xa trên hình ảnh Android đang được tải thông qua Android Verified Boot, khiến không thể chứng minh cho bên từ xa rằng các bản vá đã được áp dụng. DICE giải quyết vấn đề này bằng cách bật tính năng xác minh từ xa trạng thái chương trình cơ sở hiện tại, ngay cả bên ngoài Android, cho phép các thiết bị bị ảnh hưởng khôi phục niềm tin.

Xác thực lẫn nhau của các môi trường tách biệt

Mỗi miền ứng dụng mà quy trình DICE kết thúc sẽ nhận được một danh tính ở dạng khoá với một chuỗi chứng chỉ mở rộng trở lại gốc tin cậy dùng chung do ROM tạo ra. Quá trình dẫn xuất DICE tách thành nhiều nhánh khi các đường dẫn tải khác nhau phân kỳ, tạo thành một cây chứng chỉ mà tất cả đều có cùng một gốc và tạo ra một cơ sở hạ tầng khoá công khai (PKI) trên thiết bị.

PKI này cho phép các thành phần trong các vùng bảo mật riêng biệt xác thực lẫn nhau. Một ví dụ cụ thể là Secretkeeper, một lớp trừu tượng phần cứng (HAL) cho phép các máy ảo đặc quyền (pVM) giao tiếp với TEE để nhận một khoá bí mật ổn định có thể dùng để lưu trữ dữ liệu ổn định một cách an toàn.