p.tatapa.org

p.tatapa.org

ると | @ruto@p.tatapa.org

コンピュータ関連、その他言葉遊びなどを書いてます。アイコンは「腕時計」。ヘッダー画像は2-3フィンガーツリー。

#いろいろなアドベントカレンダー

「今日もまた、どこからか猫が来てこたつの中に入っていきます。飼い猫ではないようです。中を覗いてみると、一つになった毛の塊がパラボラ状になって熱を集めていました。触ろうとしたら怒られました」

#いろいろなアドベントカレンダー

「アドベントカレンダーを開けると『チョコレート.jpg』が入っていた。ふと前を見ると『table_old2.jpg』の上に『IMG_0238.JPG』が乗っていた。」

#いろいろなアドベントカレンダー

頭が鏡になった背の高い人物と向き合うと、その鏡に毎日違う顔が映る。背後には不思議な世界が垣間見え、吸い込まれそうになるが、鏡の隅にある小さなひび割れがこの世界になんとか引き戻してくれる。いつまで耐えられるだろうか。

『ズートピア2』観てきた。もう警察が主役として活躍する映画は作れないよ、という感じだった。主役の2人は作中の大部分で警察として行動していないし、警察官という設定をもて余している感があった。精神的にも、黒幕組織が窃盗犯を殺そうとしたときに法執行機関の一員として「逮捕して裁判を受けさせるべきだ」みたいなセリフでまず説得しようとせず、いきなり実力行使で窃盗犯を助けようとする。

1作目(2016年)はジョージ・フロイド氏殺害事件(2020年)の前で、新人警察官である主人公が街中の監視カメラに勝手にアクセスして容疑者を追うような描写もまだあった(当時、教育的に良くないのではと思ったのをよく覚えている)。

#いろいろなアドベントカレンダー

「毎日ベッドに入ると壁の向こうから音楽が聞こえてくる。どれも聞いたことはあるが名前は思い出せない」

#いろいろなアドベントカレンダー

「気付くと私はアロエの鉢植えになっていた。
1日につき1人がやってきて、まじないのような歌に乗せて言いにくい秘密を打ち明けてくる。鉢植えである私には何もできないが、感謝はされている」

#いろいろなアドベントカレンダー

「毎年、12月になると瓶のコーラが24本入ったケースを買って毎日1本ずつ飲んでいくんだ。ベランダで飲んでいると、なんでこの時期に大々的にコーラの広告を打つ必要があったのか身に沁みてわかるよ。だから24日の夜には代わりに暖かい飲み物を枕元に置いておく。真空断熱で一晩中保つんだ」

#いろいろなアドベントカレンダー

「4人目の黒幕をようやく倒した。しかしまだ20人くらいいる気がする」

#いろいろなアドベントカレンダー

「『幽霊はいない』、『幽霊は嘘だ』、『幽霊は見間違えだ』と1日1回ポストイットに書いて壁に貼っていく。まだ先は長い」

FIDO2のリカバリは、リカバリコードを直接入力させるのではなく、リカバリコードから導出した鍵ペアを対象として、ログイン用のリンクを暗号化して送るのがよいんだろうか。

いや、WebAuthnを拡張して、ブラウザがリカバリコードをユーザから受け取って、オリジンと混ぜた上で鍵を導出して、ウェブサイト側が出したチャレンジに署名して送るようにすべきか。ただ、ブラウザのUIに何かを入力させるのは偽UIによる攻撃を受けるという問題はある。一方で前述のリンクを送る方法はLogin CSRFが排除できないのが気になる(対応する公開鍵が知られていないなら問題ないかも)。

補足: ログイン用のリンク(マジックリンク)をメールで送る方法は、暗号化していない場合はメールサーバの安全性に全体の安全性が制限される。暗号化する場合は鍵をどうするかという問題がある。一つの解はリカバリコードから鍵導出関数で鍵を導出する方法である。しかしこれでも攻撃者のアカウントで被害者にログインさせる攻撃(Login CSRF)を防げない(被害者がメールの差出人を確認しない前提の場合)。ただしリカバリコードに対応する公開鍵が攻撃者に未知の場合は多分安全。

#いろいろなアドベントカレンダー

「1日目を開けたらチョコレートが際限なく出てきて世界がチョコレートで埋め尽くされてしまった。次の日はキャンディが吹き出してきて、チョコレートが見えなくなるほど積もった。どちらの上で寝るのが楽だったかはわからない。まだ23マスある」

#いろいろなアドベントカレンダー

「朝起きたら台所にドリンクバーができていた。とりあえず『コーラ』とだけ書かれたボタンを押す。それがいちばん味が想像できたから」

プログラムに脆弱性があることをゼロ知識証明で示せるようにする、という研究。

https://dl.acm.org/doi/10.1145/3747589

LLVM中間コードやRISC-Vコードを元に、プログラムがある入力に対してある性質(未参照メモリの参照や、機密情報が公開された領域に置かれていることなど)を満たすことをゼロ知識証明で証明する。

まず、実行トレースのウィットネスを検証する検証器を作る(これは脆弱性を引き起す入力無しで作れるので、検証者側で作れる)。

次に、脆弱性を引き起す入力を使って、証明者が実行トレースのウィットネスを作成する。

そして検証者は実行トレースのウィットネスを検証する。

LLVM中間コードやRISC-VコードはMicroRAMという中間コードに変換してからゼロ知識証明の回路に変換する。

最適化のためにシンボリック実行などを活用する。

ゼロ知識証明でメモリ安全性侵害、情報流出、インタラクティブなネットワーク攻撃、DoSなどを表す方法を工夫している

TIL: “high and dry”は見捨てる、置き去りにするといった意味で、元々は船が陸に乗り上げた状態を指す。

OpenAIの開発者向けサイトのアクセス解析に使っているMixpanelが攻撃を受けて、開発者の氏名やメールアドレス等が流出したらしい。パスワードやトークン等は無事でパスワードの変更も推奨していないとのこと。

https://openai.com/index/mixpanel-incident/

Mixpanelの利用は停止したとしているけど、今後アクセス解析業者に氏名やメールアドレス等を渡すのを止めるとは現時点で書いていない。単純なアクセス解析であれば匿名IDでよいはずだけど、何に使っていたんだろうか。

全ての異なる位置じゃなくて全ての連続する位置で十分だった。

ヘンペルのボゴソート: 入力のリストをシャッフルする。入力のリストの順番を並び替えたリストのうちソートされていないものを列挙し、最初にシャッフルしたリストと同じものがあれば最初からやり直す。なければ終了する。

「入力のリストの順番を並び替えたリストのうちソートされていないものを列挙」する際、ソート処理そのものや、リストがソートされていることの判定は必要ないことに注意。具体的にはリストに含まれる異なる値の各ペアに対して以下を繰り返す: リストの中の2つの異なる位置を列挙し、ペアの値を逆順に置く。残りの場所は残った要素で全パターン列挙しながら埋める。(列挙には重複が含まれるがアルゴリズムの正しさには保たれる)

🎉 Unison 1.0 has landed!

After years of engineering, design, and community collaboration, we’re excited to announce this milestone!

Help us spread the word!
https://www.unison-lang.org/unison-1-0/

Google CloudのGemini APIの使用料が、21日分から取得できない? コンソールのレポートのグラフが途切れている。

»