'Computer Science' 카테고리의 글 목록 (14 Page) — Archive

Computer Science

Computer Science/Security

[Security] Access Control | 접근 제어

Access Control 접근 제어 - Authentication(인증)과 Authorization(인가)을 아우르는 개념이다. User Authentication (사용자 인증) (URL) Authorization (인가) (URL) "Are you who you say you are?" - Identity를 밝혀, 접근의 허용여부를 결정한다. - 사람과 기계간 인증, 기계와 기계간 인증이 대표적이다. "Are you allowed to do that?" - 인증 이후에 사용자의 행위에 제약을 가한다. [Security] Authentication | 인증 Archive [Security] Authentication | 인증 본문 Computer Engineering/Security [Security..

Computer Science/Tech Stack

[React] React Overview | 리액트 개요

React Overview 리액트 개요 - 메타(구 페이스북)에서 만든 UI 개발을 위한 JavaScript Library이다. - 정형화되고 재사용 가능한 컴포넌트를 기반으로 UI를 개발하기에 적합하다. - Declarative·Component-Based 라이브러리이다. Declarative Library (선언형 라이브러리) - 일반적인 C, Java, Python과 같은 Imperative PL(명령형 프로그래밍 언어)은 무엇을 실행해야 하는지에 초점을 맞춰 알고리즘이나 로직을 개발하는 반면, 선언형 프로그래밍 언어에서는 무엇을 표현해야 하는지에 초점을 맞추고 개발자가 이를 정의하는 방식이다. - HTML 처럼 Tag를 이용해 어떤 위치에 무엇을 그려야 하는지를 정의하는 형태가 선언형 언어의 대표..

Computer Science/Security

[Project/Security] Android Application Hacking Project | 안드로이드 애플리케이션 해킹 프로젝트

Android Application Hacking Project 안드로이드 애플리케이션 해킹 프로젝트 - 안드로이드 시스템의 구성요소 중 하나인 Broadcast Receiver에 생긴 결함에 대처한다. - 안드로이드 시스템의 Broadcast Receiver에 대한 정보는 아래 포스트를 참고하자. Android Overview (안드로이드 개요) (URL) Vulnerability Analysis (취약점 분석) - Broadcast Receiver가 수신하는 Broadcast Signal은 악의적인 애플리케이션에서 발생하거나, 공격자에 의해 임의로 생성이 가능하다. - Broadcast Receiver는 사용자가 받는 알림(메시지, 전화 등)을 중간에 가로채거나, 특정 상황에 발생하는 작업을 우회하여..

Computer Science/Security

[Security] Elliptic Curve Diffie-Hellman Algorithm | 타원 곡선 디피-헬만 알고리즘

Elliptic Curve Diffie-Hellman Algorithm (ECDH Algorithm) 타원 곡선 디피-헬만 알고리즘 - 타원 곡선의 성질을 이용하여 키를 분배하거나 전자서명을 생성한다. Mechanism (원리) - 타원 곡선을 이용한 암호화 방식의 메커니즘은 아래와 같다. Elliptic Curve \(E : y^2 = x^3 + ax + b \; (\mathrm{mod} \; p)\) 1. 타원 위를 지나는 점 \(P_1=(x_1, y_1), P_2=(x_2, y_2)\) 를 구한다. 2. \(P_3 = P_1 + P_2 = (x_3, y_3)\) 를 구한다. 이 때, 타원 위의 점들의 합은 아래와 같이 계산된다. \(x_3 = m^2 - x_1 - x_2 \; (\mathrm{mod..

Computer Science/Security

[Security] RSA Public-Key Encryption Algorithm | RSA 공개키 암호화 알고리즘

RSA Public-Key Encryption Algorithm RSA 공개키 암호화 알고리즘 - 1977년 MIT의 Ron Rivest, Adi Shamir, Len Adleman에 의해 개발된 암호화 알고리즘이다. RSA Algorithm Overview (간략한 RSA 암호화 알고리즘) \(C = M^e \; \mathrm{mod} \; n\) \(M = C^d \; \mathrm{mod} \; n = (M^e)^d \; \mathrm{mod} \; n = M^{ed} \; \mathrm{mod} \; n\) Legend Description \(C\) Ciphertext \(M\) Message (Plaintext) \(\{e, n\}\) Public Key \(\{d, n\}\) Private ..

Computer Science/Security

[Security] ElGamal Digital Signature Mechanism | 엘가말 전자서명 메커니즘

ElGamal Digital Signature Mechanism 엘가말 전자서명 메커니즘 - 무결성을 보장하기 위한, 이산로그 기반 공개키 암호화 방식의 서명 메커니즘이다. - 디피-헬만 키 교환 메커니즘보다 성능이 우수하다. Mechanism (원리) Value Description \(p, g\) - Public Values (공개된 값) \(x\) - \(A\)의 Private Key \(y = g^x \; \mathrm{mod} \; p\) - Public Signature Verification Key \(M\) - 평문 \(m\) - 평문을 수치화한 값 - Digest_Function을 통해 \(M\)을 \(m\)으로 변환한다. \(k\) - Random Key \(r = g^k \; \mat..

Computer Science/Security

[Security] Diffie-Hellman Key Exchange Algorithm (DH) | 디피-헬만 키 교환 알고리즘

Diffie-Hellman Key Exchange Algorithm (DH) 디피-헬만 키 교환 알고리즘 - Discrete Logarithms(이산 로그) 기반 공개키 분배 메커니즘이며, 암호화 메커니즘이 아니다. - 두 명의 사용자가 메시지 암호화에 사용될 비밀키를 안전하게 교환하는 것을 목표로 한다. Mechanism (원리) Value Description \(p, g\) - Public Values (공개된 값) \(x\) - \(A\)의 Private Key \(g^x \; \mathrm{mod} \; p\) - \(A\)가 \(B\)에게 전송하는 값 \(y\) - \(B\)의 Private Key \(g^y \; \mathrm{mod} \; p\) - \(B\)가 \(A\)에게 전송하는 값 ..

Computer Science/Software Engineering

[Software Engineering] Object-Orientation Design | 객체지향 설계

Object-Orientation Design 객체지향 설계 - Modulization(모듈화)에 특화된 설계 방법이다. * Object (객체) - Problem Domain에서 어떤 것을 Abtraction 해놓은 개체이다. - Class에서 정의된 대로 생성되는, 실제 메모리 공간을 차지하는 Instance이다. - 객체의 구성요소는 아래와 같다. Data Member (Attribute, State, Property) - 정보를 저장한다. Member Function (Operation, Behavior, Method) - 기능을 제공한다. Concepts of Object-Orientation (객체지향의 4가지 주요 개념) Abstraction (추상화) Encapsulation (캡슐화) I..

lww7438
'Computer Science' 카테고리의 글 목록 (14 Page)