CN111615106B - 一种语音数据包的加密方法及装置 - Google Patents

一种语音数据包的加密方法及装置 Download PDF

Info

Publication number
CN111615106B
CN111615106B CN201910139010.6A CN201910139010A CN111615106B CN 111615106 B CN111615106 B CN 111615106B CN 201910139010 A CN201910139010 A CN 201910139010A CN 111615106 B CN111615106 B CN 111615106B
Authority
CN
China
Prior art keywords
data
packet
voice data
block data
voice
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN201910139010.6A
Other languages
English (en)
Other versions
CN111615106A (zh
Inventor
陶伟成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201910139010.6A priority Critical patent/CN111615106B/zh
Publication of CN111615106A publication Critical patent/CN111615106A/zh
Application granted granted Critical
Publication of CN111615106B publication Critical patent/CN111615106B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

本发明公开了一种语音数据包的加密方法及装置。其中,加密方法包括步骤:对语音数据包进行分组,得到至少一个分组数据;对分组数据进行拆分,得到各分组数据对应的分块数据;对分块数据,执行步骤:先生成分块数据的加密信息,再基于加密信息和分块数据,生成加密后的分块数据。本发明一并公开了相应的装置及计算设备。

Description

一种语音数据包的加密方法及装置
技术领域
本发明涉及数据处理技术领域,尤其涉及一种语音数据包的加密方法及装置。
背景技术
近年来,无线通信技术、传感器技术等的深入发展,为智能家居行业带来了全新的面貌。智能家居技术更是受到人们的广泛关注。目前,智能家居系统的无线传输技术主要是采用Wi-Fi、蓝牙、ZigBee和Z-Wave。其中,工作在免许可的2.4GHz的ISM射频频段的蓝牙低功耗技术(BLE,Bluetooth Low Energy),由于其低成本、短距离、可互操作的鲁棒性等优势,成为越来越多的智能家居设备采用的无线通信技术。BLE常被应用于对实时性要求较高且成本较低的产品中,如智能遥控、智能门锁等。
以采用BLE模块的智能设备(以下简称为“蓝牙设备”)为例,由于计算资源限制,如,不支持浮点计算、内存一般不大于256K,在如此小的内存中还需要运行蓝牙协议栈、蓝牙应用和蓝牙数据压缩算法,故,通用的加密算法无法在这种计算资源匮乏的蓝牙设备中使用。因此,现有的方案大多采用明文传输或者简单的置换加密。然而,对于一些智能语音设备来说,保护用户语音数据的安全是非常必要的。简单的置换加密,很容易通过数据的规律分析出置换规律,安全性不高。
图1示出了现有技术中常采用的置换加密方法的典型实例。如图1所示,原始语音数据包中20Bytes(字节)的数据通过调换位置,如右移4个位置后,得到加密后的数据,然后再进行传输。这种加密方法消耗得计算资源很少,虽然达到了加密的目的,但加密安全性不高,攻击者只需通过一定量的数据分析,就能破解置换的规律。
因此,针对现有资源受限的蓝牙设备,尤其是涉及到采集用户语音数据的智能设备,需要一种改进的加密方案,以解决上述问题。
发明内容
为此,本发明提供了一种语音数据包的加密方法及装置,以力图解决或至少缓解上面存在的至少一个问题。
根据本发明的一个方面,提供了一种语音数据包的加密方法,包括步骤:对语音数据包进行分组,得到至少一个分组数据;对分组数据进行拆分,得到各分组数据对应的分块数据;对分块数据,执行步骤:生成分块数据的加密信息,基于加密信息和分块数据,生成加密后的分块数据。
可选地,在根据本发明的方法中,语音数据包为通过低功耗蓝牙方式传输的语音数据包。
可选地,根据本发明的方法还包括步骤:基于分块数据所属语音数据包在加密前后的序号、以及进行加密的密钥,来生成加密信息。
可选地,在根据本发明的方法中,基于加密信息和分块数据,生成加密后的分块数据的步骤包括:将加密信息和分块数据相结合,生成加密后的分块数据,其中,加密后的分块数据的长度与语音数据包的长度保持一致;并且,若将加密信息和分块数据相结合,得到的数据长度小于语音数据包的长度,则通过添加随机数使其与语音数据包的长度保持一致。
可选地,在根据本发明的方法中,基于加密信息和分块数据,生成加密后的分块数据的步骤还包括:利用加密信息中的密钥对该分块数据进行加密。
可选地,根据本发明的方法还包括步骤:将每两个相邻的语音数据包作为一个分组,以得到至少一个分组数据。
可选地,在根据本发明的方法中,密钥是随机生成的。
可选地,根据本发明的方法还包括步骤:对分组数据进行拆分,得到各分组数据对应的3个分块数据。
可选地,在根据本发明的方法中,对于每个分组数据,其对应的各分块数据的长度不相同。
根据本发明的又一个方面,提供了基于蓝牙设备对语音数据包进行加密的方法,包括步骤:采集语音数据包;对所采集的语音数据包执行如上所述的加密方法,得到加密后的语音数据包;发送加密后的语音数据包。
可选地,在根据本发明的方法中,语音数据包为通过低功耗蓝牙方式传输的语音数据包。
根据本发明的又一个方面,还提供了一种语音数据包的加密装置,包括:分组模块,适于对语音数据包进行分组,得到至少一个分组数据,还适于对分组数据进行拆分,得到各分组数据对应的分块数据;加密模块,适于生成分块数据的加密信息,并基于加密信息和分块数据,生成加密后的分块数据。
根据本发明的再一个方面,还提供了一种蓝牙设备,包括:语音采集装置,适于采集语音数据包;语音数据包的加密装置,适于对所采集的语音数据包进行加密,以生成加密后的语音数据包;数据发送装置,适于发送加密后的语音数据包。
根据本发明的另一个方面,还提供了一种计算设备,包括:至少一个处理器;和存储有程序指令的存储器,其中,程序指令被配置为适于由至少一个处理器执行,程序指令包括用于执行如上所述的加密方法的指令。
根据本发明的另一个方面,提供了一种存储有程序指令的可读存储介质,当程序指令被计算设备读取并执行时,使得该计算设备执行如上所述的加密方法。
根据本发明的加密方案,针对计算资源受限的蓝牙设备,对待加密的语音数据包进行了拆分,将其拆成多个分组数据,再对各分组数据进行进一步拆分,分成多个分块数据。而后,按照一定的规则生成各分块数据的加密信息,并利用加密信息将各分块数据扩展到语音数据包的长度。这样,语音数据中的各语音数据包对应的加密密钥不一样,提升了数据的安全性,使得攻击者无法破解或者破解非常困难。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了现有技术中常采用的置换加密方法的典型实例;
图2示出了根据本发明一些实施例的蓝牙设备200的应用场景示意图;
图3示出了根据本发明一些实施例的计算设备300的示意图;
图4示出了根据本发明一些实施例的语音数据包的加密方法400的流程图;
图5示出了根据本发明一个实施例的加密信息的示意图;以及
图6示出了根据本发明另一些实施例的基于蓝牙设备200对语音数据包进行加密的方法600的流程图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图2示出了根据本发明一些实施例的蓝牙设备200的应用场景示意图。根据本发明的实施方式,该蓝牙设备200中包含BLE模块,使其基于HoGP协议与其他蓝牙设备240进行通信。其中,通信双方是C/S关系,可以将蓝牙设备200作为客户端(即,Client),将其他蓝牙设备240作为服务端(即,Server),关于通信双方通过GATT来实现HID的过程此处不做过多阐述,可参考相关的无线通信标准(如Bluetooth 4.0)说明。
虽然在图2中仅仅示出了1个蓝牙设备200和1个其他蓝牙设备240,但是应当理解,在实践中,应用场景中可能存在有不止一个蓝牙设备200和其他蓝牙设备240,本发明不受限于蓝牙设备200和其他蓝牙设备240的数量。同时,本发明亦不受限于蓝牙设备200和其他蓝牙设备240的类型,可以是具有BLE模块的移动设备(如,蓝牙遥控器)、智能可穿戴设备(如,蓝牙耳机、蓝牙手表)、个人计算机、智能家电(如,智能电视、智能冰箱、智能微波炉)等,甚至可以是服务器。
蓝牙设备200的一个应用场景为家用场景,蓝牙设备200被实现为与智能电视配套的蓝牙遥控器(即,蓝牙遥控器与智能电视通过蓝牙实现无线连接)。同时,蓝牙遥控器还具有语音交互模块,以接收用户发出的语音指示。一个典型的语音交互模块包括麦克风等语音输入单元、扬声器等语音输出单元以及处理器。这样,用户通过向蓝牙遥控器发出语音指示,就可以指示智能电视执行某些操作,如点播电视、点播歌曲、购物、了解天气预报等等。当然不限于此,用户可以通过诸如蓝牙遥控器这样的蓝牙设备200,对与之相连的其他蓝牙智能设备进行控制。
根据本发明的一些实施方式,除基本的配置外,蓝牙设备200中还包含:语音采集装置210、语音数据的加密装置220和数据发送装置230。
其中,语音采集装置210用于采集语音数据包。一般地,语音采集装置210实时地采集用户输入的语音数据,根据本发明的实施方式,该语音数据由若干个语音数据包构成,即,语音采集装置210实时地采集到语音数据包。语音数据包的加密装置220对所采集的语音数据包进行加密,以生成加密后的语音数据包。数据发送装置230再将加密后的语音数据包依次发送至与之建立连接的其他蓝牙设备240上。
在根据本发明的实施例中,语音数据包的加密装置220又包括分组模块222和加密模块224。其中,分组模块222先对语音数据包进行分组,得到至少一个分组数据;再对分组数据进行拆分,得到各分组数据对应分块数据。加密模块224对各分块数据进行加密,具体地,对于每个分块数据,生成分块数据的加密信息,并基于加密信息和分块数据,生成加密后的分块数据。关于利用分组模块222和加密模块224对语音数据进行加密的过程,在下文中会做进一步阐述。
以前文所述的蓝牙遥控器的应用场景为例。用户向蓝牙遥控器(如,对着蓝牙遥控器的麦克风)输入语音指令——“我想看***电影”,蓝牙遥控器采集用户的语音数据,得到若干个语音数据包,并对其进行加密,生成加密后的语音数据包。而后,蓝牙遥控器将其发送至与之相连的智能电视,由智能电视对其进行识别,分析出用户意图后,执行相应的操作,来响应用户的语音指令(例如,为用户匹配到***电影并进行播放)。
根据本发明的实施方式,蓝牙设备200可以通过如下所述的计算设备300来实现。图3示出了根据本发明一些实施例的计算设备300的示意图。
如图3所示,在基本的配置302中,计算设备300典型地包括系统存储器306和一个或者多个处理器304。存储器总线308可以用于在处理器304和系统存储器306之间的通信。
取决于期望的配置,处理器304可以是任何类型的处理,包括但不限于:微处理器(μP)、微控制器(μC)、数字信息处理器(DSP)或者它们的任何组合。处理器304可以包括诸如一级高速缓存310和二级高速缓存312之类的一个或者多个级别的高速缓存、处理器核心314和寄存器316。示例的处理器核心314可以包括运算逻辑单元(ALU)、浮点数单元(FPU)、数字信号处理核心(DSP核心)或者它们的任何组合。示例的存储器控制器318可以与处理器304一起使用,或者在一些实现中,存储器控制器318可以是处理器304的一个内部部分。
取决于期望的配置,系统存储器306可以是任意类型的存储器,包括但不限于:易失性存储器(诸如RAM)、非易失性存储器(诸如ROM、闪存等)或者它们的任何组合。系统存储器306可以包括操作系统320、一个或者多个应用322以及程序数据324。在一些实施方式中,应用322可以布置为在操作系统上由一个或多个处理器304利用程序数据324执行指令。另外,计算设备300还包括储存设备332,储存接口总线334则可将储存设备332连接到外部,而储存设备332又包括了可移除储存器336和不可移除储存器338。
计算设备300还可以包括有助于从各种接口设备(例如,输出设备342、外设接口344和通信设备346)到基本配置302经由总线/接口控制器330的通信的接口总线340。示例的输出设备342包括图形处理单元348和音频处理单元350。它们可以被配置为有助于经由一个或者多个A/V端口352与诸如显示器或者扬声器之类的各种外部设备进行通信。示例外设接口344可以包括串行接口控制器354和并行接口控制器356,它们可以被配置为有助于经由一个或者多个I/O端口358和诸如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备)或者其他外设(例如打印机、扫描仪等)之类的外部设备进行通信。示例的通信设备346可以包括网络控制器360,其可以被布置为便于经由一个或者多个通信端口364与一个或者多个其他计算设备362通过网络通信链路的通信。
网络通信链路可以是通信介质的一个示例。通信介质通常可以体现为在诸如载波或者其他传输机制之类的调制数据信号中的计算机可读指令、数据结构、程序模块,并且可以包括任何信息递送介质。“调制数据信号”可以是这样的信号,它的数据集中的一个或者多个或者它的改变可以在信号中编码信息的方式进行。作为非限制性的示例,通信介质可以包括诸如有线网络或者专线网络之类的有线介质,以及诸如声音、射频(RF)、微波、红外(IR)或者其它无线介质在内的各种无线介质。这里使用的术语计算机可读介质可以包括存储介质和通信介质二者。
计算设备300可以实现为小尺寸便携(或者移动)电子设备的一部分,也可以实现为包括桌面计算机和笔记本计算机配置的个人计算机。当然,计算设备300还可以实现为服务器,例如文件服务器、数据库服务器、应用程序服务器和WEB服务器等。在根据本发明的实施例中,计算设备300被配置为执行根据本发明的语音数据包的加密方法400和/或方法600。计算设备300的应用322中包含执行根据本发明的方法400和/或方法600的多条程序指令。
图4示出了根据本发明一些实施例的语音数据包的加密方法400的流程图。该方法400适于在如上所述的具有BLE模块的蓝牙设备200中执行。
如图4所示,方法400始于步骤S410。在步骤S410中,分组模块222对语音数据包进行分组,得到至少一个分组数据。
按照蓝牙BLE 4.0协议,语音数据包为通过低功耗蓝牙方式传输的语音数据包(即,BLE语音数据包),其中,语音数据包的长度为20Bytes(字节)。
在一种实施例中,将每两个相邻的语音数据包作为一个分组,以得到至少一个分组数据。换句话说,将每40Bytes的语音数据作为一个分组数据。应当指出,根据本发明的实施例,也可以将每个或每三个或每四个语音数据包,作为一个分组,来得到分组数据。本发明的实施例对分组的大小和数目不做过多限制。
篇幅所限,以下以每个分组数据的长度为40Bytes为例,来说明对每个分组数据进行加密的过程。应当指出,本领域技术人员据此可以推演出对其它大小的分组数据进行加密的方法,均在本发明的保护范围之内。
在随后的步骤S420中,分组模块222对所得到的各分组数据分别进行拆分,以得到各分组数据对应的分块数据。
根据本发明的一种实施例,对于每个分组数据,其对应的各分块数据的长度可以不相同。例如,将40Bytes的分组数据拆分成4个分块数据,这4个分块数据的长度分别为15Bytes、11Bytes、8Byetes、6Bytes。当然,各分块数据的长度也可以是相同的。又如,将40Bytes的分组数据平均拆分成4个分块数据,则每个分块数据的长度为10Byetes。通常在对分组数据进行拆分后,其对应的各分块数据的长度均小于语音数据包的长度,即小于20Bytes。
根据又一种实施例,将分组数据拆分成3个分块数据(但不限于此),即,每个分组数据对应3个分块数据。在一种实施例中,将40Byetes的分组数据拆分成3个分块数据。这3个分块数据的长度分别是16Byetes、16Bytes和8Bytes,但不限于此。
此外,在对分组数据进行拆分时,可以顺序地对其进行拆分,也可以倒序地对其进行拆分,或者可以按照其他规则对其进行拆分,本发明的实施例对此不做限制。
随后在步骤S430中,对于每个分块数据,加密模块224先生成分块数据的加密信息,再基于分块数据及其对应的加密信息,生成加密后的分块数据。
以下分为两个步骤来具体阐述对分块数据进行加密的过程。
第一步,生成分块数据的加密信息。
根据本发明的实施例,加密信息需要基于分块数据所属语音数据包在加密前后的序号、以及进行加密的密钥,来生成,且加密信息具有固定长度。这样,分块数据的加密信息包括:该分块数据所属的语音数据包在加密前的序号(记作,编码包序号)、在加密后的序号(即,加密后要发送时的序号,记作,传输包序号)、以及对该分块数据进行加密的密钥。通过编码包序号和传输包序号,就标注了该分块数据在分组数据中的相对位置。这样,在后续的数据传输过程中,即使发生数据丢包,也不会影响后来的数据的解码。
图5示出了根据本发明一个实施例的加密信息的示意图。在本发明的实施例中,加密信息的长度为4Bytes。如图5中示出的0-31(bit),共32Bits(位)。其中,高3个Bytes为编码包序号,在最低的1个Byte中,高2Bits为传输包序号,剩余低6Bits为密钥。当然,编码包序号、传输包序号和密钥的位置不限于此,在具体实施中,可依据具体情况调换三者的位置、顺序以及调整三者的长度,本发明的实施例对此不做过多限制。
在本发明的实施例中,密钥是随机生成的一组随机数。这样,不同的分块数据就具有不同的密钥,即,各语音数据包采用不同的加密密钥进行加密,从而提升数据的安全性。可选地,可以将该蓝牙设备200的MAC地址作为伪随机数的种子,来生成一个序列,从序列中选取6Bits长度作为密钥。本发明的实施例对采用何种方法来生成作为密钥的随机数,并不做过多限制。任何生成随机数的方法均可以与本发明的实施例相结合,来实现方法400。
第二步,基于分块数据及其对应的加密信息,生成加密后的分块数据。
根据本发明的实施例,将分块数据和其对应的加密信息相结合(例如,将分块数据和加密信息进行拼接),就得到了加密后的分块数据。在根据本发明的实施例中,可以将加密信息设置在分块数据中的任意位置,只要确保在解码端与其保持一致即可。
另外,加密后的分块数据的长度与语音数据包的长度保持一致。这样,在本发明的一种实施例中,加密后的分块数据的长度也应当是20Bytes。
如前文所述,将40Byetes的分组数据拆分成了3个分块数据N1、N2和N3,其中N1的长度为16Byetes,N2的长度为16Byetes,N3的长度为8Bytes。对于N1和N2,分块数据本身有16Bytes,加上4Bytes的加密信息,长度刚好是20Bytes,即,加密后的分块数据N1’和N2’均可以作为一个语音数据包。而对于N3,分块数据的8Bytes加上4Bytes的加密信息,长度为12Bytes,小于语音数据包的长度。在根据本发明的实施例中,若将加密信息和分块数据相结合,得到的数据长度小于语音数据包的长度,则通过添加随机数的方式,使得到的数据长度与语音数据包的长度保持一致。在上述分块数据N3中,可以通过添加8Bytes的随机数,使生成的数据长度达到20Bytes。这样,加密后的分块数据N3’也可以作为一个语音数据包。需要说明的是,添加随机数的位置同样也可以是任意的,只要确保解码端的位置一样即可。
进一步地,利用加密信息中的密钥对该分块数据进行加密。根据本发明的一个实施例,采用置换加密的方式,将加密信息中的密钥与分块数据本身中的数据(如,Payload数据)进行置换加密。例如,可以从16Bytes的分块数据中选取6Bits,与6Bits的密钥进行置换加密,而后得到加密后的分块数据。
综上,加密后的分块数据yi可以表示为:
yi=KeyHeaderi+key(Ni)+randi
其中,Ni表示第i个分块数据,key(Ni)表示利用密钥key对分块数据Ni进行加密,KeyHeaderi表示第i个分块数据的加密信息,randi表示第i个分块数据可能对应的随机数。
在一些实施例中,当KeyHeaderi+key(Ni)的数据长度与语音数据包的长度一致时,不需要randi,此时,加密后的分块数据yi可以简写为:
yi=KeyHeaderi+key(Ni)
重复上面的加密过程,对待加密的语音数据包中的所有分块数据,均进行加密,得到加密后的分块数据。如前文所述,加密后的分块数据就是一个个语音数据包,再将这些语音数据包传输至其他蓝牙设备240进行解码即可。
根据本发明的加密方法,针对计算资源受限的蓝牙设备,对语音数据包进行了拆分,将其拆成多个分组数据,再对各分组数据进行进一步拆分,分成多个分块数据。而后,按照一定的规则生成各分块数据的加密信息,并利用加密信息将各分块数据扩展到语音数据包的长度。这样,各语音数据包对应的加密密钥不一样,提升了数据的安全性,使得攻击者无法破解或者破解非常困难。
同时,根据本发明的加密方法不需要复杂的密钥协商过程,计算量不大,适于在计算资源受限的蓝牙设备中使用。
图6示出了根据本发明另一些实施例的基于蓝牙设备200对语音数据进行加密的方法600的流程图。方法600是对方法400的进一步补充,以下将结合图2和图4,介绍方法600的执行过程。
如图6所示,方法600始于步骤S610。在步骤S610中,通过语音采集装置210采集语音数据包。根据本发明的一个实施例,蓝牙设备200上包括麦克风等语音输入单元,用户可以通过麦克风输入语音数据,语音采集装置210实时采集到多个语音数据包。
随后在步骤S620中,通过语音数据包的加密装置220对所采集的语音数据包进行加密,得到加密后的语音数据包。根据本发明的实施方式,加密的过程可参考前文方法400的相关描述,此处不再赘述。
随后在步骤S630中,通过数据发送装置230发送加密后的语音数据包。
在一些实施方式中,蓝牙设备200例如被实现为带BLE模块的蓝牙耳机,且该耳机可以与其它蓝牙设备(如,空调、电视等)建立无线连接。用户向蓝牙耳机输入语音——“将室内温度调整到26度”。蓝牙耳机采集到该语音数据,得到对应的若干个语音数据包,并通过上述方法400对这些语音数据包进行加密,得到加密后的语音数据包。而后,将加密后的语音数据包传送至与之连接的空调,由其对加密后的语音数据包进行解码,在识别出用户意图后,执行相应的操作——将空调打开并将温度调整到26度,来响应用户。
应当理解,关于方法400和方法600中各步骤的具体描述可参考前文关于蓝牙设备200的相关描述,篇幅所限,此处不再进行赘述。
这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如可移动硬盘、U盘、软盘、CD-ROM或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。
在程序代码在可编程计算机上执行的情况下,计算设备一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的数据存储方法和/或数据查询方法。
以示例而非限制的方式,可读介质包括可读存储介质和通信介质。可读存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在可读介质的范围之内。
在此处所提供的说明书中,算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与本发明的示例一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的而非限制性的,本发明的范围由所附权利要求书限定。

Claims (13)

1.一种语音数据包的加密方法,包括步骤:
对多个语音数据包进行分组,得到至少一个分组数据,所述分组数据包括一个或多个语音数据包;
对所述分组数据进行拆分,得到所述分组数据对应的多个分块数据;
对所述分块数据,执行:
生成所述分块数据的加密信息,
基于所述加密信息和所述分块数据,生成加密后的分块数据,
其中,所述基于所述加密信息和所述分块数据,生成加密后的分块数据的步骤包括:
将所述加密信息和所述分块数据相结合,生成加密后的分块数据,所述加密后的分块数据的长度与语音数据包的长度保持一致。
2.如权利要求1所述的方法,其中,
所述语音数据包是通过低功耗蓝牙方式传输的语音数据包。
3.如权利要求1或2所述的方法,其中,所述生成分块数据的加密信息的步骤包括:
基于所述分块数据所属语音数据包在加密前后的序号以及进行加密的密钥,来生成加密信息。
4.如权利要求3所述的方法,其中,所述基于所述加密信息和所述分块数据,生成加密后的分块数据的步骤还包括:
若将所述加密信息和所述分块数据相结合,得到的数据长度小于语音数据包的长度,则通过添加随机数使其与语音数据包的长度保持一致。
5.如权利要求1所述的方法,其中,所述基于所述加密信息和所述分块数据,生成加密后的分块数据的步骤还包括:
利用加密信息中的密钥对该分块数据进行加密。
6.如权利要求3所述的方法,其中,所述密钥是随机生成的。
7.如权利要求1所述的方法,其中,所述对所述分组数据进行拆分,得到所述分组数据对应的多个分块数据的步骤包括:
对所述分组数据进行拆分,得到所述分组数据对应的3个分块数据。
8.如权利要求1所述的方法,其中,
对于每个分组数据,其对应的多个分块数据的长度不相同。
9.基于蓝牙设备对语音数据包进行加密的方法,包括步骤:
采集语音数据包;
对所采集的语音数据包执行如权利要求1-8中任一项所述的加密方法,得到加密后的语音数据包;
发送所述加密后的语音数据包。
10.一种语音数据包的加密装置,包括:
分组模块,适于对多个语音数据包进行分组,得到至少一个分组数据,所述分组数据包括一个或多个语音数据包,然后对所述分组数据进行拆分,得到所述分组数据对应的多个分块数据;
加密模块,适于对所述分块数据,生成所述分块数据的加密信息,以及将所述加密信息和所述分块数据相结合,生成加密后的分块数据,所述加密后的分块数据的长度与语音数据包的长度保持一致。
11.一种蓝牙设备,包括:
语音采集装置,适于采集语音数据包;
如权利要求10所述的加密装置,适于对所采集的语音数据包进行加密,以生成加密后的语音数据包;
数据发送装置,适于发送所述加密后的语音数据包。
12.一种计算设备,包括:
至少一个处理器;和
存储有程序指令的存储器,其中,所述程序指令被配置为适于由所述至少一个处理器执行,所述程序指令包括用于执行如权利要求1-9中任一项所述方法的指令。
13.一种存储有程序指令的可读存储介质,当所述程序指令被计算设备读取并执行时,使得所述计算设备执行如权利要求1-9中任一项所述的方法。
CN201910139010.6A 2019-02-25 2019-02-25 一种语音数据包的加密方法及装置 Active CN111615106B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910139010.6A CN111615106B (zh) 2019-02-25 2019-02-25 一种语音数据包的加密方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910139010.6A CN111615106B (zh) 2019-02-25 2019-02-25 一种语音数据包的加密方法及装置

Publications (2)

Publication Number Publication Date
CN111615106A CN111615106A (zh) 2020-09-01
CN111615106B true CN111615106B (zh) 2023-09-26

Family

ID=72197970

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910139010.6A Active CN111615106B (zh) 2019-02-25 2019-02-25 一种语音数据包的加密方法及装置

Country Status (1)

Country Link
CN (1) CN111615106B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113254974B (zh) * 2021-06-11 2022-07-08 山东广鹏信息科技有限公司 一种信息安全加密方法及装置
CN114124360B (zh) * 2021-12-10 2023-06-16 胜斗士(上海)科技技术发展有限公司 加密装置及方法、设备和介质
CN113938270A (zh) * 2021-12-17 2022-01-14 北京华云安信息技术有限公司 弹性降低复杂度的数据加密方法和装置
CN117321999A (zh) * 2022-04-29 2023-12-29 京东方科技集团股份有限公司 视频传输方法及装置、电子设备、可读介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101764690A (zh) * 2008-12-24 2010-06-30 广东电子工业研究院有限公司 基于互联网的隐秘信息通信方法
CN102148798A (zh) * 2010-02-04 2011-08-10 上海果壳电子有限公司 大容量数据包的高效并行安全加解密方法
CN103490900A (zh) * 2013-09-29 2014-01-01 福建星网锐捷网络有限公司 加密认证方法及设备
WO2015176087A1 (de) * 2014-05-20 2015-11-26 Logodynamic Unit Gmbh Verfahren und vorrichtung zur durchführung einer symmetrischen stromverschlüsselung von daten
CN106055936A (zh) * 2016-05-18 2016-10-26 深圳大学 可执行程序数据包加密/解密方法及装置
CN109145624A (zh) * 2018-08-29 2019-01-04 广东工业大学 一种基于Hadoop平台的多混沌文本加密算法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201342873A (zh) * 2012-04-11 2013-10-16 Blucrypt Technologies Inc 語音保密方法、加密/解密方法及保密設備

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101764690A (zh) * 2008-12-24 2010-06-30 广东电子工业研究院有限公司 基于互联网的隐秘信息通信方法
CN102148798A (zh) * 2010-02-04 2011-08-10 上海果壳电子有限公司 大容量数据包的高效并行安全加解密方法
CN103490900A (zh) * 2013-09-29 2014-01-01 福建星网锐捷网络有限公司 加密认证方法及设备
WO2015176087A1 (de) * 2014-05-20 2015-11-26 Logodynamic Unit Gmbh Verfahren und vorrichtung zur durchführung einer symmetrischen stromverschlüsselung von daten
CN106055936A (zh) * 2016-05-18 2016-10-26 深圳大学 可执行程序数据包加密/解密方法及装置
CN109145624A (zh) * 2018-08-29 2019-01-04 广东工业大学 一种基于Hadoop平台的多混沌文本加密算法

Also Published As

Publication number Publication date
CN111615106A (zh) 2020-09-01

Similar Documents

Publication Publication Date Title
CN111615106B (zh) 一种语音数据包的加密方法及装置
Hasan et al. Lightweight cryptographic algorithms for guessing attack protection in complex internet of things applications
Hameed et al. Towards a formally verified zero watermarking scheme for data integrity in the Internet of Things based-wireless sensor networks
Pei et al. Trade-off of security and performance of lightweight block ciphers in Industrial Wireless Sensor Networks
US8886926B2 (en) Single-pass data compression and encryption
CN109309650B (zh) 处理数据的方法、终端设备和网络设备
KR20190039850A (ko) 비트-믹서들로부터 안전한 해시 함수를 구성하는 방법
JPWO2016116999A1 (ja) パケット送信装置、パケット受信装置、パケット送信プログラムおよびパケット受信プログラム
CN105119900A (zh) 信息安全传输方法、联网接入方法及相应的终端
CN113595744B (zh) 入网方法、装置、电子设备及存储介质
Rostampour et al. An authentication protocol for next generation of constrained Iot systems
Raad et al. Secure data in lorawan network by adaptive method of elliptic-curve cryptography
CN113507482B (zh) 数据安全传输方法、安全交易方法、系统、介质和设备
CN107872315A (zh) 数据处理方法和智能终端
Quilala et al. Modified blowfish algorithm
Zegers et al. A lightweight encryption and secure protocol for smartphone cloud
Luo et al. Optimization of AES-128 encryption algorithm for security layer in zigbee networking of internet of things
WO2016067565A1 (ja) 情報処理システム、情報処理装置、情報処理方法、及び、記録媒体
Buenrostro et al. Security of IoT devices
US9948755B1 (en) Methods and systems of transmitting header information using rateless codes
Seo et al. Network and data link layer security for DASH7
Książak et al. A lightweight authentication protocol for secure communications between resource-limited devices and wireless sensor networks
Nikitha et al. Hybrid Cryptographic Algorithm to Secure Internet of Things
Janakiraman et al. Humming bird with coloured wings: A feedback security approach
Nasiraee et al. A new three party key establishment scheme: Applicable for internet-enabled sensor networks

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant