متن اصلی توسط Joker:
اطلاعات فایلهای rar یا zip یا 7zip یا … همگی بر اساس پسورد رمز میشوند نه اینکه پسورد جائی ذخیره بشود ، در واقع پسورد هیچکجا ذخیره نمیشود ، اطلاعات با یک رمز کد میشوند ، به عبارت دیگه کل فایل را شما باید کلمه رمز بدونید :) ، و اگه شما هر رمز دیگه ای هم بزنید اطلاعات دیکود میشوند منتها چون رمزاصلی نبوده اطلاعات اشتباه باز میشوند. میشه گفت رمزنگاری یک طرفه محسوب میشوند – راهی جز روش سعی و خطای پسوردها ندارد.
همونطور که توضیحات بالا مشخص هست کرک کردن پسورد فایل های rar با دستکاری شروط برنامه غیر امکان هست . به عبارت ساده تر امنیت فایل ها winrar صرفاً با یک شرط ساده برای بررسی کلمه عبور تامین نمیشه لذا تنها راه دور زدن کلمه عبور فایل های فشرده rar روش سعی و خطا خواهد بود .
برای روشن تر شدن این قضیه و اینکه با روش های رمزگذاری این چنینی آشنا بشید کد زیر رو آماده کردم ، که در ادامه به شرح قسمت های مختلف اون می پردازیم:
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
-
توضیحات تابع بالا : همونطور که مشاهده می کنید تابع دارای 2 پارامتر ورودی با عنواین : آدرس فایل و کلمه عبور هست . خوشبختانه در خصوص دسترسی به محتویات متنی فایل ، VB زیاد به پرو پای ما نمی پیچه . در هر صورت با توجه به آنچه در بالا مشاهده می کنید ، محتویات متنی فایل مورد نظرمون رو استخراج کرده و عملیات رمزگذاری رو شروع می کنیم . به طور دلخواه کلمه عبوری ورودی رو به بخش های دو کاراکتری تقسیم بندی کرده و جایگزین رشته کاراکترهای حاصل از کد اسکی جمع اعداد تصادفی (R) و شمارنده (J) می کنیم . و البته کاراکترهای کلمه عبور رو برای قشنگی هم که شده در بین [+کاراکتر اسکی 2+] قرار میدیم . خوب تمام کارهای گفته شده چه فایده ای دارند ؟ در واقع نکته اصلی تمامی موارد گفته شده در همین یک خط خلاصه میشه . با استفاده از اینکار کلمه عبور رو به نقاط مختلف فایل و به صورت کد شده (استفاده از تابع Coder) تزریق می کنیم . پس به طور حتم برای بازگرداندن فایل به حالت اولیه فقط و فقط کلمه عبور اولیه قابل استفاده خواهد بود . قطعاً اگر در ذهنتون تابع Decode رو تصور کنین متوجه میشین که در این روش شرط (if) معنا نداره . در صورتی که فکر می کنید عکس این موضوع صحت داره می تونید دست به کار شده و کلمه عبور فایل رمزگذاری شده توسط الگوریتم بالا رو کشف کنید !
در نهایت توجه داشته باشید که روش بالا صرفاً برای بیان کلیات روش ذکر شده ، مورد استفاده قرار گرفت .
دریافت فایل اجرایی رمزگذاری شده توسط الگوریتم بالا
مطالب مرجع و تخصصی در زمینه سیستم عامل ویژه دانشجویان و محققین علوم کامپیوتری
فهرست اصلي
فهرست موضوعی
لینکستان
دانشجویان کامپیوتر دانشگاه آزاد
جامعه برنامه نویسان ایران
انجمن تخصصی ASP.NET
انجمن برنامه نویسی NET.
شبکه اجتماعی متخصصان
باشگاه مهندسان ایران
مرجع متخصصین ایران
مرکز توسعه نرم افزار
انجمن تخصصی فلش
باشگاه طراحان ایران
ادوبی فلش پلتفرم
کامپوننت و ابزارها
سورس و راهنما
آموزش فلش
آخرين نوشته ها
درباره سیستم عامل
ارتباط با پورت سریال در C#
addon domain در plesk
استیو جابز هم رفت!
آخرین رکورد بازبینی شده
مشکل نصب SQL Server 2005
سمینار درگاه پرداخت آنلاین
تفاوت متد های get و post
امنیت فایل های اجرایی NET.
نکاتی که در برنامه نویسی باید/میتوانند رعایت شوند
Tableدر برابر Div
سخنان طلایی برنامه نویسان بزرگ
رمزگذاری فایلها
کارگاه آموزش سیستم حروفچینی لاتک و زی پرشین
کتاب آموزش لاتک Latex
مقایسه دستورات DELETE و TRUNCATE
با Cloudflare امنیت و سرعت سایت خود را افزایش دهید
کتاب آموزش برنامه نویسی اسمبلی
چیست؟ nhibernate
معرفي فايل Web.Config
Eval شرطی
واکشی تعداد رکوردهای تمام جدولهای دیتابیس
واکشی نام تمام جدولهای دیتابیس
طرح روی جلد کتاب سیستم عامل سیلبر شاتس
کتاب برنامه نویسی و زبان اسمبلی - پیتر ایبل
کتاب آموزش ActionScript 3.0
حقیقت آزمایش !
افزونه های Reflector
جایگزین Reflector
sem چیست ؟
DESIGNED BY