공부 65

C언어 배열 시작주소에 연산 (arr+1) 해석

#include #define R 10 #define C 5 int main() { int(*p)[R][C]; //5*10=50개의 배열을 갖는 하나의 포인터 p선언. int arr[10][5]; printf("%p\n", arr); //arr는 int[10][5] printf("%p\n", arr+1); //arr+1은 int[5]를 가리키는 포인터 int[5]* 포인터의 요소가 int[5]일뿐. //int arr[3] 하고 arr+1이 int를 가리키는 포인터라는 것과 같은 이유 printf("%d\n", sizeof(arr)); //arr의 크기는 int[10][5] 배열의 크기 4*5*10 printf("%d\n", sizeof(arr+1)); //arr+1의 크기는 int[5]를 가리키는 포인터..

공부/이모저모 2021.10.19

C언어 배열이름에 &붙이는 경우(&배열이름??)

#include int main() { int a = 3; //&(변수) -> 변수가 있는 주소 int arr[2] = { 1,2 }; printf("%p ", &arr+3); //BASEADD+24 printf("%p ", arr+1); //BASEADD+4 //두 값의 차이는 십진수 20 return 0; } &arr+3과 arr+1의 주소 값 차이는 십진수 20이 날 것이다. 실제로 전자 : 0x9f5c3afbe0 후자 : 0x9f5c3afbcc 가 나와서 주소 값의 차이는 0x14 (십진수 20)이 나온다!! arr = &arr[0]의 값을 가리키고 있는 포인터 arr[0] -> int &arr[0] -> int * arr+1 일때 1의 의미는 int의 바이트 수 (4) &arr = arr배열의 ..

공부/이모저모 2021.10.19

패킷 손실과 딜레이 / 패킷 손실 4가지 원인 (packet loss, delay, 4 sources of packet delay)

How do loss and delay occur? 패킷 로스와 딜레이는 왜 발생하는 것일까? delay → 패킷이 라우터에 도착하면, 라우터 버퍼에 놓고 처리를 하는데, 이때 버퍼에서 다음 라우터로 가는 링크로 보내는 속도보다 패킷이 도달하는 속도가 빠르면 패킷이 쌓임 loss → 만약에 패킷이 계속 쌓여서 버퍼의 메모리 사이즈를 넘으면 버려짐! 4 sources of packet delay 패킷 딜레이의 4가지 원인 어디서 패킷 딜레이가 발생할까? 뭐 때문에 발생??? 1. 노드 처리 지연 (Nodal processing) 라우터안에서 패킷을 처리하는 작업때문에 발생하는 딜레이 데이터 패킷 헤더 처리, 라우팅 알고리즘 적용, 라우팅 테이블 업데이트, 비트 데이터 오류 검사 등등등.. 2. 큐 지연 (..

공부/JUN STUDY 2021.10.10

주요 포트번호 및 서비스 정리 (FTP,HTTP,SSH,텔넷,SMTP...)

포트 번호 서비스 이름 설명 20 FTP(data) FTP는 File Transfer Protocol의 약자로 TCP/IP 프로토콜을 이용해 서버와 클라이언트 사이의 파일 전송을 위한 프로토콜이다. 21 FTP(제어) FTP에서 사용자 인증, 명령을 위한 연결이 만들어진다. 22 SSH SSH는 Secure SHell의 약자로 네트워크 상의 다른 컴퓨터에 로그인하거나 원격 시스템에서 명령을 실행하고 다른 시스템으로 파일을 복사할 수 있도록 해주는 서비스를 나타낸다. 강력한 인증과 암호화 통신을 위해 기존의 텔넷같은 서비스를 대체하여 만들어졌다. 23 텔넷 원격 접속 서비스이다. 특정 사용자가 네트워크를 통해 다른 컴퓨터에 연결하여 그 컴퓨터에서 제공하는 서비스를 받을 수 있도록 하는 인터넷 표준 프로토콜..

공부/이모저모 2021.10.01

정규 표현식 (Regular Expression)

정규 표현식은 특정 규칙을 가진 문자열의 집합을 표현하는 형식적 언어이다. 특정한 패턴을 가진 문자열을 탐색할때 주로 이용하며, 대표적으로 IDS나 방화벽에서 특정 패턴을 탐지하는 정책을 설정할때 많이 사용한다. https://regexr.com RegExr: Learn, Build, & Test RegEx RegExr is an online tool to learn, build, & test Regular Expressions (RegEx / RegExp). regexr.com 위의 사이트에서 정규표현식을 입력해보며 탐지가 잘 되는지 확인할 수 있다. 1. ^[문자] [문자]로 시작하는 문자열 탐색 ex) ^abc => abc123, abc234, abc567 (탐지됨) / 1abc (탐지안됨) 2. ..

공부/이모저모 2021.09.17

리눅스 계정 구조 / 사용자 정보 구조 / 파일 딕셔너리 권한 (etc/passwd 구조, etc/shadow구조)

리눅스의 계정은 일반 사용자와 최고 관리자(root) 계정으로 구분된다. 사용자 계정 목록을 담고 있는 파일 : /etc/passwd 비밀번호가 저장된 파일 : /etc/shadow (윈도우의 SAM과 유사) /etc/passwd 파일 안에는 비밀번호가 저장되어있지 않다. (=> 비밀번호는 /etc/shadow에 저장) etc/passwd구조 etc/passwd는 사용자 계정(!=패스워드)에 대한 정보를 담고 있는 파일이다. root:x:0:0:root:/root:/bin/bash 순서대로 (1)사용자 계정 : (2)패스워드 : (3)사용자 번호 : (4)그룹 번호 : (5)실제 이름 : (6)사용자 홈디렉터리 : (7)사용자 shell 이다. (1)사용자 계정 : 어떤 계정인지를 의미한다. root는 ..

공부/이모저모 2021.09.17

윈도우 인증의 구성 요소 (LSA, SAM, SRM)

윈도우에서 계정의 인증 구성요소(부팅하고 맨 첨에 로그인 할때, 로그인 시켜주는 친구들)와 인증방법에 대해 알아보자. 윈도우 인증의 구성요소 LSA(Local Security Authority) - 총괄 : 모든 계정 로그인 검증 / 시스템 자원과 파일에 대한 접근 권한 검사 / 이름과 SID 매칭하여 SRM이 생성한 감사로그 기록 (로컬과 원격인증 모두 포함) SAM(Security Account Manager) - 저장, DB : 윈도우 계정 및 패스워드를 관리 / 사용자 계정과 패스워드 일치 여부를 확인하여 SRM에게 알려줌 ( != 윈도우 패스워드 암호화 후 보관하는 파일 SAM / SAM 파일 위치 : %SystemRoot%/system32/config/SAM) SRM(Security Refer..

공부/이모저모 2021.09.17
728x90