java加密解密用法


1.概念

  • 明文:需要被加密的消息,一般是人直接可以閱讀理解的內容。(plaintext)
  • 密文:  被加密后的消息,一般是人不可直接閱讀並理解的。(ciphertext)
  • 加密:將明文轉換成密文的過程。(encryption)
  • 解密:將密文恢復成明文的過程。(decryption)
  • 加密算法: 對明文進行加密時所使用的算法。
  • 解密算法:對密文進行解密時所使用的算法。
  • 加密密鑰:encryption key.
  • 解密密鑰 :decryption key.

2.常用加密解密算法

常見的加密算法分為對稱加密算法、非對稱加密算法和信息摘要算法。

  • 對稱加密算法 :DES,3DES,AES
  • 非對稱加密算法:RSA,DSA
  • 信息摘要算法:MD5,SHA

3.java實現

java中對這幾種的類型的算法都有相應的實現,可以方便的直接調用。

具體可以參考java的幫助文檔Java ™ Cryptography Architecture (JCA) Reference Guide

下面對每一種類型的算法選擇一個實現進行舉例:

3.1 java實現AES加密

3.2 java實現RSA加密

3.3 java實現MD5加密

4. 總結

java 框架中對於加密體系的實現,對於日常的使用已經足夠了。如果有更高的安全需求,或者其他框架中沒有實現的算法,可以尋找一些開源的實現。如Bouncy Castle,提供了一系列算法的實現,並可以以provider的方式加入到JCA中,同時提供了關於BASE64和十六進制轉換的相關工具。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM