跳至內容
主選單
主選單
移至側邊欄
隱藏
導覽
首頁
近期變更
隨機頁面
MediaWiki說明
Taiwan Tongues 台語維基
搜尋
搜尋
外觀
建立帳號
登入
個人工具
建立帳號
登入
檢視 SHAma三 的原始碼
頁面
討論
臺灣正體
閱讀
檢視原始碼
檢視歷史
工具
工具
移至側邊欄
隱藏
操作
閱讀
檢視原始碼
檢視歷史
一般
連結至此的頁面
相關變更
特殊頁面
頁面資訊
外觀
移至側邊欄
隱藏
←
SHAma三
由於以下原因,您無權編輯此頁面:
您請求的操作只有這些群組的使用者能使用:
使用者
、taigi-reviewer、apibot
您可以檢視並複製此頁面的原始碼。
'''SHA ma三'''(第三代的安全雜鬥演算法,英語:Secure Hash Algorithm 三), 進前號名做'''Keccak'''(/ ˈkɛtʃæk / 抑是 / kɛtʃɑːk / ))演算法,設計者宣稱佇 Intel Core 二的 CPU 頂頭,此演算法的效能是十二孵六時鐘周期逐為元組(cycles per byte)。 SHA 鋪三佇二空一五年八月初五由 NIST 通過 FIPS 兩百空二正式發表。 ==歷史== * Keccak 是一个加密雜鬥演算法,由 Guido Bertoni,Joan Daemen,Michaël Peeters,以及 Gilles Van Assche 佇咧 RadioGatún 上設計。 * 二空一二年十月二號,Keccak 予人選做是 NIST 雜鬥函式競賽的勝利者。SHA 學二目前無出現明顯的弱點。因為對 MD 五、SHA 板零佮 SHA 糊一出現成功的破解,NIST 感覺愛一个佮進前演算法無仝的,會當替換的加密雜鬥演算法,也就是這馬的 SHA ma三。 * 二空一四年,NIST 發佈矣 FIPS 兩百空二的草案 " SHA ma三 Standard : Permutation-Based Hash and Extendable-Output Functions "。 * 二空一五年八月初五,FIPS 兩百空二最終被 NIST 批准。 ==設計的== Keccak 使用海綿函式,若函式會共資料佮初始內部的狀態做 XOR 運算,這是無法度避免會當換的(inevitably permuted)。 佇上大的版本,演算法使用的記持體狀態是使用一个五 × 五的二維陣列,資料的型態是六十四位元的位元組,總計共千六百位。縮版的演算法使用較細的,以二為冪次的位元組大細 _ w _ 為一位元,總計使用二十五位元。除了使用較細的版本來研究加密分析攻擊,較適當中的大細(比如講對 _ w _=四使用一百位,到 _ w _=三十二使用八百位元)是提供了較實際的輕量的替代方案。 ==Keccak 的對換== 置換方法是先定義字的長度做第二的某次方,_ w _ = 二 ℓ 位元。SHA 馮三的主要應用使用六十四位元的字長,ℓ = 六。 記憶體的狀態會當予人看做是五 × 五 × _ w _ 三維陣列。令 _ a _ [_ i _] [_ j _] [_ k _] 代表記持體狀態的第 ( _ i _ × 五 + _ j _ ) × _ w _ + _ k _ 個位元(使用小端序,little-endian,參見位元組序)。 來換函式是五个子段落(sub-round)作十二 + 二 ℓ 次的迴圈,每一个子段落都相當簡單: ==修改== 咧規个 NIST 雜鬥函式的比賽內底,參賽者小可仔修改演算法解決已經出現的問題。Keccak 的修改有: * 迴圈的數目對十二 + ℓ 變成十二 + 二 ℓ,加添了安全度。 * 填充函式使用比起來述十 \ * 一个方式閣較複雜的做法。 * 吸收比率 _ r _ 增加到安全的限制,而非向下捨入到最接近某一个二的冪次。 ==SHA 鋪三範例== * 空字串的雜鬥值: ` ` ` SHA 三孵兩百二十四 ( " " ) 六 b 四 e 三百四十二石三千六百六十七 dbb 七十三 b 六 e 一爿五千四百五十四 f 零 eb 一 abd 四千五百九十七 f 九 a 一 b 七十八 e 三 f 五 b 五 a 六 bc 七 SHA 三刣兩百五十六 ( " " ) a 七 ffc 六 f 八 bf 一 ed 七堵六千六百五十一 c 一爿四千七百五十六 a 六十一 d 六百六十二 f 五百八十 ff 四 de 四十三 b 四十九 fa 八十二 d 八十 a 四 b 八十 f 八千四百三十四 a SHA 三百八十四 ( " " ) 零 c 六十三 a 七十五 b 八仔四仔五 e 四 f 七 d 一千一百空七 d 八仔五 e 四 c 兩千四百八十五 c 五十一 a 五十 aaaa 九十四 fc 六桱一千九百九十五 e 七十一 bbee 九百八十三 a 二 ac 三十七石一千三百八十三石一千兩百六十四 adb 四十七 fb 六 bd 一 e 五十八 d 五 f 四 SHA 三-c五百十二 ( " " ) a 六十九 f 七十三 cca 二十三 a 九 ac 五 c 八 b 五百六十七 dc 一百八十五 a 七仔五十六 e 九十七喔 c 九十八孵兩千一百六十四 fe 二嬸五千八百五十九 e 零 d 一 dcc 一千四仔七十五 c 八十 a 六仔十五 b 二千一百二十三 af 一 f 五 f 九十四 c 十一 e 三 e 九千四百空二 c 三 ac 五仔五十八 f 五十九空一百九十九 d 九十五 b 六 d 三 e 三千空一十七刣五千八百五十八撨六千兩百八十一 dcd 二十六 SHAKE 一百二十八 ( " " , 兩百五十六 ) 七 f 九 c 二 ba 四 e 八十八 f 八仔二七 d 六百一十六標空四百五十五五鋪空七百六十二空五千八百五十三 ed 七十三 b 八千空九十三 f 六 efbc 八十八 eb 一 a 六 eacfa 六十六 ef 二十六 SHAKE 兩百五十六 ( " " , 五百十二 ) 四十六 b 九 dd 二 b 零 ba 八十八 d 一爿三千兩百三十三 b 三 feb 七百四十三 eeb 兩百四十三 fcd 五十二 ea 六十二 b 八十一 b 八十二 b 五十 c 二爿七千六百四十六 ed 五千七百六十二 fd 七十五 dc 四 ddd 八 c 零 f 兩百 cb 五千空一十九 d 六十七 b 五百九十二 f 六 fc 八百二十一 c 四堵九千四百七十九 ab 四千八百六十四抹空兩百九十二 eacb 三 b 七 c 四 be ` ` ` * 因為雪崩效應,就算是足細的一个改變攏會產出差不多完全無仝的雜鬥值。比如講伊,共 dog 改做 dof: ` ` ` SHAKE 一百二十八 ( " The quick brown fox jumps over the lazy dog " , 兩百五十六 ) f 四千兩百空二 e 三 c 五千八仔五十二 f 九千一百八十二 a 四仔三 fd 八千一百四十四 f 零 a 七十四 b 九十五 e 七千四百一十七 ecae 十七 db 零 f 八 cfeed 零 e 三 e 六十六 e SHAKE 一百二十八 ( " The quick brown fox jumps over the lazy dof " , 兩百五十六 ) 八仔五十三 f 四千五百三十八 be 零 db 九千六百二十一 a 六 cea 六仔五十九 a 六 c 一千一百空七 b 一 f 八十三 f 二 b 十三 d 一孵八千兩百九十七 bd 三十九 d 七千四百一十一 cf 十 c ` ` ` ==SHA 家族函式的比較== 佇下跤的格仔內底,「 內部的狀態」指甲是傳達到後一塊的位數。 ==參考資料== ==外部連結== * Keccak 網站 ( 英文 ) * Keccak 官方 C 語言代碼包 * Keccak 官方 C + + 語言工具集 * A Java implementation of Keccak * A Cryptol implementation of Keccak * A VHDL source codes developed in the Cryptographic Engineering Research Group ( CERG ) at George Mason University [[分類: 待校正]]
返回到「
SHAma三
」。