iOS RSA Encryption using SSH Public Key -


मैं OpenSSL सार्वजनिक / निजी कुंजी जोड़ी का उपयोग करके सफलतापूर्वक एन्क्रिप्ट (आईओएस) और PHP पक्ष पर डिक्रिप्ट करने में सक्षम हूं। अगर किसी को एक उदाहरण की जरूरत है तो कृपया मुझे बताएं केवल पूरे दिन ले लिया और साझा करने में खुशी होगी।

हालांकि, मैं सोच रहा था कि कोई भी एसएसएच से सार्वजनिक / निजी कुंजी जोड़ी का उपयोग करके ऐसा करने में सक्षम है। एसएसएच-केजेन से जो उत्पन्न होता है जब मैं जनरेटेड सार्वजनिक / निजी कुंजियों से सार्वजनिक कुंजी का उपयोग करता हूं, तब एपीसीबीएडीएडीएसीएसीएस के साथ आवेदन की गई त्रुटियां प्रदान की गई सार्वजनिक कुंजी का उपयोग करने की कोशिश करते समय। इसलिए, मैं उस बिंदु तक नहीं पहुंच पा रहा हूं, जिस पर मैं सर्वर पर डिक्रिप्ट करने के लिए एन्क्रिप्ट कर रहा हूं।

  // नीचे दिए गए त्रुटियों को // NSString * myCertString = @ "AAAAB3NzaC1yc2EAAAADAQABAAAAgQDQexvBUxaBWRtbSkj7puZNw4rqUD1FhhYCEogpS5GwMir9mZOuOw9aGQmTJ0DmYY84 / m890t8wnbWHcIk1D / TDMeDP2OSRHz4FtkPMt2G1Pf1lkvEhd9S5PvL2y / vwnvqhjIOYzqvIamnYloOwXQZ5lKcYxuFu7btMLYr1Rd1jtw =="; // काम करता है NSString * myCertString = @ "MIIDGDCCAoGgAwIBAgIJANB / d5a0c9bYMA0GCSqGSIb3DQEBBQUAMIGkMQswCQYDVQQGEwJVUzERMA8GA1UECAwIVmlyZ2luaWExETAPBgNVBAcMCFJpY2htb25kMRcwFQYDVQQKDA5WNCBEZXZlbG9wbWVudDENMAsGA1UECwwEVGVjaDEfMB0GA1UEAwwWZGVyZWsuZW5jLnNiLnY0ZGV2LmNvbTEmMCQGCSqGSIb3DQEJARYXZGVyZWtAdjRkZXZlbG9wbWVudC5jb20wHhcNMTQwMjE3MTYyMTMyWhcNMjQwMjE1MTYyMTMyWjCBpDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCFZpcmdpbmlhMREwDwYDVQQHDAhSaWNobW9uZDEXMBUGA1UECgwOVjQgRGV2ZWxvcG1lbnQxDTALBgNVBAsMBFRlY2gxHzAdBgNVBAMMFmRlcmVrLmVuYy5zYi52NGRldi5jb20xJjAkBgkqhkiG9w0BCQEWF2RlcmVrQHY0ZGV2ZWxvcG1lbnQuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDDAeJpcV7Nu / QAh / 4ZY4nKno + 6BEfWUc2An3 + lsE8rH2Z2s2WlNZ869nFvTLRlus3NEp9EaS4xej9YEuwFdMii2BWjd + e2Lh2hvkS0I7FO + cJ1PPNnJh9z2b / NhPEeWpu09 / Th2TiaEKBqlt0YK3eQHpxuZunKzqGUmqonX8TBewIDAQABo1AwTjAdBgNVHQ4EFgQUnOSxBSCihWtJXFX7xgLQQjzNe10wHwYDVR0jBBgwFoAUnOSxBSCihWtJXFX7xgLQQjzNe10wDAYDVR0TBAUwAwEB / zANBgkqhkiG9w0BAQUFAAOBgQCNFuaV9o4FEQ / bhKABSDOcwy / एसडी / u0CwXtBj5UHjNPPw1Mqo5wwZHSgo5u8ruXmjyRCiG5w5 + जीई 04ygAcWuMFdba0Mc3a3A4HO5Jr + JdEXL / 82ZSHCfYBPcuLXJ + VmM4dMgTxamVBDR9sepyZpK8YySWru5JNMbcPM8MbTxm0PXg == "; NSData * myCertData = [base64 decodeBase64WithString: myCertString]; // [[base64 decodeBase64WithString: myCertString] डेटाउपकरण एन्कोडिंग: NSUTF8StringEncoding]; SecCertificateRef cert = SecCertificateCreativeWithData (kCFAllocatorDefault, (__bridge CFDataRef) myCertData); CFArrayRef certs = CFArrayCreate (kCFAllocatorDefault, (निरूपित शून्य **) और प्रमाणपत्र, 1, शून्य); SecPolicyRef नीति = SecPolicyCreateBasicX509 (); SecTrustRef विश्वास; SecTrustCreateWithCertificates (certs, नीति, और amp; ट्रस्ट); SecTrustResultTypeType TrustResult; SecTrustEvaluate (ट्रस्ट, और ट्रस्ट रीजल्ट); PublicKey = SecTrustCopyPublicKey (विश्वास); & Lt; - EXC_BAD_ACCESS के साथ त्रुटि  

कोई भी विचार महान होगा या, क्या आईओएस सिर्फ एसएसएच सार्वजनिक कुंजी एन्क्रिप्शन का समर्थन नहीं करता है? किसी भी सलाह या सही दिशा में मार्गदर्शन के लिए बहुत धन्यवाद।

सुरक्षा कारण के लिए, आप आसानी से आईओएस पर केवल सार्वजनिक कुंजी के साथ एन्क्रिप्ट आईओएस पर एन्क्रिप्शन की बहुत आवश्यकता है, यही कारण है कि यह सुरक्षा ढांचे में है।

IOS पर डेटा को एन्क्रिप्ट करने के लिए आरएसए सार्वजनिक कुंजी का उपयोग करने के लिए, आपको iOS को धोखा दिया जाना चाहिए कि यह कुंजी स्वयं द्वारा उत्पन्न होती है। / P>

यह प्रश्न देखें: यह आपको समाधान देता है, और GitHub पर पूर्ण कोड डेमो।


Comments

Popular posts from this blog

ios - How do I use CFArrayRef in Swift? -

eclipse plugin - Run java code error: Workspace is closed -

c - Error on building source code in VC 6 -