Skip to content

暗号化メモ帳。ファイル単位で複数暗号ファイルの読み書きを行うメモ帳&ビューワ

License

Notifications You must be signed in to change notification settings

seraphy/cryptnotepad

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

[暗号化メモ帳プロジェクト]
JDK1.6以降、実行可能jar形式を目指す.

[起動オプション]
システムプロパティ appbase.dir でベースディレクトリを指定可能。省略時は自アプリの位置。

システムプロパティ appdata.dir でアプリケーション設定ファイルの格納先を指定可能。
指定しない場合は、APPDATA環境変数、ユーザホームの順に用いられる。
(Macの場合は~/Library)

セキュリティ上保存が望ましくないものを除く一般的な設定は、
ユーザ固有のappdata.dir下に保存される。


[ログとログ設定ファイル]

初回起動時に、アプリケーション設定ファイルの格納先にログフォルダとログ設定ファイルが作成される。
ログ出力レベルは、ログ設定ファイルで調整可能。

autoRemoveLogがfalseの場合は作成したログファイルは自動削除されない.
autoRemoveLogを省略するかtrueを指定した場合は、
警告以上のログがない場合はアプリケーション終了時にログファイルは自動消去される。

logExpireDaysには古いログファイルを削除する日数を指定する.(自動削除の有無にかかわらず.)


[ファイル形式]

保存される暗号化ファイルは、
IV + AES/CBC/PKCS5Padding
で暗号化したもの。
ブロックサイズは128bit.


復号化されたデータは、先頭にヘッダがあり、ヘッダ終了を示す行頭改行につづいてボディとなる。
ヘッダは、
Content-Type: text/plain;charset=UTF-8\r\n
Content-Length: nnn\r\n
\r\n
のような形式となっている。


暗号化キーは、
PBKDF2WithHmacSHA1
でパスフレーズとソルトから計算したものを
AES用の対称暗号化キー(128bit)に変換したもの.

パスフレーズは画面から入力されるパスワードテキスト.

ソルトは、任意のファイル(キーファイル)のコンテンツをSHA-512でダイジェストをとったもの.
キーファイルの指定がない場合はソルトは埋め込みの固定値を用いる.(単にレインボー攻撃を避けるだけ.)
キーファイルはローカルマシンのほか、http/https上にあっても良い.
(proxyはシステムのデフォルトを用いる.)


[画面操作]
最小化: パスフレーズとクリップボードがクリアされます.
メインウィンドウの閉じるボタン: クリップボードがクリアされます.
CTRL-Q: 緊急最小化、編集していないドキュメントを閉じて最小化する.
CTRL-E: 設定画面を開く.
CTRL-W: ドキュメントを閉じる.
CTRL-S: 上書き保存する.

About

暗号化メモ帳。ファイル単位で複数暗号ファイルの読み書きを行うメモ帳&ビューワ

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages