IP Library Granted Patent US 12695618
Granted Patent B2
US 12695618 · App. 18/028,040 · Granted Jul 28, 2026

Message push method, electronic device, and storage medium

Inventor: Zhenhui Luo (Dongguan, CN)
Assignee: PETAL CLOUD TECHNOLOGY CO., LTD.
H04L9/3247H04L67/55
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12695618
App. No.
18/028,040
Granted
Jul 28, 2026
Kind
B2
Abstract

A method includes: creating a mapping relationship between an application identifier and a preset key; sending the mapping relationship to a message provider; receiving a to-be-pushed message and a message push request from the message provider, where the message push request includes first information and a first digest; performing digest extraction on the first information in the message push request using the preset key to obtain a second digest; comparing the second digest with the first digest; and pushing the to-be-pushed message to a message receiver corresponding to the application identifier when the second digest is consistent with the first digest.

Claims (65)

1 . A method performed by a message pusher and comprising:

creating a mapping relationship between a first application identifier and a first preset key;

sending the mapping relationship to a message provider;

receiving a to-be-pushed message and a message push request from the message provider, wherein the message push request comprises first information and a plurality of received digests corresponding to a plurality of application identifiers and including a first received digest for verification, wherein the first received digest is based on the first information and the first preset key, and wherein the first information comprises the application identifiers including the first application identifier;

querying the mapping relationship with the first application identifier to obtain the first preset key;

extracting, with the first preset key, a digest from the first information to obtain a first obtained digest;

comparing the first obtained digest with the first received digest;

pushing, when the first obtained digest matches the first received digest, the to-be-pushed message to a message receiver corresponding to the first application identifier, wherein the to-be-pushed message is not delivered when the first obtained digest does not match the first received digest; and

performing a digest extraction on the first information using preset keys corresponding to the application identifiers to obtain a plurality of obtained digests corresponding to the application identifiers, and wherein the preset keys comprise the first preset key.

2 . The method of claim 1 , wherein the message push request further comprises a signature of the message provider, and wherein before comparing the first obtained digest with the first received digest, the method further comprises performing identity authentication on the message provider based on the signature to determine whether an identity of the message provider is legal.

3 . The method of claim 1 , further comprising:

identifying that the first preset key does not exist at the message pusher; and

terminating, in response to identifying that the first preset key does not exist at the message pusher, push of a current to-be-pushed message.

4 . The method of claim 1 , further comprising sending a verification failure message to the message provider when the first obtained digest is not the same as the first receive digest.

5 . The method of claim 1 , wherein before querying whether the first preset key exists at the message pusher, the method further comprises reading the message push request.

6 . The method of claim 1 , further comprising further querying, in a local database, whether the first preset key exists at the message pusher.

7 . The method of claim 1 , wherein the message push request is in a JSON Web Token (JWT) format and comprises a header, a payload, and a signature, wherein the header comprises an application identifier field and a digest field, wherein the payload comprises the first application identifier corresponding to the application identifier field, declaration information comprising at least one of an issuer, an issuance time, or an issuance effective time, and the first received digest corresponding to the digest field, and wherein the digest field identifies a location of the first received digest in the payload.

8 . The method of claim 1 , wherein comparing the first obtained digest with the first received digest and pushing the to-be-pushed message to the message receiver comprises:

comparing a corresponding first received digest and a corresponding first obtained digest that correspond to a same application identifier; and

pushing the to-be-pushed message to message receivers corresponding to the application identifiers when each of the corresponding first received digest of the received digests is the same as each of the corresponding first obtained digest of the obtained digests.

9 . A method performed by a message pusher and comprising:

receiving a to-be-pushed message and a message push request from a message provider, wherein the message push request comprises a first application identifier and a message provider identifier;

comparing, when the message push request comprises a first data source corresponding to the first application identifier and a second data source corresponding to the message provider identifier, the first data source with the second data source;

pushing the to-be-pushed message to a message receiver corresponding to the first application identifier when the first data source matches the second data source, wherein the to-be-pushed message is not delivered when the first data source does not match the second data source;

receiving an identity registration request from the message provider, wherein the identity registration request comprises a third data source and an identity registration type, and wherein the identity registration type comprises a first type or a second type;

associating, when the identity registration type is the first type, the message provider identifier with a second data source for storage, wherein the third data source comprises the second data source; and

associating, when the identity registration type is the second type, the first application identifier with the first data source for storage, wherein the third data source comprises the first data source.

10 . The method of claim 9 , wherein before receiving the to-be-pushed message and the message push request, the method further comprises:

when the identity registration type is the first type:

allocating the message provider identifier;

and

sending the message provider identifier to the message provider; and

when the identity registration type is the second type:

allocating the first application identifier;

and

sending the first application identifier to the message provider.

11 . The method of claim 10 , wherein the identity registration type is the second type, wherein the identity registration request further comprises the message provider identifier, and wherein the method further comprises:

performing a query based on the message provider identifier to obtain the second data source;

comparing the second data source with the first data source to obtain a comparison result; and

determining, based on the comparison result, whether to allocate the first application identifier.

12 . The method of claim 9 , wherein the message push request further comprises a plurality of application identifiers comprising the first application identifier, and wherein the method further comprises:

comparing a corresponding first data source and a corresponding second data source corresponding to a same application identifier; and

pushing the to-be-pushed message to message receivers corresponding to the application identifiers when each of the corresponding first data source is the same as the corresponding second data source.

13 . An electronic device comprising:

a memory configured to store instructions; and

one or more processors coupled to the memory and configured to execute the instructions to cause the electronic device to:

create a mapping relationship between a first application identifier and a first preset key;

send the mapping relationship to a message provider;

receive a to-be-pushed message and a message push request from the message provider, wherein the message push request comprises first information and a plurality of received digests corresponding to a plurality of application identifiers and including a first received digest for verification, wherein the first received digest is based on the first information and the first preset key, and wherein the first information comprises the application identifiers including the first application identifier;

query the mapping relationship with the first application identifier to obtain the first preset key;

extract, with the first preset key, a digest from the first information to obtain a first obtained digest;

compare the first obtained digest with the first received digest;

push, when the first obtained digest matches the first received digest, the to-be-pushed message to a message receiver corresponding to the first application identifier, wherein the to-be-pushed message is not delivered when the first obtained digest does not match the first received digest; and

perform a digest extraction on the first information using preset keys corresponding to the application identifiers to obtain a plurality of obtained digests corresponding to the application identifiers, and wherein the preset keys comprise the first preset key.

14 . The electronic device of claim 13 , wherein the message push request further comprises a signature of the message provider, and wherein before comparing the first obtained digest with the first received digest, the one or more processors are further configured to execute the instructions to cause the electronic device to perform identity authentication on the message provider based on the signature to determine whether an identity of the message provider is legal.

15 . The electronic device of claim 13 , wherein the one or more processors are further configured to execute the instructions to cause the electronic device to:

identify that the first preset key does not exist; and

terminate, in response to identifying that the first preset key does not exist at the electronic device, push of a current to-be-pushed message.

16 . The electronic device of claim 13 , wherein the one or more processors are further configured to execute the instructions to cause the electronic device to:

compare a corresponding first received digest and a corresponding first obtained digest that correspond to a same application identifier; and

push the to-be-pushed message to message receivers corresponding to the application identifiers when each of the corresponding first received digest of the received digests is the same as each of the corresponding first obtained digest of the obtained digests.

17 . The electronic device of claim 13 , wherein the one or more processors are further configured to execute the instructions to cause the electronic device to send a verification failure message to the message provider when the first obtained digest is not the same as the first received digest.

18 . The electronic device of claim 13 , wherein before querying whether the first preset key exists at the electronic device, the one or more processors are further configured to execute the instructions to cause the electronic device to read the message push request.

19 . The electronic device of claim 13 , wherein before querying whether the first preset key exists at the electronic device, the one or more processors are further configured to execute the instructions to cause the electronic device to further query, in a local database, whether the first preset key exists at the electronic device.

20 . The electronic device of claim 13 , wherein the message push request is in a JSON Web Token (JWT) format and comprises a header, a payload, and a signature, wherein the header comprises an application identifier field and a digest field, wherein the payload comprises the first application identifier corresponding to the application identifier field, declaration information comprising at least one of an issuer, an issuance time, or an issuance effective time, and the first received digest corresponding to the digest field, and wherein the digest field identifies a location of the first received digest in the payload.