暗号化
この文書では、新しい暗号化システムでデータを暗号化し、古いシステムを削除する方法について説明します。
新しい暗号化システムについての詳細はブログ投稿をご覧ください。
まず、以下のコマンドで新しい鍵ペアを作成します:
npx @capgo/cli key create
このコマンドはアプリに新しい鍵ペアを作成します。秘密鍵は安全な場所に保管することが重要です。秘密鍵をソースコントロールにコミットしたり、信頼できない相手と共有したりしてはいけません。
このコマンドは、Capacitorの設定から古い鍵を削除しますが、古い鍵ファイルは削除しません。CLIはこれらを保持し、アプリストアの更新を受け取っていない古いプラグインを使用しているアププリへのライブアップデートの送信を継続できるようにします。これにより移行が容易になります。
移行時に「古いアプリのサポートと移行を容易にするために、新しいチャンネルで暗号化を設定しますか?」と尋ねられたら、同意してください。これによりCapacitorの設定に新しい「defaultChannel」オプションが追加されます。これにより、アプリは「encryption_v2」チャンネルを使用するようになります。これにより、新しい暗号化はそれをサポートするアプリでのみ使用されます。アプリストアの更新を受け取っていないアプリは、以前のデフォルトチャンネルを引き続き使用します。
次に、JSバンドルをビルドして新しいチャンネルにアップロードする必要があります。以下のコマンドを実行してください:
npx @capgo/cli bundle upload --channel encryption_v2
その後、アプリが「encryption_v2」チャンネルに自己割り当てできるようにするために、このコマンドを実行します:
npx @capgo/cli channel set encryption_v2 --self-assign
これでアプリを実行できます。新しい暗号化システムが使用されます。
古いチャンネルに新しいJSバンドルをアップロードするには、以下のコマンドを実行するだけです:
npx @capgo/cli bundle upload --channel production
Capacitorの設定については心配する必要はありません。これはCapgoにアップロードされることはありません。
すべてのユーザーがアプリを更新した後(3〜4ヶ月かかる可能性があります)、Capacitorの設定から「defaultChannel」を削除できます。
その後、以下のコマンドで古いチャンネルを削除できます:
npx @capgo/cli channel delete encryption_v2
「encryption_v2」チャンネルを削除すると、それをデフォルトとして使用していたすべてのアプリは「production」チャンネルを使用し始めます。