자바

자바 SecureRandom 클래스를 이용한 인증토큰만들기!

알통몬_ 2018. 4. 16. 14:00
반응형


공감 및 댓글은 포스팅 하는데

 아주아주 큰 힘이 됩니다!!

포스팅 내용이 찾아주신 분들께 

도움이 되길 바라며

더 깔끔하고 좋은 포스팅을 

만들어 나가겠습니다^^

 


이번 포스팅에서는 자바의 SecureRandom 이라는 클래스를 기반으로 하여

인증토큰을 만드는 방법에 대해서 공부합니다.


1
2
3
4
5
6
7
8
9
10
11
12
public String generateAuthToken() {
    String token = null;
    try {
        SecureRandom secureRandom 
= SecureRandom.getInstance("SHA1PRNG");
        MessageDigest digest 
= MessageDigest.getInstance("SHA-256");
        secureRandom
.setSeed(secureRandom.generateSeed(128));
        token = 
new String(
digest.digest(
(secureRandom.nextLong() + "")
.getBytes()));
    } catch (NoSuchAlgorithmException e) {
        e.printStackTrace();
    }
    return token;
}
cs

만드는 방법은 정말 간단합니다.

위 메서드를 사용하시면 됩니다.

SecureRandom.getInstance(String algorithm);

algorithm 에는 정해진 몇 가지가 들어갈 수 있는데요.

먼저 제가 사용한 getInstance이고, argument가 하나가 있죠.

이 algorithm에는 아래 6가지가 들어갈 수 있습니다.

그 중에 저는 "SHA1PRNG" 를 사용했습니다.

SecureRandom에 대해 궁금하신 분들은 공식 문서를 참고하시면 되겠습니다.

https://docs.oracle.com/javase/8/docs/api/index.html


이상입니다.

감사합니다.



반응형