我尝试使用openssl创建的公钥在matlab中加密一些数据
我用以下方法创建了键:
openssl genrsa -des3 -out private.pem 1024
openssl rsa -in private.pem -pubout -outform DER -out public.der
Run Code Online (Sandbox Code Playgroud)
我使用这个matlab代码(使用Java库)加密我的数据:
import java.security.spec.RSAPublicKeySpec
import javax.crypto.Cipher;
import java.security.KeyFactory
import java.math.BigInteger
fid = fopen('public.der');
a = fread(fid);
key = java.security.spec.X509EncodedKeySpec(a);
kf = KeyFactory.getInstance('RSA');
KEY = kf.generatePublic(key);
cipher = Cipher.getInstance('RSA/ECB/PKCS1Padding');
cipher.init(Cipher.ENCRYPT_MODE, KEY)
plaintextBytes = [24];
ciphertext = cipher.doFinal(plaintextBytes)' ;
fid2 = fopen('msg.txt','w');
fwrite(fid2,ciphertext);
fclose(fid2);
Run Code Online (Sandbox Code Playgroud)
我尝试使用以下方法解密它:
openssl rsautl -decrypt -inkey private.pem -in msg.txt -keyform PEM -pkcs
Run Code Online (Sandbox Code Playgroud)
然后我收到这个错误:
RSA operation error
80305:error:0407109F:rsa routines:RSA_padding_check_PKCS1_type_2:pkcs decoding error:/BuildRoot/Library/Caches/com.apple.xbs/Sources/OpenSSL098/OpenSSL098-59.40.2/src/crypto/rsa/rsa_pk1.c:267:
80305:error:04065072:rsa routines:RSA_EAY_PRIVATE_DECRYPT:padding check …Run Code Online (Sandbox Code Playgroud) 我有一个Android应用程序,有很多动画.
当我以编程方式创建动画(使用AnimationDrawable)时,非Java对象(如"DDMS堆"选项卡中所示)随着我加载的每个新动画而增长,即使我的动画发布后也不会缩小.
我AnimationDrawable从我写的包装器对象中只有一个对每个对象的引用,我通过重写finalize方法并确保它被调用来验证该对象是否被释放.
最终android停止加载图像并将"内存不足"错误打印到日志中.
有趣的是,这只发生在某些设备(Motorola Xoom,Sony Experia)而其他设备(如Galaxy S)中.
从我给出的设备示例中可以看出,这个问题不是特定的Honeycomb或pre-Honeycomb.
我试过的一些事情:
myAnimation.addFrame(...)