من يك برنامه نوشتم كه فايلها رو رمزكذاري مي كرد ولي رمز هيج جايي ذخيره نمي شدو این مطلب را برای شما یادآور بشوم اینکه هیچ فایل فشرده ای که دارای رمز باشد بدون مشخص بود رمز در یک نقطه ای از فایل وجود ندارد..
من يك برنامه نوشتم كه فايلها رو رمزكذاري مي كرد ولي رمز هيج جايي ذخيره نمي شدو این مطلب را برای شما یادآور بشوم اینکه هیچ فایل فشرده ای که دارای رمز باشد بدون مشخص بود رمز در یک نقطه ای از فایل وجود ندارد..
يك جايي از فايل انكريپت شده (وسط فايل) ميشه پيداش كرد winrar39
با اون پسورد فایل رو هم Extract کردید؟ عبارتی که شما پیدا کردید چیزی رو از اون فایل Extract نمیکنه (WinRAR 3.90 64-bit)پسوردش = خدذرزسشصض
وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.
بازم نشد .یادم رفت بگم که پسورد از چپ به راسته نه راست به چپ
توی فایل پسورد هر چی که باشه باید چپ به راست خوندش
و کسی هم که از پسورد استفاده کرده اگر دقت کنیدروی کیبورد یک سری دکمه هایی کنار هم رو زده و این فایلو فرستاده
__________________
سلام دوستان من خیلی روی روشی برای یافتنش کار کردم
به این نتیجه رسیدم که میتونید آزمایش کنید
برنامه
winrar
جدید حتی ساعت فشرده سازی را در محاسبه پسورد مورد نظر قرار میده
دیگه باقیش با شما دوستان
آزمایش کنین
یک فایل متن معمولی رو با
winrar
با پسورد
1
رمز کنید
دوباره همون فایل رو یه جای دیگه و چند لحظه بعد با همون پسورد 1 رمز کنید
محتوای این دو را مقایسه کنید و حالشو ببرید
کاملا فرق میکنه
دوست عزیز butterfly8528 !
فایل اجرایی که ضمیمه کردم توسط الگوریتم زیر رمگذاری شده (بازشدن فایل نیازمند کلمه عبور هست) . لطف کنین باوجود اینکه برخلاف نرم افزار winrar الگوریتم در اختیارتون هست . کلمه عبور رو اعلام کنین :
Public Function Encode(FileAddress As String, Pass As String)
On Error Resume Next
Randomize Timer
StrX = Space(FileLen(FileAddress))
Open FileAddress For Binary As #1
Get #1, , StrX
Close #1
R = Int(Rnd * 5) + 1
PublicN = "[" & Chr(5) & R & Chr(5) & "]"
If Len(Pass) > 1 Then
For j = 1 To Len(Pass) Step 2
Part = Mid(Pass, j, 2)
StrX = Replace(StrX, Chr(R + j), "[" & Chr(2) & Coder(Part) & Chr(2) & "]")
Next j
Else
Exit Function
End If
Open FileAddress For Output As #1
Print #1, StrX
Print #1, PublicN
Close #1
End Function
Public Function Coder(St As String) As String
For i = 1 To Len(St)
s = s & Chr(Asc(Mid(St, i, 1)) + R)
Next i
Coder = s
End Function
دقت کنین که هدف ما مطلع شدن از کلمه عبور هست نه بازگرداندن فایل به حالت اولیه .
ابتدا فایل رو از حالت فشرده خارج کنید
یه سوال : اگه رمز رو اشتباه زده بشه پیغام خطا میده یا فایل رو بصورت اشتباه باز میکنه؟دقت کنین که هدف ما مطلع شدن از کلمه عبور هست نه بازگرداندن فایل به حالت اولیه .
دقیقاً این بحث چند صفحه ای برای روشن کردن همین موضوع بود . اینکه امنیت فایل های rar صرفاً با یک شرط ساده تامین نمیشه و به هیچ وجه امکان کرک کردن کلمه عبور اون وجود نداره ، در نتیجه تنها راه باقی مانده همون روش سعی و خطا هست .
کد بالا هم تا حدودی روش استفاده شده در winrar رو به شکل ساده بیان می کنه . همونطور که مشخص هست ، در صورتی که کلمه عبور اشتباه وارد بشه خبری از فایل سالم نخواهد بود.
سلام .M8SPY. عزیز .
چون همه چیز به صورت راندوم هست و وابسته به کلید ، امکان یافتن کلمه عبور وجود نداره !فایل اجرایی که ضمیمه کردم توسط الگوریتم زیر رمگذاری شده (بازشدن فایل نیازمند کلمه عبور هست) . لطف کنین باوجود اینکه برخلاف نرم افزار winrar الگوریتم در اختیارتون هست . کلمه عبور رو اعلام کنین :
دقیقاً این بحث چند صفحه ای برای روشن کردن همین موضوع بود . اینکه امنیت فایل های rar صرفاً با یک شرط ساده تامین نمیشه و به هیچ وجه امکان کرک کردن کلمه عبور اون وجود نداره ، در نتیجه تنها راه باقی مانده همون روش سعی و خطا هست .
کد بالا هم تا حدودی روش استفاده شده در winrar رو به شکل ساده بیان می کنه . همونطور که مشخص هست ، در صورتی که کلمه عبور اشتباه وارد بشه خبری از فایل سالم نخواهد بود.
بله حرف شما درسته . در این روش شما هم مانند وینرار 99% راهی به جز بروت فرس وجود نداره
لطفا کدتون رو به صورت کامل و همراه با تابع decode قرار بدید یه نگاه بندازیم .
موفق باشید .
با عرض سلام
شاید لازم باشد تا اندکی راجع به الگوریتم فایل rar و همینطور روش بدست آوردن پسورد بیشتر توضیح داده بشه.
ابتدا از اساتید معذرت خواهی میکنم.
برداشت شخصی من با توجه به سورس unrar است.
آنچه که مسلم است کلمه یا جمله پسورد ابتدا بصورت یک رشته unicode تندیل شده سپس با 40000000 در مبنای هگز اکسکلوزیو شدن و ریخته شدن در 10 جدول 4 در 4 تبدیل به 16 بایت اطلاعات کلید میشود این اطلاعات از روش Sha1 جهت رمز گذاری استفاده میشود ضمنا با توجه به محتویات فایل 16 بایت کلید دیگر نیز با اکسکلوزیو کردن هر 16 بایت اطلاعات فایل با 16 بایت بعدی بدست میآید.اطلاعات با روش rijndael رمز نگاری و سپس ذخیره میگردد.پس فکر پیدا کردن رمز و آنکه رمز در فایل باشد را از سر بیرون کنید
اما راه حل نرم افزار های زیادی در اینترنت هست که با آنها میشود رمز فایلها rar را پیدا کرد اما زمان بسیار زیادی میگیرد.جدیدا نرم افزار Advanced Archive Password Recovery نسخه ای را ارائه داده که از سی پی یو های دو هسته ای و همچنین سی پی یو کرات گرافیکی استفاده میکند.اما نه هر کارت گرافیکی.
یک نرم افزار هم هست که فقط از سی پی یو کارت گرافیکی استفاده میکند که باید nvidea or Ati باشد.نرم افزار رایگان است و میتوانید با جستجوی gpurar در Google انرا دانلود کنید.
دوستان ، هر زمانی که توانستید ، یک MD5 رو به کلمه اول خود بازگردانید ، می توانید فایل RAR رو هم باز کنید . نکته ، سرس برنامه وین رار رایگان هست و می تونید دانلود کنید. و مطالعه کنید .
دارید فقط صورت مسئله رو پاک می کنید. ما هم می دونیم خفنه. دنبال بررسی کردن این هستیم که چرا این طوریه.نوشته شده توسط کسانی که می گویند:
من شاید متخصص رمز نگاری نباشم. اما منطق حکم می کنه که:
"رمز به صورت هش شده، در یک گوشه یی از فایل قرار داده شده. در این هیچ شکی نیست. و گرنه winrar نمی تونست بهمون بگه که رمز درسته یا اشتباه."
1- فقط یک نفر بین اساتید نیاز هست که بدون پیچوندن مساله و کلاس گذاشتن برای ما بیاد بگه winrar با چه الگوریتمی هش می کنه؟ خواهشا اگر نمی دونید، شانسی جواب ندید.
2- این رمز هش شده، در کدام خانه ی فایل ذخیره شده؟
تو این شش صفحه 20 تا تاپیک مفید هست که به زبانها و سطح سوادهای مختلف این موضوع رو توضیح دادن که افرادی مثل شما نسبت به موضوع نگرش درستی پیدا کنن اونوقت شما همه نظریه ها رو بی دلیل رد کردی و از همون ها دنبال جواب می گردی؟!!!
(تازه دارم می فهمم که مدیران سایت برنامه نویس چی می کشن ، کاش موقع ثبت نام تو یه این سایت یه امتحان ورودی پایه می گرفتن که این مشکلات پیش نیاد !)