Money Forward Developers Blog

株式会社マネーフォワード公式開発者向けブログです。技術や開発手法、イベント登壇などを発信します。サービスに関するご質問は、各サービス窓口までご連絡ください。

20230215130734

【レポート速報】Google I/O 2016 - Day2

Androidエンジニア 兼 情報セキュリティ担当の鈴木です。

【レポート速報】Google I/O 2016 - Day1に引き続き、Google I/O 2016 2日目のレポートをしようと思います。

ちなみに本日は全体的に涼しく、若干過ごしやすい一日でした。 今日は参加したセッションのうちの「What's new in Android Security」について報告したいと思います。

さて今年の3月ほどにPreviewリリースされたAndroid Nにおいては以下の様なセキュリティの機能が追加されました。 * 新しいRuntime Permission * Key Attestation * Scoped Directory Access * Secure Networking

それに加えて今回の発表ではDirect BootとSafety Netいう機能も話されました。 これらがNの新しい機能か既存であったかは不明ですが、このうち「SafetyNet」を簡単に説明します。  

SafetyNet

  • GoogleApiClientを通してGoogle Servicesにアクセスし対象のAndroid端末の互換性状態と安全性を診断するものです。呼び出しは下記の様に実施します。
SafetyNet.SafetyNetApi.attest(googleApiClient, nonce).setResultCallback(new ResultCallback<SafetyNetApi.AttestationResult>) {
          @Override
         public void onResult(SafetyNetApi.AttestationResult result) ()
}));

このAttestationResultはCTS(Compatibility Test Suite)診断の結果を含んだものになります。

resut.getJwsResult() = {
"nonce": "R2Rra24fVm5xa2Mg",
"timestampMs": 9860437986543,
"apkPackageName": "com.package.name.of.requesting.app",
"apkCertificateDigestSha256": ["base64 encoded, SHA-256 hash of the
certificate used to sign requesting app"],
"apkDigestSha256": "base64 encoded, SHA-256 hash of the app's APK",
"ctsProfileMatch": true,
}

CTSに失敗するということは、ユーザの端末及び端末設定がAndroid Platform仕様に準拠してないということなので、それに基づいた処理を加えるようです。セッション時は「この端末では使えない」のような画面を出力していた様に記憶しています。

以上になります。もっと詳細を調べたいのですが(エミュレーターではうまく利利用できないとの声もあり)、明日の準備もあるため、取り急ぎ今日はこの辺で。

余談ですが、Nから追加されたセキュリティ機能の多くがNでのみしか実装できませんが、講演者に聞いた所SupportLibraryの移行はする予定と宣言していました。  

参考

最後に

マネーフォワードでは、Google! Google!! Google!!!!! なエンジニアを募集しています。 ご応募お待ちしています。

【採用サイト】 ■マネーフォワード採用サイトWantedly | マネーフォワード

【プロダクト一覧】 ■家計簿アプリ・クラウド家計簿ソフト『マネーフォワード』家計簿アプリ・クラウド家計簿ソフト『マネーフォワード』 iPhone,iPad家計簿アプリ・クラウド家計簿ソフト『マネーフォワード』 Androidクラウド型会計ソフト『MFクラウド会計』クラウド型請求書管理ソフト『MFクラウド請求書』クラウド型給与計算ソフト『MFクラウド給与』経費精算システム『MFクラウド経費』消込ソフト・システム『MFクラウド消込』マイナンバー対応『MFクラウドマイナンバー』創業支援トータルサービス『MFクラウド創業支援サービス』お金に関する正しい知識やお得な情報を発信するウェブメディア『マネトク!』