작성 규칙 1. 응용을 막아두는 그러한 경우 때문에 사전은 블로그에 저장 2. 새로운 단어는 각 메뉴에 위에 추가(아래있을 수록 오래전에 등록한 단어) #ㄱ - 객체(Object) : 현실에서 존재하는 개념을 추상화하여 클래스 같은 단위로 묶어 놓은 개념 - 경쟁 상태(Race condition) : 여러 개의 프로세스가 동시에 접근을 시도할 때 접근의 타이밍이나 결과 값에 영향을 줄 수 있는 상태 - 기아 현상(Starvation) : 원하는 자원을 제 때 얻지 못하는 현상 - 게이트웨이 : 컴퓨터 네트워크에서 서로 다른 통신망으로 들어가는 네트워크로 들어가는 입구역할을 하는 네트워크 포인트 #ㄷ - 데드락(Deadlock) : 둘 이상의 프로세스가 서로 상대방이 가지고 있는 자원을 가지기 위해서 무한..
1. 시작 > 개인 정보 설정을 들어간다 2. 활동기록 > 체크된 항목 체크 해제 3. 결과 확인
인텔리제이입력모드(여러줄 커서) : Ctrl + Ctrl + ↑ 또는 ↓참조된거 포함 변수명 변경하기 : Ctrl + F6 또는 변수 우클릭 후 Rename + Refactor테스트 클래스 만들기 : Ctrl + Shift + T 꼭 해당 파일이 포인트 잡혀있어야 함!!!setter/getter, toString, contructor ... etc Alt + Insertredo : Ctrl + Shift + Z한 줄 지우기 : Ctrl + Y구현한 곳으로 따라가기 Ctrl + Left Click창닫기(Close Tab) : Ctrl + Alt + Shift + Q(사용자 정의)Settings : Ctrl + Alt + S, Ctrl + ;(사용자 정의)Project Structure(프로젝트 스트럭쳐)..
메세지 인증 코드 이용 예시 IPsec, SSL, TLS 본문 앨리스는 A은행에 한 고객인 앨리스로부터 네트워크를 통해서 공금 의뢰가 도착했다. A은행이 읽어보니 다음과 같은 내용이었다. "내 계좌 앨리스-5374에서 B 은행 계좌 밥-6671로 1억 원을 송금바랍니다" A은행은 이 메세지가 분명히 자신의 고객인 앨리스로부터 왔다는 것과 송금액인 1억 원과 수신자인 B은행의 계좌 밥-6671의 내용이 네트워크를 통해 전송되는 도중에 변경되지 않았다는 것을 확인해야 한다. 만약 고객 앨리스가 A은행에 보낸 송금 의뢰를 적극적 공격자 맬로리가 도중에 변경했다고 하면, A은행은 내용이 조작되었다는 것을 검출할 수 있어야 한다. 송금처가 맬로리의 계좌로 조작되어 있다면 1억 원을 도난당하기 때문이다. 과연 이 ..
일방향 해시 함수의 종류 MD4, MD5, SHA-1, SHA-2(SHA-256, SHA-384, SHA-512) 등등이 있다. 해시함수란? - 데이터의 지문을 생성하는 함수 예를 들어 파일의 수정여부를 알고 싶으면 어떻게 해야 할까?전체를 비교하면 된다. 하지만 파일의 전체를 훑어서 비교하기에는 너무 자원의 낭비가 심하다. 간단하게 처리 하기 위해서는 사람의 지문을 채취하듯 파일의 지문을 채취하면 된다. 그렇게 하기 위해서는 일방향 해시함수를 이용하면 된다. 일방향 해시 함수에는 입력과 출력이 각각 1개씩 있다. 입력은 메세지라고 하고, 출력은 해시 값이라 한다. 일방향 해시 함수는 메세지를 기초로 해서 해시 값을 계산한다. 예를 들어 345689를 23으로 나누어보자. 그리고 소수점 이하 7자리부터 ..
대칭 암호 vs 비대칭 암호(공개키 암호) 예전에는 DES가 표준 대칭키 암호였지만 NIST에 의해 2000년에 표준 대칭키 암호가 RSA로 선정되었다. 하지만 평문을 암호화하고 암호문을 복호화 하는 데 같은 키를 사용하기 때문에 정당하지 않는 수신자가 키를 사용해서 복호화 할 수 있는 가능성이 있다. 그러므로 정당한 수신자에게만 키를 전달하기 위해서는 공개 키 암호(비대칭 암호) 기술이 필요하다. 공개키 공개 키 암호에서는 암호화 키와 복호화키(이 두개를 합쳐 키 쌍-key pair-이라고 부른다)가 분리되어 있다. 개인이 가지고 있는 복호화키는 절대로 공개해서는 안된다. 개인 키(private key)라고도 부른다. 송신자는 암호화 키를 써서 메세지를 암호화하고, 수신자는 복호화키를 써서 암호문을 복..
JAVA의 특징 자바가상머신만 설치하면 컴퓨터의 운영체제에 상관없이 작동한다. 기본 자료형을 제외한 모든 요소들이 객체로 표현 캡슐화, 상속, 다형성이 잘 적용된 언어 GC를 통한 자동적인 메모리 관리 멀티쓰레드를 지원 OOP의 특징 객체지향 프로그래밍은 코드의 재사용성이 높다. 코드의 변경이 용이 직관적인 코드 분석 개발속도 향상 상속을 통한 장점 극대화 오버로딩, 오버라이딩 오버로딩이란 같은 이름이 메소드를 여러개 정의하는 것, 매개 변수의 타입이 다르거나 개수가 달라야 한다. 오버라이딩이란 상위 클래스의 메소드를 하위 클래스에서 재정의 Servlet, JSP Servlet이란 Container가 이해할 수 있게 구성된 순수 자바 코드로만 이루어진 것 (HTML in JAVA) JSP란 html 기반..
공통 *** 사용자가 바뀌면 환경변수를 읽지 못해서 REFRESH를 해야 한다. *** neovim 설정 open vi ~/.config/nvim/init.vim [java] 프로세스 보기 ps -ef | grep java ps aux a: 이 옵션은 ps에게 시스템의 모든 사용자에 대한 프로세스를 나열하도록 지시합니다. 이 옵션이 없으면 ps는 명령을 실행 중인 사용자와 연관된 프로세스만 나열할 수 있습니다. u: 이 옵션은 출력에 프로세스의 사용자/소유자를 표시하도록 ps에 지시합니다. 사용될 경우 출력에는 각 프로세스를 소유한 사용자를 나열하는 열이 포함됩니다. 이 옵션은 또한 출력을 사용자 중심으로 변경하여 사용자 활용에 대한 자세한 정보를 제공합니다. x: 이 옵션은 터미널에 연결되지 않은 프로..
# JVM의 메모리 구조 일반적인 프로그램과 자바 프로그램의 구조입니다. 사용자가 작성한 JAVA 코드(JAVA Source)를 컴파일러(Java Compiler)가 바이트코드로 변환시켜준다. 변환된 바이트 코드는 Execution Engine에 의해 처리된다. #JVM의 메모리 구조 Method Area1. Field Information : 멤버변수의 이름, 데이터 타입, 접근 제어자에 대한 메타데이터2. Method Information : 메서드의 이름, 리턴타입, 매개변수, 접근제어자에 대한 메타데이터3. Type Information : Type의 속성이 Class인지 Interface인지의 여부 저장' 접근 제어자 및 연관된 interface의 전체 리스트 저장 //abstract여서 @Ov..
잘못된 데이터 베이스의 설계 정보의 중복 특정 정보의 표현 불가능 정보의 손실 잘못된 데이터 설계의 결과 수정 이상 갱신 이상 : 반복된 데이터 중 일부만 수정하면 데이터의 불일치가 발생 삽입 이상 : 불필요한 정보를 함꼐 저장하지 않고는 어떤 정보를 저장하는 것이 불가능 삭제 이상 : 유용한 정보를 함께 삭제하지 않고는 어떤 정보를 삭제하는 것이 불가능 제1 정규형 * 모든 애트리뷰트의 값이 하나만 들어가 있는 릴레이션의 형태 왜? 집합이기 때문에 (집합이란, 유일한 값들의 모임) # 제 2 정규형 제 1정규형을 만족하면서 부분 함수의 종속을 제거한 릴레이션의 형태 (= 완전 함수 종속인 상태) 여기서 함수의 종속성이라는 개념이 정말 중요한데 한 개의 릴레이션을 예로 들어본다. * 데이터 베이스의 키 ..