[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR20190060343A - Communication platform based on sound - Google Patents

Communication platform based on sound Download PDF

Info

Publication number
KR20190060343A
KR20190060343A KR1020170158447A KR20170158447A KR20190060343A KR 20190060343 A KR20190060343 A KR 20190060343A KR 1020170158447 A KR1020170158447 A KR 1020170158447A KR 20170158447 A KR20170158447 A KR 20170158447A KR 20190060343 A KR20190060343 A KR 20190060343A
Authority
KR
South Korea
Prior art keywords
terminal
sound wave
data
service server
information
Prior art date
Application number
KR1020170158447A
Other languages
Korean (ko)
Other versions
KR102025524B1 (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 KR1020170158447A priority Critical patent/KR102025524B1/en
Priority to PCT/KR2018/010213 priority patent/WO2019103289A1/en
Priority to US16/492,157 priority patent/US20210152564A1/en
Publication of KR20190060343A publication Critical patent/KR20190060343A/en
Application granted granted Critical
Publication of KR102025524B1 publication Critical patent/KR102025524B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B11/00Transmission systems employing sonic, ultrasonic or infrasonic waves
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Telephonic Communication Services (AREA)

Abstract

A method for operating a service server is disclosed in an embodiment of the present invention, comprising steps of: transmitting a security key to a terminal before receiving symbol request data including service type information and payload data from other terminal; generating a symbol corresponding to the other terminal according to size as determined by the service type information; generating mapping information in which the payload data and the generated symbol are mapped with respect to the other terminal; generating acoustic wave data for acoustic wave output of the other terminal based on the generated symbol; transmitting the generated acoustic wave data to the other terminal; receiving from the terminal an acoustic wave recognition result, which is generated based on the security key and acoustic waves, and payload request data, the acoustic waves being outputted based on the acoustic wave data which the other terminal received from the service server; checking whether the acoustic wave recognition result and the generated symbol match; and, when the two elements match, transmitting the payload data to the terminal based on the mapping information.

Description

음파 통신 플랫폼{COMMUNICATION PLATFORM BASED ON SOUND}{COMMUNICATION PLATFORM BASED ON SOUND}

아래 실시예들은 음파 통신 플랫폼에 관한 것이다.The following embodiments relate to a sonic communication platform.

최근에, 음파를 이용한 통신 방법이 다양한 분야에서 이용되고 있다. 음파는 공간 상에서 전파되므로, 제3자가 해당 음파를 수신하여 처리할 수 있다. 이러한 제3자 처리를 방지하기 위해 다양한 방법이 연구되고 있다. Recently, communication methods using sound waves have been used in various fields. Since the sound waves propagate in space, a third party can receive and process the sound waves. Various methods have been studied to prevent such third party processing.

관련 선행기술로 한국 등록특허공보 제10-1645175호(발명의 명칭: 음파 통신 시스템, 출원인: 나노소프트)가 있다. 해당 선행기술에는 음파수신기에서 출력된 음파신호를 음파수신기가 수신 받아 수신된 음파신호를 분석하는 음파 통신시스템이 개시된다.Korean Patent Registration No. 10-1645175 (entitled "Sound Wave Communication System, Applicant: Nanosoft") is known as a related art. The prior art discloses a sound wave communication system for receiving a sound wave signal output from a sound wave receiver and analyzing the received sound wave signal.

일 측에 따른 서비스 서버의 동작 방법은 단말에게 보안키를 전송하고, 다른 단말로부터 서비스 타입 정보를 포함하는 심볼 요청 데이터와 페이로드 데이터를 수신하는 단계; 상기 서비스 타입 정보를 기초로 결정된 사이즈에 따라 상기 다른 단말에 대응되는 심볼을 생성하는 단계; 상기 다른 단말에 대해, 상기 페이로드 데이터와 상기 생성된 심볼이 맵핑된 맵핑 정보를 생성하는 단계; 상기 생성된 심볼을 기초로 상기 다른 단말의 음파 출력을 위한 음파 데이터를 생성하는 단계; 상기 생성된 음파 데이터를 상기 다른 단말로 전송하는 단계; 상기 단말로부터, 상기 보안키와 음파를 기초로 생성된 음파 인식 결과-상기 음파는 상기 다른 단말이 상기 서비스 서버로부터 수신한 음파 데이터를 기초로 출력한 것임- 및 페이로드 요청 데이터를 수신하는 단계; 상기 음파 인식 결과와 상기 생성된 심볼이 매칭되는지 확인하는 단계; 및 상기 매칭되는 경우, 상기 맵핑 정보를 기초로 상기 페이로드 데이터를 상기 단말로 전송하는 단계를 포함한다.According to one aspect of the present invention, there is provided a method of operating a service server, including: transmitting a security key to a terminal; receiving symbol request data and payload data including service type information from another terminal; Generating a symbol corresponding to the other terminal according to a size determined based on the service type information; Generating mapping information in which the payload data and the generated symbol are mapped to the other terminal; Generating sound wave data for sound wave output of the other terminal based on the generated symbol; Transmitting the generated sound wave data to the other terminal; A sound wave recognition result generated based on the security key and a sound wave from the terminal, the sound wave being output based on sound wave data received from the service server by the other terminal, and receiving payload request data; Confirming whether the sound wave recognition result matches the generated symbol; And transmitting the payload data to the terminal based on the mapping information if the matching is performed.

상기 생성된 음파 데이터는 상기 생성된 심볼 및 에러정정코드를 포함할 수 있다.The generated sound wave data may include the generated symbols and an error correction code.

상기 생성된 심볼과 상기 에러정정코드의 비트들의 배열은 상기 보안키를 기초로 변경될 수 있다.The generated symbols and the arrangement of bits of the error correction code may be changed based on the secret key.

상기 동작 방법은 주파수 간격 정보 및 시작 주파수 정보 중 적어도 하나를 기초로 상기 생성된 음파 데이터의 비트들 각각의 주파수 포스트를 설정하는 단계를 더 포함할 수 있다.The method may further include setting a frequency post of each of the bits of the generated sound wave data based on at least one of the frequency interval information and the start frequency information.

상기 주파수 간격 정보 및 상기 시작 주파수 정보는 상기 서비스 타입 정보에 관련될 수 있다.The frequency interval information and the start frequency information may be related to the service type information.

상기 동작 방법은 상기 음파 데이터를 생성한 경우, 상기 생성된 음파 데이터의 비트들 각각의 주파수 포스트를 설정하는 단계; 상기 비트들 중 비트값 1의 주파수 포스트에 음파 톤을 생성하는 단계; 및 상기 생성된 음파 톤을 병합(aggregation)하여 멀티 톤 음파를 생성하고, 상기 멀티 톤 음파를 레코딩한 재생 파일을 생성하는 단계를 더 포함할 수 있다.The method comprising: if the sound wave data is generated, setting a frequency post of each bit of the generated sound wave data; Generating an acoustic tone in a frequency post with a bit value of one of the bits; And aggregating the generated sound wave tones to generate a multi-tone sound wave, and generating a playback file recording the multi-tone sound wave.

상기 동작 방법은 상기 심볼의 생성 시점으로부터 미리 정해진 시간 이내에 상기 음파 인식 결과를 수신하였는지 여부를 확인함으로써 상기 음파 인식 결과의 유효성을 검증하는 단계를 더 포함할 수 있다. The operation method may further include verifying the validity of the sound wave recognition result by confirming whether or not the sound wave recognition result is received within a predetermined time from the generation time of the symbol.

상기 동작 방법은 상기 다른 단말로부터 상기 단말이 상기 페이로드 데이터를 수신했는지 여부에 대한 확인 요청 데이터를 수신하는 단계; 및 상기 단말의 상기 페이로드 데이터의 수신 완료 여부에 대한 응답 데이터를 상기 다른 단말로 전송하는 단계를 더 포함할 수 있다.The method comprising: receiving confirmation request data as to whether the terminal has received the payload data from the other terminal; And transmitting response data indicating whether the terminal has received the payload data to the other terminal.

상기 동작 방법은 상기 음파 인식 결과 및 상기 페이로드 요청 데이터를 수신하는 단계에서 상기 서비스 서버가 상기 단말로부터 상기 단말의 페이로드 데이터를 더 수신하는 경우, 상기 맵핑 정보에 상기 단말의 페이로드 데이터를 맵핑하여 추가 맵핑 정보를 생성하는 단계; 및 상기 다른 단말로부터 상기 단말의 페이로드 데이터에 대한 요청 데이터를 수신하는 경우, 상기 추가 맵핑 정보를 기초로 상기 단말의 페이로드 데이터를 상기 다른 단말로 전송하는 단계를 더 포함할 수 있다.Wherein the operation method further comprises: when the service server further receives the payload data of the terminal from the terminal in the step of receiving the sound wave recognition result and the payload request data, mapping the payload data of the terminal to the mapping information Generating additional mapping information; And transmitting the payload data of the terminal to the other terminal based on the additional mapping information when request data for the payload data of the terminal is received from the other terminal.

상기 페이로드 데이터는 URL 정보, 텍스트, 정적 이미지, 및 동적 이미지 중 적어도 하나를 포함할 수 있다.The payload data may include at least one of URL information, text, static images, and dynamic images.

일 측에 따른 서비스 서버는 통신 인터페이스; 및 상기 통신 인터페이스와 커플링되는 컨트롤러를 포함하고, 상기 컨트롤러는 상기 통신 인터페이스를 통해 단말에게 보안키를 전송하고 다른 단말로부터 서비스 타입 정보를 포함하는 심볼 요청 데이터와 페이로드 데이터를 수신하며, 상기 서비스 타입 정보를 기초로 결정된 사이즈에 따라 상기 다른 단말에 대응되는 심볼을 생성하고, 상기 다른 단말에 대해 상기 페이로드 데이터와 상기 생성된 심볼이 맵핑된 맵핑 정보를 생성하고, 상기 생성된 심볼을 기초로 상기 다른 단말의 음파 출력을 위한 음파 데이터를 생성하며, 상기 통신 인터페이스를 통해 상기 생성된 음파 데이터를 상기 다른 단말로 전송하고, 상기 통신 인터페이스를 통해 상기 단말로부터 상기 보안키와 음파를 기초로 생성된 음파 인식 결과-상기 음파는 상기 다른 단말이 상기 서비스 서버로부터 수신한 데이터를 기초로 출력한 것임- 및 페이로드 요청 데이터를 수신하고, 상기 음파 인식 결과와 상기 생성된 심볼이 매칭되는지 확인하고, 상기 매칭되는 경우, 상기 맵핑 정보를 기초로 상기 페이로드 데이터를 상기 통신 인터페이스를 통해 상기 단말로 전송한다.A service server according to one side comprises: a communication interface; And a controller coupled to the communication interface, wherein the controller transmits a security key to the terminal through the communication interface, receives symbol request data and payload data including service type information from another terminal, Generates a symbol corresponding to the other terminal according to a size determined based on type information, generates mapping information in which the payload data and the generated symbol are mapped to the other terminal, and generates mapping information based on the generated symbol Generating sound wave data for sound wave output of the other terminal, transmitting the generated sound wave data to the other terminal through the communication interface, and transmitting the sound wave data generated from the terminal through the communication interface Sound wave recognition result - the sound wave is transmitted to the other terminal And receiving the payload request data, checking whether the result of the sound wave recognition and the generated symbol are matched with each other, and if it is matched, And transmits the load data to the terminal via the communication interface.

상기 생성된 음파 데이터는 상기 생성된 심볼 및 에러정정코드를 포함할 수 있다.The generated sound wave data may include the generated symbols and an error correction code.

상기 생성된 심볼과 상기 에러정정코드의 비트들의 배열은 상기 보안키를 기초로 변경될 수 있다.The generated symbols and the arrangement of bits of the error correction code may be changed based on the secret key.

상기 컨트롤러는 주파수 간격 정보 및 시작 주파수 정보 중 적어도 하나를 기초로 상기 생성된 음파 데이터의 비트들 각각의 주파수 포스트를 설정할 수 있다.The controller may set a frequency post of each of the bits of the generated sound wave data based on at least one of frequency interval information and start frequency information.

상기 주파수 간격 정보 및 상기 시작 주파수 정보는 상기 서비스 타입 정보에 관련될 수 있다.The frequency interval information and the start frequency information may be related to the service type information.

상기 컨트롤러는 상기 음파 데이터를 생성한 경우, 상기 생성된 음파 데이터의 비트들 각각의 주파수 포스트를 설정하고, 상기 비트들 중 비트값 1의 주파수 포스트에 음파 톤을 생성하며, 상기 생성된 음파 톤을 병합(aggregation)하여 멀티 톤 음파를 생성하고, 상기 멀티 톤 음파를 레코딩한 재생 파일을 생성하고, 상기 재생 파일을 상기 통신 인터페이스를 통해 상기 다른 단말로 전송할 수 있다.The controller sets the frequency post of each of the bits of the generated sound wave data when generating the sound wave data and generates a sound wave tone in the frequency post of the bit value 1 of the bits, Tone sound wave to generate a reproduction file in which the multi-tone sound wave is recorded, and transmit the reproduction file to the other terminal through the communication interface.

상기 컨트롤러는 상기 심볼의 생성 시점으로부터 미리 정해진 시간 이내에 상기 음파 인식 결과를 수신하였는지 여부를 확인함으로써 상기 음파 인식 결과의 유효성을 검증할 수 있다.The controller can verify the validity of the sound wave recognition result by checking whether or not the sound wave recognition result is received within a predetermined time from the generation time of the symbol.

상기 컨트롤러는 상기 통신 인터페이스를 통해 상기 다른 단말로부터 상기 단말이 상기 페이로드 데이터를 수신했는지 여부에 대한 확인 요청 데이터를 수신하고 상기 단말의 상기 페이로드 데이터의 수신 완료 여부에 대한 응답 데이터를 상기 다른 단말로 전송할 수 있다.Wherein the controller receives confirmation request data as to whether or not the terminal has received the payload data from the other terminal through the communication interface and transmits a response data indicating completion of reception of the payload data of the terminal to the other terminal Lt; / RTI >

상기 컨트롤러는 상기 서비스 서버가 상기 단말로부터 상기 단말의 페이로드 데이터를 더 수신하는 경우, 상기 맵핑 정보에 상기 단말의 페이로드 데이터를 맵핑하여 추가 맵핑 정보를 생성하고, 상기 다른 단말로부터 상기 단말의 페이로드 데이터에 대한 요청 데이터를 수신하는 경우, 상기 추가 맵핑 정보를 기초로 상기 단말의 페이로드 데이터를 상기 통신 인터페이스를 통해 상기 다른 단말로 전송할 수 있다.Wherein the controller further maps the payload data of the terminal to the mapping information to generate additional mapping information when the service server further receives the payload data of the terminal from the terminal, When request data for load data is received, payload data of the terminal can be transmitted to the other terminal through the communication interface based on the additional mapping information.

상기 페이로드 데이터는 URL 정보, 텍스트, 정적 이미지, 및 동적 이미지 중 적어도 하나를 포함할 수 있다.The payload data may include at least one of URL information, text, static images, and dynamic images.

기존의 음파 통신은 음파 주파수가 한정적이어서 전송 속도가 빠르지 않을 수 있고, 이미지, 동영상 또는 텍스트 정보 등 많은 량의 데이터를 음파로 전송하기가 어렵다. 또한, 제3자가 음파를 녹음하여 분석할 수 있으므로, 기존의 음파 통신은 보안에 취약하다. 또한, 어플리케이션이 다양하게 되면 음파 통신에 간섭이 생길 수도 있다.Conventional sound wave communication may not be fast because the sound wave frequency is limited, and it is difficult to transmit a large amount of data such as image, moving picture or text information to a sound wave. In addition, since a third party can record and analyze a sound wave, existing sound wave communication is vulnerable to security. In addition, if the applications are diversified, interference may occur in the sound wave communication.

실시예는 음파통신 플랫폼을 이용하여 많은 양의 데이터를 빠른 속도로 사용자에게 보낼 수 있는 서비스를 제공할 수 있다. 또한 보안성이 향상된 음파 통신을 제공하여 다양한 어플리케이션에서 사용될 수 있도록 한다. 또한 다양한 어플리케이션에서 간섭이 최소화될 수 있다.Embodiments can provide a service capable of sending a large amount of data to a user at a high speed using a sound communication platform. It also provides improved sonic communication with enhanced security, enabling it to be used in various applications. Interference can also be minimized in various applications.

도 1은 일 실시예에 따른 음파 통신 플랫폼을 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 음파 통신 플랫폼의 동작의 일례를 설명하기 위한 흐름도이다.
도 3은 일 실시예에 따른 음파 데이터를 설명하기 위한 도면이다.
도 4a는 일 실시예에 따른 음파 데이터의 암호화를 설명하기 위한 도면이다.
도 4b는 일 실시예에 따른 멀티 톤 음파를 설명하기 위한 도면이다.
도 5 및 도 6은 일 실시예에 따른 음파 통신 플랫폼의 동작의 다른 일례를 설명하기 위한 도면이다.
도 7 내지 도 8은 일 실시예에 따른 음파 통신 플랫폼의 음파 데이터의 크기가 큰 경우를 설명하기 위한 도면이다.
도 9는 일 실시예에 따른 음파 통신 플랫폼의 동작의 또 다른 일례를 설명하기 위한 도면이다.
도 10 내지 도 11은 일 실시예에 따른 음파 통신 플랫폼의 동작의 또 다른 일례를 설명하기 위한 도면이다.
도 12는 일 실시예에 따른 음파 통신 플랫폼의 서비스 서버를 설명하기 위한 블록도이다.
1 is a view for explaining a sound wave communication platform according to an embodiment.
2 is a flowchart for explaining an example of the operation of the sound wave communication platform according to one embodiment.
3 is a view for explaining sound wave data according to an embodiment.
4A is a diagram for explaining encryption of sound wave data according to an embodiment.
4B is a diagram for explaining a multi-tone sound wave according to an embodiment.
5 and 6 are views for explaining another example of the operation of the sound wave communication platform according to one embodiment.
7 to 8 are diagrams for explaining a case where the size of sound wave data of the sound wave communication platform according to the embodiment is large.
9 is a view for explaining another example of the operation of the sound wave communication platform according to the embodiment.
10 to 11 are diagrams for explaining another example of the operation of the sound wave communication platform according to the embodiment.
12 is a block diagram illustrating a service server of an acoustic communication platform according to an exemplary embodiment of the present invention.

이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings.

아래 설명하는 실시예들에는 다양한 변경이 가해질 수 있다. 아래 설명하는 실시예들은 실시 형태에 대해 한정하려는 것이 아니며, 이들에 대한 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Various modifications may be made to the embodiments described below. It is to be understood that the embodiments described below are not intended to limit the embodiments, but include all modifications, equivalents, and alternatives to them.

실시예에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 실시예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the examples are used only to illustrate specific embodiments and are not intended to limit the embodiments. The singular expressions include plural expressions unless the context clearly dictates otherwise. In this specification, the terms "comprises" or "having" and the like refer to the presence of stated features, integers, steps, operations, elements, components, or combinations thereof, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this embodiment belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as ideal or overly formal in the sense of the art unless explicitly defined herein Do not.

또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In the following description of the present invention with reference to the accompanying drawings, the same components are denoted by the same reference numerals regardless of the reference numerals, and redundant explanations thereof will be omitted. In the following description of the embodiments, a detailed description of related arts will be omitted if it is determined that the gist of the embodiments may be unnecessarily blurred.

<음파 통신 플랫폼><Sonic Communication Platform>

도 1은 일 실시예에 따른 음파 통신 플랫폼을 설명하기 위한 도면이다. 1 is a view for explaining a sound wave communication platform according to an embodiment.

도 1을 참조하면, 음파 통신 플랫폼(100)은 서비스 서버(110)와 단말들(120 및 130)을 포함한다. 음파 통신 플랫폼(100)은 음파 통신 시스템으로 달리 표현될 수 있다.Referring to FIG. 1, a sound wave communication platform 100 includes a service server 110 and terminals 120 and 130. The sonic communication platform 100 may be otherwise represented as a sonic communication system.

서비스 서버(110)는 단말(120)로부터 페이로드 데이터(예를 들어, 텍스트, 정적 이미지, 또는 동적 이미지)를 수신한 뒤 단말(120)의 음파 데이터를 생성하여 단말(120)로 전송할 수 있다. The service server 110 may receive the payload data (e.g., text, static image, or dynamic image) from the terminal 120, generate the sound wave data of the terminal 120, and transmit the generated sound wave data to the terminal 120 .

단말(120)은 음파 데이터에 기반한 음파를 생성 및 출력할 수 있다. 일례로, 단말(120)은 음파 데이터를 기반으로 재생 파일(일례로, wav 파일)을 생성하고, 이를 재생할 수 있다. 또는, 단말(120)는 음파 데이터에 기반한 재생 파일을 서비스 서버(110)로부터 수신하여 재생할 수 있다. 단말(130)은 단말(120)의 음파를 인식한 음파 인식 결과를 서비스 서버(110)로 전송한다. The terminal 120 may generate and output sound waves based on the sound wave data. For example, the terminal 120 can generate and play back a playback file (e.g., a wav file) based on the sound wave data. Alternatively, the terminal 120 can receive the playback file based on the sound wave data from the service server 110 and play it. The terminal 130 transmits the sound wave recognition result of recognizing the sound wave of the terminal 120 to the service server 110.

서비스 서버(110)는 음파 인식 결과를 기초로 단말(120)의 페이로드 데이터에 대한 이용 자격이 단말(130)에 있는지 확인할 수 있다. 여기서, 단말(130)에 단말(120)의 페이로드 데이터에 대한 이용 자격이 있는 경우, 서비스 서버(110)는 단말(120)의 페이로드 데이터를 단말(130)로 전송할 수 있다.The service server 110 can confirm whether the terminal 130 is entitled to use the payload data of the terminal 120 based on the sound wave recognition result. Here, if the terminal 130 is entitled to use the payload data of the terminal 120, the service server 110 may transmit the payload data of the terminal 120 to the terminal 130.

기존의 음파 통신은 주파수 대역의 한정으로 인해 많은 량의 데이터를 보내기가 어렵고 보안에 취약할 수 있다. 일 실시예에 따른 음파 통신 플랫폼(100)은 후술할 심볼과 페이로드 데이터를 맵핑함으로써 많은 양의 데이터를 효율적으로 전송할 수 있다. 또한 음파 통신 플랫폼(100)이 보안을 관리하여 보안에 강하다. 이에 따라, 음파 통신 플랫폼(100)은 결제 서비스, 출결 서비스, 또는 출입 서비스에 적용되어 이들 서비스의 보안성을 향상시키거나 마케팅 서비스에 적용되어 쿠폰을 필요로 하는 사용자에게 쿠폰 이미지를 빠른 시간에 전송할 수 있다. 또한, 이러한 서비스가 아니더라도 음파 통신 플랫폼(100)은 특정 사용자가 보유한 데이터 또는 정보를 다른 사용자로 전송하는데 적용될 수 있다.Conventional sonic communication is difficult to send a large amount of data due to the limitation of frequency band and may be vulnerable to security. The sound wave communication platform 100 according to an embodiment can efficiently transmit a large amount of data by mapping symbols and payload data to be described later. In addition, the sound wave communication platform 100 manages security and is strong in security. Accordingly, the sound wave communication platform 100 can be applied to a billing service, an attendance service, or an access service to improve the security of these services or to apply a coupon to a user who needs coupons in a short time . In addition, although not the service, the sound wave communication platform 100 can be applied to transmit data or information held by a specific user to another user.

이하, 도 2를 참조하면서, 음파 통신 플랫폼(100)의 동작의 일례에 대해 상세히 설명한다. Hereinafter, an example of the operation of the acoustic communication platform 100 will be described in detail with reference to FIG.

<음파 통신 플랫폼-단방향 음파 기반의 단방향 정보 전송><Acoustic communication platform - Unidirectional information transmission based on unidirectional sound wave>

도 2는 일 실시예에 따른 음파 통신 플랫폼의 동작의 일례를 설명하기 위한 흐름도이다.2 is a flowchart for explaining an example of the operation of the sound wave communication platform according to one embodiment.

도 2를 참조하면, 서비스 서버(110)는 음파 통신 플랫폼(100)의 보안을 관리한다(210). 서비스 서버(110)의 보안 관리는 서비스 타입 정보에 따라 상이한 음파 프로토콜 및 음파 데이터를 암호화하는데 이용되는 보안키로 구분될 수 있다. 서비스 타입 정보에 따라 음파 프로토콜이 상이하여 음파 통신의 보안성이 더욱 향상될 수 있다. 아래 표 1은 서비스 타입 정보 별 음파 프로토콜의 일례를 보여준다.Referring to FIG. 2, the service server 110 manages the security of the sound communication platform 100 (210). Security management of the service server 110 may be divided into different sound protocols according to service type information and security keys used to encrypt sound data. The sound wave protocol differs according to the service type information, so that the security of the sound wave communication can be further improved. Table 1 below shows an example of a sound wave protocol according to service type information.

심볼 사이즈Symbol size CRC 사이즈CRC size 음파 데이터의 사이즈Size of sound wave data 최소 주파수 간격Minimum Frequency Interval 시작 주파수Start frequency 결제payment 26bits~40bits26bits ~ 40bits 8bits8bits 34bits~48bits34bits ~ 48bits 50Hz50Hz 18kHz18kHz 출결Attended 12bits12bits 8bits8bits 20bits20bits 100Hz100Hz 18.5kHz18.5 kHz 마케팅Marketing 12bits12bits 8bits8bits 20bits20bits 100Hz100Hz 19kHz19 kHz 출입coming and going 26bits26bits 8bits8bits 34bits34bits 50Hz50Hz 19.5kHz19.5 kHz

위의 표 1에서, "출결"은 단말(130)의 사용자의 특정 장소에 대한 출석 인증과 관련된 서비스를 나타내고, "마케팅"은 단말(130)의 사용자에게 마케팅을 하기 위한 서비스(일례로, 쿠폰 제공)를 나타내며, "출입"은 단말(130)의 사용자가 특정 장소로의 출입 인증과 관련된 서비스를 나타낸다.In Table 1, " Attendance " represents a service related to attendance authentication for a specific place of the user of the terminal 130, " Marketing " represents a service And " outgoing " represents a service related to access authentication of a user of the terminal 130 to a specific place.

구현에 따라, 서비스의 종류가 동일하여도 다양한 음파 프로토콜이 있을 수 있다. 결제 서비스의 경우를 일례로 설명하면, 결제 서비스는 다양할 수 있고, 결제 서비스에는 다양한 서비스 제공자(일례로, SSG 페이 서비스 제공자, 엘페이 서비스 제공자 등)가 존재할 수 있다. 이에 따라, 서비스 서버(110)는 다양한 결제 서비스 각각에 대응되는 음파 프로토콜을 관리하거나 서비스 제공자 별로 상이한 음파 프로토콜을 관리할 수 있다. 일례로, 결제 서비스 A에 해당하는 음파 프로토콜과 결제 서비스 B에 해당하는 음파 프로토콜은 상이할 수 있다. 아래 표 2는 서비스의 종류가 동일하여도 음파 프로토콜이 상이한 일례를 보여준다.Depending on the implementation, there may be a variety of sound wave protocols, even if the types of services are the same. As an example of a payment service, a payment service may be various, and a payment service may include various service providers (for example, an SSG pay service provider, an ELPE service provider, etc.). Accordingly, the service server 110 can manage the sound wave protocol corresponding to each of various payment services or manage different sound wave protocols for each service provider. For example, the sound wave protocol corresponding to the settlement service A and the sound wave protocol corresponding to the settlement service B may be different. Table 2 below shows an example in which the sound wave protocol is different even though the types of services are the same.

심볼 사이즈Symbol size CRC 사이즈CRC size 음파 데이터의 사이즈Size of sound wave data 최소 주파수 간격Minimum Frequency Interval 시작 주파수Start frequency 결제 APayment A 26bits~40bits26bits ~ 40bits 8bits8bits 34bits~48bits34bits ~ 48bits 50Hz50Hz 18kHz18kHz 결제 BPayment B 26bits~40bits26bits ~ 40bits 8bits8bits 34bits~48bits34bits ~ 48bits 50Hz50Hz 18.3kHz18.3 kHz ...... ...... ...... ...... ...... ...... 출결 AAttendance A 12bits12bits 8bits8bits 20bits20bits 100Hz100Hz 18.5kHz18.5 kHz 출결 BAttendance B 12bits12bits 8bits8bits 20bits20bits 100Hz100Hz 18.9kHz18.9 kHz ...... ...... ...... ...... ...... ...... 마케팅 AMarketing A 12bits12bits 8bits8bits 20bits20bits 100Hz100Hz 19kHz19 kHz 마케팅 BMarketing B 12bits12bits 8bits8bits 20bits20bits 100Hz100Hz 19.3kHz19.3 kHz ...... ...... ...... ...... ...... ...... 출입 AAccess A 26bits26bits 8bits8bits 34bits34bits 50Hz50Hz 19.5kHz19.5 kHz 출입 BAccess B 26bits26bits 8bits8bits 34bits34bits 50Hz50Hz 19.9kHz19.9 kHz ...... ...... ...... ...... ...... ......

서비스 서버(110)는 서비스 타입 정보에 맞는 음파 프로토콜에 따라 음파 데이터를 생성하고 주파수 포스트를 설정하는데, 이에 대한 자세한 설명은 후술한다.The service server 110 generates the sound wave data according to the sound wave protocol corresponding to the service type information and sets the frequency post, which will be described later in detail.

서비스 서버(110)는 보안키를 주기적으로 변경함으로써 보안을 강화할 수 있다. 일례로, 서비스 서버(110)는 보안키를 매일, 1주, 또는 2주마다 변경할 수 있다. 높은 보안이 요구되는 경우, 서비스 서버(110)는 보안키를 더 짧은 주기로 변경할 수 있다.The service server 110 may enhance the security by periodically changing the security key. For example, the service server 110 may change the security key on a daily, weekly, or bi-weekly basis. If high security is required, the service server 110 may change the security key to a shorter period.

단말(130)은 보안키 요청 데이터를 서비스 서버(110)에 전송한다(211). 달리 표현하면, 단말(130)은 보안키를 서비스 서버(110)에 요청한다. 일례로, 단말(130)의 특정 어플리케이션이 실행되는 경우, 단말(130)은 보안키를 서비스 서버(110)에 요청할 수 있다. 여기서, 특정 어플리케이션은 단말(130)의 사용자가 제공받을 수 있는 서비스(예를 들어, 결제, 마케팅, 출결, 또는 출입)와 관련된 어플리케이션일 수 있다.The terminal 130 transmits the security key request data to the service server 110 (211). In other words, the terminal 130 requests a security key from the service server 110. For example, when a specific application of the terminal 130 is executed, the terminal 130 may request the security server 110 from the service server 110. Here, the specific application may be an application related to a service (for example, payment, marketing, attendance, or access) that the user of the terminal 130 can receive.

서비스 서버(110)는 보안키를 단말(130)로 전송한다(212). 즉, 단말(130)는 서비스 서버(110)로부터 보안키를 수신한다. 단말(130)은, 예를 들어, 보안키의 변경 주기에 따라 하루에 1번 보안키를 수신할 수 있다. 이는 실시예에 따른 예시적인 사항일 뿐이다.The service server 110 transmits the security key to the terminal 130 (212). That is, the terminal 130 receives the security key from the service server 110. The terminal 130 may receive the security key once a day according to the change period of the security key, for example. This is merely an example according to the embodiment.

단말(130)은 서비스 서버(110)로부터 보안키를 수신하는 경우, 음파 수신 대기 상태로 진입한다(214). 일례로, 단말(130)은 서비스 서버(110)로부터 보안키를 수신하는 경우, 마이크를 활성화시킬 수 있다.When the terminal 130 receives the security key from the service server 110, the terminal 130 enters the sound wave reception waiting state (214). For example, when the terminal 130 receives the security key from the service server 110, the terminal 130 can activate the microphone.

단말(120)은 심볼 요청 데이터 및 페이로드 데이터 A를 서비스 서버(110)로 전송한다(213). 이 때, 심볼 요청 데이터는 서비스 타입 정보를 포함한다. 일례로, 음파 통신 플랫폼(110)이 결제 서비스와 관련되면, 서비스 타입 정보는 "결제"를 나타낼 수 있다. 음파 통신 플랫폼(110)이 출결 서비스와 관련되면, 서비스 타입 정보는 "출결"을 나타낼 수 있다. 또한, 음파 통신 플랫폼(110)이 마케팅 서비스와 관련되면, 서비스 타입 정보는 "마케팅"을 나타낼 수 있고, 음파 통신 플랫폼(110)이 출입관리 서비스와 관련되면, 서비스 타입 정보는 "출입"을 나타낼 수 있다. 구현에 따라, 서비스 타입 정보는 위 표 2를 통해 설명한 "결제 A", 또는 "출결 B" 등이 설정되어 서비스 서버(110)로 전송될 수 있다. The terminal 120 transmits symbol request data and payload data A to the service server 110 (213). At this time, the symbol request data includes the service type information. In one example, if the sonic communication platform 110 is associated with a payment service, the service type information may indicate " payment ". If the sonic communication platform 110 is associated with an attendance service, the service type information may indicate " attendance ". In addition, if the sonic communication platform 110 is associated with a marketing service, the service type information may indicate " marketing " and if the sonic communication platform 110 is associated with an access management service, . According to the implementation, the service type information may be set to "service A" or "service B" described in the above Table 2 and transmitted to the service server 110.

페이로드 데이터 A는, 예를 들어, URL(Uniform Resource Locator) 정보, 파일, 텍스트, 정적 이미지, 및 동적 이미지 중 어느 하나 또는 이들의 조합을 포함할 수 있다. 또한, 페이로드 데이터 A는 파일, 정적 이미지 또는 동적 이미지의 저장 위치(예를 들어, URL)에 대한 정보를 포함할 수 있다. 출결 관리 서비스의 일례로, 특정 장소(일례로, 강의실) 내의 단말은 페이로드 데이터 A, 즉, 강의 출석 정보(일례로, A학교 B강의실 C교수님 D수업 및 D수업의 시간 정보)를 전송할 수 있다. 이 경우, 후술하겠지만, 학생 단말은 특정 장소의 단말이 출력한 음파를 인식한 음파 인식 결과와 사용자 정보를 서비스 서버로 전송한 후 서비스 서버로부터 출석 인증 정보를 수신할 수 있다. 마케팅 서비스의 일례로, 페이로드 데이터 A는 쿠폰, 쿠폰 다운이 가능한 URL 또는 이벤트 참여가 가능한 URL을 포함할 수 있다. 즉, 제공 단말(일례로, 음파 출력이 가능한 공공장소의 스피커, TV, 스마트폰 또는 PC)은 쿠폰 등을 서비스 서버로 전송할 수 있고, 사용자 단말은 제공 단말이 출력한 음파를 인식한 음파 인식 결과를 서비스 서버로 전송한 후 서비스 서버로부터 쿠폰 등을 수신할 수 있다. The payload data A may include, for example, URL (Uniform Resource Locator) information, a file, text, a static image, and / or a dynamic image. In addition, the payload data A may include information about a storage location (e.g., a URL) of a file, a static image, or a dynamic image. As an example of the attendance management service, a terminal in a specific place (for example, a classroom) can transmit payload data A, i.e., lecture attendance information (for example, A school B classroom C professor D class and D classroom time information) have. In this case, as will be described later, the student terminal can receive the attendance authentication information from the service server after transmitting the sound wave recognition result and the user information, which recognized the sound waves outputted by the terminal of the specific place, to the service server. As an example of a marketing service, the payload data A may include a coupon, a coupon-downable URL, or a URL capable of participating in an event. That is, a providing terminal (e.g., a speaker in a public place where a sound wave can be output, a TV, a smart phone or a PC) can transmit a coupon or the like to the service server, and the user terminal can recognize a sound wave recognition result To the service server and receive a coupon or the like from the service server.

페이로드 데이터는 콘텐츠 데이터로 달리 표현될 수 있다.Payload data may be represented differently as content data.

서비스 서버(110)는 심볼 요청 데이터 내의 서비스 타입 정보에 맞는 음파 프로토콜에 따라 단말(120)에 대응되는 심볼 A를 생성한다(215). 일례로, 서비스 타입 정보가 "결제"를 나타내는 경우, 서비스 서버(110)는 위의 표 1의 "결제"에 해당하는 음파 프로토콜의 심볼 사이즈에 따라 26개의 비트들, 즉, 심볼 A를 생성할 수 있다. 다른 일례로, 서비스 타입 정보가 "출결"을 나타내는 경우, 서비스 서버(110)는 위의 표 1의 "출결"에 해당하는 음파 프로토콜의 심볼 사이즈에 따라 12개의 비트들에 해당하는 심볼 A를 생성할 수 있다. The service server 110 generates a symbol A corresponding to the terminal 120 according to a sound wave protocol corresponding to the service type information in the symbol request data (215). For example, when the service type information indicates " payment ", the service server 110 generates 26 bits, that is, symbol A, according to the symbol size of the sound wave protocol corresponding to the & . The service server 110 generates a symbol A corresponding to 12 bits according to the symbol size of the sound wave protocol corresponding to " outgoing " in Table 1 above can do.

심볼 A는, 예를 들어, 단말(120)의 당해 음파 통신에 고유하게 부여되는 식별자를 나타낼 수 있다. 단말(120)의 음파 통신이 종료되면, 심볼 A의 유효 기간은 만료되는 것으로 볼 수 있다. Symbol A may, for example, represent an identifier uniquely assigned to the acoustic communication of the terminal 120. [ When the sound wave communication of the terminal 120 is terminated, the validity period of the symbol A expires.

서비스 서버(110)는 단말(120)의 심볼 요청이 있을 때마다 다른 심볼을 생성할 수 있다. 달리 표현하면, 서비스 서버(110)는 단말(120)의 심볼 요청이 있을 때 마다 심볼 사이즈만큼의 비트들을 랜덤하게 결정할 수 있다.The service server 110 may generate different symbols each time a symbol request of the terminal 120 is received. In other words, the service server 110 can randomly determine as many bits as the symbol size each time there is a symbol request of the terminal 120. [

서비스 서버(110)는 단말(120)에 대해 심볼 A와 페이로드 데이터 A가 맵핑된 맵핑 정보를 생성한다(216). 서비스 서버(110)에는 단말(120)에 대한 맵핑 정보뿐 아니라 하나 이상의 다른 단말에 대한 맵핑 정보가 저장될 수 있다.The service server 110 generates mapping information in which the symbol A and the payload data A are mapped to the terminal 120 (216). The service server 110 may store mapping information on one or more other terminals as well as mapping information on the terminal 120. [

서비스 서버(110)는 심볼 A를 기초로 음파 데이터를 생성한다(217). 일례로, 서비스 서버(110)는 서비스 타입 정보에 맞는 음파 프로토콜에 따라 심볼 A와 에러정정코드를 포함하는 음파 데이터를 생성할 수 있다. 음파 데이터의 포맷(300)의 일례가 도 3에 도시된다. 도 3에 도시된 예에서, 포맷(300)은 body 필드(321) 및 CRC 필드(322)를 포함할 수 있다. body 필드(321)에 심볼 A가 설정될 수 있고, CRC 필드(322)에 에러정정코드가 설정될 수 있다. 위에서 설명한 것과 같이, 서비스 타입 정보에 따라 심볼 사이즈가 다를 수 있으므로, body 필드(321)의 사이즈도 서비스 타입 정보에 따라 다를 수 있다. 구현에 따라, 포맷(300)은 시작 비트 필드(323)(사이즈=1) 및 종료 비트 필드(324)(사이즈=1)를 포함할 수 있다. The service server 110 generates the sound wave data based on the symbol A (217). For example, the service server 110 may generate the sound wave data including the symbol A and the error correction code according to the sound wave protocol suited to the service type information. An example of a format 300 of sonic data is shown in FIG. In the example shown in FIG. 3, the format 300 may include a body field 321 and a CRC field 322. symbol A may be set in the body field 321 and an error correction code may be set in the CRC field 322. [ As described above, since the symbol size may differ depending on the service type information, the size of the body field 321 may also differ depending on the service type information. Depending on the implementation, the format 300 may include a start bit field 323 (size = 1) and an end bit field 324 (size = 1).

실시예에 따라, 서비스 서버(110)는 보안키를 이용하여 음파 데이터를 암호화할 수 있다. 보다 구체적으로, 서비스 서버(110)는 보안키를 이용하여 body 필드(321)부터 CRC 필드(322) 내에 있는 비트들의 배열을 변경함으로써 음파 데이터를 암호화할 수 있다. 일례로, 도 4a에 도시된 예를 참조하면, 서비스 서버(110)는 보안키를 이용하여 bit 1, bit 2, bit 3, bit 4, CRC 1, CRC 2, CRC 3를 CRC 3, bit 4, bit 3, CRC 2, CRC 1, bit 1, bit 2로 변경 또는 셔플링할 수 있다. According to an embodiment, the service server 110 may encrypt the sound wave data using the secret key. More specifically, the service server 110 may encrypt the sound wave data by changing the arrangement of the bits in the body field 321 to the CRC field 322 using the secret key. 4A, the service server 110 encrypts bit 1, bit 2, bit 3, bit 4, CRC 1, CRC 2, and CRC 3 using CRC 3 and bit 4 , bit 3, CRC 2, CRC 1, bit 1, bit 2 can be changed or shuffled.

서비스 서버(110)는 시작 주파수 정보 및 최소 주파수 간격 정보 중 적어도 하나를 기초로 음파 데이터의 비트들 각각의 주파수 포스트를 설정할 수 있다. 보다 구체적으로, 서비스 서버(110)는 서비스 타입 정보에 맞는 음파 프로토콜 내의 시작 주파수 정보 및 최소 주파수 간격 정보 중 적어도 하나를 기초로 음파 데이터의 비트들 각각의 주파수 포스트를 설정할 수 있다. 이 때, 음파 데이터는 보안키로 암호화된 것일 수 있다. The service server 110 may set the frequency post of each of the bits of the sound wave data based on at least one of the start frequency information and the minimum frequency interval information. More specifically, the service server 110 may set the frequency posts of each of the bits of the sound wave data based on at least one of the start frequency information and the minimum frequency interval information in the sound wave protocol corresponding to the service type information. At this time, the sound wave data may be encrypted with a security key.

일례로, 서비스 타입 정보가 "결제"인 경우, 서비스 서버(110)는 음파 데이터의 첫 번째 비트에 18kHz의 주파수 포스트(또는 시작 주파수)를 설정할 수 있고, 두 번째 비트의 경우 18kHz+50Hz에 해당하는 18.05kHz에 주파수 포스트를 설정할 수 있다. 마찬가지로, 서비스 서버(110)는 음파 데이터의 다른 비트들 각각의 주파수 포스트를 설정할 수 있다. 이 때, 주파수 포스트들 사이의 주파수 간격은 50Hz로 균일할 수 있다.For example, when the service type information is " payment ", the service server 110 can set a frequency post (or a start frequency) of 18 kHz in the first bit of the sound wave data, and corresponds to 18 kHz + 50 Hz You can set the frequency post at 18.05kHz. Likewise, the service server 110 may set the frequency post of each of the other bits of the sound wave data. At this time, the frequency interval between the frequency posts may be uniform to 50 Hz.

다른 일례로, 서비스 타입 정보가 "출결"인 경우, 서비스 서버(110)는 음파 데이터의 첫 번째 비트에 18.5kHz의 주파수 포스트(또는 시작 주파수)를 설정할 수 있고, 두 번째 비트의 경우 18.5kHz+100Hz에 해당하는 18.6kHz에 주파수 포스트를 설정할 수 있다. 마찬가지로, 서비스 서버(110)는 음파 데이터의 다른 비트들 각각의 주파수 포스트를 설정할 수 있다. 이 때, 주파수 포스트들 사이의 주파수 간격은 100Hz로 균일할 수 있다. In another example, if the service type information is " outgoing ", the service server 110 may set a frequency post (or start frequency) of 18.5 kHz to the first bit of the sound wave data, The frequency post can be set at 18.6 kHz corresponding to 100 Hz. Likewise, the service server 110 may set the frequency post of each of the other bits of the sound wave data. At this time, the frequency interval between the frequency posts may be uniform to 100 Hz.

또 다른 일례로, 서비스 타입 정보가 "마케팅"인 경우, 서비스 서버(110)는 음파 데이터의 첫 번째 비트에 19kHz의 주파수 포스트(또는 시작 주파수)를 설정할 수 있고, 두 번째 비트의 경우 19kHz+100Hz에 해당하는 19.1kHz에 주파수 포스트를 설정할 수 있다. 마찬가지로, 서비스 서버(110)는 음파 데이터의 다른 비트들 각각의 주파수 포스트를 설정할 수 있다. 이 때, 주파수 포스트들 사이의 주파수 간격은 100Hz로 균일할 수 있다.As another example, when the service type information is " marketing ", the service server 110 can set a frequency post (or a start frequency) of 19 kHz in the first bit of the sound wave data, and 19 kHz + 100 Hz The frequency post can be set at 19.1 kHz. Likewise, the service server 110 may set the frequency post of each of the other bits of the sound wave data. At this time, the frequency interval between the frequency posts may be uniform to 100 Hz.

또 다른 일례로, 서비스 타입 정보가 "출입"인 경우, 서비스 서버(110)는 음파 데이터의 첫 번째 비트에 19.5kHz의 주파수 포스트(또는 시작 주파수)를 설정할 수 있고, 두 번째 비트의 경우 19.5kHz+50Hz에 해당하는 19.55kHz에 주파수 포스트를 설정할 수 있다. 마찬가지로, 서비스 서버(110)는 음파 데이터의 다른 비트들 각각의 주파수 포스트를 설정할 수 있다. 이 때, 주파수 포스트들 사이의 주파수 간격은 50Hz로 균일할 수 있다.As another example, when the service type information is " outgoing ", the service server 110 can set a frequency post (or start frequency) of 19.5 kHz to the first bit of the sound wave data, You can set the frequency post at 19.55kHz, which corresponds to + 50Hz. Likewise, the service server 110 may set the frequency post of each of the other bits of the sound wave data. At this time, the frequency interval between the frequency posts may be uniform to 50 Hz.

구현에 따라, 서비스 서버(110)는 주파수 간격을 달리하여 음파 데이터의 비트들 각각의 주파수 포스트를 설정할 수 있다. 일례로, 서비스 서버(110)는 음파 데이터의 첫 번째 비트에 18kHz의 주파수 포스트(또는 시작 주파수)를 설정하고 두 번째 비트에는 18kHz+50Hz에 해당하는 18.05kHz의 주파수 포스트를 설정할 수 있으며, 음파 데이터의 세번째 비트에는 18kHz+50Hz+53Hz에 해당하는 18.13kHz의 주파수 포스트를 설정할 수 있고, 음파 데이터의 네번째 비트에는 18kHz+50Hz+53Hz+52Hz에 해당하는 18.65kHz의 주파수 포스트를 설정할 수 있다. 주파수 포스트들 간격이 서로 다를 수 있어, 보안이 보다 향상될 수 있다.Depending on the implementation, the service server 110 may set frequency posts for each of the bits of the sound wave data at different frequency intervals. For example, the service server 110 may set a frequency post (or start frequency) of 18 kHz in the first bit of the sound wave data and a frequency post of 18.05 kHz corresponding to 18 kHz + 50 Hz in the second bit, A frequency post of 18.13 kHz corresponding to 18 kHz + 50 Hz + 53 Hz can be set in the third bit of the sound data, and a frequency post of 18.65 kHz corresponding to 18 kHz + 50 Hz + 53 Hz + 52 Hz can be set in the fourth bit of the sound wave data. The intervals of the frequency posts may be different from each other, so that the security can be further improved.

도 2로 돌아와서, 서비스 서버(110)는 음파 데이터를 단말(120)로 전송한다(218). 이 때, 서비스 서버(110)는 설정된 주파수 포스트에 대한 정보를 단말(120)로 전송할 수 있다. 실시예에 따라, 서비스 서버(110)는 암호화된 음파 데이터를 단말(120)로 전송할 수 있다.Returning to FIG. 2, the service server 110 transmits the sound wave data to the terminal 120 (218). At this time, the service server 110 can transmit information on the set frequency posts to the terminal 120. [ According to an embodiment, the service server 110 may transmit the encrypted sound data to the terminal 120. [

단말(120)은 음파 데이터를 기초로 음파를 생성하고 해당 음파를 출력한다(219). 이 때, 단말(120)는 서비스 서버(110)로부터 수신한 주파수 포스트에 대한 정보를 더 고려하여 음파를 생성할 수 있고, 해당 음파를 출력할 수 있다. 일례로, 단말(120)은 음파 데이터의 비트들 중 비트값 1을 갖는 비트의 주파수 포스트에 음파 톤을 발생시키고, 발생한 음파 톤을 병합하여 멀티 톤 음파를 생성할 수 있으며, 멀티 톤 음파를 출력할 수 있다. 해당 멀티 톤 음파의 일례가 도 4b에 도시된다. The terminal 120 generates a sound wave based on the sound wave data and outputs the sound wave (219). At this time, the terminal 120 can generate a sound wave by considering the information on the frequency post received from the service server 110, and output the sound wave. For example, the terminal 120 may generate a sound tone in a frequency post of a bit having a bit value of 1 among the bits of sound wave data, and may generate a multi-tone sound wave by merging the generated sound wave tones, can do. An example of the multi-tone sound wave is shown in Fig. 4B.

단말(130)은 단말(120)이 출력한 음파를 인식하고(220), 음파 인식 결과를 서비스 서버(110)로 전송한다(221). 일례로, 단말(130)은 멀티 톤 음파를 수신한 경우, 각 음파 톤의 주파수를 식별할 수 있고, 식별된 주파수에는 1을 할당할 수 있다. 이로 인해, 단말(130)은 멀티 톤 음파에 대응되는 비트들을 결정할 수 있다. 그리고, 단말(130)은 단계(212)에서 수신한 보안키를 이용하여 해당 비트들의 배열을 변경할 수 있고, 배열이 변경된 비트들을 기반으로 body와 CRC를 추출할 수 있으며, CRC checksum이 맞는 경우, 배열이 변경된 비트들을 포함하는 음파 인식 결과를 서비스 서버(110)로 전송할 수 있다. 달리 표현하면, 단말(130)은 단말(120)이 출력한 음파를 수신 및 분석할 수 있고, 음파 분석 결과를 서비스 서버(110)로 전송할 수 있다. 만약, CRC checksum이 맞지 않으면, 단말(130)은 음파를 계속 수신 및 분석한다.The terminal 130 recognizes the sound wave output from the terminal 120 (220) and transmits the sound wave recognition result to the service server 110 (221). For example, when the terminal 130 receives a multi-tone sound wave, it can identify the frequency of each sound wave tone and assign 1 to the identified frequency. Accordingly, the terminal 130 can determine the bits corresponding to the multi-tone sound wave. The terminal 130 can change the arrangement of the bits using the security key received in step 212 and extract the body and the CRC based on the changed bits. If the CRC checksum is correct, And transmit the sound wave recognition result including the changed bits to the service server 110. In other words, the terminal 130 can receive and analyze the sound waves output by the terminal 120, and can transmit the sound wave analysis results to the service server 110. If the CRC checksum is not correct, the terminal 130 continues to receive and analyze the sound waves.

단말(130)은 음파 인식 결과를 서비스 서버(110)로 전송하면서 페이로드 데이터 A를 서비스 서버(110)에 요청한다. The terminal 130 transmits the sound wave recognition result to the service server 110 and requests the service server 110 for the payload data A. [

서비스 서버(110)는 단말(130)의 음파 인식 결과의 유효성을 확인한다(222). 일례로, 서비스 서버(110)는 심볼 A의 생성 시점 및 음파 인식 결과의 수신 시점을 기초로 음파 인식 결과의 유효성을 확인할 수 있다. 보다 구체적으로, 서비스 서버(110)는 심볼 A의 생성 시점부터 음파 인식 결과의 수신 시점까지의 경과 시간이 미리 정해진 시간(일례로, 5분) 이내인지 여부를 확인함으로써 음파 인식 결과가 유효한지 여부를 결정할 수 있다. 여기서, 해당 경과 시간이 미리 정해진 시간을 초과하면, 서비스 서버는 단말(130)의 음파 인식 결과가 유효하지 않다고 결정할 수 있고, 페이로드 데이터 A에 대한 단말(130)의 요청을 거절할 수 있다. The service server 110 confirms the validity of the sound wave recognition result of the terminal 130 (222). For example, the service server 110 can check the validity of the sound wave recognition result based on the generation time of the symbol A and the reception time of the sound wave recognition result. More specifically, the service server 110 determines whether the sound wave recognition result is valid by checking whether the elapsed time from the generation point of the symbol A to the reception point of the sound wave recognition result is within a predetermined time (for example, five minutes) Can be determined. Here, if the elapsed time exceeds a predetermined time, the service server can determine that the sound wave recognition result of the terminal 130 is not valid and can reject the request of the terminal 130 for the payload data A.

서비스 서버(110)는 단말(130)의 음파 인식 결과가 유효하면, 음파 인식 결과와 심볼 A가 매칭되는지 확인하고, 음파 인식 결과와 심볼 A가 매칭되면, 심볼 A와 맵핑되어 있는 페이로드 데이터 A를 단말(130)로 전송한다(223). 달리 표현하면, 서비스 서버(110)는 단말(130)의 음파 인식 결과가 유효한 경우, 음파 인식 결과와 매칭되는 심볼을 검색할 수 있고, 심볼 A가 검색되면, 심볼 A와 맵핑되어 있는 페이로드 데이터 A를 단말(130)로 전송할 수 있다. When the sound wave recognition result of the terminal 130 is valid, the service server 110 checks whether the sound wave recognition result and the symbol A are matched. If the sound wave recognition result and the symbol A are matched, the service server 110 transmits the payload data A To the terminal 130 (223). In other words, when the result of the sound wave recognition by the terminal 130 is valid, the service server 110 can search for a symbol matched with the sound wave recognition result, and when the symbol A is found, A to the terminal 130.

단말(130)은 페이로드 데이터 A를 서비스 서버(110)로부터 수신하면, 페이로드 데이터 A를 수신했음을 나타내는 응답 데이터를 서비스 서버(110)로 전송한다(224). Upon receiving the payload data A from the service server 110, the terminal 130 transmits response data indicating that the payload data A has been received to the service server 110 (224).

단말(120)은 단계(219)에서 음파를 출력한 경우, 서비스 서버(110)에 단말(130)이 페이로드 데이터 A를 수신했는지 여부를 일정 시간 간격마다 폴링(polling) 또는 쿼리할 수 있다. 서비스 서버(110)는 단말(130)로부터 응답 데이터를 수신하면, 단말(130)이 페이로드 데이터 A를 수신했음을 나타내는 응답 데이터를 단말(120)로 전송할 수 있다. The terminal 120 may polling or query the service server 110 at a predetermined time interval whether or not the terminal 130 has received the payload data A when the sound wave is output in step 219. [ When the service server 110 receives the response data from the terminal 130, the service server 110 may transmit the response data indicating that the terminal 130 has received the payload data A to the terminal 120.

도 5 및 도 6은 일 실시예에 따른 음파 통신 플랫폼의 동작의 다른 일례를 설명하기 위한 도면이다. 5 and 6 are views for explaining another example of the operation of the sound wave communication platform according to one embodiment.

도 5를 참조하면, 서비스 서버(110)는 음파 데이터를 생성하고 주파수 포스트를 설정한 경우, 음파 톤이 발생할 위치를 결정하고, 결정된 음파 톤 위치를 단말(120)로 전송할 수 있다. 해당 실시예의 경우, 서비스 서버(110)는 음파 데이터 및 설정된 주파수 포스트에 대한 정보를 단말(120)로 전송하지 않을 수 있다. 일례로, 서비스 서버(110)는 주파수 간격 정보 100Hz, 시작 주파수 정보 18.5kHz, 및 음파 데이터 "10...1"를 기초로 해당 음파 데이터의 비트들 각각의 주파수 포스트를 설정할 수 있고, 설정된 주파수 포스트들 18.5kHz, 18.6kHz, ... , 21.5kHz 중에서 비트값 "1"을 갖는 비트의 주파수 포스트를 식별할 수 있다. 서비스 서버(110)는 식별된 주파수 포스트를 음파 톤 발생 위치로 결정할 수 있고, 결정된 음파 톤 발생 위치를 단말(120)로 전송할 수 있다. 단말(120)은 결정된 음파 톤 위치에 음파 톤을 발생시켜 멀티 톤 음파를 생성하고, 해당 멀티 톤 음파를 출력할 수 있다. Referring to FIG. 5, when the service server 110 generates the sound wave data and sets the frequency post, the service server 110 may determine the position where the sound wave tone occurs and transmit the determined sound wave tone position to the terminal 120. In this embodiment, the service server 110 may not transmit the information about the sound wave data and the set frequency post to the terminal 120. For example, the service server 110 can set the frequency post of each of the bits of the sound wave data based on the frequency interval information 100 Hz, the start frequency information 18.5 kHz, and the sound wave data " 10 ... 1 & Posts can identify frequency posts of bits having a bit value " 1 " among 18.5 kHz, 18.6 kHz, ..., 21.5 kHz. The service server 110 may determine the identified frequency post as the sound wave tone generating position and transmit the determined sound wave tone generating position to the terminal 120. [ The terminal 120 generates a multi-tone sound wave by generating an acoustic wave tone at the determined sound wave tone position, and outputs the multi-tone sound wave.

도 6을 통해 설명할 예는 서비스 서버(110)가 재생 파일을 생성하여 단말(120)로 전송하는 경우이다. 재생 파일은 음파 파일로 달리 표현될 수 있다.6 is a case in which the service server 110 generates a reproduction file and transmits the reproduction file to the terminal 120. FIG. The playback file can be represented differently as a sound wave file.

도 6을 참조하면, 서비스 서버(110)는 서비스 타입 정보에 해당하는 주파수 간격 정보 및 시작 주파수 정보를 기초로 음파 데이터의 비트들 각각의 주파수 포스트(611 내지 614)를 결정할 수 있다(610). Referring to FIG. 6, the service server 110 may determine frequency posts 611 to 614 of the bits of the sound data based on the frequency interval information and the start frequency information corresponding to the service type information (610).

서비스 서버(110)는 음파 데이터의 비트들 중 제1 비트의 주파수 포스트에 음파 톤을 생성할 수 있다(620).The service server 110 may generate an acoustic tone at the frequency post of the first of the bits of the sound wave data (620).

서비스 서버(110)는 생성된 음파 톤을 병합하여 멀티 톤 음파를 생성할 수 있다(630).The service server 110 may generate the multi-tone sound wave by merging the generated sound wave tones (630).

서비스 서버(110)는 멀티 톤 음파를 레코딩한 재생 파일을 생성할 수 있다(640). 재생 파일은, 예를 들어, 확장자가 wav인 파일일 수 있다. 재생 파일은 이에 제한되지 않는다.The service server 110 may generate a playback file that has recorded multi-tone sound waves (640). The playback file may be, for example, a file having an extension of wav. The playback file is not limited thereto.

서비스 서버(110)는 재생 파일을 단말(120)로 전송할 수 있다. 단말(120)은 재생 파일을 플레이함으로써 단계(620)에서의 파형과 같은 멀티 톤 음파를 출력할 수 있다.The service server 110 may transmit the playback file to the terminal 120. [ Terminal 120 may output multi-tone sound waves such as the waveform in step 620 by playing the playback file.

실시예에 따라, 서비스 서버(110)는 재생 파일을 단말(120)로 전송하는 대신에 재생 파일의 위치 정보를 단말(120)로 전송할 수 있다. 재생 파일의 위치 정보는, 예를 들어, URL을 포함할 수 있다. 단말(120)는 재생 파일의 위치 정보를 수신하면, 해당 위치 정보에 액세스하여 재생 파일을 플레이할 수 있다. The service server 110 may transmit the location information of the playback file to the terminal 120 instead of transmitting the playback file to the terminal 120. [ The location information of the reproduction file may include, for example, a URL. When the terminal 120 receives the location information of the playback file, it can access the location information and play the playback file.

다른 실시예에 따라, 서비스 서버(110)는 단말(120)이 재생 파일을 생성하는데 필요한 정보를 단말(120)로 전송할 수 있다. 이러한 정보에는 전술한 음파 데이터, 주파수 간격 정보, 시작 주파수 정보, 샘플링 레이트, 및 볼륨 정보 중 어느 하나 또는 이들의 조합이 포함될 수 있다. 단말(120)은 해당 정보를 이용하여 재생 파일을 생성할 수 있고, 플레이할 수 있다.According to another embodiment, the service server 110 may transmit to the terminal 120 information necessary for the terminal 120 to generate a playback file. This information may include any one or a combination of the sound wave data, frequency interval information, start frequency information, sampling rate, and volume information described above. The terminal 120 can generate and play a playback file using the information.

<음파 데이터의 크기가 큰 경우>&Lt; Case where the size of the sound wave data is large >

도 7 내지 도 8은 일 실시예에 따른 음파 통신 플랫폼의 음파 데이터의 크기 큰 경우를 설명하기 위한 도면이다.7 to 8 are views for explaining a case where the size of the sound wave data of the sound wave communication platform according to the embodiment is large.

실시예에 따라, 서비스 서버(110)는 표 1을 통해 설명한 심볼 사이즈를 초과하는 심볼을 생성할 수 있다. 이는 음파 데이터가 특정 사이즈(예를 들어, 64 비트)를 초과하는 결과를 낳게 된다. 음파 데이터의 전체 사이즈가 특정 사이즈를 초과하면, 하나의 멀티 톤 음파로 해당 음파 데이터를 단말(130)로 전송하기 어려울 수 있다. 이 경우, 서비스 서버(110)는 음파 데이터 세트를 생성하여 단말(120)로 전송할 수 있다. 이하, 서비스 서버(110)가 음파 데이터 세트를 어떻게 생성하는지에 대해 설명한다. According to an embodiment, the service server 110 may generate symbols exceeding the symbol size described in Table 1. This results in sonic data exceeding a certain size (e.g., 64 bits). If the total size of the sound wave data exceeds a specific size, it may be difficult to transmit the sound wave data to the terminal 130 with one multi-tone sound wave. In this case, the service server 110 may generate a sound wave data set and transmit it to the terminal 120. Hereinafter, how the service server 110 generates a sound wave data set will be described.

일 실시예에 있어서, 서비스 서버(110)가 예를 들어 96 비트 심볼을 생성한 경우, body 필드의 크기 24 비트를 고려하여 96 비트 심볼을 4개의 24 비트 심볼로 분할할 수 있다. 즉, 4개의 분할 심볼들이 생성될 수 있다. In one embodiment, when the service server 110 generates, for example, a 96-bit symbol, the 96-bit symbol may be divided into four 24-bit symbols in consideration of the 24-bit size of the body field. That is, four divided symbols can be generated.

서비스 서버(110)는 아래 표 3의 각 필드에 값을 설정함으로써, 도 7에 도시된 음파 데이터들(710 내지 760), 즉, 음파 데이터 세트를 생성할 수 있다. The service server 110 can generate the sound wave data 710 to 760, that is, the sound wave data set shown in FIG. 7, by setting values in the respective fields of Table 3 below.

필드field 설명Explanation TypeType 필드 크기 2비트.
음파 데이터의 종류를 나타냄.
00: 시작 음파 데이터
01: 분할 심볼이 포함된 음파 데이터
10: 마지막 음파 데이터
Field size 2 bits.
Represents the kind of sound wave data.
00: Start sound wave data
01: Sound wave data including divided symbols
10: Last sound wave data
sequencesequence 필드 크기 4비트.
type이 00 또는 10이면, type이 01로 설정되는 음파 데이터의 개수를 나타냄.
type이 01이면, type이 01로 설정된 음파 데이터들 중에서의 전송 순서를 나타냄. 첫 번째로 전송되면, 0000으로 설정됨.
Field size 4 bits.
If type is 00 or 10, it indicates the number of sound waves whose type is set to 01.
If the type is 01, it represents the transmission order among the sound wave data whose type is set to 01. When first transmitted, it is set to 0000.
CRCCRC 필드 크기 8비트.
분할 심볼의 에러정정코드가 설정됨.
Field size 8 bits.
The error correction code of the division symbol is set.
BodyBody 필드 크기 24비트.
분할 심볼이 설정됨.
Field size 24 bits.
Split symbol is set.
BlankBlank 필드 크기 32비트.
type이00 또는 10이면, 32개 0이 설정됨.
32-bit field size.
If type is 00 or 10, 32 zeros are set.

아래 표 4는 음파 데이터들(710 내지 760)의 일례를 보여준다.Table 4 below shows an example of the sound wave data 710 to 760.

음파 데이터(710): type=00, sequence=0100, blank=32개 0
음파 데이터(720): type=01, sequence=0000, CRC=8비트, body=분할 심볼 1
음파 데이터(730): type=01, sequence=0001, CRC=8비트, body=분할 심볼 2
음파 데이터(740): type=01, sequence=0010, CRC=8비트, body=분할 심볼 3
음파 데이터(750): type=01, sequence=0011, CRC=8비트, body=분할 심볼 4
음파 데이터(760): type=10, sequence=0100, blank=32개 0
Sound wave data 710: type = 00, sequence = 0100, blank = 32 0
Sound wave data 720: type = 01, sequence = 0000, CRC = 8 bits, body = division symbol 1
Sound wave data 730: type = 01, sequence = 0001, CRC = 8 bits, body = split symbol 2
Sound wave data 740: type = 01, sequence = 0010, CRC = 8 bits, body = division symbol 3
Sound wave data 750: type = 01, sequence = 0011, CRC = 8 bits, body = division symbol 4
Sound wave data 760: type = 10, sequence = 0100, blank = 32 0

음파 데이터(720)의 경우, type=01인 음파 데이터들(720 내지 750) 중 첫 번째로 단말(120)에게 전송되므로, sequence 필드에는 0000이 설정되어 있다. 음파 데이터(730)의 경우, type=01인 음파 데이터들(720 내지 750) 중 두 번째로 단말(120)에게 전송되므로, sequence 필드에는 0001이 설정되어 있다. 음파 데이터(740)의 경우, type=01인 음파 데이터들(720 내지 750) 중 세 번째로 단말(120)에게 전송되므로, sequence 필드에는 0010이 설정되어 있고, 음파 데이터(750)의 경우, type=01인 음파 데이터들(720 내지 750) 중 네 번째로 단말(120)에게 전송되므로, sequence 필드에는 0011이 설정되어 있다.In the case of the sound wave data 720, since the sound wave data 720 to 750 of type = 01 is transmitted first to the terminal 120, 0000 is set in the sequence field. In the case of the sound wave data 730, since the sound wave data 720 to 750 having type = 01 is transmitted to the terminal 120 secondly, 0001 is set in the sequence field. In the case of the sound wave data 740, 0010 is set in the sequence field since the sound wave data 720 to 750 having the type = 01 is transmitted to the terminal 120 for the third time. In the case of the sound wave data 750, = 01 is transmitted to the terminal 120 as the fourth of the sound wave data 720 to 750, so that the sequence field is set to 0011.

type이 01로 설정되어 있는 음파 데이터는 4개이므로, 음파 데이터(710) 및 음파 데이터(760) 각각의 sequence 필드에는 0100이 설정되어 있다.0100 is set in the sequence field of each of the sound wave data 710 and sound wave data 760 because four types of sound wave data whose type is 01 are set.

구현에 따라, 음파 데이터들(710 내지 760) 각각에는 시작 비트 필드(Start) 및 종료 비트 필드(End)가 더 포함될 수 있다. 이 경우, 시작 비트 필드(Start) 및 종료 비트 필드(End) 각각은 1로 bias될 수 있다. According to the implementation, each of the sound wave data 710 to 760 may further include a start bit field (Start) and an end bit field (End). In this case, each of the start bit field (Start) and the end bit field (End) may be biased to one.

다른 실시예에 있어서, 서비스 서버(110)는 아래 표 5의 각 필드에 값을 설정함으로써, 도 8에 도시된 음파 데이터들(810 내지 840), 즉, 음파 데이터 세트를 생성할 수 있다. In another embodiment, the service server 110 may generate the sound wave data 810 to 840, that is, the sound wave data sets shown in FIG. 8, by setting values in the respective fields of Table 5 below.

필드field 설명Explanation typetype 필드 크기 2비트.
음파 데이터의 종류를 나타냄.
00: 시작 음파 데이터
01: 중간 음파 데이터
10: 마지막 음파 데이터
Field size 2 bits.
Represents the kind of sound wave data.
00: Start sound wave data
01: Medium sound wave data
10: Last sound wave data
sequencesequence 필드 크기 4비트.
음파 데이터의 전송 순서를 나타냄. 첫 번째로 전송되면, 0000이 설정됨.
Field size 4 bits.
Describes the transmission order of sound wave data. When it is transmitted first, 0000 is set.
CRCCRC 필드 크기 8비트.
분할 심볼의 에러정정코드가 설정됨.
Field size 8 bits.
The error correction code of the division symbol is set.
bodybody 필드 크기 24비트.
분할 심볼이 설정됨.
Field size 24 bits.
Split symbol is set.

아래 표 6은 음파 데이터들(810 내지 840)의 일례를 보여준다.Table 6 below shows an example of the sound wave data 810 to 840.

음파 데이터(810): type=00, sequence=0000, CRC=8비트, body=분할 심볼 1
음파 데이터(820): type=01, sequence=0001, CRC=8비트, body=분할 심볼 2
음파 데이터(830): type=01, sequence=0010, CRC=8비트, body=분할 심볼 3
음파 데이터(840): type=10, sequence=0011, CRC=8비트, body=분할 심볼 4
Sound wave data 810: type = 00, sequence = 0000, CRC = 8 bits, body = division symbol 1
Sound wave data 820: type = 01, sequence = 0001, CRC = 8 bits, body = division symbol 2
Sound wave data 830: type = 01, sequence = 0010, CRC = 8 bits, body = split symbol 3
Sound wave data 840: type = 10, sequence = 0011, CRC = 8 bits, body = division symbol 4

음파 데이터(810)의 경우, 음파 데이터 세트의 시작 데이터이므로, type 필드에는 00이 설정되어 있고, 첫 번째로 전송되므로, sequence 필드에는 0000이 설정되어 있다. In the case of the sound wave data 810, 00 is set in the type field because it is the start data of the sound wave data set, and 0000 is set in the sequence field since it is transmitted first.

음파 데이터(840)의 경우, 음파 데이터 세트의 마지막 데이터이므로, type 필드에는 10이 설정되어 있고, 네 번째로 전송되므로, sequence 필드에는 0011이 설정되어 있다. In the case of the sound wave data 840, since it is the last data of the sound wave data set, the type field is set to 10, and the fourth field is transmitted.

구현에 따라, 음파 데이터들(810 내지 840) 각각에는 시작 비트 필드(Start) 및 종료 비트 필드(End)가 더 포함될 수 있다. 이 경우, 시작 비트 필드(Start) 및 종료 비트 필드(End) 각각은 1로 bias될 수 있다. According to the implementation, each of the sound wave data 810 to 840 may further include a start bit field (Start) and an end bit field (End). In this case, each of the start bit field (Start) and the end bit field (End) may be biased to one.

서비스 서버(110)는 도 7 또는 도 8의 음파 데이터 세트를 단말(120)로 전송할 수 있다. 단말(120)은 음파 데이터 세트 내의 음파 데이터들 각각에 대응되는 멀티 톤 음파를 생성하여 출력할 수 있다. 일례로, 단말(120)은 음파 데이터들(710 내지 760) 각각에 대응되는 멀티 톤 음파를 생성할 수 있다. 달리 표현하면, 단말(120)은 음파 데이터들(710 내지 760)에 대응되는 멀티 톤 음파 세트를 생성할 수 있다. 단말(120)은 음파 데이터(710)에 대응되는 멀티 톤 음파부터 출력한 뒤 음파 데이터들(720 내지 760) 각각에 대응되는 멀티 톤 음파를 순차적으로 출력할 수 있다. 이 때, 멀티 톤 음파와 다음에 출력되는 멀티 톤 음파 사이의 시간 가격은 200ms일 수 있다.The service server 110 may transmit the sound wave data sets of FIG. 7 or FIG. 8 to the terminal 120. The terminal 120 may generate and output a multi-tone sound wave corresponding to each of the sound wave data in the sound wave data set. For example, the terminal 120 may generate multi-tone sound waves corresponding to the sound wave data 710 to 760, respectively. In other words, the terminal 120 may generate a multi-tone sound wave set corresponding to the sound wave data 710 to 760. The terminal 120 may output multi-tone sound waves corresponding to the sound wave data 710 and then sequentially output multi-tone sound waves corresponding to the sound wave data 720 to 760, respectively. At this time, the time price between the multi-tone sound wave and the next multi-tone sound wave may be 200 ms.

실시예에 따라, 서비스 서버(110)는 음파 데이터 세트를 생성한 경우, 도 5를 통해 설명한 예에 따라 동작할 수 있다. 다른 실시예에 따라, 서비스 서버(110)는 음파 데이터 세트를 생성한 경우, 도 6을 통해 설명한 예에 따라 음파 데이터 세트에 대응되는 재생 파일을 생성하여 단말(120)로 전송할 수 있다. 또는, 서비스 서버(110)는 해당 재생 파일의 위치 정보를 단말(120)로 전송하거나 단말(120)이 재생 파일을 생성하는데 필요한 정보를 단말(120)로 전송할 수 있다. According to the embodiment, when the service server 110 generates the sound wave data set, it can operate according to the example described with reference to FIG. According to another embodiment, when the service server 110 generates a sound wave data set, the service server 110 may generate a reproduction file corresponding to the sound wave data set and transmit the reproduction file to the terminal 120 according to the example described with reference to FIG. Alternatively, the service server 110 may transmit the location information of the corresponding playback file to the terminal 120, or may transmit information necessary for the terminal 120 to generate the playback file to the terminal 120.

도 1 내지 도 6을 통해 기술된 사항들은 도 7을 통해 기술된 사항들에 적용될 수 있으므로, 상세한 설명을 생략한다.1 to 6 can be applied to the matters described with reference to FIG. 7, and thus detailed description thereof will be omitted.

<음파 통신 플랫폼-단방향 음파 기반의 양방향 정보 전송><Acoustic communication platform - Two-way information transmission based on unidirectional sound wave>

도 9는 일 실시예에 따른 음파 통신 플랫폼의 다른 일례를 설명하기 위한 도면이다.9 is a view for explaining another example of a sound wave communication platform according to an embodiment.

도 9를 참조하면, 단말(130)은 음파 인식 결과, 페이로드 데이터 B, 및 페이로드 요청 데이터를 서비스 서버(110)로 전송한다(910). 달리 표현하면, 단말(130)은 음파 인식 결과를 전송하면서 페이로드 데이터 A를 서비스 서버(110)에 요청할 수 있고, 이와 동시에 자신의 페이로드 데이터 B를 서비스 서버(110)로 전송할 수 있다.9, the terminal 130 transmits the sound wave recognition result, payload data B, and payload request data to the service server 110 (910). In other words, the terminal 130 can transmit the payload data A to the service server 110 while simultaneously transmitting the payload data B to the service server 110.

서비스 서버(110)는 음파 인식 결과의 유효성을 확인한다(222).The service server 110 confirms the validity of the sound wave recognition result (222).

서비스 서버(110)는 음파 인식 결과가 유효하면, 심볼 A, 페이로드 데이터 A, 및 페이로드 데이터 B를 맵핑한다(911). 달리 표현하면, 서비스 서버(110)는 음파 인식 결과가 유효하면, 단계(216)에서 생성된 맵핑 정보에 페이로드 데이터 B를 맵핑하여 추가 맵핑 정보를 생성할 수 있다. 이 때, 추가 맵핑 정보는 단말(120) 및 단말(130) 모두에 대한 것이다.When the result of the sound wave recognition is valid, the service server 110 maps symbol A, payload data A, and payload data B (911). In other words, if the sound wave recognition result is valid, the service server 110 may generate additional mapping information by mapping the payload data B to the mapping information generated in step 216. [ At this time, the additional mapping information is for both the terminal 120 and the terminal 130.

서비스 서버(110)는 음파 인식 결과와 심볼 A가 매칭되는지 확인하고, 음파 인식 결과와 심볼 A가 매칭되면, 심볼 A와 맵핑되어 있는 페이로드 데이터 A를 단말(130)로 전송한다.The service server 110 transmits the payload data A mapped to the symbol A to the terminal 130 when the result of the sound wave matches the symbol A and the symbol A is matched.

서비스 서버(110)는 단말(120)로부터 페이로드 요청 데이터를 수신한다. 다시 말해, 단말(120)은 페이로드 데이터 B를 서비스 서버(110)로 요청한다. 이러한 요청이 있는 경우, 서비스 서버(110)는 단계(911)에서 생성된 추가 맵핑 정보를 기초로 페이로드 데이터 B를 단말(120)로 전송한다. The service server 110 receives the payload request data from the terminal 120. In other words, the terminal 120 requests the payload data B to the service server 110. If there is such a request, the service server 110 transmits the payload data B to the terminal 120 based on the additional mapping information generated in step 911.

도 1 내지 도 8을 통해 기술된 사항들은 도 9를 통해 기술된 사항들에 적용될 수 있으므로, 상세한 설명을 생략한다.1 through 8 can be applied to the matters described with reference to FIG. 9, so that a detailed description will be omitted.

<음파 통신 플랫폼-양방향 음파 기반의 양방향 정보 전송><Acoustic communication platform - Bi-directional information transmission based on bi-directional sound wave>

도 10 내지 도 11은 일 실시예에 따른 음파 통신 플랫폼의 또 다른 일례를 설명하기 위한 도면이다.10 to 11 are views for explaining another example of a sound wave communication platform according to an embodiment.

도 10을 참조하면, 단말들(120 및 130) 모두가 음파를 출력한다. 다시 말해, 단말(120)에서 단말(130)로 향하는 음파 통신뿐 아니라 단말(130)에서 단말(120)로 향하는 음파 통신도 가능할 수 있다. 도 10에 도시된 예의 음파 통신 플랫폼이 어떻게 동작하는지 도 11을 참조하면서 설명한다.Referring to FIG. 10, both of the terminals 120 and 130 output sound waves. In other words, not only the acoustic wave communication from the terminal 120 to the terminal 130 but also the sound wave communication from the terminal 130 to the terminal 120 may be possible. How the acoustic communication platform of the example shown in Fig. 10 operates will be described with reference to Fig.

도 11을 참조하면, 서비스 서버(110)는 보안키를 관리한다(1110). 보안키에 대해선 전술하였으므로, 상세한 설명을 생략한다.Referring to FIG. 11, the service server 110 manages a security key (1110). Since the security key has been described above, detailed description will be omitted.

단말(120)은 서비스 서버(110)에 보안키를 요청하고(1111), 서비스 서버(110)는 보안키를 단말(120)로 전송한다(1112).The terminal 120 requests the service server 110 for a security key 1111 and the service server 110 transmits the security key to the terminal 120 in operation 1112.

단말(130)은 서비스 서버(110)에 보안키를 요청하고(1113), 서비스 서버(110)는 보안키를 단말(130)로 전송한다(1114).The terminal 130 requests the service server 110 for the security key 1113 and the service server 110 transmits the security key to the terminal 130 at step 1114.

단말(120)은 자신이 보유하고 있는 정보 A 및 보안키를 기초로 음파 데이터를 생성한다(1115). 정보 A는, 예를 들어, 텍스트, 정적 이미지, 동적 이미지, 또는 URL 등에 해당할 수 있다. 단계(1115)에서의 음파 데이터 생성은 전술한 서비스 서버(110)의 음파 데이터 생성 방식이 적용될 수 있으므로, 상세한 설명을 생략한다. 구현에 따라, 단계(1115)에서 단말(120)은 재생 파일을 생성하여 플레이할 수 있다.The terminal 120 generates the sound wave data based on the information A and the security key held by the terminal 120 (1115). The information A may correspond to, for example, text, a static image, a dynamic image, or a URL. Since the sound wave data generation method of the service server 110 described above can be applied to the generation of the sound wave data in step 1115, a detailed description will be omitted. Depending on the implementation, the terminal 120 may generate and play the playback file in step 1115.

단말(120)은 음파 데이터를 기초로 음파를 생성하여 출력한다(1116). 단계(1116)의 음파 출력 방식은 전술한 음파 출력 방식이 적용될 수 있으므로, 상세한 설명을 생략한다.The terminal 120 generates and outputs a sound wave based on the sound wave data (1116). Since the sound wave output method of the step 1116 can be applied to the sound wave output method described above, a detailed description will be omitted.

단말(130)은 단말(120)이 출력한 음파를 인식하고(1117), 정보 A를 획득한다(1118). 일례로, 단말(130)은 해당 음파에 대응되는 비트들을 결정할 수 있고, 결정된 비트들을 보안키를 이용하여 셔플링할 수 있으며, 셔플링된 비트들로부터 정보 A를 추출할 수 있다. The terminal 130 recognizes the sound waves output by the terminal 120 (1117) and acquires the information A (1118). For example, the terminal 130 can determine the bits corresponding to the sound wave, shuffle the determined bits using the secret key, and extract the information A from the shuffled bits.

단말(130)은 자신이 보유하고 있는 정보 B 및 보안키를 기초로 음파 데이터를 생성한다(1119). 정보 B는, 예를 들어, 텍스트, 정적 이미지, 동적 이미지, 또는 URL 등에 해당할 수 있다. 단계(1119)에서의 음파 데이터 생성은 전술한 서비스 서버(110)의 음파 데이터 생성 방식이 적용될 수 있으므로, 상세한 설명을 생략한다. 구현에 따라, 단계(1119)에서 단말(130)은 재생 파일을 생성하여 플레이할 수 있다.The terminal 130 generates the sound wave data based on the information B and the security key held by the terminal 130 (1119). The information B may correspond to, for example, text, a static image, a dynamic image, or a URL. Since the sound wave data generation method of the service server 110 described above can be applied to the generation of the sound wave data in step 1119, a detailed description will be omitted. Depending on the implementation, in step 1119 the terminal 130 may generate and play a playback file.

단말(130)은 음파 데이터를 기초로 음파를 생성하여 출력한다(1120).The terminal 130 generates and outputs a sound wave based on the sound wave data (1120).

단말(120)은 단말(130)이 출력한 음파를 인식하고(1121), 정보 B를 획득한다(1122). 일례로, 단말(120)은 해당 음파에 대응되는 비트들을 결정할 수 있고, 결정된 비트들을 보안키를 이용하여 셔플링할 수 있으며, 셔플링된 비트들로부터 정보 B를 추출할 수 있다.The terminal 120 recognizes the sound waves output by the terminal 130 (1121) and acquires the information B (1122). For example, the terminal 120 can determine the bits corresponding to the sound wave, shuffle the determined bits using the secret key, and extract the information B from the shuffled bits.

도 10 내지 도 11을 통해 설명한 음파 통신 플랫폼에 기초하면, 단말(120)과 단말(130) 사이의 다이렉트 통신이 가능할 수 있다.Based on the sound wave communication platform described with reference to FIGS. 10 to 11, direct communication between the terminal 120 and the terminal 130 may be possible.

도 1 내지 도 9를 통해 기술된 사항들은 도 10 내지 도 11을 통해 기술된 사항들에 적용될 수 있으므로, 상세한 설명을 생략한다.1 through 9 can be applied to the matters described with reference to FIGS. 10 through 11, detailed description thereof will be omitted.

도 12는 일 실시예에 따른 음파 통신 플랫폼의 서비스 서버를 설명하기 위한 블록도이다.12 is a block diagram illustrating a service server of an acoustic communication platform according to an exemplary embodiment of the present invention.

도 12를 참조하면, 서비스 서버(110)는 통신 인터페이스(1210) 및 컨트롤러(1220)를 포함한다.Referring to FIG. 12, the service server 110 includes a communication interface 1210 and a controller 1220.

통신 인터페이스(1210)는 유선 통신 또는 무선 통신이 가능하다.The communication interface 1210 is capable of wired communication or wireless communication.

컨트롤러(1220)는 통신 인터페이스(1210)와 커플링된다. 통신 인터페이스(1210)와 컨트롤러(1220)는 음파 통신 플랫폼(100) 상에서 특정 서비스를 구현하기 위해 아래와 같이 동작할 수 있다.Controller 1220 is coupled to communication interface 1210. The communication interface 1210 and the controller 1220 may operate as follows to implement a specific service on the acoustic communication platform 100.

컨트롤러(1220)는 통신 인터페이스(1210)를 통해 단말에게 보안키를 전송하고 다른 단말로부터 서비스 타입 정보를 포함하는 심볼 요청 데이터와 페이로드 데이터를 수신한다.The controller 1220 transmits the security key to the terminal through the communication interface 1210 and receives the symbol request data and the payload data including the service type information from the other terminal.

컨트롤러(1220)는 서비스 타입 정보를 기초로 결정된 사이즈에 따라 다른 단말에 대응되는 심볼을 생성한다.The controller 1220 generates a symbol corresponding to another terminal according to the size determined based on the service type information.

컨트롤러(1220)는 다른 단말에 대해 페이로드 데이터와 생성된 심볼이 맵핑된 맵핑 정보를 생성한다.The controller 1220 generates mapping information in which payload data and generated symbols are mapped to other terminals.

컨트롤러(1220)는 생성된 심볼을 기초로 다른 단말의 음파 출력을 위한 음파 데이터를 생성한다. 음파 데이터는, 예를 들어, 생성된 심볼 및 에러정정코드를 포함할 수 있다. 또한, 음파 데이터는 보안키를 기초로 암호화될 수 있다. The controller 1220 generates sound wave data for sound wave output of the other terminal based on the generated symbols. The sound wave data may include, for example, generated symbols and error correction codes. Further, the sound wave data can be encrypted based on the security key.

컨트롤러(1220)는 생성된 음파 데이터를 통신 인터페이스(1210)를 통해 다른 단말로 전송한다. The controller 1220 transmits the generated sound wave data to the other terminal through the communication interface 1210.

컨트롤러(1220)는 통신 인터페이스(1210)를 통해 단말로부터 보안키와 음파를 기초로 생성된 음파 인식 결과 및 페이로드 요청 데이터를 수신한다. 여기서, 음파는 다른 단말이 서비스 서버(110)로부터 수신한 데이터를 기초로 출력한 것이다.The controller 1220 receives the sound wave recognition result and the payload request data generated based on the security key and the sound wave from the terminal through the communication interface 1210. Here, the sound wave is output based on data received from the service server 110 by another terminal.

컨트롤러(1220)는 음파 인식 결과와 생성된 심볼이 매칭되는지 확인하고, 음파 인식 결과와 생성된 심볼이 매칭되는 경우, 맵핑 정보를 기초로 페이로드 데이터를 통신 인터페이스(1210)를 통해 단말로 전송한다. The controller 1220 checks whether the result of the sound wave recognition matches the generated symbol, and if the result of the sound wave matches the generated symbol, the controller 1220 transmits the payload data to the terminal through the communication interface 1210 based on the mapping information .

도 1 내지 도 11을 통해 기술된 사항들은 도 12를 통해 기술된 사항들에 적용될 수 있으므로, 상세한 설명을 생략한다.Since the matters described with reference to Figs. 1 to 11 can be applied to the matters described with reference to Fig. 12, detailed description will be omitted.

<음파 통신 플랫폼의 적용례><Application example of sound wave communication platform>

위에서 설명한 것과 같이, 일 실시예에 따른 음파 통신 플랫폼은 다양한 서비스에 적용될 수 있다. 일례로, 출결 서비스에 음파 통신 플랫폼이 적용되었을 때를 설명한다.As described above, the sound wave communication platform according to one embodiment can be applied to various services. As an example, we describe when a sonic communications platform is applied to attendance services.

단말(120)은 강의 장소에 설치된 단말에 해당할 수 있고, 단말(130)은 강의 장소에서 강의를 듣는 참석자의 단말에 해당할 수 있다. 단말(130)에는 출석 체크를 위한 어플리케이션이 설치될 수 있다. The terminal 120 may correspond to a terminal installed at a lecture site, and the terminal 130 may correspond to a terminal of a participant listening to lectures at a lecture site. The terminal 130 may be provided with an application for attendance check.

단말(120)은 강의 장소의 출석 인증 정보를 페이로드 데이터로서 서비스 서버(110)로 전송한 뒤 서비스 서버(110)로부터 음파 데이터를 수신하여 음파를 출력할 수 있다. 출석 인증 정보는 해당 강의 장소의 위치 정보(예를 들어, A 학교의 B 강의실), 강의자 정보(예를 들어, 교수 이름), 및 수업 정보(예를 들어, 수업 이름 및 수업 시간) 중 적어도 하나를 포함할 수 있다. 단말(130)은 해당 음파를 인식한 음파 인식 결과 및 단말(130)의 사용자 정보를 서비스 서버(110)로 전송할 수 있다.The terminal 120 can transmit the attendance authentication information of the lecture place to the service server 110 as the payload data, receive the sound wave data from the service server 110, and output sound waves. Attendance authentication information includes at least one of location information of the lecture site (for example, the B classroom of the A school), lecture information (e.g., a professor name), and lecture information (e.g., . &Lt; / RTI &gt; The terminal 130 can transmit the sound wave recognition result of recognizing the sound wave and the user information of the terminal 130 to the service server 110.

서비스 서버(110)는 음파 인식 결과가 단말(120)에 대응되는 심볼에 매칭되면, 단말(130)의 사용자가 강의 장소에 출석했다고 결정할 수 있고, 출석 인증 정보 또는 출석 확인 정보를 단말(130)로 전송할 수 있다. 단말(130)은 출석 인증 정보 또는 출석 확인 정보를 기초로 사용자가 강의에 출석하였다고 체크할 수 있다.The service server 110 can determine that the user of the terminal 130 is present at the lecture location and send the attendance authentication information or the attendance confirmation information to the terminal 130 when the sound wave recognition result matches the symbol corresponding to the terminal 120. [ Lt; / RTI &gt; The terminal 130 can check that the user is present in the lecture based on attendance authentication information or attendance confirmation information.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components. For example, the apparatus and components described in the embodiments may be implemented within a computer system, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA) , A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For ease of understanding, the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may have a plurality of processing elements and / As shown in FIG. For example, the processing unit may comprise a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as a parallel processor.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of the foregoing, and may be configured to configure the processing device to operate as desired or to process it collectively or collectively Device can be commanded. The software and / or data may be in the form of any type of machine, component, physical device, virtual equipment, computer storage media, or device , Or may be permanently or temporarily embodied in a transmitted signal wave. The software may be distributed over a networked computer system and stored or executed in a distributed manner. The software and data may be stored on one or more computer readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI &gt; or equivalents, even if it is replaced or replaced.

그러므로, 다른 구현들, 다른 실시예들 및 청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

Claims (20)

서비스 서버의 동작 방법에 있어서,
단말에게 보안키를 전송하고, 다른 단말로부터 서비스 타입 정보를 포함하는 심볼 요청 데이터와 페이로드 데이터를 수신하는 단계;
상기 서비스 타입 정보를 기초로 결정된 사이즈에 따라 상기 다른 단말에 대응되는 심볼을 생성하는 단계;
상기 다른 단말에 대해, 상기 페이로드 데이터와 상기 생성된 심볼이 맵핑된 맵핑 정보를 생성하는 단계;
상기 생성된 심볼을 기초로 상기 다른 단말의 음파 출력을 위한 음파 데이터를 생성하는 단계;
상기 생성된 음파 데이터를 상기 다른 단말로 전송하는 단계;
상기 단말로부터, 상기 보안키와 음파를 기초로 생성된 음파 인식 결과-상기 음파는 상기 다른 단말이 상기 서비스 서버로부터 수신한 음파 데이터를 기초로 출력한 것임- 및 페이로드 요청 데이터를 수신하는 단계;
상기 음파 인식 결과와 상기 생성된 심볼이 매칭되는지 확인하는 단계; 및
상기 매칭되는 경우, 상기 맵핑 정보를 기초로 상기 페이로드 데이터를 상기 단말로 전송하는 단계
를 포함하는,
서비스 서버의 동작 방법.
A method of operating a service server,
Transmitting a security key to a terminal and receiving symbol request data and payload data including service type information from another terminal;
Generating a symbol corresponding to the other terminal according to a size determined based on the service type information;
Generating mapping information in which the payload data and the generated symbol are mapped to the other terminal;
Generating sound wave data for sound wave output of the other terminal based on the generated symbol;
Transmitting the generated sound wave data to the other terminal;
A sound wave recognition result generated based on the security key and a sound wave from the terminal, the sound wave being output based on sound wave data received from the service server by the other terminal, and receiving payload request data;
Confirming whether the sound wave recognition result matches the generated symbol; And
Transmitting the payload data to the terminal based on the mapping information if the matching is performed;
/ RTI &gt;
A method of operating a service server.
제1항에 있어서,
상기 생성된 음파 데이터는 상기 생성된 심볼 및 에러정정코드를 포함하는
서비스 서버의 동작 방법.
The method according to claim 1,
The generated sound wave data includes the generated symbol and an error correction code
A method of operating a service server.
제2항에 있어서,
상기 생성된 심볼과 상기 에러정정코드의 비트들의 배열은 상기 보안키를 기초로 변경되는,
서비스 서버의 동작 방법.
3. The method of claim 2,
Wherein the generated symbols and the arrangement of bits of the error correction code are changed based on the secret key,
A method of operating a service server.
제1항에 있어서,
주파수 간격 정보 및 시작 주파수 정보 중 적어도 하나를 기초로 상기 생성된 음파 데이터의 비트들 각각의 주파수 포스트를 설정하는 단계
를 더 포함하는,
서비스 서버의 동작 방법.
The method according to claim 1,
Setting a frequency post of each of the bits of the generated sound wave data based on at least one of frequency interval information and start frequency information
&Lt; / RTI &gt;
A method of operating a service server.
제4항에 있어서,
상기 주파수 간격 정보 및 상기 시작 주파수 정보는 상기 서비스 타입 정보에 관련되는,
서비스 서버의 동작 방법.
5. The method of claim 4,
Wherein the frequency interval information and the start frequency information are associated with the service type information,
A method of operating a service server.
제1항에 있어서,
상기 음파 데이터를 생성한 경우,
상기 생성된 음파 데이터의 비트들 각각의 주파수 포스트를 설정하는 단계;
상기 비트들 중 비트값 1의 주파수 포스트에 음파 톤을 생성하는 단계; 및
상기 생성된 음파 톤을 병합(aggregation)하여 멀티 톤 음파를 생성하고, 상기 멀티 톤 음파를 레코딩한 재생 파일을 생성하는 단계
를 더 포함하는,
서비스 서버의 동작 방법.
The method according to claim 1,
When the sound wave data is generated,
Setting a frequency post of each of the bits of the generated sound wave data;
Generating an acoustic tone in a frequency post with a bit value of one of the bits; And
Generating a multi-tone sound wave by aggregating the generated sound wave tone, and generating a reproduction file in which the multi-tone sound wave is recorded
&Lt; / RTI &gt;
A method of operating a service server.
제1항에 있어서,
상기 심볼의 생성 시점으로부터 미리 정해진 시간 이내에 상기 음파 인식 결과를 수신하였는지 여부를 확인함으로써 상기 음파 인식 결과의 유효성을 검증하는 단계
를 더 포함하는,
서비스 서버의 동작 방법.
The method according to claim 1,
Verifying the validity of the sound wave recognition result by confirming whether or not the sound wave recognition result is received within a predetermined time from the generation time of the symbol
&Lt; / RTI &gt;
A method of operating a service server.
제1항에 있어서,
상기 다른 단말로부터 상기 단말이 상기 페이로드 데이터를 수신했는지 여부에 대한 확인 요청 데이터를 수신하는 단계; 및
상기 단말의 상기 페이로드 데이터의 수신 완료 여부에 대한 응답 데이터를 상기 다른 단말로 전송하는 단계
를 더 포함하는,
서비스 서버의 동작 방법.
The method according to claim 1,
Receiving confirmation request data as to whether or not the terminal has received the payload data from the other terminal; And
Transmitting response data on whether or not the terminal has received the payload data to the other terminal
&Lt; / RTI &gt;
A method of operating a service server.
제1항에 있어서,
상기 음파 인식 결과 및 상기 페이로드 요청 데이터를 수신하는 단계에서 상기 서비스 서버가 상기 단말로부터 상기 단말의 페이로드 데이터를 더 수신하는 경우,
상기 맵핑 정보에 상기 단말의 페이로드 데이터를 맵핑하여 추가 맵핑 정보를 생성하는 단계; 및
상기 다른 단말로부터 상기 단말의 페이로드 데이터에 대한 요청 데이터를 수신하는 경우, 상기 추가 맵핑 정보를 기초로 상기 단말의 페이로드 데이터를 상기 다른 단말로 전송하는 단계
를 더 포함하는,
서비스 서버의 동작 방법.
The method according to claim 1,
When the service server further receives the payload data of the terminal from the terminal in the step of receiving the sound wave recognition result and the payload request data,
Generating additional mapping information by mapping payload data of the terminal to the mapping information; And
When request data for payload data of the terminal is received from the other terminal, transmitting payload data of the terminal to the other terminal based on the additional mapping information
&Lt; / RTI &gt;
A method of operating a service server.
제1항에 있어서,
상기 페이로드 데이터는 URL 정보, 텍스트, 정적 이미지, 및 동적 이미지 중 적어도 하나를 포함하는,
서비스 서버의 동작 방법.
The method according to claim 1,
Wherein the payload data comprises at least one of URL information, text, static images, and dynamic images.
A method of operating a service server.
통신 인터페이스; 및
상기 통신 인터페이스와 커플링되는 컨트롤러
를 포함하고,
상기 컨트롤러는,
상기 통신 인터페이스를 통해 단말에게 보안키를 전송하고 다른 단말로부터 서비스 타입 정보를 포함하는 심볼 요청 데이터와 페이로드 데이터를 수신하며,
상기 서비스 타입 정보를 기초로 결정된 사이즈에 따라 상기 다른 단말에 대응되는 심볼을 생성하고,
상기 다른 단말에 대해 상기 페이로드 데이터와 상기 생성된 심볼이 맵핑된 맵핑 정보를 생성하고,
상기 생성된 심볼을 기초로 상기 다른 단말의 음파 출력을 위한 음파 데이터를 생성하며, 상기 통신 인터페이스를 통해 상기 생성된 음파 데이터를 상기 다른 단말로 전송하고,
상기 통신 인터페이스를 통해 상기 단말로부터 상기 보안키와 음파를 기초로 생성된 음파 인식 결과-상기 음파는 상기 다른 단말이 상기 서비스 서버로부터 수신한 데이터를 기초로 출력한 것임- 및 페이로드 요청 데이터를 수신하고,
상기 음파 인식 결과와 상기 생성된 심볼이 매칭되는지 확인하고, 상기 매칭되는 경우, 상기 맵핑 정보를 기초로 상기 페이로드 데이터를 상기 통신 인터페이스를 통해 상기 단말로 전송하는,
서비스 서버.
Communication interface; And
A controller coupled to the communication interface,
Lt; / RTI &gt;
The controller comprising:
Transmitting a security key to a terminal through the communication interface, receiving symbol request data and payload data including service type information from another terminal,
Generating a symbol corresponding to the other terminal according to a size determined based on the service type information,
Generates mapping information in which the payload data and the generated symbol are mapped to the other terminal,
Generating sound wave data for sound wave output of the other terminal based on the generated symbol, transmitting the generated sound wave data to the other terminal through the communication interface,
A sound wave recognition result generated based on the security key and a sound wave from the terminal through the communication interface, the sound wave being output based on data received from the service server by the other terminal, and payload request data and,
And transmits the payload data to the terminal through the communication interface based on the mapping information if the matching result is matched.
Service server.
제11항에 있어서,
상기 생성된 음파 데이터는 상기 생성된 심볼 및 에러정정코드를 포함하는
서비스 서버.
12. The method of claim 11,
The generated sound wave data includes the generated symbol and an error correction code
Service server.
제12항에 있어서,
상기 생성된 심볼과 상기 에러정정코드의 비트들의 배열은 상기 보안키를 기초로 변경되는,
서비스 서버.
13. The method of claim 12,
Wherein the generated symbols and the arrangement of bits of the error correction code are changed based on the secret key,
Service server.
제11항에 있어서,
상기 컨트롤러는 주파수 간격 정보 및 시작 주파수 정보 중 적어도 하나를 기초로 상기 생성된 음파 데이터의 비트들 각각의 주파수 포스트를 설정하는,
서비스 서버.
12. The method of claim 11,
Wherein the controller sets a frequency post of each of the bits of the generated sound wave data based on at least one of frequency interval information and start frequency information,
Service server.
제14항에 있어서,
상기 주파수 간격 정보 및 상기 시작 주파수 정보는 상기 서비스 타입 정보에 관련되는,
서비스 서버.
15. The method of claim 14,
Wherein the frequency interval information and the start frequency information are associated with the service type information,
Service server.
제11항에 있어서,
상기 컨트롤러는,
상기 음파 데이터를 생성한 경우, 상기 생성된 음파 데이터의 비트들 각각의 주파수 포스트를 설정하고, 상기 비트들 중 비트값 1의 주파수 포스트에 음파 톤을 생성하며, 상기 생성된 음파 톤을 병합(aggregation)하여 멀티 톤 음파를 생성하고, 상기 멀티 톤 음파를 레코딩한 재생 파일을 생성하고, 상기 재생 파일을 상기 통신 인터페이스를 통해 상기 다른 단말로 전송하는,
서비스 서버.
12. The method of claim 11,
The controller comprising:
Generating a sonic tone in a frequency post having a bit value of one of the bits, and generating an acoustic tone by combining the generated sonic tone with an aggregation Generating a playback file in which the multi-tone sound wave is recorded, and transmitting the playback file to the other terminal through the communication interface;
Service server.
제11항에 있어서,
상기 컨트롤러는 상기 심볼의 생성 시점으로부터 미리 정해진 시간 이내에 상기 음파 인식 결과를 수신하였는지 여부를 확인함으로써 상기 음파 인식 결과의 유효성을 검증하는,
서비스 서버.
12. The method of claim 11,
Wherein the controller verifies the validity of the sound wave recognition result by confirming whether or not the sound wave recognition result is received within a predetermined time from the generation time of the symbol,
Service server.
제11항에 있어서,
상기 컨트롤러는 상기 통신 인터페이스를 통해 상기 다른 단말로부터 상기 단말이 상기 페이로드 데이터를 수신했는지 여부에 대한 확인 요청 데이터를 수신하고 상기 단말의 상기 페이로드 데이터의 수신 완료 여부에 대한 응답 데이터를 상기 다른 단말로 전송하는,
서비스 서버.
12. The method of claim 11,
Wherein the controller receives confirmation request data as to whether or not the terminal has received the payload data from the other terminal through the communication interface and transmits a response data indicating completion of reception of the payload data of the terminal to the other terminal Lt; / RTI &gt;
Service server.
제11항에 있어서,
상기 컨트롤러는 상기 서비스 서버가 상기 단말로부터 상기 단말의 페이로드 데이터를 더 수신하는 경우, 상기 맵핑 정보에 상기 단말의 페이로드 데이터를 맵핑하여 추가 맵핑 정보를 생성하고, 상기 다른 단말로부터 상기 단말의 페이로드 데이터에 대한 요청 데이터를 수신하는 경우, 상기 추가 맵핑 정보를 기초로 상기 단말의 페이로드 데이터를 상기 통신 인터페이스를 통해 상기 다른 단말로 전송하는,
서비스 서버.
12. The method of claim 11,
Wherein the controller further maps the payload data of the terminal to the mapping information to generate additional mapping information when the service server further receives the payload data of the terminal from the terminal, And transmits the payload data of the terminal to the other terminal through the communication interface based on the additional mapping information when receiving the request data for the load data.
Service server.
제11항에 있어서,
상기 페이로드 데이터는 URL 정보, 텍스트, 정적 이미지, 및 동적 이미지 중 적어도 하나를 포함하는,
서비스 서버.
12. The method of claim 11,
Wherein the payload data comprises at least one of URL information, text, static images, and dynamic images.
Service server.
KR1020170158447A 2017-11-24 2017-11-24 Communication platform based on sound KR102025524B1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020170158447A KR102025524B1 (en) 2017-11-24 2017-11-24 Communication platform based on sound
PCT/KR2018/010213 WO2019103289A1 (en) 2017-11-24 2018-09-03 Sound wave communication platform, communication method using sound wave signal, and device therefor
US16/492,157 US20210152564A1 (en) 2017-11-24 2018-09-03 Sound wave communication platform, communication method using sound wave signal, and device therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170158447A KR102025524B1 (en) 2017-11-24 2017-11-24 Communication platform based on sound

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020190114594A Division KR20190109362A (en) 2019-09-18 2019-09-18 Communication platform based on sound

Publications (2)

Publication Number Publication Date
KR20190060343A true KR20190060343A (en) 2019-06-03
KR102025524B1 KR102025524B1 (en) 2019-09-26

Family

ID=66849336

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170158447A KR102025524B1 (en) 2017-11-24 2017-11-24 Communication platform based on sound

Country Status (1)

Country Link
KR (1) KR102025524B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108280983A (en) * 2018-01-23 2018-07-13 智慧海派科技有限公司 A method of it is controlled using sound wave communication and starts automatic test program

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110066887A (en) * 2009-12-11 2011-06-17 이르데토 비.브이. Generating a scrambled data stream
WO2012165901A2 (en) * 2011-06-02 2012-12-06 Beak Gyyoung Method for inter-terminal security channelization
KR20130107188A (en) * 2012-03-21 2013-10-01 (주)더블유랩 Server and method for authentication using sound code
KR20140147034A (en) * 2013-06-18 2014-12-29 (주)파워보이스 Mobile device and method for outputting sound wave to control external device, and the external device
KR20150146395A (en) * 2014-06-20 2015-12-31 아이팝콘주식회사 The self-authentication method using the high frequency pattern

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110066887A (en) * 2009-12-11 2011-06-17 이르데토 비.브이. Generating a scrambled data stream
WO2012165901A2 (en) * 2011-06-02 2012-12-06 Beak Gyyoung Method for inter-terminal security channelization
KR20130107188A (en) * 2012-03-21 2013-10-01 (주)더블유랩 Server and method for authentication using sound code
KR20140147034A (en) * 2013-06-18 2014-12-29 (주)파워보이스 Mobile device and method for outputting sound wave to control external device, and the external device
KR20150146395A (en) * 2014-06-20 2015-12-31 아이팝콘주식회사 The self-authentication method using the high frequency pattern

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108280983A (en) * 2018-01-23 2018-07-13 智慧海派科技有限公司 A method of it is controlled using sound wave communication and starts automatic test program

Also Published As

Publication number Publication date
KR102025524B1 (en) 2019-09-26

Similar Documents

Publication Publication Date Title
JP6592583B1 (en) Method and apparatus for information exchange
CN103678993B (en) A kind of method and apparatus that terminal is controlled
CN103718184A (en) Authentication system and authentication method
CN102763395A (en) Method and apparatus for providing an authentication context-based session
CN102801530A (en) Sound transmission-based authentication method
CN103023580A (en) Method for achieving data transmission through voice
US10893235B2 (en) Conferencing apparatus and method for switching access terminal thereof
JP2018530275A (en) Audio signal mediated interaction system and method
CN104144058A (en) Information verification method based on sound wave pairing
WO2015154552A1 (en) Sound-wave payment method and system
CN114553590B (en) Data transmission method and related equipment
CN104168117B (en) A kind of speech digit endorsement method
TW201607357A (en) Toning control method of WiFi device setting by smart device
KR20070105072A (en) Voice one time password authentic system and its method on the internet banking service system
US9363562B1 (en) Method and system for authorizing a user device
KR102025524B1 (en) Communication platform based on sound
US20210152564A1 (en) Sound wave communication platform, communication method using sound wave signal, and device therefor
CN108616313A (en) A kind of bypass message based on ultrasound transfer approach safe and out of sight
WO2018051144A1 (en) A method and system for authenticating a device
CN114697117B (en) Verification method, device, cipher device and system based on positioning information
CN104866754B (en) Information checking method and device
KR20190109362A (en) Communication platform based on sound
CN109347826B (en) Verification method and system
CN103023650A (en) System, data sending end and data receiving end for achieving data transmission through voice
JP2003258787A (en) Electronic certificate, method, apparatus and program for issuing and verifying electronic certificate, and recording medium for program

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent