国产肉体XXXX裸体137大胆,国产成人久久精品流白浆,国产乱子伦视频在线观看,无码中文字幕免费一区二区三区 国产成人手机在线-午夜国产精品无套-swag国产精品-国产毛片久久国产

博客專(zhuān)欄

EEPW首頁(yè) > 博客 > AES算法(五)GCM工作模式

AES算法(五)GCM工作模式

發(fā)布人:電子禪石 時(shí)間:2023-04-14 來(lái)源:工程師 發(fā)布文章

在以前介紹的基本工作模式中,ECB、CFB、OFB 三種模式可以解決 ECB 模式中相同明文生成相同密文的缺陷,CTR 又可以在此基礎(chǔ)上提供多分組并行加密特性,但是它們都不能提供密文消息完整性校驗(yàn)功能,所有就有了 GCM 模式。

講解 GCM 模式之前,我們先要講一下 MAC和GMAC。

MAC

MAC 全稱(chēng)是 Message Authentication Code,中文名稱(chēng)為消息認(rèn)證碼,一串由密鑰和密文生成的固定值,有時(shí)也稱(chēng) Auth Tag。

MAC 的使用流程如下:

  • 首先 Sender 和 Receiver 共享同一個(gè) Key,約定一個(gè) MAC 計(jì)算算法 Algorithm

  • Sender 把要傳遞的消息 Message 通過(guò) Key 和 Algorithm 計(jì)算出 MAC,將 Message 和 MAC 發(fā)送給 Receiver

  • Receiver 收到 Message 和 MAC 后,將 Message 通過(guò)約定的 Key 和算法 Algorithm 計(jì)算出 MAC_1,通過(guò)對(duì)比 MAC 和 MAC_1 是否相等

    • MAC == MAC_1 消息無(wú)篡改且是 Sender 發(fā)布的

    • MAC != MAC_1 消息有篡改或者根本不是 Sender 發(fā)布的,也就是有問(wèn)題

消息認(rèn)證碼是密碼學(xué)家工具箱中的 6 大工具之一:對(duì)稱(chēng)密碼、公鑰密碼、單向散列函數(shù)、消息認(rèn)證碼、數(shù)字簽名和偽隨機(jī)數(shù)生成器。

MAC 跟哈希有點(diǎn)像但比哈希要復(fù)雜,因?yàn)?Mac 的生成和驗(yàn)證過(guò)程都是需要密鑰的。

GMAC

GMAC 全稱(chēng)是 Galois Message Authentication Code,中文名稱(chēng)為伽羅瓦消息驗(yàn)證碼。

GMAC 就是利用伽羅華域(Galois Field,GF,有限域)乘法運(yùn)算來(lái)計(jì)算消息的 MAC 值。

GCM 模式

GCM 全稱(chēng)為 Galois/Counter Mode,可以看出 G 是指 GMAC,C 是指 CTR。它在 CTR 加密的基礎(chǔ)上增加 GMAC 的特性,解決了 CTR 不能對(duì)加密消息進(jìn)行完整性校驗(yàn)的問(wèn)題。

GCM 加密所需數(shù)據(jù):明文 P、加密密鑰 Key、初始向量 IV、附加消息 F。

GCM 加密步驟如下:

  • 將 P 分為 P1、P2、…、Pn,Px 長(zhǎng)度 <= 128

  • 生成累加計(jì)數(shù)器 c0、c1、c2、…、cn,由密鑰 Key 計(jì)算出密鑰 H

  • 將 IV、c0 進(jìn)行運(yùn)算(連接、加和、異或等)得到 IV_c0,用 Key 加密 IV_c0 得到 IVC0

  • 將 IV、c1 進(jìn)行運(yùn)算(連接、加和、異或等)得到 IV_c1,用 Key 加密 IV_c1 得到 IVC1,將 IVC1、P1 做異或運(yùn)算得到 C1,用密鑰 H 通過(guò) GMAC 算法將附加消息 F 計(jì)算出 F1, F1 與 C1 做異或運(yùn)算得到 FC1

  • 將 IV、c2 進(jìn)行運(yùn)算(連接、加和、異或等)得到 IV_c2,用 Key 加密 IV_c2 得到 IVC2,將 IVC2、P2 做異或運(yùn)算得到 C2,用密鑰 H 通過(guò) GMAC 算法將附加消息 FC1 計(jì)算出 F2, F2 與 C2 做異或運(yùn)算得到 FC2

  • 將 IV、cn 進(jìn)行運(yùn)算(連接、加和、異或等)得到 IV_cn,用 Key 加密 IV_cn 得到 IVCn,將 IVCn、Pn 做異或運(yùn)算得到 Cn,用密鑰 H 通過(guò) GMAC 算法將附加消息 FC(n-1) 計(jì)算出 Fn, Fn 與 Cn 做異或運(yùn)算得到 FCn

  • 拼接 C1、…Cn 得到密文 C,用密鑰 H 通過(guò) GMAC 算法結(jié)合 FCn 和 IVC0 最終計(jì)算出 MAC

GCM 加密步驟相關(guān)資料較少,本文根據(jù)維基百科大致做了步驟拆解,如有不準(zhǔn)確請(qǐng)敬請(qǐng)斧正


*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。



關(guān)鍵詞: GCM

技術(shù)專(zhuān)區(qū)

關(guān)閉