일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- AWS
- 데이터베이스
- DB
- 알고리즘
- DATABASE
- 보안
- 탐욕기법
- OS
- 백준
- 컴퓨터 보안
- 노드
- 자바스크립트
- NEST
- 되추적
- 병행제어
- IT
- 컴퓨터
- node
- 인터럽트
- 백트래킹
- 운영체제
- API문서
- node.js
- access control
- 컴퓨터보안
- rest docs
- 디비
- ES6
- 스프링부트
- S3
- Today
- Total
목록전체 글 (106)
개발스토리
순차 탐색(Sequential Search) 순차 탐색은 말 그대로 순차적으로 비교해가면서 찾는 것이다. data = {28, 40, 56, 63, 74, 87, 95}라는 배열이 있다. 74가 어디에 있는 지 알고 싶다. data[0]부터 값을 살펴봐서 74인지 아닌지 하나하나 확인하는 것이다. data[0], data[1] ... 탐색하다가 data[4] == 74이므로 여기서 탐색을 멈추게 되는 것이다. 복잡도(Time Complexity) 만약 data 배열에서 28을 탐색하면 1번만에 찾아낼 것이다. 40을 탐색하고자 한다면 2번만에 찾아낼 것이고, 56을 탐색하고자 한다면 3번만에 찾아낼 것이고, … 95를 탐색하고자 한다면 7번만에 찾아낼 것이다. 그럼 탐색하는게 걸리는 평균 연산 횟수는 (..
● Goal - 컴퓨터 용어를 습득 - protocol이 무엇인가? - network edge : host, access net, physical media - network core : packet/circuit switching , Internet structure - performance : loss , delay , throughput , security > network 성능을 체크하는 기준. ● What is the Internet 인터넷(Internet)이란 여러 통신망을 하나로 연결한다는 의미의 ‘인터 네트워크(inter-network)’라는 말에서 시작되었으며, 이제는 전 세계 컴퓨터들을 하나로 연결하는 거대한 컴퓨터 통신망을 의미합니다. 한 문장으로 정리하면 이렇게 됩니다. 아래는 부가..
페르마 정리(Fermat Theorem) • 만약 p가 소수라면 a는 p에 의해 나누어지지 않는 양의 정수이면, 다음이 성립한다 a^(p-1) ≡ 1 mod p test • a=7, p= 19, 7^18 ≡ x mod 19, x=? • 7^2 = 49 ≡ 11 mod 19 • 7^4 = 121 ≡ 7 mod 19 • 7^8 = 49 ≡ 11 mod 19 • 7^16 = 121 ≡ 7 mod 19 • a^(p-1) = 7^18 = 7^16 * 7^2 ≡ 7*11 ≡ 1 mod 19 페르마 정리의 다른 유용한 형태 • 만약 p가 소수이고 a가 양의 정수라 a^p ≡ a mod p가 성립한다. • 예) a=3, p=5, 3^5 = 243 ≡ 3 mod 5 • 예) a=10, p=5, 10^5 = 100000 ..
모듈러 연산 (mod) • 나머지연산 • a mod b : a를 b로 나눈 나머지 • 어떤 양의 정수 n과 a가 주어지고, 만약 a를 n으로 나눈다면 다음과 같은 관계를 가지는 몫 q와 나머지 r을 얻는다 -> a = qn + r ( 0
Block cipher • 긴 평문을 일정한 길이의 블록으로 나누어 블록단위로 암호화하는 방식 • SW 구현이 쉽다 • Round를 사용하여 반복적으로 암호화하므로 안전 • 대부분 Feistel cipher structure에 기반 • DES, AES, SEED, ARIA, Bluefish, Serpent 등 - block 단위로 암호화 후 block 단위로 복호화 한다. Feistel Cipher Structure란? • 대부분 Block cipher에 사용 • 입력 block을 반으로 나눈다 • 왼,오른쪽 바꿔가며 여러 round 수행 - 하나의 block을 두 개로 나누어 왼쪽 부분은 plain text left, 오른쪽 부분은 plain text right라고 보면 된다. - block ciphe..