본문 바로가기

분류 전체보기

로그 로그 문제 해결을 위해 만든 기록물이다. 서비스를 구현, 동작함에 있어서 기록되는 기록물로 문제 해결에 도움을 준다. 로그는 특정 소프트웨어, 운영체제에서 이벤트 레코드를 포함하여 자동으로 생성되는 파일이다. 행위, 이벤트에 대한 기록을 하기 때문에 문제 해결, 침해사고 분석 등의 여러 형태로 활용이 가능하다. 로그파일은 서비스가 실행될 때 눈에 보여지는 부분이 아닌 그 뒤에서 어떤 행위가 벌어지고 잘 처리되었는지 기록된다. 대부분 로그 파일은 .log 확장자를 이용하고 .txt 또는 다양한 확장자를 이용하여 로그 파일을 기록하는 경우도 있다. 이러한 로그 파일은 메모장으로 대부분 실행할 수 있으며 윈도우의 이벤트 로그의 경우는 전용 뷰어가 필요하다. 윈도우 이벤트 뷰어를 통해 이벤트 로그들을 볼 수 있.. 더보기
소프트웨어 아키텍처 소프트웨어 아키텍처(Software Architecture)는 여러가지 소프트웨어 구성요소와 그 구성요소가 가진 특성 중에서 외부에 드러나는 특성, 그리고 구성요소 간의 관계를 표현하는 시스템의 구조나 구조체를 의미한다. 또한, 소프트웨어를 설계하고 전개하기 위한 지침이나 원칙이다. 소프트웨어 아키텍처 4+1뷰 고객의 요구사항을 정리해 놓은 시나리오를 4개의 관점에서 바라보는 소프트웨어적인 접근 방법이다. 논리, 구현, 프로세스, 배포의 4개의 뷰를 구성하고 서로 충돌하지는 않는지 요구사항을 만족하는지 확인하기 위해 유스케이스 뷰를 이용하여 확인한다. 유스케이스 뷰 : 아키텍처를 도출하고 설계하는 작업을 주도하는 뷰이다. 다른 뷰들을 검증할 때 쓰인다. 논리 뷰 : 설계 모델의 추상화이며, 주요 설계 패.. 더보기
현행 시스템 현행시스템(AS-IS)은 차세대시스템 개발 이전에 현재 사용하고 있는 시스템을 총칭하여 부르는 명칭이다. 프로젝트를 시작하는데 있어서 현행 시스템을 파악할 필요가 있다. 현행 시스템 파악은 현행 시스템이 어떤 하위 시스템으로 구성되어 있는지, 제공하는 기능은 무엇인지, 연계 정보는 무엇이고 어떤 기술을 사용하는지 파악하는 것이다. 간단히 말해서 현행 시스템의 하드웨어, 소프트웨어, 네트워크 구성이 어떻게 돼있는지 확인하는 것이다. 현행 시스템 파악은 크게 3단계로 나눌 수 있다. 1단계 : 구성/기능/인터페이스 파악 시스템 구성 현황 파악 : 조직의 주요 업무를 처리하는 기간 업무와 이를 지원하는 지원 업무로 구분하여 파악한다. 시스템 기능 파악 : 단위 업무 시스템이 현재 제공하고 있는 기능을 파악한다.. 더보기
합동식, 오일러(Euler)함수 [Crypto] · 합동식 - a 와 b 는 mod m 상에서 합동이다 → a ≡ b mod m ex) mod 7 상에서 5와 합동인 수를 모두 쓰면? → [5, 12, 19, ...] · 완전잉여계(Complete Residue System) - 집합 0, 1, ... , m - 1 을 mod m 상에서의 완전잉여계라고 한다. 즉. % m 연산 결과의 집합, m으로 나눈 나머지 집합이다. 'm'을 다 모아둔 숫자를 완전잉여계라고 한다. ex) 11의 완전잉여계 원소 = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 'm'의 원소는 모두 몇 개인가? = m개 · 기약잉여계(Reduced Residue System) - 완전잉여계에서 m과 서로소인 원소의 집합을 기약잉여계라고 한다. * 서로소 : 두 수의 공.. 더보기
Diffie-Hellman Key Exchange(디피헬만 키교환) [Crypto] 1976년, Diffie와 Hellman이 제안한 키교환 방식이며 최초의 공개키 알고리즘입니다. 디피헬만 키교환은 통신망이 안전하지 않다고 가정하고 제안된 방식입니다. 디피헬만 방식은 이산대수 문제가 어렵다는 점을 이용하여 지수승 연산과 로그 연산을 이용한 알고리즘입니다. 대칭키 암호화의 문제점 중 하나인 키교환에 대한 문제를 해결하기 위해 사용할 수 있습니다. - 통신망에서 g, p, y를 알게되어도 x를 계산하는 것은 매우 어려운 문제입니다. (단, p는 매우 큰 소수, g는 원시원소) ˙ 키 교환 순서 * r은 난수입니다. (a = ra, b = rb) - A와 B가 둘만 아는 서로 같은 키를 생성하려고 합니다. 1. 매우 큰 소수 p와 (mod p) 상의 원시원소 g를 선택합니다. 해당 값들은 모.. 더보기
TCP/UDP 차이점 [Network] TCP UDP Connection-oriented protocol (연결지향형 프로토콜) 1:1로 연결 상태를 유지하여 통신하는 것을 말합니다. Connection-less protocol (비 연결지향형 프로토콜) 연결 설정행위 없이도 두 호스트 시스템 간에 트래픽을 교환할 수 있는 방식입니다. connection by byte stream (바이트 스트림을 통한 연결) 한 번에 한 바이트씩 연속적으로 전송되는 데이터의 흐름과 같이 끊임없이 연속되는 바이트 열입니다. connection by message stream (메시지 스트림을 통한 연결) 데이터그램(메시지) 단위로 전송되며 크기는 65535바이트로, 크기가 초과하면 잘라서 보내집니다. congestion control, flow control.. 더보기
SSL 세션 생성 과정 [Network] SSL(Secure Socket Layer) 프로토콜은 Netscape 사에서 웹서버와 브라우저 사이의 보안을 위해 만들었다. SSL은 Certificate Authority(CA)라 불리는 서드파티로 부터 서버와 클라이언트 인증을 하는데 사용된다. SSL은 암호화된 통신을 하고 서버와 클라이언트 사이에 데이터는 대칭 키로 암호화된 데이터를 전송하고 해당 암호화된 데이터를 복호화하기 위한 키값은 공개키 암호화를 사용하여 교환한다. 공개 키만으로 통신을 하게 되면 안전성은 높지만 컴퓨터에 자원사용이 심하여 통신 속도가 저하된다. SSL handshake protocol SSL cipher change protocol SSL alert protocol Application Protocol SSL Record.. 더보기
공개키 암호시스템 [Crypto] 1976년에 Diffie와 Hellman이 공개키 암호방식의 가능성을 언급했습니다. 그리고 1977년 Rivest, Shamir, Adleman(MIT)이 최초의 공개키 방식인 RSA를 발표했습니다. 이름에서 알 수 있듯이 만드신 분들 맨 앞글자 입니다. 특징은 mod 연산을 기본으로 하고 있고 비트연산(XOR, Shift 등) 수학적인 연산을 사용하고 대칭키와 다르게 공개키는 비대칭키로 키를 2개 사용합니다. 두 개의 키를 사용하게 되면서 키에 대한 기밀성이 유지되고 비밀키 분배 인증 등에 엄청난 영향을 미치게 됩니다. - 공개키 방식의 오해 · 비밀키 보다 안전하다? 암호방식의 안전성은 1. 키의 길이, 2. 암호해독에 필요한 비용(시간)에 따라 결정됩니다. · 비밀키 암호방식을 대채한다? 오히려, .. 더보기