정보보안 개요 ※OWASP(sw의 보안성을 개선하기 위해 노력하는 비영리재단) 에서 제안한 10개의 웹 취약점 분석을 통해 웹에 안전하단걸 검증하고 웹 서비스를 배포해야함 1) 보안에서 중요한 3가지 측면(CIA) alice:은행 설립자 bob:은행 고객 trudy:침입자 AOB(Alice open Bank) ...
[보안] 암호 기초
보안 1) Confidentiality(기밀성) 허가 받지 않은 사람이 정보를 해독하지 못하도록 하는것 2) Encryption Algorithms(암호 알고리즘) 1) Symmetric Key Cryptography(대칭키암호) 암호할때 사용하는 키랑 복호할때 사용하는 키가 같음 Stream Ciphter(비트단위로 암호화) ...
[보안] Apache Tomcat SSL Configuration
1) Creating the KeyStore 서버는 인증서가 반드시 있어야하는데 KeyStore를 만들고 인증서를 저장한다 자바에서는 keytool이라 불리는 command-line tool을 제공한다 이를 사용해서 KeyStore를 만들수 있고 여기에 인증서를 넣어 둘 수 있다 인증서로서 test목적으로 self-signed인증서를 ...
[보안] AES
대칭키 암호 알고리즘 암호화키 = 복호화키 1) DES(56bit key): 2^56 2의 56승의 전수 조사를 하면 풀릴 수 있는 단점이 존재함. 해결책이 아래의 3DES 2) 3DES(112bit key) : 2^112 3) AES(128,192,256 bit Key) 반복적으로 block cipher(like DES) ...
[보안] Java로 구현한 AES CBC
Programming Aes Cbc In Java Base64인코딩 : binary를 텍스트로 인코딩하는 Scheme 일반적인 binary값은 출력하면 깨질수도 있기에 a~/까지 텍스트로 인코딩하는 방식 64진수 ->6비트로 자름 출처 https://www.javacodegeeks.com/2018/03/...
Kafka 기본 실습
Kafka-실습1 Kafka 설치 1) homebrew를 통한 kafka 설치 brew install kafka Kafka 실행 2) Kafka를 실행하기 전 zookeeper를 먼저 시작 brew services start zookeeper 3) Kafka 시작 brew services start kafka 4) Kafka에...
Kafka 개요
MessageQueue 데이터를 전송하는 애플리케이션과 데이터를 수신 받는 애플리케이션의 개수가 늘어날 수 록 데이터 전송라인이 많아 지게 됨 데이터 전송라인이 많아지면 배포와 장애에 대응하기 어려움 데이터를 전송할 때의 프로토콜의 파편화가 심각해짐 추후 데이터의 포맷내부에 변경이 있을 때 유지보수하기 매우 어려워짐 카프카는 이런 ...
Kafka-AWS에카프카클러스터실습(설치 및 실행)
Kafka-AWS에카프카클러스터실습(설치 및 실행) aws의 ec2 서버 3대를 발급받아서 카프카를 설치 후 console producer와 console consumer로 연동해보는 실습 아파치 카프카를 실행하기 위해선 2가지의 애플리케이션의 요구 zookeeper: 카프카 관련 정보를 저장하는 역할 kafka...
[Java] JVM 구조
JVM이란? java 가상머신으로 java 바이트 코드를 실행할 수 있는 주체 JVM의 구성 요소 1) Class Loader 예를 들어 자바에서 코딩시 a.java파일이 생성된다고 하면 .java소스를 자바컴파일러(javac)가 컴파일하여 a.class와 같은 클래스 파일(바이트코드)로 변환해준다. Class Lo...
[Java] JAXB
JAXB JAXB(Java Architecture for XML Binding)는 Java Object를 XML로 직렬화(마샬링)하고, XML을 Java Object로 역직렬화(언마샬링)해주는 자바 API JDK6 ~ 9 버전은 JAXB가 내장되어 있어 라이브러리를 추가 할 필요가 없음 Annotation @XmlRootElement...