Tag: encryption

在iPhone应用程序中实现HMACencryptionalgorithm

我想为我的iPhone应用程序实现HMACencryptionalgorithm。 任何示例代码将真正帮助。 另外,请指导我简要介绍一下。

写入文件时尝试encryptionNSDictionary

我正在保存一个NSDictionary文件在iOS设备上。 但是,NSDictionary文件是可读的XML。 我不希望人们能够进入和阅读内容,所以我需要能够在写入时encryption文件并在再次加载时解密。 我目前正在保存这样的文件: NSFileManager* fileManager = [NSFileManager defaultManager]; if (!fileManager) { NSLog(@"Failed to get file manager to save."); return; } NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString* documentsDirectory = [paths objectAtIndex:0]; NSString* filePath = [documentsDirectory stringByAppendingPathComponent:@"save.dic"]; [m_dictionary writeToFile:filePath atomically:YES]; 我正在像这样加载字典: NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString* documentsDirectory = [paths objectAtIndex:0]; NSString* filePath = […]

aes 128消息解密 – Swift,iOS

我试图用下面的代码128密钥解密消息。 这是string的扩展: func aesDecrypt(key:String, iv:String, options:Int = kCCOptionPKCS7Padding) -> String? { if let keyData = key.dataUsingEncoding(NSUTF8StringEncoding), data = NSData(base64EncodedString: self, options: .IgnoreUnknownCharacters), cryptData = NSMutableData(length: Int((data.length)) + kCCBlockSizeAES128) { let keyLength = size_t(kCCKeySizeAES128) let operation: CCOperation = UInt32(kCCDecrypt) let algoritm: CCAlgorithm = UInt32(kCCAlgorithmAES128) let options: CCOptions = UInt32(options) var numBytesEncrypted :size_t = 0 let cryptStatus […]

iOS:获取iPhone密码以生成对称密钥进行encryption

我正在开发一个iOS应用程序,这个应用程序分发给所有被密码locking的设备。 有没有办法让设备密码(或其某种forms)dynamic生成对称密钥(例如与PBKDF2)来encryption/解密数据?

3DES导致Java产生3DES iOS版本的不同结果

我真的很….真的需要帮助……….. -更新- 我需要帮助,因为与iOS 3DESfunction相比,我的javafunction给了我一个不同的结果。 我发布了来自ios和java的代码; 当指定明文为“tutor.1”且MD5键为“spO13 + QLZCRAe93pIXMXLg ==”(MD5,清楚地,两者都相同)时的结果。 JAVA 3DES (简单而简单) public static String encrypt(String plaintext, String enctoken){ if(enctoken == null) enctoken = "sfdjf48mdfdf3054"; String encrypted = null; byte[] plaintextByte = EncodingUtils.getBytes(plaintext,"UTF-8"); byte[] hash = Connessione.md5(enctoken); Log.i("ENCRYPT", "MD5: "+Base64.encodeToString(hash, 0)); try { Cipher cipher = Cipher.getInstance("DESEDE/ECB/PKCS5Padding"); SecretKeySpec myKey = new SecretKeySpec(hash,"DESede"); cipher.init(Cipher.ENCRYPT_MODE, myKey); try […]

在Android和iPhone中使用AES 256encryption(不同的结果)

我试图通过引用IOS实现在Android平台上实现客户端encryption/解密。 我正在琢磨在Android和IOS平台上的encryption和解密是不同的,即使他们使用相同的algorithm。 比方说,Android设备encryption上传文件到服务器时,IOS设备无法正确下载和解密。 我正在使用的algorithm 使用用户提供的密码encryption文件密钥。 我们首先使用PBKDF2algorithm(SHA256的1000次迭代)从密码中导出密钥/ iv对,然后使用AES 256 / CBC对文件密钥进行encryption。 结果被称为“encryption文件密钥”。 这个encryption的文件密钥将被发送并存储在服务器上。 当您需要访问数据时,您可以从encryption的文件密钥中解密文件密钥。 所有文件数据都通过AES 256 / CBC文件密钥进行encryption。 我们使用PBKDF2algorithm(SHA256的1000次迭代)从文件密钥派生key / iv对。 在本地存储派生密钥/ iv对,并使用它们来encryption文件。 encryption后,数据被上传到服务器。 下载文件时与解密文件相同。 Android代码 private static final String TAG = Crypto.class.getSimpleName(); private static final String CIPHER_ALGORITHM = "AES/CBC/NoPadding"; private static int KEY_LENGTH = 32; private static int KEY_LENGTH_SHORT = 16; // minimum values recommended […]

在iOS中离线打开和存储encryption文档

我已经encryption的文件下载和可用于在一个文件夹中的离线查看,我想知道: 如何在适当的阅读器中打开它们,因为这些是ms office文档和prezi格式 我想他们将不得不encryption,以便读者可以阅读,但在这种情况下,如何确保安全? 使用哪个文件夹来避免iCloud同步,我已经阅读了这个禁用iCloud同步 当我阅读它时,iOS是否通过基于应用程序密钥的encryption来保护应用程序的文档?或者我错了吗?

使用ECB的iOS 3DES会返回一半正确的数据

使用3DES + ECBalgorithmencryption密码时出现问题。 这里是我使用的代码: class func encryptPassword(pass: String) -> String { let keyString = "123456789012345678901234" let keyData: NSData! = (keyString as NSString).dataUsingEncoding(NSUTF8StringEncoding) as NSData! let keyBytes = UnsafePointer<UInt8>(keyData.bytes) let data: NSData! = (pass as NSString).dataUsingEncoding(NSUTF8StringEncoding) as NSData! let dataLength = UInt(data.length) let dataBytes = UnsafePointer<UInt8>(data.bytes) var cryptData = NSMutableData(length: Int(dataLength) + kCCBlockSize3DES)! var cryptPointer = […]

MonoTouch:如何保护我的应用程序

我使用Dotfuscator来保护我的应用程序免受逆向工程我在windows应用程序中encryption了dll文件,但是我怎样才能在OSX / MonoTouch中做到这一点? 从ipa中提取dll,然后在窗口中混淆dll,并将encryption的dll重新打包成IPA,然后将其发布到appstore? 有没有简单的解决scheme?

C ++:如何在已经在iOS中的MFC应用程序中重用Encrypted Sqlite数据库

我正在一个项目的中间,我想在我的MFC\C++应用程序中重用iOS应用程序的SQLite数据库。 iOS数据库使用“sqlite3_key()”进行encryption,并使用SQLCipher进行数据库处理。 和 我在CppSQLite3 Wrapper的帮助下使用SQLiteEncrypt进行数据库处理。 但是,当我试图执行数据库上的任何语句抛出和exceptionFile is encrypted or not a database 。 我没有得到任何领先。 任何人都可以帮我解决这个问题吗? 我知道它的下列问题的重复,但问题是无效的 ,我不能从这个问题得到任何答案。 1. 如何使用SQLite数据库从一个平台(iOS)到另一个(Windows) 2. 如何从另一个平台(iOS到Windows)打开和读取SQLite数据库, 请帮我解决这个问题。