IP Library › Granted Patent US 10,621,179
Granted Patent B2
US 10,621,179 · App. 15/653,025 · Granted Apr 14, 2020

Method for deobfuscation of customer clickstream telemetry data

Inventors: Vasil Chomakov (Sofia, BG); Stanislav Hadjiiski (Sofia, BG)
Assignee: VMWARE, INC.
G06F16/24568G06F16/137G06F16/258G06F16/90344G06Q30/0201
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,621,179
App. No.
15/653,025
Granted
Apr 14, 2020
Kind
B2
Abstract

One or more embodiments provide techniques for analyzing telemetry data. A telemetry agent collects streams of raw telemetry data from the web client. The telemetry data includes obfuscated strings. For each obfuscated string, a mapping program references a database associating the obfuscated string to attributes of a properties file of the web client. The attributes include at least the deobfuscated string corresponding to the obfuscated string. An analytics agent translates the streams of raw telemetry data to streams of modified telemetry data. The streams of modified telemetry data include deobfuscated string from the attributes corresponding to the properties file. The analytics agent analyzes the streams of modified telemetry data.

Claims (53)

1. A method of analyzing telemetry data of a web client, comprising:

collecting streams of raw telemetry data from the web client, wherein the telemetry data comprises obfuscated strings, the obfuscated strings comprising at least one user-sensitive string;

for at least one of the obfuscated strings, referencing a database associating the obfuscated string to attributes of a properties file of the web client, wherein the attributes include at least a deobfuscated string corresponding to the obfuscated string;

translating the streams of raw telemetry data to streams of modified telemetry data, wherein the modified telemetry data comprises the deobfuscated string from the attributes corresponding to the properties file and obfuscation of the at least one user-sensitive string is maintained with the deobfuscated string in modified telemetry data; and

analyzing the streams of modified telemetry data.

2. The method of analyzing telemetry data of the web client of claim 1 , wherein collecting streams of raw telemetry data from the web client, wherein the telemetry data comprises obfuscated strings, comprises:

collecting another streams of raw telemetry data of a web client plugin for the web client.

3. The method of analyzing telemetry data of the web client of claim 2 , wherein for each obfuscated string, referencing a database associating the obfuscated string to attributes in a properties file of the web client, wherein the attributes includes at least the deobfuscated string corresponding to the obfuscated string, comprises:

for each obfuscated string associated with web client plugin, referencing another database associating the obfuscated string to attributes in a properties file of the web client plugin.

4. The method of analyzing telemetry data of the web client of claim 3 , wherein translating the streams of raw telemetry data to streams of modified telemetry data, wherein the modified telemetry data comprises the deobfuscated string from the attributes corresponding to the properties file, comprises:

translating the other streams of raw telemetry data associated with web client plugin to another streams of modified telemetry data, wherein the other streams of modified telemetry data comprises the deobfuscated string from the attributes corresponding to the properties file of the web client plugin.

5. The method of claim 1 , wherein attributes of a properties file further includes a locale of the obfuscated string.

6. The method of analyzing telemetry data of the web client of claim 1 , wherein the database includes a plurality of key/value entries, wherein a key refers to an obfuscated string and a value refers to attributes of a properties file.

7. The method of analyzing telemetry data of the web client of claim 1 , wherein the database is generated through a process, comprising:

scanning the properties files of the web client;

extracting a deobfuscated string associated with each properties file;

applying a hashing algorithm to the deobfuscated string to generate an obfuscated string;

associating each obfuscated string with at least its respective deobfuscated string from a properties file; and

storing the association in the database.

8. A non-transitory computer readable medium having instructions stored thereon that when executed by a processor cause the processor to perform a method of analyzing telemetry data of a web client, comprising:

collecting streams of raw telemetry data from the web client, wherein the telemetry data comprises obfuscated strings, the obfuscated strings comprising at least one user-sensitive string;

for at least one of the obfuscated strings, referencing a database associating the obfuscated string to attributes of a properties file of the web client, wherein the attributes include at least a deobfuscated string corresponding to the obfuscated string;

translating the streams of raw telemetry data to streams of modified telemetry data, wherein the modified telemetry data comprises the deobfuscated string from the attributes corresponding to the properties file and obfuscation of the at least one user-sensitive string is maintained with the deobfuscated string in modified telemetry data; and

analyzing the streams of modified telemetry data.

9. The non-transitory computer readable medium of claim 8 , wherein collecting streams of raw telemetry data from the web client, wherein the telemetry data comprises obfuscated strings, comprises:

collecting another streams of raw telemetry data of a web client plugin for the web client.

10. The non-transitory computer readable medium of claim 9 , wherein for each obfuscated string, referencing a database associating the obfuscated string to attributes in a properties file of the web client, wherein the attributes includes at least the deobfuscated string corresponding to the obfuscated string, comprises:

for each obfuscated string associated with web client plugin, referencing another database associating the obfuscated string to attributes of a properties file of the web client plugin.

11. The non-transitory computer readable medium of claim 10 , wherein translating the streams of raw telemetry data to streams of modified telemetry data, wherein the modified telemetry data comprises the deobfuscated string from the attributes corresponding to the properties files, comprises:

translating the other streams of raw telemetry data associated with web client plugin to another streams of modified telemetry data, wherein the other streams of modified telemetry data comprises the deobfuscated string from the attributes corresponding to the properties file of the web client plugin.

12. The non-transitory computer readable medium of claim 8 , wherein attributes of a properties file further includes a locale of the obfuscated string.

13. The non-transitory computer readable medium of claim 8 , wherein the database includes a plurality of key/value entries, wherein a key refers to an obfuscated string and a value refers to attributes of a properties file.

14. The non-transitory computer readable medium of claim 8 , wherein the database is generated through a process, comprising:

scanning the properties files of the web client;

extracting an un-obfuscated string associated with each properties file;

applying a hashing algorithm to the un-obfuscated string to generate an obfuscated string;

associating each obfuscated string with at least its respective deobfuscated string from properties file; and

storing the association in the database.

15. A computer system, comprising:

a processor; and

a memory storing program code, which, when executed on the processor, performs a method of analyzing telemetry data of a web client, comprising:

collecting streams of raw telemetry data from the web client, wherein the telemetry data comprises obfuscated strings, the obfuscated strings comprising at least one user-sensitive string;

for at least one of the obfuscated strings, referencing a database associating the obfuscated string to attributes of a properties file of the web client, wherein the attributes include at least a deobfuscated string corresponding to the obfuscated string;

translating the streams of raw telemetry data to streams of modified telemetry data, wherein the modified telemetry data comprises the deobfuscated string from the attributes corresponding to the properties file and obfuscation of the at least one user-sensitive string is maintained with the deobfuscated string in modified telemetry data; and

analyzing the streams of modified telemetry data.

16. The computer system of claim 15 , wherein collecting streams of raw telemetry data from the web client, wherein the telemetry data comprises obfuscated strings, comprises:

collecting another streams of raw telemetry data of a web client plugin for the web client.

17. The computer system of claim 16 , wherein for each obfuscated string, referencing a database associating the obfuscated string to attributes in a properties file of the web client, wherein the attributes includes at least the deobfuscated string corresponding to the obfuscated string, comprises:

for each obfuscated string associated with web client plugin, referencing another database associating the obfuscated string to attributes of a properties file of the web client plugin.

18. The computer system of claim 17 , wherein translating the streams of raw telemetry data to streams of modified telemetry data, wherein the modified telemetry data comprises the deobfuscated string from the attributes corresponding to the properties files, comprises:

translating the other streams of raw telemetry data associated with web client plugin to another streams of modified telemetry data, wherein the other streams of modified telemetry data comprises the deobfuscated string from the attributes corresponding to the properties file of the web client plugin.

19. The computer system of claim 16 , wherein the attributes of the properties file further includes a locale of the obfuscated string.

20. The computer system of claim 15 , wherein the database includes a plurality of key/value entries, wherein a key refers to an obfuscated string and a value refers to attributes of a properties file.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 7, 2017
From: CHOMAKOV, VASIL; HADJIISKI, STANISLAV
To: VMWARE, INC.
Reel/Frame 044048/0973 →
Continuity (1)
Related Publication 20190026341A1 · Jan 24, 2019