Câu hỏi đó quá rộng, nhưng cho rằng bạn đã bỏ qua điều quan trọng nhất, tôi cảm thấy mình cần phải giải quyết.
Xác thực cập nhật .
Nếu bạn muốn đảm bảo rằng các thiết bị của bạn đang chạy mã của bạn, thì bạn cần xác thực, không phải mã hóa. Mã hóa đảm bảo rằng những người khác không thể biết những gì trong mã của bạn và điều đó khó đạt được và hiếm khi hữu ích. (Bạn có thể mã hóa, nhưng nếu khóa giải mã có trên thiết bị, bạn sẽ không nhận được bất cứ thứ gì trừ khi bạn có cách bảo vệ khóa giải mã không cho phép bạn bảo vệ mã trực tiếp.) Xác thực là tài sản mà người khác không thể tạo ra một bản cập nhật giả và tài sản đó thường được mong muốn.
Lưu ý rằng mã hóa không giúp xác thực. Đây là một niềm tin sai lầm mà những người không thực sự hiểu về bảo mật đôi khi có, nhưng thực tế không phải vậy.
Đối với một số thiết bị, bạn có thể chạy bất kỳ chương trình cơ sở nào nếu chủ sở hữu chọn. Trong trường hợp đó, bạn vẫn cần một số cơ chế để đảm bảo rằng chỉ chủ sở hữu thiết bị mới có thể cài đặt chương trình cơ sở chứ không phải một số người qua đường ngẫu nhiên. Nói chung, điều đó có nghĩa là thiết bị phải xác thực bản cập nhật đến từ chủ sở hữu đã đăng ký.