inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

Spring Cloud Bus 테스트

token_secret 변경후 인증부분에 대하여

해결된 질문

374

blue-sky

작성한 질문수 12

4

안녕하세요. 
좋은 강의 정말 감사드립니다.

12:12무렵에 token_secret 변경-> busrefresh 후
인증할때 Bearer Token의 token값을 변경하지 않아도...

debug시 token_secret이 busrefresh로 변경된 값으로 확인 되지만
정상적으로 인증 되는것을 확인했습니다.

로그인시 적용된 token_secret 아래의 값입니다.

user_token_native_application_#2

이상해서 아래와 같이 다른 값으로 변경후 

user_token_native_application_#4

user_token_native_application_#5

user_token_native_application_#9

busrefresh하고 health_check  URL을 확인했지만 마찬가지로 인증이 잘되었습니다.

이상한건 아래와 같이 코드를 바꾸면 

user_token_native_application_#10

user_token_native_application_#14

user_token_native_application_#17

401Unauthorized 로 정상적인 결과가 나왔습니다.

제 생각으론 # 뒤의 숫자값보다는 자릿수만 인지한거같습니다.

이런생각으로 아래와 같이 숫자를 영문으로 변경해 시도해봤더니 인증이 되었습니다.

user_token_native_application_#z

그리고 또 아래와 같이 영문을 두자리수로 늘려봤더니

user_token_native_application_#za

제 생각처럼 숫자든 영문이든 관계없이 자릿수2개로 인지해 인증이 되지 않았습니다.

이런 제 생각이 맞을까요?
엉뚱하지만.. 맞아도 이상하고 안맞아도 이상해서 질문드립니다.

token_secret architecture JPA spring-cloud spring-boot Kafka msa

답변 1

5

Dowon Lee

안녕하세요, 이도원입니다. 

답변이 늦어 죄송합니다. 

말씀하신 문제는 HMAC 알고리즘에서 비밀키를 처리하는 데에 일정한 해시키의 지정 된 길이만 사용되는 점입니다. 비밀 키의 최소 길이는 알고리즘의 비트 강도에 따라 다음과 같이 다릅니다. 

HS256: 32 bytes minimum key length

HS386: 48 bytes minimum key length

HS512: 64 bytes minimum key length

HS512의 경우 64바이트 이상의 비밀키를 요구하고, 키의 길이가 64~67까지는 동일한 키로 인식되어 같은 키로 인식 될 수 있습니다. (예를 들어, 64바이트까지는 같은 값이고 65번째 값만 다르다거나 하는 경우)

HAMC는 간단하게 사용할 수 있는 대칭키 암호 알고리즘으로 속도가 빠르다는 장점도 가지고 있습니다만, 정확하게 말해서 디지털 서명은 아닙니다. 따라서, 정교한 암호 알고리즘을 사용하기 위해 HMAC-secured JWT 또는 RSA 비대칭키 알고리즘을 선택하는게 좋을 수 있습니다. 

감사합니다. 

kafka 업데이트 강의 듣고 시포요

0

91

2

강의 교안

0

79

2

마이크로서비스간 통신 시, 인증 처리

0

87

2

api gateway 에서 인증 처리

0

66

1

섹션 19 질문드립니다

0

60

2

강의 자료 업데이트

0

87

2

부하분산 강의 섹션

0

59

1

강의자료는 어디에서?

0

78

2

강의 자료는 어디서 다운 받을 수 있나요?

0

114

2

전체 사용자 조회시 오류

0

60

1

혹시 pk 외 별도의 id 를 부여한 이유가 있을까요 ??

0

113

2

학습 방향

0

96

2

카프카 커넥터 사용 목적 문의

0

87

2

kafka 강의

0

109

2

서비스 디스커버리 종류

0

87

2

강의 자료에 대해서 궁금해요

0

119

2

GlobalFilter, LoggingFilter가 동작하지 않습니다.

0

91

2

Kafka Source Connect 버전 에러

0

90

2

소스커넥터는 사용안한 거 맞죠?

0

82

2

강의자료 업데이트 문의

0

97

2

강의에서 BCryptPasswordEncoder 에 역할(5-2)

0

59

1

강의 업데이트 계획이 궁금합니다.

0

114

2

MSA 애플리케이션에 Spring Web과 Spring Data JPA를 사용하는 것이 바람직한지 궁금합니다. (MSA 설계와 관련된 질문입니다)

0

163

2

어떤 것이 업데이트 된 건가요?

0

167

2