KR20190060343A - Communication platform based on sound - Google Patents
Communication platform based on sound Download PDFInfo
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B11/00—Transmission systems employing sonic, ultrasonic or infrasonic waves
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying 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
Description
아래 실시예들은 음파 통신 플랫폼에 관한 것이다.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
상기 컨트롤러는 상기 심볼의 생성 시점으로부터 미리 정해진 시간 이내에 상기 음파 인식 결과를 수신하였는지 여부를 확인함으로써 상기 음파 인식 결과의 유효성을 검증할 수 있다.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
서비스 서버(110)는 단말(120)로부터 페이로드 데이터(예를 들어, 텍스트, 정적 이미지, 또는 동적 이미지)를 수신한 뒤 단말(120)의 음파 데이터를 생성하여 단말(120)로 전송할 수 있다. The
단말(120)은 음파 데이터에 기반한 음파를 생성 및 출력할 수 있다. 일례로, 단말(120)은 음파 데이터를 기반으로 재생 파일(일례로, wav 파일)을 생성하고, 이를 재생할 수 있다. 또는, 단말(120)는 음파 데이터에 기반한 재생 파일을 서비스 서버(110)로부터 수신하여 재생할 수 있다. 단말(130)은 단말(120)의 음파를 인식한 음파 인식 결과를 서비스 서버(110)로 전송한다. The
서비스 서버(110)는 음파 인식 결과를 기초로 단말(120)의 페이로드 데이터에 대한 이용 자격이 단말(130)에 있는지 확인할 수 있다. 여기서, 단말(130)에 단말(120)의 페이로드 데이터에 대한 이용 자격이 있는 경우, 서비스 서버(110)는 단말(120)의 페이로드 데이터를 단말(130)로 전송할 수 있다.The
기존의 음파 통신은 주파수 대역의 한정으로 인해 많은 량의 데이터를 보내기가 어렵고 보안에 취약할 수 있다. 일 실시예에 따른 음파 통신 플랫폼(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
이하, 도 2를 참조하면서, 음파 통신 플랫폼(100)의 동작의 일례에 대해 상세히 설명한다. Hereinafter, an example of the operation of the
<음파 통신 플랫폼-단방향 음파 기반의 단방향 정보 전송><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
위의 표 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
서비스 서버(110)는 서비스 타입 정보에 맞는 음파 프로토콜에 따라 음파 데이터를 생성하고 주파수 포스트를 설정하는데, 이에 대한 자세한 설명은 후술한다.The
서비스 서버(110)는 보안키를 주기적으로 변경함으로써 보안을 강화할 수 있다. 일례로, 서비스 서버(110)는 보안키를 매일, 1주, 또는 2주마다 변경할 수 있다. 높은 보안이 요구되는 경우, 서비스 서버(110)는 보안키를 더 짧은 주기로 변경할 수 있다.The
단말(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
서비스 서버(110)는 보안키를 단말(130)로 전송한다(212). 즉, 단말(130)는 서비스 서버(110)로부터 보안키를 수신한다. 단말(130)은, 예를 들어, 보안키의 변경 주기에 따라 하루에 1번 보안키를 수신할 수 있다. 이는 실시예에 따른 예시적인 사항일 뿐이다.The
단말(130)은 서비스 서버(110)로부터 보안키를 수신하는 경우, 음파 수신 대기 상태로 진입한다(214). 일례로, 단말(130)은 서비스 서버(110)로부터 보안키를 수신하는 경우, 마이크를 활성화시킬 수 있다.When the terminal 130 receives the security key from the
단말(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
페이로드 데이터 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
심볼 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
서비스 서버(110)는 단말(120)에 대해 심볼 A와 페이로드 데이터 A가 맵핑된 맵핑 정보를 생성한다(216). 서비스 서버(110)에는 단말(120)에 대한 맵핑 정보뿐 아니라 하나 이상의 다른 단말에 대한 맵핑 정보가 저장될 수 있다.The
서비스 서버(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
실시예에 따라, 서비스 서버(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
서비스 서버(110)는 시작 주파수 정보 및 최소 주파수 간격 정보 중 적어도 하나를 기초로 음파 데이터의 비트들 각각의 주파수 포스트를 설정할 수 있다. 보다 구체적으로, 서비스 서버(110)는 서비스 타입 정보에 맞는 음파 프로토콜 내의 시작 주파수 정보 및 최소 주파수 간격 정보 중 적어도 하나를 기초로 음파 데이터의 비트들 각각의 주파수 포스트를 설정할 수 있다. 이 때, 음파 데이터는 보안키로 암호화된 것일 수 있다. The
일례로, 서비스 타입 정보가 "결제"인 경우, 서비스 서버(110)는 음파 데이터의 첫 번째 비트에 18kHz의 주파수 포스트(또는 시작 주파수)를 설정할 수 있고, 두 번째 비트의 경우 18kHz+50Hz에 해당하는 18.05kHz에 주파수 포스트를 설정할 수 있다. 마찬가지로, 서비스 서버(110)는 음파 데이터의 다른 비트들 각각의 주파수 포스트를 설정할 수 있다. 이 때, 주파수 포스트들 사이의 주파수 간격은 50Hz로 균일할 수 있다.For example, when the service type information is " payment ", the
다른 일례로, 서비스 타입 정보가 "출결"인 경우, 서비스 서버(110)는 음파 데이터의 첫 번째 비트에 18.5kHz의 주파수 포스트(또는 시작 주파수)를 설정할 수 있고, 두 번째 비트의 경우 18.5kHz+100Hz에 해당하는 18.6kHz에 주파수 포스트를 설정할 수 있다. 마찬가지로, 서비스 서버(110)는 음파 데이터의 다른 비트들 각각의 주파수 포스트를 설정할 수 있다. 이 때, 주파수 포스트들 사이의 주파수 간격은 100Hz로 균일할 수 있다. In another example, if the service type information is " outgoing ", the
또 다른 일례로, 서비스 타입 정보가 "마케팅"인 경우, 서비스 서버(110)는 음파 데이터의 첫 번째 비트에 19kHz의 주파수 포스트(또는 시작 주파수)를 설정할 수 있고, 두 번째 비트의 경우 19kHz+100Hz에 해당하는 19.1kHz에 주파수 포스트를 설정할 수 있다. 마찬가지로, 서비스 서버(110)는 음파 데이터의 다른 비트들 각각의 주파수 포스트를 설정할 수 있다. 이 때, 주파수 포스트들 사이의 주파수 간격은 100Hz로 균일할 수 있다.As another example, when the service type information is " marketing ", the
또 다른 일례로, 서비스 타입 정보가 "출입"인 경우, 서비스 서버(110)는 음파 데이터의 첫 번째 비트에 19.5kHz의 주파수 포스트(또는 시작 주파수)를 설정할 수 있고, 두 번째 비트의 경우 19.5kHz+50Hz에 해당하는 19.55kHz에 주파수 포스트를 설정할 수 있다. 마찬가지로, 서비스 서버(110)는 음파 데이터의 다른 비트들 각각의 주파수 포스트를 설정할 수 있다. 이 때, 주파수 포스트들 사이의 주파수 간격은 50Hz로 균일할 수 있다.As another example, when the service type information is " outgoing ", the
구현에 따라, 서비스 서버(110)는 주파수 간격을 달리하여 음파 데이터의 비트들 각각의 주파수 포스트를 설정할 수 있다. 일례로, 서비스 서버(110)는 음파 데이터의 첫 번째 비트에 18kHz의 주파수 포스트(또는 시작 주파수)를 설정하고 두 번째 비트에는 18kHz+50Hz에 해당하는 18.05kHz의 주파수 포스트를 설정할 수 있으며, 음파 데이터의 세번째 비트에는 18kHz+50Hz+53Hz에 해당하는 18.13kHz의 주파수 포스트를 설정할 수 있고, 음파 데이터의 네번째 비트에는 18kHz+50Hz+53Hz+52Hz에 해당하는 18.65kHz의 주파수 포스트를 설정할 수 있다. 주파수 포스트들 간격이 서로 다를 수 있어, 보안이 보다 향상될 수 있다.Depending on the implementation, the
도 2로 돌아와서, 서비스 서버(110)는 음파 데이터를 단말(120)로 전송한다(218). 이 때, 서비스 서버(110)는 설정된 주파수 포스트에 대한 정보를 단말(120)로 전송할 수 있다. 실시예에 따라, 서비스 서버(110)는 암호화된 음파 데이터를 단말(120)로 전송할 수 있다.Returning to FIG. 2, the
단말(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
단말(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
단말(130)은 음파 인식 결과를 서비스 서버(110)로 전송하면서 페이로드 데이터 A를 서비스 서버(110)에 요청한다. The terminal 130 transmits the sound wave recognition result to the
서비스 서버(110)는 단말(130)의 음파 인식 결과의 유효성을 확인한다(222). 일례로, 서비스 서버(110)는 심볼 A의 생성 시점 및 음파 인식 결과의 수신 시점을 기초로 음파 인식 결과의 유효성을 확인할 수 있다. 보다 구체적으로, 서비스 서버(110)는 심볼 A의 생성 시점부터 음파 인식 결과의 수신 시점까지의 경과 시간이 미리 정해진 시간(일례로, 5분) 이내인지 여부를 확인함으로써 음파 인식 결과가 유효한지 여부를 결정할 수 있다. 여기서, 해당 경과 시간이 미리 정해진 시간을 초과하면, 서비스 서버는 단말(130)의 음파 인식 결과가 유효하지 않다고 결정할 수 있고, 페이로드 데이터 A에 대한 단말(130)의 요청을 거절할 수 있다. The
서비스 서버(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
단말(130)은 페이로드 데이터 A를 서비스 서버(110)로부터 수신하면, 페이로드 데이터 A를 수신했음을 나타내는 응답 데이터를 서비스 서버(110)로 전송한다(224). Upon receiving the payload data A from the
단말(120)은 단계(219)에서 음파를 출력한 경우, 서비스 서버(110)에 단말(130)이 페이로드 데이터 A를 수신했는지 여부를 일정 시간 간격마다 폴링(polling) 또는 쿼리할 수 있다. 서비스 서버(110)는 단말(130)로부터 응답 데이터를 수신하면, 단말(130)이 페이로드 데이터 A를 수신했음을 나타내는 응답 데이터를 단말(120)로 전송할 수 있다. The terminal 120 may polling or query the
도 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
도 6을 통해 설명할 예는 서비스 서버(110)가 재생 파일을 생성하여 단말(120)로 전송하는 경우이다. 재생 파일은 음파 파일로 달리 표현될 수 있다.6 is a case in which the
도 6을 참조하면, 서비스 서버(110)는 서비스 타입 정보에 해당하는 주파수 간격 정보 및 시작 주파수 정보를 기초로 음파 데이터의 비트들 각각의 주파수 포스트(611 내지 614)를 결정할 수 있다(610). Referring to FIG. 6, the
서비스 서버(110)는 음파 데이터의 비트들 중 제1 비트의 주파수 포스트에 음파 톤을 생성할 수 있다(620).The
서비스 서버(110)는 생성된 음파 톤을 병합하여 멀티 톤 음파를 생성할 수 있다(630).The
서비스 서버(110)는 멀티 톤 음파를 레코딩한 재생 파일을 생성할 수 있다(640). 재생 파일은, 예를 들어, 확장자가 wav인 파일일 수 있다. 재생 파일은 이에 제한되지 않는다.The
서비스 서버(110)는 재생 파일을 단말(120)로 전송할 수 있다. 단말(120)은 재생 파일을 플레이함으로써 단계(620)에서의 파형과 같은 멀티 톤 음파를 출력할 수 있다.The
실시예에 따라, 서비스 서버(110)는 재생 파일을 단말(120)로 전송하는 대신에 재생 파일의 위치 정보를 단말(120)로 전송할 수 있다. 재생 파일의 위치 정보는, 예를 들어, URL을 포함할 수 있다. 단말(120)는 재생 파일의 위치 정보를 수신하면, 해당 위치 정보에 액세스하여 재생 파일을 플레이할 수 있다. The
다른 실시예에 따라, 서비스 서버(110)는 단말(120)이 재생 파일을 생성하는데 필요한 정보를 단말(120)로 전송할 수 있다. 이러한 정보에는 전술한 음파 데이터, 주파수 간격 정보, 시작 주파수 정보, 샘플링 레이트, 및 볼륨 정보 중 어느 하나 또는 이들의 조합이 포함될 수 있다. 단말(120)은 해당 정보를 이용하여 재생 파일을 생성할 수 있고, 플레이할 수 있다.According to another embodiment, the
<음파 데이터의 크기가 큰 경우>≪ 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
일 실시예에 있어서, 서비스 서버(110)가 예를 들어 96 비트 심볼을 생성한 경우, body 필드의 크기 24 비트를 고려하여 96 비트 심볼을 4개의 24 비트 심볼로 분할할 수 있다. 즉, 4개의 분할 심볼들이 생성될 수 있다. In one embodiment, when the
서비스 서버(110)는 아래 표 3의 각 필드에 값을 설정함으로써, 도 7에 도시된 음파 데이터들(710 내지 760), 즉, 음파 데이터 세트를 생성할 수 있다. The
음파 데이터의 종류를 나타냄.
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
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.
분할 심볼의 에러정정코드가 설정됨.Field size 8 bits.
The error correction code of the division symbol is set.
분할 심볼이 설정됨.Field size 24 bits.
Split symbol is set.
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
음파 데이터(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개 0Sound wave data 710: type = 00, sequence = 0100, blank = 32 0
Sound wave data 720: type = 01, sequence = 0000, CRC = 8 bits, body =
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
type이 01로 설정되어 있는 음파 데이터는 4개이므로, 음파 데이터(710) 및 음파 데이터(760) 각각의 sequence 필드에는 0100이 설정되어 있다.0100 is set in the sequence field of each of the
구현에 따라, 음파 데이터들(710 내지 760) 각각에는 시작 비트 필드(Start) 및 종료 비트 필드(End)가 더 포함될 수 있다. 이 경우, 시작 비트 필드(Start) 및 종료 비트 필드(End) 각각은 1로 bias될 수 있다. According to the implementation, each of the
다른 실시예에 있어서, 서비스 서버(110)는 아래 표 5의 각 필드에 값을 설정함으로써, 도 8에 도시된 음파 데이터들(810 내지 840), 즉, 음파 데이터 세트를 생성할 수 있다. In another embodiment, the
음파 데이터의 종류를 나타냄.
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
음파 데이터의 전송 순서를 나타냄. 첫 번째로 전송되면, 0000이 설정됨.Field size 4 bits.
Describes the transmission order of sound wave data. When it is transmitted first, 0000 is set.
분할 심볼의 에러정정코드가 설정됨.Field size 8 bits.
The error correction code of the division symbol is set.
분할 심볼이 설정됨.Field size 24 bits.
Split symbol is set.
아래 표 6은 음파 데이터들(810 내지 840)의 일례를 보여준다.Table 6 below shows an example of the
음파 데이터(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=분할 심볼 4Sound wave data 810: type = 00, sequence = 0000, CRC = 8 bits, body =
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
음파 데이터(840)의 경우, 음파 데이터 세트의 마지막 데이터이므로, type 필드에는 10이 설정되어 있고, 네 번째로 전송되므로, sequence 필드에는 0011이 설정되어 있다. In the case of the
구현에 따라, 음파 데이터들(810 내지 840) 각각에는 시작 비트 필드(Start) 및 종료 비트 필드(End)가 더 포함될 수 있다. 이 경우, 시작 비트 필드(Start) 및 종료 비트 필드(End) 각각은 1로 bias될 수 있다. According to the implementation, each of the
서비스 서버(110)는 도 7 또는 도 8의 음파 데이터 세트를 단말(120)로 전송할 수 있다. 단말(120)은 음파 데이터 세트 내의 음파 데이터들 각각에 대응되는 멀티 톤 음파를 생성하여 출력할 수 있다. 일례로, 단말(120)은 음파 데이터들(710 내지 760) 각각에 대응되는 멀티 톤 음파를 생성할 수 있다. 달리 표현하면, 단말(120)은 음파 데이터들(710 내지 760)에 대응되는 멀티 톤 음파 세트를 생성할 수 있다. 단말(120)은 음파 데이터(710)에 대응되는 멀티 톤 음파부터 출력한 뒤 음파 데이터들(720 내지 760) 각각에 대응되는 멀티 톤 음파를 순차적으로 출력할 수 있다. 이 때, 멀티 톤 음파와 다음에 출력되는 멀티 톤 음파 사이의 시간 가격은 200ms일 수 있다.The
실시예에 따라, 서비스 서버(110)는 음파 데이터 세트를 생성한 경우, 도 5를 통해 설명한 예에 따라 동작할 수 있다. 다른 실시예에 따라, 서비스 서버(110)는 음파 데이터 세트를 생성한 경우, 도 6을 통해 설명한 예에 따라 음파 데이터 세트에 대응되는 재생 파일을 생성하여 단말(120)로 전송할 수 있다. 또는, 서비스 서버(110)는 해당 재생 파일의 위치 정보를 단말(120)로 전송하거나 단말(120)이 재생 파일을 생성하는데 필요한 정보를 단말(120)로 전송할 수 있다. According to the embodiment, when the
도 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
서비스 서버(110)는 음파 인식 결과의 유효성을 확인한다(222).The
서비스 서버(110)는 음파 인식 결과가 유효하면, 심볼 A, 페이로드 데이터 A, 및 페이로드 데이터 B를 맵핑한다(911). 달리 표현하면, 서비스 서버(110)는 음파 인식 결과가 유효하면, 단계(216)에서 생성된 맵핑 정보에 페이로드 데이터 B를 맵핑하여 추가 맵핑 정보를 생성할 수 있다. 이 때, 추가 맵핑 정보는 단말(120) 및 단말(130) 모두에 대한 것이다.When the result of the sound wave recognition is valid, the
서비스 서버(110)는 음파 인식 결과와 심볼 A가 매칭되는지 확인하고, 음파 인식 결과와 심볼 A가 매칭되면, 심볼 A와 맵핑되어 있는 페이로드 데이터 A를 단말(130)로 전송한다.The
서비스 서버(110)는 단말(120)로부터 페이로드 요청 데이터를 수신한다. 다시 말해, 단말(120)은 페이로드 데이터 B를 서비스 서버(110)로 요청한다. 이러한 요청이 있는 경우, 서비스 서버(110)는 단계(911)에서 생성된 추가 맵핑 정보를 기초로 페이로드 데이터 B를 단말(120)로 전송한다. The
도 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
도 11을 참조하면, 서비스 서버(110)는 보안키를 관리한다(1110). 보안키에 대해선 전술하였으므로, 상세한 설명을 생략한다.Referring to FIG. 11, the
단말(120)은 서비스 서버(110)에 보안키를 요청하고(1111), 서비스 서버(110)는 보안키를 단말(120)로 전송한다(1112).The terminal 120 requests the
단말(130)은 서비스 서버(110)에 보안키를 요청하고(1113), 서비스 서버(110)는 보안키를 단말(130)로 전송한다(1114).The terminal 130 requests the
단말(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
단말(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
단말(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
단말(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
통신 인터페이스(1210)는 유선 통신 또는 무선 통신이 가능하다.The
컨트롤러(1220)는 통신 인터페이스(1210)와 커플링된다. 통신 인터페이스(1210)와 컨트롤러(1220)는 음파 통신 플랫폼(100) 상에서 특정 서비스를 구현하기 위해 아래와 같이 동작할 수 있다.
컨트롤러(1220)는 통신 인터페이스(1210)를 통해 단말에게 보안키를 전송하고 다른 단말로부터 서비스 타입 정보를 포함하는 심볼 요청 데이터와 페이로드 데이터를 수신한다.The
컨트롤러(1220)는 서비스 타입 정보를 기초로 결정된 사이즈에 따라 다른 단말에 대응되는 심볼을 생성한다.The
컨트롤러(1220)는 다른 단말에 대해 페이로드 데이터와 생성된 심볼이 맵핑된 맵핑 정보를 생성한다.The
컨트롤러(1220)는 생성된 심볼을 기초로 다른 단말의 음파 출력을 위한 음파 데이터를 생성한다. 음파 데이터는, 예를 들어, 생성된 심볼 및 에러정정코드를 포함할 수 있다. 또한, 음파 데이터는 보안키를 기초로 암호화될 수 있다. The
컨트롤러(1220)는 생성된 음파 데이터를 통신 인터페이스(1210)를 통해 다른 단말로 전송한다. The
컨트롤러(1220)는 통신 인터페이스(1210)를 통해 단말로부터 보안키와 음파를 기초로 생성된 음파 인식 결과 및 페이로드 요청 데이터를 수신한다. 여기서, 음파는 다른 단말이 서비스 서버(110)로부터 수신한 데이터를 기초로 출력한 것이다.The
컨트롤러(1220)는 음파 인식 결과와 생성된 심볼이 매칭되는지 확인하고, 음파 인식 결과와 생성된 심볼이 매칭되는 경우, 맵핑 정보를 기초로 페이로드 데이터를 통신 인터페이스(1210)를 통해 단말로 전송한다. The
도 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
서비스 서버(110)는 음파 인식 결과가 단말(120)에 대응되는 심볼에 매칭되면, 단말(130)의 사용자가 강의 장소에 출석했다고 결정할 수 있고, 출석 인증 정보 또는 출석 확인 정보를 단말(130)로 전송할 수 있다. 단말(130)은 출석 인증 정보 또는 출석 확인 정보를 기초로 사용자가 강의에 출석하였다고 체크할 수 있다.The
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, 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 > 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 >
A method of operating a service server.
상기 생성된 음파 데이터는 상기 생성된 심볼 및 에러정정코드를 포함하는
서비스 서버의 동작 방법.
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.
상기 생성된 심볼과 상기 에러정정코드의 비트들의 배열은 상기 보안키를 기초로 변경되는,
서비스 서버의 동작 방법.
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.
주파수 간격 정보 및 시작 주파수 정보 중 적어도 하나를 기초로 상기 생성된 음파 데이터의 비트들 각각의 주파수 포스트를 설정하는 단계
를 더 포함하는,
서비스 서버의 동작 방법.
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
≪ / RTI >
A method of operating a service server.
상기 주파수 간격 정보 및 상기 시작 주파수 정보는 상기 서비스 타입 정보에 관련되는,
서비스 서버의 동작 방법.
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의 주파수 포스트에 음파 톤을 생성하는 단계; 및
상기 생성된 음파 톤을 병합(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
≪ / RTI >
A method of operating a service server.
상기 심볼의 생성 시점으로부터 미리 정해진 시간 이내에 상기 음파 인식 결과를 수신하였는지 여부를 확인함으로써 상기 음파 인식 결과의 유효성을 검증하는 단계
를 더 포함하는,
서비스 서버의 동작 방법.
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
≪ / RTI >
A method of operating a service server.
상기 다른 단말로부터 상기 단말이 상기 페이로드 데이터를 수신했는지 여부에 대한 확인 요청 데이터를 수신하는 단계; 및
상기 단말의 상기 페이로드 데이터의 수신 완료 여부에 대한 응답 데이터를 상기 다른 단말로 전송하는 단계
를 더 포함하는,
서비스 서버의 동작 방법.
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
≪ / RTI >
A method of operating a service server.
상기 음파 인식 결과 및 상기 페이로드 요청 데이터를 수신하는 단계에서 상기 서비스 서버가 상기 단말로부터 상기 단말의 페이로드 데이터를 더 수신하는 경우,
상기 맵핑 정보에 상기 단말의 페이로드 데이터를 맵핑하여 추가 맵핑 정보를 생성하는 단계; 및
상기 다른 단말로부터 상기 단말의 페이로드 데이터에 대한 요청 데이터를 수신하는 경우, 상기 추가 맵핑 정보를 기초로 상기 단말의 페이로드 데이터를 상기 다른 단말로 전송하는 단계
를 더 포함하는,
서비스 서버의 동작 방법.
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
≪ / RTI >
A method of operating a service server.
상기 페이로드 데이터는 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 >
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.
상기 생성된 음파 데이터는 상기 생성된 심볼 및 에러정정코드를 포함하는
서비스 서버.
12. The method of claim 11,
The generated sound wave data includes the generated symbol and an error correction code
Service server.
상기 생성된 심볼과 상기 에러정정코드의 비트들의 배열은 상기 보안키를 기초로 변경되는,
서비스 서버.
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.
상기 컨트롤러는 주파수 간격 정보 및 시작 주파수 정보 중 적어도 하나를 기초로 상기 생성된 음파 데이터의 비트들 각각의 주파수 포스트를 설정하는,
서비스 서버.
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.
상기 주파수 간격 정보 및 상기 시작 주파수 정보는 상기 서비스 타입 정보에 관련되는,
서비스 서버.
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.
상기 컨트롤러는,
상기 음파 데이터를 생성한 경우, 상기 생성된 음파 데이터의 비트들 각각의 주파수 포스트를 설정하고, 상기 비트들 중 비트값 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.
상기 컨트롤러는 상기 심볼의 생성 시점으로부터 미리 정해진 시간 이내에 상기 음파 인식 결과를 수신하였는지 여부를 확인함으로써 상기 음파 인식 결과의 유효성을 검증하는,
서비스 서버.
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.
상기 컨트롤러는 상기 통신 인터페이스를 통해 상기 다른 단말로부터 상기 단말이 상기 페이로드 데이터를 수신했는지 여부에 대한 확인 요청 데이터를 수신하고 상기 단말의 상기 페이로드 데이터의 수신 완료 여부에 대한 응답 데이터를 상기 다른 단말로 전송하는,
서비스 서버.
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 >
Service server.
상기 컨트롤러는 상기 서비스 서버가 상기 단말로부터 상기 단말의 페이로드 데이터를 더 수신하는 경우, 상기 맵핑 정보에 상기 단말의 페이로드 데이터를 맵핑하여 추가 맵핑 정보를 생성하고, 상기 다른 단말로부터 상기 단말의 페이로드 데이터에 대한 요청 데이터를 수신하는 경우, 상기 추가 맵핑 정보를 기초로 상기 단말의 페이로드 데이터를 상기 통신 인터페이스를 통해 상기 다른 단말로 전송하는,
서비스 서버.
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.
상기 페이로드 데이터는 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.
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)
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)
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 |
-
2017
- 2017-11-24 KR KR1020170158447A patent/KR102025524B1/en active Application Filing
Patent Citations (5)
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)
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 |