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加密完美结合 iphone客户端加密解密,服务器端php加密解密,完美融合 不好意思,稍做修改。昨天就是check一下php的加密后的和objective加密后的一样,今天过来联调又出问题了,php解密...
标签中的"3des 3des_objective 3des_objective-c c___3des objective_3des"进一步确认了这包内容与3DES算法以及Objective-C语言的实现有关。Objective-C是Apple的开发语言,主要用于iOS和macOS平台的应用程序开发。...
- 压缩包"DES-ALL"可能包含了Java和Objective-C的源代码文件,每个语言的实现可能被组织在不同的目录下,例如"java/src"和"objc/src"。可能还包括了测试用例、配置文件以及README文档,用于解释如何集成和使用这些...
在给定的"EncryptionTools(Objective-C)"项目中,开发者提供了一个简单易用的库,专门针对Objective-C的对称加密操作进行了封装,特别是对于DES(Data Encryption Standard)和AES(Advanced Encryption Standard...
Objective-C中,我们可以使用CommonCrypto库来实现DES。定义密钥和IV,然后调用`CCCrypt()`函数进行加密和解密。该函数接受加密算法、工作模式、填充方式、密钥、IV、输入数据和输出数据等参数。 5. Android DES...
本项目“ios-3des-demo”提供了在Objective-C语言中实现`DESede/CBC/PKCS5Padding`加密方法的示例。以下是关于这个主题的详细知识点: 1. **DESede (Triple DES)** - 三重DES(3DES)是DES(Data Encryption ...
本项目提供了在Eclipse(Java)和XCode(Objective-C)环境中进行加密和解密的示例代码,涵盖了DES,3DES,AES128,AES256以及RSA等主流的加密算法。这些算法在信息安全、数据保护以及网络通信中扮演着至关重要的...
描述中的“OC--AES加解密方法”提示我们,这个压缩包可能包含的是Objective-C语言实现的AES加解密代码。Objective-C是苹果公司开发的面向对象编程语言,常用于iOS和Mac OS X平台的应用开发。AES在Objective-C中的...
文件名"DES"可能是指实现这一过程的代码文件,可能包含Objective-C或Swift代码,使用了如`CCCrypt`等加密函数来实现DES加密。在实际开发中,确保正确管理和使用密钥,以及遵循相关的安全最佳实践至关重要,比如使用...
这个工具包可能包含Objective-C的类库或者Swift的框架,提供了简单易用的接口来调用DES加解密方法。在Objective-C中,可能使用`CommonCrypto`库,这是Apple提供的加密库,包含了DES等算法的实现。在Swift中,虽然...
在`DES--master`这个文件夹中,可能包含了DESSample项目或者代码示例,展示如何在Objective-C或Swift中实现上述过程。通过阅读和理解这些代码,开发者可以更好地掌握在iOS平台上如何使用DES进行数据加解密。 总之,...
GCC(GNU Compiler Collection)是GNU项目的一部分,是一个广泛使用的开源编译器套件,支持多种编程语言,包括C、C++、Objective-C、Fortran、Ada和Go等。在Linux和Unix平台上,GCC是标准的开发工具,用于将源代码...
6. **Swift/Obj-C Integration**:如果你的项目是用Swift编写的,可能需要使用`BridgeHeader`来调用Objective-C的`CommonCrypto`库。同时,需要注意Swift和Objective-C之间的数据类型转换。 7. **Security Best ...
在iOS平台上,3Des的实现主要依赖于CommonCrypto库,这是一个C语言的库,但可以通过Objective-C或Swift进行封装。在Objective-C中,可以创建一个类别,如`NSData+3DES.m`,提供`encryptDataUsing3DES:withKey:`和`...
开发者可以通过这个框架,使用Objective-C或Swift编写代码来执行3DES加密和解密操作。 以下是一个简单的示例,演示如何在Objective-C中使用CommonCrypto进行3DES加密: ```objc #import - (NSData *)encryptData...
在Objective-C中,我们可以使用CommonCrypto库来实现加密操作,这个库包含了一系列的加密算法,如AES、DES、MD5和SHA等。`iOS`目录可能包含了iOS平台上使用这些加密算法的Objective-C代码示例。 通用加密算法常常...
以下是一个简单的Objective-C示例,演示如何使用CommonCrypto进行DES加密和解密: ```objc #import // 加密 + (NSData *)encryptWithDES:(NSData *)data key:(NSString *)key { const void *cKey = [key UTF8...
Projet利用语言打字稿(TSX),CSS,Objective-C(Projet iOS)和Java(Projet Android)。 入职 先决条件 -gestionnaire des librairies javascript IDE de votre choix(例如 ) 插件 pour votre IDE( ) ...
文件`des.php`可能包含了PHP的实现代码,`des-ios.zip`可能包含了一个iOS项目,其中包含了Objective-C或Swift的加密解密逻辑,而`des-java.zip`则可能包含了一个Java项目的源码。 总的来说,这个解决方案旨在提供一...