PDA

View Full Version : تغییر طول رشته در sql server



mehdi5106
سه شنبه 22 تیر 1389, 09:05 صبح
تو برنامه ای که نوشتم کلمه های عبور رمز نگاری می شوند .مشکلی که به وجود امده این است که کلمه عبور وارد شده توسط کاربر پس از رمزنگاری به رشته ای با طول بیش از 20 کاراکتر می باشد .این درحالیست که در بانک فقط بیست کارکتر آن ذخیره می شود.
نوع داده در بانک نیز از نوع Nvarchar(50) می باشد.

همه انواع داده را نیز انتحان کردم ولی جواب نگرفتم...
به نظر شما چه مشکلی وجود دارد!؟

dr_jacky_2005
سه شنبه 22 تیر 1389, 09:23 صبح
تو برنامه ای که نوشتم کلمه های عبور رمز نگاری می شوند .مشکلی که به وجود امده این است که کلمه عبور وارد شده توسط کاربر پس از رمزنگاری به رشته ای با طول بیش از 20 کاراکتر می باشد .این درحالیست که در بانک فقط بیست کارکتر آن ذخیره می شود.
نوع داده در بانک نیز از نوع Nvarchar(50) می باشد.

همه انواع داده را نیز انتحان کردم ولی جواب نگرفتم...
به نظر شما چه مشکلی وجود دارد!؟

شما
(50)nvarchar
گفتین توو دیتابیس ولی فقط 20 تا کاراکتر رو نگه میداره؟
میشه شبه کد که encode رو انجام میده رو اینجا بزارین؟

mehdi5106
سه شنبه 22 تیر 1389, 09:45 صبح
تو کد که مشکل ندارم
وقتی که مقادیر به بانک ارسال میشه ، این مشکل وجود داره و بیشتر از 20 کاراکتر ذخیره نمیشه.
با الگوریتم Rijndael

RJ.Key = MD.ComputeHash(ASCIIEncoding.Default.GetBytes(Prop erties.Resources.SecureKey.ToString()));
RJ.Mode = CipherMode.ECB;
byte[] ToEncrypt = Encoding.Default.GetBytes(TextToEncrypt);
return Convert.ToBase64String(RJ.CreateEncryptor().Transf ormFinalBlock(ToEncrypt, 0, ToEncrypt.Length));

dr_jacky_2005
سه شنبه 22 تیر 1389, 10:10 صبح
تو کد که مشکل ندارم
وقتی که مقادیر به بانک ارسال میشه ، این مشکل وجود داره و بیشتر از 20 کاراکتر ذخیره نمیشه.
با الگوریتم Rijndael

RJ.Key = MD.ComputeHash(ASCIIEncoding.Default.GetBytes(Prop erties.Resources.SecureKey.ToString()));
RJ.Mode = CipherMode.ECB;
byte[] ToEncrypt = Encoding.Default.GetBytes(TextToEncrypt);
return Convert.ToBase64String(RJ.CreateEncryptor().Transf ormFinalBlock(ToEncrypt, 0, ToEncrypt.Length));


از سمت برنامه یک
trace
کن
ببین طول اینور چقده!نکنه واقعا 20 تاست.
اگه نه بیشتره،میفهمیم که مشکل از دیتابیسه.