Do văn bản gửi đi thường được chuyển qua các con đường công khai nên người ngoài có thể “lấy trộm” được, nhưng vì đó là bản mật mã nên không đọc hiểu được; Còn A có thể tạo ra bản mã mật
Trang 1LÊ VĂN TUẤN
NGHIÊN CỨU VẤN ĐỀ AN TOÀN THÔNG TIN TRÊN
HỆ THỐNG THANH TOÁN BẰNG THẺ ATM
LUẬN VĂN THẠC SĨ
Hà Nội - 2009
Trang 2LỜI CAM ĐOAN
Tôi xin cam đoan, đây là công trình nghiên cứu độc lập của riêng tôi, không sao chép ở bất kỳ một công trình hoặc một luận án của các tác giả khác Các số liệu, kết quả nêu trong luận văn này là trung thực và chưa được công bố trong bất kỳ công trình nào khác Các tài liệu tham khảo có nguồn trích dẫn rõ ràng
Tác giả luận văn
Lê Văn Tuấn
Trang 3MỤC LỤC MỤC LỤC I CHƯƠNG 1 CÁC KHÁI NIỆM CƠ BẢN MỞ ĐẦU
1
1.1 TỔNG QUAN VỀ MÃ HOÁ CHƯƠNG 1 CÁC KHÁI NIỆM CƠ BẢN 2
1.2.1 TỔNG QUAN CHỮ KÝ SỐ VỀ MÃ HOÁ 2 1.3.2 TỔNG QUAN VỀ HÀM BĂM VỀ HÀM BĂM 13 1.4 XÁC THỰC ĐIỆN TỬ 3.
TỔNG QUAN CHỮ KÝ SỐ 11
C HƯƠNG 2 GIỚI THIỆU VỀ THẺ ATM 1.4 XÁC THỰC ĐIỆN TỬ 17
2.1 QUY ĐỊNH CHUNGCHƯƠNG 2 GIỚI THIỆU VỀ THẺ TRONG HOẠT ĐỘNG NGÂN HÀNG ATM 19
2.2 GIỚI THIỆU THẺ ATM 1.
QUY ĐỊNH CHUNG VỀ THẺ TRONG HOẠT ĐỘNG NGÂN HÀNG 19
C HƯƠNG 3 GIAO DỊCH BẰNG2.2. GIỚI THIỆU THẺ ATM 34 3.1 MÃ HÓA PIN VÀ QUẢN LÝ KHÓA ĐỐI VỚICHƯƠNG 3 GIAO DỊCH BẰNG THẺ ATM 46
3.2 CÁC CHUẨN THÔNG ĐIỆP CHO GIAO DỊCH THẺ 1.
MÃ HÓA PIN VÀ QUẢN LÝ KHÓA ĐỐI VỚI THẺ ATM 46
3.3 LUỒNG GIAO DỊCH THANH TOÁN VỚI THẺ ATM 2.
CÁC CHUẨN THÔNG ĐIỆP CHO GIAO DỊCH THẺ 54
C HƯƠNG 4 ỨNG DỤNG THẺ ATM 3.3 LUỒNG GIAO DỊCH THANH TOÁN VỚI THẺ ATM 67
Trang 44.1 BÀI TOÁN THỰC TẾ CHƯƠNG 4 ỨNG DỤNG THẺ ATM 85 4.2 HỆ THỐNG GIAO DỊCH BẰNG THỂ ATM1. BÀI TOÁN THỰC TẾ.
DANH MỤC CÁC TỪ VIẾT TẮT
ATM Automated Teller Machine
BIN Bank Identification Number
DES Data Encryption Standard
EMV EuroPay MasterCard Visa
HSM Host Security Module
ISO International Organization for Standardization
MII Major Industry Identifier
Trang 5PIN Personal Identification Number
PVV PIN Verification Value
RSA Ron Rivest, Adi Shamir và Len Adleman
SNA System Network Architecture
SSL Secure Sockets Layer
DANH MỤC HÌNH VẼ
2 Hình 1.2: Quá trình mã hoá thuật toán DES 5
4 Hình 2.1: Tiêu chuẩn kích thước chung đối với thẻ ATM 21
5 Hình 2.2: Tiêu chuẩn kích thước chi tiết đối với thẻ ATM 22
6 Hình 2.3: Thông tin track1 của thẻ ATM 28
7 Hình 2.4: Thông tin track2 của thẻ ATM 35
9 Hình 2.6: Quy định chuẩn vật lý của thẻ ATM 35
Trang 610 Hình 3.1: Mã hoá PIN tại ATM(EPP) 47
11 Hình 3.2: Giải mã PIN tại trung tâm xử lý 47
13 Hình 3.4:Hoạt động của 3DES trong mã hoá và giải mã PIN 51
15 Hình 3.6:Luồng giao dịch chính trên ATM 70
17 Hình 3.9:Luồng giao dịch ngoại lệ trên ATM 73
19 Hình 3.11:Luồng giao dịch trên ATM trong trường hợp không rút thẻ
ra khỏi máy ATM
75
20 Hình 3.12:Luồng cơ bản giao dịch trên ATM 76
21 Hình 3.13:Luồng giao dịch xem số dư trên ATM 77
22 Hình 3.14:Luồng cơ bản giao dịch trên ATM 78
23 Hình 4.1:Kiến trúc hệ thống chuyển mạch và quản lý thẻ ATM 79
24 Hình 4.2 Mô hình chức năng của hệ thống cuyển mạch và quản lý thẻ 84
25 Hình 4.3 Mô hình các thành phần chuyển mạch và quản lý thẻ ATM 85
Trang 7MỞ ĐẦU
Hiện nay, ở các nước phát triển cũng như đang phát triển, mạng máy tính và Internet đang ngày càng đóng vai trò thiết yếu trong mọi lĩnh vực hoạt động của xã hội, và một khi nó trở thành phương tiện làm việc trong các hệ thống thì nhu cầu bảo mật thông tin được đặt lên hàng đầu Nhu cầu này không chỉ có ở các bộ máy An ninh, Quốc phòng, Quản lý Nhà nước, mà đã trở thành cấp thiết trong nhiều hoạt động kinh tế xã hội: tài chính, ngân hàng, thương mại…thậm chí trong cả một
số hoạt động thường ngày của xã hội (thư điện tử, thanh toán tín dụng,…) Do ý nghĩa quan trọng này mà những năm gần đây công nghệ mật mã và an toàn thông tin đã có những bước tiến vượt bậc và thu hút sự quan tâm của các chuyên gia trong nhiều lĩnh vực khoa học, công nghệ
Trong lĩnh vực ngân hàng các giao dịch thanh toán ngày càng được yêu cầu bảo mật cao, đặc biệt đối với các giao dịch thanh toán bằng thẻ Với cơ sở hạ tầng công nghệ thông tin hiện tại chúng ta còn tiềm ẩn nhiều rủi ro trong thanh toán bằng thẻ, đặc biệt là bảo mật và an toàn thông tin trên các kênh giao dịch như ATM và POS còn nhiều hạn chế
Luận văn này nghiên cứu lý thuyết về an toàn thông tin, nhằm áp dụng xây dựng an toàn thông tin cho các giao dịch thẻ ATM bao gồm: An toàn thông tin cho
hệ thống chuyển mạch, hệ thống máy POS, ATM, hệ thống phát hành thẻ Nhằm đảm bảo an toàn trong thanh toán thẻ trong ngân hàng và giữa các ngân hàng với nhau
Luận văn gồm có bốn chương: Các kiến thức tổng quan trình bày ở Chương
1, Chương 2 nghiên cứu thẻ ATM, Chương 3 Nghiên cứu giao dịch bằng thẻ ATM, cuối cùng Chương 4 ứng dụng thẻ ATM
Rất cám ơn Thầy TS Trần Đức Sự đã cung cấp kiến thức, tài liệu và tận tâm chỉ bảo để tôi có thể hoàn thành luận văn này
Vì điều kiện thời gian và kiến thức còn hạn chế, đề tài không tránh khỏi
có nhiều sai sót Rất mong sự thông cảm và các ý kiến đóng góp của các Thầy Cô
và đồng nghiệp
Trang 8Chương 1 CÁC KHÁI NIỆM CƠ BẢN
1.1 TỔNG QUAN VỀ MẬT MÃ
1.1.1 Khái niệm mã hoá
Mật mã đã được con người sử dụng từ lâu đời Các hình thức mật mã sơ khai
đã được tìm thấy từ khoảng bốn nghìn năm trước trong nền văn minh Ai Cập cổ đại Trải qua hàng nghìn năm lịch sử, mật mã đã được sử dụng rộng rãi ở khắp nơi trên thế giới từ Đông sang Tây để giữ bí mật cho việc giao lưu thông tin trong nhiều lĩnh vực hoạt động giữa con người và các quốc gia, đặc biệt trong các lĩnh vực quân sự, chính trị, ngoại giao Mật mã trước hết là một loại hoạt động thực tiễn, nội dung chính của nó là để giữ bí mật thông tin Ví dụ muốn gửi một văn bản từ một người gửi A đến một người nhận B, A phải tạo cho văn bản đó một bản mã mật tương ứng
và thay vì gửi văn bản rõ thì A chỉ gửi cho B bản mã mật, B nhận được bản mã mật
và khôi phục lại văn bản rõ để hiểu được thông tin mà A muốn gửi cho mình Do văn bản gửi đi thường được chuyển qua các con đường công khai nên người ngoài
có thể “lấy trộm” được, nhưng vì đó là bản mật mã nên không đọc hiểu được; Còn
A có thể tạo ra bản mã mật và B có thể giải bản mã mật thành bản rõ để hiểu được
là do hai người đã có một thoả thuận về một chìa khoá chung, chỉ với khoá chung này thì A mới tạo được bản mã mật từ bản rõ và B mới khôi phục được bản rõ từ bản mã mật Khoá chung đó được gọi là khoá mật mã Để thực hiện được một phép mật mã, ta còn cần có một thuật toán biến bản rõ cùng với khoá mật mã thành bản
mã mật và một thuật toán ngược lại biến bản mật cùng với khoá mật mã thành bản
rõ Các thuật toán đó được gọi tương ứng là thuật toán lập mã và thuật toán giải mã Các thuật toán này thường không nhất thiết phải giữ bí mật, mà cái luôn cần được giữ bí mật là khoá mật mã Trong thực tiễn, có những hoạt động ngược lại với hoạt động bảo mật là khám phá bí mật từ các bản mã “lấy trộm” được, hoạt động này thường được gọi là mã thám hay phá khoá.[4],[5]
Một hệ mã hoá là một bộ năm (P,C,K,E,D) thoả mãn các điều kiện sau đây:
Trang 9Hình 1.1: Quá trình mã hoá và giải mã 1.1.2 Hệ mã hoá đối xứng
Các phương pháp mật mã cổ điển đã được biết đến từ khoảng 4000 năm trước Một số kỹ thuật đã được những người Ai Cập sử dụng từ nhiều thế kỷ trước Những kỹ thuật này chủ yếu sử dụng hai phương pháp chính là: phép thay thế
và phép chuyển dịch Trong phép thay thế, một chữ cái này được thay thế bởi chữ cái khác và trong phép chuyển dịch, các chữ cái được sắp xếp theo một trật tự khác
Hệ mã chuẩn DES được xây dựng tại Mỹ trong những năm 70 theo yêu cầu của Văn phòng quốc gia về chuẩn (NBS) và được sự thẩm định của an ninh quốc gia là một ví dụ về mật mã đối xứng DES kết hợp cả hai phương pháp thay thế và chuyển dịch DES thực hiện mã hoá trên từng khối bản rõ là một xâu 64 bit, có khoá
là một xâu 56 bit và cho ra bản mã cũng là một xâu 64 bit Hiện nay, DES và biến thể của nó (3DES) vẫn được sử dụng thành công trong nhiều ứng dụng [5]
Trong các hệ mã đối xứng chỉ có một khoá được chia sẻ giữa các bên tham gia liên lạc Cứ mỗi lần truyền tin bảo mật, cả người gửi A và người nhận B cùng thoả thuận trước với nhau một khoá chung K, sau đó người gửi dùng eK để mã hoá cho thông báo gửi đi và người nhận dùng dK để giải mã bản mã hoá nhận được
Người gửi và người nhận có cùng một khoá chung K, được giữ bí mật dùng cho cả mã hoá và giải mã Những hệ mã hoá cổ điển với cách sử dụng trên được gọi
là mã hoá khoá đối xứng hay còn gọi là mật mã khoá bí mật Độ an toàn của hệ mật
mã đối xứng phụ thuộc vào khoá Nếu để lộ khoá thì bất kỳ người nào cũng có thể
mã hoá và giải mã thông điệp.[5]
Trang 101.1.2.1 Hệ mã hóa chuẩn DES
1) Sơ đồ mã hoá và Sơ đồ giải mã
Trang 11Hình 1.2: Quá trình mã hoá thuật toán DES
Trang 122) Các đặc điểm đặc trưng của Hệ mã hoá DES
DES là hệ mã đối xứng tức là mã hoá và giải mã đều sử dụng cùng một khoá Sử dụng khoá 56 bít Xử lý khối vào 64 bít, biến đổi khối vào thành khối ra
64 bít Thuật toán DES mã hoá và giải mã nhanh DES được thiết kế để chạy trên phần cứng.[5]
DES thực hiện trên từng khối 64 bít bản rõ Sau khi thực hiện hoán vị khởi đầu, khối dữ liệu được chia làm hai nửa trái và phải, mỗi nửa 32 bít Tiếp đó, có 16 vòng lặp giống hệt nhau được thực hiện, được gọi là các hàm , trong đó dữ liệu được kết hợp với khoá Sau 16 vòng lặp, hai nửa trái và phải được kết hợp lại và hoán vị cuối cùng (hoán vị ngược) sẽ kết thúc thuật toán
Trong mỗi vòng lặp, các bít của khoá được dịch đi và có 48 bít được chọn ra
từ 56 bít của khoá Nửa phải của dữ liệu được mở rộng thành 48 bít bằng một phép hoán vị mở rộng, tiếp đó khối 48 bít này được kết hợp với khối 48 bít đã được thay đổi và hoán vị của khoá bằng toán tử XOR Khối kết quả của phép tính XOR được lựa chọn ra 32 bít bằng cách sử dụng thuật toán thay thế và hoán vị lần nữa Đó là bốn thao tác tạo nên hàm Tiếp đó, đầu ra của hàm được kết hợp với nửa trái bằng một toán tử XOR Kết quả của các bước thực hiện này trở thành nửa phải mới; nửa phải cũ trở thành nửa trái mới Sự thực hiện này được lặp lại 16 lần, tạo thành
16 vòng của DES.[5]
Nếu Bi là kết quả của vòng thứ i, Li và Ri là hai nửa trái và phải của Bi, Ki là khoá 48 bít của vòng thứ i, và là hàm thực hiện thay thế, hoán vị và XOR với khoá, ta có biểu diễn của một vòng sẽ như sau:
Li=Ri-1
Ri=Li-1 XOR (Ri-1,Ki)
Trang 1328 bít 28 bít Dịch
28 bít
Dịch
28 bít
56 bít Hoán vị Chọn
28 bít
Dịch
28 bít
56 bít Hoán vị Chọn
Trang 14Hình 1.3: Một vòng lặp DES [5]
1.1.2.2 Ưu và nhược điểm của hệ mật mã khoá đối xứng
Ưu điểm nổi bật của các hệ mật mã khoá đối xứng là việc xây dựng một hệ mật mã có độ bảo mật cao khá dễ dàng về mặt lý thuyết Nhưng như nếu không kể đến việc cần có một nguồn sinh khoá ngẫu nhiên thì việc phân phối, lưu trữ bảo mật
và thoả thuận khoá là một vấn đề khó chấp nhận được trong mạng truyền thông ngày nay Trong một mạng có n người dùng, nếu cần khoá cho từng cặp thì cần n(n+1)/2 khoá
Để khắc phục hiện tượng không thể lưu trữ một khối lượng khoá quá lớn đáp ứng được nhu cầu mã dịch, người ta xem xét đến việc sử dụng các hệ mật mã khối với độ dài không lớn lắm như DES… hoặc các hệ mật mã dòng mà khoá được sinh
ra từ một nguồn giả ngẫu nhiên bằng thuật toán
Mặc dù đã thực hiện việc mã hoá và giải mã bằng các hệ mật mã khối hay bằng thuật toán sinh khoá như đã nêu ở trên thì vấn đề phân phối và thoả thuận khoá vẫn phải được thực hiện Như vậy phân phối và thoả thuận khoá là một vấn đề chưa thể được giải quyết trong các hệ mật mã khoá đối xứng
1.1.3 Hệ mã khoá công khai
Để giải quyết vấn đề phân phối và thoả thuận khoá của mật mã khoá đối xứng, năm 1976 Diffie và Hellman đã đưa ra khái niệm về hệ mật mã khoá công khai và một phương pháp trao đổi công khai để tạo ra một khoá bí mật chung mà tính an toàn được bảo đảm bởi độ khó của một bài toán toán học cụ thể (là bài toán tính “logarit rời rạc”) Hệ mật mã khoá công khai hay còn được gọi là hệ mật mã phi đối xứng sử dụng một cặp khoá, khoá mã hoá còn gọi là khoá công khai (public key) và khoá giải mã được gọi là khoá bí mật hay khóa riêng (private key) Trong
hệ mật này, khoá mã hoá khác với khoá giải mã Về mặt toán học thì từ khoá công khai rất khó tính được khoá riêng Biết được khoá này không dễ dàng tìm được khoá kia Khoá giải mã được giữ bí mật trong khi khoá mã hoá được công bố công khai Một người bất kỳ có thể sử dụng khoá công khai để mã hoá tin tức, nhưng chỉ
có người nào có đúng khoá giải mã mới có khả năng xem được bản rõ Người gửi A
sẽ mã hoá thông điệp bằng khóa công của người nhận và người nhận B sẽ giải mã thông điệp với khoá riêng tương ứng của mình.Có nhiều hệ thống khoá công khai được triển khai rộng rãi như hệ RSA, hệ ElGamal sử dụng giao thức trao đổi khoá Diffie-Hellman và nổi lên trong những năm gần đây là hệ đường cong Elliptic Trong số các hệ mật mã trên thì hệ RSA là hệ được cộng đồng chuẩn quốc tế và công nghiệp chấp nhận rộng rãi trong việc thực thi mật mã khoá công khai Hệ mật mã RSA, do Rivest, Shamir và Adleman [ 5 ] tìm ra, đã được công
Trang 15bố lần đầu tiên vào tháng 8 năm 1977 trên tạp chí Scientific American Hệ mật mã RSA được sử dụng rộng rãi trong thực tiễn đặc biệt cho mục đích bảo mật và xác thực dữ liệu số [5]
2) Các đặc điểm đặc trưng của Hệ mật RSA
RSA có tên lấy từ chữ cái đầu của ba người phát minh R Rivest, A.Shamir
và L.Adleman Đây là hê ̣ mã hóa công khai , còn gọi là hệ mã hóa dòng Giá trị khóa công khai và khóa bí mật được tính toán dựa trên hai số nguyên tố lớn theo phương pháp tính giá tri ̣ modulo Độ an toàn của RSA phụ thuộc vào kích thước của p và q sao cho giá trị n đủ lớn để việc phân tích n thành thừa số nguyên tố nhằm tìm ra khóa bí mâ ̣t là khó thực hiê ̣n với các máy tính đương đa ̣i Khóa của hệ RSA có mô ̣t phần (khác với hệ mã hóa Elgamal có hai phần ) Bản mã có tính đơn trị, tức là từ mô ̣t bản rõ chỉ sinh ra được mô ̣t bản mã hóa.[5]
Việc phát minh ra phương pháp mã công khai tạo ra một cuộc “cách mạng”trong công nghệ an toàn thông tin điện tử Nhưng thực tiễn triển khai cho
Trang 16thấy tốc độ mã hoá khối dữ liệu lớn bằng các thuật toán mã hoá công khai chậm hơn rất nhiều so với hệ mã hoá đối xứng Ví dụ, để đạt được độ an toàn như các hệ
mã đối xứng mạnh cùng thời, RSA đòi hỏi thời gian cho việc mã hoá một văn bản lâu hơn gấp hàng ngàn lần Do đó, thay bằng việc mã hoá văn bản có kích thước lớn bằng lược đồ khoá công khai thì văn bản này sẽ được mã hoá bằng một hệ mã đối xứng có tốc độ cao như DES, IDEA,…sau đó khoá được sử dụng trong hệ mã đối xứng sẽ được phân phối sử dụng mật mã khoá công khai
1.1.3.2 Ưu nhược điểm của hệ mã hoá khoá công khai
Vấn đề còn tồn đọng của hệ mật mã khoá đối xứng được giải quyết nhờ hệ mật mã khoá công khai Chính ưu điểm này đã thu hút nhiều trí tuệ vào việc đề xuất, đánh giá các hệ mật mã công khai Nhưng do bản thân các hệ mật mã khoá công khai đều dựa vào các giả thiết liên quan đến các bài toán khó nên đa số các hệ mật mã này đều có tốc độ mã dịch không nhanh lắm Chính nhược điểm này làm cho các hệ mật mã khoá công khai khó được dùng một cách độc lập
Một vấn đề nữa nảy sinh khi sử dụng các hệ mật mã khóa công khai là việc xác thực mà trong mô hình hệ mật mã đối xứng không đặt ra Do các khoá mã công khai được công bố một cách công khai trên mạng cho nên việc đảm bảo rằng “khoá được công bố có đúng là của đối tượng cần liên lạc hay không?” là một kẽ hở có thể
bị lợi dụng Vấn đề xác thực này được giải quyết cũng chính bằng các hệ mật mã khoá công khai Nhiều thủ tục xác thực đã được nghiên cứu và sử dụng như Kerberos, X.509… Một ưu điểm nữa của các hệ mật mã khoá công khai là các ứng dụng của nó trong lĩnh vực chữ ký số, cùng với các kết quả về hàm băm, thủ tục ký để bảo đảm tính toàn vẹn của một văn bản được giải quyết.[5]
Trang 171.2 TỔNG QUAN VỀ HÀM BĂM
1.2.1 Khái niệm hàm băm
Việc sử dụng các hệ mật mã và sơ đồ chữ ký số thường là mã hóa và ký số trên từng bit của thông tin, thời gian để mã hóa và ký sẽ tỷ lệ thuận với dung lượng của thông tin Thêm vào đó có thể xảy ra trường hợp: với nhiều bức thông điệp đầu vào khác nhau, sử dụng hệ mật mã, sơ đồ ký số giống nhau (có thể khác nhau) thì cho ra kết quả bản mã, bản ký số giống nhau (ánh xạ N-1: nhiều – một) Điều này sẽ dẫn đến một số rắc rối về sau cho việc xác thực thông tin.[5]
Các sơ đồ ký số thường chỉ được sử dụng để ký các bức thông điệp (thông tin) có kích thước nhỏ và sau khi ký, bản ký số có kích thước gấp đôi bản thông điệp gốc – ví dụ với sơ đồ chữ ký chuẩn DSS ký trên các bức thông điệp có kích thước 160 bit, bản ký số sẽ có kích thước 320 bit Trong khi đó trên thực tế, ta cần phải ký các thông điệp có kích thước lớn hơn nhiều, chẳng hạn vài chục MegaByte Hơn nữa, để đáp ứng yêu cầu xác thực sau khi thông tin đến người nhận, dữ liệu truyền qua mạng không chỉ là bản thông điệp gốc, mà còn bao gồm cả bản ký số (có dung lượng gấp đôi dung lượng bản thông điệp gốc) Một cách đơn giản để giải quyết vấn đề trên (với thông điệp có kích thước lớn) này là chặt thông điệp thành nhiều đoạn 160 bit, sau đó ký lên các đoạn đó độc lập nhau Nhưng, sử dụng biện pháp này sẽ có một số vấn đề gặp phải trong việc tạo ra các chữ ký số:
Trang 18Thứ nhất: với một thông điệp có kích thước a, thì sau khi ký kích thước của chữ ký
sẽ là 2a (trong trường hợp sử dụng DSS) [5]
Thứ hai: với các chữ ký “an toàn” thì tốc độ chậm vì chúng dùng nhiều phép tính số
học phức tạp như số mũ modulo.[5]
Thứ ba: vấn đề nghiêm trọng hơn đó là kết quả sau khi ký, nội dung của thông
điệp có thể bị xáo trộn các đoạn với nhau, hoặc một số đoạn trong chúng có thể bị mất mát, trong khi người nhận cần phải xác minh lại thông điệp Do đó, ta cần phải bảo đảm tính toàn vẹn của thông điệp
Giải pháp cho các vấn đề vướng mắc đến chữ ký số là dùng hàm băm để trợ
giúp cho việc ký số
Hàm băm - hiểu theo một nghĩa đơn giản là hàm cho tương ứng một mảng
dữ liệu lớn với một mảng dữ liệu nhỏ hơn - được sử dụng rộng rãi trong nhiều ứng dụng khác nhau của tin học, không chỉ thuộc phạm vi mật mã học [1]
Hàm băm được đề cập đến trong phạm vi luận văn là hàm băm một chiều, có tác dụng trợ giúp cho các sơ đồ ký số nhằm làm giảm dung lượng của dữ liệu cần thiết để truyền qua mạng Hàm băm ở đây được hiểu là các thuật toán không sử dụng khoá để mã hóa (ở đây ta dùng thuật ngữ “băm” thay cho “mã hoá”), nó có nhiệm vụ băm thông điệp được đưa vào theo một thuật toán h một chiều nào đó, rồi đưa ra một bản băm – văn bản đại diện – có kích thước cố định[5] Giá trị của hàm băm là duy nhất và không thể suy ngược lại được nội dung thông điệp từ giá trị băm này Hàm băm một chiều h có một số đặc tính quan trọng sau:
Với thông điệp đầu vào x thu được bản băm z = h(x) là duy nhất
Nếu dữ liệu trong thông điệp x thay đổi hay bị xóa để thành thông điệp x’
thì h(x’) ≠ h(x) Cho dù chỉ là một sự thay đổi nhỏ hay chỉ là xóa đi 1 bit dữ liệu của thông điệp thì giá trị băm cũng vẫn thay đổi Điều này có nghĩa là: hai thông điệp hoàn toàn khác nhau thì giá trị hàm băm cũng khác nhau
Nội dung của thông điệp gốc không thể bị suy ra từ giá trị hàm băm Nghĩa là với thông điệp x thì dễ dàng tính được z = h(x), nhưng lại không thể (thực chất
là khó) suy ngược lại được x nếu chỉ biết giá trị hàm băm h(x)
Một số thuật toán băm được biết đến nhiều là hàm băm dòng và hàm băm chuẩn như: [MD2], [MD4], [MD5], [SHA-1]…
Trang 19Mật mã khoá công khai có thể được sử dụng theo nhiều cách khác nhau Chữ
ký số là một ví dụ minh chứng cho việc đảm bảo xác thực người dùng và toàn vẹn
dữ liệu Nếu người gửi A mã hoá thông điệp hay tài liệu với khoá riêng của mình thì bất kỳ ai cũng có thể giải mã thông điệp với khoá công khai của A Do đó, người nhận có thể chắc chắn rằng thông điệp mình nhận chỉ có thể do A mã vì chỉ A mới
có khoá riêng của mình Quá trình mã hoá thông điệp với khoá riêng của người gửi gọi là quá trình “ký số” [5]
Trong thực tế, quá trình ký số thường khó hơn Thay bằng việc mã bản thông điệp gốc với khoá riêng của người gửi thì chỉ có bản đại diện thông điệp (bản băm) có độ dài cố định được mã hoá với khoá riêng của người gửi và bản băm
đã được mã hoá này được gắn vào với thông điệp gốc Người nhận B sau khi nhận được thông điệp đầu tiên sẽ giải mã bản băm với khoá công của người gửi, sau đó băm thông điệp đi kèm bằng thuật toán băm tương ứng với thuật toán băm người gửi đã sử dụng B so sánh hai giá trị băm nếu giống nhau thì chắc chắn rằng thông điệp A gửi cho B còn nguyên vẹn, đồng thời xác thực được người gửi thông tin là
ai Tính toàn vẹn của thông điệp được đảm bảo vì chỉ thay đổi một bit trong thông điệp gửi đi thì kết quả hai giá trị băm sẽ khác nhau Tính xác thực của người gửi cũng được đảm bảo vì chỉ có người gửi A mới có khoá riêng để mã bản băm Chữ ký số cũng chứng minh được tính chống chối bỏ bản gốc vì chỉ có A mới có khoá riêng dùng để ký số Sơ đồ chữ ký được định nghĩa như sau:[5]
Trang 20Sơ đồ chữ ký là một bộ năm (P, A, K, S, V), trong đó:
1 P là một tập hữu hạn các văn bản có thể
2 A là một tập hữu hạn các chữ ký có thể
3 K là một tập hữu hạn các khoá có thể
4 S là tập các thuật toán ký
5 V là tập các thuật toán kiểm thử
6 Với mỗi k thuộc K tồn tại một thuật toán kí sigk S và một thuật toán xác minh verk V Mỗi sig k :P A và ver k :PxA {true, false} là những hàm sao cho mỗi bức điện xP và mỗi chữ kí yA thoả mãn phương trình dưới đây
Ver(x,y) = True nếu y = sig(x)
False nếu y # sig(x) Với mỗi k thuộc K, hàm sig k và ver k là hàm thời gian đa thức Hàm ver k sẽ
là hàm công khai còn sig k là mật
RSA cũng là thuật toán được dùng nhiều cho mục đích ký số Sơ đồ chữ ký RSA được mô tả dưới đây Ngoài ra, còn có một số thuật toán công khai khác được dùng để ký số, ví dụ như chuẩn chữ ký số DSS.[5]
1.3.2 Sơ đồ chữ kí số RSA
1/ Quá trình chuẩn bị:
Cho n=pq, p và q là các số nguyên tố lớn Cho P=A=Zn và định nghĩa
K={(n,p,q,a,b): n=pq , p,q là nguyên tố, ab1(mod((n))}
) 1 )(
1 ( )
(
bZ* (n), nguyên tố cùng (n);
aZ* (n), là nghịch đảo của b theo module của (n)
Các giá trị n và b là công khai, còn p,q,a được giữ bí mật.[5]
2/ Quá trình kí:
Với K=(n,p,q,a,b) ta định nghĩa :
n a x x k
sig
y ( ) mod
3/ Quá trình kiểm tra chữ kí:
)(mod)
Trang 211.3.3 Sơ đồ Chuẩn chữ ký số DSS (Digital Signature Standard)
Các giá trị p, q, và là công khai, a là bí mâ ̣t
Với K=(p,q,,a, ), và số ngẫu nhiên bí mật k, 1 k q-1, ta định nghĩa:
sigK(x,k) = (,) Trong đó:
= (ak
mod p) mod q và:
= (x+a)k-1
mod q
Với x Zq* và , Zq, quá trình thẩm định được thực hiện như sau:
e1 = x*-1 mod q e2=*-1 mod q verK(x, , ) = true (e1* e2 mod p) mod q =
2/ Các đặc điểm đặc trưng của chữ ký số DSS
Là phát triển từ lược đồ ElGamal để tăng tính an toàn và có thể ký được những văn bản dài tớn 160 bit, có thể áp dụng để ký lên các thimart card, hoă ̣c các bảng băm của tài liệu như MD4, MD5, Những thay đổi đó như sau:
Thay đổi thứ nhất là đổi dấu “-“ thành dấu “+” trong biểu thức :
= (x + a)k-1
mod(p-1) Điều kiê ̣n của biểu thức thẩm đi ̣nh như sau:
x
(mod p) Nếu gcd(x+a,p-1)=1 thì tồn tại -1
mod (p-1), vì vậy ta có thể sửa lại điều kiện trên như sau:
) (mod 1
1
p
x
3/ Ví dụ bằng số minh hoạ việc ký số, kiểm tra chữ ký
Ta lấy q = 101, p = 78q+1 = 7879, 3 là phần tử cơ sở trong Z7879, và ta có:
78
mod 7879 = 170
Trang 22Với a = 75, ta có:
= a
mod 7879 = 4567 Khi muốn ký vào văn bản x = 1234, ta cho ̣n số ngẫu nhiên k = 50, ta có:
1.3.4 Quá trình ký và kiểm tra chữ ký :
Giả sử A muốn gửi cho B thông điệp x A thực hiện các bước sau:
1 A băm thông điệp x , thu được bản đại diện z = h(x) – có kích thước cố
định 128 bit hoặc 160 bit
2 A ký số trên bản đại diện z B sử dụng các sơ đồ ký số RSA, Elgamal, DSS , bằng khóa bí mật của mình, thu
được bản ký số y = sigK (z)
3 A gửi (x, y) cho B
Khi B nhận được (x, y) B thực hiện các bước sau:
1 B kiểm tra chữ ký số để xác minh xem thông điệp mà mình nhận được có phải được gửi từ A hay không bằng cách giải mã chữ ký số
y, bằng khóa công khai của A, được z
2 B dùng một thuật toán băm – tương ứng với thuật toán băm mà A dùng –
để băm thông điệp x đi kèm, nhận được h(x)
3 B so sánh 2 giá trị băm z và h(x), nếu giống nhau thì chắc chắn rằng thông điệp x – mà A muốn gửi cho B – còn nguyên vẹn, bên cạnh đó cũng xác thực được người gửi thông tin là ai
Trang 231.4 XÁC THỰC ĐIỆN TỬ
1.4.1 Khái niệm xác thực điện tử
Xác thực là một hành động nhằm thiết lập hoặc chứng thực một cái gì đó (hoặc một người nào đó) đáng tin cậy, có nghĩa là, những lời khai báo do người đó đưa ra hoặc về vật đó là sự thật Xác thực một đối tượng còn có nghĩa là công nhận nguồn gốc (provenance) của đối tượng, trong khi, xác thực một người thường bao gồm việc thẩm tra nhận dạng của họ Việc xác thực thường phụ thuộc vào một hoặc nhiều nhân tố xác thực (authentication factors) để minh chứng cụ thể.[5]
Trong an ninh máy tính (computer security), xác thực là một quy trình nhằm xác minh nhận dạng số (digital identity) của phần truyền gửi thông tin (sender) trong giao thông liên lạc chẳng hạn như một yêu cầu đăng nhập Phần gửi cần phải xác thực có thể là một người dùng sử dụng một máy tính, bản thân một máy tính hoặc một chương trình ứng dụng máy tính (computer program)
Trong một mạng lưới tín nhiệm, việc "xác thực" là một cách để đảm bảo rằng người dùng chính là người mà họ nói họ là, và người dùng hiện đang thi hành những chức năng trong một hệ thống, trên thực tế, chính là người đã được ủy quyền
để làm những việc đó
Để phân biệt từ "xác thực" (authentication) với một từ tương tự, "sự ủy quyền" (hay sự cấp phép) (authorization), hai ký hiệu viết tắt thường được dùng để thay thế - A1 tức sự xác thực (authentication) và A2 tức sự ủy quyền (authorization)
Những ví dụ thông thường trong việc quản lý truy cập mà trong đó việc xác thực là một việc không tránh khỏi, gồm có:
Rút tiền mặt từ một Máy rút tiền tự động (Automated Teller Machine - ATM)
Quản lý một máy tính từ xa thông qua Internet
Trang 24 Sử dụng một hệ thống giao dịch ngân hàng trên mạng Internet (Online/Internet banking)
Những cái gì người dùng có (chẳng hạn, chứng minh thư (ID card), chứng chỉ an ninh (security token), chứng chỉ phần mềm (software token) hoặc điện thoại di động (cell phone))
Những gì người dùng biết (chẳng hạn, mật khẩu, mật khẩu ngữ (pass phrase) hoặc số định danh cá nhân (personal identification number - PIN))
Đôi khi, một tổ hợp của những phương pháp trên được sử dụng, chẳng hạn, thẻ ngân hàng và số định danh cá nhân - trong trường hợp này, thuật ngữ được dùng là Xác thực dùng hai nhân tố (two-factor authentication)
Trong ngữ cảnh của dữ liệu máy tính, nhiều phương pháp mật mã (cryptographic methods) đã được xây dựng như chữ ký số (digital signature) và phương pháp xác thực bằng thử thách-trả lời (challenge-response authentication) Đây là những ví dụ
về những cách hiện nay không thể giả mạo được nếu (và chỉ nếu) chìa khóa của người khởi tạo không bị thỏa hiệp Rằng việc người khởi tạo (hay bất cứ ai ngoài kẻ tấn công biết (hoặc không biết) về một sự thỏa hiệp nào đấy là một việc chẳng có dính dáng gì hết Không ai có thể chứng minh được những phương pháp xác thực dùng mật mã này có an toàn hay không, vì có thể những tiến triển trong toán học không lường trước được có thể làm cho chúng, sau này, trở nên dễ bị phá vỡ Nếu xảy ra, thì việc này sẽ làm cho những phương pháp xác minh được dùng trong quá khứ trở nên không tin cậy Cụ thể là, một bản giao kèo được ký bằng chữ điện tử có
Trang 25thể sẽ bị nghi ngờ về tính trung thực của nó khi người ta phát hiện ra một tấn công mới đối với kỹ thuật mật mã dùng trong các chữ ký.[4],[5]
Chương 2 GIỚI THIỆU VỀ THẺ ATM
2.1.1 Các chuẩn ISO về thẻ ATM
Hiện nay tổ chức thẻ quốc tế đưa ra các chuẩn thẻ sau để áp dụng đối với thẻ ATM
Chuẩn
ISO 7811-2
và ISO
7811-6
Hai chuẩn này tương ứng với loại thẻ từ với kháng từ thấp và loại thẻ
từ với kháng từ cao, sự khác nhau của hai chuẩn này nằm ở chất liệu vật liệu làm nên thẻ từ và tính bền của thẻ Đối với các tính chất như vị trí vật lý, mật độ bits, bộ các ký tự được mã hoá thì hai chuẩn này tương tự như nhau [2]
Chuẩn
ISO 7812
ISO 7812 là một tập các chuẩn qui định về hệ thống đánh số trên thẻ
và các thủ tục cần thiết đối với việc đăng ký để trở thành nhà phát hành thẻ Số PAN (Primary Account Number) là số định danh duy nhất đối với từng thẻ[2]
ISO 3166 là chuẩn ISO qui định mã của từng quốc gia trên thế giới
Mã quốc gia gồm 3 ký tự số từ 0 đến 9 ghép lại Mã quốc gia của Việt
Trang 26Mô tả các nguyên lý và các kỹ thuật cơ bản cung cấp mức bảo mật tối thiểu để quản lý PIN hiệu quả Tiêu chuẩn này thích hợp với các tổ chức có trách nhiệm triển khai các kỹ thuật quản lý và bảo vệ PIN
Mô tả các kỹ thuật bảo vệ PIN thích hợp với các giao dịch từ thẻ trong môi trường trực tuyến và một chuẩn trong trao đổi dữ liệu PIN Các kỹ thuật này được cung cấp cho các tổ chức có trách nhiệm triển khai các
kỹ thuật quản lý và bảo vệ PIN tại ATM và POS
ISO 7816-2: Mô kích thước và vị trí tiếp xúc
ISO 7816-3: Định nghĩa tín hiệu, tần số, và giao thức truyền tin(T=0 truyền theo hướng ký tự, T=1 truyền theo hướng block)
ISO 7816-4: Định nghĩa lệnh và cơ chế giao tiếp
ISO 7816-5: Thiết lập chuẩn cho định danh các ứng dụng
2.1.1.1 Chuẩn ISO 7810
Chuẩn ISO 7810 là một tập các chuẩn mô tả các đặc tính vật lý và kích cỡ của thẻ Tóm lược các đặc tính như sau:
1/ Thẻ có 4 loại kích thước khác nhau với độ dày khoảng 0.76mm :
ID-000 25 mm x 15 mm: sử dụng trong thẻ viễn thông
ID-1 85,60 mm x 53,98 mm: sử dụng trong lĩnh vực ngân hàng
ID-2 105 mm x 74 mm: sử dụng thẻ định danh cá nhân tại Đức
ID-3 125 mm x 88 mm; sử dụng để làm Hộ chiếu và thị thực
2/ Độ cong của thẻ tối đa là 35mm
3/ Khả năng chịu lực của tối thiểu là 0,35N/mm
4/ Độ méo bề mặt của thẻ không thể vượt quá 0.1 mm
Trang 275/ Thẻ có thể được làm từ bất kỳ chất liệu nào đáp ứng đầy đủ các yêu cầu tiêu chuẩn quốc tế Hơn nữa, vật liệu phụ cũng có thể được sử dụng
6/ Độ̣ phẳng lớn nh ất giữa bản phẳng của thẻ với bất kì điểm nổi nào trên thẻ cũng không lớn hơn 1.5mm
7/ Các đặt tính vật lý của thẻ như: tính chất cứng, tính cháy, tính độc, độ bền, khả năng chịu nhiệt, độ chắn sáng … cũng cần được xem xét tới nhằm tuân theo đúng chuẩn ISO 7810
Dimensions in millimetres (inches)
End of encoding
Start of encoding
Top reference edge Encoded track
Hình 2.1: Tiêu chuẩn kích thước chung đối với thẻ ATM
A 5,79 (0.228) maximum 8,33 (0.328) minimum
9,09 (0.358) maximum
11,63 (0.458) minimum 12,65 (0.498) maximum
B 8,33 (0.328) minimum
9,09 (0.358) maximum
11,63 (0.458) minimum 12,65 (0.498) maximum
15,19 (0.598) minimum 15,82 (0.623) maximum
Trang 28Hình 2.2: Tiêu chuẩn kích thước chi tiết đối với thẻ ATM
Khi sử dụng cho các tracks 1 và 2 : a = 11,89 (0.468) millimetres Khi sử dụng cho các tracks 1, 2, và 3 : a = 15,95 (0.628) millimetres
2.1.1.2 Chuẩn ISO 7811
ISO 7811 là một chuẩn mô tả các đặc tính để định danh thẻ cũng như các yếu
tố cần thiết đối với thẻ khi tham gia vào thị trường giao dịch thẻ [2]
Chuẩn ISO 7811 qui định các thông tin như: các yêu cầu cần đối với các ký
tự được dập nổi trên thẻ (ISO 7811-1), công nghệ thẻ từ với trở kháng cao và thẻ từ với trở kháng thấp, các kỹ thuật và công nghệ mã hoá cũng như tập các ký tự được
mã hoá, (ISO 7811-2, ISO 7811-6) Chuẩn ISO 7811-1 được mô tả tóm tắt với một vài thông tin sau:
Trang 29Identification number line (Area 1)
Name and address area (Area 2)
Centreline of Charater 1
Centreline of Charater 27
Centreline of Character 1
Centreline of Charater 19 Top reference edge
Front of card
h g
Dimensions in millimetres (inches)
Identification number line (Area 1) Name and address area (Area 2)
Trên thẻ có 2 khu vực dập nổi:
1/ Khu vực 1 (Area 1) – được sử dụng để dập nổi số định dạng thẻ ( Identification number)
2/ Khu vực 2 (Area 2) – được sử dụng để dập nổi tên, địa chỉ và các thông tin liên quan đến chủ thẻ
3/ Khoảng cách từ tâm của một ký tự này đến tâm của một ký tự khác có độ dài là 3,63 ± 0,15 mm (0.143 ± 0.006 in)
4/ Chiều cao tối đa của một ký tự dập nổi là 4,32 mm (0.170 in)
5/ Độ dày của ký tự dập nổi được tính từ vị trí không dập thẻ cho đến vị trí cao nhất trong các ký tự đã dập Bảng sau đây sẽ đưa ra những thông tin về độ dày dập nổi của thẻ unused card (thẻ với đầy đủ các thông tin nhưng chưa phát hành cho việc
Trang 30sử dụng) và thẻ returned card (thẻ đã được sử dụng bởi chủ thẻ nhưng được trả lại với mục đích kiểm thử)
Số định dạng thẻ (Area 1) Thông tin về chủ thẻ (Area 2)
Unused card 0,48 (0.019) 0,40 (0.016) 0,46 (0.018) 0,36 (0.014) Returned card 0,48 (0.019) 0,30 (0.012) 0,46 (0.018) 0,26 (0.010) 6/ Khoảng cách từ tâm của một ký tự này đến tâm của một ký tự khác có độ dài là 2.54 ± 0,15 mm (0.100 ± 0.006 in)
7/ Độ dày của ký tự dập nổi sẽ được tính từ vị trí không dập thẻ cho đến vị trí cao nhất trong các ký tự đã dập Bảng ở trên cũng đã đưa ra những thông tin về độ dày dập nổi của các thẻ unused card và returned card
2.1.1.3 Chuẩn ISO 7811- 2 và ISO 7811-6
Hai chuẩn này tương ứng với loại thẻ từ với kháng từ thấp và loại thẻ từ với kháng từ cao, sự khác nhau của hai chuẩn này nằm ở chất liệu vật liệu làm nên thẻ
từ và tính bền của thẻ Đối với các tính chất như vị trí vật lý, mật độ bits, bộ các ký
tự được mã hoá thì hai chuẩn này tương tự như nhau
Các chuẩn này qui định trên thẻ gồm có 3 tracks với :
1/ Track 1 là track tuân theo chuẩn IATA (International Air Bansport Associantion) Đây là Track chỉ đọc, được ghi với mật độ cao và có thể chứa cả
số lẫn ký tự chữ cái
2/ Track 2 là track tuân theo chuẩn ABA (America Banker Association) Đây là Track chỉ đọc với mật độ ghi thấp và chỉ chứa ký tự số
3/ Track 3 là track tuân theo chuẩn TTS (Thift Third) với mật độ ghi cao, chỉ chứa
ký tự số nhưng có khả năng ghi đè (rewrite) lên thành phần dữ liệu đã có
4/ Thông tin về các tính chất, mật độ ghi, … trên từng Track của thẻ có thể được tóm lược lại như sau:
Track Tính
chất
Mật độ ghi
Thể hiện
Trang 312 bits/inch (09) kiểm tra chẵn lẻ)
Track
3
Đọc, ghi đè
210 bits/inch
Số (09)
có thể được gọi với các tên khác như số thẻ hoặc số tài khoản
Số thẻ hay số tài khoản của thẻ có thể lên tới 19 số, nhưng ở đây xin giới thiệu số thẻ gồm 16 chữ số được tạo nên từ 3 thành phần như sau:
1/ IIN - Issuer Identification Number: Đây là số định danh tổ chức phát hành thẻ hay gọi là số BIN (Bank Identification Number) số này gồm 6 chữ số tổ chức thẻ sẽ căn cứ vào số BIN để nhận biết ngân hàng phát hành thẻ Trong sáu chữ số này có thể gồm những thành phần tiếp sau:
a MII - Major Industry Identifier: Đây là số chỉ định dịch vụ trong lĩnh vực công nghiệp Số này có các giá trị tuân theo chuẩn như sau:
0: Để dành dự trữ cho tương lai được sử dụng bởi ISO/TC 68
1: Dùng cho các tổ chức hàng không
2: Được phân ra để dùng cho các tổ chức hàng không trong hiện tại cũng như tương lai
3: Dành cho các tổ chức du lịch và giải trí
4: Dành cho các tổ chức tài chính, ngân hàng
5: Dành cho các tổ chức tài chính, ngân hàng
6: Dành cho lĩnh vực ngân hàng cũng như trong lĩnh vực công thương buôn bán
7: Dành cho các tổ chức liên quan đến dầu mỏ
8: Dành cho những tổ chức liên quan đến lĩnh vực truyền thông
9: Được dữ trữ dành cho lưu hành nội bộ trong phạm vi quốc gia 2/ II - Issuer Identifier: Số định danh nhà phát hành thẻ, số này có thể có tối đa 5 chữ số Trong ngữ cảnh, số đầu tiên (MII) trong các chữ số của IIN sẽ qui định các
IIN fixed length
Digits 7 – 15
Check Digit
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Trang 32thành phần tiếp sau đó, chẳng hạn nếu MII=9 thì 3 số tiếp theo nên chứa mã quốc gia (CC – Country Code)
3/ IAI - Individual Account Identification: Số nhận dạng tài khoản khách hàng, vì
số PAN ở đây là 16 chữ số nên số này có 9 chữ số Các ngân hàng có thể qui định cấu trúc trong trường thông tin này
4/ CD - Check Digit: Số với ý nghĩa mang tính chất kiểm tra những số tồn tại trước
đó, số này gồm một chữ số, số này được tạo ra từ việc áp dụng giải thuật Luhn Sau đây sẽ giới thiệu cấu trúc điển hình đối với số thẻ gồm 16 chữ số:
Số thẻ sẽ bao gồm 16 chữ số
Số thẻ là duy nhất cho từng khách hàng
Ngân hàng sẽ đăng ký một số định dạng ngân hàng riêng (Bank Identification Number -BIN) Thông qua số BIN hệ thống chuyển mạch sẽ biết được cần chuyển thông điệp tới ngân hàng nào Khi sử dụng, ngân hàng sẽ sử dụng số BIN này
Các chi nhánh sẽ đăng ký mã chi nhánh gồm 3 chữ số Ba chữ số này sẽ là một phần của số thẻ Khi nhìn vào số thẻ, có thể biết được khách hàng thuộc chi nhánh nào
Cấu trúc của số thẻ như sau:
CHECK DIGIT BANK IDENTIFICATION
RE-ISSUE DIGIT
CHECK DIGIT BANK IDENTIFICATION
AAAA AA BB B CCC CC D
E
BRANCH CODE
RE-ISSUE DIGIT
Trang 33Số đăng ký của ngân hàng
Số đăng ký duy nhất của ngân hàng.được ISO cung cấp chỉ dành riêng cho Ngân hàng
BB B 3 (Ba) Mã chi nhánh Chỉ ra khách hàng của chi nhánh nào
Ngân hàng có thể có tối đa 999 chi nhánh được cấp thẻ ATM
CCC
CC
5 (Năm) Số thẻ Chỉ ra số đăng ký của thẻ, mỗi khách hàng sẽ
có một số riêng, mỗi chi nhánh có thể có tới
99999 khách hàng, dãy số đăng ký được bắt đầu từ một và tăng một đơn vị số đăng ký được tính riêng cho từng chi nhánh (Mỗi chi nhánh có một dãy số đăng ký riêng.)
D 1 (một) Số phát hành
lại Chỉ ra số lần thẻ được phát hành lại Lần đầu tiên phát hành, số này có giá trị bằng không
Mỗi lần thẻ được cấp lại, số này tăng thêm một đơn vị
E 1 (một ) Số kiểm tra Số kiểm tra thẻ, dùng cho mục đích bảo mật
2.1.1.5 Chuẩn ISO 7813
ISO 7813 là tập các chuẩn qui định về cấu trúc vạch từ (các tracks của thẻ)
và nội dung thông tin được lưu trên vạch từ Sau đây sẽ giới thiệu về các track 1 và track 2 phục vụ cho vấn đề trao đổi giữa các thành viên tham gia tổ chức thẻ
1 Track 1
Trang 34Hình 2.3: Thông tin track1 của thẻ ATM
Chuẩn ISO 7811 và ISO 7813 qui định các thông tin đối với track 1 như sau:
Mật độ ghi trên thẻ: 210 bpi (bít per inch)
Định dạng ký tự: 7 bít trên mỗi ký tự (gồm 6 bits dữ liệu và 1 bít kiểm tra parity)
Thông tin về mặt nội dung: có thể chứa tối đa 79 ký tự (vừa kiểu số vừa kiểu chữ)
Từ hình định đạng dữ liệu Card cho track 1 ta thấy, 79 ký tự trong định dạng track 1
bao gồm rất nhiều trường như SS, FC, FS, ES … Với track 1, các thông tin là chỉ có
thể đọc Sau đây là chi tiết các trường trong track 1 được liệt kê theo thứ tự tuần tự
đứng trong track đó
SS - Start Sentinel (ký tự đánh dấu khởi đầu track): chứa 1 ký tự, từ bảng định dạng
dữ liệu cho ANSI/ISO Alpha ta có ký tự đó là: “%” (tham khảo thêm bảng ký tự
của track 1)
FC - Format Code (Mã định dạng): là một ký tự (nhưng chỉ là ký tự chữ cái, không
thể là số hoặc ký tự đặc biệt), ý nghĩa của ký tự này sẽ như sau:
A: được dành cho sử dụng vào mục đích riêng tư của nhà phát hành thẻ
B: được dùng trong lĩnh vực tài chính và ngân hành Đây chính là mã mà các
ngân hàng tham gia hệ thống chuyển mạch chung tuân theo
C-M: dành cho sử dụng bởi ANSI Subcommittee X3B10
Trang 35 N-Z: có sẵn dành cho những nhà phát hành thẻ riêng
PAN - Primary Account Number: Trường này tuân theo chuẩn ISO 7812 đã được
giới thiệu ở phần trên
FS - Field Separator: Đây là ký tự phân tách giữa các trường, theo chuẩn ISO thì với track 1 ký tự này sẽ là “^”
CC - Country Code: mã quốc gia, mã này gồm 3 chữ số và được giới thiệu trong chuẩn ISO 3166 Trường này ứng với giá trị bằng 704 để thể hiện mã quốc gia của
Việt Nam
NM - Name: trường này có thể có từ 2-26 ký tự gồm
Surname(s) (được phân tách nhau bởi một khoảng trắng nếu cần thiết)
Surname separator: /
Suffix
First name(s)
Title separator (.) (Khi trường title có mặt và được mã hoá)
Title (Là trường chọn lựa)
Nếu trường này không được sử dụng, một ký tự space và ký tự “/” tiếp sau đó sẽ được điền vào
FS - Field Separator: Đây là ký tự nhằm mục đích phân tách giữa các trường Trong track 1, ký tự phân tách giữa các trường là ký tự “ ^ ”
ED - Expiry Date: Đây là trường chỉ định ngày hết hạn của thẻ, trường này gồm 4
chữ số theo định dạng: YYMM Nếu trường này không được sử dụng thì một ký tự phân tách sẽ được thay thế vào đó
SC - Service Code: Trường mã dịch vụ gồm có 3 chữ số nhằm định nghĩa các loại
hình dịch vụ khác nhau, các loại cards khác nhau được sử dụng trong việc trao đổi trong và ngoài nước, những chỉ định về yêu cầu số PIN …, Các chữ số trong trường này có ý nghĩa như sau:
Chữ số thứ nhất: (có nhiều ý nghĩa thông tin nhất): mang tính chất giao dịch trao
đổi:
0: Được dành trong việc sử dụng cho tương lai bởi ISO
1: Dành cho những trao đổi mang tính chất quốc tế
Trang 362: Dành cho những trao đổi mang tính chất quốc tế với các mạch tích hợp trên thẻ, điều này đồng nghĩa với việc dùng trong các giao dịch tài chính đối với các loại thẻ thông minh
3: Được dành trong việc sử dụng cho tương lai ISO
4: Được dành trong việc sử dụng cho tương lai ISO
5: Có sẵn đối với các trao đổi giao dịch mang tính chất trong nội bộ một quốc gia, trừ trường hợp đã được đồng ý song phương giữa hai quốc gia
6: Có sẵn đối với các trao đổi giao dịch mang tính chất trong nội bộ một quốc gia, trừ trường hợp đã được đồng ý song phương giữa hai quốc gia, được gán cho trong trường hợp dùng với mạch tích hợp trong các giao dịch tài chính 7: Dành cho các loại thẻ mang tính chất riêng tư, không dành cho các trao đổi mang tính phổ biến, trừ trường hợp đôi bên đã đồng ý song phương 8: Được dành trong việc sử dụng cho tương lai ISO
9: Dành cho kiểm nghiệm thử
Chữ số thứ hai: Có ý nghĩa cho qui trình cấp phép:
0: Các giao dịch được cấp phép với các luật mang tính chất thông thường 1: Được dành trong việc sử dụng cho tương lai ISO
2: Các giao dịch được cấp phép bởi nhà phát hành thẻ và được cấp phép một cách trực tuyến
3: Được dành cho việc sử dụng trong tương lai ISO
4: Các giao dịch được cấp phép bởi nhà phát hành thẻ và được cấp phép một cách trực tuyến, ngoại trừ việc đồng ý song phương giữa hai bên tham gia 5: Được dành cho việc sử dụng trong tương lai ISO
6: Được dành cho việc sử dụng trong tương lai ISO
7: Được dành cho việc sử dụng trong tương lai ISO
8: Được dành cho việc sử dụng trong tương lai ISO
9: Được dành cho việc sử dụng trong tương lai ISO
Chữ số thứ ba: (Có ít ý nghĩa nhất - least significant): Phạm vi của dịch vụ và yêu
cầu đòi hỏi về số PIN:
0: Không giới hạn phạm vi của dịch vụ nhưng số PIN được đòi hỏi
1: Không giới hạn phạm vi của dịch vụ
2: Chỉ có hàng hoá và dịch vụ (không tiền mặt)
Trang 373: Chỉ dành cho giao dịch thông qua máy ATM và số PIN được đòi hỏi 4: Chỉ dành cho các giao dịch tiền mặt
5: Chỉ dành cho hàng hoá và dịch vụ (không tiền mặt) và số PIN được đòi hỏi
6: Không giới hạn dịch vụ và đòi hỏi số PIN khi có thể
7: Chỉ dành cho hàng hoá và dịch vụ (không tiền mặt) và đòi hỏi số PIN khi
có thể
8: Được dành cho việc sử dụng trong tương lai ISO
9: Được dành cho việc sử dụng trong tương lai ISO
Nếu trường này không được sử dụng thì một ký tự phân tách FS sẽ được thay thế vào vị trí của nó
PVV – PIN Verification Value: Giá trị xác thực PIN gồm 5 chữ số, đây là một đặc
tính mang thêm thông tin để đảm bảo tính an toàn cao hơn
DD - Discretionary Data: Vùng dữ liệu tuỳ ý, đây chính là phần còn lại của
message, độ lớn của trường này tuỳ thuộc vào sự co dãn cả các trường trước đó nhằm đảm bảo track 1 luôn chứa 79 ký tự (chẳng hạn nếu như trường PVV không tồn tại thì số ký tự dành cho trường này sẽ bao gồm cả số ký tự của PVV) Trường này có đặc trưng khác nhau đối với các tổ chức khác nhau, hay mang tính chất riêng
tư đối với các nhà phát hành thẻ Trường này có thể chứa các thông tin mà trên đó các nhà phát hành thẻ sử dụng cho các giao dịch trong mạng của họ Trên vùng dữ liệu tuỳ ý này, nhà phát hành thẻ có thể thêm rất nhiều trường con chứa các thông tin khác nhau, phục vụ cho rất nhiều mục đích khác nhau
ES - End Sentinel: Ký tự đánh dấu kết thúc track 1, ký tự đó được ký hiệu là “?” LRC - LongituBM #Redundancy Check: Đây là 1 ký tự dùng để kiểm tra toàn bộ
dữ liệu trong track 1 Ký tự này được sinh ra tuỳ thuộc vào giải thuật áp dụng để kiểm tra
2 Track 2
Trang 38Hình 2.4: Thông tin track2 của thẻ ATM
Chuẩn ISO 7811 và ISO 7813 qui định các thông tin đối với track 2 như sau:
Mật độ ghi trên thẻ: 210 bpi (bít per inch)
Định dạng ký tự: 5 bít trên mỗi ký tự (gồm 4 bits dữ liệu và 1 bít kiểm tra parity)
Thông tin về mặt nội dung: có thể chứa tối đa 40 ký tự (chỉ là kiểu số)
Từ hình định đạng dữ liệu Card cho track 2 ta thấy, 40 ký tự trong định dạng track 1
bao gồm nhiều trường như SS, FC, FS, ES … Với track 2, các thông tin là chỉ có
thể đọc Sau đây là chi tiết các trường trong track 2 được liệt kê theo đúng thứ tự
tuần tự
SS - Start Sentinel (ký tự đánh dấu khởi đầu track): chứa 1 ký tự, từ bảng định dạng
dữ liệu cho ANSI/ISO Alpha ta có ký tự đó là “;”
PAN - Primary Account Number: Trường này tuân theo chuẩn ISO 7812 đã được
giới thiệu ở phần trên
FS - Field Separator: Đây là ký tự phân tách giữa các trường, theo chuẩn ISO thì ký
tự này là “=”
CC - Country Code: mã quốc gia, mã này gồm 3 chữ số và được giới thiệu trong
chuẩn ISO 3166 Trường này ứng với giá trị bằng 704 để thể hiện mã quốc gia của
Việt Nam
ED - Expiry Date: Đây là trường chỉ định ngày hết hạn của thẻ, trường này gồm 4
chữ số theo định dạng: YYMM Nếu trường này không được sử dụng thì một ký tự
phân tách sẽ được thay thế vào đó
Trang 39SC - Service Code: Trường này gọi là trường mã dịch vụ Thông tin chi tiết về
trường này xin xem thêm trong phần Track 1
PVV – PIN Verification Value: Giá trị xác thực PIN gồm 5 chữ số, đây là một đặc
tính mang thêm thông tin để đảm bảo tính an toàn cao hơn
DD - Discretionary Data: Vùng dữ liệu tuỳ ý, đây chính là phần còn lại của
message, độ lớn của trường này tuỳ thuộc vào sự co dãn cả các trường trước đó nhằm đảm bảo track 2 luôn chứa 40 ký tự (chẳng hạn nếu như trường PVV không tồn tại thì số ký tự dành cho trường này sẽ bao gồm cả số ký tự của PVV) Trường này có đặc trưng khác nhau đối với các tổ chức khác nhau, hay mang tính chất riêng
tư đối với các nhà phát hành thẻ Trường này có thể chứa các thông tin mà trên đó các nhà phát hành thẻ sử dụng cho các giao dịch on-us của họ Trên vùng dữ liệu tuỳ ý này, nhà phát hành thẻ có thể thêm rất nhiều trường con chứa các thông tin khác nhau, phục vụ cho rất nhiều mục đích khác nhau
ES - End Sentinel: Ký tự đánh dấu kết thúc track 2, ký tự đó là “?”
LRC - LongituBM #Redundancy Check: Đây là 1 ký tự dùng để kiểm tra toàn bộ
dữ liệu trong track 2 Ký tự này được sinh ra tuỳ thuộc vào giải thuật áp dụng để kiểm tra
Trang 402.2 GIỚI THIỆU THẺ ATM
2.2.1 Khái niệm thẻ ATM
Trong lĩnh vực Ngân hàng có rất nhiều loại thẻ khác Nếu chia theo các đặc tính về công nghệ gồm có các loại sau : Thẻ dập nổi, thẻ từ, thẻ chip, thẻ không tiếp xúc…Nếu chia theo các chức năng sử dụng thẻ có các loại sau: Thẻ trả trước, thẻ ghi nợ, thẻ tín dụng Thẻ ATM hay còn gọi là thẻ thanh toán, thẻ ATM có chức năng dùng để thực hiện các giao dịch tự động như kiểm tra thông tin về tài khoản, rút tiền, chuyển khoản, thanh toán hóa đơn, mua thẻ điện thoại từ máy rút tiền tự động (ATM) Loại thẻ này cũng được chấp nhận như một phương thức thanh toán không dùng tiền mặt tại các điểm thanh toán có chấp nhận thẻ(POS).[8]
Thẻ ATM thường thiết kế với kích thước chữ nhật tiêu chuẩn để phù hợp với khe đọc thẻ, có kích thước thông thường là 8,5cm x 5,5cm Trên bề mặt thẻ dập nổi tên chủ thẻ, số thẻ, băng giấy để chủ thẻ ký tên, và băng từ (thẻ từ) hoặc chip (thẻ chip) lưu trữ thông tin về tài khoản đã được khách hàng đăng ký tại ngân hàng nào