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

CentOS 5 (Xen)でdomUのVG名をdom0から変更する

virt-install でCentOS 5をテキストモードでインストールすると、LVMのVG名がVolGroup00に固定されてしまいます。VGが同じだと後で悲しい状況になることが多いので、インストール後に変更しておいた方が無難です。変更する方法はいくつかあると思うのですが…

Wicket 1.4-m3 で Generics の仕様変更

ちょうど少し前にWicket 1.4でのGenerics化にて大論争というページを教えてもらったのですが、その結論が見えてきたみたいです。 This release is our final take on how to apply generics to our codebase with restraint. We hope to provide an elegant …

URLのパス部分に%2Fを含む時の扱い

Web

お知り合いのページを見て初めて知ったのですが、Apacheは標準ではパス部分に %2F(/をエスケープしたもの) を含むURLに対して404を返すそうです。このままだと、最近流行り(?)の "/" でパラメータを区切る場合に、"/" 自体を値に含めることができません。そ…

自然言語で検索ってどうなんだろう?

グーグル先生を超える良回答連発、Powersetを使ってみたタイトルは「グーグル先生を超える良回答連発」なのですが、個別の検索結果をページレベルで見るとそれほど違わない感じです。Googleでは答えが見つけられなかった例として「MacBook AirってUSBポート…

int *n; *n = 5;

はてなブックマークとかで話題になっていたこのコード int main( void ) { int *n; *n = 5; printf( "%d\n", *n ); ... C/C++のポインタの機能--参照渡しのような処理 一見すると普通(?)のコードですが、初期化されていないnを使っているので危険ってやつで…

Wicket+SpringをJavaRebelでリロード可能にしてみた

JavaRebel 1.1M2 の変更点に Springでも動くようになったという記述を発見して、ちょうど良い機会だったので、前から気になっていた Wicket + Spring (wicket-spring-annot) な環境での問題に対処してみました。 Now you can develop Spring with JavaRebel …

RFC 4347 (DTLS) について調べてみた

AES-CTRの時に出てきたDTLSについて調べてみた。DTLSはRFC4347になっているようなので、それを読んでみた時の各章ごとのメモ(意訳?)です。RFC 4347 Datagram Transport Layer Security 1. Introduction TLSは広く普及しているけどTCPのような信頼性があるチ…

Bouncy CastleでOpenPGP鍵を操作する

Bouncy CastleのOpenPGP用ライブラリ(bcpg)を使ってOpenPGP鍵を操作する方法のメモです。以前の日記にsecring.gpgを読み込んで利用する方法がありますので、今回はそれ以外の操作が対象です。 PGPSecretKeyを生成する public PGPSecretKey generateSecretKey…

JCEでAES/CTRを試してみた

TLSの例を調べたついでにJCEで実装する方法を調べてみた。CTRモードを使う時の最大の問題はIVをどう扱うかということだったけれど、JCEのCipherではinit()時くらいしかIVの指定する方法がないような気がする。この場合、複数のブロックを暗号化する場合にIV…

AESのCTRモード(TLSとDTLS用)

AESのCTRモードはストリーム暗号が実現できたり、推奨されるモードに入っていたりする割にはCBCモードと違って情報が少ないのですが、IETFのドラフトにTLSの場合の話があったので、それを調べてみた時の各章ごとのメモです。AES Counter Mode Cipher Suites …

Wicket 1.3.1 が出てた

メーリングリストを見てたらWicket 1.3.1のアナウンスが流れてました。 修正点が結構たくさんあります。以前から1.3.1が出てからと言っていたので、そろそろ1.4も動き始めるのでしょうか?幻の2.0でのGenericsサポートはとても良い感じだったので、Generics…

暗号で使用できるビット数を調べる

Javaは標準では「強力ではあっても制限付きの暗号」という微妙な表現の暗号しか使うことができません。これはブロック暗号なら128ビットまで許可、といったビット数による輸出(輸入?)規制に合わせるために、使用可能なビット数を制限するという意味のようで…

はてなスターって自分の日記にも付けられるのか

この星って押すとどうなるんだろう?と思って何気なく押してみたら自分の日記に星が付いてしまった。何の機能か深く考えたことがなかったけど、調べてみたらこれってWeb拍手みたいなものだったようで。自分に星を付けれる仕様ってのはどうなんだろうと思わな…

JSR-82を使ってBluetoothデバイスを探索する

JavaでBluetoothデバイスを探索する方法のメモJavaとWiiリモコンをBluetoothでつなげてみようという記事に触発されて試してみました。といってもWiiリモコンをもっていないので、同じページで紹介されていたbluecoveを使ってみただけです。bluecoveはDLLを含…

UPnPを使ってルータの外向けIPアドレスを取得する

UPnPを使ってルータの外向けIPアドレスを取得する方法のメモルータのIPアドレスを取得するには、最初にネットワーク内のルータを見つけ出す必要があります。UPnPではSSDP(Simple Service Discovery Protocol)というプロトコルを利用してネットワーク内のデバ…

Wicketが生成するアドレスを今風(?)にする

Wicketが生成するアドレスは標準だとこんな感じで非常に見た目がよろしくないです。 http://localhost:8080/app/?wicket:bookmarkablePage=page.HomePageこんな時はmountBookmarkablePage()を使って特定のパスにページをマッピングすることですっきりします…

JavaからGnuPG(PGP)の鍵を利用する

鍵生成のついでにJavaから利用する方法のメモ自力で読み込みプログラムを作成すると大変なので、Bouncy Castleのライブラリを利用します。必要なjarファイルはbcprovとbcpgの二つになります。最初にGnuPGの鍵が保存されているsecring.gpgを読み込みます。読…

GnuPG(gpg)で暗号用RSA鍵を作成する

GnuPGで暗号用RSA鍵を作成する方法のメモGnuPGはデフォルトではElgamal暗号用の鍵しか作成できませんが、後からRSA暗号用の鍵を追加することはできます。新規に署名用と暗号用のRSA鍵を作成するコマンドはこんな感じになります。 $ gpg --gen-key Please sel…

JavaRebelが良い感じになってきた

気がついたらJavaRebelの1.1M1がリリースされてました。購入した人にはメールで教えてくれても良いのになぁと思いつつ、素直にRSSリーダーに登録しろということなのでしょうね。 JavaRebel 1.1 M1 Released変更点自体はアノテーションのリロードに対応したと…

JCEでDiffie-Hellman鍵交換を行う

JCEでDiffie-Hellman鍵交換を行う方法を調べた時のメモ*1。内容はAとBが秘密鍵を交換するシンプルなものです。最初にAがベースとなる素数等のパラメータを生成します。AlgorithmParameterGeneratorを使わずに、AlgorithmParametersのinit()にDHAlgorithmPara…

persistence.xmlを読み込んでテーブルを作成する

Hibernateでは起動時に自動的にテーブルが作成されるが、それを手動で実行する方法のメモ。Hibernateでのテーブル作成には、SchemaUpdateというクラスを利用すれば良いが、これにはConfigurationという設定クラスを渡す必要がある。起動時にHibernateが構築…

Hibernateで自動生成されるカラム名に文字を付加する

最近PostgreSQLからMySQLに乗り換えたのですが、Hibernateがhbm2ddlでテーブルを生成する時にエラーが出るようになってしまいました。Hibernateでテーブルの自動生成をすると、フィールド名がそのままカラム名になるため、MySQLの予約語と同じフィールド名が…

はてなにお引越し

自前サーバからはてなダイアリーに引っ越してみました。