반응형

nRF52 35

nRF52 SDK를 활용한 부트로더 단계에서 펌웨어 무결성을 검증하는 방법

nRF52 SDK를 활용한 부트로더 단계에서 펌웨어 무결성을 검증하는 방법nRF52840과 같은 nRF52 시리즈를 활용한 임베디드 시스템에서 펌웨어 무결성 검증은 시스템 보안을 강화하고, 악성 코드나 손상된 펌웨어가 실행되는 것을 방지하는 중요한 단계입니다. 이 글에서는 nRF52 SDK를 활용해 부트로더 단계에서 펌웨어의 무결성을 검증하는 방법을 자세히 살펴보겠습니다.1. 펌웨어 무결성 검증의 필요성펌웨어 무결성 검증은 다음과 같은 이유로 중요합니다.보안 강화: 악성 코드가 펌웨어에 주입되는 것을 방지합니다.데이터 보호: 손상된 펌웨어가 실행되지 않도록 하여 사용자 데이터를 보호합니다.시스템 안정성: 무결성을 확인하여 시스템 충돌과 오작동을 예방합니다.펌웨어 무결성을 검증하는 일반적인 방법은 해시(H..

nRF52 2025.02.20

nRF52 SDK를 이용한 블루투스 통신 데이터 암호화 방법

nRF52 SDK를 이용한 블루투스 통신 데이터 암호화 방법1. 서론nRF52840과 같은 nRF52 시리즈 MCU는 BLE(Bluetooth Low Energy)를 지원하는 저전력 무선 통신 디바이스입니다. 무선 통신 환경에서는 데이터 보안이 매우 중요하며, 이를 위해 블루투스 통신에서 데이터 암호화를 적용하는 방법을 이해하는 것이 필요합니다.이번 포스팅에서는 nRF52 SDK를 활용해 BLE 통신 시 데이터를 안전하게 암호화하는 방법을 단계별로 설명하고, 실습 예제 코드와 함께 구현하는 과정을 안내하겠습니다.2. 블루투스 보안 개요블루투스 보안은 다음과 같은 주요 요소로 구성됩니다.페어링(Pairing): 두 기기가 신뢰 관계를 수립하는 과정인증(Authentication): 장치 간의 신원을 검증하..

nRF52 2025.02.20

nRF52840 디지털 서명과 인증 - 데이터 서명과 검증 과정 ECDSA

디지털 서명과 인증: 데이터 서명과 검증 과정디지털 서명은 전자 문서나 데이터를 보호하고, 무결성과 인증을 보장하는 중요한 암호화 기술입니다. 특히 사물인터넷(IoT)과 임베디드 시스템에서 보안 요구 사항이 증가함에 따라, 디지털 서명과 검증은 신뢰성을 확보하는 데 필수적인 역할을 합니다. 이번 포스팅에서는 디지털 서명의 개념과 과정, 그리고 nRF52840과 nRF5 SDK를 활용하여 ECDSA(타원 곡선 디지털 서명 알고리즘)로 데이터를 서명하고 검증하는 방법을 소개하겠습니다.1. 디지털 서명의 개념디지털 서명(Digital Signature)은 전자 문서에 대한 무결성과 송신자의 신원을 검증할 수 있도록 하는 암호화된 데이터입니다. 이는 공개 키 기반의 암호화 기법(PKI)을 사용하여 생성됩니다. ..

nRF52 2025.02.20

nRF52840 True Random Number Generator를 활용한 안전한 난수 생성 및 키 관리

True Random Number Generator를 활용한 안전한 난수 생성 및 키 관리nRF52840과 같은 고급 임베디드 디바이스에서는 보안성을 높이기 위해 난수 생성과 키 관리는 필수적인 요소입니다. 이 글에서는 nRF52840의 True Random Number Generator(TRNG)를 활용한 안전한 난수 생성 방법과, nRF52 SDK를 활용해 플래시 메모리와 RAM을 이용한 안전한 키 저장 및 관리 방법에 대해 설명하겠습니다.1. True Random Number Generator(TRNG)란?TRNG(True Random Number Generator)는 하드웨어 기반의 난수 생성기로, 전자 소자의 열 잡음이나 기타 물리적 현상을 활용해 예측 불가능한 난수를 생성합니다. 소프트웨어 기..

nRF52 2025.02.20

nRF52840 ECC 공개 키 기반 암호화의 원리와 장점

ECC 공개 키 기반 암호화의 원리와 장점1. ECC(타원 곡선 암호)의 개요ECC(Elliptic Curve Cryptography)는 타원 곡선의 수학적 성질을 이용한 비대칭 키 암호화 방식입니다. 비대칭 키 암호화는 하나의 키로 데이터를 암호화하고, 다른 키로 복호화하는 방식으로, 주로 공개 키와 개인 키를 사용합니다. ECC는 기존 RSA와 같은 비대칭 키 방식보다 더 작은 키 크기로 유사한 수준의 보안을 제공하는 특징이 있습니다.타원 곡선은 다음과 같은 형태의 방정식으로 표현됩니다.$$y^2 = x^3 + ax + b$$여기서 $a$와 $b$는 타원 곡선을 정의하는 상수입니다. 이러한 타원 곡선 위의 점들과 특정 연산을 기반으로 ECC 알고리즘이 동작합니다.2. ECC의 주요 원리ECC의 기본 ..

nRF52 2025.02.20

HMAC와 nRF52 SDK를 활용한 실습

HMAC와 nRF52 SDK를 활용한 실습1. HMAC의 개념과 필요성1.1 HMAC란 무엇인가?HMAC(Hash-based Message Authentication Code)는 해시 함수를 기반으로 하는 메시지 인증 코드입니다. 이는 특정 키와 메시지를 조합하여 고유의 해시 값을 생성하고, 해당 해시 값이 메시지의 무결성과 송신자 인증을 보장하는 역할을 합니다.HMAC는 다음과 같은 특징을 가지고 있습니다:무결성 보장: 데이터가 전송 중에 변조되지 않았음을 확인합니다.인증 기능: 송신자가 사전에 공유된 비밀 키를 소유하고 있는지 확인합니다.충돌 저항성: 해시 함수의 특성을 이용하여 다른 입력 값이 동일한 출력 값을 가지는 가능성을 낮춥니다.1.2 HMAC의 동작 원리HMAC는 다음과 같은 절차로 동작합..

nRF52 2025.02.20

SHA-256과 nRF52 SDK를 활용한 실습

SHA-256과 nRF52 SDK를 활용한 실습1. SHA-256 개요SHA-256(Secure Hash Algorithm 256)은 미국 국가안보국(NSA)이 설계하고 NIST(미국 표준 기술 연구소)에서 발표한 암호화 해시 함수입니다. 이는 SHA-2 계열에 속하는 알고리즘으로, 입력된 데이터를 256비트(32바이트) 길이의 고정된 해시 값으로 변환합니다. 이 해시 값은 입력 데이터의 무결성을 검증하는 데 사용되며, 원본 데이터를 추정할 수 없도록 설계되었습니다.1.1 SHA-256의 특징고정된 출력 길이: 입력 데이터의 크기에 관계없이 256비트(32바이트) 해시 값을 생성합니다.단방향 함수: 해시 값을 통해 원본 데이터를 역추적하는 것은 사실상 불가능합니다.충돌 저항성: 서로 다른 두 개의 입력이..

nRF52 2025.02.20

nRF52840 AES-128, AES-256의 동작 원리와 모드(ECB, CBC, CTR 등)

AES-128, AES-256의 동작 원리와 모드(ECB, CBC, CTR 등)1. AES 개요AES(Advanced Encryption Standard)는 대칭 키 블록 암호화 알고리즘으로, 데이터 보안과 무결성을 보장하기 위해 널리 사용됩니다. 2001년 미국 국립 표준 기술 연구소(NIST)가 Rijndael 알고리즘을 표준으로 채택하면서 AES는 공식 암호화 표준으로 자리 잡았습니다.AES는 128비트 블록 크기를 기반으로 하며, 키 길이에 따라 AES-128, AES-192, AES-256으로 구분됩니다. 일반적으로 AES-128과 AES-256이 가장 널리 사용됩니다. 이 중 AES-256은 더 긴 키 길이로 인해 보안성이 뛰어나지만, 처리 성능은 다소 낮아질 수 있습니다.2. AES-128과..

nRF52 2025.02.20

nRF52840에 내장된 CryptoCell-310의 개념과 역할

nRF52840에 내장된 CryptoCell-310의 개념과 역할nRF52840은 Nordic Semiconductor에서 개발한 고성능 무선 SoC(System on Chip)입니다. 저전력 블루투스(Bluetooth Low Energy, BLE), Zigbee, Thread와 같은 무선 프로토콜을 지원하며, 사물인터넷(IoT) 장치와 웨어러블 기기에서 널리 사용됩니다. 특히 보안이 중요한 IoT 환경에서 nRF52840은 강력한 보안 기능을 제공하는 CryptoCell-310 보안 유닛을 내장하고 있습니다.이 글에서는 CryptoCell-310의 개념과 역할을 살펴보고, nRF52840에서 지원하는 주요 암호화 알고리즘에 대해 설명합니다.CryptoCell-310의 개념CryptoCell-310은 A..

nRF52 2025.02.20

nRF52840 PWM으로 LED 제어하기

nRF52840 PWM으로 LED 제어하기안녕하세요, '소프트웨어 공장'입니다. 이번 포스팅에서는 nRF52840 DK 보드와 nRF52840 SDK를 활용하여 PWM(펄스 폭 변조)으로 LED의 밝기를 제어하는 방법을 소개하려고 합니다. 이 글에서는 PWM을 사용하여 LED 밝기를 점점 밝아지고 어두워지게 하는 예제를 구현해 볼 것입니다. 이를 통해 여러분은 nRF52840의 PWM 기능을 이해하고 실습해보는 기회를 가질 수 있습니다.PWM(Pulse Width Modulation) 개요PWM(Pulse Width Modulation)은 전자 기기에서 신호의 듀티 사이클을 조절하여 아날로그 출력을 에뮬레이션하는 방법입니다. 주로 모터의 속도 제어나 LED의 밝기 조절에 사용되며, 전력 소비를 효과적으로..

nRF52 2024.11.05
728x90
반응형