CN104639394B - Statistical method, the device and system of client number of users - Google Patents
Statistical method, the device and system of client number of users Download PDFInfo
- Publication number
- CN104639394B CN104639394B CN201510007225.4A CN201510007225A CN104639394B CN 104639394 B CN104639394 B CN 104639394B CN 201510007225 A CN201510007225 A CN 201510007225A CN 104639394 B CN104639394 B CN 104639394B
- Authority
- CN
- China
- Prior art keywords
- identifier
- client
- server
- encrypted
- redundancy
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Storage Device Security (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
The present invention is on a kind of statistical method, the device and system of client number of users, belongs to data statistics field.Methods described includes:Server obtains the encrypted identifier that client is sent, and decrypts encrypted identifier afterwards and obtains identifier;In checking of the identifier by identifier code, identifier is stored, identifier code is used to verify identifier;Last server is according to the number of users of the quantity statistics client of the identifier of storage.The present invention sends encrypted identifier by user end to server, server counts the number of users of client by the encrypted identifier, malicious user is set can not arbitrarily to forge the encrypted identifier for counting client number of users, solving malicious user in correlation technique can be by forging a large amount of different MAC Address and sends to server, the problem of causing the authenticity deficiency of server statistics result;The effect that the client number of users of server statistics has higher confidence level is reached.
Description
Technical field
The present invention relates to data statistics field, more particularly to a kind of statistical method of client number of users, device and it is
System.
Background technology
The statistics of client number of users has an important significance, and it can clearly reflect the number of users of client
The change of amount and number of users, clearly grasping development of the number of users for client has very important effect.
There is a kind of statistical method of client number of users in correlation technique, in the method, client is installed first
When in terminal, MAC (Media Access Control, medium access control) address of terminal is sent to server, clothes
Business device counts the number of users of client according to the quantity of the different MAC Address received, and is used as and counted using the number
As a result.
Inventor has found that aforesaid way at least has following defect during the present invention is realized:The above method passes through
The quantity of the different MAC Address received with server is used as the number of users of client, and malicious user can be by cutting
Take client to be sent to the data of server to obtain server address, forge a large amount of different MAC Address afterwards and simultaneously send extremely
Server, cause the authenticity deficiency of server statistics result.
The content of the invention
In order to solve malicious user in correlation technique the data of server can be sent to obtain by intercepting client
Server address, a large amount of different MAC Address are forged afterwards and send the authenticity for server, causing server statistics result
The problem of insufficient, the embodiments of the invention provide a kind of statistical method, the device and system of client number of users.The technology
Scheme is as follows:
First aspect according to embodiments of the present invention, there is provided a kind of statistical method of client number of users, this method bag
Include:
Obtain the encrypted identifier that client is sent;
Decryption encrypted identifier obtains identifier;
In checking of the identifier by identifier code, identifier is stored, identifier code is used to verify identifier;
According to the number of users of the quantity statistics client of the identifier of storage.
Optionally, before obtaining the encrypted identifier that client is sent, in addition to:
Receive the statistics request that client is sent;
Identifier code is sent to client according to statistics request.
Optionally, the encrypted identifier that client is sent is obtained, including:
The encrypted identifier for being accompanied with redundancy that client is sent is received, redundancy is client according to pre- imputation
Method generation, preset algorithm is the algorithm made an appointment with client;
Redundancy is rejected according to preset algorithm and obtains encrypted identifier.
Optionally, before decryption encrypted identifier obtains identifier, in addition to:
When encrypted identifier is client by public key encryption, the length of encrypted identifier is checked;
When the length of encrypted identifier is the integral multiple of length of public key, performs decryption encrypted identifier and obtain identifier
The step of.
Optionally, this method also includes:
Deduplication processing is carried out to identifier by the history identification symbol of storage.
Optionally, deduplication processing is carried out to identifier by the history identification symbol of storage, including:
Identifier is parsed, obtains at least n kind unique marks corresponding with client, unique mark shares m kinds, m>N, and
When m is odd number, n=(m+1)/2, when m is even number, n=m/2+1;
Detection storage history identification symbol in whether include with least any of n kinds unique mark unanimously it is unique
Mark, the identifier that history identification symbol stores before for this;
If history identification symbol include with least consistent unique mark of any of n kinds unique mark, will mark
Symbol abandons.
Second aspect according to embodiments of the present invention, there is provided a kind of statistical method of client number of users, this method bag
Include:
Identifier is generated by identifier code;
Encrypted identifier obtains encrypted identifier;
Encrypted identifier is sent to server, server is used for the user that client is counted according to encrypted identifier
Number.
Optionally, identifier is generated by identifier code, including:
At least n kinds unique mark corresponding with active client and at least n kinds unique mark are obtained by identifier code
Put in order, unique mark shares m kinds, m>N, and when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1;
According at least n kinds unique mark and the generation identifier that puts in order.
Optionally, encrypted identifier is sent to server, including:
Redundancy is generated according to preset algorithm, preset algorithm is the algorithm made an appointment with server;
Redundancy is attached to before or after encrypted identifier;
Redundancy and encrypted identifier are sent to server together.
Optionally, redundancy is generated according to preset algorithm, including:
Length using default at least one digit number value in encrypted identifier and the product of identifier code as redundancy, with
Machine generates the content of redundancy, obtains redundancy.
Optionally, before generating identifier by identifier code, in addition to:
Statistics request is sent to server;
The identifier code that the reception server is sent.
The third aspect according to embodiments of the present invention, there is provided a kind of statistic device of client number of users, the device bag
Include:
Identifier obtains module, for obtaining the encrypted identifier of client transmission;
Identifier deciphering module, identifier is obtained for decrypting encrypted identifier;
Identifier storage, in checking of the identifier by identifier code, storing identifier, identifier is compiled
Code is used to verify identifier;
Client statistical module, the number of users for the quantity statistics client of the identifier according to storage.
Optionally, the device also includes:
Request receiving module is counted, for receiving the statistics request of client transmission;
Identifier code sending module, for sending identifier code to client according to statistics request.
Optionally, identifier obtains module, including:
Encrypted identifier receiving unit, it is superfluous for receiving the encrypted identifier for being accompanied with redundancy of client transmission
Remaining information is that client generates according to preset algorithm, and preset algorithm is the algorithm made an appointment with client;
Redundancy culling unit, encrypted identifier is obtained for rejecting redundancy according to preset algorithm.
Optionally, the device also includes:
Length check module, for when encrypted identifier is client by public key encryption, checking encrypted identifier
Length;
Deciphering module is performed, for when the length of encrypted identifier is the integral multiple of length of public key, performing decryption and adding
The step of close identifier obtains identifier.
Optionally, the device also includes:
Deduplication module, deduplication processing is carried out to identifier for the history identification symbol by storage.
Optionally, deduplication module, including:
Identifier resolution unit, for parsing identifier, at least n kind unique marks corresponding with client are obtained, uniquely
The shared m kinds of mark, m>N, and when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1;
Unique mark detection unit, whether the history identification for detecting storage includes in according with uniquely is marked with least n kinds
Any of knowledge consistent unique mark, the identifier that history identification symbol stores before for this;
Identifier discarding unit, if including for history identification symbol consistent with least any of n kinds unique mark
Unique mark, then identifier is abandoned.
Fourth aspect according to embodiments of the present invention, there is provided a kind of statistic device of client number of users, the device bag
Include:
Identifier generating module, for generating identifier by identifier code;
Identifier encrypting module, encrypted identifier is obtained for encrypted identifier;
Identifier sending module, it is used for for encrypted identifier to be sent to server, server according to encrypted identifier
Count the number of users of client.
Optionally, identifier generating module, including:
Generating mode acquiring unit, it is unique for obtaining at least n kinds corresponding with active client by identifier code
Mark and at least n kinds unique mark put in order, and unique mark shares m kinds, m>N, and when m is odd number, n=(m+1)/2,
When m is even number, n=m/2+1;
Identifier generating unit, for according at least n kinds unique mark and the generation identifier that puts in order.
Optionally, identifier sending module, including:
Redundancy generation unit, for generating redundancy according to preset algorithm, preset algorithm is advance with server
The algorithm of agreement;
Redundancy extra cell, for redundancy to be attached to before or after encrypted identifier;
Identifier transmitting element, for redundancy and encrypted identifier to be sent to server together.
Optionally, redundancy generation unit, for default at least one digit number value and identifier in encrypted identifier
The product of coding is the length of redundancy, the random content for generating redundancy, obtains redundancy.
Optionally, the device also includes:
Request sending module is counted, for sending statistics request to server;
Identifier code receiving module, the identifier code sent for the reception server.
5th aspect according to embodiments of the present invention, there is provided a kind of statistical system of client number of users, the system bag
Include:Server and client side;
Server includes the device described in the third aspect;
Client includes the device described in fourth aspect.
Technical scheme provided in an embodiment of the present invention can include the following benefits:
Encrypted identifier is sent by user end to server, server counts client by the encrypted identifier
Number of users, malicious user can not be arbitrarily forged the encrypted identifier for counting client number of users, solve correlation
Malicious user can cause server statistics result by forging a large amount of different MAC Address and sending to server in technology
Authenticity deficiency the problem of;The effect that the client number of users of server statistics has higher confidence level is reached.
It should be appreciated that the general description and following detailed description of the above are only exemplary and explanatory, not
Can the limitation present invention.
Brief description of the drawings
Accompanying drawing herein is merged in specification and forms the part of this specification, shows the implementation for meeting the present invention
Example, and for explaining principle of the invention together with specification.
Fig. 1 is a kind of schematic diagram for implementation environment that each embodiment of the present invention is related to;
Fig. 2 is a kind of flow chart of the statistical method of client number of users according to an exemplary embodiment;
Fig. 3 is a kind of flow chart of the statistical method of client number of users according to another exemplary embodiment;
Fig. 4 is a kind of flow chart of the statistical method of client number of users according to another exemplary embodiment;
Fig. 5 is a kind of flow chart of the statistical method of client number of users according to another exemplary embodiment;
Fig. 6 is a kind of block diagram of the statistic device of client number of users according to an exemplary embodiment;
Fig. 7 is a kind of block diagram of the statistic device of client number of users according to another exemplary embodiment;
Fig. 8 is a kind of block diagram of the statistic device of client number of users according to another exemplary embodiment;
Fig. 9 is a kind of block diagram of the statistic device of client number of users according to another exemplary embodiment;
Figure 10 is a kind of block diagram of terminal according to an exemplary embodiment;
Figure 11 is a kind of block diagram of server according to an exemplary embodiment;
Figure 12 is a kind of block diagram of the statistical system of client number of users according to an exemplary embodiment.
Pass through above-mentioned accompanying drawing, it has been shown that the clear and definite embodiment of the present invention, will hereinafter be described in more detail.These accompanying drawings
It is not intended to limit the scope of present inventive concept by any mode with word description, but is by reference to specific embodiment
Those skilled in the art illustrate idea of the invention.
Embodiment
Here exemplary embodiment will be illustrated in detail, its example is illustrated in the accompanying drawings.Following description is related to
During accompanying drawing, unless otherwise indicated, the same numbers in different accompanying drawings represent same or analogous key element.Following exemplary embodiment
Described in embodiment do not represent and the consistent all embodiments of the present invention.On the contrary, they be only with it is such as appended
The example of the consistent apparatus and method of some aspects being described in detail in claims, of the invention.
Fig. 1 is the schematic diagram of the implementation environment involved by each embodiment of the present invention, and the implementation environment can include:Terminal
110 and server 120.
Terminal 110 can be smart mobile phone, tablet personal computer, pocket computer on knee or desktop computer etc., and whole
End 110 can run client.
Server 120 can be a server, or by some server groups into server cluster, or one
Individual cloud computing service center.
It can be connected between terminal 110 and server 120 by wireless network or cable network.It should be noted that this
Implementation environment does not restrict to the quantity of terminal 110.
Fig. 2 is a kind of flow chart of the statistical method of client number of users according to an exemplary embodiment, this
Embodiment is illustrated with the Application of Statistic Methods of the client number of users in the server 120 of implementation environment shown in Fig. 1
It is bright.The statistical method of the client number of users can include the following steps:
Step 201, the encrypted identifier that client is sent is obtained.
Step 202, decryption encrypted identifier obtains identifier.
Step 203, in checking of the identifier by identifier code, identifier is stored, identifier code is used to verify
Identifier.
Step 204, according to the number of users of the quantity statistics client of the identifier of storage.
In summary, the statistical method of client number of users provided in an embodiment of the present invention, by client to service
Device sends encrypted identifier, and server is counted the number of users of client by the encrypted identifier, makes malicious user can not
The encrypted identifier for counting client number of users is arbitrarily forged, puppet can be passed through by solving malicious user in correlation technique
Make a large amount of different MAC Address and send to server, the problem of causing the authenticity deficiency of server statistics result;Reach
The client number of users of server statistics has the effect of higher confidence level.
Fig. 3 is a kind of flow chart of the statistical method of client number of users according to another exemplary embodiment,
The present embodiment is illustrated with the Application of Statistic Methods of the client number of users in the terminal 110 of implementation environment shown in Fig. 1
It is bright.The statistical method of the client number of users can include the following steps:
Step 301, identifier is generated by identifier code.
Step 302, encrypted identifier obtains encrypted identifier.
Step 303, encrypted identifier is sent to server, server is used to count client according to encrypted identifier
Number of users.
In summary, the statistical method of client number of users provided in an embodiment of the present invention, by client to service
Device sends encrypted identifier, and server is counted the number of users of client by the encrypted identifier, makes malicious user can not
The encrypted identifier for counting client number of users is arbitrarily forged, puppet can be passed through by solving malicious user in correlation technique
Make a large amount of different MAC Address and send to server, the problem of causing the authenticity deficiency of server statistics result;Reach
The client number of users of server statistics has the effect of higher confidence level.
Fig. 4 is a kind of flow chart of the statistical method of client number of users according to another exemplary embodiment,
The present embodiment is illustrated with the Application of Statistic Methods of the client number of users in implementation environment shown in Fig. 1.The client
The statistical method of end number of users can include the following steps:
Step 401, user end to server sends statistics request.
When needing to carry out the statistics of client number of users, client can send statistics request to server.It is optional
, client can first detect in the terminal of operation client whether be stored with system before statistics request is sent to server
Meter mark, statistics, which is identified as after client being serviced device is included in client number of users, feeds back to client, in the terminal not
When being stored with statistics mark, user end to server sends statistics request, not to service when being stored with statistics mark in the terminal
Device sends statistics request.
Exemplary, whether it is stored with statistics in the terminal that client can all detect operation client in each start
Mark, decide whether to send statistics request to server further according to situation.
It should be noted that client can send statistics request in operation predetermined time period and then to server,
To increase the validity of statistical result.
Step 402, server sends identifier code according to statistics request to client.
Server can send identifier code after the statistics request of client transmission is received to client.Mark
Include the generating mode of identifier in symbol coding.Wherein, more than one identifier code can be included in server, is serviced
The identifier code that device is sent to different clients may and differ.Optionally, record can be had identifier by server
The timestamp of coding delivery time is together sent to client with identifier code.
Step 403, the identifier code that client the reception server is sent.
Step 404, client obtains corresponding with active client at least n kinds unique mark and extremely by identifier code
Few n kind unique marks put in order, and unique mark shares m kinds, m>N, and n=(m+1)/2, be even in m when m is odd number
During number, n=m/2+1.
Client can parse identifier code after the identifier code of server transmission is received, and obtain and work as
At least n kinds unique mark and at least n kinds unique mark puts in order corresponding to preceding client, and unique mark shares m kinds, m>N,
And when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1.Wherein, unique mark can be and client or end
Uniquely identified corresponding to end.
It should be noted that not including unique mark in identifier code, but include generation identifier needs
Unique mark species and unique mark between put in order, i.e., identifier code can specify that generation identifier needs
The species of unique mark and putting in order for unique mark, this step show a kind of possible regulation side of identifier code
Formula.Optionally, identifier code can also have the unique mark of one kind in other prescribed manners, such as regulation m kind unique marks
Know directly as identifier, or all arrangement is used as identifier to regulation m kinds unique mark in a predetermined order, wherein m is client
The sum for the used unique mark arranged between server.
Exemplary, the MAC that unique mark can include the terminal of operation client (Media AccessControl, is situated between
Matter access control) address, CPUID (Central Processing Unit ID, central processing unit sequence number), GUID
(Globally Unique Identifier, GUID) and hard disk serial number etc..
Step 405, client is according at least n kinds unique mark and the generation identifier that puts in order.
Client, can be according at least n kinds after the putting in order of at least n kinds unique mark and unique mark is obtained
The generation identifier that puts in order of unique mark and unique mark.
Exemplary, client obtains MAC Address " X ", the CPUID of the terminal of operation client according to identifier code
" Y " and GUID " Z ", and this 3 kinds of unique marks put in order as GUID-MAC addresses-CPUID, the then mark of client generation
Accord with as " ZXY ".
It should be noted that client generates identifier according at least n kinds unique mark, and unique mark shares m kinds, m>
N, when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1, it is ensured that same client is according to different
In the more than one identifier of identifier code generation, at least one unique mark is identical in any two identifier
, not only reduce the data volume that needs are sent, and ensure that the execution of the deduplication processing of server.
Step 406, client encrypted identifier obtains encrypted identifier.
Client can encrypt to obtain encrypted identifier after identifier is generated to identifier.
Client identifier can be encrypted by symmetry encryption technology or unsymmetrical tridiagonal matrix technology:
1) client is needed to prestore and taken when identifier is encrypted using symmetry encryption technology in client
The symmetric key for device agreement of being engaged in, is encrypted to obtain encrypted identifier to identifier, takes afterwards using the symmetric key afterwards
Business device can obtain identifier by symmetric key decryption encrypted identifier.
2) client can obtain server first when identifier is encrypted using unsymmetrical tridiagonal matrix technology
Public key, such as, public key and identifier code can be together sent to client by server in step 402, and client is obtaining
After taking public key, identifier can be encrypted by the public key to obtain encrypted identifier, server then can be by corresponding to public key
Private key obtains identifier to decrypt encrypted identifier.
Step 407, client generates redundancy according to preset algorithm, and preset algorithm is the calculation made an appointment with server
Method.
Client can generate redundancy according to preset algorithm, and preset algorithm can be that client and server are advance
The algorithm of agreement.A kind of possible preset algorithm is:With default at least one digit number value and identifier code in encrypted identifier
Product be redundancy length, the random content for generating redundancy, obtain redundancy.Exemplary, it can add
The product of first place and identifier code when close identifier is represented using 16 systems generates superfluous at random afterwards as the length of redundancy
The content of remaining information, obtains redundancy.
It should be noted that this step only needs to perform after step 403, i.e., client receives server hair
Redundancy can be generated after the identifier code sent.
Step 408, redundancy is attached to before or after encrypted identifier by client.
Redundancy can be attached to before or after encrypted identifier by client after redundancy is generated.Need
Can be according to the redundancy with server commitment before or after encrypted identifier it is noted that redundancy is attached to
Algorithm determine, it is exemplary, when in preset algorithm with encrypted identifier in default at least one digit number value compiled with identifier
When the product of code is the length of redundancy, can using the predetermined manner of default at least one digit number value as basis for estimation, than
Such as the default at least one digit number value be encrypted identifier first place when, redundancy can be attached to encrypted identifier it
Afterwards, enable the server to reject redundancy.
It should be noted that redundancy can change client be sent to server encrypted identifier length and
The structure of encrypted identifier, the malicious user for the data that can be sent to server to interception client play a part of interference,
The security of encrypted identifier is added, improves the reliability of the client number of users of server statistics.
Step 409, client sends redundancy and encrypted identifier to server together.
Client, can be by redundancy and encryption after before or after redundancy is attached into encrypted identifier
Identifier is sent to server together.Optionally, the record for receiving server transmission in client has identifier code transmission
During the timestamp at moment, the timestamp also can be together sent to server.
Step 410, server receives the encrypted identifier for being accompanied with redundancy that client is sent, and redundancy is visitor
Family end generates according to preset algorithm, and preset algorithm is the algorithm made an appointment with client.
Server receives the encrypted identifier for being accompanied with redundancy that client is sent, and optionally, will remember in client
When the timestamp that record has identifier code delivery time is together sent to server with being accompanied with the encrypted identifier of redundancy,
Server can check the timestamp, at the time of record in the timestamp and at the time of server receives the timestamp between
Time interval not less than prefixed time interval when, perform step 411, in the timestamp record at the time of with server receive
When time interval between at the time of the timestamp exceedes prefixed time interval, redundancy can be accompanied with by what is received
Encrypted identifier discarded as time-out information, can so reduce be accompanied with redundancy encrypted identifier be malice use
The possibility that family is forged.
Step 411, server rejects redundancy according to preset algorithm and obtains encrypted identifier.
Server receive client transmission be accompanied with the encrypted identifier of redundancy after, can be according to pre- imputation
Method rejects redundancy and obtains encrypted identifier.
Step 412, server checks the length of encrypted identifier when encrypted identifier is client by public key encryption
Degree.
It is client because the ciphertext length of public key encryption is always equal to the integral multiple of public key length, thus in encrypted identifier
End by public key encryption when, server can check the length of encrypted identifier, and be sentenced by the length of encrypted identifier
Disconnected encrypted identifier whether be public key encryption corresponding to server identifier.
When the length of encrypted identifier is the integral multiple of length of public key, step 413 is performed, in the length of encrypted identifier
When degree is not the integral multiple of length of public key, server abandons the encrypted identifier.
Step 413, when the length of encrypted identifier is the integral multiple of length of public key, server decryption encrypted identifier
Obtain identifier.
When the length of encrypted identifier is the integral multiple of length of public key, show the encrypted identifier to pass through server
Corresponding public key encryption, the encrypted identifier can be decrypted by corresponding private key afterwards.
It should be noted that server can generate more than one group of public key and private key every designated time interval, and to
Client provides different public keys, and in this case, client needs also to send the public key used when encrypting identifier
To server, in order to which server is decrypted by corresponding private key pair encryption identifier.
It should also be noted that, amount of calculation during due to being decrypted by private key is larger, thus server is only to length
It is that the encrypted identifier of the integral multiple of public key is decrypted, reduces the decryption amount of calculation of server.
It should also be noted that, when encrypted identifier is accompanied with redundancy, malicious user is even if obtaining public key
The redundancy of correct length can not be generated, can not then pass through inspection of the server to the length of encrypted identifier.
Step 414, server carries out deduplication processing by the history identification symbol of storage to identifier.
This step can be divided into following 3 sub-steps:
1) server parsing identifier, at least n kind unique marks corresponding with client being obtained, unique mark shares m kinds,
m>N, and when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1.
2) whether include and at least any of n kinds unique mark one in the history identification symbol of server detection storage
The unique mark of cause, the identifier that history identification symbol stores before for this.
If 3) history identification symbol include with least consistent unique mark of any of n kinds unique mark, service
Device abandons identifier.
It is exemplary, obtain MAC Address " X ", CPUID " Y " and GUID " Z " after this parsing identifier, and server
Have in the history identification symbol of storage in a history identification symbol and include CPUID " Y " and hard disk serial number " P ", identifier is with going through
History identifier has identical CPUID, thus server can abandon the identifier.
Step 415, server verifies identifier by identifier code.
Server is decrypted by encrypted identifier, after obtaining identifier, can detect the kind of the unique mark in identifier
Whether class and order are consistent with identifier code.What is provided in server to all clients is all same identifier code
When, identifier code herein is this kind of identifier code, when server provides a variety of identifier codes to client, this
The identifier code at place can be that client is sent to server with the encrypted identifier for being accompanied with redundancy.
It should be noted that identifier code is it is also assumed that be the data of an encryption, and only server and client
The information wherein included can be decrypted and obtained in end.
Step 416, server stores identifier in checking of the identifier by identifier code, and identifier code is used
In checking identifier.
Server stores identifier, the identifier of storage can conduct in checking of the identifier by identifier code
History identification symbol coordinates when obtaining identifier afterwards carries out deduplication processing.
It should be noted that step 415 and step 416 can also perform before step 414.
Step 417, server is according to the number of users of the quantity statistics client of the identifier of storage.
Server can count the total quantity of the identifier of storage after identifier is stored, and this total quantity can be with
Number of users as client.
Optionally, server can send statistics mark to client, represent after the number of users of statistics client
The client is included in client number of users.
It should be added that the statistical method of client number of users provided in an embodiment of the present invention, by adding
Close identifier affix redundancy, the malicious user for the data for being sent to server to interception client play the work of interference
With having reached the security of increase encrypted identifier, improved the effect of the reliability of the client number of users of server statistics.
It should be added that the statistical method of client number of users provided in an embodiment of the present invention, passes through service
Device is only that the encrypted identifier of the integral multiple of public key is decrypted to length, has reached the effect for the decryption amount of calculation for reducing server
Fruit.
It should be added that the statistical method of client number of users provided in an embodiment of the present invention, passes through client
End is according at least n kinds unique mark generation identifier, and unique mark shares m kinds, m>N, when m is odd number, n=(m+1)/2,
When m is even number, n=m/2+1, the more than one identifier for making same client be generated according to different identifier codes
In, at least one unique mark is identical in any two identifier, has reached and has not only reduced the data volume that needs are sent,
And ensure the effect of the execution of server deduplication processing.
In summary, the statistical method of client number of users provided in an embodiment of the present invention, by client to service
Device sends encrypted identifier, and server is counted the number of users of client by the encrypted identifier, makes malicious user can not
The encrypted identifier for counting client number of users is arbitrarily forged, puppet can be passed through by solving malicious user in correlation technique
Make a large amount of different MAC Address and send to server, the problem of causing the authenticity deficiency of server statistics result;Reach
The client number of users of server statistics has the effect of higher confidence level.
Fig. 5 is a kind of flow chart of the statistical method of client number of users according to an exemplary embodiment, this
Embodiment is illustrated with the Application of Statistic Methods of the client number of users in implementation environment shown in Fig. 1.The client
The statistical method of number of users can include the following steps:
Step 501, client detects whether to be stored with statistics mark.
Client can first detect whether to be stored with statistics mark, statistics mark when carrying out the demographics of client
It is included in for client being serviced device after client number of users and feeds back to client, is not stored with statistics mark in the terminal
When, client can send statistics request to server, do not send and count to server when being stored with statistics mark in the terminal
Request.Exemplary, whether it is stored with statistics mark in the terminal that client can all detect client operation in each start
Know.Optionally, statistics mark can be stored in registration table by client, and the reliability of mark is counted with increase.
Step 502, client generates identifier when not being stored with statistics mark according to identifier code.
Client can generate identifier when not being stored with statistics mark according to identifier code, wherein, identifier is compiled
Code can be to be pre-stored within client, such as when client is installed on terminal, it is possible to mark is obtained from installation kit
Know symbol coding.And following 2 sub-steps can be divided into by generating identifier according to identifier code:
1) client obtains at least n kinds unique mark corresponding with active client and at least n kinds by identifier code
Unique mark puts in order, and unique mark shares m kinds, m>N, and when m is odd number, n=(m+1)/2, when m is even number, n
=m/2+1.It is exemplary, unique mark can include the terminal of client operation MAC (Media Access Control,
Medium access control) address, CPUID (Central Processing Unit ID, central processing unit sequence number), GUID
(Globally Unique Identifier, GUID) and hard disk serial number etc..
2) client is according at least n kinds unique mark and the generation identifier that puts in order.Client is obtaining at least n kinds
, can be according at least n kinds unique mark and the generation mark that puts in order after the putting in order of unique mark and various unique marks
Know symbol.Exemplary, client obtains MAC Address " X ", the CPUID " Y " of the terminal of client operation according to identifier code
With GUID " Z ", and this 3 kinds of unique marks put in order as GUID-MAC addresses-CPUID, then the identifier of client generation
For " ZXY ".
It should be noted that client generates identifier according at least n kinds unique mark, and unique mark shares m kinds, m>
N, when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1, it is ensured that same client is according to different
In the more than one identifier of identifier code generation, at least one unique mark is identical in any two identifier
, facilitate server to carry out deduplication processing.
Step 503, client encrypts identifier, obtains encrypted identifier.
Client can encrypt to obtain encrypted identifier after identifier is generated to identifier.Optionally, client can be with
Identifier is encrypted by symmetry encryption technology or unsymmetrical tridiagonal matrix technology:
1) client is needed to prestore and taken when identifier is encrypted using symmetry encryption technology in client
Be engaged in device agreement symmetric key, afterwards client identifier is encrypted to obtain encrypted identifier using the symmetric key,
Server can obtain identifier by symmetric key decryption encrypted identifier afterwards.
2) client can obtain server first when identifier is encrypted using unsymmetrical tridiagonal matrix technology
Public key, such as, client can prestore the public key of server, or client can pass through CA (Certificate
Authority, certificate management authority) obtain server public key, client after public key is obtained, can by the public key to mark
Know symbol encryption and obtain encrypted identifier, server can then be identified by private key corresponding to public key to decrypt encrypted identifier
Symbol.
Step 504, client sends encrypted identifier to server.
Client can send encrypted identifier to server after encrypted identifier is obtained.Make in different clients
For different identifier codes when, client can also send identifier code to server in the lump.
Step 505, server receives encrypted identifier.
Step 506, server decryption encrypted identifier obtains identifier.
Server can according to circumstances decrypt encrypted identifier and obtain identifier after encrypted identifier is received, such as,
When client is by symmetric key encryption identifier, then server is decrypted by the symmetric key arranged with client to prestore
Encrypted identifier, when client is by public key encryption identifier, then server decrypts encryption by private key corresponding to public key
Identifier.
Step 507, server carries out deduplication processing by the history identification symbol of storage to identifier.
Server can carry out deduplication processing after identifier is obtained to identifier.
This step can be divided into following 3 sub-steps:
1) server parsing identifier, at least n kind unique marks corresponding with client being obtained, unique mark shares m kinds,
m>N, and when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1.
2) whether include and at least any of n kinds unique mark one in the history identification symbol of server detection storage
The unique mark of cause, the identifier that history identification symbol stores before for this.
If 3) history identification symbol include with least consistent unique mark of any of n kinds unique mark, service
Device abandons identifier.
Step 508, server verifies identifier by identifier code.
Server is decrypted by encrypted identifier, after obtaining identifier, can be parsed identifier, be detected in identifier only
Whether the species and order of one mark are consistent with identifier code.What is provided in server to all clients is all same mark
When knowing symbol coding, identifier code herein is this kind of identifier code, and a variety of identifiers are provided to client in server
During coding, identifier code herein can be that client is sent to service with the encrypted identifier for being accompanied with redundancy
Device.
It should be noted that identifier code is it is also assumed that be the file of an encryption, and only server and client
The information wherein included can be decrypted and obtained in end.
Step 509, server stores identifier in checking of the identifier by identifier code, and identifier code is used
In checking identifier.
Server stores identifier, the identifier of storage can conduct in checking of the identifier by identifier code
History identification symbol coordinates when obtaining identifier afterwards carries out deduplication processing.
It should be noted that step 508 and step 509 can also perform before step 507.
Step 510, server is according to the number of users of the quantity statistics client of the identifier of storage.
Server can count the total quantity of the identifier of storage after identifier is stored, and this total quantity can be with
Number of users as client.
Step 511, server sends statistics mark to client.
Server can send statistics mark after the number of users of statistics client to client, and expression should
Client is included in client number of users.
It should be added that the statistical method of client number of users provided in an embodiment of the present invention, passes through client
Hold when carrying out the demographics of client, first detect whether to be stored with statistics mark, reached client and do not repeated to clothes
Business device sends the effect of encrypted identifier.
In summary, the statistical method of client number of users provided in an embodiment of the present invention, by client to service
Device sends encrypted identifier, and server is counted the number of users of client by the encrypted identifier, makes malicious user can not
The encrypted identifier for counting client number of users is arbitrarily forged, puppet can be passed through by solving malicious user in correlation technique
Make a large amount of different MAC Address and send to server, the problem of causing the authenticity deficiency of server statistics result;Reach
The client number of users of server statistics has the effect of higher confidence level.
Following is apparatus of the present invention embodiment, can be used for performing the inventive method embodiment.It is real for apparatus of the present invention
The details not disclosed in example is applied, refer to the inventive method embodiment.
Fig. 6 is a kind of block diagram of the statistic device of client number of users according to an exemplary embodiment, the visitor
The statistic device of family end number of users can by software, hardware or both be implemented in combination with turn into implementation environment shown in Fig. 1
In server 120 it is some or all of.The statistic device of the client number of users can include:Identifier obtains module
610th, identifier deciphering module 620, identifier storage 630 and client statistical module 640.
Identifier obtains module 610, for obtaining the encrypted identifier of client transmission.
Identifier deciphering module 620, identifier is obtained for decrypting encrypted identifier.
Identifier storage 630, in checking of the identifier by identifier code, storing identifier, mark
Symbol coding is used to verify identifier.
Client statistical module 640, the number of users for the quantity statistics client of the identifier according to storage.
In summary, the statistic device of client number of users provided in an embodiment of the present invention, by client to service
Device sends encrypted identifier, and server is counted the number of users of client by the encrypted identifier, makes malicious user can not
The encrypted identifier for counting client number of users is arbitrarily forged, puppet can be passed through by solving malicious user in correlation technique
Make a large amount of different MAC Address and send to server, the problem of causing the authenticity deficiency of server statistics result;Reach
The client number of users of server statistics has the effect of higher confidence level.
Fig. 7 is a kind of block diagram of the statistic device 600 of client number of users according to another exemplary embodiment,
The statistic device 600 of the client number of users can be implemented in combination with turning into real shown in Fig. 1 by software, hardware or both
Apply some or all of of the server 120 in environment.The statistic device 600 of the client number of users can include:Mark
Symbol obtains module 610, identifier deciphering module 620, identifier storage 630 and client statistical module 640.
Identifier obtains module 610, for obtaining the encrypted identifier of client transmission.
Identifier deciphering module 620, identifier is obtained for decrypting encrypted identifier.
Identifier storage 630, in checking of the identifier by identifier code, storing identifier, mark
Symbol coding is used to verify identifier.
Client statistical module 640, the number of users for the quantity statistics client of the identifier according to storage.
Optionally, the device also includes:
Request receiving module 650 is counted, for receiving the statistics request of client transmission.
Identifier code sending module 660, for sending identifier code to client according to statistics request.
Optionally, identifier obtains module 610, including:
Encrypted identifier receiving unit 611, for receiving the encrypted identifier for being accompanied with redundancy of client transmission,
Redundancy is that client generates according to preset algorithm, and preset algorithm is the algorithm made an appointment with client.
Redundancy culling unit 612, encrypted identifier is obtained for rejecting redundancy according to preset algorithm.
Optionally, the device also includes:
Length check module 670, for when encrypted identifier is client by public key encryption, checking encryption identification
The length of symbol.
Deciphering module 680 is performed, for when the length of encrypted identifier is the integral multiple of length of public key, performing decryption
Encrypted identifier obtains the step of identifier.
Optionally, the device also includes:
Deduplication module 690, deduplication processing is carried out to identifier for the history identification symbol by storage.
Optionally, deduplication module 690, including:
Identifier resolution unit 691, for parsing identifier, at least n kind unique marks corresponding with client are obtained, only
The shared m kinds of one mark, m>N, and when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1.
Unique mark detection unit 692, it is unique with least n kinds whether the history identification for detecting storage includes in according with
Any of mark consistent unique mark, the identifier that history identification symbol stores before for this.
Identifier discarding unit 693, if including and at least any of n kinds unique mark one for history identification symbol
The unique mark of cause, then abandon identifier.
It should be added that the statistic device of client number of users provided in an embodiment of the present invention, by adding
Close identifier affix redundancy, the malicious user for the data for being sent to server to interception client play the work of interference
With having reached the security of increase encrypted identifier, improved the effect of the reliability of the client number of users of server statistics.
It should be added that the statistic device of client number of users provided in an embodiment of the present invention, passes through service
Device is only that the encrypted identifier of the integral multiple of public key is decrypted to length, has reached the effect for the decryption amount of calculation for reducing server
Fruit.
In summary, the statistic device of client number of users provided in an embodiment of the present invention, by client to service
Device sends encrypted identifier, and server is counted the number of users of client by the encrypted identifier, makes malicious user can not
The encrypted identifier for counting client number of users is arbitrarily forged, puppet can be passed through by solving malicious user in correlation technique
Make a large amount of different MAC Address and send to server, the problem of causing the authenticity deficiency of server statistics result;Reach
The client number of users of server statistics has the effect of higher confidence level.
Fig. 8 is a kind of block diagram of the statistic device of client number of users according to another exemplary embodiment, should
The statistic device of client number of users can implement ring by being implemented in combination with turning into shown in Fig. 1 for software, hardware or both
Terminal 110 in border it is some or all of.The statistic device of the client number of users can include:Identifier generating module
810th, identifier encrypting module 820 and identifier sending module 830.
Identifier generating module 810, for generating identifier by identifier code.
Identifier encrypting module 820, encrypted identifier is obtained for encrypted identifier.
Identifier sending module 830, it is used for for encrypted identifier to be sent to server, server according to encryption identification
The number of users of symbol statistics client.
In summary, the statistic device of client number of users provided in an embodiment of the present invention, by client to service
Device sends encrypted identifier, and server is counted the number of users of client by the encrypted identifier, makes malicious user can not
The encrypted identifier for counting client number of users is arbitrarily forged, puppet can be passed through by solving malicious user in correlation technique
Make a large amount of different MAC Address and send to server, the problem of causing the authenticity deficiency of server statistics result;Reach
The client number of users of server statistics has the effect of higher confidence level.
Fig. 9 is a kind of block diagram of the statistic device of client number of users according to another exemplary embodiment, should
The statistic device of client number of users can implement ring by being implemented in combination with turning into shown in Fig. 1 for software, hardware or both
Terminal 110 in border it is some or all of.The statistic device of the client number of users can include:Identifier generating module
810th, identifier encrypting module 820 and identifier sending module 830.
Identifier generating module 810, for generating identifier by identifier code.
Identifier encrypting module 820, encrypted identifier is obtained for encrypted identifier.
Identifier sending module 830, it is used for for encrypted identifier to be sent to server, server according to encryption identification
The number of users of symbol statistics client.
Optionally, identifier generating module 810, including:
Generating mode acquiring unit 811, for obtaining at least n kinds corresponding with active client only by identifier code
One mark and at least n kinds unique mark put in order, and unique mark shares m kinds, m>N, and when m is odd number, n=(m+1)/
2, when m is even number, n=m/2+1.
Identifier generating unit 812, for according at least n kinds unique mark and the generation identifier that puts in order.
Optionally, identifier sending module 830, including:
Redundancy generation unit 831, for generating redundancy according to preset algorithm, preset algorithm is pre- with server
The algorithm first arranged.
Redundancy extra cell 832, for redundancy to be attached to before or after encrypted identifier.
Identifier transmitting element 833, for redundancy and encrypted identifier to be sent to server together.
Optionally, redundancy generation unit 831, for default at least one digit number value in encrypted identifier and mark
The product of symbol coding is the length of redundancy, the random content for generating redundancy, obtains redundancy.
Optionally, the device also includes:
Request sending module 840 is counted, for sending statistics request to server.
Identifier code receiving module 850, the identifier code sent for the reception server.
It should be added that the statistic device of client number of users provided in an embodiment of the present invention, by adding
Close identifier affix redundancy, the malicious user for the data for being sent to server to interception client play the work of interference
With having reached the security of increase encrypted identifier, improved the effect of the reliability of the client number of users of server statistics.
It should be added that the statistic device of client number of users provided in an embodiment of the present invention, passes through client
End is according at least n kinds unique mark generation identifier, and unique mark shares m kinds, m>N, when m is odd number, n=(m+1)/2,
When m is even number, n=m/2+1, the more than one identifier for making same client be generated according to different identifier codes
In, at least one unique mark is identical in any two identifier, has reached and has not only reduced the data volume that needs are sent,
And ensure the effect of the execution of server deduplication processing.
In summary, the statistic device of client number of users provided in an embodiment of the present invention, by client to service
Device sends encrypted identifier, and server is counted the number of users of client by the encrypted identifier, makes malicious user can not
The encrypted identifier for counting client number of users is arbitrarily forged, puppet can be passed through by solving malicious user in correlation technique
Make a large amount of different MAC Address and send to server, the problem of causing the authenticity deficiency of server statistics result;Reach
The client number of users of server statistics has the effect of higher confidence level.
On the device in above-described embodiment, wherein modules perform the concrete mode of operation in relevant this method
Embodiment in be described in detail, explanation will be not set forth in detail herein.
Figure 10 shows the structural representation for the terminal that one embodiment of the present of invention provides.The terminal 1000 can be run
There is a client, and the terminal 1000 can be used for implementing the statistical method of client number of users that is provided in above-described embodiment,
Specifically:
Terminal 1000 can include RF (Radio Frequency, radio frequency) circuit 1010, include one or more
Memory 1020, input block 1030, display unit 1040, sensor 1050, the voicefrequency circuit of computer-readable recording medium
1060th, short range wireless transmission module 1070, include one or processor 1080, the Yi Ji electricity of more than one processing core
The grade part of source 1090.It will be understood by those skilled in the art that the restriction of the terminal structure shown in Fig. 6 not structure paired terminal,
It can include than illustrating more or less parts, either combine some parts or different parts arrangement.Wherein:
RF circuits 1010 can be used for receive and send messages or communication process in, the reception and transmission of signal, especially, by base station
After downlink information receives, transfer to one or more than one processor 1080 is handled;In addition, it is sent to up data are related to
Base station.Generally, RF circuits 1010 include but is not limited to antenna, at least one amplifier, tuner, one or more oscillators,
It is subscriber identity module (SIM) card, transceiver, coupler, LNA (Low Noise Amplifier, low-noise amplifier), double
Work device etc..In addition, RF circuits 1010 can also be communicated by radio communication with network and other equipment.Radio communication can use
Any communication standard or agreement, including but not limited to GSM (Global System of Mobile communication, the whole world
Mobile communcations system), GPRS (General Packet Radio Service, general packet radio service), CDMA (Code
Division Multiple Access, CDMA), WCDMA (Wideband Code Division Multiple
Access, WCDMA), LTE (Long Term Evolution, Long Term Evolution), Email, SMS (Short
Messaging Service, Short Message Service) etc..Memory 1020 can be used for storage software program and module, such as, deposit
Reservoir 1020 can be used for storing preset time list, can be also used for the software program of storage collection voice signal, realizes and close
The software program of keyword identification, the software program for realizing continuous speech recognition and the software program for realizing setting prompting item,
It can be also used for storing binding relationship of WAP and user account etc..Processor 1080 is stored in storage by operation
The software program and module of device 1020, so as to perform various function application and data processing.Memory 1020 can be wrapped mainly
Storing program area and storage data field are included, wherein, storing program area can storage program area, the application needed at least one function
Program (such as sound-playing function, image player function etc.) etc.;Storage data field can store uses institute according to terminal 1000
Data (such as voice data, phone directory etc.) of establishment etc..Stored in addition, memory 1020 can include high random access
Device, nonvolatile memory can also be included, a for example, at least disk memory, flush memory device or other volatibility are consolidated
State memory device.Correspondingly, memory 1020 can also include Memory Controller, to provide processor 1080 and input block
The access of 1030 pairs of memories 1020.
Input block 1030 can be used for the numeral or character information for receiving input, and generation is set with user and function
Control relevant keyboard, mouse, action bars, optics or the input of trace ball signal.Specifically, input block 1030 may include to touch
Sensitive surfaces 1031 and other input equipments 1032.Touch sensitive surface 1031, also referred to as touch display screen or Trackpad, collect
User on or near it touch operation (such as user using any suitable object or annex such as finger, stylus touch-sensitive
Operation on surface 1031 or near touch sensitive surface 1031), and corresponding attachment means are driven according to formula set in advance.
Optionally, touch sensitive surface 1031 may include both touch detecting apparatus and touch controller.Wherein, touch detecting apparatus is examined
The touch orientation of user is surveyed, and detects the signal that touch operation is brought, transmits a signal to touch controller;Touch controller from
Touch information is received on touch detecting apparatus, and is converted into contact coordinate, then gives processor 1080, and can reception processing
Order that device 1080 is sent simultaneously is performed.It is furthermore, it is possible to more using resistance-type, condenser type, infrared ray and surface acoustic wave etc.
Type realizes touch sensitive surface 1031.Except touch sensitive surface 1031, input block 1030 can also include other input equipments
1032.Specifically, other input equipments 1032 can include but is not limited to physical keyboard, function key (such as volume control button,
Switch key etc.), trace ball, mouse, the one or more in action bars etc..
Display unit 1040 can be used for display by the information of user's input or be supplied to the information and terminal 1000 of user
Various graphical user interface, these graphical user interface can by figure, text, icon, video and its any combination come structure
Into.Display unit 1040 may include display panel 1041, optionally, can use LCD (Liquid Crystal Display,
Liquid crystal display), the form such as OLED (Organic Light-Emitting Diode, Organic Light Emitting Diode) configure display
Panel 1041.Further, touch sensitive surface 631 can be covered on display panel 1041, when touch sensitive surface 1031 detects
After touch operation on or near it, processor 1080 is sent to determine the type of touch event, is followed by subsequent processing device 1080
Corresponding visual output is provided on display panel 1041 according to the type of touch event.Although in Fig. 10, touch sensitive surface 1031
Input and input function are realized with display panel 1041 is the part independent as two, but in certain embodiments, can
Input and output function are realized so that touch sensitive surface 1031 and display panel 1041 is integrated.
Terminal 1000 may also include at least one sensor 1050, such as optical sensor, motion sensor and other biographies
Sensor.Specifically, optical sensor may include ambient light sensor and proximity transducer, wherein, ambient light sensor can be according to ring
The light and shade of environmental light adjusts the brightness of display panel 1041, and proximity transducer can close when terminal 1000 is moved in one's ear
Display panel 1041 and/or backlight.As one kind of motion sensor, gravity accelerometer can detect in all directions
The size of (generally three axles) acceleration, can detect that size and the direction of gravity when static, available for identification mobile phone posture
(for example pedometer, struck using (such as horizontal/vertical screen switching, dependent game, magnetometer pose calibrating), Vibration identification correlation function
Hit) etc.;Other biographies such as the gyroscope that can also configure as terminal 1000, barometer, hygrometer, thermometer, infrared ray sensor
Sensor, it will not be repeated here.
Voicefrequency circuit 1060, loudspeaker 1061, microphone 1062 can provide the COBBAIF between user and terminal 1000.
Electric signal after the voice data received conversion can be transferred to loudspeaker 1061, by loudspeaker 1061 by voicefrequency circuit 1060
Be converted to voice signal output;On the other hand, the voice signal of collection is converted to electric signal by microphone 1062, by voicefrequency circuit
1060 receive after be converted to voice data, then after voice data output processor 1080 is handled, through RF circuits 1010 to send
Exported to another terminal, or by voice data to memory 1020 further to handle.Voicefrequency circuit 1060 is also possible to wrap
Earphone jack is included, to provide the communication of peripheral hardware earphone and terminal 1000.
Short range wireless transmission module 1070 can be WIFI (wireless fidelity, Wireless Fidelity) modules or
Bluetooth module etc..Terminal 1000 can help user to send and receive e-mail, browse net by short range wireless transmission module 1070
Page and access streaming video etc., it has provided the user wireless broadband internet and accessed.Although Figure 10 show short distance without
Line transport module 1070, but it is understood that, it is simultaneously not belonging to must be configured into for terminal 1000, completely can be as needed
Omitted in the essential scope for do not change invention.
Processor 1080 is the control centre of terminal 1000, utilizes various interfaces and each portion of the whole terminal of connection
Point, by running or performing the software program and/or module that are stored in memory 1020, and call and be stored in memory
Data in 1020, the various functions and processing data of terminal 1000 are performed, so as to carry out integral monitoring to terminal.Optionally,
Processor 1080 may include one or more processing cores;Optionally, processor 1080 can integrate application processor and modulatedemodulate
Processor is adjusted, wherein, application processor mainly handles operating system, user interface and application program etc., modem processor
Main processing radio communication.It is understood that above-mentioned modem processor can not also be integrated into processor 1080.
Terminal 1000 also includes the power supply 1090 (such as battery) to all parts power supply, it is preferred that power supply can pass through
Power-supply management system and processor 1080 are logically contiguous, so as to realize management charging, electric discharge, Yi Jigong by power-supply management system
The functions such as consumption management.Power supply 1090 can also include one or more direct current or AC power, recharging system, power supply
The random component such as failure detector circuit, power supply changeover device or inverter, power supply status indicator.
Although being not shown, terminal 1000 can also include camera, bluetooth module etc., will not be repeated here.
Terminal 1000 also includes memory, and one or more than one program, one of them or one with
Upper program storage is configured to by one or the above-mentioned each embodiment of the method for more than one computing device in memory
Client number of users statistical method.
Figure 11 shows the knot of the server of the statistical method for the client number of users that one embodiment of the invention provides
Structure schematic diagram.Server 1100 is including CPU (CPU) 1101 including random access memory (RAM) 1102 and only
Read the system storage 1104 of memory (ROM) 1103, and connection system storage 1104 and CPU 1101
System bus 1105.Server 1100 also includes helping the basic input/defeated that information is transmitted between each device in computer
Go out system (I/O systems) 1106, and for the big of storage program area 1113, application program 1114 and other program modules 1115
Capacity storage device 1107.
Basic input/output 1106 includes for the display 1108 of display information and inputs information for user
Such as mouse, keyboard etc input equipment 1109.Wherein display 1108 and input equipment 1109 be all by being connected to
The i/o controller 1110 of system bus 1105 is connected to CPU 1101.Basic input/output 1106 is also
Can include i/o controller 1110 for receive and handle from keyboard, mouse or electronic touch pen etc. it is multiple its
The input of his equipment.Similarly, i/o controller 1110 also provides output to display screen, printer or other kinds of
Output equipment.
Mass-memory unit 1107 is connected by being connected to the bulk memory controller (not shown) of system bus 1105
It is connected to CPU 1101.Mass-memory unit 1107 and its associated computer-readable medium are server 1100
Non-volatile memories are provided.That is, mass-memory unit 1107 can include such as hard disk or CD-ROM drive
Etc computer-readable medium (not shown).
Without loss of generality, computer-readable medium can include computer-readable storage medium and communication media.Computer stores
Medium is included for any of the information such as storage computer-readable instruction, data structure, program module or other data
The volatibility and non-volatile, removable and irremovable medium that method or technique is realized.Computer-readable storage medium include RAM,
ROM, EPROM, EEPROM, flash memory or other solid-state storages its technologies, CD-ROM, DVD or other optical storages, cassette, magnetic
Band, disk storage or other magnetic storage apparatus.Certainly, skilled person will appreciate that computer-readable storage medium is not limited to
State several.Above-mentioned system storage 1104 and mass-memory unit 1107 may be collectively referred to as memory.
According to various embodiments of the present invention, server 1100 can also pass through the network connections such as internet to network
On remote computer operation.Namely server 1100 can be by the NIU that is connected on system bus 1105
1111 are connected to network 1112, in other words, can also be connected to using NIU 1111 other kinds of network or
Remote computer system (not shown).
Memory also includes one or more than one program, and one or more than one program storage are in memory
In, one or more than one program bag contain the statistical method for being used for carrying out client number of users provided in an embodiment of the present invention
Instruction.
Figure 12 is a kind of block diagram of the statistical system of client number of users according to an exemplary embodiment, and this is
System can include:Server 1210 and client 1220.
Server 1210 includes the server shown in Fig. 6, appointing in the server shown in server and Figure 11 shown in Fig. 7
One.
Client 1220 can run on appointing in the terminal shown in Fig. 8, the terminal shown in Fig. 9 and the terminal shown in Figure 10
One.
The foregoing is only presently preferred embodiments of the present invention, be not intended to limit the invention, it is all the present invention spirit and
Within principle, any modification, equivalent substitution and improvements made etc., it should be included in the scope of the protection.
Claims (17)
1. a kind of statistical method of client number of users, it is characterised in that methods described includes:
Obtain the encrypted identifier that client is sent;
Decrypt the encrypted identifier and obtain identifier;
In checking of the identifier by identifier code, the identifier is stored, the identifier code is used to verify
The identifier;
According to the number of users of client described in the quantity statistics of the identifier of storage;
The identifier is parsed, obtains at least n kind unique marks corresponding with the client, the unique mark shares m kinds,
m>N, and when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1;
Whether include in the history identification symbol of detection storage consistent with any of at least n kind unique marks unique
Mark, the identifier that the history identification symbol stores before for this;
If history identification symbol include with the consistent unique mark of any of at least n kind unique marks, will
The identifier abandons.
2. according to the method for claim 1, it is characterised in that before the encrypted identifier for obtaining client and sending,
Also include:
Receive the statistics request that client is sent;
The identifier code is sent to the client according to the statistics request.
3. according to the method for claim 1, it is characterised in that the encrypted identifier for obtaining client and sending, including:
The encrypted identifier for being accompanied with redundancy that the client is sent is received, the redundancy is the client root
According to preset algorithm generation, the preset algorithm is the algorithm made an appointment with the client;
The redundancy is rejected according to the preset algorithm and obtains the encrypted identifier.
4. according to the method for claim 1, it is characterised in that the decryption encrypted identifier obtain identifier it
Before, in addition to:
When the encrypted identifier is the client by public key encryption, the length of the encrypted identifier is checked;
When the length of the encrypted identifier is the integral multiple of length of the public key, the decryption encryption identification is performed
The step of symbol obtains identifier.
5. a kind of statistical method of client number of users, it is characterised in that methods described includes:
At least n kinds unique mark corresponding with active client and at least n kind unique marks are obtained by identifier code
Put in order, the unique mark shares m kinds, m>N, and when m is odd number, n=(m+1)/2, when m is even number, n=m/
2+1;
According at least n kinds unique mark and the generation identifier that puts in order;
Encrypt the identifier and obtain encrypted identifier;
The encrypted identifier is sent to server, the server is used to count client according to the encrypted identifier
Number of users.
6. according to the method for claim 5, it is characterised in that described to send the encrypted identifier to server, bag
Include:
Redundancy is generated according to preset algorithm, the preset algorithm is the algorithm made an appointment with server;
The redundancy is attached to before or after the encrypted identifier;
The redundancy and the encrypted identifier are sent to the server together.
7. according to the method for claim 6, it is characterised in that it is described that redundancy is generated according to preset algorithm, including:
Using default at least one digit number value in the encrypted identifier and the product of the identifier code as the redundancy
Length, generate the content of the redundancy at random, obtain the redundancy.
8. according to the method for claim 5, it is characterised in that before the generation identifier by identifier code, also
Including:
Statistics request is sent to server;
Receive the identifier code that the server is sent.
9. a kind of statistic device of client number of users, it is characterised in that described device includes:
Identifier obtains module, for obtaining the encrypted identifier of client transmission;
Identifier deciphering module, identifier is obtained for decrypting the encrypted identifier;
Identifier storage, it is described in checking of the identifier by identifier code, storing the identifier
Identifier code is used to verify the identifier;
Client statistical module, the number of users for client described in the quantity statistics according to the identifier of storage;
Deduplication module, for parsing the identifier, at least n kind unique marks corresponding with the client are obtained, it is described
Unique mark shares m kinds, m>N, and when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1;Detection storage
Whether include in history identification symbol and the consistent unique mark of any of at least n kind unique marks, the history
The identifier that identifier stores before for this;If history identification symbol include with least n kind unique marks
Any consistent unique mark, then abandon the identifier.
10. device according to claim 9, it is characterised in that described device also includes:
Request receiving module is counted, for receiving the statistics request of client transmission;
Identifier code sending module, for sending the identifier code to the client according to the statistics request.
11. device according to claim 9, it is characterised in that the identifier obtains module, including:
Encrypted identifier receiving unit, the encrypted identifier for being accompanied with redundancy sent for receiving the client, institute
It is that the client generates according to preset algorithm to state redundancy, and the preset algorithm is made an appointment with the client
Algorithm;
Redundancy culling unit, the encrypted identifier is obtained for rejecting the redundancy according to the preset algorithm.
12. device according to claim 9, it is characterised in that described device also includes:
Length check module, for when the encrypted identifier is the client by public key encryption, checking described add
The length of close identifier;
Deciphering module is performed, for when the length of the encrypted identifier is the integral multiple of length of the public key, performing institute
State the step of decryption encrypted identifier obtains identifier.
13. a kind of statistic device of client number of users, it is characterised in that described device includes:
Identifier generating module, for by identifier code obtain corresponding with active client at least n kinds unique mark and
At least n kind unique marks put in order, and the unique mark shares m kinds, m>N, and when m is odd number, n=(m+1)/
2, when m is even number, n=m/2+1;According at least n kinds unique mark and the generation identifier that puts in order;
Identifier encrypting module, encrypted identifier is obtained for encrypting the identifier;
Identifier sending module, for the encrypted identifier to be sent to server, the server is used to be added according to described
The number of users of close identifier statistics client.
14. device according to claim 13, it is characterised in that the identifier sending module, including:
Redundancy generation unit, for generating redundancy according to preset algorithm, the preset algorithm is advance with server
The algorithm of agreement;
Redundancy extra cell, for the redundancy to be attached to before or after the encrypted identifier;
Identifier transmitting element, for the redundancy and the encrypted identifier to be sent to the server together.
15. device according to claim 14, it is characterised in that
The redundancy generation unit, for default at least one digit number value in the encrypted identifier and the identifier
The product of coding is the length of the redundancy, generates the content of the redundancy at random, obtains the redundancy.
16. device according to claim 13, it is characterised in that described device also includes:
Request sending module is counted, for sending statistics request to server;
Identifier code receiving module, the identifier code sent for receiving the server.
17. a kind of statistical system of client number of users, it is characterised in that the system includes:Server and client side;
The server includes any described device of claim 9 to 12;
The client includes any described device of claim 13 to 16.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510007225.4A CN104639394B (en) | 2015-01-05 | 2015-01-05 | Statistical method, the device and system of client number of users |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510007225.4A CN104639394B (en) | 2015-01-05 | 2015-01-05 | Statistical method, the device and system of client number of users |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104639394A CN104639394A (en) | 2015-05-20 |
CN104639394B true CN104639394B (en) | 2017-12-29 |
Family
ID=53217737
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510007225.4A Active CN104639394B (en) | 2015-01-05 | 2015-01-05 | Statistical method, the device and system of client number of users |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104639394B (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104980320B (en) * | 2015-07-29 | 2018-07-06 | 广东欧珀移动通信有限公司 | Client uses statistical method, the device and system of number |
CN105959729A (en) * | 2016-06-29 | 2016-09-21 | 武汉斗鱼网络科技有限公司 | Method and system for carrying out statistics on online user number in live broadcast platform |
CN108307246B (en) * | 2018-01-09 | 2020-02-07 | 武汉斗鱼网络科技有限公司 | Method, storage medium, equipment and system for calculating popularity of live broadcast room |
CN109302678B (en) * | 2018-11-14 | 2020-12-29 | 每日互动股份有限公司 | Method for early warning according to information of mobile terminals in address fence and electronic fence |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101132311A (en) * | 2007-09-25 | 2008-02-27 | 腾讯科技(深圳)有限公司 | Method and system for preventing network advertisement from being viciously clicked |
CN101729571A (en) * | 2009-12-28 | 2010-06-09 | 广州游家信息技术有限公司 | Method, server and system for counting network on-line user number |
CN101794473A (en) * | 2009-06-03 | 2010-08-04 | 朱世康 | Network voting method and device |
CN104240106A (en) * | 2013-06-21 | 2014-12-24 | 苏州精易会信息技术有限公司 | Software promotion method |
-
2015
- 2015-01-05 CN CN201510007225.4A patent/CN104639394B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101132311A (en) * | 2007-09-25 | 2008-02-27 | 腾讯科技(深圳)有限公司 | Method and system for preventing network advertisement from being viciously clicked |
CN101794473A (en) * | 2009-06-03 | 2010-08-04 | 朱世康 | Network voting method and device |
CN101729571A (en) * | 2009-12-28 | 2010-06-09 | 广州游家信息技术有限公司 | Method, server and system for counting network on-line user number |
CN104240106A (en) * | 2013-06-21 | 2014-12-24 | 苏州精易会信息技术有限公司 | Software promotion method |
Also Published As
Publication number | Publication date |
---|---|
CN104639394A (en) | 2015-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10880746B2 (en) | Network connection method, apparatus, storage medium and terminal | |
CN104821937B (en) | Token acquisition methods, apparatus and system | |
CN104836664B (en) | A kind of methods, devices and systems executing business processing | |
CN107070909A (en) | Method for sending information, message receiving method, apparatus and system | |
CN106789089B (en) | The method, apparatus and system and server of management certificate | |
EP3200487B1 (en) | Message processing method and apparatus | |
CN111600710B (en) | Key storage method, device, terminal, server and readable medium | |
CN104580167B (en) | A kind of methods, devices and systems transmitting data | |
CN103345602B (en) | A kind of client-side code integrality detection, device and system | |
CN106850220A (en) | Data ciphering method, data decryption method and device | |
CN105681032B (en) | Method for storing cipher key, key management method and device | |
CN104376353A (en) | Two-dimension code generating method, terminal and server and two-dimension code reading method, terminal and server | |
CN104901805B (en) | A kind of identification authentication methods, devices and systems | |
CN106845177A (en) | Cipher management method and system | |
CN104967601A (en) | Data processing method and apparatus | |
CN104580177B (en) | Resource provider method, device and system | |
CN104954126A (en) | Sensitive operation verification method, device and system | |
CN107154935A (en) | service request method and device | |
CN104852885A (en) | Method, device and system for verifying verification code | |
CN104639394B (en) | Statistical method, the device and system of client number of users | |
CN104901991A (en) | Methods, devices and system for transferring virtual resource | |
CN108234124A (en) | Auth method, device and system | |
CN106255102A (en) | The authentication method of a kind of terminal unit and relevant device | |
CN107911818A (en) | The method, device and mobile terminal of data transfer between mobile terminal | |
CN107590397A (en) | A kind of method and apparatus for showing embedded webpage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder |
Address after: 510660 Guangzhou City, Guangzhou, Guangdong, Whampoa Avenue, No. 315, self - made 1-17 Patentee after: Guangzhou KuGou Networks Co., Ltd. Address before: 510000 B1, building, No. 16, rhyme Road, Guangzhou, Guangdong, China 13F Patentee before: Guangzhou KuGou Networks Co., Ltd. |
|
CP02 | Change in the address of a patent holder |