2021-12-23
トラストなデータ構造「Rensa」実装のため、先日ひとまず実装したTAI64N-esでしたが、せっかくなので64bitで記録される秒を全部使った実装へと更新しました。src on GitHub
TAI64N-es - TAI64N in JavaScript (ES module)
TAI64Nの特徴、1970年1月1日を0x4000000000000000として、64bitの秒で表しますが、前回の実装は先頭の400000部分を読み飛ばす手抜き実装でした。 今回、大きな数を扱えるBigIntを使ってフル規格に対応!

@39f5dec2799eb10a00000000 138億年前 宇宙誕生
@3dfc9f8c83e0b10a00000000 46億年前 地球誕生
@44606231515fb12500000000 100億年後
@fc3080a830cbb12500000000 4300億年後(もうすぐ上限)
@02baa07493ddb10a00000000 1400億年前(もうすぐ下限)

閏秒というややこしい問題含みなUTCのデータ表現UNIX時間は、秒を32bitとしているため、2038年に上限を迎えてしまう、2038年問題が有名です。 TAI64Nも64bitと有限なので問題は起きますが、そのタイミングは4300億年後!宇宙誕生のはるか前の1400億年前まで表現できるので、いろんな時間表現に活用可能です。
地球46億年の歴史と生命進化のストーリー | JAMSTEC×Splatoon 2『Jamsteeec(ジャムステ〜ック)』」(なんと、スプラと国の研究機関のコラボ!)


DATE2TAI64N
億年単位の日付には未対応ですが、日付とTAI64Nの相互変換ウェブアプリを追加しました。


CyberValley, Japan
サイバーな話題を毎週お届けするラジオ番組、サイバーバレージャパン、1周年迎えて今年最後の放送完!


Rensa
クリスと進めた、公開鍵を使って電子署名をしながら信用を繋いでいく新データ構造「Rensa」の実装。連鎖のひとつひとつを変更履歴を表示(playback)する機能を追加!

ワクチン接種証明書アプリ」でも使われ始めたサイバー時代のハンコ、電子署名。いち早く使いこなしましょう!

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY / @taisukef / アイコン画像 / プロフィール画像 / RSS