Sekali lagi untuk masalah ATM
Baru saja safinaskar bertanya kepada saya pertanyaan berikut dalam percakapan pribadi:Halo, saya melihat artikel Anda tentang ATM habrahabr.ru/post/217337 . Pertanyaan saya adalah: mengapa antarmuka semua ATM sangat anti-ramah, begitu sama dan begitu "tangguh", tidak seperti mesin lain (katakanlah, mesin Qiwi)? Saya berurusan dengan ATM Sberbank, Rosbank dan My Bank (sekarang bangkrut).
Apakah saya mengerti benar bahwa perangkat lunak untuk mesin konvensional (misalnya Qiwi) adalah perangkat lunak yang paling umum, dikembangkan dengan cara yang sama dengan perangkat lunak yang biasanya dikembangkan. Sangat mudah untuk membuat perubahan pada perangkat lunak, itu ditulis dengan alat biasa untuk OS biasa (mis. Windows), UX diperhitungkan dan kadang-kadang ada bug.
Dan perangkat lunak untuk ATM ditulis sekali dan untuk semua (untuk tujuan keamanan), keamanan ditempatkan di atas UX. Begitu? Dan karenanya masalah dengan UX?
Saya merasa bahwa semua ATM menggunakan program yang sama, begitu?
Jika saya tidak salah, ATM pertama-tama meminta pin, kemudian jumlahnya, dan baru memeriksa pin untuk kebenarannya. Mengapa demikian?
Karena jawabannya perlahan-lahan tumbuh, saya pikir itu layak untuk artikel yang terpisah, terutama karena beberapa topik disentuh yang saya sendiri tidak mengerti dengan baik dan tidak ingin menyesatkan orang dengan jawaban yang salah. Saya berharap di komentar akan ada klarifikasi dan tambahan.Saya sedikit ragu apakah catatan itu harus dibawa - ke Habr atau giktayms. Di satu sisi, ketika mentransfer artikel, saya sebelumnya artikel tentang topik ini tetap pada Habrahabr. Di sisi lain, dilihat dari kebijakan pemerintah, mereka ingin meninggalkan Habr secara eksklusif untuk artikel-artikel itu, yang bagian utamanya adalah kode program. Karena itu, Anda lihat artikel saya saat ini di sini.Pengembangan perangkat lunak, seperti aktivitas lainnya, memerlukan kualifikasi tertentu. Dan pengembangan perangkat lunak di bidang keuangan - dan bahkan lebih. Sekarang mari kita ingat apa itu bank. Organisasi ini tidak mengembangkan perangkat lunak untuk ATM-ATM-nya, jika tidak, ia harus tetap memiliki staf untuk ini. Tetapi pengembangan skenario adalah prosedur satu kali, sehingga tidak efisien. Dengan demikian, pengembangan dipesan dari perusahaan khusus.Seperti yang Anda tahu, hampir tidak ada orang yang akan mempercayakan pengembangan ini kepada siapa pun. Dan untuk mengubah skenario yang terbukti, Anda perlu alasan yang bagus. Katakanlah, keinginan bank untuk menyediakan berbagai layanan yang diperluas melalui ATM, dan bukan hanya penarikan uang / investasi dan informasi saldo. Untuk alasan yang sama, skenario yang menyedihkan akan berubah hanya ketika mereka yakin bahwa ini akan membawa keuntungan finansial.Saya merasa bahwa semua ATM menggunakan program yang sama, begitu?
Saya sendiri jarang menggunakan ATM, tapi saya sama sekali tidak menggunakan ATM bank lain, jadi saya tidak bisa mengatakannya. Tapi saya pikir begitu. Kemungkinan besar, ATM Wincor yang beroperasi di bawah protokol NDC / DDC dengan beberapa ekstensi Wincor adalah yang paling umum di Rusia. Karena itu, mari kita bicara tentang mereka.Saya harus mengatakan, spesifikasi untuk 2013 (versi terbaru dari spesifikasi yang saya lihat) tidak jauh berbeda dari spesifikasi untuk tahun 2003. Pada dasarnya, beberapa peluang yang meragukan telah menjadi ketinggalan zaman, kesempatan itu tampaknya menanamkan halaman HTML di layar. Namun, kemungkinan ini belum didukung oleh kami, jadi saya tidak tahu apa-apa tentang itu, skenario yang cukup dapat ditoleransi diimplementasikan oleh gambar. Bukan untuk mengatakan bahwa itu terlihat sangat lurus. Dan kemudian, apakah Anda benar-benar ingin melihat iklan di mana-mana juga di ATM? Dia ada di sana, tentu saja, tetapi setidaknya tidak begitu mengganggu dan, sebagai aturan, di layar utama, dan tidak di dalam skrip.Dan perangkat lunak untuk ATM ditulis sekali dan untuk semua (untuk tujuan keamanan), keamanan ditempatkan di atas UX. Begitu? Dan karenanya masalah dengan UX?
Tidak, ini lebih tentang kompatibilitas ke belakang dan ketidakmampuan untuk secara radikal mengubah protokol untuk berkomunikasi dengan ATM karena hal ini. Selain itu, menurut saya ATM dilengkapi dengan perangkat lunaknya: perangkat lunak baru - ATM baru. Karena ATM bukan hal yang murah, ini juga dapat memperlambat perubahan. Meskipun harus diakui bahwa fitur-fitur baru dari perangkat lunak sering tidak terkait dengan antarmuka pengguna dan skrip dapat ditulis untuk versi lama. Namun ada pertimbangan lain. Saya melihat ATM yang masa pakainya CRT mendekati akhir, dan jika Anda menunjukkan gambar di sana, Anda mendapatkan tempat buram. Antarmuka teks lebih baik. Selain itu, mungkin masih ada ATM yang tidak tahu cara menampilkan gambar. Tapi zhelezyachniks lebih baik tahu tentang ini, saya hanya bekerja pada bagian host.Jika saya tidak salah, ATM pertama-tama meminta pin, kemudian jumlahnya, dan baru memeriksa pin untuk kebenarannya. Mengapa demikian?
Karena PIN sedang memeriksa host. ATM tidak dapat melakukan operasi ini (secara umum, protokol NDC / DDC memiliki kesempatan seperti itu, tetapi kita harus ingat bahwa mereka muncul pada saat konsep "keamanan informasi" tidak ada).Tentu saja, Anda dapat membuat permintaan terpisah untuk memverifikasi PIN di awal skrip, tetapi ini adalah permintaan tambahan ke server dan menambah waktu tunggu. Meskipun ini digunakan - misalnya, jika perlu untuk membagi skrip menjadi cabang yang berbeda untuk kartu asing milik sistem NSPK dan kartu sepenuhnya asing. Hanya host yang dapat melakukan klasifikasi ini.Untuk kartu mereka sendiri, permintaan tambahan dapat memperlambat layanan terlalu banyak. Misalnya, dalam jaringan ATM yang dilayani oleh sistem kami, ada ATM di mana pada puncak beban transaksi terjadi setiap 2 menit, dari kartu yang berbeda, dan, sebagai aturannya, satu transaksi per kartu. Perlambat script hingga setengah untuk memperingatkan orang bahwa PIN salah? Ini juga merupakan beban tambahan pada host - setelah semua, sesuai dengan standar PCI DSS, server besi yang terpisah harus memeriksa pin, dan PIN dalam hal apa pun akan diperiksa lagi selama operasi, menurut PCI DSS yang sama.Masukkan PIN sebelum atau setelah memilih operasi - pengembang skenario memutuskan persyaratan bank. Mungkin memasukkan PIN di awal sangat mudah dilakukan. Dan untuk kartu chip, mungkin juga diperlukan - untuk mendapatkan akses ke aplikasi chip, Anda mungkin harus melalui otorisasi pada chip. Tapi ini asumsi saya, sebenarnya saya tidak tahu. Source: https://habr.com/ru/post/id381975/
All Articles