Embarcaderoは、SQLite Encryption Extension (SEE)データベース向けの新しいFireDACドライバを公開しました。このブログでは、新しいドライバの提供が決定した背景についてご紹介します。
RAD Studio 11 Alexandriaには、以前のバージョンと同様に、SQLiteデータベース向けの FireDAC ドライバが提供されており、2種類の配布方法が用意されています。1つはスタティック(静的)リンク、すなわちSQLiteをアプリケーションのバイナリにコンパイルし、そのコンパイルされたコードをリンクする方法です。もう1つはダイナミック(動的)リンク、つまり外部のSQLite DLLを使用する方法です。この2つの方法と、それぞれのプラットフォームに対する設定については、以下のドキュメントで詳しく説明しています。
https://docwiki.embarcadero.com/RADStudio/Alexandria/ja/SQLite_データベースへの接続(FireDAC)
Table of Contents
FireDAC SQLite Encryption
FireDAC SQLite ドライバの静的リンク版では、データベースフックメカニズム(SQLITE_HAS_CODEC)を使用してデータベースの暗号化をサポートしてきましたが、最新バージョンの SQLiteでは、この機能がSQLiteの開発チームによって廃止されました。そのためFireDACでは、この機能を持つ最終バージョンのSQLiteでのみSQLite暗号化をサポートしています。もし最新バージョンのSQLiteが必要で、暗号化機能が不要な場合は、SQLite DLL版をご利用ください。
今後は、FireDAC SQLite Encryptionを非推奨、あるいはレガシーオプションとして提供し、静的リンク版もSQLITE_HAS_CODECの機能をサポートする最終バージョンのSQLiteに移行する予定です。また、FireDAC SQLite EncryptionからFireDAC SQLite Encryption Extension (SEE)ドライバーに変更した場合は、従来とは異なる暗号化の実装になりますのでご注意してください。この理由により、両者でSQLite データベースファイルの互換性はありません。
SQLite Encryption Extension (SEE)
Hwaci(SQLiteを開発している会社)によるSQLite Encryptionの道筋は、SQLiteの有償版であるSQLite Encryption Extension(SEE)の使用を推奨しています。このデータベースについては、以下のリンクで詳しく説明しています。
- The SQLite SEE wiki has overall documentation
- The SQLite SEE Software License Agreement (or EULA)
- The SQLite SEE price and purchase information
Embarcaderoでは、お客様からSQLite EEをサポートしてほしいという要望があったため、新しいFireDACドライバを作成しました。ライセンス契約書には、このドライバは静的リンクとして使用するように明記されていますのでご注意してください。詳しくは新しいFireDACドライバをダウンロードした後、Readmeをご参照してください。なお、SQLite EEのサポートに関してEmbarcaderoはサードパーティという位置づけになるため、ライブラリのソースやコンパイルされたバイナリコードを配布する権利はありません。そのため、Embarcaderoが開発者に提供できるのは、新しいFireDACドライバのソースコードと、ライブラリをコンパイルするためのC++Builderベースのスクリプトです。C++とDelphiの両方のコードをコンパイルする必要があるため、Delphi単体の製品ではなく、C++BuilderとDelphiの両方が利用可能なRAD Studioが必要となります。
InterBase ToGoを代替手段として検討
お客様が作成するアプリケーションのターゲットプラットフォームや要件や用途などに依存いたしますが、InterBase ToGoはSQLiteと同様、アプリケーションに組み込むことができ、データベース暗号化をサポートしています。そのためInterBase ToGoは、SQLite EEの代替手段として使用可能です。ただし、無償ライセンスとして提供していないため、もしご興味がございましたらEmbarcaderoへお問い合わせください。
FireDACドライバのダウンロード
FireDAC Driver for SQLite SEEは、有効なアップデートサブスクリプションをお持ちのお客様向けにGetItパッケージ経由で提供しております。
近日中にカスタマーポータルからもダウンロードが可能になる予定ですので、もうしばらくお待ちください。
GetItからFireDACドライバをダウンロードすると、下図のようなファイル一式が展開されます。詳しくは、Readmeテキストファイル(sqlite_see.txt)をご参照ください。
Design. Code. Compile. Deploy.
Start Free Trial Upgrade Today
Free Delphi Community Edition Free C++Builder Community Edition