KR102054174B1 - 음파신호를 이용한 통신 방법 및 그 장치 - Google Patents

음파신호를 이용한 통신 방법 및 그 장치 Download PDF

Info

Publication number
KR102054174B1
KR102054174B1 KR1020170158491A KR20170158491A KR102054174B1 KR 102054174 B1 KR102054174 B1 KR 102054174B1 KR 1020170158491 A KR1020170158491 A KR 1020170158491A KR 20170158491 A KR20170158491 A KR 20170158491A KR 102054174 B1 KR102054174 B1 KR 102054174B1
Authority
KR
South Korea
Prior art keywords
sound wave
frequency
source data
wave signal
bits
Prior art date
Application number
KR1020170158491A
Other languages
English (en)
Other versions
KR20190060360A (ko
Inventor
이윤희
Original Assignee
모비두 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 모비두 주식회사 filed Critical 모비두 주식회사
Priority to KR1020170158491A priority Critical patent/KR102054174B1/ko
Priority to US16/492,157 priority patent/US20210152564A1/en
Priority to PCT/KR2018/010213 priority patent/WO2019103289A1/ko
Publication of KR20190060360A publication Critical patent/KR20190060360A/ko
Application granted granted Critical
Publication of KR102054174B1 publication Critical patent/KR102054174B1/ko

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/12Applying verification of the received information

Landscapes

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

Abstract

음파 처리장치가 보안 코드로 이용하는 셔플 어레이(shuffle array)에 따라 소스 데이터에 포함된 m개의 비트를 배열함으로써 상기 소스 데이터를 가공하는 단계, 상기 가공된 소스 데이터를 음파신호로 인코딩하는 단계 및 상기 인코딩된 음파신호를 출력하는 단계를 포함하고, 상기 인코딩하는 단계는, 서비스 타입 정보에 기초하여 상기 m개의 비트 각각에 대응되는 m개의 주파수 포스트를 설정하되, 상기 m개의 주파수 포스트 각각에 대해 미리 정해진 크기의 음파 톤(tone)을 생성하는 단계 및 상기 음파 톤을 병합(aggregation)하여 멀티 톤 음파신호를 생성하는 단계를 포함하는, 음파신호를 이용한 통신방법이 개시된다.

Description

음파신호를 이용한 통신 방법 및 그 장치{COMMUNICATION METHOD USING SOUND SIGNAL AND APPARATUS THEREOF}
음파신호를 이용한 통신 방법 및 그 장치가 개시된다.
현재 이용되고 있는 음파통신 방법은 적용되는 응용 어플리케이션의 서비스 타입과 무관하게 할당된 주파수를 이용한다. 따라서, 다양한 종류의 응용 어플리케이션의 서비스 타입과 부합하는 주파수 대역을 이용하기 어렵다.
또한, 현재 이용되고 있는 음파통신 방법은 전송되는 데이터를 암호화 정도가 낮아 보안성이 낮다.
또한, 현재 이용되고 있는 음파통신 방법은 대용량 데이터를 전송하기 어렵다.
서비스 타입에 따라 다르게 음파신호를 인코딩하는 음파통신 방법이 개시된다.
보안성이 강화된 음파신호를 이용하는 음파통신 방법이 개시된다.
대용량 데이터를 전송할 수 있는 음파통신 방법이 개시된다.
음파신호를 이용한 통신방법은, 음파 처리장치가 보안 코드로 이용하는 셔플 어레이(shuffle array)에 따라 소스 데이터에 포함된 m개의 비트를 배열함으로써 상기 소스 데이터를 가공(processing)하는 단계, 상기 가공된 소스 데이터를 음파신호로 인코딩하는 단계 및 상기 인코딩된 음파신호를 출력하는 단계를 포함하고, 상기 인코딩하는 단계는, 서비스 타입 정보에 기초하여 상기 m개의 비트 각각에 대응되는 m개의 주파수 포스트를 설정하되, 상기 m개의 주파수 포스트 각각에 대해 미리 정해진 크기의 음파 톤(tone)을 생성하는 단계 및 상기 음파 톤을 병합(aggregation)하여 멀티 톤 음파신호를 생성하는 단계를 포함한다.
상기 m개의 주파수 포스트 중 최초 주파수 포스트의 위치는 상기 서비스 타입 정보에 기초하여 설정될 수 있다.
상기 m개의 주파수 포스트 상호 간의 최소 주파수 간격은 상기 서비스 타입 정보에 따라 다르게 설정될 수 있다.
상기 m개의 주파수 포스트 상호 간의 주파수 간격은 균일할 수 있다.
상기 m개의 주파수 포스트 상호 간의 주파수 간격은 불균일할 수 있다.
상기 셔플 어레이는 미리 정해진 시간 주기에 따라 변경될 수 있다.
상기 음파 톤은, 상기 소스 데이터 중 "1" 인 비트와 대응되는 상기 주파수 포스트에 생성될 수 있다.
상기 소스 데이터는 페이로드(payload) 및 에러정정코드를 포함할 수 있다.
상기 소스 데이터는 상기 음파신호가 생성되는 시간과 연관된 타임(time) 코드를 더 포함할 수 있고, 상기 타임 코드는 상기 음파신호의 유효성 여부를 판단하기 위한 정보일 수 있다.
음파 처리장치는 제어 프로그램이 기록된 메모리, 상기 제어 프로그램에 따라 동작하는 프로세서 및 외부 서버와 정보를 송수신하기 위한 통신 인터페이스를 포함하고, 상기 제어 프로그램은, 음파 처리장치가 보안 코드로 이용하는 셔플 어레이에 따라 소스 데이터에 포함된 m개의 비트를 배열함으로써 기 소스 데이터를 가공하는 단계, 상기 가공된 소스 데이터를 음파신호로 인코딩하는 단계 및 상기 인코딩된 음파신호를 출력하는 단계를 수행하고, 상기 인코딩하는 단계는, 서비스 타입 정보에 기초하여 상기 m개의 비트 각각에 대응되는 m개의 주파수 포스트를 설정하되, 상기 m개의 주파수 포스트에 각각에 대해 미리 정해진 크기의 음파 톤을 생성하는 단계 및 상기 음파 톤을 병합하여 멀티 톤 음파신호를 생성하는 단계를 포함한다.
상기 m개의 주파수 포스트 중 최초 주파수 포스트의 위치는 상기 서비스 타입 정보에 기초하여 설정될 수 있다.
상기 m개의 주파수 포스트 상호 간의 최소 주파수 간격은 상기 서비스 타입 정보에 따라 다르게 설정될 수 있다.
상기 m개의 주파수 포스트 상호 간의 주파수 간격은 균일할 수 있다.
상기 m개의 주파수 포스트 상호 간의 주파수 간격은 불균일할 수 있다.
상기 셔플 어레이는 미리 정해진 시간 주기에 따라 변경될 수 있다.
상기 음파 톤은, 상기 소스 데이터 중 "1"인 비트와 대응되는 상기 주파수 포스트에 생성될 수 있다.
상기 소스 데이터는 페이로드 및 에러정정코드를 포함할 수 있다.
상기 소스 데이터는 상기 음파신호가 생성되는 시간과 연관된 타임(time) 코드를 더 포함할 수 있고, 상기 타임 코드는 상기 음파신호의 유효성 여부를 판단하기 위한 정보일 수 있다.
도 1은 음파신호를 이용한 통신 방법의 개념도이다.
도 2는 음파신호를 이용한 통신 방법의 흐름도이다.
도 3a 및 도 3b는 음파통신에 이용되는 음파 프로토콜의 블록도이다.
도 4는 음파통신에 이용되는 주파수 및 그 주파수에 대한 음파 톤을 도시한다.
도 5는 음파통신의 보안 알고리즘을 설명한다.
도 6a 및 도 6b는 보안 알고리즘에 따른 주파수 포스트의 위치 변화를 도시한다.
도 7은 일실시예에 따른 대용량 소스 데이터를 전송하기 위한 음파 프로토콜의 블록도이다.
도 8은 대용량 소스 데이터를 전송하기 위한 음파 프로토콜의 블록도이다.
도 9는 외부 서버를 더 이용하는 음파통신 방법을 도시한다.
도 10은 외부 서버를 더 이용하는 음파통신 방법을 도시한다.
도 11은 음파 처리장치의 블록도이다.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
아래 설명하는 실시예들에는 다양한 변경이 가해질 수 있다. 아래 설명하는 실시예들은 실시 형태에 대해 한정하려는 것이 아니며, 이들에 대한 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 실시예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1은 음파신호를 이용한 통신 방법의 개념도이다.
도 1을 참조하면, 음파신호를 이용한 통신 방법은 음파 처리장치(100) 및 음파 수신장치(300)에 의해 수행될 수 있다. 실시예에 따라, 외부 서버(200)를 더 이용하는 음파통신도 가능한데, 외부 서버(200)를 더 이용한 음파통신에 관한 실시예는 도 9 및 도 10을 참조하여 후술한다. 음파 처리장치(100)는 음파 수신장치(300)로 전송할 소스(source) 데이터를 생성하고, 보안 코드로 이용하는 셔플 어레이에 따라 소스 데이터에 포함된 m개의 비트를 배열함으로써 상기 소스데이터를 가공할 수 있다. 소스 데이터(또는 가공된 소스 데이터)는 음파신호로 인코딩 되기 전의 데이터를 지칭한다.
소스 데이터는 음파통신이 이용되는 서비스 타입에 따라 달라질 수 있다.
일례에 있어서, 서비스 타입이 IoT 서비스인 경우, 소스 데이터는 Wifi 정보, IoT 기기 등 IoT 서비스에 필요한 식별정보일 수 있다.
다른 일례에 있어서, 서비스 타입이 출결 관리인 경우 소스 데이터는 강의실 및 교수님 정보일 수 있다.
또 다른 일례에 있어서, 서비스 타입이 마케팅인 경우 소스 데이터는 광고 정보일 수 있다.
또 다른 일례에 있어서, 서비스 타입이 출입 관리인 경우 소스 데이터는 출입자 정보(예를 들어, 거주자 ID)일 수 있다.
음파 처리장치(100)는 보안 코드로 이용하는 셔플 어레이에 따라 소스 데이터에 포함된 m개의 비트를 배열함으로써 상기 소스 데이터를 가공(processing)한다. 이를 비트 셔플링이라 지칭할 수도 있다. 상기 셔플 어레이는 음파 처리장치(100)의 음파통신 어플리케이션에 저장되어 있거나, 상기 어플리케이션이 적어도 하나의 파라미터(예를 들면, 날짜나 시간)를 이용하여 생성할 수 있다.
음파 처리장치(100)는 상기 가공된 소스 데이터를 음파신호로 인코딩한다.
음파 처리장치(100)는 인코딩된 음파신호를 출력할 수 있다. 음파 수신장치(300)는 근거리에 있는 음파 처리장치(100)로부터 수신된 음파신호를 가공된 소스 데이터로 디코딩할 수 있다. 음파 수신장치(300)는 상기 음파신호를 가공된 소스 데이터로 디코딩하여 m개의 비트값을 획득할 수 있다. 음파 수신장치(300)는 음파 처리장치(100)가 보유한 셔플 어레이와 대응되는 셔플 어레이 및 m개의 주파수 포스트와 대응되는 포스트 어레이(post array) 정보를 보유한다. 실시예에 따라, 음파 수신장치(300)는 음파 처리장치(100)로부터 인코딩된 음파신호와 함께 셔플 어레이 및 포스트 어레이 정보를 수신할 수도 있다. 음파 수신장치(300)는 보유 중인 셔플 어레이 및 포스트 어레이 정보에 기초하여 가공된 소스 데이터에 포함된 m개의 비트값을 원래대로 재배열함으로써 가공된 소스 데이터를 가공 전의 소스 데이터로 복원할 수 있다.
도 1은 음파 처리장치(100)가 음파 수신장치(300)로 음파신호를 전송하는 단방향 음파통신을 도시한다. 이러한 단방향 음파통신은 음파통신의 서로 다른 주체가 상호 간에 음파신호를 출력하는 양방향 음파통신과 차이점이 있다.
구체적으로, 양방향 음파통신을 위해서는 음파 처리장치(100)와 음파 수신장치(300)가 모두 마이크부를 구비해야 하지만, 단방향 음파통신의 경우 음파 처리장치(100)는 음파를 출력할 뿐, 수신하지는 않으므로 마이크부를 구비할 필요가 없다. 따라서, 현재 이용되는 마이크부가 포함되지 않은 현재 이용되는 음파 처리장치(예를 들어, POS 기기 또는 사인패드 등)로도 음파통신을 수행할 수 있으므로 음파 통신을 위해 음파 처리장치(100)를 마이크부가 구비된 장치로 교체하지 않아도 되는 효과가 있다.
<음파통신을 위한 음파 신호 생성 방법>
도 2는 음파신호를 이용한 통신 방법의 흐름도이다.
도 2를 참조하면, 음파 처리장치(100)는 보안 코드로 이용하는 셔플 어레이에 따라 소스 데이터에 포함된 m개의 비트를 배열함으로써 상기 소스 데이터를 가공한다(S100).
계속해서 도 2를 참조하면, 음파 처리장치(100)는 서비스 타입 정보에 기초하여 소스 데이터에 포함된 m개의 비트 각각에 대응되는 m개의 주파수 포스트를 설정하되, m개의 주파수 각각에 대해 미리 정해진 크기의 음파 톤을 생성한다(S110).
음파 통신은 서비스 타입 정보에 따라 다른 주파수 대역(frequency band)을 이용할 수 있다. 예를 들어, 쿠폰 서비스에 이용되는 주파수 대역은 18kHz 내지 20kHz, 출결 관리에 이용되는 주파수 대역은 17.5kHz 내지 20kHz이며, 마케팅에 이용되는 주파수 대역은 17kHz 내지 20kHz이고, 출입 관리에 이용되는 주파수 대역은 17.4kHz 내지 19.8kHz일 수 있다.
<최초 주파수 포스트의 위치>
음파 통신에 이용되는 m개의 주파수 포스트 중 최초 주파수 포스트의 위치는 서비스 타입 정보에 따라 다르게 설정될 수 있다.
일례에 있어서, 서비스 타입 정보가 쿠폰인 경우, 최초 주파수 포스트의 위치는 18kHz일 수 있다.
다른 일례에 있어서, 서비스 타입 정보가 출결 관리인 경우, 최초 주파수 포스트의 위치는 17.5kHz일 수 있다.
또 다른 일례에 있어서, 서비스 타입 정보가 마케팅인 경우, 최초 주파수 포스트의 위치는 17kHz일 수 있다.
또 다른 일례에 있어서, 서비스 타입 정보가 출입 관리인 경우, 최초 주파수 포스트의 위치는 17.4kHz일 수 있다.
서비스 타입 정보에 따라 최초 주파수 포스트의 위치를 다르게 설정함으로써, 음파통신의 보안성을 높일 수 있다.
<최소 주파수 간격>
일실시예에 있어서, 음파 통신에 이용되는 m개의 주파수 포스트 상호 간의 최소 주파수 간격은 서비스 타입 정보에 따라 다르게 설정될 수 있다.
일례에 있어서, 서비스 타입 정보가 쿠폰인 경우, 한정된 대역 내에서 많은 비트를 전송할 필요가 있으므로 음파통신에 이용되는 비트의 수(m)가 다른 종류의 서비스 타입에 비해 많을 수 있고, m개의 주파수 포스트 상호 간의 최소 주파수 간격은 50Hz일 수 있다.
다른 일례에 있어서, 서비스 타입 정보가 출결 관리인 경우, 쿠폰에 비해 상대적으로 적은 비트 전송을 필요로 하므로 음파통신에 이용되는 비트의 수(m)가 다른 종류의 서비스 타입에 비해 적을 수 있다. 또한, 출결 관리의 경우 원거리 인식이 중요하므로 포스트 주파수 간의 상호 간섭을 최소화할 필요가 있으므로, m개의 주파수 포스트 상호 간의 최소 주파수 간격은 다른 서비스 타입에 비해 큰 값(예를 들면, 100Hz)일 수 있다.
또 다른 일례에 있어서, 서비스 타입 정보가 마케팅인 경우, m개의 주파수 포스트 상호 간의 최소 주파수 간격은 100Hz일 수 있다.
또 다른 일례에 있어서, 서비스 타입 정보가 출입 관리인 경우, m개의 주파수 포스트 상호 간의 최소 주파수 간격은 40Hz일 수 있다.
최소 주파수 간격을 설정함으로써, 주파수 포스트 간의 상호 간섭(interference)을 방지할 수 있고, 서비스 타입 정보에 따라 최소 주파수 간격을 다르게 설정함으로써, 음파통신의 보안성을 높일 수 있다.
<균일한 주파수 포스트 간격>
일실시예에 있어서, 음파 통신에 이용되는 m개의 주파수 포스트 간의 주파수 간격은 균일하게 설정될 수 있다.
일례에 있어서, 서비스 타입 정보가 쿠폰인 경우, m개의 주파수 포스트 상호 간의 주파수 간격은 균일하게 50Hz로 설정될 수 있다.
다른 일례에 있어서, 서비스 타입 정보가 출결 관리인 경우, m개의 주파수 포스트 상호 간의 주파수 간격은 균일하게 100Hz로 설정될 수 있다.
또 다른 일례에 있어서, 서비스 타입 정보가 마케팅인 경우, m개의 주파수 포스트 상호 간의 주파수 간격은 균일하게 100Hz로 설정될 수 있다.
또 다른 일례에 있어서, 서비스 타입 정보가 출입 관리인 경우, m개의 주파수 포스트 상호 간의 주파수 간격은 균일하게 40Hz로 설정될 수 있다.
<불균일한 주파수 포스트 간격>
일실시예에 있어서, 음파 통신에 이용되는 m개의 주파수 포스트 간의 주파수 간격은 불균일하게 설정될 수 있다. 예를 들어, 제1(즉, 최초) 주파수 포스트와 제2 주파수 포스트 간의 주파수 간격은 50Hz이고, 제2 주파수 포스트와 제3 주파수 포스트 간의 주파수 간격은 60Hz가 되도록 설정될 수 있다. 주파수 간격이 불균일하더라도, 주파수 포스트 간의 상호 간섭을 방지하기 위해 주파수 포스트 간의 최소 주파수 간격은 유지될 수 있다.
또한, 음파 프로토콜(protocol) 역시 음파통신이 이용되는 서비스 타입에 따라 다르게 설정될 수 있다. 즉, 데이터에 포함된 비트 수 m의 구성(에러정정코드, 페이로드, 시작 비트, 종료 비트 등)은 음파통신이 이용되는 서비스 타입에 따라 다르게 설정될 수 있다.
도 3a 및 도 3b는 음파통신에 이용되는 음파 프로토콜의 블록도이다.
도 3a를 참조하면, 음파신호를 이용한 통신에 이용되는 소스 데이터는 적어도 m개의 비트를 포함할 수 있고, 도 3b를 참조하면, 상기 m개의 비트 중 가장 앞에 위치한 비트와(이하, 시작 비트) 가장 뒤에 위치한 비트(이하, 종료 비트)는 데이터의 시작과 종료를 나타낼 수 있다.
상기 시작 비트와 종료 비트는 각각 비콘 개시(Beacon start)와 비콘 종료(Beacon end)로 지칭될 수도 있다. 상기 시작 비트와 종료 비트는 항상 "1"로 설정될 수 있다. 데이터에 시작 비트와 종료 비트가 포함될 경우, 다른 데이터와의 경계를 명확히 함으로써 인코딩된 데이터를 보다 정확하게 디코딩할 수 있다. 시작 비트와 종료 비트는 실시예에 따라 이용되거나 생략될 수 있다.
상기 데이터는 페이로드(payload)와 에러정정코드(Cyclick redundancy check; CRC)를 포함할 수 있다. 페이로드는 데이터 통신의 근본적인 목적이 되는 데이터의 일부로, 헤더나 메타데이터 등을 제외한 데이터를 의미할 수 있다. 에러정정코드는 8개의 비트를 포함할 수 있다.
일실시예에 따른 도 3b를 참조하면, 데이터는 x개의 비트를 포함하는 페이로드 및 y개의 비트를 포함하는 에러정정코드를 포함할 수 있고(m-2=x+y), 페이로드의 최초 비트부터 4번째 비트는 각각 "1", "1", "0", "1"이고, 에러정정코드의 최초 비트와 최후 비트는 각각 비트는 "1"일 수 있다.
상기 소스 데이터는 음파신호가 생성되거나 비트 셔플링이 수행된 시간과 연관된 타임(time) 코드를 더 포함할 수 있다. 타임 코드는 음파신호의 유효성 여부 판단에 이용될 수 있다. 예를 들어, 음파 수신장치(300)는 수신된 음파신호를 디코딩할 때 상기 타임 코드를 이용할 수 있다. 음파 수신장치(300)는 타임 코드로부터 추출한 시간 정보에 기초하여 음파신호가 음파 처리장치(100)로부터 수신된 시간이 상기 음파신호가 생성된 시간으로부터 임계시간을 초과한 경우 상기 음파신호가 유효하지 않다고 판단할 수 있다.
일례에 있어서, 음파 수신장치(300)가 음파신호를 디코딩한 결과, 상기 음파신호가 유효하지 않다고 판단한 경우, 외부 서버(200)로 상기 음파신호와 대응되는 정보를 요청하지 않을 수 있다. 또한, 다른 일례에 있어서 외부 서버(200)는 상기 음파신호가 유효하지 않다고 판단되는 경우, 음파 수신장치(300)로부터 정보 요청이 수신되더라도 대응되는 정보를 음파 수신장치(300)로 전송하지 않을 수 있다.
도 4는 음파통신에 이용되는 주파수 및 그 주파수에 대한 음파 톤을 도시한다.
도 4를 도 3b와 함께 참조하면, 음파통신에 이용되는 주파수 대역은 18kHz 내지 20kHz이고, 데이터에 포함되는 비트(즉, 주파수 포스트의 개수)는 20개일 수 있으며, 복수의 주파수 포스트들은 일정한 간격(예를 들어, 50Hz)을 두고 존재할 수 있고, 주파수 포스트에 생성되는 음파 톤의 크기(amplitude)는 일정한 값(예를 들면, c)일 수 있다. 주파수 포스트에 생성되는 음파 톤의 크기는 음파통신이 이용되는 서비스 타입 정보에 기초하여 결정될 수 있다. 즉, 쿠폰, 출결 관리, 마케팅 및 출입 관리에 이용되는 주파수 대역, 비트 수, 주파수 간격은 각각 서로 다를 수 있다.
도 4를 참조하면, 음파통신에 이용되는 주파수 대역은 18kHz 내지 20kHz이고, 상기 주파수 대역 내에 20개의 주파수 포스트를 설정할 경우, 설정된 주파수 포스트들은 각각 50Hz의 균일한 주파수 간격(interval)을 가질 수 있다. 일실시예에 따른 도 4는 18kHz, 18.05kHz, 18.10kHz, 18.15kHz 내지 20kHz에 설정된 주파수 포스트를 도시한다.
음파 톤은 데이터 중 "1"인 비트와 대응되는 주파수 포스트에 생성될 수 있다. 도 3b 및 도 4를 함께 참조하면, 음파 처리장치(100)는 데이터 중 페이로드의 최초 비트부터 4번째 비트는 각각 "1", "1", "0", "1"이고, 에러정정코드의 최후 비트는 "1"인 경우, 대응되는 비트가 "1"인 18kHz, 18.05kHz, 18.15kHz 및 20kHz에 대해 크기 c(dB)의 음파 톤을 생성할 수 있다. 도 3b에서 페이로드의 3번째 비트는 "0"이므로, 음파 처리장치(100)는 상기 3번째 비트와 대응되는 주파수 포스트인 18.10kHz에 음파 톤을 발생시키지 않을 수 있다.
도시되지는 않았으나, 음파 통신에 이용되는 m개의 주파수 포스트 간의 주파수 간격은 보안성 향상을 위해 불균일하게(예를 들어, 제1(즉, 최초) 주파수 포스트와 제2 주파수 포스트 간의 주파수 간격은 50Hz이고, 제2 주파수 포스트와 제3 주파수 포스트 간의 주파수 간격은 60Hz이며, 제m-2 주파수 포스트와 제m-1 주파수 포스트 간의 주파수 간격은 55Hz가 되도록) 설정될 수 있다. 주파수 간격이 불균일하더라도, 주파수 포스트 간의 상호 간섭을 방지하기 위해 주파수 포스트 간의 최소 주파수 간격은 유지될 수 있다.
다시 도 2를 참조하면, 음파 처리장치(100)는, 생성된 음파 톤을 병합하여 멀티 톤 음파신호를 생성한다(S120).
현재 이용되고 있는 음파신호를 이용한 통신방법은 주파수 포스트에서 발생한 복수의 음파 톤을 순차적으로 출력한다. 이처럼, 복수의 음파 톤을 순차적으로 출력할 경우, 음파 톤을 음파 수신장치(300)로 전송하는데 소요되는 시간은 음파 톤이 발생한 주파수 포스트의 개수에 비례하여 증가한다. 반면, 음파 처리장치(100)는 복수의 주파수 포스트에서 생성된 음파 톤을 병합(aggregation)하여 생성된 멀티 톤 음파신호를 출력한다. 음파 톤을 병합하여 출력할 경우, 음파신호를 일시에 음파 수신장치(300)로 전송할 수 있으므로, 순차적으로 음파 톤을 출력하는 방법에 비해 동일한 시간 내에 상대적으로 더 많은 데이터를 전송할 수 있다. 일례에 있어서, n개의 주파수 포스트에서 미리 정해진 크기의 음파 톤이 발생한 경우, 음파 처리장치(100)는 상기 n개의 음파 톤을 병합한 멀티 톤 음파신호를 생성할 수 있다.
계속해서 도 2를 참조하면, 음파 처리장치(100)는 멀티 톤 음파신호를 출력한다(S130).
음파 처리장치(100)는 구비된 스피커부를 통해 상기 생성된 멀티 톤 음파신호를 출력할 수 있다. 음파 신호의 출력에 대해서는 아래 <음파 신호의 출력>에서 자세히 후술한다.
<음파 신호의 보안>
음파 처리장치(100)는 음파통신의 보안성을 향상시키기 위해 소스 데이터를 음파 처리장치(100)로 전송하기 전, 소스 데이터에 포함된 m개의 비트를 셔플 어레이(shuffle array)에 따라 배열함으로써 상기 소스 데이터를 가공할 수 있다.
상기 가공 과정을 통해, m!(m*(m-1)*...*2*1)가지의 비트 위치 배열이 가능하다. 음파 수신장치(300)는, 음파 처리장치(100)로부터 수신한 음파신호를 가공된 소스 데이터로 인코딩하고, 보유 중인(또는 음파 처리장치(100)로부터 수신한) 셔플 어레이를 보안코드로 이용하여 m개의 비트를 음파 처리장치(100)가 셔플 어레이를 이용하여 배열하기 전의 상태(즉, 가공 전의 소스 데이터)로 복원할 수 있다. 셔플 어레이를 m! 가지 경우의 수가 되도록 다양화 함으로써, 음파통신의 보안성을 향상시킬 수 있다.
도 5는 음파통신의 보안 알고리즘을 설명한다.
일실시예에 따른 도 5를 참조하면, 페이로드는 4개의 비트("0", "1", "0", "1")를 포함할 수 있고, 에러정정코드는 3개의 비트("1", "1", "1")를 포함할 수 있다. 도 5에 도시된 것과 같이, 페이로드에 포함된 n번째 비트는 PLn으로 표현되고, 에러정정코드에 포함된 n번째 비트는 CRCn으로 표현될 수 있다. 예를 들어, 페이로드에 포함된 첫 번째 비트는 PL1, 두 번째 비트는 PL2, 세 번째 비트는 PL3, 네 번째 비트는 PL4로 표현될 수 있고, 에러정정코드에 포함된 첫 번째 비트는 CRC1로 표현될 수 있고, 두 번째 비트는 CRC2로 표현될 수 있고, 세 번째 비트는 CRC3으로 표현될 수 있다.
음파 처리장치(100)는 미리 정해진 기준(예를 들면, 셔플 어레이)에 따라 페이로드 및 에러정정코드에 포함된 비트들의 위치를 배열할 수 있다. 또한, 음파 처리장치(100)는 소스 데이터에 포함된 비트의 위치를 배열할 때, 페이로드나 에러정정코드를 구분하여 배열하거나, 페이로드와 에러정정코드의 구분 없이 배열할 수 있다. 도 5에 도시된 것과 같이, 페이로드와 에러정정코드에 포함된 비트들을 함께 셔플링함으로써 첫 번째 비트였던 PL1은 여섯 번째 비트로 위치가 변경되고, 두 번째 비트였던 PL2는 일곱 번째 비트로 위치가 변경되며, 세 번째 비트였던 PL3은 위치 변화가 없고, 네 번째 비트였던 PL4는 두 번째 비트로 위치가 변경되고, 다섯 번째 비트였던 CRC1은 위치 변화가 없고, 여섯 번째 비트였던 CRC2는 네 번째 비트로 위치가 변경되고, 일곱 번째 비트였던 CRC3은 첫 번째 비트로 위치가 변경될 수 있다. 즉, 도 5의 상단은 가공 전의 소스 데이터를 나타내고, 하단은 가공된 소스 데이터를 나타낸다.
도 6a는 소스 데이터에 포함된 비트가 배열되기 전의 각각의 비트와 대응되는 주파수 포스트의 위치를 도시한다. 도 5와 도 6a를 함께 참조하면, 데이터는 총 7개의 비트를 포함하고, 주파수 대역이 17kHz 내지 20kHz이므로, 주파수 포스트는 17.00kHz, 17.10kHz, 17.20kHz, 17.30kHz, 17.40kHz, 17.50kHz 및 17.60kHz에 설정될 수 있다. 도 5를 함께 참조하면, 재배열되기 전 데이터(페이로드 및 에러정정코드)에 포함된 비트는 "0", "1", "0", "1", "1", "1", "1"이므로 음파 처리장치(100)는 "0"인 비트와 대응되는 주파수 포스트(즉, 17.00kHz 및 17.20kHz)에 음파 톤을 발생시키지 않고, "1"인 비트와 대응되는 주파수 포스트(즉, 17.10kHz, 17.30kHz, 17.40kHz, 17.50kHz, 17.60kHz)에 크기 b(dB)의 음파 톤을 발생시킬 수 있다.
도 6b는 소스 데이터에 포함된 비트를 셔플 어레이에 따라 배열됨으로써 가공된 소스 데이터와 대응되는 주파수 포스트의 위치를 도시한다. 도 5와 도 6b를 함께 참조하면, 데이터에 포함된 비트는 "0", "1", "0", "1", "1", "1", "1"에서 "1", "1", "0", "1", "1", "0", "1"로 재배열될 수 있다. 이 때, 주파수 포스트의 위치가 변동되더라도 주파수 포스트들 간의 간격(100Hz)은 유지된 것을 알 수 있다. 도 5를 참조하면, 재배열된 후의 데이터에 포함된 비트는 "1", "1", "0", "1", "1", "0", "1"이므로 음파 처리장치(100)는 상기 재배열된 비트에 따라 각각의 주파수 포스트에 음파 톤을 생성할 수 있다. 즉, 음파 처리장치(100)는 재배열된 후의 "1"인 비트와 대응되는 주파수 포스트(즉, 17.00kHz, 17.10kHz, 17.30kHz, 17.40kHz, 17.60kHz)에 음파 톤을 발생시키고, 재배열된 후의 "0"인 비트와 대응되는 주파수 포스트(즉, 17.20kHz 및 17.50kHz)에 음파 톤을 발생시키지 않을 수 있다.
<서비스 타입 정보에 따른 음파 신호의 생성 예>
음파신호를 이용한 통신 방법은 정보 전송 이외에도 쿠폰, 출결 관리, 마케팅, 출입 관리 등 다양한 타입의 서비스에 이용될 수 있다. 즉, 음파통신 방법에 이용되는 주파수 대역, 비트 수, 주파수 포스트의 간격 등은 상기 음파통신이 어떤 타입의 서비스에 적용되는지에 따라 달라질 수 있다.
일례에 있어서, 쿠폰 서비스에 이용되는 음파통신은 34개 이상의 비트를 이용할 수 있고, 상기 비트와 대응되는 주파수 포스트들 간의 간격은 50Hz일 수 있다.
다른 일례에 있어서, 출결 관리 서비스에 이용되는 음파통신은 20개의 비트를 이용할 수 있고, 상기 비트와 대응되는 주파수 포스트들 간의 간격은 100Hz일 수 있다.
또 다른 일례에 있어서, 마케팅 서비스에 이용되는 음파통신은 20개의 비트를 이용할 수 있고, 상기 비트와 대응되는 주파수 포스트들 간의 간격은 100Hz일 수 있다.
또 다른 일례에 있어서, 출입 관리 서비스에 이용되는 음파통신은 34개 내지 48개의 비트를 이용할 수 있고, 상기 비트와 대응되는 주파수 포스트들 간의 간격은 50Hz일 수 있다.
출결 관리 또는 마케팅의 경우, 쿠폰 또는 출입 관리에 비해 이용되는 데이터가 크지 않아 상대적으로 적은 비트 수가 이용될 수 있다. 또한, 출결 관리 마케팅에 이용되는 주파수 포스트들 간의 간격을 쿠폰 또는 출입 관리에 비해 넓게 설정함으로써 원거리 음파통신의 정확도를 높일 수 있다.
음파 처리장치(100), 음파 수신장치(300) 및 외부 서버(200)는 서비스 타입(type)에 따라 다르게 지칭될 수 있다.
일례에 있어서, 음파통신이 쿠폰 서비스에 이용될 경우, 음파 처리장치(100)는 쿠폰 제공자 단말로 지칭될 수 있고, 음파 수신장치(300)는 구매자 단말로 지칭될 수 있다. 음파통신을 위해 외부 서버(200)를 더 이용할 경우, 외부 서버(200)는 쿠폰 서버로 지칭될 수 있다.
다른 일례에 있어서, 음파통신이 출결 관리 서비스에 이용될 경우, 음파 처리장치(100)는 검사자 단말로 지칭될 수 있고, 음파 수신장치(300)는 응답자 단말로 지칭될 수 있다. 음파통신을 위해 외부 서버(200)를 더 이용할 경우, 외부 서버(200)는 출결관리 서버로 지칭될 수 있다.
또 다른 일례에 있어서, 음파통신이 마케팅에 이용될 경우, 음파 처리장치(100)는 광고전송 단말로 지칭될 수 있고, 음파 수신장치(300)는 사용자 단말로 지칭될 수 있다. 음파통신을 위해 외부 서버(200)를 더 이용할 경우, 외부 서버(200)는 광고사 서버로 지칭될 수 있다.
또 다른 일례에 있어서, 음파통신이 출입 관리에 이용될 경우, 음파 처리장치(100)는 사용자 단말로 지칭될 수 있고, 음파 수신장치(300)는 도어락 장치로 지칭될 수 있다. 음파통신을 위해 외부 서버(200)를 더 이용할 경우, 외부 서버(200)는 보안관리 서버로 지칭될 수 있다.
<대용량 데이터에 대한 음파 통신 방식>
음파통신을 이용하는 주파수 대역이 제한적이기 때문에 소스 데이터에 포함된 비트 수가 임계치(예를 들어, 64비트)를 초과하는 대용량 소스 데이터는 한 개의 음파신호로 인코딩하여 출력하기 어렵다. 따라서, 소스 데이터가 대용량 소스 데이터인 경우, 이를 여러 개의 음파신호로 분할하여 인코딩할 필요가 있다. 대용량 소스 데이터는 인코딩하기 위한 음파신호의 음파 프로토콜은 전송 순서 및 음파신호의 개수 등의 정보를 파악하기 위해 통상적인 소스 데이터와 다른 음파 프로토콜에 따라 인코딩될 수 있다.
일실시예에 있어서, 음파 처리장치(100)는 설정된 음파 프로토콜에 따라 대용량 소스 데이터를 N개의 부분(partial) 데이터로 분할할 수 있다. 부분 데이터는 포함된 비트 수가 통상적인 소스 데이터가 되도록 대용량 소스 데이터를 분할한 것 중의 하나를 의미한다. 일례에 있어서, N은 대용량 소스 데이터에 포함된 비트 수를 페이로드가 포함할 수 있는 최대의 비트 수가 되도록 나눠주는 수로 결정될 수 있다. 예를 들어, 대용량 음파 데이터가 96개의 비트를 포함하고, 페이로드가 포함하는 최대의 비트 수가 24일 경우, N은 4로 결정될 수 있다. 부분 데이터에 포함된 비트 수가 페이로드가 포함할 수 있는 최다 비트 수보다 작은 경우, 부분 데이터의 비트와 대응되지 않는 잔여 페이로드 비트는 "null" 또는 공백 데이터임을 나타내기 위한 "0" 또는 "1"의 조합으로 설정될 수 있다.
음파 처리장치(100)는 상기 N개의 부분 데이터를 전송하기 전 및 N개의 부분 데이터를 모두 전송한 후에 페이로드와 에러정정코드가 모두 공백 데이터(blank)로 설정된 더미(dummy) 데이터를 음파신호로 인코딩하여 출력할 수 있다. 부분 데이터와 함께 더미 데이터를 이용함으로써 음파 처리장치(100)와 음파 수신장치(300)는 대용량 소스 데이터의 전송의 개시와 종료를 용이하게 판단할 수 있다. 여기에서, 공백 데이터는 페이로드와 에러정코드가 모두 "null"이거나 공백 데이터임을 나타내기 위한 비트의 조합(예를 들어, 모두 "0"으로 처리)으로 설정될 수 있다.
일실시예에 따른 대용량 소스 데이터를 전송하기 위한 음파 프로토콜에 따르면 부분 데이터는 적어도 타입 정보를 나타내는 2개의 비트, 시퀀스(sequence) 정보를 나타내는 4개의 비트, 에러정정코드 및 페이로드를 포함할 수 있다. 또한, 부분 데이터는 비트 시퀀스의 가장 앞과 뒤에 각각 음파신호의 시작과 종료를 의미하는 시작 비트(Beacon start) 및 종료 비트(Beacon end)를 더 포함할 수 있다.
타입 정보를 나타내는 2개의 비트는 부분 데이터가 인코딩된 음파신호의 전송 시작, 전송 중, 전송 종료에 대한 정보를 나타낼 수 있다. 구체적으로, 부분 데이터가 인코딩된 음파신호의 전송이 개시될 경우, 타입 정보가 "00"으로 설정될 수 있고, 부분 데이터가 인코딩된 음파신호가 전송 중인 경우, 타입 정보가 "01"로 설정될 수 있고, 부분 데이터가 인코딩된 음파신호의 전송이 완료된 경우, 타입 정보가 "10"으로 설정될 수 있다. 타입 정보가 "00"이거나 "10"으로 설정된 부분 데이터는 에러정정코드 및 페이로드에 해당하는 비트가 모두 "null" 또는 공백 데이터를 의미하는 "0" 또는 "1"의 조합으로 설정될 수 있다.
시퀀스 정보를 나타내는 4개의 비트는 부분 데이터의 총 개수 및 부분 데이터의 일련번호에 대한 정보를 나타낼 수 있다.
일례에 있어서, 부분 데이터 전송 시 더미 데이터를 함께 전송하는 경우, 전송되는 부분 데이터의 개수는 더미 데이터의 시퀀스 정보를 참조하면 알 수 있다.
다른 일례에 있어서, 부분 데이터 전송 시 더미 데이터를 전송하지 않는 경우, 전송되는 부분 데이터의 개수는 마지막으로 전송된 부분 데이터의 시퀀스 정보 또는 가장 큰 시퀀스 정보를 통해 알 수 있다.
시퀀스 정보는 타입 정보에 따라 결정될 수 있다. 예를 들어, 타입 정보가, 부분 데이터가 인코딩된 음파신호의 개시 또는 종료를 의미하는 "00"이나 "10"으로 설정된 경우, 시퀀스 정보는 전송하려는 부분 데이터의 총 개수를 의미하는 값으로 설정될 수 있다(예를 들어, 총 개수가 4개인 경우 "0100"로 설정됨). 타입 정보가, 부분 데이터가 인코딩된 음파신호의 전송을 의미하는 "01"로 설정된 경우, 시퀀스 정보는 전송하려는 음파신호의 일련번호를 의미하는 값으로 설정될 수 있다(예를 들어, 총 개수가 4개인 음파신호 중 3번째 음파신호인 경우, "0011"로 설정됨). 시퀀스 정보는 전송되는 분할 데이터의 개수 판단에 이용될 수 있다. 음파 수신장치(300)는 가장 마지막으로 전송된 분할 데이터의 시퀀스 정보 또는 전송이 종료된 복수의 분할 데이터 중 가장 큰 시퀀스 정보를 이용하여 분할 데이터의 총 개수를 판단할 수 있다.
도 7은 일실시예에 따른 대용량 소스 데이터를 전송하기 위한 음파 프로토콜의 블록도이다.
도 7을 참조하면, 인코딩하려는 소스 데이터가 96비트를 포함하는 대용량 데이터이고, N이 4인 경우, 음파 처리장치(100)는 상기 96비트의 대용량 소스 데이터를 페이로드가 총 24개의 비트를 가진 4개의 부분 데이터로 분할할 수 있다. 음파 처리장치(100)는 분할된 4개의 부분 데이터(#1 내지 #4) 및 부분 데이터의 앞뒤에 위치한 2개의 더미 데이터(#0 및 #5)를 음파신호로 인코딩하여 출력할 수 있다. 도 7에 따른 음파 프로토콜은 2개의 비트를 포함하는 타입 정보, 4개의 비트를 포함하는 시퀀스 정보, 8개의 비트를 포함하는 에러정정코드(CRC) 및 24개의 비트를 포함하는 페이로드 정보를 포함할 수 있다.
더미 데이터 #0의 타입 정보는 전송 시작을 나타내기 위해 "00"으로 설정될 수 있다. 타입 정보가 "00"으로 전송 시작을 나타내므로 시퀀스 정보는 전송하려는 부분 데이터의 총 개수인 4("0100")로 표현될 수 있다. 또한, 에러정정코드와 페이로드에 해당하는 32개의 비트는 모두 공백 데이터를 나타내기 위해 "0"으로 설정될 수 있다.
부분 데이터 #1의 타입 정보는 전송 중을 나타내기 위해 "01"로 설정될 수 있다. 타입 정보가 "01"로 전송 중임을 나타내므로 시퀀스 정보는 현재 전송 중인 시퀀스의 일련번호(#1)와 대응되는 "0000"으로 설정될 수 있다. 또한, 부분 데이터 #1은 8개 비트로 구성되는 에러정정코드 및 24개 비트로 구성되는 페이로드를 포함할 수 있다.
부분 데이터 #2의 타입 정보는 전송 중을 나타내기 위해 "01"로 설정될 수 있다. 타입 정보가 "01"로 전송 중임을 나타내므로 시퀀스 정보는 현재 전송 중인 시퀀스의 일련번호(#2)와 대응되는 "0001"로 설정될 수 있다. 또한, 부분 데이터 #2는 8개 비트로 구성되는 에러정정코드 및 24개 비트로 구성되는 페이로드를 포함할 수 있다.
부분 데이터 #3의 타입 정보는 전송 중을 나타내기 위해 "01"으로 설정될 수 있다. 타입 정보가 "01"으로 전송 중임을 나타내므로 시퀀스 정보는 현재 전송 중인 시퀀스의 일련번호(#3)와 대응되는 "0010"으로 설정될 수 있다. 또한, 부분 데이터 #3은 8개 비트로 구성되는 에러정정코드 및 24개 비트로 구성되는 페이로드를 포함할 수 있다.
부분 데이터 #4의 타입 정보는 전송 중을 나타내기 위해 "01"로 설정될 수 있다. 타입 정보가 "01"로 전송 중임을 나타내므로 시퀀스 정보는 현재 전송 중인 시퀀스의 일련번호(#4)와 대응되는 "0011"로 설정될 수 있다. 또한, 부분 데이터 #4는 8개 비트로 구성되는 에러정정코드 및 24개 비트로 구성되는 페이로드를 포함할 수 있다.
더미 데이터 #5의 타입 정보는 전송 종료를 나타내기 위해 "00"으로 설정될 수 있다. 타입 정보가 "00"으로 전송 종료를 나타내므로 시퀀스 정보는 전송하려는 부분 데이터의 총 개수인 "0100"으로 표현될 수 있다. 또한, 에러정정코드와 페이로드에 해당하는 32개의 비트는 모두 공백 데이터를 나타내기 위해 "0"으로 설정될 수 있다.
도시되지 않은 다른 일례에 있어서, 대용량 소스 데이터가 96개의 비트를 포함하고 N이 6인 경우, 음파 처리장치(100)는 상기 대용량 소스 데이터를 페이로드가 16개의 비트를 가진 6개의 부분 데이터로 분할할 수 있다. 예를 들어, 상기 분할된 부분 데이터가 도 7에 도시된 음파 프로토콜을 따를 경우, 페이로드가 포함할 수 있는 최다 비트의 수는 24이고, 부분 데이터에 포함된 비트 수는 16이다. 따라서, 페이로드에 8개의 비트가 공백 데이터로 설정될 수 있다.
도시되지 않은 또 다른 일례에 있어서, 대용량 소스 데이터의 비트가 37개이고, N이 3인 경우, 대용량 소스 데이터의 비트 수는 N으로 나누어 떨어지지 않는다. 이 경우, 상기 대용량 소스 데이터를 N으로 나눈 비트 수를 가진 페이로드가 포함된 부분 데이터로 분할하되, 나누어 떨어지지 않은 나머지 비트는 가장 마지막 부분 데이터에 포함되도록 대용량 소스 데이터를 분할할 수도 있다. 예를 들어, 상기 분할된 부분 데이터가 도 7에 도시된 음파 프로토콜을 따를 경우, 페이로드가 포함할 수 있는 포함할 수 있는 최다 비트의 수는 24이고, 부분 데이터에 포함된 비트 수는 10(37/3)개이다. 따라서, 부분데이터에 포함된 페이로드 중 14개의 비트가 공백 데이터로 설정될 수 있다. 음파 처리장치(100)는 나머지 7개의 비트를 처리하기 위해 추가적인 부분 데이터를 하나 더 생성할 수 있다. 이렇게 생성된 부분 데이터의 페이로드는 17(24-7)개의 비트가 공백 데이터로 설정될 수 있다.
도 8은 다른 일실시예에 따른 대용량 소스 데이터를 전송하기 위한 음파 프로토콜의 블록도이다.
도 8을 참조하면, 음파 처리장치(100)는 대용량 소스 데이터 전송 시 더미 데이터 없이 부분 데이터를 전송할 수 있다. 이 경우, 부분 데이터의 전송 개시 및 종료를 나타내는 별도의 더미 데이터가 없으므로 페이로드를 포함하는 부분 데이터의 전송을 통해 부분 데이터의 전송이 개시되고, 마지막 페이로드를 포함하는 부분 데이터의 전송을 통해 부분 데이터의 전송이 종료될 수 있다. 도 8에 도시된 음파 프로토콜에 따르면 부분 데이터는 2개의 비트를 포함하는 타입 정보, 4개의 비트를 포함하는 시퀀스 정보, 8개의 비트를 포함하는 에러정정코드 및 24개의 비트를 포함하는 페이로드 정보를 포함할 수 있다.
부분 데이터 #1의 타입 정보는 전송 개시를 나타내기 위해 "00"으로 설정될 수 있다. 시퀀스 정보는 현재 전송 중인 시퀀스의 일련번호(#1)인 "0001"로 설정될 수 있다. 또한, 부분 데이터 #1은 8개 비트로 구성되는 에러정정코드 및 24개 비트로 구성되는 페이로드를 포함할 수 있다.
부분 데이터 #2의 타입 정보는 전송 중을 나타내기 위해 "01"로 설정될 수 있다. 시퀀스 정보는 현재 전송 중인 시퀀스의 일련번호(#2)인 "0010"으로 설정될 수 있다. 또한, 부분 데이터 #2는 8개 비트로 구성되는 에러정정코드 및 24개 비트로 구성되는 페이로드를 포함할 수 있다.
부분 데이터 #3의 타입 정보는 전송 중을 나타내기 위해 "01"로 설정될 수 있다. 시퀀스 정보는 현재 전송 중인 시퀀스의 일련번호(#3)인 "0011"로 설정될 수 있다. 또한, 부분 데이터 #3은 8개 비트로 구성되는 에러정정코드 및 24개 비트로 구성되는 페이로드를 포함할 수 있다.
부분 데이터 #4의 타입 정보는 전송 종료를 나타내기 위해 "10으로 설정될 수 있다. 시퀀스 정보는 현재 전송 중인 시퀀스의 일련번호(#4)인 "0100"으로 설정될 수 있다. 또한, 부분 데이터 #4는 8개 비트로 구성되는 에러정정코드 및 24개 비트로 구성되는 페이로드를 포함할 수 있다.
<음파 신호의 출력>
상술한 바에 따르면 음파통신을 위한 소스 데이터의 생성 및 그에 대한 셔플링은 음파 처리장치(100)에 의해 수행되는데, 실시예에 따라 상기 동작들이 외부 서버(200)에 의해 수행될 수도 있다. 이 경우, 음파 처리장치(100)는 외부 서버(200)가 생성하여 셔플 어레이에 따라 비트를 배열함으로써 가공한 소스 데이터를 외부 서버(200)로부터 수신하여 음파신호로 인코딩할 수 있다.
외부 서버(200)가 소스 데이터를 생성하고 비트를 배열함으로써 가공할 경우, 음파 처리장치(100)와 음파 수신장치(300)는 셔플 어레이 정보를 보유하지 않아도 되는 장점이 있다. 반면, 음파 처리장치(100)가 음파신호를 생성할 경우, 외부 서버(200)로부터 음파신호(예를 들어, wav 파일)를 수신하지 않아도 되는 장점이 있다. 즉, 음파 처리장치(100)는 음파신호 생성에 필요한 데이터를 외부 서버(200)로부터 수신하여 자체적으로 상기 데이터와 대응되는 음파신호를 생성할 수 있다.
일실시예에 있어서, 음파 처리장치(100)는 외부 서버(200)로부터 수신한, 음파신호 생성에 필요한 정보에 기초하여 음파신호를 생성할 수 있다. 상기 음파 생성에 필요한 정보는, 적어도 페이로드와 에러정정코드에 포함된 비트를 셔플링하기 위한 셔플 데이터, 주파수 포스트의 간격, 시작 주파수의 위치, 샘플링 레이트(sampling rate) 및 생성되는 음파 톤의 크기를 포함할 수 있다. 샘플링 레이트는 이산적(discrete) 신호를 생성하기 위해 연속적(continuous) 신호에서 획득된 단위시간(예를 들어, 초(second)) 당 샘플링 횟수를 의미하고, 그 단위는 Hz일 수 있다. 샘플링 레이트는 샘플링 주파수(sampling frequency)로 지칭될 수도 있다.
다른 일실시예에 있어서, 음파 처리장치(100)가 외부 서버(200)로부터 수신하는 데이터는 외부 서버(200)가 이미 셔플링을 수행한 데이터일 수 있다. 이 경우, 음파 처리장치(100)는 상기 데이터에 대한 셔플링을 생략하고 곧바로 상기 데이터에 포함된 비트와 대응되는 주파수 포스트에 음파 톤을 생성하고, 상기 음파 톤을 병합하여 멀티 톤 음파신호를 생성할 수 있다.
위에서 <음파통신을 위한 음파 신호 생성 방법>에서 도 2를 참조하여 상술한 바와 같이, 음파 처리장치(100)는 서비스 타입 정보에 기초하여 결정되는 주파수 대역에 대해 m개의 비트 각각의 주파수 포스트를 설정하되, 상기 m개의 비트 각각에 대응되는 주파수 포스트에 대해 서비스 타입 정보에 따른 크기의 음파 톤을 생성하고, 상기 음파 톤을 병합하여 멀티 톤 음파신호를 생성할 수 있다. 상기 서비스 타입 정보는 쿠폰, 출결 관리, 마케팅, 출입 관리 등을 포함하는 다양한 서비스 타입 중 하나에 대한 정보를 지칭한다.
도 9는 외부 서버를 더 이용하는 음파통신 방법을 도시한다.
도 9를 참조하면, 음파 처리장치(100)는 외부 서버(200)로 소스 데이터를 요청할 수 있다(S200).
외부 서버(200)는 소스 데이터를 생성하고, 상기 소스 데이터에 포함된 m개의 비트를 셔플 어레이에 기초하여 배열함으로써 상기 소스 데이터를 가공한 후, 상기 소스 데이터를 음파신호로 인코딩(예를 들어, wav 타입의 데이터)할 수 있다(S210). 구체적으로, 외부 서버(200)는 서비스 타입 정보에 기초하여 가공된 소스 데이터에 포함된 m개의 비트 각각에 대응되는 m개의 주파수 포스트를 설정하되, 상기 m개의 주파수 포스트 각각에 대해 미리 정해진 크기의 음파 톤(tone)을 생성하고, 상기 음파 톤을 병합하여 멀티 톤 음파신호를 생성할 수 있다. 이와 같이, 외부 서버(200)를 더 이용하는 음파통신의 경우, 음파 처리장치(100)는 외부 서버(200)로부터 수신된 음파신호를 출력할 뿐 가공된 소스 데이터에 포함된 m개의 비트를 배열 전 상태로 복구하기 위한 셔플 어레이나 m개의 주파수 포스트와 대응되는 포스트 어레이 정보를 보유하지 않을 수 있다.
외부 서버(200)는 상기 음파신호를 전기적 신호를 통해 음파 처리장치(100)로 전송할 수 있다.
외부 서버(200)는 인코딩된 음파신호를 음파 처리장치(100)로 전송할 수 있다(S220).
음파 처리장치(100)는 상기 음파신호를 출력할 수 있다(S230).
음파 수신장치(300)는 음파 처리장치(100)로부터 수신된 음파신호를 디코딩할 수 있다(S240).
음파 수신장치(300)는 음파신호를 디코딩한 가공된 소스 데이터를 외부 서버(200)로 전송할 수 있다(S240).
외부 서버(200)를 더 이용하는 음파통신의 경우, 음파 수신장치(300)는 음파 처리장치(100)로부터 수신된 음파신호를 디코딩할 뿐, 가공된 소스 데이터에 포함된 m개의 비트를 배열 전 상태로 복구하기 위한 셔플 어레이나 m개의 주파수 포스트와 대응되는 포스트 어레이 정보를 보유하지 않을 수 있다. 즉, 음파 수신장치(300)는 음파신호를 디코딩한 가공된 소스 데이터를 외부 서버(200)로 전송하고, 외부 서버(200)가 상기 가공된 소스 데이터를 셔플링 전의 값으로 복원하도록 할 수 있다.
외부 서버(200)는 셔플 어레이를 이용하여 m개 비트의 배열 전 위치를 가공 전 상태로 복원한 소스 데이터를 음파 수신장치(300)로 전송할 수 있다(S250).
도 10은 외부 서버를 더 이용하는 음파통신 방법을 도시한다.
도 10을 참조하면, 음파 처리장치(100)는 외부 서버(200)로 소스 데이터를 요청할 수 있다(S300).
외부 서버(200)는 소스 데이터를 생성하고, 상기 소스 데이터에 포함된 m개의 비트를 셔플 어레이에 기초하여 배열함으로써 상기 소스 데이터를 가공한 후, 상기 소스 데이터를 음파신호로 인코딩할 수 있다(S310).
이와 같이, 외부 서버(200)를 더 이용하는 음파통신의 경우, 음파 처리장치(100)는 외부 서버(200)로부터 수신된 음파신호를 출력할 뿐 가공된 소스 데이터에 포함된 m개의 비트를 배열 전 상태로 복구하기 위한 셔플 어레이나 m개의 주파수 포스트와 대응되는 포스트 어레이 정보를 보유하지 않을 수 있다.
도 9에서는 외부 서버(200)가 인코딩한 음파신호를 음파 처리장치(100)로 전송하는 방법을 설명하였으나, 실시예에 따라 도 10과 같이 외부 서버(200)가 가공된 소스 데이터를 음파신호로 인코딩한 후, 인코딩 및 음파신호와 연관된 지시 정보를 음파 처리장치(100)로 전송하고, 음파 처리장치(100)가 상기 지시 정보에 기초하여 출력하는 음파신호를 이용하여 음파통신을 수행할 수도 있다.
외부 서버(200)는 인코딩된 음파신호에 대한 지시정보(예를 들어, URL 링크)를 음파 처리장치(100)로 전송할 수 있다(S320).
음파 처리장치(100)는 상기 지시 정보에 기초하여 음파신호를 획득할 수 있다(S330).
음파 처리장치(100)는 획득된 음파신호를 출력할 수 있다(S340).
음파 수신장치(300)는 수신된 음파신호를 디코딩할 수 있다(S350).
음파 수신장치(300)는 음파신호를 디코딩한 가공된 소스 데이터를 외부 서버(200)로 전송할 수 있다(S360).
외부 서버(200)를 더 이용하는 음파통신의 경우, 음파 수신장치(300)는 음파 처리장치(100)로부터 수신된 음파신호를 디코딩할 뿐, 가공된 소스 데이터에 포함된 m개의 비트를 배열 전 상태로 복구하기 위한 셔플 어레이나 m개의 주파수 포스트와 대응되는 포스트 어레이 정보를 보유하지 않을 수 있다. 즉, 음파 수신장치(300)는 음파신호를 디코딩한 가공된 소스 데이터를 외부 서버(200)로 전송하고, 외부 서버(200)가 상기 가공된 소스 데이터를 셔플링 전의 값으로 복원하도록 할 수 있다.
외부 서버(200)는 셔플 어레이를 이용하여 m개 비트의 배열 전 위치를 가공 전 상태로 복원한 소스 데이터를 음파 수신장치(300)로 전송할 수 있다(S370).
이와 같이, 지시 정보를 이용할 경우, 외부 서버(200)가 음파 처리장치(100)로 전송하는 음파 관련 정보의 용량이 작으므로 음파통신을 통해 대용량의 소스 데이터도 전송이 가능하다.
<음파 처리장치>
도 11은 음파 처리장치(100)의 블록도이다.
도 11을 참조하면, 음파 처리장치(100)는 제어 프로그램이 기록된 메모리, 상기 제어 프로그램에 따라 동작하는 프로세서 및 외부 서버(200)와 정보를 송수신하기 위한 통신 인터페이스를 포함하고, 상기 제어 프로그램은 음파 처리장치가 보안 코드로 이용하는 셔플 어레이에 따라 소스 데이터에 포함된 m개의 비트를 배열함으로써 상기 소스 데이터를 가공(processing)하는 단계, 상기 가공된 소스 데이터를 음파신호로 인코딩하는 단계 및 상기 인코딩된 음파신호를 출력하는 단계를 수행하고, 상기 인코딩하는 단계는, 서비스 타입 정보에 기초하여 상기 m개의 비트 각각에 대응되는 m개의 주파수 포스트를 설정하되, 상기 m개의 주파수 포스트에 각각에 대해 미리 정해진 크기의 음파 톤을 생성하는 단계 및 상기 음파 톤을 병합하여 멀티 톤 음파신호를 생성하는 단계를 포함한다.
m개의 주파수 포스트 중 최초 주파수 포스트의 위치 및 최소 주파수 간격은 서비스 타입 정보에 기초하여 설정될 수 있다. 또한, 보안성 향상을 위해 m개의 주파수 포스트 상호 간의 주파수 간격은 실시예에 따라 균일하거나 불균일할 수 있다. 음파 처리장치(100)는 소스 데이터에 포함된 m개의 비트를 셔플링하는데 이용되는 셔플 어레이를 미리 정해진 시간 주기(예를 들면, 3시간, 1일, 1주일 등) 마다 변경될 수 있다. 이러한 구성을 통해, 셔플 어레이가 유출되더라도 일정 시간이 경과할 경우, 유출된 셔플 어레이를 통해서는 소스 데이터에 접근할 수 없으므로 음파통신의 보안성을 높일 수 있다. 외부 서버(200)를 더 이용하는 음파통신의 경우, 상기 셔플 어레이는 외부 서버(200)에 의해 변경될 수 있다.
음파 처리장치(100)는 상기 소스 데이터 중 "1"인 비트와 대응되는 주파수 포스트에 음파 톤을 생성할 수 있고, 상기 소스 데이터는 페이로드 및 에러정정코드를 포함할 수 있다. 음파 처리장치(100)는 상기 m개의 비트 중 시작 및 종료 비트를 제외한 나머지 m-2개의 비트가 각각 위치하는 상기 주파수 포스트를 셔플 어레이에 따라 배열할 수 있다. 상기 소스 데이터는 음파신호가 생성되는 시간과 연관된 타임(time) 코드를 더 포함하고, 상기 타임 코드는 상기 음파신호의 유효성 여부를 판단하기 위한 정보일 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
100: 음파 처리장치
200: 외부 서버
300: 음파 수신장치

Claims (19)

  1. 음파신호를 이용한 통신방법에 있어서,
    음파 처리장치가, 보안 코드로 이용하는 셔플 어레이(shuffle array)에 따라 소스 데이터에 포함된 m개의 비트를 배열함으로써 상기 소스 데이터를 가공(processing)하는 단계;
    상기 가공된 소스 데이터를 멀티 톤 음파신호로 인코딩하는 단계; 및
    상기 인코딩된 멀티 톤 음파신호를 출력하는 단계
    를 포함하고,
    상기 인코딩하는 단계는,
    서비스 타입 정보를 기초로 상기 가공된 소스 데이터의 비트 자리들 각각과 서로 다른 주파수 포스트들 각각을 맵핑하는 단계;
    제1 값을 갖는 비트 자리들 각각과 맵핑된 주파수 포스트에서 음파 톤(tone)을 생성하는 단계 - 상기 생성된 음파 톤들은 서로 다른 주파수를 갖고 제2 값을 갖는 비트 자리와 맵핑된 주파수 포스트에서 음파 톤이 생성되지 않음-; 및
    상기 생성된 음파 톤들을 병합(aggregation)하여 상기 멀티 톤 음파신호를 생성하는 단계
    를 포함하고,
    상기 서비스 타입 정보는 주파수 포스트 간격을 결정하는,
    음파신호를 이용한 통신방법.
  2. 제1항에 있어서,
    상기 주파수 포스트들 중 최초 주파수 포스트의 위치는 상기 서비스 타입 정보에 기초하여 설정되는,
    음파신호를 이용한 통신방법.
  3. 삭제
  4. 제1항에 있어서,
    상기 주파수 포스트들 상호 간의 간격은 균일한,
    음파신호를 이용한 통신방법.
  5. 제1항에 있어서,
    상기 주파수 포스트들 상호 간의 간격은 불균일한,
    음파신호를 이용한 통신방법.
  6. 제1항에 있어서,
    상기 셔플 어레이는 미리 정해진 시간 주기에 따라 변경되는,
    음파신호를 이용한 통신방법.
  7. 삭제
  8. 제1항에 있어서,
    상기 소스 데이터는 페이로드(payload) 및 에러정정코드를 포함하는,
    음파신호를 이용한 통신방법.
  9. 제8항에 있어서,
    상기 소스 데이터는 상기 멀티 톤 음파신호가 생성되는 시간과 연관된 타임(time) 코드를 더 포함하고,
    상기 타임 코드는 상기 멀티 톤 음파신호의 유효성 여부를 판단하기 위한 정보인,
    음파신호를 이용한 통신방법.
  10. 제어 프로그램이 기록된 메모리;
    상기 제어 프로그램에 따라 동작하는 프로세서; 및
    외부 서버와 정보를 송수신하기 위한 통신 인터페이스
    를 포함하고,
    상기 제어 프로그램은,
    음파 처리장치가 보안 코드로 이용하는 셔플 어레이에 따라 소스 데이터에 포함된 m개의 비트를 배열함으로써 상기 소스 데이터를 가공(processing)하는 단계;
    상기 가공된 소스 데이터를 멀티 톤 음파신호로 인코딩하는 단계; 및
    상기 인코딩된 멀티 톤 음파신호를 출력하는 단계
    를 수행하고,
    상기 인코딩하는 단계는,
    서비스 타입 정보를 기초로 상기 가공된 소스 데이터의 비트 자리들 각각과 서로 다른 주파수 포스트들 각각을 맵핑하는 단계;
    제1 값을 갖는 비트 자리들 각각과 맵핑된 주파수 포스트에서 음파 톤(tone)을 생성하는 단계 - 상기 생성된 음파 톤들은 서로 다른 주파수를 갖고 제2 값을 갖는 비트 자리와 맵핑된 주파수 포스트에서 음파 톤이 생성되지 않음-; 및
    상기 생성된 음파 톤들을 병합(aggregation)하여 상기 멀티 톤 음파신호를 생성하는 단계
    를 포함하고,
    상기 서비스 타입 정보는 주파수 포스트 간격을 결정하는,
    음파 처리장치.
  11. 제10항에 있어서,
    상기 주파수 포스트들 중 최초 주파수 포스트의 위치는 상기 서비스 타입 정보에 기초하여 설정되는,
    음파 처리장치.
  12. 삭제
  13. 제10항에 있어서,
    상기 주파수 포스트들 상호 간의 간격은 균일한,
    음파 처리장치.
  14. 제10항에 있어서,
    상기 주파수 포스트들 상호 간의 간격은 불균일한,
    음파 처리장치.
  15. 제10항에 있어서,
    상기 셔플 어레이는 미리 정해진 시간 주기에 따라 변경되는,
    음파 처리장치.
  16. 삭제
  17. 제10항에 있어서,
    상기 소스 데이터는 페이로드 및 에러정정코드를 포함하는,
    음파 처리장치.
  18. 제17항에 있어서,
    상기 소스 데이터는 상기 멀티 톤 음파신호가 생성되는 시간과 연관된 타임(time) 코드를 더 포함하고,
    상기 타임 코드는 상기 멀티 톤 음파신호의 유효성 여부를 판단하기 위한 정보인,
    음파 처리장치.
  19. 제10항의 제어 프로그램이 기록된 컴퓨터가 판독 가능한 기록매체.
KR1020170158491A 2017-11-24 2017-11-24 음파신호를 이용한 통신 방법 및 그 장치 KR102054174B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020170158491A KR102054174B1 (ko) 2017-11-24 2017-11-24 음파신호를 이용한 통신 방법 및 그 장치
US16/492,157 US20210152564A1 (en) 2017-11-24 2018-09-03 Sound wave communication platform, communication method using sound wave signal, and device therefor
PCT/KR2018/010213 WO2019103289A1 (ko) 2017-11-24 2018-09-03 음파 통신 플랫폼, 음파 신호를 이용한 통신 방법 및 그 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170158491A KR102054174B1 (ko) 2017-11-24 2017-11-24 음파신호를 이용한 통신 방법 및 그 장치

Publications (2)

Publication Number Publication Date
KR20190060360A KR20190060360A (ko) 2019-06-03
KR102054174B1 true KR102054174B1 (ko) 2019-12-10

Family

ID=66849282

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170158491A KR102054174B1 (ko) 2017-11-24 2017-11-24 음파신호를 이용한 통신 방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR102054174B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101538756B1 (ko) * 2013-06-18 2015-07-24 (주)파워보이스 외부 디바이스의 제어를 위해 음파를 출력하는 모바일 디바이스 및 방법, 그리고 외부 디바이스
KR101645175B1 (ko) * 2015-05-26 2016-08-03 나노소프트(주) 음파 통신시스템

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2334070A1 (en) * 2009-12-11 2011-06-15 Irdeto Access B.V. Generating a scrambled data stream
KR20150029664A (ko) * 2015-02-26 2015-03-18 이명수 타임 스탬프 기반의 보안 코드를 이용하는 pg 서버 시스템 및 그 구동 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101538756B1 (ko) * 2013-06-18 2015-07-24 (주)파워보이스 외부 디바이스의 제어를 위해 음파를 출력하는 모바일 디바이스 및 방법, 그리고 외부 디바이스
KR101645175B1 (ko) * 2015-05-26 2016-08-03 나노소프트(주) 음파 통신시스템

Also Published As

Publication number Publication date
KR20190060360A (ko) 2019-06-03

Similar Documents

Publication Publication Date Title
JP7065070B2 (ja) 音波によるデータ送信/受信方法及びデータ伝送システム
CN103299366B (zh) 用于编码及检测带水印信号的装置
WO2022146682A1 (en) Systems and methods for improving wireless performance
CN104361890A (zh) 一种广播音频水印的嵌入与识别方法
US10699723B2 (en) Encoding and decoding of digital audio signals using variable alphabet size
US9100042B2 (en) High throughput decoding of variable length data symbols
US10699721B2 (en) Encoding and decoding of digital audio signals using difference data
US8447618B2 (en) Method and apparatus for encoding and decoding residual signal
JP2018041091A (ja) 信号処理方法及び装置
KR102054174B1 (ko) 음파신호를 이용한 통신 방법 및 그 장치
US20210152564A1 (en) Sound wave communication platform, communication method using sound wave signal, and device therefor
US20210391990A1 (en) Systems and methods for compression and encryption of data
US9923669B2 (en) Distributed Reed-Solomon codes for simple multiple access networks
CN111052639B (zh) 基于音频的服务集标识符
CN110998711A (zh) 动态音频数据传输掩蔽
KR102025524B1 (ko) 음파 통신 플랫폼
CN110189763B (zh) 一种声波配置方法、装置及终端设备
US20170063495A1 (en) Audio signal transmission system and data processing method for enhancing data accuracy of the same
US20220375465A1 (en) Methods to employ compaction in asr service usage
US20160293169A1 (en) Audio Compression Using Vector Field Normalization
KR102544899B1 (ko) 외부 저장 매체를 이용한 임베딩 블록 체인 방법 및 시스템
US11681801B2 (en) Malicious code purification in graphics files
KR102068556B1 (ko) 파일럿 코드 시퀀스를 이용한 데이터 은닉/추출 장치 및 방법
KR20190109362A (ko) 음파 통신 플랫폼
US20220366912A1 (en) Methods to employ concatenation in asr service usage

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant