美文网首页
公私钥加密

公私钥加密

作者: 迷失的昨天 | 来源:发表于2016-04-07 21:05 被阅读0次

下面是代码实现 步骤是粗暴简单

//公钥,用于加密数据. 用于公开, 一般存放在数据提供方, 例如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-----";

NSString *string = @"王新行";

NSString *encPubKey; // 公钥加密

NSString *decPrivKey; // 私钥解密

//使用RSA进行加密

// 第一个参数 : 要加密的数据

// 第二个参数 : 公钥

// RSA加密之后得到的结果 每一次都不一样,但是 都可以通过同一个私钥进行解密

encPubKey = [RSA encryptString:string publicKey:pubkey];

NSLog(@"encPudKey === %@", encPubKey);

decPrivKey = [RSA decryptString:encPubKey privateKey:privkey];

NSLog(@"decPuivkey ===== %@", decPrivKey);

NSString *resultString = @"Y3nWGRaQzldfNtbuUZE9RH73LUGIHOtjg6hE25cLSisNPMBKm0Ikps0gEgPBLdDmysWWwmkPZfsMwG1tt3S9+OnSct/BhaT4bGt5pBZ11Db915a+FTe2RvaIM59nKmTG66b9NOo6CoYp+rZimFamQkdNnxW4SMQleujoRlZjyL0=";

decPrivKey = [RSA decryptString:resultString privateKey:privkey];

NSLog(@"decPrivKey ======= %@",decPrivKey);

相关文章

  • RSA非对称加密算法

    RSA算法,经典非对称加密算法,通过生成公钥 私钥 进行加密解密 公钥加密 私钥解密 反之 私钥加密 公钥...

  • 应用程序数字签名技术

    什么是公钥和私钥 公钥加密,私钥解密私钥加密,公钥解密 苹果的数字签名

  • 苹果应用签名原理

    公钥和私钥 加密:公钥加密,私钥解密 签名:私钥加密,公钥解密 公私钥是一对,谁都可以加密和解密,具体看使用场景加...

  • RSA 加密解密

    https 私钥 -》 服务端。 私钥加密 -签名 公钥 -〉 客户端 公钥加密 -加密 下面是用公钥 加密,...

  • 加密相关

    公钥加密 私钥解密 ,私钥加密,公钥验证(签名) HTTPS -- AFSecurityPolicy RSA ...

  • RSA在线加密解密

    在线RSA公私钥加密解密,支持私钥加密->公钥解密、公钥加密->私钥解密,支持PKCS#1、PKCS#8格式公私钥...

  • HTTPS及非对称加密

    非对称加密:公钥加密,只有私钥能解密。私钥加密,只有公钥能解密。A首先生成一对公钥和私钥,然后将公钥公开给别人加密...

  • 漫说数字签名digital signature(转载)

    前提:公钥和私钥是成对的,它们互相解密。加密数据:公钥加密,私钥解密数字签名:私钥加密,公钥解密 一、漫说公钥与私...

  • 优一区块链知识学习笔记5

    公钥和私钥 公钥加密,私钥解密 私钥→椭圆曲线乘法→公钥→单向加密哈希函数→比特币地址(过程不可逆) 私钥:随机选...

  • Java实现DH密钥交换算法

    前言 非对称加密算法 加密密钥分为公钥和私钥。可以使用公钥加密私钥解密,也可以使用私钥加密公钥解密。非对称加密算法...

网友评论

      本文标题:公私钥加密

      本文链接:https://www.haomeiwen.com/subject/wmfvlttx.html