zoukankan      html  css  js  c++  java
  • iOS代码加密常用加密方式

    iOS代码加密常用加密方式

    iOS代码加密常用加密方式,常见的iOS代码加密常用加密方式算法包括MD5加密、AES加密、BASE64加密,三大算法iOS代码加密是如何进行加密的,且看下文

    MD5 iOS代码加密

     
    1. 1

      MD5 iOS代码加密

      创建MD5类,代码如下

      #import <Foundation/Foundation.h>

      @interface CJMD5 : NSObject

      +(NSString *)md5HexDigest:(NSString *)input;

      @end

    2. 2

      #import "CJMD5.h"

      #import <CommonCrypto/CommonDigest.h>

      @implementation CJMD5

      +(NSString *)md5HexDigest:(NSString *)input{

          

          const char* str = [input UTF8String];

          unsigned char result[CC_MD5_DIGEST_LENGTH];

          CC_MD5(str, strlen(str), result);

          NSMutableString *ret = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH];

          

          for(int i = 0; i<CC_MD5_DIGEST_LENGTH; i++) {

              [ret appendFormat:@"%02X",result];

          }

          return ret;

      }

      @end

    3. 3

      MD5是不可逆的只有加密没有解密,iOS代码加密使用方式如下

      NSString *userName = @"cerastes";

      NSString *password = @"hello Word";

      //   MD5加密

      NSString *md5 = [CJMD5 md5HexDigest:password];

      NSLog(@"%@",md5);

      END

    AES加密iOS代码加密

     
    1. 1

      AES加密iOS代码加密使用方法

      //  AES加密

          NSString *encryptedData = [AESCrypt encrypt:userName password:password];//加密

          NSString *message = [AESCrypt decrypt:encryptedData password:password]; //解密

          NSLog(@"加密结果 = %@",encryptedData);

          NSLog(@"解密结果 = %@",message);

      END

    BASE64加密iOS代码加密

     
    1. 1

      BASE64加密iOS代码加密添加如下方法

      .h

      + (NSString*)encodeBase64String:(NSString *)input;

      + (NSString*)decodeBase64String:(NSString *)input;

      + (NSString*)encodeBase64Data:(NSData *)data;

      + (NSString*)decodeBase64Data:(NSData *)data;

    2. 2

      .m

      + (NSString*)encodeBase64String:(NSString * )input {

          NSData *data = [input dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES];

          data = [GTMBase64 encodeData:data];

          NSString *base64String = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

          return base64String;

      }

      + (NSString*)decodeBase64String:(NSString * )input {

          NSData *data = [input dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES];

          data = [GTMBase64 decodeData:data];

          NSString *base64String = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

          return base64String;

      }

      + (NSString*)encodeBase64Data:(NSData *)data {

          data = [GTMBase64 encodeData:data];

          NSString *base64String = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

          return base64String;

      }

      + (NSString*)decodeBase64Data:(NSData *)data {

          data = [GTMBase64 decodeData:data];

          NSString *base64String = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

          return base64String;

      }

    3. 3

      BASE64加密iOS代码加密使用方法

      //    BASE64加密

          NSString *baseEncodeString = [GTMBase64 encodeBase64String:password];

          NSString *baseDecodeString = [GTMBase64 decodeBase64String:baseEncodeString];

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

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

      END

    iOS应用代码加密

     
    1. 1

      除了以上的三种算法的iOS代码加密之外,iOS应用代码加密也是非常重要的,这里就不贴代码了,主要的iOS代码加密方式如下,iOS应用代码加密是 爱 加 密 平台提供的专业的iOS加密服务。

      iOS代码加密常用加密方式
    2. 2

      1)本地数据加密

      对NSUserDefaults,sqlite存储文件数据加密,保护帐号和关键信息。

      2)URL编码加密

      对程序中出现的URL进行编码加密,防止URL被静态分析

      3)网络传输数据加密

      对客户端传输数据提供加密方案,有效防止通过网络接口的拦截获取

      4)方法体,方法名高级混淆

      对应用程序的方法名和方法体进行混淆,保证源码被逆向后无法解析代码

      5)程序结构混排加密

      对应用程序逻辑结构进行打乱混排,保证源码可读性降到最低

  • 相关阅读:
    PYFLINK 基础 (一):运行相关(一)PYFLINK安装与本地运行(WINDOWS10)(TABLE demo)
    linux 开机进入initramfs无法开机
    VBA删除 语法
    VBA 上传数据与查找数据 while循环 和 for循环
    odoo tree视图 当页不弹窗显示方法
    VBA 连接,提醒 rs AS new adodb.recordset 的变量未定义
    odoo 订单打印 会出现字体. ........... 虚线问题
    270. Closest Binary Search Tree Value
    277. Find the Celebrity
    724. Find Pivot Index
  • 原文地址:https://www.cnblogs.com/yujidewu/p/5772971.html
Copyright © 2011-2022 走看看