راه پرداخت
راه پرداخت؛ رسانه فناوری‌های مالی ایران

امنیت در تبادل اطلاعات بین پایانه و سوئیچ پرداخت

سعید کلانتری، کارشناس سوئیچ و ابزار پرداخت / در شبکه پرداخت مطابق با استانداردهای امنیتی برای حفظ محرمانگی و صحت اطلاعات در انتقال بخش‌هایی از اطلاعات، از رمزنگاری استفاده می‌شود. منظور من در این مطلب بیشتر انتقال اطلاعات از پایانه تا سوئیچ شرکت پرداخت است. زیرا در بخش‌های دیگر گاها به روش‌های دیگری عمل می‌شود که نمی‌خواهم به آنها بپردازم. بنابراین فقط به ارسال اطلاعات از سمت پایانه به سوئیچ پرداخت می‌پردازیم.

لازم به ذکر است که در زمان ارسال اطلاعات از پایانه به سوئیچ شرکت پی‌اس‌پی احتمال شنود وجود دارد. لذا برای حفظ محرمانگی صحت دیتا ( یعنی جلوگیری از دسترسی دیتا) لازم است از رمزنگاری استفاده شود. برای روشن شدن بیشتر مطلب باید عرض کنم که سه روش ارسال اطلاعات بین پایانه‌ها و سوئیچ شرکت پرداخت وجود دارد:

۱- روش تلفنی

۲- استفاده از اینترنت (اپراتورهای تلفن همراه  و یا اینترنت ADSL )

۳- استفاده از APN

 ممکن است بشود روش‌های انتقال دوم و سوم را به‌وسیله SSL و TLS امن کرد، اما قطعاً هنوز برای امن کردن روش dial راه‌حل مشخصی وجود ندارد. بنابراین تصور شده که ارتباط ناامن است و باید برای امن کردن آن راه‌حلی در نظر گرفت.

دو آیتم امنیتی در مسیج پایانه دیده شده است. اول پین بلاک برای ایجاد محرمانگی در رمز کاربر و دوم ایجاد مک برای اطمینان از صحت داده و تأیید اصالت آن. قبل از توضیح در مورد نحوه تولید این دو آیتم امنیتی  ابتدا به روش مرسوم رمزنگاری بین پایانه و سوئیچ پرداخت می‌پردازم.

روش مرسوم رمزنگاری بین پایانه و سوئیچ پرداخت، روش متقارن است. در این روش سه کلید Pin,Mac,Data توسط سوئیچ تولید می‌شود و برای پایانه ارسال می‌شود. برای اطمینان از عدم شنود این رمزها در مسیر انتقال، آنها توسط کلید master رمز می‌شوند و ارسال می‌شوند. کلید مستر نیز به روشی امن بین سوئیچ و پایانه به اشتراک گذاشته می‌شود ( عموماً با کارت کلید).

تا اینجا آموختیم که پایانه در زمان شروع راه‌اندازی یا به‌صورت دوره‌ای با ارسال پیام لاگین سه کلید رزم نگاری را از سوئیچ دریافت می‌کند که از آن برای رمزنگاری تراکنش استفاده می‌کند.

نحوه تهیه پین بلاک: در این مطلب استاندارد ISO 9564-Format 0 که عموماً در ایران استفاده می‌شود، توضیح داده می‌شود. Format های ۱ تا ۳ هم وجود دارد که کمی متفاوت است.

برای ایجاد پین بلاک رمز شده ابتدا باید شماره کارت و رمز عبور کارت را به شکل مناسب در آورد (رشته‌های ۱۶ کاراکتری). سپس آنها را باهم XOR کرد تا یک رشته ۱۶ کارکتری ایجاد شود. سپس این رشته با کلید PIN با الگوریتم ۳des رمز می‌شود و در مسیج ارسالی قرار داده می‌شود.

حال ببینیم چه تغییراتی در شماره رمز و شماره کارت برای ایجاد رشته ۱۵ کاراکتری انجام می‌شود.

سه رقم اول شماره کارت و یک رقم آخر آن حذف می‌شود و به ابتدای شماره کارت ۴ رقم صفر اضافه می‌شود و این رشته جدید شماره کارت است.

یک رقم صفر به‌علاوه طول رمز به‌علاوه خود رمز به‌علاوه رشته‌ای از کاراکتر F  رشته جدید ۱۶ کارکتری رمز را ایجاد می‌کند. اینکه ما از طول رمز به‌همراه مقدار آن در رمزنگاری استفاده می‌کنیم، یعنی این روش در IPG هم قابل استفاده است (که به آن نمی‌پردازم).

برای درک بهتر به مثال زیر توجه کنید:

Pan= 6395991155764913 => 0000599115576491

Pin=1234 => 0+4+1234+” FFFFFFFFFF” => 041234FFFFFFFFFF

Xor(Pan,Pin) = 04126D6EEAA89B6E

خروجی تابع XOR با کلید PIN رمز می‌شود و در مسیج قرار می‌گیرد و پس از تکمیل مسیج MAC آن محاسبه می‌شود و به انتهای مسیج اضافه می‌شود و مسیج برای سوئیچ پرداخت ارسال می‌شود.

لازم به ذکر است که MAC مسیج  در اصل یک HASH است که حاصل رمزنگاری ۳des مسیج بدون فیلد MAC با استفاده از کلید MAC  است و خروجی آن عموماً ۱۶ کاراکتر است. البته در بعضی سوئیچ‌ها از الگوریتم Des و یا از قسمت اول MAC استفاده می‌کنند و حاصل ۸ کاراکتر می‌شود. لازم به ذکر است که در پروسه تولید MAC عموماً مسیج به بلاک‌های ۶۴ بیتی تقسیم می‌شوند سپس بروش DES با متد CBC و با استفاده از قسمت اول کلید MAC  رمز می‌شود و خروجی یکبار با استفاده از قسمت دوم کلید رمزگشایی می‌شود و دوباره با قسمت اول کلید رمزنگاری می‌شود. که در تصویر به‌صورت تصویری به آن اشاره شده است.

Figure 1 نحوه عملکرد الگوریتم MAC BLOCK

در سوئیچ مقصد نیز یکبار MAC مسیج با کلید مشابه تولید می‌شود و در صورتی‌که با MAC ارسالی مطابقت داشته باشد، یعنی مسیج و مقادیر آن، مثل مبلغ و شماره کارت تغییر نکرده است. درصورتی‌که به هر روشی مسیج در میانه راه دستکاری شود، MAC  آن در مقصد با مبدأ متفاوت خواهد بود و مشخص خواهد شد.

به‌صورت خلاصه در این مطلب به نحوه رمزنگاری و امنیت در ارسال تراکنش از پایانه به سوئیچ اشاره شد. به این روش از لو رفتن رمز کارت در صورتی‌که کسی شنود کند جلوگیری می‌شود. همچنین از صحت و اصالت فرستنده پیام نیز اطمینان کسب می‌شود.

در پایان باید عرض کنم که در این مطلب در حد امکان مسائل فنی به‌صورت خلاصه و ساده بیان شد و به عملکرد سامانه مهم HSM و به نحوه نگهداری رمزها و کلیدها در پایانه و سوئیچ پرداخته نشد.

ارسال یک پاسخ

آدرس ایمیل شما منتشر نخواهد شد.