Mac
MAC 不安全的證明
我剛剛開始研究 MAC,我面臨以下挑戰:
讓 $ F $ 成為PRF結束 $ (\mathcal{K,R,X}) $ 在哪裡 $ \mathcal{X} = {0,1}^{32} $
讓 $ \mathrm{CRC32}(m) $ 是一個接受輸入的函式 $ m \in {0,1}^{\le \ell} $ 並輸出一個 32 位字元串和
$ \mathrm{CRC32}(m_1) \oplus \mathrm{CRC32}(m_2) = \mathrm{CRC32}(m_1 \oplus m_2) $ .
讓我們定義一個 MAC 系統 $ (S,V) $ 作為:
- $ \quad S(k,m) = {r \small\xleftarrow[]{R}\mathcal{R},\quad t \leftarrow F(k,r) \oplus\mathrm{CRC32}(m), \quad \text{output} ;(r,t)} $
- $ \quad V(k,m,(r,t)) = { \mathtt{accept} ; \text{if} ;; t = F(k,r) \oplus\mathrm{CRC32}(m), \quad \mathtt{reject} ; \text{otherwise} } $
如何證明這個 MAC 不安全?
在考慮了很多攻擊者如何發送查詢(發送消息 $ m_i $ 並接收其對應的標籤 $ t_i $ ) 為了找到存在性偽造,我讀到雖然攻擊者可以發送多個查詢,但它們可能無濟於事,所以我想知道我還能嘗試什麼來破解它。
使固定 $ k $ , $ r $ , 和 $ m $ . 考慮 $ t = F(k, r) \oplus \operatorname{CRC32}(m) $ . 你能把它和 $ t’ = F(k, r) \oplus \operatorname{CRC32}(m \oplus \delta) $ ?