TIÊU CHUẨN QUỐC GIA
TCVN 11167-4:2015
ISO/IEC 7816-4:2013
THẺ DANH ĐỊNH - THẺ MẠCH TÍCH HỢP - PHẦN 4: TỔ CHỨC, AN NINH VÀ LỆNH TRAO ĐỔI
Identification cards - Integrated circuit cards - Part 4: Organization, security and commands for interchange
Lời nói đầu
TCVN 11167-4:2015 hoàn toàn tương đương với ISO/IEC 7816-4:2013, ISO/IEC 7816-4:2013/Cor.1:2014
TCVN 11167-4:2015 do Tiểu Ban kỹ thuật tiêu chuẩn quốc gia TCVN/JTC 1/SC 17 “Thẻ nhận dạng” biên soạn, Tổng cục Tiêu chuẩn Đo lường Chất lượng đề nghị, Bộ Khoa học và Công nghệ công bố.
Bộ tiêu chuẩn TCVN 11167 (ISO/IEC 7816) Thẻ định danh - Thẻ mạch tích hợp gồm các tiêu chuẩn sau:
- Phần 1: Thẻ tiếp xúc - Đặc tính vật lý;
- Phần 2: Thẻ tiếp xúc - Kích thước và vị trí tiếp xúc;
- Phần 3: Thẻ tiếp xúc - Giao diện điện và giao thức truyền;
- Phần 4: Tổ chức, an ninh và lệnh trao đổi;
- Phần 5: Đăng ký của bên cung cấp ứng dụng;
- Phần 6: Phần tử dữ liệu liên ngành trong trao đổi;
- Phần 7: Lệnh liên ngành đối với ngôn ngữ truy vấn thẻ có cấu trúc;
- Phần 8: Lệnh đối với hoạt động an ninh;
- Phần 9: Lệnh đối với quản lý thẻ;
- Phần 10: Tín hiệu điện và trả lời để thiết lập lại cho thẻ đồng bộ;
- Phần 11: Xác minh cá nhân bằng phương pháp sinh trắc học;
- Phần 12: Thẻ tiếp xúc - Thủ tục vận hành và giao diện điện tử USB;
- Phần 13: Lệnh đối với quản lý ứng dụng trong môi trường đa ứng dụng;
- Phần 15: Ứng dụng thông tin mã hóa.
THẺ ĐỊNH DANH - THẺ MẠCH TÍCH HỢP - PHẦN 4: TỔ CHỨC, AN NINH VÀ LỆNH TRAO ĐỔI
Identification cards - Integrated circuit cards - Part 4: Organization, security and commands for interchange
1 Phạm vi áp dụng
Tiêu chuẩn này áp dụng trong mọi lĩnh vực. Tiêu chuẩn này qui định:
- Nội dung cặp lệnh-hồi đáp được trao đổi tại giao diện,
- Biện pháp truy lục các phần tử dữ liệu và đối tượng dữ liệu trong thẻ,
- Cấu trúc và nội dung của các byte lịch sử mô tả các đặc tính hoạt động của thẻ,
- Cấu trúc đối với các ứng dụng và dữ liệu trong thẻ, được thể hiện tại giao diện khi xử lý lệnh,
- Phương pháp truy cập tệp và dữ liệu trong thẻ,
- Kiến trúc an toàn để xác định quyền truy cập tệp và dữ liệu trong thẻ,
- Biện pháp và cơ chế xác định và định địa chỉ các ứng dụng trong thẻ,
- Phương pháp truyền thông điệp an toàn,
- Phương pháp truy cập thuật toán được thẻ xử lý. Không mô tả các thuật toán này.
Tiêu chuẩn này không bao gồm các phần thực thi trong thẻ hoặc các phần thực thi của mọi đối tượng bên ngoài.
Tiêu chuẩn này độc lập với công nghệ giao diện vật lý và chỉ áp dụng đối với thẻ được truy cập theo một hoặc các phương pháp sau: tiếp xúc, kết nối và tần số vô tuyến. Nếu thẻ hỗ trợ sử dụng đồng thời nhiều giao diện vật lý, thì mối quan hệ giữa các sự việc xảy ra trên các giao diện vật lý khác nhau không thuộc phạm vi của tiêu chuẩn này.
2 Tài liệu viện dẫn
Các tài liệu viện dẫn sau là rất cần thiết cho việc áp dụng tiêu chuẩn. Đối với các tài liệu viện dẫn ghi năm công bố thì áp dụng bản được nêu. Đối với các tài liệu viện dẫn không ghi năm công bố thì áp dụng phiên bản mới nhất, bao gồm cả các sửa đổi.
TCVN 11167-3 (ISO/IEC 7816-3), Thẻ định danh - Thẻ mạch tích hợp - Phần 3: Thẻ tiếp xúc - Giao diện điện và giao thức truyền;
TCVN 11167-6 (ISO/IEC 7811-6), Thẻ định danh - Thẻ mạch tích hợp - Phần 6: Phần tử dữ liệu liên ngành trong trao đổi;
ISO/IEC 8825-1:2002, Information technology - ASN.1 encoding rules: Specification of basic encoding rules (BER), Canonical encoding rules (CER) and distinguished encoding rules (DER) (Công nghệ thông tin - Quy tắc mã hóa ASN.1: Đặc điểm của quy tắc mã hóa cơ bản (BER), quy tắc mã hóa chính tắc (CER) và quy tắc mã hóa phân biệt (DER)).
3 Định nghĩa
Tiêu chuẩn này áp dụng các thuật ngữ, định nghĩa sau đây.
3.1
Quy tắc truy cập (access rule)
Phần tử dữ liệu bao gồm một chế độ truy cập liên quan đến hoạt động và các điều kiện an toàn cần thực hiện trước khi hành động.
3.2
Tệp answer-to-reset (answer-to-reset file)
EF tùy chọn chỉ ra các đặc tính hoạt động của thẻ, cũng là tệp thông tin.
3.3
Ứng dụng (application)
Các cấu trúc, phần tử dữ liệu và mô-đun chương trình cần thiết để thực hiện một hàm cụ thể.
3.4
DF ứng dụng (application DF)
Tệp chuyên dụng (DF) để tạo và quản lý ứng dụng trong thẻ.
3.5
Định danh ứng dụng (application identifier)
Phần tử dữ liệu (đến 16 byte) định danh ứng dụng.
3.6
Nhãn ứng dụng (application label)
Phần tử dữ liệu sử dụng tại giao diện người-máy.
3.7
Nhà cung cấp ứng dụng (application provider)
Thực thể cung cấp các cấu phần tạo nên ứng dụng trong thẻ.
3.8
Khuôn mẫu ứng dụng (application template)
Tập các đối tượng dữ liệu liên quan đến ứng dụng bao gồm một đối tượng dữ liệu định danh ứng dụng
3.9
Kỹ thuật mật mã không đối xứng (asymmetric cryptographic technique)
Kỹ thuật mật mã sử dụng hai phép tính liên quan: phép tính công khai được xác định bởi số hiệu công khai hoặc bởi khóa công khai và phép tính riêng được xác định bởi số hiệu riêng hoặc bởi khóa riêng (hai phép tính đều có thuộc tính là với phép tính công khai cho trước không thể tính ra phép tính riêng)
3.10
Khuôn mẫu cơ sở (base template)
Trường giá trị của đối tượng dữ liệu được xây dựng, ngoại trừ các DO là kết quả của việc phân tích tham chiếu gián tiếp.
3.11
Chứng thư (certificate)
Chữ ký số ràng buộc một người hoặc đối tượng nào đó với khóa công khai tương ứng (thực thể phát hành chứng thư là bên có thẩm quyền cấp phát thẻ bài liên quan đến các phần tử dữ liệu trong chứng thư).
3.12
Cặp lệnh-hồi đáp (command-response pair)
Tập hai thông điệp tại giao diện: Một APDU lệnh theo sau bởi APDU hồi đáp theo hướng ngược lại.
3.13
Nối chuỗi lệnh (command chaining)
Biện pháp được sử dụng bởi mọi đối tượng bên ngoài để báo cho thẻ rằng dữ liệu lệnh của một trình tự các cặp lệnh-hồi đáp phải được xử lý cùng nhau.
3.14
Lớp bối cảnh-cụ thể (context-specific class)
Lớp thẻ bài có byte đầu tiên hoặc duy nhất '80' đến ‘BF’.
3.15
Khuôn mẫu hiện hành (current template)
Trình tự các đối tượng dữ liệu có thể được tham chiếu trực tiếp bằng thẻ bài duy nhất của các đối tượng đó trong một lệnh trao đổi, nghĩa là trường giá trị của DO được xây dựng hiện hành (có thể ảo)
3.16
Phần tử dữ liệu (data element)
Hạng mục thông tin được nhận biết tại giao diện; được qui định một tên, mô tả nội dung lô-gic, định danh và việc mã hóa.
3.17
Đối tượng dữ liệu (data object)
Thông tin được nhận biết tại giao diện bao gồm chuỗi nối kết trường thẻ bài bắt buộc, trường độ dài bắt buộc và trường giá trị có điều kiện.
3.18
Đơn vị dữ liệu (data unit)
Tập nhỏ nhất các bit có thể được tham chiếu rõ ràng trong một EF hỗ trợ các đơn vị dữ liệu.
3.19
Tệp dành riêng (dedicated file)
Cấu trúc bao gồm thông tin điều khiển tệp, là tùy chọn, sẵn có bộ nhớ để cấp phát.
3.20
Tên DF (DF name)
Phần tử dữ liệu (đến 16 byte) định danh duy nhất một DF trong thẻ.
3.21
Chữ ký số (digital signature)
Dữ liệu được nối thêm, hoặc biến đổi mật mã cho một chuỗi dữ liệu để chứng minh nguồn gốc và tính toàn vẹn của chuỗi dữ liệu và bảo vệ chống lại việc giả mạo, ví dụ: bởi người nhận chuỗi dữ liệu.
3.22
Tệp thư mục (directory file)
EP tùy chọn bao gồm danh sách các ứng dụng được hỗ trợ bởi thẻ và các phần tử dữ liệu tùy chọn liên quan.
3.23
Tệp sơ cấp (elementary file)
Tập các đơn vị dữ liệu hoặc các bản ghi hoặc đối tượng dữ liệu cùng chia sẻ định danh tệp.
3.24
Tiêu đề mở rộng (extended header)
Phần tử dữ liệu tham chiếu một hoặc một vài DO trong DO được xây dựng.
3.25
Danh sách tiêu đề mở rộng (extended header list)
Chuỗi nối kết của các tiêu đề mở rộng.
3.26
Tệp (file)
Một cấu trúc cho ứng dụng và/hoặc dữ liệu trong thẻ, được nhận biết tại giao diện khi xử lý các lệnh.
3.27
Định danh tệp (file identifier)
Phần tử dữ liệu (2 byte) được sử dụng để định địa chỉ tệp.
3.28
Danh sách tiêu đề (header list)
Chuỗi nối kết các cặp trường và độ dài của thẻ bài mà không cần phân định.
3.29
Tệp thông tin (information file)
EF tùy chọn biểu thị các đặc tính hoạt động của thẻ, cũng là tệp answer-to-reset.
3.30
Liên ngành (interindustry)
Được tiêu chuẩn hóa trong bộ TCVN 11167 (ISO/IEC 7816).
3.31
EF nội bộ (internal EF)
EF để lưu giữ dữ liệu được dịch bởi thẻ.
3.32
Khóa (key)
Trình tự các ký hiệu điều khiển thao tác mật mã (ví dụ mật hóa, giải mật mã, phép tính riêng hoặc công khai trong xác thực động, tạo chữ ký, xác minh chữ ký)
3.33
Tệp chủ (master file)
DF đơn nhất thể hiện gốc trong thẻ có sử dụng hệ phân cấp DF.
3.34
ốp-xét (offset)
Số tham chiếu theo trình tự đơn vị dữ liệu trong một EF hỗ trợ các đơn vị dữ liệu, hoặc một byte trong bản ghi.
3.35
Dữ liệu quá cỡ (oversize payload)
Dữ liệu vượt quá qui định kích cỡ hiện hành của APDU.
3.36
Tệp cha (parent file)
DF ở ngay trước tệp cho trước trong hệ phân cấp DF.
3.37
Mật khẩu (password)
Dữ liệu được yêu cầu bởi ứng dụng được thể hiện cho thẻ bởi người sử dụng thẻ với mục đích xác thực.
3.38
Đường dẫn (path)
Chuỗi nối kết định danh tệp mà không cần phân định.
3.39
Dữ liệu (payload)
Dữ liệu chiều dài tùy ý, được gửi tới thẻ hoặc bởi thẻ, được xử lý cùng nhau.
3.40
Khóa riêng (private key)
Khóa trong một cặp khóa không đối xứng của thực thể, chỉ được sử dụng bởi thực thể đó.
[ISO/IEC 9798-1]
3.41
Nhà cung cấp (provider)
Người có thẩm quyền hoặc người có quyền tạo DF trong thẻ.
3.42
Khóa công khai (public key)
Khóa trong một cặp khóa không đối xứng của thực thể mà có thể công khai.
[ISO/IEC 9798-1]
3.43
Bản ghi (record)
Chuỗi các byte được tham chiếu và xử lý bằng thẻ trong một EF có hỗ trợ bản ghi.
3.44
Định danh bản ghi (record identifier)
Số được sử dụng để tham chiếu một hoặc nhiều bản ghi trong một EF có hỗ trợ bản ghi.
3.45
Số bản ghi (record number)
Số tuần tự để định danh duy nhất từng bản ghi trong EF có hỗ trợ bản ghi.
3.46
Định danh nhà cung cấp ứng dụng đã đăng ký (registered application provider identifier)
Phần tử dữ liệu (5 byte) định danh duy nhất một nhà cung cấp ứng dụng.
3.47
Mã thiết lập lại (resetting code)
Dữ liệu được thể hiện cho thẻ để sửa đổi giá trị bộ đếm.
3.48
Chuỗi hồi đáp (response chaining)
Biện pháp được sử dụng bằng thẻ để báo cho mọi đối tượng bên ngoài biết rằng dữ liệu hồi đáp của mọi cặp lệnh-hồi đáp được theo sau bởi dữ liệu hồi đáp của trình tự cặp lệnh-hồi đáp GET RESPONSE nên được xử lý cùng nhau.
3.49
Khóa bí mật (secret key)
Khóa sử dụng các kỹ thuật mật mã hóa đối xứng bởi cặp thực thể xác định.
[ISO/IEC 11770-3]
3.50
Truyền thông điệp an toàn (secure messaging)
Tập các biện pháp bảo vệ mật mã của (các phần của) cặp lệnh-hồi đáp.
3.51
Thuộc tính an toàn (security attribute)
Điều kiện sử dụng đối tượng trong thẻ bao gồm dữ liệu được lưu giữ và các chức năng xử lý dữ liệu, được biểu thị như một phần tử dữ liệu gồm một hoặc nhiều quy tắc truy cập.
3.52
Môi trường an toàn (security environment)
Tập các cấu phần được yêu cầu bởi một ứng dụng trong thẻ đối với việc truyền thông điệp an toàn hoặc cho các thao tác an toàn.
3.53
DO tự điều khiển (self-controlled DO)
DO được xây dựng xếp lồng tại ít nhất một DO'62’ lồng các thuộc tính an toàn.
3.54
Định danh EF ngắn (short EF identifier)
Phần tử dữ liệu (5 bit) được sử dụng để định địa chỉ một tệp sơ cấp.
3.55
Cấu trúc (structure)
DF, EF, bản ghi, chuỗi dữ liệu (DataString) hoặc DO.
3.56
Kỹ thuật mật mã đối xứng (symmetric cryptographic technique)
Kỹ thuật mật mã có sử dụng cùng khóa bí mật đối với cả thao tác của người tạo và của người nhận (không có khóa bí mật, không thể tính toán thao tác của người tạo và người nhận).
3.57
Danh sách thẻ bài (tag list)
Chuỗi nối kết các trường thẻ không phân định.
3.58
Trình bao được gắn thẻ (tagged wrapper)
Trình bao cung cấp một thẻ cho việc định địa chỉ cục bộ của DO mà thẻ đó tham chiếu.
3.59
Khuôn mẫu (template)
Chuỗi nối kết đối tượng dữ liệu BER-TLV, hình thành trường giá trị của một đối tượng dữ liệu được xây dựng BER-TLV.
3.60
Mở rộng khuôn mẫu (template extension)
Phần trường giá trị của một DO được xây dựng do phân tích tự động của tham chiếu gián tiếp.
3.61
Lựa chọn tạm thời (transient selection)
Việc lựa chọn cấu trúc cần thiết khi thực hiện một C-RP, không làm thay đổi vùng hiệu lực hiện hành nếu lựa chọn này thành công.
3.62
VA tạm thời (transient VA)
Vùng hiệu lực (VA) được thiết lập tạm thời trong quá trình thực hiện lệnh xử lý DO.
3.63
Người sử dụng (user)
Người sử dụng thẻ, cũng gọi là chủ thẻ.
3.64
Vùng hiệu lực (validity area)
Kết quả của tất cả các lựa chọn thành công được thực hiện trên kênh lô-gic
3.65
DO gốc ảo (virtual root DO)
DO’7F70’ được xây dựng ảo được thực hiện hiện hành bằng cách lựa chọn một tệp, bản ghi hoặc chuỗi dữ liệu hỗ trợ xử lý DO
3.66
trình bao (wrapper)
Chuỗi nối kết các DO tham chiếu DO
3.67
EF hoạt động (working EF)
EF để lưu giữ dữ liệu không được thực hiện bởi thẻ.
4 Thuật ngữ viết tắt và kí hiệu
AID | Định danh ứng dụng |
AMB | Byte chế độ truy cập |
AMF | Trường chế độ truy cập |
APDU | Đơn vị dữ liệu giao thức ứng dụng |
ARR | Tham chiếu quy tắc truy cập |
ASN.1 | Ký hiệu cú pháp trừu tượng 1 (xem ISO/IEC 8825-1) |
AT | Khuôn mẫu tham chiếu điều khiển đối với việc xác thực |
ATR | Answer-to-Reset (Trả lời-để-Thiết lập) |
BER | Quy tắc mã hóa cơ bản ASN.1 (xem ISO/IEC 8825-1) |
CCT | Khuôn mẫu tham chiếu điều khiển đối với kiểm tra tổng mật mã |
CLA | Byte lớp |
CRT | Khuôn mẫu tham chiếu điều khiển |
CT | Khuôn mẫu tham chiếu điều khiển dành cho bảo mật |
CP | Thông số kiểm soát (thông số kiểm soát tệp hoặc thông số kiểm soát đối tượng dữ liệu) |
CP DO | Đối tượng dữ liệu BER-TLV thông số kiểm soát |
C-RP | Cặp lệnh-hồi đáp (command-response) |
DF | Tệp dành riêng |
DIR | Thư mục |
DO | Đối tượng dữ liệu BER-TLV |
DO'…’ | Đối tượng dữ liệu BER-TLV, Thẻ bài có giá trị hệ cơ số 16 giữa các dấu nháy đơn |
DST | Khuôn mẫu tham chiếu điều khiển đối với chữ ký số |
EF | Tệp cơ sở |
EF.ARR | Tệp tham chiếu quy tắc truy cập |
EF.ATR/INFO | Tệp trả lời-để-thiết lập (Answer-to-Reset), hoặc tệp thông tin |
EF.DIR | Tệp thư mục |
FCI | Thông tin điều khiển tệp |
FCP | Thông số kiểm soát tệp |
FMD | Dữ liệu quản lý tệp |
HT | Khuôn mẫu tham chiếu điều khiển đối với mã-băm |
INS | Byte chỉ dẫn |
KAT | Khuôn mẫu tham chiếu điều khiển đối với thỏa thuận về khóa |
Trường Lc | Trường độ dài đối với mật mã số Nc |
LCS | Trạng thái vòng đời |
Trường Le | Trường độ dài đối với mật mã số Ne |
MF | Tệp chủ |
Nc | Số byte trong trường dữ liệu lệnh |
Ne | Số byte tối đa của byte được mong đợi trong trường dữ liệu hồi đáp |
Nr | Số byte trong trường dữ liệu hồi đáp |
OID | Định danh đối tượng, như được xác định bởi ISO/IEC 8825-1 |
PIX | Mở rộng định danh ứng dụng độc quyền |
P1-P2 | Byte thông số (được chèn với mục đích làm sáng tỏ, dấu gạch ngang không quan trọng) |
RFU | Được giữ lại cho mục đích sử dụng trong tương lai |
RID | Định danh nhà cung cấp ứng dụng đã đăng ký |
SC | Điều kiện an toàn |
SCB | Byte điều kiện an toàn |
SCQL | Ngôn ngữ truy vấn thẻ có cấu trúc |
SE | Môi trường an toàn |
SEID | Định danh môi trường an toàn |
SM | Thông điệp an toàn |
SPT | Khuôn mẫu thông số an toàn |
SW1-SW2 | Byte trạng thái (được chèn với mục đích làm sáng tỏ, dấu gạch ngang không quan trọng) |
TLV | Tệp, độ dài, giá trị |
{T-L-V} | Đối tượng dữ liệu (được chèn với mục đích làm sáng tỏ, dấu gạch ngang và dấu ngoặc không quan trọng) |
VA | Vùng hiệu lực |
'XY' | Ký hiệu mà chữ in hoa từ G đến Z đại diện cho số hệ cơ số 16 từ ‘0’ đến '9' hoặc 'A' đến 'F, tương đương với XY đến 16 |
5 Cặp lệnh-hồi đáp
5.1 Điều kiện hoạt động
Giao diện vật lý giữa thẻ và mọi đối tượng bên ngoài phải có khả năng hỗ trợ xử lý cặp lệnh-hồi đáp. Việc đảm bảo quá trình được xác định bằng các giao thức giao diện-cụ thể. Với các từ của các giao thức đó (giữa các ngoặc kép), các tiêu chuẩn sau xác định các thủ tục trợ giúp:
- TCVN 11167-3 (ISO/IEC 7816-3) xác định “kích hoạt tiếp xúc”, “thiết lập nguội" hoặc “thiết lập nóng", và có thể “lựa chọn thông số và giao thức".
- TCVN 11167-12 (ISO/IEC 7816-12) xác định “kết nối điện” tiếp xúc tham chiếu với thông số USB, trạng thái “định dạng" và “ban đầu” của thiết bị, và “ATR".
- ISO/IEC 14443 (tất cả các phần) xác định cách thiết lập thẻ gần với trạng thái “ACTIVE”.
Các tiêu chuẩn này cũng xác định thủ tục và tình huống vô hiệu hóa giao diện vật lý. Một giao diện vật lý bị vô hiệu hóa không hỗ trợ việc xử lý cặp lệnh-hồi đáp.
5.2 Cú pháp
Bảng 1 thể hiện cặp lệnh-hồi đáp (viết tắt trong tiêu chuẩn này là C-RP), được đặt tên là APDU lệnh theo sau bởi một APDU hồi đáp theo hướng ngược lại (xem TCVN 11167-3). Không được có C-RP chen vào qua giao diện đó, nghĩa là APDU hồi đáp phải được nhận trước khi bắt đầu C-RP khác.
Trong mọi APDU lệnh bao gồm các trường Lc và Le (xem TCVN 11167-3), không kết hợp các trường ngắn và trường độ dài mở rộng, tức là: hoặc cả hai trường đều ngắn, hoặc cả hai trường đều được mở rộng.
Nếu thẻ chỉ rõ khả năng xử lý “các trường Le và Lc được mở rộng" (xem Bảng 119, Bảng chức năng phần mềm thứ ba) trong các byte lịch sử (xem 12.1.1) hoặc trong EF.ATR/INFO (xem 12.2.2), thì thẻ xử lý trường độ dài mở rộng và ngắn. Mặt khác (giá trị mặc định), thẻ chỉ xử lý các trường độ dài ngắn. Trong một APDU lệnh dài hơn 5 byte, việc sử dụng trường độ dài mở rộng L được biểu thị bằng byte đầu tiên sau P2 bằng '00'.
Nc biểu thị số byte trong trường dữ liệu lệnh. Trường Lc mã hóa Nc.
- Nếu không có trường Lc, thì Nc bằng 0;
- Trường Lc ngắn bao gồm một byte không được đặt là '00'. Từ '01' đến 'FF', byte mã hóa Nc từ 1 đến 255.
- Trường Lc mở rộng bao gồm ba byte: một byte đặt là '00' sau 2 byte không đặt là '0000’. Từ ‘0001’ đến ‘FFFF’, 2 byte mã hóa Nc từ 1 đến 65 535.
Bảng 1 - Cặp lệnh-hồi đáp (C-RP)
Trường | Mô tả | Số byte | Hướng |
Tiêu đề lệnh | Byte lớp được biểu thị là CLA | 1 | Đến thẻ |
Byte chỉ dẫn được biểu thị là INS | 1 | ||
Byte thông số được biểu thị là P1-P2 | 2 | ||
Trường Lc | Không có đối với mã hóa Nc = 0, có đối với mã hóa Nc > 0 | 0, 1 hoặc 3 | |
Trường dữ liệu lệnh | Không có nếu Nc = 0, có khi là chuỗi byte Nc nếu Nc > 0 | Nc | |
Trường Le | Không có đối với mã hóa Ne = 0, có đối với mã hóa Ne > 0 | 0, 1, 2 hoặc 3 | |
Trường dữ liệu hồi đáp | Không có nếu Nr = 0, có khi là chuỗi byte Nr nếu Nr > 0 | Nr (tối đa Ne) | Từ thẻ |
Người dò hồi đáp | Byte trạng thái được biểu thị SW1- SW2 | 2 |
Ne biểu thị số byte tối đa trong trường dữ liệu hồi đáp, bất kể bất kỳ cấu trúc dữ liệu nào trong trường này. Trường Le mã hóa là Ne.
- Nếu không có trường Le, khi đó Ne là 0.
- Trường Le ngắn bao gồm một byte có giá trị bất kỳ.
- Từ ‘01' đến 'FF’, byte mã hóa Ne từ 1 đến 255
- Nếu byte được đặt là '00', khi đó Ne là 256
- Trường Le mở rộng bao gồm mỗi ba byte (một byte đặt là '00’ sau 2 byte có giá trị bất kỳ) nếu không có trường Lc, hoặc 2 byte (có giá trị bất kỳ) nếu có trường Lc mở rộng.
- Từ '0001’ đến ‘FFFF', 2 byte mã hóa Ne từ 1 đến 65 535
- Nếu 2 byte được đặt là '0000', khi đó Ne là 65 536
Nr biểu thị số byte trong trường dữ liệu hồi đáp. Nr phải nhỏ hơn hoặc bằng Ne. Vì vậy trong bất kỳ C-RP, việc không có trường Le là cách thức tiêu chuẩn đối với nhận trường dữ liệu không hồi đáp. Nếu trường Le bao gồm chỉ các byte đặt là ‘00’, khi đó Ne là tối đa, nghĩa là trong giới hạn 256 đối với trường Le ngắn, hoặc 65 536 đối với trường Le mở rộng, tất cả các byte có sẵn phải được hoàn lại.
Nếu thủ tục bị hủy bỏ, khi đó thẻ có thể không hồi đáp. Tuy nhiên, nếu APDU hồi đáp diễn ra, khi đó trường dữ liệu hồi đáp phải không có và SW1- SW2 phải biểu thị lỗi.
P1-P2 biểu thị sự điều khiển và lựa chọn đối với xử lý lệnh. Byte thông số P1 hoặc P2 đặt là '00' thường không cung cấp nhiều định tính. Không có quy ước chung khác đối với mã hóa byte thông số. Quy ước chung được xác định sau đây đối với mã hóa byte lớp được biểu thị CLA (xem 5.4), Byte chỉ dẫn được biểu thị INS (xem 5.5) và byte trạng thái được biểu thị SW1- SW2 (xem 5.6). Trong các byte này, bit RFU phải được đặt là 0 trừ khi có quy định khác.
5.3 Thủ tục nối chuỗi
5.3.1 Tổng quát
Thủ tục nối chuỗi được sử dụng hoặc để giúp phân đoạn dữ liệu hoặc đối với thủ tục liên quan đến một số C-RP liên tiếp.
5.3.2 Phân đoạn dữ liệu
Dữ liệu lệnh là dữ liệu có độ dài bất kỳ được gửi đến thẻ để được xử lý cùng nhau. Dữ liệu hồi đáp là dữ liệu có độ dài bất kỳ được nhận từ thẻ theo yêu cầu. Dữ liệu bị quá tải nếu độ dài lớn hơn độ dài có sẵn trong trường dữ liệu (xem Chú thích); nối chuỗi cần thiết để truyền các dữ liệu như vậy:
- Nối chuỗi lệnh hỗ trợ truyền đến thẻ dữ liệu lệnh quá tải. Dữ liệu được phân đoạn; mỗi đoạn là một trường dữ liệu lệnh tuân theo giới hạn kích cỡ.
- Nối chuỗi hồi đáp hỗ trợ phục hồi từ thẻ dữ liệu hồi đáp quá tải. Dữ liệu được phân đoạn; mỗi đoạn là một trường dữ liệu hồi đáp tuân theo giới hạn kích cỡ.
Bộ nhận phải nối với đoạn được truyền tải thành công để phục hồi dữ liệu.
CHÚ THÍCH: Cú pháp APDU giới hạn kích cỡ của trường dữ liệu. Nhiều giới hạn kích cỡ hơn có thể được chỉ ra (xem 12.7.1); nếu trường Le ('0000' hoặc '000000') biểu thị Ne = '010000', khi đó tất cả các thông tin được yêu cầu phải được phục hồi, đến 65 536 byte. Phân đoạn phải xảy ra với trường độ dài có định dạng ngắn nếu dữ liệu lệnh vượt quá 255 byte và/hoặc dữ liệu hồi đáp vượt quá 256 byte. Phân đoạn không xảy ra với trường có độ dài định dạng mở rộng nếu dữ liệu tuân theo giới hạn kích cỡ đã được chỉ ra (xem 12.7.1).
5.3.3 Nối chuỗi lệnh
Điều này xác định cơ chế mà nhờ đó trong lớp liên ngành (CLA < ‘80’, xem Bảng 2 và Bảng 3) C-RP liên tiếp có thể được nối chuỗi. Nếu thẻ hỗ trợ cơ chế này, khi đó thẻ phải biểu thị (xem Bảng 119, Bảng chức năng phần mềm thứ ba) trong byte lịch sử (xem 12.1.1) hoặc trong EF.ATR/INFO (xem 12.2.2).
CHÚ THÍCH: Nội dung của điều này không phụ thuộc vào giao thức truyền. TCVN 11167-3 (ISO/IEC 7816-3) mô tả nối chuỗi khi sử dụng giao thức T=0.
Đối với lập chuỗi trong lớp liên ngành, bit b5 của CLA phải được sử dụng trong khi bảy bit khác không đổi.
- Nếu bit b5 được đặt là 0, khi đó lệnh là duy nhất hoặc lệnh cuối cùng của chuỗi.
- Nếu bit b5 được đặt là 1, khi đó lệnh không phải là lệnh cuối cùng của chuỗi.
Cơ chế có thể được sử dụng:
- Để truyền dữ liệu lệnh quá tải:
- Tất cả các byte CLA của lệnh phải giống nhau, ngoại trừ bit b5 (xem ở trên).
- Nếu bit b5 được đặt là 1, khi đó trường Le phải không có.
- Nếu bit b5 được đặt là 0, khi đó trường Le phải có.
- Tất cả byte INS P1 P2 của lệnh phải giống nhau.
- Như đã được quy định trong tiêu chuẩn này (xem ví dụ trong phụ lục C)
- Đối với bất kỳ thủ tục xác định ứng dụng liên quan đến một số C-RP liên tiếp
- Bit b5 của CLA phải được sử dụng như được xác định ở trên
- Kênh lô-gic được biểu thị bằng CLA phải giống nhau
- Không có sự ràng buộc về giá trị của byte INS P1 P2 của lệnh.
Tiêu chuẩn này xác định hoạt động của thẻ chỉ trong trường hợp, khi được kích hoạt, chuỗi C-RP được xử lý thành công trước khi bắt đầu C-RP không phải là một phần của chuỗi. Nếu điều kiện này không được tuân theo, hoạt động của thẻ không thuộc phạm vi của tiêu chuẩn này, nhưng có thể được mô tả trong đặc tả.
Để hồi đáp lệnh không phải là lệnh cuối cùng của chuỗi, thiết lập SW1- SW2 đến ‘9000’ nghĩa là quá trình đã được hoàn thành; sử dụng các chỉ dấu cảnh báo được xác định trong điều 5.6; các điều kiện lỗi cụ thể sau có thể xảy ra.
- Nếu SW1- SW2 được đặt là ‘6883’, khi đó lệnh cuối cùng của chuỗi được chờ đợi.
- Nếu SW1- SW2 được đặt là '6884', khi đó nối chuỗi lệnh không được hỗ trợ.
5.3.4 Nối chuỗi hồi đáp
SW1 = ‘61’ và GET RESPONSE hỗ trợ truyền dữ liệu hồi đáp quá tải:
- Tất cả các byte CLA của lệnh liên quan đến hồi đáp, nối chuỗi phải giống nhau. Nối chuỗi hồi đáp xác định bắt đầu với C-RP trong đó SW1 được đặt là '61’.
- Ngoại trừ lệnh đầu tiên APDU của dãy, tất cả các byte INS P1-P2 của APDU lệnh phải là 'C0 00 00' (GET RESPONSE).
- Trong nối chuỗi lệnh, truyền dữ liệu bị gián đoạn bởi bất kỳ C-RP khác với GET RESPONSE, hoặc bởi bất kỳ C-RP nào trên kênh lô-gic khác.
- Ngược với nối chuỗi lệnh, sự kết thúc có thể xảy ra này là bình thường khi mọi đối tượng bên ngoài coi rằng nó đã nhận đủ dữ liệu: sự trao đổi tiếp tục xảy ra bình thường với C-RP tùy ý.
- Tuy nhiên, tiêu chuẩn này không xác định hoạt động của thẻ nếu mọi đối tượng bên ngoài cố nối lại nối chuỗi hồi đáp sau khi thực hiện lệnh trên kênh lô-gic khác. Hoạt động này có thể được xác định bằng ứng dụng.
Nếu được xác định bằng ứng dụng, nối chuỗi hồi đáp có thể được sử dụng để kiểm tra tính sẵn sàng của dữ liệu, mà việc này không cần thiết. Thẻ có thể biểu thị tính sẵn sàng bằng SW1- SW2 = '61XY', không gửi bất kỳ dữ liệu hồi đáp; mọi đối tượng bên ngoài phải hoặc phải không gửi (a) GET RESPONSE (s).
Trong hình 1, c = 0 và c = 1 biểu thị giá trị của bit b5 của CLA. Lcmax biểu thị giá trị tối đa của trường Lc mở rộng hoặc ngắn ICC hỗ trợ.
Cảnh báo: Đây là mẫu mà thiết bị giao diện chọn để gửi trường dữ liệu lệnh dài nhất thẻ hỗ trợ và để phục hồi tất cả các dữ liệu đã có sẵn của thẻ. Tất cả các lựa chọn này đều không được ủy quyền.
Hình 1 - Việc truyền đến thẻ dữ liệu lệnh quá kích cỡ sử dụng nối chuỗi lệnh, tiếp theo bởi việc truyền bởi thẻ dữ liệu hồi đáp quá kích cỡ có sử dụng nối chuỗi hồi đáp.
5.4 Byte lớp
5.4.1 Mã hóa
CLA biểu thị lớp lệnh. Bit b8 của CLA phân biệt giữa lớp liên ngành và lớp dành riêng.
- Bit b8 đặt là 0 biểu thị lớp liên ngành
- Bit b8 đặt là 1 biểu thị lớp dành riêng, ngoại trừ giá trị ‘FF’ không có hiệu lực do quy định về đặc tính kỹ thuật trong TCVN 11167-3 (ISO/IEC 7816-3). Bối cảnh ứng dụng xác định các bit khác của CLA trong lớp dành riêng.
Giá trị 000x xxxx và 01xx xxxx được xác định sau đây. Giá trị 001x xxxx là RFU.
Bảng 2 xác định 000x xxxx là giá trị liên ngành đầu tiên.
- Bit b8, b7 và b6 được đặt là 000.
- Bit b5 điều khiển nối chuỗi lệnh (xem 5.3.3)
- Bit b4 và b3 biểu thị thông điệp an toàn (xem Điều 10)
- Bit b2 và b1 mã hóa số kênh lô-gic từ 0 đến 3 (xem 5.4.2).
Bảng 2 - Giá trị liên ngành đầu tiên của CLA
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
0 | 0 | 0 | X | - | - | - | - | Điều khiển nối chuỗi lệnh (xem 5.3.3) |
0 | 0 | 0 | 0 | - | - | - | - | - lệnh là lệnh cuối cùng hoặc lệnh duy nhất của chuỗi |
0 | 0 | 0 | 1 | - | - | - | - | - lệnh không phải là lệnh cuối cùng của chuỗi |
0 | 0 | 0 | - | x | x | - | - | Chỉ báo thông điệp an toàn |
0 | 0 | 0 | - | 0 | 0 | - | - | - không SM hoặc không chỉ báo |
0 | 0 | 0 | - | 0 | 1 | - | - | - định dạng SM độc quyền |
0 | 0 | 0 | - | 1 | 0 | - | - | - SM theo Điều 10, Tiêu đề lệnh không được xử lý theo 10.2.3.1 |
0 | 0 | 0 | - | 1 | 1 | - | - | - SM theo Điều 10, Tiêu đề lệnh được xác thực theo 10.2.3.1 |
0 | 0 | 0 | - | - | - | x | x | Số kênh lô-gic từ không đến ba (xem 5.4.2) |
Bảng 3 - Giá trị liên ngành tiếp theo của CLA
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
0 | 1 | x | - | - | - | - | - | Chỉ báo thông điệp an toàn |
0 | 1 | 0 | - | - | - | - | - | - Không SM hoặc không chỉ báo |
0 | 1 | 1 | - | - | - | - | - | - SM theo Điều 10, Tiêu đề lệnh không được xử lý theo 10.2.3.1 |
0 | 1 | - | x | - | - | - | - | Điều khiển nối chuỗi lệnh (xem 5.3.3) |
0 | 1 | - | 0 | - | - | - | - | - lệnh là lệnh cuối cùng hoặc lệnh duy nhất của chuỗi |
0 | 1 | - | 1 | - | - | - | - | - lệnh không phải là lệnh cuối cùng của chuỗi |
0 | 1 | - | - | x | x | x | x | Số kênh lô-gic từ bốn đến mười chín (xem 5.4.2) |
Bảng 3 xác định 01xx xxxx là giá trị liên ngành hơn nữa
- Bit b8 và b7 được đặt là 01
- Bit b6 biểu thị thông điệp an toàn (xem Điều 10)
- Bit b5 điều khiển nối chuỗi lệnh (xem 5.3.3).
Bit b4 đến b1 mã hóa số từ không đến mười lăm; số này thêm bốn là số kênh lô-gic từ bốn đến mười chín (xem 5.4.2).
5.4.2 Kênh lô-gic
Điều này xác định cơ chế mà nhờ đó trong lớp liên ngành, C-RP có thể tham chiếu kênh lô-gic. Mỗi kênh lô-gic có trạng thái an toàn riêng (xem 9.3) và vùng hiệu lực (xem 7.2). Cách chia sẻ trạng thái an toàn không thuộc phạm vi của tiêu chuẩn này.
Nếu thẻ hỗ trợ cơ chế này, khi đó thẻ phải biểu thị số tối đa của kênh lô-gic có sẵn (xem Bảng 119, Bảng chức năng phần mềm thứ ba) trong byte lịch sử (xem 12.1.1) hoặc trong EF.ATR/INFO (xem 12.2.2).
- Nếu số được biểu thị là bốn hoặc ít hơn, khi đó chỉ áp dụng Bảng 2
- Nếu số được biểu thị là năm hoặc nhiều hơn, khi đó áp dụng Bảng 3.
Để tham chiếu kênh lô-gic trong lớp liên ngành, áp dụng các quy tắc sau.
- CLA mã hóa số kênh lô-gic của C-RP
- Giúp giao diện vật lý (xem 5.1) mở kênh lô-gic cơ bản mà kênh này phải mở cho đến khi làm mất khả năng hoạt động của giao diện vật lý. Nó có thể được thiết lập lại (xem bên dưới). Số kênh lô-gic cơ bản là 0.
- Thẻ không hỗ trợ kênh lô-gic bổ sung (giá trị mặc định) chỉ sử dụng kênh lô-gic cơ bản.
- Bất kỳ kênh lô-gic bổ sung nào phải được mở bằng cách hoàn tất lệnh hoặc SELECT hoặc SELECT DATA (xem 11.1.1 và 11.4.2) trong đó CLA mã hóa số kênh lô-gic chưa được sử dụng, hoặc lệnh MANAGE CHANNEL có hàm mở (xem 11.1.2).
- Bất kỳ kênh lô-gic bổ sung nào đều có thể bị đóng bằng cách hoàn tất lệnh MANAGE CHANNEL có hàm đóng. (xem 11.1.2). Sau khi đóng, kênh lô-gic phải luôn sẵn sàng cho việc sử dụng lại.
- Thậm chí nếu có nhiều kênh lô-gic được mở, không có sự đan xen của C-RP (xem 5.2).
- Nếu không loại bỏ hoàn toàn khả năng có thể chia sẻ bằng byte bộ mô tả tệp (xem bit b7 trong Bảng 11), thì kênh lô-gic nhiều có thể được mở cho cùng một cấu trúc (xem Điều 7), như là: cho DF, có thể cho DF ứng dụng, và có thể cho một EF.
- Nếu không loại bỏ hoàn toàn khả năng có thể chia sẻ bằng byte bộ mô tả tệp (xem bit b7 trong Bảng 13), thì kênh lô-gic nhiều có thể được mở cho cùng một DO
- Bất kỳ kênh lô-gic nào cũng có thể được thiết lập lại bằng cách hoàn tất lệnh MANAGE CHANNEL có hàm thiết lập lại (xem 11.1.2).
5.5 Byte chỉ dẫn
INS biểu thị lệnh xử lý. Do các đặc tính kỹ thuật trong TCVN 11167-3 (ISO/IEC 7816-3), giá trị '6X’ và ‘9X’ không có hiệu lực.
Bảng 4 liệt kê tất cả các lệnh được quy định trong TCVN 11167 (ISO/IEC 7816) tại thời điểm ban hành.
- Bảng 4.1, nghĩa là, bên trái, liệt kê các tên lệnh theo thứ tự Bảng chữ cái.
- Bảng 4.2, nghĩa là, bên phải, liệt kê các mã INS theo thứ tự số.
TCVN 11167 (ISO/IEC 7816) quy định sử dụng các lệnh này trong lớp liên ngành.
- Tiêu chuẩn này xác định lệnh đối với giao diện (xem Điều 11).
- TCVN 11167-7 (ISO/IEC 7816-7) quy định các lệnh đối với ngôn ngữ hỏi thẻ cấu trúc (SCQL).
- TCVN 11167-8 (ISO/IEC 7816-8) quy định các lệnh đối với thao tác an toàn.
- TCVN 11167-9 (ISO/IEC 7816-9) quy định các lệnh đối với quản lý thẻ.
- TCVN 11167-13 (ISO/IEC 7816-13) quy định các lệnh đối với quản lý ứng dụng trong môi trường nhiều ứng dụng.
Lớp liên ngành, bit b1 của INS biểu thị định dạng trường dữ liệu như sau.
- Nếu bit b1 được đặt là 0 (thậm chí mã INS), khi đó không cung cấp chỉ báo
- Nếu bit b1 được đặt là 1 (mã INS lẻ), dữ liệu (nếu có) phải được mã hóa trong BER-TLV (xem 8.1).
5.6 Byte trạng thái
SW1- SW2 biểu thị trạng thái xử lý. Do đặc tính kỹ thuật trong TCVN 11167-3 (ISO/IEC 7816-3), mọi giá trị khác với ‘6XXX’ và '9XXX' không có hiệu lực; bất kỳ giá trị ‘60XX’ cũng không có hiệu lực.
Các giá trị ‘61XX’, ‘62XX’, '63XX', '64XX', '65XX', ‘66XX’, ‘68XX‘, ‘69XX’, ‘6AXX’ và '6CXX' là liên ngành.
Do các đặc tính kỹ thuật trong TCVN 11167-3 (ISO/IEC 7816-3), các giá trị ‘67XX', '6BXX', '6DXX’, '6EXX', ‘6FXX' và ‘9XXX’ là độc quyền, ngoại trừ giá trị '6700', ‘6701’, '6702', ‘6B00', ‘6D00’, '6E00', '6F00' và '9000' là liên ngành.
Hình 2 biểu thị sơ đồ cấu trúc của các giá trị '9000' và ‘61XX’ đến ‘6FXX’ đối với SW1- SW2.
Hình 2 - Sơ đồ cấu trúc các giá trị SW1- SW2
Tất cả các giá trị liên ngành SW1- SW2 không phụ thuộc với bất kỳ giao thức truyền nào. Bảng 5 liệt kê tất cả các giá trị liên ngành của SW1- SW2 và cho biết ý nghĩa chung của chúng. Tiểu ban SC 17 giữ lại cho mục đích sử dụng trong tương lai bất kỳ giá trị liên ngành của SW1- SW2 không được xác định trong TCVN 11167 (ISO/IEC 7816). Bảng 6 liệt kê tất cả điều kiện lỗi và cảnh báo liên ngành cụ thể được sử dụng trong TCVN 11167 (ISO/IEC 7816) tại thời điểm công bố.
Bảng 4.1 - Lệnh theo thứ tự Bảng chữ cái |
| Bảng 4.2 - Lệnh theo thứ tự số | ||||
Tên lệnh | INS | Tham khảo |
| INS | Tên lệnh | Tham Khảo |
ACTIVATE FILE | ‘44' | Phần 9 |
| ‘04’ | DEACTIVATE FILE | Phần 9 |
ACTIVATE RECORD | ‘08' | 11.3.9 |
| ‘06’ | DEACTIVATE RECORD | 11.3.10 |
APPEND RECORD | ‘E2’ | 11.3.6 |
| ‘08' | ACTIVATE RECORD | 11.3.9 |
APPLICATION MANAGEMENT REQUEST | ‘40’, ‘41’ | Phần 13 |
| '0C’ | ERASE RECORD (S) | 11.3.8 |
CHANGE REFERENCE DATA | ‘24’, ‘25’ | 11.5.7 |
| ‘0E’, ’0F’ | ERASE BINARY | 11.2.7 |
COMPARE | ‘33' | 11.6.1 |
| ‘10’ | PERFORM SCQL OPERATION | Phần 7 |
CREATE FILE | ‘E0’ | Phần 9 |
| '12’ | PERFORM TRANSACTION OPERATION | Phần 7 |
DEACTIVATE FILE | '04' | Phần 9 |
| ‘14‘ | PERFORM USER OPERATION | Phần 7 |
DELETE FILE | ‘E4’ | 7.6.2 |
| ‘20’, ‘21’ | VERIFY | 11.5.6 |
DISABLE VERIFICATION REQUIREMENT | ‘26' | 11.5.9 |
| ‘22’ | MANAGE SECURITY ENVIRONMENT | 11.5.11 |
ENABLE VERIFICATION REQUIREMENT | ‘28' | 0 |
| ‘24' | CHANGE REFERENCE DATA | 11.5.7 |
ENVELOPE | ‘C2’, ‘C3’ | 11.7.2 |
| ‘26' | DISABLE VERIFICATION REQUIREMENT | 11.5.9 |
ERASE BINARY | ‘0E’, ‘0F’ | 11.2.7 |
| '28’ | ENABLE VERIFICATION REQUIREMENT | 0 |
ERASE RECORD (S) | '0C' | 11.3.8 |
| ‘2A’,’2B' | PERFORM SECURITY OPERATION | Phần 8 |
EXTERNAL (/MUTUAL) AUTHENTICATE | '82’ | 11.5.4 |
| ‘2C’,’2D’ | RESET RETRY COUNTER | 11.5.10 |
GENERAL AUTHENTICATE | ‘86', ‘87’ | 11.5.5 |
| ‘2E’,’2F’ | PERFORM BIOMETRIC OPERATION | Phần 8 |
GENERATE ASYMMETRIC KEY PAIR | '46', '47' | Phần 8 |
| ‘33’ | COMPARE | 11.6.1 |
GET ATTRIBUTE | '34','35' | 11.6.2 |
| '34’,’35' | GET ATTRIBUTE | 11.6.2 |
GET CHALLENGE | '84' | 11.5.3 |
| ‘40’,’41' | APPLICATION MANAGEMENT REQUEST | Phần 13 |
GET DATA/GET NEXT DATA | ‘CA’/’CC’ | 11.4.3 |
| '44’ | ACTIVATE FILE | Phần 9 |
GET DATA/GET NEXT DATA | ‘CB’/’CD’ | 11.4.4 |
| '46’,’47’ | GENERATE ASYMMETRIC KEY PAIR | Phần 8 |
GET RESPONSE | 'C0' | 11.7.1 |
| ‘70' | MANAGE CHANNEL | 11.1.2 |
INTERNAL AUTHENTICATE | '88' | 11.5.2 |
| '82' | EXTERNAL (/MUTUAL) AUTHENTICATE | 11.5.4 |
LOAD APPLICATION | 'EA‘,'EB' | Phần 13 |
| '84' | GET CHALLENGE | 11.5.3 |
MANAGE CHANNEL | ‘70' | 11.1.2 |
| '86', '87’ | GENERAL AUTHENTICATE | 11.5.5 |
MANAGE DATA | ‘CF’ | Phần 9 |
| ‘88' | INTERNAL AUTHENTICATE | 11.5.2 |
MANAGE SECURITY ENVIRONMENT | ‘22' | 11.5.11 |
| ‘A0’, ‘A1’ | SEARCH BINARY | 11.2.6 |
PERFORM BIOMETRIC OPERATION | ‘2E’, ‘2F’ | Phần 8 |
| ‘A2’ | SEARCH RECORD | 11.3.7 |
PERFORM SCQL OPERATION | ‘10’ | Phần 7 |
| 'A4' | SELECT | 11.1.1 |
PERFORM SECURITY OPERATION | ‘2A’,‘2B’ | Phần 8 |
| 'A5' | SELECT DATA | 11.4.2 |
PERFORM TRANSACTION OPERATION | ‘12’ | Phần 7 |
| ‘B0’, ‘B1’ | READ BINARY | 11.2.3 |
PERFORM USER OPERATION | ‘14' | Phần 7 |
| ‘B2’, ‘B3’ | READ RECORD (S) | 11.3.3 |
PUT DATA | ‘DA', ‘DB’ | 11.4.6 |
| ‘C0’ | GET RESPONSE | 11.7.1 |
PUT NEXT DATA | ‘D8’, ‘D9’ | 11.4.7 |
| ‘C2’, ‘C3’ | ENVELOPE | 11.7.2 |
READ BINARY | ‘B0’, ‘B1 | 11.2.3 |
| ‘CA’/’CC’ | GET DATA/GET NEXT DATA | 11.4.3 |
READ RECORD (S) | ‘B2’, 'B3‘ | 11.3.3 |
| ‘CB’/’CD’ | GET DATA/GET NEXT DATA | 11.4.4 |
REMOVE APPLICATION | 'EC’,‘ED' | Phần 13 |
| 'CF’ | MANAGE DATA | Phần 9 |
RESET RETRY COUNTER | '2C’,'2D’ | 11.5.10 |
| ‘D0’, ‘D1’ | WRITE BINARY | 0 |
SEARCH BINARY | 'A0', 'A1' | 11.2.6 |
| ‘D2’ | WRITE RECORD | 11.3.4 |
SEARCH RECORD | ‘A2’ | 11.3.7 |
| ‘D6’, ‘D7’ | UPDATE BINARY | 11.2.5 |
SELECT | 'A4' | 11.1.1 |
| ‘D8’, ‘D9’ | PUT NEXT DATA | 11.4.7 |
SELECT DATA | 'A5' | 11.4.2 |
| ‘DA’, ‘DB’ | PUT DATA | 11.4.6 |
TERMINATE CARD USAGE | ‘FE' | Phần 9 |
| 'DC', 'DD’ | UPDATE RECORD | 11.3.5 |
TERMINATE DF | 'E6' | Phần 9 |
| ‘DE’, ‘DF’ | UPDATE DATA | 11.4.8 |
TERMINATE EF | ‘E8' | Phần 9 |
| ‘E0’ | CREATE FILE | Phần 9 |
UPDATE BINARY | 'D6', 'D7’ | 11.2.5 |
| ‘E2’ | APPEND RECORD | 11.3.6 |
UPDATE DATA | ‘DE’,’DF’ | 11.4.8 |
| ‘E4’ | DELETE FILE | Phần 9 |
UPDATE RECORD | ‘DC’, ‘DD’ | 11.3.5 |
| ‘E6’ | TERMINATE DF | Phần 9 |
VERIFY | ‘20’, ‘21’ | 11.5.6 |
| ‘E8’ | TERMINATE EF | Phần 9 |
WRITE BINARY | ‘D0’, ‘D1’ | 0 |
| ‘EA’, ‘EB’ | LOAD APPLICATION | Phần 13 |
WRITE RECORD | ‘D2’ | 11.3.4 |
| ’EE’ | DELETE DATA | Phần 9 |
|
|
|
| ‘EC’,ED’ | REMOVE APPLICATION | Phần 13 |
|
|
|
| ‘FE’ | TERMINATE CARD USAGE | Phần 9 |
- Trong lớp liên ngành, bất kỳ mã INS có hiệu lực nào không được xác định trong TCVN 11167 (ISO/IEC 7816) đều là RFU. |
Bảng 5 - Ý nghĩa tổng quát của giá trị liên ngành của SW1- SW2
| SW1 - SW2 | Ý nghĩa | |
Xử lý thông thường | ‘9000’ | Không thêm định tính | |
‘61XX' | SW2 mã hóa số byte dữ liệu vẫn đang có sẵn (xem phần bên dưới) | ||
Xử lý cảnh báo | ‘62XX’ | Trạng thái bộ nhớ không khả biến không thay đổi | (thêm định tính trong SW2, xem Bảng 6) |
'63XX' | Trạng thái bộ nhớ không khả biến có thể đã thay đổi | (thêm định tính trong SW2, xem Bảng 6) | |
Lỗi thực hiện | '64XX' | Trạng thái bộ nhớ không khả biến không thay đổi | (thêm định tính trong SW2, xem Bảng 6) |
'65XX' | Trạng thái bộ nhớ không khả biến có thể đã thay đổi | (thêm định tính trong SW2, xem Bảng 6) | |
'66XX’ | Các vấn đề liên quan đến an toàn | (thêm định tính trong SW2 là RFU) | |
Lỗi kiểm tra | '67XX’ | Độ dài sai | (thêm định tính trong SW2, xem Bảng 6) |
'68XX’ | Hàm trong CLA không hỗ trợ | (thêm định tính trong SW2, xem Bảng 6) | |
'69XX' | Lệnh không được phép | (thêm định tính trong SW2, xem Bảng 6) | |
‘6AXX’ | Thông số sai P1-P2 | (thêm định tính trong SW2, xem Bảng 6) | |
‘6B00’ | Thông số sai P1-P2 | ||
‘6CXX’ | Trường Le sai: SW2 mã hóa số chính xác của byte dữ liệu có sẵn (xem bên dưới) | ||
’6D00’ | Mã chỉ báo không hỗ trợ hoặc không có hiệu lực | ||
'6E00' | Lớp không hỗ trợ | ||
‘6F00' | Không có chuẩn đoán chính xác |
Bảng 6 - Các điều kiện lỗi và cảnh báo liên ngành cụ thể
SW1 | SW2 | Ý nghĩa |
‘62' (cảnh báo) | ‘00' | Không có thông tin được đưa ra |
‘02' đến '80' | Gây ra bằng thẻ (xem 12.5.1) | |
‘81’ | Phần dữ liệu phục hồi có thể bị lỗi | |
‘82’ | Phần cuối của tệp hoặc bản ghi đạt được trước khi đọc byte Ne, hoặc tìm kiếm không thành công | |
‘83’ | Tệp được lựa chọn bị giải hoạt | |
'84' | Tệp hoặc thông tin điều khiển dữ liệu không được định dạng theo 7.4 | |
'85' | Tệp được lựa chọn trong trạng thái kết thúc | |
‘86' | Dữ liệu đầu vào không có sẵn từ cảm biến trên thẻ | |
‘87' | Ít nhất một trong các bản ghi được tham chiếu bị giải hoạt | |
‘63' (cảnh báo) | '00' | Không có thông tin được đưa ra |
'40' | So sánh không thành công (ý nghĩa chính xác phụ thuộc vào lệnh) | |
’81’ | Tệp được làm đầy bởi lần ghi cuối cùng | |
'CX' | Máy đếm từ 0 đến 15 được mã hóa bằng ‘X (ý nghĩa chính xác phụ thuộc vào lệnh) | |
'64’ (lỗi) | ‘00’ | Không có thông tin được đưa ra |
‘01' | Hồi đáp ngay theo yêu cầu của thẻ | |
‘02’ đến ’80' | Gây ra bằng thẻ (xem 12.5.1) | |
‘81’ | Truy cập chia sẻ kênh lô-gic bị từ chối | |
‘82’ | Mở kênh lô-gic bị từ chối | |
‘65’ (lỗi) | ‘00’ | Không có thông tin được đưa ra |
'81’ | Bộ nhớ lỗi | |
‘66’ (lỗi) | '00' | Không có thông tin được đưa ra, các giá trị khác là RFU |
‘67’ (lỗi) | '00' | Không có thông tin được đưa ra |
‘01’ | Định dạng APDU lệnh không theo tiêu chuẩn này (xem 5.1) | |
‘02' | Giá trị Lc không phải là giá trị được mong đợi | |
‘68’ (lỗi) | ‘00’ | Không có thông tin được đưa ra |
‘81’ | Kênh lô-gic không được hỗ trợ | |
‘82' | Thông điệp an toàn không được hỗ trợ | |
‘83’ | Lệnh cuối cùng của chuỗi được mong đợi | |
'84' | Nối chuỗi lệnh không được hỗ trợ | |
‘69' (lỗi) | ‘00’ | Không có thông tin được đưa ra |
'81’ | Lệnh không tương thích với cấu trúc tệp | |
‘82’ | Trạng thái an toàn không thỏa đáng | |
‘83' | Phương pháp xác thực bị ngăn chặn | |
'84' | Dữ liệu tham chiếu không thể sử dụng được | |
‘85’ | Điều kiện sử dụng không thỏa đáng | |
‘86’ | Lệnh không được phép (không EF hiện hành) | |
‘87’ | DO thông điệp an toàn được mong đợi bị thiếu | |
‘88’ | DO thông điệp an toàn không đúng | |
‘6A' (lỗi) | ‘00’ | Không có thông tin được đưa ra |
‘80’ | Thông số không đúng trong trường dữ liệu lệnh | |
‘81’ | Hàm không được hỗ trợ | |
‘82’ | Tệp hoặc ứng dụng không tìm thấy | |
‘83' | Bản ghi không tìm thấy | |
‘84’ | Không đủ dung lượng bộ nhớ trong tệp | |
'85' | Nc mâu thuẫn với cấu trúc TLV | |
‘86' | Thông số không đúng P1-P2 | |
‘87' | Nc mâu thuẫn với thông số P1-P2 | |
‘88' | Dữ liệu đã được tham chiếu hoặc dữ liệu tham chiếu không tìm thấy (ý nghĩa chính xác phụ thuộc vào lệnh) | |
‘89’ | Tệp đã tồn tại | |
'8A' | Tên DF đã tồn tại | |
Mọi giá trị khác của SW2 là RFU |
6 Đối tượng dữ liệu
Mục này xác định hai loại đối tượng dữ liệu: đối tượng dữ liệu SIMPLE-TLV và đối tượng dữ liệu BER-TLV, đối tượng dữ liệu BER-TLV được viết tắt là DO trong tiêu chuẩn này.
6.1 Đối tượng dữ liệu SIMPLE-TLV
Mỗi đối tượng dữ liệu SIMPLE-TLV bao gồm hai hoặc ba trường liên tiếp: trường thẻ bắt buộc, trường độ dài bắt buộc và trường giá trị điều kiện. Bản ghi (xem 11.3.1) có thể là đối tượng dữ liệu SIMPLE-TLV.
- Trường thẻ bao gồm một byte đơn nhất mã hóa số thẻ từ 1 đến 254. Giá trị ‘00’ và ‘FF’ không có hiệu lực đối với trường thẻ. Nếu bản ghi là đối tượng dữ liệu SIMPLE-TLV, khi đó thẻ có thể được sử dụng là định danh bản ghi.
- Trường độ dài bao gồm một hoặc ba byte liên tiếp.
- Nếu byte đầu tiên không được đặt là 'FF’, khi đó trường độ dài bao gồm một byte đơn nhất mã hóa số từ không đến 254 và được biểu thị là N.
- Nếu byte đầu tiên được đặt là 'FF’, khi đó trường độ dài tiếp tục trên 2 byte tiếp sau có bất kỳ giá trị nào mã hóa số từ không đến 65 535 và được biểu thị là N.
- Nếu N là 0, không có trường giá trị, nghĩa là đối tượng dữ liệu trống. Mặt khác (N > 0), trường giá trị bao gồm các byte N liên tiếp.
CHÚ THÍCH: Tiêu chuẩn này không xác định giá trị thẻ cũng không xác định trường giá trị của đối tượng dữ liệu SIMPLE-TLV. Do đó, xử lý đối tượng dữ liệu SIMPLE-TLV không thể dùng được đối với sự hoán đổi.
6.2 Đối tượng dữ liệu BER-TLV
Mỗi đối tượng dữ liệu BER-TLV (DO) bao gồm hai hoặc ba trường liên tiếp (xem quy tắc mã hóa cơ bản của ASN.1 trong ISO/IEC 8825-1): trường thẻ bắt buộc, trường độ dài bắt buộc và trường giá trị điều kiện. Bất kỳ DO không trống nào đều được biểu thị {T-L-V}.
Trường thẻ bao gồm một hoặc nhiều byte liên tiếp. Nó biểu thị một lớp và một mã hóa và mã hóa số thẻ. Giá trị '00’ không có hiệu lực đối với byte đầu tiên của trường thẻ. ISO/IEC 7816 hỗ trợ trường thẻ của một, hai và ba byte; trường thẻ dài hơn là RFU.
Trường độ dài mã hóa độ dài, nghĩa là một số được biểu thị N, theo ISO/IEC 8825-1. Nếu N là 0, không có trường giá trị, nghĩa là DO trống, và được Chú thích {T-‘00’}. Mặt khác (N > 0), trường giá trị bao gồm các byte liên tiếp N, và DO được Chú thích {T-L-V}. TCVN 11167 (ISO/IEC 7816).
a) Ngăn ngừa sử dụng "độ dài không xác định” (mã hóa '80’), theo quy tắc mã hóa DER;
b) Khuyến nghị sử dụng mã có thể ngắn nhất của trường độ dài, theo quy tắc mã hóa DER (xem ISO/ICE 8825-1);
c) Sử dụng trường độ dài bao gồm một đến 5 byte, trường độ dài dài hơn là RFU.
Chú thích 1: Để xác định độ dài của trường độ dài, đặc tả có thể theo khuyến nghị b), nghĩa là sử dụng trường độ dài ngắn nhất đối với mã độ dài được cho.
Chú thích 2: TCVN 11167-4 (ISO/IEC 7816-4) sử dụng '80' có ý nghĩa cụ thể trong trường giá trị của DO tiêu đề mở rộng (xem 8.4.5)
Chú thích 3: Phụ lục E cung cấp mã chi tiết của thẻ và trường độ dài.
6.3 DO được xây dựng so với DO ban đầu
Như được được xây dựng, DO không trống được biểu thị {T-L-{T1-L1-V1}...-{Tn-Ln-Vn}}. Thẻ T biểu thị cấu trúc của trường giá trị (xem phụ lục E). Trường giá trị này được gọi là bản mẫu, có thể:
- Hoặc bao gồm một DO, được gọi là “tổ" trong DO được xây dựng.
- Hoặc bao gồm sự kết nối của một số DO tổ, (n DO trong ví dụ ở trên), mà không có phần đệm (xem 8.1.1).
Trừ khi có quy định khác (ví dụ trình bao (xem 8.4.8) hoặc bộ bọc thẻ (xem 8.4.9), TCVN 11167-15 (ISO/IEC 7816-15), ISO/IEC 24727), thứ tự của DO trong bản mẫu không được xác định trong tiêu chuẩn này.
Xem phụ lục E đối với việc nhận dạng đối tượng dữ liệu ban đầu và được xây dựng bằng byte đầu tiên của thẻ. Cấu trúc hợp lý của trường giá trị của đối tượng dữ liệu ban đầu được xác định ở nơi khác.
7 Cấu trúc đối với ứng dụng và dữ liệu
7.1 Cấu trúc có sẵn
Mục này xác định cấu trúc đối với các ứng dụng và dữ liệu, như được nhận biết tại giao diện khi xử lý lệnh trong lớp liên công nghiệp. Vị trí lưu giữ thực sự của dữ liệu và thông tin cấu trúc ngoài cái được miêu tả trong mục này không thuộc phạm vi của ISO/IEC 7816. Cấu trúc sau được hỗ trợ:
- Tệp dành riêng (DF):
DF chủ các ứng dụng và/hoặc tập hợp tệp và/hoặc lưu giữ các DO. DF ứng dụng là DF chủ một ứng dụng. Một DF có thể là cha của các cấu trúc khác mà loại của chúng thuộc về tập hợp sau {DF, EF, DO}. Những cấu trúc khác này được cho là ngay dưới DF.
- Tệp cơ sở (EF)
EF lưu giữ dữ liệu. Một EF có thể là cha của các cấu trúc khác mà loại của chúng thuộc về tập hợp sau {DO, Record, DataString}. Những cấu trúc khác này được cho là ngay dưới EF. Hai loại EF được xác định.
- EF trong lưu giữ dữ liệu được thực hiện bởi thẻ, nghĩa là dữ liệu được sử dụng bởi thẻ dành cho mục đích điều khiển và quản lý.
- EF hoạt động lưu giữ dữ liệu không được thực hiện bởi thẻ, nghĩa là dữ liệu được sử dụng bởi mọi đối tượng bên ngoài.
- Bản ghi:
Bản ghi lưu giữ dữ liệu. Một bản ghi có thể là cha của các cấu trúc khác mà loại của chúng thuộc về tập hợp sau {DO}. Những cấu trúc khác này được cho là ngay dưới bản ghi.
- Chuỗi dữ liệu:
Chuỗi dữ liệu lưu giữ dữ liệu. Một chuỗi dữ liệu là một chuỗi các byte trong EF trong suốt. Một chuỗi dữ liệu có thể là cha của các cấu trúc khác mà loại của chúng thuộc về tập hợp sau {DO}. Những cấu trúc khác này được cho là ngay dưới chuỗi dữ liệu.
- Đối tượng dữ liệu (DO)
DO lưu giữ dữ liệu. Một DO có thể là cha của các cấu trúc khác mà loại của chúng thuộc về tập hợp sau {DO}. Những cấu trúc khác này được cho là ngay dưới DO.
Hai loại tổ chức lô-gic được cung cấp.
Hình 3 miêu tả hệ phân cấp của DF có cấu trúc an toàn tương ứng (xem mục 9). Trong tổ chức thẻ như vậy, DF tại gốc được gọi là tệp chủ (MF); bất kỳ DF nào cũng có thể là DF ứng dụng, có hoặc không có hệ phân cấp của chính nó thuộc các DF.
Hình 3 - Ví dụ về hệ phân cấp của các DF
- Hình 4 mô tả các DF ứng dụng song song, không có MF hiển thị tại giao diện, nghĩa là 0 có hệ phân cấp trong suốt của các DF. Tổ chức như vậy hỗ trợ các ứng dụng độc lập trong thẻ mà bất kỳ DF ứng dụng nào có thể có hệ phân cấp của chính nó thuộc các DF có cấu trúc an toàn tương ứng.
Hình 4 - Ví dụ về các DF ứng dụng độc lập
7.2 Vùng hiệu lực
7.2.1 Định nghĩa và thuộc tính
Vùng hiệu lực (VA) trên kênh lô-gic là kết quả của tất cả các lựa chọn thành công được thực hiện trên kênh lô-gic đó. Nó tạo ra khái niệm về tệp hiện hành được xác định trong bản trước thuộc TCVN 11167-4 (ISO/IEC 7816-4). VA xác định sự giải của thẻ DO và định danh tệp. VA bao gồm:
- curAppDF: tham chiếu hoặc DF hoặc DF ứng dụng. Luôn được thiết lập.
- curDF: tham chiếu DF, cái mà có thể là DF ứng dụng. Luôn được thiết lập.
- curEF: tham chiếu EF thuộc về DF hiện hành. Không luôn được thiết lập.
- curFile: tham chiếu tệp, luôn được thiết lập. Giá trị của nó phải đồng nhất với curDF nếu curDF không được thiết lập và đồng nhất với curEF nếu curEF được thiết lập.
- curRecord: tham chiếu với bản ghi, thuộc về EF hiện hành được cấu trúc trong các bản ghi. Không luôn được thiết lập.
- curDataString: tham chiếu chuỗi các byte là phần của EF hiện hành trong suốt. Không luôn được thiết lập.
- curConstructedDO: được thiết lập để xử lý DO. Khi được thiết lập, nó tham chiếu DO được xây dựng. Không luôn được thiết lập.
- curPrimitiveDO: tham chiếu DO ban đầu mà cha của DO ban đầu được tham chiếu bằng curConstructedDO. Không luôn được thiết lập.
- curDO: được thiết lập để xử lý DO. Khi được thiết lập, nó tham chiếu một DO, giá trị của nó phải đồng nhất với curConstructedDO nếu curPrimitiveDO không được thiết lập, và đồng nhất với curPrimitiveDO nếu curPrimitiveDO được thiết lập.
Chú thích 1: curFile có thể được tính từ curDF và curEF và ngược lại. Do vậy hoặc là curFile có thể bỏ qua hoặc curDF và curEF có thể bỏ qua. Lý do cho việc dư thừa này là một số hàm dễ dàng hơn mô tả bằng curFile (ví dụ ACTIVATE, DEACTIVATE) và các hàm khác dễ dàng hơn mô tả bằng curDF và curEF.
Chú thích 2: curDo có thể được tính từ curConstructedDO và curPrimitiveDO và ngược lại. Do vậy hoặc curDo có thể bỏ qua hoặc curConstructedDO và curPrimitiveDO có thể bỏ qua. Lý do cho việc dư thừa này là một số hàm dễ dàng hơn mô tả bằng curDO và các hàm khác dễ dàng hơn mô tả bằng curConstructedDO và curPrimitiveDO.
Chú thích 3: SE hiện hành không thuộc VA hiện hành.
7.2.2 Quy tắc cơ bản đối với sử dụng và xử lý VA
Liệt kê sau bao gồm liệt kê đầy đủ các quy tắc mô tả việc sử dụng VA. Các quy tắc khác được đưa ra trong các điều bao gồm sự mô tả lệnh:
a) Hỗ trợ giao diện vật lý (xem 5.1), mở kênh lô-gic cơ bản, thiết lập các giá trị của curAppDF và curDF đến giá trị đồng nhất, nghĩa là chúng tham chiếu hoặc MF hoặc ứng dụng hoàn toàn được lựa chọn.
b) Việc thiết lập lại kênh lô-gic thiết lập lại VA đến cùng tập hợp giá trị khi mở kênh lô-gic đó. Xem đối với các kết quả thiết lập lại khác.
c) Mở kênh lô-gic thiết lập các giá trị của curAppDF và curDF đến giá trị đồng nhất (xem 11.1.1 và 11.1.2).
d) Lựa chọn một DF ứng dụng thiết lập curDF và curAppDF sao cho chúng tham chiếu DF ứng dụng được lựa chọn.
e) Lựa chọn một DF không phải là DF ứng dụng thiết lập curDF sao cho nó tham chiếu DF được lựa chọn. Nó thiết lập hoặc xác nhận curAppDF sao cho curAppDP tham chiếu hoặc DF ứng dụng gần nhất (nếu có) trong các tệp thủy tổ (cha, ông...) của DF được lựa chọn, hoặc MF nếu DF không ứng dụng tồn tại trong tệp thủy tổ.
f) Lựa chọn một EF thiết lập curEF sao cho nó tham chiếu EF được lựa chọn, và curDF sao cho nó tham chiếu tệp cha của EF được lựa chọn (xem quy tắc e)). Khi lựa chọn EF xuất hiện là tác động phụ của C-RP sử dụng tham chiếu bằng định danh EF ngắn, curEF có thể thay đổi trong khi curDF không thay đổi.
g) Lựa chọn bản ghi thiết lập curRecord sao cho nó tham chiếu bản ghi được lựa chọn làm bản ghi hiện hành, và curEF sao cho nó tham chiếu cha của bản ghi lựa chọn (xem quy tắc f)
h) Lựa chọn chuỗi dữ liệu trong EF trong suốt thiết lập curDataString sao cho nó tham chiếu DataString được lựa chọn và curEF sao cho nó tham chiếu cha của chuỗi dữ liệu được lựa chọn (xem quy tắc f).
a. Lựa chọn cấu trúc bao gồm DO thiết lập curConstructedDO sao cho nó tham chiếu DO được lựa chọn theo cấu trúc quy định. Nếu cấu trúc được lựa chọn là DO được xây dựng, nó thiết lập curConstructedDO sao cho nó tham chiếu DO được lựa chọn. Nếu cấu trúc được quy định là {Application DF, DF, EF, record or DataString}, lựa chọn cấu trúc thiết lập curConstructedDO sao cho nó tham chiếu gốc ảo DO’7F70‘ làm DO được xây dựng hiện hành. DO này kết hợp với cấu trúc ... cuối cùng hỗ trợ DO trong danh sách ở trên.
i) Lựa chọn DO ban đầu thiết lập curPrimitiveDO sao cho nó tham chiếu DO xác định là Primitive DO hiện hành, và curConstructionDo sao cho nó tham chiếu cha của DO ban đầu được lựa chọn.
j) Đối với xử lý DO, khuôn mẫu hiện hành là giá trị của DO được tham chiếu bằng curConstructedDO (xem quy tắc i).
Lựa chọn hiện có thể thay đổi các phần tử của VA ngoài lựa chọn hiện do sự đệ quy. Lựa chọn ẩn có cùng kết quả như lựa chọn hiện.
Ví dụ: Lựa chọn DO được xây dựng trong bản ghi phải thiết lập curConstructed DO (quy tắc i) hiện. Nó phải thiết lập ẩn hoặc xác nhận curRecord (quy tắc g)), curEF (quy tắc f)), curDF (quy tắc e)) và curAppDF (quy tắc d)).
7.3 Lựa chọn cấu trúc
7.3.1 Phương pháp lựa chọn cấu trúc
Lựa chọn cấu trúc cho phép truy cập dữ liệu và kết cấu bên dưới, nếu có. Các cấu trúc có thể được lựa chọn ẩn, nghĩa là tự động (xem 7.2.2, quy tắc a), g)) sau khi cho phép giao diện vật lý (xem 5.1). Khi một cấu trúc không thể được lựa chọn ẩn, nó phải được lựa chọn hiện, nghĩa là ít nhất một trong bốn phương pháp sau.
Lựa chọn theo tên DF - tên DF có thể tham chiếu bất kỳ DF. Nó là một chuỗi đến 16 byte. Bất kỳ định danh ứng dụng nào (AID, xem 12.2.3) có thể được sử dụng làm tên DF. Để lựa chọn rõ ràng theo tên DF, ví dụ khi lựa chọn theo phương thức định danh ứng dụng, mỗi tên DF phải đơn nhất trong thẻ được cho.
Lựa chọn theo định danh tệp - định danh tệp có thể tham chiếu bất kỳ tệp nào. Nó bao gồm 2 byte. Giá trị '3F00' được lưu trữ (xem phần dưới và 11.4.1). giá trị ‘0000’ được lưu trữ (xem 11.2.2 và 11.4.1). Để lựa chọn trong suốt bất kỳ tệp nào bằng định danh của chúng, tất cả các EF và DF ngay dưới DF được cho phải có định danh tệp khác nhau.
Lựa chọn theo đường dẫn - đường dẫn có thể tham chiếu bất kỳ tệp nào. Nó là sự kết nối định danh tệp. Đường dẫn bắt đầu bằng định danh DF (MF đối với đường dẫn tuyệt đối hoặc DF hiện hành đối với đường dẫn tương đối) và kết thúc bằng định danh của chính tệp đó. Giữa hai định danh này, đường dẫn bao gồm định danh của DF cha kế tiếp, nếu có. Thứ tự của định danh tệp luôn theo hướng cha đến con. Nếu định danh của DF hiện hành không biết, khi đó giá trị '3FFF' (giá trị lưu trữ) có thể được sử dụng tại điểm đầu tiên của đường dẫn, giá trị ‘3F002F00’ và ‘3F002F01’ được lưu trữ (xem và 12.2.2). Đường dẫn cho phép lựa chọn rõ rệt bất kỳ tệp nào từ MF hoặc từ DF hiện hành (xem 12.3).
Lựa chọn theo định danh EF ngắn - định danh EF ngắn có thể tham chiếu bất kỳ EF nào. Nó bao gồm năm bit không bằng nhau, nghĩa là bất kỳ số nào từ 1 đến bao mươi. Khi được sử dụng làm định danh EF ngắn, số không, nghĩa là 00000 trong nhị phân, tham chiếu EF hiện hành. Tại mức MF, số ba mươi, nghĩa là 11110 trong nhị phân, được lưu trữ (xem 12.2.1). Định danh EF ngắn không thể được sử dụng trong đường dẫn hoặc làm định danh EF (ví dụ trong lệnh SELECT). Tất cả các định danh EF ngắn của EF ngay dưới DF được cho cùng với tất cả định danh EF ngắn được biểu thị trong FCP DO’A2’ đi cùng với DF này phải đơn nhất.
Nếu được hỗ trợ, lựa chọn theo định danh EF ngắn phải được biểu thị.
- Nếu Bảng chức năng phần mềm đầu tiên (xem Bảng 117) có trong byte lịch sử (xem 12.1.1) hoặc trong EF.ATR/INFO (xem 12.2.2), khi đó chỉ báo có hiệu lực tại mức thẻ.
- Nếu định danh EF ngắn DO'88’ (xem 10.2.3.1 và Bảng 10) có trong CP của EF, khi đó chỉ báo có hiệu lực tại mức EF.
Lựa chọn theo thẻ - DO có thể được lựa chọn theo thẻ đơn nhất, mà không cần thêm thông tin trên VA, nếu và chỉ khi nó thuộc về khuôn mẫu cơ sở của khuôn mẫu hiện hành nghĩa là giá trị của DO được xây dựng hiện hành.
Lựa chọn theo số bản ghi - nếu EF được chỉ theo curEF có hỗ trợ bản ghi, khi đó số bản ghi tham chiếu một bản ghi cụ thể trong EF đó. Số bản ghi là số nguyên dương.
Lựa chọn theo khoảng chừa trống - nếu EF được chỉ theo curEF trong suốt, khi đó khoảng chừa trống tham chiếu khởi đầu chuỗi của các byte trong EF đó. Khoảng chừa trống là số nguyên ≥ 0.
7.3.2 Phần tử dữ liệu tham chiếu tệp và DO
DO’51’ liên ngành này (xem Bảng 7) tham chiếu một tệp. nó có thể có độ dài bất kỳ.
- DO trống tham chiếu MF
- Nếu độ dài là một và nếu bit b8 đến b4 của phần tử dữ liệu không bằng nhau và nếu bit b3 đến b1 được đặt là 000, khi đó bit b8 đến b4 mã hóa một số từ 1 đến ba mươi đó là định danh EF ngắn.
- Nếu độ dài là hai, khi đó phần tử dữ liệu là định danh tệp.
- Nếu độ dài nhiều hơn hai, khi đó phần tử dữ liệu là đường dẫn.
- Nếu độ dài chẵn và nếu 2 byte đầu tiên được đặt là '3F00', khi đó đường dẫn là tuyệt đối. Phần tử dữ liệu là kết nối của ít nhất hai định danh tệp bít đầu bằng định danh MF.
- Nếu độ dài chẵn và nếu 2 byte đầu tiên không được đặt là ‘3F00’, khi đó đường dẫn là tương đối. Phần tử dữ liệu là kết nối của ít nhất hai định danh tệp bắt đầu bằng định danh DF hiện hành.
- Nếu độ dài lẻ, khi đó đường dẫn được định tính. Phần tử dữ liệu hoặc là đường dẫn tuyệt đối không có ‘3F00', hoặc là đường dẫn tương đối không có định danh của DF hiện hành, theo sau byte sử dụng làm P1 trong một hoặc nhiều lệnh SELECT (xem 11.1.1 và 12.3).
Bảng 7 - Mã tham chiếu tệp DO'51’
Thẻ | Độ dài | Giá trị |
‘51’ | 0 | Đối tượng dữ liệu trống tham chiếu MF |
1 | Định danh EF ngắn (bit b8 đến b4 mã hóa một số từ 1 đến ba mươi; bit b3 đến b1 được đặt là 000) | |
2 | Định danh tệp | |
| Đường dẫn tuyệt đối (2 byte đầu tiên được đặt là '3F00') | |
| Đường dẫn tương đối (2 byte đầu tiên không được đặt là ‘3F00’) | |
Lẻ, >2 | Đường dẫn định tính (byte cuối cùng được sử dụng làm P1 trong một hoặc nhiều lệnh SELECT) |
7.3.3 Phần tử dữ liệu tham chiếu chung và DO
DO’60' liên ngành này (xem Bảng 86) và DO'7F72’ (xem bảng 37) có thể tham chiếu bất kỳ cấu trúc nào trong thẻ. Giá trị của DO'60’ được sử dụng trong trường dữ liệu lệnh của nhiều CR-P xử lý DO (xem 11.4.2). Trong một số trường hợp, các lệnh này tác động tạm thời VA; trong các trường hợp khác, chúng sửa đổi VA.
7.3.4 Phương pháp tham chiếu dữ liệu trong tệp cơ sở
1) Cấu trúc trong suốt
2) Cấu trúc tuyến tính với bản ghi có kích cỡ cố định
3) Cấu trúc tuyến tính với bản ghi có kích cỡ thay đổi
4) Cấu trúc tuần hoàn với bản ghi có kích cỡ cố định (mũi tên tham chiếu bản ghi được viết gần nhất)
5) Cấu trúc SIMPLE-TLV or BER-TLV
Hình 5 - Cấu trúc EF
Phương pháp tham chiếu dữ liệu là một đặc tính phụ thuộc EF. EF hỗ trợ ít nhất một trong số các cấu trúc sau:
- Cấu trúc trong suốt - EF được nhận biết tại giao diện là chuỗi đơn đánh số, liên tục của đơn vị dữ liệu có thể truy cập được bằng lệnh xử lý đơn vị dữ liệu (xem 11.2). Kích cỡ đơn vị dữ liệu là một đặc tính phụ thuộc EF.
- Cấu trúc bản ghi - EF được nhận biết tại giao diện là chuỗi đơn liên tục của bản ghi định danh được có thể truy cập được bằng lệnh xử lý bản ghi (xem 11.3). Phương pháp đánh số bản ghi, cấu trúc SIMPLE-TLV hoặc BER-TLV của bản ghi là các đặc tính phụ thuộc EF. Ba đặc tính này được xác định: kích cỡ bản ghi, tổ chức bản ghi và bản ghi LCS.
- Kích cỡ của bản ghi hoặc cố định, hoặc thay đổi
- Tổ chức bản ghi hoặc chuỗi (cấu trúc tuyến tính) hoặc hình tròn (cấu trúc tuần hoàn).
- Bản ghi có thể có vòng đời bản ghi. Khi bản ghi có vòng đời, bản ghi LCS phân biệt ít nhất các trạng thái sau: ACTIVATED và DEACTIVATED. Mã bản ghi LCS không thuộc phạm vi của phần này thuộc ISO/IEC 7816. Trong phạm vi EF được cho, hoặc tất cả các bản ghi có vòng đời bản ghi hoặc không có bản ghi nào có vòng đời bản ghi. Sự có mặt của vòng đời bản ghi được biểu thị bằng CP (xem Bảng 10).
- Cấu trúc SIMPLE-TLV - EF được nhận biết tại giao diện khi tập hợp các đối tượng dữ liệu SIMPLE- TLV có thể truy cập được bằng các lệnh xử lý đối tượng dữ liệu (xem 11.4). Cấu trúc này ngăn cản cấu trúc BER-TLV
- Cấu trúc BER-TLV - EF được nhận biết tại giao diện khi tập hợp các DO có thể truy cập được bằng các lệnh xử lý DO (xem 11.4). Cấu trúc này ngăn cản cấu trúc SIMPLE-TLV.
Trong DF hoặc các ứng dụng, dữ liệu có thể được tham chiếu là DO (xem 6.2), cách thức tương tự như trong EF. Nếu EF, DF hoặc ứng dụng hỗ trợ tham chiếu này, sự lựa chọn của nó thiết lập curConstructedDO (xem 7.2.2 và 8.2.1).
7.4 Thông tin điều khiển dữ liệu và tệp
7.4.1 Phục hồi thông tin điều khiển tệp
Theo định nghĩa, thông tin điều khiển tệp là chuỗi byte có sẵn hồi đáp lệnh SELECT (xem 11.1.1); nó có thể có mặt trong bất kỳ tệp nào, nghĩa là bất kỳ DF và bất kỳ EF.
- Nếu byte đầu tiên được trị số từ '00' đến 'BF’, khí đó chuỗi byte phải là BER-TLV được mã hóa. Tổ chức có trách nhiệm lưu trữ cho mục đích sử dụng trong tương lai tất cả các giá trị trong dãy '00' đến 'BF’ các giá trị không được xác định trong tiêu chuẩn này.
- Nếu byte đầu tiên được trị số từ ‘C0’ đến ‘FF’, khi đó chuỗi byte không được mã hóa theo tiêu chuẩn này.
Bảng 8 cho thấy ba khuôn mẫu liên ngành:
- Khuôn mẫu FCP là tập hợp của CP DO thích hợp với các tệp, nghĩa là các thuộc tính an toàn và cấu trúc, lô-gic như được liệt kê trong ‘Bảng 10’ và được xác định sau đây. Trong khuôn mẫu FCP, lớp ngữ cảnh cụ thể được lưu trữ đối với FCP; thẻ ‘85’ và 'A5' tham chiếu thông tin độc quyền.
- Khuôn mẫu FMD là tập hợp của dữ liệu quản lý tệp, nghĩa là DO liên ngành như định danh ứng dụng như được xác định trong 12.2.3 và nhãn ứng dụng như được xác định trong 12.2.4 và ngày hết hạn ứng dụng như được xác định trong ISO/IEC 7816-6, khả năng lồng vào trong khuôn mẫu ứng dụng như được xác định trong 12.2.4. trong khuôn mẫu FMD, thẻ ‘53’ và '73' tham chiếu dữ liệu tùy ý.
- Khuôn mẫu FCI là tập hợp của tệp CP và dữ liệu quản lý tệp.
Bảng 8 - Khuôn mẫu liên ngành đối với thông tin điều khiển tệp
Thẻ | Giá trị |
‘62' | Tập hợp các thông số kiểm soát tệp (khuôn mẫu FCP) |
'64' | Tập hợp dữ liệu quản lý tệp (khuôn mẫu FMD) |
‘6F' | Tập hợp các thông số kiểm soát tệp và dữ liệu quản lý tệp (khuôn mẫu FCI) |
Ba khuôn mẫu có thể phục hồi theo lựa chọn của lệnh SELECT (xem Bảng 62).
- Nếu lựa chọn FCI được thiết lập, khi đó thẻ FCI tùy ý đưa vào khuôn mẫu trong trường dữ liệu hồi đáp.
- Nếu lựa chọn CP hoặc FMD được thiết lập, khi đó thẻ tương ứng bắt buộc đưa vào khuôn mẫu. Phần thông tin điều khiển của DF có thể có mặt bổ sung trong EF dưới điều khiển ứng dụng và được tham chiếu bằng thẻ '87' trong tệp CP. Nếu có EF, thông tin điều khiển tệp phải được đưa vào bằng thẻ thích hợp, hoặc thẻ CP, hoặc thẻ FCI.
7.4.2 Phục hồi thông tin điều khiển dữ liệu
Theo định nghĩa, thông tin điều khiển dữ liệu là chuỗi byte có sẵn hồi đáp lệnh SELECT có P1='10' hoặc P1='13’ (xem 11.1.1) hoặc lệnh SELECT DATA nếu bit b3 của P2 được đặt là 1 (xem 11.4.2); nó có thể có mặt đối với bất kỳ DO.
Bảng 9 - Khuôn mẫu liên ngành đối với thông tin điều khiển dữ liệu
Thẻ | Giá trị |
'62' | Tập hợp thông số kiểm soát dữ liệu (CP DO, có khả năng bao gồm DO'62') |
DO’62’ xếp lồng CP DO
- Nó có thể có trong thông tin điều khiển dữ liệu của bất kỳ cấu trúc nào (tệp hoặc ứng dụng hỗ trợ cấu trúc BER-TLV, DO được xây dựng). Nó thuộc về và áp dụng đối với khuôn mẫu hiện hành sau khi lựa chọn cấu trúc.
- Khi có mặt trong khuôn mẫu cơ sở hiện hành (xem 8.2.2), nó áp dụng với, nó có thể được phục hồi bằng GET DATA hoặc GET NEXT DATA.
- Khi nó có trong khuôn mẫu khác, nó có thể được tham chiếu gián tiếp bằng trình bao thẻ (xem 8.4.8).
7.4.3 Thông số kiểm soát
Bảng 10 liệt kê CP DO đối với tệp và đối tượng dữ liệu, tất cả trong lớp ngữ cảnh cụ thể. Khi có CP, Bảng chỉ ra liệu xẩy ra chỉ một lần (chỉ báo hiện) hoặc có thể được lặp lại (không chỉ báo).
Bảng 10 - Đối tượng dữ liệu tham chiếu tệp tin
Thẻ | Độ dài | Giá trị | Áp dụng với |
‘80' | Thay đổi | Số byte dữ liệu trong tệp, không bao gồm thông tin cấu trúc | Bất kỳ EP* |
‘81’ | Thay đổi | Số byte dữ liệu trong tệp hoặc DO, bao gồm thông tin cấu trúc, nếu có | Tệp* hoặc DO* |
'82' | 1 | Byte bộ mô tả tệp (xem 7.4.5 và Bảng 11) | Tệp* |
2 | Byte bộ mô tả tệp và byte mã dữ liệu (xem Bảng 118) | ||
3 hoặc 4 | Byte bộ mô tả tệp, byte mã hóa dữ liệu, kích cỡ bản ghi tối đa trên một hoặc 2 byte | EF* hỗ trợ bản ghi | |
5 hoặc 6 | Byte bộ mô tả tệp, byte mã hóa dữ liệu, kích cỡ bản ghi tối đa trên 2 byte và số bản ghi trên một hoặc 2 byte (xem Chú thích) | ||
‘83’ | 2 | Định danh tệp | Tệp* |
‘84’ | Đến 16 | Tên DF | DF |
‘85' | Thay đổi | Thông tin độc quyền không được mã hóa trên BER-TLV | Tệp |
‘86’ | Thay đổi | Thuộc tính an toàn trong định dạng độc quyền | Tệp |
‘87' | 2 | Định danh của EF bao gồm mở rộng thông tin điều khiển tệp | DF* |
'88' | 0 hoặc 1 | Định danh EF ngắn (xem 7.4.4) | EF* |
‘8A‘ | 1 | Trạng thái vòng đời (LCS, xem 7.4.10 và Bảng 14) | Tệp* hoặc DO* |
‘8B' | Thay đổi | Thuộc tính an toàn tham chiếu định dạng mở rộng (xem 9.3.3 và Bảng 38) | Tệp* |
‘8C’ | Thay đổi | Thuộc tính an toàn trong định dạng khối, SE định hướng (xem Bảng 30) | Tệp* |
‘8D' | 2 | Định danh của một EF bao gồm khuôn mẫu môi trường an toàn (xem 10.3.3) | DF |
'8E' | 1 | Thuộc tính an toàn kênh lô-gic (xem 9.3.7 và Bảng 47) | Tệp* hoặc DO* |
‘8F' | 1 | Chỉ báo tiết diện (xem Bảng 12) | EF có hỗ trợ bản ghi* |
‘92’ | 1 | Byte bộ mô tả dữ liệu (xem 7.4.7) | DO* hoặc EF* hỗ trợ cấu trúc BER-TLV |
'96' | Thay đổi | Như được xác định trong ISO/IEC 7816-11 | Xem ISO/IEC 7816-11 |
‘97’ | Thay đổi | Danh sách DF (xem 7.4.8) | DF* |
‘98’ | Thay đổi | Số phiên bản (mã nhị phân) | DO* |
Số EF trong DF (mã nhị phân) DF*'99' | Thay đổi | Số DO trong khuôn mẫu hiện hành sau khi lựa chọn DO hoặc tệp (mã nhị phân, xem 7.2.2 quy tắc i)) | Tệp* hoặc DO* |
'9B'Thay đổi | Thay đổi | Danh sách EF (xem 7.4.8) | DF* |
'9A' |
|
|
|
‘9C’ | Thay đổi | Thuộc tính an toàn trong định dạng khối, SPT định hướng (xem Bảng 30). Chú thích chủ yếu dành cho xử lý DO | Tệp* hoặc DO* |
‘9D’ | Thay đổi | Thẻ DO mà DO'62' áp dụng | DO |
‘A0' | Thay đổi | Khuôn mẫu thuộc tính an toàn đối với DO (xem 9.3.5) | Tệp* hoặc DO |
'A1' | Thay đổi | Khuôn mẫu thuộc tính an toàn trong định dạng độc quyền | Tệp |
‘A2' | Thay đổi | Khuôn mẫu bao gồm một hoặc nhiều cặp DO: định danh EF ngắn (DO'88') - tham chiếu tệp (DO'51’, L > 2, xem 7.3.2) | DF |
‘A3’ | Thay đổi | Giao diện và thuộc tính an toàn phụ thuộc LCS (xem 7.4.12) | Tệp hoặc DO |
‘A5’ | Thay đổi | Thông tin độc quyền được mã hóa trong BER- TLV | Tệp |
‘A6’ | Thay đổi | Như được xác định trong ISO/IEC 7816-11 | Xem ISO/IEC 7816-11 |
‘AB’ | Thay đổi | Khuôn mẫu thuộc tính an toàn trong định dạng mở rộng (xem 9.3.3) | Tệp* |
'AC' | Thay đổi | Khuôn mẫu định danh cơ chế mật mã (xem 9.2) | DF |
‘AD’ | Thay đổi | Khuôn mẫu thông số an toàn (xem 9.3.6.1) | DO |
'AF' | Thay đổi | Khuôn mẫu tóm lược một hoặc nhiều DO’06' (OID) liên quan đến ứng dụng | DF* |
* biểu thị rằng DO xuất hiện chỉ một lần dưới DO'62’. Hồi đáp SELECT và dưới thẻ '62' và '6F’, Tổ chức có trách nhiệm lưu trữ bất kỳ DO khác của lớp ngữ cảnh cụ thể. |
7.4.4 Định danh EF ngắn
Các quy tắc sau áp dụng cho việc sử dụng DO'88' trong CP của bất kỳ EF.
- Nếu thẻ hỗ trợ lựa chọn theo định danh EF ngắn (xem 7.3.1) và nếu DO’88’ không có, khi đó trong byte thứ hai của định danh tệp (tag '83'), bit b5 đến b1 mã hóa định danh EF ngắn.
- Nếu DO’88' có mặt có độ dài đặt là 0, khi đó EF không hỗ trợ định danh ngắn.
- Nếu DO’88' có mặt có độ dài đặt là một và nếu bit b8 đến b4 của phần tử dữ liệu không bằng và nếu bit b3 đến b1 được đặt là 000, khi đó bit b8 đến b4 mã hóa định danh EF ngắn (số từ 1 đến ba mươi).
7.4.5 Byte bộ mô tả tệp
DO’82’ có thể xuất hiện trong CP của bất kỳ tệp nào (xem Bảng 10).
- Byte đầu tiên của giá trị là byte bộ mô tả tệp (xem Bảng 11).
- Nếu giá trị bao gồm hai hoặc nhiều byte hơn, khi đó byte thứ hai là byte mã dữ liệu (xem Bảng 118)
- Nếu thẻ cung cấp byte mã dữ liệu ở một số nơi, khi đó hiệu lực chỉ báo đối với tệp được cho là trong vị trí gần nhất với tệp đó trong đường dẫn đến tệp đó từ:
1) MF, nếu có
2) DF tham chiếu với curAppDF, nếu có MF
3) Trong trường hợp không có chỉ báo trong đường dẫn, kích cỡ đơn vị dữ liệu được đặt là giá trị mặc định (xem Bảng 118).
Bảng 11 - Mã hóa byte bộ mô tả tệp
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
0 | x | - | - | - | - | - | - | Tính có thể truy cập được tệp |
0 | 0 | - | - | - | - | - | - | - tệp không thể chia sẻ |
0 | 1 | - | - | - | - | - | - | - tệp có thể chia sẻ được |
0 | - | 1 | 1 | 1 | 0 | 0 | 0 | DF |
0 | - | Không phải tất cả đặt là 1 | - | - | - | Loại EF | ||
0 | - | 0 | 0 | 0 | - | - | - | - EF để lưu giữ dữ liệu không được thực hiện bằng thẻ (EF hoạt động) |
0 | - | 0 | 0 | 1 | - | - | - | - EF để lưu giữ dữ liệu được thực hiện bằng thẻ (EF trong) |
0 | - | Mọi giá trị khác | - | - | - | - Loại EF độc quyền | ||
0 | - |
|
|
|
| Cấu trúc EF | ||
0 | - | Không phải tất cả đặt là 1 | 0 | 0 | 0 | Không có thông tin được cho | ||
0 | - | Không phải tất cả đặt là 1 | 0 | 0 | 1 | Cấu trúc trong suốt | ||
0 | - | Không phải tất cả đặt là 1 | 0 | 1 | 0 | Cấu trúc tuyến tính, kích cỡ cố định, không có thêm thông tin | ||
0 | - | Không phải tất cả đặt là 1 | 0 | 1 | 1 | Cấu trúc tuyến tính, kích cỡ cố định, cấu trúc TLV | ||
0 | - | Không phải tất cả đặt là 1 | 1 | 0 | 0 | Cấu trúc tuyến tính, kích cỡ thay đổi, không có thêm thông tin | ||
0 | - | Không phải tất cả đặt là 1 | 1 | 0 | 1 | Cấu trúc tuyến tính, kích cỡ thay đổi, cấu trúc TLV | ||
0 | - | Không phải tất cả đặt là 1 | 1 | 1 | 0 | Cấu trúc tuần hoàn, kích cỡ cố định, không có thêm thông tin | ||
0 | - | Không phải tất cả đặt là 1 | 1 | 1 | 1 | Cấu trúc tuần hoàn, kích cỡ cố định, cấu trúc TLV | ||
0 | - | 1 | 1 | 1 | 0 | 0 | 1 | Cấu trúc BER-TLV |
0 | - | 1 | 1 | 1 | 0 | 1 | 0 | Cấu trúc SIMPLE-TLV |
- Giá trị bất kỳ khác là RFU - "Có thể chia sẻ được” nghĩa là tệp hỗ trợ truy cập đồng thời trên các kênh lô-gic khác nhau |
7.4.6 Chỉ báo tiết diện
Các quy tắc sau áp dụng đối với sử dụng DO’8F' trong tệp CP của bất kỳ bản ghi hỗ trị EF:
- Nếu DO'8F’ có mặt, khi đó trường giá trị chứa chỉ báo tiết diện theo Bảng 12;
- Nếu DO'8F’ không có, khi đó tất cả các bản ghi trong EF ẩn trong trạng thái không thay đổi ACTIVATED
Bảng 12 - Mã hóa chỉ báo tiết diện
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
0 | x | x | x | x | x | x | x | Mã hóa chỉ báo tiết diện được xác định bởi Tổ chức có trách nhiệm |
0 | - | - | - | - | - | - | x | Bản ghi LCS |
0 | - | - | - | - | - | - | 0 | Tất cả bản ghi trong tệp này đều trong trạng thái không thay đổi ACTIVATED |
0 | - | - | - | - | - | - | 1 | Mỗi bản ghi trong EF này có bản ghi riêng LCS, không thay đổi theo lệnh ACTIVATE RECORD, DEACTIVATE RECORD và ACTIVATE FILE |
1 | x | x | x | x | x | x | x | Mã hóa độc quyền chỉ báo tiết diện |
- Giá trị bất kỳ khác là RFU |
7.4.7 Byte bộ mô tả dữ liệu
Được tham chiếu theo thẻ '92’, phần tử dữ liệu liên ngành là CP DO bao gồm thông tin liên quan đến xử lý DO (xem Bảng 13). Thông tin có hiệu lực đối với tất cả các trường hợp (nếu nhiều hơn 1) của DO trong khuôn mẫu có liên quan. Nếu DO được tuyên bố là “không thể chia sẻ’, chỉ một trường hợp của DO này có thể truy cập được trên một kênh lô-gic.
Bảng 13 - Mã hóa byte bộ mô tả dữ liệu
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
0 | x | - | - | - | - | - | - | Tính có thể truy cập được dữ liệu |
0 | 0 | - | - | - | - | - | - | - DO không thể chia sẻ |
0 | 1 | - | - | - | - | - | - | - DO có thể chia sẻ được |
0 | - | x | x | - | - | - | - | Cấu trúc của DO trong khuôn mẫu |
0 | - | 0 | 0 | - | - | - | - | - không có thông tin được cho (mặc định) |
0 | - | 0 | 1 | - | - | - | - | - quản lý tuyến tính (xem 11.4.7) |
0 | - | 1 | 0 | - | - | - | - | - quản lý tuần hoàn đối với các trường hợp (xem 11.4.7) |
0 | - | 1 | 1 | - | - | - | - | - RFU |
0 | - | - | - | x | - | - | - | Các trường hợp |
0 | - | - | - | 0 | - | - | - | - thẻ xuất hiện chỉ một lần trong khuôn mẫu |
0 | - | - | - | 1 | - | - | - | - thẻ có thể xuất hiện nhiều lần trong khuôn mẫu (mặc định) |
0 | - | - | - | - | x | x | x | Đặc tính DO |
0 | - | - | - | - | 0 | 0 | 0 | - không có thông tin được cho |
0 | - | - | - | - | - | - | 1 | - có danh sách thẻ (DO được xây dựng) hoặc có trong danh sách thẻ (DO ban đầu) |
0 | - | - | - | - | - | 1 | - | - khuôn mẫu cơ sở có thể mở rộng được bằng trình bao (DO được xây dựng) hoặc phần mở rộng khuôn mẫu (DO ban đầu) |
0 | - | - | - | - | 1 | 1- | - | - Giải tự động trình bao |
- Giá trị bất kỳ khác là RFU - “Có thể chia sẻ được" nghĩa là DO hỗ trợ truy cập đồng thời trên các kênh lô-gic khác nhau |
7.4.8 Phần tử dữ liệu liệt kê DF và EF
Được tham chiếu theo thẻ '97', phần tử dữ liệu liên ngành liệt kê DF là một tệp CP cho biết các DF được chứa trong DF hoặc DF ứng dụng, và định danh EF ngắn của chúng. Thông tin của mỗi tệp được mã hóa trên ba byte liên tiếp. 2 byte đầu tiên bao gồm định danh tệp của một EF. Byte thứ ba hoặc là định danh EF ngắn của EF được mã hóa theo 7.4.4 hoặc byte được mã hóa ‘00' nếu tệp cơ sở không có định danh EF ngắn.
7.4.9 Phần tử dữ liệu số trường hợp
Được tham chiếu theo thẻ ‘98', phần tử dữ liệu liên ngành là CP DO, có thể xuất hiện chỉ khi có một số trường hợp DO trong khuôn mẫu. Giá trị của nó phải là số chuỗi dương được mã hóa nhị phân như được xác định theo ISO/IEC 8825-1 đối với loại INTEGER. Giản đồ số đối với quản lý tuần hoàn các trường hợp giống như đối với quản lý số bản ghi (xem 11.3.6). Xem 11.4.7 để biết thêm thông tin về giản đồ số.
7.4.10 Trạng thái vòng đời
Thẻ, tệp và các đối tượng khác, mỗi cái có vòng đời; trạng thái vòng đời (LCS) cho phép thẻ và thiết bị giao diện xác định trạng thái an toàn lô-gic khác nhau của thẻ, tệp và các đối tượng khác trong thẻ.
Để hỗ trợ quản lý thuận lợi vòng đời của tệp, bản ghi hoặc DO với tư cách là thuộc tính (xem TCVN 11167-9 (ISO/IEC 7816-9)), điều này xác định bốn trạng thái ban đầu của vòng đời theo trật tự sau.
1) Trạng thái tạo lập
2) Trạng thái giá trị ban đầu
3) Trạng thái hoạt động: được kích hoạt hoặc không được kích hoạt
4) Trạng thái kết thúc
LCS (1 byte) phải được thực hiện theo Bảng 14.
- Giá trị '00' đến ‘0F’ là liên ngành
- Giá trị '10' đến ‘FF’ là độc quyền
Trạng thái mặc định là trạng thái hoạt động (đã được kích hoạt).
Bảng 14 - Mã hóa byte LCS dữ liệu hoặc tệp
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Không có thông tin được cho |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | Trạng thái tạo lập |
0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | Trạng thái giá trị ban đầu |
0 | 0 | 0 | 0 | 0 | 1 | - | 1 | Trạng thái hoạt động (được kích hoạt) |
0 | 0 | 0 | 0 | 0 | 1 | - | 0 | Trạng thái hoạt động (không được kích hoạt) |
0 | 0 | 0 | 0 | 1 | 1 | - | - | Trạng thái kết thúc |
Không phải tất cả bằng 0 | x | x | x | x | Độc quyền | |||
- Giá trị bất kỳ khác là RFU |
Theo thẻ ‘8A’, LCS có thể xuất hiện trong CP của bất kỳ tệp hoặc DO (xem Bảng 10). Thẻ LCS có thể xuất hiện trong byte lịch sử (xem 12.1.1.11). Theo thẻ ‘48’, thẻ LCS có thể xuất hiện trong EF.ATR/INFO (xem 12.2.2). Khi nó có MF, thẻ ít nhất trong trạng thái tạo lập.
Chú thích: trừ khi có quy định khác, thuộc tính an toàn có hiệu lực đối với trạng thái hoạt động của tệp và trạng thái ACTIVATED của DO.
7.4.11 Tham chiếu gián tiếp theo định danh EF ngắn sử dụng DO’A2’
DO’88’ dưới DO’A2' trong FCP của DF biểu thị rằng định danh EF ngắn lồng vào có hiệu lực khi DF là hiện hành. Lệnh sử dụng nó phải lựa chọn tạm thời EF được tham chiếu bằng đường dẫn lồng vào trong DO'51’ sau DO’88’. Sự thành công của nó không có tác động đối với curDF và curAppDP (xem 7.2.2 quy tắc f)). Tác động đối với curEF được mô tả trong các phần giải quyết các lệnh sử dụng định danh EF ngắn (xem ví dụ 11.2.2 hoặc 11.3.2).
7.4.12 Khuôn mẫu thuộc tính an toàn phụ thuộc trạng thái vòng đời và giao diện
DO’A3’ có thể xuất hiện trong CP của bất kỳ tệp hoặc DO và trong các khuôn mẫu có thể xuất hiện hơn một lần (xem Bảng 10).
DO'A3’ bao gồm tối đa một DO’91’ (xem 7.4.12.1). Nếu DO’91’ không có, khi đó thuộc tính an toàn bao gồm trong DO'A3’ áp dụng với tất cả các giao diện. Nếu DO'A3' gồm có DO’91’, nó phải là DO đầu tiên trong khuôn mẫu.
DO’A3' bao gồm tối đa một DO'8A' (xem 7.4.12.2). Nếu DO’8A’ không có khi đó thuộc tính an toàn bao gồm trong DO'A3’ áp dụng với tất cả trạng thái vòng đời. Nếu DO'A3' bao gồm DO’8A' khi đó nó phải là
- DO đầu tiên trong khuôn mẫu nếu DO’91’ xuất hiện, hoặc
- DO thứ hai trong khuôn mẫu nếu DO'91’ không xuất hiện.
DO'A3' có thể bao gồm bất kỳ số nào của DO’8B’, DO’8C’, DO’9C’, DO'A0', DO'AB’ trong bất kỳ trật tự nào có cùng ý nghĩa và mã hóa như được xác định trong Bảng 10.
7.4.12.1 Bộ mô tả loại vận tải
Được tham chiếu theo thẻ '91' dưới DO’A3’, phần tử dữ liệu này biểu thị cho giao diện thuộc tính an toàn bao gồm trong cùng DO’A3’ áp dụng.
Bảng 15 - Mã hóa bộ mô tả loại vận chuyển (DO’91' dưới DO‘A3')
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
x | - | - | - | - | - | - | - | 0, các giá trị khác là RFUa |
- | x | x | - | - | - | - | - | 00, các giá trị khác là RFU |
- | - | - | 1 | - | - | - | - | Giao tiếp bằng tiếp xúc C6 (xem TCVN 11167-3 (ISO/IEC 7816-3)) |
- | - | - | - | 1 | - | - | - | Giao tiếp trường gần (xem ISO/IEC 18092) |
- | - | - | - | - | 1 | - | - | Giao diện USB (xem ISO/IEC 7816-2) |
- | - | - | - | - | - | 1 | - | Giao diện không tiếp xúc đối với thẻ gần (xem ISO/IEC 14443) |
- | - | - | - | - | - | - | 1 | Giao diện tiếp xúc (xem TCVN 11167-3 (ISO/IEC 7816-3)) |
a bản này xác định trường hợp khi một byte đủ để tham chiếu giao diện liên quan. Trong tương lai có thể cần thiết có nhiều byte |
Nếu trong phần tử dữ liệu này một bit được thiết lập đến
- 1 khi đó đối với giao diện tương ứng thuộc tính an toàn phải áp dụng
- 0 khi đó đối với giao diện tương ứng DO’A3’ không liên quan
7.4.12.2 Biểu thị trạng thái vòng đời
Được tham chiếu theo thẻ ‘8A’ dưới DO'A3', phần tử dữ liệu này biểu thị cho trạng thái vòng đời thuộc tính an toàn bao gồm trong cùng DO’A3’ áp dụng. Phần tử dữ liệu này bao gồm một hoặc nhiều byte và mỗi byte phải được mã hóa và thực hiện theo 7.4.10 và Bảng 14, nghĩa là mỗi byte mã hóa một trạng thái vòng đời và tất cả các byte của phần tử dữ liệu tạo nên một tập hợp trạng thái vòng đời. Nếu vòng đời của tệp hoặc DO, được đưa ra trong DO’8A’ trong khuôn mẫu thông số kiểm soát (nghĩa là khuôn mẫu có thẻ ‘62’)
- Là phần tử của tập hợp này khi đó thuộc tính an toàn áp dụng đối với tệp hoặc DO
- Không phải là phần tử của tập hợp này khi đó DO'A3’ không liên quan với tệp hoặc DO.
8 Sử dụng đặc thù DO và các khái niệm liên quan
8.1 Đệm và dữ liệu BER-TLV
Dữ liệu hoặc trường dữ liệu mã hóa BER-TLV là kết nối của BER-TLV DO, có khả năng đệm trước hoặc sau bất kỳ các DO nào.
Có hai phương thức tiêu chuẩn thể hiện mã hóa BER-TLV của một lệnh hoặc trường dữ liệu hồi đáp hoặc dữ liệu:
- CLA biểu thị thông điệp an toàn (xem Điều 10)
- Bit b1 của INS được đặt là 1 (mã INS lẻ).
Lệnh có mã INS chẵn có thể xác định mã hóa BER-TLV của trường dữ liệu và dữ liệu.
Trong dữ liệu lệnh, tiêu chuẩn này có thể xác định trật tự của DO (xem ví dụ Bảng 87). Trong dữ liệu hồi đáp, trật tự của DO hoặc không được xác định hoặc được kế thừa từ trật tự của DO có trong thẻ.
Do mã hóa trường độ dài BER-TLV (xem E.2) DO có thẻ n byte không thể có tổng độ dài ví dụ (n+1+128) byte hoặc (n+2+256) byte hoặc (n+3+65536) byte, vv... Trạng thái tổng độ dài không hiệu lực cũng có thể xảy ra nếu một số DO được truyền và DO cuối cùng tạo ra vấn đề tương tự. Trong tất cả các trường hợp này, nếu nhận lệnh Ne thiết lập với tổng độ dài không hiệu lực như vậy thẻ có thể gửi trong trường dữ liệu hồi đáp bao gồm DO byte Ne đầu tiên được yêu cầu theo lệnh và kết thúc bằng SW1-SW2 đặt là ‘61XY', trong đó 'XY' mã hóa số byte còn lại. Sau đấy chuỗi hồi đáp (xem 5.3.4) áp dụng.
8.1.1 Các điều kiện đệm
Khả năng đệm trong trường dữ liệu phụ thuộc vào lệnh. Thuật ngữ “kết nối DO" loại bỏ sự đệm. Đệm được phép:
- Khi xử lý cấu trúc dữ liệu qua đơn vị dữ liệu; ví dụ đệm có thể xuất hiện trong trường dữ liệu hồi đáp READ BINARY do xóa bỏ hoặc sửa đổi DO trong đơn vị dữ liệu hỗ trợ EF.
- Khi xử lý cấu trúc dữ liệu qua bản ghi; ví dụ đệm có thể xuất hiện trong trường dữ liệu hồi đáp READ RECORD do định dạng cố định của bản ghi trong bản ghi hỗ trợ EF.
- Khi được cho phép bởi tiêu chuẩn C-RP (CLA<’80')
- Khi được cho phép theo đặc tả của C-RP (CLA>'7F’).
Nếu mã hóa BER-TLV được chỉ rõ, dữ liệu dữ liệu phải là BER-TLV được mã hóa, không có đệm. Mã hóa BER-TLV không áp dụng đối với trường dữ liệu đơn lẻ (a.k.a đoạn dữ liệu) của lệnh mà trong đó dữ liệu bị phân đoạn do sự phân đoạn dữ liệu khiến cho DO tách ra. Chèn vẫn bị loại bỏ trong đoạn dữ liệu.
CHÚ THÍCH: Thông điệp an toàn có thể yêu cầu mã hóa BER-TLV của đoạn dữ liệu (xem 10.1).
8.1.2 Thủ tục đệm
Khi đệm được phép trong dữ liệu BER-TLV, byte đặt là '00' có thể có trước, giữa hoặc sau DO.
Khi có trong byte lịch sử (xem 12.1.1) hoặc trong EF.ATR/INFO (xem 12.2.2) hoặc trong thông tin điều khiển của bất kỳ tệp nào (xem thẻ ‘82’ trong Bảng 10), byte mã hóa dữ liệu (xem Bảng 118) biểu thị liệu giá trị ‘FF’:
- Có hiệu lực đối với byte đầu tiên của trường thẻ dài của lớp riêng, mã hóa được xây dựng (câu lệnh rõ ràng), hoặc
- Không có hiệu lực đối với byte đầu tiên của trường thẻ (giá trị mặc định), nghĩa là được sử dụng cho cùng mục đích (đệm) và theo cùng điều kiện như giá trị '00".
8.2 Khuôn mẫu hiện hành và hệ số đối tượng dữ liệu
8.2.1 Khuôn mẫu hiện hành và DO hiện hành
Nếu được thiết lập, curConstructedDO tham chiếu DO được xây dựng. Trường giá trị của nó, như được xác định trong 7.2.2 quy tắc k), được gọi là khuôn mẫu hiện hành.
Bất kỳ DO nào trong khuôn mẫu hiện hành có thể được tham chiếu trực tiếp bằng thẻ đơn nhất trong lệnh chuyển đổi mà không cung cấp bất kỳ thông tin nào trên VA cùng với thẻ này.
Nếu bất kỳ DO nào được xây dựng, khuôn mẫu hiện hành không bao gồm bất kỳ DO xếp lồng trong DO được xây dựng.
Gốc ảo DO’7F70' thuộc về hệ 0, và là DO duy nhất trong hệ đó. Nếu curConstructed DO tham chiếu DO'XY" được xây dựng hệ nth, khuôn mẫu hiện hành là chuỗi DO hệ (n+1)th lồng vào trong DO’XY’. Khuôn mẫu hiện hành không bao gồm DO có thể lồng vào trong bất kỳ DO hệ (n+1)th. Ví dụ được đưa ra trong phụ lục F.
curDO (xem 7.2.1-9) được thiết lập bằng lệnh SELECT (xem 11.1.1) hoặc lệnh SELECT DATA (xem 11.4.2). Lựa chọn DO cũng xảy ra là tác động phụ của lệnh xử lý Do khác và được mô tả trong các phần liên quan, ví dụ 11.4.3 và 11.4.4 đối với lệnh GET DATA.
Để hỗ trợ phương pháp tham chiếu được xác định trong bản in này thuộc ISO/IEC 7816-4, thẻ phải có khả năng giải thẻ ‘7F70’.
Ngay sau khi hỗ trợ giao diện (xem 5.1), trước bất kỳ lựa chọn nào, khuôn mẫu hiện hành phụ thuộc vào ứng dụng được lựa chọn ẩn hoặc DF (curAppDF trong VA). Nó có thể bao gồm DO đặc thù để hỗ trợ ví dụ cho chế khám phá được xác định trong ISO/IEC 24727-2.
Nhiều lệnh xử lý DO bao hàm một hoặc một vài lựa chọn trong. Các lựa chọn này được cho là “tạm thời" và thiết lập “tệp hiện hành tạm thời” hoặc “khuôn mẫu hiện hành tạm thời”, và “VA tạm thời”. Trong một số trường hợp, tác động phụ của thành công lệnh có thể xác nhận các lựa chọn trong này, do vậy thiết lập VA tạm thời là VA hiện hành.
8.2.2 Mở rộng khuôn mẫu
Mở rộng khuôn mẫu là phần khuôn mẫu có thể truy cập được chỉ bằng giải tự động của trình bao thẻ, nhờ đó mở rộng khuôn mẫu cơ sở (xem phụ lục G hoặc ví dụ). tất cả trình bao DO’63‘ là phần khuôn mẫu cơ sở.
Nếu giải tự động của trình bao thẻ không được hỗ trợ, mở rộng khuôn mẫu trống. Tham chiếu gián tiếp chỉ mang tính cung cấp thông tin. Nếu cần thiết, mọi đối tượng bên ngoài có thể thực hiện thủ tục hai giai đoạn:
- Lựa chọn cấu trúc nơi DO được lưu giữ, khi cấu trúc này khác với cấu trúc hiện hành;
- Sau đó xử lý DO trong cấu trúc được lựa chọn.
8.2.3 Cây con đối tượng dữ liệu
DO được xây dựng có cấu trúc cây. Cây con của cấu trúc cây này đạt được bằng cách hủy bỏ DO lồng vào ở cây. Tiêu đề mở rộng cùng với DO được xây dựng tham chiếu cây con của DO (xem 8.4.6 và 8.4.7).
Ví dụ: DO hệ nth được cho được biểu thị {T-L {T1-L1-(T2-L2-V2}-{T3-L3-V3}}-{T4-L4-V4}-(T5-L5-V5}}. Loại bỏ DO T2 hệ (n+2)th và DO T4 hệ (n+1)th đạt được cây con: {T-L'-{T1-L1'-{T3-L3-V3}}-{T5-L5-V5}}. L và L1 được thay bằng L' và L1' do hủy bỏ DO từ khuôn mẫu tác động đến độ dài của nó.
8.2.4 Vòng đời đối tượng dữ liệu
Bất kỳ DO nào lưu giữ trong thẻ đều có thể có vòng đời DO. Khi DO có vòng đời, LCS phải phân biệt ít nhất hai trạng thái: ACTIVATED và DEACTIVATED. Mã hóa LCS của DO và mã hóa LCS của tệp tương tự nhau (xem Bảng 14). Sự có mặt của LCS của DO được biểu thị trong DO'62' khuôn mẫu CP (xem Bảng 10).
8.3 Nhận dạng phần tử dữ liệu và đối tượng dữ liệu
8.3.1 Nguyên tắc
Tại giao diện giữa thẻ và thiết bị giao diện, phần tử dữ liệu thường xuất hiện trong trường giá trị của DO. Phần tử dữ liệu được cho là "dưới" thẻ của DO.
Nếu số bit đại diện phần tử dữ liệu không phải là bội số của tám, có thể sử dụng BITSTRING DO chung như ví dụ trong TCVN 11167-15 (ISO/IEC 7816-15). Nếu không, ánh xạ vào một byte hoặc một chuỗi byte phải được xác định cùng nhau với phần tử dữ liệu riêng. Trừ khi có quy định khác, số bit thích hợp được đặt là 1 trong byte cuối cùng bắt đầu từ bit b1.
Đối với mục đích phục hồi và tham chiếu trong trao đổi, phần tử dữ liệu phải được kết hợp với thẻ của đối tượng dữ liệu BER-TLV và phần tử dữ liệu có thể được gói gọn trong đối tượng dữ liệu này.
Phần tử dữ liệu có thể được tham chiếu trực tiếp bằng thẻ BER-TLV liên kết. Nó có thể được liên kết với phần tử dữ liệu khác mà phần tử dữ liệu này thiết lập ngữ cảnh nó thuộc về.
Một hoặc nhiều đối tượng dữ liệu lệnh để thực hiện có thể tham chiếu gián tiếp phần tử dữ liệu.
Lệnh liên ngành hỗ trợ nhiều phiên bản có cùng DO trong khuôn mẫu, như vậy trong ứng dụng và trong thẻ.
Tiêu chuẩn hoặc ứng dụng có thể giới hạn hoặc ngăn cấm nhiều phiên bản có cùng DO trong khuôn mẫu, trong cấu trúc hoặc trong ứng dụng.
8.3.2 Diễn giải thẻ trong trường dữ liệu hồi đáp và lệnh hoặc dữ liệu
DO có lớp chung (byte đầu tiên từ '01' đến '3F', xem phụ lục E) luôn có ý nghĩa chung của chúng.
Ý nghĩa của DO của lớp ứng dụng (byte đầu tiên từ ‘40’ đến ‘7’, xem phụ lục E) được xác định theo các tiêu chuẩn. Tiêu chuẩn mặc định là các tiêu chuẩn TCVN 11167 (ISO/IEC 7816) và Tổ chức có trách nhiệm (xem 8.3.3). Ý nghĩa của các DO này luôn giống nhau, mặc dù hàm của chúng được xác định theo lệnh chúng được sử dụng.
Cách thức thể hiện DO của lớp ngữ cảnh cụ thể (byte đầu tiên từ ‘80’ đến 'BF’, xem phụ lục E) được xác định:
- Bằng tổ của nó trong DO được xây dựng được xác định theo tiêu chuẩn, ví dụ DO lồng vào trong DO’62' (xem Bảng 10). Quy tắc này đệ quy và áp dụng, ví dụ với DO lồng vào trong DO’A0’ lồng vào trong DO’62’.
- Bằng CLA: biểu thị thông điệp an toàn (xem 5.4 và 10.1).
- Bằng INS: lệnh có thể xác định các DO như vậy của lớp ngữ cảnh cụ thể đối với sử dụng cụ thể.
- Trong các trường hợp khác, diễn giải các DO này được xác định theo ứng dụng.
8.3.3 Phân phối thẻ
Tiêu chuẩn này xác định nhiều DO liên ngành và phân phối thẻ đối với lập mã BER-TLV của các DO này. Để xác định hơn nữa DO liên ngành, ISO/IEC 7816-6 duy trì một danh sách toàn diện bộ dữ liệu (tên của DO liên ngành, thẻ phân phối) được xác định trong ISO/IEC 7816 tại thời điểm công bố. Thẻ được phân phối trong tiêu chuẩn Tổ chức có trách nhiệm thuộc về:
- Hoặc lớp ứng dụng;
- Hoặc lớp ngữ cảnh cụ thể, khi DO tương ứng có thể được lồng vào trong DO được xây dựng thẻ đã được phân phối theo tiêu chuẩn.
Khi thẻ được xác định bằng tiêu chuẩn khác, cơ quan chức năng có trách nhiệm đối với tiêu chuẩn phải tìm kiếm thông tin của Tổ chức có trách nhiệm/WG 4 đối với thẻ hoặc các thẻ cần thiết, và phải chú giải kịp thời để bổ sung thể hoặc các thẻ này trong ISO/IEC 7816-6.
Được mô tả trong phụ lục A, cụm từ tiếp sau xác định sơ đồ phân phối thẻ định danh DO liên ngành trong trường dữ liệu. Khi cần thiết, sơ đồ phân phối thẻ này sử dụng DO liên ngành được thể hiện trong Bảng 16 để thông báo thẩm quyền có trách nhiệm đối với việc phân phối thẻ.
Bảng 16 - Đối tượng dữ liệu liên ngành đối với quyền phân phối thẻ
Thẻ | Giá trị |
‘06’ | Định danh đối tượng (OID), mã hóa được xác định trong ISO/IEC 8825-1), xem ví dụ trong phụ lục A |
‘41’ | Mã nước (mã hóa được xác định trong ISO 3166-1) và dữ liệu quốc gia tùy chọn |
‘42' | Số nhận dạng người phát hành (mã hóa và đăng ký được xác định trong ISO/IEC 7812-1 và dữ liệu người phát hành tùy chọn |
'4F' | Định danh ứng dụng (AID, mã hóa được xác định trong 12.2.3) |
'5F29' | Tiết diện trao đổi |
8.3.4 Sơ đồ phân phối thẻ tiêu chuẩn
Trong lớp ứng dụng, Tổ chức có trách nhiệm phân phối hoặc lưu trữ sử dụng bất kỳ số thẻ lớp ứng dụng nào trong dải 0-127 hoặc lớn hơn 511 (số thập phân).
Số thẻ lớp ứng dụng trong dải 128 đến 511 (số thập phân) có thể được phân phối bằng bất kỳ tiêu chuẩn hoặc đặc tả nào được tham chiếu bằng OID, hoặc bằng ứng dụng được tham chiếu bởi AID.
Để định danh quyền phân phối thẻ trong dải này, DO'78' được xây dựng được sử dụng. DO này tạo tổ DO'80' trống sau hoặc DO’06’ hoặc DO’4F'. Nếu DO’78' xuất hiện
- Trong chuỗi dữ liệu ban đầu (xem 12.1.2) hoặc trong EF.ATR/INFO (xem 12.2.2), khi đó quyền phải có hiệu lực đối với toàn bộ thẻ, ngoại trừ nếu bị bác bỏ bởi DO’78' khác trong tệp hoặc DO được xây dựng.
- Trong dữ liệu quản lý của EF hoặc DF, có khả năng hỗ trợ ứng dụng (xem 7.4) hoặc trong khuôn mẫu được thực hiện hiện hành bằng cách lựa chọn bất kỳ tệp nào, khi đó quyền phải có hiệu lực trong tệp đó hoặc ứng dụng, ngoại trừ nếu nó bị bác bỏ bởi DO'78’ khác trong DO được xây dựng.
- Trong khuôn mẫu, nó phải có hiệu lực đối với tất cả các DO trong khuôn mẫu, và tất cả đối tượng bao gồm trong DO được xây dựng, (bất luận hệ của chúng), ngoại trừ nếu nó bị bác bỏ bởi DO’78' khác trong khuôn mẫu.
8.3.5 Sơ đồ phân phối thẻ tương thích
Các sơ đồ phân phối thẻ này sử dụng DO liên ngành và DO hơn nữa.
Các DO hơn nữa này phải được lồng vào trong DO liên ngành được tham chiếu bằng thẻ '70’ đến ‘72’ hoặc thẻ ‘74’ đến ‘77’. Trong các DO này, ý nghĩa của thẻ lớp ứng dụng không được xác định trong ISO/IEC 7816 ngoại trừ đối với thẻ '41', '42’ và ‘4F’ để định danh quyền phân phối thẻ (xem Bảng 16).
Khi các DO hơn nữa sử dụng thẻ lớp ngữ cảnh cụ thể và thuộc về khuôn mẫu liên ngành được xác định ở trên, ý nghĩa của chúng được xác định bằng quyền phân phối thẻ.
Sử dụng lớp ngữ cảnh cụ thể trong khuôn mẫu liên ngành với thẻ '65’ (dữ liệu liên quan đến người giữ thẻ), '66' (dữ liệu thẻ), ‘67’ (dữ liệu xác thực) bị phản đối.
Để định danh sơ đồ phân phối thẻ tương thích và quyền trách nhiệm đối với sơ đồ, DO’78' liên ngành có thể được sử dụng. Khả năng xuất hiện và bác bỏ tương tự như trong 8.3.4. Nếu xuất hiện, giá trị của nó phải bao gồm một trong các DO liên ngành được thể hiện trong Bảng 16, để định danh quyền phân phối thẻ.
8.3.6 Sơ đồ phân phối thẻ cùng tồn tại
Trong sơ đồ như vậy, tất cả các DO liên ngành phải được lồng vào trong các DO'7E' liên ngành. Hơn nữa, thẻ ‘79’ và; 7E’ không được đưa lại sự diễn giải khác, cũng như thẻ ‘62’, '64', '6F' (khuôn mẫu CP, FMD và FCI, xem 7.4) và ‘7D’ (khuôn mẫu SM, xem 10.1).
Các sơ đồ phân phối thẻ này có thể sử dụng thể có sự diễn giải không được xác định trong TCVN 11167 (ISO/IEC 7816). Để định danh sơ đồ phân phối thẻ cùng tồn tại và quyền trách nhiệm đối với sơ đồ, DO'79' liên ngành được sử dụng. DO này phải tạo tổ một trong các DO liên ngành được thể hiện trong Bảng 16.
- Nếu quyền có hiệu lực đối với toàn bộ thẻ, khi đó DO’79' xuất hiện trong chuỗi dữ liệu ban đầu (xem 12.1.2) hoặc trong EF.ATR/INFO (xem 12.2.2).
- Nếu quyền có hiệu lực trong tệp hoặc ứng dụng, khi đó DO’79’ xuất hiện trong dữ liệu quản lý DF ứng dụng hoặc EF, DF (xem 7.4) hoặc trong khuôn mẫu hiện hành được thiết lập bởi bất kỳ lựa chọn tệp nào.
8.3.7 Tránh sơ đồ phân phối thẻ độc lập
Bất kỳ sơ đồ phân phối thẻ độc lập nào sử dụng thẻ có sự diễn giải khác ISO/IEC 7816, nhưng không tuân theo 8.3.6. Các sơ đồ phân phối thẻ như vậy không tuân theo tiêu chuẩn này và không được phép trao đổi.
Bên cạnh việc sử dụng tính nhất quán sơ đồ phân phối cùng tồn tại và tương thích, có ba cách dành cho ứng dụng để tránh trạng thái như vậy và vẫn phù hợp với tiêu chuẩn này:
- Sử dụng các DO'53’ tùy ý liên ngành để trình diễn DO tùy ý, và các DO’73' để tạo tổ DO độc quyền trong khuôn mẫu tùy ý.
- Sử dụng thẻ 3 byte được lưu trữ cho mục đích này (xem 8.3.4).
- Sử dụng DO có lớp ngữ cảnh cụ thể (xem 8.3.2).
8.4 Tham chiếu và phục hồi phần tử dữ liệu và DO
8.4.1 Tổng quát
Thẻ ‘XY’ tham chiếu trực tiếp phần tử dữ liệu mà là giá trị của DO’XY’. Đối với phục hồi DO trước khi lựa chọn ứng dụng xem 12.4.
Thông số kiểm soát và dữ liệu quản lý tệp có thể được phục hồi trong hồi đáp với lệnh SELECT hoặc SELECT DATA (xem 11.1.1, 11.4.2.1 và Bảng 87).
Ngay khi ứng dụng được lựa chọn, bất kỳ DO nào phải được phục hồi trực tiếp hoặc gián tiếp:
- Trong dữ liệu quản lý tệp (xem 7.4) của DF ứng dụng và từ EF cụ thể trong DF hiện hành.
- Trong khuôn mẫu hiện hành (xem 8.2) sau khi lựa chọn ứng dụng, sử dụng lệnh GET DATA hoặc GET NEXT DATA (xem 11.4.3) và 11.4.4). Dữ liệu quản lý tệp và/hoặc DO'62’ (CP lồng) phải bao gồm trong khuôn mẫu này, để đảm bảo rằng các DO cụ thể này liên quan với ứng dụng.
Danh sách phần tử, danh sách thẻ, danh sách tiêu đề, tiêu đề mở rộng và danh sách tiêu đề mở rộng là các DO liên ngành tham chiếu gián tiếp phần tử dữ liệu, do vậy tham chiếu DO trong bất kỳ tệp nào. Các phần tử dữ liệu như vậy chỉ báo thẻ thể hiện một trường dữ liệu lệnh hoặc dựng một trường dữ liệu hồi đáp. Tính toán sự kết nối của phần tử dữ liệu hoặc DO từ tham chiếu gián tiếp được gọi là giải (hoặc phân tích) tham chiếu gián tiếp.
Sự diễn giải danh sách thẻ, danh sách tiêu đề, tiêu đề mở rộng hoặc danh sách tiêu đề mở rộng phụ thuộc vào khuôn mẫu mà trong đó chúng được xác định. Lồng một trong các DO này trong trình bao (cái xác định khuôn mẫu này), cho phép tham chiếu bất kỳ nơi nào trong thẻ. Thẻ tùy chọn trong trình bao cho phép tham chiếu kết quả của giải tham chiếu gián tiếp bằng thẻ này.
Cú pháp trường dữ liệu lệnh trong SELECT DATA, GET DATA, GET NEXT DATA thể hiện sử dụng các DO mà có thể gần với cú pháp của trình bao.
8.4.2 Danh sách phần tử
Dưới thẻ ‘5F41', phần tử dữ liệu liên ngành này biểu thị rằng thông tin để phục hồi không xuất hiện là DO, mà dưới điều khiển ứng dụng. Nó được sử dụng chỉ trong khuôn mẫu trình bao. Cấu trúc của nó và thông tin hồi đáp không thuộc phạm vi của ISO/IEC 7816.
8.4.3 Danh sách thẻ
Được tham chiếu bằng thẻ '5C', phần tử dữ liệu liên ngành này là kết nối của trường thẻ không phân định. Nó tham chiếu sự kết nối của các DO bằng thẻ riêng, theo cùng trật tự như trong danh sách thẻ.
8.4.4 Danh sách tiêu đề
Dưới thẻ '5D', phần tử dữ liệu liên ngành này là kết nối của các bộ (trường thẻ T, trường độ dài L) không phân định. Chuỗi byte như được xác định trong danh sách thẻ ngoại trừ cắt cụt các giá trị. Khi L = ‘00’, không xảy ra cắt cụt. Khi L > '00', giá trị bị cắt đến byte L, ngoại trừ khi nó đã ngắn hơn hoặc bằng với byte L. Mã hóa L là độ dài BER.
Cảnh báo: trong danh sách tiêu đề, tất cả các DO được tham chiếu bị cắt cụt phải là ban đầu do DO được xây dựng bị cắt cụt không phải là DO. Trích các phần của DO được xây dựng cần sử dụng tiêu đề mở rộng.
8.4.5 Tiêu đề mở rộng và danh sách tiêu đề mở rộng
Dưới thẻ ‘4D’, '5F60' hoặc ‘5F61' (xem 8.4.8 đối với các khác biệt giữa các thẻ khác nhau), phần tử dữ liệu liên ngành này là danh sách tiêu đề mở rộng.
Danh sách tiêu đề mở rộng là
- Hoặc một tiêu đề mở rộng
- Hoặc kết nối của các tiêu đề mở rộng
Tiêu đề mở rộng là kết nối của các bộ (trường thẻ T, trường độ dài L) không phân định. Tiêu đề mở rộng tham chiếu thông tin trong DO mục tiêu. Một tiêu đề mở rộng hoàn toàn phải được suy ra từ DO mục tiêu theo thủ tục sau:
a) DO ban đầu không được tham chiếu:
Nếu tiêu đề mở rộng được gắn thẻ bằng
1) '4D’, xóa bỏ thẻ, trường giá trị và độ dài.
2) '5F60' hoặc ‘5F61‘, xóa bỏ trường giá trị và thay thế trường độ dài bằng '00’.
b) DO ban đầu được tham chiếu mà không bị cắt bớt:
Xóa bỏ trường giá trị. Nếu tiêu đề mở rộng được gắn thẻ bằng
1) '4D', thay thế trường độ dài bằng ‘00'
2) ‘5F60’ hoặc '5F61’, thay thế trường độ dài bằng '80’.
c) DO ban đầu được tham chiếu bị cắt cụt
Xóa bỏ trường giá trị và thay thế trường độ dài bằng chỉ dấu cắt cụt (xem 8.4.6)
d) DO được xây dựng không được tham chiếu một chút nào
Xóa bỏ trường giá trị và thay thế trường độ dài bằng ‘00'.
e) DO được xây dựng được tham chiếu toàn bộ
Xóa bỏ trường giá trị và thay thế trường độ dài bằng ‘80’
f) DO được xây dựng mà phần thông tin được tham chiếu
Điều chỉnh giá trị của trường độ dài theo kết quả của việc áp dụng các thủ tục trên.
Như được thể hiện trong F.2, tham chiếu rõ ràng của DO mà không có gì được tham chiếu là 0 cần thiết, thậm chí khi một số phiên bản của DO như vậy tồn tại trong khuôn mẫu được cho. Tiêu chuẩn này cho phép loại bỏ tham chiếu không sử dụng.
8.4.6 Giải tiêu đề mở rộng
Để giải tiêu đề mở rộng, chuỗi byte tham chiếu cần được xây dựng như sau.
- Nếu thẻ biểu thị một mã hóa ban đầu, khi đó cặp trường thẻ và trường độ dài được thay thế bằng dữ liệu được thay thế bằng thẻ. Nếu tiêu đề mở rộng được gắn thẻ bằng ‘4D’, độ dài '00' nghĩa là phần tử/DO hoàn thiện được bao gồm trong chuỗi byte. Nếu tiêu đề mở rộng được gắn thẻ bằng '5F60’ hoặc '5F61’, độ dài '80’ có nghĩa là phần tử/DO hoàn thiện được bao gồm trong chuỗi byte. Độ dài không phải là '00’ trong tiêu đề mở rộng được gắn thẻ bằng '4D', không phải là ‘80’ trong tiêu đề mở rộng được gắn thẻ bằng ‘5F60’ hoặc ‘5F61’, biểu thị số tối đa các byte dữ liệu được phục hồi và do vậy có thể đòi hỏi cắt cụt như được xác định trong 8.4.4. Nếu chỉ báo cắt cụt biểu thị nhiều byte hơn sẵn có trong DO, cách xử lý phụ thuộc vào gắn thẻ:
- Dưới thẻ '4D’, nằm ngoài phạm vi của tiêu chuẩn này.
- Dưới thẻ '5F60’ và 5F61’ tiêu đề mở rộng không hiệu lực. Nếu được sử dụng trong APDU lệnh, lệnh phải bị không chấp nhận bởi SW1-SW2 = ‘6985’.
- Thẻ biểu thị Bảng mã được xây dựng theo sau bởi độ dài không bằng 0, ngoại trừ ‘80’, giới thiệu trường giá trị tiếp sau là danh sách tiêu đề mở rộng. Thẻ biểu thị Bảng mã được xây dựng theo sau bởi độ dài bằng 0 bị bỏ qua. Thẻ biểu thị Bảng mã được xây dựng theo sau bởi ‘80’ có nghĩa là DO được xây dựng hoàn toàn/khuôn mẫu hoàn thiện được bao gồm trong chuỗi byte.
- Thẻ bỏ qua các phần tử của tiêu đề mở rộng không hợp với cấu trúc mục tiêu.
Vì lý do an toàn, thẻ có thể không chấp nhận lệnh SW1-SW2 = '6985’ do thiếu tính nhất quán giữa cấu trúc được sử dụng trong trường dữ liệu lệnh và nội dung của thẻ. Điều này có thể làm mất hiệu lực thuộc tính an toàn.
Chuỗi byte bao gồm:
- Trường giá trị của DO ban đầu, có thể bị cắt cụt theo độ dài biểu thị (trường hợp 1), hoặc
- DO ban đầu, có thể bị cắt cụt theo độ dài biểu thị, và được lồng trong khuôn mẫu riêng, độ dài của nó tuân thủ theo quy tắc BER-TLV (trường hợp 2).
- Nếu xuất hiện, độ dài ’80’ phải được thay thế bằng độ dài thực tế. DO được xây dựng hoàn toàn/khuôn mẫu hoàn thiện được bao gồm trong chuỗi byte.
Mã hóa chuỗi byte tham chiếu, được đặt tên là DO (có khả năng được xây dựng) hoặc kết nối các phần tử dữ liệu (có khả năng bị cắt cụt), được biểu thị:
- Bằng mã INS thích hợp (lẻ/chẵn)
- Hoặc bằng thông số lệnh thích hợp, ví dụ hoặc mã hóa thích hợp trường dữ liệu (hoặc được xây dựng cho các cái bao gồm DO hoặc nguyên thủy đối với các cái chứa phần tử dữ liệu).
- Hoặc bằng cách gắn thẻ danh sách tiêu đề mở rộng theo thẻ khác ‘4D’, như được thể hiện trong 8.4.8 và lệnh PERFORM SECURITY OPERATION (xem TCVN 11167-8 (ISO/IEC 7816-8)).
8.4.7 Giải danh sách tiêu đề mở rộng
Chuỗi byte được tham chiếu bằng danh sách tiêu đề mở rộng là kết nối của chuỗi byte được tham chiếu bằng các tiêu đề mở rộng, theo cùng trật tự như trong danh sách tiêu đề mở rộng. Khi phân tích danh sách tiêu đề mở rộng:
- Độ phân tích của một tiêu đề mở rộng phải được theo sau bởi độ phân tích của tiêu đề mở rộng tiếp theo nếu có.
- Trật tự trong chuỗi byte vì vậy được xác định theo trật tự của các tiêu đề mở rộng trong danh sách tiêu đề mở rộng mà hợp với trật tự trong mục tiêu (khuôn mẫu) để tránh vấn đề sau: như trong phân tích của tiêu đề mở rộng, thẻ bỏ qua các phần tử (các tiêu đề mở rộng) của danh sách tiêu đề mở rộng không tương thích cấu trúc mục tiêu (khuôn mẫu).
8.4.8 Trình bao
Dưới thẻ '63', DO liên ngành này phải lồng hai hoặc nhiều DO.
a) Do đầu tiên là tham chiếu gián tiếp bắt buộc. Chỉ một tham chiếu gián tiếp được cho trong trình bao. Nó là lựa chọn giữa:
1) Danh sách phần tử (thẻ ‘5F41’ hoặc ‘53’);
2) DO lồng danh sách phần tử (thẻ '73');
3) Danh sách thẻ (thẻ ‘5C’);
4) Danh sách tiêu đề (thẻ ‘5D’);
5) Danh sách tiêu đề mở rộng (thẻ '4D');
6) Danh sách tiêu đề mở rộng tham chiếu chuỗi byte không có cấu trúc trạng thái (thẻ ‘5F60‘);
7) Danh sách tiêu đề mở rộng tham chiếu một DO hoặc kết nối của các DO (thẻ '5F61');
8) Chuỗi byte đồng nhất với dữ liệu hồi đáp của lệnh thực hiện cuối cùng (thẻ ‘80', DO trống), xem bên dưới.
Có thể theo sau bởi DO’7F71' bộ lọc (xem 11.4.2.3) trong trường hợp danh sách thẻ hoặc danh sách tiêu đề mở rộng. Sử dụng DO'5F60‘ hoặc sử dụng DO'5F61’ cho phép bỏ qua chỉ báo DO ban đầu theo 8.4.5.
b) Số dư của trường giá trị trình bao phải là:
1) Hoặc định danh ứng dụng DO’4F' (xem 12.2.3). Tham chiếu gián tiếp có hiệu lực trong khuôn mẫu hiện hành sau khi lựa chọn ứng dụng.
2) Hoặc tham chiếu tệp DO'51' (xem 7.3.2 và Bảng 7). Tham chiếu gián tiếp có hiệu lực trong tệp được lựa chọn; nếu nó trống, nó có hiệu lực trong khuôn mẫu hiện hành.
3) Hoặc DO'4F’ theo sau bởi DO'51’ không trống tham chiếu tệp phải tồn tại trong ứng dụng. Tham chiếu gián tiếp có hiệu lực trong tệp này.
4) Hoặc một DO'52' (lệnh thực hiện). Tham chiếu gián tiếp có hiệu lực trong dữ liệu hồi đáp của lệnh này.
5) Hoặc một số DO’52’. Lệnh thực hiện được xử lý theo thứ tự trình bày. Tham chiếu gián tiếp có hiệu lực trong dữ liệu hồi đáp của lệnh cuối cùng hoặc trong VA tạm thời được thiết lập theo lệnh này.
Giải trình bao:
- Bắt đầu bằng giải phần thứ hai của trình bao, là cấu trúc tiêu chuẩn hoặc APDU hồi đáp. Nó kết thúc ở đó nếu tham chiếu gián tiếp là DO’80’.
- Nếu tham chiếu gián tiếp không phải là DO’80’, nó kết thúc bằng giải tham chiếu gián tiếp được xác định trong 8.4.3, 8.4.4, 8.4.5.
Ví dụ: DO trình bao sau lồng danh sách thẻ và một lệnh thực hiện.
{'63'-L-{'5C’-L-(Tag 1-Tag2-Tag3)}-{'52'-L-Command APDU}}
8.4.9 Trình bao được gắn thẻ
Dưới thẻ ‘63’, DO mở rộng khuôn mẫu trong thẻ mà hỗ trợ giải tự động trình bao.
DO đầu tiên trong trường giá trị của DO’63’ trình bao được gắn thẻ là DO’XY’ trống. Thẻ 'XY’ có hiệu lực trong GET DATA hoặc GET NEXT DATA C-RP khi khuôn mẫu mở rộng là khuôn mẫu hiện hành; 'XY' tôn trọng sơ đồ phân phối thẻ hiện hành. Số dư giá trị là giá trị của DO trình bao (xem 8.4.8). Kết quả của giải tham chiếu gián tiếp là giá trị của DO’XY' khi được giải quyết trong khuôn mẫu nó mở rộng (xem 8.2.2):
- Nếu trình bao tham chiếu DO’ZT‘, giá trị của DO’XY' là giá trị của DO'ZT' này (xem phụ lục G). Trình bao chỉ tham chiếu một DO, có khả năng được xây dựng.
- Nếu trình bao tham chiếu một chuỗi byte, giá trị của DO’XY' là chuỗi byte đó.
Chú thích 1: Cả ký hiệu ‘XY’ và ‘ZT’ đều không loại bỏ việc sử dụng thẻ bao gồm nhiều byte.
Chú thích 2: Giải tự động trình bao được gắn thẻ tạo ra trong khuôn mẫu hiện hành DO ảo. Thẻ của DO ảo này được lấy từ DO đầu tiên trong trình bao được gắn thẻ. Trường độ dài của DO này mã hóa độ dài của nội dung thao tác gián tiếp được giải. Giá trị của DO là nội dung của chính nó (xem ví dụ trong phụ lục G).
9 Cấu trúc an toàn
9.1 Tổng quát
Điều này mô tả trạng thái an toàn, thuộc tính an toàn và cơ chế an toàn.
Trạng thái an toàn - trạng thái an toàn mô tả trạng thái hiện hành có khả năng đạt được trên kênh lô-gic sau khi giao diện vật lý kích hoạt (xem 5.1) hoặc thiết lập lại kênh lô-gic và/hoặc thực hiện một hoặc một vài C-RP trên kênh lô-gic này có khả năng thực hiện thủ tục xác thực. Trạng thái an toàn cũng có thể dẫn đến hoàn thành thủ tục an toàn liên quan đến nhận dạng các thực thể liên quan, nếu có, ví dụ bằng cách chứng minh mật lệnh (ví dụ sử dụng lệnh VERIFY) hoặc khóa (ví dụ sử dụng lệnh GET CHALLENGE theo sau lệnh EXTERNAL AUTHENTICATE, hoặc sử dụng chuỗi lệnh GENERAL AUTHENTICATE) hoặc bằng thông điệp an toàn (ví dụ xác thực thông điệp). Năm trạng thái an toàn được xem xét.
- Trạng thái an toàn chung - trong thẻ sử dụng trật tự các DF, nó có thể được sửa đổi bằng cách hoàn thành thủ tục xác thực liên quan đến MF (ví dụ xác thực thực thể bằng mật lệnh hoặc khóa đi kèm với ứng dụng); nó có thể được duy trì, phục hồi hoặc bị mất do lựa chọn ứng dụng; sự sửa đổi này có thể chỉ liên quan đến ứng dụng mà thủ tục xác thực thuộc về. Nếu kênh lô-gic áp dụng, khi đó trạng thái an toàn ứng dụng cụ thể có thể phụ thuộc vào kênh lô-gic.
- Trạng thái an toàn tệp cụ thể - nó có thể được sửa đổi bằng cách hoàn thành thủ tục xác thực liên quan đến DF (ví dụ xác thực thực thể bằng mật lệnh hoặc khóa đi kèm với DF cụ thể); nó có thể được duy trì, phục hồi hoặc bị mất do lựa chọn tệp; sự sửa đổi này có thể chỉ liên quan đến các tệp trong ứng dụng mà thủ tục xác thực thuộc về. Nếu kênh lô-gic áp dụng, khi đó trạng thái an toàn tệp cụ thể có thể phụ thuộc vào kênh lô-gic.
- Trạng thái an toàn DO cụ thể - nó có thể được sửa đổi bằng cách hoàn thành thủ tục xác thực liên quan đến DO; nó có thể được duy trì, phục hồi hoặc bị mất do lựa chọn; sự sửa đổi này có thể chỉ liên quan đến DO trong ứng dụng mà thủ tục xác thực thuộc về. Nếu kênh lô-gic áp dụng, khi đó trạng thái an toàn DO cụ thể có thể phụ thuộc vào kênh lô-gic.
- Trạng thái an toàn lệnh cụ thể - nó chỉ tồn tại trong khi xử lý lệnh sử dụng thông điệp an toàn và xác thực bao hàm; lệnh như vậy có thể khiến cho trạng thái an toàn không đổi.
Thuộc tính an toàn - các thuộc tính an toàn, khi chúng tồn tại, xác định hành động nào được cho phép và theo điều kiện nào. Thuộc tính an toàn của cấu trúc phụ thuộc vào:
- Loại của chúng (DF, EF hoặc DO);
- CP tùy chọn trong DO'62' khuôn mẫu CP và/hoặc trong cấu trúc cha của nó;
Thuộc tính an toàn cũng có thể kết hợp với các lệnh, DO và Bảng và hiển thị. Đặc biệt, thuộc tính an toàn có thể
- Xác định trạng thái an toàn của thẻ có hiệu lực trước khi truy cập dữ liệu;
- Ngăn cản truy cập dữ liệu đến hàm cụ thể (ví dụ chỉ đọc) nếu thẻ có trạng thái cụ thể;
- Xác định hàm an toàn nào được thực hiện để đạt được trạng thái an toàn cụ thể.
Cơ chế an toàn - điều này xem xét cơ chế an toàn sau.
- Xác thực thực thể bằng mật lệnh - thẻ so sánh dữ liệu nhận được từ mọi đối tượng bên ngoài với dữ liệu mật bên trong. Cơ chế này có thể được sử dụng để bảo vệ quyền của người sử dụng.
- Xác thực thực thể bằng khóa - thực thể xác thực phải chứng minh sự nhận biết về khóa riêng hoặc bí mật có liên quan trong thủ tục xác thực (ví dụ lệnh GET CHALLENGE theo sau bởi lệnh EXTERNAL AUTHENTICATE, chuỗi các lệnh GENERAL AUTHENTICATE).
- Xác thực dữ liệu - sử dụng dữ liệu trong, hoặc khóa bí mật hoặc khóa công khai, thẻ kiểm tra dữ liệu dư nhận được từ mọi đối tượng bên ngoài. Cách khác, sử dụng dữ liệu mật bên trong, hoặc khóa mật hoặc khóa riêng, thẻ tính phần tử dữ liệu (kiểm tra tổng mã hóa hoặc chữ ký số) và chèn nó trong dữ liệu được gửi ra mọi đối tượng bên ngoài. Cơ chế này có thể được sử dụng để bảo vệ quyền của nhà cung cấp.
- Mã hóa dữ liệu - sử dụng dữ liệu mật bên trong, hoặc khóa mật hoặc khóa riêng, thẻ giải mã mật mã nhận được trong trường dữ liệu. Cách khác, sử dụng dữ liệu mật bên trong, hoặc khóa mật hoặc khóa riêng, thẻ tính tài liệu mã hóa và chèn vào trong trường dữ liệu, có thể cùng với dữ liệu khác. Cơ chế này có thể được sử dụng để cung cấp dịch vụ bảo mật, ví dụ quản lý khóa và truy cập có điều kiện. Cùng với cơ chế tài liệu mã hóa, tính bảo mật dữ liệu có thể đạt được bằng cách giấu dữ liệu. Trong trường hợp này, thẻ tính chuỗi byte ẩn và bổ sung nó bằng lệnh loại trừ -or đối với byte nhận được từ hoặc được gửi tới mọi đối tượng bên ngoài. Cơ chế này có thể được sử dụng để bảo vệ tính riêng tư và là biện pháp đối phó với nhận dạng mẫu.
Kết quả xác thực có thể được ghi bên trong theo các yêu cầu ứng dụng.
9.2 Khuôn mẫu định danh cơ chế mật mã
Một hoặc nhiều DO'AC' định danh cơ chế mật mã có thể xuất hiện trong CP của bất kỳ DF (xem Bảng 10). Mỗi cái biểu thị rõ ràng ý nghĩa của tham chiếu cơ chế mật mã trong DF và hệ phân cấp của nó.
Khuôn mẫu bao gồm hai hoặc nhiều DO.
- DO đầu tiên là tham chiếu cơ chế mật mã, DO'80’ (xem Bảng 55).
- DO thứ hai là định danh đối tượng, DO'06', như được xác định trong ISO/IEC 8825-1. Đối tượng định danh là cơ chế mật mã được xác định hoặc đăng ký trong tiêu chuẩn, ví dụ tiêu chuẩn ISO. Ví dụ về cơ chế mật mã là thuật giải mã hóa (ví dụ ISO/IEC 18033), mã xác thực thông điệp (ví dụ ISO/IEC 9797), giao thức xác thực (ví dụ ISO/IEC 9798), chữ ký số (ví dụ ISO/IEC 9796 hoặc ISO/IEC 14888), thuật giải mã hóa được đăng ký (ví dụ ISO/IEC 9979), vv...
- Nếu xuất hiện, một hoặc nhiều DO tiếp theo (DO'06‘ hoặc DO’13’) hoặc định danh cơ chế được sử dụng bằng cơ chế trước đó (nghĩa là phương thức lựa chọn, ví dụ ISO/IEC 10116, hoặc hàm băm, ví dụ ISO/IEC 10118), hoặc thông số biểu thị (thẻ phụ thuộc vào cơ chế trước đó).
DO'13‘ đưa lại OID tương đối bắt rễ tại DO’06' gần nhất trước đấy như được xác định trong ISO/IEC 8825-1.
Ví dụ (xem giải thích trong phụ lục A và phụ lục B)
{‘AC’-'0B'-{'80’-'01’-‘01’}-{‘06’-‘06’-‘28818C710201’}}
Khuôn mẫu cùng với tham chiếu địa phương '01’ đối với thuật giải mã hóa đầu tiên trong ISO/IEC 18033-2 {‘AC’-'11’-{‘80’-‘01’-‘02’}-{‘06'-,05’-‘28CC460502’}-{'06’-'05’-‘28CF060303’}}
Định danh đối tượng đầu tiên tham chiếu cơ chế xác thực thứ hai trong ISO/IEC 9798. Định danh đối tượng thứ hai tham chiếu hàm băm chuyên dụng thứ ba trong ISO/IEC 18033-3. Vì vậy, khuôn mẫu kết hợp tham chiếu địa phương '02' đến GQ2 sử dụng SHA-1.
9.3 Thuộc tính an toàn
Điều này xác định mã dữ liệu liên quan đến thuộc tính an toàn, và hai định dạng kết buộc thuộc tính an toàn và đối tượng: định dạng khối dựa trên ánh xạ bit và định dạng mở rộng mà mở rộng định dạng khối bằng quản lý danh sách TLV. Định dạng mở rộng có thể sử dụng mã được xác định đối với định dạng khối dưới các vỏ bọc khác nhau.
9.3.1 Mục tiêu thuộc tính an toàn
Được tham chiếu theo thẻ ‘86’, '8B’, ‘8C', ‘8E’, '9C’, ‘A0’, ‘A1’, 'A3’, ‘AB’, thuộc tính an toàn có thể xuất hiện trong CP của bất kỳ tệp hoặc DO nào (xem Bảng 10). Bất kỳ đối tượng nào trong thẻ (ví dụ lệnh, tệp, DO, Bảng và hiển thị) có thể liên kết với hơn một thuộc tính an toàn và/hoặc với tham chiếu được bao gồm trong thuộc tính an toàn.
Trong môi trường SCQL (xem TCVN 11167-7 (ISO/IEC 7816-7), lệnh đối với ngôn ngữ hỏi thẻ cấu trúc), thuộc tính an toàn có thể được xác định trong hoạt động SCQL, ví dụ lệnh CREATE TABLE và CREATE VIEW. Nếu thuộc tính an toàn dựa trên mệnh đề này được sử dụng, khi đó chúng được truyền trong DO có thẻ ‘8B’, ‘8C’ hoặc ‘AB’ trong thông số thuộc tính an toàn của hoạt động SCQL.
Thuộc tính an toàn đối với DO BER-TLV được xác định trong 9.3.5. Thuộc tính an toàn đối với kênh lô-gic được xác định trong 9.3.7.
9.3.2 Định dạng khối
Trong định dạng khối, quy tắc truy cập bao gồm trường chế độ truy cập theo một hoặc nhiều byte điều kiện an toàn. Thuộc tính an toàn bao gồm một hoặc một số quy tắc truy cập kết nối.
Nếu một số quy tắc truy cập xuất hiện trong trường giá trị DO’8C’ hoặc ‘9C’ (xem Bảng 10), chúng đại diện cho điều kiện OR.
Trường chế độ truy cập - trường chế độ truy cập bao gồm hoặc một hoặc nhiều byte. Nếu trường chế độ truy cập bao gồm
- Một AMB, khi đó bit b7 đến b1 biểu thị hoặc không có byte điều kiện an toàn khi đặt là 0, hoặc có byte điều kiện an toàn trong cùng thứ tự (bit b7 đến b1) khi đặt là 1. Khi bit b8 được đặt là 1, bit b7 đến b4 có thể được sử dụng cho lệnh bổ sung, ví dụ lệnh ứng dụng cụ thể.
- Nhiều byte, byte đầu tiên của trường chế độ truy cập được đặt là ‘00’. Byte thứ hai và khả năng byte hơn nữa (xem Chú thích bên dưới) trong trường chế độ truy cập là AMB. Mỗi AMB biểu thị trong bit b8 liệu nó có là AMB cuối cùng hay không. Bit b8 được đặt là 0 trong AMB cuối cùng. Bit b8 được đặt là 1 trong tất cả các AMB khác. Bit b6 đến b1 biểu thị hoặc không có byte điều kiện an toàn khi đặt là 0, hoặc có byte điều kiện an toàn trong cùng thứ tự (bit b6 đến b1) khi đặt là 1 và trong cùng thứ tự như AMB. Khi bit b7 được đặt là 1, bit b6 đến b1 có thể được sử dụng cho lệnh bổ sung, ví dụ lệnh ứng dụng cụ thể.
Chú thích: AMB hơn nữa không được xác định trong ISO/IEC 7816-4, và có thể được xác định trong bản in trong tương lai hoặc các phần khác của tiêu chuẩn này.
Bảng 17 đến Bảng 29 xác định byte chế độ truy cập riêng cho DF, EF, DO và Bảng và hiển thị.
Bảng 17 - Mã hóa byte đơn trong trường chế độ truy cập đối với DF
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
0 | - | - | - | - | - | - | - | Bit b7 đến b1 theo Bảng này |
1 | - | - | - | - | - | - | - | Bit b3 đến b1 theo Bảng này (bit b7 đến b4 độc quyền) |
0 | 1 | - | - | - | - | - | - | DELETE FILE (bản thân) |
0 | - | 1 | - | - | - | - | - | TERMINATE CARD USAGE (MF), TERMINATE DF |
0 | - | - | 1 | - | - | - | - | ACTIVATE FILE |
0 | - | - | - | 1 | - | - | - | DEACTIVATE FILE |
- | - | - | - | - | 1 | - | - | CREATE FILE (tạo DF) |
- | - | - | - | - | - | 1 | - | CREATE FILE (tạo EF) |
- | - | - | - | - | - | - | 1 | DELETE FILE (con) |
Bảng 18 - Mã hóa byte đơn trong trường chế độ truy cập đối với EF
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
0 | - | - | - | - | - | - | - | Bit b7 đến b1 theo Bảng này |
1 | - | - | - | - | - | - | - | Bit b3 đến b1 theo Bảng này (bit b7 đến b4 độc quyền) |
0 | 1 | - | - | - | - | - | - | DELETE FILE |
0 | - | 1 | - | - | - | - | - | TERMINATE EF |
0 | - | - | 1 | - | - | - | - | ACTIVATE FILE, ACTIVATE RECORD |
0 | - | - | - | 1 | - | - | - | DEACTIVATE FILE, DEACTIVATE RECORD |
- | - | - | - | - | 1 | - | - | WRITE BINARY, WRITE RECORD, APPEND RECORD |
- | - | - | - | - | - | 1 | - | UPDATE BINARY, UPDATE RECORD, ERASE BINARY, ERASE RECORD |
- | - | - | - | - | - | - | 1 | READ BINARY/RECORD, SEARCH BINARY/RECORD, COMPARE BINARY/RECORD |
Bảng 19 - Mã hóa byte đơn trong trường chế độ truy cập đối với DO
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
0 | - | - | - | - | - | - | - | Bit b7 đến b1 theo Bảng này |
1 | - | - | - | - | - | - | - | Bit b3 đến b1 theo Bảng này (bit b7 đến b4 độc quyền) |
0 | 1 | - | - | - | - | - | - | DELETE DATA |
0 | - | 1 | - | - | - | - | - | MANAGE DATA Hủy bỏ |
0 | - | - | 1 | - | - | - | - | MANAGE DATA Kích hoạt |
0 | - | - | - | 1 | - | - | - | MANAGE DATA Giải hoạt |
- | - | - | - | - | 1 | - | - | MANAGE SECURITY ENVIRONMENT |
- | - | - | - | - | - | 1 | - | PUT DATA/PUT NEXT DATA/UPDATE DATA |
- | - | - | - | - | - | - | 1 | GET DATA/GET NEXT DATA/COMPARE DATA |
Bảng 20 - Mã hóa byte đơn trong trường chế độ truy cập đối với đối tượng an toàn
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
0 | - | - | - | - | - | - | - | Bit b7 đến b1 theo Bảng này |
1 | - | - | - | - | - | - | - | Bit b3 đến b1 theo Bảng này (bit b7 đến b4 độc quyền) |
0 | x | - | - | - | - | - | - | 0 (mọi giá trị khác là RFU) |
0 | - | 1 | - | - | - | - | - | TERMINATEa |
0 | - | - | 1 | - | - | - | - | ACTIVATEa |
0 | - | - | - | 1 | - | - | - | DEACTIVATEa |
- | - | - | - | - | x | - | - | 0 (mọi giá trị khác là RFU) |
- | - | - | - | - | - | 1 | - | PUT/UPDATEa |
- | - | - | - | - | - | - | 1 | GETa |
a mô tả trong định dạng in nghiêng có nghĩa là hoạt động và không phải là lệnh |
Bảng 21 - Mã hóa byte đơn trong trường chế độ truy cập đối với Bảng và hiển thị
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
0 | - | - | - | - | - | - | - | Bit b7 đến b1 theo Bảng này |
CREATE USER, DELETE USER1 | - | - | - | - | - | - | - | Bit b3 đến b1 theo Bảng này (bit b7 đến b4 độc quyền) |
01 | - | 1 | - | - | - | - | - | GRANT, REVOKE |
0 | - | - | 1 | - | - | - | - | CREATE TABLE, CREATE VIEW, CREATE DICTIONARY |
0 | - | - | - | 1 | - | - | - | DROP TABLE, DROP VIEW |
0 | - | - | - | - | 1 | - | - | INSERT |
- | - | - | - | - | - | 1 | - | UPDATE, DELETE |
- | - | - | - | - | - | - | 1 | FETCH |
Bảng 22 - Mã hóa byte thứ hai trong trường chế độ truy cập (AMB đầu tiên) đối với DF
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
0 | - | - | - | - | - | - | - | Byte cuối cùng của trường chế độ truy cập |
1 | - | - | - | - | - | - | - | Byte khác theo trong trường chế độ truy cập |
- | 0 | - | - | - | - | - | - | Bit b6 đến b1 theo tiêu chuẩn này |
- | 1 |
| - | - | - | - | - | Bit b6 đến b1 độc quyền |
- | 0 | 1 | - | - | - | - | - | TERMINATE CARD USAGE (MF), TERMINATE DF |
- | 0 | - | 1 | - | - | - | - | ACTIVATE FILE |
- | 0 | - | - | 1 | - | - | - | DEACTIVATE FILE |
- | 0 | - | - | - | 1 | - | - | CREATE FILE (tạo DF) |
- | 0 | - | - | - | - | 1 | - | CREATE FILE (tạo EF) |
- | 0 | - | - | - | - | - | 1 | DELETE FILE |
Bảng 23 - Mã hóa byte thứ ba trong trường chế độ truy cập (AMB thứ hai) đối với DF
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
x | x | - | - | - | - | - | - | Cùng mã và ý nghĩa như trong Bảng 22 |
- | 0 | 1 | - | - | - | - | - | DELETE FILE (bản thân) |
- | 0 | - | 1 | - | - | - | - | APPLICATION MANAGEMENT REQUEST |
- | 0 | - | - | 1 | - | - | - | REMOVE APPLICATION |
- | 0 | - | - | - | x | x | x | 000 (mọi giá trị khác là RFU) |
Bảng 24 - Mã hóa byte thứ tư trong trường chế độ truy cập (AMB thứ ba) đối với DF
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
x | x | - | - | - | - | - | - | Cùng mã và ý nghĩa như trong Bảng 22 |
- | 0 | x | x | x | x | - | - | 000 (mọi giá trị khác là RFU) |
- | 0 | - | - | - | - | 1 | - | Đối tượng dữ liệu tạo lệnh (xem TCVN 11167-9 (ISO/IEC 7816-9)) |
- | 0 | - | - | - | - | - | 1 | DELETE DATA |
Bảng 25 - Mã hóa byte thứ hai trong trường chế độ truy cập (AMB đầu tiên) đối với EF
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
x | x | - | - | - | - | - | - | Cùng mã và ý nghĩa như trong Bảng 22 |
- | 0 | 1 | - | - | - | - | - | TERMINATE EF |
- | 0 | - | 1 | - | - | - | - | ACTIVATE FILE, ACTIVATE RECORD |
- | 0 | - | - | 1 | - | - | - | DEACTIVATE FILE, DEACTIVATE RECORD |
- | 0 | - | - | - | 1 | - | - | APPEND RECORD |
- | 0 | - | - | - | - | 1 | - | UPDATE BINARY, UPDATE RECORD |
- | 0 | - | - | - | - | - | 1 | READ BINARY/RECORD, SEARCH BINARY/RECORD |
Bảng 26 - Mã hóa byte thứ ba trong trường chế độ truy cập (AMB thứ hai) đối với EF
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
x | x | - | - | - | - | - | - | Cùng mã và ý nghĩa như trong Bảng 22 |
- | 0 | 1 | - | - | - | - | - | DELETE EF |
- | 0 | - | x | x | - | - | - | 00 (mọi giá trị khác là RFU) |
- | 0 | - | - | - | 1 | - | - | WRITE BINARY, WRITE RECORD |
- | 0 | - | - | - | - | 1 | - | ERASE BINARY, ERASE RECORD |
- | 0 | - | - | - | - | - | 1 | COMPARE BINARY/RECORD |
Bảng 27 - Mã hóa byte thứ tư trong trường chế độ truy cập (AMB thứ ba) đối với EF
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
x | x | - | - | - | - | - | - | Cùng mã và ý nghĩa như trong Bảng 22 |
- | 0 | x | x | x | x | - | - | 0000 (mọi giá trị khác là RFU) |
- | 0 | - | - | - | - | 1 | - | Đối tượng dữ liệu tạo lệnh (xem TCVN 11167-9 (ISO/IEC 7816-9)) |
- | 0 | - | - | - | - | - | 1 | DELETE DATA |
Bảng 28 - Mã hóa byte thứ hai trong trường chế độ truy cập (AMB đầu tiên) đối với DO
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
x | x | - | - | - | - | - | - | Cùng mã và ý nghĩa như trong Bảng 22 |
- | 0 | 1 | - | - | - | - | - | MANAGE DATA Hủy bỏ |
- | 0 | - | 1 | - | - | - | - | MANAGE DATA Kích hoạt |
- | 0 | - | - | 1 | - | - | - | MANAGE DATA Giải hoạt |
- | 0 | - | - | - | 1 | - | - | MANAGE SECURITY ENVIRONMENT |
- | 0 | - | - | - | - | 1 | - | PUT DATA/UPDATE DATA |
- | 0 | - | - | - | - | - | 1 | GET DATA/GET NEXT DATA |
Bảng 29 - Mã hóa byte thứ ba trong trường chế độ truy cập (AMB thứ hai) đối với DO
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa |
x | x | - | - | - | - | - | - | Cùng mà và ý nghĩa như trong Bảng 22 |
- | 0 | 1 | - | - | - | - | - | DELETE DATA |
- | 0 | - | 1 | - | - | - | - | Đối tượng dữ liệu tạo lệnh (xem TCVN 11167-9 (ISO/IEC 7816-9)) |
- | 0 | - | - | x | x | - | - | 00 (mọi giá trị khác là RFU) |
- | 0 | - | - | - | - | 1 | - | PUT NEXT DATA |
- | 0 | - | - | - | - | - | 1 | COMPARE DATA |
Byte điều kiện an toàn - mỗi byte điều kiện an toàn xác định cơ chế an toàn nào cần thiết thích hợp với quy tắc truy cập. Bảng 30 thể hiện byte điều kiện an toàn. Bit b8 đến b5 biểu thị điều kiện an toàn yêu cầu. Nếu không phải là tất cả bằng nhau, bit b4 đến b1 định danh:
- Hoặc môi trường an toàn (xem 10.3.3, SEID từ '01' đến '0E‘).
- Hoặc DO’AD’ (xem 9.3.6) theo số của nó từ ‘01' đến '0E'. DO'AD’ là CP dưới cùng DO’62' là thuộc tính an toàn.
Bảng 30 - Mã hóa byte điều kiện an toàn
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 | Ý nghĩa | |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Luôn luôn | |
1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | Không bao giờ | |
- | - | - | - | 0 | 0 | 0 | 0 | Không tham chiếu với môi trường an toàn, không tham chiếu với DO'AD' | |
- | - | - | - | Không phải là tất cả bằng nhau | Dưới thẻ '8C'1 hoặc ‘9E’2 | SEID (xem 10.3.3) | |||
Dưới thẻ '9C’1 hoặc ‘9D’2 | Số chuỗi của SPT DO’AD' (xem Bảng 38) | ||||||||
0 |