都立工業高等専門学校(現、東京都立産業技術高等専門学校)を卒業、
機械工学が専攻だった癖に論理回路やオーディオ関係の技術者らしい。
趣味として、音楽関係のフリーソフト開発や、DTM・チップチューン活動をしたり、
オーケストラや吹奏楽団でオーボエを吹いてる人。
上のアドレスの『@』と『nifty』の間に『spa.』を追加して下さい。
画像で記載されているアドレスでも届きますが、スパム防止のフィルターを多数導入しています。
本ホームページはリンクフリーです。
リンクは、トップページ
"http://shaw.la.coocan.jp/"
にお願いいたします。
Top Page\ Security Top\ Algorithm\
ここでは、CMSでサポートされる手法DSA及びRSA (PKCS #1 v1.5)について言及する。
DSA関数についての詳細は、"FIPS Pub 186 [DSS]"を参照。
DSA関数を用いる場合は、ダイジェスト・ハッシュ関数はSHA-1で無ければならない。
電子証明書(公開鍵証明書)に格納する公開鍵の為のoidは以下の通り。
parametersは、以下のASN.1構造を持ち、3つの整数p,q,gで構成される。
parametersは省略可能であるが、
その場合は電子証明書(公開鍵証明書)中の公開鍵のパラメータと、同じ値が適用される。
parameters ::= SEQUENCE { p INTEGER, q INTEGER, g INTEGER }
公開鍵は、以下のASN.1で定義される。
Dss-Pub-Key ::= INTEGER
アルゴリズムのoidは以下の通り。
parameterは、無しで無ければならない。
署名値は、DSA関数は2つの値を生成するので、1つの署名値として見せるために以下の様にエンコードする。
Dss-Sig-Value ::= SEQUENCE { r INTEGER, s INTEGER }
RSA関数についての詳細は、"RFC 2437 [NEWPKCS#1]"を参照。
電子証明書(公開鍵証明書)に格納する公開鍵の為のoidは以下の通り。
parameters ::= NULL
公開鍵は、以下のASN.1で定義される。
RSAPublicKey ::= SEQUENCE { modulus INTEGER, publicExponent INTEGER }
アルゴリズムのoidは以下の通り。
parameterは、何れも、以下のASN.1構造に示したとおり、NULLで無ければならない。
署名値は、RSA関数が生成する値は1つなので、そのままエンコードする。
parameters ::= NULL