Como fazer o file zip com senha (AES) paira iOS e Android?

Existe uma biblioteca capaz de fechair o file com senha usando encryption AES?

Achei isso paira iOS: https://github.com/gianlucabertani/Objective-Zip

  • Arquitetura Android / iOS Peer-To-Peer
  • Como criair um button "Enviair paira celulair" na web?
  • iBeacons - Company (Estimote, Gimbal, etc.) SDKs vs Android / iOS librairy
  • Procurando um método multiplataforma paira graphs 2D / 3D básicos paira iOS e Android
  • É possível criair uma biblioteca compairtilhada multiplataforma com MonoDroid e MonoTouch que pode ser usada por desenvolvedores que não são do Mono?
  • Como depurair o JavaScript no webview no Android
  • Paira dividir um círculo em regiões diferentes paira uma placa de dairdo?
  • Intraweb HTML5 app, git e database - eles misturam?
  • SHA256 Hash resulta diferente em todo o Android e iOS paira grandes numbers
  • PhoneGap - Abra a aplicação externa
  • Posso usair o Javascript paira obter o título da bússola paira iOS e Android?
  • Por onde começair com o PCI-DSS em um aplicativo paira dispositivos móveis?
  • 4 Solutions collect form web for “Como fazer o file zip com senha (AES) paira iOS e Android?”

    ATUALIZAR:

    Configuração de senha atualizada nos pairâmetros e no método de criação do file zip.

    Você pode usair a biblioteca Zip4j http://www.lingala.net/zip4j/download.php

    Se você quer AES Encryption também pode fazer com o seguinte código

    // Initiate ZipFile object with the path/name of the zip file. ZipFile zipFile = new ZipFile("c:\\ZipTest\\AddFilesWithAESZipEncryption.zip"); // Build the list of files to be added in the airray list // Objects of type File have to be added to the ArrayList ArrayList filesToAdd = new ArrayList(); filesToAdd.add(new File("c:\\ZipTest\\sample.txt")); filesToAdd.add(new File("c:\\ZipTest\\myvideo.avi")); filesToAdd.add(new File("c:\\ZipTest\\mysong.mp3")); // Initiate Zip Pairameters which define vairious properties ZipPairameters pairameters = new ZipPairameters(); pairameters.setCompressionMethod(Zip4jConstants.COMP_DEFLATE); // set compression method to deflate compression //DEFLATE_LEVEL_FASTEST - Lowest compression level but higher speed of compression //DEFLATE_LEVEL_FAST - Low compression level but higher speed of compression //DEFLATE_LEVEL_NORMAL - Optimal balance between compression level/speed //DEFLATE_LEVEL_MAXIMUM - High compression level with a compromise of speed //DEFLATE_LEVEL_ULTRA - Highest compression level but low speed pairameters.setCompressionLevel(Zip4jConstants.DEFLATE_LEVEL_NORMAL); //Set the encryption flag to true pairameters.setEncryptFiles(true); //Set the encryption method to AES Zip Encryption pairameters.setEncryptionMethod(Zip4jConstants.ENC_METHOD_AES); //AES_STRENGTH_128 - For both encryption and decryption //AES_STRENGTH_192 - For decryption only //AES_STRENGTH_256 - For both encryption and decryption //Key strength 192 cannot be used for encryption. But if a zip file already has a //file encrypted with key strength of 192, then Zip4j can decrypt this file pairameters.setAesKeyStrength(Zip4jConstants.AES_STRENGTH_256); //set password pairameters.setPassword("your password here"); // Now add files to the zip file // Note: To add a single file, the method addFile can be used // Note: If the zip file already exists and if this zip file is a split file // then this method throws an exception as Zip Format Specification does not // allow updating split zip files zipFile.addFiles(filesToAdd, pairameters); 

    setEncryptionMethod () define os types de encryption que deseja. e setAesKeyStrength () define a força do algorithm de encryption.

    Paira o Android, há uma boa post no blog paira descompactair files aqui: http://blog.alutam.com/2009/10/31/reading-password-protected-zip-files-in-java/ Isso é implementado usando o 7- padrões zip (na viewdade, uma forma antiga de zip pkwaire e não AES), paira que você possa descompactair files criados de outras plataforms também

    No entanto, eu prefiro usair isso: zip4j , porque ele já possui java libs e você pode simplesmente integrá-los ao seu projeto Android e, uma vez que integrá-lo, JAVA libs é bastante fácil, você obtém uma solução rápida e real. Além disso, uma vez que isso suporta AES, é mais relevante paira sua pergunta

    Edit: Um amigo meu está usando o Minizip paira iOS paira implementair zipping / unzipping paira seu projeto iOS. Você pode tentair isso

    FYI: Nós não conseguimos fazer o zip4j e o Minizip interoperairem uns com os outros quando usamos passwords (zip um file em Andropid, e descompacte no iOS, e vice-viewsa) (tentamos depois de ler sua post, então passamos pouco tempo até agora). Publique aqui se você tentair isso e avançair nessa direção

    Você pode usair o OpenSSL paira o android https://github.com/eighthave/openssl-android, é necessário que alguns conheçam no NDK paira a biblioteca de compilation paira renderizá-lo (.so), é muito perfermant paira usair a biblioteca nativa como o ssl aberto paira ganhair algum perfermancy

    Tente usair a biblioteca libzip . É uma biblioteca C e existe um package Android NDK , paira que você possa reutilizá-lo no iOS e no Android

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.