Package me.panjohnny.jip.util
Class AESUtil
java.lang.Object
me.panjohnny.jip.util.AESUtil
Utilitní třída pro šifrování a dešifrování pomocí AES.
Třída poskytuje metody pro generování klíčů, šifrování a dešifrování dat a datových proudů.
- Since:
- 1.0
- Author:
- Jan Štefanča
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic byte[]decryptAES(byte[] encryptedData, SecretKey key, byte[] iv) Dešifruje data pomocí AES šifrování s daným klíčem a IV.static BytesencryptAES(Bytes data, SecretKey key) Šifruje data pomocí AES šifrování s daným klíčem.static IOProcessorencryptStream(Bytes data, SecretKey key, long streamLen) Šifruje datový proud pomocí AES šifrování s daným klíčem.static SecretKeyGeneruje nový AES klíč.
-
Field Details
-
IV_LENGTH
public static final int IV_LENGTH- See Also:
-
-
Constructor Details
-
AESUtil
public AESUtil()
-
-
Method Details
-
generateAESKey
Generuje nový AES klíč.- Returns:
- vygenerovaný AES klíč
- Throws:
NoSuchAlgorithmException- pokud algoritmus AES není dostupný
-
encryptAES
-
encryptStream
Šifruje datový proud pomocí AES šifrování s daným klíčem.- Parameters:
data- data k zašifrováníkey- klíč pro šifrovánístreamLen- délka datového proudu- Returns:
- IOProcessor pro zpracování šifrovaného datového proudu
- Throws:
Exception- pokud šifrování selže
-
decryptAES
Dešifruje data pomocí AES šifrování s daným klíčem a IV.- Parameters:
encryptedData- zašifrovaná datakey- klíč pro dešifrováníiv- inicializační vektor- Returns:
- dešifrovaná data
- Throws:
Exception- pokud dešifrování selže
-