일단, 원격 자체를 설정하는 것은 이 글에서는 설명 따로 하지 않겠습니다. 원격 열고, 계정설정까지야 찾아보시면 널리고 널렸습니다. 그것을 따라하면 되고, Education 버전 같은 경우, 학교 이메일이나 회사 계정등을 확인해야 제대로 사용할 수 있습니다. 이 부분때문에 다른 버전들과는 차이점이 생겨 오류들이 발생하는데, 이 글에서는 다음과 같은 오류가 발생할 때, 해결하는 방법을 계시해놨습니다. 1. 아이디를 컴퓨터 이름으로 원격 로그인 했을 때, 원격 조인 ADD에 걸려 있습니다. 2. 아이디를 이메일로 하여 원격 로그인 하였을 때, 사용자 자격 증명이 작동하지 않습니다. 새 자격증명을 생성해주세요. 등 이런 오류가 발생합니다. 저도 여러 방식을 시도해봤는데, 아래와 같이 하니까 되더라구요. 먼저 ..
현대 암호학의 방식 중 하나이며, 대칭 암호이다. 대칭 암호란, 암호에 사용하는 암호화 하는 키와 복호화 하는 키가 동일한 것 64비트의 크기의 블록을 암호화하는 방식이다. 현재는 하나의 키를 사용하는 것이 아닌 3DES를 널리 사용 특징 혼동 : 키와 암호문 사이의 관련성을 모호하게 하는 암호화 연산, 오늘날 혼동을 만족시키기 위한 일반적인 요소는 환자(평문 : 암호문 1대1 대응)이고, DES와 AES에서 발견됨. 확산 : 평문의 통계적 특성을 숨기기 위한 목적으로 하나의 평문 기호의 영향이 많은 암호문 기호에 퍼지도록 하는 암호화 연산, 단순한 확산 요소는 비트 전치로 DES에서 빈번히 사용됨. 곱 암호 : 두 연산을 혼합한 암호 보안 : 분석적 공격에는 안전하나 소모적 키 탐색에는 안전하지 않음...
XMLDeclaration : XML의 버전, 즉 처음 생기는 를 생성하는 클래스 인스턴스 XMLElement : 실질적으로 각 노드 및 데이터 입력 공간을 생성할 수 있다. 이 공간에 데이터를 넣거나, 텍스트를 넣을 수 있다. 파일 생성하는 부분 void ResourcesManager::WriteResource(wstring filePath) { MakeRandomBallers(); wstring finalPath = _resourcePath + filePath + L".xml"; auto path = filesystem::path(finalPath); filesystem::create_directory(path.parent_path()); string forder = path.parent_path()..
하게 된 이유 - 프로젝트들에 앞서 기둥이 되는 서버와 클라이언트 네트워크 코드를 매번 직접 작성했었는데, 이번 기회에 기본이 되는 서버단을 구현해놓고 사용하기 위해서 C++ IOCP 서버와 Select 서버, C# 클라이언트 서버를 구성하였습니다. 그 와중에 이 파트는 C# 비동기 클라이언트 서버를 구축하는 이야기입니다. 먼저 들어가기에 앞서, 비동기란? https://jiyun-hong.tistory.com/107 소켓 통신의 종류 - 동기, 비동기, 블록킹, 논 블록킹 소켓 통신 종류에는 물론 TCP와 UDP가 존재하지만, 그 두 가지에서도 여러 방향으로 나뉘게 된다. 크게 네 가지로 나뉘는데 먼저 동기인가 비동기인가, 두 번째로 블록킹이냐 논 블록킹이냐 두가 jiyun-hong.tistory.co..
소켓 통신 종류에는 물론 TCP와 UDP가 존재하지만, 그 두 가지에서도 여러 방향으로 나뉘게 된다. 크게 네 가지로 나뉘는데 먼저 동기인가 비동기인가, 두 번째로 블록킹이냐 논 블록킹이냐 두가지 형태로 나뉜다. 동기 : 호출하자마자 바로 실행, 즉 호출하는 시점 = 실행하는 시점 비동기 : 호출을 해도 순서가 오지 않으면 늦게 실행될 수도 있음. 즉 호출하는 시점 ≠ 실행하는 시점 블록킹 : 함수를 호출하면 실행될 때 까지 기다린다. 기다리는 동안에는 다른 활동 X 논 블록킹 : 함수를 호출해도 다른 활동 가능, 참고로 비동기 관련해서 두 가지의 패턴이 존재하는데 Reactor Pattern 과 Proactor Pattern 패턴이다. 자세하게는 설명하지 않겠지만, 관련되어서 간단하게 설명하자면 Rea..
하게 된 이유 - 프로젝트들에 앞서 매번 기둥이 되는 서버를 직접 작성했었는데, 이번 기회에 기본이 되는 서버단을 구현해놓고 사용하기 위해서 C++ IOCP 서버와 Select 서버, C# 클라이언트 서버를 구성하였습니다. 그러다보니 C++과 C#을 함께 사용하기 위해 패킷을 직렬화 해야되는데 그 부분을 Protocol Buffer로 하기 위해 설치하게 되었습니다. 먼저 과정에 설명하기 앞서서, 아직 프로토콜 버퍼 뉴비이기 때문에 전체적인 옵션들에 대해서 미숙하다는 점을 미리 설명드립니다. 과정 - 먼저, https://github.com/protocolbuffers/protobuf 에 접속하여 기초 소스들을 다운받아야 합니다. 소스는 GitHub release page를 클릭하면 버전들이 나오게 되고,..
EX 시리즈란? 비동기 입출력의 경우, WSARecv와 WSASend를 통해 send와 recv는 호출을 받을 수 있다. 그렇지만 원래 사용하던 connect나 disconnect, accept는 비동기 호출을 받을 수 없다. 그런 부분을 확장하기 위해 나온 API가 아래 세 가지이다. ※ 사용하기 위해서는 WSAIoctl을 통해 런타임에 초기화를 진행하여야 합니다. WSAIoctl - 초기화 함수 위 원형에서 제일 중요한 부분은 dwIoControlCode 입니다. dwIoControlCode에는 필수적으로SIO_GET_EXTENSION_FUNCTION_POINTER 가 들어가야 합니다. 만약 들어가게 되면 lpvInBuffer에는 GUID라는 특별한 아이덴티티가 들어가게 됩니다. GUID의 종류는 아..
속성 이름 속성 내용 SO_LINGER Close 되었을 때, 소켓 버퍼에 남아있는 데이터를 어떻게 할 것인지 결정 SO_REUSEADDR 커널이 bind 정보를 들고 있을 때, 재 사용이 가능하도록 한다. SO_RCVBUF RecvBuffer 크기 결정 SO_SNDBUF SendBuffer 크기 결정 TCP_NODELAY Nagle 알고리즘 -> 작은 데이터들을 모아서 한번에 보내는 알고리즘( 껏다 켜기 ) SO_UPDATE_ACCEPT_CONTEXT ListenSocket의 특성을 ClientSocket에 그대로 적용 Linger 더보기 LINGER option; option.l_onoff = onoff; option.l_linger = linger; SetSockOpt(socket, SOL_SOCK..
- Total
- Today
- Yesterday
- BFS
- 스레드풀
- 레지스터
- 인제대학교
- 워셜알고리즘
- 멀티쓰레드
- 백준
- queue
- 보안
- Select모델
- 컨퍼런스
- 지뢰찾기
- Dreamhack
- 더블버퍼링
- 알고리즘
- 개발
- 정보보안
- 링크드 리스트
- 드림핵
- 자료구조
- c++
- 고양이
- 학교
- STL
- 시스템보안
- 야경
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |