تعمية قواعد البيانات
'''تعمية قواعد البيانات''' يمكن تعريفها بالعملية التي تستخدم فيها [[خوارزمية|الخوارزميات]] لتحويل النص والبيانات الموجودة في [[قاعدة بيانات|قواعد البيانات]] إلى نصوص وبيانات معماة، بحيث لا يمكن فك هذه التعمية.<ref>{{استشهاد بويب|عنوان=What is Database Encryption and Decryption? - Definition from Techopedia|مسار=https://www.techopedia.com/definition/24416/database-encryption-and-decryption|موقع=Techopedia.com|تاريخ الوصول=2015-11-04| مسار أرشيف = https://web.archive.org/web/20190807132923/https://www.techopedia.com/definition/24416/database-encryption-and-decryption | تاريخ أرشيف = 7 أغسطس 2019 }}</ref> لذلك، يمكننا الفهم من أن الغرض من وجود التعمية في عالم قواعد البيانات هو لأجل الحماية ولضمان عدم وصول أشخاص غير مصرحين بالدخول على هذه البيانات والتعديل عليها أو إتلافها.<ref name=":142">{{استشهاد بويب|عنوان=Transparent Data Encryption with Azure SQL Database|مسار=https://docs.microsoft.com/en-us/azure/azure-sql/database/transparent-data-encryption-tde-overview?redirectedfrom=MSDN&view=sql-server-ver15|موقع=msdn.microsoft.com|تاريخ الوصول=2015-11-04| مسار أرشيف = https://web.archive.org/web/20160304235227/https://msdn.microsoft.com/en-gb/library/dn948096.aspx | تاريخ أرشيف = 4 مارس 2016 }}</ref> وأيضا من فوائد تعمية المعلومات في قواعد البيانات هي تقليل الحوافز التي ربما تصب بمصلحة بعض المخترقين، حيث يتم بعض المخترقين بالاستفادة من البيانات التي تكون ذات معنى لهم، ولكن بوجود هذه التعمية، لن يتم الاستفادة من هذه البيانات بحيث ستكون معماة وغير مفهومة.<ref>{{استشهاد بويب|عنوان=SQL SERVER - Introduction to SQL Server Encryption and Symmetric Key Encryption Tutorial with Script|مسار=https://blog.sqlauthority.com/2009/04/28/sql-server-introduction-to-sql-server-encryption-and-symmetric-key-encryption-tutorial-with-script/|موقع=Journey to SQL Authority with Pinal Dave|تاريخ الوصول=2015-10-25|تاريخ=April 28, 2009| مسار أرشيف = https://web.archive.org/web/20161201184538/http://blog.sqlauthority.com:80/2009/04/28/sql-server-introduction-to-sql-server-encryption-and-symmetric-key-encryption-tutorial-with-script/ | تاريخ أرشيف = 1 ديسمبر 2016 }}</ref>

في هذه المقالة، سيتم شرح أهم التقنيات والطرق المستخدمة في تعمية قواعد البيانات.

== التعمية الشفافة (الخارجي) ==
قواعد البيانات الخارجية أو كما يرمز لها بالإنجليزية (Transparent Data Encryption) "TDE", هي طريقة مستخدمة لتعمية كامل قاعدة البيانات،<ref name=":142" /> وبالتالي، يتم أيضا تعمية البيانات التي هي من نوع "[[:en:Data at rest|data at rest]]" في قاعدة البيانات نفسها.<ref>{{استشهاد بويب|عنوان=Transparent Data Encryption (TDE)|مسار=https://docs.microsoft.com/en-us/sql/relational-databases/security/encryption/transparent-data-encryption?redirectedfrom=MSDN&view=sql-server-ver15|موقع=msdn.microsoft.com|تاريخ الوصول=2015-10-25| مسار أرشيف = https://web.archive.org/web/20160611165720/https://msdn.microsoft.com/en-us/library/bb934049.aspx | تاريخ أرشيف = 11 يونيو 2016 }}</ref> وللتوضيح، "data at rest" يمكن شرحها أو وصفها بأنها بيانات غير مفعلة أو نشطة ولم يتم التعديل عليها أو نشرها عن طريق الشبكة.<ref>{{استشهاد بويب|عنوان=What is data at rest? - Definition from WhatIs.com|مسار=https://searchstorage.techtarget.com/definition/data-at-rest|موقع=SearchStorage|تاريخ الوصول=2015-10-25| مسار أرشيف = https://web.archive.org/web/20190807132929/https://searchstorage.techtarget.com/definition/data-at-rest | تاريخ أرشيف = 7 أغسطس 2019 }}</ref> على سبيل المثال، يكون الملف النصي المخزن في جهازك الحاسوبي في وضع "at rest" حتى تقوم بفتح الملف وتعديله. يتم حفظ وتخزين البيانات التي هي على شكل "data at rest" في أي من وسائل التخزين الشريطية مثل الأشرطة الثابتة أو الأقراص الصلبة،<ref>{{استشهاد بويب|عنوان=Encryption techniques and products for hardware-based data storage security|مسار=https://www.computerweekly.com/feature/Encryption-techniques-and-products-for-hardware-based-data-storage-security|موقع=ComputerWeekly|تاريخ الوصول=2015-10-31| مسار أرشيف = https://web.archive.org/web/20190807132939/https://www.computerweekly.com/feature/Encryption-techniques-and-products-for-hardware-based-data-storage-security | تاريخ أرشيف = 7 أغسطس 2019 }}</ref> ولكن عند تخزين وحفظ كميات كبيرة من المعلومات الحساسية في تلك الأجهزة، تصبح المسألة حساسة جدا لأنها تتعلق بالأمن والحماية والخوف من السرقة أو ضياع وتلف تلك المعلومات.

هذا النوع من تعمية قواعد البيانات وهو كما عرفناه سابقا بالمصطلح "TDE" يمتاز بأنه يضمن الحماية لتلك البيانات المعماة على أجهزة التخزين والوسائط، بحيث أنه يمنع الأشخاص الذين يعملون تحت شعار الاختراق والعبث من قراءة تلك البيانات.<ref>{{استشهاد بويب|عنوان=Storage Encryption Solutions|مسار=https://www.thales-esecurity.com/solutions/by-technology-focus/storage-level-encryption|موقع=www.thales-esecurity.com|تاريخ الوصول=2015-10-25| مسار أرشيف = https://web.archive.org/web/20170224084012/https://www.thales-esecurity.com/solutions/by-technology-focus/storage-level-encryption | تاريخ أرشيف = 24 فبراير 2017 }}</ref>

ولذلك، البيانات التي لايمكن قرائتها تصبح فعليا بدون أي قيمة، لذا يلعب هذا النوع من التعمية دور كبير في تقليل الحوافز لدى المخترقين الراغبين بسرقة المعلومات، وينسب أيضا لهذا النوع من التعمية قوة الشفافية الموجودة. تكمن هذه القوة في أنه لايجب تغيير التطبيقات وإعداداتها لأجل مهمة التعمية بنوع "TDE".<ref>{{استشهاد بويب|عنوان=Transparent Data Encryption (TDE) in SQL Server — DatabaseJournal.com|مسار=https://www.databasejournal.com/features/mssql/transparent-data-encryption-tde-in-sql-server.html|موقع=www.databasejournal.com|تاريخ الوصول=2015-11-02| مسار أرشيف = https://web.archive.org/web/20190807132942/https://www.databasejournal.com/features/mssql/transparent-data-encryption-tde-in-sql-server.html | تاريخ أرشيف = 7 أغسطس 2019 }}</ref> توجد نقطة مهمة وهي أن كما ذكرنا مسبقا في أن هذا النوع يُعمِّي معلومات قاعدة البيانات كافة بما فيها النسخ الاحتياطية ([[نسخ احتياطي]]) من قاعدة البيانات نفسها. وتأتي خاصية الشفافية الموجودة بهذا النوع من التعمية في أنه تعمَّى البيانات في حالة تخزينها، ويتم بعد ذلك فك تعميتها عند إستدعائها من قبل ذاكرة النظام.<ref name=":132">{{استشهاد بويب|عنوان=Using Transparent Data Encryption|مسار=http://sqlmag.com/database-security/using-transparent-data-encryption|موقع=sqlmag.com|تاريخ الوصول=2015-11-02| مسار أرشيف = https://web.archive.org/web/20171014032527/http://sqlmag.com:80/database-security/using-transparent-data-encryption | تاريخ أرشيف = 14 أكتوبر 2017 }}</ref> تُعمَّى المحتويات الموجودة في قاعدة البيانات باستخدام مفتاح التماثل أو بالإنجليزية «[[تعمية بالمفتاح المتناظر|symmetric key]]», وغالبا مايدعى بمفتاح تعمية قواعد البيانات.

== تعمية الأعمدة ==
لفهم هذا النوع من التعمية بشكل أفضل، من المهم جدا فهم العناصر والقواعد الأساسية في قاعدة البيانات نفسها. من المعلوم أن قاعدة البيانات تحتوي على أعمدة وصفوف، لذا قاعدة البيانات النموذجية ذات العلاقات فعليا تنقسم إلى جداول، وهذه الجداول تنقسم أيضا إلى أعمدة، بحيث أنه هذه الأعمدة تحتوي على صفوف من البيانات.<ref>{{استشهاد بويب|عنوان=A Tutorial on Database Concepts, SQL using MySQL.|مسار=http://www.atlasindia.com/sql.htm|موقع=www.atlasindia.com|تاريخ الوصول=2015-11-04| مسار أرشيف = https://web.archive.org/web/20190301175915/http://www.atlasindia.com:80/sql.htm | تاريخ أرشيف = 1 مارس 2019 }}</ref> مقارنة بالتعمية الشفافة (TDE), فإن التعمية الشفافة تعمي عناصر قاعدة البيانات كافةً، بينما تعمية الأعمدة تعمِّي الأعمدة فقط داخل قواعد البيانات.<ref>{{استشهاد بويب|عنوان=SQL Server Encryption Options|مسار=http://sqlmag.com/database-security/sql-server-encryption-options|موقع=sqlmag.com|تاريخ الوصول=2015-11-02| مسار أرشيف = https://web.archive.org/web/20171027213415/http://sqlmag.com:80/database-security/sql-server-encryption-options | تاريخ أرشيف = 27 أكتوبر 2017 }}</ref> من المهم المعرفة بأن هناك نقاط قوة وضعف عند المقارنة بنوعين من التعمية(الشفاف والأعمدة).

أولا، عند التعمية بطريقة الأعمدة، فإن القدرة على تعمية عناصر الأعمدة كلها تكون أكثر مرونة مقارنة بالتعمية الشفافة مثل (TDE). ثانيا، عند التعمية بطريقة الأعمدة، فإننا نزيد من مستوى الحماية والأمن، والفضل ذلك يعود إلى مفاتيح التعمية المتاحة للإستخدام في هذا النوع. للتوضيح، يمكننا استخدام مفاتيح تعمية مستقلة وفريدة من نوعها عند التعامل مع كل عمود من أعمدة قاعدة البيانات. ومع كل ذلك، فإن واحد من أهم نقاط الضعف الموجودة في هذا النوع هي السرعة. عندما نقوم باستخدام مفاتيح التعمية لتعمية كل عمود في قاعدة البيانات على حده، فإن الأداء العام لقاعدة البيانات ينخفض.<ref>{{استشهاد بويب|عنوان=Differences Between Whole Database and Column Encryption|مسار=https://netlibsecurity.com/white-papers/differences-between-whole-database-and-column-encryption/|موقع=www.netlib.com|تاريخ الوصول=2015-11-02| مسار أرشيف = https://web.archive.org/web/20160110123754/http://www.netlib.com:80/column-vs-database.asp | تاريخ أرشيف = 10 يناير 2016 }}</ref>

== تعمية الحقول ==
هناك أعمال تجريبية قائمة على توفير عمليات قواعد البيانات مثل البحث والعمليات الحاسبية الأخرى على حقول معماة ومن دون الحاجة إلى فك تعمية هذه الحقول.<ref name=":372">{{استشهاد بويب|مسار=http://www.fkerschbaum.org/sacmat14.pdf|عنوان=Optimized and Controlled Provisioning of Encrypted Outsourced Data|موقع=www.fkerschbaum.org| مسار أرشيف = https://web.archive.org/web/20170326174854/http://www.fkerschbaum.org:80/sacmat14.pdf | تاريخ أرشيف = 26 مارس 2017 }}</ref> المبتغى من قوة عمليات التعمية هي بأن تكون عشوائية، بحيث تكون هناك نتيجة مختلفة في كل مرة يتم فيها التعمية. تعرف هذا التقنية باسم (التعمية الاحتمالية) أو بالإنجليزية ([[:en:Probabilistic encryption|Probabilistic Encryption]]). تعد تعمية الحقول أضعف من التعمية العشوائية أو الاحتمالية، ولكن هذا النوع يسمح أيضا للمستخدمين بأن يقوموا باختبار مستوى المساواة ومن دون القيام بفك تعمية البيانات.<ref>{{استشهاد بدورية محكمة|الأخير=Suciu|الأول=Dan|تاريخ=2012|عنوان=Technical Perspective: SQL on an Encrypted Database|مسار=|صحيفة=Association for Computing Machinery. Communications of the ACM|doi=|pmid=|تاريخ الوصول=}}</ref>

== تعمية نظام الملفات ==

=== نظام تعمية الملفات (EFS) ===
من المهم ملاحظة أن تقنيات تعمية قواعد البيانات التقليدية تعمي وتفك تعمية محتويات قاعدة البيانات. تتم إدارة قواعد البيانات بواسطة «أنظمة إدارة قواعد البيانات» ('''DBMS''') التي تعمل على رأس [[نظام تشغيل]] موجود ('''OS''').<ref>{{استشهاد بدورية محكمة|عنوان=A Unifying Approach to the Design of a Secure Database Operating System|صحيفة=IEEE Transactions on Software Engineering|تاريخ=1984-05-01|issn=0098-5589|صفحات=310–319|المجلد=SE-10|العدد=3|DOI=10.1109/TSE.1984.5010240|الأول=David L.|الأخير=Spooner|الأول2=E.|الأخير2=Gudes}}</ref> هذا يثير مخاوف أمنية محتملة، لأن قاعدة البيانات المعماة قد تعمل على نظام تشغيل يمكن الوصول إليه وهشاش أو ضعيف. يمكن لـ '''EFS''' تعمية البيانات التي لا تشكل جزءًا من نظام قاعدة البيانات، مما يعني أن نطاق التعمية الخاص بـ EFS أوسع بكثير مقارنةً بنظام مثل '''TDE''' قادر فقط على تعمية ملفات قاعدة البيانات. بينما تعمل EFS على توسيع نطاق التعمية، إلا أنها تقلل أيضًا من أداء قاعدة البيانات ويمكن أن تسبب مشكلات في الإدارة حيث يتطلب مسؤولو النظام الوصول إلى نظام التشغيل لاستخدام EFS. نظرًا للمشاكل المتعلقة بالأداء، لا يتم استخدام EFS عادةً في تطبيقات قواعد البيانات التي تتطلب مدخلات ومخرجات متكررة لقاعدة البيانات. من أجل تعويض مشكلات الأداء، يوصى غالبًا باستخدام أنظمة EFS في بيئات بها عدد قليل من المستخدمين.<ref name="Hsueh">{{استشهاد بويب
| مسار = https://docs.microsoft.com/en-us/previous-versions/sql/sql-server-2008/cc278098(v=sql.100)?redirectedfrom=MSDN#_Toc189384683
| عنوان = Database Encryption in SQL Server 2008 Enterprise Edition
| موقع = technet.microsoft.com
| تاريخ الوصول = 2015-11-03
| مسار أرشيف = https://web.archive.org/web/20171208174814/https://technet.microsoft.com/en-us/library/cc278098(v=sql.100).aspx | تاريخ أرشيف = 8 ديسمبر 2017 }}</ref>

== تعمية القرص الكامل ==
[[بت لوكر|BitLocker]] ليس لديه نفس الأداء المرتبط بـ EFS.<ref name="Hsueh" />

== تعمية قاعدة البيانات التماثلية وغير التماثلية ==
[[ملف:Crypto.png|تصغير|عرض مرئي للتعمية التماثلية (symmetric encryption)]]

=== التعمية التماثلية ===
يعرف هذا النوع باسم (symmetric database encryption), حيث أنه يشترط وجود مفتاح تعمية خاص يدعى (private key), ويتم إيداع هذا المفتاح وربطه وإستخدامه للبيانات المخزنة والمستدعية من قبل قاعدة البيانات. قبل عملية فك تعمية هذه البيانات، يقوم هذا المفتاح الخاص بالتعديل والتغيير بحيث أنه يعمل على جعل البيانات غير قابلة للقراءة.<ref name=":32">{{استشهاد بويب|عنوان=Description of Symmetric and Asymmetric Encryption|مسار=https://support.microsoft.com/en-us/help/246071/|موقع=support.microsoft.com|تاريخ الوصول=2015-10-25| مسار أرشيف = https://web.archive.org/web/20160913062634/https://support.microsoft.com/en-us/kb/246071 | تاريخ أرشيف = 13 سبتمبر 2016 }}</ref> تكون هذه البيانات معماة عندما تكون مخزنة ومحفوظة، وتكون بعد ذلك غير معماة عندما يتم فتحها، وتنشأ هاذه الخطوة عندما يكون المستخدم نفسه على علم بالمفتاح الخاص (private key) الذي تم إستخدامه هنا. علاوة على ذلك، من المهم عند مشاركة البيانات عبر قاعدة البيانات مابين شخص مرسل ومستقبل بأن يتم استخدام مفتاح آخر يدعى بالمفتاح السري أو بالإنجليزية (secret key) من قبل الشخص المرسل، ومن الضروري بأن يتم توفير نسخه من هذا المفتاح السري للشخص المستقبل للمشاركة التي تمت من الشخص المرسل له، بعد ذلك يمكن لهذا الشخص المستقبل للبيانات بأن يفك تعميتها وقرائتها بعد ذلك.<ref name=":42">{{استشهاد بويب|عنوان=How Encryption Works|مسار=https://computer.howstuffworks.com/encryption2.htm|موقع=HowStuffWorks|تاريخ الوصول=2015-10-25|تاريخ=April 6, 2001| مسار أرشيف = https://web.archive.org/web/20190807132937/https://computer.howstuffworks.com/encryption2.htm | تاريخ أرشيف = 7 أغسطس 2019 }}</ref>

- تتميز التعمية التماثلية بالسرعة، لأنها تمتلك خاصية استخدام مفتاح تعمية واحد للعمليات.<ref name="مولد تلقائيا1">{{استشهاد بويب|عنوان=Asymmetric vs. Symmetric – Hacking with PHP - Practical PHP|مسار=http://www.hackingwithphp.com/17/3/3/asymmetric-vs-symmetric|موقع=www.hackingwithphp.com|تاريخ الوصول=2015-11-03| مسار أرشيف = https://web.archive.org/web/20190223061206/http://www.hackingwithphp.com:80/17/3/3/asymmetric-vs-symmetric | تاريخ أرشيف = 23 فبراير 2019 }}</ref>

=== التعمية غير التماثلية ===
بالإنجليزية تدعى هذا التعمية بال (Asymmetric database encryption), حيث أنه يشترط وجود مفتاحان للتعمية يعمل كل منهما على حده. هذان النوعان تسمى (private key & public key) أو «المفتاح العام» و«المفتاح الخاص».<ref>{{استشهاد بويب|عنوان=How Encryption Works|مسار=https://computer.howstuffworks.com/encryption3.htm|موقع=HowStuffWorks|تاريخ الوصول=2015-11-01|تاريخ=April 6, 2001| مسار أرشيف = https://web.archive.org/web/20190807132938/https://computer.howstuffworks.com/encryption3.htm | تاريخ أرشيف = 7 أغسطس 2019 }}</ref> يستطيع أي شخص الوصول إلى المفتاح العام، ولكل شخص أو مستخدم مفتاح عام مختلف ومميز يختص به. وبالجهة المقابلة، المفتاح الخاص هو مفتاح متميز ومختلف ولايستطيع أحد الوصول إليه إلا بواسطة شخص أو مستخدم واحد فقط.<ref>{{استشهاد بويب|مسار=https://www.cs.utexas.edu/users/byoung/cs361/lecture44.pdf|عنوان=Foundations of Computer Security Lecture 44: Symmetric vs. Asymmetric Encryption|تاريخ=|تاريخ الوصول=1 November 2015|موقع=|ناشر=University of Texas at Austin|الأخير=Young|الأول=Dr. Bill| مسار أرشيف = https://web.archive.org/web/20170215074401/http://www.cs.utexas.edu:80/users/byoung/cs361/lecture44.pdf | تاريخ أرشيف = 15 فبراير 2017 }}</ref> في أغلب الأحيان، يكون المفتاح العام هو المفتاح المستخدم في عمليات التعمية، بينما المفتاح الخاص هو المفتاح الذي يقوم بفك عمليات التعمية. على سبيل المثال، إذا أراد المستخدم '''(أ)''' أن يرسل رسالة إلى المستخدم '''(ب)''' باستخدام التعمية غير التماثلية، المستخدم <u>أ</u> سيُعمِّي الرسالة بواسطة المفتاح العام للمستخدم <u>ب</u>, بعد ذلك، سيقوم بإرسال الرسالة كرسالة معماة. بعد هذه العملية، سيقوم المستخدم <u>ب</u> بفك تعمية هذه الرسالة باستخدام مفتاحه الخاص. إذا تدخل مستخدم جديد ليكون مستخدم '''(ج),''' لن يكون هو قادر على فك هذه التعمية الخاصة برسالة المستخدم <u>أ</u>, لأن المفتاح الخاص للمستخدم <u>ج</u> لا يتوافق مع المفتاح الخاص بالمستخدم <u>ب</u>.<ref name=":112">{{استشهاد بويب|عنوان=What is asymmetric cryptography and how do I use it?|مسار=http://blog.getclef.com/asymmetric-cryptography-use/|موقع=Two Factor Authenticity|تاريخ الوصول=2015-11-01| مسار أرشيف = https://web.archive.org/web/20160501091554/http://blog.getclef.com:80/asymmetric-cryptography-use/ | تاريخ أرشيف = 1 مايو 2016 }}</ref>

- تمتاز التعمية غير التماثلي بأنه أكثر حماية وأمن مقارنة بالتعمية التماثلية.<ref name="مولد تلقائيا1" />

== إدارة المفاتيح ==
قدم قسم «تعمية قاعدة البيانات المتماثلة وغير المتماثلة» مفهوم المفاتيح العامة والخاصة بأمثلة أساسية يتبادل فيها المستخدمون المفاتيح. يصبح عمل تبادل المفاتيح غير عملي من وجهة نظر لوجستية، عندما يحتاج العديد من الأفراد المختلفين إلى التواصل مع بعضهم البعض. في تعمية قاعدة البيانات، يتولى النظام تخزين المفاتيح وتبادلها. هذه العملية تسمى الإدارة الرئيسية. إذا لم تتم إدارة مفاتيح التعمية وتخزينها بشكل صحيح، فقد يتم تسريب البيانات الحساسة للغاية. بالإضافة إلى ذلك، إذا قام نظام إدارة المفاتيح بحذف مفتاح أو فقده، فإن المعلومات التي تعمَّى عبر المفتاح المذكور يتم «فقدانها» أيضًا. يعد تعقيد لوجستيات الإدارة الرئيسية أيضًا موضوعًا يجب أخذه في الاعتبار. مع زيادة عدد التطبيقات التي تستخدمها الشركة، يزداد أيضًا عدد المفاتيح التي تحتاج إلى تخزينها وإدارتها. وبالتالي، من الضروري إنشاء طريقة لإدارة المفاتيح من جميع التطبيقات من خلال قناة واحدة، والتي تعرف أيضًا باسم إدارة مفتاح المؤسسة.<ref name=":12">{{استشهاد بويب
| مسار = https://www.computerweekly.com/feature/Encryption-key-management-is-vital-to-securing-enterprise-data-storage
| عنوان = Encryption key management is vital to securing enterprise data storage
| موقع = ComputerWeekly
| تاريخ الوصول = 2015-11-02
| مسار أرشيف = https://web.archive.org/web/20180325232131/http://www.computerweekly.com:80/feature/Encryption-key-management-is-vital-to-securing-enterprise-data-storage | تاريخ أرشيف = 25 مارس 2018 }}</ref> يتم بيع حلول إدارة المفاتيح للمؤسسات بواسطة عدد كبير من الموردين في صناعة التكنولوجيا. توفر هذه الأنظمة بشكل أساسي حلاً مركزيًا لإدارة المفاتيح يتيح للمسؤولين إدارة جميع المفاتيح في النظام من خلال محور واحد.<ref>{{استشهاد بويب
| مسار = https://info.townsendsecurity.com/bid/62380/What-is-Enterprise-Key-Management
| عنوان = What is Enterprise Key Management?
| موقع = web.townsendsecurity.com
| تاريخ الوصول = 2015-11-02
| مسار أرشيف = https://web.archive.org/web/20160414073350/http://web.townsendsecurity.com/bid/62380/What-is-Enterprise-Key-Management | تاريخ أرشيف = 14 أبريل 2016 }}</ref> وبالتالي يمكن القول أن إدخال حلول إدارة مفاتيح المؤسسات لديه القدرة على تقليل المخاطر المرتبطة بالإدارة الرئيسية في سياق تعمية قاعدة البيانات، وكذلك لتقليل المشكلات اللوجيستية التي تنشأ عندما يحاول العديد من الأفراد القيام يدويًا مفاتيح الأسهم.

== التجزئة ==
يتم استخدام دوال الـ ([[دالة تجزئة بيان معمى|'''هاش''']]) في أنظمة قواعد البيانات كوسيلة لحماية البيانات الحساسة مثل كلمات المرور؛ ومع ذلك يتم استخدامه أيضًا لتحسين كفاءة الرجوع إلى قاعدة البيانات.<ref>{{استشهاد بويب
| مسار = https://searchsqlserver.techtarget.com/definition/hashing
| عنوان = What is hashing? - Definition from WhatIs.com
| موقع = SearchSQLServer
| تاريخ الوصول = 2015-11-01
| مسار أرشيف = https://web.archive.org/web/20190418174726/https://searchsqlserver.techtarget.com/definition/hashing | تاريخ أرشيف = 18 أبريل 2019 }}</ref> يتم التعامل مع البيانات المدخلة بواسطة خوارزمية التجزئة. تقوم خوارزمية التجزئة بتحويل البيانات المدخلة إلى سلسلة ذات طول ثابت يمكن تخزينها بعد ذلك في قاعدة بيانات. أنظمة التجزئة لها سمتان مهمتان للغاية سيتم تحديدهما الآن.

أولاً، تعد التجزئة «فريدة ومتكررة». على سبيل المثال، يؤدي تشغيل كلمة "cat" من خلال نفس خوارزمية التجزئة عدة مرات دائمًا إلى تجزئة نفس الشيء، ولكن من الصعب للغاية العثور على كلمة ستُرجع نفس التجزئة التي يجلبها "cat".<ref name=":5">{{استشهاد بويب
| مسار = https://www.metamorphosite.com/one-way-hash-encryption-sha1-data-software
| عنوان = How data encryption software creates one way hash files using the sha1 hashing algorithm.
| موقع = www.metamorphosite.com
| تاريخ الوصول = 2015-11-01
| مسار أرشيف = https://web.archive.org/web/20190213172128/http://www.metamorphosite.com:80/one-way-hash-encryption-sha1-data-software | تاريخ أرشيف = 13 فبراير 2019 }}</ref> ثانياً، خوارزميات التجزئة غير قابلة للانعكاس. لربط هذا مرة أخرى بالمثال المذكور أعلاه، سيكون من المستحيل تقريبًا تحويل ناتج خوارزمية التجزئة إلى المدخلات الأصلية، والتي كانت «قطة».<ref name=":6">{{استشهاد بويب
| مسار = https://spin.atomicobject.com/2014/11/20/encryption-symmetric-asymmetric-hashing/
| عنوان = Understanding Encryption – Symmetric, Asymmetric, & Hashing
| تاريخ = November 20, 2014
| موقع = Atomic Spin
| تاريخ الوصول = 2015-11-01
| مسار أرشيف = https://web.archive.org/web/20160601212741/https://spin.atomicobject.com/2014/11/20/encryption-symmetric-asymmetric-hashing/ | تاريخ أرشيف = 1 يونيو 2016 }}</ref> في سياق تعمية قاعدة البيانات، يتم استخدام التجزئة غالبًا في أنظمة [[كلمة مرور|كلمة المرور]]. عندما ينشئ المستخدم كلمة المرور لأول مرة، يتم تشغيلها من خلال خوارزمية التجزئة وحفظها كتجزئة. عندما يقوم المستخدم بتسجيل الدخول مرة أخرى إلى موقع الويب، يتم تشغيل كلمة المرور التي يدخلها من خلال خوارزمية التجزئة ثم تتم مقارنتها مع التجزئة المخزن.<ref name=":7">{{استشهاد بويب
| مسار = https://www.php.net/manual/en/faq.passwords.php#faq.passwords.hashing
| عنوان = PHP: Password Hashing - Manual
| موقع = php.net
| تاريخ الوصول = 2015-11-01
| مسار أرشيف = https://web.archive.org/web/20190831052530/https://www.php.net/manual/en/faq.passwords.php | تاريخ أرشيف = 31 أغسطس 2019 }}</ref> نظرًا لحقيقة أن التجزئات فريدة من نوعها، إذا كان كلا التجزيدين متطابقين، يُقال إن المستخدم أدخل كلمة المرور الصحيحة. أحد الأمثلة على دالة التجزئة الشهيرة '''SHA''' (خوارزمية التجزئة الآمنة) 256.<ref>{{استشهاد بويب
| مسار = http://www.movable-type.co.uk/scripts/sha256.html
| عنوان = JavaScript Implementation of SHA-256 Cryptographic Hash Algorithm {{!}} Movable Type Scripts
| موقع = www.movable-type.co.uk
| تاريخ الوصول = 2015-11-03
| مسار أرشيف = https://web.archive.org/web/20190302040332/http://www.movable-type.co.uk:80/scripts/sha256.html | تاريخ أرشيف = 2 مارس 2019 }}</ref>

=== عمليات التمليح ===
إحدى المشكلات التي تنشأ عند استخدام التجزئة لإدارة كلمة المرور في سياق تعمية قاعدة البيانات هي حقيقة أن المستخدم الضار يمكن أن يستخدم جدول قوس قزح (جدول الإدخال Hash)<ref name=":10">{{استشهاد بويب
| مسار = http://blog.kablamo.org/2013/12/18/authen-passphrase/
| عنوان = Salt and pepper - How to encrypt database passwords
| موقع = blog.kablamo.org
| تاريخ الوصول = 2015-11-01
| مسار أرشيف = https://web.archive.org/web/20190104224726/http://blog.kablamo.org:80/2013/12/18/authen-passphrase/ | تاريخ أرشيف = 4 يناير 2019 }}</ref> لخوارزمية التجزئة المحددة التي يستخدمها النظام. هذا من شأنه أن يسمح للفرد بفعالية فك تعمية التجزئة وبالتالي الوصول إلى كلمات المرور المخزنة.<ref name=":8">{{استشهاد بويب
| مسار = https://www.php.net/manual/en/faq.passwords.php#faq.passwords.salt
| عنوان = PHP: Password Hashing - Manual
| موقع = php.net
| تاريخ الوصول = 2015-11-01
| مسار أرشيف = https://web.archive.org/web/20190831052530/https://www.php.net/manual/en/faq.passwords.php | تاريخ أرشيف = 31 أغسطس 2019 }}</ref> الحل لهذه القضية هي عمليات«التمليح» الخاصة بالتجزئة. التمليح هي عملية تعمية أكثر من مجرد كلمة المرور في قاعدة البيانات. كلما زادت المعلومات التي تمت إضافتها إلى سلسلة يتم تجزئتها، زاد صعوبة تجميع جداول قوس قزح. على سبيل المثال، قد يجمع النظام بين [[بريد إلكتروني|البريد الإلكتروني]] للمستخدم وكلمة المرور في علامة تجزئة واحدة. هذه الزيادة في تعقيد التجزئة تعني أنه أكثر صعوبة وبالتالي أقل احتمالا لتوليد جداول قوس قزح. هذا يعني بطبيعة الحال أن تهديد فقدان البيانات الحساسة يتم تقليله من خلال تجزئات التمليح.<ref name=":9">{{استشهاد بويب
| مسار = https://addedbytes.com/blog/why-you-should-always-salt-your-hashes/
| عنوان = Why You Should Always Salt Your Hashes - Web Development in Brighton - Added Bytes
| موقع = Added Bytes
| تاريخ الوصول = 2015-11-01
| مسار أرشيف = https://web.archive.org/web/20170927014535/https://www.addedbytes.com/blog/why-you-should-always-salt-your-hashes | تاريخ أرشيف = 27 سبتمبر 2017 }}</ref>

=== تقنيات الفلفل ===
تتضمن بعض الأنظمة «تقنيات الفلفل» بالإضافة إلى عمليات التمليح في أنظمة التجزئة. نظم الفلفل مثيرة للجدل، ولكن لا يزال من الضروري شرح استخدامها.<ref name=":10" /> عملية الفلفل هي قيمة تضاف إلى كلمة مرور مجزأة مملحة.<ref name=":15">{{استشهاد بويب
| مسار = https://blog.ircmaxell.com/2012/04/properly-salting-passwords-case-against.html
| عنوان = ircmaxell's blog: Properly Salting Passwords, The Case Against Pepper
| موقع = blog.ircmaxell.com
| تاريخ الوصول = 2015-11-02
| مسار أرشيف = https://web.archive.org/web/20190214052515/https://blog.ircmaxell.com/2012/04/properly-salting-passwords-case-against.html | تاريخ أرشيف = 14 فبراير 2019 }}</ref> غالبًا ما يكون هذا الفلفل فريدًا لموقع ويب أو خدمة واحدة، ومن المهم ملاحظة أن الفلفل نفسه يضاف عادةً إلى جميع كلمات المرور المحفوظة في قاعدة البيانات.<ref name=":1">{{استشهاد بويب
| مسار = https://www.thales-esecurity.com/solutions/by-technology-focus/application-level-encryption
| عنوان = Application Encryption from Thales e-Security
| موقع = www.thales-esecurity.com
| تاريخ الوصول = 2015-10-25
| مسار أرشيف = https://web.archive.org/web/20170224083755/https://www.thales-esecurity.com/solutions/by-technology-focus/application-level-encryption | تاريخ أرشيف = 24 فبراير 2017 }}</ref> الناحية النظرية، فإن إدراج الفلفل في أنظمة تجزئة كلمات المرور لديه القدرة على تقليل مخاطر عمليات وجداول قوس قزح (الإدخال: جداول التجزئة)، بالنظر إلى خصوصية الفلفل على مستوى النظام، إلا أن الفوائد الحقيقية لتطبيق الفلفل هو في موضع خلاف كبير.

== التعمية على مستوى التطبيق ==
في تعمية مستوى التطبيق، يتم إكمال عملية تعمية البيانات بواسطة التطبيق الذي تم استخدامه لإنشاء أو تعديل البيانات المراد تعميتها. يعني هذا بشكل أساسي أن البيانات معماة قبل كتابتها إلى قاعدة البيانات. يسمح هذا الأسلوب الفريد للتعمية بتخصيص عملية التعمية لكل مستخدم بناءً على المعلومات (مثل الاستحقاقات أو الأدوار) التي يعرفها التطبيق عن مستخدميه.<ref name=":1" />

=== مزايا التعمية على مستوى التطبيق ===
للتعمية على مستوى التطبيق لديها القدرة على تبسيط عملية التعمية المستخدمة من قبل الشركة. إذا عمَّى أحد التطبيقات البيانات التي يكتبها / يعدلها من قاعدة بيانات، فلن تحتاج أداة تعمية ثانوية إلى الاندماج في النظام. تتعلق الميزة الرئيسية الثانية بالموضوع الرئيسي للسرقة. نظرًا لتعمية البيانات قبل كتابتها على الخادم، سيحتاج المتسلل إلى الوصول إلى محتويات قاعدة البيانات وكذلك التطبيقات التي تم استخدامها للتعمية ولفك تعمية محتويات قاعدة البيانات من أجل فك تعمية البيانات الحساسة.<ref name=":2">{{استشهاد بويب
| مسار = https://www.sans.org/reading-room/whitepapers/analyst/transparent-data-encryption-technologies-practices-database-encryption-34915
| عنوان = Transparent Data Encryption: New Technologies and Best Practices for Database Encryption
| تاريخ = April 2010
| موقع = Sans.org
| ناشر = SANS Institute
| تاريخ الوصول = 25 October 2015
| الأخير = Baccam
| الأول = Tanya
| مسار أرشيف = https://web.archive.org/web/20180412001230/https://www.sans.org/reading-room/whitepapers/analyst/transparent-data-encryption-technologies-practices-database-encryption-34915 | تاريخ أرشيف = 12 أبريل 2018 }}</ref>

=== عيوب التعمية على مستوى التطبيق ===
أول عيب مهم للتعمية على مستوى التطبيق هو أن التطبيقات التي تستخدمها الشركة سوف تحتاج إلى تعديل لتعمية البيانات بأنفسهم. هذا لديه القدرة على استهلاك كمية كبيرة من الوقت وغيرها من الموارد. نظرًا لطبيعة تكلفة الفرصة البديلة، قد لا تعتقد الشركات أن التعمية على مستوى التطبيق يستحق الاستثمار. بالإضافة إلى ذلك، قد يكون للتعمية على مستوى التطبيق تأثير محدود على أداء قاعدة البيانات. إذا عُمِّيت جميع البيانات الموجودة على قاعدة بيانات من قبل العديد من التطبيقات المختلفة، يصبح من المستحيل فهرسة أو البحث عن البيانات في قاعدة البيانات. لتوضيح ذلك في الواقع في شكل مثال أساسي: سيكون من المستحيل إنشاء مسرد بلغة واحدة لكتاب تم كتابته بـ 30 لغة. أخيرًا، يزداد تعقيد إدارة المفاتيح، حيث تحتاج العديد من التطبيقات المختلفة إلى صلاحية الوصول إلى تعمية البيانات وكتابتها في قاعدة البيانات.<ref name=":2" />

== مخاطر تعمية قاعدة البيانات ==
عند مناقشة موضوع تعمية قاعدة البيانات، من الضروري أن تكون على دراية بالمخاطر التي تنطوي عليها هذه العملية. ترتبط المجموعة الأولى من المخاطر بالإدارة الرئيسية. إذا لم تتم إدارة المفاتيح الخاصة في «نظام معزول»، فقد يكون لمسؤولي النظام ذوي النوايا الخبيثة القدرة على فك تعمية البيانات الحساسة باستخدام المفاتيح التي يمكنهم الوصول إليها. يؤدي المبدأ الأساسي للمفاتيح أيضًا إلى خطر محتمل ومحتمل جداً: إذا ضاعت المفاتيح، فستفقد البيانات المعماة بشكل أساسي أيضًا، حيث أن فك التعمية بدون مفاتيح يكاد يكون مستحيلًا.<ref name=":0">{{استشهاد بويب
| مسار = https://www.thales-esecurity.com/solutions/by-technology-focus/database-encryption
| عنوان = Database Encryption: Challenges, Risks, and Solutions
| موقع = www.thales-esecurity.com
| تاريخ الوصول = 2015-10-25
| مسار أرشيف = https://web.archive.org/web/20170224083835/https://www.thales-esecurity.com/solutions/by-technology-focus/database-encryption | تاريخ أرشيف = 24 فبراير 2017 }}</ref>

== إنظر أيضاً ==

* [[حوكمة البيانات]]

== المراجع ==
{{مراجع|30em}}
{{شريط بوابات|أمن المعلومات|تعمية|علم الحاسوب}}

[[تصنيف:أمن البيانات]]
[[تصنيف:أمن الحاسوب]]
[[تصنيف:ترميز]]
[[تصنيف:تعمية]]
تعمية قواعد البيانات يمكن تعريفها بالعملية التي تستخدم فيها الخوارزميات لتحويل النص والبيانات الموجودة في قواعد البيانات إلى نصوص وبيانات معماة، بحيث لا يمكن فك هذه التعمية. لذلك، يمكننا الفهم من أن الغرض من وجود التعمية في عالم قواعد البيانات هو لأجل الحماية ولضمان عدم وصول أشخاص غير مصرحين بالدخول على هذه البيانات والتعديل عليها أو إتلافها. وأيضا من فوائد تعمية المعلومات في قواعد البيانات هي تقليل الحوافز التي ربما تصب بمصلحة بعض المخترقين، حيث يتم بعض المخترقين بالاستفادة من البيانات التي تكون ذات معنى لهم، ولكن بوجود هذه التعمية، لن يتم الاستفادة من هذه البيانات بحيث ستكون معماة وغير مفهومة.

في هذه المقالة، سيتم شرح أهم التقنيات والطرق المستخدمة في تعمية قواعد البيانات.

 التعمية الشفافة (الخارجي) 
قواعد البيانات الخارجية أو كما يرمز لها بالإنجليزية (Transparent Data Encryption) "TDE", هي طريقة مستخدمة لتعمية كامل قاعدة البيانات، وبالتالي، يتم أيضا تعمية البيانات التي هي من نوع "data at rest" في قاعدة البيانات نفسها. وللتوضيح، "data at rest" يمكن شرحها أو وصفها بأنها بيانات غير مفعلة أو نشطة ولم يتم التعديل عليها أو نشرها عن طريق الشبكة. على سبيل المثال، يكون الملف النصي المخزن في جهازك الحاسوبي في وضع "at rest" حتى تقوم بفتح الملف وتعديله. يتم حفظ وتخزين البيانات التي هي على شكل "data at rest" في أي من وسائل التخزين الشريطية مثل الأشرطة الثابتة أو الأقراص الصلبة، ولكن عند تخزين وحفظ كميات كبيرة من المعلومات الحساسية في تلك الأجهزة، تصبح المسألة حساسة جدا لأنها تتعلق بالأمن والحماية والخوف من السرقة أو ضياع وتلف تلك المعلومات.

هذا النوع من تعمية قواعد البيانات وهو كما عرفناه سابقا بالمصطلح "TDE" يمتاز بأنه يضمن الحماية لتلك البيانات المعماة على أجهزة التخزين والوسائط، بحيث أنه يمنع الأشخاص الذين يعملون تحت شعار الاختراق والعبث من قراءة تلك البيانات.

ولذلك، البيانات التي لايمكن قرائتها تصبح فعليا بدون أي قيمة، لذا يلعب هذا النوع من التعمية دور كبير في تقليل الحوافز لدى المخترقين الراغبين بسرقة المعلومات، وينسب أيضا لهذا النوع من التعمية قوة الشفافية الموجودة. تكمن هذه القوة في أنه لايجب تغيير التطبيقات وإعداداتها لأجل مهمة التعمية بنوع "TDE". توجد نقطة مهمة وهي أن كما ذكرنا مسبقا في أن هذا النوع يُعمِّي معلومات قاعدة البيانات كافة بما فيها النسخ الاحتياطية (نسخ احتياطي) من قاعدة البيانات نفسها. وتأتي خاصية الشفافية الموجودة بهذا النوع من التعمية في أنه تعمَّى البيانات في حالة تخزينها، ويتم بعد ذلك فك تعميتها عند إستدعائها من قبل ذاكرة النظام. تُعمَّى المحتويات الموجودة في قاعدة البيانات باستخدام مفتاح التماثل أو بالإنجليزية «symmetric key», وغالبا مايدعى بمفتاح تعمية قواعد البيانات.

 تعمية الأعمدة 
لفهم هذا النوع من التعمية بشكل أفضل، من المهم جدا فهم العناصر والقواعد الأساسية في قاعدة البيانات نفسها. من المعلوم أن قاعدة البيانات تحتوي على أعمدة وصفوف، لذا قاعدة البيانات النموذجية ذات العلاقات فعليا تنقسم إلى جداول، وهذه الجداول تنقسم أيضا إلى أعمدة، بحيث أنه هذه الأعمدة تحتوي على صفوف من البيانات. مقارنة بالتعمية الشفافة (TDE), فإن التعمية الشفافة تعمي عناصر قاعدة البيانات كافةً، بينما تعمية الأعمدة تعمِّي الأعمدة فقط داخل قواعد البيانات. من المهم المعرفة بأن هناك نقاط قوة وضعف عند المقارنة بنوعين من التعمية(الشفاف والأعمدة).

أولا، عند التعمية بطريقة الأعمدة، فإن القدرة على تعمية عناصر الأعمدة كلها تكون أكثر مرونة مقارنة بالتعمية الشفافة مثل (TDE). ثانيا، عند التعمية بطريقة الأعمدة، فإننا نزيد من مستوى الحماية والأمن، والفضل ذلك يعود إلى مفاتيح التعمية المتاحة للإستخدام في هذا النوع. للتوضيح، يمكننا استخدام مفاتيح تعمية مستقلة وفريدة من نوعها عند التعامل مع كل عمود من أعمدة قاعدة البيانات. ومع كل ذلك، فإن واحد من أهم نقاط الضعف الموجودة في هذا النوع هي السرعة. عندما نقوم باستخدام مفاتيح التعمية لتعمية كل عمود في قاعدة البيانات على حده، فإن الأداء العام لقاعدة البيانات ينخفض.

 تعمية الحقول 
هناك أعمال تجريبية قائمة على توفير عمليات قواعد البيانات مثل البحث والعمليات الحاسبية الأخرى على حقول معماة ومن دون الحاجة إلى فك تعمية هذه الحقول. المبتغى من قوة عمليات التعمية هي بأن تكون عشوائية، بحيث تكون هناك نتيجة مختلفة في كل مرة يتم فيها التعمية. تعرف هذا التقنية باسم (التعمية الاحتمالية) أو بالإنجليزية (Probabilistic Encryption). تعد تعمية الحقول أضعف من التعمية العشوائية أو الاحتمالية، ولكن هذا النوع يسمح أيضا للمستخدمين بأن يقوموا باختبار مستوى المساواة ومن دون القيام بفك تعمية البيانات.

 تعمية نظام الملفات 

 نظام تعمية الملفات (EFS) 
من المهم ملاحظة أن تقنيات تعمية قواعد البيانات التقليدية تعمي وتفك تعمية محتويات قاعدة البيانات. تتم إدارة قواعد البيانات بواسطة «أنظمة إدارة قواعد البيانات» (DBMS) التي تعمل على رأس نظام تشغيل موجود (OS). هذا يثير مخاوف أمنية محتملة، لأن قاعدة البيانات المعماة قد تعمل على نظام تشغيل يمكن الوصول إليه وهشاش أو ضعيف. يمكن لـ EFS تعمية البيانات التي لا تشكل جزءًا من نظام قاعدة البيانات، مما يعني أن نطاق التعمية الخاص بـ EFS أوسع بكثير مقارنةً بنظام مثل TDE قادر فقط على تعمية ملفات قاعدة البيانات. بينما تعمل EFS على توسيع نطاق التعمية، إلا أنها تقلل أيضًا من أداء قاعدة البيانات ويمكن أن تسبب مشكلات في الإدارة حيث يتطلب مسؤولو النظام الوصول إلى نظام التشغيل لاستخدام EFS. نظرًا للمشاكل المتعلقة بالأداء، لا يتم استخدام EFS عادةً في تطبيقات قواعد البيانات التي تتطلب مدخلات ومخرجات متكررة لقاعدة البيانات. من أجل تعويض مشكلات الأداء، يوصى غالبًا باستخدام أنظمة EFS في بيئات بها عدد قليل من المستخدمين.

 تعمية القرص الكامل 
BitLocker ليس لديه نفس الأداء المرتبط بـ EFS.

 تعمية قاعدة البيانات التماثلية وغير التماثلية 
تصغير|عرض مرئي للتعمية التماثلية (symmetric encryption)

 التعمية التماثلية 
يعرف هذا النوع باسم (symmetric database encryption), حيث أنه يشترط وجود مفتاح تعمية خاص يدعى (private key), ويتم إيداع هذا المفتاح وربطه وإستخدامه للبيانات المخزنة والمستدعية من قبل قاعدة البيانات. قبل عملية فك تعمية هذه البيانات، يقوم هذا المفتاح الخاص بالتعديل والتغيير بحيث أنه يعمل على جعل البيانات غير قابلة للقراءة. تكون هذه البيانات معماة عندما تكون مخزنة ومحفوظة، وتكون بعد ذلك غير معماة عندما يتم فتحها، وتنشأ هاذه الخطوة عندما يكون المستخدم نفسه على علم بالمفتاح الخاص (private key) الذي تم إستخدامه هنا. علاوة على ذلك، من المهم عند مشاركة البيانات عبر قاعدة البيانات مابين شخص مرسل ومستقبل بأن يتم استخدام مفتاح آخر يدعى بالمفتاح السري أو بالإنجليزية (secret key) من قبل الشخص المرسل، ومن الضروري بأن يتم توفير نسخه من هذا المفتاح السري للشخص المستقبل للمشاركة التي تمت من الشخص المرسل له، بعد ذلك يمكن لهذا الشخص المستقبل للبيانات بأن يفك تعميتها وقرائتها بعد ذلك.

- تتميز التعمية التماثلية بالسرعة، لأنها تمتلك خاصية استخدام مفتاح تعمية واحد للعمليات.

 التعمية غير التماثلية 
بالإنجليزية تدعى هذا التعمية بال (Asymmetric database encryption), حيث أنه يشترط وجود مفتاحان للتعمية يعمل كل منهما على حده. هذان النوعان تسمى (private key & public key) أو «المفتاح العام» و«المفتاح الخاص». يستطيع أي شخص الوصول إلى المفتاح العام، ولكل شخص أو مستخدم مفتاح عام مختلف ومميز يختص به. وبالجهة المقابلة، المفتاح الخاص هو مفتاح متميز ومختلف ولايستطيع أحد الوصول إليه إلا بواسطة شخص أو مستخدم واحد فقط. في أغلب الأحيان، يكون المفتاح العام هو المفتاح المستخدم في عمليات التعمية، بينما المفتاح الخاص هو المفتاح الذي يقوم بفك عمليات التعمية. على سبيل المثال، إذا أراد المستخدم (أ) أن يرسل رسالة إلى المستخدم (ب) باستخدام التعمية غير التماثلية، المستخدم أ سيُعمِّي الرسالة بواسطة المفتاح العام للمستخدم ب, بعد ذلك، سيقوم بإرسال الرسالة كرسالة معماة. بعد هذه العملية، سيقوم المستخدم ب بفك تعمية هذه الرسالة باستخدام مفتاحه الخاص. إذا تدخل مستخدم جديد ليكون مستخدم (ج), لن يكون هو قادر على فك هذه التعمية الخاصة برسالة المستخدم أ, لأن المفتاح الخاص للمستخدم ج لا يتوافق مع المفتاح الخاص بالمستخدم ب.

- تمتاز التعمية غير التماثلي بأنه أكثر حماية وأمن مقارنة بالتعمية التماثلية.

 إدارة المفاتيح 
قدم قسم «تعمية قاعدة البيانات المتماثلة وغير المتماثلة» مفهوم المفاتيح العامة والخاصة بأمثلة أساسية يتبادل فيها المستخدمون المفاتيح. يصبح عمل تبادل المفاتيح غير عملي من وجهة نظر لوجستية، عندما يحتاج العديد من الأفراد المختلفين إلى التواصل مع بعضهم البعض. في تعمية قاعدة البيانات، يتولى النظام تخزين المفاتيح وتبادلها. هذه العملية تسمى الإدارة الرئيسية. إذا لم تتم إدارة مفاتيح التعمية وتخزينها بشكل صحيح، فقد يتم تسريب البيانات الحساسة للغاية. بالإضافة إلى ذلك، إذا قام نظام إدارة المفاتيح بحذف مفتاح أو فقده، فإن المعلومات التي تعمَّى عبر المفتاح المذكور يتم «فقدانها» أيضًا. يعد تعقيد لوجستيات الإدارة الرئيسية أيضًا موضوعًا يجب أخذه في الاعتبار. مع زيادة عدد التطبيقات التي تستخدمها الشركة، يزداد أيضًا عدد المفاتيح التي تحتاج إلى تخزينها وإدارتها. وبالتالي، من الضروري إنشاء طريقة لإدارة المفاتيح من جميع التطبيقات من خلال قناة واحدة، والتي تعرف أيضًا باسم إدارة مفتاح المؤسسة. يتم بيع حلول إدارة المفاتيح للمؤسسات بواسطة عدد كبير من الموردين في صناعة التكنولوجيا. توفر هذه الأنظمة بشكل أساسي حلاً مركزيًا لإدارة المفاتيح يتيح للمسؤولين إدارة جميع المفاتيح في النظام من خلال محور واحد. وبالتالي يمكن القول أن إدخال حلول إدارة مفاتيح المؤسسات لديه القدرة على تقليل المخاطر المرتبطة بالإدارة الرئيسية في سياق تعمية قاعدة البيانات، وكذلك لتقليل المشكلات اللوجيستية التي تنشأ عندما يحاول العديد من الأفراد القيام يدويًا مفاتيح الأسهم.

 التجزئة 
يتم استخدام دوال الـ (هاش) في أنظمة قواعد البيانات كوسيلة لحماية البيانات الحساسة مثل كلمات المرور؛ ومع ذلك يتم استخدامه أيضًا لتحسين كفاءة الرجوع إلى قاعدة البيانات. يتم التعامل مع البيانات المدخلة بواسطة خوارزمية التجزئة. تقوم خوارزمية التجزئة بتحويل البيانات المدخلة إلى سلسلة ذات طول ثابت يمكن تخزينها بعد ذلك في قاعدة بيانات. أنظمة التجزئة لها سمتان مهمتان للغاية سيتم تحديدهما الآن.

أولاً، تعد التجزئة «فريدة ومتكررة». على سبيل المثال، يؤدي تشغيل كلمة "cat" من خلال نفس خوارزمية التجزئة عدة مرات دائمًا إلى تجزئة نفس الشيء، ولكن من الصعب للغاية العثور على كلمة ستُرجع نفس التجزئة التي يجلبها "cat". ثانياً، خوارزميات التجزئة غير قابلة للانعكاس. لربط هذا مرة أخرى بالمثال المذكور أعلاه، سيكون من المستحيل تقريبًا تحويل ناتج خوارزمية التجزئة إلى المدخلات الأصلية، والتي كانت «قطة». في سياق تعمية قاعدة البيانات، يتم استخدام التجزئة غالبًا في أنظمة كلمة المرور. عندما ينشئ المستخدم كلمة المرور لأول مرة، يتم تشغيلها من خلال خوارزمية التجزئة وحفظها كتجزئة. عندما يقوم المستخدم بتسجيل الدخول مرة أخرى إلى موقع الويب، يتم تشغيل كلمة المرور التي يدخلها من خلال خوارزمية التجزئة ثم تتم مقارنتها مع التجزئة المخزن. نظرًا لحقيقة أن التجزئات فريدة من نوعها، إذا كان كلا التجزيدين متطابقين، يُقال إن المستخدم أدخل كلمة المرور الصحيحة. أحد الأمثلة على دالة التجزئة الشهيرة SHA (خوارزمية التجزئة الآمنة) 256.

 عمليات التمليح 
إحدى المشكلات التي تنشأ عند استخدام التجزئة لإدارة كلمة المرور في سياق تعمية قاعدة البيانات هي حقيقة أن المستخدم الضار يمكن أن يستخدم جدول قوس قزح (جدول الإدخال Hash) لخوارزمية التجزئة المحددة التي يستخدمها النظام. هذا من شأنه أن يسمح للفرد بفعالية فك تعمية التجزئة وبالتالي الوصول إلى كلمات المرور المخزنة. الحل لهذه القضية هي عمليات«التمليح» الخاصة بالتجزئة. التمليح هي عملية تعمية أكثر من مجرد كلمة المرور في قاعدة البيانات. كلما زادت المعلومات التي تمت إضافتها إلى سلسلة يتم تجزئتها، زاد صعوبة تجميع جداول قوس قزح. على سبيل المثال، قد يجمع النظام بين البريد الإلكتروني للمستخدم وكلمة المرور في علامة تجزئة واحدة. هذه الزيادة في تعقيد التجزئة تعني أنه أكثر صعوبة وبالتالي أقل احتمالا لتوليد جداول قوس قزح. هذا يعني بطبيعة الحال أن تهديد فقدان البيانات الحساسة يتم تقليله من خلال تجزئات التمليح.

 تقنيات الفلفل 
تتضمن بعض الأنظمة «تقنيات الفلفل» بالإضافة إلى عمليات التمليح في أنظمة التجزئة. نظم الفلفل مثيرة للجدل، ولكن لا يزال من الضروري شرح استخدامها. عملية الفلفل هي قيمة تضاف إلى كلمة مرور مجزأة مملحة. غالبًا ما يكون هذا الفلفل فريدًا لموقع ويب أو خدمة واحدة، ومن المهم ملاحظة أن الفلفل نفسه يضاف عادةً إلى جميع كلمات المرور المحفوظة في قاعدة البيانات. الناحية النظرية، فإن إدراج الفلفل في أنظمة تجزئة كلمات المرور لديه القدرة على تقليل مخاطر عمليات وجداول قوس قزح (الإدخال: جداول التجزئة)، بالنظر إلى خصوصية الفلفل على مستوى النظام، إلا أن الفوائد الحقيقية لتطبيق الفلفل هو في موضع خلاف كبير.

 التعمية على مستوى التطبيق 
في تعمية مستوى التطبيق، يتم إكمال عملية تعمية البيانات بواسطة التطبيق الذي تم استخدامه لإنشاء أو تعديل البيانات المراد تعميتها. يعني هذا بشكل أساسي أن البيانات معماة قبل كتابتها إلى قاعدة البيانات. يسمح هذا الأسلوب الفريد للتعمية بتخصيص عملية التعمية لكل مستخدم بناءً على المعلومات (مثل الاستحقاقات أو الأدوار) التي يعرفها التطبيق عن مستخدميه.

 مزايا التعمية على مستوى التطبيق 
للتعمية على مستوى التطبيق لديها القدرة على تبسيط عملية التعمية المستخدمة من قبل الشركة. إذا عمَّى أحد التطبيقات البيانات التي يكتبها / يعدلها من قاعدة بيانات، فلن تحتاج أداة تعمية ثانوية إلى الاندماج في النظام. تتعلق الميزة الرئيسية الثانية بالموضوع الرئيسي للسرقة. نظرًا لتعمية البيانات قبل كتابتها على الخادم، سيحتاج المتسلل إلى الوصول إلى محتويات قاعدة البيانات وكذلك التطبيقات التي تم استخدامها للتعمية ولفك تعمية محتويات قاعدة البيانات من أجل فك تعمية البيانات الحساسة.

 عيوب التعمية على مستوى التطبيق 
أول عيب مهم للتعمية على مستوى التطبيق هو أن التطبيقات التي تستخدمها الشركة سوف تحتاج إلى تعديل لتعمية البيانات بأنفسهم. هذا لديه القدرة على استهلاك كمية كبيرة من الوقت وغيرها من الموارد. نظرًا لطبيعة تكلفة الفرصة البديلة، قد لا تعتقد الشركات أن التعمية على مستوى التطبيق يستحق الاستثمار. بالإضافة إلى ذلك، قد يكون للتعمية على مستوى التطبيق تأثير محدود على أداء قاعدة البيانات. إذا عُمِّيت جميع البيانات الموجودة على قاعدة بيانات من قبل العديد من التطبيقات المختلفة، يصبح من المستحيل فهرسة أو البحث عن البيانات في قاعدة البيانات. لتوضيح ذلك في الواقع في شكل مثال أساسي: سيكون من المستحيل إنشاء مسرد بلغة واحدة لكتاب تم كتابته بـ 30 لغة. أخيرًا، يزداد تعقيد إدارة المفاتيح، حيث تحتاج العديد من التطبيقات المختلفة إلى صلاحية الوصول إلى تعمية البيانات وكتابتها في قاعدة البيانات.

 مخاطر تعمية قاعدة البيانات 
عند مناقشة موضوع تعمية قاعدة البيانات، من الضروري أن تكون على دراية بالمخاطر التي تنطوي عليها هذه العملية. ترتبط المجموعة الأولى من المخاطر بالإدارة الرئيسية. إذا لم تتم إدارة المفاتيح الخاصة في «نظام معزول»، فقد يكون لمسؤولي النظام ذوي النوايا الخبيثة القدرة على فك تعمية البيانات الحساسة باستخدام المفاتيح التي يمكنهم الوصول إليها. يؤدي المبدأ الأساسي للمفاتيح أيضًا إلى خطر محتمل ومحتمل جداً: إذا ضاعت المفاتيح، فستفقد البيانات المعماة بشكل أساسي أيضًا، حيث أن فك التعمية بدون مفاتيح يكاد يكون مستحيلًا.

 إنظر أيضاً 

 حوكمة البيانات

 المراجع 

تصنيف:أمن البيانات
تصنيف:أمن الحاسوب
تصنيف:ترميز
تصنيف:تعمية