ব্রাউজারগুলির মাধ্যমে সোর্স কোডটি সোর্স বৈশিষ্ট্য দেখুন যখন কোনও ওয়েবপৃষ্ঠার এইচটিএমএল থেকে জাভাস্ক্রিপ্ট কোডটি আড়াল করা সম্ভব?
আমি জানি কোডটি অবলম্বন করা সম্ভব, তবে আমি এটিকে ভিউ উত্স বৈশিষ্ট্য থেকে গোপন করা পছন্দ করব ।
ব্রাউজারগুলির মাধ্যমে সোর্স কোডটি সোর্স বৈশিষ্ট্য দেখুন যখন কোনও ওয়েবপৃষ্ঠার এইচটিএমএল থেকে জাভাস্ক্রিপ্ট কোডটি আড়াল করা সম্ভব?
আমি জানি কোডটি অবলম্বন করা সম্ভব, তবে আমি এটিকে ভিউ উত্স বৈশিষ্ট্য থেকে গোপন করা পছন্দ করব ।
উত্তর:
আমি নিশ্চিত নই যে অন্য কেউ আসলে আপনার প্রশ্নকে সরাসরি সম্বোধন করেছে যা ব্রাউজারের উত্স উত্স কমান্ড থেকে কোডটি দেখা হচ্ছে।
অন্যরা যেমন বলেছে, কোনও নির্ধারিত দর্শকের কাছ থেকে জাভাস্ক্রিপ্ট চালানোর উদ্দেশ্যে কোনও উপায় নেই। যদি ব্রাউজার এটি চালাতে পারে তবে যে কোনও নির্ধারিত ব্যক্তি এটি দেখতেও / চালাতে পারবেন।
তবে, আপনি যদি নিজের জাভাস্ক্রিপ্টটি কোনও বহিরাগত জাভাস্ক্রিপ্ট ফাইলটিতে অন্তর্ভুক্ত করেন তবে:
<script type="text/javascript" src="http://mydomain.com/xxxx.js"></script>
ট্যাগগুলি, তারপরে জাভাস্ক্রিপ্ট কোডটি ভিউ সোর্স কমান্ডের সাথে সাথে তত্ক্ষণাত্ দৃশ্যমান হবে না - কেবল স্ক্রিপ্ট ট্যাগটি সেভাবে দৃশ্যমান হবে। এর অর্থ এই নয় যে কেউ এটি দেখার জন্য কেবলমাত্র বাহ্যিক জাভাস্ক্রিপ্ট ফাইলটি লোড করতে পারে না, তবে আপনি কীভাবে ব্রাউজারের ভিউ সোর্স কমান্ডের বাইরে রাখবেন তা জিজ্ঞাসা করেছিলেন এবং এটি এটি করবে।
যদি আপনি উত্সটি দেখার জন্য এটি আরও কাজ করতে চান তবে আপনি নীচের সমস্তগুলি করতেন:
যা যা বলেছিল তার সাথে, আমি মনে করি আপনার পারফরম্যান্স, নির্ভরযোগ্যতা এবং আপনার অ্যাপটিকে দুর্দান্ত করে তোলার দিকে মনোনিবেশ করা উচিত। যদি আপনাকে কিছুটা অ্যালগরিদম রক্ষা করতে হয় তবে এটি সার্ভারে রেখে দিন, তবে এটি ব্যতীত, গোপনীয়তা না রেখে আপনার পক্ষে সেরা হওয়ার বিষয়ে প্রতিযোগিতা করুন। এটি শেষ পর্যন্ত কীভাবে ওয়েবে সাফল্য কাজ করে।
<script>
উত্স উত্স থেকে আরও ভাল রাখবে (এখনও লাইভ ডিওএম এর অধীনে দৃশ্যমান) - এটি সোর্স ভিউতে কেবল "ডান ক্লিক করা" হতে পারে না। <script>
জাভাস্ক্রিপ্ট সম্পাদন করা হয়ে গেলে মূল কোডটি কিছুটা জটিল (তবে অসম্ভব নয়) তৈরি হয়ে গেলে উপাদানটি সরিয়ে ফেলা সম্ভব হতে পারে ... অবশ্যই নেট ট্রাফিক ফায়ারব্যাগে বা অনুরূপ খুব সহজেই প্রদর্শিত হবে ;-)
না, এটা সম্ভব নয়।
আপনি যদি এটি ব্রাউজারে না দেন তবে ব্রাউজারটি এটি নেই।
যদি আপনি তা করেন তবে এটি (বা এটির সাথে সহজেই অনুসরণ করা একটি রেফারেন্স) উত্সটির অংশ গঠন করে।
আমার সমাধানটি শেষ মন্তব্যটি থেকে অনুপ্রাণিত। এটি অদৃশ্য html এর কোড
<script src="http://code.jquery.com/jquery-1.8.2.js"></script>
<script type="text/javascript" src="invisible_debut.js" ></script>
<body>
</body>
অদৃশ্য_দেবট.জেএস এর স্পষ্ট কোডটি হ'ল:
$(document).ready(function () {
var ga = document.createElement("script"); //ga is to remember Google Analytics ;-)
ga.type = 'text/javascript';
ga.src = 'invisible.js';
ga.id = 'invisible';
document.body.appendChild(ga);
$('#invisible').remove();});
লক্ষ্য করুন যে শেষে আমি তৈরি স্ক্রিপ্টটি সরিয়ে দিচ্ছি। অদৃশ্য.জেএস হ'ল:
$(document).ready(function(){
alert('try to find in the source the js script which did this alert!');
document.write('It disappeared, my dear!');});
invisible.js কনসোলে উপস্থিত হয় না, কারণ এটি সরানো হয়েছে এবং কখনও সোর্স কোডে নেই কারণ জাভাস্ক্রিপ্ট দ্বারা নির্মিত।
অদৃশ্য_দেবট.জেএস সম্পর্কিত, আমি এটিকে অবহেলা করেছি, যার অর্থ এটি অদৃশ্য.জেএস এর ইউআরএল খুঁজে পাওয়া খুব জটিল। নিখুঁত নয়, তবে একটি সাধারণ হ্যাকারের পক্ষে কঠোর ধারণা নিয়েছিল।
invisible.js
এবং উত্সগুলিতে সন্ধান করতে সক্ষম হয়েছি । ক্রোম সংস্করণ 34.0.1847.131 মি
এইচটিএমএল এনক্রিপ্টার ব্যবহার করুন হেডের যে অংশটি রয়েছে
<link rel="stylesheet" href="styles/css.css" type="text/css" media="screen" />
<script type="text/javascript" src="script/js.js" language="javascript"></script>
copy and paste it to HTML Encrypter and the Result will goes like this
and paste it the location where you cut the above sample
<Script Language='Javascript'>
<!-- HTML Encryption provided by iWEBTOOL.com -->
<!--
document.write(unescape('%3C%6C%69%6E%6B%20%72%65%6C%3D%22%73%74%79%6C%65%73%68%65%65%74%22%20%68%72%65%66%3D%22%73%74%79%6C%65%73%2F%63%73%73%2E%63%73%73%22%20%74%79%70%65%3D%22%74%65%78%74%2F%63%73%73%22%20%6D%65%64%69%61%3D%22%73%63%72%65%65%6E%22%20%2F%3E%0A%3C%73%63%72%69%70%74%20%74%79%70%65%3D%22%74%65%78%74%2F%6A%61%76%61%73%63%72%69%70%74%22%20%73%72%63%3D%22%73%63%72%69%70%74%2F%6A%73%2E%6A%73%22%20%6C%61%6E%67%75%61%67%65%3D%22%6A%61%76%61%73%63%72%69%70%74%22%3E%3C%2F%73%63%72%69%70%74%3E%0A'));
//-->
এইচটিএমএল এনক্রিপটার নোট: আপনার পৃষ্ঠায় জাভা স্ক্রিপ্ট থাকলে .js ফাইলটি রফতানি করার চেষ্টা করুন এবং এটিকে উপরের উদাহরণের মতো করুন।
এবং এছাড়াও এই এনক্রিপ্টরটি সবসময় এমন কোনও কোডে কাজ করে না যা আপনার ওয়েবসাইটকে গোলমাল করে দেবে ... আপনি পছন্দ করতে চান এমন সেরা অংশটি নির্বাচন করুন উদাহরণস্বরূপ <form> </form>
এটি অগ্রিম ব্যবহারকারীর দ্বারা বিপরীত হতে পারে তবে আমার মতো সমস্ত নুব এটি জানেন না।
আশা করি এটি সাহায্য করবে
আমি নিশ্চিত না যে তথ্য লুকানোর কোনও উপায় আছে। আপনি জাভাস্ক্রিপ্টে যা করছেন তা আড়াল করতে বা আড়াল করার জন্য আপনি যা কিছু করেন না কেন, এটি এখনও অবতীর্ণ হয় যে এটি ব্যবহার করার জন্য আপনার ব্রাউজারটিকে এটি লোড করা দরকার। আধুনিক ব্রাউজারগুলিতে বাক্সের বাইরে ওয়েব ডিবাগিং / বিশ্লেষণ সরঞ্জাম রয়েছে যা স্ক্রিপ্টগুলি এক্সট্রাক্টিং এবং দেখা অপ্রয়োজনীয় করে তোলে ( F12উদাহরণস্বরূপ ক্রোমে হিট )।
যদি আপনি কোনও ধরণের ট্রেড সিক্রেট বা অ্যালগরিদম উদ্ঘাটিত সম্পর্কে উদ্বিগ্ন হন তবে আপনার একমাত্র অবলম্বন হ'ল সেই যুক্তিটিকে একটি ওয়েব পরিষেবা কলটিতে আবদ্ধ করা এবং আপনার পৃষ্ঠাটি এজেএক্সের মাধ্যমে সেই কার্যকারিতাটি চাওয়া।
'সম্ভব নয়!'
ও হ্যাঁ, এটাই ....
//------------------------------
function unloadJS(scriptName) {
var head = document.getElementsByTagName('head').item(0);
var js = document.getElementById(scriptName);
js.parentNode.removeChild(js);
}
//----------------------
function unloadAllJS() {
var jsArray = new Array();
jsArray = document.getElementsByTagName('script');
for (i = 0; i < jsArray.length; i++){
if (jsArray[i].id){
unloadJS(jsArray[i].id)
}else{
jsArray[i].parentNode.removeChild(jsArray[i]);
}
}
}
আমি মনে করি ব্রাউজারের ভিউ উত্সে কিছু জাভাস্ক্রিপ্ট কোডগুলি লুকানোর জন্য আমি একটি সমাধান পেয়েছি। এটি করতে আপনাকে jQuery ব্যবহার করতে হবে।
উদাহরণ স্বরূপ:
আপনার সূচি.পি.পি.
<head>
<script language = 'javascript' src = 'jquery.js'></script>
<script language = 'javascript' src = 'js.js'></script>
</head>
<body>
<a href = "javascript:void(null)" onclick = "loaddiv()">Click me.</a>
<div id = "content">
</div>
</body>
আপনি এইচটিএমএল / পিএইচপি বডিতে একটি ফাইল লোড করেছেন js.js ফাইলে একটি jquery ফাংশন দ্বারা ডাকা হয়।
js.js
function loaddiv()
{$('#content').load('content.php');}
কৌশল এখানে।
আপনার কন্টেন্ট.এফপি ফাইলটিতে অন্য একটি হেড ট্যাগ লাগান তারপরে সেখান থেকে আর একটি জেএস ফাইল কল করুন।
Content.php
<head>
<script language = 'javascript' src = 'js2.js'></script>
</head>
<a href = "javascript:void(null)" onclick = "loaddiv2()">Click me too.</a>
<div id = "content2">
</div>
js2.js ফাইলটিতে আপনার যে কোনও ফাংশন তৈরি করতে চান।
উদাহরণ:
js2.js
function loaddiv2()
{$('#content2').load('content2.php');}
Content2.php
<?php
echo "Test 2";
?>
দয়া করে লিঙ্কটি অনুসরণ করুন এবং তারপর jquery.js ফাইলের ফাইল এ এটি অনুলিপি করুন
http://dl.rodbox.com/u/36557803/jquery.js
আশা করি এটা কাজে লাগবে.
আপনি ব্যবহার করতে পারে document.write
।
JQuery ছাড়া
<!DOCTYPE html>
<html>
<head><meta charset=utf-8></head>
<body onload="document.write('<!doctype html><html><head><meta charset=utf-8></head><body><p>You cannot find this in the page source. (Your page needs to be in this document.write argument.)</p></body></html>');">
</body></html>
বা jQuery সহ
$(function () {
document.write("<!doctype html><html><head><meta charset=utf-8></head><body><p>You cannot find this in the page source. (Your page needs to be in this document.write argument.)</p></body></html>")
});
সম্ভাব্য নয়!
একমাত্র উপায় হ'ল জাভাস্ক্রিপ্ট অবলম্বন করা বা আপনার জাভাস্ক্রিপ্টকে ছোট করা যা শেষ ব্যবহারকারীর পক্ষে প্রকৌশলীকে বিপরীত করা শক্ত করে তোলে। তবে প্রকৌশলীকে রিভার করা অসম্ভব নয়।
কিছু বছর আগে আমি ব্যবহার করেছি -
আমাদের একটি জেএসপি ফাইল, একটি সার্লেট জাভা ফাইল এবং একটি ফিল্টার জাভা ফাইল দরকার।
ব্যবহারকারীকে jsp ফাইল অ্যাক্সেস দিন। Jsp ফাইলের ইউজার টাইপ ইউআরএল।
কেস 1 -
মুদ্রণযন্ত্র ব্যবহার করে এটি ব্যবহারকারীর প্রতিক্রিয়া রেন্ডার করবে।
ইতিমধ্যে, সার্লেট একটি কী ফাইল তৈরি করবে।
সার্ভলেট যখন এটির মধ্যে xxxx.js ফাইলটি চালানোর চেষ্টা করবে, ফিল্টার
সক্রিয় হবে এবং কী ফাইল উপস্থিত রয়েছে এবং এটি কী
ফাইল মুছে ফেলবে delete
এভাবে একটি চক্র শেষ।
সংক্ষেপে, কী ফাইলটি সার্ভার দ্বারা তৈরি হবে এবং ফিল্টার দ্বারা তাত্ক্ষণিকভাবে মুছে ফেলা হবে।
এটি প্রতিটি হিট ঘটবে।
কেস 2 -
ফাইল তৈরির পরিবর্তে, কেউ সেশন ভেরিয়েবলের সেটিং মানটি ব্যবহার করতে পারে।