PDA

View Full Version : توابع رمزنگاری در جاوار اسکریپت



shahab_ksh
دوشنبه 10 دی 1386, 13:46 عصر
آیا توابع رمزنگاری با الگوریتم مشترک همراه با کلید بین زبانهای برنامه نوسی وجود داره !؟

مثلا بین javascript و asp.net ؟!

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

raravaice
سه شنبه 11 دی 1386, 14:08 عصر
سلام

اگر امنیت برات مهمه از آماده ها استفاده نکنه وگرنه از Base64 استفاده کن.




string str64;
string str64back;
string str="Vikram";

str64 = Convert.ToBase64String(System.Text.Encoding.Unicod e.GetBytes(str));

str64back = Text.Encoding.Unicode.GetString(Convert.FromBase64 String(str64));

mehrdad201
سه شنبه 11 دی 1386, 16:05 عصر
ببخشید میشه در این مورد یه سمپل معرفی کنید....

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

raravaice
سه شنبه 11 دی 1386, 16:32 عصر
کد سمت CLIENT





<script type="text/javascript">

var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwx yz0123456789+/=";

function encode64(input) {
var output = "";
var chr1, chr2, chr3;
var enc1, enc2, enc3, enc4;
var i = 0;

do {
chr1 = input.charCodeAt(i++);
chr2 = input.charCodeAt(i++);
chr3 = input.charCodeAt(i++);

enc1 = chr1 >> 2;
enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
enc4 = chr3 & 63;

if (isNaN(chr2)) {
enc3 = enc4 = 64;
} else if (isNaN(chr3)) {
enc4 = 64;
}

output = output + keyStr.charAt(enc1) + keyStr.charAt(enc2) +
keyStr.charAt(enc3) + keyStr.charAt(enc4);
} while (i < input.length);

return output;
}

</script>



با کد جاوا اسکریپت بالا توی صفحه چیزی رو که میخوای کد کن.
البته فقط برای کاراکتر هایی که unicode نیست اگر میخوا unicode هم کد کنی قبلش باید این کار رو انجام بدی ولی برای کاراکتر های انگلیسی و اعداد و علامتها جواب میده


سمت سرور



Convert.ToBase64String(System.Text.Encoding.ASCII. GetBytes("THIS TEXT FOR DECODE"))

raravaice
سه شنبه 11 دی 1386, 16:33 عصر
این نمونه کد رو هم ببین
http://www.koders.com/javascript/fid42E166DF6E882BE462F10CF31A17973F7467BB10.aspx?s =base64

این سایت هم ببین

http://ostermiller.org/calc/encode.html

shahab_ksh
سه شنبه 11 دی 1386, 17:47 عصر
کد شما رو دیدم اگه در سمت کلاینت شما با کلید keyStr کد کردید چطور در سمت سرور بدون کلید بازش کردید؟

raravaice
سه شنبه 11 دی 1386, 18:05 عصر
سلام

دقت کن KeyStr شامل حروف و علائم استاندارد این روش کد کردنه. چون جاوا اسکریپت چنین کلاسی نداره ولی تو دات نت این کلاس از قبل تعریف شده.

موفق باشی

shahab_ksh
سه شنبه 11 دی 1386, 21:10 عصر
اما این همراه با کلید نیست پست اول منو ببینید


آیا توابع رمزنگاری با الگوریتم مشترک همراه با کلید بین زبانهای برنامه نوسی وجود داره !؟

mehrdad201
چهارشنبه 12 دی 1386, 01:38 صبح
اینطوری اگه کسی رشته رو داشته باشه که راحت بازش می کنه.........

شما با جاوااسکریپت داری کد میکنی خوب اگه هکره سورس سایتت رو ببینه متوجه میشه چطوری داری کد میکنی ، مگه نه ؟!!؟!؟!؟!؟!

shahab_ksh
چهارشنبه 12 دی 1386, 11:59 صبح
بله اما همون کلید هم بوسیله متغییر هست که از سشن میگیره

raravaice
چهارشنبه 12 دی 1386, 12:04 عصر
سلام

دکتر جان منم همون اول بهت گفتم که اگر امنیت برات مهمه از آماده ها استفاده نکن.



سلام

اگر امنیت برات مهمه از آماده ها استفاده نکنه وگرنه از Base64 استفاده کن.