【 設置に関する注意事項 】
1. 絶対に解読されないと言う事はありません。
ハッカーや技術をもっている方には簡単に解読されると言う事を考えながら、
「生データーよりは安心」程度での利用とお考え下さい。
※ 企業秘密等々大切なデーターにてのご利用はお避け下さい。
2. 暗号化前に、元データーの保存をする事をお勧め致します。
3. バックキー作成の際は、バックキーにて復号テストをする事をお勧め致します。
4. バックキーの保存は、SCBkeyと共にフロッピー等に保存しPC内におかない事を勧め致します。
5. 暗号化はデーターが膨れ上がりますので、バイナリーファイルでの暗号化にはご注意下さい。
6. Windowsにての動作は [ls, cp, mv, du] のコマンド等が必要で、Cygwin環境以外での動作は致しません。
【 同梱ファイルとパーミッション 】
▼ Easy Secret Code library
※ FTPアップの際はバイナリーにて転送して下さい。
fedora/ESClib [755] (Fedora用) (公開 11/05/26)
fedora/_back-key/SCBkey [755] (Fedora用バックキー作成) (公開 11/05/26)
freebsd/ESClib [755] (FreeBSD用) (修正 11/05/26)
freebsd/_back-key/SCBkey [755] (Freebsd用バックキー作成) (修正 11/05/26)
linux/ESClib [755] (Linux用) (修正 11/05/26)
linux/_back-key/SCBkey [755] (Linux用バックキー作成) (修正 11/05/26)
solaris/ESClib [755] (Solaris用) (公開 11/05/26)
solaris/_back-key/SCBkey [755] (Solaris用バックキー作成) (公開 11/05/26)
windows/ESClib.exe (Win用) (修正 11/05/26)
windows/_back-key/SCBkey.exe (Win用バックキー作成) (修正 11/05/26)
※ ノートンでexeファイルが誤駆除されてしまう事が判明しwindows版は同梱から外しました。
尚、旧FreeBSD版 v0.90.2 は、別途ダウンロードして下さい。
FreeBSD 4.8 - gcc version 2.95.4 でのコンパイラー
FreeBSD 5.3 - gcc version 3.4.2 でのコンパイラー
readme.txt (説明ファイル)
【 オプションスイッチについて 】
● PSClib
スイッチ説明表示はスイッチ -h (help) にて下記コマンドにて表示。
$ PSClib -h
以下、表示と説明です。
Usage: ESClib [-dpbrw] [-kpbsrofw] [-nsrofw] [-t type] [-P option key]
[-F filename] [-DSah dirname] [-O filename]
[-l stdin data size] [-B] [-p] [-v]
-d : encrypt
-k : decrypt
-n : normal file search
# -d = 暗号化 -k = 複合化 -n = ノーマルテキストファイルデーター検索 #
----- -d -k -n Addition is optional ----
p : plural de/en
b : de/en Binary file
w : file print
s : search
o : or search (default is and)
t : line top search
r : file root search
f1 : file search
f2 : Directory upbringing file search
-----------------------------------------
# ※ -d -k -n 利用時の追加スイッチ #
# p = 複数のデーターを一つづつ一括処理(-n 指定時は無効) #
# b = 処理するファイルがバイナリーデータの際指定(-n 指定時は無効) #
# w = 処理したデーターをファイルプリントする場合指定 #
# (-F 指定時有効 他の時は -O スイッチにて ) #
# ※ 以下検索関連スイッチは -d b 指定時は無効 #
# s = ファイル内データーの検索の際指定 #
# o = or 検索の際指定 ディフォルト and 検索 #
# t = 各データーラインの先頭が一致するデーター検索 #
# r = 検索一致したファイル検索(ファイルの場所のみ抽出表示) #
# f1 = 検索一致したファイルデーターの抽出 #
# f2 = 検索一致したファイルを新たなディレクトリー層を作り #
# ここに抽出されたファイルをプリントアウト #
# ※ 指定例 ESClib -dp #
-T : encrypt Type [ 0 or 1 or 2 ] (default is 0)
-P : de/en cryption key
-F : de/en cryption of a designated file
-D : de/en cryption of a file in a designated directory
# -T = -d 指定時暗号化タイプ指定 0 or 1 or 2 ( ディフォルトは[0] ) #
# 注 : [1]指定 → 同一IP又はドメインのみ復号が可能 #
# (USER NAMEも含む場合あり) #
# [2]指定 → [1] + 同一インターフェイスのみ復号が可能 #
# ※ Solarisでは、rootユーザーのみインターフェイス可能 #
# #
# -P = -d -k 指定時任意パスワード指定 (50 bytes 以内) #
# -F = 暗号・複合化及び検索対象ファイル指定 例:-F ./key.txt #
# -D = 暗号・複合化及び検索対象ディレクトリー指定 例:-D ./key/ #
--------- -D Addition is optional -------
S : include a lower part hierarchy directory
a : dot (.) includes a beginning file
h : Only a file beginning a dot (.)
-----------------------------------------
# ※ -D 利用時の追加スイッチ #
# S = 指定ディレクトリー内のサブディレクトリーを含む #
# a = 対象ファイルを、dot (.)で始まるファイルも含む #
# h = 対象ファイルを、dot (.)で始まるファイルのみ処理 #
# #
# ※ディレクトリ内処理の際は ディレクトリ、実行可能ファイル、 #
# シンボリックリンク、ソケットファイル、FIFOは無効となります。 #
-O : print data in a file
-l : When EOF is not recognized, I appoint it
-B : appoint the file which it made in -L, and it is decrypt
-v : ESClib About
# -O = 処理されたファイルをプリントアウトする #
# ファイル or ディレクトリー名 例:-O ./key.txt #
# ※プリントアウト指定時にて、ここを指定しない場合のディフォルト #
# a) 暗号化 : ファイル or ディレクトリー名 + .SCE #
# b) 復号化 : ファイル or ディレクトリー名 + .SCD #
# c) 検索時 : ファイル名 + .SEARCH.txt #
# c) 検索時 : ファイル名 + .SEARCH.txt #
# 但し -F 指定がない場合は無効 #
# ※ ここまでの指定例 ESClib -ks -DSa ./enkey/ -O ./dekey/ #
# #
# #
# -l = EOFが認識されず(主にWinにて)プログラム終了しない場合データ #
# ー長にて終了させるデーターサイズの指定 例:-l 236 (byte) #
# -B -Lにて作成した、ファイルを指定し復号化 例:-B ./key.txt #
# -p = バックキー復号の際のパスワード任意指定 #
# -v = ESClib バージョン表示 #
● SCBkey
スイッチ説明表示はスイッチ -h (help) にて下記コマンドにて表示。
$ SCBkey -h
Usage: SCBkey -L -P -v
-L : Local PC Key Check
-P : PC Key encrypt key
-v : SCBkey About
-h : SCBkey Help
# -L = サーバー(PC)バックキー #
# ※ アウトされたデーターをkey.txt等としてファイルに保存 #
# ※ -T スイッチ 1 or 2 にて暗号化している場合において #
# 突然のサーバー(PC)故障等で交換となった場合に備えて #
# このファイルをフロッピー等に保存することをお勧め致します。 #
# この時の、復旧(複合化)の時に利用する事になります。 #
# #
# -P = バックキー作成時にパスワード指定 (任意 50 bytes 以内) #
# ※ 大事を取ってバックキーをパスワードで保護したい場合に指定 #
【 各設定について 】
● 使用例
コンソール(プロンプト)にての利用も可能ですが、
perl での使用例を下記に載せます。
1. perl ヘッダ部分
#!/usr/bin/perl
use IPC::Open2;
$esclib = '/usr/local/bin/ESClib'; # ESClibの場所
$scbkey = '/usr/local/bin/SCBkey'; # SCBkeyの場所
##########################################
2. ※ 暗号化サブルーチン内の記述例
$data = 'データー';
if(!open2(READ, WRITE, "$esclib -d")) {
エラー処理
} else {
print WRITE $data;
# WindowsにてEOFが認識されない場合に下記括弧内を記述、又は -l 指定をする
( print WRITE "\032\n"; )
close(WRITE);
while (
) {
if(/^ESCl\_ERROR/ ){
エラー処理; last;
} else {
$EncodeDate .= $_;
}
}
close(READ);
}
3. ※ 暗号化ファイルプリント時のサブルーチン内の記述例
$data = 'データー';
if(!open2(READ, WRITE, "$esclib -d -O ./key.txt")) {
エラー処理
} else {
print WRITE $data;
close(WRITE);
while () {
if(/^ESCl\_ERROR/ ){ エラー処理; }
}
close(READ);
}
4. ※ 複数データーを暗号化する時のサブルーチン内の記述例
$data1 = 'データー';
$data2 = 'データー';
$data3 = 'データー';
if(!open2(READ, WRITE, "$esclib -dp")) {
エラー処理
} else {
# 改行にて区分け
print WRITE "$data1\n";
print WRITE "$data2\n";
print WRITE "$data3\n";
close(WRITE);
while () {
if(/^ESCl\_ERROR/ ){
エラー処理; last;
} else {
# 格納されるデーターは「:」にて区分けされている(「:」のみの行 )
$EncodeDate .= $_;
}
}
close(READ);
}
5. ※ 検索時のサブルーチン内の記述例
$serach1 = '検索キー';
$serach2 = '検索キー';
$serach3 = '検索キー';
if(!open2(READ, WRITE, "$esclib -ks -F ./key.txt")) {
エラー処理
} else {
# 改行又は半角空白にて区分け
print WRITE "$serach1\n";
print WRITE "$serach2\n";
print WRITE "$serach3\n";
close(WRITE);
while () {
if(/^ESCl\_ERROR/ ){
エラー処理; last;
} else {
# 一致した行又は、ファイルデータ(そのファイルのファイルルート含む)が格納される。
$EncodeDate .= $_;
}
}
close(READ);
}
#########################################################
6. ※ 復号化サブルーチン内の記述例
$key = 'キー データー';
if(!open2(READ, WRITE, "$esclib -k")) {
エラー処理
} else {
print WRITE $key;
close(WRITE);
while () {
if(/^ESCl\_ERROR/ ){
エラー処理; last;
} else {
$DecodeDate .= $_;
}
}
close(READ);
}
7. ※ 複数データーを復号化する時のサブルーチン内の記述例
$key1 = 'キー データー';
$key2 = 'キー データー';
$key3 = 'キー データー';
if(!open2(READ, WRITE, "$esclib -kp")) {
エラー処理
} else {
# 「:」にて区分け
print WRITE "$key1:";
print WRITE "$key2:";
print WRITE "$key3:";
close(WRITE);
while () {
if(/^ESCl\_ERROR/ ){
エラー処理; last;
} else {
# 格納されるデーターも「:」にて区分けされている(「:」のみの行 )
$EncodeDate .= $_;
}
}
close(READ);
}
#########################################################
8. ※ バックキーサブルーチン内の記述例
if(!open(KEY,"$scbkey -L | ")){
エラー処理
} else {
while () {
if(/^SCB\_ERROR/){
エラー処理; last;
} else {
$BackKey .= $_";
}
} close(KEY);
}
注意: コンソールにても可能ですが、
-T 1 or 2 スイッチにて暗号化している場合はご注意下さい。
利用環境と同じ環境からの作成をして下さい。(乱数値が変わる場合もあります。)
● コンソール(プロンプト)での動作テスト例
注意 : Windows cygwin 1.7.9 環境でのテスト前の注意
特に、他のマシーンから持ってきた、ファイル等での利用の際は必ず、
所有権・パーミッションの確認をして下さい。
これらファイルは、777(実行ファイル)となっいる場合が多いかと思います。
ESClibは、実行ファイルを全てバスしてしまいますので、実行出来ません。
その場合はファイルパーミッションの変更(666等)をして下さい。
サブディレクトリーも入っている [ data] と言うテキストファイル格納ディレクトリーがあるとします。
1. 検索ワード [ test ] としての検索
※ 暗号化ファイルでの検索は、-nsr ではなく -ksr と置き換えて下さい。
・ルート表示
# ./ESClib -nsr -DS ./data -l 5 (-l 5 = データ長 + Enterキー)
# test
#
# CHECK FILE : ./data/xxx/xxx.txt ( 結果表示 )
・結果をファイルに書き込み
# ./ESClib -nsw -DS ./data -l 5
# test
./data.SEARCH.txt ( 結果プリントファイル )
---------------------------------------------------------------
# CHECK FILE : ./data/xxx.txt
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
# CHECK FILE : ./data/xxx/xxx.txt
XXXXXXXXXXXXXXXXXXXXXXXX
---------------------------------------------------------------
・ 一致したファイルをそのまま、別ディレクトリーにプリント
# ./ESClib -nsf2w -DS ./data -l 5
# test
./data.SEARCH ( 結果プリントディレクトリー )
※ ./data と同じディレクトリー層で、一致したファイルを抽出プリント
2. テキストファイルの暗号化
・単一ファイル暗号化
#./ESClib -d -F ./test.txt
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#./ESClib -dw -F ./test.txt ( プリントアウト )
./test.txt.SCE ( 暗号化プリントファイル )
・dataディレクトリー内ファイル暗号化 プリント
#./ESClib -dw -DS ./data
./data.SCE ( 暗号化プリントディレクトリー )
※ ./data と同じディレクトリー層で、暗号化ファイルプリント
・パスワード保護 -P オプション
#./ESClib -dw -DS ./data -P 1234
・パスワード保護 -P + サーバー情報保護 -T オプション
#./ESClib -dw -DS ./data -P 1234 -T 1 or 2
3. 暗号ファイルの複合化 ( 上記で暗号化したディレクトリーでテスト )
#./ESClib -kw -DS ./data.SCE
#./ESClib -kw -DS ./data.SCE -P 1234
※ パスワード保護をしている場合には -P オプション付加
./data.SCE.SCD ( 複合化プリントディレクトリー )
※ ./data.SCE と同じディレクトリー層で、暗号化ファイルプリント
・バックアップキーでの複合化
#./ESClib -kw -DS ./data.SCE -B ./key.txt
#./ESClib -kw -DS ./data.SCE -P 1234 -B ./key.txt -p 5678
※ パスワード保護をしている場合には -P オプション付加
※ ./key.txt にパスワード保護をしている場合には -p オプション付加