如何通过Objective-C代码在iOS上创建openssh密钥

问题描述:

我们可以通过命令'ssh-keygen ...'获得openssh密钥,或者通过命令'openssl genrsa ...'获取openssl密钥。但我可以通过Objective-C代码在我的iOS应用中执行此操作吗?任何帮助将不胜感激。如何通过Objective-C代码在iOS上创建openssh密钥

+0

你打电话的Objective-C OC ... – EmilioPelaez

+0

@EmilioPelaez是... – Tanddd

您需要使用像OpenSSL这样的库来生成密钥。这不是Objective-C,但你可以与C库进行交互,因为Objective-C是一个超集。您将需要阅读的文档,以充分了解图书馆的作品,但是这是一个简单的例子:

RSA *myrsa; 
unsigned long e = RSA_3; 
BIO* out = NULL; 
myrsa = RSA_generate_key(2048,e,NULL,NULL); 

out=BIO_new(BIO_s_file()); 

if (myrsa == NULL) { 
    /* error handling here /* 
} 

你会想出来的地方将密钥写入数据。没有关于你在做什么的更具体的例子,这是我能提供的最好的例子。

有关如何使用您的项目中OpenSSL库的信息,请参阅:https://github.com/krzyzanowskim/OpenSSL

+0

感谢您的帮助!让我试试看。 – Tanddd

+0

祝你好运!如果您还有其他问题,请跟进。 –

+0

我在同一条船上,试图在iOS设备上生成私有和公共SSH密钥。我有OpenSSL正在运行,并且可以使用RSA_generate_key成功创建密钥。但是我没有找到关于如何继续并从生成的私钥中创建SSH公钥的信息。提前致谢! – jannej