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 PDF

Info

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
Application number
CN201510007225.4A
Other languages
Chinese (zh)
Other versions
CN104639394A (en
Inventor
刘旭峰
陈晓辰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Kugou Computer Technology Co Ltd
Original Assignee
Guangzhou Kugou Computer Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Kugou Computer Technology Co Ltd filed Critical Guangzhou Kugou Computer Technology Co Ltd
Priority to CN201510007225.4A priority Critical patent/CN104639394B/en
Publication of CN104639394A publication Critical patent/CN104639394A/en
Application granted granted Critical
Publication of CN104639394B publication Critical patent/CN104639394B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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

Statistical method, the device and system of client number of users
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.
CN201510007225.4A 2015-01-05 2015-01-05 Statistical method, the device and system of client number of users Active CN104639394B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (4)

* Cited by examiner, † Cited by third party
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
CN104580167B (en) A kind of methods, devices and systems transmitting data
EP3200487B1 (en) Message processing method and apparatus
CN103345602B (en) A kind of client-side code integrality detection, device and system
CN105681032B (en) Method for storing cipher key, key management method and device
CN106850220A (en) Data ciphering method, data decryption method and device
CN104901805B (en) A kind of identification authentication methods, devices and systems
CN104376353A (en) Two-dimension code generating method, terminal and server and two-dimension code reading method, terminal and server
CN104580177B (en) Resource provider method, device and system
CN107154935A (en) service request method and device
CN104639394B (en) Statistical method, the device and system of client number of users
CN106845177A (en) Cipher management method and system
CN104954126A (en) Sensitive operation verification method, device and system
CN104967601A (en) Data processing method and apparatus
CN104852885A (en) Method, device and system for verifying verification code
CN104901991A (en) Methods, devices and system for transferring virtual resource
CN106685948A (en) Data processing method, terminal, communication device and data processing system
CN106255102A (en) The authentication method of a kind of terminal unit and relevant device
CN106599698A (en) Method and device for picture encryption, and method and device for picture decryption
CN107590397A (en) A kind of method and apparatus for showing embedded webpage
CN104901806A (en) Method, device and system for processing virtual resources

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