2013-01-01から1年間の記事一覧

つらぽよいsecure boot

つらぽよAdvent Calendarにネタを提供したわけでも何でもないんだけど自宅のデスクトップPCが壊れた。具体的に言うと、HDDがクラッシュした。 もうちょっと正確に言うと、動作真っ最中に子供がぶつかって倒してしまった。 昔のHDDと比べると、あのカツーン、…

Evalモナドを使って無限リストの並列評価

http://partake.in/events/9f226986-2812-441d-98b7-1f5cca9be432 にオンライン参加してきたので、Evalモナドを使った並列評価を行なってみた。 コード ナイーブな素数探索アルゴリズムです。指定された数以上の一定個数の素数を抽出します。 import Control…

モンゴメリ乗算の例

下記を参考にモンゴメリ乗算 - Wikipediaを参考に、サンプルとして、モンゴメリ乗算の計算をしてみる。`11*18(mod 169)`を計算する。単純に、 11*18 = 198 = 1*169+29で答えは`29`です。これをあえてモンゴメリ乗算でやってみる。モンゴメリ乗算は剰余算を減…

__builtin_ffsはどこへ行くのか?(続編)

GCのマークビット判定などに使用される__builtin_ffsというGCCコンパイラ拡張が気になったので 「__builtin_ffsはどこへ行くのか? - dec9ue's diary」って記事をちょっと前に書きました。続編です。さて、何の話だったかというと、__builtin_ffsとは Other …

Lucky Thirteen Attackの攻撃手法を説明してみるよ

Lucky ThirteenはTLS, DTLSのCBCモードを利用する暗号の脆弱性を突く攻撃です。具体的に言うと、CBCモードに対するPadding処理の弱い部分を狙ったPadding Oracle攻撃の一種です。その影響とか、脅威とか、対処法とかは結構いろんな所で説明されているのです…

__builtin_ffsはどこへ行くのか?

__builtin_ffsとはなにか?Other Builtins - Using the GNU Compiler Collection (GCC) http://gcc.gnu.org/onlinedocs/gcc-4.1.2/gcc/Other-Builtins.html によると Returns one plus the index of the least significant 1-bit of x, or if x is zero, ret…

"volatile"をつけると値がレジスタに浮かない

チラ裏にでも書いてろ、って内容なので何ですが、、、C言語の変数にvolatileをつけたら値がレジスタにキャッシュされたままにならないね、と言う話を実際に確認してみました、と言う話。そのままろくに考えないでやってみます。まず、下記のような意味のない…

copying_gcという車輪の再発明

なんか、最近、「車輪の再発明をしよう」みたいな話がちょくちょくあるので、GCを再発明してみた。「車輪の再発明をしよう」の例: https://twitter.com/viscuit/status/288181884658257922…まぁ、再発明っていうか、スクラッチで書いただけなんですけど。 …

JHCのGC解説

GC Advent Calendarでは時間的に書けなかった、JHCのGCの解説をまとめる。 JHCのGC概要 JHCには下記3つのGCオプションがある。 GCなし BOEHM GC JGC このうち、上の二つはgc_noneによる実装であり、JGCはgc_jgcによる実装である。 この様な構成になったのは…