본문 바로가기
암호화 키를 생성할때 암호화 알고리즘을 사용하면서 대략적인 방법에대해서 알아보려고 합니다.암호화에는 단방향과, 양방향이 존재합니다.  단방향(hasing)복호화가 불가능한 암호화 방식이고 빠른속도를 제공 합니다.문자열을 쉽게 알아보지 못하게 만드는 과정, 문자열을 소화시킨다는 의미에서 Message Digest 라고 도 불립니다. 해싱 과정을 거치면 복호화가 불가능 합니다.원본 메시지를 변경했다면 해싱값도 변경되기 때문에 변조여부를 화인할 수 있습니다. 시스템 , 통신 무결성이 필요한 곳에서 사용됩니다. 단방향 암호화 알고리즘MD5 (현재는 보안상 취약점으로 사용 권장되지 않음) - MD4, MD5, MD6.SHA 계열 (SHA-256, SHA-3 등)bcryptArgon2RIPEMDWhirlPool 양방향암호.. 2024. 8. 12.
Spring Boot Servlet Requset euc-kr 인코딩 문제 Client 에서 json 인코딩 형식을 euc-kr로 보낼때가 있는데, 그러면 spring boot 기본 캐릭터 셋 형식이 UTF-8이라 한글이 깨진다. HttpServletRequest로 받아 아래와 같이 euc-kr 로 변경해주면 해결된다. xml, json 문서 형식도 파악 가능하다 . PostMapping(value="/test") public void insertLog(HttpServletRequest request) throws Exception { //post 로 받을때, inputStream 으로 받아야된다. ServletInputStream inputStream = request.getInputStream(); //Charset euc-kr 로 설정 String messageBody =.. 2024. 1. 10.
TDD 정리. TDD 개념 TDD는 애플리케이션의 작은 기능에 대한 테스트를 설계하고 개발하는 것부터 시작합니다. 소프트웨어가 완전히 개발되기전에 모든 테스트 케이스에 대해 반복적으로 테스트하여, 테스트가 주가 되어 개발을 진행하는 것이다. 기존 테스트와 차이점은 소스코드가 확신할 수 있는 기준을 만들 수 있습니다. TDD Red-Green-Refactor 개발 주기 RED : 실패하는 테스트 코드 작성.(에러 처리 확인) GREEN : 테스트 코드를 성공 시키기 위한 실제 코드를 작성. YELLOW : 중복 코드 제거, 일반화 등의 리펙토링을 수행합니다. 실패하는 테스트 코드를 작성할 때까지 실제코드를 작성하지 않는다. 컴파일은 실패하지 않으면서, 실행이 실패하는 정도로만 단위 테스트를 작성한다. 실패하는 테스트를 .. 2022. 6. 10.
Android/Kotlin)Sharedpreferences 에서 Jetpack DataStore 구글 안드로이드 에서는 SharedPreferences 대신 DataStore 를 쓰도록 권장하고 있습니다. Sharedpreferences key-value 형식으로 데이터를 저장할수 있는 api 입니다. 주로 간단한 데이터나 로그인 데이터를 보관 했습니다.저장 파일 은 .xml 입니다. DataStoreJetpack Datastore 는 프로토콜 버퍼를 사용해 key-value 또는 유형이 지정된 객체를 저장할수 있는 데이터 저장소 솔루션.비동기적이고 일관된 트랜잭션 방식으로 데이터 저장합니다. DataStore는 Preferences DataStore와 Proto DataStore라는 두 가지 구현을 제공합니다.Preferences DataStore : 키를 사용하여 데이터를 저장하고 데이터에 액세.. 2021. 10. 14.