[JAVA/SPRING] 코드분석 (3) 2023.07.20

Welcome to Seoyun Dev Log·2023년 7월 20일
0

[WORK] 학습내용

목록 보기
9/25

Mac.doFinal

  • MAC은 서로 공유하는 secret key가 있을 때, 전송되는 정보의 유효성을 검증하고 요청에 대한 응답을 처리해주기 위해 사용됩니다
  • 메커니즘은 암호화 해시기능에 기반하는데, 이러한 매커니즘을 HMAC이라고 합니다. HMAC은 어떤 해시기능 (e.g., SHA256, SHA384)과도 같이 사용하며, secret key와 조합해서 사용

참고


ResourceHttpRequestHandler

: 디렉터리에 있는 정적 리소스를 처리하는 작업을 담당한다.
유연한 캐시설정을 허용해서 브라우저 성증에 최적화된 정적 리소스를 제공한다.
요청에 대한 리소스가 있는지 확인한 후 처음으로 발견한 리소스를 Expires와 헤더와 함께 리턴한다.
Cache-Controll, Last-Modified를 적절하게 평가해서 이미 캐시한 리소스에 대해 불필요한 오버헤드를 방지한다.
/static, /public, /resources, /META-INF/resources
-https://cheolhojung.github.io/posts/java/web-mvc-static-resources.html

  • WebMvcConfigurer
  • WebMvcConfiguration
    • addInterceptors
    • configureContentNegotiation
    • addCorsMappings
    • extendHandlerExceptionResolvers
  • InterceptorRegistration

Cipher

: 암호화 및 복호화 기능을 제공하며 Java Crpytography Architectur(JCA)의 일부분으로, 애플리케이션에서 데이터 암호화, 복호화 그리고 개인 데이터의 해싱을 제공
권한이 있는 사용자만 메세지를 이해하거나 접근할 수 있도록 메세지를 인코딩하는 과정을 말한다.
palintext라고 불리는 메세지는 암호화 알고리즘을 통해 암호화되어 cyphertext를 생성한다. 이는 복호화를 통해 오직 권한이 있는 사용자만 읽을 수 있다.

  • Cipher 객체는 오직 변환 알고리즘만 명시하여 초기화 할 수 있다.
    자바에서는 secretKey의 길이가 32bit면 AES-256, 24bit면 AES-192, 16bit의 경우 AES-128로 암호환한다.
Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");

참고


header

  • header에 있는것 Signature와 SilentMode, 역할 com.netand.commons.net.http.request;
    파일 시그니처는 파일의 가장 처음에 위치하는 특정 바이트들도 파일 포맷을 구분하기 위해 사용
    • Signature: 파일의 가장 처음에 위치하는 특정 바이트들도 파일 포맷을 구분하기 위한 것
      파일의 처음에 존재하는 시그니처는 보통 헤더(Header) 시그니처
    • SilentMode
profile
하루 일지 보단 행동 고찰 과정에 대한 개발 블로그

0개의 댓글