Patent Publication Number: US-11388134-B2

Title: Wireless network-based voice communication security protection method

Description:
CROSS REFERENCE TO RELATED APPLICATIONS 
     The non-provisional application claims priority to Taiwan Patent Application No. 108131765, filed on Sep. 3, 2019, the content thereof is incorporated by reference herein. 
     BACKGROUND OF THE INVENTION 
     Field of the Invention 
     The present invention relates to the security protection of voice communication on wireless networks, and more particularly to a user device or a telecommunications provider detecting a call through a VoWiFi (Voice over Wi-Fi) network and securing the network communication environment. 
     Description of the Prior Art 
     In recent years, voice communication technology has become mature. With the spread of information increasing, information security has become a very important issue. In modern society, the mobile phone has become a universally utilized communication device. Whether the mobile phone is used for communication, shopping, leisure, or entertainment, the functions are inseparable from the usage of the mobile phone. Therefore, the safety of mobile phone communication is now a major issue of concern in society. 
     The existing mobile phones using VoWiFi can be connected to a telecommunications network via Wi-Fi to make calls. Compared with the free communication software applications, it is less affected by network choke and delay, and there is no need to download a corresponding application (App). As long as there is Wi-Fi, the user can dial directly. In areas where the telecommunications network doesn&#39;t cover or the signal is weak, such as suburbs or mountain areas, the user can also use Wi-Fi to make calls, and even call abroad. When calling, the user can also make a call via VoWiFi, which can save expensive roaming charges. 
     Currently, in the era of 4G and even into the future 5G era, the coverage area of telecommunication networks under the various telecommunications companies is not complete and the coverage is limited, making network signals often unstable. However, existing devices that can use VoWiFi cannot effectively prevent common network attacks, such as ARP attacks, man-in-the-middle attacks, address resolution protocol spoofing, etc. When Wi-Fi signal strength is sufficient, the VoWiFi function can be turned on automatically and there is no detection mechanism to evaluate or detect whether the environment is safe. Also, the telecommunications provider will not monitor whether the connection quality is normal when the VoWiFi call function is turned on. 
     It can be seen that there are disadvantages in the prior art that need to be improved. 
     Therefore, since VoWiFi is bound to be the future trend, how to ensure the security and confidentiality of users when making network calls, and at the same time simultaneously detecting whether the communication network is secure for Internet calls, remains a security problem that still needs to be overcome with technology and solutions. 
     SUMMARY OF THE INVENTION 
     In view of this, an objective of the present invention is to detect the environment of the network call through a user side detection interface or a telecommunication service provider side detection interface when VoWiFi is used for network calls so that a more efficient call network and security call environment are provided. 
     In order to achieve the above objective and more, the present invention provides a wireless network-based voice communication security protection method, which comprises: 
     Step 1. Initially, the user can choose to use the user side self-check interface for testing, or choose to use the telecommunications provider side detection interface for testing, or can use both the user self-check interface and the telecommunications provider side detection interface for testing; 
     Step 2. If the user side self-checking interface is used for detection, it will automatically determine whether or not it is connected to a wireless network. If not, it will automatically or manually select another network connection and re-determine whether or not it is connected to a wireless network; 
     Step 3. If yes, obtain a wireless network card gateway Media Access Control (MAC) address; 
     Step 4. Set the counter to 0 (i=0); 
     Step 5. The counter adds 1 (i+1) after receiving the network packet; 
     Step 6. Determine whether the source of the packet is the MAC address of the wireless network card gateway; 
     Step 7. If not, add a 1 (i+1) to the counter after receiving the network packet. If yes, determine whether there is a MAC address stored; 
     Step 8. If yes, determine whether the MAC address of the packet is the same as the MAC address of the last packet; if not, store the MAC address and execute a determination whether the counter is greater than or equal to (≥) a set value threshold; 
     Step 9. If it is determined that the MAC address of the packet is not the same as the MAC address of the previous packet, a warning will pop up and return to the automatic or manual selection of another network connection. If yes, determine whether the counter is greater than or equal to (≥) a set value threshold; 
     Step 10. If not, return to the counter and add 1 after receiving the network packet. If yes, send an Address Resolution Protocol (ARP) to request the MAC address of the gateway; and 
     Step 11. Automatically set the counter to zero. 
     In an embodiment of the present invention, the user self-checking interface comprises a mobile device application or a mobile application (APP) provided on the mobile device. 
     In an embodiment of the present invention, the user self-checking interface has a wireless local area network interface (Wi-Fi), and can scan the connection status through the wireless network interface to confirm safety. 
     In an embodiment of the present invention, the set threshold value is 0-99999, and can be set by the user. 
     In an embodiment of the present invention, in step 11, when the counter exceeds a set threshold value set by the user, it will automatically return to 0 and re-count. 
     In an embodiment of the present invention, the detecting by the telecommunication provider side detection interface comprises: 
     Step 1. Determine whether it is connected to the telecommunications network; 
     Step 2. If yes, determine whether or not the packet delay and packet loss rate of the voice packet are greater than the set threshold and whether the packet delay and packet loss rate of the Voice over Wi-Fi (VoWiFi) packet are greater than the set value threshold. 
     Step 3. If both are true, notify the user device to redial through the telecommunication network. If both are not, continue to observe and re-determine whether the packet delay and packet loss rate of the voice packet are greater than the set value threshold and whether the packet delay and packet loss rate of the VoWiFi packet are greater than the set threshold; 
     Step 4. If not, determine whether the packet delay and packet loss rate of the voice packet are greater than the set threshold and whether the packet delay and packet loss rate of the VoWiFi packet are greater than the set threshold. 
     Step 5. If both are no, continue to monitor and re-judge whether the packet delay and packet loss rate of the voice packet are greater than the set threshold and whether the packet delay and packet loss rate of the VoWiFi packet are greater than the set threshold; 
     Step 6. If the voice packet is YES, prompt to cancel the call and end the detection; and 
     Step 7. If the VoWiFi packet is YES, automatically change the VoWiFi packet size, and re-judge whether the packet delay and packet loss rate of the VoWiFi packet are greater than a set threshold. 
     In an embodiment of the present invention, the threshold value of the packet loss rate of the voice packet is a threshold value that is greater than or equal to (≥) per second, where the threshold value is 10 −2 . 
     In an embodiment of the present invention, the threshold value of the packet loss rate of the VoWiFi packet is a threshold value that is greater than or equal to (≥) per second, where the threshold value is 10 −6 . 
     In an embodiment of the present invention, the threshold value of the packet delay of the voice packet and the VoWiFi packet is an interval time setting value, wherein the unit of the time setting value is seconds (s). 
     In an embodiment of the present invention, the prompt of canceling the call in step 6 is a prompt to suggest canceling the call when the call does not reach the set call standard. 
     In an embodiment of the present invention, the interval time setting value is 1 to 999 seconds. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a user device side detection interface flowchart of a wireless network-based voice communication security protection method according to an embodiment of the present invention; and 
         FIG. 2  is a flowchart of a telecommunication provider side detection interface of a wireless network-based voice communication security protection method according to an embodiment of the present invention. 
     
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     In order to understand the technical features, content, and advantages of the present invention and the effects that can be achieved, the present invention is described in detail with the accompanying drawings in the form of examples. The drawings are only for illustration and supplementary description, and not limiting the actual proportion and precise configuration after the implementation of the invention. 
     Refer to  FIG. 1 , which is a flowchart of a user device side detection interface of the wireless network-based voice communication security protection method of the present invention, which comprises: 
     Step 1. Initially, the user can choose to perform the test with the user side self-check detection interface (S 100 ), or select the telecommunication provider side detection interface to perform the test (S 200 ), or can choose to use both the user side self-check interface and the telecommunication provider side detection interface for testing; 
     Step 2. If the user device side self-checking interface is used for detection, it will automatically determine whether or not it is connected to a wireless network (S 110 ). If not, then automatically or manually select another network connection (S 1101 ) and re-determine if it is connected to a wireless network (S 110 ); 
     Step 3. If yes, obtain the media access control (MAC) address of the wireless network card gateway (S 111 ); 
     Step 4. (S 112 ) Set the counter to 0 (i=0); 
     Step 5. (S 113 ) The counter adds 1 (i+1) after receiving the network packet; 
     Step 6. Determine whether or not the source of the packet is the MAC address of the wireless network card gateway (S 114 ); 
     Step 7. If not, return to the counter and add 1 (i+1) after receiving the network packet (S 113 ). If yes, determine whether the MAC address is stored (S 115 ); 
     Step 8. If yes, then determine whether or not the packet MAC address is the same as the MAC address of the previous packet (S 116 ). If not, then store the MAC address (S 1151 ) and execute to determine whether the counter is greater than or equal to (≥) a set value threshold (S 117 ); 
     Step 9. If determined that the packet MAC address is not the same as the MAC address of the previous packet (S 116 ), then prompt with a warning (S 1161 ) and return to automatically or manually select another network connection (S 1101 ), if yes, it is determined whether or not the counter is greater than or equal to (≥) a set threshold value (S 117 ); 
     Step 10. If not, return to (S 113 ) and add 1 after receiving the network packet. If yes, then send an Address Resolution Protocol (ARP) requesting the MAC of the gateway address (S 118 ); and 
     Step 11. (S 119 ) The counter is automatically set to 0. 
     It can be known from the above steps that the user can choose to perform the detection through the user device side self-check interface or the telecommunications provider side detection interface. The user side interface is a mobile device application or a mobile application (APP) provided on the mobile device. The user self-check interface will detect whether or not it is connected to Wi-Fi first, and scan the connection status through the wireless network interface to confirm it is secure. When Wi-Fi is not connected, it will automatically or manually select the nearby wireless network name (SSID) for connection. After connecting to Wi-Fi, it will obtain the wireless network card gateway Media Access Control (MAC) address, and set the counter to 0 (i=0), and the counter will increase by 1 (i+1) in every network packet is received. At this time, the device will automatically start monitoring the packet and record the source MAC address of the first incoming packet. Next, the packets received by the device are transmitted by the gateway, so the MAC address is the same, and the MAC address of the source packet is continuously compared. If it is judged that the MAC address of the source packet is the same as the MAC address of the previous packet, it is determined whether or not the counter is larger or equal to (≥) a set threshold value. If it is determined that the MAC address of the source packet is not the same as the MAC address of the previous packet, a warning will pop up and return to automatically or manually selecting another network connection. When the counter is less than the set threshold value, continue to make the counter add 1 after receiving the network packet, and when the counter is greater than or equal to (≥) a set threshold value, it sends an Address Resolution Protocol (ARP) requesting the MAC address of the gateway. The counter automatically sets the counter to 0, that is, when an ARP attack occurs, the source MAC address transmitted from the source packet to the device will change, and a warning will pop up when the change occurs, informing the user that the environment is not safe, and advise users to change the connected Wi-Fi. 
     In order to avoid the packets received at the beginning are packets sent by an attacker. Then it will automatically force an ARP request to the gateway, so that the gateway will tell the device the correct MAC address after receiving the request. An attacker may intercept the ARP request sent, so the method will use a counter to prevent it, and set the counter to a set threshold value. The ARP request will be sent after every 10,000 packets, and when the counter exceeds the user&#39;s set threshold value the counter will be automatically returned to 0 and counting resumes. At the same time, the set threshold value is 0-99999 and can be set by the user. The time for receiving every 10,000 packets is random and involves the CPU. The usage rate and network delay make it difficult for attackers to discover the ARP requests sent and prevent this security mechanism from being discovered by attackers. 
     Refer to  FIG. 2 , which is a flowchart of a telecommunication provider side detection interface of the wireless network-based voice communication security protection method of the present invention. The detection is performed by the telecommunications provider side detection interface (S 200 ) which comprises: 
     Step 1. Determine whether or not the telecommunication network is connected (S 210 ); 
     Step 2. If yes, simultaneously determine whether or not the packet delay and packet loss rate of the voice packet are greater than the set threshold (S 220 ) and whether or not the loss rate and the packet delay of the Voice over Wi-Fi (VoWiFi) packet is greater than a set threshold (S 230 ); 
     Step 3. If both are yes, then notify the user device to redial through the telecommunication network (S 260 ). If not, then continue to observe (S 221 ) and re-determine the packet delay and packet loss rate of the voice packet is greater than the set threshold (S 220 ) and whether or not the packet delay and packet loss rate of VoWiFi packets is greater than the set threshold (S 230 ). If any of them is not, then continue to observe and re-determine (S 221 ); 
     Step 4. If it is not, the telecommunication network is disconnected, and at the same time, determine whether or not the packet delay and packet loss rate of voice packets are greater than the set threshold (S 240 ) and determine whether or not the packet delay and packet loss rate of the VoWiFi packets are greater than the set threshold (S 250 ); 
     Step 5. If both are negative, (S 241 ) continue to monitor and re-determine whether or not the packet delay and packet loss rate of the voice packet are greater than the set threshold (S 240 ) and re-determine whether or not the packet delay and packet loss rate of the VoWiFi packet are greater than the set threshold (S 250 ); 
     Step 6. If the voice packet is YES (S 240 ), then prompt to cancel the call and end the detection (S 270 ); and 
     Step 7. If the VoWiFi packet is YES (S 250 ), then automatically change the VoWiFi packet size (S 280 ) and re-determine whether or not the packet delay and packet loss rate of the VoWiFi packet are greater than the set threshold (S 250 ). 
     In summary, when a user uses VoWiFi communication, the user device automatically or the user selects the telecommunications provider side detection interface for detection. The telecommunications provider will determine whether the user is connected to the telecommunications provider network of the base station. If it is connected to the telecommunication provider&#39;s network, the internal device of the telecommunication provider will automatically determine whether the packet delay and packet loss rate of the user&#39;s voice packet or VoWiFi packet meet the set thresholds required by the telecommunication network. 
     The packet loss rate and packet delay of the voice packet and the packet loss rate and packet delay of the VoWiFi packet needs to be greater than or equal to (≥) per second, where, the threshold value of the packet loss rate of the voice packet is 10 −2 , the threshold value of the packet loss rate of the VoWiFi packet is a threshold value that is greater than or equal to (≥) per second, where the threshold value is 10 −6 . 
     The thresholds are interval time settings, where the unit of the time setting value is seconds (s), and the interval time setting value is 1˜999 seconds, and is a certain period of time what percentage of voice packets need to be correctly transmitted to the destination. 
     If it is determined that both are greater than or equal to (≥) the set threshold, it will notify the user and the user&#39;s device re-dials through the telecommunications network. If both are less than the set threshold, that is, when the telecommunications provider detects that the voice packet does not reach the set threshold, the telecommunications provider will continue to observe and re-determine if the user is not connected to the telecommunication business network. The internal device of the telecommunication provider will automatically determine whether the packet delay and packet loss rate of the user&#39;s voice packet or VoWiFi packet meet the set thresholds required by the telecommunication network. That is if the packet delay and packet loss rate of the voice packet are greater than or equal to (≥) a set threshold. 
     The user is prompted to cancel the call, helping the user to save unnecessary costs if it is less than the set threshold. The telecommunications provider will continue to monitor and re-determine if the packet delay and packet loss rate of VoWiFi packets are less than the set threshold. The telecommunications provider will continue to monitor and re-determine if the packet delay and packet loss rate of VoWiFi packets are greater than or equal to (≥) set thresholds. The telecommunications provider will automatically change the VoWiFi packet size, making it difficult for ARP attackers to accurately discard them. Packets of a certain size are continuously monitored afterward. 
     As can be seen from the above, the user can set and choose to use the user device side self-checking interface to perform the detection or choose to use the telecommunications provider side detection interface to perform the detection or choose both to simultaneously detect the network communication to secure the environment and check the quality of the user&#39;s use. In the case of a connected network call, when the VoWiFi packet does not reach the set threshold, the telecommunications provider will notify the user device to re-dial or cancel the call through the telecommunications network, and protection measures can be immediately implemented to protect the user and avoid serious damage when attacked by ARP attackers. 
     In summary, the security protection method of the present invention can be preset by the user in advance, and the user can select a user self-check interface or a telecommunications provider&#39;s detection interface or a simultaneous environment detection for network calls. As a result, the method prevents ARP attackers from accurately discarding packets of a specific size, thereby successfully protecting the environment and quality of user network calls. 
     As can be seen from the foregoing implementation description, compared with the prior art and products, the present invention has the following advantages: 
     1. The wireless network-based voice communication security protection method of the present invention can be a mobile device application or a mobile application (APP) on the mobile device and comprises a user side self-checking interface, and also has a WiFi interface, and can scan the wireless network through the WiFi interface, and confirms the security of its network call environment. 
     2. The wireless network-based voice communication security protection method of the present invention can be implemented by using the related record analysis originally set in the telecommunication provider side, and at the same time, providing the user side real-time security assessment and messaging. 
     3. The wireless network-based voice communication security protection method of the present invention can be set by the user in advance and the user can select to detect by the user side self-checking interface, or select to be detected by a telecommunications provider side detection interface, or can select to simultaneously perform detection through the user side self-checking interface and the telecommunication provider side detection interface. The user device obtains the security assessment information provided by the telecommunication provider side in real-time. 
     Specifically, in the present invention, the user can select the detection interface by themselves and can immediately receive relevant network call environment security assessment messages to the user device or from the telecommunications provider at the same time, thereby avoiding attacks when using VoWiFi from external ARP attackers during network calls and ensures the security and quality of the network call environment. 
     The above description is only the best embodiment of the present invention, but the structural features of the present invention are not limited to this description. Any person skilled in the art can easily think of changes or modifications in the field of the present invention. Both are covered by the patent scope of the present invention. 
     The present invention provides an unprecedented innovative structure that has not been seen in any publications and there are no similar products on the market. Therefore, it should be considered with its novelty. In addition, the unique features and functions of the present invention are far from comparable to conventional ones, so it is indeed more progressive than conventional ones, and it complies with the requirements of patent law concerning the requirements for application for invention patents.