草庐IT

java - 如何在 Java(Android) 中生成与 .Net 中相同的 AES key ?

我需要根据.NetWebService提供的盐和密码在Java(Android)中生成AESkey。我需要使用与.net中生成的key相同的key,并使用相同的密码和盐(使用Rfc2898DeriveBytes和AesManaged())。这是我在Android中的代码:char[]passwordAsCharArray=password.toCharArray();PBEKeySpecpbeKeySpec=newPBEKeySpec(passwordAsCharArray,salt,1000,256);SecretKeyFactoryfactory=SecretKeyFactory.

Android AES/GCM/NoPadding 特定长度输入字节的错误?

我写了一个类,用于对任意数据进行解密和加密。它是这样工作的:因为AndroidKeyStore生成的AESkey在卸载应用程序后“丢失”,我们有一个公钥/私钥对,其中公钥包含在应用程序中。出于失败保存的目的,它用于加密AESkey,该key沿着IV填充在每个加密消息的前面。这样我们就可以用我们的私钥恢复AESkey在单元测试中,我发现它适用于大多数输入。奇怪的是,在某些字节数组长度上它失败了(我发现即81920、131073。)这是AESCrypto代码:packagecom.mycompany.appname.crypto;importandroid.content.Context;

cryptography - Android中 "AES"密码的含义?

我继承了使用以下密码的Android代码:ks=newSecretKeySpec(key,"AES");ciph=Cipher.getInstance("AES");由于只给出了“AES”,我不知道key大小、模式和填充是什么。我查看了BouncyCaSTLe*文档,但找不到描述“AES”实例的位置。如果可以的话,我想使用更明确的实例描述(例如“AES/ECB/PCKS5Padding”)。有谁知道这个实例的key大小、模式和填充是什么?谢谢!*我读到过Android使用BouncyCaSTLe作为其默认提供程序,但我没有在任何官方网站上找到它,因此我可能会在这里做出无用的假设。

android - 使用 jPCT-AE 加载 3d 模型

我正在尝试使用jPCT-AE在我的应用程序中加载3d模型.我通读了几个教程,我认为我了解了基础知识,但我还没有成功整合我拥有的3d文件。我正在使用我在教程中找到的代码fragment包com.example.jpct;importjava.io.IOException;importjava.io.InputStream;importjava.io.UnsupportedEncodingException;importjava.lang.reflect.Field;importjavax.microedition.khronos.egl.EGL10;importjavax.microed

java - 尝试使用 AES 加密和解密字符串时出现 IllegalBlockSizeException

我有一个硬编码key,我想在将字符串存储到SharedPreferences之前用它加密字符串。这是我到目前为止的代码:publicclassTokenEncryptor{privatefinalstaticStringTOKEN_KEY="91a29fa7w46d8x41";publicstaticStringencrypt(Stringplain){try{Ciphercipher=Cipher.getInstance("AES/CBC/PKCS5Padding");AlgorithmParameterSpecivSpec=newIvParameterSpec(newbyte[16

android - 使用裁剪 Intent 获取 java.lang.SecurityException : Unable to find app for caller android. app.ApplicationThreadProxy@4266ae80

我正在使用cropintent来裁剪图像,大部分时间它运行良好,但有时会出现java.lang.SecurityException:Unabletofindappforcallerandroid.app.ApplicationThreadProxy@4266ae80我附加了logcat,08-0711:33:21.190:I/BugSenseHandler(3337):Registeringdefaultexceptionshandler08-0711:33:21.230:I/BugSenseHandler(3337):Flushing...08-0711:33:21.230:I/Bu

android - AES 加密 : InvalidKeyException: Key length not 128/192/256 bits

我正在尝试使用AES加密Android上的字符串。对称key是之前用Diffie-Hellman算法确定的,似乎没问题(key长度是128位,见下文)。然而,我得到一个InvalidKeyException:"Keylengthnot128/192/256bits."代码:KeyAgreementkeyAgree=KeyAgreement.getInstance("DH","BC");keyAgree.init(this.smartphonePrivKey);keyAgree.doPhase(serverPubKey,true);SecretKeykey=keyAgree.genera

Android 4.2 破坏了我的 AES 加密/解密代码

这是我第一次在这里寻求帮助,我的部门(政府)已经在市场上发布了一些应用程序(GooglePlay),直到昨天我拿到果冻bean时,加密和描述都运行良好4.2在我的Nexus上。加密工作正常,它实际上是加密要存储的信息。虽然在解密时,我得到了一个完全像这样的异常:padblockcorrupted。我已经检查了该字符串,它与其他设备上的字符串一致(使用相同的key进行测试),这意味着它完全相同。问题是我们需要保持与以前版本的向后兼容性,这意味着如果我更改代码中的某些内容,它应该能够读取旧的加密信息。它存储在SQLite上的加密信息,因为我需要将它编码为Base64。异常发生在这一行byt

Flutter 的AES加密(NoPadding填充方式)

AES有五种加密模式,有CBC、ECB、CTR、OCF、CFB五种文章目录前言一、Java版本对应的AES加密二、Flutter版本的AES加密和解密1.引入库2.封装成加解密工具总结前言    正在做flutter版本的BLE项目的时候,发现flutter好多库不能实现Java的这种"AES/ECB/NoPadding"方式的AES的加密,导致加密的报文和Java的不一致,随机在网上找了好久终于找到了可以一个支持ECB模式并且支持NoPadding填充模式的AES加密的库一、Java版本对应的AES加密这个是java版本的AES加密,基于ECB模式,并且使用了NoPadding方式填充。pu

c# - 如何使用 .Net (C#) 在 Windows 中安全地存储 AES key ?

我一直在寻找一种方法来存储给定的AESkey,以便它不能被检索,但它仍然可以用于加密和解密(使用C#)。我认为可以找到非对称key存储的等效项here,但我正在寻找可用于对称加密的东西。它是否以托管形式存在(.Net4之前)? 最佳答案 WindowsDPAPI(Win32documentation)及其.NET包装器(ProtectedDataClass)不存储任何数据。相反,WindowsDPAPI返回一个加密密码值,您可以将其存储在任何您喜欢的地方,包括在多个服务器上。在我的工作场所,我们使用DPAPI为AESkey生成密码,