パスワードマネージャーを乗り換えると、CSVに乗らずに置いていかれるもの
パスワードマネージャーを替えようと思い立つきっかけは人それぞれだと思う。値上げの通知が届いた、使っていたサービスが機能を終える、家族と共有したくなった、スマートフォンとパソコンで別々のものを使うのに疲れた。理由が何であれ、乗り換えの作業そのものは一見すると単純で、古いほうで書き出して、新しいほうで取り込めば終わるように見える。 ところが、取り込みが「完了しました」と表示されたあとで、少しずつ抜け落ちに気づくことになる。二段階認証の6桁のコードが出てこない、パスキーでログインしていたサイトに入れない、メモに添付していた身分証のスキャン画像が無い、家族と共有していたフォルダーが自分だけのものになっている。どれも、乗り換え先のサービスが悪いわけではなく、書き出しに使うファイルの形式がそもそも運べるものを限っているせいで起きる。 この記事では、乗り換えのときに何が素直に移り、何が置いていかれるのかを先に整理したうえで、置いていかれるものを拾いながら進める手順を順番に見ていく。 乗り換えの共通語はCSV、運べるのはログインの基本項目まで KeePassXCの取り込み画面。CSVのほかに、各社の専用形式が並ぶ。選べるなら専用形式のほうが運べるものが多いImage: VulcanSphere / GPL パスワードマネージャー同士の引っ越しで、いちばん広く通じる形式はCSVだ。カンマで区切った表形式のテキストファイルで、どのサービスも書き出しと取り込みの両方に対応している。Google パスワード マネージャーやChromeの書き出しでは、1行に1件ずつ、サイトのURL・ユーザー名・パスワードが並ぶ。Googleに取り込むときも、ファイルの1行目にこの3つの列名があることが条件で、1回の取り込みは1ファイル3,000件までという上限もある。 運べる項目の少なさは、ほかのサービスでもあまり変わらない。KeePassの説明書きは、CSVで扱えるのはタイトル・ユーザー名・パスワード・URL・メモだけで、それ以外の項目は扱えないとはっきり書いている。各社のCSVには独自の列が足されていることもあるが、受け取る側がその列を理解できなければ、結局はメモ欄に流し込まれるか、黙って捨てられる。言い換えると、CSVは「ログイン情報の最小公約数」を運ぶための形式で、それ以上のものを運ぶ前提では作られていない。 一方で、多くのサービスは自社の専用形式も用意している。1Passwordの「1PUX」、Bitwardenや Proton Pass のJSON、KeePassのXMLなどだ。これらは項目の種類や区分けをそのまま保てる。KeePassの場合、XMLで書き出せばグループの階層や作成日時まで含めて残せる。乗り換え先がその専用形式の取り込みに対応しているなら、CSVより先にそちらを選ぶのが、置いていかれるものを減らすいちばん簡単な方法だと思う。 ただ、専用形式でも運べないものはある。そして、どの形式で書き出しても、新しいサービスの側で設定し直さなければならないものもある。次の節では、それをひとつずつ見ていく。 取り込みの後に気づく、置いていかれる5つのもの Bitwardenのデスクトップ版。ログインのほかにカード・個人情報・メモという種類があり、CSVで運べるのはログインとメモだけImage: VulcanSphere / GPLv3 一つめは、二段階認証のワンタイムコードの「種」だ。パスワードマネージャーの中には、ログイン情報と一緒に30秒ごとに変わる6桁のコードを表示できるものがある。このコードは、サイトで二段階認証を設定したときにQRコードで受け取った秘密の文字列から計算されている。BitwardenのCSVにはこの文字列を入れる列があり、1Passwordの1PUXにも含まれるが、GoogleのCSVやKeePassの標準のCSVには入る場所が無い。書き出し元か取り込み先のどちらかが対応していなければ、コードは移らない。しかも、パスワードは移ったので一見ログインできそうに見えるのが厄介で、いざログインしようとしたところで初めて6桁のコードが出せないことに気づく。 二つめはパスキーだ。パスキーは、パスワードの代わりに端末の中の鍵でログインする仕組みで、ここ2年ほどで対応するサイトが急に増えた。パスキーの中身はCSVには一切入らない。Bitwardenの場合、パスキーはJSON形式の書き出しにだけ含まれ、CSVには含まれないと案内されている。1Passwordのデスクトップ版は、パスキーを書き出せないことを説明書きで明言している。パスキーの扱いは乗り換えでいちばん状況が変わりつつある部分なので、次の節でまとめて扱う。 三つめは添付ファイルだ。パスポートや保険証のスキャン画像、ソフトウェアのライセンスファイル、暗号資産のウォレットの復元用メモなどを項目に添付している人は多いと思う。添付ファイルはCSVにはもちろん入らず、多くのサービスでは標準の書き出しにも含まれない。LastPassから移る場合も、添付ファイルは書き出しの対象外で、一件ずつ保存し直す必要がある。 四つめは、ログイン以外の種類の項目と、自分で足した項目だ。クレジットカード、住所や電話番号をまとめた個人情報、Wi-Fiの設定、ソフトウェアのライセンス番号のような項目は、CSVではまず運べない。BitwardenのCSVの書き出しも、カードと個人情報は対象外で、JSONでなければ含まれない。ログイン項目に自分で追加した「秘密の質問の答え」や「PINコード」のようなカスタム項目も、運べたとしてメモ欄の文字列にまとめられてしまうことが多い。 五つめは、区分けと共有の設定だ。フォルダーやタグ、家族や同僚と共有していた保管庫、緊急時に家族が中を見られるようにする設定などは、データというより「サービスの中の関係」なので、書き出しにはほとんど残らない。フォルダー名だけはCSVの列で運べるサービスもあるが、誰と共有していたか、誰がどこまで編集できたかは、新しいサービスで組み直すことになる。 ほかにも細かい落とし穴はある。たとえば、LastPassのCSVでは「&」や「<」のような記号が「&」のような書き方に置き換わって出てくることがあり、パスワードにこれらの記号を含んでいると、取り込んだあとにそのパスワードだけ合わなくなる。また、Appleのパスワードアプリの書き出しには、家族のグループで共有しているパスワードやWi-Fiのパスワードが含まれない。書き出したファイルの件数と、元のサービスの件数を一度見比べておくと、こうした抜けに早めに気づける。 パスキーは、移すより作り直す前提で考える YubiKey 5C NFC。セキュリティキーに作ったパスキーはキーの中から出せないので、乗り換えの影響を受けないPhoto: Daniel Aleksandersen / CC BY 4.0 パスキーが乗り換えで扱いにくいのは、もともと「持ち出せないこと」が安全の前提として設計されてきたからだ。パスワードは文字列なので、紙に書いても表に並べても同じように使える。パスキーの秘密鍵は、利用者自身にも見えないまま保管庫の中で使われる。そのため、パスキーを別のサービスへ移す安全な方法は、長いあいだ用意されていなかった。 この状況を変えようとしているのが、FIDO Allianceがまとめている「Credential Exchange」という仕組みだ。パスキーやパスワードを、平文のファイルを経由せず、送り出す側と受け取る側の間で暗号化したまま受け渡すための約束事で、受け渡しの手順(CXP)とデータの書式(CXF)の二つからなる。2024年10月に最初の草案が公開され、Apple、Google、Microsoft、1Password、Bitwarden、Dashlane、NordPassなどが策定に加わっている。 利用者の手元に届いたのは2025年からだ。AppleはiOS 26とmacOS Tahoeで、この仕組みを使ったパスキーとパスワードの書き出し・取り込みに対応した。1PasswordやBitwardenのスマートフォン版も対応を進めていて、たとえば1Passwordはデスクトップ版ではパスキーを書き出せない一方、スマートフォン版からはこの仕組みでほかのサービスへ渡せる。ただし、対応しているのは今のところ主にスマートフォンの上で、送り出す側と受け取る側の両方が対応していなければ使えない。乗り換え元と乗り換え先の組み合わせによっては、まだこの方法が選べないことも多い。 そこで、乗り換えの計画を立てるときは、パスキーは「移せたら運がいい」くらいに考えておくのが現実的だと思う。移せなかったパスキーは、サイトごとに新しいサービスで作り直す。パスキーは一つのアカウントに複数登録できるので、新しいサービスで追加してから、古いほうのパスキーをサイトの設定画面で削除すればよい。この作り直しが終わるまでは、古いパスワードマネージャーを解約せずに残しておく必要がある。 もう一つ覚えておきたいのは、写真のようなセキュリティキーに作ったパスキーは、そもそもパスワードマネージャーの外にあるという点だ。キーの中の鍵は取り出せないので、乗り換えの影響を受けない代わりに、キーをなくせばそのパスキーは使えなくなる。予備のキーをもう1本登録しておくか、パスワードマネージャー側のパスキーと併用しておくと安心だ。 乗り換えの手順、古い保管庫は最後まで残す 書き出したCSVは、鍵を差したまま置いた南京錠に近い。取り込みが済んだらすぐに消すPhoto: Shillings1005 / CC BY-SA 4.0 ここまでを踏まえて、乗り換えの手順を順番に並べてみる。私は、次の順番で進めるのがいちばん抜けが少ないと考えている。 最初に、古いサービスはそのまま残し、解約や削除の予定を決めない。新しいサービスのアカウントを作ったら、マスターパスワードを決め、新しいサービス自体の二段階認証と、復旧用のコードや緊急キットを保存しておく。乗り換え先に入れなくなるのがいちばん困る事態なので、ここは書き出しより先に済ませる。 次に、書き出しの形式を選ぶ。乗り換え先が古いサービスの専用形式を読めるなら、そちらを使う。CSVしか選べない場合は、その前に、ワンタイムコードの種と添付ファイルとパスキーを持っている項目を洗い出しておく。多くのサービスには項目の絞り込みや並べ替えがあるので、「ワンタイムコードあり」「添付あり」「パスキーあり」の項目を一覧にしてメモしておくと、あとで拾い忘れずに済む。家族で使っている場合は、共有していた保管庫ごとに書き出す必要があるかどうかも確かめておく。 三つめに、取り込む。取り込み画面では、ファイルの形式と書き出し元のサービスを正しく選ぶ。Bitwardenなどは、書き出し元ごとに取り込みの方法を選べるようになっていて、同じCSVでも書き出し元の選択を間違えると列がずれる。取り込んだら、件数を古いサービスと見比べ、記号を含むパスワードの項目をいくつか開いて、正しく移っているかを確かめる。 四つめに、重複を整理する。取り込みの機能は、ふつう同じ項目がすでにあるかどうかを見ない。同じファイルを二回取り込んだり、古いサービスとブラウザの両方から取り込んだりすると、同じ項目が二つずつ並ぶ。新しいサービスに重複を探す機能があれば使い、無ければ名前で並べ替えて目で確かめる。 五つめに、ブラウザのパスワード保存を切る。ChromeやEdgeの「パスワードを保存するか尋ねる」と「自動ログイン」が有効なままだと、新しいパスワードマネージャーとブラウザが同時に保存を勧めてきて、どちらに何が入っているのか分からなくなる。パソコンとスマートフォンの両方で、使わないほうの自動入力を止めておく。 六つめに、置いていかれたものを拾う。ワンタイムコードが移らなかったサイトは、サイトの設定で二段階認証を一度解除して設定し直すか、認証アプリの追加でQRコードを読み直す。パスキーは前の節のとおり作り直す。添付ファイルは古いサービスから一件ずつ保存して、新しいサービスに添付し直す。共有と緊急時の設定も、ここで組み直す。 七つめに、書き出したファイルを消す。CSVや暗号化していないJSONは、すべてのパスワードが読める状態のただのテキストファイルだ。ダウンロードフォルダーに置いたままにしない、クラウドの同期フォルダーに入れない、メールやチャットで送らない。取り込みと確認が済んだら削除し、ごみ箱も空にする。保管しておきたいなら、Bitwardenの「パスワードで保護された」JSONのように、書き出しそのものを暗号化できる形式を選ぶ。 最後に、古いサービスを解約する。私は、新しいサービスだけで2週間から1か月ほど過ごし、ふだん使うサイトに一通りログインできたことを確かめてから解約するようにしている。その間に、古いサービスを開かなければ解決できなかった場面がなければ、乗り換えは済んだと考えてよいと思う。 ...