บทความนี้อธิบายอัลกอริทึมการเข้ารหัส AES ที่ใช้โดย Java แบ่งปันสำหรับการอ้างอิงของคุณดังนี้:
นำเข้า Javax.crypto.cipher; นำเข้า Javax.crypto.spec.ivparameterspec; นำเข้า Javax.crypto.spec.secretkeyspec; นำเข้า Android.util.base64;/** @author Vipin.cb, vipin.cb@experionglob <br> * แพ็คเกจ:- <b> com.veebow.util </b> <br> * โครงการ:- <b> veebow </b> * <p> */คลาสสาธารณะ Aescrypt คีย์ Secretkeyspec ภาคสุดท้ายส่วนตัว; สเป็คอัลกอริทึมส่วนตัวสเปค; สแตติกสุดท้ายของสาธารณะ SEED_16_CHARACTER = "U1MJU1M0FDOUZ.QZ"; AESCRYPT สาธารณะ () โยนข้อยกเว้น {// แฮชรหัสผ่านด้วย sha-256 และครอบตัดเอาต์พุตเป็น 128 บิตสำหรับคีย์ messagedigest digest = messageDigest.getInstance ("sha-256"); digest.update (seed_16_character.getBytes ("UTF-8")); ไบต์ [] keybytes = ไบต์ใหม่ [32]; System.ArrayCopy (digest.digest (), 0, keybytes, 0, keybytes.length); CIPHER = CIPHER.GETINSTANCE ("AES/CBC/PKCS7PADDING"); key = ใหม่ secretKeySpec (keybytes, "AES"); spec = getiv (); } อัลกอริทึมสาธารณะ parameterspec getiv () {byte [] iv = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ivParameterspec ivparameterspec; ivParameterspec = ใหม่ ivparameterspec (iv); ส่งคืน ivparameterspec; } การเข้ารหัสสตริงสาธารณะ (String plaintext) พ่นข้อยกเว้น {cipher.init (cipher.encrypt_mode, คีย์, ข้อมูลจำเพาะ); ไบต์ [] เข้ารหัส = cipher.dofinal (plaintext.getBytes ("UTF-8")); String EncryptEdText = สตริงใหม่ (base64.encode (เข้ารหัส, base64.default), "UTF-8"); return EncryptedText; } การถอดรหัสสตริงสาธารณะ (สตริง CryptEdText) โยนข้อยกเว้น {cipher.init (cipher.decrypt_mode, คีย์, ข้อมูลจำเพาะ); ไบต์ [] bytes = base64.decode (cryptedText, base64.default); ไบต์ [] ถอดรหัส = cipher.dofinal (ไบต์); สตริง decryptedText = สตริงใหม่ (ถอดรหัส, "UTF-8"); return decryptedText; -PS: เพื่อนที่สนใจในการเข้ารหัสและถอดรหัสสามารถอ้างถึงเครื่องมือออนไลน์ของเว็บไซต์นี้:
การตรวจจับความปลอดภัยของรหัสผ่านออนไลน์:
http://tools.vevb.com/password/my_password_safe
เครื่องกำเนิดรหัสผ่านที่มีความแข็งแรงสูง:
http://tools.vevb.com/password/createstrongpassword
เครื่องมือเข้ารหัสออนไลน์ MD5:
http://tools.vevb.com/password/createMd5Password
Thunder, Express และ Tornado URL เครื่องมือการเข้ารหัส/ถอดรหัส:
http://tools.vevb.com/password/urlrethunder
เครื่องมือเข้ารหัสอัลกอริทึมแฮช/แฮชออนไลน์:
http://tools.vevb.com/password/hash_encrypt
ฉันหวังว่าบทความนี้จะเป็นประโยชน์กับการเขียนโปรแกรม Java ของทุกคน