KR20130086753A - 컨텐츠의 중복 여부를 확인할 수 있는 휴대용 단말기의 장치 및 방법 - Google Patents

컨텐츠의 중복 여부를 확인할 수 있는 휴대용 단말기의 장치 및 방법 Download PDF

Info

Publication number
KR20130086753A
KR20130086753A KR1020120007671A KR20120007671A KR20130086753A KR 20130086753 A KR20130086753 A KR 20130086753A KR 1020120007671 A KR1020120007671 A KR 1020120007671A KR 20120007671 A KR20120007671 A KR 20120007671A KR 20130086753 A KR20130086753 A KR 20130086753A
Authority
KR
South Korea
Prior art keywords
content
portable terminal
stored
download
hash algorithm
Prior art date
Application number
KR1020120007671A
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 KR1020120007671A priority Critical patent/KR20130086753A/ko
Priority to JP2012236871A priority patent/JP2013157977A/ja
Priority to EP12191296.8A priority patent/EP2621142A1/en
Priority to US13/682,683 priority patent/US20130198339A1/en
Priority to CN2012105572099A priority patent/CN103294742A/zh
Publication of KR20130086753A publication Critical patent/KR20130086753A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/38Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
    • H04B1/40Circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Telephone Function (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은, 휴대용 단말기의 동작 방법에 있어서, 서버로부터 적어도 하나의 컨텐츠를 설정된 용량만큼 다운로드 받는 과정; 및 상기 다운로드 받은 컨텐츠의 용량으로, 동일 컨텐츠가 저장되어 있는지 판단하는 과정을 포함하는 것을 그 구성상의 특징으로 하는 컨텐츠의 중복 여부를 확인할 수 있는 휴대용 단말기의 방법에 관한 것이다.

Description

컨텐츠의 중복 여부를 확인할 수 있는 휴대용 단말기의 장치 및 방법{APPARATAS AND METHOD OF CHECKING DUPLICATION CONTENTS IN A PORTABLE TERMINAL}
본 발명은 중복 컨텐츠의 다운로드 방지에 관한 것이다.
휴대용 단말기의 기능이 발전하면서, 사용자는 서버로부터 다양한 컨텐츠를 다운로드 받아 사용할 수 있게 되었다. 예를 들면, 여러 애플리케이션, 동영상, 사진 및 음악 파일 등 다양한 컨텐츠를 서버로부터 다운로드 받아 이용할 수 있다.
그러나, 종래에는 서버로부터 특정 컨텐츠를 다운로드 받을 때, 다운로드 받고자 하는 컨텐츠가 휴대용 단말기에 저장되어 있는 컨텐츠 인지 여부를 알 수가 없었다. 따라서, 휴대용 단말기에 저장되어 있는 컨텐츠 임에도 불구하고, 동일한 컨텐츠를 다시 서버로부터 다운로드 받는 문제점이 있었다.
상술한 중복 컨텐츠가 휴대용 단말기에 저장되어 있는지 판단할 수 있는 유일한 방법은 사용자가 휴대용 단말기에 저장되어 있는 컨텐츠를 일일이 검색하여 확인하여야 했다. 또한, 휴대용 단말기의 저장공간은 한정되어 있어, 저장된 컨텐츠를 다시 다운로드 받는 경우에는 휴대용 단말기에 저장될 수 있는 데이터 공간의 낭비를 초래하는 문제점이 있었다.
따라서, 사용자가 서버로부터 특정 컨텐츠를 다운로드 받을 시, 동일한 컨텐츠가 저장되어 있는지 판단하고, 이를 사용자에게 알려줄 수 있는 휴대용 단말기의 장치 및 방법의 개발이 시급한 실정이다.
본 발명은 기존에 제안된 방법들의 상기와 같은 문제점들을 해결하기 위해 제안된 것으로서, 특정 컨텐츠를 다운로드 받을 시, 다운로드 받고자 하는 컨텐츠가 휴대용 단말기에 저장되어 있는지 판단하여, 사용자에게 컨텐츠의 동일성 여부를 알려줄 수 있는 장치 및 방법을 제공하는 것을 목적으로 한다.
본 발명의 다른 목적은, 휴대용 단말기에 저장되어 있는 파일의 헤더 부분을 일정 용량만큼 복사한 값을 해시 알고리즘의 입력 값으로 대입하여 생성된 출력 값을 테이블 형태로 저장하고, 특정 컨텐츠를 다운로드 받고자 할 때, 상술한 테이블을 이용하여 컨텐츠의 동일성 여부를 빠르게 판단할 수 있는 장치 및 방법을 제공하는 것을 목적으로 한다.
본 발명의 또 다른 목적은, 휴대용 단말기가 다운로드 받고자 하는 특정 컨텐츠의 헤더 부분의 일부만을 다운로드 받아, 휴대용 단말기에 저장되어 있는 해시 테이블과 동일성 여부를 비교하여 상술한 컨텐츠가 휴대용 단말기에 저장되어 있는지 빠르게 판단할 수 있는 장치 및 방법을 제공하는 것을 목적으로 한다.
상기한 목적을 달성하기 위한 본 발명의 특징에 따른 컨텐츠의 중복 여부를 확인할 수 있는 휴대용 단말기의 방법은, 휴대용 단말기의 동작 방법에 있어서, 서버로부터 적어도 하나의 컨텐츠를 설정된 용량만큼 다운로드 받는 과정; 및 상기 다운로드 받은 컨텐츠의 용량으로, 동일 컨텐츠가 저장되어 있는지 판단하는 과정을 포함하는 것을 그 구성상의 특징으로 한다.
바람직하게는, 상기 휴대용 단말기 내에 저장되어 있는 적어도 하나의 컨텐츠를 확인하는 과정; 상기 컨텐츠의 헤더(head) 부분을, 상기 설정된 용량만큼 복사하는 과정; 상기 복사된 헤더 부분을 입력 값으로 하여, 임의의 해시 알고리즘(hash algorithm)에 대입하는 과정; 및 상기 해시 알고리즘으로부터 생성된 출력 값을 저장하는 과정을 포함할 수 있다.
바람직하게는, 상기 서버로 상기 적어도 하나의 컨텐츠에 대하여 다운로드를 요청하는 과정을 더 포함할 수 있다.
바람직하게는, 상기 서버로부터 적어도 하나의 컨텐츠를 설정된 용량만큼 다운로드 받는 과정은, 상기 컨텐츠의 헤더 부분을 상기 설정된 용량만큼 다운로드 받았는지 확인하는 과정; 및 상기 설정된 용량만큼의 다운로드가 완료되었다면, 상기 다운로드를 중단하는 과정을 포함할 수 있다.
바람직하게는, 상기 다운로드 받은 컨텐츠의 용량으로, 동일 컨텐츠가 저장되어 있는지 판단하는 과정은, 상기 다운로드 받은 컨텐츠의 헤더 부분을 입력 값으로 하여, 임의의 해시 알고리즘에 대입하는 과정; 상기 해시 알고리즘으로부터 생성된 출력 값을 확인하는 과정; 및 상기 출력 값을 상기 휴대용 단말기의 해시 테이블에 저장된 값과 비교하는 과정을 포함할 수 있다.
바람직하게는, 상기 해시 테이블은, 상기 휴대용 단말기에 저장되어 있는 적어도 하나의 컨텐츠의 헤더(head) 부분을 상기 설정된 용량만큼 복사하여, 상기 복사된 헤더 부분을 입력 값으로 해서, 임의의 해시 알고리즘(hash algorithm)에 대입한 결과 생성된 출력 값이 저장된 테이블일 수 있다.
바람직하게는, 상기 임의의 해시 알고리즘은, MD5(Message Digest), SHA1(Secure Hash Algorithm) 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
바람직하게는, 상기 비교결과 동일한 컨텐츠가 저장되어 있지 않다고 판단되면, 상기 중단된 컨텐츠의 다운로드를 완료하는 과정을 더 포함할 수 있다.
바람직하게는, 상기 비교결과 동일한 컨텐츠가 저장되어 있다고 판단되면, 상기 컨텐츠의 다운로드 여부를 디스플레이하는 과정; 상기 컨텐츠의 다운로드를 완료하도록 하는 명령어를 입력받는 과정; 및 상기 컨텐츠의 다운로드를 완료하는 과정을 더 포함할 수 있다.
바람직하게는, 상기 컨텐츠의 다운로드를 중단하도록 하는 명령어를 입력받는 과정; 및 상기 컨텐츠의 다운로드를 중단하는 과정을 더 포함할 수 있다.
상기한 목적을 달성하기 위한 본 발명의 특징에 따른 컨텐츠의 중복 여부를 확인할 수 있는 휴대용 단말기의 장치는, 휴대용 단말기의 장치에 있어서, 서버로부터 적어도 하나의 컨텐츠를 설정된 용량만큼 다운로드 받는 통신모듈; 및 상기 다운로드 받은 컨텐츠의 용량으로, 동일 컨텐츠가 저장되어 있는지 판단하는 제어부를 포함하는 것을 그 구성상의 특징으로 한다.
바람직하게는, 상기 제어부는, 상기 휴대용 단말기 내에 저장되어 있는 적어도 하나의 컨텐츠를 확인하여, 상기 컨텐츠의 헤더(head) 부분을 상기 설정된 용량만큼 복사하고, 상기 복사된 헤더 부분을 입력 값으로 하여, 임의의 해시 알고리즘(hash algorithm)에 대입하고, 상기 해시 알고리즘으로부터 생성된 출력 값을 저장하는 저장부를 더 포함할 수 있다.
바람직하게는, 상기 통신모듈은, 상기 서버로 상기 적어도 하나의 컨텐츠에 대하여 다운로드를 요청할 수 있다.
바람직하게는, 상기 제어부는, 상기 컨텐츠의 헤더 부분을 상기 설정된 용량만큼 다운로드 받았는지 확인하여, 상기 설정된 용량만큼의 다운로드가 완료되었다면, 상기 다운로드를 중단할 수 있다.
바람직하게는, 상기 제어부는, 상기 다운로드 받은 컨텐츠의 헤더 부분을 입력 값으로 하여, 임의의 해시 알고리즘에 대입하고, 상기 해시 알고리즘으로부터 생성된 출력 값을 확인하여, 상기 출력 값을 상기 휴대용 단말기의 해시 테이블에 저장된 값과 비교할 수 있다.
바람직하게는, 상기 해시 테이블은, 상기 휴대용 단말기에 저장되어 있는 적어도 하나의 컨텐츠의 헤더(head) 부분을 상기 설정된 용량만큼 복사하여, 상기 복사된 헤더 부분을 입력 값으로 해서, 임의의 해시 알고리즘(hash algorithm)에 대입한 결과 생성된 출력 값이 저장된 테이블일 수 있다.
바람직하게는, 상기 임의의 해시 알고리즘은, MD5(Message Digest), SHA1(Secure Hash Algorithm) 중 적어도 하나를 포함할 수 있다.
바람직하게는, 상기 제어부는, 상기 비교결과 동일한 컨텐츠가 저장되어 있지 않다고 판단되면, 상기 중단된 컨텐츠의 다운로드를 완료할 수 있다.
바람직하게는, 상기 비교결과 동일한 컨텐츠가 저장되어 있다고 판단되면, 상기 컨텐츠의 다운로드 여부를 디스플레이하는 출력부; 및 상기 컨텐츠의 다운로드를 완료하도록 하는 명령어를 입력받는 입력부를 더 포함하고, 상기 제어부는, 상기 컨텐츠의 다운로드를 완료할 수 있다.
바람직하게는, 상기 입력부는, 상기 컨텐츠의 다운로드를 중단하도록 하는 명령어를 입력받고, 상기 제어부는, 상기 컨텐츠의 다운로드를 중단할 수 있다.
본 발명의 컨텐츠의 중복 여부를 확인할 수 있는 휴대용 단말기의 장치 및 방법에 따르면, 특정 컨텐츠를 다운로드 받을 시, 다운로드 받고자 하는 컨텐츠가 휴대용 단말기에 저장되어 있는지 판단하여, 사용자에게 컨텐츠의 동일성 여부를 알려줄 수 있는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 휴대용 단말기와 서버의 전체 구성을 도시한 도면.
도 2는 본 발명의 일 실시예에 따른 N상수 값의 크기에 따라 컨텐츠의 정확도를 퍼센트 비율로 나타낸 도면.
도 3은 본 발명의 일 실시예에 따른 휴대용 단말기에 저장되어 있는 해시 테이블을 도시한 도면.
도 4는 본 발명에 따른 휴대용 단말기에서 다운로드 받고자 하는 파일이 저장된 파일인지 여부를 판단하여, 사용자에게 중복 파일 여부를 알려주는 일 실시예를 나타낸 도면.
도 5는 본 발명의 일 실시예에 따른 컨텐츠의 중복 여부를 확인할 수 있는 휴대용 단말기의 방법을 나타낸 순서도.
도 6은 본 발명의 일 실시예에 따른 휴대용 단말기의 구성을 도시한 블록도.
이하, 첨부된 도면을 참조하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 바람직한 실시예를 상세히 설명한다. 다만, 본 발명의 바람직한 실시예를 상세하게 설명함에 있어, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다. 또한, 유사한 기능 및 작용을 하는 부분에 대해서는 도면 전체에 걸쳐 동일한 부호를 사용한다.
도 1은 본 발명의 일 실시예에 따른 휴대용 단말기와 서버의 전체 구성을 도시한 도면이다. 도 1에 도시된 바와 같이, 휴대용 단말기(101)에서 서버(102)에 저장되어 있는 특정 컨텐츠를 다운로드 받고자 하는 경우에, 휴대용 단말기(101)는 서버(102)로 다운로드 받고자 하는 특정 컨텐츠를 요청한다. 휴대용 단말기(101)로부터 특정 컨텐츠의 다운로드를 요청받은 서버(102)는 휴대용 단말기(101)로 특정 컨텐츠를 전송한다.
휴대용 단말기(101)는 서버(102)로부터 특정 컨텐츠를 다운로드 받기 전에 해시 테이블(hash table)을 생성하여 저장한다. 휴대용 단말기(101)에서 해시 테이블을 생성하여 저장하는 과정을 보다 구체적으로 살펴보자. 먼저, 휴대용 단말기(101)는 사용자로부터 N상수 값을 입력받는데, 여기서, N상수 값이란 해시 알고리즘(hash algorithm)의 입력 값으로 사용될 값으로, 컨텐츠의 크기를 바이트(byte) 값으로 설정된 것으로 정의된다. 보다 구체적으로는, 후술할 해시 알고리즘의 입력 값으로 사용하기 위하여 입력 값의 크기를 미리 정한 것이다. 상술한 바와 같이, N상수 값은 사용자에 의하여 설정될 수 있고, 미리 휴대용 단말기(101)에서 정의되어 저장될 수도 있다. 바람직하게는, N상수 값은 네트워크의 속도와 휴대용 단말기의 처리 속도에 따라 달라질 수 있는 유동적인 값이기 때문에, 사용자가 당시의 네트워크의 속도나 휴대용 단말기의 처리 속도에 따라 N상수 값을 설정할 수 있음은 물론이다.
사용자가 N상수 값을 휴대용 단말기(101)에 입력하였으면, 휴대용 단말기(101)는 입력받은 N상수 값을 이용하여 해시 알고리즘에 대입할 X값을 생성한다. 여기서, X값은 입력 값으로 휴대용 단말기(101)에 저장되어 있는 적어도 하나의 컨텐츠의 헤더(head) 부분을 N상수 값만큼 복사한 값으로 정의된다. 보다 구체적으로는, 사용자에 의하여 설정된 N상수 값을 입력받은 휴대용 단말기(101)는 휴대용 단말기(101)에 저장되어 있는 모든 컨텐츠들의 맨 앞 부분에 위치한 헤더 부분을 N상수 값만큼 복사하여 입력 값을 생성한다. 예를 들면, 사용자가 N상수를 1024로 설정하였다면, 휴대용 단말기(101)는 사용자로부터 N상수 값을 입력받아, 휴대용 단말기(101)에 저장되어 있는 모든 컨텐츠의 헤더 부분 중, 1024 바이트의 크기만큼만 컨텐츠를 복사하여 입력 값을 생성한다.
사용자로부터 N값을 입력받아, 입력 값을 생성한 휴대용 단말기(101)는 해시 알고리즘을 이용하여 Y값을 생성한다. 바람직하게는 해시 알고리즘으로 MD5(Message-Digest algorithm 5), SHA1(Secure Hash Algorithm 1) 등의 알고리즘을 사용할 수 있다. 여기서, Y값이란 상술한 해시 알고리즘으로 생성된 출력 값으로 정의된다. N상수의 크기가 1024라고 가정하여, MD5 해시 알고리즘으로 예를 들어 설명하도록 한다. N상수의 크기가 1024로 설정되었다면, 휴대용 단말기(101)는 16진수로 배열된 입력 값을 생성하게 된다. 이후, 생성된 입력 값을 MD5 해시 알고리즘에 대입하면, 16진수로 표현된 32개의 자리수로 표현된 출력 값이 생성된다. 출력 값의 또 다른 예로, SHA1 해시 알고리즘으로 예를 들어 설명하도록 한다. N상수의 크기가 1024로 설정되었다면, 휴대용 단말기(101)는 16진수로 배열된 입력 값을 생성하게 된다. 이후, 생성된 입력 값을 SHA1 해시 알고리즘에 대입하면, 16진수로 표현된 40개의 자리수로 표현된 출력 값이 생성된다.
해시 알고리즘을 사용하여 출력 값이 생성되었으면, 생성된 출력 값을 최종적으로 테이블 형태인 해시 테이블에 저장한다. 여기서, 해시 테이블이란 휴대용 단말기(101)에 저장된 모든 컨텐츠의 제목과 출력 값이 저장되어 있는 테이블로 정의된다. 보다 구체적으로는, 각각의 컨텐츠의 제목과 함께 해당 컨텐츠의 출력 값이 저장되어 있어, 휴대용 단말기(101)가 서버(102)로부터 특정 컨텐츠를 다운로드 받고자 할 때, 다운로드 받고자 하는 특정 컨텐츠의 헤더 부분만 다운로드 받아 해시 테이블에 저장되어 있는 출력 값과 빠르게 비교할 수 있다.
휴대용 단말기(101)가 서버(102)로부터 특정 컨텐츠를 다운로드 받고자 할 때, 서버(102)로 특정 컨텐츠의 다운로드를 요청한다. 휴대용 단말기(101)로부터 다운로드의 요청을 받은 서버(102)는 요청받은 특정 컨텐츠를 휴대용 단말기(102)로 전송한다. 서버(102)로부터 특정 컨텐츠를 다운로드 받는 휴대용 단말기(101)는 컨텐츠 전부를 다운로드 받지 않고, 상술한 N상수만큼만 다운로드를 받아 해시 알고리즘을 이용하여 R값을 생성한다. 여기서, R값이란 다운로드 받고자 하는 컨텐츠를 N상수 만큼만 다운로드 받아, 해시 알고리즘을 통하여 생성된 출력 값으로 정의된다. 예를 들면, N상수가 1024로 설정된 경우에 휴대용 단말기(101)는 서버로부터 다운로드 받고자 하는 컨텐츠의 맨 앞쪽에 위치하고 있는 헤더 파일 중 1024의 크기 만큼만 다운로드 받아, 해시 알고리즘을 이용하여 R값이 생성한다. 생성한 R값으로 휴대용 단말기(101)에 저장되어 있는 해시 테이블에 있는 출력 값과 비교하여, 서버(102)로부터 다운로드 받고자 하는 컨텐츠가 저장되어 있는지 판단할 수 있다. 상술한 바와 같이, 사용자에 의하여 설정된 N상수 값의 크기가 클수록 그 정확도의 신뢰성은 증가된다.
도 2는 본 발명의 일 실시예에 따른 N상수 값의 크기에 따라 컨텐츠의 정확도를 퍼센트 비율로 나타낸 도면이다. 먼저, N상수 값이란 사용자에 의하여 설정된 값으로 해시 알고리즘의 입력 값으로 사용될 값으로, 컨텐츠의 크기를 바이트(byte) 값으로 설정된 것으로 정의된다. 보다 구체적으로는, 해시 알고리즘의 입력 값으로 사용하기 위하여 사용자에 의하여 설정된 입력 값의 크기이다. N상수의 활용은 첫 번째, 휴대용 단말기에서 해시 테이블을 생성하여 생성된 해시 테이블을 저장하기 위해서 해시 알고리즘의 입력 값으로 사용된다. 보다 구체적으로는, N상수 값을 사용자로부터 입력받아, 휴대용 단말기에 저장되어 있는 모든 컨텐츠의 헤더 부분을 입력받은 N상수 값의 크기만큼 복사하여, 입력 값인 X값을 생성한다. 생성된 X값을 해시 알고리즘을 사용하여 입력 값으로 대입하고, 해시 알고리즘을 통하여 생성된 출력 값인 Y값을 출력하여, 해시 테이블을 생성하여 저장한다. 즉, N상수 값은 해시 테이블을 생성하기 위한 기본 전제로 사용된다.
N상수 값의 또 다른 활용으로는, 휴대용 단말기가 서버로부터 특정 컨텐츠를 다운로드 받고자 할 때, 컨텐츠 전체를 다운로드 받지 않고, N상수의 크기만큼만 먼저 다운로드 받는데 이용된다. 예를 들면, N상수의 값이 1024로 설정되었다면, 휴대용 단말기에서 서버로부터 특정 컨텐츠를 다운로드 받고자 할 때, 컨텐츠 전부를 다운로드 받지 않고, 다운로드 받고자 하는 컨텐츠의 맨 앞쪽에 위치하고 있는 헤더 부분 중 1024 바이트의 크기만큼만 다운로드 받게 된다. 즉, N상수는 다운로드 받고자 하는 컨텐츠의 용량을 정하는데 사용된다.
도 2는 N상수 값의 크기에 따라 컨텐츠의 정확도를 퍼센트 비율로 나타낸 도면으로, 도 2에 도시된 바와 같이, N상수 값의 크기가 증가할수록 컨텐츠의 동일성 여부에 대한 신뢰도는 대체적으로 증가함을 알 수 있다. 즉, 사용자가 N상수 값의 크기를 크게 설정하였다면, 휴대용 단말기에서 다운로드 받고자 하는 컨텐츠가 휴대용 단말기에 저장되어 있는 컨텐츠인지를 판단한 결과의 신뢰성은 높아진다는 것을 확인 할 수 있다. N상수 값은 사용자에 의하여 설정될 수 있고, 미리 휴대용 단말기에서 정의되어 저장될 수도 있다. 바람직하게는, N상수 값은 네트워크의 속도와 휴대용 단말기의 처리 속도에 따라 달라질 수 있는 유동적인 값이기 때문에, 사용자가 당시의 네트워크의 속도나 휴대용 단말기의 처리 속도에 따라 N상수 값을 설정할 수 있음은 물론이다. 대략적으로, 100 킬로바이트(kilobyte)의 값이 설정되었으면, 80~90퍼센트(%) 정도의 정확도를 확인할 수 있다. 즉, N상수 값이 100,000으로 설정되었다면, 휴대용 단말기에서 다운로드 받고자 하는 컨텐츠가 휴대용 단말기에 저장되어 있는 컨텐츠인지 판단한 결과의 신뢰성이 80~90퍼센트(%)정도가 된다.
도 3은 본 발명의 일 실시예에 따른 휴대용 단말기에 저장되어 있는 해시 테이블을 도시한 도면이다. 도 3에 도시된 바와 같이, 해시 테이블에는 목록, 파일 이름 및 출력 값을 포함하여 저장될 수 있다. 여기서, 해시 테이블이란 해시 알고리즘을 이용하여 생성된 출력 값이 목록과 파일 이름과 함께 저장되어 있는 테이블로 정의된다. 보다 구체적으로, 휴대용 단말기는 특정 컨텐츠를 다운로드 받기 전에 해시 테이블을 생성하여 저장한다. 휴대용 단말기에서 해시 테이블을 생성하여 저장하는 과정을 보다 구체적으로 살펴보자. 먼저, 휴대용 단말기는 사용자로부터 N상수 값을 입력받는데, 여기서, N상수 값이란 해시 알고리즘의 입력 값으로 사용될 값으로, 컨텐츠의 크기를 바이트 값으로 설정된 것으로 정의된다. 보다 구체적으로는, 해시 알고리즘의 입력 값으로 사용하기 위하여 입력 값의 크기를 미리 정한 것이다. 상술한 바와 같이, N상수 값은 사용자에 의하여 설정될 수 있고, 미리 휴대용 단말기에서 정의되어 저장될 수도 있다. 바람직하게는, N상수 값은 네트워크의 속도와 휴대용 단말기의 처리 속도에 따라 달라질 수 있는 유동적인 값이기 때문에, 사용자가 당시의 네트워크의 속도나 휴대용 단말기의 처리 속도에 따라 N상수 값을 설정할 수 있음은 물론이다.
사용자가 N상수 값을 휴대용 단말기에 입력하였으면, 휴대용 단말기는 입력받은 N상수 값을 이용하여 해시 알고리즘에 대입할 X값을 생성한다. 여기서, X값은 입력 값으로 휴대용 단말기에 저장되어 있는 적어도 하나의 컨텐츠의 헤더 부분을 N상수 값만큼 복사한 값으로 정의된다. 보다 구체적으로는, 사용자에 의하여 설정된 N상수 값을 입력받은 휴대용 단말기는 휴대용 단말기에 저장되어 있는 모든 컨텐츠들의 맨 앞 부분에 위치한 헤더 부분을 N상수 값만큼 복사하여 입력 값을 생성한다. 예를 들면, 사용자가 N상수를 1024로 설정하였다면, 휴대용 단말기는 사용자로부터 N상수 값을 입력받아, 휴대용 단말기에 저장되어 있는 모든 컨텐츠의 헤더 부분 중, 1024 바이트의 크기만큼만 컨텐츠를 복사하여 입력 값을 생성한다.
사용자로부터 N값을 입력받아, 입력 값을 생성한 휴대용 단말기는 해시 알고리즘을 이용하여 Y값을 생성한다. 바람직하게는 해시 알고리즘으로 MD5, SHA1 등의 알고리즘을 사용할 수 있다. 여기서, Y값이란 상술한 해시 알고리즘으로 생성된 출력 값으로 정의된다. N상수의 크기가 1024라고 가정하여, MD5 해시 알고리즘으로 예를 들어 설명하도록 한다. N상수의 크기가 1024로 설정되었다면, 휴대용 단말기는 16진수로 배열된 입력 값을 생성하게 된다. 이후, 생성된 입력 값을 MD5 해시 알고리즘에 대입하면, 16진수로 표현된 32개의 자리수로 표현된 출력 값이 생성된다. 출력 값의 또 다른 예로, SHA1 해시 알고리즘으로 예를 들어 설명하도록 한다. N상수의 크기가 1024로 설정되었다면, 휴대용 단말기는 16진수로 배열된 입력 값을 생성하게 된다. 이후, 생성된 입력 값을 SHA1 해시 알고리즘에 대입하면, 16진수로 표현된 40개의 자리수로 표현된 출력 값이 생성된다.
해시 알고리즘을 사용하여 출력 값이 생성되었으면, 생성된 출력 값을 최종적으로 테이블 형태인 해시 테이블에 저장한다. 여기서, 해시 테이블이란 휴대용 단말기에 저장된 모든 컨텐츠의 제목과 출력 값이 저장되어 있는 테이블로 정의된다. 보다 구체적으로는, 각각의 컨텐츠의 제목과 함께 해당 컨텐츠의 출력 값이 저장되어 있어, 휴대용 단말기가 서버로부터 특정 컨텐츠를 다운로드 받고자 할 때, 다운로드 받고자 하는 특정 컨텐츠의 헤더 부분만 다운로드 받아 해시 테이블에 저장되어 있는 출력 값과 빠르게 비교할 수 있다.
도 3에 도시된 해시 테이블을 통하여 보다 상세히 설명하도록 한다. 도 3에 되시된 바와같이, 해시 테이블에는 휴대용 단말기에 저장된 목록, 파일 이름, 출력 값이 저장되어 있다. 도 3에 도시되어 있는 목록 1을 살펴보면, 휴대용 단말기에는 여러분이라는 음악 파일이 엠피쓰리의 확장자 명으로 저장되어 있고, 이에 따른 출력 값은 23af67...52라는 것을 알 수 있다. 여기서, 출력 값은 상술한 바와 같이, MD5 해시 알고리즘이 사용되었으면 16진수로 총 32개의 자리수로 표현된 출력 값이 배열될 수 있고, SHA1 해시 알고리즘이 사용되었으면 16진수로 총 40개의 자리수로 표현된 출력 값이 배열될 수 있다. 목록 2를 살펴보면, 휴대용 단말기에는 너를위해라는 음악 파일이 엄피쓰리의 확장자 명으로 저장되어 있고, 이에 따른 출력 값은 468abf...de라는 것을 알 수 있다. 상술한 바와 같이, 출력 값은 MD5 해시 알고리즘이 사용되었으면 16진수로 총 32개의 자리수로 표현된 출력 값이 배열될 수 있고, SHA1 해시 알고리즘이 사용되었으면 16진수로 총 40개의 자리수로 표현된 출력 값이 배열될 수 있다. 목록 3을 살펴보면, 휴대용 단말기에는 달콤한 인생이라는 동영상이 에이브이아이의 확장자 명으로 저장되어 있고, 이에 따른 출력 값은 106872...68이라는 것을 알 수 있다. 상술한 바와 같이, 출력 값은 MD5 해시 알고리즘이 사용되었으면 16진수로 총 32개의 자리수로 표현된 출력 값이 배열될 수 있고, SHA1 해시 알고리즘이 사용되었으면 16진수로 총 40개의 자리수로 표현된 출력 값이 배열될 수 있다. 목록 4를 살펴보면, 휴대용 단말기에는 맞고라는 애플리케이션이 에이피케이라는 확장자 명으로 저장되어 있고, 이에 따른 출력 값은 34fed1...01이라는 것을 알 수 있다. 상술한 바와 같이, 출력 값은 MD5 해시 알고리즘이 사용되었으면 16진수로 총 32개의 자리수로 표현된 출력 값이 배열될 수 있고, SHA1 해시 알고리즘이 사용되었으면 16진수로 총 40개의 자리수로 표현된 출력 값이 배열될 수 있다.
도 4는 본 발명에 따른 휴대용 단말기에서 다운로드 받고자 하는 파일이 저장된 파일인지 여부를 판단하여, 사용자에게 중복 파일 여부를 알려주는 일 실시예를 나타낸 도면이다. 도 4의(a)는 본 발명에 따른 휴대용 단말기에 저장되어 있는 해시 테이블을 이용하여 휴대용 단말기에서 다운로드 받고자 하는 파일의 동일성 여부를 판단하는 일 실시예를 나타낸 도면이다. 상술한 바와 같이, 먼저 휴대용 단말기에서는 저장되어 있는 모든 컨텐츠를 해시 알고리즘을 이용하여 해시 테이블로 생성하여 저장한다. 이후, 휴대용 단말기는 다운로드 받고자 하는 특정 컨텐츠에 대하여 서버로 다운로드를 요청한다. 휴대용 단말기로부터 다운로드를 요청받은 서버는 휴대용 단말기로 요청한 컨텐츠를 전송한다. 휴대용 단말기에서는 특정 컨텐츠의 헤더 부분 중 N상수 값의 크기만큼만 전송받아 이를 해시 알고리즘의 입력 값으로 대입하여 생성된 출력 값인 R값을 생성한다. 휴대용 단말기에서는 생성된 R값을 해시 테이블에 저장되어 있는 출력 값인 Y값과 비교한다. 예를 들어 도 4의(a)에 도시된 바와 같이, 생성된 R값이 106872...68인 경우에 휴대용 단말기에서는 해시 테이블에 저장되어 있는 Y값과 동일하다는 것을 확인할 수 있다. 즉, 사용자의 휴대용 단말기에는 달콤한 인생이라는 동영상 파일이 이미 저장되어 있다는 것을 나타낸다. 그러나, 종래에는 다운로드 받고자 하는 파일이 휴대용 단말기에 이미 저장되어 있는지를 확인하기 위해서는 사용자가 일일이 휴대용 단말기에 저장된 파일을 확인하여야 하는 불편이 있었다. 또한, 휴대용 단말기에는 저장될 수 있는 저장공간이 한정되어 있기 때문에, 중복하여 컨텐츠를 저장하는 경우에는 휴대용 단말기의 스토리지를 낭비하는 결과를 초래하는 문제점도 있다. 그러나, 본 발명의 휴대용 단말기에서는 서버로부터 달콤한 인생이라는 동영상 파일을 전부 다운로드 받아 저장하지 않아도, 이미 휴대용 단말기에 저장된 파일이라는 것을 확인할 수 있는 장점이 있다.
도 4의(b)는 본 발명에 따른 휴대용 단말기가 서버로부터 특정 컨텐츠를 다운로드 받고자 하는 경우 이미 휴대용 단말기에 그 컨텐츠가 저장되어 있는 경우에 이를 사용자에게 알려주는 일 실시예를 나타낸 도면이다. 도 4의(b)에 도시된 바와 같이, 휴대용 단말기는 서버로부터 다운로드 받고자 하는 파일이 이미 휴대용 단말기에 저장되어 있는 경우에 이를 디스플레이하여 사용자에 알려줄 수 있다. 예를 들면, 휴대용 단말기가 다운로드 받고자 하는 달콤한 인생이라는 동영상이 이미 휴대용 단말기에 저장되어 있으면, 이미 저장된 동영상이라는 것과 다운로드를 계속 실행할지 여부를 사용자에게 질의한다. 보다 구체적으로는, 상술한 바와 같이 본 발명에 따른 휴대용 단말기는 서버로부터 파일 전부를 다운로드 받지 않고, 다운로드 받고자 하는 파일의 헤더 부분 중 N상수 값만큼만 다운로드 받아, 이미 저장되어 있는 파일인지 여부를 판단할 수 있다. 따라서, 도 4의(b)에 도시된 바와 같이, 휴대용 단말기에서 일부의 용량만 다운로드 받은 결과 동일 파일이 이미 저장되어 있다고 판단되면, 이를 사용자에 공지할 수 있다. 즉, 사용자는 상술한 공지사항을 확인하여, 다운로드를 계속할지 여부를 휴대용 단말기에 입력할 수 있다. 만약, 휴대용 단말기가 사용자로부터 동일 파일을 다운로드 받지 않겠다는 명령어를 입력받으면, 휴대용 단말기는 다운로드를 중단한다. 반대로, 사용자로부터 동일 파일을 다운로드 받겠다는 명령어를 입력받았으면, 동일 파일이 휴대용 단말기에 저장되어 있음에도 계속 다운로드를 받아 저장한다. 왜냐하면, 동일한 파일이 있는 경우에도 이미 저장되어 있는 파일의 음원의 음질이 좋지 않거나, 영상이 사용자에 마음에 들지 않는 경우도 있기 때문이다.
도 5는 본 발명의 일 실시예에 따른 컨텐츠의 중복 여부를 확인할 수 있는 휴대용 단말기의 방법을 나타낸 순서도이다. 도 5에 도시된 바와 같이, 먼저 휴대용 단말기는 사용자로부터 N상수 값을 입력받는다(501). 여기서, N상수 값이란 해시 알고리즘의 입력 값으로 사용될 값으로, 컨텐츠의 크기를 바이트 값으로 설정된 것으로 정의된다. 보다 구체적으로는, 해시 알고리즘의 입력 값으로 사용하기 위하여 입력 값의 크기를 미리 정한 것이다. 상술한 바와 같이, N상수 값은 사용자에 의하여 설정될 수 있고, 미리 휴대용 단말기에서 정의되어 저장될 수도 있다. 바람직하게는, N상수 값은 네트워크의 속도와 휴대용 단말기의 처리 속도에 따라 달라질 수 있는 유동적인 값이기 때문에, 사용자가 당시의 네트워크의 속도나 휴대용 단말기의 처리 속도에 따라 N상수 값을 설정할 수 있음은 물론이다.
사용자로부터 N상수 값을 입력받은 휴대용 단말기는 해시 알고리즘에 입력할 X값을 생성한다(502). 여기서, X값은 입력 값으로 휴대용 단말기에 저장되어 있는 적어도 하나의 컨텐츠의 헤더 부분을 N상수 값만큼 복사한 값으로 정의된다. 보다 구체적으로는, 사용자에 의하여 설정된 N상수 값을 입력받은 휴대용 단말기는 휴대용 단말기에 저장되어 있는 모든 컨텐츠들의 맨 앞 부분에 위치한 헤더 부분을 N상수 값만큼 복사하여 입력 값을 생성한다. 예를 들면, 사용자가 N상수를 1024로 설정하였다면, 휴대용 단말기는 사용자로부터 N상수 값을 입력받아, 휴대용 단말기에 저장되어 있는 모든 컨텐츠의 헤더 부분 중, 1024 바이트의 크기만큼만 컨텐츠를 복사하여 입력 값을 생성한다.
입력 값인 X값을 생성한 휴대용 단말기는 해시 알고리즘으로 출력 값인 Y값을 생성한다(503). 여기서, Y값이란 상술한 해시 알고리즘으로 생성된 출력 값으로 정의된다. N상수의 크기가 1024라고 가정하여, MD5 해시 알고리즘으로 예를 들어 설명하도록 한다. N상수의 크기가 1024로 설정되었다면, 휴대용 단말기는 16진수로 배열된 입력 값을 생성하게 된다. 이후, 생성된 입력 값을 MD5 해시 알고리즘에 대입하면, 16진수로 표현된 32개의 자리수로 표현된 출력 값이 생성된다. 출력 값의 또 다른 예로, SHA1 해시 알고리즘으로 예를 들어 설명하도록 한다. N상수의 크기가 1024로 설정되었다면, 휴대용 단말기는 16진수로 배열된 입력 값을 생성하게 된다. 이후, 생성된 입력 값을 SHA1 해시 알고리즘에 대입하면, 16진수로 표현된 40개의 자리수로 표현된 출력 값이 생성된다.
해시 알고리즘을 이용하여 Y값을 생성한 휴대용 단말기는 Y값이 배열된 해시 테이블을 생성하여 저장한다(504). 여기서, 해시 테이블이란 휴대용 단말기에 저장된 모든 컨텐츠의 제목과 출력 값이 저장되어 있는 테이블로 정의된다. 보다 구체적으로는, 각각의 컨텐츠의 제목과 함께 해당 컨텐츠의 출력 값이 저장되어 있어, 휴대용 단말기가 서버로부터 특정 컨텐츠를 다운로드 받고자 할 때, 다운로드 받고자 하는 특정 컨텐츠의 헤더 부분만 다운로드 받아 해시 테이블에 저장되어 있는 출력 값과 빠르게 비교할 때 사용된다.
이후, 휴대용 단말기에서 다운로드 받고자 하는 컨텐츠의 R값을 생성한다(505). 여기서, R값이란 다운로드 받고자 하는 컨텐츠를 N상수 만큼만 다운로드 받아, 해시 알고리즘을 통하여 생성된 출력 값으로 정의된다. 예를 들면, N상수가 1024로 설정된 경우에 휴대용 단말기는 서버로부터 다운로드 받고자 하는 컨텐츠의 맨 앞쪽에 위치하고 있는 헤더 파일 중 1024의 크기 만큼만 다운로드 받아, 해시 알고리즘을 이용하여 R값이 생성한다. 생성한 R값으로 휴대용 단말기에 저장되어 있는 해시 테이블에 있는 출력 값과 비교하여, 서버로부터 다운로드 받고자 하는 컨텐츠가 저장되어 있는지 판단할 수 있다. 상술한 바와 같이, 사용자에 의하여 설정된 N상수 값의 크기가 클수록 그 정확도의 신뢰성은 증가된다.
휴대용 단말기에서는 생성된 R값을 이용하여 해시 테이블에 R값이 저장되어 있는지 판단한다(506). 보다 구체적으로는, 휴대용 단말기가 서버로부터 특정 컨텐츠를 다운로드 받고자 할 때, 서버로 특정 컨텐츠의 다운로드를 요청한다. 휴대용 단말기로부터 다운로드의 요청을 받은 서버는 요청받은 특정 컨텐츠를 휴대용 단말기로 전송한다. 서버로부터 특정 컨텐츠를 다운로드 받는 휴대용 단말기는 컨텐츠 전부를 다운로드 받지 않고, 상술한 N상수만큼만 다운로드를 받아 해시 알고리즘을 이용하여 R상수를 생성한다. 생성한 R상수로 휴대용 단말기에 저장되어 있는 해시 테이블에 있는 출력 값과 비교하여, 서버로부터 다운로드 받고자 하는 컨텐츠가 저장되어 있는지 판단할 수 있다. 상술한 바와 같이, 사용자에 의하여 설정된 N상수 값의 크기가 클수록 그 정확도의 신뢰성은 증가된다.
상술한 과정(506)에서, 휴대용 단말기에서 해시 테이블에 R값이 저장되어 있다고 판단되면, 컨텐츠의 다운로드를 계속 실행하겠다는 명령어를 사용자로부터 입력받았는지 판단한다(507). 보다 구체적으로는, 본 발명에서는 휴대용 단말기에서 다운로드 받고자 하는 컨텐츠가 이미 휴대용 단말기에 저장되어 있는 컨텐츠라고 판단되면, 이를 사용자에게 공지하여 이후의 과정을 입력받게 된다. 즉, 동일한 컨텐츠가 이미 휴대용 단말기에 저장되어 있다는 것을 사용자에게 알려주고, 다운로드를 중지할지 또는 다운로드를 완료할지는 사용자가 선택할 수 있도록 한다.
휴대용 단말기에 동일한 컨텐츠가 저장되어 있지만, 사용자로부터 다운로드를 계속 실행하라는 명령어를 입력받은 휴대용 단말기는 컨텐츠의 다운로드를 완료한다(508). 예를 들면, 비록 동일한 컨텐츠가 휴대용 단말기에 저장되어 있지만, 저장되어 있는 컨텐츠의 음질이 좋지 않거나, 영상이 선명하지 않은 경우 등에는 사용자로부터 다운로드의 완료를 선택받을 수 있다. 만약, 휴대용 단말기에서 해시 테이블에 R값이 저장되어 있지 않다고 판단되면, 컨텐츠의 다운로드를 완료함은 물론이다.
만약, 상술한 과정(507)에서, 사용자로부터 컨텐츠의 다운로드를 계속 실행하라는 명령어를 입력받지 못했다면, 컨텐츠의 다운로드를 중단(509)하고 모든 과정이 종료됨은 물론이다.
도 6은 본 발명의 일 실시예에 따른 휴대용 단말기의 구성을 도시한 블록도이다. 도 6에 도시된 바와 같이, 본 발명에 따른 휴대용 단말기는 제어부(601), 입력부(602), 출력부(603), 통신모듈(604) 및 저장부(605)를 포함하여 구성될 수 있다.
제어부(601)는 휴대용 단말기의 전반적인 동작을 제어한다. 예를 들면, 제어부(601)는 다운로드 받은 컨텐츠의 용량으로, 동일 컨텐츠가 저장되어 있는지 판단한다. 또한, 휴대용 단말기 내에 저장되어 있는 적어도 하나의 컨텐츠를 확인하여, 컨텐츠의 헤더(head) 부분을 설정된 용량만큼 복사하고, 복사된 헤더 부분을 입력 값으로 하여, 임의의 해시 알고리즘(hash algorithm)에 대입한다. 또한, 컨텐츠의 헤더 부분을 설정된 용량만큼 다운로드 받았는지 확인하여, 설정된 용량만큼의 다운로드가 완료되었다면, 다운로드를 중단한다. 또한, 다운로드 받은 컨텐츠의 헤더 부분을 입력 값으로 하여, 임의의 해시 알고리즘에 대입하고, 해시 알고리즘으로부터 생성된 출력 값을 확인하여, 출력 값을 휴대용 단말기의 해시 테이블에 저장된 값과 비교한다. 또한, 비교결과 동일한 컨텐츠가 저장되어 있지 않다고 판단되면, 중단된 컨텐츠의 다운로드를 완료한다. 또한, 컨텐츠의 다운로드를 중단하도록 하는 명령어를 입력받았으면, 컨텐츠의 다운로드를 중단한다.
입력부(602)는 사용자의 선택에 의해 발생하는 입력 데이터를 제어부(501)로 제공한다. 예를 들면, 입력부(602)는 상기 컨텐츠의 다운로드를 완료하도록 하는 명령어를 입력받는고, 컨텐츠의 다운로드를 중단하도록 하는 명령어를 입력받는다.
출력부(603)는 제어부(601)의 제어에 따라 휴대용 단말기의 상태 정보, 메뉴 화면 및 스토리 정보를 표시한다. 예를 들면, 출력부(603)는 비교결과 동일한 컨텐츠가 저장되어 있다고 판단되면, 컨텐츠의 다운로드 여부를 디스플레이한다.
통신모듈(604)은 음성 및 데이터 통신을 위해 안테나를 통해 송수신되는 신호를 처리한다. 예를 들면, 통신모듈(604)은 서버로부터 적어도 하나의 컨텐츠를 설정된 용량만큼 다운로드 받고, 서버로 적어도 하나의 컨텐츠에 대하여 다운로드를 요청한다.
저장부(605)는 휴대용 단말기의 동작을 제어하기 위한 프로그램을 저장하는 프로그램 저장부 및 프로그램 수행 중에 발생되는 데이터를 저장하는 데이터 저장부로 구성될 수 있다. 예를 들면, 저장부(605)는 해시 알고리즘으로부터 생성된 출력 값을 저장한다.
상술한 블록 구성에서, 제어부(601)는 휴대용 단말기의 전반적인 기능을 수행할 수 있다. 본 발명에서 이를 별도로 구성하여 도시한 것은 각 기능들을 구별하여 설명하기 위함이다. 따라서 실제로 제품을 구현하는 경우에 휴대용 단말기의 기능 모두를 제어부(601)에서 처리하도록 구성할 수도 있으며, 기능 중 일부만을 제어부(601)에서 처리하도록 구성할 수도 있다.
이상 설명한 본 발명은 본 발명이 속한 기술분야에서 통상의 지식을 가진 자에 의하여 다양한 변형이나 응용이 가능하며, 본 발명에 따른 기술적 사상의 범위는 아래의 특허청구범위에 의하여 정해져야 할 것이다.
101: 휴대용 단말기 102: 서버
601: 제어부 602: 입력부
603: 출력부 604: 통신모듈
605: 저장부

Claims (20)

  1. 휴대용 단말기의 동작 방법에 있어서,
    서버로부터 적어도 하나의 컨텐츠를 설정된 용량만큼 다운로드 받는 과정; 및
    상기 다운로드 받은 컨텐츠의 용량으로, 동일 컨텐츠가 저장되어 있는지 판단하는 과정을 포함하는 것을 특징으로 하는 방법.
  2. 제1항에 있어서,
    상기 휴대용 단말기 내에 저장되어 있는 적어도 하나의 컨텐츠를 확인하는 과정;
    상기 컨텐츠의 헤더(head) 부분을, 상기 설정된 용량만큼 복사하는 과정;
    상기 복사된 헤더 부분을 입력 값으로 하여, 임의의 해시 알고리즘(hash algorithm)에 대입하는 과정; 및
    상기 해시 알고리즘으로부터 생성된 출력 값을 저장하는 과정을 포함하는 것을 특징으로 하는 방법.
  3. 제1항에 있어서,
    상기 서버로 상기 적어도 하나의 컨텐츠에 대하여 다운로드를 요청하는 과정을 더 포함하는 것을 특징으로 하는 방법.
  4. 제1항에 있어서,
    상기 서버로부터 적어도 하나의 컨텐츠를 설정된 용량만큼 다운로드 받는 과정은,
    상기 컨텐츠의 헤더 부분을 상기 설정된 용량만큼 다운로드 받았는지 확인하는 과정; 및
    상기 설정된 용량만큼의 다운로드가 완료되었다면, 상기 다운로드를 중단하는 과정을 포함하는 것을 특징으로 하는 방법.
  5. 제1항에 있어서,
    상기 다운로드 받은 컨텐츠의 용량으로, 동일 컨텐츠가 저장되어 있는지 판단하는 과정은,
    상기 다운로드 받은 컨텐츠의 헤더 부분을 입력 값으로 하여, 임의의 해시 알고리즘에 대입하는 과정;
    상기 해시 알고리즘으로부터 생성된 출력 값을 확인하는 과정; 및
    상기 출력 값을 상기 휴대용 단말기의 해시 테이블에 저장된 값과 비교하는 과정을 포함하는 것을 특징으로 하는 방법.
  6. 제5항에 있어서, 상기 해시 테이블은,
    상기 휴대용 단말기에 저장되어 있는 적어도 하나의 컨텐츠의 헤더(head) 부분을 상기 설정된 용량만큼 복사하여, 상기 복사된 헤더 부분을 입력 값으로 해서, 임의의 해시 알고리즘(hash algorithm)에 대입한 결과 생성된 출력 값이 저장된 테이블인 것을 특징으로 하는 방법.
  7. 제2항 또는 제5항에 있어서, 상기 임의의 해시 알고리즘은,
    MD5(Message Digest 5), SHA1(Secure Hash Algorithm 1) 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
  8. 제5항에 있어서,
    상기 비교결과 동일한 컨텐츠가 저장되어 있지 않다고 판단되면, 상기 중단된 컨텐츠의 다운로드를 완료하는 과정을 더 포함하는 것을 특징으로 하는 방법.
  9. 제5항에 있어서,
    상기 비교결과 동일한 컨텐츠가 저장되어 있다고 판단되면, 상기 컨텐츠의 다운로드 여부를 디스플레이하는 과정;
    상기 컨텐츠의 다운로드를 완료하도록 하는 명령어를 입력받는 과정; 및
    상기 컨텐츠의 다운로드를 완료하는 과정을 더 포함하는 것을 특징으로 하는 방법.
  10. 제9항에 있어서,
    상기 컨텐츠의 다운로드를 중단하도록 하는 명령어를 입력받는 과정; 및
    상기 컨텐츠의 다운로드를 중단하는 과정을 더 포함하는 것을 특징으로 하는 방법.
  11. 휴대용 단말기의 장치에 있어서,
    서버로부터 적어도 하나의 컨텐츠를 설정된 용량만큼 다운로드 받는 통신모듈; 및
    상기 다운로드 받은 컨텐츠의 용량으로, 동일 컨텐츠가 저장되어 있는지 판단하는 제어부를 포함하는 것을 특징으로 하는 장치.
  12. 제11항에 있어서,
    상기 제어부는, 상기 휴대용 단말기 내에 저장되어 있는 적어도 하나의 컨텐츠를 확인하여, 상기 컨텐츠의 헤더(head) 부분을 상기 설정된 용량만큼 복사하고, 상기 복사된 헤더 부분을 입력 값으로 하여, 임의의 해시 알고리즘(hash algorithm)에 대입하고,
    상기 해시 알고리즘으로부터 생성된 출력 값을 저장하는 저장부를 더 포함하는 것을 특징으로 하는 장치.
  13. 제11항에 있어서,
    상기 통신모듈은, 상기 서버로 상기 적어도 하나의 컨텐츠에 대하여 다운로드를 요청하는 것을 특징으로 하는 장치.
  14. 제11항에 있어서,
    상기 제어부는, 상기 컨텐츠의 헤더 부분을 상기 설정된 용량만큼 다운로드 받았는지 확인하여, 상기 설정된 용량만큼의 다운로드가 완료되었다면, 상기 다운로드를 중단하는 것을 특징으로 하는 장치.
  15. 제11항에 있어서,
    상기 제어부는, 상기 다운로드 받은 컨텐츠의 헤더 부분을 입력 값으로 하여, 임의의 해시 알고리즘에 대입하고, 상기 해시 알고리즘으로부터 생성된 출력 값을 확인하여, 상기 출력 값을 상기 휴대용 단말기의 해시 테이블에 저장된 값과 비교하는 것을 특징으로 하는 장치.
  16. 제15항에 있어서, 상기 해시 테이블은,
    상기 휴대용 단말기에 저장되어 있는 적어도 하나의 컨텐츠의 헤더(head) 부분을 상기 설정된 용량만큼 복사하여, 상기 복사된 헤더 부분을 입력 값으로 해서, 임의의 해시 알고리즘(hash algorithm)에 대입한 결과 생성된 출력 값이 저장된 테이블인 것을 특징으로 하는 장치.
  17. 제12항 또는 제15항에 있어서, 상기 임의의 해시 알고리즘은,
    MD5(Message Digest), SHA1(Secure Hash Algorithm) 중 적어도 하나를 포함하는 것을 특징으로 하는 장치.
  18. 제15항에 있어서,
    상기 제어부는, 상기 비교결과 동일한 컨텐츠가 저장되어 있지 않다고 판단되면, 상기 중단된 컨텐츠의 다운로드를 완료하는 것을 특징으로 하는 장치.
  19. 제15항에 있어서,
    상기 비교결과 동일한 컨텐츠가 저장되어 있다고 판단되면, 상기 컨텐츠의 다운로드 여부를 디스플레이하는 출력부; 및
    상기 컨텐츠의 다운로드를 완료하도록 하는 명령어를 입력받는 입력부를 더 포함하고,
    상기 제어부는, 상기 컨텐츠의 다운로드를 완료하는 것을 특징으로 하는 장치.
  20. 제19항에 있어서,
    상기 입력부는, 상기 컨텐츠의 다운로드를 중단하도록 하는 명령어를 입력받고,
    상기 제어부는, 상기 컨텐츠의 다운로드를 중단하는 것을 특징으로 하는 장치.
KR1020120007671A 2012-01-26 2012-01-26 컨텐츠의 중복 여부를 확인할 수 있는 휴대용 단말기의 장치 및 방법 KR20130086753A (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020120007671A KR20130086753A (ko) 2012-01-26 2012-01-26 컨텐츠의 중복 여부를 확인할 수 있는 휴대용 단말기의 장치 및 방법
JP2012236871A JP2013157977A (ja) 2012-01-26 2012-10-26 携帯端末及びその動作方法
EP12191296.8A EP2621142A1 (en) 2012-01-26 2012-11-05 Apparatus and Method for Determining Duplication of Content in Portable Terminal
US13/682,683 US20130198339A1 (en) 2012-01-26 2012-11-20 Apparatus and method for determining duplication of content in portable terminal
CN2012105572099A CN103294742A (zh) 2012-01-26 2012-12-19 用于在便携式终端中确定内容重复的装置和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120007671A KR20130086753A (ko) 2012-01-26 2012-01-26 컨텐츠의 중복 여부를 확인할 수 있는 휴대용 단말기의 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20130086753A true KR20130086753A (ko) 2013-08-05

Family

ID=47678448

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120007671A KR20130086753A (ko) 2012-01-26 2012-01-26 컨텐츠의 중복 여부를 확인할 수 있는 휴대용 단말기의 장치 및 방법

Country Status (5)

Country Link
US (1) US20130198339A1 (ko)
EP (1) EP2621142A1 (ko)
JP (1) JP2013157977A (ko)
KR (1) KR20130086753A (ko)
CN (1) CN103294742A (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6315899B2 (ja) * 2013-06-11 2018-04-25 キヤノン株式会社 情報処理装置、システム、プログラム及び制御方法
US10193806B2 (en) * 2014-03-31 2019-01-29 Nicira, Inc. Performing a finishing operation to improve the quality of a resulting hash
EP2953325B1 (en) * 2014-06-06 2019-01-16 Institut Mines-Telecom Method for managing packets in a network of Information Centric Networking (ICN) nodes
US10419557B2 (en) 2016-03-21 2019-09-17 International Business Machines Corporation Identifying and managing redundant digital content transfers
US10540322B2 (en) 2016-07-26 2020-01-21 International Business Machines Corporation Integrated file catalog
JP6530002B2 (ja) * 2017-04-12 2019-06-12 日本電信電話株式会社 コンテンツ探索装置、コンテンツ探索方法、プログラム
US11488154B2 (en) * 2018-02-02 2022-11-01 Cyril ROBITAILLE Electronic payment method and system

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040039933A1 (en) * 2002-08-26 2004-02-26 Cricket Technologies Document data profiler apparatus, system, method, and electronically stored computer program product
US7565700B2 (en) * 2005-07-05 2009-07-21 International Business Machines Corporation Method for tracking the expiration of encrypted content using device relative time intervals
US20070204003A1 (en) * 2006-02-28 2007-08-30 Maven Networks, Inc. Downloading a file over HTTP from multiple servers
US8015491B2 (en) * 2006-02-28 2011-09-06 Maven Networks, Inc. Systems and methods for a single development tool of unified online and offline content providing a similar viewing experience
JP4270252B2 (ja) * 2006-09-15 2009-05-27 ソニー株式会社 情報処理装置、ダウンロード方法、ダウンロード中断方法、ダウンロード再開方法及びプログラム
US8024472B1 (en) * 2007-09-25 2011-09-20 Limelight Networks, Inc. Third party verification using override IP addresses
CN101409706B (zh) * 2007-10-09 2011-11-23 华为技术有限公司 一种边缘网络中的数据分发方法、数据分发系统及相关设备
WO2010111261A1 (en) * 2009-03-23 2010-09-30 Azuki Systems, Inc. Method and system for efficient streaming video dynamic rate adaptation
US8478836B1 (en) * 2010-06-07 2013-07-02 Purplecomm Inc. Proxy cache technology
US20120191671A1 (en) * 2011-01-26 2012-07-26 Hitachi, Ltd. Computer system and data de-duplication method
CN102143183A (zh) * 2011-03-24 2011-08-03 镇江星浪科技产品有限公司 一种文档版本化的方法
EP2791831B1 (en) * 2012-01-25 2020-03-11 Hitachi, Ltd. Single instantiation method using file clone and file storage system utilizing the same

Also Published As

Publication number Publication date
EP2621142A1 (en) 2013-07-31
JP2013157977A (ja) 2013-08-15
CN103294742A (zh) 2013-09-11
US20130198339A1 (en) 2013-08-01

Similar Documents

Publication Publication Date Title
KR20130086753A (ko) 컨텐츠의 중복 여부를 확인할 수 있는 휴대용 단말기의 장치 및 방법
CN107483627A (zh) 一种文件分发、下载方法、分发服务器、客户端及系统
CN109814913B (zh) 一种应用包拆分重组和运行的方法和装置
US8655834B2 (en) Dynamically redirecting a target location during a file I/O operation
JP2012141991A (ja) コンテンツカテゴリ化方法、及びシステム
US7953822B2 (en) Method of and apparatus for downloading data
KR102121358B1 (ko) 데이터 전송 방법 및 디바이스
CN111638894A (zh) 一种软件升级方法、装置及计算机存储介质
KR20180061314A (ko) 멀티미디어 리소스 재생 시스템, 방법 및 서버
WO2022247503A1 (zh) 数据内容处理方法、装置、终端及存储介质
CN104426918A (zh) 设备设置方法和电子设备
US11232205B2 (en) File storage service initiation of antivirus software locally installed on a user device
CN111770153A (zh) 一种对象下载方法、装置及电子设备和存储介质
JP2011118506A (ja) コンテンツ選択システム、提供装置、転送装置、コンテンツ選択方法、およびコンテンツ選択プログラム
CN109308288B (zh) 数据处理方法及装置
CN107515704B (zh) 一种预览压缩文件的方法及装置
CN114237924A (zh) 容器内进程管控方法、装置、设备及可读存储介质
US20130046820A1 (en) Manipulaton of an Inventory of Content Items on a Mobile Device by a Network-Based Application
US20150156229A1 (en) Terminal apparatus, information processing system and information processing method
WO2016165447A1 (zh) 遥控终端的方法、装置及系统
CN113094211B (zh) 一种备份数据处理的方法和装置
JP2004310464A (ja) 共有コンテンツファイルの更新管理方法
CN117478832A (zh) 远程持久化存储方法、装置、设备及存储介质
CN108008970A (zh) 应用升级方法及装置
JP2007219648A (ja) バックアップサーバ

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid