نمایش نتایج 1 تا 9 از 9

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

  1. #1
    VIP آواتار hr110
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    ایران - تهران
    پست
    1,460

    چگونگی استفاده از روشهای رمز داده ها

    با سلام


    در نظر بگیرید که بخواهیم از یکی از روشهای رمزنگاری استفاده کنیم. حال اگر بخواهیم مثلا در دلفی و بانک اطلاعات اسکیو ال از انها استفاده کنیم چگونه و با چه الگوریتمی باید اطلاعات رمز شود که بتوان به سادگی و با استفاده از دستورات SQL به داده مورد نظر دست یافت مثلا:
    select * from book where title like '%del%'

    شاید نیازی نباشد که بگویم وقتی اطلاعات رمز شوند نمیتوان از این روش استفاده نمود. حال روشی وجود دارد که مثلا دو کلمه delphi و delphian به این دو شکل تبدیل شوند:
    swkou
    swloguqn
    (البته این یک مثال خیلی ساده است)

    :flower:
    ... چه بگویم که غم از دل برود چون تو بیایی

  2. #2
    برادر ربیعی ،

    در ارتباط با محتویات بانکهای اطلاعاتی ، رمزنگاری و رمزگشائی باید اصطلاحا" Offline اتفاق بیفته . داده های شما قبل از ذخیره شدن در بانک اطلاعاتی به یک DataSet خاص برای رمزنگاری رکورد به رکورد و انتقال به بانک منتقل میشن و قبل از پردازش اصلی هم باید داده ها از بانک اطلاعاتی به یک DataSet خاص Fetch شده ، رمزگشائی بشن و بعد اون DataSet مورد query قرار بگیره . نا گفته پیداست که دردسر نقل و انتقالات اضافی و دشواریهای مربوط به انتقال صحیح و "بهینه" داده از بانک به Temporary DataSet ، "هزینه" ایست که برای ایمنی بیشتر باید بپردازید . این یک روش خاص بود با توجه به توضیحات مختصر شما و بدون اطلاع از نوع کاربرد . اگر بیشتر توضیح بدید یقینا" اطلاعات مفیدتری دریافت میکنید .

    موق باشید
    UNIX is simple. It just takes a genius to understand its simplicity
    -- Dennis Ritchie

  3. #3
    VIP آواتار hr110
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    ایران - تهران
    پست
    1,460
    برادر اینپرایز از اینکه به موضوع اینجانب توجه نمودید کمال تشکر را دارم.
    :) :flower: :)
    من قصد دارم که در یکی از پروژه هایی که برای یک مرکز نظامی قبلاً نوشته‌ام امنیت اطلاعات را تضمین نمایم. پروژه با دلفی و اسکیوال بوده و من زمان زیادی نیز نمیتوانم برای تغییرات در آن صرف نمایم(البته نیازی نیست که تمامی جداول کد شوند). من با چند روش از جمله MD5 کار کرده و برخی از الگوریتمهای آنها را نیز خودم پیاده‌سازی نموده‌ام. ولی در اینجا نمیتوان مستقیماً از آنها استفاده نمود(که کاملاً واضح است).
    فکری که خودم در سر پرورانده‌ام اینست که کلماتی(کلمات با فضای خالی از هم جدا میشوند) که در هر فیلد وجود دارد براساس نام فیلد و نام جدول رمز شوند(ویا میتوان پارامترهای دیگری نیز اضافه نمود) برای مثال از یک تابع XOR استفاده نموده و هر کاراکتر را به یک کاراکتر دیگر تبدیل نمود. حال مقداری سمت راست XOR از تابعی که ورودی آن پارامترهای مذکور(نام فیلد، نام جدول و ..) به همراه یک PK و خروجی آن یک عدد میباشد، گرفته خواهد شد.
    در واقع از یک hashtable استفاده میشود که براساس PK متغییر میباشد.

    حال به نظر شما میتوان به این روش اعتماد نمود و یا روش استاندارد شده ایی برای آن وجود دارد و ......

    سپاسگذارم :gift:


    (برای اطلاع مابقی دوستان: از XOR نمیتوان در پروژه هایی که برپایه یونیکد بنا شده اند استفاده نمود!؟؟) :?:
    ... چه بگویم که غم از دل برود چون تو بیایی

  4. #4
    برای یک کاربرد نظامی قابل اعتماد نیست . ببین نظرت در مورد این چیه : www.streamsec.com ( اگر خواستی نسخهء کامل و با سورسش رو میدم خدمتت )

    :)
    UNIX is simple. It just takes a genius to understand its simplicity
    -- Dennis Ritchie

  5. #5
    <span dir=ltr>


    • StreamSec Tools is a collection of security related components and routines for Delphi, Kylix and C++‎Builder
      SSL/TLS for your Delphi Application
      With StreamSec Tools you can add support for the SSL 3.0 / TLS 1.0 protocols to your Delphi application. StreamSec Tools has been integrated into well-known third party packages for Delphi, such as Component4Developers kbmMW 1.0 and Brain Patchworks DxSock 3.0. With StreamSec Tools 1.8.x we are adding support for Synapse, Indy8/Indy9, IntraWeb 5.1.24 and RemObjects SDK.

      Encryption Components
      StreamSec Tools includes components for industry standard algorithms such as AES, 3DES, ARC4 etc. We don't take your security lightly. Besides the encryption algorithms themselves the components have plug-and-play support for both industry standard Key Derivation (PKCS#5) and industry standard Integrity verification and Authentication (HMAC).

      Public Key Cryptography
      No security library is complete without support for Public Key Cryptography. StreamSec Tools supports standard algorithms such as RSA, DSA, ECDSA and Diffie-Hellman. All is based on our own high performance big num library MPArith which is included in StreamSec Tools.

      Digital Certificates
      StreamSec Tools will give you complete support for X.509 certificates. These certificates can be used for e.g. Server Authentication and Client Authentication within SSL / TLS, or Win32 Code Signing using our own implementation of MS Authenticode (tm) all in Delphi code.

      StreamSec Tools is fully maintained
      StreamSec Tools is maintained and used by some of the best and most dedicated Delphi programmers you are likely to come across.


    </span>

  6. #6
    VIP آواتار hr110
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    ایران - تهران
    پست
    1,460
    با سلام
    جناب اینپرایز عزیز از لطف شما واقعاً سپاسگذارم، ولی مسئله دیگری که من فراموش کردم اینست که از آنجا که این پروژه بخشهای دیگری نیز دارد که با جاوا ، جاوا اسکریپت و php نوشته شده است، بالاجبار باید به دنبال الگوریتم ساده ایی باشم که بتوان با این زبانها نیز پیاده سازی شوند

    منتظر ...
    ... چه بگویم که غم از دل برود چون تو بیایی

  7. #7
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    ایران - تهران
    پست
    2,342
    حتما پسوردها را با MD5 هش کنید:
    سورس به زبان جاوا اسکریپت : http://pajhome.org.uk/crypt/md5/

    در ضمن اس کیو ال سرور خودش هم در این زمینه قابلیت های ذاتی دارد و یا می شود به آن اضافه کرد:
    http://wonko.com/xpcrypt/

    در مورد جاوا : تریپل دس برای چند دهه ی آینده خیلی امن است ! :
    http://www.orlingrabbe.com/3des1_java.htm

  8. #8
    برادر ربیعی ،
    اگر به متن توضیحات ابزار فوق الذکر دقت کنی ، ضمن حمایت از کلیه روشهای استاندارد ( از دس گرفته تا AES ) قابلیت پذیرش الگوریتمهای مختلف بصورت Plugin رو هم داره . بهر حال از هر روشی که استفاده کنی ، میتونی سورسهای خوبی به زبانهای سی ، جاوا ، جاوا اسکریپت و حتی PHP براش پیدا کنی . برای کاربر شما که نقل و انتقال حجیم داده بصورت نقطه به نقطه نیست بلکه ذخیره و بازیابی اطلاعات است ، الگوریتهای سبکتری مانند DES بهترین گزینه هستند که پیاده سازی اون رو میتونی برای زبانهای مختلف با یک جستجوی ساده پیدا کنی .
    UNIX is simple. It just takes a genius to understand its simplicity
    -- Dennis Ritchie

  9. #9
    VIP آواتار hr110
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    ایران - تهران
    پست
    1,460
    tanx all :flower:
    ... چه بگویم که غم از دل برود چون تو بیایی

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •