🌐 엔디안 변환 – htons와 htonl 완벽 정리!네트워크 프로그래밍이나 시스템 간 데이터 전송을 다루다 보면 "엔디안(Endian)"이라는 개념을 자주 접하게 됩니다. 특히 C/C++에서 htons, htonl 같은 함수가 자주 사용되는데, 이게 무엇인지, 왜 필요한지 깔끔하게 정리해보겠습니다.🔸 엔디안(Endian)이란?엔디안은 멀티 바이트 데이터를 메모리에 저장하는 방식을 말합니다.빅 엔디안(Big Endian): 큰 바이트(상위 바이트)가 메모리의 앞 주소에 저장됩니다.리틀 엔디안(Little Endian): 작은 바이트(하위 바이트)가 메모리의 앞 주소에 저장됩니다.예시:0x12345678빅 엔디안 → 12 34 56 78리틀 엔디안 → 78 56 34 12🔸 엔디안이 왜 중요할까?대부..
🚀 Ubuntu 22.04에서 Kubernetes 설치 및 구성1. 사전 준비시스템 요구 사항:Ubuntu 22.04 (또는 다른 지원되는 버전)최소 2vCPU, 4GB RAM (테스트용)루트 또는 sudo 권한이 있는 사용자2. Kubernetes 설치 단계1️⃣ 필수 패키지 설치sudo apt-get install -y apt-transport-https ca-certificates curl gpg2️⃣ GPG 키 저장 디렉터리 생성sudo mkdir -p -m 755 /etc/apt/keyrings3️⃣ Kubernetes GPG 키 등록curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.29/deb/Release.key | sudo gpg --dearmor -o..
#git URLgit clone https://github.com/HaeJuk-Lab/crypto.git/******************************************************************************* _ _ _ _____ _ _ _ _ __ _ _ ____ ____* | | | | / \ | ____| | | | | | |/ / | | / \ | __ ) ___|* | |_| | / _ \ | _| _ | | | | | ' / | | / _ \ | _ \___ \* | _ |/ ___ \| |__| |_| | |_| | . \ | |___ / ___ \| |_) |__..
#git URLgit clone https://github.com/HaeJuk-Lab/crypto.git왜 Big Integer와 같은 타입이 필요한가?RSA 및 ECC에서 큰 정수 연산RSA-2048에서는 617자리 이상의 정수 연산이 필요합니다.기본 int, long long은 64비트(약 20자리)까지만 다루기 때문에 가변 길이의 정수(Big Integer) 구현이 필요합니다.비트 기반 연산블록 암호 알고리즘(ARIA, AES, SEED)은 128비트, 192비트, 256비트 키를 다룹니다.이를 효율적으로 다루기 위해 128비트 이상의 고정 크기 타입이 필요합니다.가변 길이 버퍼 및 데이터해시, 블록 암호화에서는 블록 단위로 데이터를 처리하므로, 고정 크기 블록 타입과 가변 길이 타입이 필요합니다 ..
프로젝트 지원 환경#git URLgit clone https://github.com/HaeJuk-Lab/crypto.git 1. 프로젝트 구조폴더 기반 프로젝트: 모든 소스 코드, 헤더, 빌드 파일 및 문서를 명확하게 구분하는 폴더 구조로 설계CMakeLists 지원: CMake를 사용해 다양한 플랫폼에서 일관된 빌드 시스템 제공폴더 구조 예시CryptoProject/│├── CMakeLists.txt├── src/ # 소스 코드│ ├── rng/ # 난수 생성기 관련 코드│ │ ├── rng.cpp│ │ └── rng.h│ ├── rsa/ # RSA 관련 코드│ │ ├── rsa.cpp│ ..
1. 개요#git URLgit clone https://github.com/HaeJuk-Lab/crypto.gitProxmox VE와 Jenkins를 활용하여 다양한 OS 환경에서 빌드 및 테스트를 자동화하는 프로젝트 지원 범위를 정의합니다. 이 구성은 CI/CD 파이프라인을 통해 여러 OS에서 동시에 빌드 및 테스트를 수행하며, GitLab과의 통합으로 소스 코드의 관리 및 배포를 자동화합니다.2. 시스템 설계 흐름Proxmox에서 각 OS(컨테이너 또는 VM)에 고유 IP를 부여Jenkins에서 각 OS를 빌드 에이전트(노드)로 등록GitLab에서 코드 푸시 시 Jenkins가 Proxmox에서 해당 OS로 빌드 및 테스트 요청빌드 결과 및 테스트 리포트를 GitLab으로 피드백3. Proxmox에서..
- Total
- Today
- Yesterday
- 외돌개
- Windows
- ip
- 현포다이브
- 블루버블다이브팀
- C
- Linux
- 패턴
- DLL
- 서귀포
- 성산블루버블
- 블루버블다이빙팀
- C#.NET
- C++
- C#
- Thread
- 스쿠버 다이빙
- 서귀포블루버블
- 리눅스
- Build
- 암호화
- PowerShell
- C# 고급 기술
- 스쿠버다이빙
- 윈도우
- 블루버블
- 울릉도
- 제주도
- OpenSource
- CMake
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |