الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

التشفير وفك التشفير بأستخدام ال TSQL Passphrase

بدأه عمر المستشار في 23 أبريل 2012 · 2 رد · 1,888 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

سلام عليكم اخواني الكرام

اريد ان اقدم مثال لكيفية تشفير كلمات المرور بأستخدام ال TSQL Passphrase

encryption.jpg

ولا اعرف ان كان تصنيف المشروع ضمن التطبيقات الويب او ضمن قواعد البيانات على العموم لنترك التصنيف وليستفاد منه من يستفاد لندخل في الشرح مباشرتاً

سوف اقوم بأنشاء قاعدة بيانات اخزن فيها معلومات كلمات المرور المشفرة المرسلة من تطبيق الويب خاصتنا

اترككم مع سكربت انشاء قاعدة البيانات والجدول المطلوب


USE [master]
GO
CREATE DATABASE [Encryption] ON PRIMARY
( NAME = N’Encryption’, FILENAME = N’C:\Program Files\Microsoft SQL Server\MSSQL10_50.DBADMINISTRATOR\MSSQL\DATA\Encryption.mdf’ , SIZE = 3072KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB )
LOG ON
( NAME = N’Encryption_log’, FILENAME = N’C:\Program Files\Microsoft SQL Server\MSSQL10_50.DBADMINISTRATOR\MSSQL\DATA\Encryption_log.ldf’ , SIZE = 1024KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)
GO

ALTER DATABASE [Encryption] SET COMPATIBILITY_LEVEL = 90
GO

الان سكربت ان شاء الجدول


CREATE TABLE [dbo].[TBL_Users](
[ID_User] [int] IDENTITY(1,1) NOT NULL,
[User_Name] [nvarchar](50) NULL,
[Password] [varchar](100) NULL,
CONSTRAINT [PK_TBL_Users] PRIMARY KEY CLUSTERED
(
[ID_User] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO

SET ANSI_PADDING OFF
GO

ملاحظة اخواني الكرام طريقة التشفير بواسطة ال Passphrase من الطرق المتبعه في ال SQL Server حيث يكون التشفير في الاساس يعتمد على Password ونفس الباسورد الذي استعمل للتشفير يستعمل لفك التشفير

الان اخواني الكرام سوف اقوم بأضافة Stordprocuder داخل قاعدة البيانات خاص بعملية الادخال والتشفير للمدخلات المطلوبة

كما في الكود التالي



Create Proc [dbo].[TestEncryption]
(
@User_Name nvarchar(50),
@Pass varchar(100)
)
as

–ألصيغة العامة للتشفير هي التالية
–DECLARE @EncryptedText VARBINARY(80)
–SELECT @EncryptedText =
–EncryptByPassphrase(‘<EnterStrongPasswordHere>’,'Encrypted Text’)

DECLARE @EncryptedText varchar(100)
Set @EncryptedText =EncryptByPassphrase(’123456′,@Pass)

begin
insert into TBL_Users(User_Name,Password)values(@User_Name,@EncryptedText)

end

سوف اقوم بخلق ستورد بروسيجر لفك التشفير داخل قاعدة البيانات

كما في المثال التالي المتبع في مثالنا


Create Proc [dbo].[TestDecrypt]
(
@ID_User int,
@DecryptdText nvarchar(200) out
)
as
begin
–الصيغة الاساسية لعملية التشفير هي التالية
–CAST(DecryptByPassPhrase(‘<EnterStrongPasswordHere>’,'text’)
–AS VARCHAR(MAX))
Set @DecryptdText=CAST(DecryptByPassPhrase(’123456′,(Select Password From TBL_Users where ID_User=@ID_User))
AS VARCHAR(15));


الان في المثال قمت بعمل تطبيق ويب بسيط بواسطة ال ASP.NET لمشاهدة الحالة بوضوح من عملية ادخال والتشفير وعملية فك للتشفير لكلمة المرور

المثال على الرابط التالي

http://www.4shared.com/rar/2hJ-inY9/Omar_Ali_Iraq_Dot_Net.html

او التحميل من المرفقات

شكراً لسعة صدركم وارجوا ان اكون قد وفقت في ايصال معلومة ما

1
1vAO2-d3nY_335990295.gif

يارب ساعدني كلما اتقدم خطوة اجد نفسي متأخر في خطوات

154047116.gif
#2

اكرمك الله

2
#3
KARIMSOFT كتب:

اكرمك الله

الله يبارك بيك اشكر دعوتك الكريمة واشكر تواجدتك

1
1vAO2-d3nY_335990295.gif

يارب ساعدني كلما اتقدم خطوة اجد نفسي متأخر في خطوات

154047116.gif

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…