Setting HSM

PANDUAN MENGUNAKAN HSM (ATM TRANSACTION MESSAGE)


  • HSM adalah singkatan dari Hardware Security Module
  • HSM bukan tempat penyimpanan key, dia hanya menyimpan satu key saja, yang disebut dengan Local Master Key (LMK)
  • Semua key lain digenerate oleh HSM, kemudian diencrypt dengan LMK, baru diberikan ke kita. Key yang terencrypt dengan LMK ini yang kita simpan di database.
  • Fitur terpenting HSM adalah anti-tampering. Dia bisa menghapus LMKnya bila terjadi pembongkaran paksa, sehingga LMK kita bisa disimpan dengan aman.


Beberapa istilah dalam penggunaan HSM :


  • LMK : Local Master Key. Key utama yang digunakan untuk mengenkripsi key lain
  • TMK : Terminal Master Key. Key di terminal (ATM atau EDC) yang digunakan untuk mengenkripsi key transaksi
  • TPK : Terminal Pin Key. Key yang digunakan untuk mengenkripsi data transaksi (misalnya PIN nasabah)

Referensi :


  • [HSM Basic] (http://web.archive.org/web/20130405032855/http://jpos.org/wiki/HSM_basics)
  • [HSM More (http://web.archive.org/web/20121225184341/http://jpos.org/wiki/HSM_basics_continued)


INISIALISASI LMK


LMK diinisialisasi dengan prosedur Key Ceremony. Biasanya ada beberapa orang (Key Custodian) yang bergiliran memasukkan key. LMK nantinya akan dihasilkan dari gabungan key yang diinput oleh Key Custodian

## Prosedur Key Change ##

Secara periodik, TPK di masing-masing terminal diganti baru untuk menghindari replay attack. Berikut adalah prosedur penggantian key.

## Catatan tentang PIN ##

Di bawah ini akan ada beberapa gambar prosedur pemrosesan transaksi keuangan menggunakan PIN (Personal Identification Number). Penulisan PIN pada diagram di bawah sangat disederhanakan menjadi `[PIN]LMK` atau PIN yang dienkripsi dengan LMK.

Akan tetapi, prosedur aslinya tidak sesederhana itu. Ada beberapa perhitungan lagi yang melibatkan beberapa komponen PIN seperti :


  • PAN : Primary Account Number, atau gampangnya adalah nomer kartu debit/kredit
  • PIN asli. Yaitu nomer rahasia yang dipilih pemegang kartu debit/kredit
  • PIN Generation/Verification Key : key yang digunakan untuk proses generate PIN
  • PIN natural. Yaitu nilai yang dihasilkan dari mengenkripsi sebagian PAN dengan PIN Generation Key
  • PIN Offset : selisih antara PIN asli dengan PIN natural. PIN Offset inilah yang disimpan di database aplikasi
  • PIN block. Yaitu gabungan antara PIN dan nomer kartu (PAN). Ini adalah nilai yang dikirim oleh ATM/EDC ke server.


Berikut adalah beberapa referensi tentang prosedur perhitungan dan pemrosesan PIN :


  • Penjelasan alur pemrosesan PIN (http://web.archive.org/web/20160120101716/http://sidekick.windforwings.com/2008/02/how-are-atm-pins-validated.html)
  • Algoritma perhitungan PIN offset (http://www.ibm.com/support/knowledgecenter/en/linuxonibm/com.ibm.linux.z.wskc.doc/wskc_c_appdpinoffgenalg.html)
  • Algoritma perhitungan PIN block (http://www.ibm.com/support/knowledgecenter/SSLTBW_2.2.0/com.ibm.zos.v2r2.csfb400/pinbf.htm)
  • Panduan keamanan PIN (https://usa.visa.com/dam/VCOM/download/merchants/visa-issuer-pin-security-guideline.pdf)

Jadi, kalau pada diagram di bawah ada tulisan `PIN LMK`, jangan dibaca PIN dienkripsi dengan LMK , tapi bacalah PIN diproses oleh HSM.


## Prosedur Pencetakan PIN ATM (PIN Mailer) ##

## Prosedur Ganti PIN dengan PIN Pad ##

[![Pin Pad](img/pinpad.jpg)](https://www.flickr.com/photos/endymuhardin/30908490491/in/dateposted/)


## Prosedur Verifikasi PIN dengan HSM pada waktu Tarik Tunai di ATM ##


[![PIN Verification](img/pinverification.jpg)](https://www.flickr.com/photos/endymuhardin/25360867809/in/dateposted/)


## Prosedur PIN Translation bila bertransaksi di ATM yang berbeda dengan penerbit kartu ##


[![PIN Translation](img/pintranslation.jpg)](https://www.flickr.com/photos/endymuhardin/30694924240/in/dateposted/)

Komentar

Postingan Populer