0

私は現在、OS X アプリケーションのテキスト フィールドから情報を収集し、openssl バイナリにアクセスして、それらのテキスト フィールドに基づいて CSR と秘密鍵を生成するアプリケーションに取り組んでいます。これが現在のコードです

let keySizeValue = keySizes[keySizeChoice.indexOfSelectedItem]

mainTask.launchPath = "/usr/bin/openssl"
mainTask.arguments = ["req", "-new", "-newkey", "\(keySizeValue)", "-passout", "pass:\(privateKeyPassword.stringValue)","-keyout", "/Users/\(userName)/Desktop/Certs/\(privateKeyText.stringValue).key", "-subj" ,"\"/C=US/ST=\(stateText.stringValue)/L=\(cityText.stringValue)/O=\(organizationText.stringValue)/OU=\(departmentText.stringValue)/CN=\(commonNameText.stringValue)\"", "-out", "/Users/\(userName)/Desktop/Certs/MyNew.csr"]

let pipe = NSPipe()
mainTask.standardInput = pipe
mainTask.launch()
mainTask.waitUntilExit()
mainTask.terminate()

ただし、次のようなエラーが表示されますSubject does not start with '/'。明らかにそうであるにもかかわらず、私の主題がその/で始まっていないと述べている理由について、誰かが私に何らかの考えをぶつけてくれることを望んでいました.

皆さんありがとう

4

1 に答える 1

5

私は自分の答えを見つけました。サブジェクト呼び出しの前に開始の二重引用符を引き出し、終了の二重引用符を削除することで、CSR サブジェクトを実際に正しくインポートしました。

于 2015-12-23T22:43:27.737 に答える