
namespace util { class CryptoUtil { DECLARE_NO_COPY_CLASS( CryptoUtil ); public: CryptoUtil() = default; ~CryptoUtil() = default; static std::string GetMD5Hash( const std::string& _ssInput ); static std::string GetSHA256Hash( const std::string& _ssInput ); static std::string GetSHA512Hash( const std::string& _ssInput ); static std::string GetSHA1Hash( const std::string& _ssInput ); stati..

C++ 크로스 플랫폼 에러 처리 시스템 설계✅ 개요Windows의 GetLastError()와 같은 방식의 에러 핸들링 시스템을 C++로 구현합니다. 이 시스템은 다음을 포함합니다:Thread Local Storage 기반 에러 저장프로젝트 공통 에러 코드 정의에러 메시지 출력 (다국어 지원 가능)에러 로그 기록운영체제의 시스템 에러 코드 매핑1. ❌ 에러 코드 정의 - ErrorCode.hppenum class ErrorCode { OK = 0, UNKNOWN, INVALID_PARAM, NULL_POINTER, FILE_NOT_FOUND, TIMEOUT, NETWORK_FAIL, PERMISSION_DENIED, SYSTEM_ERROR,};2. TLS ..

C++에서 UTC ↔ KST 변환하는 방법C++에서 현재 시간을 UTC(세계 협정시) 및 KST(한국 표준시, UTC+9)로 변환하는 방법을 정리합니다.C++98 / C++03 (std::time)UTC 시간 가져오기#include #include int main() { std::time_t now = std::time(nullptr); std::tm* gmt = std::gmtime(&now); std::cout tm_year + 1900) tm_mon + 1) tm_mday tm_hour tm_min tm_sec KST (한국 표준시) 가져오기#include #include int main() { std::time_t now = std::time(nullptr); std::..

RAND 정리1. RAND 설명RAND는 난수를 생성하는 함수 또는 메커니즘으로, 소프트웨어 및 하드웨어에서 사용됩니다.목적: 난수는 보안, 시뮬레이션, 게임, 통계적 분석 등 다양한 분야에서 필요합니다.특징: 난수는 예측할 수 없어야 하며, 진정한 난수(TRNG)와 의사 난수(PRNG)로 나뉩니다.2. RAND 함수 종류 설명 (C++)std::rand (C 표준 라이브러리)std::random_device (C++11 이후)std::mt19937 (Mersenne Twister, C++11 이후)std::uniform_int_distribution (C++11 이후)RDRAND (Intel 하드웨어 명령어)RDSEED (Intel, AMD 하드웨어 명령어)3. RAND 함수별 C++ 예제#includ..

CFileMon 클래스 설계 및 구현개요CFileMon 클래스는 특정 파일의 변경 사항을 감지하며, Windows와 POSIX 환경 모두에서 작동하도록 설계되었습니다. Named Mutex를 활용하여 다중 프로세스 동기화를 보장하며, 파일이 삭제되거나 수정되는 상황에 안정적으로 대응합니다.주요 기능Windows 및 POSIX 환경 지원Named Mutex를 활용하여 다중 프로세스 동기화파일 변경 시 해시를 비교하여 변경 여부 감지파일이 삭제되거나 접근 불가한 경우 예외 처리주기적인 파일 상태 확인 (스레드 기반 구현)플랫폼별 구현WindowsNamed Mutex를 CreateMutexA로 생성WaitForSingleObject와 ReleaseMutex로 동기화 관리파일 존재 확인은 std::filesys..

IOCP, Boost.Asio, epoll 예제1. IOCP (Windows)플랫폼: Windows설명: IOCP는 Windows에서 제공하는 비동기 I/O 처리 메커니즘으로, 고성능 네트워크 서버를 구축할 때 사용됩니다.예제 코드:#include #include #include #include #include #pragma comment(lib, "Ws2_32.lib")struct ClientContext { OVERLAPPED overlapped; SOCKET socket; char buffer[1024];};void workerThread(HANDLE iocpHandle) { DWORD bytesTransferred; ULONG_PTR completionKey; LP..
- Total
- Today
- Yesterday
- ip
- 서귀포블루버블
- C#
- C# 고급 기술
- C#.NET
- 윈도우
- PowerShell
- 제주도
- 암호화
- 블루버블
- 리눅스
- 성산블루버블
- CMake
- C
- Windows
- 패턴
- 블루버블다이빙팀
- Build
- 스쿠버다이빙
- Thread
- 울릉도
- C++
- Linux
- 블루버블다이브팀
- 서귀포
- DLL
- 현포다이브
- OpenSource
- ReFS
- 외돌개
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |