Programming(36)
-
[정보보안]AES(Rijndael)와 DES
AES linear 암호분석에 내성을 갖도록 설계하고싶었다. 그리고 키의 길이가 DES는 너무 짧은 탓에 좀 더 긴 키의 길이를 가지며, 빠르고 효율적인 하드웨어 및 소프트웨어 구현을 위해 고안한 방식이다. 특징 암호화 Key로 128, 192, 256bit를 가질 수 있다. (AES-128, AES-192, AES-256) 암호화 Key의 길이에 따라 실행하는 Round수가 다르다. Rijndael Cipher 워드(2바이트 → 16비트를 블록화 →) 그래서 4*4행렬 암호화 하는 방식이다. substitute byttes: S box, shift, mix : P box 각 라운드는 3개의 Function을 갖는다. (x값이 다 달라도 y가 일정한 상수함수) 변환 • P - Liniear mixng l..
2019.12.27 -
[정보보안]Feistel Cipher(파이스텔 구조) 와 DES
Feistel Cipher(파이스텔 구조) 와 DES Feistel Cipher 구조 파이스텔 구조는 데이터를 두부분으로 나누어 좌, 우 두부분에 교대로 비선형 변환을 적용시키는 구조를 말하며, trudy가 키를 훔쳐도 function을 알지 못하기 때문에 보안성이 베리굿이다. 파이스텔 네트워크 구조는 치환(Substitution), 순열(Permutation)을 번갈아 수행하는 구조이다. 위 구조는 DES에서 사용된다. Left bit(Li) : 현재 비트의 XOR 의 결과 Right bit(Rj) : 다음것의 left bit의 copy본 kEY(kj) : unknown 키 1. F를 라운드 함수로 하고 K0, K1, ... , Kn을 각각 라운드 0, 1, ..., n의 하위 키로 한다. 2. 평문 ..
2019.12.26 -
[정보보안] Symmetric Key(대칭키)를 이용한 암호해독방식
Symmetric Key(대칭키)를 이용한 암호해독방식(confusion, diffusion) 암호화, 복호화 과정에 사용되는 키는 여러가지가 있고 Encrypt/Decrypt 시 같은 키를 사용하는 경우의 키를 대칭키(Symmetric Key) 라고 한다. 대칭키를 이용하여 암호해독을 하는 시스템들의 두가지 특성, 그리고 그와 관련된 암호방식알고리즘을 살펴보도록 한다. 그리고 이후에 DES, AES에 관하여 다룬다. Symmetric Key Cryptography : 대칭키를 이용한 암호해독 Properties, 암호해독시스템의 2가지 특성 confusion : 치환, ABC → DGW, key-cipher 관계 감춤 diffusion : 확산, ABC → CAB, plain - cipher 관계 감춤..
2019.12.25 -
자바스크립트의 다중프로세스 아키텍처, 렌더러, DOM, 컴포지터
DOM 웹페이지는 일종의 document이다. 이 문서가 웹브라우저를 통해 그 내용이 화면에 나타나거나, 그저 html 소스 자체로 나타나기도 한다. 이 웹브라우저와 관련된 집합을 브라우저 객체모델(BOM : Browser Object Model) 이라고 부른다. 이 BOM을 이용하여 브라우저와 관련된 기능으 ㄹ구성하는데, DOM은 BOM의 여러종류 중 하나다. BOM의 최상위 객체는 window라는 객체로, DOM은 window객체의 하위객체이기도 하다. 그렇다면 DOM은, Document Object Model으로, 문서 객체 모델이다.,같은 html 문서의 태그를 자바스크립트가 이용가능한 객체로 만들면!! 그것이 DOM이 되는 것이다! 풀어서 말해서 이렇지, 한마디로 웹 브라우저가 HTML코드를 인..
2019.11.22 -
javascript URL parser구현(tokenizer, laxer, parser)
URL 파서 Protocol ^(https?):\/\/ ^(문자열) : 문자열의 시작과 일치 할 때 ? : 바로앞에오는 문자가 존재할수도, 존재하지 않을 수도 있음. (https, http를 모두 가져오기 위함) \/ : \가 메타문자를 문자열에서 찾고싶을 때 사용! \/ == \ Domain ([^:\/\s]+) // 그냥 모든 문자열을 찾음 ., -을 비롯한 문자들로만 구성된다. ^ : 대괄호 안에 존재할때는 부정, 대괄호 밖에서는 문자의 시작을 표현. 여기서는 대괄호 안에 존재하므로 http(protocol) 다음을 보니까, port 번호가 나오기 전까지를 체크한다. + : 앞에 존재하는 문자가 1번 이상 반복될 때! \s : 공백문자 또는 영문 PORT (:([^\/]*))? pathFile ((..
2019.11.21 -
자바스크립트의 Prototype, 객체, this
자바스크립트의 Prototype Object란? 자바스크립트는 객체기반의 스크립트 언어이고, key :value로 구성된 property들의 집합이다. 그리고 객체는, 데이터를 의미하는 Property와 데이터를 참조하고 조작할수있는 동작을 의미하는 Method(Property값이 함수인 경우)로 구성된 집합이다. 자바스크립트 객체는 객체지향의 상속을 구현하기 위해 prototype이라고 불리는 객체의 프로퍼티, 메소드를 상속받을 수 있다. 객체 리터럴 let student = { name: 'pong', score: 100, sayHello: function () { console.log('hello' + this.name)} } student.sayHello(); 사실 자바스크립트 엔진은 객체 리터럴..
2019.11.20