CodeGym /مدونة جافا /Random-AR /السلامة اولا. هل تسمى Java لغة آمنة لسبب وجيه؟
John Squirrels
مستوى
San Francisco

السلامة اولا. هل تسمى Java لغة آمنة لسبب وجيه؟

نشرت في المجموعة
هناك العديد من الأشياء الجيدة حول Java كلغة برمجة. إنها أنيقة لكنها قوية ومتعددة الوظائف ومستقلة عن النظام الأساسي. نظرًا لكونها كائنية التوجه ومحمولة باعتبارها نقاط القوة المذكورة على نطاق واسع، فإن هناك ميزة رئيسية أخرى لـ Java تميل إلى البقاء طغت عليها، لذلك غالبًا ما يكون لدى القادمين الجدد فهم محدود لجميع فوائد دراسة Java بدلاً من لغة برمجة أخرى، لاتخاذ القرار الصحيح. هل سمعت يومًا أن لغة Java تسمى لغة برمجة آمنة؟ إنه كذلك، وهو محق في ذلك. السلامة اولا.  هل تسمى Java لغة آمنة لسبب وجيه؟  - 1 لذلك اعتقدنا أنه قد يكون الوقت المناسب لتسليط بعض الضوء على هذا، وشرح سبب تسمية Java بلغة آمنة وبأي طريقة هي آمنة بالضبط.

ما الذي يجعل Java لغة آمنة؟

هل جافا آمنة؟ هناك عدد من الأسباب لاعتبار Java لغة برمجة آمنة، على الرغم من أن القول بأن Java أكثر أمانًا مقارنة بعدد من اللغات الأخرى سيكون الطريقة الصحيحة لوصف ذلك نظرًا لأن هذه الميزات لا تجعل Java آمنة تمامًا في الواقع، ولكنها في الأساس تحسين أمان تنفيذ تعليمات Java البرمجية.
  • التحقق من الرمز الثانوي.
يعد التحقق من Bytecode أحد الميزات الأساسية التي تضمن سلامة كود Java. يعني التحقق من الرمز الثانوي أن Java تستخدم مترجمًا يقرأ كود Java ويترجمه إلى تمثيل رمز ثانوي مستقل عن الآلة. يسمح هذا بالتأكد من تنفيذ الرموز الثانوية الشرعية فقط، وعدم إمكانية دخول أي تعليمات برمجية ضارة إلى النظام. يتحقق المترجم من أن الرموز الثانوية تتوافق مع مواصفات لغة Java ولا تنتهك قواعد لغة Java أو قيود مساحة الاسم. يتم أيضًا فحص الكود بحثًا عن عدد من "العلامات الحمراء" الأخرى، مثل طباعة البيانات غير القانونية، أو التدفقات السفلية والفائضة للمكدس، أو انتهاكات إدارة الذاكرة. لشرح ذلك بطريقة أبسط، يتم تجميع برامج Java كرمز صغير، والذي يعمل بعد ذلك داخل جهاز افتراضي، ولا يمكنه الوصول إلى الكمبيوتر الذي يعمل عليه. فهو يجعل هذا الرمز أكثر أمانًا للاستخدام، ويحمي المستخدمين من جميع أنواع البرامج الضارة.
  • إدارة الذاكرة الآلية.
ميزة أخرى مهمة لـ Java كلغة آمنة هي إدارة الذاكرة التلقائية وجمع البيانات المهملة، وهو ما يجعل Java لغة أسهل بكثير بالنسبة للمبرمجين حيث أن Java تعتني تلقائيًا بجميع مشكلات الذاكرة الداخلية وأنظمة إدارة البيانات. يتيح ذلك للمبرمج عدم القلق بشأن مشكلات الذاكرة على الإطلاق عند إنشاء برنامج، والتركيز على أشياء أخرى مهمة بدلاً من ذلك. على سبيل المثال، تقوم عملية جمع البيانات المهملة بتحرير الذاكرة تلقائيًا عندما يكون ذلك مطلوبًا. بالمناسبة، هناك ميزة رئيسية أخرى لكل هذه الأتمتة الإدارية في Java وهي حقيقة أنها تقلل تكاليف التطوير الإجمالية (نظرًا لأن عددًا من الوظائف والعمليات المهمة تتم أتمتة). يعد انخفاض تكاليف التطوير أحد الأسباب الرئيسية وراء شهرة Java في تطوير المؤسسات في جميع أنحاء العالم - ومن المفيد للشركات استخدام Java بدلاً من اللغات الأخرى.
  • لا توجد مؤشرات.
على عكس العديد من لغات البرمجة الأخرى، C وC+ على سبيل المثال، التي تستخدم قيم المؤشر لإدارة ذاكرة التطبيق، لا يوجد مفهوم للمؤشرات في Java. على الرغم من أنها مصممة في الأصل كإجراء أمني (لحماية البيانات الخاصة من اللصوص)، إلا أن المؤشرات يمكن أن تكون أيضًا نقطة ضعف كبيرة في حالة تمكن بعض المجرمين من الوصول إليها نظرًا لعدم توفر المؤشرات على طريقة للتحقق من التفويض فيها ، مما يسمح لأي شخص بالوصول إلى ذاكرة التطبيق. جافا، كما قلنا، لا تستخدم المؤشرات، بل تعتمد على أنظمة إدارة البيانات الخاصة بها والذاكرة الداخلية بدلاً من ذلك، كوسيلة لحماية البيانات من أي وصول غير مصرح به. وهذا يجعل من المستحيل إلى حد كبير على المتسللين التسلل إلى ذاكرة تطبيق Java. ومن المفهوم أن هذا سبب آخر لشعبية Java في تطوير المؤسسات، بين الشركات الكبيرة التي تتطلع إلى تصميم تطبيقاتها لتكون آمنة قدر الإمكان مع الحفاظ على أمان بياناتها الخاصة من مجرمي الإنترنت.
  • يقوم مترجم Java تلقائيًا بفحص الأخطاء في التعليمات البرمجية واكتشافها وإصلاحها.
يعد التحقق التلقائي من التعليمات البرمجية بحثًا عن الأخطاء ميزة أخرى مهمة في Java تجعلها أكثر أمانًا. يقوم المترجم بفحص الكود، واكتشاف الأخطاء، وتحذير المبرمج من هذه الأسهم، واقتراح طرق لإصلاحها. وهذا، مرة أخرى، يبسط عمل المبرمج، ويجعل تطبيقات Java أكثر استقرارًا، وفي النهاية، يقلل من تكاليف التطوير (السبب رقم 1 لأي ​​شركة تقريبًا). أما بالنسبة للجزء الأمني ​​منه، فهذا أيضًا يقلل من فرص دخول تعليمات برمجية ضارة خارجية إلى برنامجك وإجراء تعديلات غير مصرح بها عليه.
  • تقوم Java بالتحقق التلقائي من نوع البيانات.
إلى جانب التحقق من التعليمات البرمجية بحثًا عن الأخطاء، يقوم Java Compiler أيضًا بفحص المتغيرات في التعليمات البرمجية تلقائيًا، للتأكد من عدم وجود مخاوف أمنية يمكن أن تنشأ عن أخطاء إدخال البيانات في المتغيرات. وهذه طريقة أخرى لحماية النظام من التسلل وسرقة البيانات.

ما هي مكونات Java التي تجعلها آمنة بالفعل؟

أما بالنسبة لمكونات Java المحددة التي تلعب الدور الأكثر أهمية في أمانها، فإليك قائمة سريعة فقط لتمنحك فهمًا أوضح، على المستوى الأساسي، لكيفية عملها وما الذي يجعل Java آمنًا بالضبط.
  • آلة جافا الافتراضية (JVM).
JVM، كونه جهازًا افتراضيًا يقوم بتشغيل تمثيل الرمز الثانوي لبرنامج Java، من الواضح أنه يلعب دورًا مهمًا للغاية في الأمان العام لـ Java. يتيح لك استخدام JVM حظر أي عمليات قد تكون غير آمنة للبرنامج.
  • هندسة تشفير جافا (JCA).
Java Cryptography Architecture هو إطار عمل يسمح لك بإضافة وظائف التشفير لمنصة Java. يضمن استخدام Java Cryptography Architecture تشفير بياناتك والحفاظ عليها آمنة.
  • البنية التحتية للمفتاح العام (PKI).
البنية التحتية للمفتاح العام هي إطار عمل آخر يسمح لك بتطبيق تشفير المفتاح العام لتحقيق تبادل آمن للبيانات. باستخدام PKI، يمكنك ربط الهويات بالشهادات الرقمية، والتحقق من صحة الشهادات عند الحاجة.
  • مدير الامن.
مدير الأمان في Java هو في الأساس فئة تسمح للتطبيقات بتنفيذ سياسة أمنية، وتحدد سياسة الأمان الخاصة بها، وتسمح للمبرمج بتعيين مستوى الأمان للتطبيق.
  • جافا ساندبوكس.
Java sandbox عبارة عن منطقة برنامج لتشغيل تطبيقات Java، والتي تقيد ما يمكن أن يفعله التطبيق الصغير للتأكد من أنه لن يعرض الأمان للخطر ولا يمكنه الوصول إلى موارد النظام دون التحقق من السلامة.

آراء

هل يعتقد مطورو Java المحترفون الذين يتمتعون بسنوات من الخبرة أن هذه اللغة آمنة؟ وهنا بضعة اقتباسات. "أود أن أقول إن Java ليست آمنة في حد ذاتها (لا توجد لغة برمجة)، ولكن JVM تقدم ميزات توفر الأمان. قال غاري تايلور، وهو مبرمج ذو خبرة ورئيس قسم التكنولوجيا في شركة Black Spark Media: "على الرغم من أن Java لن تحميك من كل شيء، إلا أنها ستحميك من مجموعة كاملة من المشكلات التي تنتج عن تجاوز سعة المخزن المؤقت" . "تعمل Java على تحسين الأمان من خلال حصر التطبيق الصغير في بيئة تنفيذ Java وعدم السماح له بالوصول إلى أجزاء أخرى من الكمبيوتر. "إن القدرة على تنزيل التطبيقات الصغيرة بثقة أنه لن يحدث أي ضرر وأنه لن يتم انتهاك أي أمان، يعتبرها الكثيرون الجانب الأكثر ابتكارًا في Java،" أشار سميت براكاش، مهندس البرمجيات في IBM.

ملخص

إذًا، هل جافا آمنة؟ باختصار، تحتوي Java بالتأكيد على عدد من الميزات الرائعة والأدوات المضمنة التي تجعلها أكثر أمانًا. تلعب العديد من هذه الميزات دورًا مهمًا في الشعبية العامة لـ Java، خاصة في سوق المؤسسات، نظرًا لأنها تسمح للشركات بحماية بياناتها بشكل فعال من الوصول غير المصرح به، مع أتمتة عدد من عمليات التطوير التي لا يتم تشغيلها آليًا بواسطة لغات أخرى. ولكن، بقدر ما نحب التباهي بجافا ومدى روعتها، إلا أن جافا لا تزال بعيدة عن أن تكون آمنة تمامًا. في الواقع، لا تعتبر أي من لغات البرمجة آمنة تمامًا، ولكل منها نقاط قوة ونقاط ضعف (نقاط ضعف) خاصة بها. بشكل عام، تعتبر لغة C أكثر لغات البرمجة عرضة للخطر. يقول الخبراء إن Java، على الرغم من احتوائها على عدد من ميزات الأمان الرائعة الموضحة أعلاه، لا تزال ضعيفة من جانب الخادم، ويمكن أن تعاني من عمليات استغلال .
تعليقات
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION