草庐IT

android - AES Gingerbread

This是我的AES代码。在Gingerbread下,我在2.2上加密数据然后尝试在2.3上解密后出现以下错误:Causedby:javax.crypto.BadPaddingException:padblockcorruptedatorg.bouncycastle.jce.provider.JCEBlockCipher.engineDoFinal(JCEBlockCipher.java:715)atjavax.crypto.Cipher.doFinal(Cipher.java:1090)atcom.citc.wallet.util.security.SimpleCrypto.decr

android - 用于 AES 加密的 Gradle 脚本

对于Android应用程序,我想在使用gradle构建时混淆/加密服务器公钥。现在我正在使用Base64进行混淆,但我需要额外的AEStaskencryptKeys{doFirst{//Encrypttheserverkey//Loadkeybyte[]key=newFile('project/keys/server.crt.der').bytes//EncodekeytwiceStringencoded=key.encodeBase64().toString();encoded=encoded.bytes.encodeBase64().toString();//TODOAESENCR

Android aes 加密垫 block 已损坏

我正在使用下面的方法,如果我输入正确的key,一切正常。但是如果我输入了错误的key,我会收到BadPaddingException:padblockcorrupted...难道我做错了什么?publicvoidinitKey(Stringpasswd,byte[]salt)throwsNoSuchAlgorithmException,InvalidKeySpecException,NoSuchProviderException{byte[]localsalt=salt;PBEKeySpecpassword=newPBEKeySpec(passwd.toCharArray(),loca

android - 加密 (AES)

我使用AES算法来加密我的数据。当我加密16字节(一个block)时,结果是32字节。我期望16字节,但它生成32字节。如果我以字符串格式使用我的代码,结果是相同的。为什么?我的源码是packagechert.chert;importchert.chert.R;importchert.chert.SimpleCrypto;importandroid.app.Activity;importandroid.os.Bundle;importandroid.widget.TextView;publicclassChertActivityextendsActivity{/**Calledwhen

android - AES 算法 - 解密问题

我已经编写了AES解密代码,但没有成功。我的AES算法类(class)在这里。http://pastebin.com/QtpFnW84实现是:StringMasterkey="eX0XcsF8lkeX0XcsF8lkeX0XcsF8lkeX0XcsF8lkeX0XcsF8lk";try{Strings=AES_Algo.decrypt(Masterkey,"LVmDIcmVIuNVPObjLXkVbFc13NCX1Md3DjrvfiioMQHS7QmizT3dlSujgA7NS0zIHEweRWGcwOKpu0wurK495yCTWkJO33X1n+at60xLdJ7ZUreRWN9R

android - Android 是否支持 AES256/CTR/NoPadding?

Ciphercipher=Cipher.getInstance("AES256/CTR/NoPadding")以上代码抛出如下异常:Stacktrace:java.security.NoSuchAlgorithmException:AES256/CTR/NoPaddingatjavax.crypto.Cipher.getCipher(Cipher.java:296)atjavax.crypto.Cipher.getInstance(Cipher.java:174)Android是否支持“AES256/CTR/NoPadding”?这个设备依赖吗?我正在测试的Android设备具有以下提

使用AES算法在php中不匹配的密码和解密文本不匹配

我的代码如下所示:token;$keyValuePair=$request->keyVal;$protectPayAPI=newProtectPayApi();$encryptedString=$protectPayAPI->setUtf8EncodeMd5HashTempToken($tempToken)->encryptString(utf8_encode($keyValuePair))->getEncryptedString();$decryptedString=utf8_decode($protectPayAPI->setUtf8EncodeMd5HashTempToken($temp

Android Camera2 API - 设置 AE 区域不起作用

在我的AndroidCamera2API项目中,我想为我的曝光计算设置一个区域。不幸的是它不起作用。另一方面,焦点区域工作没有任何问题。设备:三星S7/Nexus51.)CONTROL_AF_MODE和CONTROL_AE_MODE的初始值mPreviewRequestBuilder.set(CaptureRequest.CONTROL_AF_MODE,CaptureRequest.CONTROL_AF_MODE_AUTO);mPreviewRequestBuilder.set(CaptureRequest.CONTROL_AE_MODE,CaptureRequest.CONTROL_

Java AES 解密检测到不正确的 key

我正在编写对文件进行AES加密/解密的Android应用程序。我希望能够检测是否指定了不正确的密码,因此没有匹配的key用于解密。我正在使用带有256位key的AES/CBC/PKCS7Padding。如果我执行cipher.doFinal(),我可以尝试/捕获BadPaddingException,它告诉我出了点问题,可能是key不正确。但是如果我使用CipherInputStream读取加密文件,我不会得到关于填充正确性的反馈。因此,如果我故意指定不正确的密码,它会解密文件,然后报告一切正常,但解密后的文件完全是垃圾。所以我的问题是如何在使用CipherInputStream时检测

java - AES 加密 Android <-> iOS 消息长度 > 15 字节的不同结果

我在理解两个设备上的密码/加密器时遇到了一个真正的问题。1.如果我们在iOS和Android上使用CipherAES加密消息并且字符串的字符长度不大于16(例如“abcdefghijklmno”),我们在使用相同的key/密码加密后得到相同的结果。2。但是如果使用更长的消息,我们在iOS和Android上会得到不同的结果(例如“abcdefghijklmnop”)我做了很多研究如何为两个设备获取相同的参数,起初我认为这是安全的。这是我的加密密码:publicStringencode(Contextcontext,Stringpassword,Stringtext)throwsNoPas