6

チーム ID が異なる同じデバイス上の 2 つのアプリ間でデータをプライベートに共有するにはどうすればよいですか? 以前はペーストボードを介してこれを行っていましたが、iOS7 でアプリ固有のペーストボードを使用するには、同じチーム ID が必要になりました。

私たちが解決しようとしている問題は、ユーザーが別のアプリを購入した場合に、あるアプリの機能のロックを解除することです。これはバックグラウンドで静かに行われることを望んでいます (そのため、元々はアプリ固有のペーストボードを使用していました) が、ユーザーがプロセスを偽装して機能のロックを解除するのを防ぐためのセキュリティが必要です。

私たちが調査しているアプローチの 1 つは、システム ペーストボードを使用し、デバイス固有のキーでデータを暗号化することです。両方のアプリが同じアルゴリズムを使用してキーを生成する限り、これは機能するはずですが、問題はアプリ固有のキーを生成する方法になります。

この種の機能ロック解除スキームを有効にする最善の方法に関するアドバイス/ガイダンスは非常に役立ちます。

4

1 に答える 1

11

アプリケーション間のデータ送信にもペーストボードを使用しています。これは、アプリケーション間で中規模のデータを送信するのに非常に便利なツールです。私は実際に、しばらく前にこのトピックに関するブログ投稿を書きました。

残念ながら、ご指摘のとおり、プライベート ペーストボードは、アプリ ID で同じプレフィックスを共有するアプリでのみ使用できます。これは通常、チーム ID ですが、別のバンドル シード ID を使用できる時代までさかのぼるアプリがある場合は、異なる場合があります。

異なるプレフィックスを持つアプリ間で中規模の個人データを共有している場合は、別のソリューションが適しています。この場合、何らかの形式の暗号化を使用し、一般的なペーストボードを使用してデータをやり取りすることをお勧めします。データの機密性にもよりますが、専用のペーストボードを使用する場合でも、データを暗号化することをお勧めします。Rob Napier は、暗号化と復号化を非常に簡単にするための優れたライブラリを提供しています。

または、データがかなり小さい場合は、データを URL にエンコードし、URL スキームを使用してデータを他のアプリに移動することを検討してください。

于 2013-10-30T13:16:15.843 に答える