Warning: session_start(): open(/tmp/sess_pb4ngk0gebtv46e8qg5tr7rdq2, O_RDWR) failed: No space left on device (28) in /disk2/guru/public_html/qa-include/app/users.php on line 146
จำเป็นไหม ที่ต้อง Encrypt Javascript ในเว็บของเรา - CITEC-Guru ถามปัญหาคอม เขียนโปรแกรม
พึ่งเคยใช้งานครั้งแรกโปรดอ่านที่นี่! howtouse!
x
  • Register
หางานด้าน IT อยู่เหรอ?

จำเป็นไหม ที่ต้อง Encrypt Javascript ในเว็บของเรา

0 votes

Javacript ต่างๆที่เขียนขึ้น มาใช้ในเว็บของเรา

มีความจำเป็นมากน้อยแค่ไหนที่ต้อง encrypt หรือ การทำให้มันอ่านยากขึ้น

 

ผมเห็นมีอยู่เว็บนึง http://dean.edwards.name/packer/   จะทำการ Encode ให้

คำถามต่อมา คือ เวลาเราจะ Encrypt เราต้องมานั่ง Copy Javascript จากเว็บเรา ไปยังเว็บดังกล่าง และ Copy กลับมายังไฟล์ของเรา

ทำไมทำมาแบบนี้ เหมือนจะไม่สะดวกเลย แล้วถ้าต่อไปเราจะแก้ไข Javascirpt นี่ล่ะครับ ??? ต้อง Decrypt ก่อนอีก

สรุป Copy กันไป Copy กันมา เหนื่อยแย่เลย

 

ไม่แน่ใจว่ามี Tool ที่ช่วยในเรื่องนี้ ให้ดีกว่านี้อีกรึป่าว

หรือว่าไม่จำเป็นต้องทำก็ได้

 

 

ถามเมื่อ May 3, 2012 in Html,Javascript,CSS โดย phanithanj (1,139 คะแนน)
   

4 Answers

0 votes
ถ้ามันเป็น ความคิดของเรา เราสร้างมาเอง เราก็ไม่อยากให้ใครรู้ ผมว่า encode ไว้ก็ดีนะครับ

แต่ผมว่าไม่จำเป้นหรอก
ตอบเมื่อ May 3, 2012 โดย VirusCoMz (104 คะแนน)
+1 vote

ใน code control ก็เก็บตัวเต็มไปแหละครับ แต่ตอน build project ไป deploy ค่อยมาทำให้ไฟล์มันเล็กลง

เคยใช้ http://developer.yahoo.com/yui/compressor ครับ ตอน build project ก็มี command ไป run เพื่อให้ไฟล์มันเล็กๆ
แต่ความจริงพบว่า ถ้า javascript ไม่ใหญ่จริง แบบพวก javascript framework เช่น jQuery, Mootools ก็ไม่ได้ลดลงมากเท่าไรนะ จริงๆใน C# ใช้ script manager ก็ช่วยได้นะ ถ้าไฟล์ javascript เยอะๆ

ตอบเมื่อ May 3, 2012 โดย Krurkrit Phoosakul (1,174 คะแนน)
+1 vote
ถ้าหมายถึง compress ผมคิดว่าไม่จำเป็นนะ ... เพราะสุดท้ายก็ตั้ง gzip encode ที่ web server ได้

แต่ถ้าหมายถึง encode อาจจะ b64 หรืออาจจะ obfuscate อะไรพวกนั้น ผมคิดว่าถ้าไม่ได้เป็นความลับอะไร ไม่ต้องก็ได้นะครับ
ตอบเมื่อ May 4, 2012 โดย K. Chaowanawatee (565 คะแนน)
+3 votes
ที่จริงแล้วมี 2 คำศัพท์ที่มีความหมายใกล้เคียงกันในกรณีนี้ คือคำว่า obfuscate และ minify โดย

obfuscation คือการทำให้ code อ่านยากขึ้น จุดประสงค์หลักคือการป้องกันผู้อื่นมา reverse engineer code ของเราครับ ซึ่งจะเป็นการป้องกัน intellectual property ของเราด้วยครับ

minification คือการทำให้ขนาดของ code มีขนาดเล็กลง เช่นการตัด space, การเปลี่ยนชื่อตัวแปรให้สั้นลง หรือตัวอักษรอื่นๆ ที่ไม่จำเป็นออก เพื่อช่วยให้ user สามารถโหลดได้เร็วขึ้น และ server ยังลดเวลาในการอ่านข้อมูลอีกด้วย เป็นการเพิ่มประสิทธิภาพโดยรวมของการใช้งานเว็บไซต์ได้ครับ โดยเฉพาะเว็บไซต์ที่มีผู้ใช้งานจำนวนมากเช่น facebook, google เป็นต้น

ซึ่งผมเข้าใจว่าเว็บส่วนใหญ่แค่ต้องการลดขนาดของ javascript แค่นั้น แต่พอดีการทำ obfuscation ด้วย algorithm ที่เหมาะสมมันทำให้ได้ code ขนาดที่เล็ก ก็เลยได้ประโยชน์จากทั้งสองหลักการไปพร้อมกันเลย

สรุป ถ้าไม่ห่วงเรื่อง intellectual property และไม่กังวลเรื่องขนาดของ javascript ก็ไม่จำเป็นต้องทำ obfuscation ครับ ไม่เช่นนั้นก็ทำเลยครับ แต่ควรเลิก algorithm ให้ดีหน่อย เพราะ obfuscator บางตัวมันทำให้ขนาดของ javascript ใหญ่ขึ้น จะทำให้ขาด concept ของ minification ไป บางเจ้าเลยใช้คำว่า javascript compressor แทน ซึ่งจะบ่งบอกถึง concept ของ obfuscation และ minification ไปพร้อมกันครับ :D

ปล. ตอบในมุมมองของผู้พัฒนาระบบทั่วไปนะครับ ในส่วนของผู้โจมตีระบบ ต้องใช้ obfuscation เพื่อหลบหลีกการตรวจจับ และเพื่อป้องกันการ reverse engineer เพื่อสร้าง signature ครับ
ตอบเมื่อ May 8, 2012 โดย Gen0TypE (415 คะแนน)
มีแนะนำ tool ที่ช่วยในการ obfuscation ไหมครับผม

Related questions

...