KR20110012085A - Charging system and method using public key infrastructure based and protocol - Google Patents

Charging system and method using public key infrastructure based and protocol Download PDF

Info

Publication number
KR20110012085A
KR20110012085A KR1020090069639A KR20090069639A KR20110012085A KR 20110012085 A KR20110012085 A KR 20110012085A KR 1020090069639 A KR1020090069639 A KR 1020090069639A KR 20090069639 A KR20090069639 A KR 20090069639A KR 20110012085 A KR20110012085 A KR 20110012085A
Authority
KR
South Korea
Prior art keywords
user terminal
server
terminal device
contract
micro
Prior art date
Application number
KR1020090069639A
Other languages
Korean (ko)
Other versions
KR101063354B1 (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 KR1020090069639A priority Critical patent/KR101063354B1/en
Publication of KR20110012085A publication Critical patent/KR20110012085A/en
Application granted granted Critical
Publication of KR101063354B1 publication Critical patent/KR101063354B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/14Payment architectures specially adapted for billing systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/02Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/14Charging, metering or billing arrangements for data wireline or wireless communications
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy

Abstract

PURPOSE: A billing system using a public key-based protocol and a method thereof are provided to use mandated server entrusted with the charging about a user terminal, thereby reducing overhead due to a charging operation in the user terminal. CONSTITUTION: A cloud computing server(100) generates the first micro contract about the charging requested resources. A user terminal device(200) receives the first micro contract and generates and encodes the second micro contract about the charging of the requested resources. An entrusted server transmits a resource allocation signal to the cloud computing server. A notarization server(600) decodes the first micro contract and the second micro contract. The authentication server verifies a charging of the resource provided from the cloud computing server and the charging about the resource used at a user terminal.

Description

공개 키 기반의 프로토콜을 이용한 과금 시스템 및 그 방법 {Charging System and method using Public Key Infrastructure based and protocol}Charging system and method using public key based protocol {Charging System and method using Public Key Infrastructure based and protocol}

본 발명은 공개 키 기반의 프로토콜을 이용한 과금 시스템 및 그 방법에 관한 것으로, 보다 상세하게는, 위임 서버를 통해 과금 연산을 수행하고 공증 서버를 통해 자원에 대한 과금을 검증하여 부인을 방지할 수 있는 공개 키 기반의 프로토콜을 이용한 과금 시스템 및 그 방법에 관한 것이다. The present invention relates to a billing system and a method using a public key based protocol, and more particularly, to perform billing operation through a delegation server and to verify the billing of resources through a notary server to prevent denial A charging system using a public key based protocol and a method thereof are provided.

클라우드 컴퓨팅(Cloud Computing)이란, 인터넷 기반(클라우드)의 컴퓨팅(computing) 기술을 의미한다. 클라우드 컴퓨팅은 컴퓨터 네트워크 구성도에서 인터넷을 구름으로 표현하는 것으로, 숨겨진 복잡한 인프라 구조를 가지며 IT 관련된 기능들이 서비스 형태로 제공되는 컴퓨팅 스타일을 갖는다. 사용자들은 인터넷을 이용하여 클라우드 컴퓨팅으로부터 제공되는 서비스를 이용할 수 있다.Cloud computing means cloud computing technology based on the Internet. Cloud computing represents the Internet as a cloud in a computer network diagram. It has a hidden complex infrastructure and a computing style in which IT-related functions are provided in the form of services. Users can use services provided from cloud computing using the Internet.

도 1은 종래 기술에 따른 클라우드 컴퓨팅 환경의 과금 시스템을 나타내는 도면이다. 도 1을 참조하면, 과금 시스템은 클라우드 컴퓨팅 서버(10), 유저 단말 장치(20)를 포함하는 것으로, 이들은 인터넷(30)에 의해 연결되어 있다.1 is a diagram illustrating a charging system of a cloud computing environment according to the prior art. Referring to FIG. 1, the charging system includes a cloud computing server 10 and a user terminal device 20, which are connected by the Internet 30.

유저 단말장치(20)가 클라우드 컴퓨팅 서버(10)에 필요한 자원(Source)을 요청하면, 클라우드 컴퓨팅 서버(10)는 요청에 따라 해당 자원을 유저 단말장치(20)로 전송하는 시스템이다. 이 과정에서, 클라우드 컴퓨팅 서버(10)는 자원을 전송하고, 이에 대한 요금을 결정하여 유저 단말장치(20)에 과금한다. 이 같은 구조의 클라우드 컴퓨팅 기반의 과금 방법은 클라우드 컴퓨팅 서버(10)에서 요금을 결정하여 유저 단말장치(20)에 통보하는 것으로, 일방적인 과금 통보 구조로 이루어진다. 따라서, 유저 단말장치(20)에 의한 전자 서명이나 부인 방지 등의 기능이 제공되지 않으므로 사용자는 유저 단말장치(20)를 이용하여 사용한 자원에 대해서 확인하기 어려워 부당한 요금이 결정되더라도 수용할 수 밖에 없었다. When the user terminal device 20 requests a resource required for the cloud computing server 10, the cloud computing server 10 is a system for transmitting the corresponding resource to the user terminal device 20 according to the request. In this process, the cloud computing server 10 transmits a resource, determines a fee thereof, and charges the user terminal device 20. In the cloud computing-based charging method having such a structure, the cloud computing server 10 determines a fee and notifies the user terminal device 20, and has a unilateral billing notification structure. Therefore, since a function such as electronic signature or non-repudiation by the user terminal device 20 is not provided, it is difficult for a user to check the resource used by the user terminal device 20, and even if an unfair rate is determined, the user has no choice but to accept it. .

도 1에 도시된 클라우드 컴퓨팅 환경에서 과금에 따른 문제점을 해결하기 위하여 공개 키 기반(PKI:Public Key Infrastructure)에 의한 과금 시스템이 제안되었다. In order to solve the problem of charging in the cloud computing environment illustrated in FIG. 1, a charging system based on a public key infrastructure (PKI) has been proposed.

도 2는 종래 기술에 따른 공개 키 기반으로 한 클라우드 컴퓨팅 환경의 과금 시스템을 나타내는 도면이다. 도 2를 참조하면, 클라우드 컴퓨팅 환경의 과금 시스템은 클라우드 컴퓨팅 서버(10), 유저 단말장치(20), LDAP(Lightweight Directory Access Protocol) 디렉토리 서버(40) 및 인증 서버(50)를 포함하며, 이들은 인터넷(30)을 통해 연결된다. 2 is a diagram illustrating a charging system of a cloud computing environment based on a public key according to the prior art. Referring to FIG. 2, the billing system of a cloud computing environment includes a cloud computing server 10, a user terminal 20, a Lightweight Directory Access Protocol (LDAP) directory server 40, and an authentication server 50. The connection is via the Internet 30.

도 2에 도시된 클라우드 컴퓨팅 환경은 도 1과는 달리, LDAP 디렉토리 서 버(40) 및 인증 서버(50)를 이용하여 인증 과정을 거치게 된다. 이 경우, LDAP 디렉토리 서버(40)는 클라우드 컴퓨팅 서버(10) 및 유저 단말장치(20)에 대한 인증서를 저장하고 있다. 그리고, 인증 서버(50)는 인증 인프라 내부에 있는 클라우드 컴퓨팅 서버(10) 및 유저 단말장치(20)의 인증서 생성 및 관리를 담당한다. Unlike in FIG. 1, the cloud computing environment illustrated in FIG. 2 undergoes an authentication process using an LDAP directory server 40 and an authentication server 50. In this case, the LDAP directory server 40 stores the certificates for the cloud computing server 10 and the user terminal device 20. The authentication server 50 is responsible for generating and managing certificates of the cloud computing server 10 and the user terminal device 20 in the authentication infrastructure.

구체적으로, 유저 단말장치(20)가 소정의 자원을 요청하기 위한 자원 요청 신호를 클라우드 컴퓨팅 서버(10)에 전송하면, 클라우드 컴퓨팅 서버(10)는 유저 단말장치(20)의 인증서를 LDAP 디렉토리 서버(40)에 요청하여 수신한다. 이 과정에서 클라우드 컴퓨팅 서버(10)는 유저 단말장치(20)가 요청한 자원을 유저 단말장치(20)에 할당하고, 개인키와 RSA 알고리즘 연산을 이용한 전자 서명을 생성하여 유저 단말장치(30)에 전송한다. Specifically, when the user terminal device 20 transmits a resource request signal for requesting a predetermined resource to the cloud computing server 10, the cloud computing server 10 transmits a certificate of the user terminal device 20 to the LDAP directory server. Request and receive 40. In this process, the cloud computing server 10 allocates the resource requested by the user terminal device 20 to the user terminal device 20, generates a digital signature using a private key and an RSA algorithm operation, and then sends it to the user terminal device 30. send.

유저 단말장치(20)를 사용하는 유저는 클라우드 컴퓨팅 서버(10)의 공개키를 이용하여 수신된 전자 서명에 대한 무결성을 확인하고, 클라우드 컴퓨팅 서버(10)로부터 제공받은 자원에 대한 사용 기록을 확인할 수 있다. 확인 결과, 사용 기록이 정확한 경우에는 유저 단말장치(20)의 개인키를 이용하여 사용 기록 확인에 대한 전자 서명을 생성하여 클라우드 컴퓨팅 서버(10)에 전송하고, 이 과정에 의해 클라우드 컴퓨팅 서버(10)는 과금하게 된다. 이 같은 과정은 유저가 유저 단말장치(20)를 통해 직접 사용 기록을 확인하여야 하는 것으로 사용자 편의성이 저하된다. A user using the user terminal device 20 verifies the integrity of the received electronic signature using the public key of the cloud computing server 10, and confirms the usage record of the resource provided from the cloud computing server 10. Can be. As a result of the check, if the usage record is correct, a digital signature for confirming the usage record is generated using the private key of the user terminal device 20 and transmitted to the cloud computing server 10, and by this process, the cloud computing server 10 ) Is charged. In this process, the user should check the usage record directly through the user terminal device 20, thereby reducing user convenience.

또한, RSA 알고리즘 연산은 인터넷 암호화 및 인증시스템으로 두 개의 140자 리 이상의 수인 소수를 이용하고, 이 수들의 곱 및 추가 연산을 통하여 공개키 및 개인키를 구성하고, 인터넷에서 사용하는 정보를 암호화하고 복호화할 수 있다. 유저 단말장치(20)가 이 같은 RSA 알고리즘 연산을 이용한 전자 서명을 확인하기 위해서는 RSA 알고리즘 연산을 수행할 수 있을 정도의 고속 프로세서를 내장하고 있어야 한다. 그러나, 클라우드 컴퓨팅 서버(10)를 이용하는 다수의 유저 단말장치가 모두 고속 프로세서를 내장하고 있지 않으므로, RSA 알고리즘 연산을 수행하는데 있어서 오류가 발생할 수 있다. In addition, the RSA algorithm operation is an internet encryption and authentication system that uses a decimal number of two or more 140 digits, constructs a public key and a private key by multiplying these numbers and adds an operation, and encrypts information used on the Internet. Can be decrypted In order to verify the electronic signature using the RSA algorithm operation, the user terminal device 20 should have a high-speed processor capable of performing the RSA algorithm operation. However, since a plurality of user terminal devices using the cloud computing server 10 do not all have a built-in high-speed processor, an error may occur in performing an RSA algorithm operation.

그리고, 클라우드 컴퓨팅 서버(10) 역시 다수의 유저 단말장치 각각에 대한 전자 서명을 생성해야 하므로, 과금 연산 및 에 따른 오버헤드가 발생하게 된다는 문제점이 있다.In addition, since the cloud computing server 10 also needs to generate an electronic signature for each of the plurality of user terminal devices, there is a problem in that an overhead occurs due to the billing operation and.

본 발명은 상술한 문제점을 해결하기 위한 것으로, 본 발명의 목적은, 유저 단말장치에 대한 과금을 위임받은 위임 서버를 이용함으로써 유저 단말장치에서의 과금 연산으로 인한 오버헤드를 감소시킬 수 있으며, 과금을 검증하기 위한 공증 서버를 이용하여 클라우드 컴퓨팅 서버와 유저 단말장치 간의 자원 사용에 대한 과금을 검증함으로써 과금에 대한 부인을 방지할 수 있는 공개 키 기반의 프로토콜을 이용한 과금 시스템 및 그 방법에 관한 것이다. SUMMARY OF THE INVENTION The present invention has been made to solve the above-described problems, and an object of the present invention is to reduce the overhead caused by the billing operation in the user terminal device by using a delegation server delegated to the user terminal device. The present invention relates to a billing system and a method using a public key-based protocol that can prevent denial of billing by verifying billing for resource usage between a cloud computing server and a user terminal device using a notary server for verifying the billing.

이상과 같은 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 공개 키 기반의 프로토콜을 이용한 과금 시스템은, 복수의 자원을 구비하며, 외부로부터 자원 요청이 있을 경우 요청된 자원의 과금에 대한 제1 마이크로 계약서를 생성하는 클라우드 컴퓨팅 서버, 상기 클라우드 컴퓨팅 서버에 접속하여 자원을 요청하여 상기 제1 마이크로 계약서를 수신하고, 요청한 자원의 과금에 대한 제2 마이크로 계약서를 생성하여 암호화하는 유저 단말장치, 상기 유저 단말장치에서 사용한 자원에 대한 과금 연산을 위임받은 대행 인증서를 포함하며, 상기 유저 단말장치로부터 암호화된 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 수신하고 과금을 연산하여 상기 클라우드 컴퓨팅 서버에 자원 할당 신호를 전송하여 상기 유저 단말장치에 해당 자원을 할당하도록 하는 위임 서버 및 상기 위임 서버로부터 암호화된 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 전달받아 저장하고, 과금 검증 요청이 있을 경우 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 복호화하여 비교하고 상기 클라우드 컴퓨팅 서버에서 제공한 자원의 과금과, 상기 유저 단말장치에서 사용한 자원에 대한 과금을 검증하는 공증 서버를 포함한다. Billing system using a public key-based protocol according to an embodiment of the present invention for achieving the above object, has a plurality of resources, when there is a resource request from the outside for the first charge of the requested resource A cloud computing server generating a micro contract, a user terminal device accessing the cloud computing server to request a resource to receive the first micro contract, and generating and encrypting a second micro contract for billing of the requested resource, the user A proxy certificate delegated to charge operation for resources used in the terminal device, and receives the encrypted first micro contract and the second micro contract from the user terminal device and calculates billing to allocate resources to the cloud computing server Resource transmitted to the user terminal device by sending a signal Receive and store the encrypted first micro contract and the second micro contract from the delegation server and the delegation server to allocate, and compare and decode the first micro contract and the second micro contract when a charge verification request is received. And a notary server for verifying billing of resources provided by the cloud computing server and billing of resources used by the user terminal device.

한편, 상기 유저 단말장치는 상기 유저 단말장치와 상기 위임 서버만 인식할 수 있는 제1 공유키와, 상기 유저 단말장치와 상기 공증 서버만 인식할 수 있는 제2 공유키를 이용하여 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 암호화하는 것을 특징으로 한다. On the other hand, the user terminal device using the first shared key that can recognize only the user terminal device and the delegate server, and the second shared key that can recognize only the user terminal device and the notarization server, the first micro And encrypting the contract and the second micro contract.

이 경우, 상기 제1 마이크로 계약서는 상기 제1 마이크로 계약서의 일련 번호를 나타내는 제1 필드, 상기 제1 마이크로 계약서의 일련 번호, 상기 유저 단말장치에 할당한 자원 및 상기 클라우드 컴퓨팅 서버에서 생성된 무작위 데이터에 대한 해시(Hash) 값을 나타내는 제2 필드 및 상기 제1 마이크로 계약서의 일련 번호 및 상기 유저 단말장치에 할당한 자원에 대한 해시 값을 상기 클라우드 컴퓨팅 서버와 상기 공증 서버만이 인식할 수 있는 제3 공유키(KNotary , Cloud)로 암호화된 값을 나타내는 제3 필드로 이루어질 수 있다. In this case, the first micro contract may include a first field indicating a serial number of the first micro contract, a serial number of the first micro contract, resources allocated to the user terminal device, and random data generated by the cloud computing server. A second field indicating a hash value for the second field, a serial number of the first microcontract, and a hash value of a resource allocated to the user terminal device, which can be recognized only by the cloud computing server and the notary server. 3 may be a third field indicating a value encrypted with a shared key (K Notary , Cloud ).

또한, 상기 제2 마이크로 계약서는 상기 제2 마이크로 계약서의 일련 번호를 나타내는 제1 필드, 상기 제2 마이크로 계약서의 일련 번호, 상기 유저 단말장치가 할당받은 자원 및 상기 유저 단말장치에서 생성된 무작위 데이터에 대한 해 시(Hash) 값을 나타내는 제2 필드 및 상기 제2 마이크로 계약서의 일련 번호 및 상기 유저 단말장치가 할당받은 자원에 대한 해시 값을 나타내는 제3 필드로 이루어질 수 있다. The second micro contract may include a first field indicating a serial number of the second micro contract, a serial number of the second micro contract, resources allocated by the user terminal device, and random data generated by the user terminal device. And a second field indicating a hash value for the second and a third field indicating a hash value of a resource allocated by the user terminal device and a serial number of the second micro contract.

한편, 상기 공증 서버는 상기 검증 요청이 있을 경우 상기 위임 서버와 상기 공증 서버만 인식할 수 있는 제4 공유키를 이용하여 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 복호화할 수 있다. Meanwhile, when the verification request is made, the notary server may decrypt the first micro contract and the second micro contract using a fourth shared key that can be recognized only by the delegation server and the notary server.

또한, 상기 공증 서버는, 상기 검증 요청이 있을 경우, 상기 유저 단말장치에 할당한 것으로 예측되는 제1 예측 할당 자원 및 제1 무작위 데이터를 상기 클라우드 컴퓨팅 서버로부터 수신하고, 상기 클라우드 컴퓨팅 서버로부터 할당받은 것으로 예측되는 제2 예측 할당 자원 및 제2 무작위 데이터를 상기 유저 단말장치로부터 수신하여, 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서 각각에 포함된 상기 제2 필드 값과 비교하고 일치 여부를 확인하여 과금을 검증할 수 있다. When the verification request is received, the notary server receives the first prediction allocation resource and the first random data, which are predicted to be allocated to the user terminal device, from the cloud computing server and is allocated from the cloud computing server. Receiving a second prediction allocation resource and second random data predicted to be from the user terminal device, comparing the second field value included in each of the first micro contract and the second micro contract, You can verify the charge.

본 과금 시스템에서 상기 유저 단말장치는 상기 클라우드 컴퓨팅 서버, 상기 위임 서버 및 상기 공증 서버와 상호 인증된 상태일 수 있다. In the charging system, the user terminal device may be in a state of mutual authentication with the cloud computing server, the delegation server, and the notary server.

한편, 클라우드 컴퓨팅 서버에 자원을 요청하여 할당받는 유저 단말장치와, 상기 유저 단말장치의 자원 사용에 따른 과금 연산을 위임받은 위임 서버 및 상기 클라우드 컴퓨팅 서버에서 제공한 자원의 과금과, 상기 유저 단말장치에서 사용한 자원에 대한 과금을 검증하는 공증 서버를 포함하는 과금 시스템의 공개 키 기반의 프로토콜을 이용한 과금 검증 방법은 상기 유저 단말장치가 클라우드 컴퓨팅 서버에 필요한 자원을 요청하는 제1 단계, 상기 클라우드 컴퓨팅 서버가 상기 유저 단말장치로부터 요청된 상기 자원의 과금에 대한 제1 마이크로 계약서를 생성하여 상기 유저 단말장치에 전송하는 제2 단계, 상기 유저 단말장치가 상기 요청한 자원의 과금에 대한 제2 마이크로 계약서를 생성하여, 상기 클라우드 컴퓨팅 서버로부터 수신된 제1 마이크로 계약서와 함께 암호화한 후 상기 위임 서버에 전송하는 제3 단계, 상기 위임 서버가 상기 유저 단말장치로부터 암호화된 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 수신하여 과금을 연산하고, 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 상기 공증 서버에 전송하는 제4 단계 및 상기 공증 서버가 상기 위임 서버로부터 암호화된 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 전달받아 저장하고, 검증 요청이 있을 경우 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 복호화하고 비교하여 과금을 검증하는 제5 단계를 포함한다. On the other hand, the user terminal device that is assigned to request a resource to the cloud computing server, the delegate server delegated the billing operation according to the resource usage of the user terminal device and the charge of the resources provided by the cloud computing server, and the user terminal device In the billing verification method using a public key-based protocol of a billing system including a notary server verifying billing for a resource used in the first step, the user terminal requests a resource required for a cloud computing server, the cloud computing server Generating a first micro contract for the charging of the resource requested from the user terminal device and transmitting the first micro contract to the user terminal device, wherein the user terminal generates a second micro contract for the charging of the requested resource; A first microphone received from the cloud computing server A third step of encrypting the contract together with the contract and transmitting the encrypted data to the delegation server, wherein the delegation server receives the encrypted first micro contract and the second micro contract from the user terminal device to calculate billing, A fourth step of transmitting a micro contract and the second micro contract to the notary server, and the notary server receives and stores the encrypted first micro contract and the second micro contract from the delegation server, and there is a request for verification. And a fifth step of verifying billing by decrypting and comparing the first micro contract and the second micro contract.

이 경우, 상기 제1 단계는 상기 유저 단말장치가 클라우드 컴퓨팅 서버에 필요한 자원을 요청하면, 상기 유저 단말장치의 과금 연산을 위임받은 위임 서버의 유무 및 상기 유저 단말장치와 상기 클라우드 컴퓨팅 서버 간의 상호 인증 여부를 확인하는 제1 과정, 상기 과금 연산을 위임받은 위임 서버가 존재하지 않으면 일 위임 서버로부터 공개키 및 개인키를 수신하고, 상기 공개키를 상기 유저 단말장치의 개인키로 서명하여 대행 인증서를 생성한 후 상기 위임 서버에 전송하여 과금 연산을 위임시키는 제2 과정 및, 상기 유저 단말장치와 상기 클라우드 컴퓨팅 서버 간의 상호 인증이 되어 있지 않으면 상기 클라우드 컴퓨팅 서버로부터 인증 캡슐을 수신하고, 상기 유저 단말장치와 상기 위임 서버 간의 제1 공유키, 상기 유저 단말장치와 상기 공증 서버 간의 제2 공유키 및 상기 유저 단말장치와 상기 클라우드 컴퓨팅 서버 간의 제3 공유키를 분배하여 상호 인증하는 제3 과정을 포함할 수 있다. In this case, in the first step, when the user terminal device requests a resource necessary for the cloud computing server, the presence or absence of a delegation server delegated the charging operation of the user terminal device and mutual authentication between the user terminal device and the cloud computing server. In a first step of checking whether or not a delegation server delegated the billing operation does not exist, a public key and a private key are received from a delegation server, and the proxy key is generated by signing the public key with the private key of the user terminal device. And a second process of delegating a billing operation by transmitting to the delegation server and receiving an authentication capsule from the cloud computing server if mutual authentication between the user terminal device and the cloud computing server is not performed. First shared key between the delegate server, the user terminal device and the notarization It is possible to include a third step of the mutual authentication to divide the second shared key, and the user terminal device and the cloud computing a third key shared between the server between.

한편, 상기 제3 단계는 상기 유저 단말장치와 상기 위임 서버 간의 제1 공유키와, 상기 유저 단말장치와 상기 공증 서버 간의 제2 공유키를 이용하여 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 암호화할 수 있다. On the other hand, in the third step, the first micro contract and the second micro contract are signed using a first shared key between the user terminal and the delegation server and a second shared key between the user terminal and the notary server. It can be encrypted.

이 경우, 상기 제1 마이크로 계약서는 상기 제1 마이크로 계약서의 일련 번호를 나타내는 제1 필드, 상기 제1 마이크로 계약서의 일련 번호, 상기 유저 단말장치에 할당한 자원 및 상기 클라우드 컴퓨팅 서버에서 생성된 무작위 데이터에 대한 해시(Hash) 값을 나타내는 제2 필드 및 상기 제1 마이크로 계약서의 일련 번호 및 상기 유저 단말장치에 할당한 자원에 대한 해시 값을 나타내는 제3 필드로 이루어진 것일 수 있다. In this case, the first micro contract may include a first field indicating a serial number of the first micro contract, a serial number of the first micro contract, resources allocated to the user terminal device, and random data generated by the cloud computing server. And a second field indicating a hash value for and a third field indicating a hash value for a resource allocated to the user terminal device and a serial number of the first micro contract.

또한, 상기 제2 마이크로 계약서는 상기 제2 마이크로 계약서의 일련 번호를 나타내는 제1 필드, 상기 제2 마이크로 계약서의 일련 번호, 상기 유저 단말장치가 할당받은 자원 및 상기 유저 단말장치에서 생성된 무작위 데이터에 대한 해시(Hash) 값을 나타내는 제2 필드 및, 상기 제2 마이크로 계약서의 일련 번호 및 상기 유저 단말장치가 할당받은 자원에 대한 해시 값을 나타내는 제3 필드로 이루진 것일 수 있다. The second micro contract may include a first field indicating a serial number of the second micro contract, a serial number of the second micro contract, resources allocated by the user terminal device, and random data generated by the user terminal device. And a second field indicating a hash value for the second field, and a third field indicating a hash value of a resource allocated by the user terminal device and a serial number of the second micro contract.

한편, 상기 제5 단계는 상기 검증 요청이 있을 경우 상기 위임 서버와 상기 공증 서버 간의 제4 공유키를 이용하여 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 복호화할 수 있다. Meanwhile, in the fifth step, when the verification request is made, the first micro contract and the second micro contract may be decrypted using a fourth shared key between the delegation server and the notary server.

또한, 상기 제5 단계는 상기 검증 요청이 있을 경우 상기 유저 단말장치에 할당한 것으로 예측되는 제1 예측 할당 자원 및 제1 무작위 데이터를 상기 클라우드 컴퓨팅 서버로부터 수신하고, 상기 클라우드 컴퓨팅 서버로부터 할당받은 것으로 예측되는 제2 예측 할당 자원 및 제2 무작위 데이터를 상기 유저 단말장치로부터 수신하여, 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서 각각에 포함된 상기 제2 필드 값과 비교하고 일치 여부를 확인하여 과금을 검증할 수 있다.In the fifth step, when the verification request is received, the cloud computing server receives the first prediction allocation resource and the first random data, which are predicted to be allocated to the user terminal device, and is allocated from the cloud computing server. Receiving the predicted second prediction allocation resource and the second random data from the user terminal device, compares with the value of the second field included in each of the first micro contract and the second micro contract, and confirms whether there is a coincidence Can be verified.

본 발명에 따르면, 유저 단말장치가 클라우드 컴퓨팅 서버를 이용하여 필요한 자원을 제공받는 클라우드 컴퓨팅 환경에서, 유저 단말장치에 대한 과금을 위임받은 위임 서버를 이용함으로써 유저 단말장치는 RSA 알고리즘 연산을 수행할 필요가 없게 되어 오버헤드 발생이 감소되며 고속 프로세서를 내장할 필요가 없게 되어 사양 부담이 감소할 수 있다.According to the present invention, in a cloud computing environment in which a user terminal device is provided with a necessary resource by using a cloud computing server, the user terminal device needs to perform an RSA algorithm operation by using a delegation server that is charged for the user terminal device. This reduces overhead by eliminating the need for an onboard high-speed processor, reducing the specification burden.

또한, 클라우드 컴퓨팅 서버에서 생성된 제1 마이크로 계약서와 유저 단말장치에서 생성된 제2 마이크로 계약서를 공증 서버에 저장해둠으로써, 클라우드 컴퓨팅 서버에서 제공한 자원의 과금과, 상기 유저 단말장치에서 사용한 자원에 대한 과금을 검증하여 과금에 따른 부인을 방지할 수 있게 된다. In addition, by storing the first micro-contract generated by the cloud computing server and the second micro-contract generated by the user terminal device in the notary server, the billing of resources provided by the cloud computing server and the resources used by the user terminal device are stored. It is possible to prevent the chargeback denial by verifying the chargeback.

이하에서는 첨부된 도면을 참조하여 본 발명을 보다 자세하게 설명한다. Hereinafter, with reference to the accompanying drawings will be described in detail the present invention.

도 3은 본 발명의 일 실시 예에 따른 공개 키 기반의 프로토콜을 이용한 과금 시스템을 나타내는 도면이다. 도 3을 참조하면, 과금 결제 시스템은 클라우드 컴퓨팅 서버(100), 유저 단말장치(200), LDAP 디렉토리 서버(300), 인증 서버(400), 위임 서버(500), 공증 서버(600) 및 인터넷망(700)을 포함한다. 3 is a diagram illustrating a charging system using a public key based protocol according to an embodiment of the present invention. Referring to FIG. 3, the billing payment system includes a cloud computing server 100, a user terminal device 200, an LDAP directory server 300, an authentication server 400, a delegation server 500, a notary server 600, and the Internet. Network 700.

클라우드 컴퓨팅 서버(100)는 각종 프로그램이나 자료들 등과 같은 다양한 자원을 저장하고 있는 대형 컴퓨터로써, 인터넷망(700)을 통해 접속 가능한 외부 기기(예를 들어, PC 등)에 프로그램이나 자료 등을 제공하며, 프로그램이나 자료 제공에 따른 과금을 청구할 수 있다. The cloud computing server 100 is a large computer that stores various resources such as various programs and materials, and provides a program or data to an external device (for example, a PC, etc.) accessible through the Internet network 700. You may be charged for the program or data provided.

유저 단말장치(200)는 일반 개인이 사용하는 PC가 될 수 있으며, 연산 성능이 낮은 저속의 프로세서를 구비한 저가형 PC로 이루어질 수 있다. 도면 상에는 설명의 편의를 위하여 하나의 PC만을 도시하였으나, 다수의 PC가 인터넷망(700)을 통해 클라우드 컴퓨팅 서버(100)에 접속할 수 있다. The user terminal device 200 may be a PC used by a general person, and may be made of a low-cost PC having a low speed processor having low computational performance. Although only one PC is illustrated for convenience of description, a plurality of PCs may be connected to the cloud computing server 100 through the Internet network 700.

인증 서버(400)는 인증 인프라 내부에 있는 클라우드 컴퓨팅 서버(100) 및 유저 단말장치(200)의 인증서 관리 및 서명을 담당한다. 그리고, LDAP 디렉토리 서버(300)는 클라우드 컴퓨팅 서버(100) 및 유저 단말장치(200)에 대한 인증서를 저장하고 있으며, 클라우드 컴퓨팅 서버(100) 및 유저 단말장치(200)가 인증을 요구하면 그에 대응되는 인증서를 전송한다. The authentication server 400 is responsible for certificate management and signing of the cloud computing server 100 and the user terminal 200 in the authentication infrastructure. In addition, the LDAP directory server 300 stores a certificate for the cloud computing server 100 and the user terminal device 200, and if the cloud computing server 100 and the user device device 200 require authentication, the LDAP directory server 300 may respond to the request. Send the certificate.

한편, 위임 서버(500)는 유저 단말장치(200)의 과금 연산을 위임받아 유저 단말장치(200)에 대한 과금 연산을 대행하는 서버로, 유저 단말장치(200)로부터 수신한 대행 인증서를 포함한다. On the other hand, the delegation server 500 is a server that delegates the billing operation of the user terminal device 200 for the billing operation for the user terminal device 200, and includes a proxy certificate received from the user terminal device 200. .

공증 서버(600)는 클라우드 컴퓨팅 서버(100)가 유저 단말장치(200)에 할당한 자원의 과금과 유저 단말장치(200)가 클라우드 컴퓨팅 서버(100)로부터 할당받아 사용한 자원에 대한 과금을 검증한다. 따라서, 클라우드 컴퓨팅 서버(100) 또는 유저 단말장치(200)가 과금을 부인하여 과금 검증을 요청할 경우, 과금 검증을 거쳐 과금 사실을 증명할 수 있게 된다. The notary server 600 verifies the charging of resources allocated by the cloud computing server 100 to the user terminal device 200 and the charging of resources used by the user terminal device 200 allocated from the cloud computing server 100. . Therefore, when the cloud computing server 100 or the user terminal 200 requests the charge verification by denying the charge, it is possible to prove the charge fact through the charge verification.

도 3에 도시된 과금 시스템의 동작을 설명한다. The operation of the charging system shown in FIG. 3 will be described.

우선, 유저 단말장치(200)는 인터넷망(700)을 통해 클라우드 컴퓨팅 서버(100)에 접속하여 필요한 자원을 요청한다. 그리고, 유저 단말장치(200)는 자신의 과금 연산을 위임받은 위임 서버의 존재 유무와, 자신과 클라우드 컴퓨팅 서 버(100) 간의 상호 인증 여부를 확인한다. First, the user terminal device 200 accesses the cloud computing server 100 through the internet network 700 and requests necessary resources. In addition, the user terminal device 200 checks whether or not there is a delegation server delegated with its own billing operation, and whether the user and the cloud computing server 100 are mutually authenticated.

만약, 위임 서버가 존재하지 않거나, 클라우드 컴퓨팅 서버와 상호 인증되어 있지 않은 경우, 위임 서버를 등록하고 클라우드 컴퓨팅 서버와 상호 인증하기 위한 절차를 거쳐야 한다. 위임 서버의 등록 절차, 및 클라우드 컴퓨팅 서버와 유저 단말장치 간의 상호 인증에 대한 구체적인 방법은 후술한다. If the delegation server does not exist or is not mutually authenticated with the cloud computing server, a procedure for registering the delegation server and mutual authentication with the cloud computing server is required. The registration procedure of the delegation server and the specific method for mutual authentication between the cloud computing server and the user terminal will be described later.

한편, 위임 서버가 존재하거나 클라우드 컴퓨팅 서버와 상호 인증되어 있다면, 클라우드 컴퓨팅 서버(100)는 유저 단말장치(200)로부터 요청된 자원의 과금에 대한 제1 마이크로 계약서를 생성한다. 그리고, 이 제1 마이크로 계약서를 유저 단말장치(200)에 전송한다. Meanwhile, if the delegation server exists or is mutually authenticated with the cloud computing server, the cloud computing server 100 generates a first micro contract for the charging of the requested resource from the user terminal device 200. Then, the first micro contract is transmitted to the user terminal device 200.

유저 단말장치(200)는 제1 마이크로 계약서가 수신되면, 유저 단말장치(200)에서 사용한 자원의 과금에 대한 제2 마이크로 계약서를 생성한다. 그리고, 제1 마이크로 계약서와 제2 마이크로 계약서를 암호화시켜 위임 서버(500)에 전송한다. 이 경우, 제1 마이크로 계약서와 제2 마이크로 계약서의 암호화는 제1 및 제2 공유키를 이용하여 이루어질 수 있다. 제1 공유키는 유저 단말장치(200)와 위임 서버(500)만이 인식 가능한 것이며, 제2 공유키는 유저 단말장치(200)와 공증 서버(600)만이 인식 가능한 것이다. When the first micro contract is received, the user terminal device 200 generates a second micro contract for billing of resources used by the user terminal device 200. Then, the first micro contract and the second micro contract are encrypted and transmitted to the delegation server 500. In this case, encryption of the first micro contract and the second micro contract may be performed using the first and second shared keys. The first shared key can be recognized only by the user terminal device 200 and the delegate server 500, and the second shared key can be recognized only by the user terminal device 200 and the notary server 600.

유저 단말장치(200)는 암호화된 제1 마이크로 계약서와 제2 마이크로 계약서 를 위임 서버(500)에 전송한다. 위임 서버(600)는 암호화된 제1 마이크로 계약서와 제2 마이크로 계약서를 수신하여 과금을 연산하며, 클라우드 컴퓨팅 서버(100)에 자원 할당 신호를 전송하여 유저 단말장치(200)에 해당 자원을 할당하도록 한다. The user terminal device 200 transmits the encrypted first micro contract and the second micro contract to the delegation server 500. The delegation server 600 receives the encrypted first micro contract and the second micro contract and calculates billing, and transmits a resource allocation signal to the cloud computing server 100 to allocate the corresponding resources to the user terminal 200. do.

또한, 위임 서버(600)는 암호화된 제1 마이크로 계약서와 제2 마이크로 계약서를 공증 서버(600)에 전송한다. In addition, the delegation server 600 transmits the encrypted first micro contract and the second micro contract to the notary server 600.

공증 서버(600)는 암호화된 제1 마이크로 계약서와 제2 마이크로 계약서를 전달받아 저장한다. 그리고, 추후 클라우드 컴퓨팅 서버(100) 또는 유저 단말장치(200)로부터 과금 부인에 따른 과금 요청이 있을 경우, 제1 마이크로 계약서와 제2 마이크로 계약서를 복호화하여 비교함으로써 클라우드 컴퓨팅 서버(100)가 할당한 자원의 과금과, 유저 단말장치(200)가 할당받은 자원에 대한 과금을 검증할 수 있게 된다. The notary server 600 receives and stores the encrypted first micro contract and the second micro contract. If there is a charge request according to the charge denial from the cloud computing server 100 or the user terminal device 200, the cloud computing server 100 allocates the first micro contract and the second micro contract by decoding them. It is possible to verify the charging of the resource and the charging of the resource allocated by the user terminal device 200.

도 4는 본 발명의 일 실시 예에 따른 공개 키 기반의 프로토콜을 이용한 과금 방법을 설명하기 위한 흐름도이다. 도 4는 도 3에 도시된 공개 키 기반의 프로토콜을 이용한 과금 시스템의 과금 방법을 설명하기 위한 것이다. 도 4에 도시된 과금 방법을 설명함에 있어서, 특정 단계에 이용되는 프로토콜은 도 6 내지 도 8을 이용하여 설명한다. 이 경우, 도 6 내지 도 8에 표시된 각 기호들에 대한 설명은 도 5에 기재되어 있다.4 is a flowchart illustrating a charging method using a public key based protocol according to an embodiment of the present invention. FIG. 4 illustrates a charging method of a charging system using a public key based protocol shown in FIG. 3. In describing the charging method illustrated in FIG. 4, the protocol used for a specific step will be described with reference to FIGS. 6 to 8. In this case, description of each symbol shown in FIGS. 6 to 8 is described in FIG. 5.

우선, 유저 단말장치(200)가 인터넷망(700)을 통해 클라우드 컴퓨팅 서버(100)에 접속하여 소정의 자원 사용을 요청하면(710 단계), 유저 단말장치(200)는 자원 요청과 동시에, 과금 연산을 위임받은 위임 서버가 존재하는지를 확인한다(715 단계). 확인 결과, 위임 서버가 존재하지 않을 경우 유저 단말장치(200)는 과금 연산을 위임하기 위한 위임 서버(500)를 등록한다(720 단계). 이 경우, 위임 서버(500)의 등록은 도 6에 도시된 제1 프로토콜을 이용하여 이루어질 수 있다. First, when the user terminal device 200 accesses the cloud computing server 100 through the Internet network 700 and requests the use of a predetermined resource (step 710), the user terminal device 200 charges at the same time as the resource request. In operation 715, it is determined whether a delegation server delegated the operation exists. As a result of the check, if the delegation server does not exist, the user terminal device 200 registers the delegation server 500 for delegating the charging operation (step 720). In this case, registration of the delegation server 500 may be performed using the first protocol illustrated in FIG. 6.

도 6에 도시된 제1 프로토콜을 참조하면, 메시지 1-1에서와 같이 유저 단말장치(200)는 특정 기간 동안 과금 결제에 대한 공증을 요청하기 위해, 유저 단말장치(200)와 공증 서버(600)만이 인식할 수 있는 공유키(KNotary , User)를 생성하고(①), 위임 요청 메시지(Delegation-Request)를 생성한다(②). 그리고, 생성된 위임 요청 메시지(E{PUUser , Delegation, Delegation-Request})를 위임 서버(500)에 전송한다(③). Referring to the first protocol illustrated in FIG. 6, as shown in message 1-1, the user terminal 200 requests a notary for billing payment for a specific period of time, and the user terminal 200 and the notary server 600. ) Generates a shared key (K Notary , User ) that only the user can recognize (①), and generates a Delegation-Request (②). Then, the generated delegation request message E {PU User , Delegation , Delegation-Request} is transmitted to the delegation server 500 (③).

이후, 메시지 1-2에서와 같이, 위임 서버(500)는 복호화된 공유키(KUser , Delegation)와, 유저 단말장치(200)로부터 수신한 위임 요청 메시지(Delegation-Request) 내에 있는 공유키(KUser , Delegation)가 일치하면 유저 단말장치(200)의 인증 작업을 완료한다(①). Then, as shown in message 1-2, the delegation server 500 is a shared key (K User , Delegation ) and the shared key (Delegation-Request) received from the user terminal device 200 (Delegation-Request) If K User , Delegation ) matches, the authentication operation of the user terminal device 200 is completed (①).

위임 서버(500)는 유저 단말장치(200)의 과금 연산을 위임받기 위한 Key pair(PUUser,Delegation, PRUser , Delegation)를 생성한다(②). 그리고, 이 Key pair 중 유저 단말장치(200)로부터 서명을 받기 위한 공개키(PUUser , Delegation)를 위임 요청 메시지(Delegation Request) 내에 있는 공유키(KUser , Delegation)로 암호화한 후, 무작위 데이터(NonceUSER)와 함께 유저 단말장치(200)에 전송한다(③). The delegation server 500 generates a key pair (PU User, Delegation , PR User , Delegation ) for delegating the charging operation of the user terminal device 200 (②). Among the key pairs, the public key (PU User , Delegation ) for receiving a signature from the user terminal device 200 is encrypted with the shared key (K User , Delegation ) in the delegation request message , and then random data. (Nonce USER ) is transmitted to the user terminal 200 (③).

다음, 메시지 1-3에서와 같이, 유저 단말장치(200)는 위임 서버(500)로부터 수신한 메시지 1-2에서 무작위 데이터(NonceUser)를 이용하여 위임 서버(500)의 인증 작업을 완료한다(①). 그리고, 메시지 1-2에 포함된 공개키(PUUser , Delegation), 위임 기한 및 위임 권한과, 위임 서버(500)로부터 수신한 메시지 내에 있는 공개키(PUUser , Delegation)를 유저 단말장치(200)의 개인키(PRUser)를 이용하여 서명한 후, 대행 인증서(CRDelegation , User)를 생성한다(②). Next, as in message 1-3, the user terminal device 200 completes the authentication operation of the delegation server 500 by using random data (Nonce User ) in the message 1-2 received from the delegation server 500. (①). In addition, the user terminal device 200 includes the public key (PU User , Delegation ) included in the message 1-2, the delegation period and the delegation authority, and the public key (PU User , Delegation ) included in the message received from the delegation server 500. After signing using the private key (PR User ) of the (), and generates a proxy certificate (CR Delegation , User ) (②).

유저 단말장치(200)는 이 대행 인증서(CRDelegation , User)를 공유키(KUser , Delegation)로 암호화하여 위임 서버(500)로 전송한다(③). 이 같은 과정에 의해 위임 서버(500)는 위임 기간 동안 유저 단말장치(200)의 과금 연산에 대한 권한을 위임받을 수 있게 된다. The user terminal device 200 encrypts the proxy certificate (CR Delegation , User ) with the shared key (K User , Delegation ) and transmits it to the delegation server 500 (3). By this process, the delegation server 500 may be delegated authority for the billing operation of the user terminal device 200 during the delegation period.

한편, 메시지 1-4에서와 같이, 위임 서버(500)는 위임 요청 메시 지(Delegation-Request) 내에 있는 E{PUNotary , KNotary , User}와, 유저 단말장치(200)로부터 수신한 대행 인증서(CRDelegation , User)를 위임 서버(500)의 개인키(PRDelegation)로 서명한다(①). 그리고, 암호화된 메시지와 공유키(KDelegation , Notary), 대행 인증서(CRDelegation , User) 및 무작위 데이터(NonceNotary) 등을 공증 서버(600)의 공개키(PUNotary)로 암호화한다(②). 이렇게 생성된 메시지를 공증 서버(600)로 전송한다(③). On the other hand, as shown in message 1-4, the delegation server 500 is E {PU Notary , K Notary , User } in the Delegation-Request and the proxy certificate received from the user terminal device 200 Sign (CR Delegation , User ) with the private key (PR Delegation ) of the delegation server 500 (①). And encrypts the encrypted message and shared key (K Delegation, Notary), Acting certificate (CR Delegation, User), and random data (Nonce Notary), including a public key (PU Notary) the notary server (600) (②) . The generated message is transmitted to the notary server 600 (③).

이후, 메시지 1-5에서와 같이, 공증 서버(600)는 위임 서버(500)로부터 수신한 메시지 1-4를 개인키(PRNotary)을 이용하여 복호화한다(①). 그리고 복호화된 메시지를 위임 서버(500)의 공개키(PUDelegation)를 이용하여 복호화하고, 대행 인증서(CRDelegation , User)를 비교하여 위임 서버(500)에 대한 인증 작업을 완료한다(②). Thereafter, as in message 1-5, the notary server 600 decrypts the message 1-4 received from the delegation server 500 using the private key PR Notary (①). Then, the decrypted message is decrypted using the public key (PU Delegation ) of the delegation server 500, and the authentication operation for the delegation server 500 is completed by comparing the proxy certificate (CR Delegation , User ) (②).

또한, 위임 서버(500)로부터 수신한 대행 인증서(CRDelegation , User)를 이용하여 유저 단말장치(200)에 대한 인증 작업을 완료한다(③). 그리고, 공증 서버(600)는 개인키(PRNotary)를 이용하여 E{PUNotary, KNotary , User∥IDUser∥IDDelegation}를 복호화한 후, 유저 단말장치(200)에 시퀀스 넘버(Sequence Number)를 부여한다(④). 그리고, 시퀀스 넘버(Sequence Number) 및 무작위 데이터(NonceNotary)를 공개키(KDelegation , Notary)로 암호화한 후, 위임 서버(500)에 전송하여(⑤) 유저 단말장치(200)에 대한 과금 공증 서비스를 제공하기 위한 준비를 완료한다(⑥). In addition, by using the proxy certificate (CR Delegation , User ) received from the delegation server 500, the authentication operation for the user terminal device 200 is completed (③). The notary server 600 decrypts E {PU Notary , K Notary , User ∥ID User ∥ID Delegation } using a private key (PR Notary ), and then transmits a sequence number to the user terminal device 200. (④). Then, the sequence number and the random data (Nonce Notary ) are encrypted with the public key (K Delegation , Notary ), and then transmitted to the delegation server 500 (⑤) to charge the bill for the user terminal device 200. Complete preparation to provide the service (⑥).

한편, 도 6에 나타낸 제1 프로토콜을 이용하여 위임 서버의 등록이 완료되거나, 715 단계의 확인 결과 기 등록된 위임 서버가 존재할 경우, 유저 단말장치(200)는 클라우드 컴퓨팅 서버와 상호 인증되어 있는지를 확인한다(725 단계). On the other hand, if the registration of the delegation server is completed using the first protocol shown in FIG. 6, or if there is a pre-registered delegation server as a result of checking in step 715, whether the user terminal device 200 is mutually authenticated with the cloud computing server. Confirm (step 725).

만약, 확인 결과, 클라우드 컴퓨팅 서버와 상호 인증되어 있지 않을 경우 유저 단말장치(200)는 클라우드 컴퓨팅 서버와의 상호 인증 작업을 수행한다(730 단계).이 경우, 상호 인증 작업은 도 7에 도시된 제2 프로토콜을 이용하여 이루어질 수 있다. If, as a result of the check, the user terminal device 200 does not mutually authenticate with the cloud computing server, the user terminal device 200 performs mutual authentication with the cloud computing server (step 730). In this case, the mutual authentication work is illustrated in FIG. This can be done using a second protocol.

도 7에 도시된 제2 프로토콜을 참조하면, 메시지 2-1에서와 같이 클라우드 컴퓨팅 서버(100)는 유저 단말장치(200)와 클라우드 컴퓨팅 서버(100) 간의 상호 인증을 위해, 인증 캡슐(Authentication-Capsule)을 유저 단말장치(200)에 전송한다(①). Referring to the second protocol illustrated in FIG. 7, as in message 2-1, the cloud computing server 100 may use an authentication capsule (Authentication−) for mutual authentication between the user terminal device 200 and the cloud computing server 100. Capsule is transmitted to the user terminal device 200 (①).

이후, 메시지 2-2에서와 같이, 유저 단말장치(200)는 클라우드 컴퓨팅 서버(100)로부터 수신한 인증 캡슐(Authentication-Capsule)과, 유저 단말장치(200)의 아이디(IDUser) 및 세션-공유키(Session-KUser , Cloud)를 공유키(KNotary , User) 및 공유키(KUser , Delegation)로 암호화한다(①). 이렇게 암호화된 메시지를 유저 단말장치(200) 의 아이디(IDUser)와 함께 위임 서버(500)로 전송한다(②). Thereafter, as shown in message 2-2, the user terminal device 200 includes an authentication capsule received from the cloud computing server 100, an ID user and a session- of the user terminal device 200. Encrypt the shared key (Session-K User , Cloud ) with the shared key (K Notary , User ) and the shared key (K User , Delegation ) (①). The encrypted message is transmitted to the delegation server 500 together with the ID User of the user terminal device 200 (②).

다음, 메시지 2-3에서와 같이, 위임 서버(500)는 유저 단말장치(200)로부터 수신한 메시지 중 E{KNotary , User, Authentication-Capsule}을 개인키(PRUser , Delegation)로 암호화한다(①). 그리고, 클라우드 컴퓨팅 서버(100)의 아이디(IDCloud)와, 도 6의 메시지 1-5에 의해 생성되었던 시퀀스 넘버(SeqUser) 및 무작위 데이터(NonceNotary)와, '①'에서 생성된 내용을 공유키(KDelegation , Notary)로 암호화하고, 이를 공증 서버(600)에 전송한다(②). Next, as shown in message 2-3, the delegation server 500 encrypts E {K Notary , User , Authentication-Capsule} of the messages received from the user terminal device 200 with a private key (PR User , Delegation ). (①). Then, the cloud computing server 100 identity (ID Cloud) and a sequence number (Seq User) that was generated by the message 1-5 of Figure 6 and the random data (Nonce Notary) of, the information generated by the '①' Encrypt with a shared key (K Delegation , Notary ), and transmits it to the notary server 600 (②).

한편, 메시지 2-4에서와 같이, 공증 서버(600)는 위임 서버(500)로부터 수신한 메시지 2-4를 공유키(KDelegation , Notary)를 이용하여 복호화한다(①). 그리고, 복호화된 메시지를 클라우드 컴퓨팅 서버(100)의 아이디(IDCloud) 및 시퀀스 넘버(SeqUser)에 따라 분류하여 인증 캡슐(Authentication-Capsule)과 E{PRUser , Delegation , E{KNotary , User, Authentication-Capsule}}를 대행 인증서(CRUser , Delegation)에 저장되어 있는 공유키(PUUser , Delegation)로 복호화한다(②). 그리고, 공유키(KNotary , User)를 이용하여 E{KNotary,User, Authentication-Capsule}을 복호화한다(③). Meanwhile, as in message 2-4, the notary server 600 decrypts the message 2-4 received from the delegation server 500 using the shared key (K Delegation , Notary ) (①). Then, the ID of the decoded message, cloud server (100) (ID Cloud) and sequence number (Seq User) classification by authentication capsule (Authentication-Capsule) in accordance with the E {PR User, Delegation, E {K Notary, User , Authentication-Capsule}} is decrypted with the shared key (PU User , Delegation ) stored in the proxy certificate (CR User , Delegation ) (②). Then, E {K Notary, User , Authentication-Capsule} is decrypted using the shared key (K Notary , User ) (③).

또한, 복호화된 인증 캡슐(Authentication-Capsule)을 비교하여, 동일한 경 우에는 위임 서버(500)에 "허락(ACCEPT)" 메시지를 보내고, 상이한 경우에는 "거절(REJECT)" 메시지를 보낸다. "거절(REJECT)" 메시지를 보내는 경우, "거절(REJECT)" 메시지를 공증 서버(600)와 클라우드 컴퓨팅 서버(100) 간의 공유키(KCloud , Notary)를 공개키(PUCloud)로 암호화하고 무작위 데이터(NonceNotary)와 함께 위임 서버(500)에 전송한다(④). In addition, the decrypted authentication capsule (Authentication-Capsule) is compared, and in the same case, the "ACCEPT" message is sent to the delegation server 500, and "REJECT" message is sent if different. When sending a "REJECT" message, encrypt the "REJECT" message between the notary server 600 and the cloud computing server 100 by encrypting the shared key (K Cloud , Notary ) with the public key (PU Cloud ). The data is transmitted to the delegation server 500 together with the random data (Nonce Notary ) (④).

한편, 메시지 2-5에서와 같이, 위임 서버(500)는 세션-공유키(Session- KUser,Cloud), 공유키(KDelegation , Cloud), 인증 캡슐(Authentication-Capsule) 및 유저 단말장치(200)의 아이디(IDUser)를 공개키(PUCloud)와 공유키(KDelegation , Cloud)로 암호화하여 이와 함께 공증 서버(600)로부터 수신한 공유키(KCloud , Notary) 및 무작위 데이터(NonceNotary)를 클라우드 컴퓨팅 서버(100)에 전송한다(①). Meanwhile, as shown in message 2-5, the delegation server 500 includes a session-shared key (Session-K User, Cloud ), a shared key (K Delegation , Cloud ), an authentication capsule (Authentication-Capsule), and a user terminal device ( The ID (ID User ) of the 200 is encrypted with the public key (PU Cloud ) and the shared key (K Delegation , Cloud ), and the shared key (K Cloud , Notary ) and random data (Nonce) received from the notary server 600 together with it. Notary ) is transmitted to the cloud computing server 100 (①).

이후, 메시지 2-6에서와 같이, 클라우드 컴퓨팅 서버(100)는 위임 서버(500)로부터 수신한 메시지 2-5를 복호화하여 인증 캡슐(Authentication-Capsule)을 확인하고, 무작위 데이터(NonceCloud)를 공개키(PUDelegation , User)로 암호화하여 유저 단말장치(200)에 전송한다(①). 그리고, 클라우드 컴퓨팅 서버(100)는 유저 단말장치(200)로부터 별도의 메시지가 수신될 때까지 대기 모드로 동작한다(②). Then, as in message 2-6, the cloud computing server 100 decrypts the message 2-5 received from the delegation server 500 to confirm the authentication capsule (Authentication-Capsule), and the random data (Nonce Cloud ) Encrypted with a public key (PU Delegation , User ) and transmitted to the user terminal device (1). The cloud computing server 100 operates in the standby mode until a separate message is received from the user terminal device 200 (②).

다음, 메시지 2-8에서와 같이, 유저 단말장치(200)는 세션-공유키(Session-KeyUser,Cloud)를 이용하여 인증 캡슐(Authentication-Capsule)을 암호화하여(①), 유저 단말장치(200)와 클라우드 컴퓨팅 서버(100) 간의 상호 인증을 완료한다(②).Next, as in the message 2-8, the user terminal device 200 encrypts the authentication capsule (Authentication-Capsule) using the session-key user (Cloud ) (①), the user terminal device ( 200 and the mutual authentication between the cloud computing server 100 is completed (②).

한편, 도 7에 나타낸 제2 프로토콜을 이용하여 유저 단말장치(200)와 클라우드 컴퓨팅 서버(100) 간의 상호 인증이 완료되거나, 715 단계의 확인 결과 이미 상호 인증이 완료되어 있을 경우, 740 단계 내지 760 단계의 과정을 통해 유저 단말장치(200)에 할당된 자원에 대한 과금 연산을 한다. Meanwhile, when mutual authentication between the user terminal device 200 and the cloud computing server 100 is completed using the second protocol illustrated in FIG. 7 or when mutual authentication is already completed as a result of checking in step 715, steps 740 to 760. The billing operation is performed on the resources allocated to the user terminal device 200 through the process of the step.

구체적으로, 클라우드 컴퓨팅 서버(100)는 유저 단말장치(200)에 할당한 자원의 과금에 대한 제1 마이크로 계약서를 생성하여 유저 단말장치(200)에 전송한다(740 단계). 그리고, 유저 단말장치(200)는 제1 마이크로 계약서를 수신하고, 클라우드 컴퓨팅 서버(100)에서 할당받은 자원의 과금에 대한 제2 마이크로 계약서를 생성하여 제1 마이크로 계약서와 함께 암호화한 후 위임 서버(500)에 전송한다(745 단계).In detail, the cloud computing server 100 generates a first micro contract for the charging of resources allocated to the user terminal 200 and transmits the first micro contract to the user terminal 200 (step 740). In addition, the user terminal device 200 receives the first micro contract, generates a second micro contract for billing of resources allocated by the cloud computing server 100, encrypts the first micro contract together with the delegation server ( 500) (step 745).

이후, 위임 서버(500)는 제1 마이크로 계약서 및 제2 마이크로 계약서를 이용하여 과금 연산을 수행한다(750 단계). 그리고, 위임 서버(500)는 클라우드 컴퓨팅 서버(100)에 자원 할당 신호를 전송하여(755 단계), 유저 단말장치(200)에 자원이 할당될 수 있도록 한다.  Thereafter, the delegation server 500 performs a charging operation using the first micro contract and the second micro contract (step 750). The delegation server 500 transmits a resource allocation signal to the cloud computing server 100 (step 755), so that the resource can be allocated to the user terminal device 200.

또한, 위임 서버(500)는 공증 서버(600)에 제1 마이크로 계약서 및 제2 마이 크로 계약서를 전송하여 저장될 수 있도록 한다(760 단계). 이에 따라, 공증 서버(600)는 추후, 클라우드 컴퓨팅 서버(100) 또는 유저 단말장치(200)가 과금을 부인하여 과금 검증을 요청하는 경우, 저장된 제1 마이크로 계약서 및 제2 마이크로 계약서를 비교 분석하여 과금을 검증할 수 있게 된다. In addition, the delegation server 500 transmits and stores the first micro contract and the second micro contract to the notary server 600 (step 760). Accordingly, the notary server 600 compares and analyzes the stored first micro contract and the second micro contract when the cloud computing server 100 or the user terminal 200 requests charging verification by denying the charge. The charge can be verified.

그리고, 클라우드 컴퓨팅 서버(100)에 추가의 자원 요청이 있다면(765 단계), 740 단계 내지 760 단계의 과정을 반복한다. If there is an additional resource request to the cloud computing server 100 (step 765), the processes of steps 740 to 760 are repeated.

한편, 740 단계 내지 760 단계에 도시 및 설명된 과금 방법은 도 8에 도시된 제3 프로토콜을 이용하여 이루어질 수 있다. 구체적으로, 도 8에 도시된 제3 프로토콜을 참조하면, 메시지 3-1에서와 같이, 유저 단말장치(200)는 세션-공유키(Session-KeyUser , Cloud)를 이용하여 필요한 자원 요청 메시지를 무작위 데이터(NonceUser)와 함께 클라우드 컴퓨팅 서버(100)에 전송한다(①). Meanwhile, the charging method illustrated and described in steps 740 to 760 may be performed using the third protocol shown in FIG. 8. Specifically, referring to the third protocol illustrated in FIG. 8, as in message 3-1, the user terminal device 200 uses the session-key key (Session-Key User , Cloud ) to request a required resource request message. The random data (Nonce User ) is transmitted to the cloud computing server 100 (①).

이후, 메시지 3-2에서와 같이, 클라우드 컴퓨팅 서버(100)는 유저 단말장치(200)로부터 수신한 메시지 3-1을 수신하고, 클라우드 컴퓨팅 서버에서 할당한 자원 정보와, 추후 과금 연산 검증을 위한 제1 마이크로 계약서(micro-Contract-Cloud)를 생성하여 유저 단말장치(200)에 전송한다(①). Then, as in message 3-2, the cloud computing server 100 receives the message 3-1 received from the user terminal device 200, the resource information allocated by the cloud computing server, and for the later billing operation verification A first micro contract (micro-contract-cloud) is generated and transmitted to the user terminal device 200 (①).

다음, 메시지 3-3을 참조하면, 유저 단말장치(200)는 자신의 아이디(IDUser) 와, 클라우드 컴퓨팅 서버(100)로부터 수신한 제1 마이크로 계약서(micro-Contract-Cloud), 그리고 유저 단말장치(200)에서 생성된 제2 마이크로 계약서(micro-Contract-User)를 이용하여 micro-Contract를 생성한 후, micro-Contract를 공유키(KNotary , User)와 공개키(KUser , Delegation)로 암호화한다(①). 그리고, 암호화 메시지를 위임 서버(500)에 전송한다(②).Next, referring to the message 3-3, the user terminal device 200 has its identity (User ID) and, a first micro contract (micro-Contract-Cloud), and the user terminal is received from the server computing cloud 100 After generating a micro-contract using the second micro contract (micro-contract-user) generated in the device 200, the micro-contract is a shared key (K Notary , User ) and a public key (K User , Delegation ). Encrypt with (①). Then, the encrypted message is transmitted to the delegation server 500 (2).

한편, 메시지 3-4에서와 같이, 위임 서버(500)는 유저 단말장치(200)로부터 수신한 메시지 3-3 중 E{KNotary , User, micro-Contract}를 개인키(PRUser , Delegation)로 암호화한다(①). 그리고, 클라우드 컴퓨팅 서버(100)의 아이디(IDCloud)와, 도 6의 메시지 1-5에서 생성된 시퀀스 넘버(SeqUser) 및 무작위 데이터(NonceNotary)와 '①'에서 생성된 메시지를 공유키(KDelegation , Notary)로 암호화하여 공증 서버(600)에 전송한다(②). Meanwhile, as shown in message 3-4, the delegation server 500 selects E {K Notary , User , micro-Contract} from among the messages 3-3 received from the user terminal device 200 (PR User , Delegation ). Encrypt with (①). And share the messages generated by the ID (ID Cloud), and also the sequence number (Seq User) generated by the message 1-5 and 6 random data (Nonce Notary) and the '①' cloud computing server (100) Key (K Delegation , Notary ) is encrypted and transmitted to the notary server 600 (②).

이후, 메시지 3-5에서와 같이, 공증 서버(600)는 위임 서버(500)로부터 수신한 메시지 3-4를 공유키(KDelegation , Notary)로 복호화한다(①). 그리고, 공증 서버(600)는 클라우드 컴퓨팅 서버(100)의 아이디(IDCloud), 유저 단말장치(200)의 시퀀스 넘버(SeqUser) 따라 분류하여 micro-Contract과 E{PRUser , Delegation, E{KNotary , User, micro- Contract}}, 대행 인증서(CRUser , Delegation)에 저장되어 있는 개인키(PUUser , Delegation)로 복호화하고, 공유키(KNotary , User)로 E{KNotary , User, micro-Contract}를 복호화한다(②).Thereafter, as in message 3-5, the notary server 600 decrypts the message 3-4 received from the delegation server 500 with a shared key (K Delegation , Notary ) (①). Then, the notary server 600 cloud server 100 identity (ID Cloud), the user sequence number to classified (Seq User) of the terminal device (200) micro-Contract and E {PR User, Delegation of, E { K Notary , User , micro-Contract}}, private key (PU User , Delegation ) stored in proxy certificate (CR User , Delegation ), and E {K Notary , User as shared key (K Notary , User ). , micro-Contract} (2).

또한, 공증 서버(600)는 micro-Contract에서 제1 마이크로 계약서(micro-Contract-Cloud)와 제2 마이크로 계약서(micro-Contract-User)의 내용을 비교하여 동일한 경우에는 위임 서버(500)에 "허락(ACCEPT)" 메시지를 보내고 상이한 경우에는 "거절(REJECT" 메시지를 무작위 데이터(NonceNotary) 함께 전송한다(③).In addition, the notarization server 600 compares the contents of the first micro-contract-cloud and the second micro-contract-user in the micro-contract. "ACCEPT" message is sent, and if different, "REJECT" message is transmitted with random data (Nonce Notary ) (③).

다음, 메시지 3-6에서와 같이, 위임 서버(500)는 세션 공유키(Session-KeyUser,Cloud), 공유키(KDelegation , Cloud), micro-Contract, 유저 단말장치(200)의 아이디(IDUser)를 공유키(KDelegation , Cloud)로 암호화하여 클라우드 컴퓨팅 서버(100)에 전송한다(①). Next, as shown in message 3-6, the delegation server 500 is a session shared key (Session-Key User, Cloud ), shared key (K Delegation , Cloud ), micro-Contract, ID of the user terminal device 200 ( ID User ) is encrypted with a shared key (K Delegation , Cloud ) and transmitted to the cloud computing server 100 (①).

한편, 메시지 3-7에서와 같이, 클라우드 컴퓨팅 서버(100)는 위임 서버(500)로부터 수신한 메시지 3-6을 복호화하여 micro-Contract을 확인하고 무작위 데이터(NonceCloud)를 공유키(KDelegation , Cloud)로 암호화시켜 위임 서버(500)에 전송한다(①). 그리고, 클라우드 컴퓨팅 서버(100)는 유저 단말장치(200)로부터 메시지가 수신될 때까지 대기 모드로 동작한다(②).Meanwhile, as in message 3-7, the cloud computing server 100 decrypts the message 3-6 received from the delegate server 500 to check the micro-contract and share the random data (Nonce Cloud ) with the shared key (K Delegation). , Cloud ) and transmits it to the delegate server 500 (①). The cloud computing server 100 operates in the standby mode until a message is received from the user terminal device 200 (②).

이후, 메시지 3-8에서와 같이, 유저 단말장치(200)는 세션-공유키(Session-KeyUser,Cloud)로 micro-Contract를 암호화하여(①), 과금 연산을 완료한다(②).Thereafter, as shown in message 3-8, the user terminal device 200 encrypts the micro-contract with the session-key user (Cloud ) (①) and completes the charging operation (②).

한편, 도 8에 나타낸 제3 프로토콜을 이용하여 공증 서버(600)가 클라우드 컴퓨팅 서버(100) 및 유저 단말장치(200)의 과금 검증 및 부인 방지 기능을 제공하는 메커니즘을 설명한다. 과금 시스템은 도 6 및 도 7에 나타낸 제1 및 제2 프로토콜을 의해 유저 단말장치(200)와 위임 서버(500)만이 인식할 수 있는 공유키(KUser , Delegation), 유저 단말장치(200)와 공증 서버(600)만이 인식할 수 있는 공유키(KUser , Notary), 유저 단말장치(200)와 클라우드 컴퓨팅 서버(100)만이 인식할 수 있는 공유키(Session-KeyUser , Cloud)가 공개 키 기반으로 분배되어 있는 상태이다. Meanwhile, a mechanism in which the notary server 600 provides the charging verification and non-repudiation functions of the cloud computing server 100 and the user terminal 200 using the third protocol illustrated in FIG. 8 will be described. The billing system uses the first and second protocols shown in FIGS. 6 and 7 to share a shared key (K User , Delegation ) that can only be recognized by the user terminal device 200 and the delegation server 500, and the user terminal device 200. And public key (K User , Notary ) that can only be recognized by the notary server 600, and public key (Session-Key User , Cloud ) that only the user terminal device 200 and the cloud computing server 100 can recognize. It is distributed on a key basis.

유저 단말장치(200)는 제4 프로토콜의 메시지 3-2에서와 같이 클라우드 컴퓨팅 서버(100)로부터 제1 마이크로 계약서(micro-Contract-Cloud)를 전송받는다. 이 경우, 제1 마이크로 계약서(micro-Contract-Cloud)는 제1 내지 제3 필드로 구성되어 있다. 구체적으로, 제1 필드는 제1 마이크로 계약서(micro-Contract-Cloud)의 일련 번호(SN)를 나타내며, 제2 필드는 제1 마이크로 계약서(micro-Contract-Cloud)의 일련 번호(SN), 유저 단말장치(200)에 할당한 자원(Granted-Resource) 및 클라우드 컴퓨팅 서버(100)에서 생성된 무작위 데이터(NonceCloud)에 대한 해 시(Hash) 값 "Hash(SN∥Granted-Resource∥NonceCloud)"을 나타내고, 제3 필드는 제1 마이크로 계약서(micro-Contract-Cloud)의 일련 번호(SN) 및 유저 단말장치(200)에 할당한 자원(Granted-Resource)에 대한 해시 값을 클라우드 컴퓨팅 서버(100)와 공증 서버(600)만이 인식할 수 있는 공유키(KNotary , Cloud)로 암호화한 값 "E{KNotary , Cloud, Hash(SN∥Granted-Resource)}을 나타낸다. 이 경우, 해시 함수는 일 방향 함수이므로 유저 단말장치(200)는 해시 값의 원본을 알 수 없다. The user terminal device 200 receives the first micro-contract-cloud from the cloud computing server 100 as in message 3-2 of the fourth protocol. In this case, the first micro-contract-cloud is composed of first to third fields. Specifically, the first field represents the serial number SN of the first micro-contract-cloud, and the second field represents the serial number SN of the first micro-contract-cloud, the user. a resource (Granted-resource), and cloud computing server 100 the random data when it (Hash) value "Hash (SN∥Granted-Resource∥Nonce cloud) to (cloud Nonce) generated by the allocation to the terminal device 200 ", And the third field includes a serial number (SN) of the first micro-contract-cloud and a hash value for a resource assigned to the user terminal device 200 (Granted-Resource). 100) and the value "E {K Notary , Cloud , Hash (SN∥ Granted-Resource)}", which is encrypted with the shared key (K Notary , Cloud ) that only the notary server 600 can recognize. Since is a one-way function, the user terminal device 200 does not know the original of the hash value.

유저 단말장치(200)는 제4 프로토콜의 메시지 3-3에서와 같이 클라우드 컴퓨팅 서버(100)로부터 제1 마이크로 계약서(micro-Contract-User)를 전송받고, 제2 마이크로 계약서(micro-Contract-User)를 생성한다. 이 경우, 제2 마이크로 계약서(micro-Contract-User) 역시 제1 내지 제3 필드를 포함한다. 구체적으로, 제1 필드는 제2 마이크로 계약서(micro-Contract-User)의 일련 번호(SN)를 나타내며, 제2 필드는 제2 마이크로 계약서(micro-Contract-User)의 일련 번호(SN), 유저 단말장치(200)가 할당받은 자원(Granted-Resource) 및 유저 단말장치(200)에서 생성된 무작위 데이터(NonceUser)에 대한 해시(Hash) 값 ""Hash(SN∥Granted-Resource∥NonceUser)을 나타내고 제3 필드는 제2 마이크로 계약서(micro-Contract-User)의 일련 번호(SN) 및 유저 단말장치(200)가 할당받은 자원(Granted-Resource)에 대한 해시 값 "Hash(SN∥Granted-Resource)을 나타낸다. The user terminal device 200 receives the first micro-contract-user from the cloud computing server 100 as in message 3-3 of the fourth protocol, and the second micro-contract-user. ) In this case, the second micro-contract-user also includes first to third fields. Specifically, the first field represents the serial number SN of the second micro-contract-user, and the second field represents the serial number SN of the second micro-contract-user, the user. hash (hash) value for the random data (user Nonce) generated by the receiving terminal device 200 is assigned resource (Granted-resource) and the user terminal device 200, "" hash (SN∥Granted Resource∥Nonce-user) And the third field indicates the serial number (SN) of the second micro-contract-user and the hash value "Hash (SN∥Granted-) for the resource (Granted-Resource) allocated by the user terminal device 200. Resource).

유저 단말장치(200) 또는 클라우드 컴퓨팅 서버(100)는 각각 예측 또는 주장하는 할당된 자원의 과금이 상이할 경우 과금 검증을 요청할 수 있다. 이 같은 과금 검층 요청이 있을 경우, 공증 서버(600)는 제1 마이크로 계약서와 제2 마이크로 계약서를 독출한 후, 동일한 일련번호(SN)에 대하여 검증을 수행한다. 단, 공증 서버(600)는 검증을 수행하기에 앞서, 클라우드 컴퓨팅 서버(100)가 유저 단말장치(200)에 할당한 것으로 예측하는 제1 예측 할당 자원(Granted-Resource)과 클라우드 컴퓨팅 서버(100)의 무작위 데이터(NonceCloud)를 수신하고, 유저 단말장치(200)가 클라우드 컴퓨팅 서버(100)로부터 할당받은 것으로 예측하는 제2 예측 할당 자원과 유저 단말장치(200)의 무작위 데이터(NonceUser)를 수신한다. The user terminal 200 or the cloud computing server 100 may request charging verification when the charging of the allocated resources to predict or claim is different. When there is such a billing inspection request, the notary server 600 reads the first micro contract and the second micro contract, and then verifies the same serial number SN. However, the notarization server 600, prior to performing the verification, the first predicted allocation resource (Granted-Resource) and the cloud computing server 100 predicts that the cloud computing server 100 is assigned to the user terminal device 200 (100). ) random data (random data (Nonce user) of the second prediction-allocated resources and the user terminal device 200 receiving the Nonce cloud), and predicted to have received the user terminal device 200 is assigned from a cloud computing server 100 of Receive

그리고, 공증 서버(600)는 제1 예측 할당 자원(Granted-Resource)과 클라우드 컴퓨팅 서버(100)의 무작위 데이터(NonceCloud)를 제1 마이크로 계약서(micro-Contracte-Cloud)의 제2 필드 값들과 비교하여 일치되는지를 확인한다. 만약, 일치한다면 유저 단말장치(200)가 클라우드 컴퓨팅 서버(100)로부터 수신한 제1 마이크로 계약서(micro-Contrate-Cloud)를 위임 서버(500)에 전송한 것이 증명되므로, 유저 단말장치(200)는 클라우드 컴퓨팅 서버(100)에서 할당한 자원을 수락했음을 증명하게 된다. The notary server 600 may compare the first predicted allocated resource (Granted-Resource) and the random data (Nonce Cloud ) of the cloud computing server 100 with the second field values of the first micro-contracte-cloud. Compare and see if they match. If there is a match, since the user terminal 200 transmits the first micro-contrate-cloud received from the cloud computing server 100 to the delegation server 500, the user terminal 200 Proves that the resource allocated by the cloud computing server 100 has been accepted.

또한, 제2 예측 할당 자원(Granted-Resource)과 유저 단말장치(200)의 무작위 데이터(NonceUser)를 제2 마이크로 계약서(micro-Contracte-User)의 제2 필드 값들과 비교하여 일치되는지를 확인한다. 만약, 일치한다면 클라우드 컴퓨팅 서 버(100)가 제1 마이크로 계약서(micro-Contracte-Cloud)를 유저 단말장치(200)에 전송한 것이 증명된다. In addition, the second predicted allocated resource (Granted-Resource) and the random data (Nonce User ) of the user terminal device 200 is compared with the second field values of the second micro-contracte-user to check whether they match. do. If there is a match, the cloud computing server 100 transmits the first micro-contracte-cloud to the user terminal 200.

이 같이 또한, 공증 서버(600)는 클라우드 컴퓨팅 서버(100)에서 생성된 제1 마이크로 계약서와 유저 단말장치(200)에서 생성된 제2 마이크로 계약서를 저장해둠으로써, 추후 과금 검증에 따른 요청이 있을 때 클라우드 컴퓨팅 서버(100)에서 제공한 자원의 과금과, 상기 유저 단말장치(200)에서 사용한 자원에 대한 과금을 검증하여 과금에 따른 부인을 방지할 수 있게 된다. As such, the notary server 600 stores the first micro contract generated in the cloud computing server 100 and the second micro contract generated in the user terminal device 200, so that there may be a request for a later charging verification. At this time, the charging of the resources provided by the cloud computing server 100 and the charging of the resources used by the user terminal device 200 may be verified to prevent denial due to the charging.

이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안 될 것이다.Although the above has been illustrated and described with respect to the preferred embodiments of the present invention, the present invention is not limited to the above-described specific embodiments, it is common in the technical field to which the invention belongs without departing from the spirit of the invention claimed in the claims. Various modifications can be made by those skilled in the art, and these modifications should not be individually understood from the technical spirit or the prospect of the present invention.

도 1은 종래 기술에 따른 클라우드 컴퓨팅 시스템의 과금 방법을 설명하기 위한 도면, 1 is a view for explaining a charging method of a cloud computing system according to the prior art,

도 2는 종래 기술에 따른 공개 키 기반으로 한 클라우드 컴퓨팅 환경의 과금 시스템을 나타내는 도면,2 illustrates a charging system of a cloud computing environment based on a public key according to the prior art;

도 3은 본 발명의 일 실시 예에 따른 공개 키 기반의 프로토콜을 이용한 과금 시스템을 나타내는 도면, 3 illustrates a charging system using a public key based protocol according to an embodiment of the present invention;

도 4는 본 발명의 일 실시 예에 따른 공개 키 기반의 프로토콜을 이용한 과금 방법을 설명하기 위한 흐름도, 그리고, 4 is a flowchart illustrating a charging method using a public key based protocol according to an embodiment of the present invention, and

도 5 내지 도 7은 도 4에 도시된 과금 방법에 이용되는 프로토콜을 나타내는 도면이다.5 to 7 are diagrams showing a protocol used for the charging method shown in FIG.

* 도면의 주요 부분에 대한 부호 설명 * Explanation of symbols on the main parts of the drawings

100 : 클라우드 컴퓨팅 서버100: cloud computing server

200 : 유저 단말장치200: user terminal device

300 : 인터넷망300: Internet network

500 : 위임 서버500: delegation server

600 : 공증 서버600: Notary Server

Claims (14)

복수의 자원을 구비하며, 외부로부터 자원 요청이 있을 경우 요청된 자원의 과금에 대한 제1 마이크로 계약서를 생성하는 클라우드 컴퓨팅 서버;A cloud computing server having a plurality of resources and generating a first micro contract for billing of the requested resource when there is a resource request from the outside; 상기 클라우드 컴퓨팅 서버에 접속하여 자원을 요청하여 상기 제1 마이크로 계약서를 수신하고, 요청한 자원의 과금에 대한 제2 마이크로 계약서를 생성하여 암호화하는 유저 단말장치;A user terminal device accessing the cloud computing server to request a resource to receive the first micro contract, and generate and encrypt a second micro contract for billing of the requested resource; 상기 유저 단말장치에서 사용한 자원에 대한 과금 연산을 위임받은 대행 인증서를 포함하며, 상기 유저 단말장치로부터 암호화된 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 수신하고 과금을 연산하여 상기 클라우드 컴퓨팅 서버에 자원 할당 신호를 전송하여 상기 유저 단말장치에 해당 자원을 할당하도록 하는 위임 서버; 및,And a proxy certificate delegated to charge operation for resources used by the user terminal device, and receives the encrypted first micro contract and the second micro contract from the user terminal device and calculates billing to the cloud computing server. A delegation server for transmitting a resource allocation signal to allocate a corresponding resource to the user terminal device; And, 상기 위임 서버로부터 암호화된 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 전달받아 저장하고, 과금 검증 요청이 있을 경우 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 복호화하여 비교하고 상기 클라우드 컴퓨팅 서버에서 제공한 자원의 과금과, 상기 유저 단말장치에서 사용한 자원에 대한 과금을 검증하는 공증 서버;를 포함하는 공개 키 기반의 프로토콜을 이용한 과금 시스템.Receives and stores the encrypted first micro contract and the second micro contract from the delegation server, and compares the first micro contract and the second micro contract by decrypting when there is a charge verification request. And a notary server for verifying charging of the provided resource and charging of the resource used by the user terminal device. 제1항에 있어서,The method of claim 1, 상기 유저 단말장치는,The user terminal device, 상기 유저 단말장치와 상기 위임 서버만 인식할 수 있는 제1 공유키와, 상기 유저 단말장치와 상기 공증 서버만 인식할 수 있는 제2 공유키를 이용하여 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 암호화하는 것을 특징으로 하는 공개 키 기반의 프로토콜을 이용한 과금 시스템.The first micro contract and the second micro contract using a first shared key that can be recognized only by the user terminal device and the delegation server, and a second shared key that can be recognized only by the user terminal device and the notary server. Billing system using a public key based protocol, characterized in that for encrypting. 제2항에 있어서,The method of claim 2, 상기 제1 마이크로 계약서는, The first micro contract, 상기 제1 마이크로 계약서의 일련 번호를 나타내는 제1 필드, A first field representing a serial number of the first micro contract, 상기 제1 마이크로 계약서의 일련 번호, 상기 유저 단말장치에 할당한 자원 및 상기 클라우드 컴퓨팅 서버에서 생성된 무작위 데이터에 대한 해시(Hash) 값을 나타내는 제2 필드 및A second field indicating a serial number of the first micro contract, a resource allocated to the user terminal device, and a hash value for random data generated by the cloud computing server; 상기 제1 마이크로 계약서의 일련 번호 및 상기 유저 단말장치에 할당한 자원에 대한 해시 값을 상기 클라우드 컴퓨팅 서버와 상기 공증 서버만이 인식할 수 있는 제3 공유키(KNotary , Cloud)로 암호화된 값을 나타내는 제3 필드로 이루어진 것을 특징으로 하는 공개 키 기반의 프로토콜을 이용한 과금 시스템.A value encrypted by a serial number of the first micro contract and a hash value for a resource allocated to the user terminal device with a third shared key (K Notary , Cloud ) that can be recognized only by the cloud computing server and the notary server. Billing system using a public key based protocol, characterized in that consisting of a third field representing. 제3항에 있어서,The method of claim 3, 상기 제2 마이크로 계약서는, The second micro contract, 상기 제2 마이크로 계약서의 일련 번호를 나타내는 제1 필드, A first field indicating a serial number of the second micro contract, 상기 제2 마이크로 계약서의 일련 번호, 상기 유저 단말장치가 할당받은 자원 및 상기 유저 단말장치에서 생성된 무작위 데이터에 대한 해시(Hash) 값을 나타내는 제2 필드 및A second field indicating a serial number of the second micro contract, a resource allocated by the user terminal device, and a hash value for random data generated by the user terminal device; 상기 제2 마이크로 계약서의 일련 번호 및 상기 유저 단말장치가 할당받은 자원에 대한 해시 값을 나타내는 제3 필드로 이루어진 것을 특징으로 하는 공개 키 기반의 프로토콜을 이용한 과금 시스템.And a third field representing a serial number of the second micro contract and a hash value of a resource allocated by the user terminal device. 제4항에 있어서,The method of claim 4, wherein 상기 공증 서버는, The notary server, 상기 검증 요청이 있을 경우 상기 위임 서버와 상기 공증 서버만 인식할 수 있는 제4 공유키를 이용하여 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 복호화하는 것을 특징으로 하는 공개 키 기반의 프로토콜을 이용한 과금 시스템.When the verification request is made, using the public key-based protocol, the first micro contract and the second micro contract are decrypted using a fourth shared key that can be recognized only by the delegation server and the notary server. Billing system. 제5항에 있어서,The method of claim 5, 상기 공증 서버는, The notary server, 상기 검증 요청이 있을 경우, 상기 유저 단말장치에 할당한 것으로 예측되는 제1 예측 할당 자원 및 제1 무작위 데이터를 상기 클라우드 컴퓨팅 서버로부터 수신하고, 상기 클라우드 컴퓨팅 서버로부터 할당받은 것으로 예측되는 제2 예측 할 당 자원 및 제2 무작위 데이터를 상기 유저 단말장치로부터 수신하여, 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서 각각에 포함된 상기 제2 필드 값과 비교하고 일치 여부를 확인하여 과금을 검증하는 것을 특징으로 하는 공개 키 기반의 프로토콜을 이용한 과금 시스템.When there is the verification request, the first prediction allocation resource and the first random data predicted to be allocated to the user terminal device are received from the cloud computing server, and the second prediction to be allocated from the cloud computing server is performed. Receiving the resource and the second random data from the user terminal device, comparing the value of the second field included in each of the first micro contract and the second micro contract, and confirming whether or not the charge is verified; Billing system using a public key based protocol. 제1항에 있어서,The method of claim 1, 상기 유저 단말장치는,The user terminal device, 상기 클라우드 컴퓨팅 서버, 상기 위임 서버 및 상기 공증 서버와 상호 인증된 상태인 것을 특징으로 하는 공개 키 기반의 프로토콜을 이용한 과금 시스템.Billing system using a public key-based protocol, characterized in that the mutual authentication with the cloud computing server, the delegation server and the notary server. 클라우드 컴퓨팅 서버에 자원을 요청하여 할당받는 유저 단말장치와, 상기 유저 단말장치의 자원 사용에 따른 과금 연산을 위임받은 위임 서버 및 상기 클라우드 컴퓨팅 서버에서 제공한 자원의 과금과, 상기 유저 단말장치에서 사용한 자원에 대한 과금을 검증하는 공증 서버를 포함하는 과금 시스템의 공개 키 기반의 프로토콜을 이용한 과금 검증 방법에 있어서, A user terminal device which requests and allocates a resource to a cloud computing server, a delegation server delegated to charge operation according to resource usage of the user terminal device, and a charge of a resource provided by the cloud computing server, and used by the user terminal device In the billing verification method using a public key based protocol of the billing system including a notary server for verifying billing for resources, 상기 유저 단말장치가 클라우드 컴퓨팅 서버에 필요한 자원을 요청하는 제1 단계;A first step of requesting, by the user terminal device, a resource required for a cloud computing server; 상기 클라우드 컴퓨팅 서버가 상기 유저 단말장치로부터 요청된 상기 자원의 과금에 대한 제1 마이크로 계약서를 생성하여 상기 유저 단말장치에 전송하는 제2 단계;A second step of the cloud computing server generating a first micro contract for the charging of the resource requested from the user terminal device and transmitting the first micro contract to the user terminal device; 상기 유저 단말장치가 상기 요청한 자원의 과금에 대한 제2 마이크로 계약서를 생성하여, 상기 클라우드 컴퓨팅 서버로부터 수신된 제1 마이크로 계약서와 함께 암호화한 후 상기 위임 서버에 전송하는 제3 단계;A third step of generating, by the user terminal device, a second micro contract for billing of the requested resource, encrypting the second micro contract with the first micro contract received from the cloud computing server, and then transmitting the second micro contract to the delegation server; 상기 위임 서버가 상기 유저 단말장치로부터 암호화된 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 수신하여 과금을 연산하고, 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 상기 공증 서버에 전송하는 제4 단계; 및A fourth server that receives the encrypted first micro contract and the second micro contract from the user terminal device, calculates billing, and transmits the first micro contract and the second micro contract to the notary server; step; And 상기 공증 서버가 상기 위임 서버로부터 암호화된 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 전달받아 저장하고, 검증 요청이 있을 경우 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 복호화하고 비교하여 과금을 검증하는 제5 단계;를 포함하는 공개 키 기반의 프로토콜을 이용한 과금 방법.The notary server receives and stores the encrypted first micro contract and the second micro contract from the delegation server, and if there is a request for verification, decrypts and compares the first micro contract and the second micro contract and charges the bill. Billing method using a public key based protocol comprising a; 제8항에 있어서,The method of claim 8, 상기 제1 단계는, The first step, 상기 유저 단말장치가 클라우드 컴퓨팅 서버에 필요한 자원을 요청하면, 상기 유저 단말장치의 과금 연산을 위임받은 위임 서버의 유무 및 상기 유저 단말장치와 상기 클라우드 컴퓨팅 서버 간의 상호 인증 여부를 확인하는 제1 과정; A first step of checking whether a user terminal device requests resources required by a cloud computing server, whether or not a delegation server delegated a charging operation of the user terminal device and mutual authentication between the user terminal device and the cloud computing server; 상기 과금 연산을 위임받은 위임 서버가 존재하지 않으면 일 위임 서버로부터 공개키 및 개인키를 수신하고, 상기 공개키를 상기 유저 단말장치의 개인키로 서명하여 대행 인증서를 생성한 후 상기 위임 서버에 전송하여 과금 연산을 위임시 키는 제2 과정; If there is no delegation server to which the billing operation is delegated, receive a public key and a private key from one delegation server, generate a proxy certificate by signing the public key with the private key of the user terminal device, and then transmit to the delegation server. A second step of delegating billing operation; 상기 유저 단말장치와 상기 클라우드 컴퓨팅 서버 간의 상호 인증이 되어 있지 않으면 상기 클라우드 컴퓨팅 서버로부터 인증 캡슐을 수신하고, 상기 유저 단말장치와 상기 위임 서버 간의 제1 공유키, 상기 유저 단말장치와 상기 공증 서버 간의 제2 공유키 및 상기 유저 단말장치와 상기 클라우드 컴퓨팅 서버 간의 제3 공유키를 분배하여 상호 인증하는 제3 과정을 포함하는 것을 특징으로 하는 공개 키 기반의 프로토콜을 이용한 과금 방법.If mutual authentication is not performed between the user terminal device and the cloud computing server, an authentication capsule is received from the cloud computing server, a first shared key between the user terminal device and the delegate server, and between the user terminal device and the notary server. And a third process of distributing a second shared key and a third shared key between the user terminal device and the cloud computing server to mutually authenticate each other. 제8항에 있어서,The method of claim 8, 상기 제3 단계는,The third step, 상기 유저 단말장치와 상기 위임 서버 간의 제1 공유키와, 상기 유저 단말장치와 상기 공증 서버 간의 제2 공유키를 이용하여 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 암호화하는 것을 특징으로 하는 공개 키 기반의 프로토콜을 이용한 과금 방법.And encrypting the first micro contract and the second micro contract using a first shared key between the user terminal and the delegate server and a second shared key between the user terminal and the notary server. Charging method using key based protocol. 제10항에 있어서,The method of claim 10, 상기 제1 마이크로 계약서는, The first micro contract, 상기 제1 마이크로 계약서의 일련 번호를 나타내는 제1 필드, A first field representing a serial number of the first micro contract, 상기 제1 마이크로 계약서의 일련 번호, 상기 유저 단말장치에 할당한 자원 및 상기 클라우드 컴퓨팅 서버에서 생성된 무작위 데이터에 대한 해시(Hash) 값을 나타내는 제2 필드 및A second field indicating a serial number of the first micro contract, a resource allocated to the user terminal device, and a hash value for random data generated by the cloud computing server; 상기 제1 마이크로 계약서의 일련 번호 및 상기 유저 단말장치에 할당한 자원에 대한 해시 값을 나타내는 제3 필드로 이루어진 것을 특징으로 하는 공개 키 기반의 프로토콜을 이용한 과금 방법.And a third field representing a serial number of the first micro contract and a hash value of a resource allocated to the user terminal device. 제11항에 있어서,The method of claim 11, 상기 제2 마이크로 계약서는, The second micro contract, 상기 제2 마이크로 계약서의 일련 번호를 나타내는 제1 필드, A first field indicating a serial number of the second micro contract, 상기 제2 마이크로 계약서의 일련 번호, 상기 유저 단말장치가 할당받은 자원 및 상기 유저 단말장치에서 생성된 무작위 데이터에 대한 해시(Hash) 값을 나타내는 제2 필드 및A second field indicating a serial number of the second micro contract, a resource allocated by the user terminal device, and a hash value for random data generated by the user terminal device; 상기 제2 마이크로 계약서의 일련 번호 및 상기 유저 단말장치가 할당받은 자원에 대한 해시 값을 나타내는 제3 필드로 이루어진 것을 특징으로 하는 공개 키 기반의 프로토콜을 이용한 과금 방법.And a third field representing a serial number of the second micro contract and a hash value of a resource allocated by the user terminal device. 제12항에 있어서,The method of claim 12, 상기 제5 단계는, The fifth step, 상기 검증 요청이 있을 경우 상기 위임 서버와 상기 공증 서버 간의 제4 공유키를 이용하여 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서를 복호화하는 것을 특징으로 하는 공개 키 기반의 프로토콜을 이용한 과금 방법.And if the verification request is made, decrypting the first micro contract and the second micro contract using a fourth shared key between the delegation server and the notary server. 제13항에 있어서,The method of claim 13, 상기 제5 단계는, The fifth step, 상기 검증 요청이 있을 경우 상기 유저 단말장치에 할당한 것으로 예측되는 제1 예측 할당 자원 및 제1 무작위 데이터를 상기 클라우드 컴퓨팅 서버로부터 수신하고, 상기 클라우드 컴퓨팅 서버로부터 할당받은 것으로 예측되는 제2 예측 할당 자원 및 제2 무작위 데이터를 상기 유저 단말장치로부터 수신하여, 상기 제1 마이크로 계약서 및 상기 제2 마이크로 계약서 각각에 포함된 상기 제2 필드 값과 비교하고 일치 여부를 확인하여 과금을 검증하는 것을 특징으로 하는 공개 키 기반의 프로토콜을 이용한 과금 방법.When the verification request is received, the first prediction allocation resource and the first random data that are predicted to be allocated to the user terminal device are received from the cloud computing server, and the second prediction allocation resource that is predicted to be allocated from the cloud computing server. And receiving second random data from the user terminal device, comparing the second field value included in each of the first micro contract and the second micro contract, and confirming a coincidence to verify charging. Charging method using a public key based protocol.
KR1020090069639A 2009-07-29 2009-07-29 Billing system and method using public key based protocol KR101063354B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090069639A KR101063354B1 (en) 2009-07-29 2009-07-29 Billing system and method using public key based protocol

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090069639A KR101063354B1 (en) 2009-07-29 2009-07-29 Billing system and method using public key based protocol

Publications (2)

Publication Number Publication Date
KR20110012085A true KR20110012085A (en) 2011-02-09
KR101063354B1 KR101063354B1 (en) 2011-09-07

Family

ID=43772053

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090069639A KR101063354B1 (en) 2009-07-29 2009-07-29 Billing system and method using public key based protocol

Country Status (1)

Country Link
KR (1) KR101063354B1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210090076A1 (en) * 2016-02-23 2021-03-25 nChain Holdings Limited Registry and automated management method for blockchain-enforced smart contracts
US11606219B2 (en) 2016-02-23 2023-03-14 Nchain Licensing Ag System and method for controlling asset-related actions via a block chain
US11621833B2 (en) 2016-02-23 2023-04-04 Nchain Licensing Ag Secure multiparty loss resistant storage and transfer of cryptographic keys for blockchain based systems in conjunction with a wallet management system
US11625694B2 (en) 2016-02-23 2023-04-11 Nchain Licensing Ag Blockchain-based exchange with tokenisation
US11727501B2 (en) 2016-02-23 2023-08-15 Nchain Licensing Ag Cryptographic method and system for secure extraction of data from a blockchain
US11755718B2 (en) 2016-02-23 2023-09-12 Nchain Licensing Ag Blockchain implemented counting system and method for use in secure voting and distribution
US11936774B2 (en) 2016-02-23 2024-03-19 Nchain Licensing Ag Determining a common secret for the secure exchange of information and hierarchical, deterministic cryptographic keys
US11972422B2 (en) * 2016-02-23 2024-04-30 Nchain Licensing Ag Registry and automated management method for blockchain-enforced smart contracts

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101356223B1 (en) 2012-01-18 2014-01-29 한국과학기술원 Apparatus and method for guaranteeing computing resource in cloud computing environment for cloud customer

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004272669A (en) * 2003-03-10 2004-09-30 Hitachi Ltd Method and device for charging management for grid computing
US8005457B2 (en) 2005-09-02 2011-08-23 Adrian Jones Method and system for verifying network resource usage records

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210090076A1 (en) * 2016-02-23 2021-03-25 nChain Holdings Limited Registry and automated management method for blockchain-enforced smart contracts
US11606219B2 (en) 2016-02-23 2023-03-14 Nchain Licensing Ag System and method for controlling asset-related actions via a block chain
US11621833B2 (en) 2016-02-23 2023-04-04 Nchain Licensing Ag Secure multiparty loss resistant storage and transfer of cryptographic keys for blockchain based systems in conjunction with a wallet management system
US11625694B2 (en) 2016-02-23 2023-04-11 Nchain Licensing Ag Blockchain-based exchange with tokenisation
US11727501B2 (en) 2016-02-23 2023-08-15 Nchain Licensing Ag Cryptographic method and system for secure extraction of data from a blockchain
US11755718B2 (en) 2016-02-23 2023-09-12 Nchain Licensing Ag Blockchain implemented counting system and method for use in secure voting and distribution
US11936774B2 (en) 2016-02-23 2024-03-19 Nchain Licensing Ag Determining a common secret for the secure exchange of information and hierarchical, deterministic cryptographic keys
US11972422B2 (en) * 2016-02-23 2024-04-30 Nchain Licensing Ag Registry and automated management method for blockchain-enforced smart contracts

Also Published As

Publication number Publication date
KR101063354B1 (en) 2011-09-07

Similar Documents

Publication Publication Date Title
CN109617698B (en) Method for issuing digital certificate, digital certificate issuing center and medium
Xu et al. An identity management and authentication scheme based on redactable blockchain for mobile networks
US10243742B2 (en) Method and system for accessing a device by a user
US8843415B2 (en) Secure software service systems and methods
US7574600B2 (en) System and method for combining user and platform authentication in negotiated channel security protocols
US10516654B2 (en) System, apparatus and method for key provisioning delegation
WO2017020452A1 (en) Authentication method and authentication system
KR101063354B1 (en) Billing system and method using public key based protocol
CN111355745A (en) Cross-domain identity authentication method based on edge computing network architecture
Al-Janabi et al. Public-key cryptography enabled kerberos authentication
Chen et al. Lightweight authentication protocol in edge-based smart grid environment
WO2003101042A1 (en) Information processing system and method, information processing device and method, recording medium, and program
Hou et al. Lightweight and privacy-preserving charging reservation authentication protocol for 5G-V2G
Bharill et al. A secure key for cloud using threshold cryptography in Kerberos
Li et al. A privacy-preserving lightweight energy data sharing scheme based on blockchain for smart grid
CN111526130B (en) Lightweight certificateless industrial Internet of things access control method and system
KR100979205B1 (en) Method and system for device authentication
KR100764882B1 (en) Device and method for pki based single sign-on authentication on low computing security device
CN113329003B (en) Access control method, user equipment and system for Internet of things
KR20100002424A (en) Method for generating secure key using certificateless public key
CN112035820B (en) Data analysis method used in Kerberos encryption environment
Bajpai et al. Security service level agreements based authentication and authorization model for accessing cloud services
JP2011250335A (en) Efficient mutual authentication method, program, and device
JP2000261428A (en) Authentication device in decentralized processing system
CN114697046B (en) Security authentication method and system based on SM9 secret

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
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20140827

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee