有关证书和密钥的Apple文档说明可以将公钥发送给其他用户。这当然是他们的观点。在中间人攻击中,不要陷入关于人的侧线,我想知道这应该如何工作。交换公钥
我使用base64编码在设备之间的电子邮件中发送公钥。抵达后,他们不工作,并且当我尝试使用它们时,接收应用程序会抛出异常。 base64代码和密钥生成和检索代码已经在另一个应用程序中进行了详尽的测试,并且可以工作。这里是一个简单的问题:
(1)所有的关键API使用SecKeyRef键。
(2)SecKeyRef明显包含指针,它与不同的位每次我从钥匙串检索密钥对时间出来在某些偏移
(3)如果我检索密钥作为CFDataRef,这应该为了“平坦”,我得到了一个截然不同的野兽,总是具有相同的值,还有很多零填充(base64中的大写A)。
(4)进口CFDataRef不起作用
我不没有做大量的调查研究问这个,阅读和测试,我承认我很为难,没有人知道如何交换公共钥匙?我已经写了Windows应用程序多年,这样做。证书链是我需要在这里完成的一个非常大的锤子。
谢谢。
你显然没有看完我的问题,并给出了完全正切的答案。我的问题在于密钥的传输,我详细解释了这些密钥。 – 2012-03-11 15:22:10
我从那以后发现了一个使用CFDataRef密钥版本的解决方案,它涉及将它们导入到钥匙串中;仅仅将它们解码为原始位的行为是不够的。但是我放弃了这个项目,因为我不喜欢追求政府执照的麻烦,因为我住在越南。 – 2012-03-11 15:25:59