`
ak478288
  • 浏览: 73372 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

objective-c des

    博客分类:
  • ios
阅读更多
NSString *token = @"us=foo;pw=bar;pwAlg=false;";

NSString *key = @"testtest";

const void *vplainText;
size_t plainTextBufferSize;

plainTextBufferSize = [token length];
vplainText = (const void *) [token UTF8String];

CCCryptorStatus ccStatus;
uint8_t *bufferPtr = NULL;
size_t bufferPtrSize = 0;
size_t *movedBytes;

bufferPtrSize = (plainTextBufferSize + kCCBlockSize3DES) & ~(kCCBlockSize3DES - 1);
bufferPtr = malloc( bufferPtrSize * sizeof(uint8_t));
memset((void *)bufferPtr, 0x0, bufferPtrSize);
// memset((void *) iv, 0x0, (size_t) sizeof(iv));


NSString *initVec = @"init Vec";
const void *vkey = (const void *) [key UTF8String];
const void *vinitVec = (const void *) [initVec UTF8String];

ccStatus = CCCrypt(kCCEncrypt,
                   kCCAlgorithmDES,
                   kCCOptionECBMode,
                   vkey, //"123456789012345678901234", //key
                   kCCKeySizeDES,
                   NULL,// vinitVec, //"init Vec", //iv,
                   vplainText, //"Your Name", //plainText,
                   plainTextBufferSize,
                   (void *)bufferPtr,
                   bufferPtrSize,
                   movedBytes);

NSString *result;
NSData *myData = [NSData dataWithBytes:(const void *)bufferPtr length:(NSUInteger)movedBytes];
result = [myData base64Encoding];


///////////////////


CCCryptorStatus cryptStatus = CCCrypt(kCCEncrypt, 
                                      kCCAlgorithmDES, 
                                      kCCOptionPKCS7Padding | kCCOptionECBMode,
                                      keyPtr, 
                                      kCCKeySizeDES,
                                      NULL, 
                                      [self bytes], 
                                      dataLength,
                                      buffer, 
                                      bufferSize
                                      &numBytesEncrypted);
分享到:
评论

相关推荐

    Objective-c des加密,PHP des加密完美结合

    Objective-c des加密,PHP des加密完美结合 iphone客户端加密解密,服务器端php加密解密,完美融合 不好意思,稍做修改。昨天就是check一下php的加密后的和objective加密后的一样,今天过来联调又出问题了,php解密...

    3des.rar_3des_3des objective_3des objective-c_c 3des_objective

    标签中的"3des 3des_objective 3des_objective-c c___3des objective_3des"进一步确认了这包内容与3DES算法以及Objective-C语言的实现有关。Objective-C是Apple的开发语言,主要用于iOS和macOS平台的应用程序开发。...

    DES java objective-c 通用加密

    - 压缩包"DES-ALL"可能包含了Java和Objective-C的源代码文件,每个语言的实现可能被组织在不同的目录下,例如"java/src"和"objc/src"。可能还包括了测试用例、配置文件以及README文档,用于解释如何集成和使用这些...

    EncryptionTools(Objective-C)

    在给定的"EncryptionTools(Objective-C)"项目中,开发者提供了一个简单易用的库,专门针对Objective-C的对称加密操作进行了封装,特别是对于DES(Data Encryption Standard)和AES(Advanced Encryption Standard...

    PHP、JAVA、C#、Object-C、Android 通用的DES加密解密

    Objective-C中,我们可以使用CommonCrypto库来实现DES。定义密钥和IV,然后调用`CCCrypt()`函数进行加密和解密。该函数接受加密算法、工作模式、填充方式、密钥、IV、输入数据和输出数据等参数。 5. Android DES...

    ios-3des-demo:DESedeCBCPKCS5Padding 加密

    本项目“ios-3des-demo”提供了在Objective-C语言中实现`DESede/CBC/PKCS5Padding`加密方法的示例。以下是关于这个主题的详细知识点: 1. **DESede (Triple DES)** - 三重DES(3DES)是DES(Data Encryption ...

    Java Objective C Encrypt/Decrypt Eclipse and XCode Project and Source Code

    本项目提供了在Eclipse(Java)和XCode(Objective-C)环境中进行加密和解密的示例代码,涵盖了DES,3DES,AES128,AES256以及RSA等主流的加密算法。这些算法在信息安全、数据保护以及网络通信中扮演着至关重要的...

    002--EncryptDemo.zip

    描述中的“OC--AES加解密方法”提示我们,这个压缩包可能包含的是Objective-C语言实现的AES加解密代码。Objective-C是苹果公司开发的面向对象编程语言,常用于iOS和Mac OS X平台的应用开发。AES在Objective-C中的...

    ios-DES连续加密两次,转化16进制字符串.zip

    文件名"DES"可能是指实现这一过程的代码文件,可能包含Objective-C或Swift代码,使用了如`CCCrypt`等加密函数来实现DES加密。在实际开发中,确保正确管理和使用密钥,以及遵循相关的安全最佳实践至关重要,比如使用...

    DES加解密_iOS_Java.zip

    这个工具包可能包含Objective-C的类库或者Swift的框架,提供了简单易用的接口来调用DES加解密方法。在Objective-C中,可能使用`CommonCrypto`库,这是Apple提供的加密库,包含了DES等算法的实现。在Swift中,虽然...

    ios-DES加解密 key iv解密

    在`DES--master`这个文件夹中,可能包含了DESSample项目或者代码示例,展示如何在Objective-C或Swift中实现上述过程。通过阅读和理解这些代码,开发者可以更好地掌握在iOS平台上如何使用DES进行数据加解密。 总之,...

    gcc_Des_3Des加密解密算法

    GCC(GNU Compiler Collection)是GNU项目的一部分,是一个广泛使用的开源编译器套件,支持多种编程语言,包括C、C++、Objective-C、Fortran、Ada和Go等。在Linux和Unix平台上,GCC是标准的开发工具,用于将源代码...

    IOS des加密 demo

    6. **Swift/Obj-C Integration**:如果你的项目是用Swift编写的,可能需要使用`BridgeHeader`来调用Objective-C的`CommonCrypto`库。同时,需要注意Swift和Objective-C之间的数据类型转换。 7. **Security Best ...

    3Des加密,在ios,android ,java服务端都实现了

    在iOS平台上,3Des的实现主要依赖于CommonCrypto库,这是一个C语言的库,但可以通过Objective-C或Swift进行封装。在Objective-C中,可以创建一个类别,如`NSData+3DES.m`,提供`encryptDataUsing3DES:withKey:`和`...

    MAC3DES加密组件

    开发者可以通过这个框架,使用Objective-C或Swift编写代码来执行3DES加密和解密操作。 以下是一个简单的示例,演示如何在Objective-C中使用CommonCrypto进行3DES加密: ```objc #import - (NSData *)encryptData...

    三平台通用加密算法(java/.net/Object-C)

    在Objective-C中,我们可以使用CommonCrypto库来实现加密操作,这个库包含了一系列的加密算法,如AES、DES、MD5和SHA等。`iOS`目录可能包含了iOS平台上使用这些加密算法的Objective-C代码示例。 通用加密算法常常...

    iOS DES加解密

    以下是一个简单的Objective-C示例,演示如何使用CommonCrypto进行DES加密和解密: ```objc #import // 加密 + (NSData *)encryptWithDES:(NSData *)data key:(NSString *)key { const void *cKey = [key UTF8...

    foodcoop-mobile-app:L'Application Mobile des foodcoops

    Projet利用语言打字稿(TSX),CSS,Objective-C(Projet iOS)和Java(Projet Android)。 入职 先决条件 -gestionnaire des librairies javascript IDE de votre choix(例如 ) 插件 pour votre IDE( ) ...

    php,java,ios 统一的des 加密

    文件`des.php`可能包含了PHP的实现代码,`des-ios.zip`可能包含了一个iOS项目,其中包含了Objective-C或Swift的加密解密逻辑,而`des-java.zip`则可能包含了一个Java项目的源码。 总的来说,这个解决方案旨在提供一...

Global site tag (gtag.js) - Google Analytics