久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

升級到 1.45 時出現 BouncyCastle AES 錯誤

BouncyCastle AES error when upgrading to 1.45(升級到 1.45 時出現 BouncyCastle AES 錯誤)
本文介紹了升級到 1.45 時出現 BouncyCastle AES 錯誤的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

最近從 BC 1.34 升級到 1.45.我正在使用以下內容解碼一些先前編碼的數據:

Recently upgraded from BC 1.34 to 1.45. I'm decoding some previously-encoded data with the following:

    SecretKeySpec skeySpec = new SecretKeySpec(raw, "AES");
    Cipher cipher = Cipher.getInstance("AES");
    cipher.init(Cipher.DECRYPT_MODE, skeySpec);
    byte[] decrypted = cipher.doFinal(encrypted);

使用 BC 1.45 時出現此異常:

When using BC 1.45 I get this exception:

javax.crypto.BadPaddingException: pad block corrupted
 at org.bouncycastle.jce.provider.JCEBlockCipher.engineDoFinal(JCEBlockCipher.java:715)
 at javax.crypto.Cipher.doFinal(Cipher.java:1090)

有關此問題的更多信息.我正在使用以下內容從密碼生成原始密鑰:

More about this issue. I am using the following to generate raw keys from a passphrase:

    KeyGenerator kgen = KeyGenerator.getInstance("AES", "BC");
    SecureRandom sr = SecureRandom.getInstance("SHA1PRNG", "Crypto");
    sr.setSeed(seed);
    kgen.init(128, sr);
    SecretKey skey = kgen.generateKey();
    byte[] raw = skey.getEncoded();

我發現這會導致 BC 1.34 和 1.45 的兩個不同值.

What I have found is that this results in two different values for BC 1.34 vs 1.45.

它也可能與 BouncyCastle 無關(我正在 Android 2.3 上測試)

It might also not be BouncyCastle-related (I am testing on Android 2.3)

推薦答案

看起來問題是 SecureRandom 不能跨 Froyo-Gingerbread 邊界移植.這篇文章描述了一個類似的問題:

Looks like the problem is SecureRandom not being portable across the Froyo-Gingerbread boundary. This post describes a similar problem:

http://groups.google.com/group/android-security-discuss/browse_thread/thread/6ec015a33784b925

我不確定 SecureRandom 中到底發生了什么變化,但我發現修復它的唯一方法是使用便攜式方法生成的密鑰重新加密數據.

I am not sure what exactly changed in SecureRandom, but the only way I found to fix it was to reencrypt the data with keys generated using a portable method.

這篇關于升級到 1.45 時出現 BouncyCastle AES 錯誤的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

Java Remove Duplicates from an Array?(Java從數組中刪除重復項?)
How to fix Invocation failed Unexpected Response from Server: Unauthorized in Android studio(如何修復調用失敗來自服務器的意外響應:在 Android 工作室中未經授權)
AES encryption, got extra trash characters in decrypted file(AES 加密,解密文件中有多余的垃圾字符)
AES Error: Given final block not properly padded(AES 錯誤:給定的最終塊未正確填充)
Detecting incorrect key using AES/GCM in JAVA(在 JAVA 中使用 AES/GCM 檢測不正確的密鑰)
AES-256-CBC in Java(Java 中的 AES-256-CBC)
主站蜘蛛池模板: 久久在线精品 | 96久久| 欧美黑人猛交 | 中文在线字幕免费观看 | 国产高潮在线 | 激情网五月天 | 老熟女毛片 | 日本一级黄色 | 免费a在线 | 欧美成人精品一区二区三区在线看 | 亚洲一区av | 激情五月激情综合网 | 日本a在线观看 | 亚洲综合网站 | 亚洲在线视频 | 国产精品久久久一区二区三区 | 欧美极品视频 | 天天天天干 | 国产精品区二区三区日本 | 性史性dvd影片农村毛片 | 中文字幕www| 福利网站在线观看 | 免费在线看a | 性做久久久久久久免费看 | 午夜国产一区 | 精品国产区一区二 | 国产一区二区在线播放 | 日韩影音| 日韩在线看片 | av片在线看 | 国产a视频| 国产91av在线| 国产欧美精品一区 | 国产一区二区福利 | 成人精品免费视频 | 亚洲日本一区二区 | 欧美三级 欧美一级 | 日日干天天干 | 黄色1级片 | 精品免费观看 | 国产精品看片 |