『巨大数』(鈴木真治)
最初にいくつかの大きな数のうんちくが多かった. メインの巨大数については重要部分が付録やコラムに押しやられて残念. 用語の定義もかなり雑. クヌースの矢印表記の定義も終端条件が抜けてる.
『巨大数』(鈴木真治)
最初にいくつかの大きな数のうんちくが多かった. メインの巨大数については重要部分が付録やコラムに押しやられて残念. 用語の定義もかなり雑. クヌースの矢印表記の定義も終端条件が抜けてる.
『カラスの教科書』(松原始)
約400ページ, ひたすらカラスについて書かれてる. イラストがかわいらしい. 東京都心部はほとんどハシブトガラスだが, 京都や奈良ではハシブトガラスとハシボソガラスがいるらしい.
しんどくて寝てるので読み物として丁度よい面白さ.
眠い
ひたすら眠い. ずっと寝てる. 夏ばてかなあ.
“Sliding right into disaster”の紹介
社内勉強会用の資料. ソフトウェアでのサイドチャネルってどこまで考えるべきものなのかなあ.
mcl on Browser
ようやくGMPとOpenSSLに依存しないmclができた.
テスト中にエッジケースでいくつか0で割っていたところが見つかったので修正(vintが例外を発生した).
emccで試す. 例外は応答しなくなるようでそれ関係のテストはオフにする. clock_gettimeがエラーになるのでgettimeofdayを使う.
ブラウザ上のWASMで256-bitのペアリングが7.2msecだった. ブラウザ上で動くのをみると感慨深い.
同じマシンでネイティブ実行だと0.3msecなので24倍遅い. ただこちらは64bit×64bit→128bit乗算を使ってるがemccでは32bitと同じように動かしてる. 32bit環境だとネイティブでも1.6msecなので4~5倍遅い程度. スタートとしてはまずまずなところか.
しかし, 今回はvint.hppのバグが気になってあまり集中して聞いてなかった. すいません.
「なんでこんな半環を考えたのか」という質問に対して「いろいろやって興味深いのが残っただけだろう(意訳)」という答えが面白かった.
土日連ちゃんで出かけると全然休んだ気がしない.
元ラボユースの人が二人発表していた. 若者すごいなと感心ばかりしていた.
今までは自分もがんばらないとなと思っていたが, まあ人は人, 自分は自分. 今やってることを粛々と進めようと思ってしまった(完全におじさん).
素数判定とか
vint.hppにisPrime()とか invModとかLegendreシンボルなどの関数追加. これでmclに必要なGMPの機能は一通り揃った. GMPなしでbuildできるようになったがテストはまだ通らない.
SHE
アドバイスもらってbgn.hppが大分すっきりした. HashTableの統合はもう少しあとで.
Vintクラスのリファクタリング
結構細かいところに神経使う. 早く終わらせてwasmで書いてみたいな.
休憩
結局今週は4日休んだ. 『パターン認識と機械学習の学習』が入った段ボール箱いっぱい届いたのスリップ入れというのをやる. 心を折らずにスリップ折ってる.
mpz_classもどき
今日も有給で休憩. 大分疲れがとれてきた気がする.
gmp.jsを試してみたが私の環境では重すぎるのか大きすぎるのか知らないけど動かなかった. 仕方がないので自前でmpz_classもどきを用意することにした.
以前作ったate-pairingの中にあるのを使おう. というわけでこれを取り出してコード整理する.
#include <iostream> #include <mcl/emu_mpz.hpp> // header only library int main() { mpz_class a("1"); for (int i = 1; i < 100; i++) { a *= i; } std::cout << a << std::endl; } ----------------------------------------------------------------------------- // output 93326215443944152681699238856266700490715968264381621468592963895217599993229\ 9156089414639761565182862536979208272237582511852109168640000000000000000000000
こんなのがFirefoxやChrome上で動いてるのをみるとやはり感動する. しかしこれは息抜きなのだろうか.
Re: 眠い
今日もしんどくて殆ど寝てる. 体がうごかん.
眠い
疲れがたまっていたのかめちゃくちゃ眠たい. 何度も寝直しても寝たりない.
ジュンク堂池袋店
知り合いにラムダノート・フェアで私の『クラウドを支えるこれからの暗号技術』が紹介されているよと教えていただいたので見に行ってみた. 『RPMLの学習 普及版』も売られていた. ここは本がたくさんあっていいなあ.
GLV for GT
BGN暗号の復号処理はGTの巾乗算powを3回するので重たい. GT(⊆ Fp12)のGLVによる巾乗算アルゴリズムを実装した. 1.7倍ほど速くなった.
例によってGLVによるpowはFp12の一般の元に対してはおかしな値になる. 1のr乗根であるときしか使えないのに注意する(テストが通らなくて最初焦った).
サイボウズ・ラボ入社して10年経った
入社したのが2007年の7月1日. Xbyakの開発やペアリングの実装研究も同じぐらいやってる. いろいろあったが長いこと居られた・自由にさせてもらえたものだ. とても感謝.
最近は外部の研究・開発グループに声をかけていただける機会も増えてありがたい.
担当したラボユースの学生も, それぞれ活躍されてるし私もがんばらないと.
Microsoft MVP再受賞できたらしい. こちらもありがたい.