#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에서..
#git URLgit clone https://github.com/HaeJuk-Lab/crypto.git암호화 모듈 개발 프로젝트 계획서1. 프로젝트 개요프로젝트 명: 암호화 모듈 개발 (CMVP 인증 목표)개발 언어: C/C++목표: ARIA, RSA-2048, SHA-256, SHA-1 알고리즘을 직접 구현하고, CMVP(FIPS 140-2/140-3) 인증 기준에 맞는 난수 생성기(RNG) 개발제약 사항: 오픈소스 사용 금지2. 프로젝트 범위암호화 알고리즘 구현ARIA (256비트 암호화 지원)RSA-2048 (공개 키 기반 암호화)SHA-256, SHA-1 (해시 알고리즘)난수 생성기(RNG) 개발AES-CTR 기반 DRBG 직접 구현 (NIST SP 800-90A 준수)엔트로피 수집을 위한 하드..
리눅스 타이머 방식 정리 및 비교표1. 리눅스에서 사용 가능한 타이머 방식리눅스에서는 다양한 방식으로 주기적인 작업을 수행할 수 있습니다. POSIX 타이머, sleep, pthread, alarm 등 여러 방식이 존재하며, 각각의 방식은 성능과 사용 용도에 따라 적합성이 다릅니다.2. 리눅스 타이머 방식 및 예제 코드1. POSIX 타이머 (timer_create)설명: 고정밀 타이머로, SIGEV_THREAD 옵션을 사용해 타이머 만료 시 별도의 스레드에서 콜백이 실행됩니다.#include #include #include void timer_handler(union sigval sv) { printf("Timer expired! Data sent.\n");}void create_timer() {..
SetTimer vs Thread Sleep vs CreateTimerQueueTimer 비교 윈도우 애플리케이션에서 일정 시간 간격으로 작업을 수행하는 방법으로 SetTimer, Thread + Sleep, CreateTimerQueueTimer가 자주 사용됩니다. 각각의 방식은 동작 방식과 장단점이 다르며, 상황에 따라 적합한 방식이 달라집니다. 1. SetTimer 동작 방식: 일정 시간 간격으로 WM_TIMER 메시지를 메시지 큐에 추가하여 타이머 이벤트를 발생시킵니다. 메인 스레드에서 타이머 콜백이 처리됩니다. SetTimer(hWnd, 1, 1000, NULL); // 1초마다 WM_TIMER 발생switch (message) { case WM_TIM..
- Total
- Today
- Yesterday
- Linux
- 윈도우
- 스쿠버 다이빙
- 현포다이브
- Thread
- CMake
- C#.NET
- C#
- C++
- 스쿠버다이빙
- C
- C# 고급 기술
- ip
- 블루버블다이빙팀
- 외돌개
- PowerShell
- 블루버블
- 블루버블다이브팀
- DLL
- 서귀포
- 울릉도
- Build
- OpenSource
- 리눅스
- Windows
- 패턴
- 서귀포블루버블
- 암호화
- 제주도
- 성산블루버블
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |