MariaDBのTDE Part 2
MariaDBのTDEの暗号化プラグイン
概要
資料
基本仕様
プラグイン動作
暗号化プラグインの作成
必要となる暗号関連ヘッダの読み込み
#include <mysql/plugin_encryption.h>
必要となる各種機能を実装
- 鍵管理・データ暗号化機能が呼び出される際の引数と戻り値については、前述で読み込む暗号関連ヘッダに詳細な説明が記載されているため、そちらを参考に実装する
暗号化プラグインが提供する機能(関数)を暗号化プラグインディスクリプタ構造体として定義
struct st_mariadb_encryption [ディスクリプタ名]= { MariaDB_ENCRYPTION_INTERFACE_VERSION, [引数で指定された鍵番号の最新鍵バージョンを返却する関数], [引数で指定された鍵番号・鍵バージョンに合致するデータ暗号化鍵を返却する関数], [暗号化コンテキストオブジェクトのサイズを返却する関数], [暗号化コンテキストオブジェクトを初期化する関数], [データの暗号化・復号化を行う関数], [暗号化コンテキストオブジェクトを破棄する関数], [暗号化されたデータの長さを返却する関数] };
プラグイン宣言を定義
maria_declare_plugin([プラグイン名]) { MariaDB_ENCRYPTION_PLUGIN, [暗号化プラグインディスクリプタへのポインタ], "[プラグイン名]", "[プラグイン作成者]", "[プラグイン概要]", PLUGIN_LICENSE_GPL, [プラグイン初期化関数], [プラグイン終了関数], [プラグインバージョン(hex)], [ステータス変数の構造体], [システム変数の構造体] "[プラグインバージョン(文字列)]", [プラグインステータス] } maria_declare_plugin_end;