RSA 공개키 암호 알고리즘. 전자서명에서 사용함. 1. B가 공개키와 개인키를 만들어 A에게 공개키를 보낸다. 2. A가 B로부터 받은 공개키를 이용해 보낼 정보를 암호화한다. 3. A가 암호화된 정보를 B에게 보낸다. 4. B가 암호화된 정보를 받고 개인키를 이용해 암호를 해독한다. (1) 개인키와 공개키 만들기 공개키는 n,e 두 정수로 구성, 개인키는 n,d로 구성. n구하기 두 소수 p,q를 정하고 n=p*q이다. e구하기 Φ(n) = (p - 1) * (q - 1) 공식을 이용해 Φ(n)를 구한다. e는 1 < e < Φ(n) 이고, Φ(n)와 서로소인 e를 정한다. e는 공개키에 이용된다. d구하기 (e * d) mod Φ(n) = 1 e * d를 Φ(n)로 나눴을 때 나머지가 1인 d를 구..
시스템 콜이란? 응용프로그램에서 운영체제에게 기능을 수행해달라고 하는 수단 사용자 프로세서가 소프트웨어 인터럽트를 통해 커널의 기능을 이용하기 위한 서비스를 요청하는 방법. 시스템 콜 = 소프트웨어 인터럽트 main함수에서 fork()를 호출하고 fork()함수 내에 선언되어 있는 system_call()함수가 호출되면 sys_call_table에서 호출하려는 기능을 찾아 실행함. 시스템 콜과 라이브러리 함수의 차이점 시스템콜의 수행공간은 커널 모드이고 메모리 할당은 별도로 사용자 모드에서 메모리 할당이 필요하다. fd 사용. 라이브러리 함수의 수행공간은 사용자 모드이고 메모리 할당 여부는 라이브러리 함수에서 할당된 메모리를 이용한다. 파일 포인터 사용. 파일 디스크립터 파일을 열면 파일 디스크립터가 반..
arr=[5, 4, 6, 8, 2, 3, 1, 7, 9, 0] 위 배열을 합병 정렬을 사용해 오름차순으로 정렬 해보자. 합병 정렬은 mid값으로 계속해서 분할해 각각을 오름차순으로 정렬한 후 병합하는 방법이다. 일단 전체 배열의 mid값 4를 기준으로 나눈다.(4.5같은 경우엔 버림해 4로 계산한다) [5, 4, 6, 8, 2]와 [ 3, 1, 7, 9, 0]로 나눈다. [5, 4, 6, 8, 2]도 Mid값을 이용해 나눈다. [5, 4, 6]와 [8, 2]로 나눈다. 이 또한 [5, 4],[6]와[8],[2]로 나뉜다. 다시 [5],[4]와[6]와[8],[2]로 나뉘어진다. [5],[4],[6]을 합병하면 [4, 5, 6]이 된다. 또 [8],[2]를 합병해 [2, 8]을 만든 후 [4, 5, 6]과 ..
arr = [5, 4, 6, 8, 2, 3, 1, 7, 9, 0] 위 배열을 퀵 정렬을 통해 오름차순으로 정렬해보자. 퀵 정렬은 pivot과 2개의 비교가 필요하다. arr[0]=5를 pivot으로 설정하고 arr[1]=4부터 뒷방향으로의 비교, arr[9]=0부터 앞방향으로의 비교. arr[1]의 비교를 i라고 하고, arr[9]의 비교를 j라고 하겠다. pivot과 i,j를 비교하면 된다. i는 pivot보다 작을 경우 앞으로 나가고, j는 pivot보다 클 경우 뒤로 간다. i=arr[1]=4 < arr[0]=5 이므로 i=arr[2]=6이 되고, j=arr[9]=0 arr[0]=5 이므로 정지. i와j가 모두 정지했을 때 두 값을 swap한다. arr = [5, 4, 0, 8, 2, 3, 1, 7..
arr[] = 5 | 4 | 6 | 8 | 2 | 3 | 1 | 7 | 9 | 0 삽입 정렬로 위 배열을 오름차순으로 정렬해보자. 삽입 정렬은 두번째 배열을 먼저 선택해 해당 인덱스의 앞값들과 비교해 삽입하는 방식이다. 먼저 arr[1]=4와 앞의 값 arr[0]=5와 비교한다. arr[1] < arr[0]이므로 삽입 한다. arr[] = 4 | 5 | 6 | 8 | 2 | 3 | 1 | 7 | 9 | 0 다음은 arr[2]=6과 앞의 값들을 비교하는데 [1],[0] 모두 작으므로 비교할게 없다. arr[3]=8또한 비교할게 없다. arr[4]=2와 8를 먼저 비교, arr[4] < arr[3]이므로 swap한다. 다음 값 arr[2]=6과 arr[3]=2비교, 작으므로 swap. 다음 값 arr[1]=..
선택정렬 정렬되지 않은 배열이 주어졌을 때 오름차순으로 선택정렬해보자. arr[] = 5 | 4 | 6 | 8 | 2 | 3 | 1 | 7 | 9 | 0 의 배열을 선택정렬을 사용해 오름차순으로 정렬하고자 한다. 값을 swap할 기준 인덱스를 맨 처음 값 arr[0]=5로 잡는다. 그리고 값을 비교할 비교 인덱스를 arr[1]=4로 잡는다. 4와 다음 6,8,2 .. 를 비교하면서 가장 작은 비교 인덱스 값을 기준 인덱스와 swap한다. 6,8은 4보다 크니 지나가고, 2와 비교했을 때 2가 더 작으므로 비교 인덱스는 arr[3]=2로 바뀐다. 이제 2와 3을 비교, 1을 비교했을 때 1이 더 작으므로 비교 인덱스는 arr[5]=1로 바뀐다. 비교 인덱스의 변화는 4-> 2-> 1->0 순으로 변하고 0..
참조 https://wayhome25.github.io/git/2017/07/08/git-first-pull-request-story/ git 초보를 위한 풀리퀘스트(pull request) 방법 · 초보몽키의 개발공부로그 개발을 하다 보면 코드를 여러 개로 복사해야 하는 일이 자주 생긴다. 코드를 통째로 복사하고 나서 원래 코드와는 상관없이 독립적으로 개발을 진행할 수 있는데, 이렇게 독립적으로 개발하는 wayhome25.github.io
서론 리눅스에서 시스템 호출을 한다는 것은 사용자가 작성한 프로그램에서 요구하는 커널 수준의 서비스를 제공해주는 것이다. 파일을 다루기 위한 시스템 호출/표준 함수들 open : 이미 존재하는 파일을 읽기,쓰기 용으로 열거나 새로운 파일을 만듬. creat : 새로운 파일을 생성하거나 연다. close : open, creat로 열려진 파일을 닫는다. read : 열려진 파일로부터 데이터를 읽는다. write : 열려진 파일에 데이터를 쓴다. lseek : 파일 안에서 지정한 바이트 위치로 이동. unlink,remove : 파일 삭제. 파일 입출력 프로그램 구현. 파일 디스크립터 파일 디스크립터란 하나의 실행중인 프로그램과 하나의 파일 사이에 연결된 개방 상태라고 할 수 있다. 위에서 본 filedes..
- Total
- Today
- Yesterday
- automotive
- AVB
- HTML
- PCA
- 크로스 엔트로피
- one-to-many
- 단순선형회귀
- 논문 잘 쓰는법
- Ethernet
- 케라스
- problem statement
- 머신러닝
- 회귀
- 딥러닝
- 차량 네트워크
- AVTP
- 로지스틱회귀
- automotive ethernet
- AE
- many-to-one
- SVM
- SOME/IP
- CAN-FD
- json2html
- porks
- 이상탐지
- Python
- 차량용 이더넷
- cuckoo
- many-to-many
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |