iOS / Objective C:显示OpenSSL生成的密钥对

时间:2011-09-07 22:06:51

标签: objective-c ios encryption openssl rsa

我在iOS应用程序中使用openssl进行RSA加密。 我必须将publicKey发送到SOAP webservice ..我已经能够生成密钥对,解密数据,但我想知道是否有办法在控制台上显示密钥? 有人知道吗?

Open SSL是用C语言编写的。所以我得到了这个结构..

struct
        {
        BIGNUM *n;              // public modulus
        BIGNUM *e;              // public exponent
        BIGNUM *d;              // private exponent
        BIGNUM *p;              // secret prime factor
        BIGNUM *q;              // secret prime factor
        BIGNUM *dmp1;           // d mod (p-1)
        BIGNUM *dmq1;           // d mod (q-1)
        BIGNUM *iqmp;           // q^-1 mod p
        // ...
        };
 RSA

documentation我找到了函数RSA_print ..但我不知道如何正确使用它..我的所有尝试都失败了...... :(

有人有想法吗?

2 个答案:

答案 0 :(得分:0)

首先要尝试的是NSLog(@"Here is my object: %@", [someobject description]);

description或多或少地适用于几乎所有Objective-C类(甚至是你的类)。在某些情况下(默认行为)它只显示类名和对象地址,但在其他情况下(取决于类开发人员的心血来潮),它非常令人愉快地格式化对象的内部。它通常适用于NSArray,NSDictionary,NSData和大多数其他常见数据类型。

答案 1 :(得分:0)

您可以查看t his answer以获取有关如何从RSA结构获取密钥的一些线索。
要进行调试,要么使用带有%i的NSLog而不是用于整数的%@,要么在回调函数中设置断点并使用GDB调试器控制台及其强大的po命令。你应该能够做po rsa.e

之类的事情