Android O Preview 1のSecretKey周りの変更点について【超簡易まとめ】

  • 1
    いいね
  • 0
    コメント

DroidKaigi2017で予想しておきながら、SecretKeySpecは今回変更がありませんでした。すいません……(でもなくて良かった……)。

とはいえそれだけで終わらせるのはひどいなと思ったので、今回のAndroid O Preview 1でのSecretKey周りの変更点をざっと記述していきます。

API Difference

URLがわかりにくいですが、すでにAnroid O Preview 1のAPI Differencesは公開されています。

API Differences between 25 and o-dp1

SecretKeySpecの変更について

ありません(謝罪)。代わりに同パッケージ内にあったPBEParameterSpecのコンストラクタに変更があります。鍵アルゴリズム(AlgorithmParameterSpec)が設定できるようになったことと、その設定したアルゴリズムを取得するためのメソッドが追加されています。

その他SecretKey周りの変更について

SecretKeyDestroyableインターフェースが追加されました(あれ、いままでありませんでしたっけ?)。

Destroyableインタフェースはその名のとおり破棄まわりのインターフェースで、これによってAndroid Oからは明示的に破棄可能なステータスを伝えるisDestroyed()と、破棄処理であるdestroy()の実装が必要となります。

SecretKey | Android Developers

SecretKeyFactoryからkeySpecを取得する際のgetKeySpec()において、鍵仕様の指定部分にワイルドカードがつきました。正直に言うと知識疎いので理由はわかりません……。PBEParameterSpecのアルゴリズム追加に伴うワイルドカード対応なんでしょうか?

SecretKeyFactory | Android Developers

この変更はSecretKeyFactorySpigetKeySpec()も同様です。

まとめ

SecretKeySpec自体の変化はありませんでした。代わりにAndroid界隈ではあまり見受けられなかった(経験談)PBEParameterSpecがコンストラクタでアルゴリズムを指定できるようになったのは、この記事を書くにあたって調べた肌感だと大きいように感じました。

いろいろあやふやな内容になってしまったので、編集リクエストやコメントでのツッコミなど、お待ちいたしております!