View Full Version : از بين بردن اطلاعات از روي سي دي
Restlesa
یک شنبه 15 خرداد 1390, 20:42 عصر
سلام بر همگي دوستان برنامه نويس عزيز
آيا Api وجود داره كه بشه باهاش اطلاعات ذخيره شده بر روي سي دي و يا دي وي دي رو پاك كنه ؟؟؟؟
Mr.Unknown
دوشنبه 16 خرداد 1390, 11:54 صبح
سورس ضمیمه شد.موفق باشید
Restlesa
دوشنبه 16 خرداد 1390, 15:37 عصر
دوست عزیز از برنامه ای که ضمیمه کردی ممنونم ولی این برنامه دو تا مشکل بزرگ داره و اونم اینه که باید سی دی مربوطه رو حتما در سی دی رایتر قرار بدیم در صورتی که من می خوام در هر دستگاهی قرار دادم (سی دی رام،دی وی دی رام و یا دی وی دی رایتر) عملیات حذف اجرا بشه
مشکل دوم هم اینه که وقتی سی دی رو داخل سی دی رایترم می زارم و روی گزینه Strat کلیک می کنم پیغام No CD-RW inserted! رو به من میده در حالی که سی دی هنوز داخل دستگاه قرار داره
ممنونت میشم که این دو مشکل رو برطرف کنی
vbhamed
دوشنبه 16 خرداد 1390, 17:46 عصر
سلام
دوست عزيز، به نكات زير توجه كنيد
1 - اطلاعات رايت شده روي سي دي تحت هيچ شرايطي ديگه پاك نميشه مگر اينكه سي دي از نوع ReWrite باشه
2 - فقط با سي دي رايتر يا دي وي دي رايتر ميشه در مورد CD يا DVD هاي Rewrite اين كار رو كرد، اگر اينطور نبود كه سي دي رايتر رو نمي ساختن، اينها ليزر مخصوص اين كار رو دارن، پيغام No CD-RW inserted! هم منظورش اينه كه سي دي شما ReWrite يا RW نيست
3 - بعضي برنامه ها وجود دارن كه ميشه باهاشون چيزي از روي سي دي پاك كرد حتي سي دي غير Rewrite، اما كاري كه اونها انجام ميدن فقط نوعي مخفي كردن فايلهاي روي سي دي هست و واقعا ديتا رو پاك نمي كنن، نشونش هم اينه كه مثلا اگر شما 200 مگابايت روي يك سي دي 750 مگابايتي رايت كنيد و سپس همون رو پاك كنيد براي رايت مجدد فقط 550 مگابايت فضا داريد و نه 750 مگابايت و چون ديتاها واقعا پاك نمي شن و فقط مخفي مي شن، امكان دسترسي به اونها وجود داره
Restlesa
دوشنبه 16 خرداد 1390, 20:28 عصر
چه طوری می تونم سی دی رو بسوزونم ویا کاری کنم که اطلاعات ذخیره شده درونش قابل استفاده نباشه ؟؟؟؟
Restlesa
سه شنبه 17 خرداد 1390, 10:01 صبح
کسی نیست جواب مارو بده ؟؟؟
محمد باقری نسب
سه شنبه 17 خرداد 1390, 10:19 صبح
خوب این چه مشکلی رو از شما بر طرف میکنه؟ اینکه دیسک دیگه قابل دسترس نباشه که یعنی اینکه کلا دیسک خراب بشه!
شما کافیه با چاقو یه خش روش بکشی و یا اصلا از وسط به دو قسمت مساوی تقسیمش کنی! البته دقیقا مساوی نباشه هم دیگه بدرد نمیخوره باید بندازیش سطل آشغال. :گیج:
vbhamed
سه شنبه 17 خرداد 1390, 12:38 عصر
سلام
البته فكر مي كنم منظور دوستمون به روش نرم افزاري بود
ولي اگر هم راهي باشه فكر نمي كنم خيلي قابل اعتماد باشه
حالا گذشته از اينها مي تونيد بگيد كلا براي چي اين كارها رو مي خواين انجام بدين ؟ شايد راه بهتري هم باشه
MMR_1344
سه شنبه 17 خرداد 1390, 14:50 عصر
فکر کنم دوستمون میخواد اگر برنامه اسال شده در سی دی رو کس دیگه ای بدست آورد و خواست از اون استفاده کنه سی دی از بین بره و دیگه کسی نتونه از اون استفاده کنن
Restlesa
سه شنبه 17 خرداد 1390, 19:14 عصر
دقیقا
حالا راهی برای این کار وجود داره ؟؟؟؟
pcdownload.bloghaa.com
چهارشنبه 18 خرداد 1390, 00:38 صبح
خوب این چه مشکلی رو از شما بر طرف میکنه؟ اینکه دیسک دیگه قابل دسترس نباشه که یعنی اینکه کلا دیسک خراب بشه!
شما کافیه با چاقو یه خش روش بکشی و یا اصلا از وسط به دو قسمت مساوی تقسیمش کنی! البته دقیقا مساوی نباشه هم دیگه بدرد نمیخوره باید بندازیش سطل آشغال.
خوشبختانه هر چی مهندسه جمع شده این سایت.
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
سلام بر همگي دوستان برنامه نويس عزيز
آيا Api وجود داره كه بشه باهاش اطلاعات ذخيره شده بر روي سي دي و يا دي وي دي رو پاك كنه ؟؟؟؟
احتمالا شما برای این میخوایین که کاربر بعد از یک بار نصب برنامه شما cd از بین بره.
من هم همچین cd هایی را دیدم.که بعد از یک بار نصب CD دیگه کار نکرده.
اما این کار اگر هم اونطوری که ما فکر میکنیم عمل کنه(یعنی سوزاندن سی دی) به طور حتم با دسترسی سطح پایین و مسقیم به cd امکان پذیره نه از طریق
سیستم عامل.چون احتمالا سیستم عامل اجازه خرابکاری به شما نخواهد داد.مثلا سیستم عامل اجازه نمیده شما روی قسمت پر سی دی معمولی چیزی رایت کنین.
شاید اگه به صورت سطح پایین اینکار انجام بشه یعنی بخواییم اطلاعات را در قسمت پر سی دی رایت کنیم اینکار عملی بشه ولی چون سی دی همچین امکاناتی نداره باعث از بین رفتنش میشه.
پس بهتره به دنبال نرافزاری باشی که یه سی دی را به اون شکل در میاره نه ساخت خود برنامه.
و اما:
روش سوزاندن یا خراب کردن cd روش جالبی نیست.
میشه به راحتی از روش زیر استفاده کرد:
وقتی برنامه یک بار از روی CD اجرا شد دنبال فایلی به نام مثلا xxc.dat داخل CD بگرده اگه نبود خودش اطلاعات سخت افزاری
همون کامپیوتر را به صورت کد شده در فایل xxc.dat بریزه و رایت کنه روی سی دی و برنامه فقط روی همون کامپیوتر اجرا بشه.
شاید بگید CD را قبل از اولین اجرا میتونن کپی کنن.
هر سی دی یک شماره منحصر به فرد داره شما باید هنگام رایت برنامتون برای اولین بار روی سی دی , توی برنامتون هم لحاظ کنید
که فقط از روی همین سریال اجرا بشه.
و اگه حالا میگید که درایو مجازی میسازن که سریال سی دی را هم کپی میکنه باید بگم که درایو های مجازی را هم میشه شناسایی کرد
و باید تو برنامتون لحاظ کنین که اگر درایو مجازی بود کار نکنه.
برای تشخیص یک درایو مجازی مثلا سعی کنید Controller Buffer Size On Drive یک درایو را بخونید در درایو مجازی چنین چیزی وجود نداره و به راحتی شناسایی میشه.
و یا از طریق راه های دیگه هم میشه درایو مجازی را شناسایی کرد.
کد نویسیشم اگه خواستین میتونم کمک کنم.
محمد باقری نسب
چهارشنبه 18 خرداد 1390, 08:38 صبح
وقتی برنامه یک بار از روی CD اجرا شد دنبال فایلی به نام مثلا xxc.dat داخل CD بگرده اگه نبود خودش اطلاعات سخت افزاری
همون کامپیوتر را به صورت کد شده در فایل xxc.dat بریزه و رایت کنه روی سی دی و برنامه فقط روی همون کامپیوتر اجرا بشه.دستت درد نکنه آقای مهندس؟ اونوقط اگه طرف دیسکش رو توی CDROM Driver گذاشته بود نه رایترش باید چی کار کرد؟
حتما میگید باید به کاربر پیغام بدیم که مثلا "کاربر گرامی لطفا دیسک را داخل رایتر خود قرار دهید! و اگر رایتر ندارید دو راه بیشتر ندارید: 1- سریعا بپرید سر کوچه از ممد آقا بقال بخرید 2- از ادامه دادن مراحل نصب معزوریم!"
واقعا که mer29+1 آقای مهنس.
Restlesa
چهارشنبه 18 خرداد 1390, 12:47 عصر
دستت درد نکنه آقای مهندس؟ اونوقط اگه طرف دیسکش رو توی CDROM Driver گذاشته بود نه رایترش باید چی کار کرد؟
اولا از همه از دوستان خوب برنامه نویس به خاطر توجه به این تاپیک تشکر می کنم و در خواست دارم که با هم دعوا نکنن
ثانیا با توجه به خطایی که شما از دوستمون گرفتید نتیجه می گیریم که این کار عملی نیست اونم به دو دلیل که یکی شو شما فرمودید و دیگر دلیلش جناب آقای vbhamed در پست 4 ذکر کردند
می تونیم این فایل رو روی هارد خود سیستم کاربر ذخیره کنیم و برنامه فایل xxc.dat رو از روی هارد بخونیم
آیا امکان پیاده سازی چنین روشی وجود داره و اگرم داره چه گونه هستش ؟؟؟؟
محمد باقری نسب
چهارشنبه 18 خرداد 1390, 13:04 عصر
جناب Restlesa دوست عزیز میشه یه لطفی به ما بکنین بگین واسه چی میخوایین این کار رو بکنین؟ شاید اگه واضح بگید بشه راه های خیلی بهتری واسش پیدا کرد.
چیزی که من نتیجه گرفتم از بحث شما اینه که شما نمیخوایید برنامتون قابل کپی برداری باشه و تنها بشه روی یه سیستم توی کل دنیا نصبش کرد! اگه واقعا منظور اینه بگید تا من بهترین راه رو به شما معرفی کنم؟
در ضمن ما با هیچ کسی توی این سایت دعوا نداریم و قربون همه بروبچ باحال برنامه نویس هم میریم چه مهندسش و چه نا مهندسش! :چشمک:
Restlesa
چهارشنبه 18 خرداد 1390, 13:16 عصر
بله دقیقا همین چیزی رو می خوام که شما گفتین
میشه به صورت کامل و دقیق و ترجیحا با مثالی ساده برام توضیح بدین ؟؟؟؟
ممنون میشم
محمد باقری نسب
چهارشنبه 18 خرداد 1390, 13:48 عصر
شما باید سیستم Activation رو داخل برنامه هاتون بگنجونید! که از چند طریق میشه از client به server ارتباط برقرار کرد:
- از طریق اینترنت (Web Service) -> به این شکله که شما در سمت server که میتونه یه هاست جم و جور و یه دامین ارزان قیمت باشه ، یه وب سرویس تعبیه میکنید و از طریق برنامه باهاش ارتباط برقرار میکنید.
- از طریق ارسال Email -> به این شکله که برنامه کد مشتری رو به ایمیل شما ارسال میکنه و شما هم مجدد از طریق ایمیل کد فعالسازی مشتری هاتون رو براشون ارسال میکنین
- از طریق فرستادن SMS -> دقیقا شبیه به مورد قبلی با این تفاوت که از طریق پیام کوتاه ارتباط برقرار میشه
- از طریق تلفن -> این مورد هم دقیقا شبیه به مورد قبلی با این تفاوت که از طریق تلفن ارتباط برقرار میشه
روند کار به این شکله:
1- شما یه کد رو به نام productcode بر روی هر محصولی که ارائه میکنید به مشتری میدین
2- مشتری بعد از نصب برنامه productcode رو بعلاوه کد سخت افزاری سیستمش که با هم ترکیب شدند رو به یکی از طرقی که اعلام شد برای شما میفرسته
3- شما کد ها رو از هم تفکیک کرده و اول چک میکنید که productcode درست باشه و جزو اونایی باشه که هنوز فروش نرفته و سپس اگه درست بود کد سخت افزاریش رو ثبت کرده و productcode رو برای مشتری به ثبت میرسونین که آقا این کد دیگه فروخته شد.
4- productcode رو با یه کلیدی که هم server داره و هم برنامتون قفل میکنین (Encrypt) و نهایتا activationcode رو تولید میکنه و مجدد برای مشتری میفرستید تا مشتری اون رو به برنامه بده.
5- برنامه هم با کلید مشترکی که پیششه productcode رو Encrypt و اگه نتیجه برابر بود با activationcode کدها رو ذخیره میکنه و اجرا میشه. در دفعات بعدی هم ابتدا کدهایی که ذخیره شده بودن چک میشن که اگه نتیجه درست بود نیازی به فعالسازی مجدد نیست.
pcdownload.bloghaa.com
چهارشنبه 18 خرداد 1390, 19:14 عصر
دستت درد نکنه آقای مهندس؟
میزاشتی دو دقیقه میگذشت بعد حرف خودمو به خودم تحویل میدادی.در ضمن سوالی کردی قضیه را من که متوجه نشدم.
اونوقط اگه طرف دیسکش رو توی CDROM Driver گذاشته بود نه رایترش باید چی کار کرد؟
به قول دوستمون میشه فایل xxc.dat را در هارد هم ایجاد کرد.اما مشکل بزرگ اینه که با این کار دیگه جلوی انتشار سی دی گرفته نمیشه و کاربر با همون
سی دی میتونه تو سیستم دیگه هم کار کنه.و از لحاظ امنیتی و هک شدن هم خیلی امنیتش پایین میاد.
پس باید بیخیال کاربرای قرن 19 بشی و بری تو کار سی دی رایتر نه سی دی رم.
الان دیگه اکثرا کابرا سی دی رایتر هم ندارن و رفتن تو کار دی وی دی رایتر.
حتما میگید باید به کاربر پیغام بدیم که مثلا "کاربر گرامی لطفا دیسک را داخل رایتر خود قرار دهید! و اگر رایتر ندارید دو راه بیشتر ندارید: 1- سریعا بپرید سر کوچه از ممد آقا بقال بخرید 2- از ادامه دادن مراحل نصب معزوریم!"
احسنت.آفرین.
باحال برنامه نویس هم میریم چه مهندسش و چه نا مهندسش!
عجب نونی دادیم دست مردما حالا تا عمر دادری بگو مهندس.
شما باید سیستم Activation رو داخل برنامه هاتون بگنجونید! که از چند طریق میشه از client به server ارتباط برقرار کرد:
- از طریق اینترنت (Web Service) -> به این شکله که شما در سمت server که میتونه یه هاست جم و جور و یه دامین ارزان قیمت باشه ، یه وب سرویس تعبیه میکنید و از طریق برنامه باهاش ارتباط برقرار میکنید.
- از طریق ارسال Email -> به این شکله که برنامه کد مشتری رو به ایمیل شما ارسال میکنه و شما هم مجدد از طریق ایمیل کد فعالسازی مشتری هاتون رو براشون ارسال میکنین
- از طریق فرستادن SMS -> دقیقا شبیه به مورد قبلی با این تفاوت که از طریق پیام کوتاه ارتباط برقرار میشه
- از طریق تلفن -> این مورد هم دقیقا شبیه به مورد قبلی با این تفاوت که از طریق تلفن ارتباط برقرار میشه
روند کار به این شکله:
1- شما یه کد رو به نام productcode بر روی هر محصولی که ارائه میکنید به مشتری میدین
2- مشتری بعد از نصب برنامه productcode رو بعلاوه کد سخت افزاری سیستمش که با هم ترکیب شدند رو به یکی از طرقی که اعلام شد برای شما میفرسته
3- شما کد ها رو از هم تفکیک کرده و اول چک میکنید که productcode درست باشه و جزو اونایی باشه که هنوز فروش نرفته و سپس اگه درست بود کد سخت افزاریش رو ثبت کرده و productcode رو برای مشتری به ثبت میرسونین که آقا این کد دیگه فروخته شد.
4- productcode رو با یه کلیدی که هم server داره و هم برنامتون قفل میکنین (Encrypt) و نهایتا activationcode رو تولید میکنه و مجدد برای مشتری میفرستید تا مشتری اون رو به برنامه بده.
5- برنامه هم با کلید مشترکی که پیششه productcode رو Encrypt و اگه نتیجه برابر بود با activationcode کدها رو ذخیره میکنه و اجرا میشه. در دفعات بعدی هم ابتدا کدهایی که ذخیره شده بودن چک میشن که اگه نتیجه درست بود نیازی به فعالسازی مجدد نیست.
پس Restlesa جان شما تو فکر یه هاست و یه اینترنت 24 ساعته برای همیشه باش.از طرف دیگه اگه برنامه نویسی سرور هم بلد نیستی دو سه ماهی هم روش وقت بذار وقتی همه چیو فول فول شدی بعد تازه بیا در مورد روش رمز نگاری و ... و حفاظت اطلاعات اینجا بحث میکنیم.
واقعا روش جالب و کم درد سر و عملی و ... بود البته برای مایکروسافت یا گوگل.که اگر هم این روش جواب داده بود مایروسافت قبل از ما دنبالش میرفت و ویندوز 7 توی کامپیوتر من و شما ولو نبود.
Mr'Jamshidy
پنج شنبه 19 خرداد 1390, 00:32 صبح
البته من نمیخوام بحث رو کشش بدم اما درسته اگر قرار بود یک همچین روش هایی عملی باشه پس فکر نمیکنم چیزی به اسم Cracker باید بوجود میومد
Kaspersky که من به امنیتش یقین داشتم کرکش رو چند روز پیش دیدم دیگه برنامه های ما که جای خود داره اونم با این همه فقر اطلاعاتی
حالا پیشنهاد من به شما اینه که به هرکی خاستی بفروشی سعی کن طرفت یابو باشه و هیچی از سیستم نفهمه و واسته کلاس سیستم گزاشته باشه، حالا یک برنامه هم بخواد بخره
بعد خودت میری براش نصب میکنی و یک سریال هم همونجا براش میسازی میدی دستش (با Keygen) و میگی خدافظ
در غیر اینصورت شک نکن اگر برنامهت مخاطب زیاد پیدا کنه هر چقدر هم که رو امنیتش کار کنی بازم کرکش رو میبینی
موفق باشید
Mr.Unknown
پنج شنبه 19 خرداد 1390, 12:24 عصر
سلام.از نظر بنده استفاده از قفل سخت افزاری بهترین راه ممکنه در غیر این صورت به قول دوست عزیزمون Mr'Jamshidy برنامه اگر مخاطب زیادی پیدا کنه کرک میشه.
از این سایت میتونین قفل رو تهیه کنید.
http://www.dedj.com/TinyHid.html
موفق و پیروز باشید
Restlesa
پنج شنبه 19 خرداد 1390, 22:16 عصر
در این موضوع که هر چی برنامه ات طرفدار داشته باشه کرک میشه هیچ شکی نیست ولی ما هم نمی تونیم دست رو دست بزاریم میشه ؟؟؟!!!!
دوست عزیز آقای pcdownload از توضیحاتتون ممنونم ولی این طوری که من برداشت کردم مطالب ذکر شده ربطی به درخواست اصلی من یعنی از بین بردن اطلاعات ذخیره شده روی سی دی نداشت یا اینکه من بد متوجه شدم
لطفا بیشتر توضیح بدین
pcdownload.bloghaa.com
جمعه 20 خرداد 1390, 01:44 صبح
اگه پست اول منو یک بار دیگه میخوندی متوجه موضوع میشدی:
1.از بین بردن اطلاعات سی دی ازطریق سی دی رم مطلقا غیر ممکنه.
2.از بین بردن اطلاعات سی دی معمولی از طریق سی دی رایتر هم امکان پذیره ولی فقط از طریق دستیابی مستقیم به
سی دی رایتر یعنی دسترسی سطح پایین و استفاده از وقفه های سخت افرازی که نوشتن چنین برناه های سیستمی معمولا با وی بی انجام نمیشه.
از طریق دسترسی به سی دی رایتر هم از طریق سیستم عامل اجازه نوشتن اطلاعات در قسمت پر سی دی به شما داده نخواهد شد.البته در ویندوزهای xp و پایین تر.
از طرف دیگه امکان پاک کردن اطلاعات سی دی معمولی (CD-R) از هیچ طریق ممکن وجود نداره.و از روش سیستمی هم میشه اطلاعات نوشته شده را از دسترس خارج کرد نه اینکه پاکش کرد.
چون اگه چنین امکانی وجود داشت الان سی دی های RW وجود خارجی نداشت.
Restlesa
جمعه 20 خرداد 1390, 12:39 عصر
یعنی هیچ راهی وجود نداره که بتونیم با وی بی 6 سی دی هایی محدود اجرا درست کنیم ؟؟؟
Mr'Jamshidy
جمعه 20 خرداد 1390, 16:42 عصر
یعنی هیچ راهی وجود نداره که بتونیم با وی بی 6 سی دی هایی محدود اجرا درست کنیم ؟؟؟
نمیخوام نا امیدت کنم اما باید بگم نه هرگز!
این روشی که شما دیدی خیلی زیر و بم داره نظر شخصی من این بود که این نوع سی دی هایی که بعد از 2-3 بار نصب دیگه کار نمیکنن جنسشون طوری هست که انطور ایجاب میکنه اما من از یکی چیزی شنیدم که این نظریه رو رد کرد!!! البته هنوزم فکر میکنم همین باشه ولی حوضله توضیح در مورد نظریه ای که به صحتش شک دارم رو ندارم
و چیزی هم که شنیده بودم این بود که دوستم گفت تو سی دی رام هم که گزاشته بوده بعد از نصب از بین رفته!!!
اما این روش نیازمند تلاش بسیار زیاد و بی وقفه یک گروهه نه یک نفر!!!
گروهی که اطلاعاتی نصبتا خوبه در مورد سی دی و ابزار الات مورد نیازش میشه مثلا سی دی درایو
حالا شما بهتره برای کد گزاری و ... تاپیک هایی که قبلا در این مورد بحث کردن رو پیدا کنی و بخونی
موفق باشید
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.