Điểm:3

Nó có nghĩa là gì: Triển khai phần cứng và phần mềm của hệ thống mật mã

lá cờ us

Trong khi đọc một số tài liệu về mật mã, tôi lướt qua một số thuật ngữ mới như triển khai phần cứng và phần mềm của các hệ thống mã hóa.

Câu hỏi: triển khai phần cứng và phần mềm của hệ thống mã hóa là gì? Và sự khác biệt giữa chúng là gì?

Điểm:5
lá cờ ng

Việc triển khai phần mềm là một phần mềm chạy trên một tiêu chuẩn CPU hoặc bộ vi xử lý, thực thi hầu hết các hướng dẫn chung đơn giản tuần tự không dành riêng cho mật mã. Thuật toán mật mã được thể hiện dưới dạng các hướng dẫn như vậy, có lẽ sau khi biên dịch từ một ngôn ngữ cấp thấp hơn, như C.

Việc triển khai phần cứng chạy trên một thứ khác. Đó có thể là một ASIC, một FPGA. Ngày nay, đó thường là một khu vực dành riêng cho một khu vực rộng lớn hơn Mạch tích hợp; ví dụ. một Thẻ thông minh ngân hàng điển hình bao gồm phần cứng chuyên dụng cho 3DES, AES, RSA hoặc và Mật mã đường cong elip. Ngày nay, thuật toán mã hóa thường được chuyển thành một thiết kế được thể hiện bằng một số Ngôn ngữ mô tả phần cứng Như là VHDL, sau đó được biên dịch thành một thiết kế silicon hoặc cấu hình của một FPGA.

Việc triển khai phần cứng có khả năng nhanh hơn hoặc/và ít ngốn điện hơn so với triển khai phần mềm, đối với cùng một thuật toán. Một ví dụ cực đoan về điều đó là các công cụ khai thác bitcoin, khoe khoang hiệu quả như 18â 10-12MỘT Joule mỗi SHA-256. Mặt khác, việc triển khai phần cứng phức tạp hơn nhiều để thiết kế. Có căn cứ trung gian, ví dụ. các CPU hiện đại thường bao gồm các hướng dẫn thực hiện một số bước của thuật toán mã hóa lớn hơn, như AES-NI hoặc Tiện ích mở rộng SHA-256, với mạch chuyên dụng phù hợp trên khuôn CPU; và GPU.

Việc triển khai phần cứng thường không thể được sửa đổi trên hộp (điều đó là không thể đối với silicon). Những thay đổi trường như vậy thường dễ dàng hơn cho việc triển khai phần mềm (cho cả người dùng hợp pháp và đối thủ). Có những trường hợp ngoại lệ: nhiều FPGA có thể được lập trình lại (đôi khi theo thói quen, giống như mỗi lần thiết lập lại hệ thống); một ASIC có thể được cấu hình lại, trong giới hạn được thiết kế sẵn; phần mềm có thể được trong ROM, do đó không thay đổi.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.