PDA

View Full Version : رمز گذاری ورمز گشایی در sql server



proreza2
دوشنبه 13 دی 1389, 21:06 عصر
سلام
میخواهم تو sql server دیتابیس موردنظرم را داده هایش را رمز گذاری ورمز گشاییی کنم داده هاش را یعنی با استفاده از
user defined functionsکه اگر کد یا الگوریتمی یا بهتر بگم فانکشنی برای رمز گذاری ورمز گشایی هست بفرماید
ممنون:قلب:

AminSobati
دوشنبه 13 دی 1389, 22:08 عصر
سلام دوست عزیزم،
از نسخه 2005 به بعد متدهای متنوعی برای این کار وجود داره و نیاز به استفاده از User Defined Function نیست

proreza2
دوشنبه 13 دی 1389, 23:03 عصر
ممنون دوست عزیز از توجه شما
من از ورژن 2005 استفاده میکنم ومیخوام که از فانکشن استفاده کنم

AminSobati
سه شنبه 14 دی 1389, 10:37 صبح
در 2005 چهار نوع Encryption داریم، من Symmetric Key رو پیشنهاد میکنم.

proreza2
سه شنبه 14 دی 1389, 21:29 عصر
ممنون
خوب مسئله اینه که نمیتونم کد یا الگوریتمی را پیدا کنم برای encrypt ,decryptکردن دیتابیس ام ازش استفاده کنم

AminSobati
سه شنبه 14 دی 1389, 22:51 عصر
کجا رو Search کردین که پیدا نشد!

proreza2
چهارشنبه 15 دی 1389, 00:11 صبح
تقربیا جاهای را سرچ کردم که به نتیجه نرسیدم وبه این انجمن رجوع کردم !!!!

iman_Delphi
چهارشنبه 15 دی 1389, 16:57 عصر
سلام دوست عزیز

اگه اینجا رجوع بفرمایین مشاهده میکنید که بحث زیادی شده
>>
http://www.sqlservercentral.com/articles/Security/encryptfunction/372/
البته لینک های بالا پیش فرض خود SQL هست و استاندارد هست


اما اگر الگوریتم میخواین که فانکشنش کنیین باید به الگوریتم های زیر رجوع کنید و خودتون فانکشن بنویسین

>>


http://www.google.com/search?hl=en&source=hp&biw=1024&bih=649&q=Function+Encrypt+data&aq=f&aqi=g-v9g-sv1&aql=&oq=&gs_rfai=

با هر 2 جستجو میتوان یک کتری آب جوش در سرور های گوگل به وجود آورد

proreza2
چهارشنبه 15 دی 1389, 17:37 عصر
ممنون دوست عزیز
ولی لینک اول به دردم نخورد
لینک دومی هم جستجو بود که خودم خیلیاز این جستجو ها کردم من اگه فانکشن نویس بودم حالا اینجا چه کارمیکردم!!!!

iman_Delphi
چهارشنبه 15 دی 1389, 17:40 عصر
خب اگه از استاندارد خود اس کیو ال نمیخواین استفاده کنیین نیازتون رو کامل شرح بدین تا کمکتون کنیم

proreza2
چهارشنبه 15 دی 1389, 17:54 عصر
دوست عزیز
خوب من گفتم که یک فانکشن خیلی ساده باشه که دیتابیس مورد نظرم را رمز گذاری ورمز گشایی کنه
این فانکشن را داشتم ولی ارور میداد

Alter FUNCTION uf_XEncrupt (@src VARCHAR (128), @key VARCHAR (128))
RETURNS VARCHAR (128)
AS


BEGIN
DECLARE @encryptedvalue varchar(128),
@charpos smallint,
@srcpos smallint
SELECT @encryptedvalue = '',
@charpos = 1,
@srcpos = 1
WHILE (@charpos <= datalength(@src))
begin
SELECT @encryptedvalue = @encryptedvalue + char(ascii(substring(@src, @charpos, 1) ) ^ ascii(substring(@key, @srcpos, 1))),
@charpos = @charpos + 1,
@srcpos = @srcpos + 1
if @srcpos > len(@key)
Select @srcpos = 1
end
RETURN @encryptedvalue
END
ارور تو
uf_XEncrupt میداد

AminSobati
چهارشنبه 15 دی 1389, 18:56 عصر
http://dotnetslackers.com/articles/sql/IntroductionToSQLServerEncryptionAndSymmetricKeyEn cryptionTutorial.aspx

http://benjii.me/2010/05/how-to-use-sql-server-encryption-with-symmetric-keys/

proreza2
چهارشنبه 15 دی 1389, 23:26 عصر
ممنون دوست عزیز
منبع خوبی بود (ولی من مبتدی هستم)اوننا رو خوندم وترجمه اش را هم خودم ولی
طبق اون ها وقتی میخواهم یک فانکشن را ایجاد کنم مثلا طبق سایت زیر میرم
http://benjii.me/2010/05/how-to-use-sql-server-encryption-with-symmetric-keys/
در Create a Database Master Key
به دستور
MASTER
ارور میدهد نمیدونم چرا
اگر یک دیتابیس نمونه ایجاد شده از اون فانکشن ها را بزاری ممنون میشم