Methods and system for secure short messaging service (SMS) communication

GB2633094APending Publication Date: 2025-03-05AUGNET LTD

Patent Information

Application Number
GB2023013356
Authority / Receiving Office
GB · GB
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-09-01
Publication Date
2025-03-05

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A method for securely sending short messaging service (SMS) communications from a source device 302 to a destination device 304. An SMS communication 306 intended for the destination device is transmitted from the source device to a remote server 314. The remote server determines whether the SMS communication is suitable for processing and creates a partial encryption key using a plurality of unique device identifiers 318 obtained from the destination device. The remote server further obtains a public rotating key 316, and combines the partial encryption key with the public rotating key to generate a complete encryption key. The SMS communication is encrypted using the complete encryption key and the encrypted SMS communication 320 is sent from the remote server to the destination device over a conventional SMS delivery network. A remote server app may be installed on the destination device, and the unique device identifiers may be received by the remote server via the app.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD The present disclosure relates to a method of sending conventional short messaging service (SMS) communications from a source device to a destination device. Moreover, the present disclosure relates to a method of receiving SMS communications at a destination device from a source device. Furthermore, the present disclosure relates to a system for enhancing SMS communication. BACKGROUND Short Messaging Service (SMS) is a globally accepted communication protocol that allows mobile devices to exchange short text messages. The ubiquity of SMS is a testament to its simplicity, reliability, and universal applicability across different devices and network infrastructures. One of the major advantages of SMS is its ability to function even in areas with weak or sporadic internet connectivity. This has made it the preferred mode of communication in many parts of the world, especially in regions where internet infrastructure is still developing. Given its widespread usage and sometimes sensitive nature of information often shared over SMS communication, it has become vital to ensure security of this medium against potential threats. However, while SMS has been around for several decades, its fundamental architecture has remained largely unchanged. At its core, the conventional SMS communication protocol facilitates the transmission of plain text messages between devices over a cellular network. These messages traverse multiple network nodes, including base stations, SMS centres, and routing servers, before reaching their intended recipients. In recent times, certain challenges have emerged in the realm of SMS communication. One significant issue is artificially inflated traffic (AIT), wherein nefarious agents boost the number of SMS sent by an enterprise. Such practices can hinder genuine user interactions. However, by utilizing the present methods and system, enterprises can ensure that only genuine traffic reaches the intended users. Another concerning problem is routing manipulation. Often, when legitimate suppliers encounter AIT, they find themselves unable to deliver messages as the supposed recipients aren't real network subscribers. Perpetrators, on the other hand, can issue counterfeit delivery receipts and subsequently activate fictitious accounts, leading to unreliable routing logic for enterprises. Also, SMS communication isn't devoid of confidence tricks. Some fraudsters, by merely being a part of the SMS supply chain, can access customer SMS traffic. This accessibility equips them with the means to execute confidence scams. Often, these malicious actors are individual entities operating within a more extensive organization. By verifying specific activities on a user's phone, they can win the trust of users. As a consequence, users might share sensitive information, escalating the potential for security breaches. Existing methods to secure SMS communications are limited in their approach. Most of the conventional solutions do not offer true end-to-end encryption for SMS. Also, without proper authentication mechanisms, conventional SMS communications are vulnerable to man-in-the-middle attacks. In such scenarios, malicious entities can intercept and potentially alter the message before it reaches its intended recipient. Therefore, in light of the foregoing discussion, there exists a need to overcome the aforementioned limitations / drawbacks. SUMMARY The aim of the present disclosure is to provide a solution for a more robust, flexible, and universally applicable method to secure SMS communications, leveraging the existing SMS infrastructure, ensuring ease of deployment and user adoption. The aim of the present disclosure is achieved by a method of sending conventional short messaging service (SMS) communications from a source device to a destination device, a method of receiving SMS communications at a destination device from a source device, and a system for enhancing SMS communication as defined in the appended independent claims to which reference is made to. Advantageous features are set out in the appended dependent claims. Throughout the description and claims of this specification, the words "comprise", "include", "have", and "contain" and variations of these words, for example "comprising" and "comprises", mean "including but not limited to", and do not exclude other components, items, integers or steps not explicitly disclosed also to be present. Moreover, the singular encompasses the plural unless the context otherwise requires. In particular, where the indefinite article is used, the specification is to be understood as contemplating plurality as well as singularity, unless the context requires otherwise. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a flowchart listing steps involved in a method of sending conventional short messaging service (SMS) communications from a source device to a destination device, in accordance with an embodiment of the present disclosure; FIG. 2 is a flowchart listing steps involved in a method of receiving SMS communications at a destination device from a source device, in accordance with an embodiment of the present disclosure; FIG. 3 is a process flow for the transmission of messages from a source device to a destination device, in accordance with an embodiment of the present disclosure; FIG. 4 is a block diagram of a system for enhancing SMS communication, in accordance with an embodiment of the present disclosure; FIG. 5 is a schematic diagram of operation of a system for enhancing SMS communication, in accordance with an embodiment of the present disclosure; FIG. 6 is a block diagram representation of a SMS communication, in accordance with one or more embodiments of the present disclosure; and FIG. 7 is an exemplary depiction of interface of a remote server app, in accordance with one or more embodiments of the present disclosure. DETAILED DESCRIPTION OF EMBODIMENTS The following detailed description illustrates embodiments of the present disclosure and ways in which they can be implemented. Although some modes of carrying out the present disclosure have been disclosed, those skilled in the art would recognize that other embodiments for carrying out or practising the present disclosure are also possible. In a first aspect, the present disclosure provides a method of sending conventional short messaging service (SMS) communications from a source device to a destination device, the method comprising: transmitting an SMS communication from the source device, intended for the destination device, to a remote server; inspecting the SMS communication, at the remote server, to determine whether it is suitable for processing by the remote server; creating a partial encryption key, at the remote server, using a plurality of unique device identifiers obtained from the destination device; obtaining a public rotating encryption key by the remote server; generating a complete encryption key, at the remote server, by combining the partial encryption key with the public rotating encryption key; encrypting the SMS communication using the complete encryption key; and sending the encrypted SMS communication from the remote server to the destination device over conventional SMS delivery network. The present method, as per the first aspect, introduces a multi-layered approach to enhance the security of conventional SMS communications. By incorporating both a partial encryption key, derived from the unique device identifiers of the destination device, and a public rotating encryption key, the method ensures dynamic and robust encryption. The synergy between these two encryption keys offers two primary advantages: specificity and adaptability. The partial encryption key ensures that the encryption is tailored to the specific destination device, adding a layer of security by making the encryption process devicespecific. On the other hand, the public rotating encryption key brings adaptability by changing at predefined intervals, ensuring that even if an encryption key is compromised, it has a limited window of vulnerability. Furthermore, by inspecting the SMS communication for its suitability, the remote server ensures efficient processing by filtering out unsuitable or potentially harmful messages. The combined effect of these features is a more secure, efficient, and resilient SMS communication system, offering enhanced protection against unauthorized access and potential security threats. In a second aspect, the present disclosure provides a method of receiving short messaging service (SMS) communications at a destination device from a source device, the method comprising: sharing a plurality of unique device identifiers by the destination device with a remote server via a remote server app installed on the destination device; receiving an encrypted SMS communication at the destination device from the source device via the remote server; validating the received encrypted SMS communication by the remote server app using the plurality of unique device identifiers; generating a private key by the destination device to decrypt the received encrypted SMS communication; and storing the decrypted SMS communication in the remote server app. The method, as per the second aspect, focuses on reception and decryption of secure SMS communications at the destination device. The method, by utilizing a plurality of unique device identifiers shared with the remote server, ensures a tailored encryption-decryption process, significantly reducing the chances of unauthorized decryption. This feature ensures that even if an encrypted message is intercepted, without the specific device identifiers, decryption remains challenging. Further, the method incorporates the remote server app installed on the destination device to provide a dedicated environment for secure communication management, which not only aids in the sharing of device identifiers but also validates incoming encrypted messages, ensuring that only genuine and intended messages are processed. The generation of a private key by the destination device further enhances security by ensuring that decryption is both device-specific and dynamic. Thus, the method, as per the second aspect, synergistically combines device-specific security, dedicated app management, and dynamic decryption to offer a fortified and efficient solution for receiving secure SMS communications. In a third aspect, the present disclosure provides a system for enhancing short messaging service (SMS) communication comprising: a source device configured to generate and send an SMS communication; a destination device configured to receive the SMS communication originated from the source device over conventional SMS delivery network; and a remote server configured to: inspect the SMS communication to determine whether it is suitable for processing thereby; create a partial encryption key using a plurality of unique device identifiers obtained from the destination device; obtain a public rotating encryption key; generate a complete encryption key by combining the partial encryption key with the public rotating encryption key; encrypt the SMS communication using the complete encryption key; and send the encrypted SMS communication to the destination device via conventional SMS delivery network. The present system incorporates the source device, the destination device, and the remote server, each playing a role in the secure transmission process. The source device, responsible for generating and transmitting the SMS, interacts with the remote server, which acts as a gatekeeper, inspecting each SMS to determine its suitability for secure transmission. The remote server creates the partial encryption key by using the unique device identifiers of the destination device, to ensures device-specific encryption. Further, the remote server complements this by combining the partial encryption key with the public rotating encryption key to generate the complete encryption key. This key's evolving nature ensures that the encryption remains dynamic and adaptable, preventing potential vulnerabilities that static encryption keys may present. Thus, the system presents a synergy between the source device, remote server, and destination device, providing enhanced SMS communication. More specifically, in the method of sending conventional SMS communications from the source device to the destination device, the method, foremost, comprises transmitting the SMS communication from the source device, intended for the destination device, to the remote server. That is, the process begins with the source device transmitting the SMS communication. This SMS communication is specifically intended for the destination device. Herein, instead of sending the SMS directly to the destination device over the conventional network, it is first sent to the remote server. This intermediate step is introduced, as the remote server helps in enhancing the security of the SMS, as received from the source device, before it reaches its intended recipient, i.e., the destination device. The method, then, comprises inspecting the SMS communication, at the remote server, to determine whether it is suitable for processing by the remote server. That is, upon receipt of the SMS communication, the remote server undertakes the task of inspecting it. The purpose of this inspection is to determine whether the received SMS communication is suitable for processing by the remote server. It may be appreciated that given the vast number of SMS communications that are transmitted daily, not every message may be suitable for the enhanced security processing. For instance, some messages may already follow an existing secure protocol or may not contain sensitive information that warrants the additional encryption layer. On the other hand, some messages may have characteristics that make them unsuitable for encryption. By inspecting the SMS communication, the remote server confirms that only legitimate and appropriate communications undergo the subsequent encryption process, thus ensuring the security and efficiency of the subsequent processes. In an embodiment, inspecting the SMS communication to determine its suitability for processing comprises determining its suitability based on one or more of content, format, size, origin, and destination of the SMS communication. That is, said inspection (evaluation) by the remote server can be based on various criteria. Herein, inspecting the "content" of the SMS communication involves examining the actual content of the SMS to identify any potential security threats or patterns that may indicate malicious intent. Additionally, checks may be performed to see if the message content matches predefined criteria for encryption, ensuring that only necessary messages undergo the process. Inspecting the "format" of the SMS communication involves checking if a structure of the SMS follow required patterns needed for encryption process, and only those messages may be flagged for further encryption, while others may be passed through as they are. Inspecting the "size" of the SMS communication involves checking if the SMS is already close to a maximum permissible size for standard message. Given that encryption can add overhead to the message size, then such SMS may be deemed unsuitable for further processing to avoid issues during transmission. Inspecting the "origin" of the SMS communication involves checking if the SMS is from trusted sources or known secure channels, and messages from such sources / channels may bypass the encryption process. Inspecting the "destination" of the SMS communication involves checking if the destination device has specific security protocols or lacks certain capabilities, then the SMS may be accordingly processed for encryption. The method, then, comprises creating the partial encryption key, at the remote server, using the plurality of unique device identifiers obtained from the destination device. That is, once the SMS is deemed suitable for processing, the remote server proceeds to create the partial encryption key. By using these unique identifiers, the encryption process becomes intrinsically tied to the specific destination device, adding a layer of security that is harder for potential intruders to breach. This is because the encryption, being tailored to unique attributes of the destination device, ensures that even if the encrypted message is intercepted, without knowledge of the exact device identifiers, decryption becomes a complex and challenging task. Furthermore, by generating the partial encryption key for each SMS communication, the method ensures a dynamic encryption environment where the security parameters evolve with each message, making it increasingly difficult for unauthorized entities to predict or replicate the encryption mechanism. In an embodiment, the plurality of unique device identifiers comprises one or more of hardware, software, and network-related identifiers of the destination device. These unique identifiers serve as distinct attributes, allowing the remote server to authenticate the destination device during the communication process. Hardware identifiers of the destination device are physical attributes intrinsically tied to its construction and components, and may include elements such as the International Mobile Equipment Identity (IMEI) number, which is unique for every mobile device, the Media Access Control (MAC) address that is specific to the device's network interface, or the Serial Number of the device. Other hardware identifiers may include the Central Processing Unit (CPU) ID, chipset information, or even unique codes embedded in other critical components like the graphics processing unit (GPU). Software identifiers, on the other hand, relate to the destination device's operating system, applications, and other software configurations. This may include the Operating System (OS) version, build number, or any unique identifiers associated with specific applications installed on the device. This may also include user profiles, application-specific tokens, or licensing details that are unique to the device's software environment. Network-related identifiers pertain to the destination device's connection attributes within a network. This could involve the Internet Protocol (IP) address, which may be dynamically assigned each time the device connects to a network, or the Mobile Subscriber Integrated Services Digital Network Number (MSISDN), which is tied to the destination device's SIM card and mobile network. By using a combination of these unique identifiers, the present method achieves a more comprehensive authentication process. Herein, the partial encryption key is a device-specific key derived directly from the plurality of unique device identifiers of the destination device. This way of generating the partial encryption key ensures that the encryption is not just generic or random but is intricately tied to the destination device. Since each device may have its set of unique identifiers, the derived partial encryption key would be distinct for every destination device. This means that even if two devices are receiving (or sending) similar content, the encryption keys for each would differ, leading to different encrypted outputs. This device-specific nature of the encryption adds another layer of security, ensuring that a breach or compromise on one device doesn't threaten the security of other device involved in the communication. It may be contemplated that the plurality of unique device identifiers from the destination device may be obtained via an initial communication handshake between the remote server and the destination device. In an embodiment, the remote server issues an authentication challenge, comprising a nonce, to the destination device prior to obtaining the plurality of unique device identifiers. By incorporating the nonce, which stands for "number used once," the method introduces a unique and temporary value that ensures the authenticity of the communication devices. This nonce acts as a onetime cryptographic token that the destination device must respond to correctly, confirming its identity and the integrity of the communication. Specifically, once the destination device receives the nonce, it processes it, often combining it with other private or known information, and then sends a response back to the remote server. The server then evaluates this response. If the response is valid and aligns with the expected outcome, it confirms the authenticity of the destination device. Only upon successful validation does the remote server proceed to obtain the unique device identifiers, ensuring that these identifiers are being shared in a secure and trusted environment. It is to be understood that other known handshaking or authentication methods may be used between the remote server and the destination device. The method, then, comprises obtaining the public rotating encryption key by the remote server. That is, in tandem with the partial encryption key, the remote server also obtains the public rotating encryption key (also known as 'transport key'). As used herein, the public rotating encryption key is not static, but changes or rotates at predefined intervals or predefined triggers, and the like. The remote server, being centrally positioned, is responsible for managing this rotation, ensuring that both the source device and the destination device are synchronized with the current public rotating encryption key without compromising its integrity during the exchange. The dynamic nature of the public rotating encryption ensures that even if an unauthorized entity gains access to it during one session, it cannot use the same key for subsequent sessions, providing an additional layer of security to the encryption mechanism. In an embodiment, the public rotating encryption key is a time-sensitive key that changes at predefined intervals. Unlike static keys, which remain unchanged for extended periods, a time-sensitive key is designed to change or "rotate" at set intervals. This continuous change makes the encryption system more resilient, as potential attackers have a limited window to act even if they manage to compromise the key at any given point. As the key changes, their obtained knowledge becomes outdated, and they would have to start their malicious efforts again with the next key rotation. Therefore, by making the public encryption key time-sensitive and ensuring it changes at predefined intervals, the method makes unauthorized decryption attempts not only challenging but also time-constrained. The method, then, comprises generating the complete encryption key, at the remote server, by combining the partial encryption key with the public rotating encryption key. As discussed, the partial encryption key is generated based on the plurality of unique device identifiers from the destination device, ensuring that this part of the encryption key is not only unique but also closely tied to the specific attributes of the destination device. On the other hand, the public rotating encryption key, as a time-sensitive key, changes at predefined intervals, making it dynamic to evade for potential security threats. With both the partial encryption key and the public rotating encryption key available, the remote server then combines these two to generate the complete encryption key. The complete encryption key provides the security benefits of both its constituents: the specificity of the partial key and the dynamism of the rotating key. The complete encryption key creates a robust encryption mechanism that is both recipient-specific and timesensitive. In particular, the complete encryption key ensures that the SMS communication is not only encrypted in a manner specific to the destination device but also in a way that changes over time, providing a dual layer of protection against unauthorized access or decryption attempts. The method, then, comprises encrypting the SMS communication using the complete encryption key. That is, with the complete encryption key generated, the remote server proceeds to encrypt the SMS communication. The SMS is encrypted in such a manner that only the intended recipient, possessing the right set of device identifiers and the corresponding decryption mechanism, can decrypt and access the content of the message. Specifically, when the SMS communication is encrypted using this complete key, it undergoes a transformation wherein its content becomes unreadable to any entity without the corresponding decryption key. This encryption ensures that even if the message is intercepted during transmission, the interceptor cannot derive any meaningful information from the message without knowledge of the complete decryption process and key, and that the message remains confidential and secure during its transit over the conventional network. Given that the complete encryption key is a combination of devicespecific and time-sensitive components, the encrypted message carries with it a unique encryption pattern. For instance, the same message sent to two different devices would be encrypted differently due to the device-specific nature of the partial encryption key. Similarly, the same message sent to the same device at two different times would also differ in its encrypted form because of the time-sensitive nature of the public rotating encryption key. Such encryption means that every SMS communication is essentially a one-of-a-kind transmission, even if the actual content of the messages is identical. This unique encryption significantly reduces the risk of replay attacks, where an intruder may intercept and resend a previously sent message, as the encryption would differ based on time or device. In an embodiment, the encrypted SMS communication is formatted with a specific prefix or suffix to facilitate its identification by the destination device. This incorporation of the specific prefix or suffix acts as a marker, signalling to the destination device that the incoming message has been subjected to the special encryption process and thus needs to be processed differently from regular SMS messages. By incorporating such prefix or suffix, the present method creates an easily recognizable pattern for the destination device to detect. For instance, when the destination device receives multiple messages, it can quickly and efficiently scan for this pattern, separating encrypted SMS communications from conventional ones. Apart from aiding in the swift identification, the prefix or suffix also adds another layer of security. In scenarios where an unauthorized entity attempts to send malicious or spoofed messages to the destination device, the absence of the correct prefix or suffix would prevent such messages from being processed as legitimate encrypted communications. Furthermore, the use of specific prefixes or suffixes also helps in maintaining the structural integrity of the encrypted message. This process, overall, ensures efficient processing, enhances security, and maintains the structural integrity of the message, and thus helping in functioning of the secure SMS communication. The method, then, comprises sending the encrypted SMS communication from the remote server to the destination device over conventional SMS delivery network. That is, after the successful encryption of the SMS using the complete encryption key, the remote server sends the encrypted SMS communication over the conventional SMS delivery network to the destination device. As discussed, the conventional SMS delivery network, which has been in place for decades, has a wide reach, being accessible on virtually every mobile device across the globe, from basic feature phones to the latest smartphones, i.e., nearly all mobile devices can send and receive messages using this network. By choosing to transmit the encrypted SMS over this well-established network, the present method ensures that the benefits of enhanced security can be availed by a vast user base without necessitating any significant changes to the existing infrastructure or the need for users to adopt new communication platforms. However, the content of the SMS, in this case, is encrypted, offering a level of security that is superior to conventional SMS communications. Thus, by sending the encrypted SMS communication over the conventional SMS delivery network, the present method leverages the widespread accessibility and reliability of the conventional SMS delivery network while significantly improving the security of the SMS communication. The described method, as per the first aspect, for sending encrypted SMS communications from the source device to the destination device introduces a robust approach to ensure data security. By initially transmitting the SMS communication to the remote server, a centralized point of encryption is provided. The act of inspecting the SMS at the remote server ensures that only suitable communications, meeting predefined criteria, are processed, thus enhancing efficiency and potentially filtering out malicious or unintended content. The encryption process, which involves creating a partial key based on the unique identifiers from the destination device and then combining it with the public rotating encryption key, provides a dynamic and complex encryption mechanism. This not only ensures that the encrypted message is highly secure but also makes it extremely difficult for potential intruders to decipher the message, even if they possess one of the keys. Finally, by sending the encrypted message over the conventional SMS network, the method retains the simplicity of SMS communication while significantly upgrading its security profile. The present disclosure also relates to the method of receiving SMS communications at the destination device from the source device. Various embodiments and variants disclosed above, with respect to the aforementioned method of sending SMS communications from the source device to the destination device, apply mutatis mutandis to the present method of receiving SMS communications at the destination device from the source device. The method, foremost, comprises sharing the plurality of unique device identifiers by the destination device with the remote server via the remote server app installed on the destination device. As discussed, within the framework of receiving SMS communications at the destination device from the source device, the plurality of unique device identifiers are shared with the remote server for ensuring personalized security and efficient message processing. The remote server app installed on the destination device serves as a medium for this sharing process. The remote server app, designed for secure communication, facilitates the extraction of the unique identifiers from the destination device, and transmission to the remote server. When initialized, either during its first setup or at predefined intervals, the remote server app collects the necessary unique identifiers from the destination device. The remote server app, then, transmits this collected data to the remote server employing secure communication protocols. In an example, the remote server app may employ a secure handshake mechanism for sharing the plurality of unique device identifiers with the remote server to ensure encrypted and authenticated communication. By providing the remote server with these unique identifiers, the destination device provides the remote server with tools to tailor the encryption process specifically for it. Specifically, as discussed, these unique identifiers has a role in generating the partial encryption key, which ensures that the encrypted message is intricately tied to the specific destination device. The method, then, comprises receiving an encrypted SMS communication at the destination device from the source device via the remote server. As discussed previously, in context of the method of sending conventional SMS communications from the source device to the destination device, when the source device initiates a communication intended for the destination device, it first undergoes a series of encryption processes on the remote server. This encryption, as discussed, is a combination of device-specific and time-sensitive encryption mechanisms. Once encrypted, the message is then transmitted over the conventional SMS delivery network. Upon reaching the destination device, the encrypted SMS communication, while still in its scrambled and unreadable form, carries with it the security assurances of the encryption process. Herein, the remote server operates as a hub where the encryption of the message, based on the unique identifiers and the public rotating encryption key, takes place. The remote server also acts as a relay, ensuring that the encrypted message is correctly transmitted to the intended destination device. Furthermore, the receipt of the encrypted SMS communication at the destination device highlights the seamless integration of enhanced security protocols with the conventional SMS delivery network. The method, then, comprises validating the received encrypted SMS communication by the remote server app using the plurality of unique device identifiers. Validating the received encrypted SMS communication by the remote server app using the plurality of unique device identifiers ensures the message's authenticity, and that it's indeed meant for the specific destination device. Herein, the remote server app may already be equipped with the plurality of unique device identifiers (from earlier sharing process), and may use those a set of keys or criteria against which the received encrypted SMS communication can be checked. During validation, the remote server app scans the received encrypted SMS communication, looking for patterns, markers, or elements that align with the unique device identifiers. This could be in the form of embedded codes, specific sequences, or even structural patterns that would have been introduced based on the device's unique identifiers during the encryption process. If the remote server app detects a match, it confirms that the message is indeed intended for the destination device and that it retains its original encrypted form. Thus, this validation process ensures that only genuine messages, specifically encrypted for the corresponding destination device, proceed to the decryption stage, and thereby prevents any potential spoofed or malicious messages from being processed further. The method, then, comprises generating the private key by the destination device to decrypt the received encrypted SMS communication. As may be understood, before any encrypted communication can be decrypted, the receiving device, in this case, the destination device, needs the appropriate cryptographic key which enables the device to convert the scrambled, unreadable content back into its original, understandable form. Herein, for the destination device, the private key is generated which is tailored to its unique attributes and prior interactions with the remote server, thus ensuring that only this specific device can produce the correct key for decryption. Once this private key is generated, the destination device may use it in conjunction with decryption algorithms to convert the encrypted SMS back into its original content. Such security, as provided by the present method, ensures that even if an unauthorized party intercepted the encrypted SMS, they wouldn't be able to decrypt it without the correctly generated private key. In an embodiment, generating the private key by the destination device comprises deriving the private key by the destination device using key derivation parameters established during an initial handshake with the remote server and the plurality of unique device identifiers thereof. It may be understood that when the destination device first communicates with the remote server, they perform a "handshake," where both entities establish the key derivation parameters for future communications. Now, the destination device already has information related to unique identifiers that pertain to its hardware, software, or network configurations. With the key derivation parameters and the unique device identifiers at hand, the destination device uses a key derivation function (KDF). This function, utilizing the provided data, outputs the private key. The nature of this function ensures that only with the correct input parameters (from the handshake and the device identifiers) can the appropriate private key be produced. By generating the private key using both the key derivation parameters and the unique identifiers, the present method ensures increased security. In an embodiment, the destination device regenerates the private key each time the encrypted SMS communication is received thereby. Herein, instead of relying on a static, persistent key, the destination device employs a dynamic approach. Each time an encrypted SMS arrives, the destination device, uses its pre-defined cryptographic algorithms and the unique identifiers, and regenerates the private key. This continual renewal ensures that even if a particular private key were to be compromised, it would be rendered obsolete almost immediately, as the next communication would involve a different, freshly regenerated private key. Thereby, the destination device substantially minimizes vulnerability, making it exceedingly challenging for unauthorized entities to decrypt and access the content of the messages. In an embodiment, the method further comprises the destination device signing a nonce, via the remote server app, using its private key and returning a public key thereof to the remote server. That is, the present method involves the use of the nonce, which is just a random piece of data sent by the remote server to the device. The nonce, being unique for each interaction, provides an added layer of security by ensuring that each authentication attempt is distinct, thereby preventing replay attacks. To respond to this challenge, the destination device uses its private key to "sign" the nonce. After signing the nonce with its private key, the destination device then proceeds to share its public key with the remote server. The public key, which is mathematically related to the private key but does not expose it, allows the remote server to verify the digital signature of the nonce. If the verification is successful, it confirms the identity of the destination device and assures the remote server that the communication is indeed with the legitimate device. In an embodiment, the method further comprises: the destination device requesting a public rotating encryption key from the remote server, wherein the request is signed by the private key of the destination device; and the remote server generating the public rotating encryption key in response to the request, encrypting the generated public rotating encryption key using the public key of the destination device and sending the encrypted public rotating encryption key to the destination device, wherein the remote server retains the public rotating encryption key for subsequent use. Herein, after the initial handshake and authentication processes have been completed, the destination device sends a request to the remote server to request for the public rotating encryption key. By signing the request with its private key, the destination device provides a digital proof that the request is genuinely originating from it, i.e., the request hasn't been tampered with. Upon receipt of this signed request, the remote server generates the public rotating encryption key, which, as the name suggests, is not static but change or 'rotate' at predefined intervals or under specific conditions, thereby offering an enhanced level of security. Further, the remote server encrypts the public rotating encryption key using the public key of the destination device. Once the public rotating encryption key has been encrypted, the remote server sends it to the destination device. Simultaneously, the remote server retains a copy of the public rotating encryption key, ensuring that both entities (i.e., the remote server and the destination device) are in sync and can securely encrypt and decrypt future communications using this shared key. The destination device may then be able to decrypt the received encrypted SMS communication using the public rotating encryption key and its private key, as discussed in the preceding paragraphs. The method, finally, comprises storing the decrypted SMS communication in the remote server app. It may be contemplated that storing digital communications, especially decrypted messages, requires security protocols to ensure both ease of access for the legitimate user and a robust defence against potential intruders. In the present method, once the encrypted SMS communication is successfully decrypted by the destination device, the remote server app, installed on the destination device, serves as a specialized interface and storage mechanism for these decrypted messages. Herein, the remote server app provides a dedicated, segregated environment for storing the decrypted messages to ensure that the decrypted communications remain distinct, making it easier for the user to identify and access them. In some examples, the remote server app may also incorporate features like automatic deletion after a certain period, backup to secure cloud storage, or even options for the user to manually erase specific messages post-reading. These features not only provide user control over their data but also further minimize potential vulnerabilities. The described method, as per the second aspect, of receiving encrypted SMS communications at the destination device offers a multi-layered approach for data security and user convenience. By leveraging the unique device identifiers and the remote server app, the method ensures that the received communication is both authentic and intended specifically for the destination device. The generation of the private key by the destination device further strengthens the encryption, ensuring that only the corresponding destination device can decrypt and access the message content. Moreover, storing the decrypted message within the remote server app provides an organized, segregated environment for secure communications. The present disclosure also relates to the system for enhancing SMS communication as described above. Various embodiments and variants disclosed above, with respect to the aforementioned methods, apply mutatis mutandis to the system. The source device serves as the starting point of the communication process. The source device is configured to generate and send the SMS communication. This could be a smartphone, a computer, or any other device with SMS capabilities. The source device initiates the communication process by transmitting the SMS, which might contain crucial information such as notifications, alerts, or regular text messages, over the internet or other networks. The remote server plays a role in the secure transmission of SMS communications. Upon receiving the SMS communication from the source device, the remote server inspects the message to determine its suitability for processing. The remote server is equipped with an encryption engine that generates encryption keys using a combination of public rotating keys and unique device identifiers. Once the message is encrypted, the remote server determines the most efficient route for its delivery, based on the online status of the destination device and other factors. The destination device stands at the receiving end of this communication process. Configured to receive SMS communications, the destination device could be another smartphone, tablet, or any device equipped to receive SMS messages. Upon receiving the encrypted SMS communication, the destination device employs its decryption engine, using a combination of public rotating keys and unique device identifiers, to decrypt the message to its original form. Specifically, herein, the source device operates much like any standard communication device, allowing users to create and send messages; however, instead of sending these messages directly to their intended recipient, the source device transmits them to the remote server. Upon receiving the SMS communication from the source device, the remote server first evaluates the SMS communication based on predetermined criteria to determine its suitability for further processing. Once the SMS passes this initial inspection, the remote server creates the partial encryption key derived from the unique device identifiers associated with the destination device, ensuring that the encryption process is customized for each specific recipient. The remote server also utilizes an additional layer for encryption by obtaining the public rotating encryption key, which is dynamic, changing at predefined intervals or under specific conditions. By merging the partial encryption key with this public rotating key, the remote server generates the complete encryption key to encrypt the SMS communication. The final step involves the remote server sending the encrypted SMS communication, using the conventional SMS delivery network, to the destination device, which may decrypt the SMS communication and present its content to the end user. In an embodiment, the remote server is further configured to receive the plurality of unique device identifiers from the destination device, via a remote server app installed on the destination device. In an embodiment, the destination device is configured to: receive the encrypted SMS communication from the remote server; validate the received encrypted SMS communication by a remote server app using the plurality of unique device identifiers; generate a private key to decrypt the received encrypted SMS communication; and store the decrypted SMS communication in the remote server app. The present system, thereby, ensures the security of SMS communications. By involving the remote server in the process and combining device-specific and time-sensitive encryption mechanisms, the system offers enhanced protection against potential security threats. The system of the present disclosure may be implemented in many forms. For instance, the present remote server can operate as the SMS provider and offer the authentication and encryption service. Alternatively, there's an option for a bolt-on service, where the remote server exclusively undertakes the authentication and encryption, while the network provider is responsible for delivering the message. The system of the present disclosure can address the described challenges associated with conventional SMS communications, like artificially inflated traffic (AIT), confidence scams, etc. For instance, the present system examines enrolled devices to create a profile using the unique identifiers including, but not limited to, MAC addresses, file system sizes, and CPU IDs. The SIM card's profile is also analysed, taking into account the IMSi and stored SIM applets. From this detailed device analysis, a partial encryption key is dynamically generated. This key, when combined with the public rotating encryption key, forms the complete key essential for the decryption process. One significant advantage of this methodology is its adaptability. If any of these identifiers undergo alterations, possibly due to device cloning or SIM swaps, the destination device loses its ability to decrypt incoming messages. Herein, SMS communications are channelled as plain text content via an encrypted connection. The present system uses the public key, coupled with its in-depth knowledge of the destination device, to dynamically generate the encryption key. The encryption process utilizes AES128 encryption standard, known in the art. While users have the privilege to view the content of the SMS within the remote server app, they are kept in the dark regarding the encryption key for added security. In tandem with this, there's stringent compliance with UK Retention of communications policy. Data is stored using AES256 encryption, both when at rest and in transit within secure services. This ensures heightened security when it comes to issuing and storing device keys. It also offers protection for apps and associated data against threats like malware and potential hijacking. The system facilitates automated updating of device and application credentials on a large scale, thus reducing human error. This guarantees adherence to established protocols and boosts operational efficiency, especially with automated password management. DETAILED DESCRIPTION OF THE DRAWINGS Referring to FIG. 1, illustrated is a flowchart listing steps involved in a method 100 of sending conventional short messaging service (SMS) communications from a source device to a destination device, in accordance with an embodiment of the present disclosure. At step 102, the method 100 includes transmitting an SMS communication from the source device, intended for the destination device, to a remote server. At step 104, the method 100 includes inspecting the SMS communication, at the remote server, to determine whether it is suitable for processing by the remote server. At step 106, the method 100 includes creating a partial encryption key, at the remote server, using a plurality of unique device identifiers obtained from the destination device. At step 108, the method 100 includes obtaining a public rotating encryption key by the remote server. At step 110, the method 100 includes generating a complete encryption key, at the remote server, by combining the partial encryption key with the public rotating encryption key. At step 112, the method 100 includes encrypting the SMS communication using the complete encryption key. At step 114, the method 100 includes sending the encrypted SMS communication from the remote server to the destination device over conventional SMS delivery network. It may be appreciated that the above steps 102-114 are only illustrative and other alternatives can also be provided where one or more steps are added, one or more steps are removed, or one or more steps are provided in a different sequence without departing from the spirit and the scope of the present disclosure. Referring to FIG. 2, illustrated is a flowchart listing steps involved in a method 200 of receiving short messaging service (SMS) communications at a destination device from a source device, in accordance with an embodiment of the present disclosure. At step 202, the method 200 includes sharing a plurality of unique device identifiers by the destination device with a remote server via a remote server app installed on the destination device. At step 204, the method 200 includes receiving an encrypted SMS communication at the destination device from the source device via the remote server. At step 206, the method 200 includes validating the received encrypted SMS communication by the remote server app using the plurality of unique device identifiers. At step 208, the method 200 includes generating a private key by the destination device to decrypt the received encrypted SMS communication. At step 210, the method 200 includes storing the decrypted SMS communication in the remote server app. It may be appreciated that the above steps 202-208 are only illustrative and other alternatives can also be provided where one or more steps are added, one or more steps are removed, or one or more steps are provided in a different sequence without departing from the spirit and the scope of the present disclosure. Referring to FIG. 3, illustrated is a process flow (as represented by reference numeral 300) for the transmission of messages from a source device 302 to a destination device 304, in accordance with an embodiment of the present disclosure. The process flow 300 provides a multi-layered, secure methodology for the transmission of messages from the source device 302 to the destination device 304. Initiating the process, the source device 302 sends the message as Application-to-Person (A2P) SMS 306 via Internet 308, providing that the message is generated in an application-to-person format, for automated or application-driven message generation mechanism. Upon transmission, a switch 310 with an associated lookup table 312 is employed to serve as a decision-making mechanism for determining optimal path or processing method for the message based on its destination, content, or other attributes. In case of authenticated endpoint, the switch 310 transmits the message to an encryption engine 314 which operates using a public rotating key 316, and a plurality of unique identifiers 318 (of the destination device 304) for encryption. As a result, an encrypted message 320 is generated. Further, a checking service 322 checks if the destination device 304 is online and connected to the service. If yes, the encrypted message 320 is sent over a service 324 involving TCP / IP via the Internet. If no, the encrypted message is sent via a SMS routing engine 326 using the transport protocol (SMSC). Further, the destination device 304 employs a decryption engine 328 to decrypt the received SMS communication utilizing both the public rotating key 316 and the plurality of unique identifiers 318. In case of unknown end point, the switch 310 directly transmits the message to the SMS routing engine 326 for delivery to the destination device 304 using the transport protocol (SMSC). Referring to FIG. 4, illustrated is a block diagram of a system (as represented by reference numeral 400) for enhancing short messaging service (SMS) communication, in accordance with an embodiment of the present disclosure. The system 400 includes a source device 402, a remote server 404 and a destination device 406. The source device 402 is configured to generate and send the SMS communication. The remote server 404 is configured to inspect the SMS communication to determine whether it is suitable for processing thereby; create a partial encryption key using a plurality of unique device identifiers obtained from the destination device 406; obtain a public rotating encryption key; generate a complete encryption key by combining the partial encryption key with the public rotating encryption key; encrypt the SMS communication using the complete encryption key; and send the encrypted SMS communication to the destination device 406 via conventional SMS delivery network. The destination device 406 is configured to receive the SMS communication originated from the source device 402 over conventional SMS delivery network. Referring to FIG. 5, illustrated is a schematic diagram of operation of a system 500 for enhancing SMS communication, in accordance with an embodiment of the present disclosure. As illustrated, the system 500 includes a source device 502, a remote server 504 and a destination device 506. Herein, initially, in the destination device 506, at operation step 510, device information is collected, and unique identifiers (fingerprint) is produced. Using unique identifiers, at operation step 512, device specific key pair (asymmetric) is generated, resulting in a private key 514 and a public key 516. Further, in operation, Internetbased communication is used, which is required only for initial setup and periodic key rotation. At operation step 520, user, via the destination device 506, registers and logs in to a cloud service. Then, at operation step 522, a device fingerprint challenge is sent by the remote server 504 to the destination device 506. Further, at operation step 524, a public key and fingerprint challenge response (signed) is provided by the destination device 506 to the remote server 504, using the public key 516 thereof. The remote server 504 stores a copy of the public key 516 of the destination device 506 therein. Also, at operation step 526, request for key rotation or revocation (signed) is sent by the destination device 506 to the remote server 504. At operation step 528, the remote server 504 generates a public rotating encryption key 530 to be stored therein for a validity of given 'n' days. At operation step 532, the remote server 504 encrypts the public rotating encryption key 530 using the copy of the public key 516, and generate an encrypted public rotating encryption key 534. Then, at operation step 536, the remote server 504 sends the encrypted public rotating encryption key 534 to the destination device 506, where it may be stored in persistent storage. Now, at operation step 540, a SMS communication 542 is received by the remote server 504 from the source device 502. At operation step 544, the SMS communication 542 is encrypted by the remote server 504 using the public rotating encryption key 530 stored therein to generate an encrypted SMS communication 546. This encrypted SMS communication 546 is transmitted via an untrusted delivery network(s) 548 to the destination device 506, while privacy and integrity is assured. In the destination device 506, the encrypted SMS communication 546 is stored in a standard inbox 550, where messages are visibly encrypted. Now, at operation step 552, the destination device 506 decrypts the encrypted public rotating encryption key 534 using the private key 514 thereof, to generate volatile, unencrypted public rotating encryption key 554. At operation step 556, this public rotating encryption key 554 is used to decrypt the encrypted SMS communication 546. At operation step 558, the decrypted SMS communication is delivered to in-app mailbox of remote server app 560 for the user. Referring to FIG. 6, illustrated is a block diagram representation of a SMS communication (as represented by reference numeral 600), in accordance with one or more embodiments of the present disclosure. As shown, the SMS communication 600 includes an identifier labelled as "eAO", which may serve as a protocol or structure header. The communication allows for an SMS of up to 160 characters with a restricted alphabet, suggesting a set of specific characters or symbols permitted for the message. For encoding efficiency, it employs the base85 scheme, translating to 155 characters or 124 bytes at an 80% rate. Security is enhanced using the AES-128 encryption algorithm in Cipher Block Chaining (CBC) mode, which encrypts the message in six blocks of 16 bytes each. A unique "Sender ID" is integrated, providing a clear identifier for the message's origin. The primary content of the message, termed as the "Payload", occupies 76 bytes, while an additional segment of 16 bytes is included without a specified label, which might be a checksum or digital signature. Furthermore, to accommodate extensive content, there's a provision termed "SMS Concentration" that allows for the handling of extended payloads, indicating a mechanism for compression or message splitting. Referring to FIG. 7, illustrated is an exemplary depiction of interface of a remote server app (as represented by reference numeral 700), in accordance with one or more embodiments of the present disclosure. The interface of the remote server app 700 allows a user of the destination device to view the messages as part of the SMS communication in decrypted form. The methods 100, 200 and the system 400, 500 of the present disclosure may have many potential implementations and use-cases. For instance, many banking institutions and financial services rely on SMS for two-factor authentication and transaction confirmations. Using teachings of the present disclosure, financial SMS communications can be made much more secure, reducing the risk of phishing attacks or unauthorized transactions. Also, during critical situations, such as natural disasters or security breaches, ensuring that alerts and messages remain uncompromised is vital. The techniques described in the present disclosure can be employed to deliver these critical communications securely. Modifications to embodiments of the present disclosure described in the foregoing are possible without departing from the scope of the present disclosure as defined by the accompanying claims. Expressions such as "including", "comprising", "incorporating", "have", "is" used to describe and claim the present disclosure are intended to be construed in a nonexclusive manner, namely allowing for items, components or elements not explicitly described also to be present. Reference to the singular is also to be construed to relate to the plural.

Claims

1. A method (100) of sending conventional short messaging service (SMS) communications from a source device to a destination device, the method (100) comprising:transmitting an SMS communication from the source device, intended for the destination device, to a remote server;inspecting the SMS communication, at the remote server, to determine whether it is suitable for processing by the remote server;creating a partial encryption key, at the remote server, using a plurality of unique device identifiers obtained from the destination device;obtaining a public rotating encryption key by the remote server;generating a complete encryption key, at the remote server, by combining the partial encryption key with the public rotating encryption key;encrypting the SMS communication using the complete encryption key; andsending the encrypted SMS communication from the remote server to the destination device over conventional SMS delivery network.

2. A method (100) according to claim 1, wherein inspecting the SMS communication to determine its suitability for processing comprises determining its suitability based on one or more of content, format, size, origin, and destination of the SMS communication.

3. A method (100) according to any of claims 1 or 2, wherein the remote server issues an authentication challenge, comprising a nonce, to the destination device prior to obtaining the plurality of unique device identifiers.

4. A method (100) according to any of preceding claims, wherein the partial encryption key is a device-specific key derived directly from the plurality of unique device identifiers of the destination device.

5. A method (100) according to any of preceding claims, wherein the public rotating encryption key is a time-sensitive key that changes at predefined intervals.

6. A method (100) according to any of preceding claims, wherein the encrypted SMS communication is formatted with a specific prefix or suffix to facilitate its identification by the destination device.

7. A method (100) according to any of preceding claims, wherein the plurality of unique device identifiers comprises one or more of hardware, software, and network-related identifiers of the destination device.

8. A method (200) of receiving short messaging service (SMS) communications at a destination device from a source device, the method (200) comprising:sharing a plurality of unique device identifiers by the destination device with a remote server via a remote server app installed on the destination device;receiving an encrypted SMS communication at the destination device from the source device via the remote server;validating the received encrypted SMS communication by the remote server app using the plurality of unique device identifiers;generating a private key by the destination device to decrypt the received encrypted SMS communication; andstoring the decrypted SMS communication in the remote server app.

9. A method (200) according to claim 8, wherein generating the private key by the destination device comprises deriving the private keyby the destination device using key derivation parameters established during an initial handshake with the remote server and the plurality of unique device identifiers thereof.

10. A method (200) according to any of claims 8 or 9, wherein the destination device regenerates the private key each time the encrypted SMS communication is received thereby.

11. A method (200) according to any of claims 8-10 further comprising the destination device signing a nonce, via the remote server app, using its private key and returning a public key thereof to the remote server.

12. A method (200) according to claim 11 further comprising:the destination device requesting a public rotating encryption key from the remote server, wherein the request is signed by the private key of the destination device; andthe remote server generating the public rotating encryption key in response to the request, encrypting the generated public rotating encryption key using the public key of the destination device and sending the encrypted public rotating encryption key to the destination device, wherein the remote server retains the public rotating encryption key for subsequent use.

13. A system (400, 500) for enhancing short messaging service (SMS) communication comprising:a source device configured to generate and send an SMS communication;a destination device configured to receive the SMS communication originated from the source device over conventional SMS delivery network; anda remote server configured to:inspect the SMS communication to determine whether it is suitable for processing thereby;create a partial encryption key using a plurality of unique device identifiers obtained from the destination device;obtain a public rotating encryption key;generate a complete encryption key by combining the partial encryption key with the public rotating encryption key;encrypt the SMS communication using the complete encryption key; andsend the encrypted SMS communication to the destination device via conventional SMS delivery network.

14. A system (400, 500) according to claim 13, wherein the remote server is further configured to receive the plurality of unique device identifiers from the destination device, via a remote server app installed on the destination device.

15. A system (400, 500) according to claim 13, wherein the destination device is configured to:receive the encrypted SMS communication from the remote server;validate the received encrypted SMS communication by a remote server app using the plurality of unique device identifiers;generate a private key to decrypt the received encrypted SMS communication; andstore the decrypted SMS communication in the remote serverapp.37

Citation Information

Patent Citations

  • Secure short message service (SMS) communications

    US20200029215A1

Cited By

  • Passive encryption rotation keys

    US20240430083A1