0 امتیاز
قبل در برنامه نویسی توسط (2 امتیاز)
ویرایش شده قبل توسط
من از فایلی در برنامه ی دسکتاپی جاوایی ام استفاده میکنم، و نمیخواهم کاربر به این فایل دسترسی پیدا کند. چه روشهایی برای مخفی کردن و یا عدم دسترسی یا کدگذاری یک فایل برای حفاظت از کپی کردن وجود دارد.

1 پاسخ

+1 امتیاز
قبل توسط (85 امتیاز)
انتخاب شده قبل توسط
 
بهترین پاسخ
String text = new String(Files.readAllBytes(Paths.get("encrypted.txt")));
String decryptedText = decrypt(text);
InputStream stream = new ByteArrayInputStream(decryptedText.getBytes(StandardCharsets.UTF_8));

 

قبل توسط (2 امتیاز)
نه فایل مورد نظر بنده یک فایل متنی بوده. و مهندسی معکوس اگر منظورت دی کامپایل هست . خب سعی شده با روش هایی جلوش بگیریم. ولی من به خود فایل یا inputstream این فایل احتیاج دارم. میخوام به نحوی این فایل رو دی کریپت کنم که بدون ایجاد فایل بتونم inputstream را بگیرم.
قبل توسط (85 امتیاز)
اول محتوای فایل رو به همون شکل اینکریپت شده داخل یک متغیر رشته‌ای قرار بدید. بعد این متغیر رو دیکریپت کنید و نهایتاً رشتۀ دیکریپت شده رو به یک استریم تبدیل و ازش استفاده کنید. جوابم رو آپدیت کردم.
قبل توسط (2 امتیاز)
من از Cipher برای دیکریپشن و اینکریپشن استفاده میکنم. وقتی به این صورتی که شما گفتین کار میکنم error IllegalBlockSizeException را دریافت میکنم.
قبل توسط (85 امتیاز)
کدهایی که نوشتم دخالتی تو دیکریپشن شما نمی‌کنه. متد decrypt خروجی دیکریپت شدۀ Chipher رو برمی‌گردونه که باید یک رشته باشه. مابقی کار هم که مشخصه. مشکل بلاک سایز اکسپشن فکر نمی‌کنم به این کدها ربط داشته باشه.
قبل توسط (2 امتیاز)
مشکل بلاک سایز به خاطر این اتفاق افتاده بود که فایل بنده باینری بود و از utf8 برای گرفتن string کمک گرفته بودم. و همینطور معمولا اینکریپت و دی کریپت ها از array byte بهره می برند. بنابراین در مرحله ی اول کد شما string را حذف نمودم و مستقیما از byte[] برای حل مسئله استفاده کردم. با تشکر از راهنمایی شما
قبل توسط (85 امتیاز)
پیشنهاد می‎کنم سوالت رو ویرایش کنی تا یه نفر دیگه بفهمه داستان چیه.
اگه همینجوری تو Stackoverflow سوال میکردی منفی میگرفتی و احتمالاً اکانتت مسدود میشد.

سوالات مشابه

0 امتیاز
2 پاسخ 522 بازدید
+1 امتیاز
1 پاسخ 459 بازدید
+1 امتیاز
1 پاسخ 1.7هزار بازدید
0 امتیاز
0 پاسخ 280 بازدید
0 امتیاز
1 پاسخ 630 بازدید
0 امتیاز
0 پاسخ 309 بازدید
سوال شده 7 سال قبل در برنامه نویسی توسط javad75 (42 امتیاز)
+1 امتیاز
1 پاسخ 1.2هزار بازدید
+1 امتیاز
2 پاسخ 1.7هزار بازدید
...