質問: 現在サーバと通信するために公開鍵をアプリ内で作成しようと試みています。 「Security Foundation」を使うことまでわかりました。 実際にサーバに送る内容としては > > -----BEGIN PUBLIC KEY----- > > -----END PUBLIC KEY----- > > > このような形の公開鍵をString型で送りたいのですが、どの様に作成すればよいのかわかりません。 ご教授願います。 ※06/23追記 teratail teratailの方にも質問させていただいております。 解決次第両方の質問に解決方法を記載の後クローズさせていただきたいと思っております。
回答: ``` func sample() { let begin: String = "-----BEGIN PUBLIC KEY-----\r\n" let finish: String = "\r\n-----END PUBLIC KEY-----" heimdall = Heimdall(publicTag: "publicKey", privateTag: "privateKey", keySize: 1024) let publicKeyData = heimdall?.publicKeyDataX509() let base64 = publicKeyData!.base64EncodedStringWithOptions(.Encoding64CharacterLineLength) let publicKeyString = begin + base64 + finish } ``` CocoaPodsのHeimdallというフレームワークを利用することで、 自己解決出来ました。 根本的な解決には至っていませんが代用させていただきます。 SecurityFrameworkを利用する方法でも作成は出来たのですが、 途中の設定がおかしいのか長さを指定しても少し短いのができてしまいました。