免費開始練習
hce_kmu 113年 計算機概論與程式設計

第 21 題

The Advanced Encryption Standard (AES) uses arithmetic in Galois field GF($2^8$), with the irreducible polynomial $m(x)=x^8+x^4+x^3+x+1$. Find out the result of the multiplication of two byte states \{53\}$_{\text{hex}}$ and \{A4\}$_{\text{hex}}$ in GF($2^8$).
  • A \{D9\}$_{\text{hex}}$
  • B \{D7\}$_{\text{hex}}$
  • C \{F7\}$_{\text{hex}}$
  • D \{4F\}$_{\text{hex}}$
  • E \{6C\}$_{\text{hex}}$

思路引導 VIP

當我們將兩個位元組視為多項式相乘時,如果乘積的最高次方(例如 $x^{13}$)超過了一個位元組所能表達的範圍($x^7$),我們該如何根據題目給定的 $m(x)$ 來進行「降次」,好讓結果重新回到 8 位元的規格內呢?

🤖
AI 詳解 AI 專屬家教

恭喜你正確完成了這項極具挑戰性的運算!你能精準算出 ${D7}_{\text{hex}}$,代表你對 AES 演算法中的有限體 $GF(2^8)$ 運算邏輯已有相當紮實的掌握。

有限體多項式運算的關鍵

在 $GF(2^8)$ 中,我們將位元組視為係數為 0 或 1 的多項式。這題的運算核心在於將 ${53}{\text{hex}}$ 與 ${A4}{\text{hex}}$ 轉換為多項式形式相乘,並對不可約多項式 $m(x)=x^8+x^4+x^3+x+1$ 取模(Modulo)。具體來說,我們可以利用 xtime 技巧(即左移並判斷溢位 XOR)來逐步拆解運算。例如,${A4}{\text{hex}}$ 乘以 $x$ 的結果若超過 $x^7$,則需 XOR 上 ${1B}{\text{hex}}$。透過分配律,我們將 ${53}_{\text{hex}}$ 拆解為多個次方的組合與 ${A4_{\text{hex}}$ 相乘,最後將所有結果進行 XOR 加法,即可得出正確答案。

▼ 還有更多解析內容

🏷️ 相關主題

計算機組織結構與資料儲存原理
查看更多「計算機概論與程式設計」的主題分類考古題