KR102393403B1 - 소프트웨어 멀티 소유권 계정 관리 방법 - Google Patents

소프트웨어 멀티 소유권 계정 관리 방법 Download PDF

Info

Publication number
KR102393403B1
KR102393403B1 KR1020210145186A KR20210145186A KR102393403B1 KR 102393403 B1 KR102393403 B1 KR 102393403B1 KR 1020210145186 A KR1020210145186 A KR 1020210145186A KR 20210145186 A KR20210145186 A KR 20210145186A KR 102393403 B1 KR102393403 B1 KR 102393403B1
Authority
KR
South Korea
Prior art keywords
software
management server
account
user
ownership
Prior art date
Application number
KR1020210145186A
Other languages
English (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 KR1020210145186A priority Critical patent/KR102393403B1/ko
Priority to JP2021205182A priority patent/JP7312484B2/ja
Priority to US17/556,105 priority patent/US20230133350A1/en
Application granted granted Critical
Publication of KR102393403B1 publication Critical patent/KR102393403B1/ko

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/3297Cryptographic 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 time stamps, e.g. generation of time stamps
    • 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/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3239Cryptographic 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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/105Arrangements for software license management or administration, e.g. for managing licenses at corporate level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • G06F21/335User authentication using certificates for accessing specific resources, e.g. using Kerberos tickets
    • 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
    • H04L2209/38
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)

Abstract

본 발명은 소프트웨어 멀티 소유권 계정 관리 방법에 관한 것이다. 본 발명은 소프트웨어를 등록하는 단계, 사용권한을 설정하는 단계, 사용권한을 양도하는 단계로 구분되고, 상기 소프트웨어를 등록하는 단계는, 관리서버의 수신부가 소프트웨어 제작사 서버로부터 소프트웨어 등록 요청을 수신하는 단계와, 관리서버의 인증부가 사전에 인가받은 제작사인지 확인하는 단계와, 관리서버의 인증부가 소프트웨어 등록을 요청받은 시간정보와 소프트웨어 이름의 스트링 정보를 이용하여 스마트 컨트랙트 트랜젝션을 생성하는 단계를 포함한다. 본 발명을 통해 시스템 유저 계정과 연동되는 하위 접속 토큰을 이용하여 사용자간 소프트웨어의 사용 권한을 타인에게 자유롭게 양도가 가능하고, 하나의 소프트웨어에 대해 다수의 접속권한을 위한 하위 접속 토큰을 추가적으로 발행함으로써 사용자가 다수개의 접속 권한을 가질 수 있어 소프트웨어 활용범위를 넓힐 수 있다.

Description

소프트웨어 멀티 소유권 계정 관리 방법{Method and system for managing software multi-ownership account}
본 발명은 소프트웨어 멀티 소유권 계정 관리 방법에 관한 것으로, 특히
시스템의 유저 계정과 연동 되는 소유권 증명의 하위 접속토큰을 이용하여 사용자간 소프트웨어의 사용권한을 타인에게 양도가 가능하며, 추가적으로 하위 접속토큰을 발행함으로서 하나의 소프트웨어 다수의 접속권한을 공유가 가능한 범용적인 소프트웨어 멀티 소유권 계정 관리 방법에 관한 것이다.
종래의 개인용 컴퓨터 플랫폼에서 실행되는 스탠드얼론 형태의 소프트웨어는 디스켓, CD , DVD 과 같은 물리적 수단으로 소프트웨어를 설치하여 제공된 시리얼 번호를 통해 사용권한을 인증하는 것이 일반적이었다. 그러나 이러한 물리적 수단으로 설치하는 방법은 불법 복제가 난무하는 문제가 있었다. 이후 네트워크 인프라의 보급과 컴퓨팅 기술의 발전에 따라 온라인 클라우드 플랫폼을 통하여 소프트웨어를 판매 및 배포를 하게 되었고, 이를 통해 불법 복제 문제가 해결되고 양질의 소프트웨어 시장을 창출하게 되었다.
그러나 이 방법은 소비자측의 디지털 컨텐츠의 소유권 문제가 발생하고 있다. 클라우드 플랫폼을 통한 소프트웨어 배급 및 보급은 사용자의 플랫폼 계정에 그 사용권한의 귀속됨으로서, 사용자간 재판매가 불가능하게 되었고 소프트웨어 재판매를 하기 위해 사용자의 플랫폼 계정을 판매하는 경우가 발생하고 있다. 이러한 경우 플랫폼 계정을 판매함으로서 원 소유자의 개인정보 유출이 야기되었으며, 원 소유자가 개인정보를 통해 판매한 플랫폼 계정에 재접근하여 접속 권한 등을 변경하는 문제가 발생하고 있다.
또한 플랫폼 프로바이더(예컨대, 구글)와 같은 플랫폼이 유저의 소프트웨어 사용 계정의 관리 독점에 따라, 사용자가 자신이 구매한 소프트웨어에 대해 자유로운 사용과 활용이 불가능하다는 것도 문제이다. 예를 들어, 사용자가 환경에 따라 하나의 소프트웨어에 복수의 사용권한이 필요할 경우에도 현재 시스템으로는 플랫폼 계정에 하나의 소프트웨어 혹은 서비스에는 단일의 접속 권한만이 있다. 이에 따라 소프트웨어 클라우드 플랫폼을 통해 사용자가 구입한 소프트웨어에 대한 플랫폼의 귀속을 떠나 사용자가 구매한 소프트웨어를 양도하거나 사용 계정 추가하는 것을 자유스럽게 할 수 있도록 하여 사용자의 구입한 소프트웨어의 사용권한을 플랫폼의 독점적 관리에서 벗어나도록 하여 사용자의 디지털 재화 소유권을 재확립 할수 있도록 새로운 형태의 계정 관리 방법에 대한 필요성이 대두 되었다.
선행특허로는 공개특허 제10-2020-0129939호(블록체인 네트워크에서 계정을 관리하는 방법, 시스템 및 비일시성의 컴퓨터 판독 가능 기록 매체)이 있으나, 블록체인 네트워크에서 사용자로부터 개인키(private key)에 관한 재설정이 요청되면, 새로운 계정을 발급하여 기존 계정을 새로운 계정으로 변경하고, 기존 계정과 연관되는 데이터 중 적어도 일부가 새로운 계정과 연관되는 데이터가 될 수 있게 하는 기술을 개시하고 있을 뿐이다.
본 발명이 해결하고자 하는 과제는 클라우드 플랫폼의 사용자 계정에 귀속된 소프트웨어에 대한 소유권 및 사용권한을 자유롭게 양도 및 양수가 가능하며, 하나의 소프트웨어에 다수가 공유가 가능하도록 하여 소비자 소프트웨어의 사용과 활용의 범위를 넓혀줄 수 있는 멀티 소유권 계정 관리 방법을 제공하는 데 있다.
본 발명의 소프트웨어 멀티 소유권 계정 관리 방법은, 소프트웨어를 등록하는 단계, 소유권을 설정하는 단계, 소유권을 양도하는 단계로 구분되고, 상기 소프트웨어를 등록하는 단계는, 관리서버의 수신부가 소프트웨어 제작사 서버로부터 소프트웨어 등록 요청을 수신하는 단계와, 관리서버의 인증부가 사전에 인가받은 제작사인지 확인하는 단계와, 관리서버의 인증부가 소프트웨어 등록을 요청받은 시간정보와 소프트웨어 이름의 스트링 정보를 이용하여 스마트 컨트랙트 트랜젝션을 생성하는 단계를 포함한다.
상기 사용권한을 설정하는 단계는, 사용자단말이 전용애플리케이션에 연동되어 있는 소프트웨어를 다운로드하는 단계와, 사용자단말이 다운로드받은 소프트웨어를 최초 실행하면, 연동 소프트웨어 서버가 관리서버에 사용권한을 요청하는 단계와, 관리서버의 인증부가 데이터베이스에서 트랜젝션ID를 인출하는 단계와, 관리서버의 인증부가 사용자의 최상위 계정을 인출하여 생성하는 단계와, 관리서버의 인증부가 트렌젝션ID와 블록체인CA를 이용하여 사용자의 소유권정보를 생성하는 단계를 포함한다. 상기 관리서버의 사용권한생성부가 억세스토큰 및 검증토큰을 반복하여 생성함으로써 하나의 소프트웨어에 대한 다수개의 억세스토큰 및 검증토큰을 통해 다수가 상기 소프트웨어를 공유할 수 있다.
상기 사용권한을 양도하는 단계는, 사용자단말이 양도를 원하는 소프트웨어를 선택하여 관리서버에 전달하는 단계와, 관리서버의 사용권한양도부가 소프트웨어를 양수를 원하는 유저 정보를 매칭하여 사용자단말에 전달하는 단계와, 사용자단말이 양도하려는 계정을 실행하고 관리서버에 전달하는 단계와, 관리서버의 사용권한양도부가 사용권한의 트렌젝션ID를 검색하여 상태정보를 블록체인 시스템에 요청하는 단계와, 관리서버의 수신부가 블록체인 시스템의 해당 트렌젝션ID의 블록정보를 체크하여 상태정보를 수신하는 단계와, 관리서버의 사용권한양도부가 데이터베이스에서 소프트웨어 사용권한을 양도자에서 양수자로 업데이트하는 단계와, 관리서버의 사용권한양도부가 기존 접속된 유저 연결을 해지하는 단계를 포함한다.
본 발명에 의하면 시스템의 유저 계정과 연동 되는 소유권 증명의 하위 접속토큰을 이용하여 사용자간 소프트웨어의 사용 권한을 타인에게 자유롭게 양도가 가능하다.
또한, 하나의 소프트웨어에 대해 다수의 접속권한을 위한 하위 접속 토큰을 추가적으로 발행함으로써 사용자가 다수개의 접속 권한을 가질 수 있어 소프트웨어 활용범위를 넓힐 수 있다. 즉, 발행된 하위 접속 토큰을 양도 및 양수할 수 있다.
또한, 최근 클라우드 플랫폼에 따른 사용권한의 업체의 귀속을 막음으로서 사용자로 하여금 보다 공정한 디지털 컨텐츠 사용 및 소유권한 확립이 가능하다.
또한, 소프트웨어 양도하기 위해 사용자의 플랫폼 계정을 판매하는 것을 방지할 수 있어 개인정보 보안이 향상된다.
도 1은 본 발명의 실시예에 따른 소프트웨어 멀티 소유권 계정 관리를 위한 소프트웨어를 등록하는 방법을 설명하는 흐름도이다.
도 2는 본 발명의 실시예에 따른 사용권한 설정 방법을 설명하는 흐름도이다.
도 3은 본 발명의 실시예에 따른 사용권한 양도 방법을 설명하는 흐름도이다.
도 4는 본 발명의 실시예에 따른 소프트웨어 멀티 소유권 계정 관리 시스템을 설명하는 구성도이다.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시예들에 대해서 특정한 구조적 또는 기능적 설명은 단지 본 발명의 개념에 따른 실시예들을 설명하기 위한 목적으로 예시 된 것으로서, 본 발명의 개념에 따른 실시예들은 다양한 형태들로 실시될 수 있으며 본 명세서에 설명된 실시예들에 한정되지 않는다.
본 발명의 개념에 따른 실시예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시예들을 도면에 예시하고 본 명세서에서 상세하게 설명하고자 한다. 그러나 이는 본 발명의 개념에 따른 실시예들을 특정한 개시 형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 또는 대체물을 포함한다.
본 명세서에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로서, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 본 명세서에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
이하, 본 명세서에 첨부된 도면들을 참조하여 본 발명의 실시예들을 상세히 설명한다.
도 1은 본 발명의 실시예에 따른 소프트웨어 멀티 소유권 계정 관리를 위한 소프트웨어를 등록하는 방법을 설명하는 흐름도이다.
도 1을 참조하면, 소프트웨어 멀티 소유권 계정 관리 방법은 소프트웨어를 등록하는 단계, 사용권한을 설정하는 단계, 사용권한을 양도하는 단계로 구분된다.
소프트웨어를 등록하는 단계는, 관리서버의 수신부가 소프트웨어 제작사 서버로부터 소프트웨어 등록 요청을 수신한다(S101).
관리서버의 인증부가 사전에 인가받은 제작사인지 확인한다(S103). 인증부는 데이터베이스로부터 사전에 인가받은 개발사 키와 일치하는 지 확인한다.
관리서버의 인증부가 소프트웨어 등록을 요청받은 시간정보와 소프트웨어 이름의 스트링 정보를 이용하여 스마트 컨트랙트 트랜젝션을 생성한다(S105). 즉, 인증부는 소프트웨어 제작사 서버로부터 요청받은 소프트웨어에 대하여 검증 후 인가하여 앱키(app_key)를 발급하기 위해, 요청 당시의 시간정보(timestamp)의 숫자형 데이터와 소프트웨어 이름 스트링 정보를 합성하여 블록체인의 스마트 컨트랙트 트랜젝션을 일으킬 수 있다.
관리서버의 수신부가 블록체인 시스템으로부터 트랜젝션 ID를 수신한다(S107). 스마트 컨트랙트는 해당 게임정보에 대하여 블록체인 시스템상의 사용자의 CA 주소를 맵핑하여 소유권 블록을 생성하며 블록체인내의 월드스테이트(world state)상에 저장하고 해당 블록의 트렌젝션 ID를 반환한다.
관리서버의 인증부가 트렌젝션 ID를 저장하고 소프트웨어 등록키를 생성한다(S109). 인증부는 트렌젝션 ID의 HASH코드가 생성되었을때 데이터베이스에 삽입하며 같이 상승되는 인덱스의 숫자값(예컨대, 데이터타입 BIGINT)을 앱키로 지정하고, 이를 다시 LONG 형으로 변형하여 요청한 소프트웨어 개발사에게 인가 사용할 앱키로 반환할 수 있다. 관리서버의 송신부가 소프트웨어 등록키를 소프트웨어 제작사 서버에 전송한다(S111).
도 2는 본 발명의 실시예에 따른 사용권한 설정 방법을 설명하는 흐름도이다. 도 2를 참조하면, 사용권한을 설정하는 단계는, 사용자단말이 전용애플리케이션에 연동되어 있는 소프트웨어를 다운로드한다(S201). 연결된 소프트웨어를 다운로드하면 전용 애플리케이션에서 표시되며 사용자는 클릭하여 실행할수 있다.
사용자단말이 다운로드받은 소프트웨어를 최초 실행하면, 연동 소프트웨어 서버가 관리서버에 사용권한을 요청한다(S203). 즉, 사용자가 최초 실행하게 되면 연동되는 소프트웨어에 사용자의 억세스토큰이 없으므로, 사용자에 대한 소프트웨어 사용권한을 연동소프트웨어의 앱키(app_key)와 어카운트 토큰(account_token)을 통해 인증부에게 발급 요청할 수 있다.
관리서버의 인증부가 데이터베이스에서 트랜젝션ID를 인출한다(S205). 인증부는 요청받은 앱키(app_key)에 따라 데이터베이스의 앱인포(app_info)내의 트렌젝션ID를 인출할 수 있다.
관리서버의 인증부가 사용자의 최상위 계정을 인출하여 생성한다(S207). 인증부는 요청받을때 참조받은 유저의 어카운트 토큰(account_token)을 통해 사용자의 최상위 계정을 인출한다. 상기 최상위계정은 블록체인의 CA(계정정보)이다.
관리서버의 인증부가 트렌젝션ID와 블록체인CA를 이용하여 사용자의 소유권정보를 생성한다(S209). 즉, 인증부는 블록을 생성하기 위한 소유권 정보를 생성한다. 블록체인 시스템은 인증부로부터 소유권 정보를 수신하여 새로운 블록을 생성하고 해당 트렌젝션 ID 를 반환한다. 상기 트렌젝션 ID를 통해 해당 소프트웨어의 소유권을 증명할 수 있다. 즉, 생성된 생성된 블록은 장부 역할을 할 수 있다. 즉, 위 단계를 반복하면 하나의 소프트웨어를 인증하는 앱키(app_key)를 기준으로 하여 추가적인 하위 접속 토큰, 즉 소유권을 발행할 수 있다.
관리서버의 사용권한생성부가 억세스토큰 및 검증토큰을 생성한다(S211). 관리서버의 사용권한생성부는 소유권 정보 즉 접속토큰은 외부에 공개되선 안되기 때문에, 접속토큰을 암호화해서 억세스토큰을 생성한다. 사용자단말과 소프트웨어 제공하는 회사의 서버에서 이 억세스토큰을 통해 접속을 하게하고, 검증토큰을 통해 이 접근이 유효한가를 체크할 수 있다. 검증 토큰은 시간이 지나감에 따라 갱신되고 악의적 유저 즉 해커가 아니라면 항상 검증토큰을 통신하며, 갱신될때마다 동기화할 수 있다.
사용권한생성부는 트렌젝션 ID 와 더불어 유저 최상위 계정을 맵핑하여 데이터베이스의 어카운트 인포(account_info)에 저장하고 억세스 토큰과 검증토큰을 생성한다. 억세스토큰은 소유권에 대한 토큰이고, 검증토큰은 검증 또는 갱신을 위한 토큰이다.
관리서버의 송신부가 연동소프트웨어 서버에 억세스토큰 및 검증토큰을 전송한다(S213). 즉, 연동 소프트웨어 서버는 억세스 토큰을 사용자 접속 권한 계정으로 등록하고 검증토큰을 계정에 대한 검증을 위해 사용한다.
사용권한생성부는 사용자의 블록체인 시스템상의 계정 주소의 hex값을 참조하고, 등록한 소프트웨어의 트렌젝션 ID값을 참조하여 하나의 구조체에 담는다. contents_make_own.sol 명의 스마트 컨트랙트를 통해 가져온 구조체 데이터 중 소프트웨어 트렌젝션 ID를 KEY data로 지정하고, 벨류로서 구조체의 데이터중 사용자의 계정주소 hex값을 지정한다. 이후에 블록체인 peer(node)에 접근하여 해당 컨트랙트를 블록체인의 합의체에 검증을 하고, 위변조 문제가 없으면 블록을 생성하여 블록체인상의 장부기록을 한다. 이 과정에서 생성되는 블록체인 블록의 트렌젝션 ID를 반환하여 인증부에 송신한다.
인증부는 function insert_account_data()를 실행하여 해당 트렌젝션ID 와 컨텐츠 소유권 제작시 필요한 인증키를 조합하여 Byte Stream(직렬화) 한 후 , 이를 hex코드로 변환하여 최종 해당 소프트웨어의 사용및 접속 권한을 허가하는 억세스 토큰을 제작할 수 있다. 상기 억세스토큰은 AES128을 통해 암호키로 다시 한 번 보안을 강화한 hex코드로 반환시킨다. 이후 이를 인증부의 사용자의 최상위 계정 정보를 묶어 데이터베이스에 저장하고, 최초 사용권한(소유권)을 요청한 유저의 소유 혹은 접속 권한을 체크할 수 있는 억세스토큰(Access_token)을 만들며 접속시 해당 접근이 유효한 접근인지를 체크할 검증토큰을 제작 후 데이터베이스에 요청하여 어카운트(account_info) 테이블에 삽입하여 저장한다.
사용권한생성부는 위 과정을 반복 수행하여 같은 소프트웨어에 소유권 혹은 접속 권한을 N개를 가질 수 있다. 즉, 관리서버의 사용권한생성부가 억세스토큰 및 검증토큰을 반복하여 생성함으로써 하나의 소프트웨어에 대한 다수개의 억세스토큰 및 검증토큰을 통해 다수가 상기 소프트웨어를 공유할 수 있다.
도 3은 본 발명의 실시예에 따른 사용권한 양도 방법을 설명하는 흐름도이다. 도 3을 참조하면, 상기 사용권한을 양도하는 단계는, 먼저 사용자단말이 양도를 원하는 소프트웨어를 선택하여 관리서버에 전달한다(S301).
관리서버의 사용권한양도부가 소프트웨어를 양수를 원하는 유저 정보를 매칭하여 사용자단말에 전달한다(S303).
사용자단말이 양도하려는 계정을 실행하고 관리서버에 전달한다(S305).
관리서버의 사용권한양도부가 사용권한의 트렌젝션ID를 검색하여 상태정보를 블록체인 시스템에 요청한다(S307). 즉, 사용자가 양수자를 찾았음을 확인한후 사용권한양도부를 통해 사용자가 양도하고자 하는 소유계정 중의 하나인 선택 계정을 양도 실행을 하게 된다. 사용권한양도부는 현재 선택된 사용권한의 트렌젝션ID 를 검색하여 상태 정보 블록체인 메인넷에 요청할 수 있다.
관리서버의 수신부가 블록체인 시스템의 해당 트렌젝션ID의 블록정보를 체크하여 상태정보를 수신한다(S309). 상태정보가 양도가 가능한 상태 정보일 때, 양도자 및 양수자의 각 블록체인 계정과 사용권한(소유권)의 블록체인 트렌젝션ID를 양도 전환 스마트 컨트랙트를 통해 해당 소프트웨어 사용 권한을 양도자에서 양수자로 이양시키고 블록을 저장한후 해당 트렌젝션 ID를 반환한다.
관리서버의 사용권한양도부가 데이터베이스에서 소프트웨어 사용권한을 양도자에서 양수자로 업데이트한다(S311).
관리서버의 사용권한양도부가 기존 접속된 유저 연결을 해지한다(S313). 즉, 모든 접속을 끊게하고 갱신 된 상태에서의 사용자 및 양수자가 재로그인을 하도록 한다.
도 4는 본 발명의 실시예에 따른 소프트웨어 멀티 소유권 계정 관리 시스템을 설명하는 구성도이다.
도 4를 참조하면, 소프트웨어 멀티 소유권 계정 관리 시스템은 관리서버(100), 사용자단말(200), 소프트웨어 개발사서버(300), 블록체인시스템(400)으로 구성된다.
관리서버(100)는 인증부(110), 사용권한생성부(120), 사용권한양도부(130), 수신부(140), 송신부(150), 제어부(160), 데이터베이스(170)로 구성된다.
인증부(110)는 트랜젝션생성모듈(111), 소프트웨어등록키 생성모듈(113), 최상위계정생성모듈(115), 소유권정보생성모듈(117)로 구성된다.
트렌젝션생성모듈(111)은 소프트웨어 등록 요청시간 정보와 소프트웨어 이름 스트링정보를 이용하여 스마트 컨트랙트 트랜젝션을 생성할 수 있다. 소프트웨어등록키 생성모듈(113)은 트렌젝션 ID의 HASH코드가 생성되었을때 데이터베이스에 삽입하고, 같이 상승되는 인덱스의 숫자값(예컨대, 데이터타입 BIGINT)을 앱키로 지정하고, 이를 다시 LONG 형으로 변형하여 요청한 소프트웨어 개발사에게 인가 사용할 앱키로 반환할 수 있다. 최상위계정생성모듈(115)는 유저의 어카운트 토큰(account_token)을 통해 사용자의 최상위 계정을 인출한다. 상기 최상위계정은 블록체인의 CA(계정정보)이다. 소유권정보생성모듈(117)은 트렌젝션ID와 블록체인의 CA정보를 이용하여 사용자의 소유권정보를 생성할 수 있다.
사용권한생성부(120)는 인증부에서 생성된 최상위계정에 속하는 하위 소프트웨어 사용권한을 증명하는 억세스토큰을 생성할 수 있다.
사용권한양도부(130)는 사용권한생성부에서 생성된 소프트웨어 사용권한인 억세스토큰을 다른 사용자에게 양도 또는 양수할 수 있도록 사용권한을 양도할 수 있다.
수신부(140)는 소프트웨어 제작사 서버로부터 소프트웨어 등록 요청을 수신할 수 있다. 수신부(140)는 블록체인시스템으로부터 트렌젝션ID를 수신할 수 있다.
송신부(150)는 소프트웨어 등록키를 소프트웨어 제작사 서버에 전송할 수 있다.
제어부(160)는 사용자단말에 전용애플리케이션이 설치되도록 제어할 수 있다. 상기 전용애플리케이션은 런쳐애플리케이션으로서, 사용자가 본 발명에 연동되는 소프트웨어가 판매되거나 서비스하고 있는 특정 클라우드 소프트웨어 판매 사이트에 연동된 다운로드 URL을 링크하고 있고, 사용자의 요청에 따라 다운로드를 할 수 있다. 사용자가 런쳐애플리케이션에 가입되어있다고 가정하고, 소프트웨어를 선택 실행을 하게 되면 본 발명의 인증부를 통해 소유권을 저장한다, 이미 소유권이 저장되어있다면, 소유권에 대한 억세스토큰과 검증토큰을 받아 사용하고자 하는 소프트웨어 개발사의 인증서버로 접속하여, 인증절차를 마무리하고 소프트웨어의 사용에 진입하게 된다. 런처애플리케이션은 소프트웨어 소유권 관리탭이 존재하며, 소유권 관리탭을 통해 소유권을 추가하거나, 타인에게 양도하거나 관리를 할 수 있다. 사용자는 추가적 소유권의 억세스토큰을 발급받을 수 있다. 이 과정을 통해 신 토큰으로 소프트웨어 가입절차를 거쳐 새로운 소프트웨어의 계정이 생성하게 된다. 이후 사용자는 소유권 관리탭으로 접근 토큰을 바꿔줌으로써 변경된 억세스토큰으로 소프트웨어 개발사의 인증 서버로 인증한다. 상기 런쳐애플리케이션은 소유권의 오너를 변경할 수 있다. 변경될 새로운 사용자의 본 발명 시스템 계정정보를 입력하여 런쳐애플리케이션으로 요청하고, 런쳐애플리케이션은 요청받은 내용을 사용권한양도부에 요청하고 블록체인 시스템에 저장된 소유권에 대한 상태정보 체크 후 유효한 요청인지 블록체인 내에서 합의를 거쳐 변경된 히스토리를 블록으로 저장후 소프트웨어의 소유권에 대한 오너를 갱신 업데이트 한다. 이후 데이터베이스에 최종 저장 후, 인증부로 연동하여 기존의 소유자의 소프트웨어 연결을 끊은후 새로운 소유자의 소유권정보를 추가 갱신하여 새로운 사용자가 선택한 소프트웨어의 접속 권한을 갖는다.
데이터베이스(170)는 소프트웨어 제작사가 사전에 인가받은 제작사인지 여부를 저장할 수 있고, 사용자단말의 요청에 따라 생성된 트렌젝션ID를 저장하고, 사용권한양도부로부터 요청시 데이터베이스의 소프트웨어 사용권한을 양도자에서 양수자로 업데이트할 수 있다. 데이터베이스(170)에는 어카운트 인포(account_info), 유저 인포(user_info), 앱 인포(app_info)가 저장될 수 있고, 억세스토큰 및 검증토큰이 저장될 수 있다.
발명의 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
10; 관리서버스템 100; 관리서버
110; 인증부 120; 사용권한생성부
130; 사용권한양도부 140; 수신부
150; 송신부 160; 제어부
170; 데이터베이스 200; 사용자단말
300; 소프트웨어 개발사 서버 400; 블록체인시스템

Claims (5)

  1. 소프트웨어 멀티 소유권 계정 관리 방법에 있어서,
    소프트웨어를 등록하는 단계, 사용권한을 설정하는 단계, 사용권한을 양도하는 단계로 구분되고,
    상기 소프트웨어를 등록하는 단계는,
    관리서버의 수신부가 소프트웨어 제작사 서버로부터 소프트웨어 등록 요청을 수신하는 단계;
    관리서버의 인증부가 사전에 인가받은 제작사인지 확인하는 단계; 및
    관리서버의 인증부가 소프트웨어 등록을 요청받은 시간정보와 소프트웨어 이름의 스트링 정보를 이용하여 스마트 컨트랙트 트랜젝션을 생성하는 단계;
    관리서버의 수신부가 블록체인 시스템으로부터 트랜젝션 ID를 수신하는 단계;
    관리서버의 인증부가 트렌젝션 ID를 저장하고 소프트웨어 등록키를 생성하는 단계; 및
    관리서버의 송신부가 소프트웨어 등록키를 소프트웨어 제작사 서버에 전송하는 단계를 포함하는 소프트웨어 멀티 소유권 계정 관리 방법.
  2. 삭제
  3. 제1항에 있어서,
    사용권한을 설정하는 단계는,
    사용자단말이 전용애플리케이션에 연동되어 있는 소프트웨어를 다운로드하는 단계;
    사용자단말이 다운로드받은 소프트웨어를 최초 실행하면, 연동 소프트웨어 서버가 관리서버에 사용권한을 요청하는 단계;
    관리서버의 인증부가 데이터베이스에서 트랜젝션ID를 인출하는 단계;
    관리서버의 인증부가 사용자의 최상위 계정을 인출하여 생성하는 단계; 및
    관리서버의 인증부가 트렌젝션ID와 블록체인CA를 이용하여 사용자의 소유권정보를 생성하는 단계;
    관리서버의 사용권한생성부가 억세스토큰 및 검증토큰을 생성하는 단계;
    관리서버의 송신부가 연동소프트웨어 서버에 억세스토큰 및 검증토큰을 전송하는 단계를 더 포함하는 소프트웨어 멀티 소유권 계정 관리 방법.
  4. 제3항에 있어서,
    관리서버의 사용권한생성부가 억세스토큰 및 검증토큰을 반복하여 생성함으로써 하나의 소프트웨어에 대한 다수개의 억세스토큰 및 검증토큰을 통해 다수가 상기 소프트웨어를 공유할 수 있는 소프트웨어 멀티 소유권 계정 관리 방법.
  5. 제1항에 있어서,
    상기 사용권한을 양도하는 단계는,
    사용자단말이 양도를 원하는 소프트웨어를 선택하여 관리서버에 전달하는 단계;
    관리서버의 사용권한양도부가 소프트웨어를 양수를 원하는 유저 정보를 매칭하여 사용자단말에 전달하는 단계;
    사용자단말이 양도하려는 계정을 실행하고 관리서버에 전달하는 단계;
    관리서버의 사용권한양도부가 사용권한의 트렌젝션ID를 검색하여 상태정보를 블록체인 시스템에 요청하는 단계;
    관리서버의 수신부가 블록체인 시스템의 해당 트렌젝션ID의 블록정보를 체크하여 상태정보를 수신하는 단계;
    관리서버의 사용권한양도부가 데이터베이스에서 소프트웨어 사용권한을 양도자에서 양수자로 업데이트하는 단계; 및
    관리서버의 사용권한양도부가 기존 접속된 유저 연결을 해지하는 단계를 더 포함하는 소프트웨어 멀티 소유권 계정 관리 방법.







KR1020210145186A 2021-10-28 2021-10-28 소프트웨어 멀티 소유권 계정 관리 방법 KR102393403B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020210145186A KR102393403B1 (ko) 2021-10-28 2021-10-28 소프트웨어 멀티 소유권 계정 관리 방법
JP2021205182A JP7312484B2 (ja) 2021-10-28 2021-12-17 ソフトウェアマルチ所有権勘定管理方法
US17/556,105 US20230133350A1 (en) 2021-10-28 2021-12-20 Method and system for managing software multi-ownership account

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210145186A KR102393403B1 (ko) 2021-10-28 2021-10-28 소프트웨어 멀티 소유권 계정 관리 방법

Publications (1)

Publication Number Publication Date
KR102393403B1 true KR102393403B1 (ko) 2022-04-29

Family

ID=81429041

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210145186A KR102393403B1 (ko) 2021-10-28 2021-10-28 소프트웨어 멀티 소유권 계정 관리 방법

Country Status (3)

Country Link
US (1) US20230133350A1 (ko)
JP (1) JP7312484B2 (ko)
KR (1) KR102393403B1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101680542B1 (ko) * 2015-09-09 2016-12-13 주식회사 코인플러그 블록체인을 기반으로 하는 일회용 상품의 정품확인 시스템 및 방법
KR102016730B1 (ko) * 2017-05-24 2019-09-03 라온시큐어(주) 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자 인증 방법 및 시스템
KR20200113602A (ko) * 2019-03-26 2020-10-07 권형석 스마트 컨트랙트 기반 블록체인을 활용한 정품확인 방법 및 시스템.
KR20200118412A (ko) * 2018-03-06 2020-10-15 라인플러스 주식회사 콘텐츠의 사용 권한 관리 방법 및 장치
KR102211698B1 (ko) * 2019-06-26 2021-02-03 넷마블 주식회사 글로벌 인증 계정 시스템

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009084601A1 (ja) * 2007-12-27 2009-07-09 Nec Corporation アクセス権限管理システム、アクセス権限管理方法及びアクセス権限管理用プログラム
US8359246B2 (en) * 2010-03-19 2013-01-22 Buchheit Brian K Secondary marketplace for digital media content
CN107145768B (zh) * 2016-03-01 2021-02-12 华为技术有限公司 版权管理方法和系统
US11258587B2 (en) 2016-10-20 2022-02-22 Sony Corporation Blockchain-based digital rights management
US10581620B2 (en) * 2016-11-14 2020-03-03 Integrity Security Services Llc Scalable certificate management system architectures
US20180167198A1 (en) * 2016-12-09 2018-06-14 Cisco Technology, Inc. Trust enabled decentralized asset tracking for supply chain and automated inventory management
JP6570768B2 (ja) 2017-06-28 2019-09-04 特定非営利活動法人サイバー・キャンパス・コンソーシアムTies コンテンツ流通プログラムならびにそれを用いるコンテンツの管理システムおよびコンテンツの提供方法
WO2019065831A1 (ja) 2017-09-27 2019-04-04 株式会社Artrigger 取引管理方法、利用権管理方法、通信端末、及びプログラム
JP7053031B2 (ja) 2018-08-20 2022-04-12 株式会社アクセル 情報処理システム、情報処理装置、情報処理方法及び情報処理プログラム
EP3644549A1 (en) * 2018-10-23 2020-04-29 Siemens Aktiengesellschaft Issuing device and method for issuing and requesting device and method for requesting a digital certificate

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101680542B1 (ko) * 2015-09-09 2016-12-13 주식회사 코인플러그 블록체인을 기반으로 하는 일회용 상품의 정품확인 시스템 및 방법
KR102016730B1 (ko) * 2017-05-24 2019-09-03 라온시큐어(주) 프로그래밍이 가능한 블록체인과 통합 아이디 기반의 사용자 인증 방법 및 시스템
KR20200118412A (ko) * 2018-03-06 2020-10-15 라인플러스 주식회사 콘텐츠의 사용 권한 관리 방법 및 장치
KR20200113602A (ko) * 2019-03-26 2020-10-07 권형석 스마트 컨트랙트 기반 블록체인을 활용한 정품확인 방법 및 시스템.
KR102211698B1 (ko) * 2019-06-26 2021-02-03 넷마블 주식회사 글로벌 인증 계정 시스템

Also Published As

Publication number Publication date
JP7312484B2 (ja) 2023-07-21
US20230133350A1 (en) 2023-05-04
JP2023066338A (ja) 2023-05-15

Similar Documents

Publication Publication Date Title
JP7436568B2 (ja) ブロックチェーンにより実現される方法及びシステム
KR101979586B1 (ko) 블록 체인 기반으로 관리되는 사물 인터넷 디바이스 및 그 시스템 및 방법
CN111213147B (zh) 用于基于区块链的交叉实体认证的系统和方法
CN111316303B (zh) 用于基于区块链的交叉实体认证的系统和方法
JP4198589B2 (ja) 1つ以上のメディア・ファイルへのアクセスを管理する、コンピュータを用いた方法、コンピュータ可読メディア、およびシステム
US9740843B2 (en) Method, system, license server for providing a license to a user for accessing a protected content on a user device and software module
US7451202B2 (en) Information management system having a common management server for establishing secure communication among groups formed out of a plurality of terminals
JP6543743B1 (ja) 管理プログラム
KR20130085560A (ko) 클라우드 기반의 디지털 저작권 관리 서비스를 제공하는 방법 및 장치와 그 시스템
US20080097921A1 (en) Digital distribution management system and contents distribution management method using the same
CN109600366A (zh) 基于区块链的保护用户数据隐私的方法及装置
KR20040034518A (ko) 관리 장치, 단말 장치 및 관리 시스템
CN111460400B (zh) 一种数据处理方法、装置及计算机可读存储介质
KR20080019362A (ko) 대체 가능한 지역 도메인 관리 시스템 및 방법
CN111934870A (zh) 区块链网络中的根证书更新方法、装置、设备以及介质
JP2023120387A (ja) 管理方法、管理装置、及び、プログラム
CN116980163A (zh) 基于可信执行环境的数据处理方法、装置、设备及介质
US20080127332A1 (en) Information processing system, electronic authorization information issuing device, electronic information utilizing device, right issuing device, recording medium storing electronic authorization information issuing program, electronic information utilizing program and right issuing program, and information processing method
KR102393403B1 (ko) 소프트웨어 멀티 소유권 계정 관리 방법
JP2004362189A (ja) ユーザ情報流通システム
JP7303653B2 (ja) 管理方法、管理装置、及び、プログラム
KR102498688B1 (ko) 인증 서비스 제공 방법 및 시스템
KR102497440B1 (ko) Did 기반의 사용자 정보 관리 서비스 제공 방법 및 시스템
JP2002312523A (ja) コンテンツ交換方法及び装置と、コンテンツ交換処理用プログラム及びそのプログラムの記録媒体
KR100648207B1 (ko) 디지털 컨텐츠의 유통방법

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant