1

SweetHMACと呼ばれる Swift 用の HMAC ダイジェストを使用するための単純なライブラリを作成しました。このライブラリはとてもシンプルで、基本的に Swift の CommonHMAC.h のラッパーです。

SweetHMAC を正しく使用して任意の iOS プロジェクトをビルドおよびデプロイできますが、セキュリティ上の問題があるようで、私のアプローチは安全ではありません。たとえば、iOS テストを実行した後に受け取る警告があります。

warning: linking against dylib not safe for use in application extensions

このコードは、iOS AppStore に入れるほど安全ではなく、アプリが拒否される可能性があります。OSXの場合は問題ありません。

Swift 用の HMAC ポートがあることは知っていますが、私の課題は、Swift が CommonCrypto を安全に使用できるようにすることです。

このアプローチを使用してこのプロジェクトを実装しましたが、正常に動作します!

私の質問は、iOS 用の Swift フレームワークで CommonCrypto のようなモジュールを安全に作成して使用することはどのように可能ですか?

4

1 に答える 1

2

Apple のドキュメントを見ると、このエラーに対する提案は、「アプリ拡張機能に安全な API のみが必要」を使用するオプションがオンになっていることを確認することです。

組み込みフレームワークを使用するようにアプリ拡張機能ターゲットを構成するには、ターゲットの [アプリ拡張機能セーフ API のみが必要] ビルド設定を [はい] に設定します。そうしないと、Xcode は「アプリケーション拡張で使用するのは安全ではない dylib に対するリンク」という警告を表示して、そうするように促します。

拡張機能に関する完全なドキュメントは次のとおりです

この議論に従って、CommonCrypto API の一部が利用できない可能性があることにも注意してください。

于 2015-04-28T12:41:35.043 に答える