使用RSA簽名與沒有密鑰分發解密消息,公鑰和私鑰將被用戶稱爲(隨機密鑰生成器將不使用)。我必須使用私鑰加密散列消息才能提供簽名 消息將只有10-20個字符,因此係統可以儘可能簡單如何加密,並通過在Android的
-1
A
回答
2
好的,請備份並告訴我們您想要什麼。你是不是想通過保護消息的內容得到隱私,或顯示該消息確實是從始發來保證真實性?
如果您正在尋找隱私,RSA不是要走的路:使用RSA生成私有/公共對,然後使用它們來交換密鑰 - 或者將密鑰交換出去。使用像AES這樣的流式算法來加密消息。
如果您只是希望簽名顯示消息是由您認爲是誰發起的,那麼請查看有關數字簽名的Wiki article - 它相當簡單明瞭。
+0
我認爲這一提法是有點,因爲AES誤導「像AES算法流」是塊暗號,而不是流暗號。 – CodesInChaos 2011-02-06 18:49:00
+0
他說,在這個問題簽名。 – 2011-02-07 01:01:24
1
對於生成數字簽名,你不需要加密哈希值。簽名是一個單獨的密碼原語;無論如何,散列並未加密,有一些填充。也就是說,代碼是:
Signature Signer = Signature.getInstance("SHA1withRSA");
Signer.initSign(MyKey, new SecureRandom()); //Where do you get the key?
byte []Message = MyMessage(); //Initialize somehow
Signer.update(Message, 0, Message.length);
byte [] Signature = Sign.sign();
相關問題
- 1. 通過android加密音頻文件並通過後端開啓解密js
- 2. 我如何加密密碼並通過httpservice發送flex
- 3. 如何在.net中加密文件並在android中解密
- 4. 如何在Java中加密並在Android和iOS中解密
- 5. 如何通過Java的加密擴展來加密PGP消息?
- 6. android通過web加密json數據
- 7. 如何在Android中加密URL參數並使用PHP解密?
- 8. 加密通過jasypt
- 9. 如何解密通過加密AES算法加密的字符串
- 10. 如何解密CryptoJS中的文件,通過JAVA用AES加密
- 11. 如何加密通過TCP傳輸的密碼?
- 12. 加密和解密的Android通話
- 13. 如何在android中創建.Gzip文件並加密並解密該文件?
- 14. 如何通過API密鑰
- 15. 如何通過API密鑰
- 16. 如何通過瀏覽器加密網站密碼?
- 17. 如何用pyopenssl解密RSA加密文件(通過PHP和OpenSSL)?
- 18. 如何通過SL api獲取加密密鑰?
- 19. 如何在Firebase中通過電子郵件+密碼認證添加DisplayName? Android
- 20. 如何通過在android
- 21. 產生通過加密
- 22. 在紅寶石,如何解密其通過「加密後」的方法
- 23. 瞭解SQL Server加密(通過密碼)?
- 24. 通過HTTPS網絡加密/解密
- 25. 通過JNDI更新LDAP加密密碼
- 26. 對稱加密密鑰通過行爲
- 27. 如何通過Android Studio添加庫
- 28. 如何加密數據並存儲在Sqlite中Android
- 29. 通過PHP加密openssl_public_encrypt,通過Node.js解密?
我知道這已經5年了,但我不知道問題是什麼。 :( – 2016-04-16 21:43:53