بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

چطور باید json را encrypt و decrypt کنم؟

مدیریت گفتگو
Iman1000 10 سال پیش
آخرین تغییر: 10 سال پیش

من میخوام داده های بین برنامه ام رو با سرور انکریپت کنم از این روش که در این لینک اموزش داده شده ولی من دقیقا نمی دونم کجا باید در فایل php , یا java از این نوع استفاده کنم دوستان اگه مثالی برام هم بیارن می تونم خودم پیگیر باشم

ولی لینک بالا فقط در مورد استرینگ است در صورتی که ارسال داده های من از طریق json داده ارسال و دریافت می کنم

نظرات

پاسخ‌ها 3

یحیی 10 سال پیش

فکر کنم باید کل جیسون رو بصورت یک string دربیاری و encrypt کنی‌ش سمت سرور. چیزی شبیه:

 $str = json_encode($yourJsonArray);
$mcrypt = new MCrypt();
$encrypted = $mcrypt->encrypt($str);
echo $encrypted; // or make an json array and then echo this
 

با هر روشی می‌تونی این String رو بفرستی برای گوشی، چه بصورت تست معمولی و یا بصورت جیسون جداگانه.

سمت گوشی هم تکست رو که گرفتی،‌ decrypte کن و ازش ی jsonObject یا jsonArray بساز (بسته به چیزی که هست)

  JsonObject jsonObject = new JsonObject (decrypted); // or JsonArray | just don't forgot it must be decrypted! check it on logcat

نظرات

Criss 10 سال پیش

PHP اش رو نمیدونم ، یعنی بلد نیستم !

اما سمت جاوا باید کلاسش رو توی پروژه داشت باشی

کلاس MCrypt.java رو اینجا گذاشته

بقیه موارد هم مشخصه ، شما قبل از اینکه مقداری رو سمت سرور ارسال کنی باید اون رو Encrypt کنی و هر مقداری که از سمت سرور دریافت میکنه قبل از استفاده باید Decrypt بشه

نمونه های Encrypt و Decrypt کردن رو هم در زیر قرار داده


MCrypt mcrypt = new MCrypt(); /* Encrypt */ String encrypted = MCrypt.bytesToHex( mcrypt.encrypt("Text to Encrypt") ); /* Decrypt */ String decrypted = new String( mcrypt.decrypt( encrypted ) );

 

 

نظرات

Iman1000 10 سال پیش

مننونم از دوستان با راهنمایی ها تونستم رفع کنم مشکلم رو و حال ارسال داده های سرور و کلاینت م به صورت انکدشده هستند

سوال: چطور می تونم ادرس سایتم نیز اسنیف نشه و اگه اسکن کنند برنامه ام رو نتوانند بفهمنند با چه سایتی داده ارسال می کنم

 

نظرات

Criss 10 سال پیش
فکر نمیکنم ممکن باشه نهایتا میتونید از Https استفاده کنید که تنها ادرس Domain رو نشون میده بجای URL - البته باز هم مطمئن نیستم !
Hossein Lamei Ramandi 10 سال پیش
منم همینطور فک میکنم که نشه اونو کاریش کرد :(

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .