並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 51件

新着順 人気順

ハッシュ関数の検索結果1 - 40 件 / 51件

  • アニメーションで感覚的にハッシュ関数「SHA-256」の算出過程を理解できる「SHA-256 Animation」

    電子証明書の暗号化やブロックチェーンは、入力された値からまったく異なる値であるハッシュ値を算出する「ハッシュ関数」によって成り立っています。エンジニアのGreg Walker氏が、代表的なハッシュ関数である「SHA-256」のハッシュ値算出の過程をアニメーションで表示できるプログラム「SHA-256 Animation」を公開しています。 GitHub - in3rsha/sha256-animation: Animation of the SHA-256 hash function in your terminal. https://github.com/in3rsha/sha256-animation 実際にプログラムを動かしてみたムービーが以下のものです。 ハッシュ値が生成される様子を「SHA-256 Animation」で観察するとこんな感じ - YouTube プログラムを動かす

      アニメーションで感覚的にハッシュ関数「SHA-256」の算出過程を理解できる「SHA-256 Animation」
    • 知られざる王小雲。米国の暗号学的ハッシュ関数MD5、SHA-1を過去に葬り去った女性研究者 - 中華IT最新事情

      第4回未来科学大賞で多額の賞金が、数学者、王小雲に授与され、彼女の名前がにわかにメディアに注目をされた。王小雲は2004年に米国のハッシュ関数「MD5」の脆弱性を発見した研究者だったと資訊咖が報じた。 ネット社会に必須のハッシュ関数 デジタル時代、ハッシュ関数はさまざまなところで使われる。最もよく知られているのは、パスワードの保管や書類の改竄検知などだ。 ハッシュとは「混ぜこぜ」という意味で、元のデータを混ぜこぜにして、まったく別のデータに変換をしてしまうというものだ。例えば、「元の数値を2倍にして1を引く」という単純なアルゴリズムでもハッシュ関数に近いことができる。2であれば3になるし、7であれば13になる。元の数字とは異なったものになる。 しかし、これでは何かの役に立つことはできないため、暗号学者、数学者たちは、複雑なアルゴリズムを考案し、ハッシュ関数としてさまざまな応用をしてきた。こ

        知られざる王小雲。米国の暗号学的ハッシュ関数MD5、SHA-1を過去に葬り去った女性研究者 - 中華IT最新事情
      • ハッシュ関数「SHA-256」の計算プロセスをわかりやすく視覚化してくれる「Sha256 Algorithm Explained」

        アメリカの国家安全保障局(NSA)によって開発された「SHA-2」は電子署名やブロックチェーンに応用される暗号学的ハッシュ関数の1つです。そのSHA-2の中でも特に使われているSHA-256でハッシュを生成するための計算プロセスがよくわかるサイト「Sha256 Algorithm Explained」を、Domingo Martin氏が公開しています。 Sha256 Algorithm Explained https://sha256algorithm.com/ Sha256 Algorithm Explainedにアクセスするとこんな感じ。 上部にある入力欄に、好きな文字列を入力します。今回はGIGAZINEのURLである「https://gigazine.net/」を入力してみました。すると、入力したURLをバイナリに変換したメッセージブロックが表示されます。メッセージブロックは32b

          ハッシュ関数「SHA-256」の計算プロセスをわかりやすく視覚化してくれる「Sha256 Algorithm Explained」
        • DeepMindが深層強化学習を利用してアルゴリズムを改善するAI「AlphaDev」を発表、すでにソートアルゴリズムやハッシュ関数の高速化に成功

          AlphaGoの開発元として有名なGoogle DeepMind社が深層強化学習を応用してさまざまなコンピューティングアルゴリズムを改善するAI「AlphaDev」を発表しました。同時に、AlphaDevを利用してソートアルゴリズムを高速化できたという論文がNatureに掲載されています。 AlphaDev discovers faster sorting algorithms https://www.deepmind.com/blog/alphadev-discovers-faster-sorting-algorithms Faster sorting algorithms discovered using deep reinforcement learning | Nature https://doi.org/10.1038/s41586-023-06004-9 ソートアルゴリズムとは

            DeepMindが深層強化学習を利用してアルゴリズムを改善するAI「AlphaDev」を発表、すでにソートアルゴリズムやハッシュ関数の高速化に成功
          • 政府基準に準拠するために「より脆弱なハッシュ関数」の使用を監査人に命じられた話

            ユーザーパスワードなどの重要なデータを保管する企業や組織は、平文でパスワードを保存するのではなく、暗号学的ハッシュ関数で一方向のみ変換可能な「ハッシュ値」としてデータを格納します。政府の資金を用いる機関に所属していたという人物が、「政府の基準に準拠するため、従来より脆弱なハッシュ関数を使用するように監査人に指導された」と報告して話題となっています。 They want us to be compliant, not secure | Go350 https://www.go350.com/posts/they-want-us-to-be-compliant-not-secure/ They want us to be compliant, not secure | Hacker News https://news.ycombinator.com/item?id=25543818 2020年

              政府基準に準拠するために「より脆弱なハッシュ関数」の使用を監査人に命じられた話
            • ハッシュ関数:気になる情報セキュリティ用語 - 叡智の三猿

              ハッシュ関数は任意のデータを入力して固定のデータを出力する関数のことです。出力したデータから入力したデータを導くことができない一方向性、異なる入力データから同じ出力結果が得られる可能性が非常に低い耐衝突性といった特徴を備えています。 代表的なハッシュ関数にSHA-256があります。 ディジタル署名などに用いるハッシュ関数の特徴はどれか。 ア 同じメッセージダイジェストを出力する異なる二つのメッセージは容易に求められる。 イ メッセージが異なっていても,メッセージダイジェストは全て同じである。 ウ メッセージダイジェストからメッセージを復元することは困難である。 エ メッセージダイジェストの長さはメッセージの長さによって異なる。 ~「基本情報技術者・平成25年秋期」より 答えを表示 答え:ウハッシュ関数は任意のデータを入力して固定のデータを出力する関数のことです。次の特徴があります。 入力デ

                ハッシュ関数:気になる情報セキュリティ用語 - 叡智の三猿
              • Pythonを用いた情報セキュリティマネジメント試験対策: データ暗号化とセキュアなハッシュ関数の実装 - Python転職初心者向けエンジニアリングブログ

                情報セキュリティマネジメント試験は、セキュリティに関する専門的な知識とスキルを測る重要な試験の一つです。今回はPythonを利用して、試験の一部であるデータ暗号化とセキュアなハッシュ関数に焦点を当て、具体的なコードとともに詳しく説明します。 データ暗号化の基本概念 データ暗号化は、機密性を保護するために情報を変換するプロセスです。代表的な対称鍵暗号としてAES(Advanced Encryption Standard)を使用してみましょう。 from Crypto.Cipher import AES from Crypto.Random import get_random_bytes from Crypto.Util.Padding import pad, unpad import base64 def encrypt_data(data, key): cipher = AES.new(k

                  Pythonを用いた情報セキュリティマネジメント試験対策: データ暗号化とセキュアなハッシュ関数の実装 - Python転職初心者向けエンジニアリングブログ
                • [アップデート] Amazon Redshift 暗号化ハッシュ関数『SHA2』をサポートしました | DevelopersIO

                  Amazon Redshiftは、クラスタバージョン1.0.14877からチェックサムのビット数の引数値として0(256と同じ)、224、256、384、または512の暗号化ハッシュ関数SHA2をサポートするようになりました。 暗号化ハッシュ関数『SHA2』 SHA2関数は、SHA2暗号化ハッシュを使用して、可変長文字列(string)とチェックサムのビット数(bits)を引数に指定して、ハッシュ文字列に変換します。ハッシュ文字列は、指定されたビット数のチェックサムの16 進値をテキストで表記したものです。なお、チェックサムのビット数(bits)には、0(256と同じ)、224、256、384、512の指定が可能です。 SHA2(string, bits) 次の例では、「Amazon Redshift」という単語の256ビット値を返します。 # SELECT sha2('Amazon Re

                    [アップデート] Amazon Redshift 暗号化ハッシュ関数『SHA2』をサポートしました | DevelopersIO
                  • 巨大データベースの検索を高速化する新手法――機械学習を用いてハッシュ関数を設計 - fabcross for エンジニア

                    機械学習を用いて、巨大データベースのデータ検索に重要なハッシュ関数をより高速かつ効率的に構築する新しい方法が開発された。この研究は米マサチューセッツ工科大学(MIT)を中心にした研究チームによるもので、その詳細はカナダで2023年8月28日〜9月1日に行われるデータベース工学分野の国際会議「International Conference on Very Large Databases(VLDB) 2023」で発表される予定だ。 ハッシュ法(ハッシュ探索)は、データベースのインデックス作成からデータ圧縮、暗号化まで、非常に多くの用途で使用されている。また、蔵書目録や電子商取引サイトなど、ほとんどのオンラインデータベースで中核となる操作となっている。そのため、高速で効率的なハッシュ関数は非常に重要だ。 ハッシュ関数は、データが保存される場所を直接決定するコードを生成することで、データ検索を容

                      巨大データベースの検索を高速化する新手法――機械学習を用いてハッシュ関数を設計 - fabcross for エンジニア
                    • Google Spreadsheetでハッシュ関数を使う - Qiita

                      やりたいこと Google SpreadsheetでMD5やSHA256などのハッシュ関数を使う 方針 基本的にこのStackoverflowの質問(Hash of a cell text in Google Spreadsheet)に従ってやれば良いのだが、非ASCIIの文字列で少しつまずいたので日本人としてメモ。 実装 ハッシュ関数を使いたいシートで、シート>スクリプトエディタを開く。 スクリプトエディタに下記の関数を貼り付けて保存。 function MD5(input) { var rawHash = Utilities.computeDigest(Utilities.DigestAlgorithm.MD5, input, Utilities.Charset.UTF_8); var txtHash = ''; for (i = 0; i < rawHash.length; i++)

                        Google Spreadsheetでハッシュ関数を使う - Qiita
                      • Microsoft、Windows 11で「SHA-3」をサポートへ ~次世代ハッシュ関数の標準規格/CanaryチャネルのBuild 25324でロールアウト開始

                          Microsoft、Windows 11で「SHA-3」をサポートへ ~次世代ハッシュ関数の標準規格/CanaryチャネルのBuild 25324でロールアウト開始
                        • 楕円曲線上の点を出力するハッシュ関数の標準化 Hash to Curves - Develop with pleasure!

                          楕円曲線を使用したPedersen CommitmentやBLS署名など、誰もその離散対数を知らない点を利用する暗号プロトコルを最近よく見かける。ただ、プロトコルの説明では、そのような点の導出方法があまり詳しく書かれていなかったりすることもあり、アルゴリズムの選択を誤ると脆弱性の原因となる可能性が出てくる。 そんな点の導出方法について、さまざまな楕円曲線に対応した推奨アルゴリズムを定義しようというのが、現在IETFでドラフトが提案されている任意の入力値を楕円曲線上の点に変換するハッシュ関数↓ datatracker.ietf.org ハッシュ関数の仕様 この仕様では、入力値(バイト列)を楕円曲線の点にエンコードするのに以下の3つの関数を定義している。※ 正式な仕様は↑参照。 hash_to_field hash_to_field関数は、任意の入力値(バイト列)msgを有限体F上の1つ以上の

                            楕円曲線上の点を出力するハッシュ関数の標準化 Hash to Curves - Develop with pleasure!
                          • DBMの設計と実装 その1 ハッシュ関数 - 豪鬼メモ

                            個々のレコードがハッシュテーブル内のどのバケットに属するかはハッシュ関数で決める。入力値の種類によらずハッシュ値がうまいことばらけて衝突が起こりにくい関数が良い。今回は定番のMurmur hashを採用した。Rubyの文字列型のハッシュ関数もこれだ。 Murmur hashの値に対してバケット数で剰余を取れば十分なハッシュ関数として機能する。しかし、以前にそれで実装したソースを公開していたら、Murmur hashの作者から直に連絡があり、下位ビットだけ使うのは最善ではないと指摘された。32ビット以下のハッシュ関数が必要な場合、XORを使って上位ビットの折返しをした上で、剰余を取るべきだと。したがって、バケット数に応じたハッシュ関数の実装は以下のようになる。 uint64_t PrimaryHash(std::string_view data, uint64_t num_buckets)

                              DBMの設計と実装 その1 ハッシュ関数 - 豪鬼メモ
                            • ドッグ on Twitter: "暗号学的ハッシュ関数 BLAKE3.MD5, SHA-*, BLAKE2 より遥かに高速で,MD5 や SHA-1 と違い安全.任意の並列度(マルチコアや SIMD)で計算できる.SHA-2 や BLAKE2 と違い,1つのアルゴ… https://t.co/Qw6x82NFlk"

                              暗号学的ハッシュ関数 BLAKE3.MD5, SHA-*, BLAKE2 より遥かに高速で,MD5 や SHA-1 と違い安全.任意の並列度(マルチコアや SIMD)で計算できる.SHA-2 や BLAKE2 と違い,1つのアルゴ… https://t.co/Qw6x82NFlk

                                ドッグ on Twitter: "暗号学的ハッシュ関数 BLAKE3.MD5, SHA-*, BLAKE2 より遥かに高速で,MD5 や SHA-1 と違い安全.任意の並列度(マルチコアや SIMD)で計算できる.SHA-2 や BLAKE2 と違い,1つのアルゴ… https://t.co/Qw6x82NFlk"
                              • ハッシュ値・ハッシュ関数とは?基本から使い方までわかりやすく解説 - ジンジャー(jinjer)| クラウド型人事労務システム

                                1.ハッシュ値とはデータを決まった長さの文字列に変換した値 ハッシュ値とは、元データからハッシュ関数と呼ばれる計算手順により求められた、固定の桁数の値のことをいいます。 この場合の元データとは、文字列や電子文書ファイル、メールやメッセージ、パスワードなどさまざまです。 ハッシュ関数によってデータを変換すれば、決まった長さの文字列に変換することが可能です。 ダイジェスト値とも呼ばれるハッシュ値の桁数には、12桁や16桁など複数の種類があります。 数値化できるデータであれば、どのようなものでもハッシュ関数に割り当てることができます。膨大なサイズの情報であってもハッシュ関数の入力には問題が生じません。 文字や数値のほか、映像や音楽のような情報も数値化され、ハッシュ値で表せます。 例えば1冊の本の内容といった大きなデータでも、ハッシュ関数を使えばすべて短い数値の羅列に変換できるのです。 2.ハッシ

                                  ハッシュ値・ハッシュ関数とは?基本から使い方までわかりやすく解説 - ジンジャー(jinjer)| クラウド型人事労務システム
                                • ブロックチェーンで勉強でつまづかないためにハッシュ関数について調べる - Qiita

                                  はじめに 4月からブロックチェーンについて調査を始めました。 最初はEthereumやSolidityやTruffleなどブロックチェーン関係でよく聞くキーワードで検索してデモを真似して作ってみるという作業をしていましたが、いまいち理解出来ない日が続きました。 そこで改めて基礎から理解しようと調べていたところ、ブロックチェーンの理解にはハッシュ化というプロセスが重要そうということが分かってきました。 個人的にはハッシュ化という概念を知ったことでブロックチェーンについて理解が深まった気がしています。 ということで今回はハッシュ化について書いていった後、イーサリアムでの秘密鍵、公開鍵、アドレスの生成方法について検証していきたいと思います。 本記事の対象者 これからブロックチェーンについて学んでいきたい方 Solidityなどのチュートリアルをやってみたが仕組みはいまいちよく分からない方 本記事

                                    ブロックチェーンで勉強でつまづかないためにハッシュ関数について調べる - Qiita
                                  • (暗号学的) ハッシュ関数入門 - Qiita

                                    同じアルゴリズムでも、強衝突耐性は弱衝突耐性、現像計算困難性よりも $n$ ビットセキュリティがずっと小さい理由は、誕生日のパラドックスで説明できます。 誕生日のパラドックス 1年は365日とし、部屋にN人の人がいるとき、その中に同じ誕生日の人の組が存在する確率が半分を超える最小のNは? 答えは23人。この時の確率は約50.7%です。ある特定の誕生日の人と同じ誕生日の人を探すのは困難(弱衝突耐性及び原像計算困難性に対応)でも、同じ誕生日を持つ2人を探す(強衝突耐性に対応)のは比較的簡単であるというパラドックスです。 ここで、このパラドックスを一般化し、以下のように考えてみます。 1年をY日とし、部屋にN人の人がいるとき、その中に同じ誕生日の人の組が存在する確率が半分を超える最小のNは? 詳細の計算は割愛しますが、Yが十分大きい時、 となります。$n$ビットハッシュ関数の$n$ビットのハッシ

                                      (暗号学的) ハッシュ関数入門 - Qiita
                                    • 基本情報技術者令和元年秋期問40 ハッシュ関数で得られるセキュリティ効果

                                      ファイルの提供者は,ファイルの作成者が作成したファイルAを受け取り,ファイルAと,ファイルAにSHA-256を適用して算出した値Bとを利用者に送信する。そのとき,利用者が情報セキュリティ上実現できることはどれか。ここで,利用者が受信した値Bはファイルの提供者から事前に電話で直接伝えられた値と同じであり,改ざんされていないことが確認できているものとする。 ア値BにSHA-256を適用して値Bからデジタル署名を算出し,そのデジタル署名を検証することによって,ファイルAの作成者を確認できる。イ値BにSHA-256を適用して値Bからデジタル署名を算出し,そのデジタル署名を検証することによって,ファイルAの提供者がファイルAの作成者であるかどうかを確認できる。ウファイルAにSHA-256を適用して値を算出し,その値と値Bを比較することによって,ファイルAの内容が改ざんされていないかどうかを検証できる

                                        基本情報技術者令和元年秋期問40 ハッシュ関数で得られるセキュリティ効果
                                      • 芭蕉と曾良のハッシュ関数 - 叡智の三猿

                                        芭蕉と曾良 江戸時代、諸国を巡りつつ俳句を詠んでいた松尾芭蕉が現代にタイムスリップしたら、自らの句を電子メールで弟子たちに披露したことでしょう。特に一番弟子とされ「奥の細道」にも同行した河合曾良にはたくさんのメールをしていたと思います。 芭蕉と曾良そこで芭蕉の名句が、芭蕉を蔑める悪意を持つ者によりこのように改ざんされた状況を想像してみました。改ざんされた芭蕉の名句 俳句のなかの「切れ」 俳句に於いて「切れ」を表現することは、文芸的価値を高める上でとても重要なことです。「切れ」を入れることで、空間が独立して広がります。「切れ」を表現する上で「や」「かな」「けり」といった「切字」が使われます。「切字」をうまく使うことで「感動」を大きく出すことが出来ます。 上記のような名句が改ざんがされたら、どうでしょうか!? 「俳句 はじめの一歩」の著者である石寒太さんは、本のなかで次のように指摘しています。

                                          芭蕉と曾良のハッシュ関数 - 叡智の三猿
                                        • PHPで使えるハッシュ関数~password_Hashを解説~

                                          Webシステムを構築する際、ユーザー用のログインパスワードをデータベースに保存させたい時があるかと思います。 そんな時、「パスワードを暗号化させなければならない」と言うと「暗号化とハッシュ化は違うよ」と指摘されたことはないでしょうか。 また、ハッシュ関数と一口に言ってもMD5、SHA-1、password_hashなどがあり、どれを使えばよいか悩んでいる方も多いと思います。 今回の記事では、ハッシュ関数の特徴や利用目的、現状の安全性についての説明をまとめ、PHPでパスワードをデータベースに保存する際に使用すべきハッシュ関数は何かを探っていきたいと思います。 PHPで使えるハッシュ関数 基礎知識 パスワードをハッシュ化してデータベースに保存する方法を学ぶ前に、ハッシュ関数とは何なのか、基本的な知識をまとめておきたいと思います。 ハッシュ関数とは ハッシュ関数とは「要約関数」とも呼ばれ、任意の

                                            PHPで使えるハッシュ関数~password_Hashを解説~
                                          • Elixirでハッシュ関数を扱う。 - Qiita

                                            MD5とかSHA1、SHA256とかのやつです。 Elixirには、標準モジュールに用意されていない為、 Erlangの:cryptoモジュールを使用します。 寄り道 - Rubyの場合 Elixirの前にRubyでの結果を比較するために、Rubyでハッシュ値を求めてみます。 RubyではDigestモジュールを使用すると以下のようなハッシュ値を得られます。 irb(main):016:0> Digest::SHA256.hexdigest("hogehoge") => "4c716d4cf211c7b7d2f3233c941771ad0507ea5bacf93b492766aa41ae9f720d"

                                              Elixirでハッシュ関数を扱う。 - Qiita
                                            • SSL/TLS通信の仕組みとハッシュ関数(SHA-1、SHA-2)について解説

                                              最近、個人情報やパスワード、クレジットカード番号など、重要な情報をインターネット上で利用することも多いです。 それらが安全にやり取りされているのか心配ではありませんか? もしくは、セキュリティの重要性が高まっているので、インターネットのセキュリティについて詳しく知りたいと思っていませんか?この記事を読むことで、通信を安全に行うプロトコルであるSSL/TLSについて学ぶことができます。また、SSLを暗号化するハッシュ関数である「SHA-1」「SHA-2」についても解説していきます。 SSL/TLS通信とは 普段、何気なく使っているインターネットですが、私たちがウェブページを訪れて文章を読んだり、画像や動画を見たりすることができるのはHTTP(Hypertext Transfer Protocol)という通信プロトコルがあるからです。通信プロトコルとはネットワーク上での様々な規約を定めたもので

                                                SSL/TLS通信の仕組みとハッシュ関数(SHA-1、SHA-2)について解説
                                              •  ハッシュ関数

                                                ハッシュ関数の実験 次のソースをコピーし、 HASH.htaの名前で保存することで、 MD5とSHA-1の ハッシュ関数でテキストエリア内データのハシュ値を得る実験ができます。 <html lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <meta http-equiv="Content-Style-Type" content="text/css"> <meta http-equiv="Content-Script-Type" content="text/javascript"> <style type="text/css"> p, input { font-size: 12pt; font-family: monospace; } </style> <scr

                                                • 暗号学的ハッシュ関数「BLAKE3 1.0」が公開 | OSDN Magazine

                                                  BLAKE3は、暗号学的ハッシュ関数であるBLAKE2の後継として2020年に発表されたプロジェクト。MD5、SHA-1、SHA-2、SHA-3、そしてBLAKE2よりも高速で、長さ拡張攻撃に対する安全性など高いセキュリティを特徴とする。 通常のハッシュに加えて、PRF、MAC、XOF、KDFをサポートする。マークルツリー構造を取ることで、任意の数のスレッドとSIMDレーンを使った並列処理、差分アップデートと検証済みストリーミングなどの機能を実現した。アルゴリズムは変種なしの1種とし、x86_64で高速に動く。16KiBインプット/1スレッドのベンチマークでは、BLAKE2と比較して約5倍高速と報告している。 BLAKE3 1.0.0のCとRust実装はGitHubのプロジェクトページより入手できる。 BLAKE3 https://github.com/BLAKE3-team/BLAKE3

                                                    暗号学的ハッシュ関数「BLAKE3 1.0」が公開 | OSDN Magazine
                                                  • [実践]Pythonでハッシュ関数を実装しよう!〜公式ドキュメントを参考に〜 - Qiita

                                                    はじめに 今回はPythonでハッシュ関数を実装していこうと思います! 「ハッシュ関数」とは、暗号について学んでいるとよく出てくる、「入力したデータを一見適当に見える値にして返す」関数です。 ハッシュ関数については以下の記事にわかりやすくまとめているので、ぜひ参考にしてください! Pythonのドキュメントを参考に実装を進めていきます。 Pythonに限らず、プログラミング関係のドキュメントは非常に読みづらいです。 参考までに以下のPythonのドキュメントを見てみてください。 どうでしょうか? 読むのみ抵抗があるくらい細かいですよね? なのでこの記事ではドキュメントの重要な部分を抜き出してわかりやすく解説していきます! 「ハッシュ関数を実装してみたい」 「Pythonのドキュメント読んだけど実装までできなかった」 このような人のお役に立てれば幸いです。 前置きは早々に早速みていきましょう

                                                      [実践]Pythonでハッシュ関数を実装しよう!〜公式ドキュメントを参考に〜 - Qiita
                                                    • Ethereumのアドレス生成過程の理解のためにPythonでハッシュ関数keccak256を試す - Qiita

                                                      はじめに 仮想通貨のウォレットを持っていると、不規則な長い文字列をよく見ると思います。 Ethereumで使われるアドレスの生成過程について調べている中で、下記のような記述を見つかりました。 1.秘密鍵からECDSAで公開鍵(64バイト)を生成 2.公開鍵をハッシュ関数Keccak-256に通し文字列(32バイト)を得る 3.最初の12バイトを消し20バイトのアドレスになる 4.そのアドレスにprefixの0xを加えることで最終的なアドレスを得る(0x5eD8Cee6b63b1c6AFce3AD7c92f4fD7E1B8fAd9F) 参考:秘密鍵から公開鍵そしてアドレスが生成されるまでの流れ【仮想通貨】 keccak256がどのような関数なのか確かめるために触ってみました。 目次 keccak256とは Pythonによるkeccak256によるハッシュ値の出力 参考文献 keccak25

                                                        Ethereumのアドレス生成過程の理解のためにPythonでハッシュ関数keccak256を試す - Qiita
                                                      • ハッシュ関数とハッシュ値とは?特徴もわかりやすく解説! | Webpia

                                                        Webpiaはプログラミングとノーコードについて紹介するWebメディアです。主に10~30代向けに記事を執筆しております。

                                                        • ハッシュ関数の伸長攻撃 - BsBsこうしょう

                                                          まとめ ハッシュ関数の中には、SHA256のように伸長攻撃(Length Extension Attack)ができるものがある。 これがよく分からなかったので、伸長攻撃を行うライブラリHashPumpの実装を読むことで、 伸長攻撃がどのようにして行われるかを調査した。 調査の結果、以下のリンクに書いてあることが正しかった。(めっっっっっちゃ遠回りした……) ptr-yudai.hatenablog.com 1. 伸長攻撃とは 伸長攻撃とは、未知のソルトが先頭に結合されたハッシュが与えられたとき、 ハッシュ関数の出力が内部状態そのままであること ハッシュ関数で付加されるパディングが偽造可能であること の2点を利用して、既知のハッシュと文字列の情報を組み合わせて、全く新しいが、システムが正しいと判断するハッシュと文字列の組み合わせ を作成する攻撃である。*1 2. 実装 伸長攻撃ライブラリの実

                                                            ハッシュ関数の伸長攻撃 - BsBsこうしょう
                                                          • 暗号学的ハッシュ関数の最新版「BLAKE3 1.0.0」がリリース

                                                            BLAKE3は、前身のBLAKE2や、MD5、SHA-1、SHA-2、SHA-3より非常に高速な暗号化ハッシュ関数。 バージョン0.3.8以降の変更点としては、Hash::from_hex()が追加され、ハッシュ化のためのFromStrを実装したほか、Hash::from_hex()と同等のハッシュ表示を実装している。 さらに、constant_time_eqを使用してハッシュのPartialEq<[u8]>を実装したほか、32バイトの配列を返すようderive_key()を変更するとともに、Hasher::update_with_join()をHasher::update_rayon()に置き換えた。 ほかにも、constジェネリックを使用するarrayvecをバージョン0.7.0へアップグレードし、サポートするRustコンパイラの最小バージョンを1.51にするとともに、不安定な機能であ

                                                              暗号学的ハッシュ関数の最新版「BLAKE3 1.0.0」がリリース
                                                            • FirefoxやRustコンパイラ内で使われているハッシュ関数「FxHash」について調べてみた - Qiita

                                                              FxHashとは FxHashは暗号的に安全でない高速なハッシュ関数です。 64bit環境では64bitいっぺんに処理できることが強みでFirefoxやrustcの内部で使うハッシュマップなどに使われています。 rustcではFNV(これはバイト単位で処理する)からFxHashに変更することで衝突が少し増えたもののスピードが速いので全体としては性能の改善に繋がりました。 PR 参考: https://searchfox.org/mozilla-central/source/mfbt/HashFunctions.h https://github.com/cbreeden/fxhash https://github.com/rust-lang/rustc-hash アルゴリズム FxHashのアルゴリズムは超簡単です。 わかりやすさのためにrustのコードをrustc_hashより抜粋 pub

                                                                FirefoxやRustコンパイラ内で使われているハッシュ関数「FxHash」について調べてみた - Qiita
                                                              • コラム - グーグルのクラウドを支えるテクノロジー | 第147回 ネットワークスイッチにおけるハッシュ関数の課題(パート1)|CTC教育サービス 研修/トレーニング

                                                                [IT研修]注目キーワード Python UiPath(RPA) 最新技術動向 Microsoft Azure Docker Kubernetes 第147回 ネットワークスイッチにおけるハッシュ関数の課題(パート1) (中井悦司) 2023年3月 はじめに 今回からは、2022年に公開された論文「Hashing Design in Modern Networks: Challenges and Mitigation Techniques」を紹介していきます。この論文では、ECMPなどのマルチパス技術を用いた現代のデータセンターネットワークにおける、負荷分散用のハッシュ関数に関わる課題が説明されており、論文の筆者らが考案した、数学的な理論に基づいた解決策が紹介されています。ECMPのように長く使われてきた技術にもまだ改善の余地があると気付かされる点で、興味深い内容の論文です。 データセンタ

                                                                • オンライン麻雀サイト「天鳳」に見る暗号学的ハッシュ関数のしくみ

                                                                  この記事は Up&Coming という雑誌へ寄稿している内容とほぼ同一のものです。Up&Coming はフォーラムエイトさんという会社が発行している広報誌で、縁あって僕も記事を書かせていただけることとなりました。 「IT ならなんでも!」というご依頼だったのでネタチョイス的にこのブログとも相性がよく、寄稿した内容もブログに投稿することにしました。よければ本誌のほうもぜひお読みください(ネットで無料で読めます!)。 ===== 突然ですが、将棋と麻雀をそれぞれコンピュータ上で遊ぶことを考えてみます。私たちは不正のない公平なゲームを楽しむことを目的としていますが、残念ながらこの二種類のテーブルゲームのうち片方ではそれは難しいでしょう。両者の間にはある決定的な違いが存在しているからです。 それは私たちから見えない「舞台裏」があるかどうかです。将棋は盤面上に見えているすべての駒がゲームそのものであ

                                                                    オンライン麻雀サイト「天鳳」に見る暗号学的ハッシュ関数のしくみ
                                                                  • ExcelでSHA256ハッシュ関数を使用する - Qiita

                                                                    Excelで、たまーにハッシュ関数を使用したい時がある。 デフォルトでは対応していないので独自関数を定義する必要があり、ググれば情報はヒットするのだが、少しハマったので記録しておく。 環境 Windows10 Office365 執筆時点バージョン(バージョン 2109 ビルド 16.0.14430.20314) 64 ビット 手順 1. マクロ有効ブック(*.xlsm)としてExcelを保存する。 2. [開発]タブから[Visual Basic]を選択する。 3. 表示された画面左ペインで右クリックし、[挿入]->[標準モジュール]を選択。 4. 作成されたModule1に下記コードを貼り付け。 Public Function GetSHA256(ハッシュ値算出範囲 As Range) As String Const LENGTH_OF_HASH = 32 Const LENGTH_O

                                                                      ExcelでSHA256ハッシュ関数を使用する - Qiita
                                                                    • No183 暗号っぽいけど暗号じゃないハッシュ関数ってナニ?|えがおIT研究所

                                                                      ハッシュ関数というものがあります。 今まで「がんばりすぎないセキュリティ」で幾度となく使っている のですが、きちんと解説をしたことがありませんでした。 わかってしまえばどうということはないのですが、わかりにくい 部分もありますので、改めて解説しておこうと思います。 1. ハッシュ関数って数学?関数というくらいですから、やはり数学に関係があります。 ハッシュ関数というのは、元のデータをルールに従って加工して コンパクトなデータを得る計算方法のことを言います。 この計算で得た値のことをハッシュ値と言い、元データからハッ シュ値を計算することをハッシュ化と言います。 と言葉だけだとよくわからないので、具体的な例でいきましょう。 まず、次の文をハッシュ関数の一つSHA256でハッシュ化してみます。 「短かい文」 ↓ 0c192fff778a2d4c78b68599c3c465b328359d117

                                                                        No183 暗号っぽいけど暗号じゃないハッシュ関数ってナニ?|えがおIT研究所
                                                                      • ハッシュ関数ひとめぐり - hidekatsu-izuno 日々の記録

                                                                        現代のソフトウェア開発を支える大きな技術のひとつにハッシュ関数がある。ハッシュ関数とひとえに言っても用途に応じて必要となる特性にも違いがあり一概にこうだとは言い難い。ハッシュ関数の用途としては次の3つがある。 ハッシュテーブルのキー位置導出 改ざん検知 パスワードの安全な保管・比較 ハッシュ関数でまず連想されるのは最初に挙げたハッシュテーブルだろうか。プログラミング言語によって Map と言ったり連想配列と言ったりするが、文字列などのキー値からそれに紐づく値を取得するデータ構造の代表例だ。このようなデータ構造の実現に必ずしもハッシュ関数が必要なわけではないが、O(1)相当の処理となり高速なためデフォルトの実装にはおおむねハッシュテーブルが使われる。*1 2番目の改ざん検知では、暗号学的ハッシュ関数と呼ばれるものが使われる。ハッシュ関数の結果(ハッシュ値)から元の値が推測できないなどの工夫が

                                                                          ハッシュ関数ひとめぐり - hidekatsu-izuno 日々の記録
                                                                        • スプレッドシートにハッシュ関数を実装してみた【GAS】 - Qiita

                                                                          セキュリティ系の勉強を進めているうちに一方向ハッシュ関数についても触れ、 実装してみたいなぁと思いGASで実装してみました。 といっても、GASが最強に便利すぎてハッシュ関数の命令文が用意されていたので、ほとんど何もしなくても実装できちゃいました。 さらにさらに、先人がわかりやすいコードも残してくれていたので脳死状態でSHA256を実現できました。 すご。 実現したかったこと 「パスワードが記載されたシートをハッシュ化してCSVファイルに出力する。」 本当にそれだけです。なんとなくハッシュ後の値を別で保存するシートを用意していますが、実行するとどっちも更新されるので、認証的な効果は皆無です。 ちょっと改良すれば、認証機能を持たせることができると思いますので、いつか暇があったら実装してみます。 コード内容 function myFunction() { var currrentSheet =

                                                                            スプレッドシートにハッシュ関数を実装してみた【GAS】 - Qiita
                                                                          • Swift ハッシュ関数 SHA-256 - Qiita

                                                                            Secure Hash Algorithm 256 bit 入力データサイズに関わらず256ビットのハッシュ値を生成。 NIST(National Insitute of Standards and Technology)(アメリカ国立標準技術研究所)で標準化。 コード Example import CryptoKit var hello = "hello" var data = hello.data(using: .utf8) print(SHA256.hash(data: data!))

                                                                              Swift ハッシュ関数 SHA-256 - Qiita
                                                                            • 「DMZ」「ハッシュ関数」の解説 | IT study session〜よく分かるITパスポート試験の解説〜

                                                                              DMZとは? 「DMZ」とは、「DeMilitarized Zone(非武装地帯)」の略であり、外部ネットワーク経由の攻撃から、内部ネットワークを保護する緩衝地帯のことです。 インターネット上に公開されている「Webサーバー」、「メールサーバー」、「DNSコンテンツサーバー」、「Proxyサーバー」などは、外部に公開されているため、攻撃されやすく、不正アクセスを受ける危険に常にさらされています。 そこで、「ファイアウォール(FW)」と外部ネットワークの間に「DMZ(非武装地帯)」を設けることで、外部ネットワークへのアクセスを可能にしつつ、内部ネットワークを保護することができます。 DMZに関する問題(令和元年問92) ◆確認問題 外部と通信するメールサーバをDMZに設置する理由として,適切なものはどれか。 ア. 機密ファイルが添付された電子メールが,外部に送信されるのを防ぐため イ. 社員

                                                                              • 学習のSHA 〜ハッシュ関数の基本と安全性について学ぶ〜 | フューチャー技術ブログ

                                                                                こんにちは。ペンギンになりたいエンジニアの島ノ江です。 普段はCSIGというサイバーセキュリティのグループに所属していて、「FutureVuls」という脆弱性管理サービスの開発・営業などを行なっています。 秋のブログ週間の連載の17本目、「学習のSHA」というタイトルです。 暗号技術について学んでいると「ハッシュ値」という言葉に出会いますが、あまり詳細を追ったことはありませんでした。そこで今回はハッシュ関数およびその代表としてSHAに関する歴史や種類についてまとめます。念のため注意しますが、本記事と某アニメとは何も関係ありません。本当に。 本記事は次の2つを一次情報として参照しています。 光成滋生 (2021). 暗号と認証のしくみと理論がこれ1冊でしっかりわかる教科書 技術評論社(Amazon) NIST の 「Hash Functions」 プロジェクト(公式webページ) せっかくな

                                                                                  学習のSHA 〜ハッシュ関数の基本と安全性について学ぶ〜 | フューチャー技術ブログ
                                                                                • JavaでMessageDigestにないハッシュ関数を使う - 毎日へっぽこ

                                                                                  ユーザーの入力値から適当な文字列を生成する要件があった。 Javaで標準的に使えるハッシュ関数だとMD5やSHA1,2,3あたりになるが、計算速度は早いほうがいいということで、高速なハッシュ関数が使えないか調べてみたのでメモ。 環境 Javaで標準的に使えるハッシュ関数 標準外のハッシュ関数 Guava Commons Codec その他 振り返り 参考資料 環境 OpenJDK 11 11.0.12.7 Javaで標準的に使えるハッシュ関数 MessageDigestのJavadocにリンクのある、Javaセキュリティ標準アルゴリズム名#MessageDigestアルゴリズムに記載がある。 Java11の時点で、MD2, MD5, SHA-1, SHA-2, SHA-3が使える。 JVM実装に依存するため、実際に指定できるアルゴリズムを確認するには、 java.security.Secu

                                                                                    JavaでMessageDigestにないハッシュ関数を使う - 毎日へっぽこ