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

Irreducible polynomial testing

F_3上の多項式 - 186::Diary の話.“A Computational Introduction to Number Theory and Algebra”の§21.1にありますね.コメントの原始根による解説が証明への糸口か.最小多項式と拡大体の関係を使っているのか? References A Computational Introduction…

すっかり間を空けてしまった…

すっかり間を空けてしまいました,三日坊主だなぁ…

切り上げ

10 なら 10、 11 なら 20 になる関数を作りたい - IT戦記 x + a - ((x % a) || a); とか: Math.ceil(x / a) * a; とか…JavaScriptは良く知らないので(いや手元のFirebugを使えば良いんだけど),Cで書き直してみる: #include <math.h> int main() { int i; int a = 10</math.h>…

CSS 2008に「ペアリング」のセッションができている件について

コンピュータセキュリティシンポジウム 2008 (CSS 2008) - TOP CSS 2008に「ペアリング」のセッションができている件について.査読付き国際会議だと既にフォーカスした会議(Pairingなど)がありますが,国内シンポで見たのは初めてかも?おもしろそうですね.

ScalaパズルをRubyで書くと

リストから表を生成する - Onion開発再開しつつある日記 短くなるかなー? $ ruby -e '$;=",";puts"<table>",ARGV.join.scan(/\d(?:.?\d){0,2}/).map(&:split).map{|x|s="";3.times{s+="<td>#{x.shift}</td>"};"<tr>#{s}</tr>"},"</table>"' 1, 2, 3, 4, 5, 6, 7 こうかな.

mkmf.rbが提供するhave_headerにて実行されるCPP="gcc -E"を,C++用にCPP="g++ -E"にする

require "mkmf" Config::CONFIG["CPP"] = "g++ -E" # … have_header("hoge/foo.hpp") # … Config自体はmkmf.rbでrequireされているrbconfig.rbで定義されている模様.

HTTP用のページにHTTPSでアクセスする # 2008-08-06 - T.Teradaの日記

HTTP用のページにHTTPSでアクセスする # 2008-08-06 - T.Teradaの日記 ブラウザの対処IEは、不完全なHTTPSのページ(HTTPSページにHTTPが混ざっているページ)に出くわした場合、セキュリティ警告ダイアログを表示して、ユーザに対してHTTPのファイルの読込…

REXMLのDoS脆弱性

REXMLのDoS脆弱性 入力の量や構造の複雑さがそのままDoS攻撃に繋がるということか.再帰的なアルゴリズムだと,スタックを消費して落ちそう → スタック数に制限を設けることができるようにして,適切な例外を設定して回避,とかするのかな?個人的にWebアプ…

メソッド定義のデフォルト式はどう実現するのか?

Rubyではメソッドの定義で,仮引数のデフォルト値を与える式も定義することができる. # この場合はcとdがデフォルト値が与えられた仮引数という def foo(a, b, c = [], d = {})ことになる [a, b, c, d] end foo(0, 1, 2, 3) => [0, 1, 2, 3] foo(0, 1, 2) =…

Ruby拡張ライブラリのコード中で`オブジェクトがあるクラスのインスタンスである'ことを確認する方法

こうかな? VALUE rb_cUserDefined; /* … */ VALUE test(VALUE self, VALUE input) { if (rb_cUserDefined == rb_obj_class(input)) { return Qtrue; } else { return Qfalse; } } /* … */ void Init_your_ext(void) { /* … */ rb_cUserDefined = rb_define_…

C++でClass#allocateを登録する

Ruby 1.8.7 p72 VALUE rb_cUserDefined; /* … */ VALUE your_class_singleton_allocate(VALUE klass) { VALUE allocated; /* … */ return allocated; } /* … */ #ifdef __cplusplus extern "C" { #endif void Init_your_ext(void) { /* … */ rb_cUserDefined…

巨大な集合から条件付きでランダムに元を取り出す

またまたふと思ったことが…加算か非加算かを問わず,「無限かもしくは巨大な個数の元(「濃度」って言うんだっけ?)を持つ有限な集合」があるとして,ある条件(例えば扱う集合が整数なら「10ではない」など)が入力として与えられたときに,この条件を満足する…

ちょっと思い付いたコード

ObjectSpace.each_object.to_a.select {|obj| obj.class.equal?(Class) and obj.methods.any? {|m| m == "new" or m == "allocate"}}.length クラスのうち,インスタンスを生成することができるものを集めて,その長さを返す.

RSpecのbeforeはどう書いた方が良いかな?

次のRSpecを使ったテストコードはどちらが良いだろうか? Type 1 describe Foo, "hoge" do before do @arg = gen_something() end it "bar" do Foo.new(@arg).should be_an_instance_of(Foo) end # ...略,以降のコードに@argは現れない. end Type 2 descri…

erubisを使って埋め込みパターンをCのコメントのパターンにしてみた

メモ.何をやっているかはコードで判断して下さいm(_ _)msample.c.erbの内容: #include <stdio.h> /* * ここは普通のコメント */ /**=%[/\* これもコメント *\/]**/ int main() { printf(/**=%w["Hello\ world!" "Hello\ Hatena!"].join(" \"\\n\" ")**/ "\n"); retur</stdio.h>…

ふと見かけ,懐しく感じたので

schemeの内部状態変数 - (programmer? yaotti) こうかな? (define make-func (let ((state 0)) (lambda (x) (let ((ret state)) (set! state x) ret))))

DOI Resolver用の検索pluginを適当に書いてみた

DOI Resolver用の検索pluginを適当に書いてみた. <SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/"> <ShortName>DOI</ShortName> <Description>DOI Resolver</Description> <InputEncoding>UTF-8</InputEncoding> </searchplugin>

FPGA and ASIC Implementations of the $\eta_T$ Pairing in Characteristic Three

FPGA and ASIC Implementations of the $\eta_T$ Pairing in Characteristic ThreeCryptology ePrint Archive FDKなど、情報セキュリティ対策を施したペアリング演算用のICを開発 - 数と符号と計算機と日記 IACR ePrintに報告書が出てる.

今週号のNARUTO

今週号のNARUTOに「共通鍵暗号」とか「アルゴリズム」なる言葉が…忍術は何でもできるなぁ.数字のような羅列がいくつかあるけど,一体どんな演算や符号を使っているのやら…

早い事はいいことだ? - A虎@Hatena::Diary

早い事はいいことだ? - A虎@Hatena::Diary ひたすら効率を追求するのもいいけれど、「何故、そうなるか」が判るコードも、きちんと並列に残す事は重要だね。これからも気をつけよう。 100% Pure JavaなARToolkit # 工学ナビBBS 「どこをどのように高速化・…

結局時間が空いた

結局,日記を書く間隔が大幅に空いてしまいましたね.

Applications of Pairing-Based Cryptography: Identity-Based Encryption and Beyond # NIST Conference Program home page

Applications of Pairing-Based Cryptography: Identity-Based Encryption and Beyond # NIST Conference Program home page NIST.gov - Computer Security Division - Computer Security Resource Center プレゼンテーション資料がいくつか公開されている.

C++でRubyの拡張ライブラリを書く時のためのメモ

Cのサンプルは沢山あったし動いたけど,C++の場合は色々とやらなければならないことがあるようだ.とりあえず簡単に書いたものを貼っておきます: #include<cstdio> #include<ruby.h> typedef VALUE RubyType(...); static VALUE add(VALUE self, VALUE va, VALUE vb) { VALUE</ruby.h></cstdio>…

FDKなど、情報セキュリティ対策を施したペアリング演算用のICを開発

FDKなど、情報セキュリティ対策を施したペアリング演算用のICを開発

[ruby-list:44839] Ruby 1.8.7-preview1 has been released

[ruby-list:44839] Ruby 1.8.7-preview1 has been released とりあえずビルドしてみた.makeと,make testは問題無く通過.make checkはいくつかfail. Finished in 290.527752 seconds. 1) Failure: test_event(TestSetTraceFunc) [./test/ruby/test_settra…

Rubygemsのインストールがよくわからないので,手動で修正

Rubygemsが1.1.1にアップグレードしていたので,インストールしてみた.最初はgemから更新してみたが,何だか上手く行かなかったので,配布元から落として直接インストールした.それでもよくわからない結果になったので,とりあえずインストールログを見る…

院生活 - 白のカピバラの逆極限 S144-3

院生活 - 白のカピバラの逆極限 S144-3 物工の人と会い、就職活動をすると時間に余裕ができる、ということで合意した。 ものを考える時間が欲しい。 いい就職に興味はないのだが、それだけのためにもう少しやればよかった。 二週間に一回程度しかコードを書…

はじめてのプログラミング - 白のカピバラの逆極限 S144-3

はじめてのプログラミング - 白のカピバラの逆極限 S144-3 「検算をしなくていい」ってことが分からなかった。 私も同感だけど,ツボったwwwwwwwwwwwwwwwちなみに数名の方から同様な話を聞いたことがあります.偶然だろうけど,似てるなんて,不思議だwww

久しぶりに計算機室へ

久しぶりに計算機室に入った.で,今そこから更新中.流石に誰も居ない.正直,触り心地は前のシステムの方が良かったと思う.

久しぶりに声出し

久しぶりに歌の練習で20分くらいの声出しをした.やっぱりしっかりやるとコントロールの度合いに差が出るな.