追記 (2023/12/7)
この記事の内容は、ネタで書いていますので、実生活でこの記事のようなパスワードの保管をすることは決してしないでください。パスワード保護のセキュリティ性能は、非常に低いです。バカなことやってるなという気持ちで読んでいただけると幸いです。
メモ帳でパスワードのファイルを開いて閉じる際に、必ずパスワードのファイルのタブを閉じてください。タブを閉じないと、セキュリティがないことに等しくなります。(そもそも、この記事で紹介しているパスワード管理方法自体が、非常に脆弱なので、決してマネしないでください。)
Google Driveのソフトを使ってることがバレたら、詰むかもしれません。(そもそも、この記事で紹介しているパスワード管理方法自体が、非常に脆弱なので、決してマネしないでください。)つまり、一番の対策は自分のPCを他人に不正利用されないことと、きちんとしたパスワード管理ソフトを使うことです。
プロローグ
1PasswordやBitwardenなど、便利なパスワードを記憶するためのものが多くある中、それでもパスワードをメモ帳にメモし続けたバカな私のある1日の物語。
txtファイルのセキュリティをできるだけ高めた話
当然メモ帳にパスワードを書き続けるのだから、txtファイルがむき出しの状態で存在するわけです。txtファイルをどうやって隠そうかを調べていると素晴らしいサイトを見つけました。4thsight.xyzさんのブログ記事がとても参考になったので、4thsight.xyzさんのブログ記事に書かれていたコードをベースに改良した話をしようと思います。方法は、至ってシンプルです。Windowsのいくつかのディレクトリには、パス以外にCLSIDが指定されているものがあります。今回は、いくつかのCLSIDが指定されているディレクトリからゴミ箱を選びました。windowsのゴミ箱の仕組みが、txtファイルを隠すのに大いに役に立ちました。具体的な話をすると長くなってしまうので、割愛させていただきます。そろそろ、コードを見せるべきだと思いますので、以下に4thsight.xyzさんのブログ記事を掲載させていただきます。
4thsight.xyzさんのブログ記事をざっくりまとめると、当該のDosコマンドをバッチファイルに書いて実行すると、Privateフォルダーが生成されて、フォルダー以降の階層をパスワードロックできるといった感じです。このPrivateフォルダーの中に、パスワードを書いているtxtファイルを入れます。(感動したのですが、ドライブのオプションで「保護されたオペレーティング システム ファイルを表示しない」のチェックを外しても、privateフォルダー内部は表示されません。)
ここまでくれば、もうひと頑張りです。後は、今使用しているPCが壊れても大丈夫なように、Google Driveでtxtファイルをローカル環境と共有しておきましょう。
Google Driveを利用して、パスワードファイルをクラウドに保存する
そもそも、Googleを信用してパスワードを保存していいかという問題はありますが、今回はこの問題は無視します。ということで、さっそく手順を説明していきます。(以下のコードでは、4thsight.xyzさんのブログ記事でPrivateフォルダーが生成されるところをPasswordフォルダーに変更しています。)
Step1
以下のURLからGoogleDriveのソフトウェアをインストールしましょう。
Step2
以下のようなディレクトリ構造になるようにフォルダーとtxtファイルをデスクトップに作成します。
~./Desktop
├──Password
... ├── Password
│ └── password <-このディレクトリをGoogleDriveと共有させる
│ └── password.txt <-これがパスワードをメモしているtxtファイル
└── password.cmd <-これが実行ファイル
Step3
Google Driveの設定を開いて、「passwordディレクトリ」(上記の図を参照)を共有フォルダーに設定する。
*GoogleDriveのアプリを起動すると、タスクトレイにGoogleDriveのアイコンが出現するので、アイコンを左クリック->歯車アイコンを左クリックで、設定画面に行けます。
Step4
バッチファイルに以下のコードを記述します。
*GoogleDriveのアプリのバージョンや実行ファイルの場所が違っている場合は、適宜変更してください。
*Passwordの部分は、ご自身のお好きなパスワードに変更してください。
@ECHO OFF
if EXIST Password.{645FF040-5081-101B-9F08-00AA002F954E} goto UNLOCK
if NOT EXIST Password goto MDLOCKER
:CONFIRM
echo Can I lock a folder?(Y/N)
set/p "cho=>"
if %cho%==Y goto LOCK
if %cho%==y goto LOCK
if %cho%==n goto END
if %cho%==N goto END
echo An invalid key was entered.
goto CONFIRM
:LOCK
taskkill /F /IM GoogleDriveFS.exe
pause
ren Password Password.{645FF040-5081-101B-9F08-00AA002F954E}
attrib +h +s Password.{645FF040-5081-101B-9F08-00AA002F954E}
goto :EOF
:UNLOCK
echo Please enter your password.
set/p "pass=>"
if NOT %pass%==Password goto FAIL
attrib -h -s Password.{645FF040-5081-101B-9F08-00AA002F954E}
ren Password.{645FF040-5081-101B-9F08-00AA002F954E} Password
cd /
cd C:\Program Files\Google\Drive File Stream\75.0.2.0\
start GoogleDriveFS.exe
cd /
cd %USERPROFILE%\Desktop\Password\Password\password\
start password.txt
goto :EOF
:FAIL
echo Password is incorrect.
goto UNLOCK
:MDLOCKER
md Password
echo A Password folder has been created.
goto :EOF
Step5
作成したバッチファイルをVisualBatでexe化します。
以下、VisualBatの紹介兼ダウンロードリンクの埋め込まれたサイトです。
Step6
これで完成です!お疲れさまでした!
参考文にさせていただいたサイト