목록전체 글 (216)
Information Security
Chapter 06. GPT-4o를 이용한 AI 이미지 분석가텍스트를 넘어 이미지 데이터를 이해하고 분석하는 멀티모달(Multimodal) 에이전트 구현GPT-4o Vision 활용: 이미지 속의 사물, 텍스트, 상황을 추론하여 설명하는 고성능 시각 지능 기술 실습이미지 인코딩(Base64): 로컬의 이미지 파일을 API로 전송하기 위해 이진 데이터를 텍스트 형태(Base64)로 변환하는 전처리 과정 학습알파벳 대문자, 소문자, 숫자, 특수문자 사용파일을 바이너리 모드(rb)로 열고 base64로 인코딩. 데이터를 텍스트로 변환한 후 utf-8로 디코딩.JSON 형식으로 문자열을 보낼 수 있도록 위함base64로 인코딩 시 아스키 문자로만 이루어져 있어 문자 인코딩 충돌 없이 안전하게 주고받을 수 있음이..
Chapter 4. 문서 지능: PDF 파싱 및 논문 요약방대한 문서를 에이전트가 이해할 수 있도록 디지털 텍스트로 변환하고 핵심을 추출하는 단계PyMuPDF (fitz) 활용: PDF 파일에서 텍스트와 메타데이터를 정교하게 추출하여 파이썬 데이터로 변환함논문 요약 자동화: 추출된 텍스트를 LLM에 전달하여 초록(Abstract), 서론, 결론 등 핵심 내용을 구조적으로 요약함주피터 노트북 활용: 셀 단위 실행을 통해 긴 문서의 파싱 과정을 실시간으로 확인하며 코드 가독성을 높임Chapter 5. 음성 지능: Whisper STT와 화자 분리(Diarization)'듣는 능력'을 넘어 '누가 말하는지'까지 구분하는 멀티모달 기술 실습FFmpeg 설치 및 연산 환경 구축: 오디오 파일 처리를 위한 필수 라..
Chapter 1. AI 에이전트의 정의와 구조단순한 챗봇을 넘어 '스스로 판단하고 행동하는' 에이전트의 개념 정립에이전트 vs 챗봇: 챗봇은 대화 자체에 집중하지만 에이전트는 특정 목표(Goal) 달성을 위해 스스로 계획을 수립함에이전트의 4대 구성 요소:Brain (LLM): 복잡한 추론 및 다음 행동 결정Planning: 목표를 하위 작업으로 분해하고 실행 순서 결정Memory: 대화의 맥락(단기)과 지식 베이스(장기) 저장Tools: 외부 API, 웹 검색, 코드 실행 등 환경과의 상호작용Chapter 2. 환경구축오픈AI의 GPT API 사용https://platform.openai.com OpenAI Platform platform.openai.com Chapter 3. 오픈 AI의 API..
Clock통신쪽에서 중요한 것이 속도AMBA(Abvanced Microcontroller Bus Architecture)ARM에서 개발하여 오플 한 표준 시스템 버스 설계 규격SoC를 구성하는 기능 블록들 간의 연결 및 관리 방법을 제공TimerTCNTB0 → count100→99→98→ … 처럼 count 되는 것을 확인할 수 있음TCMPB0 → dutyc에서 gnu toolchain 컴파일러 사용하여 __asm(”nop”); 사용하면 다른 행동하지 않고 timer만 돌게 할 수 있음 BootloaderTarget system의 Hardware를 초기화하고 OS 및 응용프로그램의 Image를 Memory에 올려 실행시키는 System ProgramClock 설정(PLL 설정), MUX, PLL loc..
한컴아카데미 IT융합 전문교육센터 2025. 12. 8. ~ 10. Firmwares/w의 low levelnon-osMCUSoC와 비슷함MCU의 Peripheral은 사용 분야에 따라 다름SoCAP라고도 불림Internal(칩 안)에서 필요로 하는 Rom, Ram 등 Memory가 부족하거나 Peripheral이 없는 경우 External에 붙여 사용 가능종류별로 Internal과 통신할 수 있는 방법이 다르기 때문에 통신메뉴얼을 따르면 됨칩 벤더 → ex) samsung칩 속 Processor → ex) ARM자동차Cortex-M 기반스마트폰Cortex-A 기반벤더가 칩을 설계할 때 Processor은 ARM 등에서 구매하여 사용Peripheral, 메모리를 직접 설계함Memory의 경우 칩 안(..
Root CA란?PKI 구조에서 제일 상위에 있는 인증기관 특징**Self-signed certificate(자기 서명 인증서)**를 가짐→ 누구한테도 서명받지 않고 스스로 자신의 인증서에 서명함.시스템/브라우저/OS 리눅스 트러스트스토어에 미리 포함됨→ 그래서 Root CA는 외부 검증이 필요 없음.절대적으로 신뢰되는 존재→ Root CA가 무너지면 전체 PKI가 무너짐.역할**Intermediate CA(중간 CA)**를 발급하고 서명해줌.Root CA는 보통 오프라인(air-gapped) 으로 운영됨.→ 해킹되면 신뢰 체계 전체가 붕괴되므로 운영을 거의 하지 않음. CA(Intermediate CA, Sub CA)란?Root CA 아래 단계에서 실제로 인증서를 발급하는 기관특징Root CA가 서명..
Fuzzing?Fuzzing 또는 Fuzz Testing소프트웨어의 코딩 오류나 보안 취약점을 발견하기 위해 사용되는 자동화된 소프트웨어 테스팅 기법 프로그램이 예상치 못한 상황에서 어떻게 반응하는지 확인하기 위해 무작위(random) 하거나 유효하지 않은(malformed) 데이터를 대량으로 입력(injection)하고, 그 결과로 발생하는 오작동, 시스템 충돌(crash), 또는 예외 상황을 모니터링하는 방식 전통적인 테스트 방법으로는 찾아내기 어려운 제로데이(Zero-day) 취약점을 발견하는 데 매우 효과적인 기법 작동 원리Fuzzing은 퍼저(Fuzzer)라는 자동화된 도구를 사용이 도구는 테스트 대상 시스템(예: 웹 애플리케이션, 네트워크 프로토콜 핸들러, 파일 파서 등)에 다음과 같은 종..
**구조체 정렬(padding/alignment)**과 관련된 컴파일러 기능은GCC, Clang, MSVC 같은 컴파일러에서 모두 지원 송수신되는 데이터의 타입이 작을수록 효과적, 효율적이지만시각적으로 편하게 코드를 볼 수 있도록 구조체 정렬 사용하는 경우도 있음✅ 1. GCC / Clang에서 사용하는 방법🔹 1) __attribute__((packed))구조체 멤버 간 패딩 제거멤버들이 메모리상에 연속적으로 꽉 차게 배치됨 struct __attribute__((packed)) MyStruct { char a; // 1 byte int b; // 4 bytes (바로 붙음) };🔹 2) __attribute__((aligned(n)))구조체 또는 변수의 정렬 기준을 강제 지정예: 4바이트 정렬 ..