KR20140011495A - Conversion device, conversion method and user terminal - Google Patents

Conversion device, conversion method and user terminal Download PDF

Info

Publication number
KR20140011495A
KR20140011495A KR1020120061042A KR20120061042A KR20140011495A KR 20140011495 A KR20140011495 A KR 20140011495A KR 1020120061042 A KR1020120061042 A KR 1020120061042A KR 20120061042 A KR20120061042 A KR 20120061042A KR 20140011495 A KR20140011495 A KR 20140011495A
Authority
KR
South Korea
Prior art keywords
content
unit
conversion
file
executable
Prior art date
Application number
KR1020120061042A
Other languages
Korean (ko)
Other versions
KR101541526B1 (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 KR1020120061042A priority Critical patent/KR101541526B1/en
Publication of KR20140011495A publication Critical patent/KR20140011495A/en
Application granted granted Critical
Publication of KR101541526B1 publication Critical patent/KR101541526B1/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
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • 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/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/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

Abstract

Disclosed in the embodiment of the present invention are a conversion device, a conversion method, and a user terminal. The conversion includes an input unit which receives first content according to the wholesale application community standards; a conversion unit which converts the first content into second content executable on the Android platform and builds the content; an operation unit which operates the conversion unit by referring to predefined environmental variables which vary upon the build environment; and an output unit which outputs the second content built by the conversion unit. [Reference numerals] (100) Content server; (200) Download server; (300) Conversion device; (400) User terminal

Description

변환 장치, 변환 방법 및 사용자 단말{conversion device, conversion method and user terminal}Conversion device, conversion method and user terminal

본 발명은 변환 장치, 변환 방법 및 사용자 단말에 관한 것으로서, 구체적으로 파일 형식이 서로 다른 콘텐츠를 변환하는 기술에 관한 것이다.The present invention relates to a conversion apparatus, a conversion method, and a user terminal, and more particularly, to a technology for converting content having different file formats.

국내 이동통신사가 주축이 되어 한국 통합 앱스토어(K-Apps)가 개발되어 개발자들은 통신사 별로 따로 앱을 개발할 필요가 없어지고, 내년부터 자동으로 글로벌 마켓에도 등록된다. 이러한 K-Apps은 글로벌 어플리케이션 도매 장터인 WAC(Wholesael Application Community)의 WAC 2.0 규격을 세계 최초로 상용화한 것이다. Domestic carriers are the main driver for the development of Korea Integrated App Store (K-Apps), which eliminates the need for developers to develop apps for each carrier and is automatically registered in the global market starting next year. K-Apps is the world's first commercialization of the WAC 2.0 specification from the Worldsael Application Community (WAC), a global marketplace for wholesale applications.

그런데, 이러한 K-Apps 규격 즉 확장자가 wgt인 형태로 개발된 컨텐츠는 실행 과정의 문제, 보안의 취약성, 불법복제의 위험성을 내재하고 있다. 확장자가 wgt인 WAC 규격을 준수하여 개발된 컨텐츠는 프로그램 소스가 유출될 수 있는 문제와 불법 복제 되어 유통될 수 있는 위험성을 내재하고 있다. However, the content developed in the form of the K-Apps standard, that is, the extension wgt, has problems of execution process, vulnerability of security, and risk of illegal copying. Contents developed in compliance with the WAC specification with the extension wgt have inherent problems that program sources can be leaked and the risk of illegal copying and distribution.

따라서, 이동 통신사에서 서비스 할 수 있는 형태의 컨텐츠가 아니라는 문제점을 가지고 있다. Therefore, there is a problem that the content is not a form that can be serviced by the mobile communication company.

이는 기존 이동 통신사의 마켓을 통해 서비스 되고 있는 어플리케이션에 비해 보안이 취약하다는 문제점을 가지고 있다.This has a problem that the security is weak compared to the applications that are serviced through the market of the existing mobile carrier.

본 발명이 이루고자 하는 기술적 과제는 모바일 플랫폼에서 실행 가능하고, 저작권 보호를 제공하는 변환 장치, 변환 방법 및 사용자 단말을 제공하는 것이다.SUMMARY OF THE INVENTION The present invention has been made in an effort to provide a conversion device, a conversion method, and a user terminal that are executable on a mobile platform and provide copyright protection.

본 발명의 한 특징에 따른 변환 장치는, WAC(Wholesale Application Community) 규격에 따른 제1 콘텐츠를 입력받는 입력부; 상기 제1 콘텐츠를 안드로이드 플랫폼에서 실행 가능한 제2 콘텐츠로 변환한 후 빌드하는 변환부; 빌드 환경에 따라 달라지는 사전 정의된 환경 변수를 참조하여 상기 변환부를 구동시키는 구동부; 및 상기 변환부가 빌드한 제2 콘텐츠를 외부로 출력하는 출력부를 포함한다.In accordance with one aspect of the present invention, a conversion device includes: an input unit configured to receive first content according to a WAC (Wholesale Application Community) standard; A converter configured to convert the first content into second content executable on the Android platform and then build the content; A driving unit driving the conversion unit by referring to a predefined environment variable that varies according to a build environment; And an output unit configured to output the second content built by the converter to the outside.

이때, 상기 변환부는,At this time, the conversion unit,

위젯 파일을 apk 파일로 변환하기 위한 실행 바이너리 파일을 이용하여 변환 및 빌드를 수행할 수 있다.Conversion and build can be performed using an executable binary file for converting a widget file into an apk file.

또한, 상기 입력부는, 입력 파라미터를 입력받아 상기 변환부로 전달하고,In addition, the input unit receives an input parameter and delivers it to the conversion unit,

상기 변환부는, 상기 입력 파라미터에 의해 실행되어 라이브러리 형태로 제공되는 상기 실행 바이너리 파일을 이용한 콘텐츠 변환을 수행할 수 있다.The conversion unit may perform content conversion using the execution binary file provided in a library form by being executed by the input parameter.

또한, 상기 입력부는,In addition, the input unit,

상기 변환부를 실행시키는 명령어를 상기 입력 파라미터로 입력받을 수 있다.A command for executing the converter may be input as the input parameter.

또한, 상기 입력부는,In addition, the input unit,

상기 실행 바이너리 파일의 클래스를 외부 자바코드에서 임포트하여 상기 실행 바이너리 파일의 클래스 함수를 직접 호출시키는 명령을 상기 입력 파라미터로 입력받을 수 있다.A command for importing a class of the executable binary file from external Java code and directly calling a class function of the executable binary file may be input as the input parameter.

또한, 상기 구동부에 의해 구동되고, 상기 안드로이드 플랫폼에서 실행 가능하도록 추가 기능을 상기 제2 콘텐츠에 삽입하는 구성부를 더 포함하고,The apparatus may further include a component which is driven by the driving unit and inserts an additional function into the second content to be executable on the Android platform.

상기 변환부는,Wherein,

상기 추가 기능이 삽입된 제2 콘텐츠를 빌드한 후, 상기 출력부로 전달할 수 있다.After building the second content into which the additional function is inserted, the second content may be delivered to the output unit.

또한, 상기 구성부는,In addition, the component,

상기 변환부로부터 전달받은 제2 콘텐츠의 평문 소스코드를 암호화하고, 상기 제2 콘텐츠의 라이센스를 검증하기 위한 코드를 삽입한 후, 상기 변환부로 출력하며,Encrypting the plain text source code of the second content received from the converting unit, inserting a code for verifying a license of the second content, and outputting to the converting unit,

상기 변환부는,Wherein,

암호화된 평문 소스코드 및 라이센스 검증코드가 포함된 제2 콘텐츠를 빌드한 후, 상기 출력부로 전달할 수 있다.The second content including the encrypted plain text source code and the license verification code may be built and then transferred to the output unit.

또한, 암호화된 평문 소스코드 및 라이센스 검증코드가 포함된 제2 콘텐츠에 사업자의 인증서로 서명한 후, 상기 변환부로 전달하는 서명부를 더 포함하고,The apparatus may further include a signature unit for signing the second content including the encrypted plain text source code and the license verification code with the operator's certificate, and then transferring the same to the conversion unit.

상기 변환부는,Wherein,

상기 서명부로부터 전달받은 암호화된 평문 소스코드 및 라이센스 검증코드가 포함되고, 서명이 추가된 제2 콘텐츠를 상기 출력부로 전달할 수 있다.The encrypted plain text source code and the license verification code received from the signing unit are included, and the second content added with the signature may be delivered to the output unit.

또한, 변환장치는 상기 제2 콘텐츠를 사용자 단말로 전송하는 다운로드 서버에 탑재될 수 있다.In addition, the conversion apparatus may be mounted in the download server for transmitting the second content to the user terminal.

본 발명의 다른 특징에 따른 콘텐츠 변환 방법은, 콘텐츠 변환 장치가 콘텐츠를 변환하는 방법으로서, 외부로부터 WAC(Wholesale Application Community) 규격에 따른 제1 콘텐츠를 입력받는 단계; 빌드 환경에 따라 달라지는 사전 정의된 환경 변수를 참조하여 상기 콘텐츠 변환 장치가 구동되는 단계; 위젯 파일을 apk 파일로 변환하기 위한 실행 바이너리 파일을 이용하여 상기 제1 콘텐츠를 안드로이드 플랫폼에서 실행 가능한 제2 콘텐츠로 변환한 후, 빌드하는 단계; 및 상기 제2 콘텐츠를 외부로 출력하는 단계를 포함한다.According to another aspect of the present invention, there is provided a content converting method comprising: a method of converting content by a content converting device, the method comprising: receiving first content according to a WAC specification from an external source; Driving the content conversion apparatus with reference to a predefined environment variable that varies according to a build environment; Converting the first content into a second executable executable on the Android platform using an executable binary file for converting the widget file into an apk file, and then building; And outputting the second content to the outside.

이때, 상기 입력받는 단계 이전에,At this time, before the step of receiving the input,

소프트웨어 빌드 프로세스를 자동화하는 Apache Ant를 다운로드하여 설치하는 단계; 및 상기 Apache Ant의 bin 디렉터리를 path로 등록하는 단계를 더 포함하고,Downloading and installing Apache Ant to automate the software build process; And registering the bin directory of the Apache Ant as a path.

상기 구동되는 단계는, The driven step,

환경 변수로 antpath-상기 Apache ant의 bin디렉터리의 절대 경로를 말함-를 참조할 수 있다.You can refer to antpath as an environment variable, which refers to the absolute path of the bin directory of Apache ant.

또한, 상기 입력받는 단계 이전에,In addition, before the step of receiving the input,

안드로이드 개발 프로그램인 안드로이드 sdk를 다운로드하여 설치하는 단계; 및 환경 변수에 상기 안드로이드 sdk의 tools 디렉터리를 path로 등록하는 단계를 더 포함하고,Downloading and installing the android sdk, which is an android development program; And registering the tools directory of the android sdk as a path in an environment variable.

상기 구동되는 단계는,The driven step,

환경 변수로 Androidpath-상기 안드로이드 sdk의 tools 디렉터리 절대 경로를 말함-를 참조할 수 있다.You can refer to Androidpath as the environment variable, which refers to the absolute path to the tools directory of the Android sdk above.

또한, 상기 빌드하는 단계는,In addition, the building step,

외부로부터 입력받은 입력 파라미터 및 라이브러리 형태로 제공되는 상기 실행 바이너리 파일을 이용하여 상기 제1 콘텐츠를 상기 제2 콘텐츠로 변환하는 단계; 상기 제2 콘텐츠에 상기 안드로이드 플랫폼에서 실행 가능한 추가 기능을 삽입하는 단계; 및 상기 추가 기능이 삽입된 제2 콘텐츠를 빌드하는 단계를 더 포함하고,Converting the first content into the second content using the executable binary file provided in the form of an input parameter and a library received from an external source; Inserting an additional function executable on the Android platform into the second content; And building second content into which the additional function is inserted,

상기 구동되는 단계는,The driven step,

환경 변수로 wgtviewpath-상기 추가 기능 삽입을 수행하기 위한 Widgetview.zip 파일의 절대 경로를 의미함-를 참조할 수 있다.As an environment variable, we can refer to wgtviewpath, which means the absolute path of the Widgetview.zip file for executing the add-in.

또한, 상기 삽입하는 단계는,In addition, the inserting step,

상기 제2 콘텐츠의 평문 소스코드를 암호화하는 단계; 및 상기 제2 콘텐츠의 라이센스를 검증하기 위한 코드를 삽입하는 단계를 포함할 수 있다.Encrypting plain text source code of the second content; And inserting code for verifying a license of the second content.

또한, 상기 삽입하는 단계와 상기 빌드하는 단계 사이에,In addition, between the inserting step and the building step,

상기 제2 콘텐츠에 사업자의 인증서로 서명하는 단계를 더 포함할 수 있다.The method may further include signing the second content with a certificate of an operator.

본 발명의 또 다른 특징에 따른 사용자 단말은, 안드로이드 플랫폼을 탑재하는 사용자 단말로서, 라이센스 검증코드를 포함하는 apk 형식의 콘텐츠가 다운로드되어 저장되는 저장부; 상기 라이센스 검증코드에 따라 상기 콘텐츠의 정상 구매 여부를 검증하는 검증부; 및 상기 검증부의 검증 성공 여부에 따라 상기 콘텐츠의 실행 여부를 결정하는 실행부를 포함한다.According to another aspect of the present invention, there is provided a user terminal including: a storage unit configured to download and store contents of an apk format including a license verification code as a user terminal on which an Android platform is mounted; A verification unit which verifies whether the content is normally purchased according to the license verification code; And an execution unit that determines whether to execute the content according to whether or not the verification unit succeeds in verifying the content.

이때, 상기 라이센스 검증코드는, At this time, the license verification code,

상기 콘텐츠 제공 서버의 접속 주소를 포함하며, An access address of the content providing server,

상기 검증부는, Wherein the verifying unit comprises:

상기 접속 주소를 이용하여 접속한 콘텐츠 제공 서버와 연동하여 상기 콘텐츠의 정상 구매 여부를 판단할 수 있다.It is possible to determine whether the content is normally purchased by interworking with a content providing server connected using the access address.

본 발명의 실시예에 따르면, 확장자가 wgt인 콘텐츠를 모바일 플랫폼에서 실행 가능하도록 apk 확장자의 콘텐츠로 변환하고, 이때, 변환하는 과정에서 소스코드를 암호화하는 모듈과 이동통신사에서 제공하는 라이센스 검증모듈을 적용함으로써 소스코드의 수정 및 악의적인 목적의 재배포를 차단할 뿐만 아니라 불법복제된 컨텐츠의 유포 및 실행 가능성을 사전에 차단한다. According to an embodiment of the present invention, a content having a wgt extension is converted into apk extension content to be executed on a mobile platform, and at this time, a module for encrypting a source code and a license verification module provided by a mobile communication company By not only preventing the modification of source code and redistribution for malicious purpose, but also proactively preventing the distribution and execution of illegally copied contents.

도 1은 본 발명의 실시예에 따른 전체 시스템 구성도이다.
도 2는 본 발명의 한 실시예에 따른 도 1의 변환 장치의 세부 구성을 나타낸 블록도이다.
도 3은 본 발명의 다른 실시예에 따른 도 1의 변환 장치의 세부 구성을 나타낸 블록도이다.
도 4는 본 발명의 한 실시예에 따른 변환 장치의 변환 방법을 나타낸 순서도이다.
도 5는 본 발명의 다른 실시예에 따른 변환 장치의 변환 방법을 나타낸 순서도이다.
도 6은 본 발명의 한 실시예에 따른 도 1의 사용자 단말의 세부 구성을 나타낸 블록도이다.
도 7은 본 발명의 다른 실시예에 따른 도 1의 사용자 단말의 세부 구성을 나타낸 블록도이다.
도 8은 본 발명의 실시예에 따른 사용자 단말의 콘텐츠 실행 방법을 나타낸 순서도이다.
1 is an overall system configuration according to an embodiment of the present invention.
2 is a block diagram illustrating a detailed configuration of the converter of FIG. 1 according to an embodiment of the present invention.
3 is a block diagram illustrating a detailed configuration of the converter of FIG. 1 according to another embodiment of the present invention.
4 is a flowchart illustrating a conversion method of a conversion device according to an embodiment of the present invention.
5 is a flowchart illustrating a conversion method of a conversion device according to another embodiment of the present invention.
6 is a block diagram showing a detailed configuration of a user terminal of FIG. 1 according to an embodiment of the present invention.
7 is a block diagram showing a detailed configuration of a user terminal of FIG. 1 according to another embodiment of the present invention.
8 is a flowchart illustrating a content execution method of a user terminal according to an embodiment of the present invention.

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

명세서 전체에서, 어떤 부분이 어떤 구성 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when an element is referred to as "comprising ", it means that it can include other elements as well, without excluding other elements unless specifically stated otherwise.

또한, 명세서에 기재된 "…부", "…기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.Also, the terms " part, "" module," and " module ", etc. in the specification mean a unit for processing at least one function or operation and may be implemented by hardware or software or a combination of hardware and software have.

본 명세서에서 단말(terminal)은 이동국(Mobile Station, MS), 이동 단말(Mobile Terminal, MT), 가입자국(Subscriber Station, SS), 휴대 가입자국(Portable Subscriber Station, PSS), 사용자 장치(User Equipment, UE), 접근 단말(Access Terminal, AT) 등을 지칭할 수도 있고, 단말, 이동 단말, 가입자국, 휴대 가입자 국, 사용자 장치, 접근 단말 등의 전부 또는 일부의 기능을 포함할 수도 있다.In this specification, a terminal includes a mobile station (MS), a mobile terminal (MT), a subscriber station (SS), a portable subscriber station (PSS), a user equipment , An access terminal (UE), an access terminal (AT), and the like, and may include all or some functions of a terminal, a mobile terminal, a subscriber station, a mobile subscriber station, a user equipment,

본 명세서에서 기지국(base station, BS)은, 접근점(Access Point, AP), 무선 접근국(Radio Access Station, RAS), 노드B(Node B), 고도화 노드B(evolved NodeB, eNodeB), 송수신 기지국(Base Transceiver Station, BTS), MMR(Mobile Multihop Relay)-BS 등을 지칭할 수도 있고, 접근점, 무선 접근국, 노드B, eNodeB, 송수신 기지국, MMR-BS 등의 전부 또는 일부의 기능을 포함할 수도 있다.In this specification, a base station (BS) includes an access point (AP), a radio access station (RAS), a node B, an evolved NodeB (eNodeB) A base station (BTS), a mobile multihop relay (MMR) -BS, or the like, and may perform all or a part of functions of an access point, a radio access station, a Node B, an eNodeB, a base transceiver station, .

이하, 도면을 참조로 하여 본 발명의 실시예에 따른 변환 장치, 변환 방법 및 사용자 단말에 대하여 상세히 설명한다.Hereinafter, a conversion apparatus, a conversion method, and a user terminal according to an embodiment of the present invention will be described in detail with reference to the drawings.

도 1은 본 발명의 실시예에 따른 전체 시스템 구성도이다.1 is an overall system configuration according to an embodiment of the present invention.

도 1을 참조하면, 콘텐츠 서버(100), 다운로드 서버(200) 및 사용자 단말(300)을 포함한다. Referring to FIG. 1, a content server 100, a download server 200, and a user terminal 300 are included.

여기서, 콘텐츠 서버(100)는 K-Apps 규격에 따른 제1 콘텐츠를 저장하고, 판매하는 서버로서, 예컨대 앱스토어일 수 있다.Here, the content server 100 is a server that stores and sells the first content according to the K-Apps standard. For example, the content server 100 may be an app store.

여기서, K-Apps는 국내 개발자들이 모바일 운영체제(OS) 구분 없이 여러 제조사 단말을 공통으로 지원하는 웹플랫폼 기반 앱을 모아 이통3사 앱스토어로 판매할 수 있는 앱 장터이자 이를 주도하는 협의체로서, 글로벌 'WAC(Wholesale Application Community)'과 호환된다.Here, K-Apps is an app marketplace and a leading council that allows domestic developers to collect web platform-based apps that support multiple manufacturers' terminals in common, regardless of mobile operating system (OS), and sell them as three mobile app stores. It is compatible with the WAC (Wholesale Application Community).

이때, WAC은 스마트폰 응용프로그램을 공유할 수 있는 일종의 도매시장 개념의 슈퍼 앱스토어로서, 지난해 2월 모바일월드콩그레스(MWC)에서 통신사와 제조사들이 결성한 앱 도매 장터이자 국제 표준화 조직이며, 전세계의 주요 통신사들 및제조업체가 참여하고 있다. 이러한 WAC은 전 세계 어플리케이션 개발자에게 표준화된 개발 환경을 제공한다. At this time, WAC is a kind of wholesale market concept that can share smartphone applications. It is an app wholesale market and international standardization organization formed by mobile operators and manufacturers at Mobile World Congress (MWC) last February. Major carriers and manufacturers are involved. These WACs provide a standardized development environment for application developers around the world.

이러한 K-Apps 규격에 따른 제1 콘텐츠는 '.wgt'의 확장자를 가지는 HTML(HyperText Markup Language), CSS(Cascading Style Sheets), Javascript 소스 형태의 위젯 파일이다. The first content according to the K-Apps standard is a widget file in the form of HyperText Markup Language (HTML), Cascading Style Sheets (CSS), or JavaScript source having an extension of '.wgt'.

다운로드 서버(200)는 네트워크(미도시)를 통해 제1 콘텐츠를 전송하는 서버로서, 콘텐츠 서버(100)와 연결되는 별도의 서버로 구현되거나 또는 콘텐츠 서버(100)에 탑재되어 다운로드 기능을 수행하도록 구현될 수 있다.The download server 200 is a server for transmitting the first content through a network (not shown). The download server 200 may be implemented as a separate server connected to the content server 100 or mounted on the content server 100 to perform a download function. Can be implemented.

이러한 다운로드 서버(200)는 본 발명의 실시예에 따른 변환 장치(300)를 포함한다. 여기서, 변환 장치(300)는 K-Apps 규격에 따른 제1 콘텐츠를 안드로이드 플랫폼에서 실행 가능한 '.apk' 확장자를 가지는 제2 콘텐츠로 변환한다. The download server 200 includes a conversion device 300 according to an embodiment of the present invention. Here, the conversion device 300 converts the first content according to the K-Apps standard into the second content having a '.apk' extension executable on the Android platform.

이때, 안드로이드는 스마트폰에서 프로그램을 실행하도록 하는 구글이 만든 모바일 전용 운영체제를 말한다.In this case, Android refers to a mobile-only operating system made by Google that allows a program to run on a smartphone.

또한, 다운로드 서버(200)는 네트워크(미도시)를 통해 연결된 사용자 단말(400)로 변환 장치(300)에 의해 변환된 제2 콘텐츠를 전송한다. In addition, the download server 200 transmits the second content converted by the conversion apparatus 300 to the user terminal 400 connected through a network (not shown).

사용자 단말(400)은 정상 구매한 제1 콘텐츠의 다운로드를 다운로드 서버(200)로 요청하고, 제2 콘텐츠를 수신하여 실행한다. The user terminal 400 requests the download server 200 to download the normally purchased first content, and receives and executes the second content.

여기서, 제1 콘텐츠 및 제2 콘텐츠는 디지털 포맷으로 제작 또는 가공한 디지털 콘텐츠로서, 다양한 기능을 구현하는 애플리케이션을 포함한다.Here, the first content and the second content are digital content produced or processed in a digital format, and include an application that implements various functions.

도 2는 본 발명의 한 실시예에 따른 도 1의 변환 장치의 세부 구성을 나타낸 블록도이고, 도 3은 본 발명의 다른 실시예에 따른 도 1의 변환 장치의 세부 구성을 나타낸 블록도이다.2 is a block diagram illustrating a detailed configuration of the converter of FIG. 1 according to an embodiment of the present invention, and FIG. 3 is a block diagram illustrating a detailed configuration of the converter of FIG. 1 according to another embodiment of the present invention.

먼저, 도 2를 참조하면, 변환 장치(300)는 입력부(301), 변환부(303), 구성부(305), 서명부(307), 구동부(309) 및 출력부(311)를 포함한다. First, referring to FIG. 2, the conversion device 300 includes an input unit 301, a conversion unit 303, a configuration unit 305, a signature unit 307, a driver 309, and an output unit 311.

여기서, 구동부(309)는 환경 변수를 참조하여 변환부(303), 구성부(305), 서명부(307)를 구동시킨다. 변환부(303)가 변환한 제2 콘텐츠는 구성부(305)에 의해 추가 기능이 삽입된 후, 변환부(303)에 의해 빌드되어 서명부(307)로 출력되고, 서명부(307)가 서명을 추가한 후, 출력부(311)로 전달된다.Here, the driving unit 309 drives the conversion unit 303, the configuration unit 305, and the signature unit 307 with reference to environment variables. After the additional function is inserted by the configuration unit 305, the second content converted by the conversion unit 303 is built by the conversion unit 303 and output to the signature unit 307, and the signature unit 307 performs the signature. After the addition, it is transmitted to the output unit 311.

이때, 입력부(301)로 입력된 제1 콘텐츠는 구성부(305)에 입력되어 안드로이드 플랫폼에서 실행 가능하도록 추가 기능이 삽입된 후, 변환부(303) 및 서명부(307)를 거치도록 구현될 수도 있다. In this case, the first content input to the input unit 301 may be implemented to pass through the conversion unit 303 and the signature unit 307 after the additional function is inserted into the configuration unit 305 to be executed on the Android platform. have.

변환 장치(300)는 '.wgt'의 확장자를 가지는 제1 콘텐츠를 '.apk' 확장자를 가지는 제2 콘텐츠로 변환하기 위한 기능을 라이브러리(lib) 형태로 제공하는 convert.jar 파일, '.apk' 확장자를 가지는 제2 콘텐츠를 구성하기 위해서 필요한 widgetview.zip 파일, '.apk' 확장자를 가지는 제2 콘텐츠에 서명(sign)을 하기 위한 keystore 파일, 빌드(build)에 필요한 정보를 정의한 buildconfig.xml 파일 및 convert.jar를 실행하기 위한 입력 파라미터(parameter) 변수를 이용하여 콘텐츠 변환을 수행한다. The converter 300 converts the first content having the extension of '.wgt' into the second content having the extension of '.apk' in the form of a library. Widgetview.zip file for configuring second content with 'extension', keystore file for signing second content with '.apk' extension, buildconfig.xml that defines information needed for build Performs content conversion using input parameter variables for executing the file and convert.jar.

변환 장치(300)의 세부 구성요소에 대하여 설명하면 다음과 같다. 여기서, 입력부(301)는 K-Apps 규격에 따른 제1 콘텐츠 및 입력 파라미터 변수를 입력받는다. 이러한 입력부(301)는 콘텐츠 제공 서버(도 1의 100)로부터 제1 콘텐츠를 입력받는다. Detailed components of the converter 300 will be described below. Here, the input unit 301 receives the first content and the input parameter variable according to the K-Apps standard. The input unit 301 receives the first content from the content providing server 100 of FIG. 1.

변환부(303)는 라이브러리(lib) 형태로 변환 기능을 제공하는 convert.jar 파일을 실행하여 K-apps 규격에 따른 코드를 안드로이드 플랫폼에서 해석할 수 있는 코드 즉 apk 형식의 코드로 변환한다. 이처럼, 변환 기능을 convert.jar라는 lib 형태로 제공하기 때문에 입력 파라미터를 추가함으로써 변환 장치(300)의 기능 확장이 용이하다.The conversion unit 303 executes a convert.jar file that provides a conversion function in a library form, and converts the code according to the K-apps standard into a code that can be interpreted by the Android platform, that is, apk format code. As such, since the conversion function is provided in the form of lib called convert.jar, it is easy to expand the function of the conversion apparatus 300 by adding an input parameter.

이때, convert.jar 파일은 wgt→apk 로 변환하기 위한 실행 바이너리로 jar 파일이다. 이러한 convert.jar 파일을 실행하기 위한 입력 파라미터(parameter) 변수는 입력부(301)를 통해 변환부(303)로 입력된다.At this time, convert.jar file is an executable binary to convert wgt → apk. An input parameter variable for executing the convert.jar file is input to the converting unit 303 through the input unit 301.

여기서, 입력 파라미터 변수는 convert.jar 파일을 실행시키는 정보로서, 실행 방법은 두가지가 있다. 한 실시예에 따르면, 스탠드 얼론(stand-alone)으로 직접 명령어를 입력하여 실행한다. 다른 실시예에 따르면, convert.jar 파일 내의 클래스를 외부 자바코드에서 임포트(import)하여 클래스 함수를 직접 호출하여 실행한다. 이때, apk 파일 생성을 위한 정보를 입력받으며 입력이 없을시 디폴트(default)로 지정된 값을 사용한다. 디폴트로 지정된 입력 파라미터 변수는 빌드 설정 파일 경로, widget wgt 파일 경로, apk 생성 디렉토리 경로, android manifest 파일에 들어갈 versioncode, versionname, apk를 빌드할 ANDROID target ID, 빌드 후 생성되는 apk 파일 이름, target WRT의 WAC-min-version, WRT의 product ID, 디버그 옵션, 로그 파일 경로, 이동통신 사업자 ARM 시스템을 위한 product ID, 이동통신 사업자 ARM 시스템을 위한 product copyright을 포함한다.Here, the input parameter variable is information for executing the convert.jar file, and there are two ways to execute it. According to an embodiment, the command is directly executed by executing stand-alone. According to another embodiment, a class in the convert.jar file is imported from external Java code and executed by directly calling a class function. At this time, it receives the information for creating an apk file and uses the default value when there is no input. Input parameter variables specified by default include build configuration file path, widget wgt file path, apk generation directory path, versioncode to be included in android manifest file, versionname, ANDROID target ID to build apk, apk file name to be created after build, target WRT Includes WAC-min-version, product ID of the WRT, debug options, log file path, product ID for the carrier ARM system, and product copyright for the carrier ARM system.

또한, 변환부(303)는 convert.jar 파일을 실행하여 wgt 타입의 제1 콘텐츠를apk 타입의 제2 콘텐츠로 변환하여 sdk로 컴파일한 후, 배포 가능하도록 빌드한다. 여기서, 빌드는 일반적으로 target OS와 CPU에서 구동할 수 있도록 컴파일된 파일을 실행 코드로 변경하는 것을 지칭한다.In addition, the conversion unit 303 executes the convert.jar file, converts the first content of the wgt type into the second content of the apk type, compiles it into sdk, and then builds it for distribution. Here, build generally refers to changing a compiled file into executable code to run on a target OS and a CPU.

구성부(305)는 widgetview.zip 파일을 실행하여 안드로이드(android)에서 실행 가능하도록 변환부(303)가 변환한 제2 콘텐츠에 필요한 기능을 삽입한다. 즉 변환부(303)가 변환한 제2 콘텐츠가 K-apps 규격에 따른 특성을 가지도록 기능을 삽입한다. 이러한 widgetview.zip 파일을 통해 변환부(303)가 변환한 제2 콘텐츠는 안드로이드 플랫폼에서 K-apps 규격을 가지면서도 실행이 가능하도록 구성된다. '.wgt'와 '.apk'는 실행 환경(runtime)이 다르기 때문에 필요한 특성이 다르다. 따라서, 구성부(305)는 '.apk' 환경을 고려하여 여러 기능을 추가로 지원한다. The configuration unit 305 executes the widgetview.zip file and inserts a function required for the second content converted by the conversion unit 303 to be executable in Android. That is, a function is inserted such that the second content converted by the conversion unit 303 has a characteristic according to the K-apps standard. The second content converted by the conversion unit 303 through the widgetview.zip file is configured to be executable while having the K-apps standard on the Android platform. '.wgt' and '.apk' have different characteristics because they have different runtimes. Therefore, the configuration unit 305 additionally supports various functions in consideration of the '.apk' environment.

이때, widgetview.zip 파일은 '.apk' 타입으로 설치되어 안드로이드 단말 플랫폼에서 실행하기 위한 실행 코드가 삽입된 안드로이드 JAVA 코드 파일의 모음이며, widgetview.zip 파일을 통해 안드로이드 단말 플랫폼에서 실행 가능한 '.apk' 타입 콘텐츠의 구성 요소를 갖추게 된다. At this time, the widgetview.zip file is a collection of Android JAVA code files that are installed as '.apk' types and have executable code for execution on the Android terminal platform. The '.apk' executable on the Android terminal platform through the widgetview.zip file 'Type components of content.

여기서, 구성부(305)는 변환부(303)가 변환한 제2 콘텐츠의 소스코드 즉 플레인 텍스트(plain text)를 암호화한다. 이처럼, 소스코드를 암호화시킴으로써 소스코드의 변조를 방지할 수 있다.Here, the configuration unit 305 encrypts the source code, that is, plain text, of the second content converted by the conversion unit 303. As such, by encrypting the source code, tampering with the source code can be prevented.

또한, 구성부(305)는 사업자 예를들어 이동통신 사업자가 제공하는 라이센스 검증코드를 제2 콘텐츠에 포함시킨다. 이렇게 하면, 불법 복제된 컨텐츠의 유포 및 실행 가능성을 사전에 차단하여 이동통신사의 마켓에서 배포하는 콘텐츠를 정상적으로 구매하지 않고 무단 사용하려는 것을 방지할 수 있다. In addition, the configuration unit 305 includes a license verification code provided by an operator, for example, a mobile communication provider, in the second content. In this way, the distribution and execution of illegally copied contents can be blocked in advance, thereby preventing unauthorized use of the contents distributed in the market of the mobile communication company without purchasing normally.

서명부(307)는 keystore 파일을 실행하여 구성부(305)가 출력하는 제2 콘텐츠에 서비스 제공자(operator)의 서명(sign)을 추가한다. 안드로이드 플랫폼은 '.apk' 타입 콘텐츠를 설치할 때 서명 여부를 확인하여 서명되지 않은 '.apk' 타입 콘텐츠의 경우 설치를 허락하지 않는다. 여기서, keystore 파일은 사업자의 인증서로 서명하도록 하는 기능을 제공한다. The signature unit 307 executes a keystore file to add a signature of a service operator to the second content output from the configuration unit 305. The Android platform does not allow installation of unsigned '.apk' type content by checking whether it is signed when installing '.apk' type content. Here, the keystore file provides a function for signing with the operator's certificate.

또한, apk 빌드를 위한 모든 동작은 Shell Command로 이루어지는데, Shell Command를 사용하려면 별도의 시스템 환경 변수 설정이 반드시 필요하며 정상적으로 설정되지 않을시 변환 장치(300)는 정상 동작하지 않는다. 따라서, 구동부(309)는 Apache Ant 또는 안드로이드 sdk를 다운받아 설치한 후, 시스템 환경변수를 설정한다. 즉 구동부(309)는 Apache Ant 또는 안드로이드 sdk를 포함하는 외부 툴(tool)을 사전에 다운로드하여 설치한다. 여기서, Apache Ant는 소프트웨어 빌드 프로세스를 자동화하는 프로그램이다. 또한, 안드로이드 sdk는 안드로이드 개발 프로그램이다.In addition, all operations for apk build are made of Shell Command. To use the Shell Command, a separate system environment variable setting is required, and the conversion device 300 does not operate normally when it is not normally set. Therefore, the driver 309 downloads and installs Apache Ant or Android sdk, and sets a system environment variable. That is, the driving unit 309 downloads and installs an external tool including Apache Ant or Android sdk in advance. Apache Ant is a program that automates the software build process. Also, android sdk is an android development program.

구동부(309)는 앞서 기재한 외부 툴을 실행시켜 변환부(303), 구성부(305) 및 서명부(307)의 동작을 구동시킨다. 이때, 외부 툴의 경로 정보가 필요하며 가장 최우선적으로 환경 변수를 참조한다.The driver 309 executes the external tool described above to drive the operations of the converter 303, the component 305, and the signature 307. At this time, the path information of the external tool is required and the environment variable is first referred to.

구동부(309)는 Apache Ant를 다운로드하여 설치한 경우, Apache Ant의 bin 디렉터리를 path로 등록한다. 그리고 환경 변수로 antpath 즉 Apache ant의 bin 디렉터리의 절대 경로를 참조한다. The driver 309 registers the bin directory of Apache Ant as a path when Apache Ant is downloaded and installed. The environment variable refers to antpath, that is, the absolute path of Apache ant's bin directory.

구동부(309)는 안드로이드 sdk를 다운로드하여 설치한 경우, Android sdk의 tools 디렉터리를 path로 등록한다. 그리고 환경 변수로 Androidpath 즉 안드로이드 sdk의 tools 디렉터리 절대 경로를 참조한다.The driver 309 registers the tools directory of the Android sdk as a path when the Android sdk is downloaded and installed. The environment variable refers to the Androidpath, the absolute path of the tools directory on the Android sdk.

구동부(309)는 빌드(build)에 필요한 정보를 정의한 buildconfig.xml 파일 에 정의된 buildconfig의 환경을 참조하여 외부 툴을 실행시켜 변환부(303), 구성부(305) 및 서명부(307)의 동작을 구동시킨다. The driving unit 309 executes an external tool by referring to the environment of the buildconfig defined in the buildconfig.xml file that defines the information necessary for the build, and operates the conversion unit 303, the configuration unit 305, and the signature unit 307. Drive.

이때, buildconfig.xml 파일은 빌드 환경에 따라 시스템 환경 변수가 달라질 수 있는 점을 고려하여 환경 변수를 제대로 인지할 수 있도록 지원하는 파일이다. 즉 변환 장치(300)의 각 구성요소(303, 305, 307)가 인식할 수 있는 환경 변수가 buildconfig.xml 파일에 입력된다. In this case, the buildconfig.xml file is a file that supports proper recognition of environment variables in consideration of the fact that system environment variables may vary depending on the build environment. That is, environment variables that can be recognized by each component 303, 305, and 307 of the conversion device 300 are input to the buildconfig.xml file.

이때, 환경 변수로 참조되는 모든 경로는 절대 경로만 허용하며 상대 경로는 허용하지 않는다. 이는 상대경로를 사용할 경우 Shell에서 정상적으로 경로를 인식하지 못하기 때문에 변환 장치(300)가 정상적으로 동작할 수 없기 때문이다. At this time, all paths referred to as environment variables only allow absolute paths, not relative paths. This is because the conversion device 300 cannot operate normally because the shell does not recognize the path normally when using the relative path.

buildconfig.xml 파일이 제공하는 환경 변수는 아래 표 1과 같다.The environment variables provided by the buildconfig.xml file are shown in Table 1 below.

구분division TagTag 설명Explanation Generator
(구동부)
Generator
(Drive part)
AndroidpathAndroidpath Android SDK의 tools 디렉터리 절대 경로Absolute path to tools directory in Android SDK
antpathantpath Apache ant의 bin디렉터리의 절대 경로Absolute path of bin directory in Apache ant wgtviewpathwgtviewpath 함께 첨부된 Widgetview.zip 의 절대 경로Absolute path of Widgetview.zip attached together Sign_keystore
(서명부)
Sign_keystore
(Sign book)
keypathkeypath Signing에 사용할 keystore의 절대 경로Absolute path to keystore to use for signing
aliasalias keystore의 aliasalias for keystore storepassstorepass keystore의 storepassstorepass in keystore keypasskeypass keystore keypasskeystore keypass

출력부(311)는 서명부(307)가 출력하는 제2 콘텐츠를 외부로 출력한다. 여기서, 외부는 네트워크(미도시)에 연결된 사용자 단말(400)이 될 수 있다. 그리고 출력부(311)가 출력하는 제2 콘텐츠는 소스코드가 암호화된 플레인 텍스트(plain text)와 라이센스 검증 코드가 삽입되어 있다.The output unit 311 outputs the second content output from the signature unit 307 to the outside. Here, the outside may be a user terminal 400 connected to a network (not shown). The second content output by the output unit 311 includes a plain text and a license verification code in which the source code is encrypted.

지금까지 기술된 제1 콘텐츠는 '.wgt' 콘텐츠와 동일하며 혼용되었다. 그리고 제2 콘텐츠는 '.apk' 콘텐츠와 동일하며 혼용되었다.The first content described so far is the same as the '.wgt' content and is mixed. The second content is the same as the '.apk' content and is mixed.

다음, 변환 장치(300)는 도 3과 같이 구현될 수 있다. Next, the conversion device 300 may be implemented as shown in FIG. 3.

도 3은 도 2를 참고하여 설명한 입력부(301), 변환부(303), 구성부(305), 서명부(307), 구동부(309) 및 출력부(311)의 기능 중 적어도 일부를 수행하는데 사용할 수 있는 변환 장치(500)를 나타낸다. 이러한 변환 장치(500)는 프로세서(501), 메모리(503), 적어도 하나의 저장장치(505), 입출력(input/output, I/O) 인터페이스(507) 및 네트워크 인터페이스(509)를 포함하는 컴퓨터 시스템으로 구현될 수 있다. 3 is used to perform at least some of the functions of the input unit 301, the converter 303, the component 305, the signature unit 307, the driver 309, and the output unit 311 described with reference to FIG. 2. The conversion apparatus 500 which can be shown is shown. The converter 500 includes a processor 501, a memory 503, at least one storage 505, an input / output (I / O) interface 507, and a network interface 509. It can be implemented as a system.

프로세서(501)는 중앙처리 유닛(central processing unit, CPU)이나 기타 칩셋, 마이크로프로세서 등으로 구현될 수 있으며, 메모리(503)는 동적 랜덤 액세스 메모리(dynamic random access memory, DRAM), 램버스 DRAM(rambus DRAM, RDRAM), 동기식 DRAM(synchronous DRAM, SDRAM), 정적 RAM(static RAM, SRAM) 등의 RAM과 같은 매체로 구현될 수 있다. The processor 501 may be implemented as a central processing unit (CPU) or other chipset, a microprocessor or the like and the memory 503 may be a dynamic random access memory (DRAM), a Rambus DRAM DRAM, RDRAM), synchronous DRAM (synchronous DRAM, SDRAM), static RAM (SRAM), and the like.

저장 장치(505)는 하드디스크(hard disk), CD-ROM(compact disk read only memory), CD-RW(CD rewritable), DVD-ROM(digital video disk ROM), DVD-RAM, DVD-RW 디스크, 블루레이(blue-ray) 디스크 등의 광학디스크, 플래시메모리, 다양한 형태의 RAM과 같은 영구 또는 휘발성 저장장치로 구현될 수 있다. The storage device 505 may be a hard disk, a compact disk read only memory (CD-ROM), a compact disk rewritable (CD-RW), a digital video disk ROM, , An optical disk such as a blue-ray disk, a flash memory, various types of RAM, or a permanent or volatile storage device.

또한, I/O 인터페이스(507)는 프로세서(501) 및/또는 메모리(503)가 저장 장치(505), 입력장치(509) 및 표시장치(511)에 접근할 수 있도록 하며, 네트워크 인터페이스(509)는 프로세서(501) 및/또는 메모리(503)가 네트워크(미도시)에 접근할 수 있도록 한다.In addition, I / O interface 507 allows processor 501 and / or memory 503 to access storage 505, input device 509, and display 511, and network interface 509. ) Allows processor 501 and / or memory 503 to access a network (not shown).

이 경우, 프로세서(501)는 입력부(301), 변환부(303), 구성부(305), 서명부(307), 구동부(309) 및 출력부(311)의 기능의 적어도 일부 기능을 구현하기 위한 프로그램 명령을 메모리(503)에 로드하고, 도 2를 참고로 하여 설명한 동작이 수행되도록 제어할 수 있다. In this case, the processor 501 may implement at least some of the functions of the input unit 301, the converter 303, the component 305, the signature unit 307, the driver 309, and the output unit 311. The program command may be loaded into the memory 503 and controlled to perform the operation described with reference to FIG. 2.

이러한 변환 장치(300)의 동작에 대해 설명하면 다음과 같다.The operation of the converter 300 will be described below.

도 4는 본 발명의 한 실시예에 따른 변환 장치의 변환 방법을 나타낸 순서도이다.4 is a flowchart illustrating a conversion method of a conversion device according to an embodiment of the present invention.

도 4를 참조하면, 구동부(309)가 사전에 소프트웨어 빌드 프로세스를 자동화하는 Apache Ant를 다운로드하여 설치한다(S101).Referring to FIG. 4, the driver 309 downloads and installs Apache Ant for automating the software build process in advance (S101).

다음, 구동부(309)가 환경변수로서 Apache Ant의 bin 디렉터리를 path로 등록한다(S103).Next, the driving unit 309 registers the bin directory of Apache Ant as a path as an environment variable (S103).

이후, 입력부(301)를 통해 K-apps 규격에 따른 제1 콘텐츠가 입력된다(S105). 이때, S105 단계는 보다 세부적으로 설명하면, 다음과 같다. 구동부(309)는 빈 프로젝트를 생성하는데, apk로 빌드가 가능하도록 Ant Script가 build.xml이란 이름으로 함께 생성된다. 그리고 안드로이드의 Assets 디렉토리에 Widget 파일 즉 K-apps 규격에 따른 제1 콘텐츠가 리소스로 삽입된다.Thereafter, the first content according to the K-apps standard is input through the input unit 301 (S105). At this time, step S105 will be described in more detail as follows. The driver 309 generates an empty project, in which an Ant script is created with a name of build.xml so that it can be built with apk. The widget file, that is, the first content according to the K-apps standard, is inserted into the Android Assets directory as a resource.

다음, 입력부(301)를 통해 변환부(303)로 앞서 기재한 입력 파라미터 변수가 입력된다(S107).Next, the above-described input parameter variable is input to the conversion unit 303 through the input unit 301 (S107).

다음, 구동부(309)는 S103 단계에서 등록된 Antpath 및 구성부(305)가 등록한 Wgtviewpath를 환경변수로 참조하여 변환부(303), 구성부(305) 및 서명부(307)를 구동시킨다(S109).Next, the driving unit 309 drives the conversion unit 303, the configuration unit 305, and the signature unit 307 by referring to the Antpath registered in step S103 and the Wgtviewpath registered by the configuration unit 305 as environment variables (S109). .

다음, 변환부(303)는 S107 단계에서 입력받은 입력 파라미터 및 라이브러리 형태로 제공되는 실행 바이너리 파일 즉 convert.jar 파일을 이용하여 S105 단계에서 입력받은 제1 콘텐츠를 apk 타입의 제2 콘텐츠로 변환한다(S111).Next, the converting unit 303 converts the first content input in the step S105 into the second content of the apk type using the execution binary file provided in the form of the input parameter and the library input in step S107, that is, the convert.jar file. (S111).

다음, 구성부(305)는 S111 단계에서 변환된 제2 콘텐츠에 widgetview.zip 파일을 통하여 앞서 기재한 암호화 코드 및 라이센스 검증 코드를 삽입한다(S113). Next, the configuration unit 305 inserts the above-described encryption code and license verification code through the widgetview.zip file in the second content converted in step S111 (S113).

이때, widgetview.zip 파일의 Java코드를 S105 단계에서 생성된 안드로이드 프로젝트의 src 디렉토리에 복사한다. At this time, copy the Java code of the widgetview.zip file to the src directory of the Android project created in step S105.

그리고 구동부(309)가 제공하는 config.xml 파일을 파싱(parsing)하여 Floating mode의 지원여부와 패키지명을 생성하여 widgetview.zip 파일의 자바(Java)를 수정한다. The config.xml file provided by the driver 309 is parsed to generate support for the floating mode and a package name to modify the Java of the widgetview.zip file.

그리고 변환된 제2 콘텐츠를 암호화한다. Then, the converted second content is encrypted.

그리고 라이센스 검증 코드를 libs 디렉토리에 추가하고 빌드 스크립트에 classpath 옵션을 추가한다.Then add the license verification code to the libs directory and add the classpath option to the build script.

다음, 변환부(303)가 S113 단계에서 암호화 코드 및 라이센스 검증 코드가 삽입된 제2 콘텐츠를 빌드한다(S115). 즉 Ant에서 Build.xml을 설정파일로 APK 빌드한다. 이때, APK는 unsigned로 빌드된다.Next, the conversion unit 303 builds the second content in which the encryption code and the license verification code are inserted in step S113 (S115). In other words, Build.xml builds APK with configuration file in Ant. At this point, the APK is built as unsigned.

다음, 서명부(307)가 S115 단계에서 빌드된 제2 콘텐츠에 사업자의 인증서로 서명한다(S117).Next, the signing unit 307 signs the second content built in step S115 with the operator's certificate (S117).

다음, 출력부(311)가 안드로이드 플랫폼에서 실행 가능한 apk 타입의 콘텐츠 즉 제2 콘텐츠를 출력한다(S119).Next, the output unit 311 outputs apk-type content, that is, second content, executable on the Android platform (S119).

도 5는 본 발명의 다른 실시예에 따른 변환 장치의 변환 방법을 나타낸 순서도이다.5 is a flowchart illustrating a conversion method of a conversion device according to another embodiment of the present invention.

도 5를 참조하면, 구동부(309)가 사전에 안드로이드 개발 프로그램인 안드로이드 sdk를 다운로드하여 설치한다(S201).Referring to FIG. 5, the driving unit 309 downloads and installs an android sdk, which is an Android development program, in advance (S201).

다음, 구동부(309)가 환경변수로서 안드로이드 sdk의 tools 디렉터리를 path로 등록한다(S203).Next, the driving unit 309 registers the tools directory of the Android sdk as a path as an environment variable (S203).

이후, 입력부(301)를 통해 K-apps 규격에 따른 제1 콘텐츠가 입력된다(S205). 이때, S205 단계는 도 4의 S105 단계와 동일하다. Thereafter, the first content according to the K-apps standard is input through the input unit 301 (S205). At this time, step S205 is the same as step S105 of FIG. 4.

다음, 입력부(301)를 통해 변환부(303)로 앞서 기재한 입력 파라미터 변수가 입력된다(S207). 이때, S207 단계는 도 4의 S107 단계와 동일하다.Next, the above-described input parameter variable is input to the conversion unit 303 through the input unit 301 (S207). At this time, step S207 is the same as step S107 of FIG.

다음, 구동부(309)는 S203 단계에서 등록된 Androidpath 및 구성부(305)가 등록한 Wgtviewpath를 환경변수로 참조하여 변환부(303), 구성부(305) 및 서명부(307)를 구동시킨다(S209).Next, the driving unit 309 drives the conversion unit 303, the configuration unit 305, and the signature unit 307 by referring to the Androidpath registered in step S203 and the Wgtviewpath registered by the configuration unit 305 as environment variables (S209). .

다음, 변환부(303)는 S207 단계에서 입력받은 입력 파라미터 및 convert.jar 파일을 이용하여 S205 단계에서 입력받은 제1 콘텐츠를 apk 타입의 제2 콘텐츠로 변환한다(S211).Next, the converting unit 303 converts the first content input in the step S205 into the second content of the apk type using the input parameter and the convert.jar file input in the step S207 (S211).

다음, 구성부(305)는 S211 단계에서 변환된 제2 콘텐츠에 widgetview.zip 파일을 통하여 앞서 기재한 암호화 코드 및 라이센스 검증 코드를 삽입한다(S213). Next, the configuration unit 305 inserts the above-described encryption code and license verification code into the second content converted in step S211 through the widgetview.zip file (S213).

이때, S213 단계는 도 4의 S113 단계와 동일하다.At this time, step S213 is the same as step S113 of FIG. 4.

다음, 변환부(303)가 S113 단계에서 암호화 코드 및 라이센스 검증 코드가 삽입된 제2 콘텐츠를 빌드한다(S215). 이때, S215 단계는 도 4의 S115 단계와 동일하다.Next, the conversion unit 303 builds the second content in which the encryption code and the license verification code are inserted in step S113 (S215). At this time, step S215 is the same as step S115 of FIG. 4.

다음, 서명부(307)가 S115 단계에서 빌드된 제2 콘텐츠에 사업자의 인증서로 서명한다(S217).Next, the signing unit 307 signs the second content built in step S115 with the operator's certificate (S217).

다음, 출력부(311)가 안드로이드 플랫폼에서 실행 가능한 apk 타입의 콘텐츠 즉 제2 콘텐츠를 출력한다(S219).Next, the output unit 311 outputs apk-type content, that is, second content, executable on the Android platform (S219).

도 6은 본 발명의 한 실시예에 따른 도 1의 사용자 단말의 세부 구성을 나타낸 블록도이고, 도 7은 본 발명의 다른 실시예에 따른 도 1의 사용자 단말의 세부 구성을 나타낸 블록도이다.6 is a block diagram showing a detailed configuration of the user terminal of FIG. 1 according to an embodiment of the present invention, Figure 7 is a block diagram showing a detailed configuration of the user terminal of Figure 1 according to another embodiment of the present invention.

먼저, 도 6을 참조하면, 사용자 단말(400)은 apk 콘텐츠(401)를 저장하는 저장부(403), 실행부(405) 및 검증부(407)를 포함한다.First, referring to FIG. 6, the user terminal 400 includes a storage unit 403, an execution unit 405, and a verification unit 407 for storing apk content 401.

여기서, apk 콘텐츠(401)는 암호화된 평문(plain text) 소스코드 및 라이센스 검증코드를 포함한다.Here, the apk content 401 includes an encrypted plain text source code and a license verification code.

저장부(403)는 외부로부터 예컨대 도 1의 다운로드 서버(200)로부터 수신되는 apk 콘텐츠(401)를 저장한다.The storage unit 403 stores the apk content 401 received from the outside, for example, from the download server 200 of FIG. 1.

실행부(405)는 검증부(407)의 정상 구매 여부를 판단한 결과 즉 검증 성공 여부에 따라 apk 콘텐츠(401)의 실행 여부를 결정한다.The execution unit 405 determines whether or not the apk content 401 is executed according to a result of determining whether the verification unit 407 purchases normally.

검증부(407)는 apk 콘텐츠(401)에 포함된 라이센스 검증코드에 따라 apk 콘텐츠(401)의 정상 구매 여부를 검증한다. 예를 들어, 라이센스 검증코드는 콘텐츠 제공 서버(100) 또는 검증 서버(미도시)의 접속 주소를 포함하며, 검증부(407)는 라이센스 검증코드에 포함된 접속 주소를 이용하여 접속한 서버와 연동하여 apk 콘텐츠(401)의 정상 구매 여부를 판단한다.The verification unit 407 verifies whether the apk content 401 is normally purchased according to the license verification code included in the apk content 401. For example, the license verification code includes an access address of the content providing server 100 or the verification server (not shown), and the verification unit 407 interworks with a server connected using the access address included in the license verification code. It is determined whether the apk content 401 is purchased normally.

다음, 사용자 단말(400)은 도 7과 같이 구현될 수 있다. Next, the user terminal 400 may be implemented as shown in FIG.

도 7은 도 6을 참고하여 설명한 저장부(403), 실행부(405) 및 검증부(407)의 기능 중 적어도 일부를 수행하는데 사용할 수 있는 사용자 단말(600)을 나타낸다. 이러한 사용자 단말(600)은 프로세서(601), 메모리(603), 적어도 하나의 저장장치(605), 입출력(input/output, I/O) 인터페이스(607) 및 네트워크 인터페이스(609)를 포함하는 컴퓨터 시스템으로 구현될 수 있다. FIG. 7 illustrates a user terminal 600 that may be used to perform at least some of the functions of the storage unit 403, the execution unit 405, and the verification unit 407 described with reference to FIG. 6. The user terminal 600 includes a processor 601, a memory 603, at least one storage device 605, an input / output (I / O) interface 607, and a network interface 609. It can be implemented as a system.

프로세서(601)는 중앙처리 유닛(central processing unit, CPU)이나 기타 칩셋, 마이크로프로세서 등으로 구현될 수 있으며, 메모리(603)는 동적 랜덤 액세스 메모리(dynamic random access memory, DRAM), 램버스 DRAM(rambus DRAM, RDRAM), 동기식 DRAM(synchronous DRAM, SDRAM), 정적 RAM(static RAM, SRAM) 등의 RAM과 같은 매체로 구현될 수 있다. The processor 601 may be implemented as a central processing unit (CPU) or other chipset, microprocessor, etc. The memory 603 may be a dynamic random access memory (DRAM), a Rambus DRAM DRAM, RDRAM), synchronous DRAM (synchronous DRAM, SDRAM), static RAM (SRAM), and the like.

저장 장치(605)는 하드디스크(hard disk), CD-ROM(compact disk read only memory), CD-RW(CD rewritable), DVD-ROM(digital video disk ROM), DVD-RAM, DVD-RW 디스크, 블루레이(blue-ray) 디스크 등의 광학디스크, 플래시메모리, 다양한 형태의 RAM과 같은 영구 또는 휘발성 저장장치로 구현될 수 있다. The storage device 605 may be a hard disk, a compact disk read only memory (CD-ROM), a compact disk rewritable (CD-RW), a digital video disk ROM, a DVD- , An optical disk such as a blue-ray disk, a flash memory, various types of RAM, or a permanent or volatile storage device.

또한, I/O 인터페이스(607)는 프로세서(601) 및/또는 메모리(603)가 저장 장치(605), 입력장치(609) 및 표시장치(611)에 접근할 수 있도록 하며, 네트워크 인터페이스(609)는 프로세서(601) 및/또는 메모리(603)가 네트워크(미도시)에 접근할 수 있도록 한다.In addition, I / O interface 607 allows processor 601 and / or memory 603 to access storage 605, input device 609, and display 611, and network interface 609. ) Allows processor 601 and / or memory 603 to access a network (not shown).

이 경우, 프로세서(601)는 실행부(405) 및 검증부(407)의 기능의 적어도 일부 기능을 구현하기 위한 프로그램 명령을 메모리(603)에 로드하고, 도 6을 참고로 하여 설명한 동작이 수행되도록 제어할 수 있다. In this case, the processor 601 loads program instructions for implementing at least some of the functions of the execution unit 405 and the verification unit 407 into the memory 603, and the operation described with reference to FIG. 6 is performed. Can be controlled.

그러면, 사용자 단말(400, 500)의 콘텐츠 실행 방법에 대해 설명하면 도 8과 같다. 이때, 도 6 및 도 7에서 설명한 내용과 동일한 구성 요소에 대한 설명은 동일한 도면 부호를 사용하여 설명한다. Then, the method of executing the content of the user terminal (400, 500) will be described with reference to FIG. In this case, descriptions of the same components as those described with reference to FIGS. 6 and 7 will be described using the same reference numerals.

도 8은 본 발명의 실시예에 따른 사용자 단말의 콘텐츠 실행 방법을 나타낸 순서도이다.8 is a flowchart illustrating a content execution method of a user terminal according to an embodiment of the present invention.

도 8을 참조하면, 저장부(403)는 apk 콘텐츠(401)를 다운로드하여 저장한다(S301).Referring to FIG. 8, the storage unit 403 downloads and stores the apk content 401 (S301).

다음, 실행부(405)는 저장부(403)에 저장된 apk 콘텐츠(401)를 실행한다(S303).Next, the execution unit 405 executes the apk content 401 stored in the storage unit 403 (S303).

이때, 검증부(407)는 apk 콘텐츠(401)에 포함된 라이센스 검증코드에 따른 라이센스 검증 절차를 수행한다(S305). At this time, the verification unit 407 performs a license verification procedure according to the license verification code included in the apk content (401) (S305).

다음, 실행부(405)는 검증부(407)의 라이센스 검증이 성공하는지를 판단한다(S307).Next, the execution unit 405 determines whether the license verification of the verification unit 407 succeeds (S307).

다음, 실행부(405)는 라이센스 검증에 성공하는 경우, 실행을 허용(S309)하며, apk 콘텐츠(401)에 포함된 암호화된 평문 소스코드를 해석하여 실행한다(S311).Next, when the license verification is successful, the execution unit 405 permits execution (S309), and analyzes and executes the encrypted plain text source code included in the apk content 401 (S311).

한편, 실행부(405)는 라이센스 검증에 실패하는 경우, 실행을 중지한다(S313). 이때, '화면 상에 정상 구매 여부가 확인되지 않습니다'와 같은 문구를 표출할 수 있다.On the other hand, when the license verification fails, the execution unit 405 stops execution (S313). At this time, a phrase such as 'the normal purchase is not confirmed on the screen' may be displayed.

이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있다. The embodiments of the present invention described above are not implemented only by the apparatus and method, but may be implemented through a program for realizing the function corresponding to the configuration of the embodiment of the present invention or a recording medium on which the program is recorded.

본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.Although embodiments of the present invention have been described in detail, the scope of the present invention is not limited thereto, and various modifications and improvements of those skilled in the art using the basic concepts of the present invention defined in the following claims are also included in the scope of the present invention. It belongs to.

Claims (17)

WAC(Wholesale Application Community) 규격에 따른 제1 콘텐츠를 입력받는 입력부;
상기 제1 콘텐츠를 안드로이드 플랫폼에서 실행 가능한 제2 콘텐츠로 변환한 후 빌드하는 변환부;
빌드 환경에 따라 달라지는 사전 정의된 환경 변수를 참조하여 상기 변환부를 구동시키는 구동부; 및
상기 변환부가 빌드한 제2 콘텐츠를 외부로 출력하는 출력부
를 포함하는 변환 장치.
An input unit configured to receive first content according to a WAC standard;
A converter configured to convert the first content into second content executable on the Android platform and then build the content;
A driving unit driving the conversion unit by referring to a predefined environment variable that varies according to a build environment; And
Output unit for outputting the second content built by the conversion unit to the outside
Conversion device comprising a.
제1항에 있어서,
상기 변환부는,
위젯 파일을 apk 파일로 변환하기 위한 실행 바이너리 파일을 이용하여 변환 및 빌드를 수행하는 변환 장치.
The method of claim 1,
Wherein,
Conversion device that performs conversion and build using executable binary file to convert widget file to apk file.
제2항에 있어서,
상기 입력부는, 입력 파라미터를 입력받아 상기 변환부로 전달하고,
상기 변환부는, 상기 입력 파라미터에 의해 실행되어 라이브러리 형태로 제공되는 상기 실행 바이너리 파일을 이용한 콘텐츠 변환을 수행하는 변환 장치.
3. The method of claim 2,
The input unit receives an input parameter and delivers it to the conversion unit.
And the converting unit converts the content using the executable binary file which is executed by the input parameter and provided in a library form.
제3항에 있어서,
상기 입력부는,
상기 변환부를 실행시키는 명령어를 상기 입력 파라미터로 입력받는 변환 장치.
The method of claim 3,
Wherein the input unit comprises:
And a conversion device receiving a command to execute the conversion unit as the input parameter.
제3항에 있어서,
상기 입력부는,
상기 실행 바이너리 파일의 클래스를 외부 자바코드에서 임포트하여 상기 실행 바이너리 파일의 클래스 함수를 직접 호출시키는 명령을 상기 입력 파라미터로 입력받는 변환 장치.
The method of claim 3,
Wherein the input unit comprises:
And a command to import a class of the executable binary file from external Java code and directly call a class function of the executable binary file as the input parameter.
제1항에 있어서,
상기 구동부에 의해 구동되고, 상기 안드로이드 플랫폼에서 실행 가능하도록 추가 기능을 상기 제2 콘텐츠에 삽입하는 구성부를 더 포함하고,
상기 변환부는,
상기 추가 기능이 삽입된 제2 콘텐츠를 빌드한 후, 상기 출력부로 전달하는 변환 장치.
The method of claim 1,
A component unit driven by the driving unit and inserting an additional function into the second content to be executable on the android platform,
Wherein,
And converting the second content into which the additional function is inserted, and delivering the built-in second content to the output unit.
제6항에 있어서,
상기 구성부는,
상기 변환부로부터 전달받은 제2 콘텐츠의 평문 소스코드를 암호화하고, 상기 제2 콘텐츠의 라이센스를 검증하기 위한 코드를 삽입한 후, 상기 변환부로 출력하며,
상기 변환부는,
암호화된 평문 소스코드 및 라이센스 검증코드가 포함된 제2 콘텐츠를 빌드한 후, 상기 출력부로 전달하는 변환 장치.
The method according to claim 6,
The component part,
Encrypting the plain text source code of the second content received from the converting unit, inserting a code for verifying a license of the second content, and outputting to the converting unit,
Wherein,
A conversion device for building the second content containing the encrypted plain text source code and the license verification code, and delivers it to the output unit.
제7항에 있어서,
암호화된 평문 소스코드 및 라이센스 검증코드가 포함된 제2 콘텐츠에 사업자의 인증서로 서명한 후, 상기 변환부로 전달하는 서명부를 더 포함하고,
상기 변환부는,
상기 서명부로부터 전달받은 암호화된 평문 소스코드 및 라이센스 검증코드가 포함되고, 서명이 추가된 제2 콘텐츠를 상기 출력부로 전달하는 변환 장치.
The method of claim 7, wherein
Further comprising a signature unit for signing the second content containing the encrypted plain text source code and the license verification code with a certificate of the operator, and forwarding to the conversion unit,
Wherein,
The conversion apparatus including the encrypted plain text source code and the license verification code received from the signature unit, and delivers the second content added to the signature to the output unit.
제1항에 있어서,
상기 제2 콘텐츠를 사용자 단말로 전송하는 다운로드 서버에 탑재되는 변환 장치.
The method of claim 1,
And a conversion device mounted on a download server for transmitting the second content to a user terminal.
콘텐츠 변환 장치가 콘텐츠를 변환하는 방법으로서,
외부로부터 WAC(Wholesale Application Community) 규격에 따른 제1 콘텐츠를 입력받는 단계;
빌드 환경에 따라 달라지는 사전 정의된 환경 변수를 참조하여 상기 콘텐츠 변환 장치가 구동되는 단계;
위젯 파일을 apk 파일로 변환하기 위한 실행 바이너리 파일을 이용하여 상기 제1 콘텐츠를 안드로이드 플랫폼에서 실행 가능한 제2 콘텐츠로 변환한 후, 빌드하는 단계; 및
상기 제2 콘텐츠를 외부로 출력하는 단계
를 포함하는 콘텐츠 변환 방법.
As a content conversion apparatus converts content,
Receiving a first content according to the WAC (Wholesale Application Community) standard from the outside;
Driving the content conversion apparatus with reference to a predefined environment variable that varies according to a build environment;
Converting the first content into a second executable executable on the Android platform using an executable binary file for converting the widget file into an apk file, and then building; And
Outputting the second content to the outside
Content conversion method comprising a.
제10항에 있어서,
상기 입력받는 단계 이전에,
소프트웨어 빌드 프로세스를 자동화하는 Apache Ant를 다운로드하여 설치하는 단계; 및
상기 Apache Ant의 bin 디렉터리를 path로 등록하는 단계를 더 포함하고,
상기 구동되는 단계는,
환경 변수로 antpath-상기 Apache ant의 bin디렉터리의 절대 경로를 말함-를 참조하는 콘텐츠 변환 방법.
The method of claim 10,
Before the receiving step,
Downloading and installing Apache Ant to automate the software build process; And
The method may further include registering the bin directory of Apache Ant as a path.
The driven step,
A content conversion method that refers to an environment variable antpath, which refers to the absolute path of the bin directory of Apache ant.
제10항에 있어서,
상기 입력받는 단계 이전에,
안드로이드 개발 프로그램인 안드로이드 sdk를 다운로드하여 설치하는 단계; 및
환경 변수에 상기 안드로이드 sdk의 tools 디렉터리를 path로 등록하는 단계를 더 포함하고,
상기 구동되는 단계는,
환경 변수로 Androidpath-상기 안드로이드 sdk의 tools 디렉터리 절대 경로를 말함-를 참조하는 콘텐츠 변환 방법.
The method of claim 10,
Before the receiving step,
Downloading and installing the android sdk, which is an android development program; And
And registering the tools directory of the android sdk as a path in an environment variable.
The driven step,
How to convert content that refers to the Androidpath, which is an absolute path to the tools directory of the Android sdk above as an environment variable.
제10항에 있어서,
상기 빌드하는 단계는,
외부로부터 입력받은 입력 파라미터 및 라이브러리 형태로 제공되는 상기 실행 바이너리 파일을 이용하여 상기 제1 콘텐츠를 상기 제2 콘텐츠로 변환하는 단계;
상기 제2 콘텐츠에 상기 안드로이드 플랫폼에서 실행 가능한 추가 기능을 삽입하는 단계; 및
상기 추가 기능이 삽입된 제2 콘텐츠를 빌드하는 단계를 더 포함하고,
상기 구동되는 단계는,
환경 변수로 wgtviewpath-상기 추가 기능 삽입을 수행하기 위한 Widgetview.zip 파일의 절대 경로를 의미함-를 참조하는 콘텐츠 변환 방법.
The method of claim 10,
The building step is
Converting the first content into the second content using the executable binary file provided in the form of an input parameter and a library received from an external source;
Inserting an additional function executable on the Android platform into the second content; And
Building the second content into which the additional function is inserted;
The driven step,
Wgtviewpath as an environment variable, meaning the absolute path of the Widgetview.zip file to perform the add-in insertion.
제13항에 있어서,
상기 삽입하는 단계는,
상기 제2 콘텐츠의 평문 소스코드를 암호화하는 단계; 및
상기 제2 콘텐츠의 라이센스를 검증하기 위한 코드를 삽입하는 단계
를 포함하는 콘텐츠 변환 방법.
The method of claim 13,
Wherein the inserting step comprises:
Encrypting plain text source code of the second content; And
Inserting code to verify a license of the second content
Content conversion method comprising a.
제14항에 있어서,
상기 삽입하는 단계와 상기 빌드하는 단계 사이에,
상기 제2 콘텐츠에 사업자의 인증서로 서명하는 단계
를 더 포함하는 콘텐츠 변환 방법.
15. The method of claim 14,
Between the inserting step and the building step,
Signing the second content with an operator's certificate
Content conversion method further comprising.
안드로이드 플랫폼을 탑재하는 사용자 단말로서,
라이센스 검증코드를 포함하는 apk 형식의 콘텐츠가 다운로드되어 저장되는 저장부;
상기 라이센스 검증코드에 따라 상기 콘텐츠의 정상 구매 여부를 검증하는 검증부; 및
상기 검증부의 검증 성공 여부에 따라 상기 콘텐츠의 실행 여부를 결정하는 실행부
를 포함하는 사용자 단말.
As a user terminal equipped with the Android platform,
A storage unit for downloading and storing contents in apk format including a license verification code;
A verification unit which verifies whether the content is normally purchased according to the license verification code; And
An execution unit that determines whether to execute the content according to whether the verification unit succeeds in verifying
Lt; / RTI >
제16항에 있어서,
상기 라이센스 검증코드는,
상기 콘텐츠 제공 서버의 접속 주소를 포함하며,
상기 검증부는,
상기 접속 주소를 이용하여 접속한 콘텐츠 제공 서버와 연동하여 상기 콘텐츠의 정상 구매 여부를 판단하는 사용자 단말.
17. The method of claim 16,
The license verification code,
An access address of the content providing server,
Wherein the verifying unit comprises:
And a user terminal that determines whether the content is normally purchased by interworking with a content providing server connected by using the access address.
KR1020120061042A 2012-06-07 2012-06-07 conversion device, conversion method and user terminal KR101541526B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120061042A KR101541526B1 (en) 2012-06-07 2012-06-07 conversion device, conversion method and user terminal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120061042A KR101541526B1 (en) 2012-06-07 2012-06-07 conversion device, conversion method and user terminal

Publications (2)

Publication Number Publication Date
KR20140011495A true KR20140011495A (en) 2014-01-29
KR101541526B1 KR101541526B1 (en) 2015-08-07

Family

ID=50143648

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120061042A KR101541526B1 (en) 2012-06-07 2012-06-07 conversion device, conversion method and user terminal

Country Status (1)

Country Link
KR (1) KR101541526B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160082728A (en) * 2014-12-29 2016-07-11 주식회사 디지캡 License verification system for web application
CN111400246A (en) * 2020-03-26 2020-07-10 广州酷旅旅行社有限公司 Asynchronous file importing method and device, computer equipment and storage medium
KR102352225B1 (en) * 2021-05-27 2022-01-18 정주현 System for providing cloud based application making service
CN116301471A (en) * 2023-05-18 2023-06-23 深圳前海环融联易信息科技服务有限公司 Method for realizing automatic file insertion and automatic file insertion method

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102011725B1 (en) * 2017-12-28 2019-08-19 숭실대학교산학협력단 Whitelist construction method for analyzing malicious code, computer readable medium and device for performing the method

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160082728A (en) * 2014-12-29 2016-07-11 주식회사 디지캡 License verification system for web application
CN111400246A (en) * 2020-03-26 2020-07-10 广州酷旅旅行社有限公司 Asynchronous file importing method and device, computer equipment and storage medium
CN111400246B (en) * 2020-03-26 2023-12-19 广州酷旅旅行社有限公司 Asynchronous file import method, device, computer equipment and storage medium
KR102352225B1 (en) * 2021-05-27 2022-01-18 정주현 System for providing cloud based application making service
CN116301471A (en) * 2023-05-18 2023-06-23 深圳前海环融联易信息科技服务有限公司 Method for realizing automatic file insertion and automatic file insertion method
CN116301471B (en) * 2023-05-18 2023-09-01 深圳前海环融联易信息科技服务有限公司 Method for realizing automatic file insertion and automatic file insertion method

Also Published As

Publication number Publication date
KR101541526B1 (en) 2015-08-07

Similar Documents

Publication Publication Date Title
CN109214168B (en) Firmware upgrading method and device
CN102830992B (en) Plug-in loading method and system
KR101541526B1 (en) conversion device, conversion method and user terminal
CN108229112B (en) Protection application program, and running method and device of application program
CA2698066A1 (en) System and method for remotely compiling multi-platform native applications for mobile devices
US9823909B1 (en) Program code conversion for cross-platform compatibility
US8667600B2 (en) Trusted computing source code escrow and optimization
CN101226569A (en) Method and device for checking code module in virtual machine
CN104991793A (en) Method, device and system used for application program subpackage
CN107273142B (en) Program updating method, program running method and device
CN109815680B (en) Application authority management method and device, terminal equipment and storage medium
US20180067777A1 (en) Application protection method, server, and terminal
CN103177210A (en) Method of implanting dynamic stain analysis module in Android
CN104331662A (en) Method and device for detecting Android malicious application
Anderson et al. Inglorious Installers: Security in the Application Marketplace.
CN104036194B (en) Vulnerability detection method and device for revealing private data in application program
CN106709281B (en) Patch granting and acquisition methods, device
CN108170461A (en) Difference upgrade package generation method, difference upgrade method and device
US20150026483A1 (en) Systems and Methods for Mobile Application Protection
CN112416395A (en) Hot repair updating method and device
US9953157B2 (en) Method and apparatus for protecting application program
CN113220314B (en) APP resource loading and APK generation method, device, equipment and medium
KR20180028666A (en) Method and apparatus for preventing reverse engineering
CN113242288A (en) Internet of things equipment firmware upgrading method, system and device and storage medium
KR101520097B1 (en) Program source code distributing system and method thereof

Legal Events

Date Code Title Description
N231 Notification of change of applicant
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: 20180612

Year of fee payment: 6