下面是证书生成的,不可以随便改:
在开发的时候,我们一般只使用公钥,不使用私钥(私钥不能放前端)
//公钥,用于加密数据. 用于公开, 一般存放在数据提供方, 例如iOS客户端.
NSString *pubkey = @"-----BEGIN PUBLIC KEY-----\nMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDEChqe80lJLTTkJD3X3Lyd7Fj+\nzuOhDZkjuLNPog3YR20e5JcrdqI9IFzNbACY/GQVhbnbvBqYgyql8DfPCGXpn0+X\nNSxELIUw9Vh32QuhGNr3/TBpechrVeVpFPLwyaYNEk1CawgHCeQqf5uaqiaoBDOT\nqeox88Lc1ld7MsfggQIDAQAB\n-----END PUBLIC KEY-----";
//私钥,用于解密数据. 必须保密, 私钥泄露会造成安全问题.
NSString *privkey = @"-----BEGIN RSA PRIVATE KEY-----\nMIICdwIBADANBgkqhkiG9w0BAQEFAASCAmEwggJdAgEAAoGBAMQKGp7zSUktNOQk\nPdfcvJ3sWP7O46ENmSO4s0+iDdhHbR7klyt2oj0gXM1sAJj8ZBWFudu8GpiDKqXw\nN88IZemfT5c1LEQshTD1WHfZC6EY2vf9MGl5yGtV5WkU8vDJpg0STUJrCAcJ5Cp/\nm5qqJqgEM5Op6jHzwtzWV3syx+CBAgMBAAECgYEApSzqPzE3d3uqi+tpXB71oY5J\ncfB55PIjLPDrzFX7mlacP6JVKN7dVemVp9OvMTe/UE8LSXRVaFlkLsqXC07FJjhu\nwFXHPdnUf5sanLLdnzt3Mc8vMgUamGJl+er0wdzxM1kPTh0Tmq+DSlu5TlopAHd5\nIqF3DYiORIen3xIwp0ECQQDj6GFaXWzWAu5oUq6j1msTRV3mRZnx8Amxt1ssYM0+\nJLf6QYmpkGFqiQOhHkMgVUwRFqJC8A9EVR1eqabcBXbpAkEA3DQfLVr94vsIWL6+\nVrFcPJW9Xk28CNY6Xnvkin815o2Q0JUHIIIod1eVKCiYDUzZAYAsW0gefJ49sJ4Y\niRJN2QJAKuxeQX2s/NWKfz1rRNIiUnvTBoZ/SvCxcrYcxsvoe9bAi7KCMdxObJkn\nhNXFQLav39wKbV73ESCSqnx7P58L2QJABmhR2+0A5EDvvj1WpokkqPKmfv7+ELfD\nHQq33LvU4q+N3jPn8C85ZDedNHzx57kru1pyb/mKQZANNX10M1DgCQJBAMKn0lEx\nQH2GrkjeWgGVpPZkp0YC+ztNjaUMJmY5g0INUlDgqTWFNftxe8ROvt7JtUvlgtKC\nXdXQrKaEnpebeUQ=\n-----END RSA PRIVATE KEY-----";
#warning ----使用公钥进行加密 ----
NSString *string = @"王梁";
NSString *encPubKey; //公钥加密的结果
NSString *decPubKey; //私钥解密的结果
//使用RSA进行加密
//第一个参数: 要加密的数据
//第二个参数: 公钥
//RSA加密之后得到的结果,每一次都不一样,但是都可以通过同一个私钥进行解密
encPubKey = [RSA encryptString:string publicKey:pubkey]; NSLog(@"enPubKey == %@", encPubKey);
#warning --- 使用私钥进行解密 ----
decPubKey = [RSA decryptString:encPubKey privateKey:privkey];
NSLog(@"decPubKey == %@", decPubKey);
#warning ---- 由于每次用公钥解出的值都不一样,但是随便一个公钥加密后的值都是一样的 ----
NSString *resultString = @"aekev5Z0WYv+MAKvf+kgmXZd9o+hCVikPPJKJWAexighwXI6tgzhrbFPyYYGaObC25Ebo/0lb2ev8J82TS2dqAKDU4ZRdX7bL8bu3/prAH7LQDzecfzyrm9O+phYqUKKK1z5JD4YcDf7QkkRRq/VGzuB1hdSMl7zj5NVHM2ig6Y=";
decPubKey = [RSA decryptString:resultString privateKey:privkey];
NSLog(@"decPubKey == %@", decPubKey);
RSA
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 一、设置git 步骤:参考博文 二、查看和编辑git的配置(很实用,可以修改和查看是否设置成功和设置了什么)参考博...
- 一开始在Android尝试使用RSA,是直接参考文章:http://blog.csdn.net/s46403680...
- 3年前,我以POJ2447作为切入点介绍了什么是非对称加解密,RSA加解密的步骤。然而RSA为什么可以用两个“风马...
- 最近项目涉及到传输加密,对于现在比较安全和流行的加密技术做一个记录和分享。 Demo地址 RSA对称加密 所谓对称...
- 0x01 Level 0 这道题给了一个加密的文件,是base64的,一个public.key公钥还有通往下一关的...