Nothing Special   »   [go: up one dir, main page]

WO2016082801A1 - 一种用于建立无线连接的方法及设备 - Google Patents

一种用于建立无线连接的方法及设备 Download PDF

Info

Publication number
WO2016082801A1
WO2016082801A1 PCT/CN2015/095891 CN2015095891W WO2016082801A1 WO 2016082801 A1 WO2016082801 A1 WO 2016082801A1 CN 2015095891 W CN2015095891 W CN 2015095891W WO 2016082801 A1 WO2016082801 A1 WO 2016082801A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
identifier
connection
connection information
user
Prior art date
Application number
PCT/CN2015/095891
Other languages
English (en)
French (fr)
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 EP15862753.9A priority Critical patent/EP3217758B1/en
Publication of WO2016082801A1 publication Critical patent/WO2016082801A1/zh
Priority to US15/607,014 priority patent/US10366214B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/50Secure pairing of devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/16Discovering, processing access restriction or access information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W56/00Synchronisation arrangements
    • H04W56/001Synchronization between nodes
    • H04W56/002Mutual synchronization
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/06Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W92/00Interfaces specially adapted for wireless communication networks
    • H04W92/16Interfaces between hierarchically similar devices
    • H04W92/18Interfaces between hierarchically similar devices between terminal devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/69Identity-dependent
    • H04W12/77Graphical identity

Definitions

  • the present invention relates to the field of communications, and in particular, to a method and apparatus for establishing a wireless connection.
  • the first electronic device performs device search to obtain a device search result, where the device search result includes the identifier of each device searched by the first electronic device;
  • the user corresponding to the electronic device finds the identifier of the second electronic device from the search result of the device, and selects the identifier of the second electronic device; the first electronic device is configured according to the identifier of the second electronic device selected by the user.
  • the device search result contains a large number of device identifiers, or sometimes contains multiple identifiers of the same type of devices as the second electronic device, and the identifiers of multiple devices of the same type look similar, resulting in the first
  • a user corresponding to an electronic device needs to take a long time to distinguish and select the correct device, that is, a device that needs to establish a wireless connection with the first electronic device (ie, the second electronic device), thereby reducing the speed of establishing a wireless connection, and further Reduce the efficiency of data transmission.
  • an embodiment of the present invention provides a method and device for establishing a wireless connection.
  • the technical solution is as follows:
  • a method for establishing a wireless connection for a first device and a The second device establishes a wireless connection, and the method includes:
  • the first device After receiving the operation instruction of the first user, the first device generates connection information according to the operation instruction, and provides the connection information to the second device in the vicinity of the first device, so that the second device connects the connection
  • the first part of the information is calculated by using a preset algorithm to generate a first identifier, where the first user is a user corresponding to the first device, and the first part information is part or all of the connection information;
  • the first device sends a second message to the second device, where the second message is a response message of the first message;
  • the first device establishes a wireless connection with the second device.
  • the method before the determining, by the first device, that the first identifier is matched with the second identifier of the first device, the method further includes:
  • the first part of the information of the connection information is calculated by using a preset algorithm to generate a second identifier of the first device.
  • the first part information of the connection information is calculated by using a preset algorithm to generate the second identifier.
  • the first device provides the second device Connection information, including:
  • the first device displays or plays the connection information, so that the second device receives the connection information input by the user; or
  • the first device generates a graphic code including the connection information according to the connection information, and displays the The graphic code, causing the second device to scan the graphic code and obtain the connection information; or
  • the first device establishes a short-range communication connection with the second device, and sends the connection information to the second device through the short-range communication connection.
  • the first message is a probe request probe request message, and the service set identifier SSID field of the Probe request message carries the first identifier, or the reserved field of the Probe request message carries the first identifier; or
  • the first message is a test request Test request message
  • the action frame Action Frame of the Test request message carries the first identifier.
  • the establishing Wireless connection between the two devices including:
  • the second part of the information is part or all of the connection information, and the second authentication information is equal or corresponding to the result of calculating and generating the second part of information;
  • the second device If it is verified that the first authentication information matches the second authentication information, sending, to the second device, confirmation information, where the confirmation information is used by the second device to determine that a wireless device is to be established with the first device. Connecting to establish a wireless connection with the second device.
  • the verifying whether the first authentication information of the second device is the second The authentication information matches including:
  • the second authentication information of the first device as a personal identification code PIN of the wireless fidelity security setting WPS authentication mode, and verifying, according to the PIN, the first authentication information of the second device by using the WPS authentication manner Matching the second authentication information of the first device.
  • the verifying whether the first authentication information of the second device is related to the first Before the second authentication information of a device matches the method further includes:
  • the generating, by the second part information of the connection information, the second authentication of the first device Information including:
  • connection information According to the first part information and the second part information.
  • the wireless connection is wireless A true Wi-Fi connection or a Bluetooth connection.
  • a second aspect provides a method for establishing a wireless connection, where a first device establishes a wireless connection with a second device, and the method includes:
  • the second device acquires connection information provided by the first device in the vicinity of the second device, where the connection information is generated by the first device according to the operation instruction after receiving an operation instruction of the first user, where the a user is a user corresponding to the first device;
  • the second device calculates, according to the first part information of the connection information, a first identifier, where the first part information is part or all of the connection information;
  • the second device sends a first message to the first device, where the first message carries the first identifier, so that the first device determines whether the first identifier and the second identifier match,
  • the second identifier is equal to or corresponds to the result of calculating the first partial information
  • the second device receives a second message that is sent by the first device when the first identifier matches the second identifier, where the second message is a response message of the first message;
  • the second device establishes a wireless connection with the first device.
  • the generating, by using the first part information of the connection information, the generating the first identifier includes:
  • the establishing a wireless connection with the first device includes:
  • the first device determines whether the first authentication information of the second device matches the second authentication information of the first device, where the first authentication information is The second part of the information of the connection information is calculated and generated, and the second authentication information is equal to or corresponds to the result of calculating the second part information of the connection information;
  • the verifying with the first device includes:
  • the first authentication information as a PMK of the four-step handshake authentication mode, and performing verification according to the PMK and the first device by using the four-step handshake authentication manner;
  • the first authentication information as a PIN of the wireless fidelity security setting WPS authentication mode, and performing verification according to the PIN and the first device by using the WPS authentication mode.
  • the first Before the device is verified it also includes:
  • the acquiring the second Connection information provided by the first device near the device including:
  • the first message is a probe request Probe request message, and the identifier service set identifier SSID field of the Probe request message carries the first identifier, or the reserved field of the Probe request message carries the first identifier; or
  • the first message is a test request Test request message
  • the action frame Action Frame of the Test request message carries the first identifier.
  • the wireless connection is wireless A true Wi-Fi connection or a Bluetooth connection.
  • the third aspect provides a device for establishing a wireless connection, where the device is a first device, and is configured to establish a wireless connection with the second device, where the first device includes:
  • a generating module configured to: after receiving an operation instruction of the first user, generate connection information according to the operation instruction, where the first user is a user corresponding to the first device;
  • Providing a module configured to provide the connection information to the second device in the vicinity of the first device, so that the second device calculates, by using a preset algorithm, the first part information of the connection information to generate a first identifier, where The first part of the information is part or all of the connection information;
  • a receiving module configured to receive a first message sent by the second device according to the connection information, The first message carries a first identifier
  • a determining module configured to determine whether the first identifier matches a second identifier of the first device, where the second identifier is equal to or corresponds to a result of calculating and generating the first portion information
  • a sending module configured to send a second message to the second device, if the determining module determines that the first identifier matches the second identifier of the first device, where the second message is the a response message to a message;
  • a module is established for establishing a wireless connection with the second device.
  • the first device further includes:
  • the first calculating module is configured to calculate, by using a preset algorithm, the first part information of the connection information to generate a second identifier of the first device.
  • the first calculating module includes:
  • a first hashing unit configured to perform a hash operation on the first part of the connection information to obtain a first hash result, and generate a second identifier of the first device according to the first hash result;
  • the first constructing unit is configured to add first preset information to the first partial information of the connection information to obtain first configuration information, and generate a second identifier of the first device according to the first configuration information.
  • the providing module includes:
  • Displaying a playing unit configured to display or play the connection information, so that the user inputs the connection information to the second device;
  • a display unit configured to generate a graphic code including the connection information according to the connection information, display the graphic code, and enable the second device to scan the graphic code and obtain the connection information;
  • a sending unit configured to establish a short-range communication connection with the second device, and send the connection information to the second device by using the short-range communication connection.
  • the first message is a probe request probe request message, and the service set identifier SSID field of the Probe request message carries the first identifier, or the reserved field of the Probe request message carries the first identifier; or
  • the first message is a test request Test request message
  • the action frame Action Frame of the Test request message carries the first identifier.
  • the establishing module includes:
  • a verification unit configured to verify whether the first authentication information of the second device matches the second authentication information of the first device, where the first authentication information is the second device according to the connection information And generating, by the partial information, the second partial information is part or all of the connection information, and the second authentication information is equal to or corresponding to a result of calculating and generating the second partial information;
  • a establishing unit configured to send, to the second device, confirmation information if the first authentication information is verified to match the second authentication information, where the confirmation information is used by the second device to determine
  • the first device establishes a wireless connection and establishes a wireless connection with the second device.
  • the verification unit includes:
  • a first verification subunit configured to determine the second authentication information of the first device as a pairwise master key PMK of the four-step handshake authentication mode, and verify the manner according to the PMK and by using the four-step handshake authentication mode Whether the first authentication information of the second device matches the second authentication information of the first device; or
  • a second verification subunit configured to determine the second authentication information of the first device as a personal identification code PIN of a wireless fidelity security setting WPS authentication mode, and verify the number according to the PIN and by the WPS authentication mode Whether the first authentication information of the second device matches the second authentication information of the first device.
  • the first device further includes:
  • the second calculating module is configured to calculate, according to the second part information of the connection information, the second authentication information of the first device.
  • the second calculating module includes:
  • a second hashing unit configured to perform a hash operation on the second partial information of the connection information to obtain a second hashing result, and generate second authentication information of the first device according to the second hashing result;
  • a second constructing unit configured to add second preset information to the second partial information of the connection information to obtain second configuration information, and generate second authentication information of the first device according to the second configuration information.
  • the first device further includes:
  • a first generating module configured to generate first part information of the connection information according to the second identifier of the first device
  • a second generating module configured to generate second part information of the connection information according to the second authentication information of the first device
  • a constructing module configured to construct the connection information according to the first partial information and the second partial information.
  • the wireless connection is wireless A true Wi-Fi connection or a Bluetooth connection.
  • the fourth aspect provides a device for establishing a wireless connection, where the device is a second device, and is configured to establish a wireless connection with the first device, where the second device includes:
  • An acquiring module configured to acquire connection information provided by a first device in the vicinity of the second device, where the connection information is generated by the first device according to the operation instruction after receiving an operation instruction of the first user, where a user is a user corresponding to the first device;
  • a calculation module configured to calculate, according to the first part information of the connection information, a first identifier, where the first part information is part or all of the connection information;
  • a sending module configured to send a first message to the first device, where the first message carries the first identifier, so that the first device determines whether the first identifier matches a second identifier, The second identifier is equal to or corresponds to the result of calculating the first partial information;
  • a receiving module configured to receive, by the first device, the first identifier and the second identifier a second message sent in time, the second message being a response message of the first message;
  • the calculating module includes:
  • a first hashing unit configured to perform a hash operation on the first partial information of the connection information to obtain a first hash result, and generate the first identifier according to the first hash result;
  • a first adding unit configured to add first preset information to the first part information of the connection information to obtain first configuration information, and generate the first identifier according to the first configuration information.
  • the establishing module includes:
  • a verification unit configured to perform verification with the first device, to enable the first device to determine whether the first authentication information of the second device matches the second authentication information of the first device, where the first The authentication information is calculated according to the second part information of the connection information, and the second authentication information is equal to or corresponds to the result of calculating the second part information of the connection information;
  • a first receiving unit configured to receive, by the first device, the confirmation information that is sent when the first authentication information matches the second authentication information
  • a establishing unit configured to establish a wireless connection with the first device according to the confirmation information.
  • the verification unit includes:
  • a first verification subunit configured to determine the first authentication information as a PMK of a four-step handshake authentication mode, and perform verification according to the PMK and the first device by using the four-step handshake authentication manner;
  • a second verification subunit configured to determine the first authentication information as a PIN of a wireless fidelity security setting WPS authentication mode, and perform verification according to the PIN and the first device by using the WPS authentication mode.
  • the second device further includes :
  • a generating module configured to generate, according to the second part information of the connection information, the first Certification Information.
  • the generating module includes:
  • a second hashing unit configured to perform a hash operation on the second partial information of the connection information to obtain a second hashing result, and generate the first authentication information according to the second hashing result;
  • a second adding unit configured to add second preset information to the second partial information of the connection information to obtain second configuration information, and generate the first authentication information according to the second configuration information.
  • the acquiring module includes:
  • a second receiving unit configured to receive connection information of the first device input by a user
  • a scanning unit configured to scan the first device to display a graphic code, and obtain connection information of the first device included in the graphic code
  • a third receiving unit configured to establish a short-range communication connection with the first device, and receive connection information sent by the first device by using the short-range communication connection.
  • the first message is a probe request Probe request message, and the identifier service set identifier SSID field of the Probe request message carries the first identifier, or the reserved field of the Probe request message carries the first identifier; or
  • the first message is a test request Test request message
  • the action frame Action Frame of the Test request message carries the first identifier.
  • the wireless connection is wireless A true Wi-Fi connection or a Bluetooth connection.
  • a fifth aspect provides a device, where the device is a first device, configured to establish a wireless connection with a second device, where the first device includes: a receiver, a processor, and a transmitter;
  • the processor is configured to: after receiving an operation instruction of the first user, generate connection information according to the operation instruction, and provide the connection information to a second device in the vicinity of the first device, so that the second device is
  • the first part of the information of the connection information is calculated by using a preset algorithm. Go to the first identifier, the first part of information is part or all of the connection information;
  • the receiver is configured to receive a first message sent by the second device according to the connection information, where the first message carries a first identifier
  • the processor is further configured to determine whether a first identifier received by the receiver matches a second identifier of the first device, where the second identifier is equal to a result of calculating the first part information or Corresponding;
  • the transmitter is configured to send, to the second device, a second message, where the result determined by the processor is a match, where the second message is a response message of the first message;
  • the processor is further configured to establish a wireless connection with the second device.
  • the processor is further configured to calculate, by using a preset algorithm, the first part information of the connection information to generate the first device Two logos.
  • the processor is configured to generate, according to the first part information of the connection information, a second The operation of the logo, including:
  • the processor performs a hash operation on the first part of the connection information to obtain a first hash result, and generates a second identifier of the first device according to the first hash result;
  • the processor adds first preset information to the first part information of the connection information to obtain first configuration information, and generates a second identifier of the first device according to the first configuration information.
  • the processor provides the The operation of connecting information, including:
  • the processor displays or plays the connection information, so that the user inputs the connection information to the second device; or
  • the processor generates a graphic code including the connection information according to the connection information, displays the graphic code, and causes the second device to scan the graphic code and obtain the connection information; or
  • the processor establishes a short-range communication connection with the second device, and sends the connection information to the second device by using the short-range communication connection.
  • the first message is a probe request probe request message, and the service set identifier SSID field of the Probe request message carries the first identifier, or the reserved field of the Probe request message carries the first identifier; or
  • the first message is a test request Test request message
  • the action frame Action Frame of the Test request message carries the first identifier.
  • the processor establishes The operation of the wireless connection between the second devices includes:
  • the processor verifies whether the first authentication information of the second device matches the second authentication information of the first device, where the first authentication information is the second part of the second device according to the connection information And generating, by the information calculation, the second partial information is part or all of the connection information, and the second authentication information is equal to or corresponding to a result of calculating and generating the second partial information;
  • the second device If it is verified that the first authentication information matches the second authentication information, sending, to the second device, confirmation information, where the confirmation information is used by the second device to determine that a wireless device is to be established with the first device. Connecting to establish a wireless connection with the second device.
  • the determining whether the first authentication information of the second device is related to the first device includes:
  • the processor Determining, by the processor, the second authentication information of the first device as a PMK of the four-step handshake authentication mode, and verifying, according to the PMK, the first authentication information of the second device by using the four-step handshake authentication manner Matching the second authentication information of the first device;
  • the processor Determining, by the processor, the second authentication information of the first device as a PIN of the wireless fidelity security setting WPS authentication mode, and verifying the first authentication information of the second device according to the PIN and by using the WPS authentication manner Whether to match the second authentication information of the first device.
  • the processor is further configured to perform calculation according to the second part information of the connection information The second authentication information of the first device.
  • the processor is configured to generate, according to the second part information of the connection information, a first Second, the operation of the authentication information, including:
  • the processor performs a hash operation on the second part of the connection information to obtain a second hash result, and generates second authentication information of the first device according to the second hash result;
  • the processor adds second preset information to the second part information of the connection information to obtain second configuration information, and generates second authentication information of the first device according to the second configuration information.
  • the processor is further configured to generate first part information of the connection information according to the second identifier of the first device, and generate second part information of the connection information according to the second authentication information of the first device;
  • the connection information is constructed based on the first partial information and the second partial information.
  • the wireless connection is wireless A true Wi-Fi connection or a Bluetooth connection.
  • a sixth aspect provides a device, where the device is a second device, configured to establish a wireless connection with the first device, where the second device includes: a processor, a transmitter, and a receiver;
  • the processor is configured to acquire connection information provided by a first device in the vicinity of the second device, where the connection information is generated by the first device according to the operation instruction after receiving an operation instruction of the first user, where The first user is generated by the user corresponding to the first device, and the first identifier is calculated according to the first part information of the connection information, where the first part information is part or all of the connection information;
  • the transmitter is configured to send a first message to the first device, where the first message carries the first identifier generated by the processor, so that the first device determines the first identifier and Whether the second identifier matches, and the second identifier is equal to or corresponds to a result of calculating and generating the first partial information;
  • the receiver is configured to receive a second message that is sent by the first device when the first identifier matches the second identifier, where the second message is a response message of the first message;
  • the processor is further configured to establish a wireless connection with the first device.
  • the determining, by the processor, the operation of generating the first identifier according to the first part information of the connection information including:
  • the processor performs a hash operation on the first part of the connection information to obtain the first As a result, the first identifier is generated according to the first hash result;
  • the processor adds first preset information to the first part information of the connection information to obtain first configuration information, and generates the first identifier according to the first configuration information.
  • the processor establishes an operation of a wireless connection with the first device, include:
  • the processor performs verification with the first device, so that the first device determines whether the first authentication information of the second device matches the second authentication information of the first device, the first authentication The information is calculated according to the second part information of the connection information, and the second authentication information is equal to or corresponds to the result of calculating the second part information of the connection information;
  • the first or the second possible implementation manner of the sixth aspect in a third possible implementation manner of the sixth aspect, :
  • the processor determines the first authentication information as a PMK of a four-step handshake authentication mode, and performs verification according to the PMK and the first device by using the four-step handshake authentication manner; or
  • the processor determines the first authentication information as a PIN of the wireless fidelity security setting WPS authentication mode, and performs verification according to the PIN and the first device by using the WPS authentication mode.
  • the processor is further configured to calculate, according to the second part information of the connection information, the first authentication information.
  • the processor is configured to generate, according to the second part information of the connection information, the first authentication information. Operations, including:
  • the processor performs a hash operation on the second part information of the connection information to obtain a second hash result, and generates the first authentication information according to the second hash result;
  • the processor adds second preset information to the second part information of the connection information to obtain second configuration information, and generates the first authentication information according to the second configuration information.
  • connection information provided by the first device includes:
  • the first message is a probe request Probe request message, and the identifier service set identifier SSID field of the Probe request message carries the first identifier, or the reserved field of the Probe request message carries the first identifier; or
  • the first message is a test request Test request message
  • the action frame Action Frame of the Test request message carries the first identifier.
  • the wireless connection is wireless A true Wi-Fi connection or a Bluetooth connection.
  • the first device generates the connection information and provides the second device, and the second device generates a first identifier according to the connection information, and sends a first message carrying the first identifier to the first device, where the first device is configured according to the first device.
  • the connection information generates a second identifier, and if the first label matches the second identifier, establishing a wireless connection with the second device, where the first device may send and carry the first identifier by using the first identifier and the second identifier
  • the second device that identifies the first message is a device that the first device needs to establish a wireless connection with, so that the user of the first device only needs to provide the generated connection information to the second device by using the first device, and subsequent
  • the process is performed by the first device and the second device to perform a wireless connection between the first device and the second device.
  • the user of the first device does not need to perform the peripheral device search by using the first device. Users who do not need the first device also spend time selecting a device in a large number of search results, which improves the efficiency of establishing a wireless connection, and then improves According to the transmission efficiency, it simplifies the user's operation, Improved user experience.
  • 1-1 is a flowchart of a method for establishing a wireless connection according to an embodiment of the present invention
  • 1-2 is a flowchart of another method for establishing a wireless connection according to an embodiment of the present invention.
  • FIG. 2-2 is a first schematic diagram of an application interface of a system application according to an embodiment of the present invention.
  • 2-3 is a second schematic diagram of an application interface of a system application according to an embodiment of the present invention.
  • FIGS. 2-4 are first schematic diagrams of an application interface of a third-party application according to an embodiment of the present invention.
  • FIGS. 2-5 are second schematic diagrams of an application interface of a third-party application according to an embodiment of the present invention.
  • FIGS. 2-6 are third schematic diagrams of an application interface of a system application according to an embodiment of the present invention.
  • FIGS. 2-7 are fourth schematic diagrams of an application interface of a system application according to an embodiment of the present invention.
  • FIGS. 2-8 are fifth schematic diagrams of an application interface of a system application according to an embodiment of the present invention.
  • FIGS. 2-9 are schematic diagrams showing a first structure of a Probe request message according to an embodiment of the present invention.
  • FIGS. 2-10 are schematic diagrams showing a first structure of a Probe response message according to an embodiment of the present invention.
  • FIG. 3 is a flowchart of another method for establishing a wireless connection according to an embodiment of the present invention.
  • 4-1 is a flowchart of another method for establishing a wireless connection according to an embodiment of the present invention.
  • 4-2 is a schematic diagram of a second structure of a Probe request message according to an embodiment of the present invention.
  • 4-3 is a schematic diagram of a second structure of a Probe response message according to an embodiment of the present invention.
  • FIG. 5 is a flowchart of another method for establishing a wireless connection according to an embodiment of the present invention.
  • 6-1 is a flowchart of another method for establishing a wireless connection according to an embodiment of the present invention.
  • 6-2 is a schematic structural diagram of a Test request message according to an embodiment of the present invention.
  • 6-3 is a schematic structural diagram of a Test response message according to an embodiment of the present invention.
  • FIG. 7 is a flowchart of another method for establishing a wireless connection according to an embodiment of the present invention.
  • FIG. 8 is a first schematic structural diagram of an apparatus for establishing a wireless connection according to an embodiment of the present invention.
  • FIG. 9 is a second schematic structural diagram of an apparatus for establishing a wireless connection according to an embodiment of the present invention.
  • FIG. 10 is a schematic diagram of a first structure of an apparatus according to an embodiment of the present invention.
  • FIG. 11 is a second schematic structural diagram of an apparatus according to an embodiment of the present invention.
  • FIG. 12 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.
  • FIG. 13 is a flowchart of another method for establishing a wireless connection according to an embodiment of the present invention.
  • the first device and the second device may establish a wireless connection according to the following process, including: the first device performs a device search to obtain a device search result, The device search result includes the identifiers of the devices searched by the first device; the user then finds the identifier of the second device from the device search result, and selects the identifier of the second device; the first device selects the second device according to the user The identifier of the device establishes a wireless connection with the second device.
  • the device search result sometimes includes a large number of device identifiers, or sometimes includes multiple identifiers of devices of the same type as the second device, and the identifiers of multiple devices of the same type are similar, so the user in the above process It takes a long time to select the right device and is inefficient.
  • a wireless connection between the first device and the second device may be established by any of the following embodiments.
  • an embodiment of the present invention provides a method for establishing a wireless connection, where a first device establishes a wireless connection with a second device, and the method includes:
  • Step S101 After receiving the operation instruction input by the first user, the first device generates connection information according to the operation instruction, and provides the connection information to the second device in the vicinity of the first device, so that the second device has the first part information of the connection information.
  • the first identifier is obtained by using a preset algorithm, and the first user is the user corresponding to the first device, and the first part of the information is part of the connection information. Or all.
  • the second device in the vicinity of the first device may mean that the distance between the first device and the second device is within a range of several meters or ten meters, or the first device and the second device may be close to each other for short-distance communication, and the like.
  • two people share pictures with each other face-to-face with their own mobile phones. The two people are very close to each other, so that the two mobile phones are very close, such as within a few meters or ten meters; or two people can bring their mobile phones closer to each other.
  • Do NFC Near Field Communication
  • connection information may be a string of characters, the content of which may be numbers, letters or other characters, or may be a combination of any number of characters in numbers, letters and other characters.
  • the first device may randomly generate a string of characters and use the generated string as the connection information.
  • the first device may generate the connection information according to the preset second identifier and the second verification information.
  • the first device may provide the connection information to the second device in any one of the following first to fourth implementation manners, respectively:
  • the first device displays the connection information.
  • the second user corresponding to the second device can view the connection information displayed by the first device, and input the connection information to the second device.
  • the second user and the first user may be the same user, the user may operate the first device and the second device, or the second user and the first user may be two different users, the two The users are respectively users corresponding to the first device and the second device.
  • the first device plays the connection information through a speaker or a speaker.
  • the second user can listen to the connection information played by the first device, and input the connection information to the second device.
  • the first device generates a graphic code including the connection information according to the connection information, and displays the graphic code.
  • the graphic code may be a one-dimensional code or a two-dimensional code
  • the first device may encode the connection information using an encoding algorithm for generating a graphic code to generate a graphic code including the connection information.
  • the second device has a scanning module, and the scanning module can be a camera or a scanner. After the first device displays the graphic code, the second device may scan the graphic code displayed by the first device through the scanning module included therein and obtain the connection information.
  • the first device establishes a short-range communication connection with the second device, and sends the connection information to the second device by using the short-range communication connection.
  • connection information generated by the first device is a string of simple characters and is short.
  • the generated connection information may be “123456” or “abcdef”, etc., so that the user can input Or listening, so in this step, the second device calculates the first part of the information of the connection information by using a preset algorithm to generate the first identifier, so that the length or complexity of the first identifier can be increased, thereby reducing the first identifier.
  • the same probability as the identity of other devices,
  • Step S102 The first device receives the first message sent by the second device according to the connection information, where the first message carries the first identifier.
  • the first identifier may be used as the identifier of the device that needs to establish a wireless connection with the first identifier, and then the first message carrying the first identifier is broadcasted to request the first identifier.
  • the device establishes a wireless connection with it.
  • Step S103 The first device determines whether the first identifier matches the second identifier of the first device, and the second identifier is equal to or corresponds to the result of calculating and generating the first portion information.
  • the second device may use the first identifier as the identifier of the device that needs to establish a wireless connection with the first identifier. Therefore, in this step, the first identifier is the first information of the connection information of the second device. Performing the calculation, and the second identifier is equal to or corresponding to the result of calculating the first part of the information, so when the first identifier matches the second identifier, the first device may automatically discover the second device as the first A device that requires a wireless connection with it.
  • Step S104 If the matching, the first device sends a second message to the second device, where the second message is a response message corresponding to the first message.
  • the second message is used by the second device to determine that the first device agrees to establish a wireless connection with the second device, thereby also causing the second device to discover that the first device is a device that needs to establish a wireless connection with the second device.
  • Step S105 The first device establishes a wireless connection with the second device.
  • the first device generates a connection information
  • the connection information is provided to the second device, and then the second device and the first device perform subsequent interaction according to the connection information to establish the first device and the second device.
  • the time of searching for the device by the first device and the time for the user to search for the identifier of the second device are saved in the embodiment of the present invention. , which can shorten the time to establish a wireless connection.
  • the first device generates connection information and provides the connection information to the second device, and the second The device generates a first identifier according to the connection information, and sends a first message carrying the first identifier to the first device, where the first device generates a second identifier according to the connection information, and if the first label matches the second identifier, the device establishes a wireless connection between the two devices, wherein the first device may discover by using the first identifier and the second identifier that the second device that sends the first message carrying the first identifier needs to establish a wireless with the first device
  • the user of the first device only needs to provide the generated connection information to the second device by using the first device, and the subsequent process is performed by the first device and the second device to perform the first device and the first device.
  • the user of the first device does not need to perform the search of the peripheral device by using the first device, and the user of the first device does not need to spend time selecting the device in a large number of search results. It improves the efficiency of establishing a wireless connection, which in turn improves the efficiency of data transmission, simplifies user operations, and improves the user experience.
  • an embodiment of the present invention provides a method for establishing a wireless connection, where a first device establishes a wireless connection with a second device, and the method includes:
  • Step S111 The second device acquires the connection information provided by the first device in the vicinity thereof, and the connection information is generated according to the operation instruction after the first device receives the operation instruction of the first user, where the first user is the user corresponding to the first device. .
  • the second device may obtain the connection information by any one of the following first, second, and third manners.
  • the first device and the second device receive the connection information input by the second user.
  • the first device displays the connection information after generating the connection information or plays the connection information through the speaker.
  • the second user can view or listen to the connection information and then input the connection information to the second device.
  • the second device scans the graphic code displayed by the first device to obtain the connection information included in the graphic code.
  • the second user may enable the scanning module of the second device, and then the second device scans the graphic code displayed by the first device by using the scanning module, parses the scanned graphic code, and parses the connection information included in the scanned graphic code.
  • the third device and the second device establish a short-distance communication connection with the first device, and receive the connection information sent by the first device by using the short-distance communication connection.
  • connection information is generated by the first device, and the second device may adopt any of the foregoing
  • the method can obtain the connection information, and the user can find the identifier of the device from a large number of device search results. This step can save the time for the first device to perform device search and the time for the user to find the device identifier, which can shorten the establishment of the wireless connection. time.
  • Step S112 The second device calculates, according to the first part information of the connection information, a first identifier, where the first part information is part or all of the connection information.
  • the second device may generate the first identifier by using any one of the following two methods, including:
  • the first device and the second device perform a hash operation on the first part information of the connection information to obtain a first hash result, and generate a first identifier according to the first hash result.
  • the partial hash information may be intercepted from the first hash result as the first identifier, or the intercepted partial information may be added to the preset information to form the first identifier, or the first hash result may be used as the first identifier or the like.
  • the second device adds the first preset information to the first part of the connection information to obtain the first configuration information, and generates the first identifier according to the first configuration information.
  • the second device calculates and generates a first identifier for the first part information of the connection information, so that the probability that the second device generates the collision between the first identifier and the generated identifier of the other device may be reduced.
  • Step S113 The second device sends a first message to the first device, where the first message carries the first identifier, so that the first device determines whether the first identifier matches the second identifier, and the second identifier calculates and generates the first part information. The results are equal or corresponding.
  • the second device uses the first identifier as the identifier of the device that needs to establish a wireless connection with the first identifier, and the first identifier is calculated by generating the first part information of the connection information, and the second identifier is The result of calculating the first part of the information is equal or corresponding, so when the first identifier matches the second identifier, the first device can automatically discover that the second device is a device that needs to establish a wireless connection with itself, and implement the first device.
  • the second device and the second device find each other as a device that needs to establish a wireless connection with the other party.
  • Step S114 The second device receives, when the first identifier matches the second identifier, the first device sends the second message.
  • Step S115 The second device establishes a wireless connection with the first device.
  • the second device acquires the connection information provided by the first device, generates a first identifier according to the connection information, and sends a first message carrying the first identifier to the first device, so that the first device determines, according to the first Whether a label matches a second identifier of the first device, and if so, the second device establishes a wireless connection with the first device, wherein the first device and the second device
  • the first identifier and the second identifier can be used to discover each other as a device that needs to establish a wireless connection with the other party, so that the user does not need to select a device among a large number of search results, thereby improving the efficiency of establishing a wireless connection, so as to improve the efficiency of data transmission.
  • Embodiments of the present invention provide a method for establishing a wireless connection.
  • the first device is a wireless access device
  • the second device is a wireless terminal, for example, an AP (Access Point, access point) in the network model of the first device infrastructure device or converted by the smart terminal.
  • the second device is a wireless terminal; when the first device is a GO (Group Owner) device in a P2P (Peer-to-Peer) network, the corresponding second device is in the P2P network.
  • Client (client) device Client Those skilled in the art can understand that the methods performed by the first device and the second device are similar in the two scenarios.
  • the second device and the first device are configured by using an AP-STA (Access Point-Station) mode to establish a wireless connection.
  • the identity of the second device is STA.
  • the first device is configured as an AP, and the first device generates the connection information and provides the connection information to the second device.
  • the second device calculates the first identifier according to the first portion of the connection information, and sends a Probe request message to the first device.
  • the SSID (Service Set Identifier) field of the (Probe Request) message carries a first identifier.
  • the first device calculates a second identifier according to the first part information of the connection information, and the first device compares the first identifier with the second identifier. And if the first identifier matches the second identifier, establishing a wireless connection with the second device.
  • the method includes:
  • Step 201 The first device generates connection information.
  • connection information may be a string of characters, and the content of the connection information may be a number, a letter or other characters, or may be a combination of any number of characters, numbers, letters, and other characters.
  • the first device can randomly generate a string of characters and use the generated string as the connection information.
  • the first device may generate connection information triggered by the corresponding first user.
  • connection information triggered by the corresponding first user.
  • the connection information is generated.
  • a connection interface is set in an application interface of a system application having a transmission data requirement.
  • the connection interface may be clicked to enable the connection interface to trigger a connection command.
  • the system application can be any application or software program that needs to connect to the peer device. Or a submodule in an application, or another application called within an application.
  • the system application may be a media content sharing application, and the user clicks on the connection media content of the application to share the connection interface of the peer device, and the media content sharing peer device is the sending device or the receiving device of the media content, that is, triggering the connection command; or ,
  • the system application may be a network sharing application, and the user clicks on the connection network of the application to share the connection interface of the peer device, and the network sharing peer device is a device that shares the network with the first device or uses the first device to share the network.
  • Device that is, trigger the connection command; or,
  • the system application can be a multi-screen interactive application, and the user clicks on the connection interface of the multi-screen interactive peer device of the application, and the multi-screen interactive peer device is the initiating device of the multi-screen interaction or joins the device, that is, the connection command is triggered. ;or,
  • the system application may be a multi-player game application, and the user clicks on a connection interface that connects the multi-player game peer device, and the multi-player game peer device is the initiating device of the multi-player game or joins the device, that is, triggers the connection command; or
  • the system application may be a service connection application, and the user clicks the connection service to connect to the peer device connection interface, and the service connection peer device is a device capable of satisfying the service requirement of the first device, that is, triggering the connection command.
  • Another application that triggers a call in the above system application is also considered part of the system application.
  • another second application for triggering the device to open the connection state may also be invoked.
  • the second application is also considered part of the system application.
  • connection command is triggered by default when the application is triggered.
  • the system application is specifically described as a photo taking application with a picture sharing function or a video shooting application with a video sharing function.
  • the system application is a photo camera application.
  • the photo camera application captures a picture and displays it in the application interface.
  • the icon with the sharing function shown in the figure) the first user clicks on the connection interface, and the connection interface triggers the connection command.
  • the connection interface triggers the connection command.
  • the first device randomly generates connection information, and assumes that the generated connection information is “12345678”. As shown in Figure 2-3.
  • the connection information is generated, and the third-party application is an application for establishing a wireless connection.
  • a third-party application that can be used to establish a wireless connection is installed on the first device, and the application interface of the third-party application includes a connection interface.
  • the connection interface can be clicked to cause the connection interface to trigger a connection command.
  • connection interface the icon "I want to create a share" as shown in Figure 2-4.
  • the first device When detecting the connection command triggered by the connection interface, the first device randomly generates connection information, and assumes that the generated connection information is “12345678”, as shown in Figure 2-5.
  • Step 202 The first device provides the connection information to the second device.
  • this step may be any one of the following first to fourth implementations:
  • the first device displays the connection information.
  • the second user corresponding to the second device can view the connection information displayed by the first device, and input the connection information to the second device.
  • the second user may be the same or different from the first user corresponding to the first device.
  • the second device corresponding to the second user may obtain the connection information displayed by the first device by using other artificial means, for example, after being viewed by the first user corresponding to the first device, in all feasible manners, such as reading, texting,
  • the second user is notified by means of a telephone or the like, and the connection information is input to the second device by the second user.
  • the first device plays the voice corresponding to the connection information through the speaker.
  • the second user can listen to the voice corresponding to the connection information played by the first device, and input the connection information to the second device.
  • the first device generates a graphic code including the connection information according to the connection information, and displays the graphic code.
  • the graphic code may be a one-dimensional code or a two-dimensional code, or may be other forms of graphic code.
  • the first device may encode the connection information using an encoding algorithm for generating a graphic code to generate a graphic code including the connection information, such as generating a QR Code (Quick Response Code) two-dimensional code.
  • QR Code Quadick Response Code
  • the second device has a scanning module, and the scanning module can be a camera or a scanner. After the first device displays the graphic code, the second device may scan the graphic code displayed by the first device through the scanning module included therein and obtain the connection information.
  • the first device establishes a short-range communication connection with the second device, and sends the connection information to the second device by using the short-range communication connection.
  • the first device may establish a short-distance communication connection with the second device by using an out-of-band communication manner.
  • the out-of-band communication method can be a communication method such as sound wave, infrared, NFC (Near Field Communication) or HotKnot.
  • the first device may be a terminal device or an AP in the embodiment of the present invention.
  • the first device sets its own identity as an AP or a hotspot before performing this step.
  • the second device may determine, by the device that receives the Beacon message, that the first device is an AP and actively requests to establish a connection with the first device, and then the first device performs the step; the second device may also obtain the first The connection information of a device is directly requested to establish a connection with the first device.
  • Step 203 The second device acquires the connection information provided by the first device.
  • the second device may obtain the connection information by using the following first, second, and third manners.
  • the first device and the second device receive the connection information input by the second user.
  • the first device displays the connection information after generating the connection information or plays the connection information through the speaker.
  • the second user can view or listen to the connection information and then input the connection information to the second device.
  • the second device may obtain the connection information input by the second user by using the following methods (1) and (2), including:
  • the second device acquires connection information input by the second user from an application interface of the system application.
  • the application interface of the system application includes a receiving interface, and when the second user clicks the receiving interface, the receiving interface triggers receiving a command.
  • the second device displays an input box in the application interface, and the second user may input the viewed connection information or the accessed connection information to the input box.
  • the first device displays the connection information "12345678” or plays the connection information "12345678” through the speaker
  • the second user views the connection information "12345678” or the listening connection information "12345678”.
  • the input box is displayed, as shown in FIG. 2-7, and the second user inputs the connection information “12345678” in the input box.
  • the second device then reads the connection information "12345678" input by the second user from the input box.
  • the second device acquires the connection information input by the second user from the application interface of the third-party application.
  • the application interface of the third-party application includes a receiving interface, and when the second user clicks the receiving interface, the receiving interface triggers receiving the command.
  • the second device displays an input box in the application interface, and the second user may input the viewed connection information or the accessed connection information to the input box.
  • the second user clicks on the receiving interface in the application interface of the system application as shown in FIG. 2-4, and the receiving interface triggers receiving the command.
  • the second device detects the receiving command triggered by the receiving interface, the second device is in the application interface.
  • the input box is displayed, as shown in FIG. 2-8, and the second user inputs the connection information “12345678” in the input box.
  • the second device then reads the connection information "12345678" input by the second user from the input box.
  • the second device scans the graphic code displayed by the first device to obtain the connection information included in the graphic code.
  • the second user may enable the scanning module of the second device, and then the second device scans the graphic code displayed by the first device by using the scanning module, parses the scanned graphic code, and parses the connection information included in the scanned graphic code.
  • the third device and the second device establish a short-distance communication connection with the first device, and receive the connection information sent by the first device by using the short-distance communication connection.
  • the first device generates a connection information
  • the second user may input the connection information to the second device, or scan the graphic code of the connection information on the first device by using the second device, or
  • the second device is close to the first device, so that the second device obtains the connection information by using short-distance communication, and the first user can find the identifier of the second device from a large number of device search results.
  • the time when the device searches for the device and the time when the first user searches for the identifier of the second device so that the first device and the second device can be shortened.
  • Step 204 The second device calculates, according to the first part information included in the connection information, a first identifier, where the first part information is part or all of the connection information.
  • this step may include the following first and second implementations, including:
  • the converting operation may be performing partial position changing, breaking, reversing, mapping, expanding, replacing, adding/subtracting/multiplying/dividing a preset value, or converting by using a preset formula. Etc., or a combination of the above conversion operations, the invention is not limited thereto.
  • the second device reverse-orders the first part information "1234" of the connection information to obtain "1234" as the first identifier.
  • the value of each bit of the first part information "1234" of the connection information is repeated once to obtain "11223344" as the first identifier.
  • the second device may perform a hash operation on the first part information of the connection information to obtain a first hash result, and generate a first identifier according to the first hash result.
  • the hash operation is an operation that calculates the output of different lengths to obtain a fixed-length output, including but not limited to various types of operations including a common hash algorithm in the operation process, and a custom operation algorithm that can obtain a fixed-length output.
  • the first part of the information of the connection information may be first expanded or added and then subjected to a SHA-256 operation to obtain a first hash result.
  • the partial hash information may be intercepted from the first hash result as the first identifier, or the intercepted partial information may be added to the preset information to form the first identifier, or the first hash result may be used as the first identifier or the like.
  • the second device replaces the first part information “1234” of the connection information “12345678” with “5678”, and then hashes the “5678” SHA-256 hash algorithm to obtain the first hash result.
  • the second device adds the first preset information to the first part of the connection information to obtain
  • the first configuration information generates a first identifier according to the first configuration information.
  • the first configuration may be performed by performing an inverse replacement process or a shift process on the first configuration information. For example, if the first part information of the connection information "12345678" is "1234" and the first preset information is "hua", the second device adds the first preset information "hua” to the first part information "1234" of the connection information.
  • the obtained first configuration information may be “1234hua”, “hua1234” or “12hua34” or the like.
  • the first configuration information of the structure is “1234hua”, and the first identifier obtained by performing the inverse replacement processing on the first configuration information is “auh4321”; or, the number of bits of the shift is set in advance, and the number of bits may be two or Third, then performing two-bit shift processing or three-shift processing on the first configuration information, such as when the first identification obtained by performing two-bit shift processing on the first configuration information is “ua1234h”, when the first The first identifier obtained by the three-bit processing of the construction information is “hua1234”.
  • the method for generating the first identifier by the second device may be other than the foregoing first and second types.
  • a string of the preset first digit may be intercepted from the connection information as the first character.
  • the string generates a first identifier according to the first string; or hashes the entire connection information to obtain a first identifier.
  • the implementation manner of generating the first identifier by the second device according to the first character string may include four types (1) to (4):
  • the preset first digit is 6, and the second device intercepts the first 6-character string "123456” or the last 6-bit string "345678" as the first string from the connection information "12345678", and the first character
  • the string "123456” or "345678” is determined to be the first identifier.
  • the first character string is "123456”
  • the first preset character string is "Huawei”
  • the first identifier of the first character string and the first preset character string is "123456Huawei” or "Huawei123456”.
  • Step 205 The second device sends a Probe Request message, where the SSID field of the Probe Request message carries the first identifier.
  • the second device sets its own identity as the STA, and sends a Probe request message to request to establish a wireless connection with the AP that receives the Probe request message.
  • the second device may broadcast the Probe request message, or the second device may obtain the address of the first device from the Beacon message after receiving the Beacon message broadcast by the first device, and the first device is single according to the address of the first device. Broadcast the Probe request message.
  • the Probe request message includes a MAC (Media Access Control) header, a frame body, and a FCS (Frame Check Sequence).
  • the fields include Addr_1 and Addr_2, Addr_1 is the receiver address, Addr_2 is the sender address, the frame body includes the SSID and other fields, the SSID is the identifier of the AP, and the FCS is the check field, which is used to carry the check code.
  • the second device uses the first identifier as the identifier of the AP, and when the second device broadcasts the Probe request message, the Addr_1 field of the Probe request message is empty, and when the second device unicasts the Probe request message to the In a device, the Addr_1 field of the Probe request message carries the MAC address of the first device; in both cases, the Addr_2 field of the Probe request message carries the MAC address of the second device, and the SSID field carries the first identifier.
  • Step 206 The first device receives the Probe request message, where the SSID field of the Probe request message carries the first identifier.
  • the first device is an AP or sets its own identity as an AP, and then receives a Probe request message sent by the second device.
  • the second device sends a Probe request message, where the SSID field of the Probe request message carries the first identifier “123456”, and the first device receives the Probe request message.
  • Step 207 The first device calculates, according to the first part information of the connection information, a second identifier, where the first device uses the second identifier as its own identifier.
  • the manner in which the first device generates the second identifier may be the same as the manner in which the second device generates the first identifier.
  • the first device may calculate and generate the second identifier by using the following two manners, including:
  • the first device performs a hash operation on the first part of the connection information to obtain the first
  • the hash result generates a second identifier according to the first hash result.
  • This embodiment is the same as the first mode in which the second device generates the first identifier.
  • For the detailed process refer to the first manner in which the second device generates the first identifier, which is not described in detail herein.
  • the second device adds the second preset information to the second part information of the connection information to obtain the second configuration information, and generates the second identifier according to the second configuration information.
  • This embodiment is the same as the second method of generating the first identifier by the second device.
  • the second manner of generating the first identifier by the second device which is not described in detail herein.
  • the method for generating the second identifier by the first device may be other than the foregoing first and second types. For example, a string of a preset first digit may be intercepted from the connection information as the second string. Generating a second identifier according to the second string; or hashing the entire connection information to obtain a second identifier.
  • the first device may also generate the second identifier according to this step after generating the connection information and before receiving the Probe request message.
  • the implementation manner of generating the second identifier by the first device according to the second character string includes the following four (1) to (4):
  • the preset first digit is 6, and the first device intercepts the first 6-bit string "123456” or the last 6-bit string "345678" as the second string from the connection information "12345678", and the second character
  • the string "123456” or "345678” is determined to be the second identifier.
  • the second character string is "123456”
  • the first preset character string is "Huawei”
  • the second identifier of the second character string and the first preset character string is "123456Huawei” or "Huawei123456”.
  • Step 208 The first device determines whether the first identifier matches the second identifier, and if the matching is performed, step 209 is performed.
  • the matching between the first identifier and the second identifier means that the first identifier is equal to the second identifier or the first identifier and the second identifier are in a corresponding relationship.
  • the identifier relationship list may be set in advance on the first device, where the identifier relationship list is used to store any two identifiers having a corresponding relationship.
  • the first device may determine whether the first identifier has a corresponding relationship with the second identifier, where the first device may: according to the first identifier, find a corresponding identifier from the identifier relationship list, if the identifier is found If the identifier is equal to the second identifier, it is determined that there is a corresponding relationship between the first identifier and the second identifier. Otherwise, it is determined that there is no corresponding relationship between the first identifier and the second identifier.
  • the second device uses the first identifier as the identifier of the device that needs to establish a wireless connection with the first identifier, and the first identifier is calculated by generating the first part information of the connection information, and the second identifier is The result of the calculation of the first part of the information is equal or corresponding, so when the first device receives the first identifier that matches the second identifier, the first device can automatically discover that the second device needs to be the first device.
  • the wirelessly connected device is established such that the first device and the second device can quickly discover each other, thereby reducing the time required to establish a wireless connection.
  • Step 209 The first device sends a Probe response message to the second device, where the Probe response message is used by the second device to determine to establish a wireless connection with the first device.
  • the second device sends a Probe request message to request to establish a wireless connection with an AP, where the first identifier of the AP is carried in the SSID field of the Probe request message. Therefore, in this step, when the first device determines that the first identifier matches the second identifier, the first device may learn that the second device requests to establish a wireless connection with itself, thereby determining that a wireless connection needs to be established with the second device.
  • the second device sends a Probe response message to inform the second device to agree to establish a wireless connection with it.
  • the Probe response message includes the MAC header, the frame body, and the FCS.
  • the MAC header includes fields such as Addr_3 and Addr_4.
  • Addr_3 is the receiver address
  • Addr_4 is the sender address
  • the frame body Including the SSID and other fields
  • the SSID is the identifier of the AP
  • the FCS is the check field, which is used to carry the check code.
  • the Addr_3 field of the Probe respnse message carries the MAC address of the second device
  • the Addr_4 field carries the The MAC address of a device
  • the SSID field carries a second identifier.
  • the SSID field of the Probe request message sent by the second device carries the first identifier "123456".
  • the first device receives the Probe request message, and the generated second identifier is “123456”, wherein the first identifier “123456” and the second identifier “123456” are the same, so the first identifier matches the second identifier, and the first identifier is determined.
  • the second device establishes a wireless connection and sends a Probe respone message to the second device.
  • Step 210 The second device receives the Probe response message, determines to establish a wireless connection with the first device according to the Probe response message, and performs step 211.
  • Step 211 The second device generates first authentication information according to the second part information of the connection information.
  • the content of the first part of the information of the connection information and the content of the second part of the information may be different or partially identical.
  • the connection information is “12345678”
  • the first part information may be “1234”
  • the second part information may be “5678”
  • the first part information may be “123456”
  • the second part information may be “345678”, etc. .
  • this step can be implemented by the following first and second implementations, including:
  • the first device and the second device perform a hash operation on the second part information of the connection information to obtain a second hash result, and generate first authentication information according to the second hash result.
  • the hash of the SHA-256 hash algorithm is performed on the second part information “5678” of the connection information “12345678”, and the second hash result is “6BAA0BD18BCC1E5237B70DC18595A7DEFF11CD27120CDC96A678003F8B162941”, according to the authentication method adopted by the second device.
  • the result is an interception or supplementation process to obtain the first authentication information of the number of bits required for the authentication mode.
  • the authentication method adopted by the second device may include a four-step handshake authentication mode.
  • WPS authentication method or other authentication methods.
  • Each authentication mode specifies a format of the authentication message.
  • the four-step handshake authentication method specifies that the authentication message is 256-bit key information
  • the WPS authentication mode specifies that the authentication message is an 8-digit number.
  • the second hash result includes 32 characters, which is exactly 256 bits, so the second hash result is used as the first authentication information.
  • the last 8 bits "8F162941" are intercepted, and "F” is mapped to the number "6” to obtain "86162941" as the first authentication information.
  • the second device adds a second preset information to the second part of the connection information to obtain
  • the second configuration information generates first authentication information according to the second configuration information.
  • the second partial information “5678” of the connection information “12345678” is converted into a binary “1011000101110”, and then 243 bits of “0” are added to the left of “1011000101110” to obtain 256 bits.
  • the 8-bit number "8888” or "0000” is added to the left or right side of the second portion information "5678" of the connection information "12345678" to obtain an 8-digit number as the first authentication information.
  • the second part of information may be directly used as the first piece of authentication information.
  • the second device may generate the first authentication information by using other methods in the first and second manners. For example, the second device intercepts the character string of the preset second digit from the connection information as the fourth character string, and generates the first authentication information according to the fourth character string; or determines the connection information as the first authentication information.
  • the fourth character string is determined as the first authentication information.
  • the first device intercepts the first 4-bit string "1234" or the last 4-digit string "5678" as the fourth string from the connection information "12345678", and the fourth The string is used as the first authentication information.
  • the sum of the preset first digit and the second digit may be equal to the number of characters included in the connection information.
  • the second device obtains the remaining character string after the first character string of the preset first digit intercepted from the connection information, and the remaining digits of the remaining character string are preset second digits, and The string with the preset second digit is left as the fourth string.
  • the preset first digit is 6, so the preset second digit is 2, and the second device intercepts the first character string "123456" of the preset first digit from the connection information "12345678" to obtain the remaining
  • the character string "78" of the second digit is preset, and the first device can use the character string "78" with the preset second digit as the fourth character string.
  • the fourth character string and the second preset character string are combined into the first authentication information.
  • the second authentication information composed of the four character strings and the second preset character string is "12349860” or "98601234".
  • the first authentication information is generated according to the fourth character string and the authentication mode adopted by the second device.
  • the number of digits of the authentication information is determined according to the authentication manner adopted by the second device; the second string is filled with the information according to the determined number of bits or the information is intercepted to obtain the second authentication information; for example, the fourth string is “1234”.
  • the second device uses the WPS (Wi-Fi (Wireless-FIdelity) Protected Setup, Wi-Fi Security Settings) authentication method, and according to the WPS authentication method, the number of digits of the authentication information is determined to be 8 digits. Filling the information "9988" with the fourth character string "1234" to obtain the first authentication information is "12349988".
  • the authentication information is determined according to the four-step handshake authentication mode.
  • the number of bits is 256 bits
  • the fourth character string "1234" includes 32 bits, so 224 bits are padded for the fourth character string, and 256-bit first authentication information is obtained. or,
  • the fourth character string is “1234”
  • the fourth character string “1234” is hashed to obtain a hash result of “98765432111”.
  • the authentication is determined according to the WPS authentication method.
  • the number of bits of the information is 8 digits, and the 8-digit number "98765432" is intercepted from the hash result as the first authentication information; for example, assuming that the second device adopts the four-step handshake authentication mode, according to the four-step handshake authentication mode,
  • the number of bits for determining the authentication information is 256 bits, and the hash result is "98765432111" including 88 bits, so the hash result is padded with 168 bits, and 256-bit first authentication information is obtained.
  • Step 212 The first device generates second authentication information according to the second part information of the connection message.
  • this step can be implemented in the following two ways, including:
  • the first device performs a hash operation on the second part of the connection information to obtain a second hash result, and generates second authentication information according to the second hash result.
  • This embodiment is the same as the process of the first method for generating the first authentication information by the second device, It will not be described in detail here.
  • the second device adds second preset information to the second part information of the connection information to obtain second configuration information, and generates second authentication information according to the second configuration information.
  • This embodiment is the same as the second method of generating the first authentication information by the second device, and will not be described in detail herein.
  • the first device may generate the second authentication information by using other methods, in addition to generating the second authentication information in the foregoing first and second manners. For example, the first device intercepts a character string of a preset second digit from the connection information as a third character string, and generates second authentication information according to the third character string; or determines the entire connection information as the second authentication information.
  • the method for generating the second authentication information by the first device according to the third string includes the following:
  • the third character string is determined as the second authentication information.
  • the first device intercepts the first 4-digit string "1234" or the last 4-digit string "5678" as the third string from the connection information "12345678", and the third The string is used as the second authentication information.
  • the sum of the preset first digit and the second digit may be equal to the number of characters included in the connection information.
  • the first device obtains the remaining character string after the second character string of the preset first digit intercepted from the connection information, and the remaining digits of the remaining character string are preset second digits, and The string with the preset second digit is left as the third string.
  • the preset first digit is 6, so the preset second digit is 2, and the first device intercepts the second character string “123456” of the preset first digit from the connection information “12345678”.
  • the character string "78" of the second digit is preset, and the first device can use the character string "78" with the preset second digit as the third character string.
  • the third character string and the second preset character string are combined into the second authentication information.
  • the third character string is “1234”
  • the second preset character string is “9860”
  • the first authentication information composed of the third character string and the second preset character string is “12349860” or “98601234”.
  • hashing the third string to obtain a hash result and extracting a string of the preset second digit from the hash result as the first authentication information, or determining the hash result as the second Certification Information.
  • Step 213 The first device verifies whether the first authentication information of the second device matches the second authentication information, and if yes, sends a confirmation message to the second device, where the confirmation information is used by the second device to determine to establish a wireless with the first device. connection.
  • the step may be: the first device determines the second authentication information as a PMK (Pairwise Master Key) of the four-step handshake authentication mode, according to the PMK.
  • the four-step handshake authentication mode is used to verify whether the first authentication information of the second device matches the second authentication information.
  • the step may be: the first device determines the second authentication information as a PIN (Personal Identification Number) of the WPS authentication mode, and verifies the WPS authentication method according to the PIN. Whether the first authentication information of the two devices matches the second authentication information.
  • PIN Personal Identification Number
  • the second device performs verification with the first device, so that the first device determines whether the first authentication information of the second device matches the second authentication information of the first device.
  • the specific implementation is as follows: the second device uses the first authentication information as the PMK of the four-step handshake authentication mode, and performs authentication with the first device according to the PMK and the four-step handshake authentication manner; or, the first authentication information is used as the WPS authentication PIN. According to the PIN and verification by the WPS authentication method with the first device.
  • the second device After receiving the confirmation information sent by the first device, the second device determines to establish a wireless connection with the first device according to the confirmation information, and then performs step 214.
  • the first device authenticates each other through the first authentication information and the second device through the second authentication information, and after the authentication between the first device and the second device, the first device and the second device establish a wireless connection with each other to ensure the first
  • the established wireless connection between a device and the second device is a secure connection.
  • Step 214 The first device establishes a data connection with the second device to establish a wireless connection with the second device.
  • the wireless connection between the first device and the second device may be a Wi-Fi connection or a Bluetooth connection. After the first device and the second device establish a wireless connection, data can be transmitted through the established wireless connection.
  • the first device when the first device determines that the first identifier matches the second identifier, the first device may directly perform open authentication with the second device, and establish and second after the authentication is passed. A data connection between the devices, thus establishing a wireless connection with the second device.
  • the first device generates the connection information and provides the second device, and the second device generates a first identifier according to the connection information, and sends a Probe request message carrying the first identifier to the first device, where the first device is configured according to the first device.
  • the connection information generates a second identity, and if the first tag matches the second identity, establishing a wireless connection with the second device.
  • the second device obtains the connection information generated by the first device by using the user manually, or generates the first identifier according to the connection information, and determines the device to be connected through the first identifier, thereby preventing the user from manually selecting the device to be connected. Thereby improving the efficiency of establishing a wireless connection to improve the efficiency of data transmission.
  • the first device and the second device further perform mutual authentication by using the first authentication information and the second authentication information, so that the established wireless connection is more secure, and the security of data transmission is improved.
  • Embodiments of the present invention provide a method for establishing a wireless connection.
  • the second device and the first device establish a wireless connection in an AP-STA mode, where the identity of the second device is an STA, the identity of the first device is an AP, and the second device stores the second according to the second device.
  • the identifier and the second authentication information are generated and sent to the second device, and the second device generates a first identifier according to the connection information, and sends a Probe request message to the first device, where the SSID field of the Probe request message carries the first identifier;
  • the first device establishes a wireless connection with the second device when it is determined that the first identifier matches the second target identifier.
  • the method includes:
  • Step 301 The first device generates first part information of the connection information according to the second identifier.
  • the technician may set a second identifier in the first device or generate a second identifier from the first device and store the generated second identifier.
  • the first device may be configured to generate a second identifier according to the generation rule.
  • the second identifier may be set. The first device randomly selects an identifier in the resource library. The second identifier, or the second identifier can be manually set.
  • the first device may generate the second identifier, where the first device generates the connection information, adds the first preset information to the first portion of the connection information, obtains the first configuration information, and generates the second information according to the first configuration information.
  • logo The first configuration information may be subjected to inverse permutation or shift processing to obtain a second identification.
  • the generated connection information is "12345678"
  • the first part of the connection information is "1234"
  • the first preset information is "hua”
  • the first configuration information obtained by adding the first preset information "hua” to the first part information "1234" of the connection information by the first device may be "1234hua", Hua1234" or "12hua34" and so on.
  • the first configuration information of the structure is “1234hua”, and the first identifier obtained by performing the inverse replacement processing on the first configuration information is “auh4321”; or, the number of bits of the shift is set in advance, and the number of bits may be two or Third, then performing two-bit shift processing or three-shift processing on the first configuration information, such as when the first identification obtained by performing two-bit shift processing on the first configuration information is “ua1234h”, when the first The first identifier obtained by the three-bit processing of the construction information is “hua1234”.
  • the first device intercepts the second identifier to obtain partial information, and determines the intercepted portion of the information as the first portion of the connection information; or performs the first operation processing on the second identifier to obtain the first portion of the connection information.
  • Information the first operation process is an inverse operation of generating a second identity.
  • the first part of the connection information may be obtained by performing the first operation processing on the second identifier in two steps (1) and (2) as follows:
  • the shift direction is reversed. For example, assuming that the first identifier is "auh4321", the first identifier "auh4321" is forward-replaced to obtain the first configuration information as "1234hua”; or, the first identifier is "ua1234h", and the first identifier is "ua1234h”.
  • the first preset information is “hua”
  • the first preset information “hua” is removed from the first configuration information “1234hua” to obtain the first partial information of the connection information is “1234”.
  • the first device may further generate the second identifier, where the first device generates the second identifier that includes the preset information and the random information.
  • the first part of the second identifier is identified as a manufacturer identifier or a device model.
  • the identifier or the device address identifier or the preset field or the application identifier, etc., and the second part is identified as a randomly generated number or character of a preset length;
  • the first device may intercept the second identifier to obtain the first part information of the connection information, or intercept the second identifier, and then perform a conversion operation to obtain the first part information of the connection information, for example, the first part identifier of the second identifier is used as an application.
  • the identifier is used as an example.
  • the application identifier is an identifier of a system application of the first device, or a part of the content obtained by the identifier of the application is used as an application identifier.
  • the interception takes "AE0D” as the first part identifier, and if the second part identifier is randomly generated as "1234", the second identifier is "AE0D1234".
  • the second bit "1234" may be intercepted as the first part information of the connection information for the second identifier; or the reversible conversion operation such as inversion or inversion of the 4 bits "1234" after the second identifier is truncated to obtain the first part of the connection information. information.
  • Step 302 The first device generates second part information of the connection information according to the second authentication information.
  • the technician may set the second authentication information in the first device or generate the second authentication information by the first device and store the generated second authentication information.
  • the first device can generate the second authentication information according to the generation rule by using the generation rule of the second authentication information.
  • the identifier resource library of the second authentication information can be set, and the first device randomly selects the resource in the resource library.
  • One identifier is used as the second authentication information, or the second authentication information can be manually set.
  • the first device may generate the second authentication information in the following manner, including: the first device generates the connection information, adds the second preset information to the second portion of the connection information, and obtains the second configuration information, and generates the second configuration information according to the second configuration information.
  • Second authentication information may be subjected to inverse permutation or shift processing to obtain second authentication information.
  • the generated connection information is "12345678”
  • the first part of the connection information is "5678”
  • the second preset information is "wei”
  • the first device adds the second part information "5678" to the connection information.
  • the second configuration information obtained by the second information "wei” may be “5678wei”, “wei5678”, or "56wei78”. It is assumed that the second configuration information of the structure is “5678wei”, and the second authentication information obtained by performing the inverse replacement processing on the second configuration information is “iew5678”; or, the number of bits of the shift is set in advance, and the number of bits may be two.
  • the first device intercepts the second authentication information to obtain part of the information, and
  • the intercepted part of the information is determined as the second part of the connection information; or the second operation process is performed on the second authentication information to obtain the second part of the connection information, and the second operation process is an inverse operation of generating the second authentication information.
  • the second operation processing may be performed on the second authentication information in two steps (1) and (2) to obtain the second part of the connection information, including:
  • the second authentication information may be forward-replaced to obtain second configuration information or reverse-shifted to the second authentication information to obtain second configuration information. For example, if the second authentication information is "iew4321", the second authentication information "iew4321” is forward-replaced to obtain the second configuration information as "5678wei”; or, the second authentication information is "ei5678w”, for the second The authentication information "ei5678w” is reversely shifted by two bits to obtain the second configuration information "5678wei”; or, the second authentication information is "wei5678", and the second authentication information "wei5678” is reversely shifted by three bits.
  • the second construction information is "5678wei”.
  • the second preset information is “wei”
  • the second preset information “wei” is removed from the second configuration information “5678wei” to obtain the second partial information of the connection information is “5678”.
  • the first device may further generate the second authentication information in the following manner, including: the first device generates the second authentication information that includes the preset information and the random information, for example, the first part of the second authentication information is identified as a manufacturer identifier. Or the device model identifier or the device address identifier or the preset field or the application identifier, etc., and the second part is identified as a randomly generated preset length number or character;
  • the first device may intercept the second authentication information to obtain the second part of the connection information, or intercept the second authentication information, and then perform a conversion operation to obtain the second part of the connection information, for example, the second authentication information.
  • the first part of the identifier is an example of the device address identifier
  • the device address identifier is a physical address of the wireless device of the first device, such as a MAC address, or a temporary address of the first device, such as an interface address, or A part of the content obtained by intercepting the foregoing address is identified as a device address.
  • the interception takes "AE0D” as the first part identifier, and if the second part identifier is randomly generated as "1234", then the second authentication information is "AE0D1234".
  • the second digit "1234" may be intercepted as the first part of the connection information after the second authentication information is intercepted; or the reversible conversion operation may be performed by inverting or inverting the four bits "1234" after the second authentication information is intercepted. To the second part of the information of the connection information.
  • the first device may further generate a random number or character of a preset length as the second authentication information, and convert the second authentication information to obtain the second part of the information of the connection information.
  • the first device generates a 4-digit number, and inverts or converts the 4-digit number or adds a preset field to obtain a second part of the connection information, such as generating "8765", and inverting it to obtain " 5678" as the second part of the connection information; or the first part generates an 8-digit number, and encrypts the 8-bit number using the encryption key generated by the application identifier of the first device device, and obtains the connection information according to the encrypted result. Two parts of information.
  • Step 303 The first device constructs connection information according to the first part information and the second part information.
  • the first part information and the second part information are spliced to obtain connection information, for example, the first part information is “1234”, the second part information is “5678”, and the first part information “1234” and the second part information “ 5678” is spliced to obtain "12345678" as the connection information.
  • the first device may generate the connection information according to the steps of 301 to 303 above under the trigger of the corresponding first user.
  • trigger methods as follows:
  • the first device detects that the connection interface in the application interface of the system application is triggered by the first user, the above steps 301 to 303 are performed.
  • a connection interface is set in an application interface of a system application having a transmission data requirement.
  • the connection interface may be clicked to enable the connection interface to trigger a connection command.
  • System apps can be photo capture apps with photo sharing or video capture apps with video sharing.
  • the system application is a photo camera application.
  • the photo camera application captures a picture and displays it in the application interface.
  • the foregoing steps 301 to 303 are executed to generate the connection information, and the generated connection information is “12345678”, as shown in FIG. 2-3.
  • the foregoing steps 301 to 303 are executed to generate the connection information, and the third-party application is an application for establishing a wireless connection. .
  • a third-party application for establishing a wireless connection is installed on the first device, and the application interface of the third-party application includes a connection interface.
  • the first user needs to transmit data, he can click Hit the connection interface so that the connection interface triggers the connection command.
  • connection interface in the application interface, and the first user clicks on the connection interface, and the connection interface triggers the connection command.
  • the first device detects the connection command triggered by the connection interface the above steps 301 to 303 are executed to generate the connection information, and the generated connection information is “12345678”, as shown in FIG. 2-5.
  • Step 304 The first device provides the connection information to the second device.
  • the step may include the following first to fourth implementation manners, respectively:
  • the first device displays the connection information.
  • the second user corresponding to the second device can view the connection information displayed by the first device, and input the connection information to the second device.
  • the first device plays the connection information through the speaker.
  • the second user can listen to the connection information played by the first device, and input the connection information to the second device.
  • the first device generates a graphic code including the connection information according to the connection information, and displays the graphic code.
  • the graphic code may be a one-dimensional code or a two-dimensional code
  • the first device may encode the connection information using an encoding algorithm for generating a graphic code to generate a graphic code including the connection information.
  • the second device has a scanning module, and the scanning module can be a camera or a scanner. After the first device displays the graphic code, the second device may scan the graphic code displayed by the first device through the scanning module included therein and obtain the connection information.
  • the first device establishes a short-range communication connection with the second device, and sends the connection information to the second device by using the short-range communication connection.
  • the first device may establish a short-distance communication connection with the second device by using an out-of-band communication manner.
  • the out-of-band communication method can be a communication method such as sound wave, infrared, NFC or HotKnot.
  • the first device may be a terminal device or an AP in the embodiment of the present invention.
  • the first device sets its own identity as an AP, and then performs this step.
  • the Beacon message can also be actively broadcast to inform the surrounding STAs of its existence.
  • the device that receives the Beacon message determines that the first device is an AP according to the Beacon message and actively requests to establish a connection with the first device, and then the first device performs the step.
  • Step 305 The second device acquires the connection information provided by the first device.
  • the second device may obtain the connection information by using the following first, second, and third manners.
  • the first device and the second device receive the connection information input by the second user.
  • the first device displays the connection information after generating the connection information or plays the connection information through the speaker.
  • the second user can view or listen to the connection information and then input the connection information to the second device.
  • the second device may obtain the connection information input by the second user by using the following methods (1) and (2), including:
  • the second device acquires connection information input by the second user from an application interface of the system application.
  • the application interface of the system application includes a receiving interface, and when the second user clicks the receiving interface, the receiving interface triggers receiving a command.
  • the second device displays an input box in the application interface, and the second user may input the viewed connection information or the accessed connection information to the input box.
  • the first device displays the connection information "12345678” or plays the connection information "12345678” through the speaker
  • the second user views the connection information "12345678” or the listening connection information "12345678”.
  • the input box is displayed, as shown in FIG. 2-7, and the second user inputs the connection information “12345678” in the input box.
  • the second device then reads the connection information "12345678" input by the second user from the input box.
  • the second device acquires the connection information input by the second user from the application interface of the third-party application.
  • the application interface of the third-party application includes a receiving interface, and when the second user clicks the receiving interface, the receiving interface triggers receiving the command.
  • the second device displays an input box in the application interface, and the second user may input the viewed connection information or the accessed connection information to the input box.
  • the second user clicks on the receiving interface in the application interface of the system application as shown in FIG. 2-4, and the receiving interface triggers receiving the command.
  • the second device detects the receiving command triggered by the receiving interface, the second device is in the application interface.
  • the input box is displayed, as shown in FIG. 2-8, and the second user inputs the connection information “12345678” in the input box.
  • the second device then reads the second user input from the input box Connection information "12345678".
  • the second device scans the graphic code displayed by the first device to obtain the connection information included in the graphic code.
  • the second user may enable the scanning module of the second device, and then the second device scans the graphic code displayed by the first device by using the scanning module, parses the scanned graphic code, and parses the connection information included in the scanned graphic code.
  • the third device and the second device establish a short-distance communication connection with the first device, and receive the connection information sent by the first device by using the short-distance communication connection.
  • the first device generates a connection information
  • the user may input the connection information to the second device, or scan the graphic code of the connection information on the first device by using the second device, or The device is in close proximity to the first device, so that the second device obtains the connection information in a short-distance communication manner.
  • this step may save the first device from performing device search.
  • the time and the time the user is looking for the identity of the second device can shorten the time to establish a wireless connection.
  • Step 306 The second device calculates, according to the first part information included in the connection information, a first identifier.
  • this step may include the following first and second implementations, including:
  • the first device and the second device perform a hash operation on the first part information of the connection information to obtain a first hash result, and generate a first identifier according to the first hash result.
  • the partial hash information may be intercepted from the first hash result as the first identifier, or the intercepted partial information may be added to the preset information to form the first identifier, or the first hash result may be used as the first identifier or the like.
  • the second device adds the first preset information to the first part of the connection information to obtain the first configuration information, and generates the first identifier according to the first configuration information.
  • the first configuration may be performed by performing an inverse replacement process or a shift process on the first configuration information. For example, if the first part information of the connection information "12345678" is "1234" and the first preset information is "hua", the second device adds the first preset information "hua” to the first part information "1234" of the connection information.
  • the obtained first configuration information may be “1234hua”, “hua1234” or “12hua34” or the like.
  • the first configuration information of the structure is “1234hua”, and the first identifier obtained by performing the inverse replacement processing on the first configuration information is “auh4321”; or, the number of bits of the shift is set in advance, and the number of bits may be two or Third-order, then two-shift processing or three-shift position on the first construction information
  • the first identifier obtained by performing the two-bit shift processing on the first configuration information is “ua1234h”
  • the first identifier obtained by performing the three-bit shift processing on the first configuration information is “hua1234”.
  • the method for generating the first identifier by the second device may be other than the foregoing first and second types.
  • a string of the preset first digit may be intercepted from the connection information as the first character.
  • the string generates a first identifier according to the first string; or hashes the entire connection information to obtain a first identifier.
  • the implementation manner of generating the first identifier by the second device according to the first character string includes the following four (1) to (4):
  • the preset first digit is 6, and the second device intercepts the first 6-character string "123456” or the last 6-bit string "345678" as the first string from the connection information "12345678", and the first character
  • the string "123456” or "345678” is determined to be the first identifier.
  • the first character string is "123456”
  • the first preset character string is "Huawei”
  • the first identifier of the first character string and the first preset character string is "123456Huawei” or "Huawei123456”.
  • the second device performs a corresponding reverse conversion on the first part information of the obtained connection information.
  • a first identity that matches the second identity can be obtained.
  • the second identifier is the application identifier and the randomly generated portion
  • the second device obtains the first portion information “1234”
  • the corresponding system for obtaining the operation is obtained.
  • the application identifier of the application because the second device is the same as the system application running by the first device, the second device can obtain the application identifier as “AE0D”, and the splicing should be With the identifier and the first part of the information, the first identifier is "AE0D1234".
  • Step 307 The second device sends a Probe request message, where the SSID field of the Probe request message carries the first identifier.
  • the second device sets its own identity as the STA, and sends a Probe request message to request to establish a wireless connection with the AP that receives the Probe request message.
  • the second device may broadcast the Probe request message, or the second device may obtain the address of the first device from the Beacon message after receiving the Beacon message broadcast by the first device, and the first device is single according to the address of the first device. Broadcast the Probe request message.
  • the Probe request message includes a MAC header, a frame body, and an FCS.
  • the MAC header includes fields such as Addr_1 and Addr_2, Addr_1 is the receiver address, and Addr_2 is the sender address.
  • the frame body includes a field such as an SSID, the SSID is an identifier of the AP, and the FCS is a check field, and is used to carry a check code.
  • the second device uses the first identifier as the identifier of the AP, and when the second device broadcasts the Probe request message, the Addr_1 field of the Probe request message is empty, and when the second device unicasts the Probe request message to the In a device, the Addr_1 field of the Probe request message carries the MAC address of the first device; in both cases, the Addr_2 field of the Probe request message carries the MAC address of the second device, and the SSID field carries the first identifier.
  • Step 308 The first device receives the Probe request message, where the SSID field of the Probe request message carries the first identifier.
  • the first device is an AP or sets its own identity as an AP, and then receives a Probe request message sent by the second device.
  • the second device sends a Probe request message, where the SSID field of the Probe request message carries the first identifier “123456”, and the first device receives the Probe request message.
  • Step 309 The first device determines whether the first identifier matches the second identifier, and if the matching is performed, step 310 is performed.
  • the matching between the first identifier and the second identifier means that the first identifier is equal to the second identifier or the first identifier and the second identifier are in a corresponding relationship.
  • the identifier relationship list may be set in advance on the first device, where the identifier relationship list is used to store any two identifiers having a corresponding relationship.
  • the first device can determine whether the first identifier and the second identifier are The corresponding relationship exists, the first device may find a corresponding identifier from the identifier relationship list according to the first identifier, and if the found identifier is equal to the second identifier, determine between the first identifier and the second identifier. There is a corresponding relationship. Otherwise, it is determined that there is no corresponding relationship between the first identifier and the second identifier.
  • the second device may use the first identifier as an identifier of a device that needs to establish a wireless connection with the first identifier, where the first identifier is generated by calculating the first part information of the connection information, and the second identifier is generated.
  • the first device can automatically discover that the second device is a device that needs to establish a wireless connection with itself, and implements the first, when the first identifier matches the second identifier.
  • the device and the second device discover each other as a device that needs to establish a wireless connection with the other party, so that the first device and the second device can quickly discover each other, thereby reducing the time required to establish a wireless connection.
  • Step 310 The first device sends a Probe Response message to the second device, where the Probe response message is used by the second device to determine to establish a wireless connection with the first device.
  • the second device sends a Probe request message to request to establish a wireless connection with an AP, where the first identifier of the AP is carried in the SSID field of the Probe request message. Therefore, in this step, when the first device determines that the first identifier matches the second identifier, the first device may learn that the second device requests to establish a wireless connection with itself, thereby determining that a wireless connection needs to be established with the second device.
  • the second device sends a Probe response message to inform the second device to agree to establish a wireless connection with it.
  • the Probe response message includes the MAC header, the frame body, and the FCS.
  • the MAC header includes fields such as Addr_3 and Addr_4.
  • Addr_3 is the receiver address
  • Addr_4 is the sender address
  • the frame body Including the SSID and other fields
  • the SSID is the identifier of the AP
  • the FCS is the check field, which is used to carry the check code.
  • the Addr_3 field of the Probe respnse message carries the MAC address of the second device
  • the Addr_4 field carries the MAC address of the first device
  • the SSID field carries the second identifier.
  • the SSID field of the Probe request message sent by the second device carries the first identifier "123456".
  • the first device receives the Probe request message, and the generated second identifier is “123456”, wherein the first identifier “123456” and the second identifier “123456” are the same, so the first identifier matches the second identifier, and the first identifier is determined.
  • the second device establishes a wireless connection and sends a Probe respone message to the second device.
  • Step 311 The second device receives the Probe request message, according to the Probe request It is determined that a wireless connection is established with the first device, and step 312 is performed.
  • Step 312 The second device generates first authentication information according to the second part information of the connection information.
  • the content of the first part of the information of the connection information and the content of the second part of the information may be different or partially identical.
  • the connection information is “12345678”
  • the first part information may be “1234”
  • the second part information may be “5678”
  • the first part information may be “123456”
  • the second part information may be “345678”, etc. .
  • this step can be implemented by the following first and second implementations, including:
  • the first device and the second device perform a hash operation on the second part information of the connection information to obtain a second hash result, and generate second authentication information according to the second hash result.
  • the second device adds the second preset information to the second part information of the connection information to obtain the second configuration information, and generates the first authentication information according to the second configuration information.
  • the second device may generate the first authentication information by using other methods in the first and second manners. For example, the second device intercepts the character string of the preset second digit from the connection information as the fourth character string, and generates the first authentication information according to the fourth character string; or determines the connection information as the first authentication information.
  • the fourth character string is determined as the first authentication information.
  • the first device intercepts the first 4-bit string "1234" or the last 4-digit string "5678" as the fourth string from the connection information "12345678", and the fourth The string is used as the first authentication information.
  • the sum of the preset first digit and the second digit may be equal to the number of characters included in the connection information.
  • the second device obtains the remaining character string after the first character string of the preset first digit intercepted from the connection information, and the remaining digits of the remaining character string are preset second digits, and The string with the preset second digit is left as the fourth string.
  • the preset first digit is 6, so the preset second digit is 2, and the second device intercepts the first character string "123456" of the preset first digit from the connection information "12345678" to obtain the remaining
  • the character string "78" of the second digit is preset, and the first device can use the character string "78" with the preset second digit as the fourth character string.
  • the fourth character string and the second preset character string are combined into the first authentication information.
  • the fourth character string is "1234"
  • the second preset character string is "9860”
  • the second authentication information composed of the fourth character string and the second preset character string is "12349860” or "98601234".
  • the first authentication information is generated according to the fourth character string and the authentication mode adopted by the second device.
  • the number of digits of the authentication information is determined according to the authentication mode used by the second device; the second string is filled with the information according to the determined number of bits or the interception information is obtained; for example, the fourth string is “1234” Assume that the WPS authentication mode adopted by the second device determines that the number of digits of the authentication information is 8 digits according to the WPS authentication mode, and the first authentication information is 12349988 for the fourth string "1234" padding information "9988".
  • the four-step handshake authentication mode adopted by the second device determines that the number of bits of the authentication information is 256 bits according to the four-step handshake authentication mode, and the fourth character string “1234” includes 32 bits, so the fourth string is Filling 224 bits yields 256-bit first authentication information. or,
  • the fourth character string is "1234"
  • the fourth character string "1234" is hashed to obtain the hash result as "98765432111”. It is assumed that the WPS authentication mode adopted by the second device is determined according to the WPS authentication mode.
  • the number of digits of the authentication information is 8 digits, and the 8-digit number "98765432" is intercepted from the hash result as the first authentication information; for example, it is assumed that the second device adopts the four-step handshake authentication method according to the four-step handshake authentication.
  • the number of bits of the authentication information is determined to be 256 bits, and the hash result is "98765432111" including 88 bits, so the hash result is filled with 168 bits, and 256-bit first authentication information is obtained.
  • the second device can perform the corresponding reverse on the obtained second portion information of the connection information.
  • the first authentication information matching the second authentication information can be obtained.
  • the second device when the first device performs the second partial information of the connection information by inverting the generated 4-digit number, the second device re-inverts the second partial information to obtain the first authentication.
  • Information when the first device encrypts the generated second digit of the authentication information by using the encryption key generated by the application identifier of the first device device, and uses the encrypted result as the second portion of the connection information The second device decrypts the second part of the information by using the application identifier to obtain the first authentication information.
  • Step 313 The first device verifies whether the first authentication information of the second device matches the second authentication information, and if yes, sends a confirmation message to the second device, where the confirmation information is used by the second device to determine to establish a wireless with the first device. connection.
  • the authentication mode adopted by the first device may be a four-step handshake authentication method in IEEE802.11, a WPS authentication method defined by a WFA (Wi-Fi Alliance), or other authentication methods.
  • Each authentication mode specifies the format of the authentication message.
  • the four-step handshake authentication method specifies that the authentication message is 256-bit key information
  • the WPS authentication mode specifies that the authentication message is an 8-digit number.
  • the first device may determine that the second authentication information is the PMK of the four-step handshake authentication mode, and verify the first device of the second device according to the PMK and the four-step handshake authentication mode. Whether the authentication information matches its second authentication information.
  • the step may be: the first device determines the second authentication information as the PIN of the WPS authentication mode, and verifies the first authentication information of the second device and the second authentication information according to the PIN and the WPS authentication mode. Whether it matches.
  • the second device performs verification with the first device, so that the first device determines whether the first authentication information of the second device matches the second authentication information of the first device.
  • the specific implementation is as follows: the second device uses the first authentication information as the PMK of the four-step handshake authentication mode, and performs authentication with the first device according to the PMK and the four-step handshake authentication manner; or, the first authentication information is used as the WPS authentication PIN. According to the PIN and verification by the WPS authentication method with the first device.
  • the second device After receiving the confirmation information sent by the first device, the second device determines to establish a wireless connection with the first device according to the confirmation information, and then performs step 314.
  • the first device authenticates each other through the first authentication information and the second device through the second authentication information, and after the authentication is passed between the first device, the first device and the second device establish a wireless connection with each other to ensure the first The established wireless connection between the device and the second device is a secure connection.
  • Step 314 The first device establishes a data connection with the second device to implement establishment and A wireless connection between the two devices.
  • the wireless connection between the second device and the first device is an encrypted wireless connection, and the second device and the first device can transmit data through the encrypted wireless connection.
  • the wireless connection can be a Wi-Fi connection or a Bluetooth connection.
  • the first device generates the connection information and provides the second device, and the second device generates the first identifier according to the connection information, and sends a Probe request message carrying the first identifier to the first device, where the first device determines Whether the second identifier stored by the second device matches the first identifier of the second device, and if the first label matches the second identifier, establishing a wireless connection with the second device.
  • the second device obtains the connection information generated by the first device by using the user manually, or generates the first identifier according to the connection information, and determines the device to be connected through the first identifier, thereby preventing the user from manually selecting the device to be connected. Thereby improving the efficiency of establishing a wireless connection to improve the efficiency of data transmission.
  • the first device and the second device further perform mutual authentication by using the first authentication information and the second authentication information, so that the established wireless connection is more secure, and the security of data transmission is improved.
  • Embodiments of the present invention provide a method for establishing a wireless connection.
  • the first device and the second device are both ordinary Wi-Fi P2P (Peer-to-Peer) devices, and the second device and the first device detect the surrounding Wi-Fi by broadcasting the Probe request message.
  • the P2P device when the second device and the first device detect each other, the first device and the second device perform GO negotiation, and the first device becomes a GO after the negotiation.
  • the first device generates the connection information, and provides the connection information to the second device, the second device generates a first identifier according to the connection information, and the first device generates a second identifier according to the connection information, if the first identifier and the second identifier Match, then the first device
  • the method includes:
  • Step 401 The first device generates connection information.
  • connection information may be a string of characters
  • the content of the connection information may be numbers, letters or other characters, or may be a combination of any number of characters in numbers, letters and other characters.
  • the first device can randomly generate a string of characters and use the generated string as the connection information.
  • the first device may generate connection information triggered by the corresponding first user.
  • connection information triggered by the corresponding first user.
  • the connection information is generated.
  • a connection interface is set in an application interface of a system application having a transmission data requirement.
  • the connection interface may be clicked to enable the connection interface to trigger a connection command.
  • System apps can be photo capture apps with photo sharing or video capture apps with video sharing.
  • the system application is a photo camera application.
  • the photo camera application captures a picture and displays it in the application interface.
  • the connection information is randomly generated, and the generated connection information is “12345678”, as shown in Figure 2-3.
  • the connection information is generated, and the third-party application is an application for establishing a wireless connection.
  • a third-party application for establishing a wireless connection is installed on the first device, and the application interface of the third-party application includes a connection interface.
  • the connection interface can be clicked so that the connection interface triggers the connection command.
  • connection interface in the application interface
  • the connection interface triggers the connection command.
  • the first device randomly generates connection information, and assumes that the generated connection information is “12345678”, as shown in Figure 2-5.
  • Step 402 The first device provides the connection information to the second device.
  • the step may include the following first to fourth implementation manners, respectively:
  • the first device displays the connection information.
  • the second user corresponding to the second device can view the connection information displayed by the first device, and input the connection information to the second device.
  • the first device plays the connection information through the speaker.
  • the second user can listen to the connection information played by the first device, and input the connection information to the second device.
  • the first device generates a graphic code including the connection information according to the connection information, and displays the graphic code.
  • the graphic code may be a one-dimensional code or a two-dimensional code
  • the first device may encode the connection information by using an encoding algorithm for generating a graphic code to generate a graphic code including the connection information, such as generating a QR Code two-dimensional code.
  • the second device has a scanning module, and the scanning module can be a camera or a scanner. After the first device displays the graphic code, the second device may scan the graphic code displayed by the first device through the scanning module included therein and obtain the connection information.
  • the first device establishes a short-range communication connection with the second device, and sends the connection information to the second device by using the short-range communication connection.
  • the first device may establish a short-distance communication connection with the second device by using an out-of-band communication manner.
  • the out-of-band communication method can be a communication method such as sound wave, infrared, NFC or HotKnot.
  • the first device generates a connection information
  • the user may input the connection information to the second device, or scan the graphic code of the connection information on the first device by using the second device, or The device is in close proximity to the first device, so that the second device obtains the connection information in a short-distance communication manner.
  • this step may save the first device from performing device search.
  • the time and the time the user is looking for the identity of the second device can shorten the time to establish a wireless connection.
  • Step 403 The second device acquires the connection information provided by the first device.
  • the second device may obtain the connection information by using the following first, second, and third manners.
  • the first device and the second device receive the connection information input by the second user.
  • the first device displays the connection information after generating the connection information or plays the connection information through the speaker.
  • the second user can view or listen to the connection information and then input the connection information to the second device.
  • the second device may obtain the connection information input by the second user by using the following methods (1) and (2), including:
  • the second device acquires connection information input by the second user from an application interface of the system application.
  • the application interface of the system application includes a receiving interface, and when the second user clicks the receiving interface, the receiving interface triggers receiving a command.
  • the second device displays an input box in the application interface, and the second user may input the viewed connection information or the accessed connection information to the input box.
  • the first device displays the connection information "12345678” or plays the connection information "12345678” through the speaker
  • the second user views the connection information "12345678” or the listening connection information "12345678”.
  • the input box is displayed, as shown in FIG. 2-7, and the second user inputs the connection information “12345678” in the input box.
  • the second device then reads the connection information "12345678" input by the second user from the input box.
  • the second device acquires the connection information input by the second user from the application interface of the third-party application.
  • the application interface of the third-party application includes a receiving interface, and when the second user clicks the receiving interface, the receiving interface triggers receiving the command.
  • the second device displays an input box in the application interface, and the second user may input the viewed connection information or the accessed connection information to the input box.
  • the second user clicks on the receiving interface in the application interface of the system application as shown in FIG. 2-4, and the receiving interface triggers receiving the command.
  • the second device detects the receiving command triggered by the receiving interface, the second device is in the application interface.
  • the input box is displayed, as shown in FIG. 2-8, and the second user inputs the connection information “12345678” in the input box.
  • the second device then reads the connection information "12345678" input by the second user from the input box.
  • the second device scans the graphic code displayed by the first device to obtain the connection information included in the graphic code.
  • the second user may enable the scanning module of the second device, and then the second device scans the graphic code displayed by the first device by using the scanning module, parses the scanned graphic code, and parses the connection information included in the scanned graphic code.
  • the third device and the second device establish a short-distance communication connection with the first device, and receive the connection information sent by the first device by using the short-distance communication connection.
  • Step 404 The second device calculates, according to the first part information included in the connection information, a first identifier.
  • this step may include the following first and second implementations, including:
  • the first device and the second device perform a hash operation on the first part information of the connection information to obtain a first hash result, and generate a first identifier according to the first hash result.
  • Part of the information may be intercepted from the first hash result as the first identifier, or the portion to be intercepted
  • the sub-information adds the preset information to form the first identifier, or the first hash result is used as the first identifier or the like.
  • the second device adds the first preset information to the first part of the connection information to obtain the first configuration information, and generates the first identifier according to the first configuration information.
  • the first configuration may be performed by performing an inverse replacement process or a shift process on the first configuration information. For example, if the first part information of the connection information "12345678" is "1234" and the first preset information is "hua", the second device adds the first preset information "hua” to the first part information "1234" of the connection information.
  • the obtained first configuration information may be “1234hua”, “hua1234” or “12hua34” or the like.
  • the first configuration information of the structure is “1234hua”, and the first identifier obtained by performing the inverse replacement processing on the first configuration information is “auh4321”; or, the number of bits of the shift is set in advance, and the number of bits may be two or Third, then performing two-bit shift processing or three-shift processing on the first configuration information, such as when the first identification obtained by performing two-bit shift processing on the first configuration information is “ua1234h”, when the first The first identifier obtained by the three-bit processing of the construction information is “hua1234”.
  • the method for generating the first identifier by the second device may be other than the foregoing first and second types.
  • a string of the preset first digit may be intercepted from the connection information as the first character.
  • the string generates a first identifier according to the first string; or hashes the entire connection information to obtain a first identifier.
  • the implementation manner of generating the first identifier by the second device according to the first character string includes the following four (1) to (4):
  • the preset first digit is 6, and the second device intercepts the first 6-character string "123456” or the last 6-bit string "345678" as the first string from the connection information "12345678", and the first character
  • the string "123456” or "345678” is determined to be the first identifier.
  • the first character string is "123456”
  • the first preset character string is "Huawei”
  • the first identifier of the first character string and the first preset character string is "123456Huawei” or "Huawei123456”.
  • the string of the first digit is preset, and the intercepted string and the first preset string are combined into a first identifier.
  • Step 405 The second device sends a Probe request message, where the reserved field of the Probe request message carries the first identifier.
  • the identity of the second device is set to be a Wi-Fi P2P device, and a Probe request message is sent to request to establish a wireless connection with the Wi-Fi P2P device that receives the Probe request message.
  • the second device may broadcast the Probe request message, or the second device may obtain the address of the first device from the Probe Request message after receiving the Probe Request message broadcast by the first device, and first according to the address of the first device.
  • the device unicasts the Probe request message.
  • the Probe request message includes a MAC header, a frame body, and an FCS.
  • the MAC header includes fields such as Addr_1 and Addr_2, Addr_1 is the receiver address, and Addr_2 is the sender address.
  • the frame body includes an SSID field and a reserved field Vendor specific. The SSID field is used to carry the identifier, and the FCS is a check field, which is used to carry the check code.
  • the second device uses the first identifier as the identifier of the GO.
  • the Addr_1 field of the Probe request message is empty, and when the second device unicasts the Probe request message to the first device.
  • the Addr_1 field of the Probe request message carries the MAC address of the first device; in the two cases, the Addr_2 field of the Probe request message carries the MAC address of the second device, and the reserved field carries the first identifier, and the SSID The field is empty.
  • a P2P IE Information Element
  • Attributes can be carried in the P2P IE. This part of the Attribute contains reserved fields, which can be used to carry customized messages.
  • Step 406 The first device receives the Probe request message, where the reserved field of the Probe request message carries the first identifier.
  • the second device sends a Probe request message, and the reserved field of the Probe request message carries the first identifier “123456”, and the first device receives the Probe request message.
  • Step 407 The first device calculates, according to the first part information of the connection information, a second identifier, where the first device uses the second identifier as its own identifier.
  • the first device may calculate and generate the second identifier by using the following two manners, including:
  • the first device performs a hash operation on the first part of the connection information to obtain a first hash result, and generates a second identifier according to the first hash result.
  • This embodiment is the same as the first mode in which the second device generates the first identifier.
  • For the detailed process refer to the first manner in which the second device generates the first identifier, which is not described in detail herein.
  • the second device adds the second preset information to the second part information of the connection information to obtain the second configuration information, and generates the second identifier according to the second configuration information.
  • This embodiment is the same as the second method of generating the first identifier by the second device.
  • the second manner of generating the first identifier by the second device which is not described in detail herein.
  • the method for generating the second identifier by the first device may be other than the foregoing first and second types. For example, a string of a preset first digit may be intercepted from the connection information as the second string. Generating a second identifier according to the second string; or hashing the entire connection information to obtain a second identifier.
  • the first device may also generate the second identifier according to this step after generating the connection information and before receiving the Probe request message.
  • the implementation manner of generating the second identifier by the first device according to the second character string includes the following four (1) to (4):
  • the preset first digit is 6, and the first device intercepts the first 6-bit string "123456” or the last 6-bit string "345678" as the second string from the connection information "12345678", and the second character
  • the string "123456” or "345678” is determined to be the second identifier.
  • the second character string is "123456”
  • the first preset character string is "Huawei”
  • the second identifier of the second character string and the first preset character string is "123456Huawei” or "Huawei123456”.
  • Step 408 The first device determines whether the first identifier matches the second identifier, and if yes, performs step 409.
  • the matching between the first identifier and the second identifier means that the first identifier is equal to the second identifier or There is a correspondence between an identifier and a second identifier.
  • the identifier relationship list may be set in advance on the first device, where the identifier relationship list is used to store any two identifiers having a corresponding relationship.
  • the first device may determine whether the first identifier has a corresponding relationship with the second identifier, where the first device may: according to the first identifier, find a corresponding identifier from the identifier relationship list, if the identifier is found If the identifier is equal to the second identifier, it is determined that there is a corresponding relationship between the first identifier and the second identifier. Otherwise, it is determined that there is no corresponding relationship between the first identifier and the second identifier.
  • the second device obtains the connection information generated by the first device by using the user manually, or generates the first identifier according to the connection information, and determines the device to be connected through the first identifier, thereby preventing the user from manually selecting the device to be connected. This improves the efficiency of establishing a wireless connection.
  • Step 409 The first device sends a Probe Response message to the second device, where the Probe response message is used by the second device to determine to establish a wireless connection with the first device.
  • the second device sends a Probe Request message to request to establish a wireless connection with another P2P device, where the first identifier of the P2P device is carried in a reserved field of the Probe request message. Therefore, in this step, when the first device determines that the first identifier matches the second identifier, the first device may learn that the second device requests to establish a wireless connection with itself, thereby determining that a wireless connection needs to be established with the second device. The second device sends a Probe response message to inform the second device to agree to establish a wireless connection with it.
  • the reserved field of the Probe request message sent by the second device carries the first identifier "123456”.
  • the first device receives the Probe request message, and the generated second identifier is “123456”, wherein the first identifier “123456” and the second identifier “123456” are the same, so the first identifier matches the second identifier, and the first identifier is determined.
  • the second device establishes a wireless connection and sends a Probe respone message to the second device.
  • Step 410 The second device receives the Probe response message, determines to establish a wireless connection with the first device according to the Probe response message, and performs step 411.
  • Step 411 The second device generates first authentication information according to the second part information of the connection information.
  • the content of the first part of the information of the connection information and the content of the second part of the information may be different or partially identical.
  • the connection information is "12345678", and the first part of information may be "1234".
  • the second part of the information may be "5678", or the first part of the information may be "123456", and the second part of the information may be "345678" or the like.
  • this step can be implemented by the following first and second implementations, including:
  • the first device and the second device perform a hash operation on the second part information of the connection information to obtain a second hash result, and generate first authentication information according to the second hash result.
  • the hash of the SHA-256 hash algorithm is performed on the second part information “5678” of the connection information “12345678”, and the second hash result is “6BAA0BD18BCC1E5237B70DC18595A7DEFF11CD27120CDC96A678003F8B162941”, according to the authentication method adopted by the second device.
  • the result is an interception or supplementation process to obtain the first authentication information of the number of bits required for the authentication mode.
  • the authentication method adopted by the second device may include a four-step handshake authentication mode.
  • WPS authentication method or other authentication methods.
  • Each authentication mode specifies a format of the authentication message.
  • the four-step handshake authentication method specifies that the authentication message is 256-bit key information
  • the WPS authentication mode specifies that the authentication message is an 8-digit number.
  • the second hash result includes 32 characters, which is exactly 256 bits, so the second hash result is used as the first authentication information.
  • the last 8 bits "8F162941" are intercepted, and "F” is mapped to the number "6” to obtain "86162941" as the first authentication information.
  • the second device adds the second preset information to the second part information of the connection information to obtain the second configuration information, and generates the first authentication information according to the second configuration information.
  • the second partial information "5678" of the connection information "12345678” is converted into a binary "1011000101110", and then 243bit "0" is added to the left of "1011000101110” to obtain 256 bits.
  • the 8-bit number "8888” or "0000” is added to the left or right side of the second portion information "5678" of the connection information "12345678" to obtain an 8-digit number as the first authentication information.
  • the second part of information may be directly used as the first piece of authentication information.
  • the second device may generate the first authentication by using the foregoing first and second modes.
  • other methods may be used to generate the first authentication information. For example, the second device intercepts the character string of the preset second digit from the connection information as the fourth character string, and generates the first authentication information according to the fourth character string; or determines the connection information as the first authentication information.
  • the fourth character string is determined as the first authentication information.
  • the first device intercepts the first 4-bit string "1234" or the last 4-digit string "5678" as the fourth string from the connection information "12345678", and the fourth The string is used as the first authentication information.
  • the sum of the preset first digit and the second digit may be equal to the number of characters included in the connection information.
  • the second device obtains the remaining character string after the first character string of the preset first digit intercepted from the connection information, and the remaining digits of the remaining character string are preset second digits, and The string with the preset second digit is left as the fourth string.
  • the preset first digit is 6, so the preset second digit is 2, and the second device intercepts the first character string "123456" of the preset first digit from the connection information "12345678" to obtain the remaining
  • the character string "78" of the second digit is preset, and the first device can use the character string "78" with the preset second digit as the fourth character string.
  • the fourth character string and the second preset character string are combined into the first authentication information.
  • the fourth character string is "1234"
  • the second preset character string is "9860”
  • the second authentication information composed of the fourth character string and the second preset character string is "12349860” or "98601234".
  • the first authentication information is generated according to the fourth character string and the authentication mode adopted by the second device.
  • the number of digits of the authentication information is determined according to the authentication mode used by the second device; the second string is filled with the information according to the determined number of bits or the interception information is obtained; for example, the fourth string is “1234” Assume that the WPS authentication mode adopted by the second device determines that the number of digits of the authentication information is 8 digits according to the WPS authentication method, and the first authentication information is 12349988 for the fourth string "1234" padding information "9988".
  • the four-step handshake authentication method determines that the number of bits of the authentication information is 256 bits according to the four-step handshake authentication method, and the fourth character string "1234" includes 32 bits, so that the fourth character string is filled with 224 bits, and 256 bits are obtained.
  • the fourth character string is “1234”
  • the fourth character string “1234” is hashed to obtain a hash result of “98765432111”.
  • the authentication is determined according to the WPS authentication method.
  • the number of bits of the information is 8 digits, and the 8-digit number "98765432" is intercepted from the hash result as the first authentication information; for example, assuming that the second device adopts the four-step handshake authentication mode, according to the four-step handshake authentication mode,
  • the number of bits for determining the authentication information is 256 bits, and the hash result is "98765432111" including 88 bits, so the hash result is padded with 168 bits, and 256-bit first authentication information is obtained.
  • Step 412 The first device generates second authentication information according to the second part information of the connection message.
  • this step can be implemented in the following two ways, including:
  • the first device performs a hash operation on the second part of the connection information to obtain a second hash result, and generates second authentication information according to the second hash result.
  • This embodiment is the same as the process of the first mode for generating the first authentication information by the second device, and will not be described in detail herein.
  • the second device adds second preset information to the second part information of the connection information to obtain second configuration information, and generates second authentication information according to the second configuration information.
  • This embodiment is the same as the second method of generating the first authentication information by the second device, and will not be described in detail herein.
  • the first device may generate the second authentication information by using other methods, in addition to generating the second authentication information in the foregoing first and second manners. For example, the first device intercepts a character string of a preset second digit from the connection information as a third character string, and generates second authentication information according to the third character string; or determines the entire connection information as the second authentication information.
  • the method for generating the second authentication information by the first device according to the third string includes the following:
  • the third character string is determined as the second authentication information.
  • the first device intercepts from the connection information "12345678"
  • the first 4-bit character string "1234" or the last 4-digit character string "5678" is taken as the third character string, and the third character string is taken as the second authentication information.
  • the sum of the preset first digit and the second digit may be equal to the number of characters included in the connection information.
  • the first device obtains the remaining character string after the second character string of the preset first digit intercepted from the connection information, and the remaining digits of the remaining character string are preset second digits, and The string with the preset second digit is left as the third string.
  • the preset first digit is 6, so the preset second digit is 2, and the first device intercepts the second character string “123456” of the preset first digit from the connection information “12345678”.
  • the character string "78" of the second digit is preset, and the first device can use the character string "78" with the preset second digit as the third character string.
  • the third character string and the second preset character string are combined into the second authentication information.
  • the third character string is “1234”
  • the second preset character string is “9860”
  • the first authentication information composed of the third character string and the second preset character string is “12349860” or “98601234”.
  • hashing the third string to obtain a hash result and extracting a string of the preset second digit from the hash result as the first authentication information, or determining the hash result as the second Certification Information.
  • Step 413 The first device verifies whether the first authentication information of the second device matches the second authentication information, and if yes, sends a confirmation message to the second device, where the confirmation information is used by the second device to determine to establish a wireless with the first device. connection.
  • the first device may determine that the second authentication information is the PMK of the four-step handshake authentication mode, and verify the second device according to the PMK and the four-step handshake authentication mode. Whether the first authentication information matches its second authentication information.
  • the step may be: the first device determines the second authentication information as the PIN of the WPS authentication mode, and verifies the first authentication information of the second device according to the PIN and the WPS authentication mode. 2. Whether the authentication information matches.
  • the second device performs verification with the first device, so that the first device determines whether the first authentication information of the second device and the second authentication information of the first device are match.
  • the specific implementation is as follows: the second device uses the first authentication information as the PMK of the four-step handshake authentication mode, and performs authentication with the first device according to the PMK and the four-step handshake authentication manner; or, the first authentication information is used as the WPS authentication PIN. According to the PIN and verification by the WPS authentication method with the first device.
  • the second device After receiving the confirmation information sent by the first device, the second device determines to establish a wireless connection with the first device according to the confirmation information, and then performs step 214.
  • Step 414 The first device establishes a data connection with the second device to establish a wireless connection with the second device.
  • the wireless connection between the second device and the first device is an encrypted wireless connection, and the second device and the first device can transmit data through the encrypted wireless connection.
  • the wireless connection can be a Wi-Fi connection or a Bluetooth connection.
  • the first device generates the connection information and provides the second device, and the second device generates a first identifier according to the connection information, and sends a Probe request message carrying the first identifier to the first device, where the first device is configured according to the first device.
  • the connection information generates a second identity, and if the first tag matches the second identity, establishing a wireless connection with the second device.
  • the second device obtains the connection information generated by the first device by using the user manually, or generates the first identifier according to the connection information, and determines the device to be connected through the first identifier, thereby preventing the user from manually selecting the device to be connected. Thereby improving the efficiency of establishing a wireless connection to improve the efficiency of data transmission.
  • the first device and the second device further perform mutual authentication by using the first authentication information and the second authentication information, so that the established wireless connection is more secure, and the security of data transmission is improved.
  • Embodiments of the present invention provide a method for establishing a wireless connection.
  • the first device and the second device are both ordinary Wi-FI P2P devices, and the first device and the second device both detect the surrounding Wi-Fi P2P device by broadcasting the Probe request message, when the first device When the ground device detects both parties, the first device and the second device perform GO negotiation, and it is assumed that the first device becomes a GO after the negotiation.
  • the first device generates the connection information, and provides the second device, and the second device generates the first identifier according to the connection information, and carries the first identifier in the reserved field of the Probe Request message, and then sends the probe to the first device.
  • the request message determines whether the second identifier stored by the first device matches the first identifier, and if the matching and the second device establish a wireless connection. See Figure 5.
  • the method includes:
  • Step 501 The first device generates first part information of the connection information according to the second identifier.
  • the technician may set a second identifier in the first device or generate a second identifier from the first device and store the generated second identifier.
  • the first device may be configured to generate a second identifier according to the generation rule.
  • the second identifier may be set. The first device randomly selects an identifier in the resource library. The second identifier, or the second identifier can be manually set.
  • the first device may generate the second identifier according to the following manner: the first device generates the connection information, adds the first preset information to the first portion of the connection information to obtain the first configuration information, and generates the second identifier according to the first configuration information.
  • the first configuration information may be subjected to inverse permutation or shift processing to obtain a second identification.
  • the first device adds the first information to the first part information "1234" of the connection information.
  • the first configuration information obtained by the preset information "hua” may be "1234hua", "hua1234", or "12hua34" or the like.
  • the first configuration information of the structure is “1234hua”, and the first identifier obtained by performing the inverse replacement processing on the first configuration information is “auh4321”; or, the number of bits of the shift is set in advance, and the number of bits may be two or Third, then performing two-bit shift processing or three-shift processing on the first configuration information, such as when the first identification obtained by performing two-bit shift processing on the first configuration information is “ua1234h”, when the first The first identifier obtained by the three-bit processing of the construction information is “hua1234”.
  • the first device intercepts the second identifier to obtain partial information, and determines the intercepted portion of the information as the first portion of the connection information; or performs the first operation processing on the second identifier to obtain the first portion of the connection information.
  • Information the first operation process is an inverse operation of generating a second identity.
  • the first device generates the first part information of the connection information according to the second identifier, which may be:
  • the second identifier Performing a reversible calculation on the second identifier to obtain the first part of the information of the connection information.
  • the second identifier For example, the second identifier
  • the second operation may be performed on the second identifier in two steps (1) and (2) as follows:
  • the first part of the information to the connection information including:
  • the second identification may be forward-replaced to obtain the first configuration information or the second identifier may be reverse-shifted to obtain the first configuration information.
  • the first identifier is "auh4321”
  • the first identifier "auh4321” is forward-replaced to obtain the first configuration information as "1234hua”
  • the first identifier is "ua1234h”
  • the first identifier is "ua1234h”.
  • the first preset information is “hua”
  • the first preset information “hua” is removed from the first configuration information “1234hua” to obtain the first partial information of the connection information is “1234”.
  • Step 502 The first device generates second part information of the connection information according to the second authentication information.
  • the technician may set the second authentication information in the first device or generate the second authentication information by the first device and store the generated second authentication information.
  • the first device may generate the second authentication information as follows: the first device generates the connection information, adds the second preset information to the second portion of the connection information to obtain the second configuration information, and generates the second information according to the second configuration information. Certification Information.
  • the second configuration information may be subjected to inverse permutation or shift processing to obtain second authentication information.
  • the generated connection information is "12345678”
  • the first part of the connection information is "5678”
  • the second preset information is "wei”
  • the first device adds the second part information "5678" to the connection information.
  • the second configuration information obtained by the second information "wei” may be “5678wei”, “wei5678”, or "56wei78”. It is assumed that the second configuration information of the structure is “5678wei”, and the second authentication information obtained by performing the inverse replacement processing on the second configuration information is “iew5678”; or, the number of bits of the shift is set in advance, and the number of bits may be two.
  • the first device intercepts the second authentication information to obtain part of the information, and determines the intercepted part of the information as the second part of the connection information; or, the second authentication letter
  • the second operation process is performed to obtain the second part information of the connection information, and the second operation process is an inverse operation of generating the second authentication information.
  • the second operation processing may be performed on the second authentication information in two steps (1) and (2) to obtain the second part of the connection information, including:
  • the second authentication information may be forward-replaced to obtain second configuration information or reverse-shifted to the second authentication information to obtain second configuration information. For example, if the second authentication information is "iew4321", the second authentication information "iew4321” is forward-replaced to obtain the second configuration information as "5678wei”; or, the second authentication information is "ei5678w”, for the second The authentication information "ei5678w” is reversely shifted by two bits to obtain the second configuration information "5678wei”; or, the second authentication information is "wei5678", and the second authentication information "wei5678” is reversely shifted by three bits.
  • the second construction information is "5678wei”.
  • the second preset information is “wei”
  • the second preset information “wei” is removed from the second configuration information “5678wei” to obtain the second partial information of the connection information is “5678”.
  • Step 503 The first device constructs the connection information according to the first part information and the second part information.
  • the first part information and the second part information are spliced to obtain connection information, for example, the first part information “1234” and the second part information “5678” are spliced to obtain “12345678” as connection information.
  • the first device may generate the connection information according to the steps of 501 to 503 above, triggered by the corresponding first user.
  • a connection interface is set in an application interface of a system application having a transmission data requirement.
  • the connection interface may be clicked to enable the connection interface to trigger a connection command.
  • System apps can be photo capture apps with photo sharing or video capture apps with video sharing.
  • the system application is a photo camera application.
  • the photo camera application takes a picture and displays it in the application interface.
  • There is a connection interface at the top and the first user clicks on the connection interface, and the connection interface triggers the connection command.
  • the foregoing steps 301 to 303 are executed to generate the connection information, and the generated connection information is “12345678”, as shown in FIG. 2-3.
  • the foregoing steps 501 to 503 are executed to generate the connection information, and the third-party application is an application for establishing a wireless connection. .
  • a third-party application for establishing a wireless connection is installed on the first device, and the application interface of the third-party application includes a connection interface.
  • the connection interface can be clicked so that the connection interface triggers the connection command.
  • connection interface in the application interface, and the first user clicks on the connection interface, and the connection interface triggers the connection command.
  • the first device detects the connection command triggered by the connection interface the above steps 301 to 303 are executed to generate the connection information, and the generated connection information is “12345678”, as shown in FIG. 2-5.
  • Step 504 The first device provides the connection information to the second device.
  • this step may include the following first to fourth implementation manners, respectively:
  • the first device displays the connection information.
  • the second user corresponding to the second device can view the connection information displayed by the first device, and input the connection information to the second device.
  • the first device plays the connection information through the speaker.
  • the second user can listen to the connection information played by the first device, and input the connection information to the second device.
  • the first device generates a graphic code including the connection information according to the connection information, and displays the graphic code.
  • the graphic code may be a one-dimensional code or a two-dimensional code
  • the first device may encode the connection information using an encoding algorithm for generating a graphic code to generate a graphic code including the connection information.
  • the second device has a scanning module, and the scanning module can be a camera or a scanner. After the first device displays the graphic code, the second device may scan the graphic code displayed by the first device through the scanning module included therein and obtain the connection information.
  • the first device establishes a short-range communication connection with the second device, and sends the connection information to the second device by using the short-range communication connection.
  • the first device can establish a short-distance communication connection with the second device by using an out-of-band communication method.
  • the out-of-band communication method can be a communication method such as sound wave, infrared, NFC or HotKnot.
  • the first device generates a connection information
  • the user may input the connection information to the second device, or scan the graphic code of the connection information on the first device by using the second device, or The device is in close proximity to the first device, so that the second device obtains the connection information in a short-distance communication manner.
  • this step may save the first device from performing device search.
  • the time and the time the user is looking for the identity of the second device can shorten the time to establish a wireless connection.
  • Step 505 The second device acquires the connection information provided by the first device.
  • the second device may obtain the connection information by using the following first, second, and third manners.
  • the first device and the second device receive the connection information input by the second user.
  • the first device displays the connection information after generating the connection information or plays the connection information through the speaker.
  • the second user can view or listen to the connection information and then input the connection information to the second device.
  • the second device may obtain the connection information input by the second user by using the following methods (1) and (2), including:
  • the second device acquires connection information input by the second user from an application interface of the system application.
  • the application interface of the system application includes a receiving interface, and when the second user clicks the receiving interface, the receiving interface triggers receiving a command.
  • the second device displays an input box in the application interface, and the second user may input the viewed connection information or the accessed connection information to the input box.
  • the first device displays the connection information "12345678” or plays the connection information "12345678” through the speaker
  • the second user views the connection information "12345678” or the listening connection information "12345678”.
  • the input box is displayed, as shown in FIG. 2-7, and the second user inputs the connection information “12345678” in the input box.
  • the second device then reads the connection information "12345678" input by the second user from the input box.
  • the second device acquires the connection information input by the second user from the application interface of the third-party application.
  • the application interface of the third-party application includes a receiving interface, and when the second user clicks the receiving interface, the receiving interface triggers receiving the command.
  • the second device displays an input box in the application interface, and the second user may input the viewed connection information or the accessed connection information to the input box.
  • the second user clicks on the receiving interface in the application interface of the system application as shown in FIG. 2-4, and the receiving interface triggers receiving the command.
  • the second device detects the receiving command triggered by the receiving interface, the second device is in the application interface.
  • the input box is displayed, as shown in FIG. 2-8, and the second user inputs the connection information “12345678” in the input box.
  • the second device then reads the connection information "12345678" input by the second user from the input box.
  • the second device scans the graphic code displayed by the first device to obtain the connection information included in the graphic code.
  • the second user may enable the scanning module of the second device, and then the second device scans the graphic code displayed by the first device by using the scanning module, parses the scanned graphic code, and parses the connection information included in the scanned graphic code.
  • the third device and the second device establish a short-distance communication connection with the first device, and receive the connection information sent by the first device by using the short-distance communication connection.
  • Step 506 The second device calculates, according to the first part information included in the connection information, a first identifier.
  • this step may include the following first and second implementations, including:
  • the first device and the second device perform a hash operation on the first part information of the connection information to obtain a first hash result, and generate a first identifier according to the first hash result.
  • the partial hash information may be intercepted from the first hash result as the first identifier, or the intercepted partial information may be added to the preset information to form the first identifier, or the first hash result may be used as the first identifier or the like.
  • the second device adds the first preset information to the first part of the connection information to obtain the first configuration information, and generates the first identifier according to the first configuration information.
  • the first configuration may be performed by performing an inverse replacement process or a shift process on the first configuration information. For example, if the first part information of the connection information "12345678" is "1234" and the first preset information is "hua", the second device adds the first preset information "hua” to the first part information "1234" of the connection information.
  • the obtained first configuration information may be “1234hua”, “hua1234” or “12hua34” or the like.
  • the first constructed information of the construct is "1234hua", and the first structural information is inverted.
  • the first identifier obtained by the replacement process is “auh4321”; or, the number of bits of the shift is set in advance, and the number of bits may be two or three, and then the first configuration information is subjected to two-bit shift processing or three-bit shift processing. For example, if the first identifier obtained by performing the two-bit shift processing on the first configuration information is “ua1234h”, the first identifier obtained by performing the three-bit shift processing on the first configuration information is “hua1234”.
  • the method for generating the first identifier by the second device may be other than the foregoing first and second types.
  • a string of the preset first digit may be intercepted from the connection information as the first character.
  • the string generates a first identifier according to the first string; or hashes the entire connection information to obtain a first identifier.
  • the implementation manner of generating the first identifier by the second device according to the first character string includes the following four (1) to (4):
  • the preset first digit is 6, and the second device intercepts the first 6-character string "123456” or the last 6-bit string "345678" as the first string from the connection information "12345678", and the first character
  • the string "123456” or "345678” is determined to be the first identifier.
  • the first character string is "123456”
  • the first preset character string is "Huawei”
  • the first identifier of the first character string and the first preset character string is "123456Huawei” or "Huawei123456”.
  • Step 507 The second device sends a Probe request message, where the reserved field of the Probe request message carries the first identifier.
  • the identity of the second device is set to be a Wi-FI P2P device, and a Probe request message is sent to request a wireless connection with the GO receiving the Probe request message.
  • the second device may broadcast the Probe request message, or the second device may obtain the address of the first device from the Beacon message after receiving the Beacon message broadcast by the first device, and the first device is single according to the address of the first device. Broadcast the Probe request message.
  • the Probe request message includes the MAC header, the frame body, and the FCS.
  • the MAC header includes fields such as Addr_1 and Addr_2.
  • Addr_1 is the receiver address and Addr_2 is the sender address.
  • the frame body includes an SSID field and a reserved field Vendor specific.
  • the SSID field is used to carry the identifier
  • the FCS is a check field, which is used to carry the check code.
  • the second device uses the first identifier as the identifier of the GO.
  • the Addr_1 field of the Probe request message is empty, and when the second device unicasts the Probe request message to the first device.
  • the Addr_1 field of the Probe request message carries the MAC address of the first device; in the two cases, the Addr_2 field of the Probe request message carries the MAC address of the second device, and the reserved field carries the first identifier, and the SSID The field is empty.
  • Step 508 The first device receives the Probe request message, and the reserved field of the Probe request message carries the first identifier.
  • the second device sends a Probe request message, and the reserved field of the Probe request message carries the first identifier “123456”, and the first device receives the Probe request message.
  • Step 509 The first device determines whether the first identifier matches the second identifier, and if the matching is performed, step 510 is performed.
  • the matching between the first identifier and the second identifier means that the first identifier is equal to the second identifier or the first identifier and the second identifier are in a corresponding relationship.
  • the identifier relationship list may be set in advance on the first device, where the identifier relationship list is used to store any two identifiers having a corresponding relationship.
  • the first device may determine whether the first identifier has a corresponding relationship with the second identifier, where the first device may: according to the first identifier, find a corresponding identifier from the identifier relationship list, if the identifier is found If the identifier is equal to the second identifier, it is determined that there is a corresponding relationship between the first identifier and the second identifier. Otherwise, it is determined that there is no corresponding relationship between the first identifier and the second identifier.
  • Step 510 The first device sends a Probe Response message to the second device, where the Probe response message is used by the second device to determine to establish a wireless connection with the first device.
  • the second device sends a Probe request message to request to establish a wireless connection with an AP, where the first identifier of the AP is carried in the SSID field of the Probe request message. Therefore, in this step, when the first device determines that the first identifier matches the second identifier, the first device may learn that the second device requests to establish a wireless connection with itself, thereby determining that a wireless connection needs to be established with the second device. And sending a Probe response message to the second device to inform the second device to agree to establish a wireless connection with the second device.
  • the reserved field of the Probe request message sent by the second device carries the first identifier "123456”.
  • the first device receives the Probe request message, and the generated second identifier is “123456”, wherein the first identifier “123456” and the second identifier “123456” are the same, so the first identifier matches the second identifier, and the first identifier is determined.
  • the second device establishes a wireless connection and sends a Probe respone message to the second device.
  • Step 511 The second device receives the Probe response message, determines to establish a wireless connection with the first device according to the Probe response message, and performs step 512.
  • Step 512 The second device generates first authentication information according to the second part information of the connection information.
  • the content of the first part of the information of the connection information and the content of the second part of the information may be different or partially identical.
  • the connection information is “12345678”
  • the first part information may be “1234”
  • the second part information may be “5678”
  • the first part information may be “123456”
  • the second part information may be “345678”, etc. .
  • this step can be implemented by the following first and second implementations, including:
  • the first device and the second device perform a hash operation on the second part information of the connection information to obtain a second hash result, and generate second authentication information according to the second hash result.
  • the second device adds the second preset information to the second part information of the connection information to obtain the second configuration information, and generates the first authentication information according to the second configuration information.
  • the second device may generate the first authentication information by using other methods in the first and second manners. For example, the second device intercepts the character string of the preset second digit from the connection information as the fourth character string, and generates the first authentication information according to the fourth character string; or determines the connection information as the first authentication information.
  • the fourth character string is determined as the first authentication information.
  • the first device intercepts the first 4-bit string "1234" or the last 4-digit string "5678" as the fourth string from the connection information "12345678", and the fourth The string is used as the first authentication information.
  • the sum of the preset first digit and the second digit can be connected
  • the information includes the same number of characters.
  • the second device obtains the remaining character string after the first character string of the preset first digit intercepted from the connection information, and the remaining digits of the remaining character string are preset second digits, and The string with the preset second digit is left as the fourth string.
  • the preset first digit is 6, so the preset second digit is 2, and the second device intercepts the first character string "123456" of the preset first digit from the connection information "12345678" to obtain the remaining
  • the character string "78" of the second digit is preset, and the first device can use the character string "78" with the preset second digit as the fourth character string.
  • the fourth character string and the second preset character string are combined into the first authentication information.
  • the fourth character string is "1234"
  • the second preset character string is "9860”
  • the second authentication information composed of the fourth character string and the second preset character string is "12349860” or "98601234".
  • the first authentication information is generated according to the fourth character string and the authentication mode adopted by the second device.
  • the number of digits of the authentication information is determined according to the authentication mode used by the second device; the second string is filled with the information according to the determined number of bits or the interception information is obtained; for example, the fourth string is “1234” Assume that the WPS authentication mode adopted by the second device determines that the number of digits of the authentication information is 8 digits according to the WPS authentication mode, and the first authentication information is 12349988 for the fourth string "1234" padding information "9988".
  • the four-step handshake authentication mode adopted by the second device determines that the number of bits of the authentication information is 256 bits according to the four-step handshake authentication mode, and the fourth character string “1234” includes 32 bits, so the fourth string is Filling 224 bits yields 256-bit first authentication information. or,
  • the fourth character string is "1234"
  • the fourth character string "1234" is hashed to obtain the hash result as "98765432111”. It is assumed that the WPS authentication mode adopted by the second device is determined according to the WPS authentication mode.
  • the number of digits of the authentication information is 8 digits, and the 8-digit number "98765432" is intercepted from the hash result as the first authentication information; for example, it is assumed that the second device adopts the four-step handshake authentication method according to the four-step handshake authentication. the way,
  • the number of bits for determining the authentication information is 256 bits, and the hash result is "98765432111" including 88 bits, so the hash result is padded with 168 bits, and 256-bit first authentication information is obtained.
  • Step 513 The first device verifies whether the first authentication information of the second device matches the second authentication information, and if yes, sends a confirmation message to the second device, where the confirmation information is used by the second device to determine to establish a wireless with the first device. connection.
  • the authentication mode adopted by the first device may be a four-step handshake authentication method in IEEE802.11 or a WPS (Wi-Fi Protected Setup, Wi-Fi Protected Setup) specified by the WFA (Wi-Fi Alliance). Authentication method or other authentication method.
  • Each authentication mode specifies the format of the authentication message. For example, the four-step handshake authentication method specifies that the authentication message is 256-bit key information, and the WPS authentication mode specifies that the authentication message is an 8-digit number.
  • the first device may determine that the second authentication information is the PMK of the four-step handshake authentication mode, and verify the first device of the second device according to the PMK and the four-step handshake authentication mode. Whether the authentication information matches its second authentication information.
  • the step may be: the first device determines the second authentication information as the PIN of the WPS authentication mode, and verifies the first authentication information of the second device and the second authentication information according to the PIN and the WPS authentication mode. Whether it matches.
  • the second device performs verification with the first device, so that the first device determines whether the first authentication information of the second device matches the second authentication information of the first device.
  • the specific implementation is as follows: the second device uses the first authentication information as the PMK of the four-step handshake authentication mode, and performs authentication with the first device according to the PMK and the four-step handshake authentication manner; or, the first authentication information is used as the WPS authentication PIN. According to the PIN and verification by the WPS authentication method with the first device.
  • the second device After receiving the confirmation information sent by the first device, the second device determines to establish a wireless connection with the first device according to the confirmation information, and then performs step 314.
  • Step 514 The first device establishes a data connection with the second device to establish a wireless connection with the second device.
  • the wireless connection between the second device and the first device is an encrypted wireless connection, and the second device and the first device can transmit data through the encrypted wireless connection.
  • the wireless connection can be a Wi-Fi connection or a Bluetooth connection.
  • the first device generates the connection information and provides the connection information to the second device, and the second device generates the first identifier according to the connection information, and sends the Probe carrying the first identifier to the first device.
  • the request message determines whether the second identifier stored by the first device matches the first identifier of the second device, and if the first label matches the second identifier, establishing a wireless connection with the second device.
  • the second device obtains the connection information generated by the first device by using the user manually, or generates the first identifier according to the connection information, and determines the device to be connected through the first identifier, thereby preventing the user from manually selecting the device to be connected. Thereby improving the efficiency of establishing a wireless connection to improve the efficiency of data transmission.
  • the first device and the second device further perform mutual authentication by using the first authentication information and the second authentication information, so that the established wireless connection is more secure, and the security of data transmission is improved.
  • Embodiments of the present invention provide a method for establishing a wireless connection.
  • the first device generates connection information, and provides the connection information to the second device.
  • the second device generates a first identifier according to the connection information, and sends a Test request message to the first device, where the Test request message carries the first An identifier and a communication mode supported by the second device;
  • the first device generates a second identifier according to the connection information, and if the first identifier matches the second identifier, selecting a communication mode, setting a identity according to the selected communication mode, and then setting Establish a wireless connection with the second device.
  • the method includes:
  • Step 601 The first device generates connection information.
  • connection information may be a string of characters
  • the content of the connection information may be numbers, letters or other characters, or may be a combination of any number of characters in numbers, letters and other characters.
  • the first device may randomly generate a string of strings to generate a string of characters, and use the generated string as the connection information.
  • the first device may generate connection information triggered by the corresponding first user.
  • connection information triggered by the corresponding first user.
  • the connection information is generated.
  • a connection interface is set in an application interface of a system application having a transmission data requirement.
  • the connection interface may be clicked to enable the connection interface to trigger a connection command.
  • System apps can be photo capture apps with photo sharing or video capture apps with video sharing.
  • the system application is a photo camera application.
  • the photo camera application takes a picture and displays it in the application interface.
  • There is a connection interface at the top and the first user clicks on the connection interface, and the connection interface triggers the connection command.
  • the connection information is randomly generated, and the generated connection information is “12345678”, as shown in Figure 2-3.
  • the connection information is generated, and the third-party application is an application for establishing a wireless connection.
  • a third-party application for establishing a wireless connection is installed on the first device, and the application interface of the third-party application includes a connection interface.
  • the connection interface can be clicked so that the connection interface triggers the connection command.
  • connection interface in the application interface
  • the connection interface triggers the connection command.
  • the first device randomly generates connection information, and assumes that the generated connection information is “12345678”, as shown in Figure 2-5.
  • Step 602 The first device provides the connection information to the second device.
  • the step may include the following first to fourth implementation manners, respectively:
  • the first device displays the connection information.
  • the second user corresponding to the second device can view the connection information displayed by the first device, and input the connection information to the second device.
  • the first device plays the connection information through the speaker.
  • the second user can listen to the connection information played by the first device, and input the connection information to the second device.
  • the first device generates a graphic code including the connection information according to the connection information, and displays the graphic code.
  • the graphic code may be a one-dimensional code or a two-dimensional code
  • the first device may encode the connection information by using an encoding algorithm for generating a graphic code to generate a graphic code including the connection information, such as generating a QR Code two-dimensional code.
  • the second device has a scanning module, and the scanning module can be a camera or a scanner. After the first device displays the graphic code, the second device may scan the graphic code displayed by the first device through the scanning module included therein and obtain the connection information.
  • the first device establishes a short-range communication connection with the second device, and sends the connection information to the second device by using the short-range communication connection.
  • the first device may establish a short-distance communication connection with the second device by using an out-of-band communication manner.
  • the out-of-band communication method can be a communication method such as sound wave, infrared, NFC or HotKnot.
  • Step 603 The second device acquires the connection information provided by the first device.
  • the second device may obtain the connection information by using the following first, second, and third manners.
  • the first device and the second device receive the connection information input by the second user.
  • the first device displays the connection information after generating the connection information or plays the connection information through the speaker.
  • the second user can view or listen to the connection information and then input the connection information to the second device.
  • the second device may obtain the connection information input by the second user by using the following methods (1) and (2), including:
  • the second device acquires connection information input by the second user from an application interface of the system application.
  • the application interface of the system application includes a receiving interface, and when the second user clicks the receiving interface, the receiving interface triggers receiving a command.
  • the second device displays an input box in the application interface, and the second user may input the viewed connection information or the accessed connection information to the input box.
  • the first device displays the connection information "12345678” or plays the connection information "12345678” through the speaker
  • the second user views the connection information "12345678” or the listening connection information "12345678”.
  • the input box is displayed, as shown in FIG. 2-7, and the second user inputs the connection information “12345678” in the input box.
  • the second device then reads the connection information "12345678" input by the second user from the input box.
  • the second device acquires the connection information input by the second user from the application interface of the third-party application.
  • the application interface of the third-party application includes a receiving interface, and when the second user clicks the receiving interface, the receiving interface triggers receiving the command.
  • the second device displays an input box in the application interface, and the second user may input the viewed connection information or the accessed connection information to the input box.
  • the second user clicks on the receiving interface in the application interface of the system application as shown in FIG. 2-4.
  • the receiving interface triggers the receiving command
  • the second device detects the receiving command triggered by the receiving interface
  • the input box is displayed in the application interface, as shown in Figure 2-8, the second user inputs the connection in the input box.
  • the second device then reads the connection information "12345678" input by the second user from the input box.
  • the second device scans the graphic code displayed by the first device to obtain the connection information included in the graphic code.
  • the second user may enable the scanning module of the second device, and then the second device scans the graphic code displayed by the first device by using the scanning module, parses the scanned graphic code, and parses the connection information included in the scanned graphic code.
  • the third device and the second device establish a short-distance communication connection with the first device, and receive the connection information sent by the first device by using the short-distance communication connection.
  • the first device generates a connection information
  • the user may input the connection information to the second device, or scan the graphic code of the connection information on the first device by using the second device, or The device is in close proximity to the first device, so that the second device obtains the connection information in a short-distance communication manner.
  • this step may save the first device from performing device search.
  • the time and the time the user is looking for the identity of the second device can shorten the time to establish a wireless connection.
  • Step 604 The second device calculates, according to the first part information included in the connection information, a first identifier.
  • this step may include the following first and second implementations, including:
  • the first device and the second device perform a hash operation on the first part information of the connection information to obtain a first hash result, and generate a first identifier according to the first hash result.
  • the partial hash information may be intercepted from the first hash result as the first identifier, or the intercepted partial information may be added to the preset information to form the first identifier, or the first hash result may be used as the first identifier or the like.
  • the second device adds the first preset information to the first part of the connection information to obtain the first configuration information, and generates the first identifier according to the first configuration information.
  • the first configuration may be performed by performing an inverse replacement process or a shift process on the first configuration information. For example, if the first part information of the connection information "12345678" is "1234" and the first preset information is "hua", the second device adds the first preset information "hua” to the first part information "1234" of the connection information.
  • the obtained first configuration information may be “1234hua”, “hua1234” or “12hua34” or the like.
  • the first configuration information of the structure is “1234hua”, and the first identifier obtained by performing the inverse replacement processing on the first configuration information is “auh4321”; or, the number of bits of the shift is set in advance, and the number of bits may be two or Third, then performing two-bit shift processing or three-shift processing on the first configuration information, such as when the first identification obtained by performing two-bit shift processing on the first configuration information is “ua1234h”, when the first The first identifier obtained by the three-bit processing of the construction information is “hua1234”.
  • the method for generating the first identifier by the second device may be other than the foregoing first and second types.
  • a string of the preset first digit may be intercepted from the connection information as the first character.
  • the string generates a first identifier according to the first string; or hashes the entire connection information to obtain a first identifier.
  • the implementation manner of generating the first identifier by the second device according to the first character string includes the following four (1) to (4):
  • the preset first digit is 6, and the second device intercepts the first 6-character string "123456” or the last 6-bit string "345678" as the first string from the connection information "12345678", and the first character
  • the string "123456” or "345678” is determined to be the first identifier.
  • the first character string is "123456”
  • the first preset character string is "Huawei”
  • the first identifier of the first character string and the first preset character string is "123456Huawei” or "Huawei123456”.
  • Step 605 The second device sends a Test request message, where the action frame of the Test request message carries the first identifier and the communication mode supported by the second device.
  • the second device supports at least one communication mode, and the communication mode includes an AP-STA (Access Point-STA, access point-workstation), a GO-Client (Group Owner-Client, a group leader-group member), and a P2P (Peer).
  • AP-STA Access Point-STA, access point-workstation
  • GO-Client Group Owner-Client, a group leader-group member
  • P2P Peer
  • peer-to-peer communication mode To Peer, peer-to-peer communication mode.
  • the action frame of the Test request message includes an identifier field and a communication mode field, and the identifier field is used to carry the first identifier, the communication mode word
  • the segment is used to carry the communication mode supported by the second device.
  • the Test request message includes a MAC (Media Access Control) header, a frame body, and an FCS (Frame Check Sequence).
  • the header includes fields such as Addr_1 and Addr_2, Addr_1 is the receiver address, Addr_2 is the sender address, the frame body includes the action frame, the action frame includes the identifier field and the communication mode field, and the FCS is a check field for carrying the check code.
  • the Addr_1 field of the Test request message when the second device broadcasts the Test request message, the Addr_1 field of the Test request message is empty, the Addr_1 field carries the MAC address of the first device, the identifier field carries the first identifier, and the communication mode field is used to carry the first The communication mode supported by the two devices.
  • Step 606 The first device receives the Test request message, where the action frame of the Test request message carries the first identifier and the communication mode supported by the second device.
  • the second device sends a Test request message
  • the action frame of the Test request message carries the first identifier “123456” and the communication mode supported by the second device includes an AP-STA and a GO-Client, and the first device receives the Test request message.
  • Step 607 The first device calculates, according to the first part information of the connection information, a second identifier, where the first device uses the second identifier as its own identifier.
  • the first device may calculate and generate the second identifier by using the following two manners, including:
  • the first device performs a hash operation on the first part of the connection information to obtain a first hash result, and generates a second identifier according to the first hash result.
  • This embodiment is the same as the first mode in which the second device generates the first identifier.
  • For the detailed process refer to the first manner in which the second device generates the first identifier, which is not described in detail herein.
  • the second device adds the second preset information to the second part information of the connection information to obtain the second configuration information, and generates the second identifier according to the second configuration information.
  • This embodiment is the same as the second method of generating the first identifier by the second device.
  • the second manner of generating the first identifier by the second device which is not described in detail herein.
  • the method for generating the second identifier by the first device may be other than the foregoing first and second types. For example, a string of a preset first digit may be intercepted from the connection information as the second string. Generating a second identifier according to the second string; or hashing the entire connection information to obtain a second identifier.
  • the first device may also be after receiving the connection information and receiving Follow the steps to generate a second identifier before the Probe request message.
  • the implementation manner of generating the second identifier by the first device according to the second character string includes the following four (1) to (4):
  • the preset first digit is 6, and the first device intercepts the first 6-bit string "123456” or the last 6-bit string "345678" as the second string from the connection information "12345678", and the second character
  • the string "123456” or "345678” is determined to be the second identifier.
  • the second character string is "123456”
  • the first preset character string is "Huawei”
  • the second identifier of the second character string and the first preset character string is "123456Huawei” or "Huawei123456”.
  • Step 608 The first device determines whether the first identifier matches the second identifier, and if yes, performs step 609.
  • the matching between the first identifier and the second identifier means that the first identifier is equal to the second identifier or the first identifier and the second identifier are in a corresponding relationship.
  • the identifier relationship list may be set in advance on the first device, where the identifier relationship list is used to store any two identifiers having a corresponding relationship.
  • the first device may determine whether the first identifier has a corresponding relationship with the second identifier, where the first device may: according to the first identifier, find a corresponding identifier from the identifier relationship list, if the identifier is found If the identifier is equal to the second identifier, it is determined that there is a corresponding relationship between the first identifier and the second identifier. Otherwise, it is determined that there is no corresponding relationship between the first identifier and the second identifier.
  • Step 609 The first device selects one communication mode from the communication modes supported by the second device, sets its own identity according to the selected communication mode, and sends a Test response message to the second device, where the Test response message carries the selection. Communication mode and identity of the first device.
  • the first device intersects the communication mode supported by the first device with the communication mode supported by the second device, selects a communication mode from the result of the intersection, and then sets according to the selected communication mode.
  • Set your own identity For example, if you select AP-STA, you can set your identity as AP. If you choose GO-Client, you can set your identity to GO. If you choose P2P communication mode. Then, the identity of the user can be set as an AP, and then a Test response message is sent to the second device, where the Test response message carries the selected communication mode and the identity of the first device.
  • the Test response message is used by the second device to determine to establish a wireless connection with the first device.
  • the second device sends a Test request message to request to establish a wireless connection with a P2P device, where the first identifier of the P2P device is carried in an action frame of the Test request message. Therefore, in this step, when the first device determines that the first identifier matches the second identifier, the first device may learn that the second device requests to establish a wireless connection with itself, thereby determining that a wireless connection needs to be established with the second device.
  • the second device sends a Test response message to inform the second device to agree to establish a wireless connection with it.
  • the Test response message includes the MAC header, the frame body, and the FCS.
  • the MAC header includes fields such as Addr_3 and Addr_4.
  • Addr_3 is the receiver address
  • Addr_4 is the sender address
  • the action frame Located in the frame body, the action frame includes a communication mode field and the like.
  • the Addr_3 field of the Probe respnse message carries the MAC address of the second device
  • the Addr_4 field carries the MAC address of the first device, where the communication mode field carries the selected communication mode and the identity of the first device.
  • the action frame of the Test request message sent by the second device carries the first identifier "123456".
  • the first device receives the test request message, and the generated second identifier is “123456”, wherein the first identifier “123456” and the second identifier “123456” are the same, so the first identifier matches the second identifier, and the first identifier is determined.
  • the two devices establish a wireless connection, obtain the communication modes supported by the device, including the AP-STA, the GO-Client, and the P2P communication mode, and obtain the communication mode supported by the second device and the communication mode AP-STA and GO-Client supported by the second device.
  • the result of the intersection includes the AP-STA and the GO-Client, and randomly selects a communication mode from the intersection result, which is assumed to be an AP-STA, and then sets its identity as an AP, and sends a Test response message to the second device, the Test response
  • the message carries the selected communication mode AP-STA and the identity of the first device is an AP.
  • Step 610 The second device receives the Test response message, sets its own identity according to the Test response message, and determines to establish a wireless connection with the first device, and step 611 is performed.
  • the second device carries the identity of the communication mode selected by the first device and the identity of the first device according to the Test response message. For example, the second device receives the Test response
  • the message response message carries the communication mode AP-STA selected by the second device and the identity AP of the first device, and sets the identity of the communication mode AP-STA and the identity device AP of the first device according to the second device to STA.
  • Step 611 The second device generates first authentication information according to the second part information of the connection information.
  • the content of the first part of the information of the connection information and the content of the second part of the information may be different or partially identical.
  • the connection information is “12345678”
  • the first part information may be “1234”
  • the second part information may be “5678”
  • the first part information may be “123456”
  • the second part information may be “345678”, etc. .
  • this step can be implemented by the following first and second implementations, including:
  • the first device and the second device perform a hash operation on the second part information of the connection information to obtain a second hash result, and generate first authentication information according to the second hash result.
  • the hash of the SHA-256 hash algorithm is performed on the second part information “5678” of the connection information “12345678”, and the second hash result is “6BAA0BD18BCC1E5237B70DC18595A7DEFF11CD27120CDC96A678003F8B162941”, according to the authentication method adopted by the second device.
  • the result is an interception or supplementation process to obtain the first authentication information of the number of bits required for the authentication mode.
  • the authentication method adopted by the second device may include a four-step handshake authentication mode.
  • WPS authentication method or other authentication methods.
  • Each authentication mode specifies a format of the authentication message.
  • the four-step handshake authentication method specifies that the authentication message is 256-bit key information
  • the WPS authentication mode specifies that the authentication message is an 8-digit number.
  • the second hash result includes 32 characters, which is exactly 256 bits, so the second hash result is used as the first authentication information.
  • the last 8 bits "8F162941" are intercepted, and "F” is mapped to the number "6” to obtain "86162941" as the first authentication information.
  • the second device adds the second preset information to the second part information of the connection information to obtain the second configuration information, and generates the first authentication information according to the second configuration information.
  • the second device adopts four-step handshake authentication
  • the second partial information "5678" of the connection information "12345678” is converted into a binary "1011000101110", and then 243bit "0" is added to the left of "1011000101110” to obtain 256 bits.
  • First authentication information or add 243bit "1” to the right of "1011000101110” to get the first authentication of 256bit bits. information;
  • the 8-bit number "8888” or "0000” is added to the left or right side of the second portion information "5678" of the connection information "12345678" to obtain an 8-digit number as the first authentication information.
  • the second part of information may be directly used as the first piece of authentication information.
  • the second device may generate the first authentication information by using other methods in the first and second manners. For example, the second device intercepts the character string of the preset second digit from the connection information as the fourth character string, and generates the first authentication information according to the fourth character string; or determines the connection information as the first authentication information.
  • the fourth character string is determined as the first authentication information.
  • the first device intercepts the first 4-bit string "1234" or the last 4-digit string "5678" as the fourth string from the connection information "12345678", and the fourth The string is used as the first authentication information.
  • the sum of the preset first digit and the second digit may be equal to the number of characters included in the connection information.
  • the second device obtains the remaining character string after the first character string of the preset first digit intercepted from the connection information, and the remaining digits of the remaining character string are preset second digits, and The string with the preset second digit is left as the fourth string.
  • the preset first digit is 6, so the preset second digit is 2, and the second device intercepts the first character string "123456" of the preset first digit from the connection information "12345678" to obtain the remaining
  • the character string "78" of the second digit is preset, and the first device can use the character string "78" with the preset second digit as the fourth character string.
  • the fourth character string and the second preset character string are combined into the first authentication information.
  • the fourth character string is "1234"
  • the second preset character string is "9860”
  • the second authentication information composed of the fourth character string and the second preset character string is "12349860” or "98601234".
  • the first authentication information is generated according to the fourth character string and the authentication mode adopted by the second device.
  • the number of digits of the authentication information is determined according to the authentication mode used by the second device; the second string is filled with the information according to the determined number of bits or the interception information is obtained; for example, the fourth string is “1234” Assume that the WPS authentication mode adopted by the second device determines that the number of digits of the authentication information is 8 digits according to the WPS authentication method, and the first authentication information is 12349988 for the fourth string "1234" padding information "9988".
  • the four-step handshake authentication mode adopted by the second device determines that the number of bits of the authentication information is 256 bits according to the four-step handshake authentication mode, and the fourth character string “1234” includes 32 bits, so the fourth character is The string is filled with 224 bits to obtain 256-bit first authentication information. or,
  • the fourth character string is “1234”
  • the fourth character string “1234” is hashed to obtain a hash result of “98765432111”.
  • the authentication is determined according to the WPS authentication method.
  • the number of bits of the information is 8 digits, and the 8-digit number "98765432" is intercepted from the hash result as the first authentication information; for example, assuming that the second device adopts the four-step handshake authentication mode, according to the four-step handshake authentication mode,
  • the number of bits for determining the authentication information is 256 bits, and the hash result is "98765432111" including 88 bits, so the hash result is padded with 168 bits, and 256-bit first authentication information is obtained.
  • Step 612 The first device generates second authentication information according to the second part information of the connection message.
  • this step can be implemented in the following two ways, including:
  • the first device performs a hash operation on the second part of the connection information to obtain a second hash result, and generates second authentication information according to the second hash result.
  • This embodiment is the same as the process of the first mode for generating the first authentication information by the second device, and will not be described in detail herein.
  • the second device adds second preset information to the second part information of the connection information to obtain second configuration information, and generates second authentication information according to the second configuration information.
  • This embodiment is the same as the second method of generating the first authentication information by the second device, and will not be described in detail herein.
  • the first device may generate the second authentication letter in addition to the first and second modes described above.
  • other methods may be used to generate the second authentication information. For example, the first device intercepts a character string of a preset second digit from the connection information as a third character string, and generates second authentication information according to the third character string; or determines the entire connection information as the second authentication information.
  • the method for generating the second authentication information by the first device according to the third string includes the following:
  • the third character string is determined as the second authentication information.
  • the first device intercepts the first 4-digit string "1234" or the last 4-digit string "5678" as the third string from the connection information "12345678", and the third The string is used as the second authentication information.
  • the sum of the preset first digit and the second digit may be equal to the number of characters included in the connection information.
  • the first device obtains the remaining character string after the second character string of the preset first digit intercepted from the connection information, and the remaining digits of the remaining character string are preset second digits, and The string with the preset second digit is left as the third string.
  • the preset first digit is 6, so the preset second digit is 2, and the first device intercepts the second character string “123456” of the preset first digit from the connection information “12345678”.
  • the character string "78" of the second digit is preset, and the first device can use the character string "78" with the preset second digit as the third character string.
  • the third character string and the second preset character string are combined into the second authentication information.
  • the third character string is “1234”
  • the second preset character string is “9860”
  • the first authentication information composed of the third character string and the second preset character string is “12349860” or “98601234”.
  • hashing the third string to obtain a hash result and extracting a string of the preset second digit from the hash result as the first authentication information, or determining the hash result as the second Certification Information.
  • Step 613 The first device verifies whether the first authentication information of the second device matches the second authentication information, and if yes, sends a confirmation message to the second device, where the confirmation information is used by the second device to determine to establish a wireless with the first device. connection.
  • the step may be: the first device determines the second authentication information as the PMK of the four-step handshake authentication mode, and passes the four according to the PMK.
  • the step handshake authentication mode verifies whether the first authentication information of the second device matches the second authentication information.
  • the step may be: the first device determines the second authentication information as the PIN of the WPS authentication mode, and verifies the first authentication information of the second device according to the PIN and the WPS authentication mode. 2. Whether the authentication information matches.
  • the second device performs verification with the first device, so that the first device determines whether the first authentication information of the second device matches the second authentication information of the first device.
  • the specific implementation is as follows: the second device uses the first authentication information as the PMK of the four-step handshake authentication mode, and performs authentication with the first device according to the PMK and the four-step handshake authentication manner; or, the first authentication information is used as the WPS authentication PIN. According to the PIN and verification by the WPS authentication method with the first device.
  • the second device After receiving the confirmation information sent by the first device, the second device determines to establish a wireless connection with the first device according to the confirmation information, and then performs step 214.
  • Step 614 The first device establishes a data connection with the second device to establish a wireless connection with the second device.
  • the wireless connection between the second device and the first device is an encrypted wireless connection, and the second device and the first device can transmit data through the encrypted wireless connection.
  • the wireless connection can be a Wi-Fi connection or a Bluetooth connection.
  • the first device generates the connection information and provides the second device, and the second device generates a first identifier according to the connection information, and sends a Probe request message carrying the first identifier to the first device, where the first device is configured according to the first device.
  • the connection information generates a second identity, and if the first tag matches the second identity, establishing a wireless connection with the second device.
  • the second device obtains the connection information generated by the first device by using the user manually, or generates the first identifier according to the connection information, and determines the device to be connected through the first identifier, thereby preventing the user from manually selecting the device to be connected. Thereby improving the efficiency of establishing a wireless connection to improve the efficiency of data transmission.
  • the first device and the second device further perform mutual authentication by using the first authentication information and the second authentication information, so that the established wireless connection is more secure, and the security of data transmission is improved.
  • Embodiments of the present invention provide a method for establishing a wireless connection.
  • the first device generates connection information, and provides the connection information to the second device; the second device according to the connection
  • the first information is sent to the first device, and the test request message is sent to the first device, where the test request message carries the first identifier and the communication mode supported by the second device.
  • the first device determines whether the second identifier and the first identifier stored by the first device match. If the first identifier matches the second identifier, a communication mode is selected, the identity of the user is set according to the selected communication mode, and then a wireless connection is established with the second device.
  • the method includes:
  • Step 701 The first device generates first part information of the connection information according to the second identifier.
  • the technician may set a second identifier in the first device or generate a second identifier from the first device and store the generated second identifier.
  • the first device may generate the second identifier according to the following manner: the first device generates the connection information, adds the first preset information to the first portion of the connection information to obtain the first configuration information, and generates the second identifier according to the first configuration information.
  • the first configuration information may be subjected to inverse permutation or shift processing to obtain a second identification.
  • the first device adds the first information to the first part information "1234" of the connection information.
  • the first configuration information obtained by the preset information "hua” may be "1234hua", "hua1234", or "12hua34" or the like.
  • the first configuration information of the structure is “1234hua”, and the first identifier obtained by performing the inverse replacement processing on the first configuration information is “auh4321”; or, the number of bits of the shift is set in advance, and the number of bits may be two or Third, then performing two-bit shift processing or three-shift processing on the first configuration information, such as when the first identification obtained by performing two-bit shift processing on the first configuration information is “ua1234h”, when the first The first identifier obtained by the three-bit processing of the construction information is “hua1234”.
  • the first device intercepts the second identifier to obtain partial information, and determines the intercepted portion of the information as the first portion of the connection information; or performs the first operation processing on the second identifier to obtain the first portion of the connection information.
  • Information the first operation process is an inverse operation of generating a second identity.
  • the first part of the connection information may be obtained by performing the first operation processing on the second identifier in two steps (1) and (2) as follows:
  • the second identification may be forward-replaced to obtain the first configuration information or the second identifier may be reverse-shifted to obtain the first configuration information.
  • the first identifier is “auh4321”
  • the first identifier “auh4321” is forward-replaced to obtain the first configuration information as “1234hua”
  • the first identifier is reversely shifted two bits to obtain the first configuration information "1234hua”
  • the first identifier is "hua1234"
  • the first identifier is Hua1234" reverse shifts three bits to get the first construction information as "1234hua”.
  • the first preset information is “hua”
  • the first preset information “hua” is removed from the first configuration information “1234hua” to obtain the first partial information of the connection information is “1234”.
  • Step 702 The first device generates second part information of the connection information according to the second authentication information.
  • the technician may set the second authentication information in the first device or generate the second authentication information by the first device and store the generated second authentication information.
  • the first device may generate the second authentication information as follows: the first device generates the connection information, adds the second preset information to the second portion of the connection information to obtain the second configuration information, and generates the second information according to the second configuration information. Certification Information.
  • the second configuration information may be subjected to inverse permutation or shift processing to obtain second authentication information.
  • the generated connection information is "12345678”
  • the first part of the connection information is "5678”
  • the second preset information is "wei”
  • the first device adds the second part information "5678" to the connection information.
  • the second configuration information obtained by the second information "wei” may be “5678wei”, “wei5678”, or "56wei78”. It is assumed that the second configuration information of the structure is “5678wei”, and the second authentication information obtained by performing the inverse replacement processing on the second configuration information is “iew5678”; or, the number of bits of the shift is set in advance, and the number of bits may be two.
  • the first device intercepts the second authentication information to obtain part of the information, and determines the intercepted part of the information as the second part of the connection information; or performs the second operation processing on the second authentication information to obtain the connection information.
  • the second part of the information, the second operation process is an inverse operation of generating the second authentication information.
  • the second operation processing may be performed on the second authentication information in two steps (1) and (2) to obtain the second part of the connection information, including:
  • the second authentication information may be forward-replaced to obtain second configuration information or reverse-shifted to the second authentication information to obtain second configuration information. For example, if the second authentication information is "iew4321", the second authentication information "iew4321” is forward-replaced to obtain the second configuration information as "5678wei”; or, the second authentication information is "ei5678w”, for the second The authentication information "ei5678w” is reversely shifted by two bits to obtain the second configuration information "5678wei”; or, the second authentication information is "wei5678", and the second authentication information "wei5678” is reversely shifted by three bits.
  • the second construction information is "5678wei”.
  • the second preset information is “wei”
  • the second preset information “wei” is removed from the second configuration information “5678wei” to obtain the second partial information of the connection information is “5678”.
  • Step 703 The first device constructs the connection information according to the first part information and the second part information.
  • the first part information and the second part information are spliced to obtain connection information, for example, the first part information “1234” and the second part information “5678” are spliced to obtain “12345678” as connection information.
  • the first device may generate the connection information according to the steps of 701 to 703 above, triggered by the corresponding first user.
  • the first device detects that the connection interface in the application interface of the system application is triggered by the first user, the above steps 301 to 303 are performed.
  • a connection interface is set in an application interface of a system application having a transmission data requirement.
  • the connection interface may be clicked to enable the connection interface to trigger a connection command.
  • System apps can be photo capture apps with photo sharing or video capture apps with video sharing.
  • the system application is a photo camera application.
  • the photo camera application captures a picture and displays it in the application interface.
  • the foregoing steps 301 to 303 are executed to generate the connection information, and the generated connection information is “12345678”, as shown in FIG. 2-3.
  • the party application is an application for establishing a wireless connection.
  • a third-party application for establishing a wireless connection is installed on the first device, and the application interface of the third-party application includes a connection interface.
  • the connection interface can be clicked so that the connection interface triggers the connection command.
  • connection interface in the application interface, and the first user clicks on the connection interface, and the connection interface triggers the connection command.
  • the first device detects the connection command triggered by the connection interface the above steps 301 to 303 are executed to generate the connection information, and the generated connection information is “12345678”, as shown in FIG. 2-5.
  • Step 704 The first device provides the connection information to the second device.
  • the step may include the following first to fourth implementation manners, respectively:
  • the first device displays the connection information.
  • the second user corresponding to the second device can view the connection information displayed by the first device, and input the connection information to the second device.
  • the first device plays the connection information through the speaker.
  • the second user can listen to the connection information played by the first device, and input the connection information to the second device.
  • the first device generates a graphic code including the connection information according to the connection information, and displays the graphic code.
  • the graphic code may be a one-dimensional code or a two-dimensional code
  • the first device may encode the connection information using an encoding algorithm for generating a graphic code to generate a graphic code including the connection information.
  • the second device has a scanning module, and the scanning module can be a camera or a scanner. After the first device displays the graphic code, the second device may scan the graphic code displayed by the first device through the scanning module included therein and obtain the connection information.
  • the first device establishes a short-range communication connection with the second device, and sends the connection information to the second device by using the short-range communication connection.
  • the first device may establish a short-distance communication connection with the second device by using an out-of-band communication manner.
  • the out-of-band communication method can be a communication method such as sound wave, infrared, NFC or HotKnot.
  • the first device may be a terminal device or an AP in the embodiment of the present invention.
  • the first device sets its own identity as an AP, and then performs this step.
  • the Beacon message can also be actively broadcast to inform the surrounding STAs of its existence.
  • the device receiving the Beacon message according to the Beacon The message determines that the first device is an AP and actively requests to establish a connection with the first device, and then the first device performs the step again.
  • Step 705 The second device acquires the connection information provided by the first device.
  • the second device may obtain the connection information by using the following first, second, and third manners.
  • the first device and the second device receive the connection information input by the second user.
  • the first device displays the connection information after generating the connection information or plays the connection information through the speaker.
  • the second user can view or listen to the connection information and then input the connection information to the second device.
  • the second device may obtain the connection information input by the second user by using the following methods (1) and (2), including:
  • the second device acquires connection information input by the second user from an application interface of the system application.
  • the application interface of the system application includes a receiving interface, and when the second user clicks the receiving interface, the receiving interface triggers receiving a command.
  • the second device displays an input box in the application interface, and the second user may input the viewed connection information or the accessed connection information to the input box.
  • the first device displays the connection information "12345678” or plays the connection information "12345678” through the speaker
  • the second user views the connection information "12345678” or the listening connection information "12345678”.
  • the input box is displayed, as shown in FIG. 2-7, and the second user inputs the connection information “12345678” in the input box.
  • the second device then reads the connection information "12345678" input by the second user from the input box.
  • the second device acquires the connection information input by the second user from the application interface of the third-party application.
  • the application interface of the third-party application includes a receiving interface, and when the second user clicks the receiving interface, the receiving interface triggers receiving the command.
  • the second device displays an input box in the application interface, and the second user may input the viewed connection information or the accessed connection information to the input box.
  • the second user clicks on the receiving interface in the application interface of the system application as shown in FIG. 2-4.
  • the receiving interface triggers the receiving command
  • the second device detects the receiving command triggered by the receiving interface
  • the input box is displayed in the application interface, as shown in Figure 2-8, the second user inputs the connection in the input box.
  • the second device then reads the connection information "12345678" input by the second user from the input box.
  • the second device scans the graphic code displayed by the first device to obtain the connection information included in the graphic code.
  • the second user may enable the scanning module of the second device, and then the second device scans the graphic code displayed by the first device by using the scanning module, parses the scanned graphic code, and parses the connection information included in the scanned graphic code.
  • the third device and the second device establish a short-distance communication connection with the first device, and receive the connection information sent by the first device by using the short-distance communication connection.
  • the first device generates a connection information
  • the user may input the connection information to the second device, or scan the graphic code of the connection information on the first device by using the second device, or The device is in close proximity to the first device, so that the second device obtains the connection information in a short-distance communication manner.
  • this step may save the first device from performing device search.
  • the time and the time the user is looking for the identity of the second device can shorten the time to establish a wireless connection.
  • Step 706 The second device calculates, according to the first part information included in the connection information, a first identifier.
  • this step may include the following first and second implementations, including:
  • the first device and the second device perform a hash operation on the first part information of the connection information to obtain a first hash result, and generate a first identifier according to the first hash result.
  • the partial hash information may be intercepted from the first hash result as the first identifier, or the intercepted partial information may be added to the preset information to form the first identifier, or the first hash result may be used as the first identifier or the like.
  • the second device adds the first preset information to the first part of the connection information to obtain the first configuration information, and generates the first identifier according to the first configuration information.
  • the first configuration may be performed by performing an inverse replacement process or a shift process on the first configuration information. For example, if the first part information of the connection information "12345678" is "1234" and the first preset information is "hua", the second device adds the first preset information "hua” to the first part information "1234" of the connection information.
  • the obtained first configuration information may be “1234hua”, “hua1234” or “12hua34” or the like.
  • the first configuration information of the structure is “1234hua”, and the first identifier obtained by performing the inverse replacement processing on the first configuration information is “auh4321”; or, the number of bits of the shift is set in advance, and the number of bits may be two or Third, then performing two-bit shift processing or three-shift processing on the first configuration information, such as when the first identification obtained by performing two-bit shift processing on the first configuration information is “ua1234h”, when the first The first identifier obtained by the three-bit processing of the construction information is “hua1234”.
  • the method for generating the first identifier by the second device may be other than the foregoing first and second types.
  • a string of the preset first digit may be intercepted from the connection information as the first character.
  • the string generates a first identifier according to the first string; or hashes the entire connection information to obtain a first identifier.
  • the implementation manner of generating the first identifier by the second device according to the first character string includes the following four (1) to (4):
  • the preset first digit is 6, and the second device intercepts the first 6-character string "123456” or the last 6-bit string "345678" as the first string from the connection information "12345678", and the first character
  • the string "123456” or "345678” is determined to be the first identifier.
  • the first character string is "123456”
  • the first preset character string is "Huawei”
  • the first identifier of the first character string and the first preset character string is "123456Huawei” or "Huawei123456”.
  • Step 707 The second device sends a Test request message, where the action frame of the Test request message carries the first identifier and the communication mode supported by the second device.
  • the second device supports at least one communication mode, and the communication mode includes an AP-STA, a GO-Client, and a P2P communication mode.
  • the action frame of the test request message includes an identifier field and a communication mode field, the identifier field is used to carry the first identifier, and the communication mode field is used to carry the communication mode supported by the second device.
  • Step 708 The first device receives a Test request message, where the action frame of the Test request message carries the first identifier and the communication mode supported by the second device.
  • the second device sends a Test request message
  • the action frame of the Test request message carries the first identifier “123456” and the communication mode supported by the second device includes an AP-STA and a GO-Client, and the first device receives the Test request message.
  • Step 709 The first device determines whether the first identifier matches the second identifier. If the matching is performed, step 710 is performed.
  • the matching between the first identifier and the second identifier means that the first identifier is equal to the second identifier or the first identifier and the second identifier are in a corresponding relationship.
  • the identifier relationship list may be set in advance on the first device, where the identifier relationship list is used to store any two identifiers having a corresponding relationship.
  • the first device may determine whether the first identifier has a corresponding relationship with the second identifier, where the first device may: according to the first identifier, find a corresponding identifier from the identifier relationship list, if the identifier is found If the identifier is equal to the second identifier, it is determined that there is a corresponding relationship between the first identifier and the second identifier. Otherwise, it is determined that there is no corresponding relationship between the first identifier and the second identifier.
  • Step 710 The first device selects a communication mode from the communication modes supported by the second device, sets its own identity according to the selected communication mode, and sends a Test response message to the second device, where the Test response message carries the selected communication mode and The identity of the first device.
  • the first device intersects the communication mode supported by the first device with the communication mode supported by the second device, selects a communication mode from the result of the intersection, and then sets its own identity according to the selected communication mode, for example, if selected If it is an AP-STA, you can set its own identity as an AP. If you select GO-Client, you can set its own identity to GO. If you select P2P communication mode, you can set its own identity as AP. And then sending a Test response message to the second device, the Test response message carrying the selected communication mode and the identity of the first device.
  • the Test response message is used by the second device to determine to establish a wireless connection with the first device.
  • the second device sends a Test request message to request to establish a wireless connection with a P2P device, where the first identifier of the P2P device is carried in an action frame of the Test request message. Therefore, in this step, when the first device determines that the first identifier matches the second identifier, the first device may learn that the second device requests to establish a wireless connection with itself, thereby determining that a wireless connection needs to be established with the second device. And sending a Test response message to the second device to inform the second device to agree to establish a wireless connection with the second device.
  • the action frame of the Test request message sent by the second device carries the first identifier "123456".
  • the first device receives the test request message, and the generated second identifier is “123456”, wherein the first identifier “123456” and the second identifier “123456” are the same, so the first identifier matches the second identifier, and the first identifier is determined.
  • the two devices establish a wireless connection, obtain the communication modes supported by the device, including the AP-STA, the GO-Client, and the P2P communication mode, and obtain the communication mode supported by the second device and the communication mode AP-STA and GO-Client supported by the second device.
  • the result of the intersection includes the AP-STA and the GO-Client, and randomly selects a communication mode from the intersection result, which is assumed to be an AP-STA, and then sets its identity as an AP, and sends a Test response message to the second device, the Test response
  • the message carries the selected communication mode AP-STA and the identity of the first device is an AP.
  • Step 711 The second device receives the Test response message, sets its own identity according to the Test response message, and determines to establish a wireless connection with the first device. Step 712 is performed.
  • the second device carries the identity of the communication mode selected by the first device and the identity of the first device according to the Test response message. For example, the second device receives a Test response message, where the Test response message carries the communication mode AP-STA selected by the second device and the identity AP of the first device, and the identity of the communication mode AP-STA and the first device selected according to the second device AP, set its own identity as STA.
  • Step 712 The second device generates first authentication information according to the second part information of the connection information.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephone Function (AREA)
  • Computing Systems (AREA)

Abstract

本发明实施例提供了一种用于建立无线连接的方法及设备,涉及通信领域,所述方法包括:所述第一设备接收第一用户的操作指令后,根据所述操作指令生成连接信息,向所述第一设备附近的第二设备提供所述连接信息,以便所述第二设备对所述连接信息的第一部分信息采用预设算法进行计算生成得到第一标识;接收所述第二设备根据所述连接信息发送的第一消息,所述第一消息中携带所述第一标识;确定所述第一标识与所述第一设备的第二标识是否匹配,所述第二标识与对所述第一部分信息进行计算生成的结果相等或相对应;如果匹配,向所述第二设备发送第二消息;建立与所述第二设备之间的无线连接。本发明能够提高建立无线连接的效率。

Description

一种用于建立无线连接的方法及设备
本申请要求于2014年11月28日提交中国专利局、申请号为201410709374.0中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及通信领域,特别涉及一种用于建立无线连接的方法及设备。
背景技术
随着技术的发展,越来越多的电子设备开始进入用户的日常生活,如手机、平板电脑和网关设备等,这些电子设备提供更加丰富和实用的功能。例如,目前很多电子设备具有传输数据的功能,两个电子设备可以建立无线连接,然后通过该无线连接来传输数据。
例如,假设第一电子设备需要传输数据给第二电子设备,首先第一电子设备进行设备搜索,得到设备搜索结果,该设备搜索结果中包括第一电子设备搜索到的各设备的标识;然后第一电子设备对应的用户从该设备搜索结果中找出第二电子设备的标识,并选择所述第二电子设备的标识;第一电子设备根据该用户选择的所述第二电子设备的标识,与所述第二电子设备建立无线连接,在无线连接建立完成后,通过该无线连接传输数据给第二电子设备。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
有时设备搜索结果中包含大量的设备的标识,或者有时包含多个与所述第二电子设备的类型相同的设备的标识,而类型相同的多个设备的标识之间看起来很相似,导致第一电子设备对应的用户需要花费较长时间来分辨并选择正确的设备,即需要与所述第一电子设备建立无线连接的设备(即第二电子设备),降低了建立无线连接的速度,进而降低了数据传输的效率。
发明内容
为了提高建立无线连接的效率,本发明实施例提供了一种用于建立无线连接的方法及设备。所述技术方案如下:
第一方面,提供了一种用于建立无线连接的方法,用于第一设备与第 二设备建立无线连接,所述方法包括:
所述第一设备接收第一用户的操作指令后,根据所述操作指令生成连接信息,向所述第一设备附近的第二设备提供所述连接信息,以便所述第二设备对所述连接信息的第一部分信息采用预设算法进行计算生成得到第一标识,所述第一用户为所述第一设备对应的用户,所述第一部分信息是所述连接信息的部分或全部;
所述第一设备接收所述第二设备根据所述连接信息发送的第一消息,所述第一消息中携带所述第一标识;
所述第一设备确定所述第一标识与所述第一设备的第二标识是否匹配,所述第二标识与对所述第一部分信息进行计算生成的结果相等或相对应;
如果匹配,所述第一设备向所述第二设备发送第二消息,其中所述第二消息为所述第一消息的响应消息;
所述第一设备建立与所述第二设备之间的无线连接。
结合第一方面,在第一方面的第一种可能的实现方式中,所述第一设备确定所述第一标识与所述第一设备的第二标识是否匹配之前,还包括:
对所述连接信息的第一部分信息采用预设算法进行计算生成所述第一设备的第二标识。
结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述对所述连接信息的第一部分信息采用预设算法进行计算生成所述第二标识,包括:
对所述连接信息的第一部分信息进行哈希运算得到第一哈希结果,根据所述第一哈希结果生成所述第一设备的第二标识;或者,
向所述连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据所述第一构造信息生成所述第一设备的第二标识。
结合第一方面、第一方面的第一种可能的实现方式或第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述第一设备向第二设备提供所述连接信息,包括:
第一设备显示或播放所述连接信息,使得所述第二设备接收用户向其输入的所述连接信息;或者,
第一设备根据所述连接信息生成包含所述连接信息的图形码,显示所 述图形码,使所述第二设备扫描所述的图形码并获取所述连接信息;或者,
第一设备与第二设备建立短距离通信连接,通过所述短距离通信连接发送所述连接信息给所述第二设备。
结合第一方面或第一方面的第一至第三种可能的实现方式中的任一种可能的实现方式,在第一方面的第四种可能的实现方式中,
所述第一消息为探测请求Probe request消息,所述Probe request消息的服务集标识SSID字段携带所述第一标识,或者,所述Probe request消息的保留字段携带所述第一标识;或者,
所述第一消息为测试请求Test request消息,所述Test request消息的动作帧Action Frame携带所述第一标识。
结合第一方面或第一方面的第一至第四种可能的实现方式中的任一种可能的实现方式,在第一方面的第五种可能的实现方式中,所述建立与所述第二设备之间的无线连接,包括:
验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配,所述第一认证信息是所述第二设备根据所述连接信息的第二部分信息计算生成的,所述第二部分信息是所述连接信息的部分或全部,所述第二认证信息与对所述第二部分信息进行计算生成的结果相等或相对应;
如果验证出所述第一认证信息与所述第二认证信息匹配,则向所述第二设备发送确认信息,所述确认信息用于所述第二设备确定将与所述第一设备建立无线连接,建立与所述第二设备之间的无线连接。
结合第一方面的第五种可能的实现方式,在第一方面的第六种可能的实现方式中,所述验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配,包括:
将所述第一设备的第二认证信息确定为四步握手认证方式的成对主密钥PMK,根据所述PMK并通过所述四步握手认证方式验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配;或者,
将所述第一设备的第二认证信息确定为无线保真安全设置WPS认证方式的个人识别码PIN,根据所述PIN并通过所述WPS认证方式验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配。
结合第一方面的第五或第六种可能的实现方式,在第一方面的第七种可能的实现方式中,所述验证所述第二设备的第一认证信息是否与所述第 一设备的第二认证信息匹配之前,还包括:
根据所述连接信息的第二部分信息计算生成所述第一设备的第二认证信息。
结合第一方面的第七种可能的实现方式,在第一方面的第八种可能的实现方式中,所述根据所述连接信息的第二部分信息计算生成所述第一设备的第二认证信息,包括:
对所述连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据所述第二哈希结果生成所述第一设备的第二认证信息;或者,
向所述连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据所述第二构造信息生成所述第一设备的第二认证信息。
结合第一方面的第五至第八种可能的实现方式中的任一种可能的实现方式,在第一方面的第九种可能的实现方式中,所述第一设备生成连接信息,包括:
根据所述第一设备的第二标识生成所述连接信息的第一部分信息;
根据所述第一设备的第二认证信息生成所述连接信息的第二部分信息;
根据所述第一部分信息和所述第二部分信息得到所述连接信息。
结合第一方面或第一方面的第一至第九种可能的实现方式中的任一种可能的实现方式,在第一方面的第十种可能的实现方式中,所述无线连接为无线保真Wi-Fi连接或为蓝牙连接。
第二方面,提供了一种用于建立无线连接的方法,用于第一设备与第二设备建立无线连接,所述方法包括:
所述第二设备获取所述第二设备附近的第一设备提供的连接信息,所述连接信息是所述第一设备接收第一用户的操作指令后根据所述操作指令生成的,所述第一用户为所述第一设备对应的用户;
所述第二设备根据所述连接信息的第一部分信息计算生成第一标识,所述第一部分信息是所述连接信息的部分或全部;
所述第二设备向所述第一设备发送第一消息,所述第一消息携带所述第一标识,以使得所述第一设备确定所述第一标识与第二标识是否匹配,所述第二标识与对所述第一部分信息进行计算生成的结果相等或相对应;
所述第二设备接收所述第一设备在所述第一标识与所述第二标识匹配时发送的第二消息,所述第二消息为所述第一消息的响应消息;
所述第二设备建立与所述第一设备之间的无线连接。
结合第二方面,在第二方面的第一种可能的实现方式中,所述根据所述连接信息的第一部分信息计算生成第一标识,包括:
对所述连接信息的第一部分信息进行哈希运算得到第一哈希结果,根据所述第一哈希结果生成所述第一标识;或者,
向所述连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据所述第一构造信息生成所述第一标识。
结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述建立与所述第一设备之间的无线连接,包括:
与所述第一设备进行验证,以使所述第一设备确定所述第二设备的第一认证信息与所述第一设备的第二认证信息是否匹配,所述第一认证信息是根据所述连接信息的第二部分信息计算生成的,所述第二认证信息与对所述连接信息的第二部分信息计算生成的结果相等或相对应;
接收所述第一设备验证出所述第一认证信息与所述第二认证信息匹配时发送的确认信息;
根据所述确认信息建立与所述第一设备之间的无线连接。
结合第二方面、第二方面的第一或第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述与所述第一设备进行验证,包括:
将所述第一认证信息确定为四步握手认证方式的PMK,根据所述PMK并通过所述四步握手认证方式与所述第一设备进行验证;或者,
将所述第一认证信息确定为无线保真安全设置WPS认证方式的PIN,根据所述PIN并通过所述WPS认证方式与所述第一设备进行验证。
结合第二方面或第二方面的第一至第三种可能的实现方式中的任一种可能的实现方式,在第二方面的第四种可能的实现方式中,所述与所述第一设备进行验证之前,还包括:
根据所述连接信息的第二部分信息计算生成所述第一认证信息。
结合第二方面的第四种可能的实现方式,在第二方面的第五种可能的实现方式中,所述根据所述连接信息的第二部分信息计算生成所述第一认证信息,包括:
对所述连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据所述第二哈希结果生成所述第一认证信息;或者,
向所述连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据所述第二构造信息生成所述第一认证信息。
结合第二方面或第二方面的第一至第五种可能的实现方式中的任一种可能的实现方式,在第二方面的第六种可能的实现方式中,所述获取所述第二设备附近的第一设备提供的连接信息,包括:
接收用户输入的所述第一设备的连接信息;或者,
扫描所述第一设备显示图形码,获取所述图形码中包含的所述第一设备的连接信息;或者,
与所述第一设备建立短距离通信连接,通过所述短距离通信连接接收所述第一设备发送的连接信息。
结合第二方面或第二方面的第一至第六种可能的实现方式中的任一种可能的实现方式,在第二方面的第七种可能的实现方式中,
所述第一消息为探测请求Probe request消息,所述Probe request消息的标识服务集标识SSID字段携带所述第一标识,或者,所述Probe request消息的保留字段携带所述第一标识;或者,
所述第一消息为测试请求Test request消息,所述Test request消息的动作帧Action Frame携带所述第一标识。
结合第二方面或第二方面的第一至第七种可能的实现方式中的任一种可能的实现方式,在第二方面的第八种可能的实现方式中,所述无线连接为无线保真Wi-Fi连接或为蓝牙连接。
第三方面,提供了一种用于建立无线连接的设备,所述设备为第一设备,用于与第二设备建立无线连接,所述第一设备包括:
生成模块,用于接收第一用户的操作指令后,根据所述操作指令生成连接信息,所述第一用户为所述第一设备对应的用户;
提供模块,用于向所述第一设备附近的第二设备提供所述连接信息,以便所述第二设备对所述连接信息的第一部分信息采用预设算法进行计算生成得到第一标识,所述第一部分信息是所述连接信息的部分或全部;
接收模块,用于接收所述第二设备根据所述连接信息发送的第一消息, 所述第一消息中携带第一标识;
确定模块,用于确定所述第一标识与所述第一设备的第二标识是否匹配,所述第二标识与对所述第一部分信息进行计算生成的结果相等或相对应;
发送模块,用于如果所述确定模块确定出所述第一标识与所述第一设备的第二标识匹配,向所述第二设备发送第二消息,其中所述第二消息为所述第一消息的响应消息;
建立模块,用于建立与所述第二设备之间的无线连接。
结合第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,所述第一设备还包括:
第一计算模块,用于对所述连接信息的第一部分信息采用预设算法进行计算生成所述第一设备的第二标识。
结合第三方面、第三方面的第一种可能的实现方式或第二种可能的实现方式,在第三方面的第三种可能的实现方式中,所述第一计算模块包括:
第一哈希单元,用于对所述连接信息的第一部分信息进行哈希运算得到第一哈希结果,根据所述第一哈希结果生成所述第一设备的第二标识;或者,
第一构造单元,用于向所述连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据所述第一构造信息生成所述第一设备的第二标识。
结合第三方面、第三方面的第一种可能的实现方式或第二种可能的实现方式,在第一方面的第三种可能的实现方式中,在第三方面的第四种可能的实现方式中,所述提供模块包括:
显示播放单元,用于显示或播放所述连接信息,使用户向所述第二设备输入所述连接信息;或者,
显示单元,用于根据所述连接信息生成包含所述连接信息的图形码,显示所述图形码,使所述第二设备扫描所述的图形码并获取所述连接信息;或者,
发送单元,用于与第二设备建立短距离通信连接,通过所述短距离通信连接发送所述连接信息给所述第二设备。
结合第三方面或第三方面的第一至第三种可能的实现方式中的任一种 可能的实现方式,
所述第一消息为探测请求Probe request消息,所述Probe request消息的服务集标识SSID字段携带所述第一标识,或者,所述Probe request消息的保留字段携带所述第一标识;或者,
所述第一消息为测试请求Test request消息,所述Test request消息的动作帧Action Frame携带所述第一标识。
结合第三方面或第三方面的第一至第四种可能的实现方式中的任一种可能的实现方式,在第三方面的第五种可能的实现方式中,所述建立模块包括:
验证单元,用于验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配,所述第一认证信息是所述第二设备根据所述连接信息的第二部分信息计算生成的,所述第二部分信息是所述连接信息的部分或全部,所述第二认证信息与对所述第二部分信息进行计算生成的结果相等或相对应;
建立单元,用于如果验证出所述第一认证信息与所述第二认证信息匹配,则向所述第二设备发送确认信息,所述确认信息用于所述第二设备确定将与所述第一设备建立无线连接,建立与所述第二设备之间的无线连接。
结合第三方面的第五种可能的实现方式,在第三方面的第六种可能的实现方式中,所述验证单元包括:
第一验证子单元,用于将所述第一设备的第二认证信息确定为四步握手认证方式的成对主密钥PMK,根据所述PMK并通过所述四步握手认证方式验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配;或者,
第二验证子单元,用于将所述第一设备的第二认证信息确定为无线保真安全设置WPS认证方式的个人识别码PIN,根据所述PIN并通过所述WPS认证方式验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配。
结合第三方面的第五或第六种可能的实现方式,在第三方面的第七种可能的实现方式中,所述第一设备还包括:
第二计算模块,用于根据所述连接信息的第二部分信息计算生成所述第一设备的第二认证信息。
结合第三方面的第七种可能的实现方式,在第三方面的第八种可能的实现方式中,所述第二计算模块包括:
第二哈希单元,用于对所述连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据所述第二哈希结果生成所述第一设备的第二认证信息;或者,
第二构造单元,用于向所述连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据所述第二构造信息生成所述第一设备的第二认证信息。
结合第三方面的第五至第八种可能的实现方式中的任一种可能的实现方式,在第三方面的第九种可能的实现方式中,所述第一设备还包括:
第一生成模块,用于根据所述第一设备的第二标识生成所述连接信息的第一部分信息;
第二生成模块,用于根据所述第一设备的第二认证信息生成所述连接信息的第二部分信息;
构造模块,用于根据所述第一部分信息和所述第二部分信息构造所述连接信息。
结合第三方面或第三方面的第一至第九种可能的实现方式中的任一种可能的实现方式,在第三方面的第十种可能的实现方式中,所述无线连接为无线保真Wi-Fi连接或为蓝牙连接。
第四方面,提供了一种用于建立无线连接的设备,所述设备为第二设备,用于与第一设备建立无线连接,所述第二设备包括:
获取模块,用于获取所述第二设备附近的第一设备提供的连接信息,所述连接信息是所述第一设备接收第一用户的操作指令后根据所述操作指令生成的,所述第一用户为所述第一设备对应的用户;
计算模块,用于根据所述连接信息的第一部分信息计算生成第一标识,所述第一部分信息是所述连接信息的部分或全部;
发送模块,用于向所述第一设备发送第一消息,所述第一消息携带所述第一标识,以使得所述第一设备确定所述第一标识与第二标识是否匹配,所述第二标识与对所述第一部分信息进行计算生成的结果相等或相对应;
接收模块,用于接收所述第一设备在所述第一标识与所述第二标识匹 配时发送的第二消息,所述第二消息为所述第一消息的响应消息;
建立模块,用于建立与所述第一设备之间的无线连接。
结合第四方面,在第四方面的第一种可能的实现方式中,所述计算模块包括:
第一哈希单元,用于对所述连接信息的第一部分信息进行哈希运算得到第一哈希结果,根据所述第一哈希结果生成所述第一标识;或者,
第一添加单元,用于向所述连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据所述第一构造信息生成所述第一标识。
结合第四方面或第四方面的第一种可能的实现方式,在第四方面的第二种可能的实现方式中,所述建立模块包括:
验证单元,用于与所述第一设备进行验证,以使所述第一设备确定所述第二设备的第一认证信息与所述第一设备的第二认证信息是否匹配,所述第一认证信息是根据所述连接信息的第二部分信息计算生成的,所述第二认证信息与对所述连接信息的第二部分信息计算生成的结果相等或相对应;
第一接收单元,用于接收所述第一设备验证出所述第一认证信息与所述第二认证信息匹配时发送的确认信息;
建立单元,用于根据所述确认信息建立与所述第一设备之间的无线连接。
结合第四方面、第四方面的第一或第二种可能的实现方式,在第四方面的第三种可能的实现方式中,所述验证单元包括:
第一验证子单元,用于将所述第一认证信息确定为四步握手认证方式的PMK,根据所述PMK并通过所述四步握手认证方式与所述第一设备进行验证;或者,
第二验证子单元,用于将所述第一认证信息确定为无线保真安全设置WPS认证方式的PIN,根据所述PIN并通过所述WPS认证方式与所述第一设备进行验证。
结合第四方面或第四方面的第一至第三种可能的实现方式中的任一种可能的实现方式,在第四方面的第四种可能的实现方式中,所述第二设备还包括:
生成模块,用于根据所述连接信息的第二部分信息计算生成所述第一 认证信息。
结合第四方面的第四种可能的实现方式,在第四方面的第五种可能的实现方式中,所述生成模块包括:
第二哈希单元,用于对所述连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据所述第二哈希结果生成所述第一认证信息;或者,
第二添加单元,用于向所述连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据所述第二构造信息生成所述第一认证信息。
结合第四方面或第四方面的第一至第五种可能的实现方式中的任一种可能的实现方式,在第四方面的第六种可能的实现方式中,所述获取模块包括:
第二接收单元,用于接收用户输入的所述第一设备的连接信息;或者,
扫描单元,用于扫描所述第一设备显示图形码,获取所述图形码中包含的所述第一设备的连接信息;或者,
第三接收单元,用于与所述第一设备建立短距离通信连接,通过所述短距离通信连接接收所述第一设备发送的连接信息。
结合第四方面或第四方面的第一至第六种可能的实现方式中的任一种可能的实现方式,在第四方面的第七种可能的实现方式中,
所述第一消息为探测请求Probe request消息,所述Probe request消息的标识服务集标识SSID字段携带所述第一标识,或者,所述Probe request消息的保留字段携带所述第一标识;或者,
所述第一消息为测试请求Test request消息,所述Test request消息的动作帧Action Frame携带所述第一标识。
结合第四方面或第四方面的第一至第七种可能的实现方式中的任一种可能的实现方式,在第四方面的第八种可能的实现方式中,所述无线连接为无线保真Wi-Fi连接或为蓝牙连接。
第五方面,提供了一种设备,所述设备为第一设备,用于与第二设备建立无线连接,所述第一设备包括:接收器、处理器和发送器;
所述处理器,用于接收第一用户的操作指令后,根据所述操作指令生成连接信息,向所述第一设备附近的第二设备提供所述连接信息,以便所述第二设备对所述连接信息的第一部分信息采用预设算法进行计算生成得 到第一标识,所述第一部分信息是所述连接信息的部分或全部;
所述接收器,用于接收所述第二设备根据所述连接信息发送的第一消息,所述第一消息中携带第一标识;
所述处理器,还用于确定所述接收器接收的第一标识与所述第一设备的第二标识是否匹配,所述第二标识与对所述第一部分信息进行计算生成的结果相等或相对应;
所述发送器,用于如果所述处理器确定的结果为匹配,向所述第二设备发送第二消息,其中所述第二消息为所述第一消息的响应消息;
所述处理器,还用于建立与所述第二设备之间的无线连接。
结合第五方面,在第五方面的第一种可能的实现方式中,所述处理器,还用于对所述连接信息的第一部分信息采用预设算法进行计算生成所述第一设备的第二标识。
结合第五方面的第一种可能的实现方式,在第五方面的第二种可能的实现方式中,所述处理器根据所述连接信息的第一部分信息计算生成所述第一设备的第二标识的操作,包括:
所述处理器对所述连接信息的第一部分信息进行哈希运算得到第一哈希结果,根据所述第一哈希结果生成所述第一设备的第二标识;或者,
所述处理器向所述连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据所述第一构造信息生成所述第一设备的第二标识。
结合第五方面、第五方面的第一种可能的实现方式或第二种可能的实现方式,在第五方面的第三种可能的实现方式中,所述处理器向第二设备提供所述连接信息的操作,包括:
所述处理器显示或播放所述连接信息,使用户向所述第二设备输入所述连接信息;或者,
所述处理器根据所述连接信息生成包含所述连接信息的图形码,显示所述图形码,使所述第二设备扫描所述的图形码并获取所述连接信息;或者,
所述处理器与第二设备建立短距离通信连接,通过所述短距离通信连接发送所述连接信息给所述第二设备。
结合第五方面或第五方面的第一至第三种可能的实现方式中的任一种可能的实现方式,在第五方面的第四种可能的实现方式中,
所述第一消息为探测请求Probe request消息,所述Probe request消息的服务集标识SSID字段携带所述第一标识,或者,所述Probe request消息的保留字段携带所述第一标识;或者,
所述第一消息为测试请求Test request消息,所述Test request消息的动作帧Action Frame携带所述第一标识。
结合第五方面或第五方面的第一至第四种可能的实现方式中的任一种可能的实现方式,在第五方面的第五种可能的实现方式中,所述处理器建立与所述第二设备之间的无线连接的操作,包括:
所述处理器验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配,所述第一认证信息是所述第二设备根据所述连接信息的第二部分信息计算生成的,所述第二部分信息是所述连接信息的部分或全部,所述第二认证信息与对所述第二部分信息进行计算生成的结果相等或相对应;
如果验证出所述第一认证信息与所述第二认证信息匹配,则向所述第二设备发送确认信息,所述确认信息用于所述第二设备确定将与所述第一设备建立无线连接,建立与所述第二设备之间的无线连接。
结合第五方面的第五种可能的实现方式,在第五方面的第六种可能的实现方式中,所述处理器验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配的操作,包括:
所述处理器将所述第一设备的第二认证信息确定为四步握手认证方式的PMK,根据所述PMK并通过所述四步握手认证方式验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配;或者,
所述处理器将所述第一设备的第二认证信息确定为无线保真安全设置WPS认证方式的PIN,根据所述PIN并通过所述WPS认证方式验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配。
结合第五方面的第五或第六种可能的实现方式,在第五方面的第七种可能的实现方式中,所述处理器,还用于根据所述连接信息的第二部分信息计算生成所述第一设备的第二认证信息。
结合第五方面的第七种可能的实现方式,在第五方面的第八种可能的实现方式中,所述处理器根据所述连接信息的第二部分信息计算生成所述第一设备的第二认证信息的操作,包括:
所述处理器对所述连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据所述第二哈希结果生成所述第一设备的第二认证信息;或者,
所述处理器向所述连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据所述第二构造信息生成所述第一设备的第二认证信息。
结合第五方面的第五至第八种可能的实现方式中的任一种可能的实现方式,在第五方面的第九种可能的实现方式中,
所述处理器,还用于根据所述第一设备的第二标识生成所述连接信息的第一部分信息;根据所述第一设备的第二认证信息生成所述连接信息的第二部分信息;根据所述第一部分信息和所述第二部分信息构造所述连接信息。
结合第五方面或第五方面的第一至第九种可能的实现方式中的任一种可能的实现方式,在第五方面的第十种可能的实现方式中,所述无线连接为无线保真Wi-Fi连接或为蓝牙连接。
第六方面提供了一种设备,所述设备为第二设备,用于与第一设备建立无线连接,所述第二设备包括:处理器、发送器和接收器;
所述处理器,用于获取所述第二设备附近的第一设备提供的连接信息,所述连接信息是所述第一设备接收第一用户的操作指令后根据所述操作指令生成的,所述第一用户为所述第一设备对应的用户生成的,根据所述连接信息的第一部分信息计算生成第一标识,所述第一部分信息是所述连接信息的部分或全部;
所述发送器,用于向所述第一设备发送第一消息,所述第一消息携带所述处理器生成的所述第一标识,以使得所述第一设备确定所述第一标识与第二标识是否匹配,所述第二标识与对所述第一部分信息进行计算生成的结果相等或相对应;
所述接收器,用于接收所述第一设备在所述第一标识与所述第二标识匹配时发送的第二消息,所述第二消息为所述第一消息的响应消息;
所述处理器,还用于建立与所述第一设备之间的无线连接。
结合第六方面,在第六方面的第一种可能的实现方式中,所述处理器根据所述连接信息的第一部分信息计算生成第一标识的操作,包括:
所述处理器对所述连接信息的第一部分信息进行哈希运算得到第一哈 希结果,根据所述第一哈希结果生成所述第一标识;或者,
所述处理器向所述连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据所述第一构造信息生成所述第一标识。
结合第六方面或第六方面的第一种可能的实现方式,在第六方面的第二种可能的实现方式中,所述处理器建立与所述第一设备之间的无线连接的操作,包括:
所述处理器与所述第一设备进行验证,以使所述第一设备确定所述第二设备的第一认证信息与所述第一设备的第二认证信息是否匹配,所述第一认证信息是根据所述连接信息的第二部分信息计算生成的,所述第二认证信息与对所述连接信息的第二部分信息计算生成的结果相等或相对应;
接收所述第一设备验证出所述第一认证信息与所述第二认证信息匹配时发送的确认信息;
根据所述确认信息建立与所述第一设备之间的无线连接。
结合第六方面、第六方面的第一或第二种可能的实现方式,在第六方面的第三种可能的实现方式中,所述处理器与所述第一设备进行验证的操作,包括:
所述处理器将所述第一认证信息确定为四步握手认证方式的PMK,根据所述PMK并通过所述四步握手认证方式与所述第一设备进行验证;或者,
所述处理器将所述第一认证信息确定为无线保真安全设置WPS认证方式的PIN,根据所述PIN并通过所述WPS认证方式与所述第一设备进行验证。
结合第六方面或第六方面的第一至第三种可能的实现方式中的任一种可能的实现方式,在第六方面的第四种可能的实现方式中,
所述处理器,还用于根据所述连接信息的第二部分信息计算生成所述第一认证信息。
结合第六方面的第四种可能的实现方式,在第六方面的第五种可能的实现方式中,所述处理器根据所述连接信息的第二部分信息计算生成所述第一认证信息的操作,包括:
所述处理器对所述连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据所述第二哈希结果生成所述第一认证信息;或者,
所述处理器向所述连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据所述第二构造信息生成所述第一认证信息。
结合第六方面或第六方面的第一至第五种可能的实现方式中的任一种可能的实现方式,在第六方面的第六种可能的实现方式中,所述处理器获取所述第一设备提供的连接信息的操作,包括:
接收用户输入的所述第一设备的连接信息;或者,
扫描所述第一设备显示图形码,获取所述图形码中包含的所述第一设备的连接信息;或者,
与所述第一设备建立短距离通信连接,通过所述短距离通信连接接收所述第一设备发送的连接信息。
结合第六方面或第六方面的第一至第六种可能的实现方式中的任一种可能的实现方式,在第六方面的第七种可能的实现方式中,
所述第一消息为探测请求Probe request消息,所述Probe request消息的标识服务集标识SSID字段携带所述第一标识,或者,所述Probe request消息的保留字段携带所述第一标识;或者,
所述第一消息为测试请求Test request消息,所述Test request消息的动作帧Action Frame携带所述第一标识。
结合第六方面或第六方面的第一至第七种可能的实现方式中的任一种可能的实现方式,在第六方面的第八种可能的实现方式中,所述无线连接为无线保真Wi-Fi连接或为蓝牙连接。
在本发明实施例中,第一设备生成连接信息并提供给第二设备,第二设备根据该连接信息生成第一标识,向第一设备发送携带第一标识的第一消息,第一设备根据该连接信息生成第二标识,如果第一标号与第二标识匹配,则建立与第二设备之间的无线连接,其中,第一设备可以通过第一标识和第二标识发现发送携带所述第一标识的第一消息的第二设备为所述第一设备需要与之建立无线连接的设备,如此第一设备的用户只需要通过第一设备将生成的连接信息提供给第二设备,后续的流程由第一设备和第二设备去交互执行,以建立第一设备和第二设备之间的无线连接,本发明实施例中,第一设备的用户不需要通过第一设备进行周边设备的搜索,也不需要第一设备的用户在大量的搜索结果中花费时间去选择设备,提高了建立无线连接的效率,继而提高了数据传输的效率,也简化了用户的操作, 提升了用户体验。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1-1是本发明实施例提供的一种用于建立无线连接的方法流程图;
图1-2是本发明实施例提供的另一种用于建立无线连接的方法流程图;
图2-1是本发明实施例提供的另一种用于建立无线连接的方法流程图;
图2-2是本发明实施例提供的一种系统应用的应用界面第一示意图;
图2-3是本发明实施例提供的一种系统应用的应用界面第二示意图;
图2-4是本发明实施例提供的一种第三方应用的应用界面第一示意图;
图2-5是本发明实施例提供的一种第三方应用的应用界面第二示意图;
图2-6是本发明实施例提供的一种系统应用的应用界面第三示意图;
图2-7是本发明实施例提供的一种系统应用的应用界面第四示意图;
图2-8是本发明实施例提供的一种系统应用的应用界面第五示意图;
图2-9是本发明实施例提供的一种Probe request消息的第一结构示意图;
图2-10是本发明实施例提供的一种Probe response消息的第一结构示意图;
图3是本发明实施例提供的另一种用于建立无线连接的方法流程图;
图4-1是本发明实施例提供的另一种用于建立无线连接的方法流程图;
图4-2是本发明实施例提供的一种Probe request消息的第二结构示意图;
图4-3是本发明实施例提供的一种Probe response消息的第二结构示意图;
图5是本发明实施例提供的另一种用于建立无线连接的方法流程图;
图6-1是本发明实施例提供的另一种用于建立无线连接的方法流程图;
图6-2是本发明实施例提供的Test request消息的结构示意图;
图6-3是本发明实施例提供的Test response消息的结构示意图;
图7是本发明实施例提供的另一种用于建立无线连接的方法流程图;
图8是本发明实施例提供的用于建立无线连接的设备的第一结构示意图;
图9是本发明实施例提供的用于建立无线连接的设备的第二结构示意图;
图10是本发明实施例提供的一种设备的第一结构示意图;
图11是本发明实施例提供的一种设备的第二结构示意图;
图12是本发明实施例提供的一种电子设备结构示意图;
图13是本发明实施例提供的另一种用于建立无线连接的方法流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
当第一设备的用户需要第一设备与第二设备之间建立无线连接时,第一设备和第二设备可以按如下过程来建立无线连接,包括:第一设备进行设备搜索得到设备搜索结果,该设备搜索结果中包括第一设备搜索的各设备的标识;然后用户从该设备搜索结果中找出第二设备的标识,并选择第二设备的标识;第一设备根据该用户选择的第二设备的标识,与第二设备建立无线连接。其中,有时设备搜索结果中包含大量的设备的标识,或者有时包含多个与第二设备的类型相同的设备的标识,而类型相同的多个设备的标识之间相似,所以在上述过程中用户需要花费较长时间才能选择正确的设备,效率低下。为了提高建立无线连接的效率,可以通过如下任一种实施方式来建立第一设备与第二设备之间的无线连接。
参见图1-1,本发明实施例提供了一种用于建立无线连接的方法,用于第一设备与第二设备建立无线连接,该方法包括:
步骤S101:第一设备接收第一用户输入的操作指令后,根据该操作指令生成连接信息,向第一设备附近的第二设备提供该连接信息,以便第二设备对该连接信息的第一部分信息采用预设算法进行计算生成得到第一标识,第一用户为第一设备对应的用户,第一部分信息是该连接信息的部分 或全部。
第一设备附近的第二设备可以指第一设备与第二设备之间的距离在几米或十几米范围内,或者第一设备和第二设备可以相互靠近做短距离通信,等等。例如,两个人面对面地用各自的手机向对方分享图片,两个人彼此距离很近,从而两手机距离很近,如距离在几米或十几米范围内;或是两个人可以将各自的手机相互靠近做NFC(Near Field Communication,近场通信)通信。
该连接信息可以为一串字符串,该字符串的内容可以为数字、字母或其他字符,或者可以为数字、字母和其他字符中任意多种字符的组合。第一设备可以随机生成一串字符串,将生成的字符串作为连接信息;或者,第一设备可以根据预设的第二标识和第二验证信息来生成连接信息。
第一设备可以按如下第一至第四四种实现方式中的任一种方式来将该连接信息提供给第二设备,分别为:
第一、第一设备显示该连接信息。
其中,第二设备对应的第二用户可以查看第一设备显示的该连接信息,并将该连接信息输入给第二设备。其中,第二用户和第一用户可以为同一用户,该用户可以对所述第一设备和第二设备进行操作,或者第二用户和第一用户可以为两个不同的用户,所述两个用户分别为对应于所述第一设备和第二设备的用户。
第二、第一设备通过音箱或扬声器播放该连接信息。
其中,第二用户可以收听第一设备播放的该连接信息,并将该连接信息输入给第二设备。
第三、第一设备根据该连接信息生成包含该连接信息的图形码,显示该图形码。
该图形码可以为一维码或二维码,第一设备可以使用用于生成图形码的编码算法对该连接信息进行编码,以生成包含该连接信息的图形码。
其中,第二设备具有扫描模块,该扫描模块可以为摄像头或扫描仪等。第一设备显示该图形码之后,第二设备可以通过其包括的扫描模块扫描第一设备显示的该图形码并获得该连接信息。
第四、第一设备与第二设备建立短距离通信连接,通过该短距离通信连接向第二设备发送该连接信息。
其中,在本实施例中,第一设备生成的连接信息都是一些由简单字符组成的字符串且较短,例如生成的连接信息可以为“123456”或者“abcdef”等,这样可以方便用户输入或收听,所以在本步骤中第二设备对该连接信息的第一部分信息采用预设算法进行计算生成得到第一标识,如此可以增加第一标识的长度或复杂程度等,从而可以减少第一标识与其他设备的标识相同的概率,
步骤S102:第一设备接收所述第二设备根据该连接信息发送的第一消息,第一消息中携带第一标识。
其中,可选的,第一设备计算生成第一标识后,可以将第一标识作为需要与其建立无线连接的设备的标识,然后广播携带第一标识的第一消息,以请求第一标识对应的设备与其建立无线连接。
步骤S103:第一设备确定该第一标识与第一设备的第二标识是否匹配,第二标识与对第一部分信息进行计算生成的结果相等或相对应。
其中,在本发明实施例中,第二设备可以将第一标识作为需要与其建立无线连接的设备的标识,所以在本步骤中,由于第一标识是第二设备对该连接信息的第一部分信息进行计算生成的,而第二标识与对第一部分信息进行计算生成的结果相等或相对应,所以当第一标识与第二标识匹配时,第一设备便可以自动发现第二设备为所述第一设备需要与之建立无线连接的设备。
步骤S104:如果匹配,第一设备向第二设备发送第二消息,第二消息为第一消息对应的响应消息。
第二消息用于第二设备确定第一设备同意与其建立无线连接,从而也使第二设备发现第一设备即为需要与其建立无线连接的设备。
步骤S105:第一设备建立与第二设备之间的无线连接。
本发明实施例中,第一设备生成一个连接信息,将该连接信息提供给第二设备,然后由第二设备和第一设备根据该连接信息进行后续的交互,以建立第一设备和第二设备之间的无线连接,相比用户从大量的设备搜索结果中去找出第二设备的标识,本发明实施例可以节省第一设备进行设备搜索的时间以及用户寻找第二设备的标识的时间,从而可以缩短建立无线连接的时间。
在本发明实施例中,第一设备生成连接信息并提供给第二设备,第二 设备根据该连接信息生成第一标识,向第一设备发送携带第一标识的第一消息,第一设备根据该连接信息生成第二标识,如果第一标号与第二标识匹配,则建立与第二设备之间的无线连接,其中,第一设备可以通过第一标识和第二标识发现,发送携带所述第一标识的第一消息的第二设备为所述第一设备需要与之建立无线连接的设备,如此,第一设备的用户只需要通过第一设备将生成的连接信息提供给第二设备,后续的流程由第一设备和第二设备去交互执行,以建立第一设备和第二设备之间的无线连接,本发明实施例中,第一设备的用户不需要通过第一设备进行周边设备的搜索,也不需要第一设备的用户在大量的搜索结果中花费时间去选择设备,提高了建立无线连接的效率,继而提高了数据传输的效率,也简化了用户的操作,提升了用户体验。
参见图1-2,本发明实施例提供了一种用于建立无线连接的方法,用于第一设备与第二设备建立无线连接,该方法包括:
步骤S111:第二设备获取其附近的第一设备提供的连接信息,该连接信息是第一设备接收第一用户的操作指令后根据该操作指令生成的,第一用户为第一设备对应的用户。
第二设备可以通过如下第一、第二和第三三种方式中的任一种方式来获取该连接信息。
第一、第二设备接收第二用户输入的该连接信息。
其中,第一设备生成连接信息后显示该连接信息或者通过音箱播放该连接信息。第二用户可以查看或收听该连接信息,然后向第二设备输入该连接信息。
第二、第二设备扫描第一设备显示的图形码,获取该图形码中包含的该连接信息。
其中,第二用户可以开启第二设备的扫描模块,然后第二设备通过扫描模块扫描第一设备显示的图形码,对扫描的图形码进行解析,解析出扫描的图形码中包含的连接信息。
第三、第二设备与第一设备建立短距离通信连接,通过该短距离通信连接接收第一设备发送的该连接信息。
其中,该连接信息是第一设备生成的,第二设备可以通过上述任一种 方式获取该连接信息,相比用户从大量的设备搜索结果中去找出设备的标识,本步骤可以节省第一设备进行设备搜索的时间以及用户寻找设备的标识的时间,可以缩短建立无线连接的时间。
步骤S112:第二设备根据该连接信息的第一部分信息计算生成第一标识,第一部分信息是该连接信息的部分或全部。
第二设备可以采用如下两种方式中的任一种方式生成该第一标识,包括:
第一、第二设备对该连接信息的第一部分信息进行哈希运算得到第一哈希结果,根据第一哈希结果生成第一标识。
可以从第一哈希结果中截取部分信息作为第一标识,或,将截取的部分信息添加预设信息组成第一标识,或,将第一哈希结果作为第一标识等。
第二、第二设备向该连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据第一构造信息生成第一标识。
其中,第二设备对该连接信息的第一部分信息计算生成第一标识,如此可以减少第二设备生成第一标识与其他设备生成标识发生碰撞的概率。
步骤S113:第二设备向第一设备发送第一消息,第一消息携带第一标识,以使得第一设备确定第一标识与第二标识是否匹配,第二标识与对第一部分信息进行计算生成的结果相等或相对应。
其中,在本发明实施例中,第二设备将第一标识作为需要与其建立无线连接的设备的标识,由于第一标识是对该连接信息的第一部分信息进行计算生成的,而第二标识与对第一部分信息进行计算生成的结果相等或相对应,所以当第一标识与第二标识匹配时,第一设备便可以自动发现第二设备为需要与自身建立无线连接的设备,实现第一设备和第二设备相互发现自己为需要与对方建立无线连接的设备。
步骤S114:第二设备接收在第一标识与第二标识匹配时第一设备发送第二消息。
步骤S115:第二设备建立与第一设备之间的无线连接。
在本发明实施例中,第二设备获取第一设备提供的连接信息,根据该连接信息生成第一标识,向第一设备发送携带第一标识的第一消息,以使第一设备根据确定第一标号与第一设备的第二标识是否匹配,如果匹配,则第二设备建立与第一设备之间的无线连接,其中,第一设备和第二设备 可以通过第一标识和第二标识相互发现自己为需要与对方建立无线连接的设备,如此用户不需要在大量的搜索结果中选择设备,提高建立无线连接的效率,以提高数据传输的效率。
本发明实施例提供了一种用于建立无线连接的方法。在本发明实施例中,第一设备为无线接入设备,第二设备为无线终端,例如当第一设备基础设备网络模型中的AP(AccessPoint,访问接入点)或者由智能终端转换成的热点时,第二设备相应的为无线终端;当第一设备为P2P(Peer-to-Peer)网络中的GO(Group Owner,组所有者)设备时,相应的第二设备为P2P网络中的Client(客户端)设备。本领域的业内人士可以理解,这两种场景下第一设备和第二设备所执行的方法相似。为描述方便,本实施例以第二设备和第一设备通过AP-STA(AccessPoint-Station,访问接入点-工作站)模式建立无线连接为例进行说明,其中,第二设备的身份为STA,第一设备的身份为AP,第一设备生成连接信息并提供给第二设备,第二设备根据该连接信息的第一部分信息计算生成第一标识,向第一设备发送Probe request消息,该Probe request(探测请求)消息的SSID(Service Set Identifier,服务集标识)字段携带第一标识;第一设备根据该连接信息的第一部分信息计算生成第二标识,第一设备比较第一标识与第二标识,如果第一标识与第二标识匹配,则建立与第二设备之间的无线连接。参见图2-1,该方法包括:
步骤201:第一设备生成连接信息。
该连接信息可以为一串字符串,该连接信息的内容可以为数字、字母或其他字符,或者可以为数字、字母和其他字符中任意多种字符的组合。第一设备可以随机生成一串字符串,将生成的字符串作为连接信息。
其中,在本发明实施例中,第一设备可以在其对应的第一用户的触发下生成连接信息。具体有如下两种触发方式,包括:
第一、第一设备检测到系统应用的应用界面中的连接接口被第一用户点击而触发的连接命令时,生成连接信息。
其中,在具有传输数据需求的系统应用的应用界面中设置一连接接口,当第一用户需要传输数据时,可以点击该连接接口,以使该连接接口触发连接命令。所述系统应用可以为任意需要连接对端设备的应用、软件程序, 或是某一应用中的一个子模块,或是在一个应用程序内调用的另一个应用程序。例如,系统应用可以为媒体内容分享应用,用户点击该应用的连接媒体内容分享对端设备的连接接口,该媒体内容分享对端设备为媒体内容的发送设备或者接收设备,即触发连接命令;或者,
系统应用可以为网络共享应用,用户点击该应用的连接网络共享对端设备的连接接口,所述网络共享对端设备为向所述第一设备共享网络的设备或者使用所述第一设备共享网络的设备,即触发连接命令;或者,
系统应用可以为多屏互动应用,用户点击该应用的连接多屏互动对端设备的连接接口,所述多屏互动对端设备为所述多屏互动的发起设备或者加入设备,即触发连接命令;或者,
系统应用可以为多人游戏应用,用户点击连接多人游戏对端设备的连接接口,所述多人游戏对端设备为所述多人游戏的发起设备或者加入设备,即触发连接命令;或者,
系统应用可以为服务连接应用,用户点击连接服务连接对端设备连接接口,所述服务连接对端设备为能够满足所述第一设备的服务需求的设备,即触发连接命令。
当在上述的系统应用中触发调用的另一应用程序,也视为该系统应用的一部分。如当用户在具有图片分享功能的图片拍照应用或具有视频分享功能的视频拍照应用中进行共享时,也可以调用另外一个用于触发设备开启连接状态的第二应用,在本实施例中,该第二应用也视作所述系统应用的一部分。
需要说明的是,上述过程也可以不需要点击专门的连接按钮,而在是触发应用时就默认触发连接命令。
以系统应用为具有图片分享功能的图片拍照应用或具有视频分享功能的视频拍摄应用等进行具体说明。
例如,参见图2-2所示的系统应用的应用界面,该系统应用是一个图片拍照应用,图片拍照应用拍摄一张图片并显示在应用界面中,在应用界面的上方有一连接接口(如图中所示的具有分享功能的图标),第一用户点击该连接接口,该连接接口触发连接命令。第一设备当检测出该连接接口触发的连接命令时,随机产生连接信息,假设产生的连接信息为“12345678”, 如图2-3所示。
第二、第一设备检测到第三方应用的应用界面中的连接接口被第一用户点击触发的连接命令时,生成连接信息,第三方应用为用于建立无线连接的应用。
其中,在第一设备上安装一个可以用于建立无线连接的第三方应用,第三方应用的应用界面中包含连接接口。当第一用户需要传输数据时,可以点击该连接接口,以使该连接接口触发连接命令。
例如,参见图2-4所示的第三方应用的应用界面,在该应用界面中有一连接接口(如图2-4所示的“我要创建分享”的图标),第一用户点击该连接接口,该连接接口触发连接命令。第一设备当检测出该连接接口触发的连接命令时,随机产生连接信息,假设产生的连接信息为“12345678”,如图2-5。
步骤202:第一设备向第二设备提供该连接信息。
具体地,本步骤可以为如下第一至第四四种实现方式中的任一种:
第一、第一设备显示该连接信息。
其中,第二设备对应的第二用户可以查看第一设备显示的该连接信息,并将该连接信息输入到第二设备。第二用户可以与第一设备对应的第一用户相同或不同。或者,第二设备对应第二用户可以通过其他人为手段获得第一设备显示的该连接信息,例如,由所述第一设备对应的第一用户查看后,以所有可行的方式如朗读、短信、电话等方式告知第二用户,由第二用户将该连接信息输入到第二设备。
第二、第一设备通过扬声器播放该连接信息对应的语音。
其中,第二用户可以收听第一设备播放的该连接信息对应的语音,并将该连接信息输入给第二设备。
第三、第一设备根据该连接信息生成包含该连接信息的图形码,显示该图形码。
该图形码可以为一维码或二维码,也可以为其他形式的图形码。第一设备可以使用用于生成图形码的编码算法对该连接信息进行编码,以生成包含该连接信息的图形码,如生成QR Code(Quick Response Code,快速反应码)二维码。
其中,第二设备具有扫描模块,该扫描模块可以为摄像头或扫描仪等。第一设备显示该图形码之后,第二设备可以通过其包括的扫描模块扫描第一设备显示的该图形码并获得该连接信息。
第四、第一设备与第二设备建立短距离通信连接,通过该短距离通信连接向第二设备发送该连接信息。
其中,第一设备可以通过带外通信方式与第二设备建立短距离通信连接。带外通信方式可以为声波、红外、NFC(Near Field Communication,近距离无线通讯技术)或HotKnot等通信方式。
其中,在本发明实施例中,第一设备可以为一终端设备或AP。当第一设备为终端设备时,在执行本步骤之前,第一设备将自身的身份设置为AP或者热点。
第一设备成为AP后,也可以主动广播Beacon(信标)消息,向周围的STA告知该AP的存在。第二设备可以通过接收该Beacon消息的设备根据该Beacon消息确定第一设备为一AP并主动请求与第一设备建立连接,然后第一设备再执行本步骤;第二设备也可以在获取了第一设备的连接信息之后直接请求与第一设备建立连接。
步骤203:第二设备获取第一设备提供的该连接信息。
具体地,第二设备可以通过如下第一、第二和第三三种方式来获取该连接信息。
第一、第二设备接收第二用户输入的该连接信息。
其中,第一设备生成连接信息后显示该连接信息或者通过音箱播放该连接信息。第二用户可以查看或收听该连接信息,然后向第二设备输入该连接信息。
其中,第二设备可以通过如下(1)和(2)两种方式获取第二用户输入的连接信息,包括:
(1)、第二设备从系统应用的应用界面中获取第二用户输入的连接信息。
系统应用的应用界面中包含接收接口,第二用户点击该接收接口时,该接收接口触发接收命令。第二设备当检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,第二用户可以向该输入框输入查看到的连接信息或收听到的连接信息。
例如,第一设备显示连接信息“12345678”或通过音箱播放连接信息“12345678”,第二用户查看连接信息“12345678”或收听连接信息“12345678”。然后,第二用户在如图2-6所示的系统应用的应用界面中点击接收接口,该接收接口触发接收命令,第二设备检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,如图2-7所示,第二用户在该输入框输入该连接信息“12345678”。然后第二设备从该输入框中读取第二用户输入的连接信息“12345678”。
(2)、第二设备从第三方应用的应用界面中获取第二用户输入的连接信息。
第三方应用的应用界面中包含接收接口,第二用户点击该接收接口时,该接收接口触发接收命令。第二设备当检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,第二用户可以向该输入框输入查看到的连接信息或收听到的连接信息。
例如,第二用户在如图2-4所示的系统应用的应用界面中点击接收接口,该接收接口触发接收命令,第二设备检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,如图2-8所示,第二用户在该输入框输入该连接信息“12345678”。然后第二设备从该输入框中读取第二用户输入的连接信息“12345678”。
第二、第二设备扫描第一设备显示的图形码,获取该图形码中包含的该连接信息。
其中,第二用户可以开启第二设备的扫描模块,然后第二设备通过扫描模块扫描第一设备显示的图形码,对扫描的图形码进行解析,解析出扫描的图形码中包含的连接信息。
第三、第二设备与第一设备建立短距离通信连接,通过该短距离通信连接接收第一设备发送的该连接信息。
其中,在本实施例中,第一设备生成一个连接信息,第二用户可以将该连接信息输入给第二设备,或通过第二设备扫描第一设备上包含该连接信息的图形码,或者将第二设备与第一设备靠近,以使第二设备通过短距离通信方式获得该连接信息,相比第一用户从大量的设备搜索结果中去找出第二设备的标识,本步骤可以节省第一设备进行设备搜索的时间以及第一用户寻找第二设备的标识的时间,从而可以缩短第一设备和第二设备之 间建立无线连接的时间。
步骤204:第二设备根据该连接信息包括的第一部分信息计算生成第一标识,第一部分信息是该连接信息的部分或全部。
具体地,本步骤可以包括如下第一和第二两种实现方式,包括:
对所述连接信息的第一部分信息进行转换运算得到第一转换结果,根据所述第一转换结果获得第一标识;或者,
对所述连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据所述第一构造信息获得第一标识;
具体地,所述转换运算可以为对所述第一部分信息进行部分位置换、打散、倒序、映射、扩充、替换、加/减/乘/除一个预设值、或通过预设公式进行转换等,或者为以上转换运算的组合,本发明并不以此为限。
例如,假设连接信息12345678”的第一部分信息为“1234”,第一预设信息为“hua”,则第二设备将连接信息的第一部分信息“1234”进行倒序得到“1234”作为第一标识,或者将连接信息的第一部分信息“1234”每一位值进行一次重复得到“11223344”作为第一标识。
具体地,第二设备还可以对该连接信息的第一部分信息进行哈希运算得到第一哈希结果,根据第一哈希结果生成第一标识。哈希运算为将不同长度的输出进行运算得到固定长度输出的运算,包括但不限于运算过程中包含有常见哈希算法的各类运算,及自定义的可以得到固定长度输出的运算算法。例如,可以对该连接信息的第一部分信息先进行扩充或者添加再进行SHA-256运算得到第一哈希结果。
具体地,还可以从第一哈希结果中截取部分信息作为第一标识,或,将截取的部分信息添加预设信息组成第一标识,或,将第一哈希结果作为第一标识等。例如:第二设备对连接信息“12345678”的第一部分信息“1234”先进行替换得到“5678”,再对“5678”进行SHA-256哈希算法的哈希,得到第一哈希结果为“6BAA0BD18BCC1E5237B70DC18595A7DEFF11CD27120CDC96A678003F8B162941”,然后截取第一哈希结果的后8位数值“8B162941”作为第一标识;或者进一步添加“hua”得到“hua8B162941”作为第一标识。
第二、第二设备向该连接信息的第一部分信息添加第一预设信息得到 第一构造信息,根据第一构造信息生成第一标识。
其中,可以对第一构造信息进行反转置换处理或移位处理来生成第一标识。例如,假设连接信息“12345678”的第一部分信息为“1234”,第一预设信息为“hua”,则第二设备向连接信息的第一部分信息“1234”添加第一预设信息“hua”得到的第一构造信息可以为“1234hua”、“hua1234”或“12hua34”等。
假设,构造的第一构造信息为“1234hua”,对第一构造信息进行反转置换处理得到的第一标识为“auh4321”;或,事先设置移位的位数,该位数可以为二或三等,然后对第一构造信息进行两位移位处理或三位移位处理等,如当对第一构造信息进行两位移位处理得到的第一标识为“ua1234h”,当对第一构造信息进行三位移位处理得到的第一标识为“hua1234”。
第二设备生成第一标识的方式除了以上第一和第二两种外,还可以采用其他方式,例如,可以从该连接信息中截取预设第一位数的一串字符串作为第一字符串,根据第一字符串生成第一标识;或者,对整个连接信息进行哈希运算得到第一标识。
其中,第二设备根据第一字符串生成第一标识的实现方式,可以包括如下(1)至(4)四种:
(1)、将第一字符串确定为第一标识。
例如,预设第一位数为6,第二设备从连接信息“12345678”中截取前6位的字符串“123456”或后6位字符串“345678”作为第一字符串,将第一字符串“123456”或“345678”确定为第一标识。
(2)、将第一字符串与第一预设字符串组成第一标识。
例如,第一字符串为“123456”,第一预设字符串为“Huawei”,将第一字符串与第一预设字符串组成的第一标识为“123456Huawei”或“Huawei123456”。
(3)、对第一字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串作为第一标识。
(4)、对第一字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串,将截取的字符串与第一预设字符串组成第一标识。
步骤205:第二设备发送Probe request消息,该Probe request消息的SSID字段携带第一标识。
其中,第二设备将自身的身份设置为STA,并发送Probe request消息,以请求与接收该Probe request消息的AP建立无线连接。第二设备可以广播该Probe request消息,或者,第二设备可以在接收到第一设备广播的Beacon消息后,从Beacon消息中获取第一设备的地址,根据第一设备的地址向第一设备单播该Probe request消息。
其中,参见图2-9所示的Probe request消息的结构,Probe request消息包括MAC(Media Access Control,介质访问控制)头、帧体和FCS(Frame Check Sequence,帧检验序列)等部分,MAC头包括Addr_1和Addr_2等字段,Addr_1为接收方地址,Addr_2为发送方地址,帧体包括SSID等字段,SSID为AP的标识,FCS为校验字段,用于携带校验码。在本发明实施例中,第二设备将第一标识作为AP的标识,当第二设备广播Probe request消息时,该Probe request消息的Addr_1字段为空,当第二设备单播Probe request消息给第一设备时,该Probe request消息的Addr_1字段携带第一设备的MAC地址;在该两种情况下,该Probe request消息的Addr_2字段携带第二设备的MAC地址,SSID字段携带第一标识。
步骤206:第一设备接收该Probe request消息,该Probe request消息的SSID字段携带第一标识。
其中,只有AP才可以接收Probe request消息,所以在本发明实施例中第一设备为AP或将自身的身份设置为AP,然后接收第二设备发送的Probe request消息。
例如,第二设备发送Probe request消息,该Probe request消息的SSID字段携带第一标识“123456”,第一设备接收该Probe request消息。
步骤207:第一设备根据该连接信息的第一部分信息计算生成第二标识,其中,第一设备将第二标识作为其自身的标识。
第一设备生成第二标识的方式与第二设备生成第一标识的方式可以相同。
具体地,第一设备可以通过如下第一和第二两种方式计算生成第二标识,包括:
第一、第一设备对该连接信息的第一部分信息进行哈希运算得到第一 哈希结果,根据第一哈希结果生成第二标识。
本实施方式与第二设备生成第一标识的第一种方式相同,详细过程可以参见第二设备生成第一标识的第一种方式,在此不再详细说明。
第二、第一设备向该连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据第二构造信息生成第二标识。
对所述连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据所述第一构造信息获得所述第一设备的第二标识;
本实施方式与第二设备生成第一标识的第二种方式相同,详细过程可以参见第二设备生成第一标识的第二种方式,在此不再详细说明。
第一设备生成第二标识的方式除了以上第一和第二两种外,还可以采用其他方式,例如,可以从该连接信息中截取预设第一位数的字符串作为第二字符串,根据第二字符串生成第二标识;或者,对整个该连接信息进行哈希运算得到第二标识。
其中,需要说明的是:第一设备也可以在生成连接信息之后且在接收Probe request消息之前按本步骤生成第二标识。
其中,第一设备根据第二字符串生成第二标识的实现方式,包括如下(1)至(4)四种:
(1)、将第二字符串确定为第二标识。
例如,预设第一位数为6,第一设备从连接信息“12345678”中截取前6位的字符串“123456”或后6位字符串“345678”作为第二字符串,将第二字符串“123456”或“345678”确定为第二标识。
(2)、将第二字符串与第一预设字符串组成第二标识。
例如,假设,第二字符串为“123456”,第一预设字符串为“Huawei”,将第二字符串与第一预设字符串组成的第二标识为“123456Huawei”或“Huawei123456”。
(3)、对第二字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串作为第二标识。
(4)、对第二字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串,将截取的字符串与预设字符串组成第二标识。
步骤208:第一设备确定第一标识与第二标识是否匹配,如果匹配执行步骤209。
其中,第一标识与第二标识匹配是指第一标识与第二标识相等或者第一标识与第二标识之间存在对应关系。
其中,可以事先在第一设备设置标识关系列表,该标识关系列表用于存储具有对应关系的任意两标识。
相应地,第一设备可以通过如下方式来确定第一标识与第二标识是否存在对应关系,包括:第一设备可以根据第一标识,从该标识关系列表中查找出对应的标识,如果查找出的标识与第二标识相等,则确定出第一标识与第二标识之间存在对应关系,否则,确定第一标识与第二标识之间不存在对应关系。
其中,在本发明实施例中,第二设备将第一标识作为需要与其建立无线连接的设备的标识,由于第一标识是对该连接信息的第一部分信息进行计算生成的,而第二标识与对第一部分信息进行计算生成的结果相等或相对应,所以当第一设备收到与第二标识匹配的第一标识时,第一设备便可以自动发现第二设备为所述第一设备需要与之建立无线连接的设备,从而第一设备和第二设备可以快速发现对方,从而减少了建立无线连接所需要的时间。
步骤209:第一设备向第二设备发送Probe response(探测响应)消息,该Probe response消息用于第二设备确定与第一设备建立无线连接。
其中,第二设备发送Probe request消息,以请求与一AP建立无线连接,该AP的第一标识携带在该Probe request消息的SSID字段中。所以在本步骤中,当第一设备判断出第一标识与第二标识匹配,则第一设备可以获知第二设备请求与自身建立无线连接,从而确定需要与第二设备建立无线连接,向第二设备发送Probe response消息,以告知第二设备同意与其建立无线连接。
参见图2-10所示的Probe response消息结构,Probe response消息包括MAC头、帧体和FCS等部分,MAC头包括Addr_3和Addr_4等字段,Addr_3为接收方地址,Addr_4为发送方地址,帧体包括SSID等字段,SSID为AP的标识,FCS为校验字段,用于携带校验码。在本发明实施例中,该Probe respnse消息的Addr_3字段携带第二设备的MAC地址,Addr_4字段携带第 一设备的MAC地址,SSID字段携带第二标识。
例如,假设第二设备发送的Probe request消息的SSID字段携带第一标识“123456”。第一设备接收该Probe request消息,生成的第二标识为“123456”,其中,第一标识“123456”和第二标识“123456”相同,所以第一标识与第二标识匹配,确定需要与第二设备建立无线连接,向第二设备发送Probe respone消息。
步骤210:第二设备接收该Probe response消息,根据该Probe response消息确定与第一设备建立无线连接,执行步骤211。
步骤211:第二设备根据该连接信息的第二部分信息生成第一认证信息。
连接信息的第一部分信息的内容和第二部分信息的内容可以不同或者部分相同。例如,该连接信息为“12345678”,第一部分信息可以为“1234”,第二部分信息可以为“5678”,或者,第一部分信息可以为“123456”,第二部分信息可以为“345678”等。
具体地,本步骤可以通过如下第一和第二两种实现方式,包括:
第一、第二设备对该连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据第二哈希结果生成第一认证信息。
例如,对连接信息“12345678”的第二部分信息“5678”进行SHA-256哈希算法的哈希,得到第二哈希结果为“6BAA0BD18BCC1E5237B70DC18595A7DEFF11CD27120CDC96A678003F8B162941”,根据第二设备采用的认证方式对第二哈希结果进行截取或补充等处理得到该认证方式所需要的位数的第一认证信息。
第二设备采用的认证方式可以包括四步握手认证方式。WPS认证方式或其他认证方式。其中,每种认证方式规定了认证消息的格式,例如,四步握手认证方式规定认证消息为256比特组成的密钥信息,WPS认证方式规定认证消息为8位数字等。
例如,当第二设备采用四步握手认证时,将第二哈希结果包括32个字符,正好为256比特,因此将第二哈希结果作为第一认证信息。当第二设备采用WPS认证时,截取最后8位“8F162941”,并将“F”映射至数字“6”得到“86162941”作为第一认证信息。
第二、第二设备向该连接信息的第二部分信息添加第二预设信息得到 第二构造信息,根据第二构造信息生成第一认证信息。
例如,当第二设备采用四步握手认证时,将连接信息“12345678”的第二部分信息“5678”转换为二进制“1011000101110”,然后在“1011000101110”左侧添加243bit的“0”得到256bit位的第一认证信息;或在“1011000101110”右侧添加243bit的“1”得到256bit位的第一认证信息;
当第二设备采用WPS认证时,对连接信息“12345678”的第二部分信息“5678”左侧或右侧添加4位“8888”或“0000”等得到8位数字作为第一认证信息。
需要说明的是,当第二部分信息位数满足第二设备采用的认证方式所要求的认证信息位数时,也可以直接将第二部分信息作为第一认证信息。
其中,第二设备除了可以采用上述第一和第二两种方式生成第一认证信息外,还可以采用其他的方式来生成第一认证信息。例如第二设备从该连接信息中截取预设第二位数的字符串作为第四字符串,根据第四字符串生成第一认证信息;或者,将该连接信息确定为第一认证信息。
其中,第二设备根据第四字符串生成第一认证信息的实现方式,包括如下几种:
第一、将第四字符串确定为第一认证信息。
例如,假设预设第二位数为4,第一设备从连接信息“12345678”中截取前4位字符串“1234”或后4位字符串“5678”作为第四字符串,并将第四字符串作为第一认证信息。
其中,在本发明实施例中,预设第一位数和第二位数之和可以与连接信息包括的字符位数相等。相应地,第二设备从连接信息中截取的预设第一位数的第一字符串后得到剩下的字符串,该剩下的字符串的位数为预设第二位数,可以将剩下预设第二位数的字符串作为第四字符串。例如,预设第一位数为6,所以预设第二位数为2,第二设备从连接信息“12345678”中截取预设第一位数的第一字符串“123456”后得到剩下预设第二位数的字符串“78”,第一设备可以将剩下预设第二位数的字符串“78”作为第四字符串。
第二、将第四字符串与第二预设字符串组成第一认证信息。
例如,假设第四字符串为“1234”,第二预设字符串为“9860”,将第 四字符串与第二预设字符串组成的第二认证信息为“12349860”或“98601234”。
第三、对第四字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第二位数的字符串作为第一认证信息,或者,将该哈希结果确定为第一认证信息。
第四、根据第四字符串和第二设备采用的认证方式,生成第一认证信息。
具体地,根据第二设备采用的认证方式,确定认证信息的位数;根据确定的位数对第四字符串进行填充信息或截取信息得到第二认证信息;例如,第四字符串为“1234”,假设第二设备采用的WPS(Wi-Fi(WIreless-FIdelity,无线保真)Protected Setup,Wi-Fi安全设置)认证方式,根据WPS认证方式,确定认证信息的位数为8位数字,对第四字符串“1234”填充信息“9988”得到第一认证信息为“12349988”,再如,假设,第二设备采用的四步握手认证方式,根据四步握手认证方式,确定认证信息的位数为256比特,而第四字符串“1234”包括32比特,因此对第四字符串填充224比特,得到256比特的第一认证信息。或者,
根据第二设备采用的认证方式,确定认证信息的位数;对第四字符串进行哈希运算得到哈希结果,根据确定位数对该哈希结果进行填充信息或截取信息得到第二认证信息;例如,第四字符串为“1234”,对第四字符串“1234”进行哈希运算得到哈希结果为“98765432111”,假设第二设备采用的WPS认证方式,根据WPS认证方式,确定认证信息的位数为8数字,从该哈希结果中截取8位数字“98765432”作为第一认证信息;再如,假设,第二设备采用的四步握手认证方式,根据四步握手认证方式,确定认证信息的位数为256比特,而该哈希结果为“98765432111”包括88比特,因此对该哈希结果填充168比特,得到256比特的第一认证信息。
步骤212:第一设备根据该连接消息的第二部分信息生成第二认证信息。
具体地,本步骤可以通过如下第一和第二两种方式来实现,包括:
第一、第一设备对该连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据第二哈希结果生成第二认证信息。
本实施方式与第二设备生成第一认证信息的第一种方式的过程相同, 在此不再详细说明。
第二、第一设备向该连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据第二构造信息生成第二认证信息。
本实施方式与第二设备生成第一认证信息的第二种方式的过程相同,在此不再详细说明。
其中,第一设备除了可以按上述第一和第二两种方式生成第二认证信息外,还可以采用其他方式来生成第二认证信息。例如,第一设备从该连接信息中截取预设第二位数的字符串作为第三字符串,根据第三字符串生成第二认证信息;或者,将整个连接信息确定为第二认证信息。
其中,第一设备根据第三字符串生成第二认证信息的方式,包括如下几种:
第一、将第三字符串确定为第二认证信息。
例如,假设预设第二位数为4,第一设备从连接信息“12345678”中截取前4位字符串“1234”或后4位字符串“5678”作为第三字符串,并将第三字符串作为第二认证信息。
其中,在本发明实施例中,预设第一位数和第二位数之和可以与连接信息包括的字符位数相等。相应地,第一设备从连接信息中截取的预设第一位数的第二字符串后得到剩下的字符串,该剩下的字符串的位数为预设第二位数,可以将剩下预设第二位数的字符串作为第三字符串。例如,预设第一位数为6,所以预设第二位数为2,第一设备从连接信息“12345678”中截取预设第一位数的第二字符串“123456”后得到下下预设第二位数的字符串“78”,第一设备可以将剩下预设第二位数的字符串“78”作为第三字符串。
第二、将第三字符串与第二预设字符串组成第二认证信息。
例如,假设第三字符串为“1234”,第二预设字符串为“9860”,将第三字符串与第二预设字符串组成的第一认证信息为“12349860”或“98601234”。
第三、对第三字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第二位数的字符串作为第一认证信息,或者,将该哈希结果确定为第二认证信息。
第四、根据第三字符串和第一设备采用的认证方式,生成第二认证信 息。
步骤213:第一设备验证第二设备的第一认证信息与其第二认证信息是否匹配,如果匹配,则向第二设备发送确认信息,该确认信息用于第二设备确定与第一设备建立无线连接。
当第一设备采用四步骤握手认证方式时,本步骤可以为:第一设备将第二认证信息确定为四步握手认证方式的PMK(Pairwise Master Key,成对主密钥),根据该PMK并通过该四步握手认证方式验证第二设备的第一认证信息与其第二认证信息是否匹配。
当第一设备采用WPS认证方式时,本步骤可以为:第一设备将第二认证信息确定为WPS认证方式的PIN(Personal Identification Number,个人识别码),根据该PIN并通过WPS认证方式验证第二设备的第一认证信息与其第二认证信息是否匹配。
其中,在第一设备验证的过程中,第二设备与第一设备进行验证,以使第一设备确定第二设备的第一认证信息与第一设备的第二认证信息是否匹配。具体实现为:第二设备将第一认证信息作为四步握手认证方式的PMK,根据该PMK并通过四步握手认证方式与第一设备进行认证;或者,将第一认证信息作为WPS认证PIN,根据该PIN并通过WPS认证方式与第一设备进行验证。
其中,第二设备在验证的过程中,当接收到第一设备发送的确认信息后,根据该确认信息确定出与第一设备建立无线连接,然后执行步骤214。
第一设备通过第一认证信息以及第二设备通过第二认证信息进行相互间的认证,如此并在相互之间认证通过后,第一设备和第二设备才建立相互间的无线连接,保证第一设备和第二设备之间的建立的无线连接为安全连接。
步骤214:第一设备建立与第二设备之间的数据连接,以实现建立与第二设备之间的无线连接。
其中,第一设备建立与第二设备之间的无线连接可以为Wi-Fi连接或蓝牙连接。第一设备和第二设备建立完无线连接后,可以通过建立的无线连接传输数据。
在本发明实施例中,当第一设备确定出第一标识与第二标识匹配时,第一设备可以直接与第二设备进行开放认证,并在认证通过后建立与第二 设备之间的数据连接,如此实现建立与第二设备之间的无线连接。
在本发明实施例中,第一设备生成连接信息并提供给第二设备,第二设备根据该连接信息生成第一标识,向第一设备发送携带第一标识的Probe request消息,第一设备根据该连接信息生成第二标识,如果第一标号与第二标识匹配,则建立与第二设备之间的无线连接。其中第二设备通过用户手工输入或其他方式获得由第一设备生成的连接信息,并根据连接信息生成第一标识,通过第一标识确定需要连接的设备,从而避免用户手工选择需要连接的设备,从而提高了建立无线连接的效率,以提高数据传输的效率。第一设备与第二设备还通过第一认证信息和第二认证信息进行相互之间的认证,从而使得建立的无线连接为更加安全,提高了数据传输的安全性。
本发明实施例提供了一种用于建立无线连接的方法。在本发明实施例中,第二设备和第一设备以AP-STA模式建立无线连接,其中,第二设备的身份为STA,第一设备的身份为AP,第一设备根据自身存储的第二标识和第二认证信息生成连接信息并提供给第二设备,第二设备根据该连接信息计算生成第一标识,向第一设备发送Probe request消息,该Probe request消息的SSID字段携带第一标识;第一设备当确定出第一标识与第二标标识匹配时,建立与第二设备之间的无线连接。参见图3,该方法包括:
步骤301:第一设备根据第二标识生成连接信息的第一部分信息。
其中,在执行本步骤之前,技术人员可以在第一设备中设置第二标识或者由第一设备生成第二标识并存储生成的第二标识。
例如:可以通过人为设置第二标识的生成规则,第一设备根据该生成规则生成第二标识;或者,可以设置第二标识的标识资源库,第一设备在该资源库中随机选择一个标识作为第二标识,或者,可以通过人为设置第二标识。
例如,第一设备可以按如下方式生成第二标识,包括:第一设备生成连接信息,向连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据第一构造信息生成第二标识。可以对第一构造信息进行反转置换或移位处理得到第二标识。
假设,生成的连接信息为“12345678”,该连接信息的第一部分信息为 “1234”,第一预设信息为“hua”,则第一设备向连接信息的第一部分信息“1234”添加第一预设信息“hua”得到的第一构造信息可以为“1234hua”、“hua1234”或“12hua34”等。假设,构造的第一构造信息为“1234hua”,对第一构造信息进行反转置换处理得到的第一标识为“auh4321”;或,事先设置移位的位数,该位数可以为二或三等,然后对第一构造信息进行两位移位处理或三位移位处理等,如当对第一构造信息进行两位移位处理得到的第一标识为“ua1234h”,当对第一构造信息进行三位移位处理得到的第一标识为“hua1234”。
本步骤可以为,第一设备对第二标识进行截取得到部分信息,将截取的该部分信息确定为连接信息的第一部分信息;或者,对第二标识进行第一运算处理得到连接信息的第一部分信息,第一运算处理为生成第二标识的逆运算。
其中,可以按如下(1)和(2)两步对第二标识进行第一运算处理得到连接信息的第一部分信息,包括:
(1):根据第二标识生成第一构造信息。
可以对第二标识进行正转置换处理得到第一构造信息或对第二标识进行反向移位得到第一构造信息,反向移位与对第一构造信息进行移位处理得到第二标识的移位方向相反。例如,假设第一标识为“auh4321”,对第一标识“auh4321”进行正转置换处理得到第一构造信息为“1234hua”;或者,假设第一标识为“ua1234h”,对第一标识“ua1234h”进行反向移位两位得到第一构造信息“1234hua”;或者,假设第一标识为“hua1234”,对第一标识“hua1234”进行反向移位三位得到第一构造信息为“1234hua”。
(2):从第一构造信息中去除第一预设信息得到该连接信息的第一部分信息。
例如,第一预设信息为“hua”,从第一构造信息“1234hua”中去除第一预设信息“hua”得到该连接信息的第一部分信息为“1234”。
加分支:
又例如,第一设备还可以按如下的方式生成第二标识,包括:第一设备生成包含预设信息和随机信息的第二标识,例如,第二标识的第一部分标识为厂家标识或设备型号标识或设备地址标识或者预设字段或者应用标识等,第二部分标识为随机生成的预设长度的数字或字符;
第一设备可以对第二标识进行截取获得连接信息的第一部分信息,或者对第二标识进行截取后再进行转化运算得到连接信息的第一部分信息,例如,以第二标识的第一部分标识为应用标识为例进行说明,该应用标识为所述第一设备的系统应用的标识,或者由该应用的标识截取获得的部分内容作为应用标识。假设第一设备的应用标识为DC9B9CBAAE0D,则截取以“AE0D”作为第一部分标识,假设随机生成第二部分标识为“1234”,那么第二标识为“AE0D1234”。可以对第二标识截取后4位“1234”作为连接信息的第一部分信息;或者对第二标识截取后4位“1234”再进行反转或倒置等可逆转化运算得到所述连接信息的第一部分信息。
步骤302:第一设备根据第二认证信息生成该连接信息的第二部分信息。
其中,在执行本步骤之前,技术人员可以在第一设备中设置第二认证信息或者由第一设备生成第二认证信息并存储生成的第二认证信息。
例如:可以通过人为设置第二认证信息的生成规则,第一设备根据该生成规则生成第二认证信息;或者,可以设置第二认证信息的标识资源库,第一设备在该资源库中随机选择一个标识作为第二认证信息,或者,可以通过人为设置第二认证信息。
例如,第一设备可以按如下方式生成第二认证信息,包括:第一设备生成连接信息,向连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据第二构造信息生成第二认证信息。可以对第二构造信息进行反转置换或移位处理得到第二认证信息。
假设,生成的连接信息为“12345678”,该连接信息的第一部分信息为“5678”,第二预设信息为“wei”,则第一设备向连接信息的第二部分信息“5678”添加第二预设信息“wei”得到的第二构造信息可以为“5678wei”、“wei5678”或“56wei78”等。假设,构造的第二构造信息为“5678wei”,对第二构造信息进行反转置换处理得到的第二认证信息为“iew5678”;或,事先设置移位的位数,该位数可以为二或三等,然后对第二构造信息进行两位移位处理或三位移位处理等,如当对第二构造信息进行两位移位处理得到的第二认证信息为“ei5678w”,当对第二构造信息进行三位移位处理得到的第二认证信息为“wei5678”。
本步骤可以为,第一设备对第二认证信息进行截取得到部分信息,将 截取的该部分信息确定为连接信息的第二部分信息;或者,对第二认证信息进行第二运算处理得到连接信息的第二部分信息,第二运算处理为生成第二认证信息的逆运算。
其中,可以按如下(1)和(2)两步对第二认证信息进行第二运算处理得到连接信息的第二部分信息,包括:
(1):根据第二认证信息生成第二构造信息。
可以对第二认证信息进行正转置换处理得到第二构造信息或对第二认证信息进行反向移位得到第二构造信息。例如,假设第二认证信息为“iew4321”,对第二认证信息“iew4321”进行正转置换处理得到第二构造信息为“5678wei”;或者,假设第二认证信息为“ei5678w”,对第二认证信息“ei5678w”进行反向移位两位得到第二构造信息“5678wei”;或者,假设第二认证信息为“wei5678”,对第二认证信息“wei5678”进行反向移位三位得到第二构造信息为“5678wei”。
(2):从第二构造信息中去除第二预设信息得到该连接信息的第二部分信息。
例如,第二预设信息为“wei”,从第二构造信息“5678wei”中去除第二预设信息“wei”得到该连接信息的第二部分信息为“5678”。
又例如,第一设备还可以按如下的方式生成第二认证信息,包括:第一设备生成包含预设信息和随机信息的第二认证信息,例如,第二认证信息的第一部分标识为厂家标识或设备型号标识或设备地址标识或者预设字段或者应用标识等,第二部分标识为随机生成的预设长度的数字或字符;
第一设备可以对第二认证信息进行截取获得连接信息的第二部分信息,或者对第二认证信息进行截取后再进行转化运算得到连接信息的第二部分信息,例如,以第二认证信息的第一部分标识为设备地址标识为例进行说明,该设备地址标识为所述第一设备的无线局域网物理地址,如MAC地址,或者为所述第一设备的临时地址,如接口地址,或者为由前述的地址进行截取获得的部分内容作为设备地址标识。假设第一设备的无线局域为DC:9B:9C:BA:AE:0D,则截取以“AE0D”作为第一部分标识,假设随机生成第二部分标识为“1234”,那么第二认证信息为“AE0D1234”。可以对第二认证信息截取后4位“1234”作为连接信息的第一部分信息;或者对第二认证信息截取后4位“1234”再进行反转或倒置等可逆转化运算得 到所述连接信息的第二部分信息。
又例如,第一设备还可以生成预设长度的随机数字或字符作为第二认证信息,并对第二认证信息进行转化得到连接信息的第二部分信息。例如,第一设备生成4位数字,并对该4位数字进行倒置或转换或添加预设字段等可逆转换运算得到连接信息的第二部分信息,如生成“8765”,对其进行倒置得到“5678”作为连接信息第二部分信息;或者第一部分生成8位数字,并利用第一设备设备的应用标识生成的加密密钥对该8位数字进行加密,根据加密后的结果得到连接信息的第二部分信息。
步骤303:第一设备根据第一部分信息和第二部分信息构造连接信息。
将前述第一部分信息与第二部分信息进行拼接得到连接信息,如以第一部分信息为“1234”,第二部分信息为“5678”为例,将第一部分信息“1234”与第二部分信息“5678”进行拼接得到“12345678”作为连接信息。
其中,在本发明实施例中,第一设备可以在其对应的第一用户的触发下按上述301至303的步骤生成连接信息。具体有如下两种触发方式,包括:
第一、第一设备检测到系统应用的应用界面中的连接接口被第一用户点击触发的连接命令时,执行上述步骤301至303。
其中,在具有传输数据需求的系统应用的应用界面中设置一连接接口,当第一用户需要传输数据时,可以点击该连接接口,以使该连接接口触发连接命令。系统应用可以为具有图片分享功能的图片拍照应用或具有视频分享功能的视频拍摄应用。
例如,参见图2-2所示的系统应用的应用界面,该系统应用是一个图片拍照应用,图片拍照应用拍摄一张图片并显示在应用界面中,在应用界面的上方有一连接接口,第一用户点击该连接接口,该连接接口触发连接命令。第一设备当检测出该连接接口触发的连接命令时,执行上述步骤301至303生成连接信息,假设生成的连接信息为“12345678”,如图2-3所示。
第二、第一设备检测到第三方应用的应用界面中的连接接口被第一用户点击触发的连接命令时,执行上述步骤301至303生成连接信息,第三方应用为用于建立无线连接的应用。
其中,在第一设备上安装一个用于建立无线连接的第三方应用,第三方应用的应用界面中包含连接接口。当第一用户需要传输数据时,可以点 击该连接接口,以使连接接口触发连接命令。
例如,参见图2-4所示的第三方应用的应用界面,在该应用界面中有一连接接口,第一用户点击该连接接口,该连接接口触发连接命令。第一设备当检测出该连接接口触发的连接命令时,执行上述步骤301至303生成连接信息,假设生成的连接信息为“12345678”,如图2-5。
步骤304:第一设备向第二设备提供该连接信息。
具体地,本步骤可以包括如下第一至第四四种实现方式,分别为:
第一、第一设备显示该连接信息。
其中,第二设备对应的第二用户可以查看第一设备显示的该连接信息,并将该连接信息输入给第二设备。
第二、第一设备通过音箱播放该连接信息。
其中,第二用户可以收听第一设备播放的该连接信息,并将该连接信息输入给第二设备。
第三、第一设备根据该连接信息生成包含该连接信息的图形码,显示该图形码。
该图形码可以为一维码或二维码,第一设备可以使用用于生成图形码的编码算法对该连接信息进行编码,以生成包含该连接信息的图形码。
其中,第二设备具有扫描模块,该扫描模块可以为摄像头或扫描仪等。第一设备显示该图形码之后,第二设备可以通过其包括的扫描模块扫描第一设备显示的该图形码并获得该连接信息。
第四、第一设备与第二设备建立短距离通信连接,通过该短距离通信连接向第二设备发送该连接信息。
其中,第一设备可以通过带外通信方式与第二设备建立短距离通信连接。带外通信方式可以为声波、红外、NFC或HotKnot等通信方式。
其中,在本发明实施例中,第一设备可以为一终端设备或AP。当第一设备为终端设备时,在执行本步骤之前,第一设备将自身的身份设置为AP,然后再执行本步骤。第一设备成为AP后,也可以主动广播Beacon消息,向周围的STA告知自身的存在。接收该Beacon消息的设备根据该Beacon消息确定第一设备为一AP并主动请求与第一设备建立连接,然后第一设备再执行本步骤。
步骤305:第二设备获取第一设备提供的该连接信息。
具体地,第二设备可以通过如下第一、第二和第三三种方式来获取该连接信息。
第一、第二设备接收第二用户输入的该连接信息。
其中,第一设备生成连接信息后显示该连接信息或者通过音箱播放该连接信息。第二用户可以查看或收听该连接信息,然后向第二设备输入该连接信息。
其中,第二设备可以通过如下(1)和(2)两种方式获取第二用户输入的连接信息,包括:
(1)、第二设备从系统应用的应用界面中获取第二用户输入的连接信息。
系统应用的应用界面中包含接收接口,第二用户点击该接收接口时,该接收接口触发接收命令。第二设备当检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,第二用户可以向该输入框输入查看到的连接信息或收听到的连接信息。
例如,第一设备显示连接信息“12345678”或通过音箱播放连接信息“12345678”,第二用户查看连接信息“12345678”或收听连接信息“12345678”。然后,第二用户在如图2-6所示的系统应用的应用界面中点击接收接口,该接收接口触发接收命令,第二设备检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,如图2-7所示,第二用户在该输入框输入该连接信息“12345678”。然后第二设备从该输入框中读取第二用户输入的连接信息“12345678”。
(2)、第二设备从第三方应用的应用界面中获取第二用户输入的连接信息。
第三方应用的应用界面中包含接收接口,第二用户点击该接收接口时,该接收接口触发接收命令。第二设备当检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,第二用户可以向该输入框输入查看到的连接信息或收听到的连接信息。
例如,第二用户在如图2-4所示的系统应用的应用界面中点击接收接口,该接收接口触发接收命令,第二设备检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,如图2-8所示,第二用户在该输入框输入该连接信息“12345678”。然后第二设备从该输入框中读取第二用户输入 的连接信息“12345678”。
第二、第二设备扫描第一设备显示的图形码,获取该图形码中包含的该连接信息。
其中,第二用户可以开启第二设备的扫描模块,然后第二设备通过扫描模块扫描第一设备显示的图形码,对扫描的图形码进行解析,解析出扫描的图形码中包含的连接信息。
第三、第二设备与第一设备建立短距离通信连接,通过该短距离通信连接接收第一设备发送的该连接信息。
其中,在本实施例中,第一设备生成一个连接信息,用户可以将该连接信息输入给第二设备,或通过第二设备扫描第一设备上包含该连接信息的图形码,或者将第二设备与第一设备靠近,以使第二设备短距离通信方式获得该连接信息,相比用户从大量的设备搜索结果中去找出第二设备的标识,本步骤可以节省第一设备进行设备搜索的时间以及用户寻找第二设备的标识的时间,从而可以缩短建立无线连接的时间。
步骤306:第二设备根据该连接信息包括的第一部分信息计算生成第一标识。
具体地,本步骤可以包括如下第一和第二两种实现方式,包括:
第一、第二设备对该连接信息的第一部分信息进行哈希运算得到第一哈希结果,根据第一哈希结果生成第一标识。
可以从第一哈希结果中截取部分信息作为第一标识,或,将截取的部分信息添加预设信息组成第一标识,或,将第一哈希结果作为第一标识等。
第二、第二设备向该连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据第一构造信息生成第一标识。
其中,可以对第一构造信息进行反转置换处理或移位处理来生成第一标识。例如,假设连接信息“12345678”的第一部分信息为“1234”,第一预设信息为“hua”,则第二设备向连接信息的第一部分信息“1234”添加第一预设信息“hua”得到的第一构造信息可以为“1234hua”、“hua1234”或“12hua34”等。
假设,构造的第一构造信息为“1234hua”,对第一构造信息进行反转置换处理得到的第一标识为“auh4321”;或,事先设置移位的位数,该位数可以为二或三等,然后对第一构造信息进行两位移位处理或三位移位处 理等,如当对第一构造信息进行两位移位处理得到的第一标识为“ua1234h”,当对第一构造信息进行三位移位处理得到的第一标识为“hua1234”。
第二设备生成第一标识的方式除了以上第一和第二两种外,还可以采用其他方式,例如,可以从该连接信息中截取预设第一位数的一串字符串作为第一字符串,根据第一字符串生成第一标识;或者,对整个连接信息进行哈希运算得到第一标识。
其中,第二设备根据第一字符串生成第一标识的实现方式,包括如下(1)至(4)四种:
(1)、将第一字符串确定为第一标识。
例如,预设第一位数为6,第二设备从连接信息“12345678”中截取前6位的字符串“123456”或后6位字符串“345678”作为第一字符串,将第一字符串“123456”或“345678”确定为第一标识。
(2)、将第一字符串与第一预设字符串组成第一标识。
例如,第一字符串为“123456”,第一预设字符串为“Huawei”,将第一字符串与第一预设字符串组成的第一标识为“123456Huawei”或“Huawei123456”。
(3)、对第一字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串作为第一标识。
(4)、对第一字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串,将截取的字符串与第一预设字符串组成第一标识。
本领域的技术人员可以理解,根据步骤301第一设备由第二标识生成连接信息的第一部分信息的转换过程可以知道,第二设备对获得的连接信息的第一部分信息进行相应的反向转换,可以得到与第二标识匹配的第一标识。
以第二标识为应用标识和随机生成部分构成的方案为例,例如当第二标识为步骤301中的“AE0D1234”,第二设备获得第一部分信息“1234”后,再获得其运行的相应系统应用的应用标识,由于第二设备与第一设备运行的系统应用相同,第二设备可得到应用标识为“AE0D”,通过拼接应 用标识和第一部分信息,即可得到第一标识为“AE0D1234”。
步骤307:第二设备发送Probe request消息,该Probe request消息的SSID字段携带第一标识。
其中,第二设备将自身的身份设置为STA,并发送Probe request消息,以请求与接收该Probe request消息的AP建立无线连接。第二设备可以广播该Probe request消息,或者,第二设备可以在接收到第一设备广播的Beacon消息后,从Beacon消息中获取第一设备的地址,根据第一设备的地址向第一设备单播该Probe request消息。
其中,参见图2-9所示的Probe request消息的结构,Probe request消息包括MAC头、帧体和FCS等部分,MAC头包括Addr_1和Addr_2等字段,Addr_1为接收方地址,Addr_2为发送方地址,帧体包括SSID等字段,SSID为AP的标识,FCS为校验字段,用于携带校验码。在本发明实施例中,第二设备将第一标识作为AP的标识,当第二设备广播Probe request消息时,该Probe request消息的Addr_1字段为空,当第二设备单播Probe request消息给第一设备时,该Probe request消息的Addr_1字段携带第一设备的MAC地址;在该两种情况下,该Probe request消息的Addr_2字段携带第二设备的MAC地址,SSID字段携带第一标识。
步骤308:第一设备接收该Probe request消息,该Probe request消息的SSID字段携带第一标识。
其中,只有AP才可以接收Probe request消息,所以在本发明实施例中第一设备为AP或将自身的身份设置为AP,然后接收第二设备发送的Probe request消息。
例如,第二设备发送Probe request消息,该Probe request消息的SSID字段携带第一标识“123456”,第一设备接收该Probe request消息。
步骤309:第一设备确定第一标识与第二标识是否匹配,如果匹配执行步骤310。
其中,第一标识与第二标识匹配是指第一标识与第二标识相等或者第一标识与第二标识之间存在对应关系。
其中,可以事先在第一设备设置标识关系列表,该标识关系列表用于存储具有对应关系的任意两标识。
相应地,第一设备可以通过如下方式来确定第一标识与第二标识是否 存在对应关系,包括:第一设备可以根据第一标识,从该标识关系列表中查找出对应的标识,如果查找出的标识与第二标识相等,则确定出第一标识与第二标识之间存在对应关系,否则,确定第一标识与第二标识之间不存在对应关系。
其中,在本发明实施例中,第二设备可以将第一标识作为需要与其建立无线连接的设备的标识,由于第一标识是对该连接信息的第一部分信息进行计算生成的,而第二标识与对第一部分信息进行计算生成的结果相等或相对应,所以当第一标识与第二标识匹配时,第一设备便可以自动发现第二设备为需要与自身建立无线连接的设备,实现第一设备和第二设备相互发现自己为需要与对方建立无线连接的设备,从而第一设备和第二设备可以快速发现对方,从而减少了建立无线连接所需要的时间。
步骤310:第一设备向第二设备发送Probe response消息,该Probe response消息用于第二设备确定与第一设备建立无线连接。
其中,第二设备发送Probe request消息,以请求与一AP建立无线连接,该AP的第一标识携带在该Probe request消息的SSID字段中。所以在本步骤中,当第一设备判断出第一标识与第二标识匹配,则第一设备可以获知第二设备请求与自身建立无线连接,从而确定需要与第二设备建立无线连接,向第二设备发送Probe response消息,以告知第二设备同意与其建立无线连接。
参见图2-10所示的Probe response消息结构,Probe response消息包括MAC头、帧体和FCS等部分,MAC头包括Addr_3和Addr_4等字段,Addr_3为接收方地址,Addr_4为发送方地址,帧体包括SSID等字段,SSID为AP的标识,FCS为校验字段,用于携带校验码。在本发明实施例中,该Probe respnse消息的Addr_3字段携带第二设备的MAC地址,Addr_4字段携带第一设备的MAC地址,SSID字段携带第二标识。
例如,假设第二设备发送的Probe request消息的SSID字段携带第一标识“123456”。第一设备接收该Probe request消息,生成的第二标识为“123456”,其中,第一标识“123456”和第二标识“123456”相同,所以第一标识与第二标识匹配,确定需要与第二设备建立无线连接,向第二设备发送Probe respone消息。
步骤311:第二设备接收该Probe request消息,根据该Probe request消 息确定与第一设备建立无线连接,执行步骤312。
步骤312:第二设备根据该连接信息的第二部分信息生成第一认证信息。
连接信息的第一部分信息的内容和第二部分信息的内容可以不同或者部分相同。例如,该连接信息为“12345678”,第一部分信息可以为“1234”,第二部分信息可以为“5678”,或者,第一部分信息可以为“123456”,第二部分信息可以为“345678”等。
具体地,本步骤可以通过如下第一和第二两种实现方式,包括:
第一、第二设备对该连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据第二哈希结果生成第二认证信息。
第二、第二设备向该连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据第二构造信息生成第一认证信息。
其中,第二设备除了可以采用上述第一和第二两种方式生成第一认证信息外,还可以采用其他的方式来生成第一认证信息。例如第二设备从该连接信息中截取预设第二位数的字符串作为第四字符串,根据第四字符串生成第一认证信息;或者,将该连接信息确定为第一认证信息。
其中,第二设备根据第四字符串生成第一认证信息的实现方式,包括如下几种:
第一、将第四字符串确定为第一认证信息。
例如,假设预设第二位数为4,第一设备从连接信息“12345678”中截取前4位字符串“1234”或后4位字符串“5678”作为第四字符串,并将第四字符串作为第一认证信息。
其中,在本发明实施例中,预设第一位数和第二位数之和可以与连接信息包括的字符位数相等。相应地,第二设备从连接信息中截取的预设第一位数的第一字符串后得到剩下的字符串,该剩下的字符串的位数为预设第二位数,可以将剩下预设第二位数的字符串作为第四字符串。例如,预设第一位数为6,所以预设第二位数为2,第二设备从连接信息“12345678”中截取预设第一位数的第一字符串“123456”后得到剩下预设第二位数的字符串“78”,第一设备可以将剩下预设第二位数的字符串“78”作为第四字符串。
第二、将第四字符串与第二预设字符串组成第一认证信息。
例如,假设第四字符串为“1234”,第二预设字符串为“9860”,将第四字符串与第二预设字符串组成的第二认证信息为“12349860”或“98601234”。
第三、对第四字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第二位数的字符串作为第二认证信息,或者,将该哈希结果确定为第一认证信息。
第四、根据第四字符串和第二设备采用的认证方式,生成第一认证信息。
具体地,根据第二设备采用的认证方式,确定认证信息的位数;根据确定位数对第四字符串进行填充信息或截取信息得到第二认证信息;例如,第四字符串为“1234”,假设第二设备采用的WPS认证方式,根据WPS认证方式,确定认证信息的位数为8数字,对第四字符串“1234”填充信息“9988”得到第一认证信息为“12349988”,再如,假设,第二设备采用的四步握手认证方式,根据四步握手认证方式,确定认证信息的位数为256比特,而第四字符串“1234”包括32比特,因此对第四字符串填充224比特,得到256比特的第一认证信息。或者,
根据第二设备采用的认证方式,确定认证信息的位数;对第四字符串进行哈希运算得到哈希结果,根据确定位数对该哈希结果进行填充信息或截取信息得到第二认证信息;例如,第四字符串为“1234”,对第四字符串“1234”进行哈希运算得到该哈希结果为“98765432111”,假设第二设备采用的WPS认证方式,根据WPS认证方式,确定认证信息的位数为8位数字,从该哈希结果中截取8位数字“98765432”作为第一认证信息;再如,假设,第二设备采用的四步握手认证方式,根据四步握手认证方式,确定认证信息的位数为256比特,而该哈希结果为“98765432111”包括88比特,因此对该哈希结果填充168比特,得到256比特的第一认证信息。
本领域的技术人员可以理解,根据步骤302第一设备由第二认证信息生成连接信息的第二部分信息的转换过程可以知道,第二设备对获得的连接信息的第二部分信息进行相应的反向转换,可以得到与第二认证信息匹配的第一认证信息。
例如,当第一设备是通过对生成的4位数字进行倒置得到连接信息的第二部分信息时,第二设备对第二部分信息进行再倒置即可得到第一认证 信息;当第一设备是通过利用第一设备设备的应用标识生成的加密密钥对生成的预设位数的第二认证信息进行加密,将加密后的结果作为连接信息的第二部分信息时,第二设备对第二部分信息利用应用标识进行解密,即可得到第一认证信息。
步骤313:第一设备验证第二设备的第一认证信息与其第二认证信息是否匹配,如果匹配,则向第二设备发送确认信息,该确认信息用于第二设备确定与第一设备建立无线连接。
其中,第一设备采用的认证方式可以为IEEE802.11中的四步握手认证方式、WFA(Wi-Fi Alliance,Wi-Fi联盟)规定的WPS认证方式或其他认证方式。每种认证方式规定了认证消息的格式,例如,四步握手认证方式规定认证消息为256比特组成的密钥信息,WPS认证方式规定认证消息为8位数字等。
当采用四步骤握手认证方式时,本步骤可以为:第一设备将第二认证信息确定为四步握手认证方式的PMK,根据该PMK并通过该四步握手认证方式验证第二设备的第一认证信息与其第二认证信息是否匹配。
当采用WPS认证方式时,本步骤可以为:第一设备将第二认证信息确定为WPS认证方式的PIN,根据该PIN并通过WPS认证方式验证第二设备的第一认证信息与其第二认证信息是否匹配。
其中,在第一设备验证的过程中,第二设备与第一设备进行验证,以使第一设备确定第二设备的第一认证信息与第一设备的第二认证信息是否匹配。具体实现为:第二设备将第一认证信息作为四步握手认证方式的PMK,根据该PMK并通过四步握手认证方式与第一设备进行认证;或者,将第一认证信息作为WPS认证PIN,根据该PIN并通过WPS认证方式与第一设备进行验证。
其中,第二设备在验证的过程中,当接收到第一设备发送的确认信息后,根据该确认信息确定出与第一设备建立无线连接,然后执行步骤314。
第一设备通过第一认证信息以及第二设备通过第二认证信息进行相互间的认证,并在相互之间认证通过后,第一设备和第二设备才建立相互间的无线连接,保证第一设备和第二设备之间的建立的无线连接为安全连接。
步骤314:第一设备建立与第二设备之间的数据连接,以实现建立与第 二设备之间的无线连接。
其中,第二设备建立与第一设备之间的无线连接为加密的无线连接,第二设备和第一设备可以通过该加密的无线连接来传输数据。该无线连接可以为Wi-Fi连接或蓝牙连接。
在本发明实施例中,第一设备生成连接信息并提供给第二设备,第二设备根据该连接信息生成第一标识,向第一设备发送携带第一标识的Probe request消息,第一设备确定自身存储的第二标识与第二设备的第一标识是否匹配,如果第一标号与第二标识匹配,则建立与第二设备之间的无线连接。其中第二设备通过用户手工输入或其他方式获得由第一设备生成的连接信息,并根据连接信息生成第一标识,通过第一标识确定需要连接的设备,从而避免用户手工选择需要连接的设备,从而提高了建立无线连接的效率,以提高数据传输的效率。第一设备与第二设备还通过第一认证信息和第二认证信息进行相互之间的认证,从而使得建立的无线连接为更加安全,提高了数据传输的安全性。
实施例4
本发明实施例提供了一种用于建立无线连接的方法。在本发明实施例中,第一设备和第二设备都为普通的Wi-Fi P2P(Peer to Peer,点对点)设备,第二设备和第一设备都通过广播Probe request消息探测周围的Wi-Fi P2P设备,当第二设备和第一设备探测到相互双方时,第一设备和第二设备进行GO协商,假设协商后第一设备成为GO。
然后,第一设备生成连接信息,向第二设备提供该连接信息,第二设备根据该连接信息生成第一标识,第一设备根据该连接信息生成第二标识,如果第一标识与第二标识匹配,则第一设备
建立与第二设备之间的无线连接。参见图4-1,该方法包括:
步骤401:第一设备生成连接信息。
连接信息可以为一串字符串,连接信息的内容可以为数字、字母或其他字符,或者可以为数字、字母和其他字符中任意多种字符的组合。第一设备可以随机生成一串字符串,将生成的字符串作为连接信息。
其中,在本发明实施例中,第一设备可以在其对应的第一用户的触发下生成连接信息。具体有如下两种触发方式,包括:
第一、第一设备检测到系统应用的应用界面中的连接接口被第一用户点击触发的连接命令时,生成连接信息。
其中,在具有传输数据需求的系统应用的应用界面中设置一连接接口,当第一用户需要传输数据时,可以点击该连接接口,以使该连接接口触发连接命令。系统应用可以为具有图片分享功能的图片拍照应用或具有视频分享功能的视频拍摄应用。
例如,参见图2-2所示的系统应用的应用界面,该系统应用是一个图片拍照应用,图片拍照应用拍摄一张图片并显示在应用界面中,在应用界面的上方有一连接接口,第一用户点击该连接接口,该连接接口触发连接命令。第一设备当检测出该连接接口触发的连接命令时,随机产生连接信息,假设产生的连接信息为“12345678”,如图2-3所示。
第二、第一设备检测到第三方应用的应用界面中的连接接口被第一用户点击触发的连接命令时,生成连接信息,第三方应用为用于建立无线连接的应用。
其中,在第一设备上安装一个用于建立无线连接的第三方应用,第三方应用的应用界面中包含连接接口。当第一用户需要传输数据时,可以点击该连接接口,以使连接接口触发连接命令。
例如,参见图2-4所示的第三方应用的应用界面,在该应用界面中有一连接接口,第一用户点击该连接接口,该连接接口触发连接命令。第一设备当检测出该连接接口触发的连接命令时,随机产生连接信息,假设产生的连接信息为“12345678”,如图2-5。
步骤402:第一设备向第二设备提供该连接信息。
具体地,本步骤可以包括如下第一至第四四种实现方式,分别为:
第一、第一设备显示该连接信息。
其中,第二设备对应的第二用户可以查看第一设备显示的该连接信息,并将该连接信息输入给第二设备。
第二、第一设备通过音箱播放该连接信息。
其中,第二用户可以收听第一设备播放的该连接信息,并将该连接信息输入给第二设备。
第三、第一设备根据该连接信息生成包含该连接信息的图形码,显示该图形码。
该图形码可以为一维码或二维码,第一设备可以使用用于生成图形码的编码算法对该连接信息进行编码,以生成包含该连接信息的图形码,如生成QR Code二维码。
其中,第二设备具有扫描模块,该扫描模块可以为摄像头或扫描仪等。第一设备显示该图形码之后,第二设备可以通过其包括的扫描模块扫描第一设备显示的该图形码并获得该连接信息。
第四、第一设备与第二设备建立短距离通信连接,通过该短距离通信连接向第二设备发送该连接信息。
其中,第一设备可以通过带外通信方式与第二设备建立短距离通信连接。带外通信方式可以为声波、红外、NFC或HotKnot等通信方式。
其中,在本实施例中,第一设备生成一个连接信息,用户可以将该连接信息输入给第二设备,或通过第二设备扫描第一设备上包含该连接信息的图形码,或者将第二设备与第一设备靠近,以使第二设备短距离通信方式获得该连接信息,相比用户从大量的设备搜索结果中去找出第二设备的标识,本步骤可以节省第一设备进行设备搜索的时间以及用户寻找第二设备的标识的时间,从而可以缩短建立无线连接的时间。
步骤403:第二设备获取第一设备提供的该连接信息。
具体地,第二设备可以通过如下第一、第二和第三三种方式来获取该连接信息。
第一、第二设备接收第二用户输入的该连接信息。
其中,第一设备生成连接信息后显示该连接信息或者通过音箱播放该连接信息。第二用户可以查看或收听该连接信息,然后向第二设备输入该连接信息。
其中,第二设备可以通过如下(1)和(2)两种方式获取第二用户输入的连接信息,包括:
(1)、第二设备从系统应用的应用界面中获取第二用户输入的连接信息。
系统应用的应用界面中包含接收接口,第二用户点击该接收接口时,该接收接口触发接收命令。第二设备当检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,第二用户可以向该输入框输入查看到的连接信息或收听到的连接信息。
例如,第一设备显示连接信息“12345678”或通过音箱播放连接信息“12345678”,第二用户查看连接信息“12345678”或收听连接信息“12345678”。然后,第二用户在如图2-6所示的系统应用的应用界面中点击接收接口,该接收接口触发接收命令,第二设备检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,如图2-7所示,第二用户在该输入框输入该连接信息“12345678”。然后第二设备从该输入框中读取第二用户输入的连接信息“12345678”。
(2)、第二设备从第三方应用的应用界面中获取第二用户输入的连接信息。
第三方应用的应用界面中包含接收接口,第二用户点击该接收接口时,该接收接口触发接收命令。第二设备当检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,第二用户可以向该输入框输入查看到的连接信息或收听到的连接信息。
例如,第二用户在如图2-4所示的系统应用的应用界面中点击接收接口,该接收接口触发接收命令,第二设备检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,如图2-8所示,第二用户在该输入框输入该连接信息“12345678”。然后第二设备从该输入框中读取第二用户输入的连接信息“12345678”。
第二、第二设备扫描第一设备显示的图形码,获取该图形码中包含的该连接信息。
其中,第二用户可以开启第二设备的扫描模块,然后第二设备通过扫描模块扫描第一设备显示的图形码,对扫描的图形码进行解析,解析出扫描的图形码中包含的连接信息。
第三、第二设备与第一设备建立短距离通信连接,通过该短距离通信连接接收第一设备发送的该连接信息。
步骤404:第二设备根据该连接信息包括的第一部分信息计算生成第一标识。
具体地,本步骤可以包括如下第一和第二两种实现方式,包括:
第一、第二设备对该连接信息的第一部分信息进行哈希运算得到第一哈希结果,根据第一哈希结果生成第一标识。
可以从第一哈希结果中截取部分信息作为第一标识,或,将截取的部 分信息添加预设信息组成第一标识,或,将第一哈希结果作为第一标识等。
第二、第二设备向该连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据第一构造信息生成第一标识。
其中,可以对第一构造信息进行反转置换处理或移位处理来生成第一标识。例如,假设连接信息“12345678”的第一部分信息为“1234”,第一预设信息为“hua”,则第二设备向连接信息的第一部分信息“1234”添加第一预设信息“hua”得到的第一构造信息可以为“1234hua”、“hua1234”或“12hua34”等。
假设,构造的第一构造信息为“1234hua”,对第一构造信息进行反转置换处理得到的第一标识为“auh4321”;或,事先设置移位的位数,该位数可以为二或三等,然后对第一构造信息进行两位移位处理或三位移位处理等,如当对第一构造信息进行两位移位处理得到的第一标识为“ua1234h”,当对第一构造信息进行三位移位处理得到的第一标识为“hua1234”。
第二设备生成第一标识的方式除了以上第一和第二两种外,还可以采用其他方式,例如,可以从该连接信息中截取预设第一位数的一串字符串作为第一字符串,根据第一字符串生成第一标识;或者,对整个连接信息进行哈希运算得到第一标识。
其中,第二设备根据第一字符串生成第一标识的实现方式,包括如下(1)至(4)四种:
(1)、将第一字符串确定为第一标识。
例如,预设第一位数为6,第二设备从连接信息“12345678”中截取前6位的字符串“123456”或后6位字符串“345678”作为第一字符串,将第一字符串“123456”或“345678”确定为第一标识。
(2)、将第一字符串与第一预设字符串组成第一标识。
例如,第一字符串为“123456”,第一预设字符串为“Huawei”,将第一字符串与第一预设字符串组成的第一标识为“123456Huawei”或“Huawei123456”。
(3)、对第一字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串作为第一标识。
(4)、对第一字符串进行哈希运算得到哈希结果,从该哈希结果中截 取预设第一位数的字符串,将截取的字符串与第一预设字符串组成第一标识。
步骤405:第二设备发送Probe request消息,该Probe request消息的保留字段携带第一标识。
其中,第二设备的身份设置为Wi-Fi P2P设备,发送Probe request消息,以请求与接收该Probe request消息的Wi-Fi P2P设备建立无线连接。第二设备可以广播该Probe request消息,或者,第二设备可以在接收到第一设备广播的Probe Request消息后,从Probe Request消息中获取第一设备的地址,根据第一设备的地址向第一设备单播该Probe request消息。
其中,参见图4-2所示的Probe request消息的结构,Probe request消息包括MAC头、帧体和FCS等部分,MAC头包括Addr_1和Addr_2等字段,Addr_1为接收方地址,Addr_2为发送方地址,帧体包括SSID字段和保留字段Vendor specific等,SSID字段用于携带标识,FCS为校验字段,用于携带校验码。在本发明实施例中,第二设备将第一标识作为GO的标识,当第二设备广播Probe request消息时,该Probe request消息的Addr_1字段为空,当第二设备单播Probe request消息给第一设备时,该Probe request消息的Addr_1字段携带第一设备的MAC地址;在该两种情况下,该Probe request消息的Addr_2字段携带第二设备的MAC地址,保留字段携带第一标识,而SSID字段为空。另外,在P2P协议中,定义了P2P IE(信息元素)以携带与P2P连接相关的内容,在该P2P IE中可以携带多个Attribute(属性)。该部分Attribute中包含有保留字段,可以用于携带自定义的消息。
步骤406:第一设备接收该Probe request消息,该Probe request消息的保留字段携带第一标识。
例如,第二设备发送Probe request消息,该Probe request消息的保留字段携带第一标识“123456”,第一设备接收该Probe request消息。
步骤407:第一设备根据该连接信息的第一部分信息计算生成第二标识,其中,第一设备将第二标识作为其自身的标识。
具体地,第一设备可以通过如下第一和第二两种方式计算生成第二标识,包括:
第一、第一设备对该连接信息的第一部分信息进行哈希运算得到第一哈希结果,根据第一哈希结果生成第二标识。
本实施方式与第二设备生成第一标识的第一种方式相同,详细过程可以参见第二设备生成第一标识的第一种方式,在此不再详细说明。
第二、第一设备向该连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据第二构造信息生成第二标识。
本实施方式与第二设备生成第一标识的第二种方式相同,详细过程可以参见第二设备生成第一标识的第二种方式,在此不再详细说明。
对所述连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据所述第一构造信息获得所述第一设备的第二标识;
第一设备生成第二标识的方式除了以上第一和第二两种外,还可以采用其他方式,例如,可以从该连接信息中截取预设第一位数的字符串作为第二字符串,根据第二字符串生成第二标识;或者,对整个该连接信息进行哈希运算得到第二标识。
其中,需要说明的是:第一设备也可以在生成连接信息之后且在接收Probe request消息之前按本步骤生成第二标识。
其中,第一设备根据第二字符串生成第二标识的实现方式,包括如下(1)至(4)四种:
(1)、将第二字符串确定为第二标识。
例如,预设第一位数为6,第一设备从连接信息“12345678”中截取前6位的字符串“123456”或后6位字符串“345678”作为第二字符串,将第二字符串“123456”或“345678”确定为第二标识。
(2)、将第二字符串与第一预设字符串组成第二标识。
例如,假设,第二字符串为“123456”,第一预设字符串为“Huawei”,将第二字符串与第一预设字符串组成的第二标识为“123456Huawei”或“Huawei123456”。
(3)、对第二字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串作为第二标识。
(4)、对第二字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串,将截取的字符串与预设字符串组成第二标识。
步骤408:第一设备确定第一标识与第二标识是否匹配,如果匹配执行步骤409。
其中,第一标识与第二标识匹配是指第一标识与第二标识相等或者第 一标识与第二标识之间存在对应关系。
其中,可以事先在第一设备设置标识关系列表,该标识关系列表用于存储具有对应关系的任意两标识。
相应地,第一设备可以通过如下方式来确定第一标识与第二标识是否存在对应关系,包括:第一设备可以根据第一标识,从该标识关系列表中查找出对应的标识,如果查找出的标识与第二标识相等,则确定出第一标识与第二标识之间存在对应关系,否则,确定第一标识与第二标识之间不存在对应关系。
其中第二设备通过用户手工输入或其他方式获得由第一设备生成的连接信息,并根据连接信息生成第一标识,通过第一标识确定需要连接的设备,从而避免用户手工选择需要连接的设备,从而提高了建立无线连接的效率。
步骤409:第一设备向第二设备发送Probe response消息,该Probe response消息用于第二设备确定与第一设备建立无线连接。
其中,第二设备发送Probe request消息,以请求与另一个P2P设备建立无线连接,该P2P设备的第一标识携带在该Probe request消息的保留字段中。所以在本步骤中,当第一设备判断出第一标识与第二标识匹配,则第一设备可以获知第二设备请求与自身建立无线连接,从而确定需要与第二设备建立无线连接,向第二设备发送Probe response消息,以告知第二设备同意与其建立无线连接。
例如,假设第二设备发送的Probe request消息的保留字段携带第一标识“123456”。第一设备接收该Probe request消息,生成的第二标识为“123456”,其中,第一标识“123456”和第二标识“123456”相同,所以第一标识与第二标识匹配,确定需要与第二设备建立无线连接,向第二设备发送Probe respone消息。
步骤410:第二设备接收该Probe response消息,根据该Probe response消息确定与第一设备建立无线连接,执行步骤411。
步骤411:第二设备根据该连接信息的第二部分信息生成第一认证信息。
连接信息的第一部分信息的内容和第二部分信息的内容可以不同或者部分相同。例如,该连接信息为“12345678”,第一部分信息可以为“1234”, 第二部分信息可以为“5678”,或者,第一部分信息可以为“123456”,第二部分信息可以为“345678”等。
具体地,本步骤可以通过如下第一和第二两种实现方式,包括:
第一、第二设备对该连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据第二哈希结果生成第一认证信息。
例如,对连接信息“12345678”的第二部分信息“5678”进行SHA-256哈希算法的哈希,得到第二哈希结果为“6BAA0BD18BCC1E5237B70DC18595A7DEFF11CD27120CDC96A678003F8B162941”,根据第二设备采用的认证方式对第二哈希结果进行截取或补充等处理得到该认证方式所需要的位数的第一认证信息。
第二设备采用的认证方式可以包括四步握手认证方式。WPS认证方式或其他认证方式。其中,每种认证方式规定了认证消息的格式,例如,四步握手认证方式规定认证消息为256比特组成的密钥信息,WPS认证方式规定认证消息为8位数字等。
例如,当第二设备采用四步握手认证时,将第二哈希结果包括32个字符,正好为256比特,因此将第二哈希结果作为第一认证信息。当第二设备采用WPS认证时,截取最后8位“8F162941”,并将“F”映射至数字“6”得到“86162941”作为第一认证信息。
第二、第二设备向该连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据第二构造信息生成第一认证信息。
例如,当第二设备采用四步握手认证时,对连接信息“12345678”的第二部分信息“5678”转换为二进制“1011000101110”,然后在“1011000101110”左侧添加243bit的“0”得到256bit位的第一认证信息;或在“1011000101110”右侧添加243bit的“1”得到256bit位的第一认证信息;
当第二设备采用WPS认证时,对连接信息“12345678”的第二部分信息“5678”左侧或右侧添加4位“8888”或“0000”等得到8位数字作为第一认证信息。
需要说明的是,当第二部分信息位数满足第二设备采用的认证方式所要求的认证信息位数时,也可以直接将第二部分信息作为第一认证信息。
其中,第二设备除了可以采用上述第一和第二两种方式生成第一认证 信息外,还可以采用其他的方式来生成第一认证信息。例如第二设备从该连接信息中截取预设第二位数的字符串作为第四字符串,根据第四字符串生成第一认证信息;或者,将该连接信息确定为第一认证信息。
其中,第二设备根据第四字符串生成第一认证信息的实现方式,包括如下几种:
第一、将第四字符串确定为第一认证信息。
例如,假设预设第二位数为4,第一设备从连接信息“12345678”中截取前4位字符串“1234”或后4位字符串“5678”作为第四字符串,并将第四字符串作为第一认证信息。
其中,在本发明实施例中,预设第一位数和第二位数之和可以与连接信息包括的字符位数相等。相应地,第二设备从连接信息中截取的预设第一位数的第一字符串后得到剩下的字符串,该剩下的字符串的位数为预设第二位数,可以将剩下预设第二位数的字符串作为第四字符串。例如,预设第一位数为6,所以预设第二位数为2,第二设备从连接信息“12345678”中截取预设第一位数的第一字符串“123456”后得到剩下预设第二位数的字符串“78”,第一设备可以将剩下预设第二位数的字符串“78”作为第四字符串。
第二、将第四字符串与第二预设字符串组成第一认证信息。
例如,假设第四字符串为“1234”,第二预设字符串为“9860”,将第四字符串与第二预设字符串组成的第二认证信息为“12349860”或“98601234”。
第三、对第四字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第二位数的字符串作为第二认证信息,或者,将该哈希结果确定为第一认证信息。
第四、根据第四字符串和第二设备采用的认证方式,生成第一认证信息。
具体地,根据第二设备采用的认证方式,确定认证信息的位数;根据确定位数对第四字符串进行填充信息或截取信息得到第二认证信息;例如,第四字符串为“1234”,假设第二设备采用的WPS认证方式,根据WPS认证方式,确定认证信息的位数为8位数字,对第四字符串“1234”填充信息“9988”得到第一认证信息为“12349988”,再如,假设,第二设备采用 的四步握手认证方式,根据四步握手认证方式,确定认证信息的位数为256比特,而第四字符串“1234”包括32比特,因此对第四字符串填充224比特,得到256比特的第一认证信息。或者,
根据第二设备采用的认证方式,确定认证信息的位数;对第四字符串进行哈希运算得到哈希结果,根据确定位数对该哈希结果进行填充信息或截取信息得到第二认证信息;例如,第四字符串为“1234”,对第四字符串“1234”进行哈希运算得到哈希结果为“98765432111”,假设第二设备采用的WPS认证方式,根据WPS认证方式,确定认证信息的位数为8数字,从该哈希结果中截取8位数字“98765432”作为第一认证信息;再如,假设,第二设备采用的四步握手认证方式,根据四步握手认证方式,确定认证信息的位数为256比特,而该哈希结果为“98765432111”包括88比特,因此对该哈希结果填充168比特,得到256比特的第一认证信息。
步骤412:第一设备根据该连接消息的第二部分信息生成第二认证信息。
具体地,本步骤可以通过如下第一和第二两种方式来实现,包括:
第一、第一设备对该连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据第二哈希结果生成第二认证信息。
本实施方式与第二设备生成第一认证信息的第一种方式的过程相同,在此不再详细说明。
第二、第一设备向该连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据第二构造信息生成第二认证信息。
本实施方式与第二设备生成第一认证信息的第二种方式的过程相同,在此不再详细说明。
其中,第一设备除了可以按上述第一和第二两种方式生成第二认证信息外,还可以采用其他方式来生成第二认证信息。例如,第一设备从该连接信息中截取预设第二位数的字符串作为第三字符串,根据第三字符串生成第二认证信息;或者,将整个连接信息确定为第二认证信息。
其中,第一设备根据第三字符串生成第二认证信息的方式,包括如下几种:
第一、将第三字符串确定为第二认证信息。
例如,假设预设第二位数为4,第一设备从连接信息“12345678”中截 取前4位字符串“1234”或后4位字符串“5678”作为第三字符串,并将第三字符串作为第二认证信息。
其中,在本发明实施例中,预设第一位数和第二位数之和可以与连接信息包括的字符位数相等。相应地,第一设备从连接信息中截取的预设第一位数的第二字符串后得到剩下的字符串,该剩下的字符串的位数为预设第二位数,可以将剩下预设第二位数的字符串作为第三字符串。例如,预设第一位数为6,所以预设第二位数为2,第一设备从连接信息“12345678”中截取预设第一位数的第二字符串“123456”后得到下下预设第二位数的字符串“78”,第一设备可以将剩下预设第二位数的字符串“78”作为第三字符串。
第二、将第三字符串与第二预设字符串组成第二认证信息。
例如,假设第三字符串为“1234”,第二预设字符串为“9860”,将第三字符串与第二预设字符串组成的第一认证信息为“12349860”或“98601234”。
第三、对第三字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第二位数的字符串作为第一认证信息,或者,将该哈希结果确定为第二认证信息。
第四、根据第三字符串和第一设备采用的认证方式,生成第二认证信息。
步骤413:第一设备验证第二设备的第一认证信息与其第二认证信息是否匹配,如果匹配,则向第二设备发送确认信息,该确认信息用于第二设备确定与第一设备建立无线连接。
当第一设备采用四步骤握手认证方式时,本步骤可以为:第一设备将第二认证信息确定为四步握手认证方式的PMK,根据该PMK并通过该四步握手认证方式验证第二设备的第一认证信息与其第二认证信息是否匹配。
当第一设备采用WPS认证方式时,本步骤可以为:第一设备将第二认证信息确定为WPS认证方式的PIN,根据该PIN并通过WPS认证方式验证第二设备的第一认证信息与其第二认证信息是否匹配。
其中,在第一设备验证的过程中,第二设备与第一设备进行验证,以使第一设备确定第二设备的第一认证信息与第一设备的第二认证信息是否 匹配。具体实现为:第二设备将第一认证信息作为四步握手认证方式的PMK,根据该PMK并通过四步握手认证方式与第一设备进行认证;或者,将第一认证信息作为WPS认证PIN,根据该PIN并通过WPS认证方式与第一设备进行验证。
其中,第二设备在验证的过程中,当接收到第一设备发送的确认信息后,根据该确认信息确定出与第一设备建立无线连接,然后执行步骤214。
步骤414:第一设备建立与第二设备之间的数据连接,以实现建立与第二设备之间的无线连接。
其中,第二设备建立与第一设备之间的无线连接为加密的无线连接,第二设备和第一设备可以通过该加密的无线连接来传输数据。该无线连接可以为Wi-Fi连接或蓝牙连接。
在本发明实施例中,第一设备生成连接信息并提供给第二设备,第二设备根据该连接信息生成第一标识,向第一设备发送携带第一标识的Probe request消息,第一设备根据该连接信息生成第二标识,如果第一标号与第二标识匹配,则建立与第二设备之间的无线连接。其中第二设备通过用户手工输入或其他方式获得由第一设备生成的连接信息,并根据连接信息生成第一标识,通过第一标识确定需要连接的设备,从而避免用户手工选择需要连接的设备,从而提高了建立无线连接的效率,以提高数据传输的效率。第一设备与第二设备还通过第一认证信息和第二认证信息进行相互之间的认证,从而使得建立的无线连接为更加安全,提高了数据传输的安全性。
本发明实施例提供了一种用于建立无线连接的方法。在本发明实施例中,第一设备和第二设备都为普通的Wi-FI P2P设备,第一设备和第二设备都通过广播Probe request消息探测周围的Wi-Fi P2P设备,当第一设备和第地设备探测到相互双方时,第一设备和第二设备进行GO协商,假设协商后第一设备成为GO。
然后,第一设备生成连接信息,并提供给第二设备,第二设备根据该连接信息生成第一标识,并在Probe Request消息的保留字段中携带第一标识,然后向第一设备发送该Probe Request消息,第一设备确定自身存储的第二标识与第一标识是否匹配,如果匹配和第二设备建立无线连接。参见 图5,该方法包括:
步骤501:第一设备根据第二标识生成连接信息的第一部分信息。
其中,在执行本步骤之前,技术人员可以在第一设备中设置第二标识或者由第一设备生成第二标识并存储生成的第二标识。
例如:可以通过人为设置第二标识的生成规则,第一设备根据该生成规则生成第二标识;或者,可以设置第二标识的标识资源库,第一设备在该资源库中随机选择一个标识作为第二标识,或者,可以通过人为设置第二标识。
第一设备可以按如下方式生成第二标识,包括:第一设备生成连接信息,向连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据第一构造信息生成第二标识。可以对第一构造信息进行反转置换或移位处理得到第二标识。
假设,生成的连接信息为“12345678”,该连接信息的第一部分信息为“1234”,第一预设信息为“hua”,则第一设备向连接信息的第一部分信息“1234”添加第一预设信息“hua”得到的第一构造信息可以为“1234hua”、“hua1234”或“12hua34”等。假设,构造的第一构造信息为“1234hua”,对第一构造信息进行反转置换处理得到的第一标识为“auh4321”;或,事先设置移位的位数,该位数可以为二或三等,然后对第一构造信息进行两位移位处理或三位移位处理等,如当对第一构造信息进行两位移位处理得到的第一标识为“ua1234h”,当对第一构造信息进行三位移位处理得到的第一标识为“hua1234”。
本步骤可以为,第一设备对第二标识进行截取得到部分信息,将截取的该部分信息确定为连接信息的第一部分信息;或者,对第二标识进行第一运算处理得到连接信息的第一部分信息,第一运算处理为生成第二标识的逆运算。
第一设备根据第二标识生成连接信息的第一部分信息,可以为:
1对第二标识进行可逆计算得到连接信息的第一部分信息。例如对第二标识
其中,可以按如下(1)和(2)两步对第二标识进行第一运算处理得 到连接信息的第一部分信息,包括:
(1):根据第二标识生成第一构造信息。
可以对第二标识进行正转置换处理得到第一构造信息或对第二标识进行反向移位得到第一构造信息。例如,假设第一标识为“auh4321”,对第一标识“auh4321”进行正转置换处理得到第一构造信息为“1234hua”;或者,假设第一标识为“ua1234h”,对第一标识“ua1234h”进行反向移位两位得到第一构造信息“1234hua”;或者,假设第一标识为“hua1234”,对第一标识“hua1234”进行反向移位三位得到第一构造信息为“1234hua”。
(2):从第一构造信息中去除第一预设信息得到该连接信息的第一部分信息。
例如,第一预设信息为“hua”,从第一构造信息“1234hua”中去除第一预设信息“hua”得到该连接信息的第一部分信息为“1234”。
步骤502:第一设备根据第二认证信息生成该连接信息的第二部分信息。
其中,在执行本步骤之前,技术人员可以在第一设备中设置第二认证信息或者由第一设备生成第二认证信息并存储生成的第二认证信息。
第一设备可以按如下方式生成第二认证信息,包括:第一设备生成连接信息,向连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据第二构造信息生成第二认证信息。可以对第二构造信息进行反转置换或移位处理得到第二认证信息。
假设,生成的连接信息为“12345678”,该连接信息的第一部分信息为“5678”,第二预设信息为“wei”,则第一设备向连接信息的第二部分信息“5678”添加第二预设信息“wei”得到的第二构造信息可以为“5678wei”、“wei5678”或“56wei78”等。假设,构造的第二构造信息为“5678wei”,对第二构造信息进行反转置换处理得到的第二认证信息为“iew5678”;或,事先设置移位的位数,该位数可以为二或三等,然后对第二构造信息进行两位移位处理或三位移位处理等,如当对第二构造信息进行两位移位处理得到的第二认证信息为“ei5678w”,当对第二构造信息进行三位移位处理得到的第二认证信息为“wei5678”。
本步骤可以为,第一设备对第二认证信息进行截取得到部分信息,将截取的该部分信息确定为连接信息的第二部分信息;或者,对第二认证信 息进行第二运算处理得到连接信息的第二部分信息,第二运算处理为生成第二认证信息的逆运算。
其中,可以按如下(1)和(2)两步对第二认证信息进行第二运算处理得到连接信息的第二部分信息,包括:
(1):根据第二认证信息生成第二构造信息。
可以对第二认证信息进行正转置换处理得到第二构造信息或对第二认证信息进行反向移位得到第二构造信息。例如,假设第二认证信息为“iew4321”,对第二认证信息“iew4321”进行正转置换处理得到第二构造信息为“5678wei”;或者,假设第二认证信息为“ei5678w”,对第二认证信息“ei5678w”进行反向移位两位得到第二构造信息“5678wei”;或者,假设第二认证信息为“wei5678”,对第二认证信息“wei5678”进行反向移位三位得到第二构造信息为“5678wei”。
(2):从第二构造信息中去除第二预设信息得到该连接信息的第二部分信息。
例如,第二预设信息为“wei”,从第二构造信息“5678wei”中去除第二预设信息“wei”得到该连接信息的第二部分信息为“5678”。
步骤503:第一设备根据第一部分信息和第二部分信息构造连接信息。
将前述第一部分信息与第二部分信息进行拼接得到连接信息,如将第一部分信息“1234”与第二部分信息“5678”进行拼接得到“12345678”作为连接信息。
其中,在本发明实施例中,第一设备可以在其对应的第一用户的触发下按上述501至503的步骤生成连接信息。具体有如下两种触发方式,包括:
第一、第一设备检测到系统应用的应用界面中的连接接口被第一用户点击触发的连接命令时,执行上述步骤501至503。
其中,在具有传输数据需求的系统应用的应用界面中设置一连接接口,当第一用户需要传输数据时,可以点击该连接接口,以使该连接接口触发连接命令。系统应用可以为具有图片分享功能的图片拍照应用或具有视频分享功能的视频拍摄应用。
例如,参见图2-2所示的系统应用的应用界面,该系统应用是一个图片拍照应用,图片拍照应用拍摄一张图片并显示在应用界面中,在应用界面 的上方有一连接接口,第一用户点击该连接接口,该连接接口触发连接命令。第一设备当检测出该连接接口触发的连接命令时,执行上述步骤301至303生成连接信息,假设生成的连接信息为“12345678”,如图2-3所示。
第二、第一设备检测到第三方应用的应用界面中的连接接口被第一用户点击触发的连接命令时,执行上述步骤501至503生成连接信息,第三方应用为用于建立无线连接的应用。
其中,在第一设备上安装一个用于建立无线连接的第三方应用,第三方应用的应用界面中包含连接接口。当第一用户需要传输数据时,可以点击该连接接口,以使连接接口触发连接命令。
例如,参见图2-4所示的第三方应用的应用界面,在该应用界面中有一连接接口,第一用户点击该连接接口,该连接接口触发连接命令。第一设备当检测出该连接接口触发的连接命令时,执行上述步骤301至303生成连接信息,假设生成的连接信息为“12345678”,如图2-5。
步骤504:第一设备向第二设备提供该连接信息。
具体地,本步骤可以包括如下第一至第四种实现方式,分别为:
第一、第一设备显示该连接信息。
其中,第二设备对应的第二用户可以查看第一设备显示的该连接信息,并将该连接信息输入给第二设备。
第二、第一设备通过音箱播放该连接信息。
其中,第二用户可以收听第一设备播放的该连接信息,并将该连接信息输入给第二设备。
第三、第一设备根据该连接信息生成包含该连接信息的图形码,显示该图形码。
该图形码可以为一维码或二维码,第一设备可以使用用于生成图形码的编码算法对该连接信息进行编码,以生成包含该连接信息的图形码。
其中,第二设备具有扫描模块,该扫描模块可以为摄像头或扫描仪等。第一设备显示该图形码之后,第二设备可以通过其包括的扫描模块扫描第一设备显示的该图形码并获得该连接信息。
第四、第一设备与第二设备建立短距离通信连接,通过该短距离通信连接向第二设备发送该连接信息。
其中,第一设备可以通过带外通信方式与第二设备建立短距离通信连 接。带外通信方式可以为声波、红外、NFC或HotKnot等通信方式。
其中,在本实施例中,第一设备生成一个连接信息,用户可以将该连接信息输入给第二设备,或通过第二设备扫描第一设备上包含该连接信息的图形码,或者将第二设备与第一设备靠近,以使第二设备短距离通信方式获得该连接信息,相比用户从大量的设备搜索结果中去找出第二设备的标识,本步骤可以节省第一设备进行设备搜索的时间以及用户寻找第二设备的标识的时间,从而可以缩短建立无线连接的时间。
步骤505:第二设备获取第一设备提供的该连接信息。
具体地,第二设备可以通过如下第一、第二和第三三种方式来获取该连接信息。
第一、第二设备接收第二用户输入的该连接信息。
其中,第一设备生成连接信息后显示该连接信息或者通过音箱播放该连接信息。第二用户可以查看或收听该连接信息,然后向第二设备输入该连接信息。
其中,第二设备可以通过如下(1)和(2)两种方式获取第二用户输入的连接信息,包括:
(1)、第二设备从系统应用的应用界面中获取第二用户输入的连接信息。
系统应用的应用界面中包含接收接口,第二用户点击该接收接口时,该接收接口触发接收命令。第二设备当检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,第二用户可以向该输入框输入查看到的连接信息或收听到的连接信息。
例如,第一设备显示连接信息“12345678”或通过音箱播放连接信息“12345678”,第二用户查看连接信息“12345678”或收听连接信息“12345678”。然后,第二用户在如图2-6所示的系统应用的应用界面中点击接收接口,该接收接口触发接收命令,第二设备检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,如图2-7所示,第二用户在该输入框输入该连接信息“12345678”。然后第二设备从该输入框中读取第二用户输入的连接信息“12345678”。
(2)、第二设备从第三方应用的应用界面中获取第二用户输入的连接信息。
第三方应用的应用界面中包含接收接口,第二用户点击该接收接口时,该接收接口触发接收命令。第二设备当检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,第二用户可以向该输入框输入查看到的连接信息或收听到的连接信息。
例如,第二用户在如图2-4所示的系统应用的应用界面中点击接收接口,该接收接口触发接收命令,第二设备检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,如图2-8所示,第二用户在该输入框输入该连接信息“12345678”。然后第二设备从该输入框中读取第二用户输入的连接信息“12345678”。
第二、第二设备扫描第一设备显示的图形码,获取该图形码中包含的该连接信息。
其中,第二用户可以开启第二设备的扫描模块,然后第二设备通过扫描模块扫描第一设备显示的图形码,对扫描的图形码进行解析,解析出扫描的图形码中包含的连接信息。
第三、第二设备与第一设备建立短距离通信连接,通过该短距离通信连接接收第一设备发送的该连接信息。
步骤506:第二设备根据该连接信息包括的第一部分信息计算生成第一标识。
具体地,本步骤可以包括如下第一和第二两种实现方式,包括:
第一、第二设备对该连接信息的第一部分信息进行哈希运算得到第一哈希结果,根据第一哈希结果生成第一标识。
可以从第一哈希结果中截取部分信息作为第一标识,或,将截取的部分信息添加预设信息组成第一标识,或,将第一哈希结果作为第一标识等。
第二、第二设备向该连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据第一构造信息生成第一标识。
其中,可以对第一构造信息进行反转置换处理或移位处理来生成第一标识。例如,假设连接信息“12345678”的第一部分信息为“1234”,第一预设信息为“hua”,则第二设备向连接信息的第一部分信息“1234”添加第一预设信息“hua”得到的第一构造信息可以为“1234hua”、“hua1234”或“12hua34”等。
假设,构造的第一构造信息为“1234hua”,对第一构造信息进行反转 置换处理得到的第一标识为“auh4321”;或,事先设置移位的位数,该位数可以为二或三等,然后对第一构造信息进行两位移位处理或三位移位处理等,如当对第一构造信息进行两位移位处理得到的第一标识为“ua1234h”,当对第一构造信息进行三位移位处理得到的第一标识为“hua1234”。
第二设备生成第一标识的方式除了以上第一和第二两种外,还可以采用其他方式,例如,可以从该连接信息中截取预设第一位数的一串字符串作为第一字符串,根据第一字符串生成第一标识;或者,对整个连接信息进行哈希运算得到第一标识。
其中,第二设备根据第一字符串生成第一标识的实现方式,包括如下(1)至(4)四种:
(1)、将第一字符串确定为第一标识。
例如,预设第一位数为6,第二设备从连接信息“12345678”中截取前6位的字符串“123456”或后6位字符串“345678”作为第一字符串,将第一字符串“123456”或“345678”确定为第一标识。
(2)、将第一字符串与第一预设字符串组成第一标识。
例如,第一字符串为“123456”,第一预设字符串为“Huawei”,将第一字符串与第一预设字符串组成的第一标识为“123456Huawei”或“Huawei123456”。
(3)、对第一字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串作为第一标识。
(4)、对第一字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串,将截取的字符串与第一预设字符串组成第一标识。
步骤507:第二设备发送Probe request消息,该Probe request消息的保留字段携带第一标识。
第二设备的身份设置为Wi-FI P2P设备,发送Probe request消息,以请求与接收该Probe request消息的GO建立无线连接。第二设备可以广播该Probe request消息,或者,第二设备可以在接收到第一设备广播的Beacon消息后,从Beacon消息中获取第一设备的地址,根据第一设备的地址向第一设备单播该Probe request消息。
其中,参见图3-2所示的Probe request消息的结构,Probe request消息包括MAC头、帧体和FCS等部分,MAC头包括Addr_1和Addr_2等字段,Addr_1为接收方地址,Addr_2为发送方地址,帧体包括SSID字段和保留字段Vendor specific等,SSID字段用于携带标识,FCS为校验字段,用于携带校验码。在本发明实施例中,第二设备将第一标识作为GO的标识,当第二设备广播Probe request消息时,该Probe request消息的Addr_1字段为空,当第二设备单播Probe request消息给第一设备时,该Probe request消息的Addr_1字段携带第一设备的MAC地址;在该两种情况下,该Probe request消息的Addr_2字段携带第二设备的MAC地址,保留字段携带第一标识,而SSID字段为空。
步骤508:第一设备接收该Probe request消息,该Probe request消息的保留字段携带第一标识。
例如,第二设备发送Probe request消息,该Probe request消息的保留字段携带第一标识“123456”,第一设备接收该Probe request消息。
步骤509:第一设备确定第一标识与第二标识是否匹配,如果匹配执行步骤510。
其中,第一标识与第二标识匹配是指第一标识与第二标识相等或者第一标识与第二标识之间存在对应关系。
其中,可以事先在第一设备设置标识关系列表,该标识关系列表用于存储具有对应关系的任意两标识。
相应地,第一设备可以通过如下方式来确定第一标识与第二标识是否存在对应关系,包括:第一设备可以根据第一标识,从该标识关系列表中查找出对应的标识,如果查找出的标识与第二标识相等,则确定出第一标识与第二标识之间存在对应关系,否则,确定第一标识与第二标识之间不存在对应关系。
步骤510:第一设备向第二设备发送Probe response消息,该Probe response消息用于第二设备确定与第一设备建立无线连接。
其中,第二设备发送Probe request消息,以请求与一AP建立无线连接,该AP的第一标识携带在该Probe request消息的SSID字段中。所以在本步骤中,当第一设备判断出第一标识与第二标识匹配,则第一设备可以获知第二设备请求与自身建立无线连接,从而确定需要与第二设备建立无线连 接,向第二设备发送Probe response消息,以告知第二设备同意与其建立无线连接。
例如,假设第二设备发送的Probe request消息的保留字段携带第一标识“123456”。第一设备接收该Probe request消息,生成的第二标识为“123456”,其中,第一标识“123456”和第二标识“123456”相同,所以第一标识与第二标识匹配,确定需要与第二设备建立无线连接,向第二设备发送Probe respone消息。
步骤511:第二设备接收该Probe response消息,根据该Probe response消息确定与第一设备建立无线连接,执行步骤512。
步骤512:第二设备根据该连接信息的第二部分信息生成第一认证信息。
连接信息的第一部分信息的内容和第二部分信息的内容可以不同或者部分相同。例如,该连接信息为“12345678”,第一部分信息可以为“1234”,第二部分信息可以为“5678”,或者,第一部分信息可以为“123456”,第二部分信息可以为“345678”等。
具体地,本步骤可以通过如下第一和第二两种实现方式,包括:
第一、第二设备对该连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据第二哈希结果生成第二认证信息。
第二、第二设备向该连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据第二构造信息生成第一认证信息。
其中,第二设备除了可以采用上述第一和第二两种方式生成第一认证信息外,还可以采用其他的方式来生成第一认证信息。例如第二设备从该连接信息中截取预设第二位数的字符串作为第四字符串,根据第四字符串生成第一认证信息;或者,将该连接信息确定为第一认证信息。
其中,第二设备根据第四字符串生成第一认证信息的实现方式,包括如下几种:
第一、将第四字符串确定为第一认证信息。
例如,假设预设第二位数为4,第一设备从连接信息“12345678”中截取前4位字符串“1234”或后4位字符串“5678”作为第四字符串,并将第四字符串作为第一认证信息。
其中,在本发明实施例中,预设第一位数和第二位数之和可以与连接 信息包括的字符位数相等。相应地,第二设备从连接信息中截取的预设第一位数的第一字符串后得到剩下的字符串,该剩下的字符串的位数为预设第二位数,可以将剩下预设第二位数的字符串作为第四字符串。例如,预设第一位数为6,所以预设第二位数为2,第二设备从连接信息“12345678”中截取预设第一位数的第一字符串“123456”后得到剩下预设第二位数的字符串“78”,第一设备可以将剩下预设第二位数的字符串“78”作为第四字符串。
第二、将第四字符串与第二预设字符串组成第一认证信息。
例如,假设第四字符串为“1234”,第二预设字符串为“9860”,将第四字符串与第二预设字符串组成的第二认证信息为“12349860”或“98601234”。
第三、对第四字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第二位数的字符串作为第二认证信息,或者,将该哈希结果确定为第一认证信息。
第四、根据第四字符串和第二设备采用的认证方式,生成第一认证信息。
具体地,根据第二设备采用的认证方式,确定认证信息的位数;根据确定位数对第四字符串进行填充信息或截取信息得到第二认证信息;例如,第四字符串为“1234”,假设第二设备采用的WPS认证方式,根据WPS认证方式,确定认证信息的位数为8数字,对第四字符串“1234”填充信息“9988”得到第一认证信息为“12349988”,再如,假设,第二设备采用的四步握手认证方式,根据四步握手认证方式,确定认证信息的位数为256比特,而第四字符串“1234”包括32比特,因此对第四字符串填充224比特,得到256比特的第一认证信息。或者,
根据第二设备采用的认证方式,确定认证信息的位数;对第四字符串进行哈希运算得到哈希结果,根据确定位数对该哈希结果进行填充信息或截取信息得到第二认证信息;例如,第四字符串为“1234”,对第四字符串“1234”进行哈希运算得到该哈希结果为“98765432111”,假设第二设备采用的WPS认证方式,根据WPS认证方式,确定认证信息的位数为8位数字,从该哈希结果中截取8位数字“98765432”作为第一认证信息;再如,假设,第二设备采用的四步握手认证方式,根据四步握手认证方式, 确定认证信息的位数为256比特,而该哈希结果为“98765432111”包括88比特,因此对该哈希结果填充168比特,得到256比特的第一认证信息。
步骤513:第一设备验证第二设备的第一认证信息与其第二认证信息是否匹配,如果匹配,则向第二设备发送确认信息,该确认信息用于第二设备确定与第一设备建立无线连接。
其中,第一设备采用的认证方式可以为IEEE802.11中的四步握手认证方式、WFA(Wi-Fi Alliance,Wi-Fi联盟)规定的WPS(Wi-Fi Protected Setup,Wi-Fi安全设置)认证方式或其他认证方式。每种认证方式规定了认证消息的格式,例如,四步握手认证方式规定认证消息为256比特组成的密钥信息,WPS认证方式规定认证消息为8位数字等。
当采用四步骤握手认证方式时,本步骤可以为:第一设备将第二认证信息确定为四步握手认证方式的PMK,根据该PMK并通过该四步握手认证方式验证第二设备的第一认证信息与其第二认证信息是否匹配。
当采用WPS认证方式时,本步骤可以为:第一设备将第二认证信息确定为WPS认证方式的PIN,根据该PIN并通过WPS认证方式验证第二设备的第一认证信息与其第二认证信息是否匹配。
其中,在第一设备验证的过程中,第二设备与第一设备进行验证,以使第一设备确定第二设备的第一认证信息与第一设备的第二认证信息是否匹配。具体实现为:第二设备将第一认证信息作为四步握手认证方式的PMK,根据该PMK并通过四步握手认证方式与第一设备进行认证;或者,将第一认证信息作为WPS认证PIN,根据该PIN并通过WPS认证方式与第一设备进行验证。
其中,第二设备在验证的过程中,当接收到第一设备发送的确认信息后,根据该确认信息确定出与第一设备建立无线连接,然后执行步骤314。
步骤514:第一设备建立与第二设备之间的数据连接,以实现建立与第二设备之间的无线连接。
其中,第二设备建立与第一设备之间的无线连接为加密的无线连接,第二设备和第一设备可以通过该加密的无线连接来传输数据。该无线连接可以为Wi-Fi连接或蓝牙连接。
在本发明实施例中,第一设备生成连接信息并提供给第二设备,第二设备根据该连接信息生成第一标识,向第一设备发送携带第一标识的Probe  request消息,第一设备确定自身存储的第二标识与第二设备的第一标识是否匹配,如果第一标号与第二标识匹配,则建立与第二设备之间的无线连接。其中第二设备通过用户手工输入或其他方式获得由第一设备生成的连接信息,并根据连接信息生成第一标识,通过第一标识确定需要连接的设备,从而避免用户手工选择需要连接的设备,从而提高了建立无线连接的效率,以提高数据传输的效率。第一设备与第二设备还通过第一认证信息和第二认证信息进行相互之间的认证,从而使得建立的无线连接为更加安全,提高了数据传输的安全性。
本发明实施例提供了一种用于建立无线连接的方法。在本发明实施例中,第一设备生成连接信息,向第二设备提供该连接信息;第二设备根据该连接信息生成第一标识,向第一设备发送Test request消息,该Test request消息携带第一标识和第二设备支持的通信模式;第一设备根据该连接信息生成第二标识,如果第一标识与第二标识匹配,选择一种通信模式,根据选择的通信模式设置自身的身份,然后与第二设备建立无线连接。参见图6-1,该方法包括:
步骤601:第一设备生成连接信息。
连接信息可以为一串字符串,连接信息的内容可以为数字、字母或其他字符,或者可以为数字、字母和其他字符中任意多种字符的组合。第一设备可以随机生成一串字符串生成一串字符串,将生成的字符串作为连接信息。
其中,在本发明实施例中,第一设备可以在其对应的第一用户的触发下生成连接信息。具体有如下两种触发方式,包括:
第一、第一设备检测到系统应用的应用界面中的连接接口被第一用户点击触发的连接命令时,生成连接信息。
其中,在具有传输数据需求的系统应用的应用界面中设置一连接接口,当第一用户需要传输数据时,可以点击该连接接口,以使该连接接口触发连接命令。系统应用可以为具有图片分享功能的图片拍照应用或具有视频分享功能的视频拍摄应用。
例如,参见图2-2所示的系统应用的应用界面,该系统应用是一个图片拍照应用,图片拍照应用拍摄一张图片并显示在应用界面中,在应用界面 的上方有一连接接口,第一用户点击该连接接口,该连接接口触发连接命令。第一设备当检测出该连接接口触发的连接命令时,随机产生连接信息,假设产生的连接信息为“12345678”,如图2-3所示。
第二、第一设备检测到第三方应用的应用界面中的连接接口被第一用户点击触发的连接命令时,生成连接信息,第三方应用为用于建立无线连接的应用。
其中,在第一设备上安装一个用于建立无线连接的第三方应用,第三方应用的应用界面中包含连接接口。当第一用户需要传输数据时,可以点击该连接接口,以使连接接口触发连接命令。
例如,参见图2-4所示的第三方应用的应用界面,在该应用界面中有一连接接口,第一用户点击该连接接口,该连接接口触发连接命令。第一设备当检测出该连接接口触发的连接命令时,随机产生连接信息,假设产生的连接信息为“12345678”,如图2-5。
步骤602:第一设备向第二设备提供该连接信息。
具体地,本步骤可以包括如下第一至第四四种实现方式,分别为:
第一、第一设备显示该连接信息。
其中,第二设备对应的第二用户可以查看第一设备显示的该连接信息,并将该连接信息输入给第二设备。
第二、第一设备通过音箱播放该连接信息。
其中,第二用户可以收听第一设备播放的该连接信息,并将该连接信息输入给第二设备。
第三、第一设备根据该连接信息生成包含该连接信息的图形码,显示该图形码。
该图形码可以为一维码或二维码,第一设备可以使用用于生成图形码的编码算法对该连接信息进行编码,以生成包含该连接信息的图形码,如生成QR Code二维码。
其中,第二设备具有扫描模块,该扫描模块可以为摄像头或扫描仪等。第一设备显示该图形码之后,第二设备可以通过其包括的扫描模块扫描第一设备显示的该图形码并获得该连接信息。
第四、第一设备与第二设备建立短距离通信连接,通过该短距离通信连接向第二设备发送该连接信息。
其中,第一设备可以通过带外通信方式与第二设备建立短距离通信连接。带外通信方式可以为声波、红外、NFC或HotKnot等通信方式。
步骤603:第二设备获取第一设备提供的该连接信息。
具体地,第二设备可以通过如下第一、第二和第三三种方式来获取该连接信息。
第一、第二设备接收第二用户输入的该连接信息。
其中,第一设备生成连接信息后显示该连接信息或者通过音箱播放该连接信息。第二用户可以查看或收听该连接信息,然后向第二设备输入该连接信息。
其中,第二设备可以通过如下(1)和(2)两种方式获取第二用户输入的连接信息,包括:
(1)、第二设备从系统应用的应用界面中获取第二用户输入的连接信息。
系统应用的应用界面中包含接收接口,第二用户点击该接收接口时,该接收接口触发接收命令。第二设备当检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,第二用户可以向该输入框输入查看到的连接信息或收听到的连接信息。
例如,第一设备显示连接信息“12345678”或通过音箱播放连接信息“12345678”,第二用户查看连接信息“12345678”或收听连接信息“12345678”。然后,第二用户在如图2-6所示的系统应用的应用界面中点击接收接口,该接收接口触发接收命令,第二设备检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,如图2-7所示,第二用户在该输入框输入该连接信息“12345678”。然后第二设备从该输入框中读取第二用户输入的连接信息“12345678”。
(2)、第二设备从第三方应用的应用界面中获取第二用户输入的连接信息。
第三方应用的应用界面中包含接收接口,第二用户点击该接收接口时,该接收接口触发接收命令。第二设备当检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,第二用户可以向该输入框输入查看到的连接信息或收听到的连接信息。
例如,第二用户在如图2-4所示的系统应用的应用界面中点击接收接 口,该接收接口触发接收命令,第二设备检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,如图2-8所示,第二用户在该输入框输入该连接信息“12345678”。然后第二设备从该输入框中读取第二用户输入的连接信息“12345678”。
第二、第二设备扫描第一设备显示的图形码,获取该图形码中包含的该连接信息。
其中,第二用户可以开启第二设备的扫描模块,然后第二设备通过扫描模块扫描第一设备显示的图形码,对扫描的图形码进行解析,解析出扫描的图形码中包含的连接信息。
第三、第二设备与第一设备建立短距离通信连接,通过该短距离通信连接接收第一设备发送的该连接信息。
其中,在本实施例中,第一设备生成一个连接信息,用户可以将该连接信息输入给第二设备,或通过第二设备扫描第一设备上包含该连接信息的图形码,或者将第二设备与第一设备靠近,以使第二设备短距离通信方式获得该连接信息,相比用户从大量的设备搜索结果中去找出第二设备的标识,本步骤可以节省第一设备进行设备搜索的时间以及用户寻找第二设备的标识的时间,从而可以缩短建立无线连接的时间。
步骤604:第二设备根据该连接信息包括的第一部分信息计算生成第一标识。
具体地,本步骤可以包括如下第一和第二两种实现方式,包括:
第一、第二设备对该连接信息的第一部分信息进行哈希运算得到第一哈希结果,根据第一哈希结果生成第一标识。
可以从第一哈希结果中截取部分信息作为第一标识,或,将截取的部分信息添加预设信息组成第一标识,或,将第一哈希结果作为第一标识等。
第二、第二设备向该连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据第一构造信息生成第一标识。
其中,可以对第一构造信息进行反转置换处理或移位处理来生成第一标识。例如,假设连接信息“12345678”的第一部分信息为“1234”,第一预设信息为“hua”,则第二设备向连接信息的第一部分信息“1234”添加第一预设信息“hua”得到的第一构造信息可以为“1234hua”、“hua1234”或“12hua34”等。
假设,构造的第一构造信息为“1234hua”,对第一构造信息进行反转置换处理得到的第一标识为“auh4321”;或,事先设置移位的位数,该位数可以为二或三等,然后对第一构造信息进行两位移位处理或三位移位处理等,如当对第一构造信息进行两位移位处理得到的第一标识为“ua1234h”,当对第一构造信息进行三位移位处理得到的第一标识为“hua1234”。
第二设备生成第一标识的方式除了以上第一和第二两种外,还可以采用其他方式,例如,可以从该连接信息中截取预设第一位数的一串字符串作为第一字符串,根据第一字符串生成第一标识;或者,对整个连接信息进行哈希运算得到第一标识。
其中,第二设备根据第一字符串生成第一标识的实现方式,包括如下(1)至(4)四种:
(1)、将第一字符串确定为第一标识。
例如,预设第一位数为6,第二设备从连接信息“12345678”中截取前6位的字符串“123456”或后6位字符串“345678”作为第一字符串,将第一字符串“123456”或“345678”确定为第一标识。
(2)、将第一字符串与第一预设字符串组成第一标识。
例如,第一字符串为“123456”,第一预设字符串为“Huawei”,将第一字符串与第一预设字符串组成的第一标识为“123456Huawei”或“Huawei123456”。
(3)、对第一字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串作为第一标识。
(4)、对第一字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串,将截取的字符串与第一预设字符串组成第一标识。
步骤605:第二设备发送Test request(测试请求)消息,该Test request消息的动作帧携带第一标识和第二设备支持的通信模式。
其中,第二设备至少支持一种通信模式,通信模式包括AP-STA(Access Point–STA,接入点-工作站),GO-Client(Group Owner–Client,组长–组员)和P2P(Peer to Peer,点对点)通信模式。Test request消息的动作帧包括标识字段和通信模式字段,标识字段用于携带第一标识,通信模式字 段用于携带第二设备支持的通信模式。
其中,参见图6-2所示的Test request消息的结构,Test request消息包括MAC(Media Access Control,媒体访问控制)头、帧体以及FCS(Frame Check Sequence,帧校验序列)等部分,MAC头包括Addr_1和Addr_2等字段,Addr_1为接收方地址,Addr_2为发送方地址,帧体包括动作帧,动作帧包括标识字段和通信模式字段,FCS为校验字段,用于携带校验码。在本发明实施例中,第二设备广播Test request消息时,该Test request消息的Addr_1字段为空,Addr_1字段携带第一设备的MAC地址,标识字段携带第一标识,通信模式字段用于携带第二设备支持的通信模式。
步骤606:第一设备接收该Test request消息,该Test request消息的动作帧携带第一标识和第二设备支持的通信模式。
例如,第二设备发送Test request消息,该Test request消息的动作帧携带第一标识“123456”和第二设备支持的通信模式包括AP-STA和GO-Client,第一设备接收该Test request消息。
步骤607:第一设备根据该连接信息的第一部分信息计算生成第二标识,其中,第一设备将第二标识作为其自身的标识。
具体地,第一设备可以通过如下第一和第二两种方式计算生成第二标识,包括:
第一、第一设备对该连接信息的第一部分信息进行哈希运算得到第一哈希结果,根据第一哈希结果生成第二标识。
本实施方式与第二设备生成第一标识的第一种方式相同,详细过程可以参见第二设备生成第一标识的第一种方式,在此不再详细说明。
第二、第一设备向该连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据第二构造信息生成第二标识。
本实施方式与第二设备生成第一标识的第二种方式相同,详细过程可以参见第二设备生成第一标识的第二种方式,在此不再详细说明。
第一设备生成第二标识的方式除了以上第一和第二两种外,还可以采用其他方式,例如,可以从该连接信息中截取预设第一位数的字符串作为第二字符串,根据第二字符串生成第二标识;或者,对整个该连接信息进行哈希运算得到第二标识。
其中,需要说明的是:第一设备也可以在生成连接信息之后且在接收 Probe request消息之前按本步骤生成第二标识。
其中,第一设备根据第二字符串生成第二标识的实现方式,包括如下(1)至(4)四种:
(1)、将第二字符串确定为第二标识。
例如,预设第一位数为6,第一设备从连接信息“12345678”中截取前6位的字符串“123456”或后6位字符串“345678”作为第二字符串,将第二字符串“123456”或“345678”确定为第二标识。
(2)、将第二字符串与第一预设字符串组成第二标识。
例如,假设,第二字符串为“123456”,第一预设字符串为“Huawei”,将第二字符串与第一预设字符串组成的第二标识为“123456Huawei”或“Huawei123456”。
(3)、对第二字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串作为第二标识。
(4)、对第二字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串,将截取的字符串与预设字符串组成第二标识。
步骤608:第一设备确定第一标识与第二标识是否匹配,如果匹配执行步骤609。
其中,第一标识与第二标识匹配是指第一标识与第二标识相等或者第一标识与第二标识之间存在对应关系。
其中,可以事先在第一设备设置标识关系列表,该标识关系列表用于存储具有对应关系的任意两标识。
相应地,第一设备可以通过如下方式来确定第一标识与第二标识是否存在对应关系,包括:第一设备可以根据第一标识,从该标识关系列表中查找出对应的标识,如果查找出的标识与第二标识相等,则确定出第一标识与第二标识之间存在对应关系,否则,确定第一标识与第二标识之间不存在对应关系。
步骤609:第一设备从第二设备支持的通信模式中选择一种通信模式,根据选择的通信模式设置自身的身份,向第二设备发送Test response(测试响应)消息,该Test response消息携带选择的通信模式和第一设备的身份。
具体地,第一设备将自身支持的通信模式与第二设备支持的通信模式做交集,从交集的结果中选择一种通信模式,然后根据选择的通信模式设 置自身的身份,例如,如果选择的是AP-STA,则可以将自身的身份设置为AP,如果选择的是GO-Client,则可以将自身的身份设置为GO,如果选择的是P2P通信模式,则可以将自身的身份设置为AP,然后向第二设备发送Test response消息,该Test response消息携带选择的通信模式和第一设备的身份。
其中,该Test response消息用于第二设备确定与第一设备建立无线连接。第二设备发送Test request消息,以请求与一P2P设备建立无线连接,该P2P设备的第一标识携带在该Test request消息的动作帧中。所以在本步骤中,当第一设备判断出第一标识与第二标识匹配,则第一设备可以获知第二设备请求与自身建立无线连接,从而确定需要与第二设备建立无线连接,向第二设备发送Test response消息,以告知第二设备同意与其建立无线连接。
参见图6-3所示的Test response消息结构,Test response消息包括MAC头、帧体和FCS等部分,MAC头包括Addr_3和Addr_4等字段,Addr_3为接收方地址,Addr_4为发送方地址,动作帧位于帧体内,动作帧包括通信模式字段等。在本发明实施例中,该Probe respnse消息的Addr_3字段携带第二设备的MAC地址,Addr_4字段携带第一设备的MAC地址,通信模式字段携带选择的通信模式和第一设备的身份。
例如,假设第二设备发送的Test request消息的动作帧携带第一标识“123456”。第一设备接收该Test request消息,生成的第二标识为“123456”,其中,第一标识“123456”和第二标识“123456”相同,所以第一标识与第二标识匹配,确定需要与第二设备建立无线连接,获取自身支持的通信模式包括AP-STA、GO-Client和P2P通信模式,将自身支持的通信模式与第二设备支持的通信模式AP-STA和GO-Client取交集得到的交集结果中包括AP-STA和GO-Client,从交集结果中随机选择一种通信模式,假设为AP-STA,然后将自身的身份设置为AP,向第二设备发送Test response消息,该Test response消息携带选择的通信模式AP-STA和第一设备的身份为AP。
步骤610:第二设备接收该Test response消息,根据该Test response消息设置自身的身份以及确定与第一设备建立无线连接,执行步骤611。
其中,第二设备根据该Test response消息携带第一设备选择的通信模式和第一设备的身份设置自身的身份。例如,第二设备接收Test response 消息,该Test response消息携带第二设备选择的通信模式AP-STA和第一设备的身份AP,根据第二设备选择的通信模式AP-STA和第一设备的身份AP,将自身的身份设置为STA。
步骤611:第二设备根据该连接信息的第二部分信息生成第一认证信息。
连接信息的第一部分信息的内容和第二部分信息的内容可以不同或者部分相同。例如,该连接信息为“12345678”,第一部分信息可以为“1234”,第二部分信息可以为“5678”,或者,第一部分信息可以为“123456”,第二部分信息可以为“345678”等。
具体地,本步骤可以通过如下第一和第二两种实现方式,包括:
第一、第二设备对该连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据第二哈希结果生成第一认证信息。
例如,对连接信息“12345678”的第二部分信息“5678”进行SHA-256哈希算法的哈希,得到第二哈希结果为“6BAA0BD18BCC1E5237B70DC18595A7DEFF11CD27120CDC96A678003F8B162941”,根据第二设备采用的认证方式对第二哈希结果进行截取或补充等处理得到该认证方式所需要的位数的第一认证信息。
第二设备采用的认证方式可以包括四步握手认证方式。WPS认证方式或其他认证方式。其中,每种认证方式规定了认证消息的格式,例如,四步握手认证方式规定认证消息为256比特组成的密钥信息,WPS认证方式规定认证消息为8位数字等。
例如,当第二设备采用四步握手认证时,将第二哈希结果包括32个字符,正好为256比特,因此将第二哈希结果作为第一认证信息。当第二设备采用WPS认证时,截取最后8位“8F162941”,并将“F”映射至数字“6”得到“86162941”作为第一认证信息。
第二、第二设备向该连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据第二构造信息生成第一认证信息。
例如,当第二设备采用四步握手认证时,对连接信息“12345678”的第二部分信息“5678”转换为二进制“1011000101110”,然后在“1011000101110”左侧添加243bit的“0”得到256bit位的第一认证信息;或在“1011000101110”右侧添加243bit的“1”得到256bit位的第一认证 信息;
当第二设备采用WPS认证时,对连接信息“12345678”的第二部分信息“5678”左侧或右侧添加4位“8888”或“0000”等得到8位数字作为第一认证信息。
需要说明的是,当第二部分信息位数满足第二设备采用的认证方式所要求的认证信息位数时,也可以直接将第二部分信息作为第一认证信息。
其中,第二设备除了可以采用上述第一和第二两种方式生成第一认证信息外,还可以采用其他的方式来生成第一认证信息。例如第二设备从该连接信息中截取预设第二位数的字符串作为第四字符串,根据第四字符串生成第一认证信息;或者,将该连接信息确定为第一认证信息。
其中,第二设备根据第四字符串生成第一认证信息的实现方式,包括如下几种:
第一、将第四字符串确定为第一认证信息。
例如,假设预设第二位数为4,第一设备从连接信息“12345678”中截取前4位字符串“1234”或后4位字符串“5678”作为第四字符串,并将第四字符串作为第一认证信息。
其中,在本发明实施例中,预设第一位数和第二位数之和可以与连接信息包括的字符位数相等。相应地,第二设备从连接信息中截取的预设第一位数的第一字符串后得到剩下的字符串,该剩下的字符串的位数为预设第二位数,可以将剩下预设第二位数的字符串作为第四字符串。例如,预设第一位数为6,所以预设第二位数为2,第二设备从连接信息“12345678”中截取预设第一位数的第一字符串“123456”后得到剩下预设第二位数的字符串“78”,第一设备可以将剩下预设第二位数的字符串“78”作为第四字符串。
第二、将第四字符串与第二预设字符串组成第一认证信息。
例如,假设第四字符串为“1234”,第二预设字符串为“9860”,将第四字符串与第二预设字符串组成的第二认证信息为“12349860”或“98601234”。
第三、对第四字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第二位数的字符串作为第二认证信息,或者,将该哈希结果确定为第一认证信息。
第四、根据第四字符串和第二设备采用的认证方式,生成第一认证信息。
具体地,根据第二设备采用的认证方式,确定认证信息的位数;根据确定位数对第四字符串进行填充信息或截取信息得到第二认证信息;例如,第四字符串为“1234”,假设第二设备采用的WPS认证方式,根据WPS认证方式,确定认证信息的位数为8位数字,对第四字符串“1234”填充信息“9988”得到第一认证信息为“12349988”,再如,假设,第二设备采用的四步握手认证方式,根据四步握手认证方式,确定认证信息的位数为256比特,而第四字符串“1234”包括32比特,因此对第四字符串填充224比特,得到256比特的第一认证信息。或者,
根据第二设备采用的认证方式,确定认证信息的位数;对第四字符串进行哈希运算得到哈希结果,根据确定位数对该哈希结果进行填充信息或截取信息得到第二认证信息;例如,第四字符串为“1234”,对第四字符串“1234”进行哈希运算得到哈希结果为“98765432111”,假设第二设备采用的WPS认证方式,根据WPS认证方式,确定认证信息的位数为8数字,从该哈希结果中截取8位数字“98765432”作为第一认证信息;再如,假设,第二设备采用的四步握手认证方式,根据四步握手认证方式,确定认证信息的位数为256比特,而该哈希结果为“98765432111”包括88比特,因此对该哈希结果填充168比特,得到256比特的第一认证信息。
步骤612:第一设备根据该连接消息的第二部分信息生成第二认证信息。
具体地,本步骤可以通过如下第一和第二两种方式来实现,包括:
第一、第一设备对该连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据第二哈希结果生成第二认证信息。
本实施方式与第二设备生成第一认证信息的第一种方式的过程相同,在此不再详细说明。
第二、第一设备向该连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据第二构造信息生成第二认证信息。
本实施方式与第二设备生成第一认证信息的第二种方式的过程相同,在此不再详细说明。
其中,第一设备除了可以按上述第一和第二两种方式生成第二认证信 息外,还可以采用其他方式来生成第二认证信息。例如,第一设备从该连接信息中截取预设第二位数的字符串作为第三字符串,根据第三字符串生成第二认证信息;或者,将整个连接信息确定为第二认证信息。
其中,第一设备根据第三字符串生成第二认证信息的方式,包括如下几种:
第一、将第三字符串确定为第二认证信息。
例如,假设预设第二位数为4,第一设备从连接信息“12345678”中截取前4位字符串“1234”或后4位字符串“5678”作为第三字符串,并将第三字符串作为第二认证信息。
其中,在本发明实施例中,预设第一位数和第二位数之和可以与连接信息包括的字符位数相等。相应地,第一设备从连接信息中截取的预设第一位数的第二字符串后得到剩下的字符串,该剩下的字符串的位数为预设第二位数,可以将剩下预设第二位数的字符串作为第三字符串。例如,预设第一位数为6,所以预设第二位数为2,第一设备从连接信息“12345678”中截取预设第一位数的第二字符串“123456”后得到下下预设第二位数的字符串“78”,第一设备可以将剩下预设第二位数的字符串“78”作为第三字符串。
第二、将第三字符串与第二预设字符串组成第二认证信息。
例如,假设第三字符串为“1234”,第二预设字符串为“9860”,将第三字符串与第二预设字符串组成的第一认证信息为“12349860”或“98601234”。
第三、对第三字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第二位数的字符串作为第一认证信息,或者,将该哈希结果确定为第二认证信息。
第四、根据第三字符串和第一设备采用的认证方式,生成第二认证信息。
步骤613:第一设备验证第二设备的第一认证信息与其第二认证信息是否匹配,如果匹配,则向第二设备发送确认信息,该确认信息用于第二设备确定与第一设备建立无线连接。
当第一设备采用四步骤握手认证方式时,本步骤可以为:第一设备将第二认证信息确定为四步握手认证方式的PMK,根据该PMK并通过该四 步握手认证方式验证第二设备的第一认证信息与其第二认证信息是否匹配。
当第一设备采用WPS认证方式时,本步骤可以为:第一设备将第二认证信息确定为WPS认证方式的PIN,根据该PIN并通过WPS认证方式验证第二设备的第一认证信息与其第二认证信息是否匹配。
其中,在第一设备验证的过程中,第二设备与第一设备进行验证,以使第一设备确定第二设备的第一认证信息与第一设备的第二认证信息是否匹配。具体实现为:第二设备将第一认证信息作为四步握手认证方式的PMK,根据该PMK并通过四步握手认证方式与第一设备进行认证;或者,将第一认证信息作为WPS认证PIN,根据该PIN并通过WPS认证方式与第一设备进行验证。
其中,第二设备在验证的过程中,当接收到第一设备发送的确认信息后,根据该确认信息确定出与第一设备建立无线连接,然后执行步骤214。
步骤614:第一设备建立与第二设备之间的数据连接,以实现建立与第二设备之间的无线连接。
其中,第二设备建立与第一设备之间的无线连接为加密的无线连接,第二设备和第一设备可以通过该加密的无线连接来传输数据。该无线连接可以为Wi-Fi连接或蓝牙连接。
在本发明实施例中,第一设备生成连接信息并提供给第二设备,第二设备根据该连接信息生成第一标识,向第一设备发送携带第一标识的Probe request消息,第一设备根据该连接信息生成第二标识,如果第一标号与第二标识匹配,则建立与第二设备之间的无线连接。其中第二设备通过用户手工输入或其他方式获得由第一设备生成的连接信息,并根据连接信息生成第一标识,通过第一标识确定需要连接的设备,从而避免用户手工选择需要连接的设备,从而提高了建立无线连接的效率,以提高数据传输的效率。第一设备与第二设备还通过第一认证信息和第二认证信息进行相互之间的认证,从而使得建立的无线连接为更加安全,提高了数据传输的安全性。
本发明实施例提供了一种建立无线连接的方法。在本发明实施例中,第一设备生成连接信息,向第二设备提供该连接信息;第二设备根据该连 接信息生成第一标识,向第一设备发送Test request消息,该Test request消息携带第一标识和第二设备支持的通信模式;第一设备确定自身存储的第二标识和第一标识是否匹配,如果第一标识与第二标识匹配,选择一种通信模式,根据选择的通信模式设置自身的身份,然后与第二设备建立无线连接。参见图7,该方法包括:
步骤701:第一设备根据第二标识生成连接信息的第一部分信息。
其中,在执行本步骤之前,技术人员可以在第一设备中设置第二标识或者由第一设备生成第二标识并存储生成的第二标识。
第一设备可以按如下方式生成第二标识,包括:第一设备生成连接信息,向连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据第一构造信息生成第二标识。可以对第一构造信息进行反转置换或移位处理得到第二标识。
假设,生成的连接信息为“12345678”,该连接信息的第一部分信息为“1234”,第一预设信息为“hua”,则第一设备向连接信息的第一部分信息“1234”添加第一预设信息“hua”得到的第一构造信息可以为“1234hua”、“hua1234”或“12hua34”等。假设,构造的第一构造信息为“1234hua”,对第一构造信息进行反转置换处理得到的第一标识为“auh4321”;或,事先设置移位的位数,该位数可以为二或三等,然后对第一构造信息进行两位移位处理或三位移位处理等,如当对第一构造信息进行两位移位处理得到的第一标识为“ua1234h”,当对第一构造信息进行三位移位处理得到的第一标识为“hua1234”。
本步骤可以为,第一设备对第二标识进行截取得到部分信息,将截取的该部分信息确定为连接信息的第一部分信息;或者,对第二标识进行第一运算处理得到连接信息的第一部分信息,第一运算处理为生成第二标识的逆运算。
其中,可以按如下(1)和(2)两步对第二标识进行第一运算处理得到连接信息的第一部分信息,包括:
(1):根据第二标识生成第一构造信息。
可以对第二标识进行正转置换处理得到第一构造信息或对第二标识进行反向移位得到第一构造信息。例如,假设第一标识为“auh4321”,对第一标识“auh4321”进行正转置换处理得到第一构造信息为“1234hua”;或 者,假设第一标识为“ua1234h”,对第一标识“ua1234h”进行反向移位两位得到第一构造信息“1234hua”;或者,假设第一标识为“hua1234”,对第一标识“hua1234”进行反向移位三位得到第一构造信息为“1234hua”。
(2):从第一构造信息中去除第一预设信息得到该连接信息的第一部分信息。
例如,第一预设信息为“hua”,从第一构造信息“1234hua”中去除第一预设信息“hua”得到该连接信息的第一部分信息为“1234”。
步骤702:第一设备根据第二认证信息生成该连接信息的第二部分信息。
其中,在执行本步骤之前,技术人员可以在第一设备中设置第二认证信息或者由第一设备生成第二认证信息并存储生成的第二认证信息。
第一设备可以按如下方式生成第二认证信息,包括:第一设备生成连接信息,向连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据第二构造信息生成第二认证信息。可以对第二构造信息进行反转置换或移位处理得到第二认证信息。
假设,生成的连接信息为“12345678”,该连接信息的第一部分信息为“5678”,第二预设信息为“wei”,则第一设备向连接信息的第二部分信息“5678”添加第二预设信息“wei”得到的第二构造信息可以为“5678wei”、“wei5678”或“56wei78”等。假设,构造的第二构造信息为“5678wei”,对第二构造信息进行反转置换处理得到的第二认证信息为“iew5678”;或,事先设置移位的位数,该位数可以为二或三等,然后对第二构造信息进行两位移位处理或三位移位处理等,如当对第二构造信息进行两位移位处理得到的第二认证信息为“ei5678w”,当对第二构造信息进行三位移位处理得到的第二认证信息为“wei5678”。
本步骤可以为,第一设备对第二认证信息进行截取得到部分信息,将截取的该部分信息确定为连接信息的第二部分信息;或者,对第二认证信息进行第二运算处理得到连接信息的第二部分信息,第二运算处理为生成第二认证信息的逆运算。
其中,可以按如下(1)和(2)两步对第二认证信息进行第二运算处理得到连接信息的第二部分信息,包括:
(1):根据第二认证信息生成第二构造信息。
可以对第二认证信息进行正转置换处理得到第二构造信息或对第二认证信息进行反向移位得到第二构造信息。例如,假设第二认证信息为“iew4321”,对第二认证信息“iew4321”进行正转置换处理得到第二构造信息为“5678wei”;或者,假设第二认证信息为“ei5678w”,对第二认证信息“ei5678w”进行反向移位两位得到第二构造信息“5678wei”;或者,假设第二认证信息为“wei5678”,对第二认证信息“wei5678”进行反向移位三位得到第二构造信息为“5678wei”。
(2):从第二构造信息中去除第二预设信息得到该连接信息的第二部分信息。
例如,第二预设信息为“wei”,从第二构造信息“5678wei”中去除第二预设信息“wei”得到该连接信息的第二部分信息为“5678”。
步骤703:第一设备根据第一部分信息和第二部分信息构造连接信息。
将前述第一部分信息与第二部分信息进行拼接得到连接信息,如将第一部分信息“1234”与第二部分信息“5678”进行拼接得到“12345678”作为连接信息。
其中,在本发明实施例中,第一设备可以在其对应的第一用户的触发下按上述701至703的步骤生成连接信息。具体有如下两种触发方式,包括:
第一、第一设备检测到系统应用的应用界面中的连接接口被第一用户点击触发的连接命令时,执行上述步骤301至303。
其中,在具有传输数据需求的系统应用的应用界面中设置一连接接口,当第一用户需要传输数据时,可以点击该连接接口,以使该连接接口触发连接命令。系统应用可以为具有图片分享功能的图片拍照应用或具有视频分享功能的视频拍摄应用。
例如,参见图2-2所示的系统应用的应用界面,该系统应用是一个图片拍照应用,图片拍照应用拍摄一张图片并显示在应用界面中,在应用界面的上方有一连接接口,第一用户点击该连接接口,该连接接口触发连接命令。第一设备当检测出该连接接口触发的连接命令时,执行上述步骤301至303生成连接信息,假设生成的连接信息为“12345678”,如图2-3所示。
第二、第一设备检测到第三方应用的应用界面中的连接接口被第一用户点击触发的连接命令时,执行上述步骤301至303生成连接信息,第三 方应用为用于建立无线连接的应用。
其中,在第一设备上安装一个用于建立无线连接的第三方应用,第三方应用的应用界面中包含连接接口。当第一用户需要传输数据时,可以点击该连接接口,以使连接接口触发连接命令。
例如,参见图2-4所示的第三方应用的应用界面,在该应用界面中有一连接接口,第一用户点击该连接接口,该连接接口触发连接命令。第一设备当检测出该连接接口触发的连接命令时,执行上述步骤301至303生成连接信息,假设生成的连接信息为“12345678”,如图2-5。
步骤704:第一设备向第二设备提供该连接信息。
具体地,本步骤可以包括如下第一至第四四种实现方式,分别为:
第一、第一设备显示该连接信息。
其中,第二设备对应的第二用户可以查看第一设备显示的该连接信息,并将该连接信息输入给第二设备。
第二、第一设备通过音箱播放该连接信息。
其中,第二用户可以收听第一设备播放的该连接信息,并将该连接信息输入给第二设备。
第三、第一设备根据该连接信息生成包含该连接信息的图形码,显示该图形码。
该图形码可以为一维码或二维码,第一设备可以使用用于生成图形码的编码算法对该连接信息进行编码,以生成包含该连接信息的图形码。
其中,第二设备具有扫描模块,该扫描模块可以为摄像头或扫描仪等。第一设备显示该图形码之后,第二设备可以通过其包括的扫描模块扫描第一设备显示的该图形码并获得该连接信息。
第四、第一设备与第二设备建立短距离通信连接,通过该短距离通信连接向第二设备发送该连接信息。
其中,第一设备可以通过带外通信方式与第二设备建立短距离通信连接。带外通信方式可以为声波、红外、NFC或HotKnot等通信方式。
其中,在本发明实施例中,第一设备可以为一终端设备或AP。当第一设备为终端设备时,在执行本步骤之前,第一设备将自身的身份设置为AP,然后再执行本步骤。第一设备成为AP后,也可以主动广播Beacon消息,向周围的STA告知自身的存在。接收该Beacon消息的设备根据该Beacon 消息确定第一设备为一AP并主动请求与第一设备建立连接,然后第一设备再执行本步骤。
步骤705:第二设备获取第一设备提供的该连接信息。
具体地,第二设备可以通过如下第一、第二和第三三种方式来获取该连接信息。
第一、第二设备接收第二用户输入的该连接信息。
其中,第一设备生成连接信息后显示该连接信息或者通过音箱播放该连接信息。第二用户可以查看或收听该连接信息,然后向第二设备输入该连接信息。
其中,第二设备可以通过如下(1)和(2)两种方式获取第二用户输入的连接信息,包括:
(1)、第二设备从系统应用的应用界面中获取第二用户输入的连接信息。
系统应用的应用界面中包含接收接口,第二用户点击该接收接口时,该接收接口触发接收命令。第二设备当检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,第二用户可以向该输入框输入查看到的连接信息或收听到的连接信息。
例如,第一设备显示连接信息“12345678”或通过音箱播放连接信息“12345678”,第二用户查看连接信息“12345678”或收听连接信息“12345678”。然后,第二用户在如图2-6所示的系统应用的应用界面中点击接收接口,该接收接口触发接收命令,第二设备检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,如图2-7所示,第二用户在该输入框输入该连接信息“12345678”。然后第二设备从该输入框中读取第二用户输入的连接信息“12345678”。
(2)、第二设备从第三方应用的应用界面中获取第二用户输入的连接信息。
第三方应用的应用界面中包含接收接口,第二用户点击该接收接口时,该接收接口触发接收命令。第二设备当检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,第二用户可以向该输入框输入查看到的连接信息或收听到的连接信息。
例如,第二用户在如图2-4所示的系统应用的应用界面中点击接收接 口,该接收接口触发接收命令,第二设备检测出该接收接口触发的接收命令时,在该应用界面中显示输入框,如图2-8所示,第二用户在该输入框输入该连接信息“12345678”。然后第二设备从该输入框中读取第二用户输入的连接信息“12345678”。
第二、第二设备扫描第一设备显示的图形码,获取该图形码中包含的该连接信息。
其中,第二用户可以开启第二设备的扫描模块,然后第二设备通过扫描模块扫描第一设备显示的图形码,对扫描的图形码进行解析,解析出扫描的图形码中包含的连接信息。
第三、第二设备与第一设备建立短距离通信连接,通过该短距离通信连接接收第一设备发送的该连接信息。
其中,在本实施例中,第一设备生成一个连接信息,用户可以将该连接信息输入给第二设备,或通过第二设备扫描第一设备上包含该连接信息的图形码,或者将第二设备与第一设备靠近,以使第二设备短距离通信方式获得该连接信息,相比用户从大量的设备搜索结果中去找出第二设备的标识,本步骤可以节省第一设备进行设备搜索的时间以及用户寻找第二设备的标识的时间,从而可以缩短建立无线连接的时间。
步骤706:第二设备根据该连接信息包括的第一部分信息计算生成第一标识。
具体地,本步骤可以包括如下第一和第二两种实现方式,包括:
第一、第二设备对该连接信息的第一部分信息进行哈希运算得到第一哈希结果,根据第一哈希结果生成第一标识。
可以从第一哈希结果中截取部分信息作为第一标识,或,将截取的部分信息添加预设信息组成第一标识,或,将第一哈希结果作为第一标识等。
第二、第二设备向该连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据第一构造信息生成第一标识。
其中,可以对第一构造信息进行反转置换处理或移位处理来生成第一标识。例如,假设连接信息“12345678”的第一部分信息为“1234”,第一预设信息为“hua”,则第二设备向连接信息的第一部分信息“1234”添加第一预设信息“hua”得到的第一构造信息可以为“1234hua”、“hua1234”或“12hua34”等。
假设,构造的第一构造信息为“1234hua”,对第一构造信息进行反转置换处理得到的第一标识为“auh4321”;或,事先设置移位的位数,该位数可以为二或三等,然后对第一构造信息进行两位移位处理或三位移位处理等,如当对第一构造信息进行两位移位处理得到的第一标识为“ua1234h”,当对第一构造信息进行三位移位处理得到的第一标识为“hua1234”。
第二设备生成第一标识的方式除了以上第一和第二两种外,还可以采用其他方式,例如,可以从该连接信息中截取预设第一位数的一串字符串作为第一字符串,根据第一字符串生成第一标识;或者,对整个连接信息进行哈希运算得到第一标识。
其中,第二设备根据第一字符串生成第一标识的实现方式,包括如下(1)至(4)四种:
(1)、将第一字符串确定为第一标识。
例如,预设第一位数为6,第二设备从连接信息“12345678”中截取前6位的字符串“123456”或后6位字符串“345678”作为第一字符串,将第一字符串“123456”或“345678”确定为第一标识。
(2)、将第一字符串与第一预设字符串组成第一标识。
例如,第一字符串为“123456”,第一预设字符串为“Huawei”,将第一字符串与第一预设字符串组成的第一标识为“123456Huawei”或“Huawei123456”。
(3)、对第一字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串作为第一标识。
(4)、对第一字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串,将截取的字符串与第一预设字符串组成第一标识。
步骤707:第二设备发送Test request消息,该Test request消息的动作帧携带第一标识和第二设备支持的通信模式。
其中,第二设备至少支持一种通信模式,通信模式包括AP-STA,GO-Client和P2P通信模式。Test request消息的动作帧包括标识字段和通信模式字段,标识字段用于携带第一标识,通信模式字段用于携带第二设备支持的通信模式。
步骤708:第一设备接收Test request消息,该Test request消息的动作帧携带第一标识和第二设备支持的通信模式。
例如,第二设备发送Test request消息,该Test request消息的动作帧携带第一标识“123456”和第二设备支持的通信模式包括AP-STA和GO-Client,第一设备接收该Test request消息。
步骤709:第一设备确定第一标识与第二标识是否匹配,如果匹配执行步骤710。
其中,第一标识与第二标识匹配是指第一标识与第二标识相等或者第一标识与第二标识之间存在对应关系。
其中,可以事先在第一设备设置标识关系列表,该标识关系列表用于存储具有对应关系的任意两标识。
相应地,第一设备可以通过如下方式来确定第一标识与第二标识是否存在对应关系,包括:第一设备可以根据第一标识,从该标识关系列表中查找出对应的标识,如果查找出的标识与第二标识相等,则确定出第一标识与第二标识之间存在对应关系,否则,确定第一标识与第二标识之间不存在对应关系。
步骤710:第一设备从第二设备支持的通信模式中选择一种通信模式,根据选择的通信模式设置自身的身份,向第二设备发送Test response消息,该Test response消息携带选择的通信模式和第一设备的身份。
具体地,第一设备将自身支持的通信模式与第二设备支持的通信模式做交集,从交集的结果中选择一种通信模式,然后根据选择的通信模式设置自身的身份,例如,如果选择的是AP-STA,则可以将自身的身份设置为AP,如果选择的是GO-Client,则可以将自身的身份设置为GO,如果选择的是P2P通信模式,则可以将自身的身份设置为AP,然后向第二设备发送Test response消息,该Test response消息携带选择的通信模式和第一设备的身份。
其中,该Test response消息用于第二设备确定与第一设备建立无线连接。第二设备发送Test request消息,以请求与一P2P设备建立无线连接,该P2P设备的第一标识携带在该Test request消息的动作帧中。所以在本步骤中,当第一设备判断出第一标识与第二标识匹配,则第一设备可以获知第二设备请求与自身建立无线连接,从而确定需要与第二设备建立无线连 接,向第二设备发送Test response消息,以告知第二设备同意与其建立无线连接。
例如,假设第二设备发送的Test request消息的动作帧携带第一标识“123456”。第一设备接收该Test request消息,生成的第二标识为“123456”,其中,第一标识“123456”和第二标识“123456”相同,所以第一标识与第二标识匹配,确定需要与第二设备建立无线连接,获取自身支持的通信模式包括AP-STA、GO-Client和P2P通信模式,将自身支持的通信模式与第二设备支持的通信模式AP-STA和GO-Client取交集得到的交集结果中包括AP-STA和GO-Client,从交集结果中随机选择一种通信模式,假设为AP-STA,然后将自身的身份设置为AP,向第二设备发送Test response消息,该Test response消息携带选择的通信模式AP-STA和第一设备的身份为AP。
步骤711:第二设备接收Test response消息,根据该Test response消息设置自身的身份以及确定与第一设备建立无线连接,执行步骤712。
其中,第二设备根据该Test response消息携带第一设备选择的通信模式和第一设备的身份设置自身的身份。例如,第二设备接收Test response消息,该Test response消息携带第二设备选择的通信模式AP-STA和第一设备的身份AP,根据第二设备选择的通信模式AP-STA和第一设备的身份AP,将自身的身份设置为STA。
步骤712:第二设备根据该连接信息的第二部分信息生成第一认证信息。
连接信息的第一部分信息的内容和第二部分信息的内容可以不同或者部分相同。例如,该连接信息为“12345678”,第一部分信息可以为“1234”,第二部分信息可以为“5678”,或者,第一部分信息可以为“123456”,第二部分信息可以为“345678”等。
具体地,本步骤可以通过如下第一和第二两种实现方式,包括:
第一、第二设备对该连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据第二哈希结果生成第二认证信息。
第二、第二设备向该连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据第二构造信息生成第一认证信息。
其中,第二设备除了可以采用上述第一和第二两种方式生成第一认证信息外,还可以采用其他的方式来生成第一认证信息。例如第二设备从该 连接信息中截取预设第二位数的字符串作为第四字符串,根据第四字符串生成第一认证信息;或者,将该连接信息确定为第一认证信息。
其中,第二设备根据第四字符串生成第一认证信息的实现方式,包括如下几种:
第一、将第四字符串确定为第一认证信息。
例如,假设预设第二位数为4,第一设备从连接信息“12345678”中截取前4位字符串“1234”或后4位字符串“5678”作为第四字符串,并将第四字符串作为第一认证信息。
其中,在本发明实施例中,预设第一位数和第二位数之和可以与连接信息包括的字符位数相等。相应地,第二设备从连接信息中截取的预设第一位数的第一字符串后得到剩下的字符串,该剩下的字符串的位数为预设第二位数,可以将剩下预设第二位数的字符串作为第四字符串。例如,预设第一位数为6,所以预设第二位数为2,第二设备从连接信息“12345678”中截取预设第一位数的第一字符串“123456”后得到剩下预设第二位数的字符串“78”,第一设备可以将剩下预设第二位数的字符串“78”作为第四字符串。
第二、将第四字符串与第二预设字符串组成第一认证信息。
例如,假设第四字符串为“1234”,第二预设字符串为“9860”,将第四字符串与第二预设字符串组成的第二认证信息为“12349860”或“98601234”。
第三、对第四字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第二位数的字符串作为第二认证信息,或者,将该哈希结果确定为第一认证信息。
第四、根据第四字符串和第二设备采用的认证方式,生成第一认证信息。
具体地,根据第二设备采用的认证方式,确定认证信息的位数;根据确定位数对第四字符串进行填充信息或截取信息得到第二认证信息;例如,第四字符串为“1234”,假设第二设备采用的WPS认证方式,根据WPS认证方式,确定认证信息的位数为8数字,对第四字符串“1234”填充信息“9988”得到第一认证信息为“12349988”,再如,假设,第二设备采用的四步握手认证方式,根据四步握手认证方式,确定认证信息的位数为256 比特,而第四字符串“1234”包括32比特,因此对第四字符串填充224比特,得到256比特的第一认证信息。或者,
根据第二设备采用的认证方式,确定认证信息的位数;对第四字符串进行哈希运算得到哈希结果,根据确定位数对该哈希结果进行填充信息或截取信息得到第二认证信息;例如,第四字符串为“1234”,对第四字符串“1234”进行哈希运算得到该哈希结果为“98765432111”,假设第二设备采用的WPS认证方式,根据WPS认证方式,确定认证信息的位数为8位数字,从该哈希结果中截取8位数字“98765432”作为第一认证信息;再如,假设,第二设备采用的四步握手认证方式,根据四步握手认证方式,确定认证信息的位数为256比特,而该哈希结果为“98765432111”包括88比特,因此对该哈希结果填充168比特,得到256比特的第一认证信息。
步骤713:第一设备验证第二设备的第一认证信息与其第二认证信息是否匹配,如果匹配,则向第二设备发送确认信息,该确认信息用于第二设备确定与第一设备建立无线连接。
其中,第一设备采用的认证方式可以为IEEE802.11中的四步握手认证方式、WFA规定的WPS认证方式或其他认证方式。每种认证方式规定了认证消息的格式,例如,四步握手认证方式规定认证消息为256比特组成的密钥信息,WPS认证方式规定认证消息为8位数字等。
当采用四步骤握手认证方式时,本步骤可以为:第一设备将第二认证信息确定为四步握手认证方式的PMK,根据该PMK并通过该四步握手认证方式验证第二设备的第一认证信息与其第二认证信息是否匹配。
当采用WPS认证方式时,本步骤可以为:第一设备将第二认证信息确定为WPS认证方式的PIN,根据该PIN并通过WPS认证方式验证第二设备的第一认证信息与其第二认证信息是否匹配。
其中,在第一设备验证的过程中,第二设备与第一设备进行验证,以使第一设备确定第二设备的第一认证信息与第一设备的第二认证信息是否匹配。具体实现为:第二设备将第一认证信息作为四步握手认证方式的PMK,根据该PMK并通过四步握手认证方式与第一设备进行认证;或者,将第一认证信息作为WPS认证PIN,根据该PIN并通过WPS认证方式与第一设备进行验证。
其中,第二设备在验证的过程中,当接收到第一设备发送的确认信息 后,根据该确认信息确定出与第一设备建立无线连接,然后执行步骤314。
步骤714:第一设备建立与第二设备之间的数据连接,以实现建立与第二设备之间的无线连接。
其中,第二设备建立与第一设备之间的无线连接为加密的无线连接,第二设备和第一设备可以通过该加密的无线连接来传输数据。该无线连接可以为Wi-Fi连接或蓝牙连接。
在本发明实施例中,第一设备生成连接信息并提供给第二设备,第二设备根据该连接信息生成第一标识,向第一设备发送携带第一标识的Probe request消息,第一设备确定自身存储的第二标识与第二设备的第一标识是否匹配,如果第一标号与第二标识匹配,则建立与第二设备之间的无线连接。其中第二设备通过用户手工输入或其他方式获得由第一设备生成的连接信息,并根据连接信息生成第一标识,通过第一标识确定需要连接的设备,从而避免用户手工选择需要连接的设备,从而提高了建立无线连接的效率,以提高数据传输的效率。第一设备与第二设备还通过第一认证信息和第二认证信息进行相互之间的认证,从而使得建立的无线连接为更加安全,提高了数据传输的安全性。
加实施例:NAN设备
本发明实施例提供了一种建立无线连接的方法。在本发明实施例中,第一设备和第二设备为NAN设备。第一消息和第二消息为SDF消息,连接信息可以由系统应用提供,生成。参见图X,该方法包括:
实施例8
参见图8,本发明实施例提供了一种用于建立无线连接的设备,该设备为第一设备,用于与第二设备建立无线连接,包括:
生成模块801,用于接收第一用户的操作指令后,根据所述操作指令生成连接信息,所述第一用户为所述第一设备对应的用户;
提供模块802,用于向所述第一设备附近的第二设备提供所述连接信息,以便所述第二设备对所述连接信息的第一部分信息采用预设算法进行 计算生成得到第一标识,所述第一部分信息是所述连接信息的部分或全部;
接收模块803,用于接收所述第二设备根据所述连接信息发送的第一消息,所述第一消息中携带第一标识;
确定模块804,用于确定所述第一标识与所述第一设备的第二标识是否匹配,所述第二标识与对所述第一部分信息进行计算生成的结果相等或相对应;
发送模块805,用于如果确定模块804确定出所述第一标识与所述第一设备的第二标识匹配,向所述第二设备发送第二消息,其中所述第二消息为所述第一消息的响应消息;
建立模块806,用于建立与所述第二设备之间的无线连接。
进一步地,所述第一设备还包括:
第一计算模块,用于对所述连接信息的第一部分信息采用预设算法进行计算生成所述第一设备的第二标识。
优选的,所述第一计算模块包括:
第一哈希单元,用于对所述连接信息的第一部分信息进行哈希运算得到第一哈希结果,根据所述第一哈希结果生成所述第一设备的第二标识;或者,
第一构造单元,用于向所述连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据所述第一构造信息生成所述第一设备的第二标识。
进一步地,第一计算模块除了通过上述两种方式计算第二标识外,还可以采用其他方式计算第二标识。例如,第一计算模块可以从该连接信息中截取预设第一位数的字符串作为第二字符串,根据第二字符串生成第二标识;或者,对整个该连接信息进行哈希运算得到第二标识。
优选的,第一计算模块根据第二字符串生成第二标识的实现方式,包括如下(1)至(4)四种:
(1)、将第二字符串确定为第二标识。
例如,预设第一位数为6,该连接信息为“12345678”,第一设备从连接信息“12345678”中截取前6位的字符串“123456”或后6位字符串“345678”作为第二字符串,将第二字符串“123456”或“345678”确定为第二标识。
(2)、将第二字符串与第一预设字符串组成第二标识。
例如,假设,第二字符串为“123456”,第一预设字符串为“Huawei”,将第二字符串与第一预设字符串组成的第二标识为“123456Huawei”或“Huawei123456”。
(3)、对第二字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串作为第二标识。
(4)、对第二字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串,将截取的字符串与预设字符串组成第二标识。
优选的,所述确定模块804,用于如果所述第一标识与所述第一设备的第二标识相等或所述第一标识与所述第一设备的第二标识之间存在对应关系,则确定出所述第一标识与所述第一设备的第二标识匹配。
其中,可以事先在第一设备设置标识关系列表,该标识关系列表用于存储具有对应关系的任意两标识。
优选的,确定模块可以通过如下方式来确定第一标识与第二标识是否存在对应关系,包括:确定模块可以根据第一标识,从该标识关系列表中查找出对应的标识,如果查找出的标识与第二标识相等,则确定出第一标识与第二标识之间存在对应关系,否则,确定第一标识与第二标识之间不存在对应关系。
优选的,所述提供模块802包括:
显示播放单元,用于显示或播放所述连接信息,使用户向所述第二设备输入所述连接信息;或者,
显示单元,用于根据所述连接信息生成包含所述连接信息的图形码,显示所述图形码,使所述第二设备扫描所述的图形码并获取所述连接信息;或者,
发送单元,用于与第二设备建立短距离通信连接,通过所述短距离通信连接发送所述连接信息给所述第二设备。
其中,提供模块802中可以包含音箱,通过该音箱播放该连接信息。
其中,所述第一消息为探测请求Probe request消息,所述Probe request消息的SSID字段携带所述第一标识,或者,所述Probe request消息的保留字段携带所述第一标识;或者,
所述第一消息为Test request消息,所述Test request消息的Action Frame 携带所述第一标识。
进一步地,所述第一设备还包括:
设置模块,用于将自身的身份设置为接入点AP,然后执行接收所述第二设备发送的Probe request消息的操作。
优选的,所述建立模块806包括:
验证单元,用于验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配,所述第一认证信息是所述第二设备根据所述连接信息的第二部分信息计算生成的,所述第二部分信息是所述连接信息的部分或全部,所述第二认证信息与对所述第二部分信息进行计算生成的结果相等或相对应;
建立单元,用于如果验证出所述第一认证信息与所述第二认证信息匹配,则向所述第二设备发送确认信息,所述确认信息用于所述第二设备确定将与所述第一设备建立无线连接,建立与所述第二设备之间的无线连接。
优选的,所述验证单元包括:
第一验证子单元,用于将所述第一设备的第二认证信息确定为四步握手认证方式的PMK,根据所述PMK并通过所述四步握手认证方式验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配;或者,
第二验证子单元,用于将所述第一设备的第二认证信息确定为WPS认证方式的PIN,根据所述PIN并通过所述WPS认证方式验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配。
进一步地,所述第一设备还包括:
第二计算模块,用于根据所述连接信息的第二部分信息计算生成所述第一设备的第二认证信息。
优选的,所述第二计算模块包括:
第二哈希单元,用于对所述连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据所述第二哈希结果生成所述第一设备的第二认证信息;或者,
第二构造单元,用于向所述连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据所述第二构造信息生成所述第一设备的第二认证信息。
第二计算模块除了采用上述第一和第二两种方式生成第二认证信息外,还可以采用其他的方式来生成第二认证信息。例如第二计算模块从该连接信息中截取预设第二位数的字符串作为第四字符串,根据第四字符串生成第二认证信息;或者,将该连接信息确定为第二认证信息。
其中,第二计算模块根据第四字符串生成第二认证信息的实现方式,包括如下几种:
第一、将第四字符串确定为第二认证信息。
例如,假设预设第二位数为4,第二计算模块从连接信息“12345678”中截取前4位字符串“1234”或后4位字符串“5678”作为第四字符串,并将第四字符串作为第二认证信息。
其中,在本发明实施例中,预设第一位数和第二位数之和可以与连接信息包括的字符位数相等。相应地,第二计算模块从连接信息中截取的预设第一位数的第一字符串后得到剩下的字符串,该剩下的字符串的位数为预设第二位数,可以将剩下预设第二位数的字符串作为第四字符串。例如,预设第一位数为6,所以预设第二位数为2,第二计算模块从连接信息“12345678”中截取预设第一位数的第一字符串“123456”后得到剩下预设第二位数的字符串“78”,第二计算模块可以将剩下预设第二位数的字符串“78”作为第四字符串。
第二、将第四字符串与第二预设字符串组成第二认证信息。
例如,假设第四字符串为“1234”,第二预设字符串为“9860”,将第四字符串与第二预设字符串组成的第二认证信息为“12349860”或“98601234”。
第三、对第四字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第二位数的字符串作为第二认证信息,或者,将该哈希结果确定为第二认证信息。
第四、根据第四字符串和第二设备采用的认证方式,生成第二认证信息。
具体地,根据第一设备采用的认证方式,确定认证信息的位数;根据确定的位数对第四字符串进行填充信息或截取信息得到第二认证信息;例如,第四字符串为“1234”,假设第一设备采用的WPS认证方式,根据WPS认证方式,确定认证信息的位数为8位数字,对第四字符串“1234”填充 信息“9988”得到第一认证信息为“12349988”,再如,假设,第一设备采用的四步握手认证方式,根据四步握手认证方式,确定认证信息的位数为256比特,而第四字符串“1234”包括32比特,因此对第四字符串填充224比特,得到256比特的第一认证信息。或者,
根据第一设备采用的认证方式,确定认证信息的位数;对第四字符串进行哈希运算得到哈希结果,根据确定位数对该哈希结果进行填充信息或截取信息得到第二认证信息;例如,第四字符串为“1234”,对第四字符串“1234”进行哈希运算得到哈希结果为“98765432111”,假设第二设备采用的WPS认证方式,根据WPS认证方式,确定认证信息的位数为8数字,从该哈希结果中截取8位数字“98765432”作为第一认证信息;再如,假设,第二设备采用的四步握手认证方式,根据四步握手认证方式,确定认证信息的位数为256比特,而该哈希结果为“98765432111”包括88比特,因此对该哈希结果填充168比特,得到256比特的第二认证信息。
进一步地,所述第一设备还包括:
第一生成模块,用于根据所述第一设备的第二标识生成所述连接信息的第一部分信息;
第二生成模块,用于根据所述第一设备的第二认证信息生成所述连接信息的第二部分信息;
构造模块,用于根据所述第一部分信息和所述第二部分信息构造所述连接信息。
优选的,所述第一生成模块包括:
第一截取单元,用于对所述第一设备的第二标识进行截取得到部分信息,将所述部分信息确定为所述连接信息的第一部分信息;或者,
第一运算单元,用于对所述第一设备的第二标识进行第一运算处理得到所述连接信息的第一部分信息,所述第一运算处理为生成所述第二标识的逆运算。
优选的,所述第二生成模块包括:
第二载取单元,用于对所述第一设备的第二认证信息进行截取得到部分信息,将所述部分信息确定为所述连接信息的第二部分信息;或者,
第二运算单元,用于对所述第一设备的第二认证信息进行第二运算处理得到所述连接信息的第二部分信息,所述第二运算处理为生成所述第一 认证信息的逆运算。
优选的,所述建立模块806,用于与所述第二设备进行开放认证,并在认证通过后建立与所述第二设备之间的数据连接,以实现建立与所述第二设备之间的无线连接。
其中,所述无线连接为无线保真Wi-Fi连接或为蓝牙连接。
在本发明实施例中,第一设备生成连接信息并提供给第二设备,第二设备根据该连接信息生成第一标识,向第一设备发送携带第一标识的第一消息,第一设备根据该连接信息生成第二标识,如果第一标号与第二标识匹配,则建立与第二设备之间的无线连接,用户不需要在大量的搜索结果中选择设备,提高建立无线连接的效率,以提高数据传输的效率。
实施例9
参见图9,本发明实施例提供了一种用于建立无线连接的设备,该设备为第二设备,用于与第一设备建立无线连接,所述第二设备包括:
获取模块901,用于获取所述第二设备附近的第一设备提供的连接信息,所述连接信息是所述第一设备接收第一用户的操作指令后根据所述操作指令生成的,所述第一用户为所述第一设备对应的用户;
计算模块902,用于根据所述连接信息的第一部分信息计算生成第一标识,所述第一部分信息是所述连接信息的部分或全部;
发送模块903,用于向所述第一设备发送第一消息,所述第一消息携带所述第一标识,以使得所述第一设备确定所述第一标识与第二标识是否匹配,所述第二标识与对所述第一部分信息进行计算生成的结果相等或相对应;
接收模块904,用于接收所述第一设备在所述第一标识与所述第二标识匹配时发送的第二消息,所述第二消息为所述第一消息的响应消息;
建立模块905,用于建立与所述第一设备之间的无线连接。
优选的,所述计算模块902包括:
第一哈希单元,用于对所述连接信息的第一部分信息进行哈希运算得到第一哈希结果,根据所述第一哈希结果生成所述第一标识;或者,
第一添加单元,用于向所述连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据所述第一构造信息生成所述第一标识。
计算模块902生成第一标识的方式除了以上第一和第二两种外,还可以采用其他方式,例如,可以从该连接信息中截取预设第一位数的一串字符串作为第一字符串,根据第一字符串生成第一标识;或者,对整个连接信息进行哈希运算得到第一标识。
其中,计算模块902根据第一字符串生成第一标识的实现方式,包括如下(1)至(4)四种:
(1)、将第一字符串确定为第一标识。
例如,预设第一位数为6,计算模块902从连接信息“12345678”中截取前6位的字符串“123456”或后6位字符串“345678”作为第一字符串,将第一字符串“123456”或“345678”确定为第一标识。
(2)、将第一字符串与第一预设字符串组成第一标识。
例如,第一字符串为“123456”,第一预设字符串为“Huawei”,将第一字符串与第一预设字符串组成的第一标识为“123456Huawei”或“Huawei123456”。
(3)、对第一字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串作为第一标识。
(4)、对第一字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第一位数的字符串,将截取的字符串与第一预设字符串组成第一标识。
优选的,所述建立模块904包括:
验证单元,用于与所述第一设备进行验证,以使所述第一设备确定所述第二设备的第一认证信息与所述第一设备的第二认证信息是否匹配,所述第一认证信息是根据所述连接信息的第二部分信息计算生成的,所述第二认证信息与对所述连接信息的第二部分信息计算生成的结果相等或相对应;
第一接收单元,用于接收所述第一设备验证出所述第一认证信息与所述第二认证信息匹配时发送的确认信息;
建立单元,用于根据所述确认信息建立与所述第一设备之间的无线连接。
优选的,所述验证单元包括:
第一验证子单元,用于将所述第一认证信息确定为四步握手认证方式 的PMK,根据所述PMK并通过所述四步握手认证方式与所述第一设备进行验证;或者,
第二验证子单元,用于将所述第一认证信息确定为无线保真安全设置WPS认证方式的PIN,根据所述PIN并通过所述WPS认证方式与所述第一设备进行验证。
进一步地,所述第二设备还包括:
生成模块,用于根据所述连接信息的第二部分信息计算生成所述第一认证信息。
优选的,所述生成模块包括:
第二哈希单元,用于对所述连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据所述第二哈希结果生成所述第一认证信息;或者,
第二添加单元,用于向所述连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据所述第二构造信息生成所述第一认证信息。
生成模块除了可以采用上述第一和第二两种方式生成第一认证信息外,还可以采用其他的方式来生成第一认证信息。例如生成模块从该连接信息中截取预设第二位数的字符串作为第四字符串,根据第四字符串生成第一认证信息;或者,将该连接信息确定为第一认证信息。
其中,生成模块根据第四字符串生成第一认证信息的实现方式,包括如下几种:
第一、将第四字符串确定为第一认证信息。
例如,假设预设第二位数为4,第一设备从连接信息“12345678”中截取前4位字符串“1234”或后4位字符串“5678”作为第四字符串,并将第四字符串作为第一认证信息。
其中,在本发明实施例中,预设第一位数和第二位数之和可以与连接信息包括的字符位数相等。相应地,生成模块从连接信息中截取的预设第一位数的第一字符串后得到剩下的字符串,该剩下的字符串的位数为预设第二位数,可以将剩下预设第二位数的字符串作为第四字符串。例如,预设第一位数为6,所以预设第二位数为2,生成模块从连接信息“12345678”中截取预设第一位数的第一字符串“123456”后得到剩下预设第二位数的字符串“78”,第一设备可以将剩下预设第二位数的字符串“78”作为第四字符串。
第二、将第四字符串与第二预设字符串组成第一认证信息。
例如,假设第四字符串为“1234”,第二预设字符串为“9860”,将第四字符串与第二预设字符串组成的第二认证信息为“12349860”或“98601234”。
第三、对第四字符串进行哈希运算得到哈希结果,从该哈希结果中截取预设第二位数的字符串作为第一认证信息,或者,将该哈希结果确定为第一认证信息。
第四、根据第四字符串和第二设备采用的认证方式,生成第一认证信息。
具体地,根据第二设备采用的认证方式,确定认证信息的位数;根据确定的位数对第四字符串进行填充信息或截取信息得到第二认证信息;例如,第四字符串为“1234”,假设第二设备采用的WPS认证方式,根据WPS认证方式,确定认证信息的位数为8位数字,对第四字符串“1234”填充信息“9988”得到第一认证信息为“12349988”,再如,假设,第二设备采用的四步握手认证方式,根据四步握手认证方式,确定认证信息的位数为256比特,而第四字符串“1234”包括32比特,因此对第四字符串填充224比特,得到256比特的第一认证信息。或者,
根据第二设备采用的认证方式,确定认证信息的位数;对第四字符串进行哈希运算得到哈希结果,根据确定位数对该哈希结果进行填充信息或截取信息得到第二认证信息;例如,第四字符串为“1234”,对第四字符串“1234”进行哈希运算得到哈希结果为“98765432111”,假设第二设备采用的WPS认证方式,根据WPS认证方式,确定认证信息的位数为8数字,从该哈希结果中截取8位数字“98765432”作为第一认证信息;再如,假设,第二设备采用的四步握手认证方式,根据四步握手认证方式,确定认证信息的位数为256比特,而该哈希结果为“98765432111”包括88比特,因此对该哈希结果填充168比特,得到256比特的第一认证信息。
优选的,所述获取模块901包括:
第二接收单元,用于接收用户输入的所述第一设备的连接信息;或者,
扫描单元,用于扫描所述第一设备显示图形码,获取所述图形码中包含的所述第一设备的连接信息;或者,
第三接收单元,用于与所述第一设备建立短距离通信连接,通过所述 短距离通信连接接收所述第一设备发送的连接信息。
其中,所述第一消息为探测请求Probe request消息,所述Probe request消息的标识服务集标识SSID字段携带所述第一标识,或者,所述Probe request消息的保留字段携带所述第一标识;或者,
所述第一消息为测试请求Test request消息,所述Test request消息的动作帧Action Frame携带所述第一标识。
优选的,所述建立模块905,用于与所述第一设备进行开放认证,并在认证通过后建立与所述第一设备之间的无线连接。
其中,所述无线连接为无线保真Wi-Fi连接或为蓝牙连接。
在本发明实施例中,第二设备获取第一设备提供的连接信息,根据该连接信息生成第一标识,向第一设备发送携带第一标识的第一消息,以使第一设备根据确定第一标号与第一设备的第二标识是否匹配,如果匹配,则第二设备建立与第一设备之间的无线连接,用户不需要在大量的搜索结果中选择设备,提高建立无线连接的效率,以提高数据传输的效率。
实施例10
参见图10,本发明实施例提供了一种设备,该设备为第一设备,用于与第二设备建立无线连接,包括:接收器1001、处理器1002和发送器1003;
所述处理器1002,用于接收第一用户的操作指令后,根据所述操作指令生成连接信息,向所述第一设备附近的第二设备提供所述连接信息,以便所述第二设备对所述连接信息的第一部分信息采用预设算法进行计算生成得到第一标识,所述第一部分信息是所述连接信息的部分或全部;
所述接收器1001,用于接收所述第二设备根据所述连接信息发送的第一消息,所述第一消息中携带第一标识;
所述处理器1002,还用于确定所述接收器接收的第一标识与所述第一设备的第二标识是否匹配,所述第二标识与对所述第一部分信息进行计算生成的结果相等或相对应;
所述发送器1003,用于如果所述处理器确定的结果为匹配,向所述第二设备发送第二消息,其中所述第二消息为所述第一消息的响应消息;
所述处理器1001,还用于建立与所述第二设备之间的无线连接。
进一步地,第一设备还包括触摸显示屏,第一设备接收用户在所述触 摸显示屏的操作所对应的操作指令,根据所述操作指令生成连接信息。
进一步地,所述处理器1002,还用于对所述连接信息的第一部分信息采用预设算法进行计算生成所述第一设备的第二标识。
优选的,所述处理器1002根据所述连接信息的第一部分信息计算生成所述第一设备的第二标识的操作,包括:
对所述连接信息的第一部分信息进行哈希运算得到第一哈希结果,根据所述第一哈希结果生成所述第一设备的第二标识;或者,
向所述连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据所述第一构造信息生成所述第一设备的第二标识。
优选的,所述处理器1002确定所述接收器接收的第一标识与所述第一设备的第二标识是否匹配的操作,包括:
如果所述第一标识与所述第一设备的第二标识相等或所述第一标识与所述第一设备的第二标识之间存在对应关系,则确定出所述第一标识与所述第一设备的第二标识匹配。
优选的,所述处理器1002向第二设备提供所述连接信息的操作,包括:
显示或播放所述连接信息,使用户向所述第二设备输入所述连接信息;或者,
根据所述连接信息生成包含所述连接信息的图形码,显示所述图形码,使所述第二设备扫描所述的图形码并获取所述连接信息;或者,
与第二设备建立短距离通信连接,通过所述短距离通信连接发送所述连接信息给所述第二设备。
其中,所述第一消息为探测请求Probe request消息,所述Probe request消息的服务集标识SSID字段携带所述第一标识,或者,所述Probe request消息的保留字段携带所述第一标识;或者,
所述第一消息为测试请求Test request消息,所述Test request消息的动作帧Action Frame携带所述第一标识。
进一步地,所述处理器1002,还用于设置模块,用于将自身的身份设置为接入点AP,然后执行接收所述第二设备发送的Probe request消息的操作。
优选的,所述处理器1002建立与所述第二设备之间的无线连接的操作,包括:
验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配,所述第一认证信息是所述第二设备根据所述连接信息的第二部分信息计算生成的,所述第二部分信息是所述连接信息的部分或全部,所述第二认证信息与对所述第二部分信息进行计算生成的结果相等或相对应;
如果验证出所述第一认证信息与所述第二认证信息匹配,则向所述第二设备发送确认信息,所述确认信息用于所述第二设备确定将与所述第一设备建立无线连接,建立与所述第二设备之间的无线连接。
优选的,所述处理器1002验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配的操作,包括:
将所述第一设备的第二认证信息确定为四步握手认证方式的PMK,根据所述PMK并通过所述四步握手认证方式验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配;或者,
将所述第一设备的第二认证信息确定为无线保真安全设置WPS认证方式的PIN,根据所述PIN并通过所述WPS认证方式验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配。
进一步地,所述处理器1002,还用于根据所述连接信息的第二部分信息计算生成所述第一设备的第二认证信息。
优选的,所述处理器1002根据所述连接信息的第二部分信息计算生成所述第一设备的第二认证信息的操作,包括:
对所述连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据所述第二哈希结果生成所述第一设备的第二认证信息;或者,
向所述连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据所述第二构造信息生成所述第一设备的第二认证信息。
进一步地,所述处理器1002,还用于根据所述第一设备的第二标识生成所述连接信息的第一部分信息;根据所述第一设备的第二认证信息生成所述连接信息的第二部分信息;根据所述第一部分信息和所述第二部分信息构造所述连接信息。
优选的,所述处理器1002根据所述第一设备的第二标识生成所述连接信息的第一部分信息的操作,包括:
对所述第一设备的第二标识进行截取得到部分信息,将所述部分信息确定为所述连接信息的第一部分信息;或者,
对所述第一设备的第二标识进行第一运算处理得到所述连接信息的第一部分信息,所述第一运算处理为生成所述第二标识的逆运算。
优选的,所述处理器1002根据所述第一设备的第二认证信息生成所述连接信息的第二部分信息的操作,包括:
对所述第一设备的第二认证信息进行截取得到部分信息,将所述部分信息确定为所述连接信息的第二部分信息;或者,
第二运算单元,用于对所述第一设备的第二认证信息进行第二运算处理得到所述连接信息的第二部分信息,所述第二运算处理为生成所述第一认证信息的逆运算。
优选的,所述处理器1002建立与所述第二设备之间的无线连接的操作,包括:
与所述第二设备进行开放认证,并在认证通过后建立与所述第二设备之间的无线连接。
其中,所述无线连接为无线保真Wi-Fi连接或为蓝牙连接。
在本发明实施例中,第一设备生成连接信息并提供给第二设备,第二设备根据该连接信息生成第一标识,向第一设备发送携带第一标识的第一消息,第一设备根据该连接信息生成第二标识,如果第一标号与第二标识匹配,则建立与第二设备之间的无线连接,用户不需要在大量的搜索结果中选择设备,提高建立无线连接的效率,以提高数据传输的效率。
实施例十一
参见图11,本发明实施例提供了一种设备,该设备为第二设备,用于与第一设备建立无线连接,包括:处理器1101、发送器1102和接收器1103;
所述处理器1101,用于获取所述第二设备附近的第一设备提供的连接信息,所述连接信息是所述第一设备接收第一用户的操作指令后根据所述操作指令生成的,所述第一用户为所述第一设备对应的用户生成的,根据所述连接信息的第一部分信息计算生成第一标识,所述第一部分信息是所述连接信息的部分或全部;
所述发送器1102,用于向所述第一设备发送第一消息,所述第一消息携带所述处理器生成的所述第一标识,以使得所述第一设备确定所述第一标识与第二标识是否匹配,所述第二标识与对所述第一部分信息进行计算 生成的结果相等或相对应;
所述接收器1103,用于接收所述第一设备在所述第一标识与所述第二标识匹配时发送的第二消息,所述第二消息为所述第一消息的响应消息;
所述处理器1101,还用于建立与所述第一设备之间的无线连接。
优选的,所述处理器1101根据所述连接信息的第一部分信息计算生成第一标识的操作,包括:
对所述连接信息的第一部分信息进行哈希运算得到第一哈希结果,根据所述第一哈希结果生成所述第一标识;或者,
向所述连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据所述第一构造信息生成所述第一标识。
优选的,所述处理器1101建立与所述第一设备之间的无线连接的操作,包括:
与所述第一设备进行验证,以使所述第一设备确定所述第二设备的第一认证信息与所述第一设备的第二认证信息是否匹配,所述第一认证信息是根据所述连接信息的第二部分信息计算生成的,所述第二认证信息与对所述连接信息的第二部分信息计算生成的结果相等或相对应;
接收所述第一设备验证出所述第一认证信息与所述第二认证信息匹配时发送的确认信息;
根据所述确认信息建立与所述第一设备之间的无线连接。
优选的,所述处理器1101与所述第一设备进行验证的操作,包括:
将所述第一认证信息确定为四步握手认证方式的PMK,根据所述PMK并通过所述四步握手认证方式与所述第一设备进行验证;或者,
将所述第一认证信息确定为无线保真安全设置WPS认证方式的PIN,根据所述PIN并通过所述WPS认证方式与所述第一设备进行验证。
进一步地,所述处理器1101,还用于根据所述连接信息的第二部分信息计算生成所述第一认证信息。
优选的,所述处理器1101根据所述连接信息的第二部分信息计算生成所述第一认证信息的操作,包括:
对所述连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据所述第二哈希结果生成所述第一认证信息;或者,
向所述连接信息的第二部分信息添加第二预设信息得到第二构造信 息,根据所述第二构造信息生成所述第一认证信息。
优选的,所述处理器1101获取所述第一设备提供的连接信息的操作,包括:
接收用户输入的所述第一设备的连接信息;或者,
扫描所述第一设备显示图形码,获取所述图形码中包含的所述第一设备的连接信息;或者,
与所述第一设备建立短距离通信连接,通过所述短距离通信连接接收所述第一设备发送的连接信息。
其中,所述第一消息为探测请求Probe request消息,所述Probe request消息的标识服务集标识SSID字段携带所述第一标识,或者,所述Probe request消息的保留字段携带所述第一标识;或者,
所述第一消息为测试请求Test request消息,所述Test request消息的动作帧Action Frame携带所述第一标识。
优选的,所述处理器1101建立与所述第一设备之间的无线连接,包括:
与所述第一设备进行开放认证,并在认证通过后建立与所述第一设备之间的无线连接。
其中,所述无线连接为无线保真Wi-Fi连接或为蓝牙连接。
在本发明实施例中,第二设备获取第一设备提供的连接信息,根据该连接信息生成第一标识,向第一设备发送携带第一标识的第一消息,以使第一设备根据确定第一标号与第一设备的第二标识是否匹配,如果匹配,则第二设备建立与第一设备之间的无线连接,用户不需要在大量的搜索结果中选择设备,提高建立无线连接的效率,以提高数据传输的效率。
实施例十二
如图13所示,本发明实施例提供了一种建立无线连接的方法。在本发明实施例中,第一设备和第二设备为NAN设备。第一设备生成连接信息后,提供给第二设备。第二设备发送携带基于连接信息的第一部分信息获得第一标识的SDF消息,第一设备接收后,判断该SDF消息中的第一标识与自身获得的第二标识是否匹配。第一设备还可以进一步判断第二设备的服务需求与自身服务是否匹配。若匹配,则向第二设备响应SDF消息。第一设 备随后与第二设备进行建立NAN数据链路的过程。参见图13,该方法包括:
步骤1301:第一设备生成连接信息。
该连接信息可以为一串字符串,该连接信息的内容可以为数字、字母或其他字符,或者可以为数字、字母和其他字符中任意多种字符的组合。第一设备可以随机生成一串字符串,将生成的字符串作为连接信息。
补:连接信息可以由上层应用的软件模块生成,也可以由用户通过接口输入一串字符串到设备后,设备根据该字符串生成该连接信息。
其中,在本发明实施例中,第一设备可以在其对应的第一用户的触发下生成连接信息。其触发方式与实施例2中描述的各种方式类似类似,本实施例中不再赘述。
步骤1302:第一设备向第二设备提供该连接信息。
步骤1303:第二设备获取第一设备提供的该连接信息。
步骤1304:第二设备根据该连接信息包括的第一部分信息计算生成第一标识,第一部分信息是该连接信息的部分或全部。
其中步骤1302~步骤1305的过程,与实施例2所描述的过程相似,本实施例不再赘述。
步骤1305:第二设备发送SDF消息,该SDF消息中携带第一标识。
其中,该SDF消息可以为SDF订阅消息,也可以为SDF发布消息,本领域的技术人员可以理解,当第二设备为需要使用某服务时,SDF消息需要为SDF订阅消息;当第二设备为提供某服务时,SDF消息为SDF发布消息。相应地,第一设备会回复SDF发布消息或者SDF后续消息。为描述方便,本实施例以第二设备为需要使用某服务为例,则第二设备在发送的SDF订阅消息中携带第一标识。更多地,第二设备可以在SDF订阅消息中携带第二设备所需要订阅的服务的信息,例如第二设备可以在SDF订阅消息中携带一个SDA(Service Discriptor Attribute,服务描述属性),并在该SDA中携带所需要使用的服务的服务标识及所述服务支持建立NAN数据链路的指示信息。该SDF订阅消息通常在DW(Discovery Window,发现窗口)中发送,也可以在其他第一设备和第二设备同时工作的时段内发送。
步骤1306:第一设备接收该SDF订阅消息。
具体地,第一设备接收该SDF订阅消息后,会根据该SDF订阅消息中的服务标识,判断是否与自身所提供的服务的服务标识匹配,若匹配,则断定可以提供所述第二设备订阅的服务。根据SDF订阅消息中的指示信息确定可以尝试与所述第二设备建立连接。
步骤1307:第一设备根据该连接信息的第一部分信息计算生成第二标识,其中,第一设备将第二标识作为其自身的标识。
步骤1308:第一设备确定第一标识与第二标识是否匹配,如果匹配执行步骤1309。
其中,步骤1307~步骤1308的实施过程类似实施例2中描述的步骤,本实施例不再赘述。
步骤1309:第一设备向第二设备发送SDF发布消息,该SDF发布消息用于第二设备确定与第一设备建立NAN数据链路。
其中,当第一设备判断出第一标识与第二标识匹配,则初步确定第二设备成功获取所述第一设备的连接信息,因而向第二设备发送作为响应的SDF发布消息,以告知第二设备同意与其建立NAN数据链路。在该SDF发布消息中,第一设备可以携带其所提供的服务的服务标识及其确定支持建立NAN数据链路的指示信息。进一步地,第一设备可以将所述第二标识携带在所述SDF发布消息中。
步骤1310:第二设备接收该SDF发布消息,根据该SDF发布消息确定与第一设备建立NAN数据链路,执行步骤1311。
具体地,第二设备根据SDF发布消息中的服务标识判断第一设备能够提供其所需要使用的服务,并根据SDF发布消息中的指示信息判断能够与第一设备建立NAN数据链路。进一步地,第二设备还可以通过判断第一标识确定与第一设备建立NAN数据链路。
步骤1311:第二设备向第一设备发送建立NAN数据链路的连接消息,以发起与第一设备的数据链路建立过程。
具体地,第二设备可以向第一设备发送Data Request消息,用以与第一设备交换建立NAN数据链路的关键参数。进一步地,第二设备可以请求与第一设备建立需要链路层安全保护的NAN数据链路或者请求与第一设备建立无需链路层安全保护的NAN数据链路。
第二设备还可以向第一设备发送协商建立数据链路的时频资源的消 息,用以触发第一设备与之进行时频资源的协商,从而确定建立数据链路的时段信息和信道信息。
步骤1312:第一设备建立与第二设备之间的NAN数据链路。
具体地,第一设备接收第二设备发送的连接消息后,与第二设备进行后续建立NAN数据链路的过程。例如,当第一设备接收第二设备发送的Data Request消息时,第二设备响应Data Response消息,并在Data Response消息中指示建立数据链路状态为成功状态。则后续第一设备与第二设备可以开始进行数据通信。当第一设备接收第二设备发送的协商建立数据链路的时频资源的消息时,第二设备根据自身的时频资源情况进行响应,以确定最终的时频资源。之后,第二设备与第一设备之间交互Data Request和Data Response消息,从而建立数据链路。
进一步地,当第一设备与第二设备间建立需要链路层安全保护的NAN数据链路保护时,第二设备和第一设备还可以分别根据所述连接信息的第二部分信息生成第一认证信息和第二认证信息,并将所述第一认证信息和第二认证信息作为第二设备与第一设备之间共享的初始密钥材料,通过该初始密钥材料可以进一步结合其他信息生成共享密钥。该共享密钥可以用于第二设备与第一设备之间进行数据传输的加密密钥或者生成所述加密密钥的输入信息,例如,第二设备和第一设备均通过该共享密钥生成PMK,进一步地利用PMK再生成PTK,以PTK加密第二设备与第一设备之间的数据传输;或者,基于该共享密钥加密第二设备与第一设备之间的数据加密密钥信息的交换,例如,通过该共享密钥加密一方生成的PMK或者直接用于数据加密的加密Key,或是通过该共享密钥加密第二设备与第一设备之间的非对称密钥交换,如当第二设备与第一设备通过DPP建立安全认证和密钥建立时,通过该共享密钥加密第二设备与第一设备之间交换的ECDH公钥信息的至少一个;或者该共享密钥还可以用于第二设备与第一设备之间进行基于该共享密钥的认证,以确定对方持有与自身相同的密钥,从而建立第二设备与第一设备之间的信任关系。其中一种认证的方式可以参考实施例2的步骤211~步骤213,本实施中不再赘述。当完成了数据传输密钥的建立后,第一设备与第二设备开始进行基于数据传输密钥加密的数据传输。
本发明中各步骤的顺序可以不限于各实施例中描述的顺序,只要能够从逻辑上实现本发明的最终效果即可。
本发明中涉及的根据某一元素进行计算,表明该运算的输入至少包含该元素,但是并不限定仅包含该元素。在实施应用中,还可以添加其他的元素一起计算。本发明中涉及的运算过程,可以为一步实现的过程,也可以为多步运算实现的过程,本发明并不作限制。
需要说明的是,本发明各实施例之间可以相互参照。装置实施例是用装置来实现方法实施例的,故装置实施例可以参考对应的方法实施例来理解。同样地,装置权要是用装置来实现方法权要提供的方案,故装置权要也可以参考对应的方法权要来理解。
其中,在本发明实施例中所揭示的第一设备和和第二设备都为电子设备,该电子设备可以实作成单独一台设备,或整合于各种不同的显示装置中,诸如机顶盒、移动电话、平板电脑(Tablet Personal Computer)、膝上型电脑(Laptop Computer)、多媒体播放器、数字摄影机、个人数字助理(personal digital assistant,简称PDA)、导航装置、移动上网装置(Mobile Internet Device,MID)或可穿戴式设备(Wearable Device)等。所述第一设备和和第二设备的组成结构不限于本发明各实施例中附图所示出的结构。
其装置图可参考图12,图12所示为根据本发明一个具体实施方式的电子设备。所述电子设备包括输入单元、处理器单元、输出单元、通信单元、存储单元、外设单元等组件。这些组件通过一条或多条总线进行通信。本领域技术人员可以理解,图中示出的电子设备的结构并不构成对本发明的限定,它既可以是总线形结构,也可以是星型结构,还可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本发明实施方式中,所述电子设备可以是任何移动或便携式电子设备,包括但不限于移动电话、移动电脑、平板电脑、个人数字助理(Personal Digital Assistant,PDA)、媒体播放器、智能电视,以及上述两项或两项以上的组合等。
输入单元用于实现用户与电子设备的交互和/或信息输入到电子设备中。例如,输入单元可以接收用户输入的数字或字符信息,以产生与用户设置或功能控制有关的信号输入。在本发明具体实施方式中,输入单元可 以是触控面板,也可以是其他人机交互界面,例如实体输入键、麦克风等,还可是其他外部信息撷取装置,例如摄像头等。触控面板,也称为触摸屏或触控屏,可收集用户在其上触摸或接近的操作动作。比如用户使用手指、触笔等任何适合的物体或附件在触控面板上或接近触控面板的位置的操作动作,并根据预先设定的程式驱动相应的连接装置。可选的,触控面板可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸操作,并将检测到的触摸操作转换为电信号,以及将所述电信号传送给触摸控制器;触摸控制器从触摸检测装置上接收所述电信号,并将它转换成触点坐标,再送给处理单元。所述触摸控制器还可以接收处理单元发来的命令并执行。此外,可以采用电阻式、电容式、红外线(Infrared)以及表面声波等多种类型实现触控面板。在本发明的其他实施方式中,输入单元所采用的实体输入键可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。麦克风形式的输入单元可以收集用户或环境输入的语音并将其转换成电信号形式的、处理单元可执行的命令。
在本发明的其他一些实施方式中,所述输入单元还可以是各类传感器件,例如霍尔器件,用于侦测电子设备的物理量,例如力、力矩、压力、应力、位置、位移、速度、加速度、角度、角速度、转数、转速以及工作状态发生变化的时间等,转变成电量来进行检测和控制。其他的一些传感器件还可以包括重力感应计、三轴加速计、陀螺仪等。
处理器单元为电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储单元内的软件程序和/或模块,以及调用存储在存储单元内的数据,以执行电子设备的各种功能和/或处理数据。所述处理器单元可以由集成电路(Integrated Circuit,简称IC)组成,例如可以由单颗封装的IC所组成,也可以由连接多颗相同功能或不同功能的封装IC而组成。举例来说,处理器单元可以仅包括中央处理器(Central Processing Unit,简称CPU),也可以是GPU、数字信号处理器(Digital Signal Processor,简称DSP)、及通信单元中的控制芯片(例如基带芯片)的组合。在本发明实施方式中,CPU可以是单运算核心,也可以包括多运算核心。
所述通信单元用于建立通信信道,使第一设备通过所述通信信道连接 到第二设备。所述通信单元可以包括无线局域网(Wireless Local Area Network,简称wireless LAN)模块、蓝牙模块、基带(Base Band)模块等通信模块,以及所述通信模块对应的射频(Radio Frequency,简称RF)电路,用于进行无线局域网络通信、蓝牙通信、红外线通信及/或蜂窝式通信系统通信,例如宽带码分多重接入(Wideband Code Division Multiple Access,简称W-CDMA)及/或高速下行封包存取(High Speed Downlink Packet Access,简称HSDPA)。所述通信模块用于控制电子设备中的各组件的通信,并且可以支持直接内存存取(Direct Memory Access)。
在本发明的不同实施方式中,所述通信单元中的各种通信模块一般以集成电路芯片(Integrated Circuit Chip)的形式出现,并可进行选择性组合,而不必包括所有通信模块及对应的天线组。例如,所述通信单元可以仅包括基带芯片、射频芯片以及相应的天线以在一个蜂窝通信系统中提供通信功能。经由所述通信单元建立的无线通信连接,例如无线局域网接入或WCDMA接入,所述电子设备可以连接至蜂窝网(Cellular Network)或因特网(Internet)。在本发明的一些可选实施方式中,所述通信单元中的通信模块,例如基带模块可以集成到处理器单元中,典型的如高通(Qualcomm)公司提供的APQ+MDM系列平台。
射频电路用于信息收发或通话过程中接收和发送信号。例如,将第一设备处理过的屏幕数据的传输流传给第二设备,接收第二设备回传的触控事件。通常,所述射频电路包括用于执行这些功能的公知电路,包括但不限于天线系统、射频收发机、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、编解码(Codec)芯片组、用户身份模块(SIM)卡、存储器等等。此外,射频电路还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System of Mobile communication,全球移动通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA(Code Division Multiple Access,码分多址)、WCDMA(Wideband Code Division Multiple Access,宽带码分多址)、高速上行行链路分组接入技术(High Speed Uplink Packet Access,HSUPA)、LTE(Long Term Evolution,长期演进)、电子邮件、SMS(Short Messaging Service,短消息服务)等。
输出单元包括但不限于影像输出单元和声音输出单元。影像输出单元用于输出文字、图片和/或视频。所述影像输出单元可包括显示面板,例如采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)、场发射显示器(field emission display,简称FED)等形式来配置的显示面板。或者所述影像输出单元可以包括反射式显示器,例如电泳式(electrophoretic)显示器,或利用光干涉调变技术(Interferometric Modulation of Light)的显示器。所述影像输出单元可以包括单个显示器或不同尺寸的多个显示器。在本发明的具体实施方式中,上述输入单元所采用的触控面板亦可同时作为输出单元的显示面板。例如,触控面板显示当前的显示画面,同时可以接收到用户划定保密区域的指令。虽然在结构图中,输入单元与输出单元是作为两个独立的部件来实现电子设备的输入和输出功能,但是在某些实施例中,可以将触控面板与显示面板集成一体而实现电子设备的输入和输出功能。例如,所述影像输出单元可以显示各种图形化用户接口(Graphical User Interface,简称GUI)以作为虚拟控制组件,包括但不限于窗口、卷动轴、图标及剪贴簿,以供用户通过触控方式进行操作。
在本发明具体实施方式中,影像输出单元包括滤波器及放大器,用来将处理单元所输出的视频滤波及放大。音频输出单元包括数字模拟转换器,用来将处理单元所输出的音频信号从数字格式转换为模拟格式。
存储单元可用于存储软件程序以及模块,处理单元通过运行存储在存储单元的软件程序以及模块,从而执行电子设备的各种功能应用以及实现数据处理。存储单元主要包括程序存储区和数据存储区,其中,程序存储区可存储操作系统、至少一个功能所需的应用程序,比如声音播放程序、图像播放程序等等;数据存储区可存储根据电子设备的使用所创建的数据(比如音频数据、电话本等)等。在本发明具体实施方式中,存储单元可以包括易失性存储器,例如非挥发性动态随机存取内存(Nonvolatile Random Access Memory,简称NVRAM)、相变化随机存取内存(Phase Change RAM,简称PRAM)、磁阻式随机存取内存(Magetoresistive RAM,简称MRAM)等,还可以包括非易失性存储器,例如至少一个磁盘存储器件、电子可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only  Memory,简称EEPROM)、闪存器件,例如反或闪存(NOR flash memory)或是反及闪存(NAND flash memory)。非易失存储器储存处理单元所执行的操作系统及应用程序。所述处理单元从所述非易失存储器加载运行程序与数据到内存并将数字内容储存于大量储存装置中。所述操作系统包括用于控制和管理常规系统任务,例如内存管理、存储设备控制、电源管理等,以及有助于各种软硬件之间通信的各种组件和/或驱动器。在本发明实施方式中,所述操作系统可以是Google公司的Android系统、Apple公司开发的iOS系统或Microsoft公司开发的Windows操作系统等,或者是Vxworks这类的嵌入式操作系统。
所述应用程序包括安装在电子设备上的任何应用,包括但不限于浏览器、电子邮件、即时消息服务、文字处理、键盘虚拟、窗口小部件(Widget)、加密、数字版权管理、语音识别、语音复制、定位(例如由全球定位系统提供的功能)、音乐播放等等。
电源用于给电子设备的不同部件进行供电以维持其运行。作为一般性理解,所述电源可以是内置的电池,例如常见的锂离子电池、镍氢电池等,也包括直接向电子设备供电的外接电源,例如AC适配器等。在本发明的一些实施方式中,所述电源还可以作更为广泛的定义,例如还可以包括电源管理系统、充电系统、电源故障检测电路、电源转换器或逆变器、电源状态指示器(如发光二极管),以及与电子设备的电能生成、管理及分布相关联的其他任何组件。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (17)

  1. 一种用于建立无线连接的方法,用于第一设备与第二设备建立无线连接,其特征在于,所述方法包括:
    所述第一设备接收第一用户的操作指令后,根据所述操作指令生成连接信息,所述第一用户为所述第一设备对应的用户;其中,所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行媒体分享的指令;或者,所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行网络共享的指令;或者,所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行多屏互动的指令;或者,所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行多人游戏的指令;或者,所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行服务连接的指令,所述另一设备为能够满足所述第一设备的服务需求的设备;其中,所述另一设备为一个或多个;
    向所述第一设备附近的第二设备提供所述连接信息,以便所述第二设备至少根据所述连接信息的第一部分信息采用预设算法计算获得第一标识,所述第一部分信息是所述连接信息的部分或全部;其中,所述第一设备向第二设备提供所述连接信息,包括:
    第一设备显示或播放所述连接信息,使得所述第二设备接收用户向其输入的所述连接信息;或者,第一设备根据所述连接信息生成包含所述连接信息的图形码,显示所述图形码,使所述第二设备扫描所述的图形码并获取所述连接信息;或者,第一设备与第二设备建立短距离通信连接,通过所述短距离通信连接发送所述连接信息给所述第二设备;
    所述第一设备接收所述第二设备根据所述连接信息发送的第一消息,所述第一消息中携带所述第一标识;
    至少根据所述连接信息的第一部分信息采用所述预设算法计算获得第二标识;
    所述第一设备确定所述第一标识与所述第二标识是否匹配;
    如果匹配,所述第一设备向所述第二设备发送第二消息,并建立与所述第二设备之间的无线连接,其中所述第二消息为所述第一消息的响应消息。
  2. 如权利要求1所述的方法,其特征在于,所述至少根据所述连接信息的第一部分信息采用所述预设算法计算获得所述第二标识,包括:
    对所述连接信息的第一部分信息进行预设算法的转换运算得到第一转换结果,根据所述第一转换结果获得所述第二标识;或者,
    对所述连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据所述第一构造信息获得所述第二标识。
  3. 如权利要求1或2所述的方法,其特征在于,
    所述第一设备为无线接入设备,所述第二设备为无线终端,所述第一消息为探测请求Probe Request消息,所述Probe Request消息的服务集标识SSID字段携带所述第一标识,或者,所述Probe request消息的保留字段携带所述第一标识。
  4. 如权利要求1或2所述的方法,其特征在于,
    所述第一设备为无线终端,所述第二设备为无线接入设备,所述第一消息为信标帧Beacon消息或探测响应Probe Response消息,所述Beacon消息或Probe Response消息的服务集标识SSID字段携带所述第一标识,或者,所述Beacon消息的保留字段携带所述第一标识。
  5. 如权利要求1或2所述的方法,其特征在于,
    所述第一设备与第二设备为P2P设备,所述第一消息为Probe Request消息,所述Probe Reqest消息中的P2P IE字段中携带所述第一标识,或者,所述Probe Request消息中的服务集标识SSID字段携带所述第一标识,或者,所述Probe Request消息中的保留字段携带所述第一标识。
  6. 如权利要求1或2所述的方法,其特征在于,
    所述第一设备与第二设备为NAN设备,所述第一消息为服务发现功能SDF消息。
  7. 如权利要求1-6任一所述的方法,其特征在于,所述建立与所述第二设备之间的无线连接,包括:
    验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配,所述第一认证信息是所述第二设备至少根据所述连接信息的第二部分信息计算生成的,所述第二部分信息是所述连接信息的部分或全部, 所述第二认证信息是所述第一设备至少根据所述连接信息的第二部分信息进行计算生成的;
    如果验证出所述第一认证信息与所述第二认证信息匹配,则向所述第二设备发送确认信息,建立与所述第二设备之间的无线连接,其中,所述确认信息用于所述第二设备确定将与所述第一设备建立无线连接。
  8. 如权利要求7所述的方法,其特征在于,所述验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配,包括:
    将所述第一设备的第二认证信息确定为四步握手认证方式的成对主密钥PMK,根据所述PMK并通过所述四步握手认证方式验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配;或者,
    将所述第一设备的第二认证信息确定为无线保真安全设置WPS认证方式的个人识别码PIN,根据所述PIN并通过所述WPS认证方式验证所述第二设备的第一认证信息是否与所述第一设备的第二认证信息匹配。
  9. 一种用于建立无线连接的方法,用于第一设备与第二设备建立无线连接,其特征在于,所述方法包括:
    所述第二设备获取所述第二设备附近的第一设备提供的连接信息,所述连接信息是所述第一设备接收第一用户的操作指令后根据所述操作指令生成的,所述第一用户为所述第一设备对应的用户;其中,
    所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行媒体分享的指令;或者,所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行网络共享的指令;或者,所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行多屏互动的指令;或者,所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行多人游戏的指令;或者,所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行服务连接的指令,所述另一设备为能够满足所述第一设备的服务需求的设备;其中,所述另一设备为一个或多个;
    其中,所述获取所述第二设备附近的第一设备提供的连接信息,包括:
    接收用户输入的所述第一设备的连接信息;或者,扫描所述第一设备显示的图形码,获取所述图形码中包含的所述第一设备的连接信息;或者,与所述第一设备建立短距离通信连接,通过所述短距离通信连接接收所述第一设备发送的连接信息;
    所述第二设备至少根据所述连接信息的第一部分信息采用预设算法计算获得第一标识,所述第一部分信息是所述连接信息的部分或全部;
    所述第二设备向所述第一设备发送第一消息,所述第一消息携带所述第一标识,以使得所述第一设备确定所述第一标识与第二标识是否匹配,所述第二标识为所述第一设备至少根据所述连接信息的第一部分信息采用所述预设算法计算获得;
    所述第二设备接收所述第一设备在确定所述第一标识与所述第二标识匹配时发送的第二消息,并建立与所述第一设备之间的无线连接,所述第二消息为所述第一消息的响应消息。
  10. 如权利要求9所述的方法,其特征在于,所述至少根据所述连接信息的第一部分信息采用所述预设算法计算获得第一标识,包括:
    对所述连接信息的第一部分信息进行预设算法的转换运算得到第一转换结果,根据所述第一转换结果获得所述第一标识;或者,
    向所述连接信息的第一部分信息添加第一预设信息得到第一构造信息,根据所述第一构造信息获得所述第一标识。
  11. 如权利要求9或10所述的方法,其特征在于,所述建立与所述第一设备之间的无线连接,包括:
    与所述第一设备进行验证,以使所述第一设备确定所述第二设备的第一认证信息与所述第一设备的第二认证信息是否匹配,所述第一认证信息是至少根据所述连接信息的第二部分信息计算生成的,所述第二认证信息是所述第一设备至少根据所述连接信息的第二部分信息计算生成的;
    接收所述第一设备验证出所述第一认证信息与所述第二认证信息匹配时发送的确认信息;
    根据所述确认信息建立与所述第一设备之间的无线连接。
  12. 如权利要求9-11任一所述的方法,其特征在于,所述与所述第一设备进行验证,包括:
    将所述第一认证信息确定为四步握手认证方式的PMK,根据所述PMK并通过所述四步握手认证方式与所述第一设备进行验证;或者,
    将所述第一认证信息确定为无线保真安全设置WPS认证方式的PIN,根据所述PIN并通过所述WPS认证方式与所述第一设备进行验证。
  13. 如权利要求9-11任一所述的方法,其特征在于,所述与所述第一设备进行验证之前,还包括:
    根据所述连接信息的第二部分信息计算生成所述第一认证信息。
  14. 如权利要求13所述的方法,其特征在于,所述根据所述连接信息的第二部分信息计算生成所述第一认证信息,包括:
    对所述连接信息的第二部分信息进行哈希运算得到第二哈希结果,根据所述第二哈希结果获得所述第一认证信息;或者,
    向所述连接信息的第二部分信息添加第二预设信息得到第二构造信息,根据所述第二构造信息获得所述第一认证信息。
  15. 如权利要求9-14任一所述的方法,其特征在于,
    所述第一设备为无线接入设备,所述第二设备为无线终端,所述第一消息为探测请求Probe Request消息,所述Probe Request消息的服务集标识SSID字段携带所述第一标识,或者,所述Probe request消息的保留字段携带所述第一标识;或,
    所述第一设备为无线终端,所述第二设备为无线接入设备,所述第一消息为信标帧Beacon消息或探测响应Probe Response消息,所述Beacon消息或Probe Response消息的服务集标识SSID字段携带所述第一标识,或者,所述Beacon消息的保留字段携带所述第一标识;或,
    所述第一设备与第二设备为P2P设备,所述第一消息为Probe Request消息,所述Probe Reqest消息中的P2P IE字段中携带所述第一标识,或者,所述Probe Request消息中的服务集标识SSID字段携带所述第一标识,或 者,所述Probe Request消息中的保留字段携带所述第一标识;或,
    所述第一设备与第二设备为NAN设备,所述第一消息为服务发现功能SDF消息。
  16. 一种用于建立无线连接的设备,所述设备为第一设备,用于与第二设备建立无线连接,其特征在于,所述第一设备包括:接收器、处理器和发送器;
    所述处理器,用于接收第一用户的操作指令后,根据所述操作指令生成连接信息,向所述第一设备附近的第二设备提供所述连接信息,以便所述第二设备对所述连接信息的第一部分信息采用预设算法进行计算生成得到第一标识,所述第一部分信息是所述连接信息的部分或全部;
    所述接收器,用于接收所述第二设备根据所述连接信息发送的第一消息,所述第一消息中携带第一标识;
    所述处理器,还用于确定所述接收器接收的第一标识与所述第一设备的第二标识是否匹配,所述第二标识与对所述第一部分信息进行计算生成的结果相等或相对应;
    所述发送器,用于如果所述处理器确定的结果为匹配,向所述第二设备发送第二消息,其中所述第二消息为所述第一消息的响应消息;
    所述处理器,还用于建立与所述第二设备之间的无线连接;
    其中,
    所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行媒体分享的指令;或者,所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行网络共享的指令;或者,所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行多屏互动的指令;或者,所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行多人游戏的指令;或者,所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行服务连接的指令,所述另一设备为能够满足所述第一设备的服务需求的设备;其中,所述另一设备为一个或多个;
    其中,所述处理器具体通过如下方式向第二设备提供所述连接信息,包括:
    所述处理器控制显示器显示或扬声器播放所述连接信息,使得所述第二设备接收用户向其输入的所述连接信息;或者,所述处理器根据所述连接信息生成包含所述连接信息的图形码,控制显示器显示所述图形码,使所述第二设备扫描所述的图形码并获取所述连接信息;或者,所述处理器控制第一设备与第二设备建立短距离通信连接,通过所述短距离通信连接通过所述发送器发送所述连接信息给所述第二设备。
  17. 一种用于建立无线连接的设备,所述设备为第二设备,用于与第一设备建立无线连接,其特征在于,所述第二设备包括:处理器、发送器和接收器;
    所述处理器,用于获取所述第二设备附近的第一设备提供的连接信息,所述连接信息是所述第一设备接收第一用户的操作指令后根据所述操作指令生成的,所述第一用户为所述第一设备对应的用户生成的,根据所述连接信息的第一部分信息计算生成第一标识,所述第一部分信息是所述连接信息的部分或全部;
    所述发送器,用于向所述第一设备发送第一消息,所述第一消息携带所述处理器生成的所述第一标识,以使得所述第一设备确定所述第一标识与第二标识是否匹配,所述第二标识与对所述第一部分信息进行计算生成的结果相等或相对应;
    所述接收器,用于接收所述第一设备在所述第一标识与所述第二标识匹配时发送的第二消息,所述第二消息为所述第一消息的响应消息;
    所述处理器,还用于建立与所述第一设备之间的无线连接;
    其中,
    所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行媒体分享的指令;或者,所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行网络共享的指令;或者,所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行多屏互动的指令;或者,所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行多人游戏的指令;或者,所述第一用户的操作指令为所述第一用户触发所述第一设备与另一设备进行服务连接的指令,所述另一设备为能够满足所述第一设备的服务需求的设备;
    其中,所述另一设备为一个或多个;
    其中,所述处理器具体通过如下方式获取所述第二设备附近的第一设备提供的连接信息,包括:
    接收用户输入的所述第一设备的连接信息;或者,
    通过摄像头扫描所述第一设备显示的图形码,获取所述图形码中包含的所述第一设备的连接信息;或者,
    与所述第一设备建立短距离通信连接,通过所述短距离通信连接控制所述接收器接收所述第一设备发送的连接信息。
PCT/CN2015/095891 2014-11-28 2015-11-28 一种用于建立无线连接的方法及设备 WO2016082801A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP15862753.9A EP3217758B1 (en) 2014-11-28 2015-11-28 Establishment of a wireless connection between a first device and a second device
US15/607,014 US10366214B2 (en) 2014-11-28 2017-05-26 Method and device for establishing wireless connection

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410709374.0 2014-11-28
CN201410709374.0A CN105704837B (zh) 2014-11-28 2014-11-28 一种用于建立无线连接的方法及设备

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/607,014 Continuation US10366214B2 (en) 2014-11-28 2017-05-26 Method and device for establishing wireless connection

Publications (1)

Publication Number Publication Date
WO2016082801A1 true WO2016082801A1 (zh) 2016-06-02

Family

ID=56073644

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/095891 WO2016082801A1 (zh) 2014-11-28 2015-11-28 一种用于建立无线连接的方法及设备

Country Status (4)

Country Link
US (1) US10366214B2 (zh)
EP (1) EP3217758B1 (zh)
CN (1) CN105704837B (zh)
WO (1) WO2016082801A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115866597A (zh) * 2021-09-24 2023-03-28 青岛海尔科技有限公司 密码信息的发送方法和装置、存储介质及电子装置

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10531370B2 (en) * 2015-02-24 2020-01-07 Lg Electronics Inc. Method and apparatus for transmitting data in wireless communication system
EP3338212A4 (en) * 2015-08-20 2019-03-20 Averon US, Inc. METHOD AND APPARATUS FOR ELECTRONIC SECURITY MANAGEMENT BASED ON GEOGRAPHIC LOCATION
JP6702833B2 (ja) * 2016-09-15 2020-06-03 キヤノン株式会社 通信装置、通信装置の制御及びプログラム
KR102599479B1 (ko) * 2016-11-02 2023-11-08 삼성전자주식회사 근거리통신 연결을 위한 전자장치, 시스템 및 방법
WO2018086004A1 (zh) * 2016-11-09 2018-05-17 国民技术股份有限公司 安全通信的方法、受控装置及设备、遥控装置及设备
CN106793162B (zh) * 2016-12-13 2020-02-21 大陆汽车车身电子系统(芜湖)有限公司 用于可穿戴设备与组合仪表建立无线连接的方法
CN113518022A (zh) * 2017-05-31 2021-10-19 普天智能照明研究院有限公司 用于用户设备与家居设备连接配置的方法
CN108184226A (zh) * 2017-12-31 2018-06-19 福建省卓展信息科技股份有限公司 一种智能传呼饮水系统
FR3077458B1 (fr) * 2018-01-31 2020-01-17 Sagemcom Broadband Sas Procede d'agregation d'une pluralite de connexions radio dans un reseau sans fil
US10993110B2 (en) * 2018-07-13 2021-04-27 Nvidia Corp. Connectionless fast method for configuring Wi-Fi on displayless Wi-Fi IoT device
US11121871B2 (en) * 2018-10-22 2021-09-14 International Business Machines Corporation Secured key exchange for wireless local area network (WLAN) zero configuration
CN109587667B (zh) * 2018-11-23 2021-06-18 Oppo广东移动通信有限公司 一种连接建立方法及装置、设备、存储介质
CN111615219B (zh) * 2019-04-30 2022-02-22 维沃移动通信有限公司 一种pc5链路建立方法、设备及系统
US10834594B1 (en) * 2019-10-16 2020-11-10 Verizon Patent And Licensing Inc. Systems and methods for authentication sharing
US11240358B2 (en) * 2020-06-22 2022-02-01 Motorola Mobility Llc Electronic devices and methods for moving content presentation on one or more displays
CN111935693B (zh) * 2020-08-26 2022-05-06 支付宝(杭州)信息技术有限公司 蓝牙设备连接方法和蓝牙设备
CN112566126B (zh) * 2020-12-02 2022-04-26 支付宝(杭州)信息技术有限公司 一种设备之间的连接方法、装置及设备
US20230032967A1 (en) * 2021-07-29 2023-02-02 Red Hat, Inc. Establishing process connections utilizing an intermediary broker
US20230076126A1 (en) * 2021-09-02 2023-03-09 At&T Intellectual Property I, L.P. Device to device communication mechanism for different operators subscribers

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103179679A (zh) * 2011-12-21 2013-06-26 国民技术股份有限公司 安全通道与开放通道绑定的方法
US20140181943A1 (en) * 2012-08-09 2014-06-26 Panasonic Corporation Wireless communication system provided with wireless communication terminal apparatuses wirelessly connected under authentification
CN103916978A (zh) * 2013-01-08 2014-07-09 联想(北京)有限公司 一种建立无线连接的方法及电子设备
WO2014114930A1 (en) * 2013-01-22 2014-07-31 Mimio Llc Two-dimensional code-driven method and system for synchronizing wireless devices with a computing device
WO2014183404A1 (zh) * 2013-10-21 2014-11-20 中兴通讯股份有限公司 数据传输方法、装置及系统、终端

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7516325B2 (en) * 2001-04-06 2009-04-07 Certicom Corp. Device authentication in a PKI
CN1691578A (zh) * 2004-04-29 2005-11-02 华为技术有限公司 一种设备验证自身合法性的方法
CN101371530B (zh) * 2006-01-18 2017-08-29 皇家飞利浦电子股份有限公司 无线医疗网络的自动及安全的配置
US8116731B2 (en) * 2007-11-01 2012-02-14 Finsphere, Inc. System and method for mobile identity protection of a user of multiple computer applications, networks or devices
US7801100B2 (en) * 2007-06-04 2010-09-21 Sony Ericsson Mobile Communications Ab Operating ad-hoc wireless local area networks using network identifiers and application keys
JP5073385B2 (ja) * 2007-07-03 2012-11-14 パナソニック株式会社 情報通信装置
WO2009127984A1 (en) * 2008-04-18 2009-10-22 International Business Machines Corporation Authentication of data communications
US20100278345A1 (en) 2009-05-04 2010-11-04 Thomas Matthieu Alsina Method and apparatus for proximity based pairing of mobile devices
CN104917780A (zh) * 2009-11-25 2015-09-16 安全第一公司 对移动中数据进行保护的系统和方法
JP5771604B2 (ja) * 2010-04-19 2015-09-02 レノボ・イノベーションズ・リミテッド(香港) 通信システム、通信端末、通信機器、通信制御方法、及び通信制御用プログラム
EP2385480A1 (en) * 2010-05-05 2011-11-09 Deutsche Telekom AG Method for controlling a communication device, communication device, system, and computer program product
CN102694781B (zh) * 2011-03-24 2015-12-16 中国银联股份有限公司 基于互联网的安全性信息交互系统及方法
WO2012164414A1 (en) 2011-05-27 2012-12-06 International Business Machines Corporation Managing inventory data for a distributed cache provided by a plurality of wireless mobile devices
CN102955917B (zh) * 2011-08-29 2016-03-30 联想(北京)有限公司 一种保护数据的方法、装置及设备
KR101330807B1 (ko) * 2011-08-31 2013-11-18 주식회사 팬택 증강 현실을 활용한 데이터 공유 장치 및 방법
US10165440B2 (en) * 2012-01-17 2018-12-25 Entrust, Inc. Method and apparatus for remote portable wireless device authentication
CN104620662A (zh) * 2012-09-07 2015-05-13 Nec卡西欧移动通信株式会社 无线通信系统、无线通信方法、便携终端、信息处理装置和程序
US9100942B2 (en) * 2013-03-14 2015-08-04 Qualcomm Incorporated WiFi Direct connection using machine-readable labels
CN103152735A (zh) * 2013-03-27 2013-06-12 深圳市中兴移动通信有限公司 移动终端中双向签名的方法及装置
CN104144470B (zh) * 2014-03-12 2015-12-30 腾讯科技(深圳)有限公司 一种蓝牙连接方法和客户端

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103179679A (zh) * 2011-12-21 2013-06-26 国民技术股份有限公司 安全通道与开放通道绑定的方法
US20140181943A1 (en) * 2012-08-09 2014-06-26 Panasonic Corporation Wireless communication system provided with wireless communication terminal apparatuses wirelessly connected under authentification
CN103916978A (zh) * 2013-01-08 2014-07-09 联想(北京)有限公司 一种建立无线连接的方法及电子设备
WO2014114930A1 (en) * 2013-01-22 2014-07-31 Mimio Llc Two-dimensional code-driven method and system for synchronizing wireless devices with a computing device
WO2014183404A1 (zh) * 2013-10-21 2014-11-20 中兴通讯股份有限公司 数据传输方法、装置及系统、终端

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115866597A (zh) * 2021-09-24 2023-03-28 青岛海尔科技有限公司 密码信息的发送方法和装置、存储介质及电子装置

Also Published As

Publication number Publication date
EP3217758B1 (en) 2019-09-11
US20170265238A1 (en) 2017-09-14
US10366214B2 (en) 2019-07-30
CN105704837B (zh) 2020-02-14
EP3217758A1 (en) 2017-09-13
CN105704837A (zh) 2016-06-22
EP3217758A4 (en) 2018-03-14

Similar Documents

Publication Publication Date Title
WO2016082801A1 (zh) 一种用于建立无线连接的方法及设备
EP3893109B1 (en) Method and device for connecting bluetooth devices
KR101630505B1 (ko) 소셜 네트워크를 통해 접속 설정을 공유하는 방법 및 장치
CN110247887B (zh) 电子装置及其基于用户身份信息提供通信服务的方法
CN111459433B (zh) 一种传屏方法、设备及存储介质
EP3958533B1 (en) Method for accessing wireless local area network and terminal
CN110431868B (zh) 一种Wi-Fi热点的连接方法及终端
JP7450734B2 (ja) オーディオ出力方法および端末デバイス
US20150003607A1 (en) Secure connection method and apparatus of electronic device
CN104378801A (zh) 接入无线网络的方法及装置
JP2013535860A (ja) 間接的なデバイス通信
KR20140113491A (ko) 어플리케이션 연결 방법 및 이를 이용하는 시스템
EP3190763A1 (en) Screen sharing method, sharing device and receiving device
WO2014205969A1 (zh) 一种建立数据连接的方法、装置及系统
CN108605373B (zh) 用于提供网络共享服务的方法和电子装置
CN114584613B (zh) 一种推送消息的方法、消息推送系统及电子设备
US11212276B2 (en) Single pairing for multiple technologies
KR20140113253A (ko) 네트워크상의 장치들의 애플리케이션 연결 방법
KR20140128764A (ko) 연결 정보 제어 방법 및 그 전자 장치
WO2015139401A1 (zh) 无线网络的建立方法、系统及无线路由装置
US20180160463A1 (en) Wireless control of devices
KR20150001681A (ko) 전자 장치의 보안 연결 방법 및 장치
WO2018040805A1 (zh) 无线局域网中建立关联的方法、终端和接入点
WO2013178179A1 (zh) 无线通讯热点创建和连接方法、热点创建端及热点连接端
WO2018049882A1 (zh) 一种数据迁移方法及装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15862753

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2015862753

Country of ref document: EP