KR20180046777A - The method and apparatus for providing service based on capability token in internet of things environment - Google Patents

The method and apparatus for providing service based on capability token in internet of things environment Download PDF

Info

Publication number
KR20180046777A
KR20180046777A KR1020160142363A KR20160142363A KR20180046777A KR 20180046777 A KR20180046777 A KR 20180046777A KR 1020160142363 A KR1020160142363 A KR 1020160142363A KR 20160142363 A KR20160142363 A KR 20160142363A KR 20180046777 A KR20180046777 A KR 20180046777A
Authority
KR
South Korea
Prior art keywords
token
service
qualification
delegated
information
Prior art date
Application number
KR1020160142363A
Other languages
Korean (ko)
Other versions
KR101912012B1 (en
Inventor
서재현
김미선
장데레사
Original Assignee
목포대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 목포대학교산학협력단 filed Critical 목포대학교산학협력단
Priority to KR1020160142363A priority Critical patent/KR101912012B1/en
Publication of KR20180046777A publication Critical patent/KR20180046777A/en
Application granted granted Critical
Publication of KR101912012B1 publication Critical patent/KR101912012B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • H04L9/3213Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • H04L67/16
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

Disclosed are a method for providing a service, which includes the steps of: receiving a capability token request for receiving a service previously registered in a network entity from UE; allocating a capability token for using the service to the UE if the provision of the service is authenticated; receiving the capability token including encrypted service information from the UE; determining whether the received capability token is valid or not; and providing the service to the UE, and the network entity. Accordingly, the present invention can improve information security.

Description

사물인터넷 환경에서 자격 토큰에 기반한 서비스 제공 방법 및 장치{THE METHOD AND APPARATUS FOR PROVIDING SERVICE BASED ON CAPABILITY TOKEN IN INTERNET OF THINGS ENVIRONMENT}BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method and apparatus for providing a service based on a qualification token in an Internet environment,

본 발명은 사물인터넷 환경에서 자격 토큰에 기반한 서비스를 제공하는 방법과 장치에 관한 것으로, 더욱 상세하게는 프라이버시와 자격에 대한 보안이 강화된 서비스 제공 방법을 제안하는 것이다.The present invention relates to a method and apparatus for providing a service based on a qualification token in the Internet environment of objects, and more particularly, to a method of providing a service with enhanced security for privacy and qualification.

사물인터넷(또는, IoT(Internet of Things))은 각종 사물에 통신 기능을 내장함으로써 네트워크에 연결되는 기술을 의미한다. 사물인터넷에서의 '사물'이란 가전제품, 모바일 장비, 웨어러블 컴퓨터, 소형 센서 등 다양한 임베디드 시스템이 모두 해당된다. The Internet (or Internet of Things (IoT)) refers to technology that is connected to a network by embedding communication functions in various objects. "Things" on the Internet are all kinds of embedded systems such as household appliances, mobile equipment, wearable computers, and small sensors.

사물인터넷은 물리적 장치의 시간적 및 공간적인 제약을 없앰으로써 생활과 산업현장에 빠른 변화를 가져왔다. 그러나, 다양한 사물들이 서로 통신함으로써 편리함이 증대된 것과 동시에 보안 측면에서의 위협 또한 증가하고 있다. 이에 따라, 사물들 간의 통신을 통해서 무분별하게 정보가 공유되는 문제점을 해결하기 위한 방안과 대책이 요구된다.The Internet of Things has made rapid changes in life and industry by eliminating the temporal and spatial constraints of physical devices. However, as the various objects communicate with each other, convenience is increased, and security threats are also increasing. Accordingly, measures and countermeasures are required to solve the problem that information is shared indiscriminately through communication between objects.

본 발명은 상기한 바와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은 사물인터넷 환경에서 사용자의 무분별한 정보 노출을 방지하는 것이다.SUMMARY OF THE INVENTION The present invention has been made in order to solve the above-mentioned problems, and it is an object of the present invention to prevent a user from indiscreetly exposing information in an object internet environment.

본 발명의 또 다른 목적은 사용자의 프라이버시를 보호하는 것뿐 아니라 사용자에게 제공되는 리소스 서비스의 프라이버시 또한 보호하는 것이다. It is another object of the present invention to not only protect the user's privacy but also to protect the privacy of the resource service provided to the user.

본 발명의 또 다른 목적은 자격 토큰을 위임 및 재위임하는 과정에서도 불필요한 정보 유출 및 프라이버시 침해가능성을 줄이는 것이다.Another object of the present invention is to reduce the possibility of unnecessary information leakage and privacy violation even in the process of delegating and reigning the qualification token.

본 발명에서 이루고자 하는 기술적 목적들은 이상에서 언급한 사항들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 이하 설명할 본 발명의 실시 예들로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 고려될 수 있다.It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not intended to limit the invention to the particular form disclosed. ≪ / RTI >

상기 기술적 과제를 해결하기 위한 서비스 제공 방법은, 네트워크 엔티티에 기등록된 서비스를 제공받기 위한 자격 토큰 요청을 UE로부터 수신하는 단계, UE에 서비스를 제공하는 것이 승인되면, UE로 서비스를 이용하기 위한 자격 토큰을 할당하는 단계, UE로부터 암호화된 서비스 정보를 포함하는 자격 토큰을 수신하는 단계, 수신된 자격 토큰과 할당한 자격 토큰을 비교하여, 수신된 자격 토큰이 서비스에 대해 유효한지 판단하는 단계, 및 UE에 대하여 서비스를 제공하는 단계를 포함한다.According to another aspect of the present invention, there is provided a method for providing a service, the method comprising: receiving a request for a qualification token for receiving a service registered in a network entity from a UE; Assigning a credential token, receiving a credential token containing encrypted service information from the UE, comparing the received credential token with the assigned credential token, determining whether the received credential token is valid for the service, And providing a service to the UE.

본 발명의 일 실시 예에 의하면, 암호화된 서비스 정보는, UE의 인증 키를 이용하여 암호화되며, 네트워크 엔티티는 암호화된 서비스 정보를 복호화하여 요청된 서비스를 식별할 수 있다.According to an embodiment of the present invention, the encrypted service information is encrypted using the authentication key of the UE, and the network entity can decrypt the encrypted service information to identify the requested service.

본 발명의 일 실시 예에 의하면, 서비스 제공 방법은 UE로부터 자격 토큰 요청이 수신되면, 요청받은 서비스를 제공하는 서비스 제공자로 UE에 서비스를 제공할지 문의하는 단계를 더 포함할 수 있다.According to an embodiment of the present invention, a method of providing a service may further include, when a request for a qualification token is received from a UE, requesting a service provider providing the requested service to provide a service to the UE.

본 발명의 일 실시 예에 의하면, 자격 토큰은 다른 UE에게 위임 또는 재위임될 수 있으며, 자격 토큰이 재위임되는 경우 UE의 식별 정보는 암호화될 수 있다.According to one embodiment of the invention, the qualification token may be delegated or re-delegated to another UE, and the identity of the UE may be encrypted if the qualification token is re-delegated.

본 발명의 일 실시 예에 의하면, 다른 UE는 자격 토큰이 자신에게 위임된 것인지 재위임된 것인지 구별할 수 없을 수 있다.According to one embodiment of the present invention, another UE may not be able to distinguish whether the qualification token is delegated to it or re-delegated.

본 발명의 일 실시 예에 의하면, 자격 토큰은 자격 토큰의 유효 기간, 폐기여부, 암호화 알고리즘, 자격 토큰 ID, 위임자 토큰 번호, 재위임여부, 최대 위임 횟수 및 위임 최대 레벨 중 적어도 하나에 대한 정보를 포함할 수 있다.According to one embodiment of the present invention, the qualification token includes information about at least one of the validity period of the qualification token, the revocation date, the encryption algorithm, the qualification token ID, the mandator token number, the re-delegation status, the maximum delegation count, .

상기 기술적 과제를 해결하기 위한 네트워크 엔티티는, 송수신부, 토큰 관리 모듈, 및 리소스 관리 모듈을 포함하되, 송수신부는 네트워크 엔티티에 기등록된 서비스를 제공받기 위한 자격 토큰 요청을 UE로부터 수신하고, 토큰 관리 모듈은 UE에 서비스를 제공하는 것이 승인되면, UE로 서비스를 이용하기 위한 자격 토큰을 할당하고, 송수신부는 UE로부터 암호화된 서비스 정보를 포함하는 자격 토큰을 수신하고, 토큰 관리 모듈은 수신된 자격 토큰과 할당한 자격 토큰을 비교하여, 수신된 자격 토큰이 서비스에 대해 유효한지 판단하며, 리소스 관리 모듈은 UE에 대하여 서비스를 제공한다.According to an aspect of the present invention, there is provided a network entity including a transceiver unit, a token management module, and a resource management module, wherein the transceiver unit receives a request for a qualification token for receiving a service registered in a network entity from a UE, The module allocates a qualification token for use of the service to the UE when the service is granted to the UE, the transceiver receives a qualification token including the encrypted service information from the UE, and the token management module receives the received qualification token With the assigned qualification token to determine if the received qualification token is valid for the service, and the resource management module provides the service to the UE.

본 발명의 실시 예들에 따르면 다음과 같은 효과를 기대할 수 있다.According to the embodiments of the present invention, the following effects can be expected.

첫째로, 사물인터넷 환경에서 자격 토큰 사용자의 정보 유출을 방지할 수 있어 정보 보안 측면에서 향상된 효과가 있다.First, it can prevent information leak of the user of the qualification token in the Internet environment of the object, so that it has an effect on information security.

둘째로, 자격 토큰 사용자가 요청하는 서비스에 대한 정보 유출 또한 방지되어 종래기술에 비하여 서비스 자체에 대한 보안이 개선된다.Second, information leakage to the service requested by the user of the qualification token is also prevented, thereby improving security against the service itself compared to the prior art.

셋째로, 사용자가 자신의 프라이버시 정책을 설정할 수 있어 자격 토큰의 위임이나 재위임시에도 보안이 유지될 수 있다.Third, users can set their own privacy policies so that security can be maintained even when the entitlement token is re-assigned or temporarily re-established.

본 발명의 실시 예들에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 이하의 본 발명의 실시 예들에 대한 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 도출되고 이해될 수 있다. 즉, 본 발명을 실시함에 따른 의도하지 않은 효과들 역시 본 발명의 실시 예들로부터 당해 기술분야의 통상의 지식을 가진 자에 의해 도출될 수 있다.The effects obtainable in the embodiments of the present invention are not limited to the effects mentioned above, and other effects not mentioned can be obtained from the description of the embodiments of the present invention described below by those skilled in the art Can be clearly understood and understood. In other words, undesirable effects of implementing the present invention can also be obtained by those skilled in the art from the embodiments of the present invention.

이하에 첨부되는 도면들은 본 발명에 관한 이해를 돕기 위한 것으로, 상세한 설명과 함께 본 발명에 대한 실시 예들을 제공한다. 다만, 본 발명의 기술적 특징이 특정 도면에 한정되는 것은 아니며, 각 도면에서 개시하는 특징들은 서로 조합되어 새로운 실시 예로 구성될 수 있다.
도 1은 사물인터넷의 기본적인 구조를 도시하는 도면이다.
도 2는 자격(capability) 토큰(token)을 이용하는 사물인터넷 시스템의 구조를 도시하는 도면이다.
도 3은 제안하는 일 실시 예에 따른 자격 토큰의 구조를 도시하는 도면이다.
도 4 및 도 5는 제안하는 실시 예에 따른 자격 토큰의 구체적인 구조를 도시하는 도면들이다.
도 6은 제안하는 실시 예에 따라 자격 토큰이 이용될 때의 프라이버시(privacy) 구조를 정의하는 도면이다.
도 7 및 도 8은 제안하는 프라이버시 구조에서 사용자 프라이버시에 대해 설명하는 도면들이다.
도 9는 제안하는 프라이버시 구조에서 리소스 프라이버시를 보장하기 위한 동작 방법을 도시하는 흐름도이다.
도 10은 제안하는 프라이버시 구조에서 리소스 프라이버시에 대해 구체적으로 설명하는 도면이다.
도 11은 제안하는 실시 예에 따라 동작하는 네트워크 엔티티의 구성을 도시하는 도면이다.
BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention. It is to be understood, however, that the technical features of the present invention are not limited to the specific drawings, and the features disclosed in the drawings may be combined with each other to constitute a new embodiment.
1 is a diagram showing a basic structure of a thing Internet.
Fig. 2 is a diagram showing the structure of an object Internet system using a capability token (token). Fig.
3 is a diagram showing a structure of a qualification token according to an embodiment of the present invention.
4 and 5 are diagrams showing the concrete structure of the qualification token according to the proposed embodiment.
Figure 6 is a diagram that defines a privacy structure when a qualification token is used in accordance with the proposed embodiment.
7 and 8 are diagrams illustrating user privacy in the proposed privacy structure.
9 is a flowchart showing an operation method for ensuring resource privacy in the proposed privacy structure.
FIG. 10 is a diagram specifically explaining resource privacy in the proposed privacy structure.
11 is a diagram showing a configuration of a network entity operating according to the proposed embodiment.

아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, which will be readily apparent to those skilled in the art. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. In order to clearly illustrate the present invention, parts not related to the description are omitted, and similar parts are denoted by like reference characters throughout the specification.

본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 발명에 대해 구체적으로 설명하기로 한다. The terms used in this specification will be briefly described, and the present invention will be described in detail.

본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다. While the present invention has been described in connection with what is presently considered to be the most practical and preferred embodiment, it is to be understood that the invention is not limited to the disclosed embodiments. Also, in certain cases, there may be a term selected arbitrarily by the applicant, in which case the meaning thereof will be described in detail in the description of the corresponding invention. Therefore, the term used in the present invention should be defined based on the meaning of the term, not on the name of a simple term, but on the entire contents of the present invention.

명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다. 또한, 명세서 전체에서 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, "그 중간에 다른 소자를 사이에 두고" 연결되어 있는 경우도 포함한다. When an element is referred to as "including" an element throughout the specification, it is to be understood that the element may include other elements as well, without departing from the spirit or scope of the present invention. Also, the terms "part," " module, "and the like described in the specification mean units for processing at least one function or operation, which may be implemented in hardware or software or a combination of hardware and software . In addition, when a part is referred to as being "connected" to another part throughout the specification, it includes not only "directly connected" but also "connected with other part in between".

이하 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

도 1은 사물인터넷의 기본적인 구조를 도시하는 도면이다. 앞서 설명했듯이, 사물인터넷을 통해 연결되는 수 많은 기기들은 다양한 종류의 정보를 생성하여 다른 기기들로 전송한다. 이러한 과정에서 사용자의 프라이버시(privacy)에 관한 정보는 특히 민감한 정보가 될 수 있기 때문에 특히 보호되어야 할 필요성이 크다. 또한, 사용자의 프라이버시뿐만 아니라 서비스를 제공하는 디바이스의 프라이버시에 대한 프라이버시 또한 보호될 필요가 있다.1 is a diagram showing a basic structure of a thing Internet. As mentioned earlier, many devices connected via the Internet create various kinds of information and transmit them to other devices. In this process, the information about the user's privacy is particularly sensitive, so it needs to be protected in particular. In addition, the privacy of the user, as well as the privacy of the device providing the service, needs to be protected as well.

도 2는 자격(capability) 토큰(token)을 이용하는 사물인터넷 시스템의 구조를 도시하는 도면이다.Fig. 2 is a diagram showing the structure of an object Internet system using a capability token (token). Fig.

사물인터넷은 그 특성을 고려할 때 기존의 통신 환경과는 차별되는 방식으로 접근 제어(access control)가 이루어져야 한다. 첫째로, 사물인터넷은 기존 통신 환경과는 달리 짧은 시간 동안에 상호작용이 일어나며 동일한 요청이 빈번하게 수행될 수 있다. 둘째로, 사물인터넷에서 동일한 요청이 반복되더라도 통신을 위한 자원과 서비스에 대한 관리, 분석 및 인가 과정은 고정적이지 않고 주변 상황에 따라 달라질 수 있다. 따라서, 사물인터넷에서는 개방적이고 광범위한 컴퓨팅 환경에서의 확장성과 디바이스들 간의 관리 문제, 유연성 있는 권한 위임의 문제를 고려한 접근 제어가 이루어질 필요가 있다.Considering its characteristics, access control should be done in a way that is different from existing communication environment. First, unlike the existing communication environment, the object Internet interacts in a short time and the same request can be frequently performed. Second, even if the same request is repeated in the Internet of things, the management, analysis and authorization process of resources and services for communication are not fixed but may vary depending on the surrounding situation. Therefore, in the Internet of things, it is necessary to control access in consideration of scalability in an open and wide-scale computing environment, management problems between devices, and flexible authorization delegation.

도 2에 도시된 자격 토큰을 이용하는 방식을 설명하기에 앞서, 자격 기반의 접근 제어 방식에 대해 먼저 설명한다. 자격 기반 접근 제어 방식은 접근하는 주체가 객체에 대한 접근 권한을 보유하는 방식이다. 주체는 자신이 가진 자격을 객체에게 제시하고, 객체는 자격을 확인하여 서비스를 제공한다. 주체가 보유하는 접근 권한은 위임(delegate)되거나 폐기(discard)될 수 있으며, 위임 받은 주체(즉, 피위임자)는 위임 받은 정도의 권한을 통해 객체에 접근할 수 있다. 이러한 자격 기반의 접근 제어 방식은 CapBAC(Capability Based Access Control)으로 명명된 바 있으며, 이하에서 자격 기반의 접근 제어는 SAML/XACML(Security Assertion Markup Language/extensible access control markup language)을 이용하여 기술한다.Prior to describing a method of using the qualification token shown in FIG. 2, a qualification-based access control method will be described first. The entitlement-based access control method is a method in which an accessing entity holds access rights to an object. The subject presents his / her qualifications to the object, and the object provides the service by confirming the qualification. The access rights held by the subject can be delegated or discarded, and the delegated subject (ie, the delegatee) can access the object through the delegated authority. These qualification-based access control schemes are named as CapBAC (Capability Based Access Control). In the following, the qualification-based access control is described using SAML / XACML (Security Assertion Markup Language / extensible access control markup language).

이어서, 자격 토큰을 이용하는 접근 제어 방식에 대해 설명한다. 도 2의 사물인터넷 시스템의 구조는 실질적인 정보를 생성하는 디바이스(또는, 서비스 제공자)들로 구성된 서비스 도메인 영역(240)과 서비스 도메인 영역(240)으로부터 데이터를 수집, 가공하여 사용자들(231, 232, 233, 234)로 서비스를 제공하는 게이트웨이(210)로 구성된다. 게이트웨이(210)는 자격 토큰을 이용하는 방식에서의 게이트웨이라는 점에서 CapSG(Capability Service Gateway)라고 불릴 수 있다. Next, an access control method using a qualification token will be described. The structure of the object Internet system of FIG. 2 collects and processes data from the service domain area 240 and the service domain area 240, which are devices (or service providers) that generate substantial information, , 233, and 234, respectively. The gateway 210 may be referred to as a CapSG (Capability Service Gateway) in that it is a gateway in a manner using a qualification token.

여기서, '토큰' 개념에 대해 더 설명한다. 토큰은 네트워크 망에서 접속을 제어하기 위해 이용되는 특정 정보 또는 문자열의 단위를 의미하며, 토큰을 할당받은(또는, 획득한) 주체가 접속 권한을 갖는 것으로 이해될 수 있다. Here, the concept of 'token' is further explained. A token is a unit of specific information or character string used for controlling a connection in a network, and a subject to which a token is assigned (or acquired) may be understood to have access rights.

자격 토큰을 이용하는 방식에 대해 이어서 설명하면, 게이트웨이(210)는 서비스 도메인 영역(240)의 디바이스들로부터 리소스 데이터와 서비스에 대한 정보를 수집하여 리소스 데이터 DB로 관리한다(220). 게이트웨이(210)는 리소스 서비스를 요청하는 사용자들에 대해 인증 및 접근 제어를 위한 토큰을 발행하고 관리하며, 토큰의 위임(delegate)에 대해서도 관리한다. 사용자들은 할당된 토큰을 이용하여 리소스 서비스를 요청하며(211, 212, 213), 게이트웨이(210)는 자신이 관리하는 리소스 서비스 중에서 요청된 서비스를 사용자들에게 가공하여 제공한다.The gateway 210 collects information on the resource data and the service from the devices in the service domain area 240 and manages the resource data in the resource data DB (220). The gateway 210 issues and manages tokens for authentication and access control to users requesting resource services, and manages tokens delegates. The users request a resource service using the allocated token (211, 212, 213), and the gateway 210 processes and provides the requested service among the resource services managed by the user.

자격 토큰을 이용하는 방식에 대해 제안하는 실시 예에 의하면, 사용자들은 인증과 접근권한을 포함하는 CaC(Certificate and Capability, 또는 C&C) 토큰을 사용하여 서비스에 접근한다. 자격 토큰을 이용하여 인증된 사용자들은 자격 토큰을 이용하여 원하는 리소스 서비스를 제공받을 수 있다. 이러한 자격 토큰은 게이트웨이(210)로부터 초기에 할당받을 수 있으며, 다른 사용자에게 위임될 수도 있다. 위임된 토큰이 유효한 경우, 피위임자 또한 해당 리소스 서비스를 제공받을 수 있고 다른 사용자에게 재위임할 수도 있다. According to an exemplary embodiment of a method for using a credential token, users access the service using a Certificate and Capability (or C & C) token containing authentication and access rights. Users who are authenticated using the qualification token can receive the desired resource service using the qualification token. Such a qualification token may be initially allocated from the gateway 210 and may be delegated to another user. If the delegated token is valid, the delegatee may also be provided with the appropriate resource service and reassigned to another user.

도 3은 제안하는 실시 예에 따른 CaC 토큰의 구조를 구체적으로 도시한다. 도 3에 도시된 인증 및 자격 토큰(310, 즉 CaC 토큰)은 사용자에 대한 인증 정보를 포함하는 인증 토큰(322)과 리소스 서비스로의 접근을 제어하기 위한 정보를 포함하는 자격 토큰(324)으로 구성되며, XML 문서 형식을 가진다. FIG. 3 shows the structure of the CaC token according to the embodiment of the present invention in detail. The authentication and qualification token 310 (i.e., the CaC token) shown in FIG. 3 includes an authentication token 322 that contains authentication information for the user and a qualification token 324 that contains information for controlling access to the resource service And has an XML document format.

여기서, 자격 토큰(324)은 토큰 정보(332)와 서비스 토큰 정보(334)를 포함하며, 먼저 토큰 정보(332)에 대해 도 4를 통해 설명한다. 인증 및 자격 토큰(310)에서 토큰 정보(332) 부분은 토큰에 대한 토큰 번호(Token Number), 시그니쳐 알고리즘(Signature Algorithm), 해쉬 알고리즘(Hash Algorithm)을 포함하며, 인증 토큰의 발급이나 갱신 시에 토큰 번호와 시그니쳐 알고리즘이 이용되어 시그니쳐가 생성된다. 또한, 토큰 정보(332) 부분에는 승인 조건(Validity Condition)이 포함되어 토큰의 유효기간이 확인되며, 유효기간이 초과하거나 사용자에 의해 토큰이 폐기(Revocation)되는 경우를 관리하는 정보 또한 포함된다. 나아가, 토큰 정보(332) 부분에는 TrlUri에 대한 정보도 포함되어 토큰 관련 데이터가 서버로 전송되어 관리될 수도 있다.Here, the qualification token 324 includes the token information 332 and the service token information 334, which are first described with reference to FIG. 4 for the token information 332. The portion of the token information 332 in the authentication and qualification token 310 includes a token number for a token, a signature algorithm, and a hash algorithm. Upon issuance or renewal of the authentication token, The token number and the signature algorithm are used to generate the signature. In addition, the token information 332 includes information for managing the validity period of the token including the validity condition, and managing the case where the validity period is exceeded or the token is revoked by the user. Furthermore, the token information 332 may include information on the TrlUri so that the token related data may be transmitted to the server and managed.

이어서, 서비스 토큰 정보(334)에 대해 도 5를 통해 설명한다. 서비스 토큰 정보(334) 부분은 각 서비스에 접근할 수 있는 실질적인 자격 토큰을 나타내는 부분이다. 서비스 토큰 정보(334) 부분은 서비스 토큰 ID, 도메인 이름(Domain Name), 조건(Condition)에 대한 정보를 통해 토큰을 구분할 수 있게끔 한다. 또한, 서비스 토큰 정보(334) 부분은 서비스 타입(Service Type), 버전(Version), 설명(Descript), Uri에 대한정보도 포함하여 토큰을 이용해 접근할 수 있는 서비스에 대해서도 정의한다. Next, the service token information 334 will be described with reference to FIG. The service token information (334) portion is a portion indicating an actual qualification token that can access each service. The service token information portion 334 allows the token to be distinguished through information on a service token ID, a domain name, and a condition. The service token information portion 334 also defines a service that can be accessed using a token including information on a service type, a version, a descriptor, and Uri.

또한, 서비스 토큰 정보(334) 부분은 발행자 토큰 번호(IssuerTokenNumber), 부모 토큰 번호(ParentsTokenNumber), 위임여부(Delegatable), 위임최대카운트(DelegateMaxCnt), Dept에 대한 정보를 포함하여 토큰의 위임에 대해서도 관리한다. 이때, 발행자 토큰 번호는 토큰의 초기 발급자의 토큰 번호를 의미하며, 부모 토큰 번호는 피위임자에게 토큰을 위임한 위임자의 토큰 번호를 의미한다. 위임여부가 '1'로 표시되는 경우는 위임이 가능함을 의미하고, '0'으로 표시되는 경우는 위임이 불가능함을 의미한다. 위임최대카운트 값은 사용자가 토큰을 위임할 수 있는 최대 횟수를 나타내며, 'Dept'는 토큰이 초기 발급자로부터 재위임이 가능한 횟수를 나타낸다. The service token information 334 also includes information about the issuer token number (IssuerTokenNumber), the parent token number (ParentsTokenNumber), the delegatable, the delegation max count (DelegateMaxCnt) do. At this time, the issuer token number means the token number of the initial issuer of the token, and the parent token number means the token number of the mandator who has delegated the token to the delegator. If the delegation status is '1', it means that delegation is possible, and when it is '0', it means that delegation is impossible. The delegation maximum count value indicates the maximum number of times the user can delegate the token, and 'Dept' indicates the number of times the token can be re-delegated from the initial issuer.

서비스 토큰 정보(334) 부분은 승인(Validate)에 관련된 정보도 포함하며, 승인에 의해 결정된 유효기간이 지난 경우 토큰을 폐기하기 위한 정보도 포함한다. 승인과 폐기와 관련된 부분은 앞서 도 4에서 설명한 부분이 유사하게 적용될 수 있다. The portion of the service token information 334 also includes information related to validation and also includes information for discarding the token if the validity period determined by the authorization has passed. The parts related to approval and disposal may be similarly applied to those described in Fig.

도 6은 제안하는 실시 예에 따라 자격 토큰이 이용될 때의 프라이버시(privacy) 구조를 정의하는 도면이다. 도 6에서는 도 3 내지 도 5에서 설명한 구조의 자격 토큰과 관련하여 정의되는 프라이버시에 대해 설명한다.Figure 6 is a diagram that defines a privacy structure when a qualification token is used in accordance with the proposed embodiment. In Fig. 6, the privacy defined in relation to the qualification token of the structure described in Figs. 3 to 5 will be described.

먼저, 자격 토큰에 대한 프라이버시(610)는 사용자 프라이버시(615) 및 리소스 프라이버시(620) 두 가지로 나뉜다. 사용자 프라이버시(615)는 자격 토큰을 이용하는 사용자 관점에서 사용자의 정보를 노출시키지 않기 위해 정의될 뿐 아니라, 특정 주체가 발행한 자격 토큰의 흐름을 파악할 수 있도록 정의된다. First, the privacy 610 for the qualification token is divided into a user privacy 615 and a resource privacy 620. The user privacy 615 is defined not only to not expose the user's information from the user's point of view using the credential token but also to be able to grasp the flow of the credential token issued by the specific subject.

사용자 프라이버시(615)는 토큰 생성자인 소유자 프라이버시(625) 및 토큰을 위임받아 사용하는 위임자 프라이버시(630)로 구분된다. 소유자 프라이버시(625)는 자격 토큰에 포함되는 소유자(자신)의 정보에 대해 노출시키지 않기 위해서(640), 데이터에 해쉬 및 암호화 기법 중 적어도 하나를 적용하여 정보를 보호하도록 정의된다(655). 동시에, 소유자 프라이버시(615)에 의하면 소유자에 의해 자격 토큰이 다른 사용자에게 위임되는 경우, 소유자는 피위임자에 대한 정보를 확인하고, 자격 토큰의 흐름을 파악하여 제어할 수 있어야 한다.The user privacy 615 is divided into owner privacy 625, which is a token creator, and mandator privacy 630, which uses the token. The owner privacy 625 is defined 655 to protect the information by applying at least one of a hash and an encryption scheme to the data (640) in order not to expose (640) the owner (self) information contained in the qualification token. At the same time, according to the owner privacy 615, if the entitlement token is delegated to another user by the owner, the owner must be able to identify information about the delegatee and to determine and control the flow of the entitlement token.

위임자 프라이버시(630)는 토큰을 위임받는 피위임자의 입장에서 위임자의 정보와 토큰의 재위임 여부만을 확인하고, 위임자에 대한 정보를 노출시키지 않도록(645) 정의되어 데이터에 해쉬 및 암호화 기법 중 적어도 하나를 적용하도록 정의된다(660). 위임자 프라이버시(630)에 따르면 토큰의 재위임시 토큰의 생성자와 유사하게 위임자의 정보를 보호할 수 있으며, 재위임 여부도 노출되지 않도록 정의된다.The delegator privacy 630 is defined 645 to determine whether the delegator's information and the token are re-delegated from the perspective of the delegator who is delegated to the token and does not expose information about the delegator 645 so that at least one of the hash and cryptographic techniques (660). According to the authorizer privacy 630, the information of the authorizer can be protected similarly to the creator of the token's temporary token, and re-entrustment is also defined not to be exposed.

이어서, 리소스 프라이버시(620)를 설명한다. 리소스 프라이버시(620)는 사용자에게 제공되는 리소스 서비스 관점에서의 프라이버시를 의미한다. 리소스 프라이버시(620)는 자격 토큰을 이용한 사용자가 서비스를 이용할 때 리소스 데이터의 저장 위치를 노출시키지 않도록 정의되며(635), 리소스 서비스를 제공하는 디바이스를 보호하기 위해 리소스 데이터에 해쉬를 적용할 수 있다(650, 665). Next, the resource privacy 620 will be described. Resource privacy 620 refers to privacy in terms of resource services provided to a user. The resource privacy 620 is defined 635 to not expose the storage location of the resource data when the user using the qualification token exposes the location of the resource data, and may apply a hash to the resource data to protect the device providing the resource service (650, 665).

이어서, 도 7 및 도 8에서는 도 6에서 설명한 프라이버시 구조에서 소유자 프라이버시(625) 및 위임자 프라이버시(630)에 대해 구체적으로 설명한다.Next, in FIG. 7 and FIG. 8, the owner privacy 625 and the mandatory privacy 630 in the privacy structure described in FIG. 6 will be described in detail.

앞서 설명했듯이, 소유자 프라이버시(625)에 따르면 자격 토큰의 소유자는 자격 토큰에 포함되는 자신의 정보를 숨길수 있어야 하며, 자신이 위임하는 토큰에 대해 피위임자의 사용자 정보를 확인할 수 있어야 한다. 또한, 자격 토큰의 소유자는 자신의 자격 토큰이 누구에게 위임되었는지에 대해서도 조회할 수 있어야 하며, 원하지 않는 경우 자격 토큰을 폐기할 수도 있어야 한다.As described above, according to owner privacy (625), the owner of the qualification token must be able to hide his or her information contained in the qualification token and be able to verify the user information of the person to be delegated to the token it delegates. Also, the owner of the credential token should be able to query who his / her credential token has been delegated to, and if not, be able to discard the credential token.

도 7에는 자격 토큰이 최초 발급되는 경우, 다른 사용자에게 위임 및 재위임 되는 과정을 도시한다. 소유자 프라이버시(625)에 대해 설명하기 위하여, 도 7에서 자격 토큰에는 'ServiceTokenID', 'IssuerTokenNumber', 'Parents TokenNumber', 'Delegatable', 'DelegateMaxCnt' 및 'Dept'의 정보만이 포함되는 것으로 간소화되어 도시된다.Figure 7 illustrates the process of delegation and re-delegation to other users when a qualification token is first issued. In order to explain the owner privacy 625, the qualification token is simplified to include only information of 'ServiceTokenID', 'IssuerTokenNumber', 'Parents TokenNumber', 'Delegatable', 'DelegateMaxCnt' and 'Dept' Respectively.

도 7에서 A(715)는 자격 토큰의 소유자로서 리소스 관리자(710)로부터 'xxxxxx'라는 ServiceTokenID를 가지는 자격 토큰을 발급받는다. 이때, 'Delegatable' 값은 '1'로써 자격 토큰이 위임 가능함을 나타내며, 'DelegateMaxCnt' 값은 '5', 'Dept' 값은 2이다. A(715)는 발급받은 토큰을 aA(720), aB, aC, aD에게 각각 위임한다. 이때, A(715)는 'Delegatable' 값과 'DelegateMaxCnt' 값을 각각 설정할 수 있다. 단, 'DelegateMaxCnt' 값은 자신이 리소스 관리자(710)로부터 할당받은 값보다 큰 수를 입력할 수는 없다. 이어서, aA(720), aB, aC, aD 사용자들은 각각 xxxxxx 토큰을 재위임한다.In FIG. 7, A (715) receives a qualification token having a ServiceTokenID of 'xxxxxx' from the resource manager 710 as the owner of the qualification token. At this time, 'Delegatable' value is '1', indicating that the qualification token can be delegated, 'DelegateMaxCnt' value is '5', and 'Dept' value is 2. A 715 delegates the issued token to aA 720, aB, aC, and aD, respectively. At this time, A (715) can set the 'Delegatable' value and the 'DelegateMaxCnt' value. However, the value of 'DelegateMaxCnt' can not input a number larger than the value assigned by the resource manager 710 itself. Then aA (720), aB, aC, and aD users reign the xxxxxx tokens, respectively.

이러한 시나리오에서, 자격 토큰의 소유자 A(715)는 'xxxxxx' 라는 자격 토큰에 대한 흐름을 확인할 때, 'ServiceTokenID'가 'xxxxxx'이고 'IssuerTokenNumber'가 'A'인 자격 토큰들을 수집한다. 이어서, A(715)는 'ParentsTokenNumber'가 'A'인 자격 토큰들을 수집한 뒤 수집한 토큰 중에서 'ServiceTokenID'가 이전에 수집한 자격 토큰들과 같은(즉, 'xxxxxx'인) 자격 토큰을 모아 정리한다. 이러한 방식을 통해 발행된 자격 토큰들 간의 연결 관계가 정리되면, 정리된 결과가 A(715)에게 전달된다.In this scenario, the owner A 715 of the credential token collects the qualification tokens with the 'ServiceTokenID' of 'xxxxxx' and the 'IssuerTokenNumber' of 'A' when confirming the flow for the qualification token 'xxxxxx'. Then, A 715 collects the qualification tokens having the same 'ParentsTokenNumber' as 'A', collects the same qualification tokens (ie, 'xxxxxx') previously collected by 'ServiceTokenID' among the collected tokens It is organized. Once the connection relationships between the issued qualification tokens are determined in this manner, the final result is passed to A 715.

aA(720)나 aB 또한 자신이 위임한 자격 토큰의 흐름을 확인할 때에는 처음 시작하는 'ParentsTokenNumber'가 자기 자신인 자격 토큰들을 수집한다.When aA (720) or aB also checks the flow of the credential token that he has delegated, the first 'ParentsTokenNumber' collects his own qualification tokens.

자격 토큰을 위임하는 주체는 위임 최대 횟수를 나타내는 'DelegateMaxCnt' 값과 위임 최대 레벨 수인 'Dept' 값을 통해서 자격 토큰의 위임을 제어한다. 이때, 'Dept' 값은 초기 소유자의 자격 토큰에 설정되어 이후에 새로 설정될 수 없으며, 위임이 진행될 때마다 그 값이 1씩 줄어든다. 'Delegatable', 'DelegateMaxCnt' 및 'Dept' 세 값 중 하나라도 0이 되는 경우 더 이상 자격 토큰이 위임될 수 없다. 이상에서 설명한 바에 따라, 자격 토큰의 소유자는 자신이 위임한 자격 토큰의 흐름을 제어할 수 있다.The subject delegating the credential token controls the delegation of the credential token through the value of 'DelegateMaxCnt', which indicates the maximum number of delegations, and 'Dept', the maximum number of delegations. At this time, the 'Dept' value is set in the initial owner's credential token and can not be set afterwards, and the value is decreased by 1 each time the delegation proceeds. If any of the three values 'Delegatable', 'DelegateMaxCnt', and 'Dept' are 0, then the credential token can no longer be delegated. As described above, the owner of the qualification token can control the flow of the qualification token that it has delegated to.

이어서, 도 8에서 위임자의 프라이버시를 보호하는 과정에 대해 설명한다. 위임자 프라이버시를 보호하기 위하여, 피위임자는 자신에게 자격 토큰을 위임해준 바로 상위 주체에 대해서는 알고 있지만 상위 주체가 또 다른 주체로부터 위임받아 자신에게 재위임한 사실은 알 수 없어야 한다. 이에 따라, 위임자 보호를 달성하기 위한 프라이버시 정책은 다음과 같이 정의될 수 있다. 첫째로, 피위임자는 자신의 'ParentTokenNumber'만을 확인할 수 있다. 둘째로, 피위임자는 자격 토큰의 위임, 재위임 여부를 구분할 수 없다. 셋째로, 피위임자는 자격 토큰의 병행 위임 여부를 알 수 없다.Next, a process of protecting the privacy of the delegator will be described with reference to FIG. In order to protect the delegator's privacy, the delegate must know about the immediate superior who delegated his qualification token to him, but he should not know that the superior delegated from another subject and re-delegated to him. Accordingly, the privacy policy for achieving the delegator protection can be defined as follows. First, the delegate can check only his ParentTokenNumber. Second, the delegate can not distinguish whether the qualification token is delegated or re-delegated. Third, the delegate can not know whether or not the qualification token is delegated.

도 8은 이러한 위임자 프라이버시 정책에 따른 자격 토큰 흐름을 도시한다. 자격 토큰은 초기 소유자 A로부터 위임과 재위임을 거쳐 aaaA 사용자에게까지 위임되었다. 이때, aaaA는 자신이 위임받은 자격 토큰인 'xxxxxx'가 aaA 사용자로부터 위임받았다는 사실을 'ParentsTokenNumber'로부터 알 수 있다. 그러나, 'IssuerTokenNumber' 값은 도 6에서 설명한 바와 같이 사용자 프라이버시로 인해 암호화되어 있기 때문에, aaaA 사용자는 자격 토큰의 초기 소유자가 A라는 사실은 알 수 없다. 또한, aaaA는 aaA 사용자가 자격 토큰을 위임받았다는 사실이나 누구로부터 위임받았는지에 대해서도 확인할 수 없다. 즉, aaaA는 자신이 할당받은 자격 토큰이 최초 위임된 것인지 재위임된 것인지 구분할 수 없다. Figure 8 shows the entitlement token flow in accordance with this mandatory user privacy policy. The qualification token has been delegated from the initial owner A to the aaaA user through delegation and reign. At this time, aaaA can know from 'ParentsTokenNumber' that the entitlement token 'xxxxxx' is entrusted from the aaA user. However, since the 'IssuerTokenNumber' value is encrypted due to user privacy as described in FIG. 6, the aaaA user does not know that the initial owner of the qualification token is A. Also, aaAA can not verify that an aaA user has been delegated a credential token or who has been delegated. That is, aaaA can not distinguish whether the entitlement token to which it has been assigned has been first delegated or reassigned.

aC 사용자 또한 마찬가지로 자신과 함께 A로부터 자격 토큰을 위임받은 aA, aB, aD의 사용자에 대한 정보는 알 수 없으며, A가 초기 소유자라는 것 또한 알 수 없다. 유사하게, adA 사용자는 자격 토큰의 최초 소유자가 A 라는 사실을 알 수 없으며, adbA 사용자 또한 자신이 위임받은 자격 토큰이 aD 로부터 재위임되었다는 사실을 알 수 없다. 이러한 위임자 프라이버시 보호 정책을 적용함으로써, 피위임자는 최소한의 정보만으로도 시스템에 접근할 수 있게 된다.The aC user also does not know the information about the users of aA, aB, and aD who are entrusted with the qualification token from A along with him, nor does it know that A is the initial owner. Similarly, the adA user does not know that the first owner of the qualification token is A, nor does the adbA user know that his or her entitlement token has been re-delegated from aD. By applying such a delegator privacy policy, the delegator can access the system with minimal information.

도 9는 제안하는 프라이버시 구조에서 리소스 프라이버시를 보장하기 위한 동작 방법을 도시하는 흐름도이다. 리소스 프라이버시를 위해서는 리소스 서비스를 제공하는 디바이스 의 정보 및 데이터 저장 위치가 노출되지 않아야 한다. 이를 위하여, 제안하는 실시 예에서는 도 6에서 설명한 바와 같이 리소스 서비스 데이터에 해쉬 함수를 적용한다.9 is a flowchart showing an operation method for ensuring resource privacy in the proposed privacy structure. For resource privacy, the information and the data storage location of the device providing the resource service should not be exposed. To this end, in the proposed embodiment, a hash function is applied to the resource service data as described with reference to FIG.

한편, 사물인터넷 환경에서는 각 디바이스 간의 정보를 조직하고 전송하는 규칙으로서 'REST(Representational State Transfer)' 개념이 적용된다. REST는 인터넷의 정보를 조직하고 전송하는 규칙의 조합을 의미하며, 통신 규약이나 표준규격이 아닌 분산 하이퍼미디어 시스템을 위한 소프트웨어 아키텍쳐의 한 형식을 의미한다. REST에 의하면, 네트워크에서 클라이언트와 서버 사이에서 제공되는 서비스의 형식은 예를 들어 "groups/groupid/member/sensor"와 같이 계층적 구조로 구성된다.On the other hand, 'REST (Representational State Transfer)' is applied as a rule for organizing and transmitting information between devices in the Internet environment of objects. REST refers to a combination of rules that organize and transmit information on the Internet, and is a form of software architecture for distributed hypermedia systems, not communication protocols or standards. According to REST, the type of service provided between a client and a server in a network is hierarchical, for example, "groups / groupid / member / sensor".

REST 가 갖는 장점은 각 디바이스에 통신을 위한 별도 서비스를 설치하지 않더라도 서비스가 가능하며, 특정 언어에 귀속되지 않고 서비스를 구성 및 제공할 수 있다는 점이다. 그러나, 설계 및 구성에 표준으로 정한 사항이 없어서 각 서비스 별로 아키텍쳐가 달라질 수 있고, 이에 따라 서비스 구현 방법이 달라져서 시스템의 복잡도가 높아질 수도 있다.The advantage of REST is that it is possible to service without configuring a separate service for each device, and to configure and provide services without belonging to a specific language. However, since there is no standard specification for the design and configuration, the architecture may be different for each service, and accordingly, the service implementation method may be changed to increase the complexity of the system.

한편, 사물인터넷 환경에서는 다양한 서비스가 존재하기 때문에, REST를 기반으로 한 유일한 URI(Uniform Resource Indicator)를 가지는 서비스는 효율적인 구성이 아니다. 또한, 계층적으로 구성된 URI는 어떠한 기능을 제공하는지 직관적으로 예측될 수 있기 때문에, 비인가된 주체로부터 공격 대상이 될 수 있어 위험요소가 존재한다. On the other hand, since there are various services in the object Internet environment, a service having a unique URI (Uniform Resource Indicator) based on REST is not an efficient configuration. In addition, a hierarchical URI can be intuitively predicted as to what function it provides, so there is a danger that it can be attacked from an unauthorized subject.

따라서, 이하에서는 제안하는 실시 예에 따라 리소스 프라이버시를 보장하기 위한 동작 방법을 설명한다. 도 9는 서비스 제공자(908)에 등록된 리소스 서비스를 참조하여 인가된 사용자(902)가 리소스 서비스를 제공받는 일련의 과정을 도시한다.Therefore, an operation method for ensuring resource privacy according to the embodiment will be described below. FIG. 9 shows a series of processes in which an authorized user 902 is provided with a resource service by referring to the resource service registered in the service provider 908. FIG.

리소스 서비스를 제공하는 서비스 제공자(908)는 수집된 데이터나 디바이스 제어 서비스를 활용하여 소정의 정보를 제공하기 위한 리소스 서비스를 생성한다. 이어서, 서비스 제공자(908)는 생성된 리소스 서비스에 ID를 발급하여 매칭시킨 뒤, 리소스 서비스를 관리하는 네트워크 엔티티로 전송하여 서비스 목록에 등록한다(S910). 이러한 과정에서, 서비스 제공자(908)는 리소스 관리 모듈(906)이 관리하는 리소스 서비스의 목록을 갱신할 것을 함께 요청할 수도 있다.The service provider 908 providing the resource service generates a resource service for providing predetermined information by utilizing the collected data or the device control service. Then, the service provider 908 issues an ID to the created resource service and matches with the created resource service, and transmits the ID to the network entity managing the resource service, and registers the ID in the service list (S910). In this process, the service provider 908 may request that the resource management module 906 update the list of resource services managed by the resource management module 906 as well.

이때, 네트워크 엔티티는 앞서 도 2에서 설명한 '게이트웨이'가 될 수 있으며, 게이트웨이는 도 9에 도시된 토큰 관리 모듈(904) 및 리소스 관리 모듈(906)을 포함하도록 구성될 수 있다. 한편, 토큰 관리 모듈(904) 및 리소스 관리 모듈(906)을 포함하는 네트워크 엔티티는 서비스 제공자(908)로부터 리소스 서비스에 대한 정보와 매칭되는 ID를 수신하여 리소스 관리 모듈(906)을 통해 저장 및 관리한다.2, and the gateway may be configured to include the token management module 904 and the resource management module 906 shown in FIG. On the other hand, the network entity including the token management module 904 and the resource management module 906 receives the ID matched with the information about the resource service from the service provider 908, and stores it in the resource management module 906 do.

이어서, 인가된 사용자(902, 또는 사용자 단말)는 서비스 제공자(908)가 등록한 리소스 서비스 목록 중에서 자신이 이용하고자 하는 리소스 서비스에 대해 접속하기 위한 자격 토큰을 요청한다(S915). 이러한 과정은 인가된 사용자(902)가 게이트웨이의 리소스 관리 모듈(906)로 특정 리소스 서비스를 요청하는 메시지를 전송하는 과정으로 이해될 수도 있다.Then, the authorized user 902 or the user terminal requests a qualification token for accessing the resource service to be used from the resource service list registered by the service provider 908 (S915). This process may be understood as a process in which the authorized user 902 transmits a message requesting a specific resource service to the resource management module 906 of the gateway.

네트워크 엔티티에 포함된 리소스 관리 모듈(906)은 인가된 사용자(902)가 요청한 리소스 서비스에 대한 정보를 서비스 제공자(908)로 전달하며, 서비스 제공자(908)는 인가된 사용자(902)가 요청한 리소스 서비스에 대해 승인 또는 거절한다. 승인하는 경우, 서비스 제공자(908)는 인가된 사용자(902)의 암호화 알고리즘 정보를 이용하여 리소스 서비스 ID 값을 개인키로 암호화하며, 암호화된 결과를 리소스 서비스-URI 매핑 테이블에 저장한다(S925). 이에 따라, 서비스 제공자(908)는 인가된 사용자(902)가 자신이 제공하는 리소스 서비스를 이용할 수 있게끔 한다. 이어서, 서비스 제공자(908)는 인가된 사용자(902)가 요청한 리소스 서비스가 승인되었음을 알리기 위한 신호를 네트워크 엔티티의 리소스 관리 모듈(906)로 전달한다.The resource management module 906 included in the network entity transmits information about the resource service requested by the authorized user 902 to the service provider 908 and the service provider 908 transmits the information about the resource requested by the authorized user 902 Approve or reject services. If so, the service provider 908 encrypts the resource service ID value with the private key using the encryption algorithm information of the authorized user 902, and stores the encrypted result in the resource service-URL mapping table (S925). Accordingly, the service provider 908 enables the authorized user 902 to utilize the resource service provided by the user. Then, the service provider 908 delivers a signal to the resource management module 906 of the network entity to notify that the resource service requested by the authorized user 902 has been approved.

한편, 인가된 사용자(902)로 리소스 서비스를 제공하는 것이 허용되면, 네트워크 엔티티 내의 토큰 관리 모듈(904)은 서비스 제공자(908)가 승인한 리소스 서비스의 자격 토큰을 갱신하여 인가된 사용자(902)로 전달한다(S935). 즉, 네트워크 엔티티 내의 토큰 관리 모듈(904)은 리소스 관리 모듈(906)과의 연계를 통해서 인가된 사용자(902)에게 리소스 서비스를 위한 자격 토큰을 발행한다. On the other hand, if it is permitted to provide the resource service to the authorized user 902, the token management module 904 in the network entity updates the entitlement token of the resource service approved by the service provider 908, (S935). That is, the token management module 904 in the network entity issues an entitlement token for the resource service to the authorized user 902 through association with the resource management module 906.

자격 토큰이 발행되면, 인가된 사용자(902)는 자격 토큰을 이용하여 토큰 관리 모듈(904)로 리소스 서비스를 요청한다(S940). 이러한 과정에서, 인가된 사용자(902)는 인증 키 정보 및 인증 키를 이용하여 암호화된 리소스 서비스에 대한 정보를 자격 토큰과 함께 토큰 관리 모듈(904)로 전송할 수 있다. When the qualification token is issued, the authorized user 902 requests the resource service from the token management module 904 using the qualification token (S940). In this process, the authorized user 902 may transmit the information about the encrypted resource service with the authentication token to the token management module 904 using the authentication key information and the authentication key.

네트워크 엔티티의 토큰 관리 모듈(904)은 인가된 사용자(902)의 자격 토큰에 포함된 서비스 토큰 정보를 참조하여 요청된 리소스 서비스를 분석함으로써 리소스 서비스를 위하여 발급된 자격 토큰이 유효한지 확인한다(S945). 구체적으로, 토큰 관리 모듈(904)은 요청된 공개 키의 위변조 여부, 유효기간, 폐기목록 등을 참조함으로써 자격 토큰이 리소스 서비스에 대해 유효한지 확인한 뒤, 서비스 토큰 정보를 갱신한다. 이어서, 토큰 관리 모듈(904)은 인가된 사용자(902)의 인증 키(또는, 개인 키)를 이용하여 암호화된 리소스 서비스에 대한 정보를 복호화함으로써 인가된 사용자(902)가 요청한 리소스 서비스에 대해 구체적으로 확인한다. The token management module 904 of the network entity checks whether the qualification token issued for the resource service is valid by analyzing the requested resource service with reference to the service token information included in the qualification token of the authorized user 902 (S945 ). Specifically, the token management module 904 updates the service token information after confirming that the qualification token is valid for the resource service by referring to the forgery or falsification of the requested public key, the validity period, the revocation list and the like. The token management module 904 then decrypts the information about the encrypted resource service using the authentication key (or private key) of the authorized user 902 so that the token management module 904 decrypts the information about the resource service requested by the authorized user 902 .

최종적으로, 토큰 관리 모듈(904)은 URI 매핑 테이블을 통해서 확인된 리소스 서비스를 리소스 관리 모듈(906)로 전달하며(S950), 리소스 관리 모듈(906)은 인가된 사용자(902)에게 리소스 서비스를 제공하게 된다(S955).Finally, the token management module 904 transfers the resource service identified through the URI mapping table to the resource management module 906 (S950). The resource management module 906 notifies the authorized user 902 of the resource service (S955).

아래의 표 1 내지 표 4는 도 9에서 설명한 일련의 과정 중에서 일부 과정을 프로그램 절차로 표현한다. 먼저, 표 1은 서비스 제공자(908)가 리소스 관리 모듈(906)에 리소스 서비스를 등록하는 과정(S910)을 나타낸다.Tables 1 to 4 below illustrate some of the series of processes described in FIG. 9 by a program procedure. First, Table 1 shows a process (S910) of the service provider 908 registering a resource service in the resource management module 906. [

* RS: 리소스 서비스 객체
LOOP
RSid = RS.createid();
IF RS,Exists(RSid) THEN
Continue;
ELSE
RS.Store_ResourceServiceList(RSid,ResourceInfo);
END IF:
END LOOP;
* RS: Resource service object
LOOP
RSid = RS.createid ();
IF RS, Exists (RSid) THEN
Continue;
ELSE
RS.Store_ResourceServiceList (RSid, ResourceInfo);
END IF:
END LOOP;

아래의 표 2는 서비스 제공자(908)가 리소스 관리 모듈(906)이 관리하는 리소스 서비스의 목록을 갱신할 것을 요청하는 과정을 나타낸다.Table 2 below shows a process in which the service provider 908 requests the resource management module 906 to update the list of resource services managed by the resource management module 906.

* RS: 리소스 서비스 객체
* Cert: 인증서 객체
* RSList: Resource Service List Object
RSList = RS.getResource_ServiceList();
RSi = RSList.getId(i);
KeyPare = Cert.getKeyPare();
RS.RequestRS(RSi,KeyPare);
* RS: Resource service object
* Cert: Certificate object
* RSList: Resource Service List Object
RSList = RS.getResource_ServiceList ();
RSi = RSList.getId (i);
KeyPare = Cert.getKeyPare ();
RS.RequestRS (RSi, KeyPare);

아래의 표 3은 서비스 제공자(908)가 인가된 사용자(902)로부터 요청받은 리소스 서비스에 대해 승인하고 매핑 테이블에 등록하는 일련의 과정(S925, S930)을 나타낸다.Table 3 below shows a series of processes (S925 and S930) in which the service provider 908 approves the resource service requested from the authorized user 902 and registers it in the mapping table.

* RS: 리소스 서비스 객체
RSObject[] = RS.getRequestRSList()
LOOP
IF RSObject[i] != EOF THEN
IF RS.Agree(RSObject[i]) THEN
_RSid = RSObject[i].getRSid()
_Keypare = RSObject[i].getKeypare()
LOOP
_EncryptRS = RS.setEncrypt(_RSid,_Keypare )
IF RS.ExistsMatrix(EncryptRS) THEN
Continue;
ELSE
RS.Store_ResourceMatrix(_RSid,_EncryptRS)
END IF
END LOOP
END IF
END IF
END LOOP
RETURN _
* RS: Resource service object
RSObject [] = RS.getRequestRSList ()
LOOP
IF RSObject [i]! = EOF THEN
IF RS.Agree (RSObject [i]) THEN
_RSid = RSObject [i] .getRSid ()
_Keypare = RSObject [i] .getKeypare ()
LOOP
_EncryptRS = RS.setEncrypt (_RSid, _Keypare)
IF RS.ExistsMatrix (EncryptRS) THEN
Continue;
ELSE
RS.Store_ResourceMatrix (_RSid, _EncryptRS)
END IF
END LOOP
END IF
END IF
END LOOP
RETURN _

아래의 표 4는 인가된 사용자(902)가 리소스 서비스를 요청하는 과정(S940)을 나타낸다.Table 4 below shows a process in which the authorized user 902 requests the resource service (S940).

* RS: 리소스 서비스 객체
* CnCToken: C&C 서비스 토큰 객체
* ServiceToken: 토큰접근제어모듈의 서비스 토큰 객체
RS.requestRS(RSToken,CnCToken.Cert)
IF ServiceToken.classify(RSToken) THEN
IF ServiceToken.validity(RSToken) THEN
RSToken = ServiceToken.updateRSToken(RSToken)
Keypare = CnCToken.getKeypare()
DecryptRS = RS.Decrypt(Keypare,RS.EncryptRS)
IF RS.MatrixMapping(RS.getRSMatrix(DecryptRS)) THEN
RSuri = RS.getRSuri(RSid);
RETURN RSToken.Service;
IF END
IF END
IF END
* RS: Resource service object
* CnCToken: C & C service token object
* ServiceToken: Token access control module service token object
RS.requestRS (RSToken, CnCToken.Cert)
IF ServiceToken.classify (RSToken) THEN
IF ServiceToken.validity (RSToken) THEN
RSToken = ServiceToken.updateRSToken (RSToken)
Keypare = CnCToken.getKeypare ()
DecryptRS = RS.Decrypt (Keypare, RS.EncryptRS)
IF RS.MatrixMapping (RS.getRSMatrix (DecryptRS)) THEN
RSuri = RS.getRSuri (RSid);
RETURN RSToken.Service;
IF END
IF END
IF END

이상의 표 1 내지 표 4는 도 9에서 설명한 과정을 프로그램으로 구현하기 위한 예시에 불과하며, 도 9에서 설명한 과정은 표 1 내지 표 4의 프로그램 언어 외에도 다양한 형태 및 방식을 통해서 다르게 구현될 수 있다.9 are only examples for implementing the process described in FIG. 9 with a program, and the process illustrated in FIG. 9 may be implemented in various forms and methods other than the program language of Tables 1 to 4.

도 10은 제안하는 프라이버시 구조에서 리소스 프라이버시에 대해 구체적으로 설명하는 도면이다.FIG. 10 is a diagram specifically explaining resource privacy in the proposed privacy structure.

도 10에 의하면, 인가된 사용자(902)는 리소스 서비스를 요청하는 과정에서 서비스 제공을 위한 여러 가지 정보(예를 들어, 'ServiceTokenID', 'Uri', 'IssuerTokenNumber' 등)를 암호화 처리하여 전송한다. 이에 따라, 수신측에서는 암호화된 정보를 복호화하는 별도의 분석 과정이 추가적으로 필요되기는 하나, 종래의 REST 방식에 비하여 리소스 서비스 등록시 URI를 등록하고 시스템을 컴파일 해야하는 부담을 덜 수 있다는 장점이 있다.10, the authorized user 902 encrypts and transmits various pieces of information (for example, 'ServiceTokenID', 'Uri', 'IssuerTokenNumber', etc.) for service provision in the process of requesting the resource service . Accordingly, the receiving side needs an additional analysis process for decrypting the encrypted information. However, the URI is advantageous in that the URI is registered when the resource service is registered and the burden of compiling the system is reduced, as compared with the conventional REST method.

한편, 앞서 설명한 REST 방식을 기반으로 하는 서비스 제공 방안에 의하면, 서비스의 URI 정보가 노출되어 보안상 취약점이 존재한다. 반면에, 제안하는 실시 예에 따른 자격 토큰 방식에 의하면 사용자 프라이버시 및 리소스 프라이버시가 모두 보호되며, 비인가된 사용자가 리소스 서비스의 정보를 획득한다 하더라도 소스 URI의 정보가 암호화되어(1010, 1020, 1030) 정보를 유추할 수 없다. 이에 따라, 네트워크 엔티티(또는, 리소스 서비스를 제공하는 게이트웨이)의 리소스 관리 모듈(906)에서 관리하는 URI-리소스 서비스 매핑 테이블을 통해서 리소스 서비스에 대한 보안성이 강화될 수 있다.Meanwhile, according to the service provision method based on the REST method described above, there is a security vulnerability due to the disclosure of the URI information of the service. On the other hand, according to the qualification token scheme according to the proposed embodiment, both user privacy and resource privacy are protected. Even if the unauthorized user obtains the information of the resource service, the information of the source URI is encrypted (1010, 1020, 1030) Information can not be deduced. Accordingly, the security of the resource service can be enhanced through the URI-resource service mapping table managed by the resource management module 906 of the network entity (or the gateway that provides the resource service).

도 11은 제안하는 실시 예에 따라 동작하는 네트워크 엔티티의 구성을 도시하는 도면이다. 도 11에서는 앞서 설명한 실시 예들에 따라 동작하는 네트워크 엔티티의 구성에 대해서 설명하며, 구체적인 설명이 생략되더라도 앞서 도 1 내지 도 10에서 설명한 실시 예들이 동일하거나 유사하게 적용될 수 있다. 11 is a diagram showing a configuration of a network entity operating according to the proposed embodiment. In FIG. 11, a configuration of a network entity operating according to the above-described embodiments is described. Even if a detailed description is omitted, the embodiments described above with reference to FIGS. 1 to 10 may be applied equally or similarly.

네트워크 엔티티(100)는 사용자 단말(150) 및 서비스 제공자(160)와 연계되어 동작하며, 일 실시 예에 의하면 리소스 서비스를 제공하는 게이트웨이가 될 수 있다. 일 실시 예에 의한 네트워크 엔티티(100)는 송수신부(110), 프로세서(120) 및 메모리(130)를 포함하도록 구성되며, 네트워크 엔티티(100)는 도 11에 도시된 구성 외에도 앞서 설명한 기능을 구현하기 위한 구성들을 더 포함할 수 있다.The network entity 100 may operate in conjunction with the user terminal 150 and the service provider 160, and in one embodiment may be a gateway that provides resource services. The network entity 100 according to an embodiment is configured to include a transceiver 110, a processor 120 and a memory 130. The network entity 100 may implement the above-described functions And may further include the following configurations.

네트워크 엔티티(100)의 송수신부(110)는 송신부(112) 및 수신부(114)를 포함하며, 프로세서(120)와 연결되어 사용자 단말(150) 및 서비스 제공자(160)로 신호를 송신 및 수신한다. 송수신부(110)는 RF(Radio Frequency) 신호를 송수신하여 사용자 단말(150) 및 서비스 제공자(160)와 무선으로 통신할 수 있으며, 서비스 제공자(160)와는 유선 망을 통해 연결되어 통신할 수도 있다.The transmitting and receiving unit 110 of the network entity 100 includes a transmitting unit 112 and a receiving unit 114 and is connected to the processor 120 to transmit and receive signals to the user terminal 150 and the service provider 160 . The transmitting and receiving unit 110 may transmit and receive a radio frequency (RF) signal to communicate wirelessly with the user terminal 150 and the service provider 160 and may communicate with the service provider 160 through a wired network .

프로세서(120)는 송수신부(110)와 기능적으로 연결되어 송수신부(110)가 신호를 송신 및 수신하는 과정을 제어하며, 구체적으로는 전송할 신호에 대해 각종 처리를 수행하여 송신부(112)를 통해 전송하거나 수신부(114)가 수신된 신호에 대해 각종 처리를 수행한다. 나아가, 프로세서(120)는 송수신된 메시지에 포함된 정보, 데이터 등을 메모리(130)에 저장할 수도 있다. The processor 120 is operatively connected to the transceiver 110 to control the process of transmitting and receiving signals by the transceiver 110. Specifically, the processor 120 performs various processes on a signal to be transmitted, And the receiving unit 114 performs various processes on the received signal. Further, the processor 120 may store information, data, and the like included in the transmitted and received messages in the memory 130. [

한편, 프로세서(120)는 토큰 관리 모듈(122) 및 리소스 관리 모듈(124)을 포함하도록 구현된다. 토큰 관리 모듈(122)은 자격 토큰의 발행, 저장, 위임, 관리 및 폐기 등 자격 토큰에 관련된 전반적인 처리 과정을 모두 담당한다. 일 예로, 토큰 관리 모듈(122)은 사용자 단말(150)에 대해 승인된 리소스 서비스를 위한 자격 토큰을 발행 및 갱신하며, 사용자 단말(150)로부터 요청받은 리소스 서비스에 대해 자격 토큰의 유효성을 판단한다. 나아가, 토큰 관리 모듈(122)은 자격 토큰이 유효하다고 판단되면 리소스 관리 모듈(124)로 요청받은 리소스 서비스의 정보를 전달한다. 즉, 토큰 관리 모듈(122)은 사용자 단말(150)에 리소스 서비스를 제공하기 위한 자격 토큰 관련된 일체의 작업을 수행한다.Meanwhile, the processor 120 is implemented to include a token management module 122 and a resource management module 124. [ The token management module 122 is responsible for the overall processing of the qualification token, including issuing, storing, delegating, managing, and revoking the qualification token. In one example, the token management module 122 issues and updates a qualification token for an authorized resource service to the user terminal 150, and determines the validity of the qualification token for the requested resource service from the user terminal 150 . Further, the token management module 122 delivers information of the requested resource service to the resource management module 124 when it is determined that the qualification token is valid. That is, the token management module 122 performs all the tasks related to the qualification token to provide the resource service to the user terminal 150. [

이어서, 리소스 관리 모듈(124)은 사용자에게 제공될 리소스 서비스에 대한 전반적인 처리 과정을 담당한다. 일 예로, 리소스 관리 모듈(124)은 서비스 제공자(160)가 리소스 서비스에 대한 등록을 요청하면 요청받은 리소스 서비스에 대한 정보를 사용자 단말(150)에 제공할 리소스 서비스 목록에 등록하고 관리한다. 또한, 리소스 관리 모듈(124)은 사용자 단말(150)로부터 특정 리소스 서비스에 대한 정보를 요청 받으면 요청된 리소스 서비스에 대하여 승인할지 여부를 서비스 제공자(160)에게 전달하고, 사용자 단말(150)에게 자신이 관리하는 리소스 서비스를 제공하는 등 리소스 서비스에 관련된 전반적인 작업들을 모두 수행한다.Next, the resource management module 124 takes charge of the overall processing of the resource service to be provided to the user. For example, when the service provider 160 requests registration of the resource service, the resource management module 124 registers and manages information on the requested resource service in the resource service list to be provided to the user terminal 150. When the resource management module 124 receives the request for the specific resource service from the user terminal 150, the resource management module 124 transmits to the service provider 160 whether or not to approve the requested resource service, Such as providing a resource service to be managed by the service provider.

제안한 실시 예에 따른 프로세서(120)는 컨트롤러(controller), 마이크로(micro) 컨트롤러, 마이크로 프로세서(microprocessor), 마이크로 컴퓨터(microcomputer) 등으로도 호칭될 수 있다. 한편, 프로세서(120)는 하드웨어(hardware) 또는 펌웨어(firmware), 소프트웨어, 또는 이들 중 하나 이상의 결합에 의해 구현될 수 있다. 하드웨어를 이용하여 본 발명의 실시 예를 구현하는 경우에는, 본 발명을 수행하도록 구성된 ASICs(application specific integrated circuits) 또는 DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays) 등이 프로세서(120)에 구비될 수 있다. The processor 120 according to the exemplary embodiment may be referred to as a controller, a micro controller, a microprocessor, a microcomputer, or the like. Meanwhile, the processor 120 may be implemented by hardware or firmware, software, or a combination of one or more of the foregoing. (DSP), digital signal processing devices (DSPDs), programmable logic devices (PLDs), and the like may be used to implement embodiments of the present invention using hardware, , Field programmable gate arrays (FPGAs), and the like may be provided in the processor 120.

메모리(130)는 프로세서(120)에 연결되어 오퍼레이팅 시스템, 어플리케이션, 데이터, 프로그램 및 일반 파일(general files)들을 저장한다. The memory 130 is coupled to the processor 120 to store operating systems, applications, data, programs, and general files.

한편, 상술한 방법은, 컴퓨터에서 실행될 수 있는 프로그램으로 작성 가능하고, 컴퓨터 판독 가능 매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 또한, 상술한 방법에서 사용된 데이터의 구조는 컴퓨터 판독 가능 매체에 여러 수단을 통하여 기록될 수 있다. 본 발명의 다양한 방법들을 수행하기 위한 실행 가능한 컴퓨터 코드를 포함하는 저장 디바이스를 설명하기 위해 사용될 수 있는 프로그램 저장 디바이스들은, 반송파(carrier waves)나 신호들과 같이 일시적인 대상들은 포함하는 것으로 이해되지는 않아야 한다. 상기 컴퓨터 판독 가능 매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드 디스크 등), 광학적 판독 매체(예를 들면, 시디롬, DVD 등)와 같은 저장 매체를 포함할 수 있다.On the other hand, the above-described method can be implemented in a general-purpose digital computer that can be created as a program that can be executed in a computer and operates the program using a computer-readable medium. Further, the structure of the data used in the above-described method can be recorded on a computer-readable medium through various means. Program storage devices that may be used to describe a storage device including executable computer code for carrying out the various methods of the present invention should not be understood to include transient objects such as carrier waves or signals do. The computer-readable medium may comprise a storage medium such as a magnetic storage medium (e.g., ROM, floppy disk, hard disk, etc.), optical readable medium (e.g., CD ROM, DVD, etc.).

이상에서는 리소스 서비스에 접근하는 과정에서 자격 토큰을 이용하는 방식을 제안하였다. 또한, 자격 토큰 구조 자체에 대해 정의하였을 뿐 아니라 자격 토큰을 이용하기 위한 소유자 프라이버시 및 리소스 프라이버시에 대해서도 정의하여, 리소스 서비스를 제공하면서도 자격 토큰 소유자의 위치 및 데이터 저장 위치에 대해 보안이 유지될 수 있도록 하였다. 이러한 실시 예를 통해, 자격 토큰을 이용한 접속 시스템에서 발생할 수 있는 불필요한 정보 유출 및 프라이버시 침해 가능성을 최소화할 수 있다.In the above, a method of using the qualification token is proposed in the process of accessing the resource service. In addition to defining the qualification token structure itself, it is also possible to define owner privacy and resource privacy to use the qualification token so that the location of the qualification token owner and the data storage location can be secured while providing the resource service. Respectively. Through this embodiment, it is possible to minimize the possibility of unnecessary information leakage and privacy violation that may occur in the access system using the qualification token.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.It will be understood by those skilled in the art that the foregoing description of the present invention is for illustrative purposes only and that those of ordinary skill in the art can readily understand that various changes and modifications may be made without departing from the spirit or essential characteristics of the present invention. will be. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. For example, each component described as a single entity may be distributed and implemented, and components described as being distributed may also be implemented in a combined form.

본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is defined by the appended claims rather than the detailed description and all changes or modifications derived from the meaning and scope of the claims and their equivalents are to be construed as being included within the scope of the present invention do.

Claims (12)

사물인터넷(Internet of Things, IoT) 환경에서 네트워크 엔티티가 사용자 단말(User Equipment, UE)에 서비스를 제공하는 방법에 있어서,
상기 네트워크 엔티티에 기등록된 서비스를 제공받기 위한 자격 토큰 요청을 상기 UE로부터 수신하는 단계;
상기 UE에 상기 서비스를 제공하는 것이 승인되면, 상기 UE로 상기 서비스를 이용하기 위한 자격 토큰을 할당하는 단계;
상기 UE로부터 암호화된 서비스 정보를 포함하는 자격 토큰을 수신하는 단계;
상기 수신된 자격 토큰과 상기 할당한 자격 토큰을 비교하여, 상기 수신된 자격 토큰이 상기 서비스에 대해 유효한지 판단하는 단계; 및
상기 UE에 대하여 상기 서비스를 제공하는 단계를 포함하는, 서비스 제공 방법.
A method for providing a service to a user equipment (UE) in a network of Internet of Things (IoT) environment,
Receiving a qualification token request from the UE for receiving a service previously registered in the network entity;
Assigning a qualification token for using the service to the UE if the UE is authorized to provide the service;
Receiving a qualification token comprising encrypted service information from the UE;
Comparing the received qualification token with the assigned qualification token to determine whether the received qualification token is valid for the service; And
And providing the service to the UE.
제1항에 있어서,
상기 암호화된 서비스 정보는, 상기 UE의 인증 키를 이용하여 암호화되며, 상기 네트워크 엔티티는 상기 암호화된 서비스 정보를 복호화하여 상기 요청된 서비스를 식별하는 것인, 서비스 제공 방법.
The method according to claim 1,
Wherein the encrypted service information is encrypted using an authentication key of the UE, and the network entity decrypts the encrypted service information to identify the requested service.
제1항에 있어서,
상기 서비스 제공 방법은,
상기 UE로부터 상기 자격 토큰 요청이 수신되면, 상기 요청받은 서비스를 제공하는 서비스 제공자로 상기 UE에 상기 서비스를 제공할지 문의하는 단계를 더 포함하는 것인, 서비스 제공 방법.
The method according to claim 1,
The service providing method includes:
Further comprising the step of inquiring, by the service provider providing the requested service, whether to provide the service to the UE when the request for the qualification token is received from the UE.
제1항에 있어서,
상기 자격 토큰은 다른 UE에게 위임 또는 재위임될 수 있으며, 상기 자격 토큰이 재위임되는 경우 상기 UE의 식별 정보는 암호화되는 것인, 서비스 제공 방법.
The method according to claim 1,
Wherein the credential token can be delegated or re-delegated to another UE, and the identification information of the UE is encrypted when the qualification token is re-delegated.
제4항에 있어서,
상기 다른 UE는 상기 자격 토큰이 자신에게 위임된 것인지 재위임된 것인지 구별할 수 없는 것인, 서비스 제공 방법.
5. The method of claim 4,
Wherein the other UE can not distinguish whether the qualification token is delegated to itself or re-delegated.
제1항에 있어서,
상기 자격 토큰은 상기 자격 토큰의 유효 기간, 폐기여부, 암호화 알고리즘, 자격 토큰 ID, 위임자 토큰 번호, 재위임여부, 최대 위임 횟수 및 위임 최대 레벨 중 적어도 하나에 대한 정보를 포함하는 것인, 서비스 제공 방법.
The method according to claim 1,
Wherein the credential token comprises information about at least one of a validity period of the qualification token, a revocation date, a cryptographic algorithm, a qualification token ID, a delegator token number, a re-delegation status, a maximum delegation count and a delegation maximum level. Way.
사물인터넷(Internet of Things, IoT) 환경에서 사용자 단말(User Equipment, UE)에 서비스를 제공하는 네트워크 엔티티에 있어서,
송수신부;
토큰 관리 모듈; 및
리소스 관리 모듈을 포함하되,
상기 송수신부는 상기 네트워크 엔티티에 기등록된 서비스를 제공받기 위한 자격 토큰 요청을 상기 UE로부터 수신하고,
상기 토큰 관리 모듈은 상기 UE에 상기 서비스를 제공하는 것이 승인되면, 상기 UE로 상기 서비스를 이용하기 위한 자격 토큰을 할당하고,
상기 송수신부는 상기 UE로부터 암호화된 서비스 정보를 포함하는 자격 토큰을 수신하고,
상기 토큰 관리 모듈은 상기 수신된 자격 토큰과 상기 할당한 자격 토큰을 비교하여, 상기 수신된 자격 토큰이 상기 서비스에 대해 유효한지 판단하며,
상기 리소스 관리 모듈은 상기 UE에 대하여 상기 서비스를 제공하는 것인, 네트워크 엔티티.
A network entity for providing a service to a user equipment (UE) in an Internet of Things (IOT) environment,
A transmission / reception unit;
Token management module; And
A resource management module,
Wherein the transceiver receives a request for a qualification token for receiving a service previously registered in the network entity from the UE,
Wherein the token management module allocates a qualification token for using the service to the UE when the token management module is authorized to provide the service to the UE,
Wherein the transceiver receives a qualification token including encrypted service information from the UE,
Wherein the token management module compares the received qualification token with the assigned qualification token to determine whether the received qualification token is valid for the service,
Wherein the resource management module provides the service to the UE.
제7항에 있어서,
상기 암호화된 서비스 정보는, 상기 UE의 인증 키를 이용하여 암호화되며, 상기 네트워크 엔티티는 상기 암호화된 서비스 정보를 복호화하여 상기 요청된 서비스를 식별하는 것인, 네트워크 엔티티.
8. The method of claim 7,
Wherein the encrypted service information is encrypted using an authentication key of the UE and the network entity decrypts the encrypted service information to identify the requested service.
제7항에 있어서,
상기 리소스 관리 모듈은,
상기 송수신부가 상기 UE로부터 상기 자격 토큰 요청을 수신하면, 상기 요청받은 서비스를 제공하는 서비스 제공자로 상기 UE에 상기 서비스를 제공할지 문의하는 것인, 네트워크 엔티티.
8. The method of claim 7,
The resource management module includes:
Wherein when the transmitter / receiver receives the request for the qualification token from the UE, the network entity inquires of the service provider providing the requested service whether to provide the service to the UE.
제7항에 있어서,
상기 자격 토큰은 다른 UE에게 위임 또는 재위임될 수 있으며, 상기 자격 토큰이 재위임되는 경우 상기 UE의 식별 정보는 암호화되는 것인, 네트워크 엔티티.
8. The method of claim 7,
Wherein the credential token can be delegated or re-delegated to another UE, and the identity of the UE is encrypted when the credential token is re-delegated.
제10항에 있어서,
상기 다른 UE는 상기 자격 토큰이 자신에게 위임된 것인지 재위임된 것인지 구별할 수 없는 것인, 네트워크 엔티티.
11. The method of claim 10,
Wherein the other UE is unable to distinguish whether the qualification token is delegated to it or re-delegated.
제7항에 있어서,
상기 자격 토큰은 상기 자격 토큰의 유효 기간, 폐기여부, 암호화 알고리즘, 자격 토큰 ID, 위임자 토큰 번호, 재위임여부, 최대 위임 횟수 및 위임 최대 레벨 중 적어도 하나에 대한 정보를 포함하는 것인, 네트워크 엔티티.
8. The method of claim 7,
Wherein the credential token comprises information about at least one of a validity period of the qualification token, a revocation date, a cryptographic algorithm, a qualification token ID, a mandator token number, a re-delegation, a maximum number of delegations and a delegation maximum level. .
KR1020160142363A 2016-10-28 2016-10-28 The method and apparatus for providing service based on capability token in internet of things environment KR101912012B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160142363A KR101912012B1 (en) 2016-10-28 2016-10-28 The method and apparatus for providing service based on capability token in internet of things environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160142363A KR101912012B1 (en) 2016-10-28 2016-10-28 The method and apparatus for providing service based on capability token in internet of things environment

Publications (2)

Publication Number Publication Date
KR20180046777A true KR20180046777A (en) 2018-05-09
KR101912012B1 KR101912012B1 (en) 2018-10-25

Family

ID=62200829

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160142363A KR101912012B1 (en) 2016-10-28 2016-10-28 The method and apparatus for providing service based on capability token in internet of things environment

Country Status (1)

Country Link
KR (1) KR101912012B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102135727B1 (en) * 2019-01-16 2020-07-20 목포대학교산학협력단 Internet of things blockchain system using token and multi-phase authentication method usign the system
KR20210108193A (en) * 2020-02-25 2021-09-02 목포대학교산학협력단 Internet of things service access control system and method using smart contract based on tangle network

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101131184B1 (en) * 2005-12-26 2012-03-28 주식회사 케이티 System and method for providing Home-network service based on IP and path control system of the system
KR20150083013A (en) * 2014-01-08 2015-07-16 (주)매직에코 System for internet of things
KR20160000477A (en) * 2014-06-24 2016-01-05 경북대학교 산학협력단 Internet of things system having a user access control function based status of service device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101131184B1 (en) * 2005-12-26 2012-03-28 주식회사 케이티 System and method for providing Home-network service based on IP and path control system of the system
KR20150083013A (en) * 2014-01-08 2015-07-16 (주)매직에코 System for internet of things
KR20160000477A (en) * 2014-06-24 2016-01-05 경북대학교 산학협력단 Internet of things system having a user access control function based status of service device

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Kim, Jin-Bo, et al. "The Access Control Platform of the IoT Service Using the CapSG." 정보처리학회논문지/소프트웨어 및 데이터 공학 제4.9(2015):9. (2015.09.) *
논문:(1997) *
논문:(2015) *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102135727B1 (en) * 2019-01-16 2020-07-20 목포대학교산학협력단 Internet of things blockchain system using token and multi-phase authentication method usign the system
KR20210108193A (en) * 2020-02-25 2021-09-02 목포대학교산학협력단 Internet of things service access control system and method using smart contract based on tangle network

Also Published As

Publication number Publication date
KR101912012B1 (en) 2018-10-25

Similar Documents

Publication Publication Date Title
KR102571829B1 (en) Core Network Access Provider
US8059820B2 (en) Multi-factor content protection
US8424077B2 (en) Simplified management of authentication credentials for unattended applications
Kirkpatrick et al. Enforcing spatial constraints for mobile RBAC systems
US20120260094A1 (en) Digital rights managmenet using attribute-based encryption
KR20130085472A (en) Security system for cloud computing service
EP2689372A1 (en) User to user delegation service in a federated identity management environment
US11595398B1 (en) Access control for named domain networking
KR101873991B1 (en) Method of delegating access right between IoT devices
KR20210130840A (en) A method of data transfer, a method of controlling use of data and a cryptographic device
KR101626723B1 (en) Service gateway using internet of things and operating method of the same
KR100823279B1 (en) Method for generating rights object by authority recommitment
KR101912012B1 (en) The method and apparatus for providing service based on capability token in internet of things environment
KR20090054774A (en) Method of integrated security management in distribution network
Brock et al. Toward a framework for cloud security
CN116601916A (en) Attribute-based encryption key as keying material for key hash message authentication code user authentication and authorization
JP6595959B2 (en) Privacy authentication system, privacy authentication method, and privacy authentication program
Hwang et al. Agent-based delegation model for the secure web service in ubiquitous computing environments
Yeluri et al. Identity management and control for clouds
KR100864367B1 (en) Method for providing safety of web service in ubiquitous circumstance
Khan et al. A smartcard-based framework for delegation management in healthcare Access Control systems
Bertino et al. Standards for web services security
Nordbotten Cross-domain access control in a military SOA
Li A Capability-based System to Enforce Context-aware Permission Sequence
Kim et al. A Delegation Model based on Agent in Distributed Systems

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right