언젠가는
기억해 두면 좋은 IT 지식 2 - SOA, RAID, 암호 알고리즘 본문
SOA(서비스 지향 아키텍처) Service Oriented Architecture!
기업의 소프트웨어 인프라인 정보시스템을 공유와 재사용이 가능한 서비스 단위나 컴포넌트 중심으로 구축하는 정보기술 아키텍처이다. SOA는 정보는 누구나 이용 가능한 서비스라고 가정하고, 연동과 통합을 전제로 아키텍처를 구축해 나간다. 대표적인 예로, 단순 객체 접근 프로토콜(SOAP) 기반의 웹서비스에서는 서로 다른 이용자들이 서로 다른 방식으로 서비스와 의사소통을 하면서도 통합 관리되는 서비스들을 사용할 수 있다.
구성 계층 : 표현(Presentation) 계층, 업무 프로세스(Biz-process) 계층,
서비스 중간(Service intermediary) 계층, 애플리케이션(Application) 계층,
데이터 저장(Persistency) 계층
RAID(Redundant Array of inexpensive Disk)
여러 개의 하드 디스크로 디스크 배열을 구성하여 파일을 구성하고 있는 데이터 블록들을 서로 다른 디스크들에 분산 저장할 경우 그 블록들을 여러 디스크에서 동시에 읽거나 쓸 수 있게 만들어서 디스크의 속도를 향상하는 기술.
어느 한 디스크에만 결함이 발생해도 전체 데이터에 파일이 손상되는 문제, 이를 해결하기 위해 디스크 배열에 오류 검출 및 복구를 위한 여분의 디스크들을 추가하여 오류가 발생해도 원래의 데이터를 복구할 수 있게 했다.
오류 검출 및 정정 방법에 따라 RAID 1 ~ RAID 5까지 다섯 종류
씬 클라이언트 PC : 하드, 주변장치 없이 서버, 네트워크로 운영하는 PC
멤스(MEMS : Micro-Elecro mechanical System)
멤스는 초정밀 반도체 제조기술을 바탕으로 센서, 엑추에이터, 등 기계 구조를 다양한 기술로 미세 가공하여 전기기계적 동작을 할 수 있게 만들어준 초미세 장치. 초소형이면서 고도의 복잡한 동작을 하는 마이크로 시스템이나 마이크로머신들은 대부분 멤스 기술을 사용
트러스트 존 기술
하나의 프로세스 내에 일반 애플리케이션을 취급하는 일반구역, 보안 필요한 보안 구역으로 나눠서 분할 관리하는 하드웨어 기반 보안기술. 결제, 인증서, 기밀문서 등 보안이 필요한 애플리케이션을 외부 공격에 노출하지 않고 운영체제 수준에서 안전하게 보호하는 것이 가능하다.
엠디스크(M-Disk) 한번 기록으로 영구 보관하는 광저장장치(DVD, 블루레이)
멤리스터 : 메모리 + 레지스터의 합성어. 전류의 방향과 양 등 기존의 경험을 모두 기억하는 특별한 소자.
멤리스터는 레지스터 -> 커패시터 -> 인덕터에 이은 네 번째 전자회로 구성 요소이다.
전원 공급이 끊어져도 직전에 통과한 전류의 방향과 양을 기억, 다시 전원이 공급되면 기존 상태가 그대로 복구! (문서 저장 안 하고 꺼졌는데 키니까 그 전 내용 살아있는 것), 이를 활용하면 부팅시간도 몇 초로 줄어들 수 있다.
교착상태 발생의 필요충분조건
상호 배제(mutual exclusion) : 한 번에 한 개의 프로세스만이 공유자원을 사용
점유와 대기 (hold and wait) : 최소 하나 자원 점유, 남의 자원을 추가로 점유하기 위한 대기
비선점(non-preemption) : 다른 프로세스 자원을 뺏어올 수 없음
환형 대기(circular wait) : 공유자원, 대기하는 프로세스들이 원형으로 구성 (자신 앞뒤의 자원 요구)
교착상태 해결방법 : 예방, 회피, 발견, 회복
그중 회피(avoidance) : 교착 가능성을 배제 않고 적절히 피해나감, 은행원 알고리즘 (다익스트라 제안, 은행에서 모든 고객의 요구가 충족되도록 현금을 할당하는 데서 유래한 기법)
Secure SDLC의 대표적인 방법론
CLASP : secure software사에서 개발, 초기단계에서 보안을 강화하기 위해 개발, 활동 중심, 역할 기반의 프로세스로 구성, 현재 운용 중인 시스템에 적용하기에 적합하다.
SDL : 마이크로소프트사에서 안전한 소프트웨어 개발을 위해 기존 SDLC를 개선한 방법론, 전통적인 나선형 모델을 기반으로 함
Seven Touchpoints : 소프트웨어 보안 ‘모범사례’를 SDLC에 통합한 방법론이다. 설계 및 개발 과정의 모든 산출물에 대해 위험분석 및 테스트를 수행한다. 각 단계의 7개의 보안 강화 활동이 존재한다.
스택 가드
널 포인터 역참조와 같이 주소가 저장되는 스택에서 발생하는 보안 약점을 막는 기술 중 하나로 메모리상에서 프로그램의 복귀 주소와 변수 사이에 특정한 값을 저장한 후 그 값이 변경되었을 경우 오버플로우 상태로 판단하여 프로그램 실행을 중단함으로써 잘못된 복귀 주소의 호출을 막는 기술이다.
암호화 알고리즘
암호화 방식은 단방향(해쉬) 양방향(개인키, 공개키)이 있고, 양방향의 개인키는 블록 암호화 방식, 스트림 암호화 방식이 있다.
양방향 암호화 방식
개인키 : 동일한 키로 데이터 암호화, 복호화한다. 암호화 복호화 알고리즘은 서로 다르다.
대칭 암호 기법 : 한 번에 하나의 데이터 블록을 암호화하는 것 – DES, AES, ARIA, SEED
스트림 암호화 기법 : 평문과 동일한 길이의 스트림을 생성하여 비트 단위로 암호화하는 기법 – LFSR, RC4
장/단점 : 암호화/복호화 속도 빠름, 알고리즘 단순, 파일크기가 작음, 관리해야 할 키의 수가 많다.
공개키 : 암호화할 때 공개키, 복호화할 때 비밀키(관리자가 관리) = 비대칭 암호화 기법 – RSA
장/단점 : 암호화/복호화 속도 느림, 알고리즘 복잡, 파일크기가 큼, 키 분배 용이, 키 개수 적음
공개키 기반 구조 (PKI) : 공개키 암호 시스템을 안전하게 사용, 관리하기 위한 정보 표준 방식으로 ITU-T의 X.509, 비 X.509 방식으로 구분
X.509 : 인증 기관에서 인증서 기반으로 상호 인증, 비 X509 : 각 국가, 지역별로 맞게 보완/개발
****양방향 알고리즘 종류****
SEED : 1999년, 한국인터넷진흥원, 블록 크기 128, 키 길이 128, 256비트
ARIA : 국가정보원, 산학연합회, 블록 크기 128, 키 길이 128, 192, 256비트
DES : 미국 NBS에서 발표, DES 3번 적용한 3 DES도 있음. 블록 크기 64, 키 길이 56비트
AES : 2001년, NIST에서 발표, DES한계를 느껴 발표, 블록 크기 128, 키 길이 128, 192, 256비트
RSA : 1978년 MIT의 세명이 큰 숫자를 소인수 분해하기 어렵다는 것에 기반하여 만듦!
단방향 암호화 방식 – 해시
해시는 임의의 길이의 입력 데이터나 메시지를 고정된 길이의 값이나 키로 변환하는 것을 의미한다.
해시 알고리즘은 해시 함수라 부르고, 키를 해시값, 해시 키라고 부름. 데이터의 암호화, 무결성 검증 + 정보보호의 다양한 분야에서 사용한다.
SHA 시리즈 : 1993년 NSA에서 NIST발표 SHA-0 이후 SHA-1, 다시 SHA-2라 불리는 SHA-224,256,384,512 개발
SNEFRU : 1990, 32비트 프로세서에서 구현 용이 목적, 블록 크기 512비트, 키 길이 128,256비트
'IT > IT 지식' 카테고리의 다른 글
기억해 두면 좋은 IT 지식 4 - 트랜잭션 특성, 스키마, 블랙박스 테스트 (0) | 2022.07.12 |
---|---|
기억해 두면 좋은 IT 지식 3 - 서비스 거부 공격(DoS) (0) | 2022.07.12 |
기억해 두면 좋은 IT 지식 1 - 미들웨어, IEEE 802 (0) | 2022.07.12 |
앙상블, 텍스트 마이닝, SOM (0) | 2022.07.11 |
데이터 분석방법 (0) | 2022.07.11 |