OpenSSL - 主题不以' /'开头在OS X应用程序中

时间:2015-12-23 17:01:16

标签: swift macos openssl nstask nspipe

我目前正在开发一个从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 '/'。希望有人可以通过某种想法告诉我为什么它说明我的主题不是从那个/开始,即使它显然是。

全部谢谢

1 个答案:

答案 0 :(得分:2)

我找到了答案。通过在主题调用之前拉出起始双引号,并删除结束双引号,它实际上正确导入了CSR主题。