| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
- 보안
- ORM
- JPA
- 엑셀 업로드
- apache.poi
- 자바8
- Javascript
- MessageQueue
- java
- stream api
- docker
- 복호화
- 대용량 업로드
- 그리드
- sqlserver
- rabbitmq
- 제이쿼리그리드
- ci/cd
- 스트림
- Jenkins
- mom
- mssql
- QueryDSL
- spring
- jqGrid
- DevOps
- Stream
- 자동배포
- JQuery
- 자동빌드
- Today
- Total
목록 전체 글 (76)
개발 메모장
API를 통해 데이터를 전달받고 있는 곳에서 보안 문제로 암호화 알고리즘을 불가피하게 변경해야 한다고 하여 변경하는 과정을 작성합니다.암복호화를 위해 해당 서버 측에게 Key와 IV를 제공받아 적용하였습니다.기존 DES는 삭제하고 AES256으로 적용하는 방법은 아래와 같습니다.#. Key, IV 설정전달 받은 key와 iv를 application.yml에 저장하고 @value를 통해 appconfig에 변수로 저장하였습니다.key와 iv는 어떤 방식으로 인코딩 되었는지, 알고리즘이 무엇인지 안내를 받아야 합니다.- 인코딩 : URL-safe Base64 / UTF-8- 알고리즘 : AES/CBC/PKCS5Padding - Key length : 256 bit - IV length : 128 bit..
API를 송수신 할 때 상대측 서버 문제로 데이터 처리가 되지 않은 경우가 간혹 발생합니다.이 때 상대 측 또는 우리 측에서 확인하지 않으면 에러가 나도 제대로 인지하기 어렵습니다.이를 위해 에러가 발생했을 경우 메일을 보낼 수 있도록 자바에서 SMTP를 이용해 발송하는 방법을 알아보았습니다.#. 설정 방법 1. 메일 발송을 위해 라이브러리를 추가합니다.implementation 'org.springframework.boot:spring-boot-starter-mail'2. api 통신을 위한 클래스에 mailSender를 추가 및 메서드를 생성해 줍니다. 또한 api는 계속해서 실행되기 때문에 최초 1회만 발송될 수 있도록 hasError 변수를 만들어줍니다.발신자 주소의 경우 명시적으로 넣어주는게 좋..
#. SHA256 알고리즘 적용 MD5 알고리즘은 보안에 취약할 수 있습니다.따라서 SHA256 이상의 알고리즘으로 변경해야하는데 이에 따라 적용해야하는 내용을 정리합니다.#. JASYPT를 이용한 알고리즘 변경암호화- MD5 적용 시와는 다르게 세부적인 옵션까지 작성해줘야 합니다.encrypt input="test" password="ene" algorithm="PBEWITHHMACSHA256ANDAES_256" keyObtentionIterations="1000" saltGeneratorClassName="org.jasypt.salt.RandomSaltGenerator" providerName="SunJCE" stringOutputType="base64" ivGeneratorClassName="org..
#. 쿼리의 길이가 길어지고 데이터가 많아질수록 속도는 느려지기 마련입니다.#. DBMS에선 빠른데 Java를 통해 처리하는 쿼리가 느린 경우가 있었습니다.우선 SQL Server JDBC Driver는 String 타입의 파라미터를 NVARCHAR로 보내어 쿼리를 실행합니다.이 경우 해당 테이블의 필드 타입이 NVARCHAR가 아닌 경우 우선순위에 따라 필드 타입을 형변환하게 됩니다.저의 경우 VARCHAR 필드에 NVARCHAR 데이터를 매핑하다보니 암시적 형변환이 일어나서 JAVA에선 더욱 느리게 느껴졌던 것입니다.그렇다고 기존의 필드를 NVARCHAR로 바꿀수도 없으므로 아래와 같이 문구 하나만 추가해줍니다.(JDBC 드라이버가 PreparedStatement로 문자열을 보낼 때 Unicode 방..