PKCS#5パディングでAES暗号化/復号
2011-01-25-1 / カテゴリ: [暗号][perl] / [permlink]
メモってたつもりが書いてなかったので今更シリーズ
《続きを読む》
Referrer (Inside):
[2011-01-25-2]
tar + gz + gpg で暗号化バックアップ
2006-09-28-1 / カテゴリ: [暗号][shell][command] / [permlink]
共用ファイルサーバへのファイルバックアップ、とか。
--batch で対話モードのオフ
-o FILENAME で出力ファイル名の指定
--passphrase-fd N でパスフレーズの入力ディスクリプタ指定
1年以上シェルスクリプトでコード書いてないから書式が…(汗)
参考:Symmetric key encryption by GnuPG
PASS=パスフレーズ SRC=バックアップ元 DST=バックアップ先 % echo ${PASS} | { tar zcvf - ${SRC} | gpg --batch -o {DST} --passphrase-fd 3 -c; } 3>&0
--batch で対話モードのオフ
-o FILENAME で出力ファイル名の指定
--passphrase-fd N でパスフレーズの入力ディスクリプタ指定
1年以上シェルスクリプトでコード書いてないから書式が…(汗)
参考:Symmetric key encryption by GnuPG
DESで暗号化
2006-07-25-2 / カテゴリ: [programming][暗号][perl] / [permlink]
Crypt::DES で。超概略。
暗号化
復号
暗号化
use Crypt::DES; my $data = ...; my $key = ...; my $cipher = Crypt::DES->new($key); my $encdata = $cipher->encrypt($data);
復号
my $encdata = ...; my $key = ...; my $data = $cipher->decrypt($encdata);平文($data)と鍵($key)は8バイトであること。
DES(Data Encryption Standard)ノート
2006-07-25-1 / カテゴリ: [programming][暗号] / [permlink]
3DESでなくDES。今更と言うべからず。仕事で(SDKにないから)作るハメになったのでメモ。
1. FIPS 46-2 (DES), Data Encryption Standard
2. DESの解説
3. DESアルゴリズムチェッカー
4. DES暗号プログラム
2はわかりやすくてgood。デバッグは3で^^;
完成品(C/C++)は4で。
1. FIPS 46-2 (DES), Data Encryption Standard
2. DESの解説
3. DESアルゴリズムチェッカー
4. DES暗号プログラム
2はわかりやすくてgood。デバッグは3で^^;
完成品(C/C++)は4で。
HMAC-MD5 ってナニ?
2005-07-17-3 / カテゴリ: [暗号] / [permlink]
ぺるりめものダイジェスト2 cram-md5認証 (module)Digest-HMAC_MD5であまり良くわからず書いていたが、ちょっと確認。
HMAC メッセージ認証のための鍵付ハッシング(RFC2104 日本語訳) かな。
とりあえず…
でもって、
自分の言葉で極簡単にまとめると、
1. パスと 0x36 の XOR にデータをくっつけたものの MD5 ハッシュを取得。
2. パスと 0x5C の XOR に↑をくっつけたものの MD5 ハッシュを取得。
3. ↑が結果
ということか。な?
HMAC メッセージ認証のための鍵付ハッシング(RFC2104 日本語訳) かな。
とりあえず…
以下のように 2 つの異なる固定文字列 ipad と opad を定義する (その 'i' と 'o' は、inner と outer を連想させるように付けてある):は、固定で用意ぽいな。ちなみに 0x36 は "6" で、0x5C は "\" だ。
ipad = バイト値 0x36 を 64 回繰り返した文字列
opad = バイト値 0x5C を 64 回繰り返した文字列
でもって、
データ `text' に対して HMAC を計算するためには、以下のようにする。
H(K XOR opad, H(K XOR ipad, text))
すなわち、
1. B バイトの文字列を作るように K の終わりまでゼロを追加する
2. (例えば、K が 20 バイトの長さで B=64 であるならば、K に 44 個のゼロのバイト値 0x00 が追加される) ステップ (1) で計算された B バイトの文字列と ipad との XOR(ビット毎の排他的論理和)を計算する。
3. ステップ (2) の結果生じた B バイトの文字列に、データ `text' のストリームを追加する。
4. ステップ (3) で生成されたストリームに H を適用する。
5. ステップ (1) で計算された B バイトの文字列と opad との XOR(ビット毎の排他的論理和)を計算する。
6. ステップ (5) の結果生じた B バイトの文字列に、ステップ (4) の H の結果を追加する。
7. ステップ (6) で生成されたストリームに H を適用し、その結果を出力する。
自分の言葉で極簡単にまとめると、
1. パスと 0x36 の XOR にデータをくっつけたものの MD5 ハッシュを取得。
2. パスと 0x5C の XOR に↑をくっつけたものの MD5 ハッシュを取得。
3. ↑が結果
ということか。な?
gpgでファイル暗号化
2005-03-28-2 / カテゴリ: [linux][暗号] / [permlink]
text.log を共通鍵暗号化する
$ gpg -c text.log パスフレーズ: パスフレーズ(再入力): $ ls text.log text.log.gpg復号
$ gpg text.log.gpg パスフレーズ:-d を付加するとSTDOUTへ吐き出す
最終更新時間: 2013-05-02 16:12