양자 내성 암호화(Post-Quantum Cryptography)란 무엇인가?최근 IT 보안 업계에서는 "양자 내성 암호화(Post-Quantum Cryptography, PQC)"라는 용어가 자주 등장하고 있습니다. 이는 양자 컴퓨터의 등장이 현재 사용 중인 암호 기술을 무력화시킬 수 있다는 우려에서 시작된 흐름으로, 미래의 보안 위협에 대비하기 위한 새로운 암호 기술입니다. 이번 글에서는 양자 내성 암호화가 무엇인지, 왜 필요한지, 어떤 방식들이 있는지 알아보겠습니다.1. 왜 양자 내성 암호화가 필요한가?현재 널리 사용되고 있는 RSA, ECC(Elliptic Curve Cryptography) 등의 공개키 암호 알고리즘은 큰 수의 소인수 분해나 이산 로그 문제의 계산적 어려움에 기반합니다. 이는 일..

4편: DECLARE_PROPERTY – 반복되는 getter/setter 자동화객체지향에서 캡슐화는 중요한 원칙입니다.하지만 private 멤버 + public getter/setter 패턴은 너무 반복적이라 지겹죠.그래서 등장하는 것이 DECLARE_PROPERTY 같은 매크로입니다.😫 반복되는 getter/setterclass Person {private: std::string m_name;public: const std::string& GetName() const { return m_name; } void SetName(const std::string& name) { m_name = name; }};위 코드를 모든 속성마다 계속 작성한다면 생산성이 떨어지고, 실수도 많아집니다.?..

3편: MSLEEP, SSLEEP – 간단한 Sleep 매크로 정의하기C++에서는 스레드를 잠시 멈추기 위해 std::this_thread::sleep_for를 사용하는 것이 일반적입니다.하지만 매번 std::chrono::milliseconds() 를 타이핑하는 건 지저분하고 반복적이죠.📌 목표: 더 읽기 쉽고, 반복을 줄이며, 명확한 단위 구분이 가능한 슬립 매크로 정의🛠️ 매크로 정의#ifndef MSLEEP#define MSLEEP(var) { std::this_thread::sleep_for(std::chrono::milliseconds((var))); }#endif#ifndef SSLEEP#define SSLEEP(var) { std::this_thread::sleep_for(std::ch..

2편: SAFE_DELETE / SAFE_DELETE_ARR – 안전한 포인터 메모리 해제✅ 문제 상황C++에서는 new로 생성한 메모리를 반드시 delete로 해제해야 합니다. 하지만 실수로 중복 delete를 하거나 delete 후 포인터를 그대로 두면, 이중 해제 (double free) 나 뎅글링 포인터 (dangling pointer) 문제가 생깁니다.🧯 해결 방법: SAFE_DELETE 매크로#ifndef SAFE_DELETE#define SAFE_DELETE(var) { if ( (var) != nullptr ) delete (var); (var) = nullptr; }#endif#ifndef SAFE_DELETE_ARR#define SAFE_DELETE_ARR(var) { if ( (va..

📌 시리즈 개요C++ 코드를 작성할 때 자주 반복되는 패턴이나, 명시적인 의도 표현을 위해 매크로를 사용하는 경우가 많습니다. 이 시리즈에서는 실무에서 자주 사용하는 매크로들을 하나씩 소개하며, 언제, 왜, 어떻게 사용해야 하는지를 설명합니다.반복되는 코드는 버그의 온상이다. 하지만 잘 설계된 매크로는 우리의 날개가 된다.🧩 시리즈 목록🔹 1편: UNREFERENCED_PARAMETER – 사용하지 않는 매개변수를 안전하게 무시하기Visual Studio에서 발생하는 경고 제거 방법코드의 의도를 명확히 하기 위한 실전 예제Windows/Linux 호환을 위한 정의 방법1편: UNREFERENCED_PARAMETER – 사용하지 않는 매개변수 안전하게 무시하기🔹 2편: SAFE_DELETE / SA..

🔍 UNREFERENCED_PARAMETER 매크로를 꼭 써야 하는 이유"이 매개변수 안 쓰는데… 지워도 되나?""경고가 자꾸 뜨네? 어떻게 없애지?"이런 고민, 한 번쯤 해보셨죠?C/C++ 코딩을 하다 보면 함수 시그니처에 선언된 매개변수를 사용하지 않는 경우가 종종 생깁니다.이럴 때 등장하는 게 바로 👉 UNREFERENCED_PARAMETER(x) 매크로입니다.⚠️ 문제 상황void OnEvent(int eventCode, void* pContext){ // 아직 pContext를 사용하지 않음 HandleEvent(eventCode);}Visual Studio에서는 이렇게 경고가 뜹니다:warning C4100: 'pContext': unreferenced formal paramet..
- Total
- Today
- Yesterday
- 외돌개
- C#.NET
- 암호화
- C++
- 현포다이브
- C
- CMake
- 서귀포블루버블
- Windows
- 성산블루버블
- C# 고급 기술
- PowerShell
- OpenSource
- 윈도우
- Thread
- 제주도
- 패턴
- 블루버블다이브팀
- 스쿠버다이빙
- Build
- 서귀포
- ip
- 울릉도
- 리눅스
- C#
- DLL
- 블루버블다이빙팀
- ReFS
- 블루버블
- Linux
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |