1. A system, comprising: one or more processors configured to: receive a page request from a client device; in response to receipt of the page request, generate an encryption token; include the encryption token into webpage data associated with the page request; send the webpage data including the encryption token; receive a scripting resource request, wherein the scripting resource request includes the encryption token; in response to receiving the scripting resource request, randomly generate an encryption key and a decryption key; randomly select an encryption technique from a preset encryption technique library, wherein the encryption key is added into the selected encryption technique; include computer code implementing the selected encryption technique that includes the encryption key into a set of scripting resource source data; analyze the set of scripting resource source data to determine a plurality of semantic units from the set of scripting resource source data; determine a tree-structured source data based at least in part on mapping values of the plurality of semantic units to respective ones of a plurality of semantic structures; select an obfuscation strategy to apply to the tree-structured source data, wherein to select the obfuscation strategy comprises to dynamically select a plurality of obfuscation techniques to meet a desired level of obfuscation associated with the set of scripting resource source data according to a plurality of degrees of obfuscation corresponding to respective ones of the plurality of obfuscation techniques, wherein to select the obfuscation strategy comprises to select a sequence in which the plurality of obfuscation techniques is to be applied; determine an obfuscated tree-structured source data based at least in part by applying the selected obfuscation strategy to the tree-structured source data; convert the obfuscated tree-structured source data into a set of obfuscated scripting resource source data; and send the set of obfuscated scripting resource source data from a server to the client device, wherein the set of obfuscated scripting resource source data is configured to be executed at the client device to yield a first set of results, wherein the first set of results is equal to a second set of results that would be yielded if the set of scripting resource source data had been executed at the client device; and one or more memories coupled to the one or more processors configured to provide the one or more processors with instructions.