KR20180046593A - 펌웨어 서명 검증과 보안키 관리를 위한 사물인터넷 디바이스의 펌웨어 업데이트 시스템 - Google Patents
펌웨어 서명 검증과 보안키 관리를 위한 사물인터넷 디바이스의 펌웨어 업데이트 시스템 Download PDFInfo
- Publication number
- KR20180046593A KR20180046593A KR1020160141931A KR20160141931A KR20180046593A KR 20180046593 A KR20180046593 A KR 20180046593A KR 1020160141931 A KR1020160141931 A KR 1020160141931A KR 20160141931 A KR20160141931 A KR 20160141931A KR 20180046593 A KR20180046593 A KR 20180046593A
- Authority
- KR
- South Korea
- Prior art keywords
- hash value
- update
- unit
- image data
- firmware
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- H04L67/16—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Storage Device Security (AREA)
- Stored Programmes (AREA)
Abstract
본 발명은 보안키의 외부 접근이 불가능하도록 별도의 보안 저장장치를 사용하여 보안키를 보관 및 검증을 수행하도록 함과 아울러, 전자서명을 위한 해쉬 데이터를 이용하여 보안키와의 검증이 이루어지도록 함으로써 외부 접근 및 공격에 대해 안정성을 확보하도록 한 사물 인터넷 디바이스의 펌웨어 업데이트 시스템에 관한 것이다.
Description
본 발명은 펌웨어 서명 검증과 보안키 관리를 위한 사물인터넷 디바이스의 펌웨어 업데이트 시스템에 관한 것으로 특히, 보안키의 외부 접근이 불가능하도록 별도의 보안 저장장치를 사용하여 보안키를 보관 및 검증을 수행하도록 함과 아울러, 전자서명을 위한 해쉬 데이터를 이용하여 보안키와의 검증이 이루어지도록 함으로써 외부 접근 및 공격에 대해 안정성을 확보하도록 한 사물 인터넷 디바이스의 펌웨어 업데이트 시스템에 관한 것이다.
사물인터넷(IoT : Internet Of Things)은 인터넷을 기반으로 모든 사물을 연결하여 사람과 사물, 사물과 사물 간의 정보를 상호 소통하는 지능형 기술 및 서비스를 의미한다. 이 사물인터넷은 일부 장치에 국한되고 사람의 판단에 의지하는 USN(Ubiqutos Sensor Network)와 달리, 인터넷을 통해 모든 장치를 연결하고, 장치간의 소통을 통해 정보처리를 수행하는 지능형 장치로의 완성을 지향하고 있다.
때문에, 사물인터넷의 하위 장치들은 장치가 인터넷을 통해 네트워크에 참여할 수 있도록 이를 위한 처리장치와 통신장치를 포함하여 구성되도록 하고 있으며, 이를 운영하기 위한 펌웨어가 설치된다. 사물인터넷은 참여하는 장치들이 USN과 달리 다양하기 때문에 낮은 컴퓨팅 파워, 적은 리소스를 가지는 장치의 네트워크 참여가 가능해야 하며, 비교적 개방된 형태의 네트워크를 무선으로 연결하게 된다.
이러한 사물인터넷은 시스템의 특성상 중앙에서 집중적으로 장치들을 관리하기 힘들고, 펌웨어의 업데이트를 위해 무선으로 데이터를 전달하여 진행하게 되며, 이로 인해, 외부 침임이 용이하고, 해킹 공격에 취약한 문제점이 있다.
이러한 보안 취약점을 해소하기 위해 일부 장치에서 업데이트를 위한 데이터를 검증하도록 하는 기술이 모색되고 있다. 일례로, 보안키와 전자서명을 이용하여 데이터를 검증하도록 하는 방법이 모색되었으나, 이를 위해 사용하는 보안키가 장치의 메모리에 저장되고, 장치메모리 외부 접속에 의해 접근 가능한 메모리에 저장되어 침입에 의해 노출될 가능성이 높은 문제점이 있다. 이로인해 악의적인 외부 접속에 의해 보안키가 노출되어 해킹이 이루어질 수 있는 문제점이 있다.
따라서, 본 발명의 목적은 보안키의 외부 접근이 불가능하도록 별도의 보안 저장장치를 사용하여 보안키를 보관 및 검증을 수행하도록 함과 아울러, 전자서명을 위한 해쉬 데이터를 이용하여 보안키와의 검증이 이루어지도록 함으로써 외부 접근 및 공격에 대해 안정성을 확보하도록 한 사물 인터넷 디바이스의 펌웨어 업데이트 시스템을 제공하는 것이다.
상기 목적을 달성하기 위하여 본 발명에 따른 사물인터넷 디바이스의 펌웨어 업데이트 시스템은 업데이트 데이터를 이미지 데이터로 생성하고, 상기 이미지 데이터에 대한 해쉬값을 산출하여 서명처리를 진행하는 업데이트 서버; 및 상기 업데이트 서버로부터 상기 이미지 데이터와 서명된 상기 해쉬값을 전달받고, 서명된 상기 해쉬값을 검증하여 생성된 제1해쉬값과, 상기 이미지 데이터로부터 산출된 제2해쉬값을 비교하여 무결성을 검증하는 사물인터넷장치;를 포함하여 구성되는 것을 특징으로 한다.
상기 사물인터넷장치는 상기 업데이트서버에서 상기 서명에 사용한 전자키에 대응되는 전자키가 저장되는 보안모듈을 포함하여 구성되는 것을 특징으로 한다.
상기 제1해쉬값의 산출을 위한 검증은 상기 보안모듈에 의해 수행되거나, 상기 보안모듈에 의해 제공되는 전자키를 이용하여 수행되는 것을 특징으로 한다.
상기 사물인터넷장치는 상기 이미지 데이터에 의한 업데이트시 업데이트 이전버전의 펌웨어 데이터를 별도로 저장한 뒤 업데이트를 수행하는 것을 특징으로 한다.
본 발명에 따른 사물 인터넷 디바이스의 펌웨어 업데이트 시스템은 보안키의 외부 접근이 불가능하도록 별도의 보안 저장장치를 이용하여 보안키를 보관 및 검증이 이루어지도록 함과 아울러, 전자서명을 위한 해쉬 데이터를 이용하여 보안키와의 검증이 이루어지도록 함으로써 외부 접근 및 공격에 대해 안정성을 확보하는 것이 가능하다.
도 1은 본 발명에 따른 펌웨어 업데이트 시스템을 설명하기 위한 블럭도.
도 2는 본 발명에 따른 업데이트 서버의 구성을 좀 더 상세히 도시한 구성예시도.
도 3은 본 발명에 따른 사물인터넷장치의 구성을 좀 더 상세히 도시한 구성예시도.
도 4는 본 발명에 따른 사물인터넷 장치의 업데이트 과정을 설명하기 위한 순서도.
도 2는 본 발명에 따른 업데이트 서버의 구성을 좀 더 상세히 도시한 구성예시도.
도 3은 본 발명에 따른 사물인터넷장치의 구성을 좀 더 상세히 도시한 구성예시도.
도 4는 본 발명에 따른 사물인터넷 장치의 업데이트 과정을 설명하기 위한 순서도.
이하, 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 당해 분야의 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 설명하기로 한다. 첨부된 도면들에서 구성에 표기된 도면번호는 다른 도면에서도 동일한 구성을 표기할 때에 가능한 한 동일한 도면번호를 사용하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어서 관련된 공지의 기능 또는 공지의 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고 도면에 제시된 어떤 특징들은 설명의 용이함을 위해 확대 또는 축소 또는 단순화된 것이고, 도면 및 그 구성요소들이 반드시 적절한 비율로 도시되어 있지는 않다. 그러나 당업자라면 이러한 상세 사항들을 쉽게 이해할 것이다.
도 1은 본 발명에 따른 펌웨어 업데이트 시스템을 설명하기 위한 블럭도이다.
도 1을 참조하면, 본 발명에 따른 펌웨어 업데이트 시스템은 업데이트 서버(10)와 사물인터넷장치(IoT Device, 60)를 포함하여 구성된다.
업데이트 서버(10)는 사물인터넷장치(60)의 펌웹어의 업데이터를 위한 업데이트 데이터를 사물인터넷장치(60)에 전달한다. 여기서, 펌웨어로만 기재하고 있으나, 사물인터넷장치(60)에 설치되어 사물인터넷장치(60)를 통해 실행되는 것으로 업데이트가 가능한 모든 소프트웨어를 의미하는 것으로 제시된 바에 의해서만 본 발명을 한정하는 것은 아니다. 이러한 업데이트서버(10)는 사물인터넷장치(60)에 설치될 펌웨어에 대한 이미지(image)를 생성하고, 생성된 이미지에 대해 해쉬값을 산출하고, 이를 전자키를 이용하여 서명된 해쉬값으로 변경한다.
그리고, 업데이트 서버(10)는 서명된 해쉬값과 이미지 데이터를 사물인터넷 장치(60)에 전달하여, 사물인터넷장치(60)에 의해 업데이트가 이루어질 수 있게 한다. 이 과정에서 사물인터넷장치(60)에 의해 검증결과가 전달되어 업데이트 이미지에 해킹, 외부접근과 같은 부적절한 변조가 행해진 것으로 판단되면, 업데이트 이미지를 폐기함과 아울러, 이를 사용자 또는 관리자에게 통보하게 된다. 이를 위해 업데이트 서버(10)는 이미지 생성부, 해시 생성부, 서버 저장부, 통신부, 서명처리부를 포함하여 구성될 수 있으며, 이에 대해서는 하기에서 좀 더 상세히 설명하기로 한다.
사물인터넷장치(60)는 업데이트 서버(10)로부터 전달되는 이미지 데이터에 대한 검증을 수행하고, 검증 결과 정상적인 업데이트 이미지로 판단되면, 이를 이용하여 펌웨어의 업데이트를 수행한다. 이를 위해, 사물인터넷장치(60)는 이미지 데이터를 이와 함께 전달되는 서명된 해쉬값에 대해 검증을 수행하여, 위변조 여부 판단 또는 무결성을 검증하게 된다.
구체적으로 사물인터넷장치(60)는 업데이트 서버(10)와 통신을 수행하여 업데이트를 위한 이미지 데이터와 이에 대해 서버에서 생성된 서명된 해쉬값을 전달받는다. 그리고, 사물인터넷장치(60)는 미리 외부접근이 제한된 보안장치 저장된 공개키를 검증을 위한 전자키로 이용하여 서명된 해쉬값을 검증하고 업데이트 서버(10)에 의해 생성된 해쉬값을 복원한다. 여기서, 이 전자키는 업데이트 서버(10)에서 해쉬값의 서명에 사용된 전자키인 개인키(private key)와 쌍으로 생성되는 퍼블릭키(public key)일 수 있으며, 미리 사물인터넷장치(60)의 보안모듈에 저장되는 키값이다. 또한, 보안모듈은 신뢰플랫폼모듈(Trusted Platform Module)와 같이 하드웨어적으로 전자키의 저장을 위해 구성되는 모듈로, 사물인터넷장치에 의해 해쉬값의 복원시 미리 저장된 전자키를 제공하게 된다.
사물인터넷장치(60)는 서명된 해쉬값을 복호화하여 해쉬값(이하 설명의 편의를 위해 '제1해쉬값'이라 칭하기로 한다)을 복원함과 아울러, 업데이트 서버(10)에서 전달된 이미지 데이터에 대한 해쉬값(이하 설명의 편의를 위해 '제2해쉬값'이라 칭하기로 한다)을 생성하게 된다. 그리고, 사물인터넷장치(60)는 제1해쉬값과 제2해쉬값을 비교하여 제1해쉬값과 제2해쉬값이 동일한지 판단하게 된다. 사물인터넷장치(60)는 판단결과 제1해쉬값과 제2해쉬값이 같은 것으로 판단되면, 판단결과를 업데이트 서버(10)에 전달함과 아울러, 이미지 데이터를 이용하여 업데이트를 수행하고 업데이트의 수행결과를 업데이트 서버(10)에 전달하여 업데이트의 완료를 알리게 된다. 이러한 사물인터넷장치(60)는 업데이트를 수행하는 경우 이전 버전의 펌웨어를 설치가능한 형태로 보존하여 유지할 수 있다. 이를 통해 사물인터넷장치(60)는 새로 설치한 펌웨어에 의한 업데이트 실패시 이전 버전의 펌웨어를 복귀시켜 안정적으로 동작이 이루어질 수 있게 할 수 있다.
이러한 사물인터넷장치(60)는 장치 통신부, 장치 저장부, 제2해쉬 생성부, 복호화부, 보안모듈, 비교부 및 업데이트 수행부를 포함하여 구성될 수 있으며, 이에 대해서는 하기에서 좀 더 상세히 설명하기로 한다.
도 2는 본 발명에 따른 업데이트 서버의 구성을 좀 더 상세히 도시한 구성예시도이고, 도 3은 본 발명에 따른 사물인터넷장치의 구성을 좀 더 상세히 도시한 구성예시도이다.
우선, 도 2를 참조하면, 본 발명에 따른 펌웨어 업데이트 시스템의 업데이트 서버(10)는 서버저장부(11), 이미지 생성부(13), 해쉬 생성부(15), 전자키 제공부(17), 검증부(19) 및 서버 통신부(21)를 포함하여 구성된다.
서버 저장부(11)는 사물인터넷장치(60)의 업데이트를 위한 업데이트 데이터가 저장되며, 이미지 생성부(13)의 요청에 따라 업데이트 데이터를 제공한다. 또한, 서버 저장부(11)는 업데이트 서버(10)의 운영을 위한 OS, 어플리케이션 프로그램이 저장될 수 있으며, 이미지 생성, 해쉬 생성, 서명처리를 위한 임시 저장소의 역할을 함과 아울러 생성된 이미지 데이터, 해쉬값, 서명된 해쉬값을 저장하고, 서버 통신부(21)의 요청에 따라 제공한다. 이러한 서버 저장부(11)는 업데이트 서버(10)의 구동을 위한 저장장치와 데이터, 프로그램의 장기 저장 및 설치 영역의 제공을 위한 저장장치를 포함하여 구성될 수 있다.
이미지 생성부(13)는 서버 저장부(11)에 저장된 업데이트 데이터를 이용하여 사물인터넷장치(60)에서 펌웨어 업데이트를 위한 이미지 데이터를 생성한다. 이 이미지 데이터는 사물인터넷장치(60)에 설치되는 펌웨어의 설정값, 설치위치, 설치형태, 펌웨어를 구성하는 프로그램을 규정하여 사용자의 별도 설정없이 설치가 이루어질 수 있는 데이터를 의미한다. 이 이미지 생성부(13)는 생성된 이미지 데이터를 서버 저장부(11)에 저장하거나, 서버 통신부(21)에 전달하며, 서버저장부(11)를 통하거나 직접 해쉬 생성부(15)에 전달하게 된다.
해쉬 생성부(15)는 이미지 데이터에 미리 정해진 알고리즘을 적용하여 해쉬값을 생성한다. 그리고, 생성된 해쉬값을 서명처리부(19)에 전달한다.
전자키 제공부(17)는 서명처리부(19)의 요청에 따라 전자키를 제공한다. 이 전자키는 해쉬값에 대한 서명을 위한 보안키로, 외부 공증된 시스템을 통해 제공받는 것일 수도 있으나, 전자키 제공부(17)에 의해 생성되는 보안키일 수도 있다. 또한, 업데이트 서버(10)에서 서명을 위해 사용되는 키는 개인키일 수 있으며, 이와 쌍을 이루는 공개키가 보안모듈에 저장될 수 있다.
서명처리부(19)는 해쉬 생성부(15)로부터 생성된 해쉬값을 전달받아 서명을 진행하여 서명된 해쉬값을 생성한다. 이때 서명처리부(19)는 서명처리를 위해 전자키 제공부(17)로부터 전자키를 제공받고, 이 전자키에 의해 해쉬값에 대한 전자서명을 진행하여 서명된 해쉬값을 생성하게 된다. 그리고, 서명처리부(19)는 서명된 해쉬값을 서버 통신부(21) 또는 서버 저장부(11)에 전달한다.
서버 통신부(21)는 사물인터넷장치(60)의 장치 통신부(61)와 통신채널을 형성하고, 통신채널을 통해 서명된 해쉬값과 이미지 데이터를 전달한다. 이 서버 통신부(21)는 통신채널을 통해 유무선 통신방식에 의해 장치 통신부(61)와 연결될 수 있다. 이러한 통신방식은 인터넷을 이용하는 것이거나, 인터넷 프로토콜을 이용하는 서버 장치간 직접 통신일 수 있으나, 이로써만 본 발명을 한정하는 것은 아니다.
한편, 도 3을 참조하면, 사물인터넷장치(60)는 장치통신부(61), 장치저장부(63), 제2해쉬 생성부(65), 검증부(67), 보안모듈(69), 비교부(71) 및 업데이트 수행부(73)를 포함하여 구성될 수 있다.
장치통신부(61)는 서버통신부(21)와 통신을 수행하여, 이미지 데이터와 서명된 해쉬값을 전달받고, 전달받은 이미지 데이터와 서명된 해쉬값을 장치저장부(63)에 전달한다.
장치저장부(63)는 장치통신부(61)를 통해 전달되는 이미지 데이터와 서명된 해쉬값을 저장하고, 제2해쉬 생성부(65) 또는 검증부(67)의 요청에 따라 이미지 데이터와 서명된 해쉬값을 제공한다. 또한, 이 장치저장부(63)는 제2해쉬 생성부(65)에 의해 생성된 제2해쉬값, 검증부(67)에 의해 복원된 제1해쉬값이 저장될 수 있다. 또한, 장치저장부(63)는 사물인터넷장치(60)의 구동을 위한 구동메모리와, OS, 프로그램과 같이 운영을 위한 프로그램의 설치 및 이에 대한 데이터가 저장되는 저장부로 구분될 수 있으나, 이로써 본 발명을 한정하는 것은 아니다.
제2해쉬 생성부(65)는 장치저장부(63)로부터 이미지데이터를 전달받아, 이 이미지 데이터에 대한 해쉬값인 제2해쉬값을 생성한다. 이 제2해쉬값은 업데이트 서버(10)에서 해쉬값 생성에 사용된 방법(또는 알고리즘)과 동일한 방법에 의해 생성된다. 즉, 업데이트서버(10)에서 전달되는 이미지 데이터에 위변조가 발생되지 않는 경우 업데이트서버(10)에서 생성된 해쉬값과 제2해쉬값은 동일하게 된다. 때문에 제2해쉬 생성부(65)는 이러한 동일성에 따른 위변조여부를 판단하기 위해 이미지 데이터로부터 제2해쉬값을 산출하고 이를 비교부(71)에 전달하게 된다.
검증부(67)는 장치저장부(63)를 통해 전달되는 서명된 해쉬값을 검증하여 제1해쉬값을 복원하고, 복원된 제1해쉬값을 비교부(71)에 전달한다. 즉, 이 검증부(67)는 업데이트서버(10)에서 생성된 해쉬값을 복원하여, 이를 비교부(71)에 전달한다. 이 과정에서 검증부(67)는 서명에 사용된 전자키에 대응되는 전자키를 보안모듈(69)에 요청하거나, 보안모듈(69)이 검증하는 과정을 수행하도록 하게 된다. 이 검증부(67)는 별도로 구성되지 않고 보안모듈(69)의 일 기능으로 제공될 수 있으나, 본 발명에서는 별도의 구성인 것으로 가정하여 설명하기로 한다.
보안모듈(69)은 미리 저장된 전자키를 검증부(67)에 전달하여 검증부(67)가 서명된 해쉬값을 복호화할 수 있도록 하는 역할을 한다. 이 보안모듈(69)은 물리적으로 구성되어 전자키를 저장하며, 외부 접근에 의해 전자키를 확인할 수 없도록 구성된다. 이러한 보안모듈(69)은 전자키를 보유하는 것 외에 검증부(67)의 기능을 수행하도록 구성될 수 있다.
비교부(71)는 검증부(67)에 의해 제공되는 제1해쉬값과 제2해쉬 생성부(65)에 의해 전달되는 제2해쉬값을 비교하고, 비교 결과에 따라 업데이트 수행부(73)로 하여금 업데이트를 수행하게 하는 역할을 한다. 즉, 비교부(71)는 사물인터넷 장치(60)에서 이미지 데이터에 대해 자체적으로 생성한 해쉬값인 제2해쉬값과 업데이트서버(10)에서 작성하여 전달하는 제1해쉬값을 비교하여 동일여부를 확인함으로써 이미지 데이터의 무결성을 확인하게 된다. 비교부(71)는 확인결과 동일한 것으로 판단되면, 업데이트 수행부(73)에 업데이트가 가능함을 알리는 한편, 장치 통신부(61)로 하여금 검증결과 즉, 정상적인 데이터의 수신이 이루어졌음을 업데이트 서버(10)에 통지하게 한다. 반면, 비교부(71)는 제1해쉬값이 제2해쉬값과 동일하지 않은 것으로 판단되면, 위변조가 발생했다는 내용의 검증결과를 업데이트 서버(10)에 전달함과 아울러, 이미지 데이터 및 서명된 해쉬값의 폐기 또는 이를 업데이트 서버(10)로 반송하도록 장치통신부(61) 또는 장치저장부(63)를 제어하게 된다.
업데이트 수행부(73)는 비교부(71)로부터 업데이트가 가능하다는 승인이 이루어지면 장치저장부(63)에 저장된 이미지 데이터를 이용하여 업데이트를 수행하고, 업데이트의 결과(정상여부, 업데이트된 내역, 과정) 정보를 업데이트 서버(10)에 전달한다. 한편, 업데이트 수행부(73)는 이러한 과정에서 이전 버전의 펌웨어를 장치저장부(63)에 저장하여, 업데이트시 오류가 발생되는 경우 이전 버전을 재설치하여 장치의 운영안정성이 보장되도록 할 수 있으나, 이로써 본 발명을 한정하는 것은 아니다.
도 4는 본 발명에 따른 사물인터넷 장치의 업데이트 과정을 설명하기 위한 순서도이다.
도 4를 참조하면, 이미지생성단계(S10), 해쉬값 산출 단계(S20), 보안키에 의한 서명 단계(S30), 검증에 의한 제1해쉬값 산출 단계(S40), 제2해쉬값 산출 단계(S50), 무결성 검증 단계(S60) 및 업데이트 수행 단계(S70)을 포함하여 구성된다.
이미지생성단계(S10)에서 업데이트서버(10)는 사물인터넷장치(60)의 업데이를 위한 펌웨어 업데이트 데이터로부터 사물인터넷장치(60)에 전달하기 위한 이미지 데이터를 생성한다.
해쉬값 산출 단계(S20)는 사물인터넷장치(60)가 전달된 이미지 데이터의 무결성을 검증하도록 하기 위해, 이미지 데이터를 이용하여 해쉬값을 산출하는 단계이다.
보안키에 의한 서명 단계(S30)는 업데이트서버(10)가 미리 저장된 보안키를 이용하여 해쉬값에 서명처리를 진행하여 서명된 해쉬값을 생성하고, 서명된 해쉬값과 이미지 데이터를 사물인터넷장치(60)에 전달하는 단계이다.
검증에 의한 제1해쉬값 산출 단계(S40)는 사물인터넷장치(60)가 업데이트서버(10)로부터 전달되는 서명된 해쉬값을 복호화하여 제1해쉬값을 산출하는 단계이다. 이 단계이서, 사물인터넷장치(60)는 해쉬값 서명에 사용된 전자키에 대응되는 전자키가 저장된 보안모듈로부터 전자키를 제공받거나, 보안모듈(69)이 검증을 수행하도록 하여 제1해쉬값을 산출하게 된다. 이 제1해쉬값은 업데이트 서버(10)에 생성된 해쉬값과 동일한 값으로 사물인터넷장치(60)에서 복호화하여 산출된 값이다.
제2해쉬값 산출 단계(S50)는 사물인터넷장치(60)가 이미지데이터로부터 제2해쉬값을 산출하는 단계이다. 이 제2해쉬값 산출단계(S50)에서 사물인터넷장치(60)는 업데이트 서버(10)에서 수행된 해쉬값 산출과정과 동일한 과정에 의해 전달된 이미지 데이터에 대해 해쉬값 산출과정을 수행하게 된다.
무결성 검증 단계(S60)는 사물인터넷장치(60)가 업데이트서버(10)에서 산출되어 사물인터넷장치(60)에 전달된 제1해쉬값과 이미지 데이터에 대해 사물인터넷장치(60)가 스스로 생성한 제2해쉬값의 동일여부를 판단하는 단계이다. 이 무결성 검증 단계(S60)에서 제1해쉬값과 제2해쉬값이 동일한 것으로 판단되면, 업데이트 수행단계(S70)를 진행하고, 동일하지 않은 것으로 판단되면, 전달된 데이터를 폐기하거나 업데이트서버(10)에 반송하여 위변조 사항을 파악하도록 조치하게 된다.
업데이트 수행 단계(S70)는 무결성 검증 단계(S60)에서 무결성이 검증된 이미지 데이터를 이용하여 사물인터넷장치(60)가 업데이트를 수행하는 단계이다.
이상에서 본 발명의 기술적 사상을 예시하기 위해 구체적인 실시 예로 도시하고 설명하였으나, 본 발명은 상기와 같이 구체적인 실시 예와 동일한 구성 및 작용에만 국한되지 않고, 여러가지 변형이 본 발명의 범위를 벗어나지 않는 한도 내에서 실시될 수 있다. 따라서, 그와 같은 변형도 본 발명의 범위에 속하는 것으로 간주해야 하며, 본 발명의 범위는 후술하는 특허청구범위에 의해 결정되어야 한다.
10 : 업데이트 서버
11 : 서버저장부
13 : 이미지 생성부 15 : 해쉬 생성부
17 : 전자키 제공부 19 : 서명처리부
21 : 서버 통신부 60 : 사물인터넷 장치
61 : 장치 통신부 63 : 장치저장부
65 : 제2해쉬 생성부 67 : 복호화부
69 : 보안모듈 71 : 비교부
73 : 업데이트 수행부
13 : 이미지 생성부 15 : 해쉬 생성부
17 : 전자키 제공부 19 : 서명처리부
21 : 서버 통신부 60 : 사물인터넷 장치
61 : 장치 통신부 63 : 장치저장부
65 : 제2해쉬 생성부 67 : 복호화부
69 : 보안모듈 71 : 비교부
73 : 업데이트 수행부
Claims (4)
- 업데이트 데이터를 이미지 데이터로 생성하고, 상기 이미지 데이터에 대한 해쉬값을 산출하여 서명처리를 진행하는 업데이트 서버; 및
상기 업데이트 서버로부터 상기 이미지 데이터와 서명된 상기 해쉬값을 전달받고, 서명된 상기 해쉬값을 검증하여 생성된 제1해쉬값과, 상기 이미지 데이터로부터 산출된 제2해쉬값을 비교하여 무결성을 검증하는 사물인터넷장치;를 포함하여 구성되는 것을 특징으로 하는 사물인터넷 디바이스의 펌웨어 업데이트 시스템. - 제 1 항에 있어서,
상기 사물인터넷장치는
상기 업데이트서버에서 상기 서명에 사용한 전자키에 대응되는 전자키가 저장되는 보안모듈을 포함하여 구성되는 것을 특징으로 하는 사물인터넷 디바이스의 펌웨어 업데이트 시스템. - 제 2 항에 있어서,
상기 제1해쉬값의 산출을 위한 검증은 상기 보안모듈에 의해 수행되거나, 상기 보안모듈에 의해 제공되는 전자키를 이용하여 수행되는 것을 특징으로 하는 사물인터넷 디바이스의 펌웨어 업데이트 시스템. - 제1항에 있어서,
상기 사물인터넷장치는 상기 이미지 데이터에 의한 업데이트시 업데이트 이전버전의 펌웨어 데이터를 별도로 저장한 뒤 업데이트를 수행하는 것을 특징으로 하는 사물인터넷 디바이스의 펌웨어 업데이트 시스템.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160141931A KR20180046593A (ko) | 2016-10-28 | 2016-10-28 | 펌웨어 서명 검증과 보안키 관리를 위한 사물인터넷 디바이스의 펌웨어 업데이트 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160141931A KR20180046593A (ko) | 2016-10-28 | 2016-10-28 | 펌웨어 서명 검증과 보안키 관리를 위한 사물인터넷 디바이스의 펌웨어 업데이트 시스템 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20180046593A true KR20180046593A (ko) | 2018-05-09 |
Family
ID=62200777
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160141931A KR20180046593A (ko) | 2016-10-28 | 2016-10-28 | 펌웨어 서명 검증과 보안키 관리를 위한 사물인터넷 디바이스의 펌웨어 업데이트 시스템 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20180046593A (ko) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110149205A (zh) * | 2019-05-27 | 2019-08-20 | 北京计算机技术及应用研究所 | 一种利于区块链保护物联网终端的方法 |
CN112131610A (zh) * | 2020-09-07 | 2020-12-25 | 百望股份有限公司 | 一种版式文件数字签名方法及电子设备 |
KR20210037201A (ko) * | 2019-09-27 | 2021-04-06 | 한국전력공사 | 전기차 충전시스템 보안인증 통신 방법 |
DE202022102514U1 (de) | 2022-05-07 | 2022-05-20 | Tanweer ALAM | Kryptographiebasiertes intelligentes System für die Sicherheitsverwaltung von Mikrocodesignaturen |
US20230145340A1 (en) * | 2021-11-08 | 2023-05-11 | Adobe Inc. | Distributing and synchronizing encrypted data for multi-regional accessibility |
CN117892318A (zh) * | 2024-03-12 | 2024-04-16 | 汉兴同衡科技集团有限公司 | 一种物联网智能终端数据安全保护方法、系统及存储装置 |
-
2016
- 2016-10-28 KR KR1020160141931A patent/KR20180046593A/ko unknown
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110149205A (zh) * | 2019-05-27 | 2019-08-20 | 北京计算机技术及应用研究所 | 一种利于区块链保护物联网终端的方法 |
CN110149205B (zh) * | 2019-05-27 | 2022-02-08 | 北京计算机技术及应用研究所 | 一种利于区块链保护物联网终端的方法 |
KR20210037201A (ko) * | 2019-09-27 | 2021-04-06 | 한국전력공사 | 전기차 충전시스템 보안인증 통신 방법 |
CN112131610A (zh) * | 2020-09-07 | 2020-12-25 | 百望股份有限公司 | 一种版式文件数字签名方法及电子设备 |
US20230145340A1 (en) * | 2021-11-08 | 2023-05-11 | Adobe Inc. | Distributing and synchronizing encrypted data for multi-regional accessibility |
DE202022102514U1 (de) | 2022-05-07 | 2022-05-20 | Tanweer ALAM | Kryptographiebasiertes intelligentes System für die Sicherheitsverwaltung von Mikrocodesignaturen |
CN117892318A (zh) * | 2024-03-12 | 2024-04-16 | 汉兴同衡科技集团有限公司 | 一种物联网智能终端数据安全保护方法、系统及存储装置 |
CN117892318B (zh) * | 2024-03-12 | 2024-05-24 | 汉兴同衡科技集团有限公司 | 一种物联网智能终端数据安全保护方法、系统及存储装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10530753B2 (en) | System and method for secure cloud computing | |
US10437985B2 (en) | Using a second device to enroll a secure application enclave | |
KR100823738B1 (ko) | 컴퓨팅 플랫폼의 설정 정보를 은닉하면서 무결성 보증을제공하는 방법 | |
KR20180046593A (ko) | 펌웨어 서명 검증과 보안키 관리를 위한 사물인터넷 디바이스의 펌웨어 업데이트 시스템 | |
JP7454564B2 (ja) | 鍵管理のための方法、ユーザ・デバイス、管理デバイス、記憶媒体及びコンピュータ・プログラム製品 | |
US9405912B2 (en) | Hardware rooted attestation | |
JP7113123B2 (ja) | デバイス、及び方法 | |
US11082214B2 (en) | Key generation apparatus and key update method | |
US20160028549A1 (en) | Information processing system and electronic device | |
CN112887282B (zh) | 一种身份认证方法、装置、系统及电子设备 | |
US11514170B2 (en) | Secure boot of kernel modules | |
CN111130798B (zh) | 一种请求鉴权方法及相关设备 | |
JP2017531951A (ja) | セキュリティチェックのための方法、デバイス、端末およびサーバ | |
US20220209946A1 (en) | Key revocation for edge devices | |
CN115795513A (zh) | 文件加密和文件解密方法、装置以及设备 | |
CN109784061A (zh) | 控制服务器可信启动的方法及装置 | |
JP2018117185A (ja) | 情報処理装置、情報処理方法 | |
CN113703911B (zh) | 一种虚拟机迁移方法、装置、设备、存储介质 | |
CN110912685A (zh) | 建立受保护通信信道 | |
US11190351B2 (en) | Key generation method and acquisition method, private key update method, chip, and server | |
CN115964755B (zh) | 数据授权及验证方法、装置、设备和存储介质 | |
JP2018194879A (ja) | 半導体装置、ブート方法、およびブートプログラム | |
KR20180052479A (ko) | 서명 체인을 이용한 유무선 공유기의 펌웨어 업데이트 시스템, 유무선 공유기 및 유무선 공유기의 펌웨어 업데이트 방법 | |
US11509468B2 (en) | Method and system for verifying secret decryption capability of escrow agents | |
KR102288444B1 (ko) | 인증모듈의 펌웨어 업데이트 방법, 장치 및 프로그램 |