【NFT】素人によるハッシュ関数解説 for プログラミングゼミ

NFTの改ざん不可能の肝(きも)はハッシュ関数にあると思います。

しかし、きちんと学んで正確に語るにはハードルかなり高いです。

あくまで素人が表面的に調べたにすぎませんのでその辺ご了承ください。

なおプログラミングゼミ(だけではないですが)で動画を作成しているのでプログラムの話もあります。



ハッシュ関数について初歩的なことを雑に説明した動画です。
動画の最後にでてくるまとめ⬇️
入力データのサイズに関係なく 出力されるハッシュ値のサイズは一定
出力されるハッシュ値は一見乱数的だが、 入力されるデータが同じならば 入力の度同じハッシュ値が得られる
なお ハッシュ値から元データを復元するのは極めて困難(一方向関数)

ハッシュ関数はいくつかある様ですが、これらの性質は共通しているはず(タブン)。



⬇️プログラムの解説⬇️


キャラ(オブジェクト)の操作(移動・拡大縮小・色の濃淡 etc.)するにはキャラ単位でプログラムを記述しなくてはならない(記述エリアがキャラごとに異なる)。

しかしキャラの呼び出しはどのエリアからでも記述できる。
今回のプログラムは表示と音声が大半で、キャラ自体の動きはさほどない(拡大縮小くらい)。

そのため、プログラム記述の大部分を固定キャラである「はいけい」に集中させた。
プログラムを集中させると全体の把握がしやすいので楽である。

ただ…個人的には単調なプログラムをズラーと並べるのはやや美学(笑)に反する。

追記(7/1)
テキスト(文章)に合わせて「ゆっくり棒読みトーク」というアプリで音声を当てました。

当然ながら「文章の長さ=音声の長さ」なわけですが、音声の時間(秒数)を適当に見積もったため、テキスト表示と音声がズレまくる始末…。

秒数は、音声の保存先を見れば分かるのでそれに合わせて「○びょう まつ」の秒数を変更(プログラムがほぼ1ヶ所だったので変更楽だった)…1回づつアテレコ(アフレコ?)し、計6回やって確認…タイミングはあまあまでした。
5回目と6回目(ラストの長文20秒)がちょっと余裕なくて(計算では1秒間の余裕あり)、なかなか計算どおりにはいかない。

この動画作成には他にも背景透明化やテキストの画像化アプリ使ってます。