이거도 나쁘지 않아보임 요즘 트랜드에 맞는거 같음
예전에 알고있던 nextint()방식으로 사용하면 256개의 알고리즘 키를 채우기 위해서 너무 많은 자원이 들어가는거 같음
RandomGenerator를 사용해서 범위부터 지정한후 사용할수있음
여기서 SecureRandom으로 변형하는 방법을 찾아도 모르겠음 x오x
/// 범위 지정후 key에 bytes 입력해줌
공식 도큐먼트에서 긁어온거라서 맞는진 잘 모르겠음..
RandomGenerator gen = RandomGenerator.of("L128X256MixRandom");
private Key rkey = Keys.hmacShaKeyFor(nextBytes(b));
public byte[] nextBytes(byte[] bytes) {
for (int i = 0; i < bytes.length; )
for (int rnd = gen.nextInt(), n = Math.min(bytes.length - i, 4);
n-- > 0; rnd >>= 8)
bytes[i++] = (byte) rnd;
return bytes;
}
라고 열심히 조사했지만
private Key rkey = Keys.secretKeyFor(SignatureAlgorithm.HS256);
이거 한줄이면 랜덤으로 알고리즘만 설정해주면 공개키를 암호화해서 잡아주는거였음
X오X
하나의 서버를 사용하면 이 공개키를 잠구는 방식이 좋지만
여러개의 컨테이너 단위로 사용하면 외부에서 주입이 가장 좋다
내일은 외부 주입을 이용해서 짜보겠음
그렇지만 spring di를 타면 상관없지만 이런 외부 주입키는 별도로 해줘야함
따라서 어떤식으로 서버를 설계한지 고려해서 외부주입을 사용할지 공개키를 잠구는 방식을 사용할지 모르니 둘다 알아두는게 좋아보임