Enviar pesquisa
Carregar
SHA-256を学ぼうとする
•
Transferir como PPTX, PDF
•
0 gostou
•
2,442 visualizações
Takeru Ujinawa
Seguir
SHA-256のアルゴリズムを読み解く上でのファーストステップ SHAってなんやねん!って思ってる段階で見て貰うのがちょうど良いのかも。 5分間のLT資料
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 14
Baixar agora
Recomendados
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
Yusuke Hirao
Scalaで実装してみる簡易ブロックチェーン
Scalaで実装してみる簡易ブロックチェーン
Hiroshi Ito
Linked Data (再)入門
Linked Data (再)入門
National Institute of Informatics (NII)
Nginx lua
Nginx lua
Moriyoshi Koizumi
ナレッジグラフ/LOD利用技術の入門(後編)
ナレッジグラフ/LOD利用技術の入門(後編)
KnowledgeGraph
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
Yuhei Miyazato
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
日本マイクロソフト株式会社
AWS + Windows(C#)で構築する.NET最先端技術によるハイパフォーマンスウェブアプリケーション開発実践
AWS + Windows(C#)で構築する.NET最先端技術によるハイパフォーマンスウェブアプリケーション開発実践
Yoshifumi Kawai
Recomendados
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
Yusuke Hirao
Scalaで実装してみる簡易ブロックチェーン
Scalaで実装してみる簡易ブロックチェーン
Hiroshi Ito
Linked Data (再)入門
Linked Data (再)入門
National Institute of Informatics (NII)
Nginx lua
Nginx lua
Moriyoshi Koizumi
ナレッジグラフ/LOD利用技術の入門(後編)
ナレッジグラフ/LOD利用技術の入門(後編)
KnowledgeGraph
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
Yuhei Miyazato
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
日本マイクロソフト株式会社
AWS + Windows(C#)で構築する.NET最先端技術によるハイパフォーマンスウェブアプリケーション開発実践
AWS + Windows(C#)で構築する.NET最先端技術によるハイパフォーマンスウェブアプリケーション開発実践
Yoshifumi Kawai
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
日本マイクロソフト株式会社
【ナレッジグラフ推論チャレンジ】SPARQLと可視化ツールを用いた推論検討例
【ナレッジグラフ推論チャレンジ】SPARQLと可視化ツールを用いた推論検討例
KnowledgeGraph
RDF Refineの使い方
RDF Refineの使い方
National Institute of Informatics (NII)
Web3.0の話をしよう
Web3.0の話をしよう
AtsushiSasaki9
フラッター開発におけるシークレット情報取扱考察
フラッター開発におけるシークレット情報取扱考察
cch-robo
LOD連続講義 第5回「LODの作り方・使い方」
LOD連続講義 第5回「LODの作り方・使い方」
Fuyuko Matsumura
MySQL 8.0で憶えておいてほしいこと
MySQL 8.0で憶えておいてほしいこと
yoku0825
サーバーサイドな人がフロントエンド技術と仲良くするはじめの一歩
サーバーサイドな人がフロントエンド技術と仲良くするはじめの一歩
Y Watanabe
Java EE 8先取り!MVC 1.0入門 [EDR2対応版] 2015-10-10更新
Java EE 8先取り!MVC 1.0入門 [EDR2対応版] 2015-10-10更新
Masatoshi Tada
Djangoのエントリポイントとアプリケーションの仕組み
Djangoのエントリポイントとアプリケーションの仕組み
Shinya Okano
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
Yoshio Hanawa
Hack言語に賭けたチームの話
Hack言語に賭けたチームの話
Yuji Otani
オフラインWebアプリケーションのつくりかた
オフラインWebアプリケーションのつくりかた
Shumpei Shiraishi
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
Jun-ichi Sakamoto
脆弱性検査ツールってどうよ
脆弱性検査ツールってどうよ
Masakazu Ikeda
イマドキの現場で使えるJavaライブラリ事情
イマドキの現場で使えるJavaライブラリ事情
takezoe
あの日見たMVCを僕たちはまだ知らない for RoR
あの日見たMVCを僕たちはまだ知らない for RoR
shinnosuke kugimiya
Integrate ManifoldCF with Solr
Integrate ManifoldCF with Solr
francelabs
Web3という概念が生まれるまでとこれから
Web3という概念が生まれるまでとこれから
AtsushiSasaki9
Hub内でラクラク決済!ーVRコマース拡張ー
Hub内でラクラク決済!ーVRコマース拡張ー
hironroinakae
『OpenID ConnectとSCIMのエンタープライズ実装ガイドライン』解説
『OpenID ConnectとSCIMのエンタープライズ実装ガイドライン』解説
Takashi Yahata
SSL入門
SSL入門
Takeru Ujinawa
Mais conteúdo relacionado
Mais procurados
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
日本マイクロソフト株式会社
【ナレッジグラフ推論チャレンジ】SPARQLと可視化ツールを用いた推論検討例
【ナレッジグラフ推論チャレンジ】SPARQLと可視化ツールを用いた推論検討例
KnowledgeGraph
RDF Refineの使い方
RDF Refineの使い方
National Institute of Informatics (NII)
Web3.0の話をしよう
Web3.0の話をしよう
AtsushiSasaki9
フラッター開発におけるシークレット情報取扱考察
フラッター開発におけるシークレット情報取扱考察
cch-robo
LOD連続講義 第5回「LODの作り方・使い方」
LOD連続講義 第5回「LODの作り方・使い方」
Fuyuko Matsumura
MySQL 8.0で憶えておいてほしいこと
MySQL 8.0で憶えておいてほしいこと
yoku0825
サーバーサイドな人がフロントエンド技術と仲良くするはじめの一歩
サーバーサイドな人がフロントエンド技術と仲良くするはじめの一歩
Y Watanabe
Java EE 8先取り!MVC 1.0入門 [EDR2対応版] 2015-10-10更新
Java EE 8先取り!MVC 1.0入門 [EDR2対応版] 2015-10-10更新
Masatoshi Tada
Djangoのエントリポイントとアプリケーションの仕組み
Djangoのエントリポイントとアプリケーションの仕組み
Shinya Okano
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
Yoshio Hanawa
Hack言語に賭けたチームの話
Hack言語に賭けたチームの話
Yuji Otani
オフラインWebアプリケーションのつくりかた
オフラインWebアプリケーションのつくりかた
Shumpei Shiraishi
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
Jun-ichi Sakamoto
脆弱性検査ツールってどうよ
脆弱性検査ツールってどうよ
Masakazu Ikeda
イマドキの現場で使えるJavaライブラリ事情
イマドキの現場で使えるJavaライブラリ事情
takezoe
あの日見たMVCを僕たちはまだ知らない for RoR
あの日見たMVCを僕たちはまだ知らない for RoR
shinnosuke kugimiya
Integrate ManifoldCF with Solr
Integrate ManifoldCF with Solr
francelabs
Web3という概念が生まれるまでとこれから
Web3という概念が生まれるまでとこれから
AtsushiSasaki9
Hub内でラクラク決済!ーVRコマース拡張ー
Hub内でラクラク決済!ーVRコマース拡張ー
hironroinakae
Mais procurados
(20)
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
【ナレッジグラフ推論チャレンジ】SPARQLと可視化ツールを用いた推論検討例
【ナレッジグラフ推論チャレンジ】SPARQLと可視化ツールを用いた推論検討例
RDF Refineの使い方
RDF Refineの使い方
Web3.0の話をしよう
Web3.0の話をしよう
フラッター開発におけるシークレット情報取扱考察
フラッター開発におけるシークレット情報取扱考察
LOD連続講義 第5回「LODの作り方・使い方」
LOD連続講義 第5回「LODの作り方・使い方」
MySQL 8.0で憶えておいてほしいこと
MySQL 8.0で憶えておいてほしいこと
サーバーサイドな人がフロントエンド技術と仲良くするはじめの一歩
サーバーサイドな人がフロントエンド技術と仲良くするはじめの一歩
Java EE 8先取り!MVC 1.0入門 [EDR2対応版] 2015-10-10更新
Java EE 8先取り!MVC 1.0入門 [EDR2対応版] 2015-10-10更新
Djangoのエントリポイントとアプリケーションの仕組み
Djangoのエントリポイントとアプリケーションの仕組み
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
Hack言語に賭けたチームの話
Hack言語に賭けたチームの話
オフラインWebアプリケーションのつくりかた
オフラインWebアプリケーションのつくりかた
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
脆弱性検査ツールってどうよ
脆弱性検査ツールってどうよ
イマドキの現場で使えるJavaライブラリ事情
イマドキの現場で使えるJavaライブラリ事情
あの日見たMVCを僕たちはまだ知らない for RoR
あの日見たMVCを僕たちはまだ知らない for RoR
Integrate ManifoldCF with Solr
Integrate ManifoldCF with Solr
Web3という概念が生まれるまでとこれから
Web3という概念が生まれるまでとこれから
Hub内でラクラク決済!ーVRコマース拡張ー
Hub内でラクラク決済!ーVRコマース拡張ー
Destaque
『OpenID ConnectとSCIMのエンタープライズ実装ガイドライン』解説
『OpenID ConnectとSCIMのエンタープライズ実装ガイドライン』解説
Takashi Yahata
SSL入門
SSL入門
Takeru Ujinawa
Yahoo! JAPANのOpenID Certified Mark取得について
Yahoo! JAPANのOpenID Certified Mark取得について
Masaru Kurahayashi
エンタープライズITにおけるSCIM利用ガイドライン by NEC桑田雅彦様
エンタープライズITにおけるSCIM利用ガイドライン by NEC桑田雅彦様
OpenID Foundation Japan
Etherpad-lite導入
Etherpad-lite導入
Takeru Ujinawa
エンタープライズIT環境での OpenID Connect / SCIM の具体的実装方法 idit2014
エンタープライズIT環境での OpenID Connect / SCIM の具体的実装方法 idit2014
Takashi Yahata
110728 Trust Framework - Shingo Yamanaka
110728 Trust Framework - Shingo Yamanaka
OpenID Foundation Japan
OpenID Connect 入門 〜コンシューマーにおけるID連携のトレンド〜
OpenID Connect 入門 〜コンシューマーにおけるID連携のトレンド〜
Masaru Kurahayashi
Destaque
(8)
『OpenID ConnectとSCIMのエンタープライズ実装ガイドライン』解説
『OpenID ConnectとSCIMのエンタープライズ実装ガイドライン』解説
SSL入門
SSL入門
Yahoo! JAPANのOpenID Certified Mark取得について
Yahoo! JAPANのOpenID Certified Mark取得について
エンタープライズITにおけるSCIM利用ガイドライン by NEC桑田雅彦様
エンタープライズITにおけるSCIM利用ガイドライン by NEC桑田雅彦様
Etherpad-lite導入
Etherpad-lite導入
エンタープライズIT環境での OpenID Connect / SCIM の具体的実装方法 idit2014
エンタープライズIT環境での OpenID Connect / SCIM の具体的実装方法 idit2014
110728 Trust Framework - Shingo Yamanaka
110728 Trust Framework - Shingo Yamanaka
OpenID Connect 入門 〜コンシューマーにおけるID連携のトレンド〜
OpenID Connect 入門 〜コンシューマーにおけるID連携のトレンド〜
Mais de Takeru Ujinawa
Twitter API で学ぶ OAuth
Twitter API で学ぶ OAuth
Takeru Ujinawa
Chrome ExtensionでSelf-Issued OpenID Provider
Chrome ExtensionでSelf-Issued OpenID Provider
Takeru Ujinawa
CTFを楽しむやで
CTFを楽しむやで
Takeru Ujinawa
SES
SES
Takeru Ujinawa
AWS SQS
AWS SQS
Takeru Ujinawa
AWS KMSと鍵の話
AWS KMSと鍵の話
Takeru Ujinawa
Cognito User Pool
Cognito User Pool
Takeru Ujinawa
Mais de Takeru Ujinawa
(7)
Twitter API で学ぶ OAuth
Twitter API で学ぶ OAuth
Chrome ExtensionでSelf-Issued OpenID Provider
Chrome ExtensionでSelf-Issued OpenID Provider
CTFを楽しむやで
CTFを楽しむやで
SES
SES
AWS SQS
AWS SQS
AWS KMSと鍵の話
AWS KMSと鍵の話
Cognito User Pool
Cognito User Pool
Último
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Hiroshi Tomioka
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
Último
(11)
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
SHA-256を学ぼうとする
1.
SHA-256 を学ぼうとする (Secure Hash
Algorithm) uji52 2016/09/07
2.
uji52 自己紹介 • uji52 • age:
27 • region: Hikone->Kyoto->Yokohama • My favorite • ハッシュ関数 • SHA-256 (他をほとんど知らない気がする) • 調味料 • わさび • 塩コショウ 2
3.
SHA-256を紐解くぜ! 数学の勉強も好きやしおもろいかも 3
4.
と思ったけど 思ったより難解やった… ので、概要のご説明的な内容です 4
5.
SHAとは(1) • NIST(National Institute
of Standard and Technology) • アメリカ国立標準技術研究所 • すっごいいろいろやってるところ • 物理学から化学から情報まで様々 • 暗号化技術等の選定、標準化等も • AES(Advanced Encryption Standard) • 暗号化方式 • SHA(Secure Hash Algorithm) • ハッシュアルゴリズム 5
6.
SHAとは(2) 6 SHA登場(現在はSHA-0)とも呼ばれるFIPS 1801993年 SHA-1登場FIPS PUB
180-11995年 (案外昔からあるんやな〜) 2001年 変形verいくつか登場(SHA-224、SHA-256、SHA-384、SHA-512) 2012年 更にいくつかの変形ver登場SHA-512/224、SHA-512/256 合わせて SHA-2と 呼ばれるFIPS PUB 180-2 2012年 SHA-3のアルゴリズムが決定 2015年 SHA-3の正式版リリースFIPS PUB 202
7.
実際にハッシュ化しよう 7 $ irb irb(main):001:0> require
'digest/sha2' => true irb(main):002:0> Digest::SHA256.hexdigest "uji52" => “7730a0175eb494861993a5fdc899b393415f0def92ffd5130abee366dfa15348" irb(main):003:0> Digest::SHA256.hexdigest "uji53" => "0c47f8156e7b256efee86cc135451def80b4c544af16e24af81b2548009e37b8" irb(main):004:0> Digest::SHA256.hexdigest "" => "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" ←Rubyをインタプリタで起動するで(するやで、は封印) ←SHA-2を使う宣言 ←”uji52”をSHA-256 ←”uji53”をSHA-256 ←空文字列をSHA-256 ほんの少しの変更でガラッと変わる 空文字でもしっかりハッシュ化してくれる
8.
ハッシュしても危険やで 8 詳しい人なら 答えを知ってれば問題は分かる 0c47f8156e7b256e fee86cc135451def 80b4c544af16e24a f81b2548009e37b8 uji52を SHA-256した 値やな 問題 中央アメリカのパナマと 陸上で国境を接している 南アメリカの国はどこでしょう? 答え コロンビア ハッシュ化した値を 沢山知っていたら元の値も分かる ↑悪フザケ レインボーテーブルとか
9.
ハッシュ化する上で大事なこと • ハッシュ化するときに工夫するで • salt
(salt and pepper) • ハッシュ化する前に元の値に味付け(塩)して途中にも味付け(胡椒) • ストレッチング • 複数回ハッシュ化することで計算量を上げちゃおう • アルゴリズムは被らないことが大事 • 第一原像計算困難性 • 与えられるハッシュ値になる元値探し • 第一原像計算困難性 • 与えられる元値と同じハッシュ値になる元値探し • 衝突困難性 • ハッシュ値が同じになっちゃうペア探し 9 hが与えられて h=hash(m)になるm探し m1が与えられて hash(m1)=hash(m2)になるm2探し hash(m1)=hash(m2)になるペア探し
10.
それでは SHA-256ハッシュ関数を 紐解いていきましょう 10
11.
SHA-256の大まかな流れ 11 入力データ 分割入力データ[0] 分割入力データ[1] 分割入力データ[2] 64Byte毎に分割 64Byte ハッシュ値 分割入力データ[i]←計算 まだある? i == n ある ない 完成したハッシュ値 ←長さ足りひんかったら もちろんpadding 興味あったところ 256bit
12.
SHA-256に使う値 12 分割入力データ[0]ハッシュ値 256bit 分割ハッシュ値[0] 分割ハッシュ値[1] 8分割 分割ハッシュ値[7] 32bit 分割入力データ[0][0] 分割入力データ[0][1] 分割入力データ[0][15] 4Byte 64Byte 16分割 4倍に増やす 分割入力データ[0][0] 分割入力データ[0][1] 分割入力データ[0][63]4倍に増やす部分 分割データ[0][n]をD(n)と呼ぶとすると D[16]〜D[63]を下記方法で作る D(n) = D(n
- 2) + D(n - 7) + D(n - 15) + D(n - 16)
13.
SHA-256でやってること 13 428a2f98 71374491 b5c0fbcf
e9b5dba5 3956c25b 59f111f1 923f82a4 ab1c5ed5 d807aa98 12835b01 243185be 550c7dc3 72be5d74 80deb1fe 9bdc06a7 c19bf174 e49b69c1 efbe4786 0fc19dc6 240ca1cc 2de92c6f 4a7484aa 5cb0a9dc 76f988da 983e5152 a831c66d b00327c8 bf597fc7 c6e00bf3 d5a79147 06ca6351 14292967 27b70a85 2e1b2138 4d2c6dfc 53380d13 650a7354 766a0abb 81c2c92e 92722c85 a2bfe8a1 a81a664b c24b8b70 c76c51a3 d192e819 d6990624 f40e3585 106aa070 19a4c116 1e376c08 2748774c 34b0bcb5 391c0cb3 4ed8aa4a 5b9cca4f 682e6ff3 748f82ee 78a5636f 84c87814 8cc70208 90befffa a4506ceb bef9a3f7 c67178f2 32bitのハッシュ値 x 8 入力値を元に生成された4Byteの値 x 64 定数k 8桁の16進数 x 64 これらの値をビットシフトとXORして ハッシュ値を作ってるみたいです。 時間の都合上この辺りで割愛 (諦め) ←これの4つめと8つめをハッシュしてローテーションしていく(それを64回) ↑←この2つがハッシュするためのXOR素材
14.
まとめ • 思ったより奥が深い • 全体に何らかのビット演算って話かと… •
パディング処理も凝ってる… • 分割処理も凝ってる… (ハッシュアルゴリズムを簡単に考えすぎてた) 14
Baixar agora