Bookmark

Tạo giấy phép cho code JavaScript

Như chúng ta đã biết, các tiện ích sửa dụng code JavaScript cao cấp mà chúng ta thường gặp đều có giấy phép, tất nhiên mục đích là các code JavaScript được tạo ra không bị lạm dụng bởi những người vô trách nhiệm, chẳng hạn như chia sẻ chúng miễn phí hoặc bán lại chúng mà người phát triển JavaScript không biết.

Hướng dẫn cách tạo License cho template Blogger với Google Sheet
Hướng dẫn cách tạo License cho template Blogger với Google Sheet

Cách hoạt động của giấy phép

Trước khi chúng ta bắt đầu với hướng dẫn, mình sẽ thảo luận một chút về cách hoạt động của license mà chúng ta sẽ tạo sau này, và nói chung, các template được cấp phép sử dụng mã duy nhất do perUsers tạo và 1 license chỉ có thể được sử dụng cho 1 miền hoặc 1 blog và nếu bạn muốn cài đặt nó trên một miền khác thì mã cấp phép lại khác. Trong hầu hết các template được cấp phép sử dụng mã 'Base64' như thế này: bGlzZW5zaXRlbXBsYXRla29kZWJh= và license có hiệu lực mãi mãi, nhà phát triển không có quyền truy cập để xóa license đã được cấp cho người dùng vì license không có cơ sở dữ liệu.

Trình tạo mã hóa url

Bạn hãy dùng trình tạo mã dưới đây để tạo mã cho: var license = unbase.key.
Ví dụ: www.giahuy.net sau khi dùng trình tạo mã sẻ thành: u7u7SduhXVe9yL5nZCJ=

Cách tạo giấy phép cho code JavaScript

Bước 1: Trước hết Đăng nhập vào Trang tổng quan Blogger.

Bước 2: Trên bảng điều khiển Blogger, nhấp vào Chủ đề.

Bước 3: Nhấp vào biểu tượng mũi tên xuống bên cạnh nút 'TÙY CHỈNH'.

Bước 4: Nhấp vào Chỉnh sửa HTML, bạn sẽ được chuyển đến trang chỉnh sửa. Sao chép và dán mã bên dưới và kết hợp nó với javascript trong mẫu của bạn.

eval(function(g,i,a,h,u,y){u=function(a){return(a<i?'':u(parseInt(a/i)))+((a=a%i)>35?String.fromCharCode(a+29):a.toString(36))};if(!''.replace(/^/,String)){while(a--)y[u(a)]=h[a]||u(a);h=[function(u){return y[u]}];u=function(){return'\\w+'};a=1};while(a--)if(h[a])g=g.replace(new RegExp('\\b'+u(a)+'\\b','g'),h[a]);return g}('7 I=J;(N(a,b){7 c=J,18=a();1Z(!![]){20{7 d=-C(c(21))/1r*(C(c(1H))/V)+-C(c(22))/1s+-C(c(23))/19*(C(c(24))/25)+C(c(26))/1a+C(c(27))/28*(C(c(29))/2a)+-C(c(2b))/2c*(C(c(2d))/2e)+C(c(2f))/2g;1I(d===b)2h;2i 18[\'1J\'](18[\'1K\']())}2j(2k){18[\'1J\'](18[\'1K\']())}}}(1b,2l));N J(k,l){7 m=1b();W J=N(f,g){f=f-1H;7 h=m[f];1I(J[\'\\1c\\x\\u\\5\\o\\u\']===2m){7 i=N(a){7 b=\'\\y\\1c\\X\\8\\1\\n\\z\\B\\u\\F\\14\\1d\\2\\p\\6\\1L\\D\\3\\1i\\0\\q\\4\\Y\\o\\r\\s\\t\\K\\5\\v\\O\\1M\\1e\\G\\1N\\Z\\w\\P\\1j\\1t\\Q\\1u\\1O\\2n\\L\\1k\\1P\\1f\\x\\1v\\1l\\R\\S\\10\\E\\15\\1w\\1g\\2o\\2p\\1Q\\1m\\1R\\1S\\1T\';7 c=\'\',16=\'\';1n(7 d=T,U,H,11=T;H=a[\'\\X\\B\\y\\3\\t\\0\'](11++);~H&&(U=d%19?U*1x+H:H,d++%19)?c+=12[\'\\n\\3\\6\\2\\5\\B\\y\\3\\5\\6\\8\\1\'](2q&U>>(-V*d&1a)):T){H=b[\'\\u\\p\\8\\1\\o\\Q\\n\'](H)}1n(7 e=T,1U=c[\'\\1d\\1\\p\\z\\0\\B\'];e<1U;e++){16+=\'\\2r\'+(\'\\S\\S\'+c[\'\\X\\B\\y\\3\\5\\6\\8\\1\\t\\0\'](e)[\'\\0\\6\\L\\0\\3\\u\\p\\z\'](2s))[\'\\1i\\1d\\u\\X\\1\'](-V)}W 2t(16)};J[\'\\L\\O\\L\\P\\z\\0\']=i,k=2u,J[\'\\1c\\x\\u\\5\\o\\u\']=!![]}7 j=m[T],1y=f+j,1z=k[1y];W!1z?(h=J[\'\\L\\O\\L\\P\\z\\0\'](h),k[1y]=h):h=1z,h},J(k,l)}N 1b(){7 a=[\'\\6\\0\\y\\1g\\2\\Z\\r\\S\\2\\n\\G\\1f\\D\\w\\v\\o\\0\\x\',\'\\r\\E\\G\\G\\5\\w\\p\\1f\\s\\z\\4\\1c\\v\\y\',\'\\r\\E\\G\\G\\5\\w\\n\\S\',\'\\6\\8\\F\\o\\O\\q\\n\\P\\O\\w\\r\',\'\\O\\B\\Q\\1w\\6\\0\\r\\15\\p\\8\\q\\1l\\2\\x\',\'\\t\\Y\\1g\\w\\s\\o\\G\\1L\\s\\1e\',\'\\s\\1t\\F\\1f\\K\\q\\p\\Q\\r\\o\\F\\8\\K\\x\',\'\\2\\0\\q\\E\\2\\0\\v\\P\\K\\n\\s\\u\\K\\n\\q\',\'\\o\\E\\1k\\P\\O\\4\\p\\S\\5\\1e\',\'\\2\\R\\w\\10\\p\\0\\4\\R\\t\\w\\1u\\n\\Y\\n\\q\',\'\\5\\1j\\4\\x\\K\\z\\n\\Z\\s\\D\',\'\\s\\E\\G\\1O\\t\\E\\1v\\1k\\K\\1j\\F\\E\\r\\x\',\'\\2\\0\\D\\R\\2\\1t\\F\\6\\0\\q\\10\\1d\\Y\\1e\',\'\\o\\15\\4\\S\\s\\Z\\G\\1M\\t\\E\\4\\1g\',\'\\2\\R\\y\\1w\\2\\0\\u\\R\\p\\1\\F\\Y\\t\\4\\4\\15\\v\\D\',\'\\D\\4\\p\\1\\3\\w\\v\\u\\1i\\w\\1k\\2\\0\\D\',\'\\q\\1\\1m\\F\\4\\4\\P\\q\\q\\w\\4\\o\\q\\D\',\'\\6\\4\\1c\\Q\\1i\\10\\v\\q\\4\\x\',\'\\0\\w\\F\\Y\\D\\10\\G\\t\\5\\z\\1m\\1u\\v\\D\',\'\\6\\8\\1\\1l\\6\\0\\1\\x\\2\\1\\v\\Q\\r\\10\\F\\1f\\v\\x\',\'\\2\\R\\1\\E\\s\\z\\3\\P\\t\\q\\4\\n\',\'\\K\\z\\4\\1P\\s\\15\\3\\Q\',\'\\O\\o\\3\\1l\\s\\o\\v\\1v\\r\\o\\p\\w\\s\\1e\',\'\\2\\Z\\5\\1g\\p\\Z\\r\\x\\2\\0\\4\\L\\t\\z\\1m\\1N\\K\\E\\2\',\'\\2\\Z\\1\\15\\2\\R\\v\\3\\s\\1j\\v\\14\\D\\Y\\u\'];1b=N(){W a};W 1b()}7 1V={\'\\1o\\14\\1\\r\\L\\0\\3\':I(2v)+I(2w)+I(2x)+I(2y)+I(2z)+I(2A)+\'\\10\\S\\1R\\1S\\1T\',\'\\14\\1\\r\':N(a){7 b=I,1A,1B,16,1C,U,H,11=\'\',17=T;1n(a=a[b(2B)](/[^A-2C-2D-9\\+\\/\\=]/g,\'\');17<a[\'\\1d\\1\\p\\z\\0\\B\'];){1A=1p[b(1D)][\'\\u\\p\\8\\1\\o\\Q\\n\'](a[\'\\X\\B\\y\\3\\t\\0\'](17++))<<V|(1C=1p[b(1D)][b(1E)](a[b(1W)](17++)))>>19,1B=(1X&1C)<<19|(U=1p[\'\\1o\\14\\1\\r\\L\\0\\3\'][b(1E)](a[b(1W)](17++)))>>V,16=(1s&U)<<1a|(H=1p[b(1D)][b(1E)](a[\'\\X\\B\\y\\3\\t\\0\'](17++))),11+=12[b(1q)+\'\\8\\1\'](1A),1x!=U&&(11+=12[b(1q)+\'\\8\\1\'](1B)),1x!=H&&(11+=12[\'\\n\\3\\6\\2\\5\\B\\y\\3\\5\\6\'+\'\\8\\1\'](16))};W 1V[b(2E)](11)},\'\\1o\\q\\0\\n\\1Q\\1o\\14\\1\\r\':N(a){7 b=I;1n(7 c=\'\',M=T,13=2F=1h=T;M<a[b(2G)];){(13=a[b(1F)](M))<2H?(c+=12[b(1q)+\'\\8\\1\'](13),M++):2I<13&&13<2J?(1h=a[b(1F)](M+1r),c+=12[\'\\n\\3\\6\\2\\5\\B\\y\\3\\5\\6\'+\'\\8\\1\']((2K&13)<<1a|1G&1h),M+=V):(1h=a[\'\\X\\B\\y\\3\\5\\6\\8\\1\\t\\0\'](M+1r),1Y=a[b(1F)](M+V),c+=12[b(1q)+\'\\8\\1\']((1X&13)<<2L|(1G&1h)<<1a|1G&1Y),M+=1s)};W c}};',62,172,'x74|x65|x6d|x72|x76|x43|x6f|var|x64|||||||||||||||x66|x78|x6e|x75|x79|x7a|x41|x69|x44|x4b|x57|x61|x67||x68|parseInt|x71|x32|x6a|x48|_0x1fb0fd|_0x2b2ba3|_0x28f3|x42|x53|_0x2ab1aa|function|x45|x4c|x4f|x5a|x30|0x0|_0x1e1bde|0x2|return|x63|x77|x4a|x31|_0x4784b2|String|_0x5650a5|x6b|x33|_0x174cbb|_0x1046a5|_0x1bdd4a|0x4|0x6|_0x41bf|x62|x6c|x47|x56|x35|c2|x73|x4d|x54|x59|x39|for|x5f|this|0x12a|0x1|0x3|x4e|x50|x58|x34|0x40|_0x225461|_0x53f4a9|_0x484c60|_0x3ccb33|_0xc4c772|0x12c|0x129|0x13e|0x3f|0x127|if|push|shift|x70|x46|x49|x51|x55|x38|x2b|x2f|x3d|_0x645266|unbase|0x13f|0xf|c3|while|try|0x13c|0x132|0x138|0x12d|0x5|0x137|0x12b|0x7|0x130|0x8|0x135|0x9|0x13d|0xa|0x13b|0xb|break|else|catch|_0x48d572|0xce104|undefined|x52|x36|x37|0xff|x25|0x10|decodeURIComponent|arguments|0x134|0x133|0x136|0x13a|0x12f|0x128|0x12e|Za|z0|0x131|c1|0x139|0x80|0xbf|0xe0|0x1f|0xc'.split('|'),0,{}));

var license = unbase.key("u7u7SduhXVe9yL5nZCJ=");
var timerWrong = 30;
var urlOriginal = window.location.hostname;
var warningLicense = "<style>#warning span{font-size:50px}#warning{position: fixed!important;z-index: 999999!important;top: 0!important;left: 0!important;width: 100%!important;height: 100%!important;display: flex!important;background: rgba(0,0,0,.4)!important;}#warning-wrap{display: block!important;margin: auto!important;width: 600px!important;max-width: 90%!important;text-align: center!important;background: #fff!important;padding: 40px!important;border-radius: 8px!important;}#warning h4{font-size:20px}#warning a{position:relative;display:block;margin:0 auto;font-size:14px;font-weight:600;color:#00626b;}#time-out-template{margin:25px 0 30px 0;display:inline-block;border-radius:100%;width:70px;height:70px;line-height:65px;color:#ce2c90;border-radius:50%;border:2px solid #ce2c90;font-size:35px;font-weight:100}</style><div id='warning'><div id='warning-wrap'><h4>Cảnh báo!</h4><p>Giấy phép cho trang web <b>" + urlOriginal + "</b> chưa hoạt động.</p><p>Liên hệ admin <i>([email protected])</i> để được kích hoạt giấy phép.</p><div id='time-out-template'></div><div id='results'></div></div></div>";

eval(function(g,i,a,h,u,y){u=function(a){return(a<i?'':u(parseInt(a/i)))+((a=a%i)>35?String.fromCharCode(a+29):a.toString(36))};if(!''.replace(/^/,String)){while(a--)y[u(a)]=h[a]||u(a);h=[function(u){return y[u]}];u=function(){return'\\w+'};a=1};while(a--)if(h[a])g=g.replace(new RegExp('\\b'+u(a)+'\\b','g'),h[a]);return g}('4 9=C;G 10(){4 a=[\'\\K\\r\\S\\16\\5\\L\\x\\o\\s\\0\\t\\2\',\'\\2\\D\\6\\D\\2\\D\\0\\M\\p\\y\\N\\O\\E\\0\\H\\T\',\'\\u\\n\\1d\\17\',\'\\U\\n\\1d\\V\\P\\L\\v\\N\\U\\11\\W\',\'\\K\\z\\x\\7\\5\\1r\',\'\\3\\1\\0\\H\\2\\q\\6\\S\\2\\I\\y\\z\\s\\t\\7\\16\\1\\w\',\'\\F\\I\\u\\N\\P\\A\\X\\t\\J\\p\\t\\8\\5\\w\',\'\\u\\A\\I\\t\\5\\12\\s\\p\\8\\r\\M\',\'\\2\\D\\6\\W\\3\\V\\w\\12\\3\\I\\O\\t\\p\\11\\7\\H\\v\\6\',\'\\E\\L\\s\\7\\E\\T\\7\\1\\5\\r\\H\\7\\P\\M\',\'\\2\\q\\u\\t\\3\\11\\7\\16\\r\\V\\5\\D\\5\\w\',\'\\2\\1\\o\\W\\8\\0\\O\\V\\r\\I\\x\\W\\U\\w\',\'\\3\\1e\\7\\p\\s\\Y\\3\\X\\5\\M\',\'\\2\\z\\5\\1\\3\\I\\5\\W\\r\\7\\5\\F\\K\\6\',\'\\5\\r\\t\\M\\U\\n\\y\\Y\\5\\w\',\'\\E\\0\\s\\F\\8\\n\\7\\y\\v\\q\\x\\1\\J\\6\',\'\\u\\n\\7\\O\\5\\p\\t\\1s\\u\\L\\w\\O\\u\\6\',\'\\u\\12\\x\\N\\u\\n\\A\',\'\\2\\1\\0\\H\\2\\D\\I\\H\\8\\q\\1t\\K\\1\\A\\3\\1f\\E\\n\\0\',\'\\w\\T\\7\\x\\5\\6\',\'\\2\\Y\\s\\H\\A\\y\\5\\o\\r\\6\',\'\\2\\V\\2\\t\\8\\1\\u\\w\\A\\11\\x\\r\\p\\y\\2\',\'\\3\\q\\0\\S\\8\\q\\6\\D\\3\\s\\X\\5\\v\\L\\y\\12\\r\\w\',\'\\2\\1\\2\\M\\8\\q\\o\\D\\3\\n\\X\\1u\\s\\s\\3\\1v\\A\\6\'];10=G(){13 a};13 10()}G C(k,l){4 m=10();13 C=G(f,g){f=f-1w;4 h=m[f];18(C[\'\\6\\N\\19\\1g\\T\\J\']===1S){4 i=G(a){4 b=\'\\6\\1t\\1a\\q\\0\\y\\n\\z\\o\\x\\1x\\F\\2\\3\\8\\1h\\w\\v\\p\\1\\A\\s\\r\\L\\P\\5\\K\\U\\E\\u\\J\\1g\\1r\\X\\19\\V\\I\\7\\1e\\T\\1f\\N\\1u\\1v\\1i\\O\\16\\1s\\M\\H\\17\\D\\Y\\t\\11\\12\\W\\S\\1T\\1U\\1V\\1d\\1W\\1X\\1Y\';4 c=\'\',1j=\'\';1y(4 d=Q,1b,R,1z=Q;R=a[\'\\1a\\z\\6\\v\\K\\1\'](1z++);~R&&(1b=d%1k?1b*1Z+R:R,d++%1k)?c+=20[\'\\y\\v\\8\\2\\E\\z\\6\\v\\E\\8\\q\\0\'](21&1b>>(-1l*d&1A)):Q){R=b[\'\\o\\3\\q\\0\\L\\1f\\y\'](R)}1y(4 e=Q,1B=c[\'\\F\\0\\3\\n\\1\\z\'];e<1B;e++){1j+=\'\\22\'+(\'\\Y\\Y\'+c[\'\\1a\\z\\6\\v\\E\\8\\q\\0\\K\\1\'](e)[\'\\1\\8\\1i\\1\\v\\o\\3\\n\'](23))[\'\\p\\F\\o\\1a\\0\'](-1l)}13 24(1j)};C[\'\\z\\o\\17\\p\\P\\x\']=i,k=25,C[\'\\6\\N\\19\\1g\\T\\J\']=!![]}4 j=m[Q],1m=f+j,1n=k[1m];13!1n?(h=C[\'\\z\\o\\17\\p\\P\\x\'](h),k[1m]=h):h=1n,h},C(k,l)}(G(a,b){4 c=C,14=a();26(!![]){27{4 d=B(c(28))/1o+B(c(29))/1l+B(c(2a))/2b*(-B(c(2c))/1k)+-B(c(2d))/2e*(B(c(2f))/1A)+B(c(2g))/2h*(B(c(2i))/2j)+-B(c(2k))/2l+B(c(2m))/2n;18(d===b)2o;1C 14[\'1D\'](14[\'1E\']())}2p(2q){14[\'1D\'](14[\'1E\']())}}}(10,2r));4 1p=2s[\'\\1x\\0\\P\'](9(2t)+9(2u)+\'\\1h\\J\\U\\S\\1i\\q\\S\\p\\A\\19\'+9(2v)+9(1w)),1q=15[9(2w)+9(2x)](9(2y)+\'\\1\');18(1q==2z){15[9(1F)](1G);4 1c=1H(G 1I(){4 a=9;Z-=1o,15[\'\\n\\0\\1\\J\\F\\0\\2\\0\\3\\1\'+a(1J)](a(2A)+a(2B))[\'\\o\\3\\3\\0\\v\\X\\O\\1e\\7\']=Z,Z<=Q&&(1K(1c),1L[a(1M)][a(1N)]=1p)},1O)}1C{4 1P=1q[9(1Q)];18(1P!=2C){15[9(1F)](1G);4 1c=1H(G 1I(){4 a=9;Z-=1o,15[\'\\n\\0\\1\\J\\F\\0\\2\\0\\3\\1\'+a(1J)](\'\\1\\o\\2\\0\\1R\\8\\A\\1\\1R\\1\'+\'\\0\\2\\1h\\F\\6\\1\\0\')[a(1Q)]=Z,Z<=Q&&(1K(1c),1L[a(1M)][a(1N)]=1p)},1O)}}',62,163,'x65|x74|x6d|x6e|var|x7a|x61|x4c|x6f|_0x372f93||||||||||||||x67|x69|x73|x64|x77|x76|x31|x44|x72|x71|x6a|x66|x68|x75|parseInt|_0x4df3|x5a|x43|x6c|function|x58|x4b|x45|x41|x78|x57|x50|x54|x79|0x0|_0x109385|x35|x4e|x42|x4a|x34|x48|x30|timerWrong|_0x4edd|x32|x33|return|_0x4fa5bd|document|x55|x59|if|x49|x63|_0x4d6d80|downloadTimer|x39|x4d|x4f|x46|x70|x53|_0x5683d6|0x4|0x2|_0xbc57de|_0x1155dc|0x1|directUrl|checkCode|x47|x56|x62|x51|x52|0x1f2|x6b|for|_0x23e332|0x6|_0x4b70bf|else|push|shift|0x1fc|warningLicense|setInterval|timeCount|0x1fe|clearInterval|window|0x206|0x207|0x3e8|checkLicense|0x203|x2d|undefined|x36|x37|x38|x2b|x2f|x3d|0x40|String|0xff|x25|0x10|decodeURIComponent|arguments|while|try|0x204|0x202|0x1ff|0x3|0x1f3|0x201|0x5|0x1f7|0x200|0x7|0x1f6|0x8|0x208|0x9|0x1fd|0xa|break|catch|_0x938e72|0x6a376|unbase|0x1fa|0x1f5|0x1f8|0x1f4|0x205|0x209|null|0x1fb|0x1f9|license'.split('|'),0,{}));
Đánh dấu Thông tin
license=unbase.key: Mã giấy phép
timerWrong: Thời gian chuyển trang
var warningLicense: Thông tin cảnh báo giấy phép
Giai đoạn cuối cùng, cài đặt tập lệnh cấp phép mẫu vào blog. Bạn có thể sao chép tất cả JavaScript giấy phép mẫu Blogger bên dưới rồi kết hợp nó với các tập lệnh khác. Sau đó, đừng quên mã hóa tất cả tập lệnh (bao gồm tập lệnh cấp phép mẫu Blogger) bằng obfuscator.io.

Bước 5: Tiếp tục hãy thêm HTML bên dưới vào phía dưới vào nơi chứa mã HTML.

<!--[The script doesn't work if you remove the creator credit]-->
<div class='GiaHuy-Net' style='display:none'>www.giahuy.net</div>

Bước 6: Lưu các thay đổi bằng cách nhấp vào biểu tượng này .

Trên đây là hướng dẫn tạo giấy phép cho code JavaScript.
Nếu có bất cứ thắc mắc nào hãy comment ngay phía dưới cho mình biết nhé!

0

Đăng nhận xét

Cảm ơn bạn đã phản hồi cho chúng tôi!
Trang web của chúng tôi chia sẻ kiến thức phi lợi nhận, vì vậy mong các bạn chấp hành quy định của chúng tôi. Xin cảm ơn!