티스토리 뷰

자바(Java)

자바 암호화 - java encrypt

xemaker 2017. 7. 18. 15:38

자바 암호화를 할 일이 있어서 인터넷 서핑을 하다가 아래와 같은 예제를 찾았다.


그래서 아래와 같이 이클립스에서 코딩을 하고 실행을 했는데..


[자바] AES128 암호화 예제


자바의 AES128 암호화 예제입니다. getAESKey 메소드의 key 값이 암호화할 때 사용할 키입니다.


public Key getAESKey() throws Exception {

    String iv;

    Key keySpec;


    String key = "1234567890123456";

    iv = key.substring(0, 16);

    byte[] keyBytes = new byte[16];

    byte[] b = key.getBytes("UTF-8");


    int len = b.length;

    if (len > keyBytes.length) {

       len = keyBytes.length;

    }


    System.arraycopy(b, 0, keyBytes, 0, len);

    keySpec = new SecretKeySpec(keyBytes, "AES");


    return keySpec;

}


// 암호화

public String encAES(String str) throws Exception {

    Key keySpec = getAESKey();

    Cipher c = Cipher.getInstance("AES/CBC/PKCS5Padding");

    c.init(Cipher.ENCRYPT_MODE, keySpec);

    byte[] encrypted = c.doFinal(str.getBytes("UTF-8"));

    String enStr = new String(Base64.encodeBase64(encrypted));


    return enStr;

}


// 복호화

public String decAES(String enStr) throws Exception {

    Key keySpec = getAESKey();

    Cipher c = Cipher.getInstance("AES/CBC/PKCS5Padding");

    c.init(Cipher.DECRYPT_MODE, keySpec);

    byte[] byteStr = Base64.decodeBase64(enStr.getBytes("UTF-8"));

    String decStr = new String(c.doFinal(byteStr), "UTF-8");


    return decStr;

}


https://www.fun25.co.kr/blog/java-aes128-encrypt-example/?page=7


Exception in thread "main" java.security.InvalidKeyException: Parameters missing


이런 에러가 발생했다. 에러 해결 방법은 다음 글에서 살펴보자.

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함