KR20190141335A - Usb메모리를 이용한 소프트웨어 라이센스 관리방법 및 장치 - Google Patents

Usb메모리를 이용한 소프트웨어 라이센스 관리방법 및 장치 Download PDF

Info

Publication number
KR20190141335A
KR20190141335A KR1020180067953A KR20180067953A KR20190141335A KR 20190141335 A KR20190141335 A KR 20190141335A KR 1020180067953 A KR1020180067953 A KR 1020180067953A KR 20180067953 A KR20180067953 A KR 20180067953A KR 20190141335 A KR20190141335 A KR 20190141335A
Authority
KR
South Korea
Prior art keywords
usb memory
license
installation
terminal
file
Prior art date
Application number
KR1020180067953A
Other languages
English (en)
Other versions
KR102104470B1 (ko
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 KR1020180067953A priority Critical patent/KR102104470B1/ko
Publication of KR20190141335A publication Critical patent/KR20190141335A/ko
Application granted granted Critical
Publication of KR102104470B1 publication Critical patent/KR102104470B1/ko

Links

Images

Classifications

    • 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/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/21Employing a record carrier using a specific recording technology
    • G06F2212/214Solid state disk
    • G06F2212/2146Solid state disk being detachable, e.g.. USB memory

Landscapes

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

Abstract

본 발명은 USB메모리를 이용한 소프트웨어 라이센스 관리방법에 관한 것이다. 보다 구체적으로, S/W 설치 파일 및 암호화된 라이센스 파일이 저장된 USB메모리가 단말기에 연결되고 상기 라이센스 파일이 유효하면, 상기 S/W 설치파일을 이용하여 S/W를 설치한 단말기의 고유ID, 상기 USB메모리의 고유ID 및 라이센스 시리얼넘버를 암호화하여 생성된 설치등록정보를 상기 USB메모리 및 상기 S/W가 설치된 상기 단말기에 각각 저장하는 등록 단계 및 상기 연결된 단말기에 설치된 S/W의 실행요청 수신시, 기저장된 설치등록정보가 일치하는지 판단하여 인증하는 인증 단계를 포함하고, 상기 인증단계에서 인증시 S/W가 실행되는 것을 특징으로 것을 특징으로 하는 USB메모리를 이용한 소프트웨어 라이센스관리방법에 관한 것이다.

Description

USB메모리를 이용한 소프트웨어 라이센스 관리방법 및 장치{Method and apparaus for managing license of software using the USB memory}
본 발명은 USB메모리를 이용한 소프트웨어 라이센스 관리방법에 관한 것이다. 보다 구체적으로, S/W 설치 파일 및 암호화된 라이센스 파일이 저장된 USB메모리가 단말기에 연결되고 상기 라이센스 파일이 유효하면, 상기 S/W 설치파일을 이용하여 S/W를 설치한 단말기의 고유ID, 상기 USB메모리의 고유ID 및 라이센스 시리얼넘버를 암호화하여 생성된 설치등록정보를 상기 USB메모리 및 상기 S/W가 설치된 상기 단말기에 각각 저장하는 등록 단계 및 상기 연결된 단말기에 설치된 S/W의 실행요청 수신시, 기저장된 설치등록정보가 일치하는지 판단하여 인증하는 인증 단계를 포함하고, 상기 인증단계에서 인증시 S/W가 실행되는 것을 특징으로 하는 USB메모리를 이용한 소프트웨어 라이센스관리방법에 관한 것이다.
일반적으로 소프트웨어는 CD-ROM, DVD-ROM 등 매체를 통해 오프라인상에 직접 판매되거나, 소프트웨어 회사의 인터넷 사이트를 통해 소비자가 다운로드하는 방식으로 판매가 이뤄진다.
하지만, 불법 복제되어 사용되는 경우가 빈번하게 발생되고 있어 이를 방지하기 위한 다양한 방안들이 연구되어 오고 있다. 하지만, 불법 복제를 확실하게 방지할 수 있는 방안이 없어서 현재에도 수많은 불법 복제 소프트웨어들이 유통되고 있는 실정이다.
소프트웨어 불법 복제 방지를 위한 방법으로 가장 기본적으로는 소프트웨어를 암호화하여 제공하고, 정품 구매자에게 암호키를 제공하여 불법복제를 방지하는 방법이 제공되고 있으나, 이러한 방법도 암호키의 유출이나, 소프트웨어 해킹으로 인하여 불법복제가 행해지고 있다.
또 다른 방법으로 USB 인터페이스를 가진 하드웨어 락 장치가 이용되고 있는데, 상기의 USB 하드웨어 락장치는 일반 USB 메모리 장치를 이용하는 것이 아닌, 고가의 전용 보안칩을 USB 장치로 탑재 및 제작한 것을 컴퓨터에 장착하고, 정품 소프트웨어를 인증하도록 하는 방식이다 사용되고 있다. 이에, 특정 라이센스 관리업체의 고가의 하드웨어 락장치(락키)를 구매해서 이용해야 한다.
이에, 본 출원인은 일반 상용 USB 메모리를 하드웨어 락 키로 활용하여 소프트웨어 라이센스 관리를 수행할 수 있는 방법 및 장치를 제공하고자 한다.
1. 한국등록특허 제10-0832221호(2008.05.23.공고)
본 발명의 목적은, 일반 사용 USB 메모리의 고유ID를 기반으로 암호화된 라이센스파일을 이용하여 소프트웨어 실행을 제어할 수 있는 USB 메모리를 이용한 소프트웨어 라이센스 관리방법 및 장치를 제공하는 데 있다.
상기한 바와 같은 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 USB 메모리를 이용한 소프트웨어 라이센스 관리방법은 S/W 설치 파일 및 암호화된 라이센스 파일이 저장된 USB메모리가 단말기에 연결되고 상기 라이센스 파일이 유효하면, 상기 S/W 설치파일을 이용하여 S/W를 설치한 단말기의 고유ID, 상기 USB메모리의 고유ID 및 라이센스 시리얼넘버를 암호화하여 생성된 설치등록정보를 상기 USB메모리 및 상기 S/W가 설치된 상기 단말기에 각각 저장하는 등록 단계 및 상기 연결된 단말기에 설치된 S/W의 실행요청 수신시, 기저장된 설치등록정보가 일치하는지 판단하여 인증하는 인증 단계를 포함하고, 상기 인증단계에서 인증시 S/W가 실행될 수 있다.
또한, 상기 등록 단계는, 최초등록단계, USB메모리 유효성 판단단계 및 설치등록단계를 포함할 수 있다.
여기서, 상기 최초등록단계는, 등록메뉴를 제공하여 USB메모리의 라이센스 시리얼 넘버 및 사용자 정보를 입력받는 단계 및 상호 연결된 상기 USB메모리의 드라이브로부터 고유ID를 추출하는 드라이브 추출단계를 포함할 수 있다.
또한, 상기 USB메모리 유효성 판단단계는 상기 USB메모리에 저장된 암호화된 라이센스 파일을 복호화하여 상기 라이센스 파일에 포함된 USB메모리 고유ID 및 라이센스 시리얼 넘버를 추출하는 복호화 추출단계 및 상기 드라이브 추출단계에서 추출된 USB메모리 고유ID와 상기 입력된 라이센스 시리얼 넘버를 상기 복호화 추출단계에서 추출된 USB메모리 고유ID와 라이센스 시리얼 넘버와 비교하여 일치하는지 판단하는 단계를 포함할 수 있다.
또한, 상기 설치등록단계는, S/W를 설치한 단말기의 고유ID, 상기 USB메모리의 고유ID 및 라이센스 시리얼넘버를 S/W버전넘버 및 기설정 비밀번호로 암호화하여 설치등록정보를 생성하는 단계 및 상기 암호화된 설치등록정보를 상기 USB메모리의 숨김디렉토리 및 상기 단말기의 S/W 설치디렉토리에 각각 저장하는 단계를 포함할 수 있다.
또한, 상기 라이센스 파일은, 관리서버에서 USB메모리 고유ID, S/W 설치가능 단말기 수 및 사용가능기간을 포함하는 사용권한, 라이센스 시리얼넘버 및 재등록여부를 S/W버전 및 기설정 비밀번호로 암호화되어 발행되고, 라이센스 파일 발행 이력정보는 관리서버에 기록될 수 있다.
또한, 상기 인증 단계는, (a) 상기 USB메모리에 저장된 라이센스 파일을 복호화하여 USB메모리 고유ID를 추출하고, USB메모리 드라이브로부터 USB메모리 고유ID를 추출하여 동일한지 판단하는 단계, (b) 고유ID가 동일하면, 상기 연결된 단말기에 기저장된 설치등록정보와 상기 USB메모리에 기저장된 설치등록정보를 비교하여 일치하는 설치등록정보가 있는지 판단하는 단계 (c) 일치하는 설치등록정보가 있는 경우, 상기 일치하는 설치등록정보에 포함된 단말기 고유ID와 상기 연결된 단말기의 드라이브로부터 추출된 단말기 고유ID를 비교하여 동일한지 판단하는 단계 및 (d) 상기 (c)단계에서 동일한 것으로 판단되면 사용권한이 있는지 판단하는 단계를 포함할 수 있다.
또한, 상기 인증단계의 (a)에서 동일하지 않은 것으로 판단되면 무단복제된 것으로 판단하여 기설치된 S/W의 실행을 락(lock) 제어할 수 있다.
또한, 상기 인증단계의 (b)에서 일치하는 설치등록정보가 없으면, 비등록된 새로운 USB메모리로 판단하여 상기 등록단계를 통해 추가 등록을 수행할 수 있다.
또한, 상기 인증단계의 (c)단계에서 단말기 고유ID가 동일하고 상기(d)단계에서 사용권한이 있으면 기설치된 SW를 실행시킬 수 있다.
또한, 상기 등록단계, 인증단계 및 설치된 S/W의 실행은 유효한 USB메모리 및 단말기가 연결된 상태에서만 수행될 수 있다.
또한, 상기 S/W가 설치된 단말기에 라이센스 파일이 인식되지 않는 USB메모리가 연결되면, 사용자로부터 라이센스 시리얼 넘버를 입력받고, 관리서버에 기저장된 정보 중 입력된 시러얼넘버에 대응되는 이전 USB메모리의 라이센스 파일에 대한 유효확인을 통해 상기 이전 USB메모리의 라이센스 파일을 폐기하고, 대체되는 라이센스 파일을 재발행하는 단계를 더 포함할 수 있다.
또한, 상기 라이센스 파일을 재발행하는 단계는, 사용자의 사용권한이 있는 라이센스 시리얼 넘버를 입력받기 위한 UI를 제공하는 단계, 관리서버로부터 상기 입력된 라이센스 시리얼 넘버에 대한 사용권한이 확인되면, 라이센스 파일 발행 이력정보 중 상기 UI를 통해 입력된 라이센스 시리얼 넘버에 매칭되는 이전 라이센스 파일과 동일한 발행조건에 따른 설치파일과 신규 라이센스 시리얼 넘버를 이용하여 재생성된 라이센스 파일을 수신하여 상기 라이센스 파일이 인식되지 않는 USB메모리에 저장하는 단계, 상기 라이센스 파일이 재발행된 USB메모리에 연결된 단말기에 설치된 설치등록정보 중 이전 라이센스 파일에 매칭되는 설치등록정보를 제거하고, 재발행된 라이센스 파일을 이용하여 설치등록정보를 재생성하는 단계 및 재생성된 설치등록정보를 SW 설치디렉토리 및 상기 라이센스 파일이 인식되지 않는 USB메모리에 재등록하는 단계를 포함할 수 있다.
또한, 상기 USB메모리 및 단말기는, 각각 기설정된 최대설치 가능 대수만큼의 설치등록정보를 생성할 수 있다.
한편, 본 발명의 일 실시 예에 따른 USB 메모리를 이용한 소프트웨어 라이센스 관리장치는 단말기, S/W 설치 파일 및 암호화된 라이센스 파일이 저장된 USB메모리, 상기 USB메모리가 상기 단말기에 연결되면, 상기 암호화 라이센스 파일을 복호화하여 유효여부를 판단하는 유효성 판단부, 유효한 것으로 판단되면, 상기 S/W 설치파일을 이용하여 S/W를 설치한 단말기의 고유ID, 상기 USB메모리의 고유ID 및 라이센스 시리얼넘버를 암호화하여 생성된 설치등록정보를 상기 USB메모리 및 상기 S/W가 설치된 상기 단말기에 각각 저장하는 등록 관리부 및 상기 USB메모리에 저장된 라이센스 파일이 유효하면, 상기 연결된 단말기 및 USB메모리에 기저장된 설치등록정보가 일치하는지 판단하는 인증부를 포함하고, 상기 인증부의 인증시 S/W가 실행될 수 있다.
이상에서 설명한 바와 같이, 본 발명의 USB 메모리를 이용한 소프트웨어 관리방법은 일반 상용 USB 메모리의 고유ID를 기반으로 암호화된 라이센스파일을 이용하여 유효성을 판단하고, USB메모리와 연결 단말기 상호 간의 설치등록정보 일치여부에 따라 소프트웨어 실행을 락/해지 제어함으로써 보안처리를 할 수 있다.
또한, USB 메모리 정보를 복사하여 다른 USB 메모리에 저장해도 실행을 할 수 없기 때문에 소프트웨어 불법복제를 확실하게 방지할 수 있는 효과가 있다.
또한, USB 메모리의 분실, 포맷 등에 의해 파일이 삭제된 경우에도 발급된 라이센스 시리얼 넘버의 사용 유효판단을 통해 새로운 라이센스 파일을 재발행할 수 있다. 또한, 라이센스 파일의 재발행시 재발행된 라이센스 파일을 기반으로 기 저장된 설치등록정보들을 재등록할 수 있다. 이에, USB 메모리의 변경시 일일이 S/W 설치 단말기별로 등록절차를 수행하지 않아도 된다.
도 1은 본 발명의 일 실시 예에 따른 USB메모리를 이용한 소프트웨어 라이센스관리장치의 개략적인 구성을 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시 예에 따른 USB메모리를 이용한 소프트웨어 라이센스관리방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 일 실시 예에 따른 등록방법을 설명하기 위한 흐름도이다.
도 4는 본 발명의 일 실시 예에 따른 인증방법을 설명하기 위한 흐름도이다.
도 5는 본 발명의 일 실시 예에 따른 재발행방법을 설명하기 위한 흐름도이다.
본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 안 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다.
따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.
이하, 도면을 참조하여 설명하기에 앞서, 본 발명의 요지를 드러내기 위해서 필요하지 않은 사항 즉 통상의 지식을 가진 당업자가 자명하게 부가할 수 있는 공지 구성에 대해서는 도시하지 않거나, 구체적으로 기술하지 않았음을 밝혀둔다.
도 1은 본 발명의 일 실시 예에 따른 USB메모리를 이용한 소프트웨어 라이센스관리장치의 개략적인 구성을 설명하기 위한 도면이다.
본 발명의 일 실시 예에 따른 USB메모리를 이용한 소프트웨어 라이센스 관리장치는 S/W 설치파일 및 라이센스 파일을 저장한 USB메모리(10), USB메모리(10)가 연결포트를 단말기(20)에 연결된 경우, S/W 설치파일에 의해 설치된 설치프로그램에 의해 유효성 판단부(30), 등록 관리부(40), 인증부(50) 및 재발행부(60)로 구현되어 S/W의 실행을 락/해지 제어할 수 있다.
본 발명에서 USB메모리(10)는 단말기(20)에 설치된 S/W 실행 락/해지를 위한 USB키로 이용될 수 있다.
USB메모리(10)는 고유ID, S/W 설치파일(S/W, 관리프로그램), 라이센스 파일, 라이센스 시리얼넘버가 저장되며, 이외에 라이센스 사용권한에 대한 정보(유효기간, 최대설치대수 등)가 탑재되어 사용권한이 있는 사용자에게 배포될 수 있다. 이후, 등록 관리부(40)를 통해 USB메모리(10)의 S/W가 설치된 복수의 단말기(20)에 대한 설치등록정보를 추가적으로 저장할 수 있다. 이에 관한 설명은 등록관리부(40)의 설명에서 설명하도록 한다.
여기서, 고유ID, 라이센스 파일 및 설치등록정보는 USB메모리(10)의 숨김디렉토리에 저장될 수 있으며, S/W설치파일은 복사될 수 있다.
구체적으로, 정상 발행된 USB키에 포함된 정보들은 다음과 같이 정의될 수 있다. 고유 ID는 USB메모리(10)의 고유 식별자로서, USB메모리 장치의 고유 하드웨어 시리얼 번호, 제조사ID, 제품ID, 시그너쳐, USB메모리에 포맷된 볼륨의 고유 ID 또는 이의 조합으로 구성될 수 있다.
S/W 설치파일은 단말기에 설치하고자 하는 S/W 및 라이센스 관리를 위한 관리프로그램에 대한 설치파일이 될 수 있다.
라이센스 파일은 USB메모리 고유ID, S/W 설치가능 단말기 수 및 사용가능기간을 포함하는 사용권한, 라이센스 시리얼넘버 및 재등록여부를, S/W버전 및 기설정 비밀번호로 암호화되어 발행될 수 있다.
이때, 라이센스 파일은 관리서버(미도시)에서 발생되며, 라이센스 파일 발행 이력정보는 관리서버의 DB에 기록 관리될 수 있다. 이때, 라이센스 파일 발행 이력정보는 라이센스 시리얼넘버, USB메모리 고유ID, 설치파일, 설치등록정보, 최대설치 가능대수, 유효기간, 발행일, 사용자정보, 구매영수증 등의 정보들이 포함될 수 있다.
시리얼넘버는 라이센스 관리를 위한 일련번호로, USB메모리에 파일, 스티커 부착, 오프라인 라이센스 인증서 등으로 제공될 수 있다.
설치등록정보는 해당 USB메모리에 저장된 S/W 설치파일을 통해 S/W가 설치된 단말기들의 정보를 포함하는 것으로, USB메모리의 라이센스 시리얼넘버, 단말기 고유ID 및 USB메모리 고유ID를 암호화한 정보가 될 수 있다.
단말기(20)는 S/W가 설치되어 이용될 수 있는 PC 등의 사용자 단말기가 될 수 있다. 단말기(20)는 USB메모리(10)로부터 설치된 S/W를 실행하기 위해 USB메모리(10)를 USB키로 이용할 수 있다. 이를 위해, 단말기(20)는 USB메모리(10)의 설치파일을 통해 S/W와 관리프로그램을 설치할 수 있다.
단말기(20)에는 복수 개의 USB메모리(10)를 USB키로 설치등록함으로써 이용할 수 있으며, 이때 개수는 기설정된 최대설치가능대수까지 이용할 수 있다.
한편, 유효성 판단부(30), 등록관리부(40), 인증부(50) 및 재발행부(60)는 단말기(20)에 USB메모리(10)가 연결된 상태에서 관리프로그램에 의해 구현될 수 있다.
유효성 판단부(30)는 USB메모리(10)가 단말기(20)에 연결되면, 기저장된 암호화 라이센스 파일을 복호화하여 복호화된 정보로부터 추출한 USB메모리 고유ID와 단말기(20)에 연결된 USB메모리(10)의 드라이브로부터 추출한 고유ID를 비교하여 유효여부를 판단할 수 있다. 이때, 최초등록시에는 시리얼넘버의 동일여부도 함께 판단하여 USB메모리(10)에 저장된 정보들이 유효한지 판단할 수 있다.
이때, USB메모리(10)에 저장된 라이센스 파일이 인식되지 않으면 재발행부(60)를 통해 USB키를 재발행할 수 있다. 한편, 고유ID/시리얼넘버의 불일치는 무단복제된 것으로 판단하여 S/W실행을 락할 수 있다.
유효성 판단부(30)는 등록, 인증 수행시 구동되어 유효성 판단결과를 제공할 수 있다.
등록 관리부(40) USB메모리(10)의 정보가 유효한 것으로 판단되면, S/W 설치파일을 이용하여 S/W를 설치한 단말기의 고유ID, USB메모리의 고유ID 및 라이센스 시리얼넘버를 암호화하여 설치등록정보를 생성할 수 있다.
이때, 암호화는 SW버전별로 기설정된 버전비밀키를 이용하여 쌍방향 암호알고리즘에 따라 암호화하여 숨겨진 읽을 수 있는 ASCII파일로 생성할 수 있다. 여기서, 버전비밀키는 SW버전 넘버 및 기설정 비밀번호를 포함할 수 있으며, 이외 다른 정보로 변경될 수도 있다.
등록관리부(40)는 암호화된 설치등록정보를 USB메모리(10)의 숨김 디렉토리 및 단말기의 설치 디렉토리에 각각 저장하여 관리할 수 있다. 이때, 등록관리부(40)는 USB메모리(10) 및 단말기(20)에 각각 설정된 최대설치 가능대수까지만 설치등록정보를 저장할 수 있다.
인증부(50)는 USB메모리(10)에 저장된 라이센스 파일이 유효하면, 연결된 단말기(20) 및 USB메모리(10)에 기저장된 설치등록정보가 일치하는지 판단한 후 사용권한이 확인되면 단말기(20)에 설치된 S/W의 실행여부를 결정할 수 있다. 이에 따라, 인증된 경우에만 S/W를 실행할 수 있으며, 인증부(50)의 구체적인 설명은 흐름도에서 설명하도록 한다.
재발행부(60)는 USB키 정보가 발행된 USB메모리(10)의 분실, 포맷, 고장 등에 의해 USB키로 동작수행이 불가한 경우, 사용 유효여부 판단을 통해 라이센스 파일을 재발행할 수 있다. 여기서, 사용 유효여부판단은 라이센스 시리얼넘버에 매칭되어 관리서버에 저장된 라이센스 발행이력정보로부터 현재 유효하게 이용될 수 있는 USB키인지 판단하는 과정이 될 수 있다.
재발행부(60)는 사용자로부터 라이센스 시리얼 넘버를 입력받고, 관리서버로 전송하여 이전 라이센스 파일의 발행조건과 동일한 조건이나, 신규 시리얼넘버로 변경된 새로운 USB키를 재발행받을 수 있다. 온라인으로 재발행이 불가능한 경우에는 오프라인으로 해당 정보를 송부하여 관리서버에서 재발행할 수도 있다.
즉, 관리서버는 재발행부(60)로부터 재발행요청에 따른 라이센스 시리얼 넘버를 수신하면, 수신된 라이센스 시리얼 넘버에 매칭되는 라이센스 파일 발행 이력정보를 추출하여, 이전 라이센스 파일의 발행조건(즉, 최대설치 가능대수, 유효기간, 사용자정보 등)은 그대로 설정하고, 입력된 라이센스 시리얼 넘버, 재발행 요청시 연결된 USB메모리(10)의 고유ID 및 단말기(20)의 고유ID를 암호화한 새로운 라이센스 파일을 재생성하여 설치파일과 함께 재발행부(60)로 제공할 수 있다.
이때, 재발행부(60)는 재발행된 라이센스파일 및 설치파일을 재발행 요청된 USB메모리(10)에 저장하되, 설치파일은 재설치하지 않는다.
재발행부(60)는 재발행된 라이센스파일에 대응되게 단말기(20)에 기저장된 해당 USB메모리에 대한 설치등록정보를 갱신할 수 있다. 구체적으로, 재발행부(60)는 단말기(20)에 기저장된 설치등록정보 중 이전 라이센스파일에서 추출한 <USB메모리 고유ID, 단말기 고유ID, 라이센스 시리얼넘버>와 매칭되는 설치등록정보를 삭제하고, 재발행된 라이센스파일에서 추출된 USB메모리 고유ID 및 라이센스 시리얼넘버를 적용한 설치등록정보를 생성하여 USB메모리(10) 및 단말기(20)에 각각 저장하여 재등록시킬 수 있다.
도 2는 본 발명의 일 실시 예에 따른 USB메모리를 이용한 소프트웨어 라이센스관리방법을 설명하기 위한 흐름도이다. 도 2를 참고하면, USB키(S/W설치파일, 라이센스파일)를 일반 상용 USB메모리(S210)에 저장하여(S210), 이를 구매한 사용자에게 배포할 수 있다.
발행된 USB메모리(10)가 단말기(220)의 USB포트에 연결되면(S220), 사용자는 USB메모리(10)에 저장된 S/W설치파일을 이용하여 S/W 및 관리프로그램을 설치할 수 있다. 이후, 관리프로그램을 통해 USB메모리가 유효한지 판단할 수 있다(S230).
이때, USB메모리가 유효하면 도 3의 등록절차를 통해 USB메모리(10) 및 단말기(20)에 설치등록을 수행할 수 있다.
도 3은 본 발명의 일 실시 예에 따른 등록방법을 설명하기 위한 흐름도이다. 도 3은 등록방법에 관한 것으로, 최초등록단계(301), USB메모리 유효성 판단단계(302) 및 설치등록단계(303)를 포함할 수 있고, 최초등록단계는 최초 등록시에만 수행될 수 있다.
S220 단계와 같이 단말기가 연결되면, 등록메뉴를 제공하여 USB메모리(10)의 라이센스 시리얼 넘버 및 사용자 정보를 입력받을 수 있다(S310).
다음으로, 상호 연결된 USB메모리(10)의 드라이브 및 단말기(20)의 드라이브로부터 각각의 고유ID를 추출할 수 있다(S320).
다음으로, USB메모리 유효성 판단단계(302)로, 유효성 판단부(30)에 의해 수행될 수 있다. USB메모리(10)에 저장된 암호화된 라이센스 파일을 복호화하여(S330) 라이센스 파일에 포함된 USB메모리 고유ID 및 라이센스 시리얼 넘버를 추출할 수 있다(S340).
다음으로, S310에서 입력된 라이센스 시리얼 넘버와 S320에서 추출된 USB메모리 고유ID를 S340에서 추출된 정보와 비교하여(S350) 일치하는지 판단할 수 있다(S360).
여기서, 일치하면 <라이센스 시리얼 넘버+단말기 고유ID+USB메모리 고유ID>를 버전비밀키로 암호화하여 설치등록파일을 생성할 수 있다(S370). 생성된 설치등록정보는 USB메모리(10) 및 단말기(20)에 각각 저장될 수 있다(S380).
한편, 도 3의 과정에 의해 등록이 수행된 이후, 단말기(20)에 설치된 S/W의 실행이 요청되면 도 4의 인증과정을 통해 S/W 실행여부(락/해지)를 결정할 수 있다.
도 4는 본 발명의 일 실시 예에 따른 인증방법을 설명하기 위한 흐름도이다. 도 4를 참고하면, USB메모리(10)가 단말기(20)에 연결되면 유효성 판단을 수행할 수 있다(S410). 여기서, 유효성 판단은 USB메모리(10)에 저장된 라이센스 파일을 복호화하여 USB메모리 고유ID를 추출하고, USB메모리(10)의 드라이브로부터 USB메모리 고유ID를 추출하여 동일한지 판단하는 과정이 될 수 있다.
여기서, USB메모리 고유ID가 동일하지 않은 것으로 판단되면(420:N), 불법복제파일로 판단하여 S/W실행을 락제어할 수 있다(S430).
이때, USB메모리 고유ID가 동일한 것으로 판단되면(420:Y), USB메모리(10)와 단말기(20)에 기저장된 설치등록정보를 비교하여(S440) 일치하는 설치등록정보가 있는지 판단하고(S450), 설치등록정보가 일치하면 일치하는 설치등록정보에 포함된 단말기 고유ID와 연결된 단말기(10)의 드라이브로부터 추출된 단말기 고유ID를 비교하여 동일한지 판단할 수 있다(S460). 이때, 단말기 고유ID가 일치하면 사용권한을 인증하여 S/W실행 락을 해지함으로써 S/W가 실행될 수 있다(S470).
한편, 설치등록정보 비교단계에서 일치하는 설치등록정보가 없으면(S450:N) 즉, 인증과정에서 등록되지 않은 새로운 USB메모리로 판단되면(S480), 해당 단말기에 설치된 설치등록정보 개수와 최대설치가능대수를 비교하여(S490), 설치가능한 경우 추가등록을 수행할 수 있게 한다(S500). 이때, 추가등록은 도 3의 등록절차와 동일하게 수행될 수 있다.
여기서, 단말기(10)에 연결된 USB메모리가 유효하지 않은 것으로 판단되는 경우는 저장된 USB키가 인식되지 않거나(USB 포맷에 의해 삭제된 경우 또는 USB고장 등) 인식된 라이센스 파일에 포함된 고유ID와 USB드라이브에서 추출된 고유ID가 일치하지 않는 경우(무단복제파일)가 될 수 있다. 무단복제파일로 판단되면(S290) S/W실행을 락제어할 수 있다.
한편, 재발행 실행시, 단말기(20)에 설치된 관리프로그램에 의해 재등록UI를 제공할 수 있다. 재발행단계를 통해 USB키가 재발행되면 기저장된 설치등록정보를 재등록할 수 있다(S280). 이와 관련한 재발행(S270) 및 재등록(S280)은 도 5를 통해 구체적으로 설명할 수 있다.
도 5는 본 발명의 일 실시 예에 따른 재발행방법을 설명하기 위한 흐름도이다. 재발행이 요청되면, 재발행UI 제공(S510)을 통해 사용자로부터 기 사용중(발행)인 라이센스 시리얼 넘버를 입력받을 수 있다(S520).
이때, 입력된 라이센스 시리얼 넘버는 라이센스 파일 발생이력을 관리하는 관리서버(미도시)로 전송되고, 관리서버에 의해 사용권한이 유효(S530)한 것으로 판단되면 재생성된 라이센스파일 및 설치파일을 수신할 수 있다.
여기서, 사용권한 유효여부는 시리얼 넘버에 해당되는 라이센스 판매정보를 통해 유효성을 확인할 수 있다. 즉, 현재 사용자가 S/W를 사용하는 것이 유효한지를 판단하여 재발행을 결정할 수 있다.
사용권한이 유효한 라이센스 시리얼 넘버로 판단되면, 관리서버는 라이센스 파일 발행 이력정보 중 UI를 통해 입력된 라이센스 시리얼 넘버에 매칭되는 이전 라이센스 파일(기 사용 라이센스 파일)과 동일한 발행조건에 따른 설치파일과 신규 라이센스 시리얼 넘버를 이용하여 라이센스 파일을 재생성하여 재발행부로 제공할 수 있다.
이때, 생성된 라이센스 파일은 신규 라이센스 시리얼 넘버, 재발행 요청된 USB메모리의 고유ID를 이용하여 이전 발행조건과 함께 버전비밀키로 암호화되어 재생성될 수 있다.
다음으로, 재발행된 라이센스파일 및 설치파일을 재발행 요청된 USB메모리(10)에 저장하되, 설치파일은 단말기에 재설치하지 않는다(S550).
라이센스 파일의 재생성에 따라 단말기(10)에 기저장된 설치등록정보도 재등록될 필요가 있다. 이에, 재발행된 라이센스 파일의 정보에 따라 설치등록정보를 재생성할 수 있다. 즉, 신규 라이센스 시리얼 넘버, 재발행 요청된 USB메모리의 고유ID, 단말기 고유ID를 버전비밀키로 암호화하여 재생성될 수 있다.
다음으로, 재생성된 설치등록정보를 SW 설치디렉토리 및 상기 라이센스 파일이 인식되지 않는 USB메모리에 재등록할 수 있다(S560).
구체적으로, 라이센스 파일 발행이력정보에서 추출된 이전 라이센스 파일(재발행된 라이센스 파일의 이전 사용 파일)에서 <USB메모리 고유ID, 단말기 고유ID, 라이센스 시리얼넘버>를 추출할 수 있다.
다음으로, 단말기(20)에 기저장된 설치등록정보 중 이전 라이센스파일에서 추출한 <USB메모리 고유ID, 단말기 고유ID, 라이센스 시리얼넘버>와 매칭되는 설치등록정보를 삭제하고, 재발행된 라이센스파일에서 추출된 USB메모리 고유ID 및 라이센스 시리얼넘버를 적용한 설치등록정보를 생성하여 USB메모리(10) 및 단말기(20)에 각각 저장하여 재등록시킬 수 있다.
한편, 상기에서 도 1 내지 도 5를 이용하여 서술한 것은, 본 발명의 주요 사항만을 서술한 것으로, 그 기술적 범위 내에서 다양한 설계가 가능한 만큼, 본 발명이 도 1 내지 도 5의 구성에 한정되는 것이 아님은 자명하다.
10 : USB메모리 20 : 단말기
30 : 유효성 판단부 40 : 등록 관리부
50 : 인증부 60 : 재발행부

Claims (11)

  1. S/W 설치 파일 및 암호화된 라이센스 파일이 저장된 USB메모리가 단말기에 연결되고 상기 라이센스 파일이 유효하면, 상기 S/W 설치파일을 이용하여 S/W를 설치한 단말기의 고유ID, 상기 USB메모리의 고유ID 및 라이센스 시리얼넘버를 암호화하여 생성된 설치등록정보를 상기 USB메모리 및 상기 S/W가 설치된 상기 단말기에 각각 저장하는 등록 단계; 및
    상기 연결된 단말기에 설치된 S/W의 실행요청 수신시, 기저장된 설치등록정보가 일치하는지 판단하여 인증하는 인증 단계를 포함하고, 상기 인증단계에서 인증시 S/W가 실행되는 것을 특징으로 하는 USB메모리를 이용한 소프트웨어 라이센스관리방법.
  2. 제1항에 있어서,
    상기 등록 단계는, 최초등록단계, USB메모리 유효성 판단단계 및 설치등록단계를 포함하고,
    상기 최초등록단계는,
    등록메뉴를 제공하여 USB메모리의 라이센스 시리얼 넘버 및 사용자 정보를 입력받는 단계; 및 상호 연결된 상기 USB메모리의 드라이브로부터 고유ID를 추출하는 드라이브 추출단계를 포함하며,
    상기 USB메모리 유효성 판단단계는,
    상기 USB메모리에 저장된 암호화된 라이센스 파일을 복호화하여 상기 라이센스 파일에 포함된 USB메모리 고유ID 및 라이센스 시리얼 넘버를 추출하는 복호화 추출단계; 및 상기 드라이브 추출단계에서 추출된 USB메모리 고유ID와 상기 입력된 라이센스 시리얼 넘버를 상기 복호화 추출단계에서 추출된 USB메모리 고유ID와 라이센스 시리얼 넘버와 비교하여 일치하는지 판단하는 단계를 포함하는 것을 특징으로 하는 USB메모리를 이용한 소프트웨어 라이센스관리방법.
  3. 제2항에 있어서,
    상기 설치등록단계는,
    S/W를 설치한 단말기의 고유ID, 상기 USB메모리의 고유ID 및 라이센스 시리얼넘버를 S/W버전넘버 및 기설정 비밀번호로 암호화하여 설치등록정보를 생성하는 단계; 및
    상기 암호화된 설치등록정보를 상기 USB메모리의 숨김디렉토리 및 상기 단말기의 S/W 설치디렉토리에 각각 저장하는 단계를 포함하는 것을 특징으로 하는 USB메모리를 이용한 소프트웨어 라이센스관리방법.
  4. 제1항에 있어서,
    상기 라이센스 파일은, USB메모리 고유ID, S/W 설치가능 단말기 수 및 사용가능기간을 포함하는 사용권한, 라이센스 시리얼넘버 및 재등록여부를 S/W버전 및 기설정 비밀번호로 암호화되어 발행되고, 라이센스 파일 발행 이력정보는 관리서버에 기록되는 것을 특징으로 하는 USB메모리를 이용한 소프트웨어 라이센스관리방법.
  5. 제1항에 있어서,
    상기 인증 단계는,
    (a) 상기 USB메모리에 저장된 라이센스 파일을 복호화하여 USB메모리 고유ID를 추출하고, USB메모리 드라이브로부터 USB메모리 고유ID를 추출하여 동일한지 판단하는 단계;
    (b) 고유ID가 동일하면, 상기 연결된 단말기에 기저장된 설치등록정보와 상기 USB메모리에 기저장된 설치등록정보를 비교하여 일치하는 설치등록정보가 있는지 판단하는 단계;
    (c) 일치하는 설치등록정보가 있는 경우, 상기 일치하는 설치등록정보에 포함된 단말기 고유ID와 상기 연결된 단말기의 드라이브로부터 추출된 단말기 고유ID를 비교하여 동일한지 판단하는 단계; 및
    (d) 상기 (c)단계에서 동일한 것으로 판단되면 사용권한이 있는지 판단하는 단계를 포함하는 것을 특징으로 하는 USB메모리를 이용한 소프트웨어 라이센스관리방법.
  6. 제5항에 있어서,
    상기 인증단계의 (a)에서 동일하지 않은 것으로 판단되면 무단복제된 것으로 판단하여 기설치된 S/W의 실행을 락(lock)하고,
    상기 인증단계의 (b)에서 일치하는 설치등록정보가 없으면, 비등록된 새로운 USB메모리로 판단하여 상기 등록단계를 통해 추가 등록을 수행하며,
    상기 인증단계의 (c)단계에서 단말기 고유ID가 동일하고 상기(d)단계에서 사용권한이 있으면 기설치된 SW를 실행시키는 것을 특징으로 하는 USB메모리를 이용한 소프트웨어 라이센스관리방법.
  7. 제1항에 있어서,
    상기 등록단계, 인증단계 및 설치된 S/W의 실행은, 유효한 USB메모리 및 단말기가 연결된 상태에서만 수행되는 것을 특징으로 하는 USB메모리를 이용한 소프트웨어 라이센스관리방법.
  8. 제1항에 있어서,
    상기 S/W가 설치된 단말기에 라이센스 파일이 인식되지 않는 USB메모리가 연결되면, 사용자로부터 라이센스 시리얼 넘버를 입력받고, 관리서버에 기저장된 정보 중 입력된 시러얼넘버에 대응되는 이전 USB메모리의 라이센스 파일에 대한 유효확인을 통해 상기 이전 USB메모리의 라이센스 파일을 폐기하고, 대체되는 라이센스 파일을 재발행하는 단계를 더 포함하는 것을 특징으로 하는 USB메모리를 이용한 소프트웨어 라이센스관리방법.
  9. 제8항에 있어서,
    상기 라이센스 파일을 재발행하는 단계는,
    사용자의 사용권한이 있는 라이센스 시리얼 넘버를 입력받기 위한 UI를 제공하는 단계;
    관리서버로부터 상기 입력된 라이센스 시리얼 넘버에 대한 사용권한이 확인되면, 라이센스 파일 발행 이력정보 중 상기 UI를 통해 입력된 라이센스 시리얼 넘버에 매칭되는 이전 라이센스 파일과 동일한 발행조건에 따른 설치파일과 신규 라이센스 시리얼 넘버를 이용하여 재생성된 라이센스 파일을 수신하여 상기 라이센스 파일이 인식되지 않는 USB메모리에 저장하는 단계;
    상기 라이센스 파일이 재발행된 USB메모리에 연결된 단말기에 설치된 설치등록정보 중 이전 라이센스 파일에 매칭되는 설치등록정보를 제거하고, 재발행된 라이센스 파일을 이용하여 설치등록정보를 재생성하는 단계; 및
    재생성된 설치등록정보를 SW 설치디렉토리 및 상기 라이센스 파일이 인식되지 않는 USB메모리에 재등록하는 단계를 포함하는 것을 특징으로 하는 USB메모리를 이용한 소프트웨어 라이센스관리방법.
  10. 제1항에 있어서,
    상기 USB메모리 및 단말기는, 각각 기설정된 최대설치 가능 대수만큼의 설치등록정보 생성이 가능한 것을 특징으로 하는 USB메모리를 이용한 소프트웨어 라이센스관리방법.
  11. 단말기; S/W 설치 파일 및 암호화된 라이센스 파일이 저장된 USB메모리;
    상기 USB메모리가 상기 단말기에 연결되면, 상기 암호화 라이센스 파일을 복호화하여 유효여부를 판단하는 유효성 판단부;
    유효한 것으로 판단되면, 상기 S/W 설치파일을 이용하여 S/W를 설치한 단말기의 고유ID, 상기 USB메모리의 고유ID 및 라이센스 시리얼넘버를 암호화하여 생성된 설치등록정보를 상기 USB메모리 및 상기 S/W가 설치된 상기 단말기에 각각 저장하는 등록 관리부; 및
    상기 USB메모리에 저장된 라이센스 파일이 유효하면, 상기 연결된 단말기 및 USB메모리에 기저장된 설치등록정보가 일치하는지 판단하는 인증부를 포함하고, 상기 인증부의 인증시 S/W가 실행되는 것을 특징으로 하는 USB메모리를 이용한 소프트웨어 라이센스관리장치.

KR1020180067953A 2018-06-14 2018-06-14 Usb메모리를 이용한 소프트웨어 라이센스 관리방법 및 장치 KR102104470B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180067953A KR102104470B1 (ko) 2018-06-14 2018-06-14 Usb메모리를 이용한 소프트웨어 라이센스 관리방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180067953A KR102104470B1 (ko) 2018-06-14 2018-06-14 Usb메모리를 이용한 소프트웨어 라이센스 관리방법 및 장치

Publications (2)

Publication Number Publication Date
KR20190141335A true KR20190141335A (ko) 2019-12-24
KR102104470B1 KR102104470B1 (ko) 2020-04-24

Family

ID=69022224

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180067953A KR102104470B1 (ko) 2018-06-14 2018-06-14 Usb메모리를 이용한 소프트웨어 라이센스 관리방법 및 장치

Country Status (1)

Country Link
KR (1) KR102104470B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111737657A (zh) * 2020-06-16 2020-10-02 湖南省星岳天璇科技有限公司 基于license文件对JAVA类软件实现授权控制的方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230027782A (ko) 2021-08-20 2023-02-28 이택형 데이터 파일 복제방지 유에스비 저장장치

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100766863B1 (ko) * 2006-12-07 2007-11-15 주식회사 스펙트라 이동식저장장치를 이용한 소프트웨어 설치 시스템 및 그방법
KR100832221B1 (ko) 2006-12-28 2008-05-23 주식회사 하이스마텍 소프트웨어 저작권 보호용 장치
JP2009301188A (ja) * 2008-06-11 2009-12-24 Kyocera Mita Corp ライセンス数管理装置、ライセンス数管理方法及びライセンス数管理プログラム
JP2011100476A (ja) * 2010-12-24 2011-05-19 Toshiba Tec Corp ソフトウェアプロテクト方法
KR20150053277A (ko) * 2013-10-29 2015-05-18 주식회사 현대케피코 소프트웨어의 실행을 제어하기 위한 장치 및 그 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100766863B1 (ko) * 2006-12-07 2007-11-15 주식회사 스펙트라 이동식저장장치를 이용한 소프트웨어 설치 시스템 및 그방법
KR100832221B1 (ko) 2006-12-28 2008-05-23 주식회사 하이스마텍 소프트웨어 저작권 보호용 장치
JP2009301188A (ja) * 2008-06-11 2009-12-24 Kyocera Mita Corp ライセンス数管理装置、ライセンス数管理方法及びライセンス数管理プログラム
JP2011100476A (ja) * 2010-12-24 2011-05-19 Toshiba Tec Corp ソフトウェアプロテクト方法
KR20150053277A (ko) * 2013-10-29 2015-05-18 주식회사 현대케피코 소프트웨어의 실행을 제어하기 위한 장치 및 그 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111737657A (zh) * 2020-06-16 2020-10-02 湖南省星岳天璇科技有限公司 基于license文件对JAVA类软件实现授权控制的方法
CN111737657B (zh) * 2020-06-16 2024-03-12 湖南省星岳天璇科技有限公司 基于license文件对JAVA类软件实现授权控制的方法

Also Published As

Publication number Publication date
KR102104470B1 (ko) 2020-04-24

Similar Documents

Publication Publication Date Title
JP4906854B2 (ja) 情報処理装置、情報記録装置、情報処理システム、プログラムアップデート方法、プログラムおよび集積回路
US8898469B2 (en) Software feature authorization through delegated agents
CN106571951B (zh) 审计日志获取方法、系统及装置
CN111404696B (zh) 协同签名方法、安全服务中间件、相关平台及系统
US20110296175A1 (en) Systems and methods for software license distribution using asymmetric key cryptography
KR100945650B1 (ko) 보안모듈 프로그램을 보호하기 위한 디지털 케이블 시스템및 그 방법
US10282549B2 (en) Modifying service operating system of baseboard management controller
CN110401613B (zh) 一种认证管理方法和相关设备
CN103269271A (zh) 一种备份电子签名令牌中私钥的方法和系统
US20130124867A1 (en) System and method for secure software license distribution
WO2017008728A1 (zh) 一种划分终端开发模式和产品模式的方法及系统
JP5183517B2 (ja) 情報処理装置及びプログラム
SE525847C2 (sv) Sätt att konfigurera ett låssystem samt låssystem
JP2008152764A (ja) ソフトウェアプログラムの無許可のインストールを防ぐシステム及び方法
KR102104470B1 (ko) Usb메모리를 이용한 소프트웨어 라이센스 관리방법 및 장치
JP2006236051A (ja) 実行制限装置及び利用制限装置
JP2011150524A (ja) ソフトウェア実行システム
WO2021142584A1 (zh) 嵌入式设备、合法性识别方法、控制器及加密芯片
JP2009251977A (ja) ソフトウェアインストールシステム
CN103281188A (zh) 一种备份电子签名令牌中私钥的方法和系统
KR101711024B1 (ko) 부정조작방지 장치 접근 방법 및 그 방법을 채용한 단말 장치
JP5582231B2 (ja) 情報処理装置、真正性確認方法、及び記録媒体
JP5049179B2 (ja) 情報処理端末装置及びアプリケーションプログラムの起動認証方法
CN103248490A (zh) 一种备份电子签名令牌中信息的方法和系统
JP2009032165A (ja) ソフトウェアのライセンス管理システム、プログラム及び装置

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant