CN104639394A - Statistical method, device and system for number of users of client - Google Patents
Statistical method, device and system for number of users of client Download PDFInfo
- Publication number
- CN104639394A CN104639394A CN201510007225.4A CN201510007225A CN104639394A CN 104639394 A CN104639394 A CN 104639394A CN 201510007225 A CN201510007225 A CN 201510007225A CN 104639394 A CN104639394 A CN 104639394A
- Authority
- CN
- China
- Prior art keywords
- identifier
- client
- server
- encrypted
- users
- 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.)
- Granted
Links
Landscapes
- Storage Device Security (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
The invention relates to a statistical method, device and system for the number of users of a client and belongs to the field of data statistics. The method comprises the following steps: a server obtains encrypted identifiers sent by the client and decrypts the encrypted identifiers to obtain identifiers; when the identifiers are identified by identifier codes, the identifiers are stored, wherein the identifier codes are used for identifying the identifiers; finally, the number of the users of the client is counted according to the number of the stored identifier by the server. According to the method, the encrypted identifiers are sent to the server through the client and the number of the users of the client is counted according to the number of the stored identifier by the server, so that malignant users cannot randomly counterfeit the encrypted identifiers for counting the number of the users of the client, and the problem in the related art that as the malignant users can counterfeit a lot of different MAC (Media Access Control) addresses and send the MAC addresses to the server are soled, the authenticity of a statistical result of the server is not enough is solved; the effect that the number of the users of the client, which is counted by the server, has higher reliability is achieved.
Description
Technical field
The present invention relates to data statistics field, particularly a kind of statistical method of client number of users, device and system.
Background technology
The statistics of client number of users has an important significance, and it clearly can reflect the number of users of client and the change of number of users, and clearly grasp number of users has very important effect for the development of client.
A kind of statistical method of client number of users is had in correlation technique, in the method, client is when being installed in terminal first, by MAC (the Media Access Control of terminal, medium access control) address is sent to server, server adds up the number of users of client according to the quantity of the different MAC Address received, and using this number as statistics.
Inventor is realizing in process of the present invention, find that aforesaid way at least exists following defect: said method is used as the number of users of client by the quantity of the different MAC Address received with server, malicious user can send to the data of server to obtain server address by intercepting client, forge MAC Address different in a large number afterwards and be sent to server, causing the authenticity of server statistics result not enough.
Summary of the invention
The data of server can be sent to obtain server address by intercepting client to solve malicious user in correlation technique, forge MAC Address different in a large number afterwards and be sent to server, cause the problem of the authenticity deficiency of server statistics result, embodiments provide a kind of statistical method of client number of users, device and system.Described technical scheme is as follows:
According to the first aspect of the embodiment of the present invention, provide a kind of statistical method of client number of users, the method comprises:
Obtain the encrypted identifier that client sends;
Enabling decryption of encrypted identifier obtains identifier;
When identifier passes through the checking of identifier code, location identifier, identifier code is for verifying identifier;
According to the number of users of the quantity statistics client of the identifier stored.
Optionally, before obtaining the encrypted identifier of client transmission, also comprise:
Receive the statistics request that client sends;
Identifier code is sent to client according to statistics request.
Optionally, obtain the encrypted identifier that client sends, comprising:
Receive the encrypted identifier being accompanied with redundant information that client sends, redundant information is that client generates according to preset algorithm, and preset algorithm is the algorithm of making an appointment with client;
Encrypted identifier is obtained according to preset algorithm eliminate redundancy information.
Optionally, enabling decryption of encrypted identifier also comprises before obtaining identifier:
Encrypted identifier be client by during public key encryption, check the length of encrypted identifier;
When the length of encrypted identifier is the integral multiple of the length of PKI, perform the step that enabling decryption of encrypted identifier obtains identifier.
Optionally, the method also comprises:
By the history identification symbol stored, deduplication process is carried out to identifier.
Optionally, by the history identification symbol stored, deduplication process is carried out to identifier, comprising:
Resolve identifier, obtain at least n kind unique identification corresponding with client, unique identification has m kind, m>n, and when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1;
Detect in the history identification symbol stored and whether include and any one the consistent unique identification at least n kind unique identification, the identifier of history identification symbol for storing before this;
If history identification symbol includes and any one the consistent unique identification at least n kind unique identification, then identifier is abandoned.
According to the second aspect of the embodiment of the present invention, provide a kind of statistical method of client number of users, the method comprises:
Accorded with by identifier code generating identification;
Encrypted identifier obtains encrypted identifier;
Encrypted identifier is sent to server, and server is used for the number of users according to encrypted identifier statistics client.
Optionally, accorded with by identifier code generating identification, comprising:
By identifier code obtain at least n kind unique identification corresponding with active client and at least n kind uniquely identified put in order, unique identification has m kind, 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 kind unique identification and the generating identification that puts in order accord with.
Optionally, encrypted identifier is sent to server, comprises:
Generate redundant information according to preset algorithm, preset algorithm is the algorithm of making an appointment with server;
Before or after redundant information is attached to encrypted identifier;
Redundant information is sent to server together with encrypted identifier.
Optionally, generate redundant information according to preset algorithm, comprising:
With the length that at least one bit value preset in encrypted identifier and the product of identifier code are redundant information, the content of stochastic generation redundant information, obtains redundant information.
Optionally, before identifier code generating identification symbol, also comprise:
Statistics request is sent to server;
The identifier code that reception server sends.
According to the third aspect of the embodiment of the present invention, provide a kind of statistic device of client number of users, this device comprises:
Identifier obtains module, for obtaining the encrypted identifier that client sends;
Identifier deciphering module, obtains identifier for enabling decryption of encrypted identifier;
Identifier storage, for when identifier passes through the checking of identifier code, location identifier, identifier code is for verifying identifier;
Client statistical module, for the number of users of the quantity statistics client according to the identifier stored.
Optionally, this device also comprises:
Statistics request receiving module, for receiving the statistics request that client sends;
Identifier code sending module, for sending identifier code according to statistics request to client.
Optionally, identifier obtains module, comprising:
Encrypted identifier receiving element, for receiving the encrypted identifier being accompanied with redundant information that client sends, redundant information is that client generates according to preset algorithm, and preset algorithm is the algorithm of making an appointment with client;
Redundant information culling unit, for obtaining encrypted identifier according to preset algorithm eliminate redundancy information.
Optionally, this device also comprises:
Length check module, at encrypted identifier be client by during public key encryption, check the length of encrypted identifier;
Perform deciphering module, for when the length of encrypted identifier is the integral multiple of the length of PKI, perform the step that enabling decryption of encrypted identifier obtains identifier.
Optionally, this device also comprises:
Deduplication module, carries out deduplication process for the history identification symbol by storing to identifier.
Optionally, deduplication module, comprising:
Identifier resolution unit, for resolving identifier, obtain at least n kind unique identification corresponding with client, unique identification has m kind, m>n, and when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1;
Unique identification detecting unit, for detect storage history identification symbol in whether include and any one the consistent unique identification at least n kind unique identification, the identifier of history identification symbol for storing before this;
Identifier discarding unit, if include and any one the consistent unique identification at least n kind unique identification for history identification symbol, then abandons identifier.
According to the fourth aspect of the embodiment of the present invention, provide a kind of statistic device of client number of users, this device comprises:
Identifier generating module, for according with by identifier code generating identification;
Identifier encrypting module, obtains encrypted identifier for encrypted identifier;
Identifier sending module, for encrypted identifier is sent to server, server is used for the number of users according to encrypted identifier statistics client.
Optionally, identifier generating module, comprising:
Generating mode acquiring unit, for by identifier code obtain at least n kind unique identification corresponding with active client and at least n kind uniquely identified put in order, unique identification has m kind, 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 basis at least n kind unique identification and the generating identification symbol that puts in order.
Optionally, identifier sending module, comprising:
Redundant information generation unit, for generating redundant information according to preset algorithm, preset algorithm is the algorithm of making an appointment with server;
Redundant information extra cell, before or after being attached to encrypted identifier by redundant information;
Identifier transmitting element, for being sent to server by redundant information together with encrypted identifier.
Optionally, redundant information generation unit, for the length being redundant information with the product of at least one bit value preset in encrypted identifier and identifier code, the content of stochastic generation redundant information, obtains redundant information.
Optionally, this device also comprises:
Statistics request sending module, for sending statistics request to server;
Identifier code receiver module, for the identifier code that reception server sends.
According to the 5th aspect of the embodiment of the present invention, provide a kind of statistical system of client number of users, this system comprises: server and client side;
Server comprises the device described in the third aspect;
Client comprises the device described in fourth aspect.
The technical scheme that the embodiment of the present invention provides can comprise following beneficial effect:
Encrypted identifier is sent by user end to server, server adds up the number of users of client by this encrypted identifier, make malicious user arbitrarily cannot forge encrypted identifier for adding up client number of users, solve malicious user in correlation technique and by forging MAC Address different in a large number and being sent to server, the problem of the authenticity deficiency of server statistics result can be caused; The client number of users reaching server statistics has the effect of higher confidence level.
Should be understood that, it is only exemplary and explanatory that above general description and details hereinafter describe, and can not limit the present invention.
Accompanying drawing explanation
Accompanying drawing to be herein merged in specification and to form the part of this specification, shows embodiment according to the invention, and is used from specification one and explains principle of the present invention.
Fig. 1 is the schematic diagram of a kind of implementation environment that each embodiment of the present invention relates to;
Fig. 2 is the flow chart of the statistical method of a kind of client number of users according to an exemplary embodiment;
Fig. 3 is the flow chart of the statistical method of a kind of client number of users according to another exemplary embodiment;
Fig. 4 is the flow chart of the statistical method of a kind of client number of users according to another exemplary embodiment;
Fig. 5 is the flow chart of the statistical method of a kind of client number of users according to another exemplary embodiment;
Fig. 6 is the block diagram of the statistic device of a kind of client number of users according to an exemplary embodiment;
Fig. 7 is the block diagram of the statistic device of a kind of client number of users according to another exemplary embodiment;
Fig. 8 is the block diagram of the statistic device of a kind of client number of users according to another exemplary embodiment;
Fig. 9 is the block diagram of the statistic device of a kind of client number of users according to another exemplary embodiment;
Figure 10 is the block diagram of a kind of terminal according to an exemplary embodiment;
Figure 11 is the block diagram of a kind of server according to an exemplary embodiment;
Figure 12 is the block diagram of the statistical system of a kind of client number of users according to an exemplary embodiment.
By above-mentioned accompanying drawing, illustrate the embodiment that the present invention is clear and definite more detailed description will be had hereinafter.These accompanying drawings and text description be not in order to limited by any mode the present invention design scope, but by reference to specific embodiment for those skilled in the art illustrate concept of the present invention.
Embodiment
Here will be described exemplary embodiment in detail, its sample table shows in the accompanying drawings.When description below relates to accompanying drawing, unless otherwise indicated, the same numbers in different accompanying drawing represents same or analogous key element.Execution mode described in following exemplary embodiment does not represent all execution modes consistent with the present invention.On the contrary, they only with as in appended claims describe in detail, the example of apparatus and method that aspects more of the present invention are consistent.
Fig. 1 is the schematic diagram of the implementation environment involved by each embodiment of the present invention, and this implementation environment can comprise: terminal 110 and server 120.
Terminal 110 can be smart mobile phone, panel computer, pocket computer on knee or desktop computer etc., and terminal 110 can run client.
Server 120 can be a station server, or the server cluster be made up of some station servers, or a cloud computing service center.
Can be connected by wireless network or cable network between terminal 110 and server 120.It should be noted that, this implementation environment does not restrict the quantity of terminal 110.
Fig. 2 is the flow chart of the statistical method of a kind of client number of users according to an exemplary embodiment, and the present embodiment illustrates in the server 120 of implementation environment shown in Fig. 1 with the Application of Statistic Methods of this client number of users.The statistical method of this client number of users can comprise following several step:
Step 201, obtains the encrypted identifier that client sends.
Step 202, enabling decryption of encrypted identifier obtains identifier.
Step 203, when identifier passes through the checking of identifier code, location identifier, identifier code is for verifying identifier.
Step 204, according to the number of users of the quantity statistics client of the identifier stored.
In sum, the statistical method of the client number of users that the embodiment of the present invention provides, encrypted identifier is sent by user end to server, server adds up the number of users of client by this encrypted identifier, make malicious user arbitrarily cannot forge encrypted identifier for adding up client number of users, solve malicious user in correlation technique and by forging MAC Address different in a large number and being sent to server, the problem of the authenticity deficiency of server statistics result can be caused; The client number of users reaching server statistics has the effect of higher confidence level.
Fig. 3 is the flow chart of the statistical method of a kind of client number of users according to another exemplary embodiment, and the present embodiment illustrates in the terminal 110 of implementation environment shown in Fig. 1 with the Application of Statistic Methods of this client number of users.The statistical method of this client number of users can comprise following several step:
Step 301, is accorded with by identifier code generating identification.
Step 302, encrypted identifier obtains encrypted identifier.
Step 303, is sent to server by encrypted identifier, and server is used for the number of users according to encrypted identifier statistics client.
In sum, the statistical method of the client number of users that the embodiment of the present invention provides, encrypted identifier is sent by user end to server, server adds up the number of users of client by this encrypted identifier, make malicious user arbitrarily cannot forge encrypted identifier for adding up client number of users, solve malicious user in correlation technique and by forging MAC Address different in a large number and being sent to server, the problem of the authenticity deficiency of server statistics result can be caused; The client number of users reaching server statistics has the effect of higher confidence level.
Fig. 4 is the flow chart of the statistical method of a kind of client number of users according to another exemplary embodiment, and the present embodiment illustrates in implementation environment shown in Fig. 1 with the Application of Statistic Methods of this client number of users.The statistical method of this client number of users can comprise following several step:
Step 401, user end to server sends statistics request.
When needing the statistics of carrying out client number of users, client can send statistics request to server.Optionally, client is before sending statistics request to server, first can detect in the terminal of running client and whether store statistics mark, statistics is designated and feeds back to client after the serviced device of client counts client number of users, when not storing statistics mark in the terminal, user end to server sends statistics request, does not send statistics request when storing statistics mark in the terminal to server.
Exemplary, client can all detect in the terminal of running client whether store statistics mark when each startup, more according to circumstances determines whether send statistics request to server.
It should be noted that, client after operation predetermined time period, then can send statistics request, to increase the validity of statistics to server.
Step 402, server sends identifier code according to statistics request to client.
Server, after the statistics request receiving client transmission, can send identifier code to client.The generating mode of identifier is included in identifier code.Wherein, can comprise more than one identifier code in server, server sends to the identifier code of different clients may not be identical.Optionally, the timestamp recording identifier code delivery time together can be sent to client with identifier code by server.
Step 403, the identifier code that client reception server sends.
Step 404, client by identifier code obtain at least n kind unique identification corresponding with active client and at least n kind uniquely identified put in order, unique identification has m kind, m>n, and when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1.
Client is after the identifier code receiving server transmission, identifier code can be resolved, and the acquisition at least n kind unique identification corresponding with active client and at least n kind uniquely identified put in order, unique identification has m kind, m>n, and when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1.Wherein, unique identification can be the unique mark corresponding with client or terminal.
It should be noted that, unique identification is not included in identifier code, but include putting in order between the generating identification symbol uniquely identified kind of needs and unique identification, namely identifier code can regulation generating identification symbol need uniquely identified kind and uniquely identified put in order, this step shows a kind of possible prescribed manner of identifier code.Optionally, identifier code can also have other prescribed manner, a kind of unique identification in such as regulation m kind unique identification is directly as identifier, or regulation m kind unique identification all arranges in a predetermined order as identifier, the wherein uniquely identified that the use sum of m for arranging between client and server.
Exemplary, unique identification can comprise MAC (the Media AccessControl of the terminal of running client, 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.
Step 405, client is according at least n kind unique identification and the generating identification that puts in order accord with.
Client obtaining after at least n kind unique identification and uniquely identified put in order, can to put in order generating identification symbol according at least n kind unique identification and uniquely identified.
Exemplary, client obtains MAC Address " X ", the CPUID " Y " and GUID " Z " of the terminal of running client according to identifier code, and these 3 kinds of uniquely identifieds put in order as GUID-MAC address-CPUID, then the identifier that client generates is " ZXY ".
It should be noted that, client is according at least n kind unique identification generating identification symbol, and unique identification has m kind, m>n, when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1, can ensure in the more than one identifier that same client generates according to different identifier code, have at least a unique identification to be identical in any two identifiers, not only decrease the data volume needing to send, and ensure that the execution of deduplication process of server.
Step 406, client encrypt identifier obtains encrypted identifier.
Client, after generating identification symbol, can obtain encrypted identifier to identifier encryption.
Client can be encrypted identifier by symmetry encryption technology or unsymmetrical tridiagonal matrix technology:
1) client is when using symmetry encryption technology to be encrypted identifier, need to prestore the symmetric key with server commitment in client, use this symmetric key to be encrypted identifier afterwards and obtain encrypted identifier, server can obtain identifier by symmetric key decryption encrypted identifier afterwards.
2) client is when using unsymmetrical tridiagonal matrix technology to be encrypted identifier, first the PKI of server can be obtained, such as, PKI and identifier code together can be sent to client by server in step 402, client is after acquisition PKI, can obtain encrypted identifier by this PKI to identifier encryption, server then can be carried out enabling decryption of encrypted identifier and obtain identifier by the private key that PKI is corresponding.
Step 407, client generates redundant information according to preset algorithm, and preset algorithm is the algorithm of making an appointment with server.
Client can generate redundant information according to preset algorithm, and preset algorithm can be the algorithm that client and server are made an appointment.Possible preset algorithm is: the length being redundant information with at least one bit value preset in encrypted identifier and the product of identifier code, the content of stochastic generation redundant information, obtains redundant information.Exemplary, can the product of first place when encrypted identifier represents with 16 systems and the identifier code length that is redundant information, the content of stochastic generation redundant information, obtains redundant information afterwards.
It should be noted that, this step only needs to perform after step 403, and namely client can generate redundant information after receiving the identifier code of server transmission.
Step 408, before or after redundant information is attached to encrypted identifier by client.
Client generation redundant information after, before or after redundant information can being attached to encrypted identifier.It should be noted that, can decide according to the algorithm of the redundant information with server commitment before or after redundant information being attached to encrypted identifier, exemplary, when in preset algorithm with encrypted identifier at least one bit value of presetting and the product of the identifier code length that is redundant information time, can using the predetermined manner of default at least one bit value as basis for estimation, when such as this at least one bit value preset is encrypted identifier the first, after redundant information can being attached to encrypted identifier, enable server eliminate redundancy information.
It should be noted that, redundant information can change client and send to the length of the encrypted identifier of server and the structure of encrypted identifier, the malicious user of the data of server can be sent to play the effect of interference to intercepting client, add the fail safe of encrypted identifier, improve the reliability of the client number of users of server statistics.
Step 409, redundant information is sent to server by client together with encrypted identifier.
Redundant information is being attached to after before or after encrypted identifier by client, redundant information can be sent to server together with encrypted identifier.Optionally, client receive server send record the timestamp of identifier code delivery time time, this timestamp also together can be sent to server.
Step 410, the encrypted identifier being accompanied with redundant information that server receives client sends, redundant information is that client generates according to preset algorithm, and preset algorithm is the algorithm of making an appointment with client.
The encrypted identifier being accompanied with redundant information that server receives client sends, optionally, when the timestamp recording identifier code delivery time is together sent to server with the encrypted identifier being accompanied with redundant information by client, server can check this timestamp, the time interval between the moment that the moment of recording in this timestamp and server receive this timestamp is not when exceeding prefixed time interval, perform step 411, the time interval between the moment that the moment of recording in this timestamp and server receive this timestamp is when exceeding prefixed time interval, the encrypted identifier being accompanied with redundant information received can be discarded as time-out information, can reduce the encrypted identifier being accompanied with redundant information is like this possibility that malicious user is forged.
Step 411, server obtains encrypted identifier according to preset algorithm eliminate redundancy information.
Server receive client send be accompanied with the encrypted identifier of redundant information after, encrypted identifier can be obtained according to preset algorithm eliminate redundancy information.
Step 412, server encrypted identifier be client by during public key encryption, check the length of encrypted identifier.
Ciphertext length due to public key encryption always equals the integral multiple of PKI length, thus be that client is by during public key encryption at encrypted identifier, server can check the length of encrypted identifier, and judges that whether encrypted identifier is the identifier of the public key encryption that server is corresponding by the length of encrypted identifier.
When the length of encrypted identifier is the integral multiple of the length of PKI, perform step 413, when the length of encrypted identifier is not the integral multiple of length of PKI, this encrypted identifier abandons by server.
Step 413, when the length of encrypted identifier is the integral multiple of the length of PKI, server enabling decryption of encrypted identifier obtains identifier.
When the length of encrypted identifier is the integral multiple of the length of PKI, shows that this encrypted identifier is by public key encryption corresponding to server, can be decrypted this encrypted identifier by corresponding private key afterwards.
It should be noted that, server can generate PKI and the private key of more than one group every designated time interval, and provide different PKIs to client, in this case, client needs the PKI used when encrypting identifier also to send to server, so that server is decrypted by corresponding private key pair encryption identifier.
Also it should be noted that, amount of calculation during owing to being decrypted by private key is comparatively large, and thus server is only that the encrypted identifier of the integral multiple of PKI is decrypted to length, reduces the deciphering amount of calculation of server.
Also it should be noted that, when encrypted identifier is accompanied with redundant information, even if malicious user obtains the redundant information that PKI also cannot generate correct length, then cannot by the inspection of server to the length of encrypted identifier.
Step 414, server carries out deduplication process by the history identification symbol stored to identifier.
This step can be divided into 3 sub-steps below:
1) server parses identifier, obtain at least n kind unique identification corresponding with client, unique identification has m kind, m>n, and when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1.
2) whether server detects in the history identification symbol stored and includes and any one the consistent unique identification at least n kind unique identification, the identifier of history identification symbol for storing before this.
3) if history identification symbol includes and any one the consistent unique identification at least n kind unique identification, then identifier abandons by server.
Exemplary, this obtains MAC Address " X ", CPUID " Y " and GUID " Z " after resolving identifier, and include CPUID " Y " and hard disk serial number " P " in having a history identification to accord with in the history identification symbol of server stores, identifier accords with history identification has identical CPUID, and thus server can abandon this identifier.
Step 415, server verifies identifier by identifier code.
Encrypted identifier is being deciphered by server, and after obtaining identifier, whether the uniquely identified kind that can detect in identifier is consistent with identifier code with order.Server to all clients provide be all same identifier code time, identifier code is herein this kind of identifier code, when server provides multiple identifier code to client, identifier code herein can be that client is sent to server with the encrypted identifier being accompanied with redundant information.
It should be noted that, identifier code also can think data of encrypting, and only has server and client side to decipher and obtain the information wherein comprised.
Step 416, server is when identifier passes through the checking of identifier code, and location identifier, identifier code is for verifying identifier.
Server is when identifier is by the checking of identifier code, and location identifier, the identifier of storage can coordinate when obtaining identifier afterwards as history identification symbol and carries out deduplication process.
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 stored.
Server is after storing identifier, and can add up the total quantity of the identifier of storage, this total quantity can as the number of users of client.
Optionally, server, after the number of users of statistics client, can send statistics mark to client, represent and this client is counted client number of users.
It should be added that, the statistical method of the client number of users that the embodiment of the present invention provides, by giving encrypted identifier affix redundant information, the malicious user of the data of server is sent to play the effect of interference to intercepting client, reach the fail safe increasing encrypted identifier, improve the effect of the reliability of the client number of users of server statistics.
It should be added that, the statistical method of the client number of users that the embodiment of the present invention provides, is only that the encrypted identifier of the integral multiple of PKI is decrypted to length by server, reaches the effect of the deciphering amount of calculation reducing server.
It should be added that, the statistical method of the client number of users that the embodiment of the present invention provides, by client according at least n kind unique identification generating identification symbol, and unique identification has m kind, m>n, when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1, in the more than one identifier that same client is generated according to different identifier code, a unique identification is had at least to be identical in any two identifiers, reach the data volume not only reducing and need to send, and the effect of the execution of Deterministic service device deduplication process.
In sum, the statistical method of the client number of users that the embodiment of the present invention provides, encrypted identifier is sent by user end to server, server adds up the number of users of client by this encrypted identifier, make malicious user arbitrarily cannot forge encrypted identifier for adding up client number of users, solve malicious user in correlation technique and by forging MAC Address different in a large number and being sent to server, the problem of the authenticity deficiency of server statistics result can be caused; The client number of users reaching server statistics has the effect of higher confidence level.
Fig. 5 is the flow chart of the statistical method of a kind of client number of users according to an exemplary embodiment, and the present embodiment illustrates in implementation environment shown in Fig. 1 with the Application of Statistic Methods of this client number of users.The statistical method of this client number of users can comprise following several step:
Step 501, client detects whether store statistics mark.
Client is when carrying out the demographics of client, first can detect and whether store statistics mark, statistics is designated and feeds back to client after the serviced device of client counts client number of users, when not storing statistics mark in the terminal, client can send statistics request to server, does not send statistics request when storing statistics mark in the terminal to server.Exemplary, client can all detect in the terminal of client operation whether store statistics mark when each startup.Optionally, statistics mark can be stored in registration table by client, to increase the reliability of statistics mark.
Step 502, client, when not storing statistics mark, accords with according to identifier code generating identification.
Client is not when storing statistics mark, and can accord with according to identifier code generating identification, wherein, identifier code for being pre-stored within client, such as when client is installed on terminal, just can obtain identifier code from installation kit.And 2 sub-steps below can be divided into according to identifier code generating identification symbol:
1) client by identifier code obtain at least n kind unique identification corresponding with active client and at least n kind uniquely identified put in order, unique identification has m kind, m>n, and when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1.Exemplary, unique identification can comprise MAC (the Media Access Control of the terminal that client is run, 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 kind unique identification and the generating identification that puts in order accord with.Client, can according at least n kind unique identification and the generating identification symbol that puts in order obtaining after at least n kind unique identification and various uniquely identified put in order.Exemplary, client obtains MAC Address " X ", the CPUID " Y " and GUID " Z " of the terminal that client is run according to identifier code, and these 3 kinds of uniquely identifieds put in order as GUID-MAC address-CPUID, then the identifier that client generates is " ZXY ".
It should be noted that, client is according at least n kind unique identification generating identification symbol, and unique identification has m kind, m>n, when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1, can ensure in the more than one identifier that same client generates according to different identifier code, have at least a unique identification to be identical in any two identifiers, convenient service device carries out deduplication process.
Step 503, identifier is encrypted by client, obtains encrypted identifier.
Client, after generating identification symbol, can obtain encrypted identifier to identifier encryption.Optionally, client can be encrypted identifier by symmetry encryption technology or unsymmetrical tridiagonal matrix technology:
1) client is when using symmetry encryption technology to be encrypted identifier, need to prestore the symmetric key with server commitment in client, client uses this symmetric key to be encrypted identifier and obtains encrypted identifier afterwards, and server can obtain identifier by symmetric key decryption encrypted identifier afterwards.
2) client is when using unsymmetrical tridiagonal matrix technology to be encrypted identifier, first the PKI of server can be obtained, such as, client can prestore the PKI of server, or client can pass through CA (Certificate Authority, certificate management authority) obtain the PKI of server, client is after acquisition PKI, can obtain encrypted identifier by this PKI to identifier encryption, server then can be carried out enabling decryption of encrypted identifier and obtain identifier by the private key that PKI is corresponding.
Step 504, encrypted identifier is sent to server by client.
Encrypted identifier, after obtaining encrypted identifier, can be sent to server by client.Different clients use be different identifier code time, identifier code also can be sent to server by client in the lump.
Step 505, server receives encrypted identifier.
Step 506, server enabling decryption of encrypted identifier obtains identifier.
Server is after reception encrypted identifier, according to circumstances can obtain identifier by enabling decryption of encrypted identifier, such as, when client is by symmetric key encryption identifier, then server carrys out enabling decryption of encrypted identifier by the symmetric key of arranging with client prestored, when client is by public key encryption identifier, then server carrys out enabling decryption of encrypted identifier by the private key that PKI is corresponding.
Step 507, server carries out deduplication process by the history identification symbol stored to identifier.
Server can carry out deduplication process to identifier after obtaining identifier.
This step can be divided into 3 sub-steps below:
1) server parses identifier, obtain at least n kind unique identification corresponding with client, unique identification has m kind, m>n, and when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1.
2) whether server detects in the history identification symbol stored and includes and any one the consistent unique identification at least n kind unique identification, the identifier of history identification symbol for storing before this.
3) if history identification symbol includes and any one the consistent unique identification at least n kind unique identification, then identifier abandons by server.
Step 508, server verifies identifier by identifier code.
Server, being deciphered by encrypted identifier, after obtaining identifier, can resolve identifier, and whether the uniquely identified kind detected in identifier is consistent with identifier code with order.Server to all clients provide be all same identifier code time, identifier code is herein this kind of identifier code, when server provides multiple identifier code to client, identifier code herein can be that client is sent to server with the encrypted identifier being accompanied with redundant information.
It should be noted that, identifier code also can think a file encrypted, and only has server and client side to decipher and obtain the information wherein comprised.
Step 509, server is when identifier passes through the checking of identifier code, and location identifier, identifier code is for verifying identifier.
Server is when identifier is by the checking of identifier code, and location identifier, the identifier of storage can coordinate when obtaining identifier afterwards as history identification symbol and carries out deduplication process.
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 stored.
Server is after storing identifier, and can add up the total quantity of the identifier of storage, this total quantity can as the number of users of client.
Step 511, server sends statistics mark to client.
Server, after the number of users of statistics client, can send statistics mark to client, represent and this client is counted client number of users.
It should be added that, the statistical method of the client number of users that the embodiment of the present invention provides, by client when carrying out the demographics of client, first detecting and whether storing statistics mark, reach the effect that client does not repeat to send to server encrypted identifier.
In sum, the statistical method of the client number of users that the embodiment of the present invention provides, encrypted identifier is sent by user end to server, server adds up the number of users of client by this encrypted identifier, make malicious user arbitrarily cannot forge encrypted identifier for adding up client number of users, solve malicious user in correlation technique and by forging MAC Address different in a large number and being sent to server, the problem of the authenticity deficiency of server statistics result can be caused; The client number of users reaching server statistics has the effect of higher confidence level.
Following is apparatus of the present invention embodiment, may be used for performing the inventive method embodiment.For the details do not disclosed in apparatus of the present invention embodiment, please refer to the inventive method embodiment.
Fig. 6 is the block diagram of the statistic device of a kind of client number of users according to an exemplary embodiment, and the statistic device of this client number of users can realize becoming the some or all of of the server 120 in implementation environment shown in Fig. 1 by software, hardware or both combinations.The statistic device of this client number of users can comprise: identifier obtains module 610, identifier deciphering module 620, identifier storage 630 and client statistical module 640.
Identifier obtains module 610, for obtaining the encrypted identifier that client sends.
Identifier deciphering module 620, obtains identifier for enabling decryption of encrypted identifier.
Identifier storage 630, for when identifier passes through the checking of identifier code, location identifier, identifier code is for verifying identifier.
Client statistical module 640, for the number of users of the quantity statistics client according to the identifier stored.
In sum, the statistic device of the client number of users that the embodiment of the present invention provides, encrypted identifier is sent by user end to server, server adds up the number of users of client by this encrypted identifier, make malicious user arbitrarily cannot forge encrypted identifier for adding up client number of users, solve malicious user in correlation technique and by forging MAC Address different in a large number and being sent to server, the problem of the authenticity deficiency of server statistics result can be caused; The client number of users reaching server statistics has the effect of higher confidence level.
Fig. 7 is the block diagram of the statistic device 600 of a kind of client number of users according to another exemplary embodiment, and the statistic device 600 of this client number of users can realize becoming the some or all of of the server 120 in implementation environment shown in Fig. 1 by software, hardware or both combinations.The statistic device 600 of this client number of users can comprise: identifier obtains module 610, identifier deciphering module 620, identifier storage 630 and client statistical module 640.
Identifier obtains module 610, for obtaining the encrypted identifier that client sends.
Identifier deciphering module 620, obtains identifier for enabling decryption of encrypted identifier.
Identifier storage 630, for when identifier passes through the checking of identifier code, location identifier, identifier code is for verifying identifier.
Client statistical module 640, for the number of users of the quantity statistics client according to the identifier stored.
Optionally, this device also comprises:
Statistics request receiving module 650, for receiving the statistics request that client sends.
Identifier code sending module 660, for sending identifier code according to statistics request to client.
Optionally, identifier obtains module 610, comprising:
Encrypted identifier receiving element 611, for receiving the encrypted identifier being accompanied with redundant information that client sends, redundant information is that client generates according to preset algorithm, and preset algorithm is the algorithm of making an appointment with client.
Redundant information culling unit 612, for obtaining encrypted identifier according to preset algorithm eliminate redundancy information.
Optionally, this device also comprises:
Length check module 670, at encrypted identifier be client by during public key encryption, check the length of encrypted identifier.
Perform deciphering module 680, for when the length of encrypted identifier is the integral multiple of the length of PKI, perform the step that enabling decryption of encrypted identifier obtains identifier.
Optionally, this device also comprises:
Deduplication module 690, carries out deduplication process for the history identification symbol by storing to identifier.
Optionally, deduplication module 690, comprising:
Identifier resolution unit 691, for resolving identifier, obtain at least n kind unique identification corresponding with client, unique identification has m kind, m>n, and when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1.
Unique identification detecting unit 692, for detect storage history identification symbol in whether include and any one the consistent unique identification at least n kind unique identification, the identifier of history identification symbol for storing before this.
Identifier discarding unit 693, if include and any one the consistent unique identification at least n kind unique identification for history identification symbol, then abandons identifier.
It should be added that, the statistic device of the client number of users that the embodiment of the present invention provides, by giving encrypted identifier affix redundant information, the malicious user of the data of server is sent to play the effect of interference to intercepting client, reach the fail safe increasing encrypted identifier, improve the effect of the reliability of the client number of users of server statistics.
It should be added that, the statistic device of the client number of users that the embodiment of the present invention provides, is only that the encrypted identifier of the integral multiple of PKI is decrypted to length by server, reaches the effect of the deciphering amount of calculation reducing server.
In sum, the statistic device of the client number of users that the embodiment of the present invention provides, encrypted identifier is sent by user end to server, server adds up the number of users of client by this encrypted identifier, make malicious user arbitrarily cannot forge encrypted identifier for adding up client number of users, solve malicious user in correlation technique and by forging MAC Address different in a large number and being sent to server, the problem of the authenticity deficiency of server statistics result can be caused; The client number of users reaching server statistics has the effect of higher confidence level.
Fig. 8 is the block diagram of the statistic device of a kind of client number of users according to another exemplary embodiment, and the statistic device of this client number of users can realize becoming the some or all of of the terminal 110 in implementation environment shown in Fig. 1 by software, hardware or both combinations.The statistic device of this client number of users can comprise: identifier generating module 810, identifier encrypting module 820 and identifier sending module 830.
Identifier generating module 810, for according with by identifier code generating identification.
Identifier encrypting module 820, obtains encrypted identifier for encrypted identifier.
Identifier sending module 830, for encrypted identifier is sent to server, server is used for the number of users according to encrypted identifier statistics client.
In sum, the statistic device of the client number of users that the embodiment of the present invention provides, encrypted identifier is sent by user end to server, server adds up the number of users of client by this encrypted identifier, make malicious user arbitrarily cannot forge encrypted identifier for adding up client number of users, solve malicious user in correlation technique and by forging MAC Address different in a large number and being sent to server, the problem of the authenticity deficiency of server statistics result can be caused; The client number of users reaching server statistics has the effect of higher confidence level.
Fig. 9 is the block diagram of the statistic device of a kind of client number of users according to another exemplary embodiment, and the statistic device of this client number of users can realize becoming the some or all of of the terminal 110 in implementation environment shown in Fig. 1 by software, hardware or both combinations.The statistic device of this client number of users can comprise: identifier generating module 810, identifier encrypting module 820 and identifier sending module 830.
Identifier generating module 810, for according with by identifier code generating identification.
Identifier encrypting module 820, obtains encrypted identifier for encrypted identifier.
Identifier sending module 830, for encrypted identifier is sent to server, server is used for the number of users according to encrypted identifier statistics client.
Optionally, identifier generating module 810, comprising:
Generating mode acquiring unit 811, for by identifier code obtain at least n kind unique identification corresponding with active client and at least n kind uniquely identified put in order, unique identification has m kind, 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 basis at least n kind unique identification and the generating identification symbol that puts in order.
Optionally, identifier sending module 830, comprising:
Redundant information generation unit 831, for generating redundant information according to preset algorithm, preset algorithm is the algorithm of making an appointment with server.
Redundant information extra cell 832, before or after being attached to encrypted identifier by redundant information.
Identifier transmitting element 833, for being sent to server by redundant information together with encrypted identifier.
Optionally, redundant information generation unit 831, for the length being redundant information with the product of at least one bit value preset in encrypted identifier and identifier code, the content of stochastic generation redundant information, obtains redundant information.
Optionally, this device also comprises:
Statistics request sending module 840, for sending statistics request to server.
Identifier code receiver module 850, for the identifier code that reception server sends.
It should be added that, the statistic device of the client number of users that the embodiment of the present invention provides, by giving encrypted identifier affix redundant information, the malicious user of the data of server is sent to play the effect of interference to intercepting client, reach the fail safe increasing encrypted identifier, improve the effect of the reliability of the client number of users of server statistics.
It should be added that, the statistic device of the client number of users that the embodiment of the present invention provides, by client according at least n kind unique identification generating identification symbol, and unique identification has m kind, m>n, when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1, in the more than one identifier that same client is generated according to different identifier code, a unique identification is had at least to be identical in any two identifiers, reach the data volume not only reducing and need to send, and the effect of the execution of Deterministic service device deduplication process.
In sum, the statistic device of the client number of users that the embodiment of the present invention provides, encrypted identifier is sent by user end to server, server adds up the number of users of client by this encrypted identifier, make malicious user arbitrarily cannot forge encrypted identifier for adding up client number of users, solve malicious user in correlation technique and by forging MAC Address different in a large number and being sent to server, the problem of the authenticity deficiency of server statistics result can be caused; The client number of users reaching server statistics has the effect of higher confidence level.
About the device in above-described embodiment, wherein the concrete mode of modules executable operations has been described in detail in about the embodiment of the method, will not elaborate explanation herein.
Figure 10 shows the structural representation of the terminal that one embodiment of the present of invention provide.This terminal 1000 can run client, and this terminal 1000 may be used for the statistical method implementing the client number of users provided in above-described embodiment, specifically:
Terminal 1000 can comprise RF (Radio Frequency, radio frequency) circuit 1010, the memory 1020 including one or more computer-readable recording mediums, input unit 1030, display unit 1040, transducer 1050, voicefrequency circuit 1060, short range wireless transmission module 1070, include the parts such as processor 1080 and power supply 1090 that more than or processes core.It will be understood by those skilled in the art that the restriction of the not structure paired terminal of the terminal structure shown in Fig. 6, the parts more more or less than diagram can be comprised, or combine some parts, or different parts are arranged.Wherein:
RF circuit 1010 can be used for receiving and sending messages or in communication process, the reception of signal and transmission, especially, after being received by the downlink information of base station, transfer to more than one or one processor 1080 to process; In addition, base station is sent to by relating to up data.Usually, RF circuit 1010 includes but not limited to antenna, at least one amplifier, tuner, one or more oscillator, subscriber identity module (SIM) card, transceiver, coupler, LNA (Low Noise Amplifier, low noise amplifier), duplexer etc.In addition, RF circuit 1010 can also by radio communication and network and other devices communicatings.Radio communication can use arbitrary communication standard or agreement, include but not limited to GSM (Global System of Mobile communication, global system for mobile communications), GPRS (General Packet Radio Service, general packet radio service), CDMA (Code Division Multiple Access, code division multiple access), WCDMA (Wideband Code Division Multiple Access, 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 storing software program and module, such as, memory 1020 may be used for storing Preset Time list, the software program of storage of collected voice signal can also be used for, realize the software program that the software program of keyword identification, the software program realizing continuous speech recognition and realization arrange prompting item, binding relationship storing WAP (wireless access point) and user account etc. can also be used for.Processor 1080 is stored in software program and the module of memory 1020 by running, thus performs the application of various function and data processing.Memory 1020 mainly can comprise storage program district and store data field, and wherein, storage program district can storage operation system, application program (such as sound-playing function, image player function etc.) etc. needed at least one function; Store data field and can store the data (such as voice data, phone directory etc.) etc. created according to the use of terminal 1000.In addition, memory 1020 can comprise high-speed random access memory, can also comprise nonvolatile memory, such as at least one disk memory, flush memory device or other volatile solid-state parts.Correspondingly, memory 1020 can also comprise Memory Controller, to provide the access of processor 1080 and input unit 1030 pairs of memories 1020.
Input unit 1030 can be used for the numeral or the character information that receive input, and produces and to arrange with user and function controls relevant keyboard, mouse, action bars, optics or trace ball signal and inputs.Particularly, input unit 1030 can comprise Touch sensitive surface 1031 and other input equipments 1032.Touch sensitive surface 1031, also referred to as touch display screen or Trackpad, user can be collected or neighbouring touch operation (such as user uses any applicable object or the operations of annex on Touch sensitive surface 1031 or near Touch sensitive surface 1031 such as finger, stylus) thereon, and drive corresponding jockey according to the formula preset.Optionally, Touch sensitive surface 1031 can comprise touch detecting apparatus and touch controller two parts.Wherein, touch detecting apparatus detects the touch orientation of user, and detects the signal that touch operation brings, and sends signal to touch controller; Touch controller receives touch information from touch detecting apparatus, and converts it to contact coordinate, then gives processor 1080, and the order that energy receiving processor 1080 is sent also is performed.In addition, the polytypes such as resistance-type, condenser type, infrared ray and surface acoustic wave can be adopted to realize Touch sensitive surface 1031.Except Touch sensitive surface 1031, input unit 1030 can also comprise other input equipments 1032.Particularly, other input equipments 1032 can include but not limited to one or more in physical keyboard, function key (such as volume control button, switch key etc.), trace ball, mouse, action bars etc.
Display unit 1040 can be used for the various graphical user interface showing information or the information being supplied to user and the terminal 1000 inputted by user, and these graphical user interface can be made up of figure, text, icon, video and its combination in any.Display unit 1040 can comprise display floater 1041, optionally, the form such as LCD (Liquid Crystal Display, liquid crystal display), OLED (Organic Light-Emitting Diode, Organic Light Emitting Diode) can be adopted to configure display floater 1041.Further, Touch sensitive surface 631 can cover on display floater 1041, when Touch sensitive surface 1031 detects thereon or after neighbouring touch operation, send processor 1080 to determine the type of touch event, on display floater 1041, provide corresponding vision to export with preprocessor 1080 according to the type of touch event.Although in Fig. 10, Touch sensitive surface 1031 and display floater 1041 be as two independently parts realize input and input function, in certain embodiments, can by Touch sensitive surface 1031 and display floater 1041 integrated and realize input and output function.
Terminal 1000 also can comprise at least one transducer 1050, such as optical sensor, motion sensor and other transducers.Particularly, optical sensor can comprise ambient light sensor and proximity transducer, and wherein, ambient light sensor the light and shade of environmentally light can regulate the brightness of display floater 1041, proximity transducer when terminal 1000 moves in one's ear, can cut out display floater 1041 and/or backlight.As the one of motion sensor, Gravity accelerometer can detect the size of all directions (are generally three axles) acceleration, size and the direction of gravity can be detected time static, can be used for identifying the application (such as horizontal/vertical screen switching, dependent game, magnetometer pose calibrating) of mobile phone attitude, Vibration identification correlation function (such as pedometer, knock) etc.; As for terminal 1000 also other transducers such as configurable gyroscope, barometer, hygrometer, thermometer, infrared ray sensor, do not repeat them here.
Voicefrequency circuit 1060, loud speaker 1061, microphone 1062 can provide the audio interface between user and terminal 1000.Voicefrequency circuit 1060 can by receive voice data conversion after the signal of telecommunication, be transferred to loud speaker 1061, by loud speaker 1061 be converted to voice signal export; On the other hand, the voice signal of collection is converted to the signal of telecommunication by microphone 1062, voice data is converted to after being received by voicefrequency circuit 1060, after again voice data output processor 1080 being processed, through RF circuit 1010 to send to another terminal, or export voice data to memory 1020 to process further.Voicefrequency circuit 1060 also may comprise earphone jack, to provide the communication of peripheral hardware earphone and terminal 1000.
Short range wireless transmission module 1070 can be WIFI (wireless fidelity, Wireless Fidelity) module or bluetooth module etc.By short range wireless transmission module 1070, terminal 1000 can help that user sends and receive e-mail, browsing page and access streaming video etc., and its broadband internet wireless for user provides is accessed.Although Figure 10 shows short range wireless transmission module 1070, be understandable that, it does not belong to must forming of terminal 1000, can omit in the scope of essence not changing invention as required completely.
Processor 1080 is control centres of terminal 1000, utilize the various piece of various interface and the whole terminal of connection, software program in memory 1020 and/or module is stored in by running or performing, and call the data be stored in memory 1020, perform various function and the deal with data of terminal 1000, thus integral monitoring is carried out to terminal.Optionally, processor 1080 can comprise one or more process core; Optionally, processor 1080 accessible site application processor and modem processor, wherein, application processor mainly processes operating system, user interface and application program etc., and modem processor mainly processes radio communication.Be understandable that, above-mentioned modem processor also can not be integrated in processor 1080.
Terminal 1000 also comprises the power supply 1090 (such as battery) of powering to all parts, preferably, power supply can be connected with processor 1080 logic by power-supply management system, thus realizes the functions such as management charging, electric discharge and power managed by power-supply management system.Power supply 1090 can also comprise one or more direct current or AC power, recharging system, power failure detection circuit, power supply changeover device or the random component such as inverter, power supply status indicator.
Although not shown, terminal 1000 can also comprise camera, bluetooth module etc., does not repeat them here.
Terminal 1000 also includes memory, and one or more than one program, one of them or more than one program are stored in memory, and are configured to the statistical method of the client number of users being performed each embodiment of the method above-mentioned by more than one or one processor.
Figure 11 shows the structural representation of the server of the statistical method of the client number of users that one embodiment of the invention provides.Server 1100 comprises CPU (CPU) 1101, comprises the system storage 1104 of random access memory (RAM) 1102 and read-only memory (ROM) 1103, and the system bus 1105 of connected system memory 1104 and CPU 1101.Server 1100 also comprises the basic input/output (I/O system) 1106 of transmission information between each device of helping in computer, and for the mass-memory unit 1107 of storage operation system 1113, application program 1114 and other program modules 1115.
Basic input/output 1106 includes the input equipment 1109 of the display 1108 for showing information and the such as mouse, keyboard and so on for user's input information.Wherein display 1108 and input equipment 1109 are all connected to CPU 1101 by the i/o controller 1110 being connected to system bus 1105.Basic input/output 1106 can also comprise i/o controller 1110 for receiving and processing the input from other equipment multiple such as keyboard, mouse or electronic touch pens.Similarly, i/o controller 1110 also provides the output equipment outputting to display screen, printer or other types.
Mass-memory unit 1107 is connected to CPU 1101 by the bulk memory controller (not shown) being connected to system bus 1105.Mass-memory unit 1107 and the computer-readable medium that is associated thereof provide non-volatile memories for server 1100.That is, mass-memory unit 1107 can comprise the computer-readable medium (not shown) of such as hard disk or CD-ROM drive and so on.
Without loss of generality, computer-readable medium can comprise computer-readable storage medium and communication media.Computer-readable storage medium comprises the volatibility and non-volatile, removable and irremovable medium that realize for any method or technology that store the information such as such as computer-readable instruction, data structure, program module or other data.Computer-readable storage medium comprises RAM, ROM, EPROM, EEPROM, flash memory or its technology of other solid-state storage, CD-ROM, DVD or other optical storage, cassette, tape, disk storage or other magnetic storage apparatus.Certainly, the known computer-readable storage medium of those skilled in the art is not limited to above-mentioned several.Above-mentioned system storage 1104 and mass-memory unit 1107 can be referred to as memory.
According to various embodiments of the present invention, the remote computer that server 1100 can also be connected on network by networks such as such as internets runs.Also namely server 1100 can be connected to network 1112 by the network interface unit 1111 be connected on system bus 1105, in other words, network interface unit 1111 also can be used to be connected to network or the remote computer system (not shown) of other types.
Memory also comprises one or more than one program, and more than one or one program is stored in memory, and more than one or one program package contains the instruction of the statistical method for carrying out the client number of users that the embodiment of the present invention provides.
Figure 12 is the block diagram of the statistical system of a kind of client number of users according to an exemplary embodiment, and this system can comprise: server 1210 and client 1220.
Server 1210 comprises any one in the server shown in the server shown in the server shown in Fig. 6, Fig. 7 and Figure 11.
Client 1220 can run on any one in the terminal shown in the terminal shown in the terminal shown in Fig. 8, Fig. 9 and Figure 10.
The foregoing is only preferred embodiment of the present invention, not in order to limit the present invention, within the spirit and principles in the present invention all, any amendment done, equivalent replacement, improvement etc., all should be included within protection scope of the present invention.
Claims (23)
1. a statistical method for client number of users, is characterized in that, described method comprises:
Obtain the encrypted identifier that client sends;
Decipher described encrypted identifier and obtain identifier;
When described identifier passes through the checking of identifier code, store described identifier, described identifier code is for verifying described identifier;
The number of users of client according to the quantity statistics of the described identifier stored.
2. method according to claim 1, is characterized in that, before the encrypted identifier that described acquisition client sends, also comprises:
Receive the statistics request that client sends;
Described identifier code is sent to described client according to described statistics request.
3. method according to claim 1, is characterized in that, the encrypted identifier that described acquisition client sends, and comprising:
Receive the encrypted identifier being accompanied with redundant information that described client sends, described redundant information is that described client generates according to preset algorithm, and described preset algorithm is the algorithm of making an appointment with described client;
Reject described redundant information according to described preset algorithm and obtain described encrypted identifier.
4. method according to claim 1, is characterized in that, the described encrypted identifier of described deciphering also comprises before obtaining identifier:
Described encrypted identifier be described client by during public key encryption, check the length of described encrypted identifier;
When the length of described encrypted identifier is the integral multiple of the length of described PKI, perform the step that the described encrypted identifier of described deciphering obtains identifier.
5., according to the arbitrary described method of Claims 1-4, it is characterized in that, described method also comprises:
By the history identification symbol stored, deduplication process is carried out to described identifier.
6. method according to claim 5, is characterized in that, the described history identification symbol by storing carries out deduplication process to described identifier, comprising:
Resolve described identifier, obtain at least n kind unique identification corresponding with described client, described unique identification has m kind, m>n, and when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1;
Detect in the history identification symbol stored and whether include and any one the consistent unique identification in described at least n kind unique identification, the identifier that described history identification symbol stores before being this;
If described history identification symbol includes and any one the consistent unique identification in described at least n kind unique identification, then described identifier is abandoned.
7. a statistical method for client number of users, is characterized in that, described method comprises:
Accorded with by identifier code generating identification;
Encrypt described identifier and obtain encrypted identifier;
Described encrypted identifier is sent to server, and described server is used for the number of users according to described encrypted identifier statistics client.
8. method according to claim 7, is characterized in that, is describedly accorded with by identifier code generating identification, comprising:
Put in order by the identifier code acquisition at least n kind unique identification corresponding with active client and described at least n kind uniquely identified, described unique identification has m kind, m>n, and when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1;
According to described at least n kind unique identification and the described generating identification symbol that puts in order.
9. method according to claim 7, is characterized in that, described described encrypted identifier is sent to server, comprising:
Generate redundant information according to preset algorithm, described preset algorithm is the algorithm of making an appointment with server;
Before or after described redundant information is attached to described encrypted identifier;
Described redundant information is sent to described server together with described encrypted identifier.
10. method according to claim 9, is characterized in that, described according to preset algorithm generation redundant information, comprising:
With the length that at least one bit value preset in described encrypted identifier and the product of described identifier code are described redundant information, the content of redundant information described in stochastic generation, obtains described redundant information.
11. methods according to claim 7, is characterized in that, described by before identifier code generating identification symbol, also comprise:
Statistics request is sent to server;
Receive the identifier code that described server sends.
The statistic device of 12. 1 kinds of client numbers of users, is characterized in that, described device comprises:
Identifier obtains module, for obtaining the encrypted identifier that client sends;
Identifier deciphering module, obtains identifier for deciphering described encrypted identifier;
Identifier storage, for when described identifier passes through the checking of identifier code, store described identifier, described identifier code is for verifying described identifier;
Client statistical module, for the number of users of client according to the quantity statistics of the described identifier stored.
13. devices according to claim 12, is characterized in that, described device also comprises:
Statistics request receiving module, for receiving the statistics request that client sends;
Identifier code sending module, for sending described identifier code according to described statistics request to described client.
14. devices according to claim 12, is characterized in that, described identifier obtains module, comprising:
Encrypted identifier receiving element, for receiving the encrypted identifier being accompanied with redundant information that described client sends, described redundant information is that described client generates according to preset algorithm, and described preset algorithm is the algorithm of making an appointment with described client;
Redundant information culling unit, obtains described encrypted identifier for rejecting described redundant information according to described preset algorithm.
15. devices according to claim 12, is characterized in that, described device also comprises:
Length check module, at described encrypted identifier be described client by during public key encryption, check the length of described encrypted identifier;
Perform deciphering module, for when the length of described encrypted identifier is the integral multiple of the length of described PKI, perform the step that the described encrypted identifier of described deciphering obtains identifier.
16. according to claim 12 to 15 arbitrary described devices, and it is characterized in that, described device also comprises:
Deduplication module, carries out deduplication process for the history identification symbol by storing to described identifier.
17. devices according to claim 16, is characterized in that, described deduplication module, comprising:
Identifier resolution unit, for resolving described identifier, obtains at least n kind unique identification corresponding with described client, described unique identification has m kind, m>n, and when m is odd number, n=(m+1)/2, when m is even number, n=m/2+1;
Whether unique identification detecting unit, include and any one the consistent unique identification in described at least n kind unique identification during the history identification for detecting storage accords with, the identifier of described history identification symbol for storing before this;
Identifier discarding unit, if include and any one the consistent unique identification in described at least n kind unique identification for described history identification symbol, then abandons described identifier.
The statistic device of 18. 1 kinds of client numbers of users, is characterized in that, described device comprises:
Identifier generating module, for according with by identifier code generating identification;
Identifier encrypting module, obtains encrypted identifier for encrypting described identifier;
Identifier sending module, for described encrypted identifier is sent to server, described server is used for the number of users according to described encrypted identifier statistics client.
19. devices according to claim 18, is characterized in that, described identifier generating module, comprising:
Generating mode acquiring unit, for being put in order by the identifier code acquisition at least n kind unique identification corresponding with active client and described at least n kind uniquely identified, described unique identification has m kind, 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 with according to described at least n kind unique identification and the described generating identification that puts in order.
20. devices according to claim 18, is characterized in that, described identifier sending module, comprising:
Redundant information generation unit, for generating redundant information according to preset algorithm, described preset algorithm is the algorithm of making an appointment with server;
Redundant information extra cell, before or after being attached to described encrypted identifier by described redundant information;
Identifier transmitting element, for being sent to described server by described redundant information together with described encrypted identifier.
21. devices according to claim 20, is characterized in that,
Described redundant information generation unit, for taking the product of at least one bit value preset in described encrypted identifier and described identifier code as the length of described redundant information, the content of redundant information described in stochastic generation, obtains described redundant information.
22. devices according to claim 18, is characterized in that, described device also comprises:
Statistics request sending module, for sending statistics request to server;
Identifier code receiver module, for receiving the identifier code that described server sends.
The statistical system of 23. 1 kinds of client numbers of users, is characterized in that, described system comprises: server and client side;
Described server comprises the arbitrary described device of claim 12 to 17;
Described client comprises the arbitrary described device of claim 18 to 22.
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 true CN104639394A (en) | 2015-05-20 |
CN104639394B 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) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104980320A (en) * | 2015-07-29 | 2015-10-14 | 广东欧珀移动通信有限公司 | Method, device and system for counting number of used clients |
CN105959729A (en) * | 2016-06-29 | 2016-09-21 | 武汉斗鱼网络科技有限公司 | Method and system for carrying out statistics on online user number in live broadcast platform |
CN109302678A (en) * | 2018-11-14 | 2019-02-01 | 浙江每日互动网络科技股份有限公司 | The method for carrying out early warning according to information of mobile terminal in address fence and fence |
WO2019136847A1 (en) * | 2018-01-09 | 2019-07-18 | 武汉斗鱼网络科技有限公司 | Method, device and system for calculating popularity of live broadcast room, and storage medium |
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 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104980320A (en) * | 2015-07-29 | 2015-10-14 | 广东欧珀移动通信有限公司 | Method, device and system for counting number of used clients |
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 |
WO2019136847A1 (en) * | 2018-01-09 | 2019-07-18 | 武汉斗鱼网络科技有限公司 | Method, device and system for calculating popularity of live broadcast room, and storage medium |
CN109302678A (en) * | 2018-11-14 | 2019-02-01 | 浙江每日互动网络科技股份有限公司 | The method for carrying out early warning according to information of mobile terminal in address fence and fence |
CN109302678B (en) * | 2018-11-14 | 2020-12-29 | 每日互动股份有限公司 | Method for early warning according to information of mobile terminals in address fence and electronic fence |
Also Published As
Publication number | Publication date |
---|---|
CN104639394B (en) | 2017-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10187855B2 (en) | Message processing method and apparatus | |
CN104142862B (en) | The overload protection method of server and device | |
CN104821937A (en) | Token acquisition method, device and system | |
CN103345602B (en) | A kind of client-side code integrality detection, device and system | |
CN104836664A (en) | Method for executing business processing, device for executing business processing and system for executing business processing | |
CN104580167A (en) | Data transmission method, device and system | |
CN103701926A (en) | Method, device and system for obtaining fault reason information | |
CN104376353A (en) | Two-dimension code generating method, terminal and server and two-dimension code reading method, terminal and server | |
CN105491067A (en) | Key-based business security verification method and device | |
CN103731810A (en) | Access point sharing method and device | |
CN104618217A (en) | Method, terminal, server and system for sharing resource | |
CN104967601A (en) | Data processing method and apparatus | |
CN105024984A (en) | Permission setting method, apparatus and system | |
CN104852885A (en) | Method, device and system for verifying verification code | |
CN104954126A (en) | Sensitive operation verification method, device and system | |
CN104598263A (en) | Application program operation method and configuration file generating method and device | |
CN104993961A (en) | Equipment control methods, devices and system | |
CN104935955A (en) | Live video stream transmission method, device and system | |
CN103678605A (en) | Information transmission method and device and terminal device | |
CN104901991A (en) | Methods, devices and system for transferring virtual resource | |
CN104954233A (en) | Information push method, device and system | |
CN104580177A (en) | Resource supplying method, device and system | |
CN104735657A (en) | Security terminal verification method, device and system and wireless access point binding method | |
CN104901806A (en) | Method, device and system for processing virtual resources | |
CN104852802A (en) | Identity verification method, equipment, and system |
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 | ||
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. |