HỆ THỐNG THANH TOÁN BẰNG MÁY ATM CHO THẺ CHÍP 4 0-

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Nghiên cứu và đề xuất giải pháp an toàn thông tin cho hệ thống rút tiền tự động ATM (Trang 42)

1.4.1. Thẻ chíp

Thẻ Chíp hay còn đƣợc gọi là Thẻ thông minh - SmartCard. Là loại thẻ nhựa cứng, thông tin về thẻ đƣợc lƣu trên chíp nhớ. Thẻ có thể thực hiện đƣợc các giao dịch tự động nhƣ kiểm tra số dƣ, rút tiền, chuyển khoản v.v từ máy rút tiền tự động ATM.

1.4.2. Sự phát triển của thẻ chíp

Giữa những năm 80, châu Âu đã triển khai những chiếc thẻ thông minh đầu tiên, giờ đây phạm vi sử dụng của thẻ thông minh đã đƣợc mở rộng ra trên toàn thế giới.

Thẻ thông minh cung cấp rất nhiều tính năng vƣợt trội so với thẻ từ truyền thống nhƣ khả năng lƣu trữ lớn, khả năng bảo mật an toàn thông tin, hỗ trợ nhiều ứng dụng.

Hiện nay, các tổ chức thẻ quốc tế nhƣ Europay, MasterCard, Visa - EMV đang thúc đẩy việc chuyển đổi từ thẻ từ sang thẻ SmartCard trên phạm vi toàn cầu. Theo EMV từ ngày 1/1/2006, khi tham gia vào hệ thống của các tổ chức này các ngân hàng sẽ phải chuyển đổi sang sử dụng thẻ thông minh đạt chuẩn EMV, nếu không các ngân hàng sẽ phải chịu toàn bộ rủi ro do gian lận thẻ gây ra.

Vai trò của thẻ từ chỉ đến một ngƣỡng nhất định. Khi hệ thống an toàn không còn đảm bảo nữa việc chuyển sang thẻ thông minh là việc làm tất yếu, hợp xu thế.

Chuyển đổi sang thẻ chíp nhằm bảo vệ chính ngân hàng, bảo vệ khách hàng và tạo nên ƣu thế cạnh tranh cho ngân hàng.

Thay đổi từ thẻ từ sang thẻ thông minh không thể diễn ra trong chốc lát. Quá trình chuyển dịch đòi hỏi các ngân hàng phải thực hiện những thay đổi mang tính toàn hệ thống vì công nghệ phát hành và thanh toán thẻ thông minh có sự khác biệt lớn so với công nghệ thẻ từ truyền thống.

Sự đầu tƣ là lớn, vì vậy lý giải tại sao tại các nƣớc, các ngân hàng chƣa thể chuyển từ sử dụng thẻ từ sang thẻ thông minh một cách nhanh chóng đƣợc.

Thẻ chíp ra đời dƣ̣a trên hai nhân tố chính , các thuâ ̣t toán mã hóa ma ̣nh : mã hóa khóa công khai RSA, mã hóa khóa đối xứng 3DES, hàm băm SHA-1.

Chip trên thẻ có thể thƣ̣c hiê ̣n các tính toán mã hóa trên dƣ̃ liê ̣u . Thuâ ̣t toán mã hóa PIN và thuật toán dành cho chữ kí số là RSA, hàm băm là SHA-1, MACing và viê ̣c mã hóa các thông điệp theo từng phiên thì sử dụng 3DES.

Thẻ chíp có thể đƣợc cập nhật hay lập trình lại một cách an toàn khi đang sử dụng. Ngân hàng phát hành thẻ có thể cập nhật các tham số quản lí rủi ro chứa trong một ứng dụng ngân hàng từ xa trong một giao dịch trực tuyến tại terminal.

Một số loại thẻ đa ứng dụng hỗ trợ việc tải xuống các ứng dụng mới và xóa đi các ứng dụng cũ từ xa tại terminals chuyên dụng hay qua Internet.

Các thông tin lƣu trong thẻ chip gồm:

+ Dƣ̃ liê ̣u công khai : thông tin về CA , chƣ́ng chỉ khóa công khai của nhà phát hành thẻ, chƣ́ng chỉ khóa công khai của thẻ, chƣ́ng chỉ khóa công khai để mã hóa PIN...

+ Dƣ̃ liê ̣u bí mâ ̣t : khóa riêng của thẻ , khóa riêng mã hóa PIN , khóa chủ (Master Key), PIN.

1.4.3. Phân loại thẻ chíp

1/. Phân loại theo công nghệ chíp

 Chíp nhớ (memory chip).

 Chíp vi xử lý (microprocessor chip).

2/. Phân loại theo phương thức đọc dữ liệu trên thẻ

 Tiếp xúc (Contact).

 Không tiếp xúc Contacless).

 Lƣỡng tính (Dual interface).

1.4.3.1. Thẻ tiếp xúc

Để đọc và ghi dữ liệu lên thẻ thì thẻ phải đƣợc đặt vào thiết bị đầu cuối hay máy đọc thẻ. Loại thẻ này đƣợc các tổ chức tài chính và các cơ quan truyền thông chọn lựa và đang sử dụng phổ biến vì các ƣu điểm về giá cả, về các chuẩn và độ bảo mật.

1.4.3.2. Thẻ không tiếp xúc

Việc đọc/ghi dữ liệu thẻ không cần phải có một kết nối vật lý. Thẻ có thể đƣợc đặt cách máy đọc thẻ vài chục centimet. Tốc độ xử lý cao hơn so với các thẻ tiếp xúc. Thẻ không tiếp xúc đƣợc ứng dụng tại những nơi cần phải xử lý nhanh nhƣ các hệ thống quá cảnh, trên các phƣơng tiện giao thông công cộng. Thẻ không tiếp xúc đắt hơn nhƣng lại không an toàn bằng thẻ tiếp xúc.

1.4.3.3. Thẻ lưỡng tính

Thẻ đƣợc kết hợp các đặc điểm của thẻ tiếp xúc và thẻ không tiếp xúc. Dữ liệu đƣợc truyền hoặc bằng cách tiếp xúc, hoặc không tiếp xúc. Thẻ lƣỡng tính đắt hơn rất nhiều so với 2 loại trên.

1.4.4. Các thành phần trong kiến trúc của thẻ chip

Smart Cards là thẻ mỏng có gắn một con chip, và điều này tự nhiên đặt ra các thách thức cho riêng nó về thiết kế kiến trúc. Nhƣng thực ra là các giải pháp hƣớng tới việc thu nhỏ các chip thông thƣờng chứ không phải là phát minh một chip mới hoàn toàn.

1.4.4.1. Vị trí và các chiều của các điểm tiếp xúc

Con chíp đƣợc gắn trên thẻ phải đảm bảo vị trí và các chiều của các tiếp xúc.

Hình 1.24 Vị trí và các chiều của các điểm tiếp xúc.

Các vùng C1, C2, C3, C5, C7 phải đƣợc bao phủ toàn bộ bằng các mặt dẫn, tạo nên các tiếp xúc ICC tối thiểu. Các vùng C4, C6, C8 có thể có các mặt dẫn một cách tùy chọn.

Với thẻ lƣỡng tính vị trí của con chíp và dải từ đƣợc thể hiện nhƣ hình 1.25

Hình 1.25 Tƣơng quan giữa vị trí của con chíp và dải từ trên thẻ.

1.4.4.2. Bộ xử lý trung tâm

Hình 1.26 Cấu trúc của bộ xử lý

Thông thƣờng nó là một microcontroller 8-bit nhƣng để tăng cƣờng sức mạnh hơn nữa thì các chip 16 và 32-bit cũng đang đƣợc sử dụng. Nhƣng không một chip nào có khả năng đa luồng (multi-threading) và các tính năng mạnh mẽ khác đang rất phổ biến trong các máy tính chuẩn. Smart Card CPUs thi hành các chỉ thị máy với tốc độ xấp xỉ 1 MIPS. Một bộ đồng xử lý (coprocessor) cũng thƣờng đƣợc thêm vào để cải thiện tốc độ của các tính toán mã hóa.

1.4.4.3. Hệ thống bộ nhớ

Có ba loại bộ nhớ chính trên thẻ:

- RAM. 1K. Nó cần thiết cho việc tính toán và phản hồi nhanh chóng. Chỉ có sẵn dung lƣợng rất nhỏ.

- EEPROM (Electrically Erasable PROM). Khoảng từ 1 đến 24K. Không giống nhƣ RAM, nội dung của nó không bị mất khi rút nguồn điện. Các ứng dụng có thể chạy lại và ghi vào nó, nhƣng nó rất chậm và ngƣời ta chỉ có thể đọc/ghi vào nó khoảng 100 000 lần.

- ROM. Khoảng từ 8 đến 24K.

Smart Card Word

size ROM EEPROM RAM Voltage Clock Write/erase cycles Transmission rate Infineon SLE 44C10S 8-bit 9K 1K 256b 2.7 - 5.5V 5 MHz 500 000 9600 baud Orga ICC4 8-bit 6K 3K 128b 4.7 - 5.3V 10 000

GemCombi 8-bit 5K 4.5 - 5.5V 13.6 MHz 100 000 106 kbaud DNP Risona 8-bit 1K 5V 3.5 MHz 9600 baud AmaTech Contactless 8-bit 1K 5V 13.6 MHz 100 000 cycles Schlumberger Cyberflex 8/16- bit 8K 16K 256b 5V 1-5 MHz 100 000 cycles 9600 baud Bảng 2.6 Một số loại thẻ chip

1.4.4.4. Các thiết bị giao tiếp ( Interface devices)

Thẻ thông minh cần năng lƣợng và một tín hiệu đồng hồ để chạy các chƣơng trình, nhƣng chúng không thể tự trang bị đƣợc. Thay vào đó, chúng đƣợc cung cấp bởi Interface Device – thiết bị giao tiếp (thông thƣờng là một thiết bị đọc thẻ thông minh) khi giao tiếp với thẻ.

Bên cạnh đó, thiết bị đọc thẻ cũng phải chịu trách nhiệm cho việc mở một kênh liên lạc giữa phần mềm ứng dụng trên máy tính và hệ điều hành trên thẻ. Giờ đây, tất cả các thiết bị đọc thẻ thông minh đều thật sự là thiết bị đọc/ghi, vì thế, chúng cho phép một ứng dụng ghi vào thẻ cũng nhƣ đọc dữ liệu từ thẻ.

Dữ liệu chỉ có thể truyền theo một chiều từ thiết bị đến thẻ hoặc từ thẻ đến thiết bị. Dữ liệu đƣợc lƣu trên vùng đệm trong RAM của thẻ. Bởi vì không có nhiều RAM nên các gói dữ liệu tƣơng đối nhỏ (10-100 bytes) đƣợc chuyển trong mỗi thông điệp.

1.4.4.5. Hệ điều hành

Hệ điều hành thông dụng trên phần lớn các thẻ thông minh cài đặt một tập hợp các câu lệnh chuẩn (thƣờng là từ 20-30 câu lệnh). Các chuẩn thẻ thông minh nhƣ ISO 7816 và CEN 726 mô tả một dải lệnh mà thẻ thông minh có thể cài đặt.

Mối quan hệ giữa thiết bị đọc thẻ và thẻ là một mối quan hệ chủ/tớ. Thiết bị đọc thẻ gửi một lệnh đến thẻ, thẻ chạy lệnh và trả về kết quả (nếu có) cho thiết bị đọc thẻ và chờ cho câu lệnh khác.

Microsoft phát hành một phiên bản Windows mini cho thẻ thông minh vào năm 1998 và các phiên bản trƣớc của Gnu O/S đã đƣợc phát hành.

1.4.4.6. Input / Output

Thông qua một cổng I/O đƣợc điều khiển bởi bộ xử lý để đảm bảo các truyền thông đƣợc chuẩn hóa theo khuôn mẫu của APDUs (Application Protocol Data Unit).

1.4.4.7. Hệ thống File

Hầu hết các hệ điều hành hỗ trợ một hệ file đơn giản (simple file system) dựa trên chuẩn ISO 7816. Một file thẻ thông minh thật sự là các khối liên tiếp nhau.

Các file đƣợc tổ chức trong một cấu trúc cây phân cấp. Một khi file đƣợc cấp phát, nó không thể đƣợc mở rộng và vì thế các file phải đƣợc tạo ra với kích thƣớc lớn nhất đƣợc mong đợi.

Mỗi file có một danh sách của các bên đƣợc cấp quyền thực hiện các thao tác trên nó. Có nhiều loại file khác nhau: linear, cyclic, transparent, SIM, v.v. Các thao tác thông thƣờng nhƣ tạo, xóa, đọc, ghi và cập nhật có thể đƣợc thực hiện trên tất cả các loại file trên. Một số thao tác khác chỉ đƣợc hỗ trợ trên các loại file cụ thể.

Type Special Operations Example

Linear Seek Credit card account table

Cyclic Read next, read previous Transaction log Transparent Read and write binary Picture

SIM file Encrypt, decrypt cellular telephone Bảng 2.7 Các hệ thống file.

Có hai kiểu phân loại file: - Dedicated file (DF)

- Elementary file (EF)

Thẻ thông minh hỗ trợ một hệ thống lƣu trữ phân cấp nhƣ đƣợc mô tả trong hình dƣới đây. Thẻ không áp đặt các hạn chế về chiều rộng hay chiều sâu của cây phân cấp lƣu trữ trong giới hạn của bộ nhớ có sẵn, ngoại trừ trƣờng hợp đƣợc chỉ ra cụ thể.

(Master File(MF) là một dedicated file, đó là root của cấu trúc file)

Hình 1.27 Cấu trúc file

1/. Master file (MF)

Master file (MF) là một dedicated file (DF) đặc biệt và định nghĩa gốc cho cây phân cấp lƣu trữ đƣợc ICC hỗ trợ. ID tƣơng ứng của file đó là 0x3F00. Nếu các tên DF đƣợc hỗ trợ, thì tên MF sẽ đƣợc đặt là “Master.File”. MF sẽ đƣợc tự động lựa chọn sau khi thiết đặt lại thẻ và có thể đƣợc chọn lại bằng ID hay tên.

MF luôn luôn tồn tại và thông thƣờng đƣợc tạo ra trong khi cá thể hóa ICC tại thời điểm sản xuất. nếu ICC hỗ trợ việc khởi tạo lại ICC qua một câu lệnh bên ngoài, thì việc xóa bất kỳ cây phân cấp lƣu trữ đang tồn tại và việc tự động tạo MF phải đƣợc thực hiện trong quá trình này. Không thể xóa MF.

2/. Dedicated file (DF)

Một dedicated file (DF) xác định một nhóm file có liên quan bao gồm chính nó và tất cả các file nhƣ thế chứa DF này trong cây phân cấp cha của chúng. Mỗi DF có một file ID độ dài 2 bytes và có thể thêm tên bao gồm 1 đến 16 ký tự. file ID có các thuộc tính sau: - Các con có cùng cha phải có ID duy nhất.

- ID không thể là bất cứ các giá trị định trƣớc sau: 0x3F00, 0x3FFF, hay 0xFFFF. Tên nếu đƣợc cung cấp phải duy nhất trong toàn cục của ICC.

ICC kiểm tra tính duy nhất của cả file ID và tên khi một DF đƣợc tạo ra. Nếu ID và tên không duy nhất thì lỗi sẽ bị trả về và việc tạo sẽ bị hủy bỏ. khi DF mới đƣợc tạo ra, nó sẽ đƣợc tự động chọn thành DF hiện thời. DF có thể đƣợc chọn rõ ràng bằng tên của nó (khi đƣợc hỗ trợ), hay bằng cách sử dụng file ID của nó lên quan đến cha của nó (do file ID chỉ xác định so với cha của nó). Việc chọn file ID là 0x3F00 luôn luôn chọn MF bất kể việc chọn lựa DF hiện thời.

3/. Elementary Files (EF)

Elementary file xuất hiện trên các node lá trong cây phân cấp lƣu trữ. EF có thể lƣu trữ dữ liệu ứng dụng hay dữ liệu hệ thống của ICC. Tất cả các EF đều có file ID độ dài 2 bytes duy nhất trong tất cả các EF con có cùng DF cha. Một số câu lệnh có thể hỗ trợ một cách đánh địa chỉ EF theo cấu trúc thu gọn khi đó EF ID đƣợc mã hóa trong 5 bits, với các giá trị trong khoảng từ 1 đến 30. nếu việc đánh địa chỉ theo cấu trúc thu gọn đƣợc yêu cầu thì nhà cung cấp phải chỉ rõ làm thế nào mà việc ánh xạ vào các ID thu gọn đƣợc thực hiện.

Mức tối thiểu mà ICC phải cho phép là việc lựa chọn EF dựa trên file ID của nó liên quan đến cha DF của nó. Điều này bao gồm tính năng lựa chọn rõ ràng EF bằng việc tham chiếu đến file ID của nó.

4/. Transparent Files

Transparent file bao gồm một chuỗi các byte trong một mảng tuyến tính. Khi đánh địa chỉ transparent file, thì đơn vị dữ liệu cơ bản phải luôn đƣợc định nghĩa là một byte (8 bits). Việc đánh địa chỉ độ dài ngắn, nhƣ đƣợc định nghĩa cho APDU trong ISO/IEC 7816-4 phải đƣợc hỗ trợ. Vì thế, offset lớn nhất có thể định rõ đƣợc trong một transparent EF là 32767 bytes (15 bits), và số bytes lớn nhất có thể đọc là 256 hay 255 byte đƣợc ghi trong một câu lệnh đơn. ICC phải hỗ trợ kích thƣớc transparent file cực đại là 32768 bytes.

1.4.4.8. Phần mềm

Thẻ thông minh có thể là phủ mềm hay phủ cứng (Soft-Mask hay Hard-Mask), phụ thuộc vào hầu hết các ứng dụng nằm trên EEPROM hay ROM. Các thẻ phủ cứng đắt hơn. Một số dữ liệu/chỉ thị ứng dụng đặc biệt luôn luôn cần đƣợc lƣu trong EEPROM. Thẻ không theo luật chạy mọi thứ trên RAM.

Khi lập trình thẻ thông minh, ta nên tuân theo chuẩn thực hành là để cho chƣơng trình chạy trên một bộ giả lập trƣớc để gỡ rối, bởi vì EEPROM chỉ có thể đƣợc ghi với một số hữu hạn lần trong tuổi thọ của nó.

Chạy thử có thể đƣợc thực hiện trên một mức độ khác nhau: các ngân hàng thông thƣờng sử dụng một thẻ phủ mềm cho việc chạy thử nghiệm các ứng dụng mới và sau đó chuyển sang các thẻ phủ cứng bền hơn cho khách hàng trong các triển khai rộng hơn. Nhƣng một số ứng dụng có các giới hạn về triển khai mà không bao giờ đƣợc thực hiện cho phủ cứng, vì việc phủ cứng có giá cao hơn về cả thời gian và tiền bạc. Phủ cứng cũng có thể không phù hợp cho một số ứng dụng, nhƣ là một thẻ định danh nhân viên cho các công ty nhỏ.

1.4.4.9. Ngôn ngữ lập trình

Hầu hết thẻ thông minh đang đƣợc lập trình bằng các ngôn ngữ mức thấp dựa trên các hệ điều hành thẻ thông minh độc quyền. Một số chƣơng trình đƣợc làm trong tập hợp chỉ thị thuần túy của chip (thông thƣờng là Motorola 6805, Intel 8051, hay Hitachi H8). Không nhiều lập trình viên có khả năng về điều này.

Vào năm 1998-2000, một loại thẻ mới đƣợc đƣa ra, đôi khi gọi là thẻ có thể cấu hình lại. Chúng có một hệ điều hành mạnh cho phép việc thêm vào hay xóa đi mã ứng dụng sau khi thẻ đƣợc phát hành. Thẻ đƣợc lập trình bằng Java và vì thế đƣợc gọi là thẻ Java. Các ngôn ngữ tƣơng đối phổ biến khác liên quan đến Windows cho thẻ thông minh hay MEL (Multos programming language) hay thậm chí Basic.

1.4.5. Hệ điều hành cho thẻ chíp

Đối với thẻ thông minh sử dụng chíp vi xử lý, cũng giống nhƣ máy tính cá nhân (PC), cần có hệ điều hành để quản lý, thực thi các ứng dụng và trao đổi dữ liệu với thiết

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Nghiên cứu và đề xuất giải pháp an toàn thông tin cho hệ thống rút tiền tự động ATM (Trang 42)

Tải bản đầy đủ (PDF)

(103 trang)