私は、オフラインで動作する必要があるクライアントと、情報データベースを格納するサーバーとの間で送信されるsqlceデータベースを使用するプロジェクトに取り組んでいます。このデータベースは、パスワードで保護されています。
難しいのは、ユーザーがsqlceデータベースの情報を報告する前に最新バージョンに更新する必要がなく、クライアントの最新バージョンが数世代遅れて更新される可能性があるというビジネス要件があることです。サーバーがデータベース内の報告された情報にアクセスするために必要なパスワード。
現在の解決策は、ソースコードで、クライアントとサーバーで同じ静的パスワードを使用し、下位互換性のためにそれらを同じに保つことです。
私の質問は、クライアントとサーバー間でパスワードを同期し、古いデータベースとの下位互換性を維持するか、データベースからいくつかのパラメーターを取得してどのパスワードが一致するかを確認できる安全な方法についてです。
現在、sqlce3.1とC++を使用しています。この問題は他のプロジェクトにも適用できると思うので、他のテクノロジ(SQLight?C#?Java?)での同じ問題の解決策を歓迎します。
私の問題が明確であり、そこにたくさんの答えがあることを願っています。明確にする必要があることがあれば、私に聞いてください!