美文网首页
数据加密RSA对称加密

数据加密RSA对称加密

作者: 机智勇敢的小毛 | 来源:发表于2016-06-01 21:19 被阅读0次
//导入头文件
#import "RSA.h"



- (void)viewDidLoad {
    [super viewDidLoad];
    //第一步:获取公钥数据
    //公钥: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-----";

    //1创建字符串
    NSString *string = @"狗蛋和如花";
    
    //2创建存储公钥的字符串
    NSString *enPubKey;
   
    //使用RSA加密数据
    //参数1:要加密的数据
    //参数2:公钥字符串
    enPubKey = [RSA encryptString:string publicKey:pubkey];
    NSLog(@"enPubKey=%@",enPubKey);
#warning RSA加密的结果,每一次都不一样,但是可以通过同一个私钥进行解密
    
    
    //解密:一般都是后台做得(但是我们需要知道)
    //1
    NSString *resultString =@"YkexNfxM5ZOI64MQes2u3Ro9hOpztOJOubfVTA322HiayMq3ja9hpJqua9YqMm7OqEAtwDCOmFz9cfakFCkUa+GJPHpiEqCKuwjS+x1R5jATzbjl76+BqHGmUn2Tbm6dRj/v/f/Pwn34Jq1dPE6miXL2u+fjIVBGEZf1UnN6a9I=";//这快的字符串不需要我们管理,XXXXXXX经过加密之后需要把加密的内容传递给后台,此时后台会返回给你一个字符串
    //2创建存储私钥的字符串
    NSString *decPubKey;
    
    decPubKey = [RSA decryptString:resultString privateKey:privkey];
    NSLog(@"decPubKey=%@",decPubKey);
    
    
    
    /*
     加密和加签
     加密:公钥放在iOS客户端,并且使用公钥对数据进行加密,服务端拿到数据后用私钥进行解密
     加密完全是为了加密
     
     加签: 私钥放在iOS客户端,并且使用数据进行加签,服务端拿到数据后用公钥进行验签
     加签主要是为了验证(为了防止恶意的攻击),防止别人模拟我们的客户端对我们的服务器进行攻击,导致服务器瘫痪



     */
}

相关文章

  • kotlin版本RSA非对称加密解密与分段加密解密

    基于kotlin语言的RSA非对称加密解密与分段加密解密 RSA非对称加密 RSA非对称加密的具体算法与来源我就不...

  • HASH&对称加密

    1、非对称加密(现代加密算法):RSA(不适合加密大数据)2、对称加密(传统加密算法):DES、3DES、AES;...

  • 命令

    文件编译 加密解密 1. 对称加密 DES AES Base64 2. 非对称加密 RSA RSA加密:公钥加密,...

  • RSA加密

    RSA加密为非对称加密实现 对称加密:加密解密使用同一个算法 非对称加密:加密和解密使用不同算法 rsa加密原理 ...

  • 安卓常见的一些加密((对称加密DES,AES),非对称加密(RS

    对称加密(如DES、AES等)、非对称加密(如RSA等)和单向加密(如MD5等) DES是数据加密标准(Data ...

  • iOS安全之路--RSA

    一、RSA简介 在介绍RSA之前,先介绍下对称、非对称加密。 对称加密: A选择某一种加密规则,对信息进行加密;B...

  • iOS常用加密算法

    AES(对称加密) 代码: 使用: RSA(非对称加密) 参考文章

  • Android 加密算法AES/RSA

    Android中的MD5和RSA加密Android应用安全开发之浅谈加密算法的坑 对称加密 在对称加密算法中,数据...

  • 史上最详HTTPS加密解析

    一、概念 加密类型 1、对称加密,如:常见的AES 加密算法 2、非对称加密,如:常见的RSA 加密算法 对称加密...

  • Android端与JavaWeb传输加密(DES+RSA)

    一、加密介绍   本文采用对称式加密算法DES和非对称式加密算法RSA结合做数据传输加密的方式。  先说一下对称式...

网友评论

      本文标题:数据加密RSA对称加密

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