부산대 정보보호및 IoT 연구실 블록체인보안전문연구실...
Transcript of 부산대 정보보호및 IoT 연구실 블록체인보안전문연구실...
- 플랫폼 기술 및 보안 기술 -
김호원
부산대정보보호 및 IoT 연구실,
블록체인 보안 전문연구실,사물인터넷연구센터
2018.10
전체 목차
OneM2M 개요
목차
2
1. 스마트시티 플랫폼 – oneM2M 플랫폼 개요2. 부산 스마트시티 플랫폼 적용 사례3. OneM2M 플랫폼 보안 기술
III. oneM2M 보안 기술
1. oneM2M 기술
I. oneM2M 기술
1. 스마트시티 개념 및 동향2. 스마트시티 개요3. 데이터 기반 스마트시티
II. 스마트시티 플랫폼
3
1. oneM2M 기술
II. 스마트시티 플랫폼
oneM2M 기술
4
I. oneM2M 기술
oneM2M 개요
참고: oneM2M Overview by Youngsung Son
oneM2M 기술
5
oneM2M 개요
I. oneM2M 기술
oneM2M 기술
6
oneM2M history
I. oneM2M 기술
Rel-3.0
- 2018.09
< 8개 국가의 국제표준화 기구 참여 >
oneM2M 기술
7
oneM2M Release 3
I. oneM2M 기술
oneM2M 기술 – 표준화 조직 (2016)
8
oneM2M 개요
I. oneM2M 기술
oneM2M 기술 – WG1
9
oneM2M 개요
I. oneM2M 기술
oneM2M 기술 – WG2
10
oneM2M 개요
I. oneM2M 기술
• DMR(Data Mgmt & Repository)• CMDH(Communication Management & Delivery)
oneM2M 기술 – WG2
11
oneM2M 개요
I. oneM2M 기술
oneM2M 기술 – WG2
12
oneM2M 개요
I. oneM2M 기술
oneM2M 기술: WG3 - Protocol Binding
13
oneM2M 개요
I. oneM2M 기술
oneM2M 기술 – WG4 Security
14
oneM2M 개요
I. oneM2M 기술
MEF: M2M Enrollment Function
oneM2M 기술 – WG5 semantics
15
I. oneM2M 기술
• Semantics: 기기가 정보자원의 뜻을 이해하고논리적 추론까지 가능하게 하는 기술
•
• Abstraction: 미리 정의된 rule에 따라Abstraction information model과 device information model간mapping과정
oneM2M 기술 – 구현 사례
16
oneM2M 개요
I. oneM2M 기술
http://www.iotocean.org/main/http://developers.iotocean.org/
http://www.eclipse.org/om2m/
oneM2M 기술 – 구현 사례
17
I. oneM2M 기술
http://www.iotocean.org/main/
oneM2M 기술 – 구현 사례
18
I. oneM2M 기술
http://developers.iotocean.org/
oneM2M 기술 – 구현 사례
19
oneM2M 개요
I. oneM2M 기술
http://www.eclipse.org/om2m/
oneM2M 기술 참고
20
표준에서의 용어의 의미
I. oneM2M 기술
oneM2M 기술
21
I. oneM2M 기술
oneM2M 기술
22
I. oneM2M 기술Figure 6.1-1: Configurations supported by oneM2M Architecture
oneM2M 기술 – Common Services Function
23
Common Services Function
I. oneM2M 기술
24
1. 스마트시티 개념 및 동향2. 스마트시티 개요3. 데이터 기반 스마트시티
II. 스마트시티 플랫폼
참고: 세계선도형 스마트시티 연구개발 사업, 수정기획보고서, 국토교통부, KAIA 2017
스마트시티 - 개요
25
스마트시티 개념 및 동향 (1/2)
세계 여러 국가의 스마트시티는 주로 에너지, 수자원, 교통, 재난 대응 등, 도시 인프라에
대한 효율적 관리에 집중하고 있음
세계 각국의 스마트시티 사업은 도시 환경의 핵심 인프라 또는 운영 요소인 에너지, 상하수도, 교통,
빌딩, 정부 공공서비스의 효율화를 추구함
또한, 스마트시티는 시민이 직접 참여하며 데이터 기반으로 실질적 도시 문제 해결을 통한
시민 삶의 질 향상
시민의 삶에 직결되는 데이터 수집 및 분석 정보를 토대로 도시 생활에 실질적으로 도움이 되는
서비스 실현
도시 전체가 하나의 통합된 체제로 운영되는 UOS(Urban Operating System) 추구
이를 위해, 데이터 수집/가공/분석/활용을 데이터 플랫폼 구축 및 데이터 거버넌스 체계 구축 필요,
보안 및 프라이버시 보호 필요
II. 스마트시티 플랫폼
참고: 세계선도형 스마트시티 연구개발 사업, 수정기획보고서, 국토교통부, KAIA 2017
스마트시티 - 개요
26
스마트시티 개념 및 동향 (2/2)
스마트시티는 ICT 기술 공급자와 시민 사용자간에 조화를 이루는 것이 중요함
기존 공급자 위주로 진행 된 U-City 사업과 IoT 실증 사업을 지양하고, 미래 스마트시티는
지속 가능한 스마트시티 서비스 생태계 조성이 되도록 진행
시민의 삶에 직결되는 데이터 수집 및 분석 정보를 제공함으로써 도시 생활에 실질적으로 도움이
되는 서비스 실현 필요
공급자 위주의 스마트시티 솔루션은 시민의 체감도가 낮고, 지속성도 떨어지므로 시민과 지자체의
니즈에 맞는 스마트시티 서비스 창출이 중요함
II. 스마트시티 플랫폼
스마트시티 – 개요
27
도시 문제 해결형 스마트시티– 도시내의 다양한 문제를 IoT 기술을 사용하여 해결하고자 함
– 교통 문제, 공공안전, 가로수 절전, 환경 오염 대응, 쓰레기 문제, 주차난 등
III. oneM2M 플랫폼 보안
스마트시티 – 국내 사례
28
부산시 스마트시티 사례 (플랫폼 중심)
☞ 스마트시티 서비스는 oneM2M 기반의 스마트시티 플랫폼과 연동
세계최초로국제표준 oneM2M기반개방형스마트시티사물인터넷플랫폼구축·운영
II. 스마트시티 플랫폼
스마트시티 – 외국 사례
29
스마트 시티 사례 : Singapore Smart Nation Platform(SNP) 공공기관들이 센서 데이터에 접근, 관리, 공유할 수 있는 플랫폼
– Behavioral monitoring: 비흡연구역의 흡연 및 쓰레기 무단 투기 등을 감지하는 센서 네트워크
– Smart parking: 센서 네트워크 기반 Park&Go 스마트폰 앱을 통해 빈 주차공간 탐색
– Smart Lighting and CCTV: 가로등에 네트워크 연결, 태양 에너지 사용, 카메라와 센서 장착하여비디오와 기타 데이터 획득
– Journey planner app.: 2014년 통근자를 위한 MyTransport Journey Planner app. 도입
– Driverless cars: 2014년 driverless car test를 위해 Autonomous Road Transport 위원회 도입
– Waste management: 쓰레기에 추적 장치를 부착하여 쓰레기 처리가 잘 되고 있는지 확인
– Water management: 무선 센서 네트워크를 이용하여 Smart Water Grid 구축, 실시간 크랙 확인. 자율 로봇 플랫폼(New Smart Water Assessment Network)를 이용하여 실시간 수질 관리 진행
https://www.smartnation.sg/
II. 스마트시티 플랫폼
스마트시티 – 외국 사례
30
스마트 시티 사례 : Virtual Singapore 싱가폴 도시 전체를 3D로 구현하고 도시에서 발생한 모든 데이터를 수집하여 시뮬레이션할
수 있는 협업 데이터 플랫폼
– 건물, 수역, 식물군, 수송 인프라 등 도시의 상세 정보 기반으로 시맨틱 3D 모델 구현
– 정부는 스마트 국가, 행정 서비스, 전국 센서 네트워크 구축 등의 정책도구로 활용
– 시민에게 지리 기반의 서비스를 실감나게 제공하는 플랫폼
– 기업은 대량의 데이터를 이용한 사업분석, 자원계획 및 관리 가능
– 연구집단에게는 새로운 기술 및 혁신적인 아이디어를 시험해볼 수 있는 테스트베드
<가스폭발화재로 인한 피해 범위 및 주민 대피경로 실험> <가이드 유무에 따른 탈출 경로 시뮬레이션 비교>
https://www.nrf.gov.sg/programmes/virtual-singapore
II. 스마트시티 플랫폼
스마트시티 – 외국 사례
31
스마트 시티 사례 : 교통 시뮬레이션 가구 이동성 조사, 토지 사용 정보, 통행량, 교통카드, 하이패스, 휴대폰 사용기록 및 기타 웹
정보를 융합하여 교통 시뮬레이션 수행
도시민의 이동행태에 대한 이해
교통망 최적화 및 혼잡통행세 부과 등의 정책 수립에 활용
뉴욕, 베를린, 싱가폴, 서울 등 대도시들이 매년 지속적으로 시뮬레이션 수행중
<베를린의 이동 목적에 따른 교통량 시뮬레이션-youtube연결><Virtual Singapore 기반 교통량 시뮬레이션>
II. 스마트시티 플랫폼
스마트시티 – 외국 사례
32
스마트 시티 사례 : New York City 2007년 PanNYC를 통해 25년간의 지속가능 성장 청사진 공개,
2015년 IoT를 통한 “Smart and Equitable City”를 위한 다수의 프로젝트를 발표하고추진중– Smart mobility: 센서가 버스 접근을 인지하면 신호등이 초록색으로 변경
– Smart kiosk: 도시민의 이동성 데이터 수집– Google의 자매회사인 Sidewalk를 통해 자전거, 보행자 이동량, 교통량, 공기질, 도로 소음을 측정하기 위한
키오스크 설치중
– 맨하탄의 예전 공중전화 부스에 kiosk를 설치하여 기가 wi-fi가 가능한 핫 스팟인 LinkNYC 구축하고 무선 장비이동을 트래킹
– ‘One City, Built to Last’ 프로젝트: 공공건물, 학교 등의 건물 개선을 통해 에너지 효율을 증가시키기위한 프로그램
– Sounds of New York City(SONYC): 소음공해로 잠못드는 뉴요커들을 위해 100여개의 음향 센서를설치하고 배경보다 10데시벨 이상 높은 노이즈에 대한 연구 수행중
– DataBridge program: 50여개 기관들이 수집한 데이터를 통합하고 분석하기 위한 플랫폼 구축
* Smart City Playbook 참고
<Smart kiosk: LinkNYC>
II. 스마트시티 플랫폼
미래형 스마트시티 – 데이터 기반 스마트시티
33
(현재) 플랫폼 기반 수직적 서비스 구축 단계(2단계)
(미래) 개방형 데이터 허브 및 지능형 플랫폼 기반 서비스 수평적 융합 및 도시 운영 플랫폼실현
II. 스마트시티 플랫폼
1단계: 기반구축 단계(스마트시티 1.0)
2단계: 수직적 서비스 구현 단계(데이터 플랫폼, 스마트시티 2.0)
4단계: 도시플랫폼 단계(도시운영플랫폼,스마트시티 4.0)
3단계: 수평적 서비스 구축 단계(지능형 플랫폼/서비스 융합,
스마트시티 3.0)
미래형 스마트시티 – 데이터 기반 스마트시티
34
(데이터 기반 스마트시티 실현) 도시 데이터 수집/가공/처리/분석/활용 기반 도시 서비스
운영 및 스마트시티 실현
(혁신 및 일자리 창출) 시민과 산학연관 협력을 통한 지속 가능한 생태계 조성 및 양질의
일자리 창출
(적극적 시민 참여) 도시 운영 및 스마트시티 서비스 개발에 적극적 시민 참여
(시민참여플랫폼, 리빙랩)를 통한 시민 개개인이 행복한 도시 실현
II. 스마트시티 플랫폼
주요 스마트시티 서비스(교통, 안전, 시설물 관리, 행정) 사례
미래형 스마트시티 – 데이터 기반 스마트시티
35
II. 스마트시티 플랫폼
서비스 서비스 내용
교통 서비스
주차 서비스
재난 서비스
시설물 관리
서비스
시민 참여
주요 스마트시티 서비스(교통, 안전, 시설물 관리, 행정)를 위한 데이터 허브 개발
미래형 스마트시티 – 데이터 기반 스마트시티
36
II. 스마트시티 플랫폼
지능형 데이터 허브에 기반을 두는 데이터 기반 스마트시티
미래형 스마트시티 – 데이터 기반 스마트시티
37
II. 스마트시티 플랫폼
통합/관리트랜잭션 및 협업응용
(기존 서비스 운영시스템)
센싱/연동
도시데이터 기반 스마트시티 서비스
(서비스 API 계층)
외부 시스템연동
큐브 및데이터마이닝
스트림데이터분석
빅데이터마스터데이터
콘텐츠
도시데이터
데이터스트리밍
스마트시티데이터거버넌스데이터 품질 보안/프라이버시전주기관리
데이터웨어하우스
표준/호환성/법/규제
시민집단지성
스마트시티 서비스 통합 프로세스
도시데이터 End-to-end 데이터통합허브
부산시 재난안전SBB
가공/분석
III. oneM2M 플랫폼 보안
38
1. 스마트시티 플랫폼 – oneM2M 플랫폼 개요2. 부산 스마트시티 플랫폼 적용 사례3. oneM2M 플랫폼 보안 기술
스마트시티 플랫폼 - oneM2M 플랫폼 개요
39
WLAN
PAN(Bluetooth)
Mobile Network
(LTE)WLAN/ZigBee
“내 손안의 우리 집” “즐겁고 편한 운전 환경”“편리한 건강 관리”
Smart Home Smart CarHealthcare
Common Service Layer
“플랫폼 공통화 고객의 가치 창조하는 새로운 M2M 서비스 창출 가능”
ModuleModule
Module Module Module Module
Module
Module
Module
Module
Module
Module
Module
Module
Module
oneM2M 기술은 다양한 제품간 연결성을 바탕으로 새로운 제품 및 서비스로손쉽게 확장 가능
III. oneM2M 플랫폼 보안
스마트시티 플랫폼 – oneM2M 플랫폼 개요
oneM2M Common Service Function oneM2M 핵심 요소 기술
스마트폰스마트가전
Access Networks (2G/3G/LTE/WiFi/ZigBee)
Common Service Functions
스마트그리드
헬스케어스마트홈
보안
스마트카
자동차센서
식별 체계Delivery
Handling
자원 탐색 데이터 관리 그룹 관리
위치 정보 네트워크연동 장치 관리
데이터 서비스
부가 서비스
네트워크서비스
• 데이터 탐색/저장/접근제어 기술• 데이터 분석 기술 (Big Data)
• 위치 정보 제공 기술• 원격 장치 관리 기술
• 액세스 네트워크 (3GPP) 연동 기술• QoS, Multicast/Broadcast 제어 기술
공통 서비스• 어플리케이션 보안성 제공• 글로벌 식별 체계 및
Delivery Handling
Application
M2M
서비스플랫폼
Access
Network
Device/
Module
M2M
주요 서비스• 스마트 홈, 스마트 카• 스마트 그리드, 헬스케어
WAN /
HAN• Cellular Network (2G / 3G / LTE)
• Wi-Fi / ZigBee / Bluetooth
M2M Device/
Gateway
• Smart TV, Smart Phone
• Smart Meter, Health Sensor
• Smart Gateway
III. oneM2M 플랫폼 보안
트랜잭션관리
Semantics
…
Release 3
스마트시티 플랫폼 - oneM2M 플랫폼 개요
Infrastructuredomain
Fielddomain
Non-oneM2MDevice
Non-oneM2MDevice
Non-oneM2MDevice
Non-oneM2MDevice
To anInfrastructureNode of otherM2M Service
ProvidersIN-AE Mca
InfrastructureNode(IN)
IN-AE
IN-CSE
Mca
MiddleNode(IN)
MN-CSE
MN-AE
Mca
MiddleNode(IN)
Mca
Mca
Mca
MN-CSE
MN-AE
ApplicationDedicated
Node(ADN)
ADN-AE
Mca
ApplicationServiceNode(ASN)
ASN-AE
ASN-CSE
ApplicationDedicated
Node(ADN)
ADN-AE
Mca
ApplicationServiceNode(ASN)
ASN-AE
ASN-CSE
Mcc’
Mcn
MccMcc
Mcc
McnMcn Mcc
Mcc
Mcn Mcn
Link is out of scope
사물인터넷 플랫폼 기술 oneM2M 기술
• IN : Infrastructure의 플랫폼 레벨 노드
• MN : 중간 Proxy 역할의 노드
• ASN : 서비스를 위한 노드
• ADN : 경량 센서 노드
III. oneM2M 플랫폼 보안
스마트시티 플랫폼 - oneM2M 플랫폼 개요
냉난방시스템
공조시스템
조명시스템 Smart
Appliance
IoT 기반 에너지 관리 플랫폼
Smart PlaceNetwork
Market Simulator전력시장
시변요금제기상데이터
전기자동차충전 시뮬레이션
에너지 조류
에너지 정보 및 시스템 제어 신호
Smart PlaceNetwork
ASNASN
MN MN
oneM2M 표준 보안 기능 제공• (D)TLS 를 통한 보안 연관
(Security Association) 구조 성립• 인가/접근제어 (ACL, ABAC, RBAC)• 데이터 기밀성/무결성 제공보안 연관 구조를 통한 보안 채널 성립• 식별 및 인증 (X.509 인증서, ECDSA)• 메시지 암호화 및 무결성 확인
- AES- HMAC_SHA_256
경량 디바이스에 대한 보안 기능제공• 경량 암호, 해시 최적화 구현• oneM2M 표준 보안 기술과의
연동 지원
에너지저장장치 풍력 발전 에뮬레이터
+
ㅣ
ADN
IoT 기반 에너지 절감 시스템
III. oneM2M 플랫폼 보안
42
스마트시티 플랫폼 - oneM2M 플랫폼 개요
사용자
병원/보건소
경찰서
관공서
가족/지인도어락상태
가정 정보
전력
Platform
Broker
공공장소ADN
MN
IN
ASN
ADN
경량 디바이스 보안 기능 제공• 경량 암호, 해시 최적화• oneM2M 표준 보안 기술과
의 연동 지원
oneM2M 표준 보안 기능 제공• (D)TLS 를 통한 보안 연관
(Security Association) 구조 성립• 인가/접근제어 (ACL, ABAC, RBAC)• 데이터 기밀성/무결성 제공보안 연관 구조를 통한 보안 채널 성립• 식별 및 인증 (X.509 인증서, ECDSA)• 메시지 암호화 및 무결성 확인
응급상황 대처 시스템
대처지시
영상
댁내 및 공공장소 정보기반 응급상황 시스템
III. oneM2M 플랫폼 보안
43
부산 스마트시티 적용 사례 – oneM2M 보안 적용
Wi-Fi
LAN
LTE
CDMA
디바이스플랫폼
III. oneM2M 플랫폼 보안
44
부산 스마트시티 적용 사례 – oneM2M 보안 적용
공통 플랫폼(IN)
응용 플랫폼(IN)
실증 서비스1(ASN)
실증 서비스2(MN)
실증 서비스3(ASN)
실증 서비스 N(ASN)
센서/액츄에이터(ADN)
M2M 디바이스(ASN)
M2M 디바이스(ASN)
Infrastructure Domain
Field Domain
Service / Application
(AE)
사용자
타플랫폼(IN)
oneM2M 표준기반의 Security Framework 구현타플랫폼연동을위한보안아키텍쳐설계및 구현
실증서비스 구축을 위한 보안 가이드라인 제시실증서비스 취약점 분석 및 보완
경량암호 기술 적용
III. oneM2M 플랫폼 보안
45
oneM2M 표준 보안
Security ServicesSecurity API (Mca, Mcc) (not specified in the present document)
Security Functions Layer
IdentificationAnd
AuthenticationAuthorization Identity
ManagementSecurity
AssociationSensitive Data
HandlingSecurity
Administration
Secure Environment Abstraction Layer (not specified in the present document)
Secure Environments Layer
Secure Environment n
Sensitive Data Sensitive Functions
oneM2M 표준 보안 Architecture
III. oneM2M 플랫폼 보안
46
oneM2M 표준 보안
AES
Core Algorithm
Ciphersuites
Security Framework
TLS
Security Association Framework
DTLS
Remote Security Provisioning Framework
AES_128_CBC
Authorization Framework
ECDSA
Security Protocol
AES_128_CCM
HMAC SHA ACL RBAC ABACECC
HMAC_SHA_256 ECDHE
- oneM2M 표준 보안 기술을 제공하는 모듈(인가/접근제어, 보안 연관 성립, 원격 보안 준비 기술)
Security Framework
- 보안 연관, 원격 보안 준비 기술에 필요한TLS/DTLS 기술을 제공하는 모듈
Security Protocol
- TLS/DTLS 에서 사용되는 암호화 알고리즘, 키교환 프로토콜 등을 제공하는 모듈
Ciphersuites
- 암호 코어 알고리즘, 접근 제어 모델 등의 주요보안 요소 기술을 제공하는 모듈
Core Algorithm
oneM2M 보안 기술 구성
oneM2M 표준 호환 보안 기술 개발 사례(release 1.14 호환)
III. oneM2M 플랫폼 보안
47
oneM2M 표준 보안 – 인가/접근 제어 기술
확장성 높은 인가/접근 제어 기술
III. oneM2M 플랫폼 보안
48
oneM2M 표준 보안 – 인가/접근 제어 기술
Policy Enforcement Point(PEP)Policy Decision Point(PDP)Policy Retrieval Point(PRP)Policy Information Point(PIP)
PDP 가 인가를 하기 위해 PRP,PIP에게 정보를언어오는 단계
PDP 가 접근 허용여부를결정하는 단계
확장성 높은 인가/접근 제어 기술 Authorization Procedure
III. oneM2M 플랫폼 보안
49
oneM2M 표준 보안 – 인가/접근 제어 기술
Resource_1
Resource_2
Resource_3
Resource_4
Resource_5
ACP_1
ACP_2
ACP_3
ACP_4
ACP_5
ACP_6
ACR_1
ACR_2
ACR_3
ACR_4
ACR_6
ACR_5
ACR_7
ACR_8
ACR_9
ACR_10
oneM2M 리소스 ACP(접근제어정책) 리소스 접근제어규칙(ACR)
PRP가 ACP를 저장
selfPrivilige/privilige속성으로 나누어짐
selfPrivilege 속성- ACP에 대한 연산
(Operation)을 수행하기 위해사용됨
Privilege 속성- ACP를 제외한 다른 리소스
에 대한 연산을 수행하기 위해사용됨
III. oneM2M 플랫폼 보안
50
ACP(Access Control Policy)란?? ACR(Access Control Rule)로 이루어짐
selfPrivilege/Privilege 두가지의 속성으로 나누어짐
ACP 리소스에 대해서는 selfPrivilege 속성을 보고, 다른 리소스에 대해서는 Privilege 속성을 이용함
acrs = { acr(1), acr(2), ..., acr(K) }
ACR(Access Control Rule)란?? 접근 제어 결정을 위한 규칙들을 포함
acr(k) = { acr(k)_accessControlAuthenticationFlag, // release 2 추가됨, Hosting CSE의 인증(rq_authn) 여부
acr(k)_accessControlOriginators, acr(k)_accessControlOperations, acr(k)_accessControlContexts,acr(k)_accessControlObjectDetails. // release 3 추가됨, 허용되는 리소스 타입 등
}
oneM2M 표준 보안 – 인가/접근 제어 기술
파라미터 설명Mandatory/Optional
accessControlOriginatorsfr 요청자(originator)의 식별자 M
role 요청자(originator)의 역할 O
accessControlOperations op 대상 리소스에 대해서 요청된 연산(operation) M
accessControlContexts
rq_time 요청시간
Orq_loc 요청장소
rq_ip 요청 IP
III. oneM2M 플랫폼 보안
51
oneM2M 표준 보안 – 인가/접근 제어 기술
3.
4.
데이터 요청 결과
접근제어 결정• ACL (Access Control List)• RBAC (Role Based Access Control)
플랫폼의 접근 제어 결과
True
인가/접근제어 기술(Authorization) 예시 실증서비스 및 사용자의 플랫폼 리소스, 실증서비스 응용 시스템, 디바이스 등에 접근 제어 리스트(ACL) 및
역할 기반 접근 제어(RBAC) 기능 제공
oneM2M 표준에서 정의한 Policy Point (PEP, PDP, PRP, PIP) 기반의 인가/접근제어 기술
III. oneM2M 플랫폼 보안
52
oneM2M 표준 보안 – 인가/접근 제어 기술
Wi-Fi
LAN
LTE
CDMA
디바이스플랫폼
보안 연관 성립 기술 적용
실증서비스 디바이스부터 도시 시민 사용자까지 안전한 통신 가능
보안 연관 성립 기술(Security Association Establishment Framework) oneM2M 플랫폼, 디바이스 및 응용 시스템의 통신 데이터 기밀성, 무결성, 상호 인증 등의 보안 기능 제공을 위한 기술
(Hop-by-Hop 보안 제공)
보안 연관 성립 기술 예시(스마트시티 사례)
III. oneM2M 플랫폼 보안
53
oneM2M Security Functions Layer Authentication
oneM2M 표준 보안 – Security Association
• UN-SP : Underlying Network Service provider• GBA : Generic Bootstrapping Architecture• MEF : M2M enrolment function• BSF : Bootstrap service function• MAF : m2m authentication function• RSPF : remote security provisioning framework• SAEF : security association establishment framework
① Provisioned Symmetric Key Security Association Establishment Framework
- 미리 제공된 대칭키를 이용하여 end-points간의 association 진행
② Certificate-Based Security security Association Establishment Framework
- 개인 서명키와 인증서, 공개키를 이용하여 association
③ MAF Security security Association Establishment Framework
- 3rd party service provider에 의해서 진행됨
셋 중에 하나 사용(PSK, Cert, MAF)
Certificate-Based SAEF와 Symmetric Key-Based SAEF는 Entity 간의 인증을 수행
MAF-Based SAEF는 3자간인증을 수행
III. oneM2M 플랫폼 보안
54
oneM2M 표준 보안 – Security Association
All type of Security Association Establishment Frameworks General description of SAEF
• Credential/Identity Configuration- 사전 파라미터 설정 단계
• Association Configuration- 상대방 정보 송수신
• Association Security Handshake- 상호 인증
III. oneM2M 플랫폼 보안
Release 1에서 식별자는 사전에 설정된다고 가정함.release 2 부터는 별도의Configuration 단계로 추가됨
55
사전 분배된 대칭키 기반의 보안 연관 성립 기술
oneM2M 표준 보안 : PSK-Based-SAEF
A B
Kpsa & KpsaId 는 두가지 방법에 의해서 공급됨- Pre-Provisioning- Remote Provisioning Framework
IdB 설정
Credential Configuration
Association Configuration
Association Security Handshake: (D)TLS Handshake
A는 Kpsa 를 이용하여 세션정보에 대한 MIC를 생성하고, B는 Kpsa를 이용하여 MIC를 검증B는 Kpsa 를 이용하여 세션정보에 대한 MIC를 생성하고, A는 Kpsa를 이용하여 MIC를 검증
A는 B와 TLS를 사용하고, TLS_PSK 또는 TLS_DHE_PSK 를 사용:TLS psk_identity를 KpsaId으로 설정TLS psk 파라미터를 Kpsa으로 설정
III. oneM2M 플랫폼 보안
IdB 설정
Identity Configuration
56
인증서 대칭키 기반의 보안 연관 성립 기술
oneM2M 표준 보안 : Certificate-Based-SAEF
• …A B
A의 privateKey, Cert를 필수로 준비하고,Cert Chain을 추가적으로 사용할 수 있음
A의 Cert가 CSE-ID/AE-ID Cert라면 IdA가 준비
Credential Configuration
Association Configuration
Association Security Handshake: (D)TLS Handshake
TLS Handshake : A는 A의 PrivateKey로세션정보에 대한 MIC를 생성하고, B는 A의 Cert(공개키) 로 인증서 검증B는 B의 PrivateKey로 세션정보에 대한 MIC를 생성하고, A는 B의 Cert(공개키) 로 인증서 검증
B의 privateKey, Cert를 필수로 준비하고,Cert Chain을 추가적으로 사용할 수 있음
B의 Cert가 CSE-ID Cert 라면 IdB가 준비
B의 식별자 IdB 설정
IdB와 B의 Cert를 연관 IdA와 A의 Cert를 연관
IdB는 Security Contexts에 연관되며,B의 Cert에 의해서 인증
IdA는 Security Contexts에 연관되며,A의 Cert에 의해서 인증
A는 A의 Cert & Chain(o)을 B에게 보낸다B는 B의 Cert & Chain(o)을 A에게 보낸다
A는 B의 Cert & Chain(o)을 검증한다. B는 A의 Cert & Chain(o)을 검증한다.
[사전 파라미터 설정 단계]Association Security Handshake 과정에서식별에 사용되는 oneM2M 식별자와 인증에사용되는 인증서를 설정함
[상대방 정보 설정 단계]보안 연관 성립 대상의 식별자와 인증서정보를 설정함
[상호 인증 수행 단계]Credential/Association Configuration 과정에서 설정한 정보를 활용하여 식별 및인증을 수행함 (TLS/DTLS Handshake 이용)
III. oneM2M 플랫폼 보안
Identity Configuration
57
oneM2M 표준 보안 : MAF-Based-SAEF
A MAF
MAF-FQDN, Km, KmId
Credential Configuration
Association Establishment Parameters
Association Security Handshake: (D)TLS Handshake
Km, KmId, IdA
B의 식별자는 IdB로 사전에 설정
A는 IdB를 설정 MAF는 IdB를 설정
IdB는 Security Contexts에 연관되며,Km으로부터 생성된 kc와 idB에 의해서 인증
B에게 Km으로부터 생성된 kc를 발급
B
KcIdKcId
Kc,KcId,IdA
Kc, KcId
PSK-TLS handshakePsk_identity는 KmId 로 설정, Psk 파라미터는 Km으로 설정
MAF Handshake
Kc, RelativeKcId를 RFC 5705에 따라 export하고, RelativeKcId와 MAF-URI 로부터KcId를 생성하고 저장
MAF 기반의 보안 연관 성립 기술
III. oneM2M 플랫폼 보안
58
oneM2M 표준 보안 : 보안 연관 성립 기술
HandshakeProtocol
Change Cipher Spec
AlertProtocol
ApplicationProtocol
(HTTP, MQTT, 등)
TLS/DTLS Record Protocol
TCP UDP
IP
TLS/DTLS 구조
보안 연관 성립 기술 – TLS/DTLS 보안 기술 oneM2M 표준에서 권고하는 통신 보안 프로토콜
TCP/UDP 상에서 안전한 보안 통신 제공
또한, 보안 연관 성립(SAEF) 및 원격 보안 준비 기술(RSPF)에서 식별 및 인증, 메시지의 기밀성 및 무결성 검증 등에 사용됨
oneM2M에서 지원하는 다양한 응용 프로토콜(HTTP, MQTT, CoAP 등) 보안에 사용됨
TLS/DTLS는 Handshake, Record 프로토콜 등으로 구성됨
• Handshake 프로토콜: Client와 Server사이에 식별 및 인증, 공유 비밀키 설정을 위해 사용됨
• Record 프로토콜: 공유된 비밀키를 사용하여 메시지에 대한 안전한 전송 수행
• Change Cipher Spec 프로토콜: Handshake 프로토콜에서 협상된 알고리즘과 키를 사용함을 알릴 때 사용
• Alert 프로토콜: Handshake, Record, Change Cipher Spec 프로토콜 과정에서 발생되는 오류를 알림
III. oneM2M 플랫폼 보안
59
oneM2M 표준 보안 : 보안 연관 성립 기술
oneM2M Entity A oneM2M Entity B
1 – ClientHello
2 – ServerHello
3 – Certificate
5 – CertificateRequest
6 – ServerHelloDone
7 – Certificate
8 – ClientKeyExchange
9 – CertificateVerify
10 – Finished
11 – Finished
인증서 기반의 상호 인증 Full Handshake
1. Client가 지원 가능한 Ciphersuite(암호, 키교환 알고리즘 등)을 서버에 알림
2. Client가 지원가능한 Ciphersuite 중에서하나를 선택하여 응답하고 Session ID 할당
3. 서버 인증을 위해 X.509 인증서를 보냄(CA의 Private Key로 전자서명됨)
4. Pre-master secret 계산을 위해 필요한paramter를 전송함
5. Client 인증이 필요한 경우 Client의 인증서를 요청함
7. Server로 부터 CertificateRequest를 받았을 경우 Client의 인증을 위해 인증서를 보냄
8. Pre-master sercret 계산을 위해 필요한parameter를 전송함
4 – ServerKeyExchange
6. ServerHello 절차의 끝을 알림 9. 이전까지 교환된 이전 메시지에 대한Digest 값을 계산해서 보냄(Client의 Private Key로 서명되고, Server는Client의 Public Key로 검증)
10. Handshake 종료를 알림
11. Handshake 종료를 알림
보안 연관 성립 기술 – TLS/DTLS 보안 기술 TLS/DTLS Handshake 프로토콜
프로토콜 버전, 사용하는 알고리즘 종류 등을 설정함: oneM2M에서 권고하는 Ciphersuite이 적용되어야함(예) TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
oneM2M에서는 사전 분배된 대칭키(PSK)와 X.509 인증서 기반으로 인증을 수행함
III. oneM2M 플랫폼 보안
60
oneM2M 표준 보안 : 보안 연관 성립 기술
Wi-Fi
LAN
LTE
CDMA
디바이스
플랫폼
암호화된 데이터 전송
Record 프로토콜에서의 암호화된 Application Data 생성 과정
보안 연관 성립 기술 – TLS/DTLS 보안 기술 TLS/DTLS Handshake 프로토콜
Handshake 프로토콜을 통해 세션 설정 후, Record 프로토콜을 통해 암호화된 통신 기능을 제공함
Handshake 프로토콜을 통해 협의된 Ciphersuite에 따라 암호화 알고리즘이 사용되며 oneM2M에서는 AES, HMAC, SHA256 사용을 권고함
III. oneM2M 플랫폼 보안
61
oneM2M 표준 보안 : 원격 보안 준비 기술
원격 보안 준비 기술(Remote Security Provisioning Framework) oneM2M 서비스 구축에 사용되는 게이트웨이, 디바이스, 서비스 등의 등록 과정에서 사용될
수 있는 보안 자격증명(Security Credential)을 원격으로 배포하기 위한 기술
보안 연관 성립 기술(SAEF)에 사용되는 보안 자격증명 배포 기술
• 원격 보안 준비기술을 사용하여 두 엔터티 간공유되는 대칭키를 사전 준비함
• 두 엔터티는 AE/CSE와 M2M Authentication Function(MAF)이 되거나, 두 개의 AE/CSE가 될 수 있음
• 준비된 대칭 키 보안 연관 성립과, MAF 기반 대칭키보안 연관 성립 방법이 있음
• Provisioned Symmetric Key Security Association Establishment• MAF-based Symmetric Key Security Association EstablishmentAE/CSE
AE/CSE
Remote SecurityProvisioning Framework
두 엔터티 간 공유대칭키 Provisioning
RSPF 절차 완료 후보안 연결 성립
M2MAuthenticationFunction(MAF)
AE/CSE
III. oneM2M 플랫폼 보안
62
oneM2M 표준 보안 : Security Administration
SAEF(Security Association Establishment Framework) 사전에 Association을 위한 파라미터가 준비되어 있어야 하며, 이를 이용하여 상호인증을 수
행
RSPF(Remote Security Provisioning Framework) 상호인증이 요구되지만, SAEF를 위한 파라미터가 설정되어 있지 않다면??
• Based on symmetric key
• Based on Certificate
• Based on GBA(General Bootstrapping Architecture)
SAEF, RSPF 개념도
III. oneM2M 플랫폼 보안
63
oneM2M 표준 보안 : 원격 보안 준비 기술
oneM2M Security Framework Remote Security Provisioning Frameworks
• Bootstrap Credential Configuration
• Bootstrap Instruction Configuration
• Bootstrap Enrolment Handshake
• Enrolment Key Generation
• Enrolment Phase
RSPF 목적 두 노드(Node)간의 공유된 파라미터
없이 상호 인증
SAEF를 위한 파라미터 설정(Kpsa/KpsaId, Km/KmId)
III. oneM2M 플랫폼 보안
64
oneM2M 표준 보안 : PSK-based-RSPF
사전 분배된 대칭키 기반 원격 보안 준비 기술
대칭키 기반 원격 보안 준비 기술
Enrolee
Kpm & KpmId, MEF URI
Bootstrap Credential Configuration
Bootstrap Instruction Configuration
Integration to Association Security Handshake
식별자는 사전에 설정
Enrolment Target ID, Enrolment Expiry
MEF
KeId
KeId
Ke/Enrolee Target ID로부터 {Km/Kpsa}생성
Enrolment Target(MAF,Enrolee B)
Bootstrap Enrolment Handshake
Enrolment Key Generation
Kpm&KpmId
Enrolee IDEnrolment Target ID, Enrolment Expiry
Enrolle와 MEF는 Kpm으로 각자의 세션정보에 대한 MIC를 생성 및 검증
TLS_PSK 또는 TLS_DHE_PSK 를 사용:TLS psk_identity를 KpmId으로 설정, TLS psk 파라미터를 Kpm으로 설정
Ke, RelativeKeId를 RFC 5705에 따라 export하고, RelativeKeId와 MEF-URI 로부터 KeId를 생성하고 저장
{Km/Kpsa}, Enrolee ID
상호 인증
{kmId / KpsaId}를 KeId 로 설정 {kmId / KpsaId}를 KeId 로 설정
[부트스트랩 자격증명 설정]Enrolee Key(Kpm)와 Enrolee Key Identifier(KpmId)를사전에 준비
[부트스트랩 인스트럭션 설정]Enrolee 및 M2M Enrolment Function은 RSPF에필요한 정보로 구성
[부트스트랩 Enrolment 핸드쉐이크]Enrolee 및 M2M Enrolment Function은 (D)TLS-PSK 핸드쉐이크를 수행하여 보안세션 설정
[Enrolment 키 생성]Enrolment Key(Ke)와 RelativeKeId 생성 후Export하고 KeId 생성, Ke와 KeId 저장
[통합 연관 보안 핸드쉐이크]KeId 전달 및 Ke로부터 Km, Kpsa 생성 후 마스터인증정보인 kmId 생성- KeId 정보를 받은 MEF와 Enrolee는 대응되는(미리
갖고 있던 ) Ke에서 Km/Kpsa 생성(KDF 사용)- MEF는 이를 target에 전송
III. oneM2M 플랫폼 보안
65
oneM2M 표준 보안 : Certificate-based-RSPF
Enrolee
Enrolee Private Key/Cert/Chain(o), MEF URI
Bootstrap Credential Configuration
Bootstrap Instruction Configuration
Integration to Association Security Handshake
식별자는 사전에 설정
Enrolment Target ID, MEF URI, MEF Certificate
MEF
KeId
KeIdKe/Enrolee Target ID로부터 {Km/Kpsa}생성
Enrolment Target(MAF,Enrolee B)
Bootstrap Enrolment Handshake
Enrolment Key Generation
MEF Private Key/Cert/Chain
Enrolee ID, Enrolment Target IDEnrolee Certificate
TLS : Enrolle/MEF Private Key로 각자의 세션정보에 대한 서명 및 검증
Ke, RelativeKeId를 RFC 5705에 따라 export하고, RelativeKeId와 MEF-URI 로부터 KeId를 생성하고 저장
{Km/Kpsa}, Enrolee의CSE-ID 또는 AE-ID상호 인증
{kmId / KpsaId}를 KeId 로 설정 {kmId / KpsaId}를 KeId 로 설정
Enrolee/MEF Cert&Chain
인증서 기반 원격 보안 준비 기술
III. oneM2M 플랫폼 보안
66
oneM2M 표준 보안 : GBA-based-RSPF
Enrolee
3GPP에 따라 자격증명 설정
Bootstrap Credential Configuration
Bootstrap Instruction Configuration
Integration to Association Security Handshake
식별자는 사전에 설정
Enrolment Target ID
MEF
KeId
KeIdKe/Enrolee Target ID로부터 {Km/Kpsa}생성
Enrolment Target(MAF,Enrolee B)
Bootstrap Enrolment Handshake
Enrolment Key Generation
Enrolee GUSS
Ks, B-TID
Ke = KsKeID = B-TID
{Km/Kpsa}, Enrolee의CSE-ID 또는 AE-ID상호 인증
{kmId / KpsaId}를 KeId 로 설정 {kmId / KpsaId}를 KeId 로 설정
GBA Bootstrapping
Ke = KsKeID = B-TID
Ks, B-TID
GBA 기반 원격 보안 준비 기술
III. oneM2M 플랫폼 보안
67
oneM2M 표준 보안 : Sensitive Data Handling
oneM2M Data Protection 프라이버시를 침해할 수 있는 사용자의 민감 데이터 및 중요 데이터 보호
oneM2M에서는 Data에 대한 protection level을 정의하고 있음• 0 : No protection
• 1 : (Low) : protection on passive attack (not active attack)
안전한 저장 공간(Secure Storage)• Mcs reference point를 통해 SE(Sensitive function/data) 접근
• 보호 레벨 2 : 중간 수준의 보안 레벨로서 원격 공격에 대한 보안 기술은 적용되지 않은 레벨
• 보호 레벨 3 : 높은 수준의 보안 레벨로서 원격 또는 로컬 공격(부채널 공격 등)에 대해서도 안전한 레벨
III. oneM2M 플랫폼 보안
Server
Local Secure Environment
CSE
AEAEAEAE
CSECSE
CSECSECSE
Security API
Security API
Protection Level 3
Sensitive Function
Remote Secure EnvironmentProtection Level 2
Secure Storage
• 2(Midium) : protection on remote attack• 3(High) : protection on remote and local attack
68
oneM2M 표준 보안 시나리오
Reference : MARCOM-0014-oneM2M_Webcast_on_nov_14
CSE2
CSE1
AE2
AE1
Infrastructure Domain
Sensor Gateway
M2M SP’s Server Health CareWeb-application
Field Domain
o Sensor : 사용자의 체중 데이터 수집을 위한 IoT 체중계o Gateway : 센싱 데이터 수집 및 서버와의 통신을 위한 게이트웨
이o M2M SP’s Server : 사용자별 데이터 수집 및 처리o Web App Server : 사용자별 건강 관리 서비스 제공
(1) IoT게이트웨이 및IoT 체중계의 서버 등록 과
정
(2) IoT 체중계와 서버간의 통신
(3) 사용자별 건강 관리서비스 제공
(4) 안전한 데이터 저장
프라이버시 보호
통신 보안
사용자 인증 및 인가
헬스케어 서비스 IoT 체중계 및 웹 애플리케이션을 통한 사용자별 건강 관리 서비스
III. oneM2M 플랫폼 보안
48