TIểu luận môn CHỨNG THỰC SỐ TÌM HIỂU CÔNG NGHỆ PKCS 15 - Pdf 24

TÌM HIỂU CÔNG NGHỆ PKCS #15
Giảng viên hướng dẫn : Th.s Phạm Xuân Khánh 1
LỜI NÓI ĐẦU
PKCS #15 là một bước đầu tiên để đảm bảo rằng các chủ thẻ (token-holder) sẽ
có thể sử dụng các thẻ mật mã của họ để tự nhận diện điện tử đến bất kỳ ứng dụng
nào bất kể giao diện thẻ ứng dụng. Mục tiêu cuối cùng nhằm cho phép người giữ thẻ
có thể sử dụng bất kỳ thẻ nào từ nhà sản xuất bất kỳ để xác định chính mình cho bất
kỳ ứng dụng đang chạy trên nền tảng nào .Mặc dù đã cố gắng nhưng do giới hạn về
thời gian , nhóm chúng em xin đưa ra các đặc điểm chung về chuẩn PKCS #15 v1.1
cũng như cách tổ chức định dạng file trên các token PKCS #15 .Tài liệu này chủ yếu
được tham khảo từ tập tin pkcs#15v1_1.doc của RSA Laboratories .Nội dung cú
pháp ANS.1 của các tập tin thư mục trên token không được trình bày và chúng ta có
thể tham khảo trong tập tin pkcs#15v1_1.doc trên trang chủ của RSA .
Phạm Minh Hùng 07520163
Nguyễn Mậu Lĩnh 07520479
TÌM HIỂU CÔNG NGHỆ PKCS #15
Giảng viên hướng dẫn : Th.s Phạm Xuân Khánh 2
1.Giới thiệu
1.1 Bối cảnh
Thẻ mật mã (Cryptograpic token) , chẳng hạn như thẻ vi mạch ( Smart Card hoặc IC
card ) thực chất là các nền tảng tính toán an toàn lý tưởng để cung cấp mức độ an
ninh và chức năng bảo mật cho các ứng dụng. Chúng có thể xử lý thông tin xác thực
như chứng thư số ,quyền hạn và các khóa mật mã. Hơn nữa, chúng cung cấp khả
năng lưu trữ an toàn và các cơ sở tính toán cho các thông tin nhạy cảm như:
 private key và key fragments ;
 số tài khoản và giá trị lưu trữ ;
 mật khẩu và mã bí mật chia sẻ ;
 Quyền hạn và quyền cá nhân .
Đồng thời, nhiều token này cung cấp một khả năng xử lý tách biệt sử dụng thông tin
này mà không cần thể hiện nó trong môi trường máy chủ nơi chứa đựng nguy cơ
tiềm tàng từ các mã nguy hiểm ( virus,Trojan, vv ). Điều này trở nên cực kỳ quan

 cho phép khả năng tương tác giữa các thành phần chạy trên các nền tảng khác
nhau (platform neutral);
 cho phép các ứng dụng tận dụng lợi thế của các sản phẩm và các thành phần
từ nhiều nhà sản xuất (vendor neutral );
 cho phép sử dụng các tiến bộ trong công nghệ mà không cần cần viết lại phần
mềm mức ứng dụng ( aplication neutral );
 duy trì nhất quán với hiện tại, các tiêu chuẩn liên quan đồng thời mở rộng
chúng chỉ khi cần thiết và thiết thực .
Như một ví dụ thực tế, người giữ một thẻ IC chứa một chứng thư số sẽ có thể xuất
trình thẻ cho bất kỳ ứng dụng đang chạy trên bất kỳ host nào và sử dụng thành công
thẻ để trình diện chứng thư được chứa đến ứng dụng.
Bước đầu tiên để đạt được những mục tiêu này, tài liệu này chỉ định một định dạng
tập tin và thư mục để lưu trữ thông tin liên quan đến an ninh trên thẻ mật mã. Nó có
các đặc điểm sau:
 cấu trúc động cho phép triển khai trên nhiều phương tiện truyền thông ;
 cho phép nhiều ứng dụng cư trú trên thẻ ( nhiều ứng dụng EID );
 hỗ trợ lưu trữ bất kỳ loại đối tượng ( khóa , chứng thư và dữ liệu );
 hỗ trợ nhiều mã PIN bất cứ khi nào token hỗ trợ .
Nói chung, một nỗ lực đã được thực hiện để đủ mềm dẻo cho phép nhiều loại token
khác nhau, trong khi vẫn bảo toàn các yêu cầu về tính tương hợp. Một yếu tố quan
trọng trong trường hợp của thẻ IC là khái niệm " Directory Files" ( Phần 5.5 ) cung
TÌM HIỂU CÔNG NGHỆ PKCS #15
Giảng viên hướng dẫn : Th.s Phạm Xuân Khánh 4
cấp một lớp gián tiếp giữa các đối tượng trên thẻ và định dạng thực tế của các đối
tượng này.
1.2 Mô hình truy cập thông tin
Thông tin trên token PKCS #15 có thể được đọc khi một token chứa đựng thông tin
này, và được sử dụng bởi một thông dịch viên PKCS #15 là một phần của môi trường
phần mềm, ví dụ trong hình dưới đây :
Hình 1 – Nhúng một thông dịch viên PKCS#15 (ví dụ)

sách các ứng dụng được hỗ trợ bởi thẻ và các thành phần dữ liệu tùy chọn liên quan .
 Tập tin cơ bản (elementary file ) : Tập các đơn vị dữ liệu hoặc các bảng ghi chia
sẻ chung một bộ định dang tập tin và không thể là cha của một tập tin khác .
 Bộ định dang tập tin (file identifier ) : Giá trị nhị phân 2 bytes để định địa chỉ
một tập tin trên smart card.
 Tập tin chính (master file ) : Tập tin chuyên dụng duy nhất bắt buộc đại diện
cho gốc cấu trúc .
 Tập tin thư mục đối tượng (object directory file) : Tập tin cơ bản chứa các
thông tin về các tập tin thư mục khác trên ứng dụng PKCS#15 .
 Số nhận dạng cá nhân (Personal identification number ): 4 đến 8 số được nhận
vào bởi chủ thẻ để kiếm tra mà chủ thẻ được quyền hạn sử dụng thẻ .Còn được gọi là
CHV (CardHolder Verification) .
 Tập tin thư mục khóa cá nhân ( private key directory file ) :Tập tin tùy chọn cơ
bản chứa thông tin về các khóa cá nhân được biết đến ứng dụng PKCS#15 .
 Tập tin thư mục khóa công khai (public key directory file ) :Tập tin tùy chọn cơ
bản chứa thông tin về các khóa công khai được biết đến ứng dụng PKCS#15 .
 Token : Thiết bị có khả năng di động lưu trữ dữ liệu liên tục .
3. Ký hiệu , thuật ngữ viết tắt
3.1 Ký hiệu
DF(x) Dedicated file x
EF(x) Elementary file x
TÌM HIỂU CÔNG NGHỆ PKCS #15
Giảng viên hướng dẫn : Th.s Phạm Xuân Khánh 6
3.2 Thuật ngữ viết tắt
AID application provider identifier
AODF authentication object directory file
APDU application protocol data unit
BCD binary-coded decimal
CDF certificate directory file
DF dedicated File

các đối tượng cá nhân được xác định bằng đối tượng xác thực ( bao gồm các thủ tục
xác thực ). Điều kiện truy cập ( từ quan điểm của chủ thẻ ) là đạt được với thông tin
người dùng tri thức hoặc sinh trắc . Trong trường hợp khác, chẳng hạn như khi PKCS
#15 được thực hiện trong phần mềm, các đối tượng cá nhân có thể được bảo vệ
chống lại các truy cập trái phép bằng mật mã. Các đối tượng công khai không được
bảo vệ từ truy cập đọc. Cho dù chúng được bảo vệ chống lại các sửa đổi hay không
phụ thuộc vào việc thực hiện cụ thể.
5. Định dạng tập tin thẻ IC
5.1 Tổng quan
Private Key
(structural)
Secret Key
(structural)
Public Key
(structural)
X.509
Certificate
(structural)
Other
Certificates
(structural)
External data
objects
(structural)
PIN Object
(structural)
Biometric
Template
(structural)
Key Object

Other
DFs/EFs
Chú ý – Cho mục đích tài liệu này , EF(DIR) chỉ cần thiết trên các
thẻ IC mà không hỗ trợ lựa chọn ứng dụng trực tiếp được định nghĩa
trong ISO/IEC 7816-5 hoặc khi nhiều ứng dụng PKCS #15 tồn tại
trên một thẻ đơn
Hình 3 : Sơ đồ thẻ PKCS#15 điển hình
MF
DF(PKCS #15)
EF(DIR)
TÌM HIỂU CÔNG NGHỆ PKCS #15
Giảng viên hướng dẫn : Th.s Phạm Xuân Khánh 9
Cấu trúc tập tin chung được thể hiện ở trên. Nội dung của thư mục ứng dụng PKCS
#15 là phần phụ thuộc vào loại thẻ IC và mục đích sử dụng , nhưng cấu trúc tập tin
sau đây được cho là phổ biến nhất :
Hình 2 – Nội dung của DF(PKCS15) (Ví dụ ).
Những kiến trúc khác có thể tham khảo trong phần Annex D của tập tin pkcs-
15v1_1.doc
5.4 Nội dung thư mục ứng dụng PKCS#15
5.4.1 EF(ODF)
Object Directory File là một tập tin cơ bản bắt buộc , nó chứa các con trỏ đến các
EF(PrKDFs, PuKDFs, SKDFs, CDFs, DODFs and AODFs) , mỗi một EF chứa một
thư mục trên các đối tượng PKCS#15 của một lớp cụ thể .
Hình 5 : EF(ODF) trỏ đến các EFs khác .Mũi tên đứt
đoạn chỉ tham chiếu chéo.
DF(PKCS #15)
EF(ODF)
EF(PrKDF)
EF(CDF)
EF(AODF)

đến ứng dụng PKCS #15. Chúng là tùy chọn, nhưng ít nhất một PuKDF phải có mặt
trên một thẻ IC có chứa các public key ( hoặc tham chiếu đến các public key) được
biết đến các ứng dụng PKCS #15. Chúng chứa các thuộc tính khóa chung như nhãn,
dự định sử dụng , bộ định danh , v.v Hơn nữa, chúng chứa các con trỏ tới các khóa
chính chúng (the keys themselve ).Khi mà private key tương ứng với một public key
tồn tại trên thẻ , các key phải chia sẽ chung bộ định dang (được chỉ ra với một mũi
tên đứt đoạn trong hình 7) . Có thể có bất kỳ số lượng PuKDFs trong PKCS #15 DF,
Information about
private key #1
Information about
private key #2
Information about
private key #n
Private key #2
Private key #1
TÌM HIỂU CÔNG NGHỆ PKCS #15
Giảng viên hướng dẫn : Th.s Phạm Xuân Khánh 11
Information about
public key #1
Information about
public key #2
Information about
public key #n
Public key #2
Public key #1
nhưng người ta dự đoán rằng trong trường hợp bình thường sẽ có nhiều nhất một.Bản
thân các khóa có thể tồn tại bất kỳ nơi đâu trên thẻ .Nội dung của PuKDFs được trình
bày trong phần 6.4 của tập tin pkcs-15v1_1.doc
Chú ý – Khi một đối tượng chứng thư trên thẻ có chứa khóa công khai, đối tượng
khóa công khai và đối tượng chứng thư sẽ chia sẻ cùng một bộ định danh. Điều này có

hoặc thậm chí bên ngoài thẻ, xem Phần 8). Nội dung cú pháp ASN.1 của CDF được
trình bày trong phần 6.6 của tập tin pkcs-15v1_1.doc
Hình 6 – EF(CDF) các thuộc tính chứng thư và các con trỏ đến các chứng thư
Information about
secret key #1
Information about
secret key #2
Information about
secret key #n
Secret key #2
Secrect key #1
Information about
certificate #1
Information about
certificate #2
Information about
certificate #n
Certificate #2
Certificate #1
TÌM HIỂU CÔNG NGHỆ PKCS #15
Giảng viên hướng dẫn : Th.s Phạm Xuân Khánh 13
5.4.6 Data Object Directory Files (DODFs)
Những tập tin này có thể được coi là thư mục của các đối tượng dữ liệu ( là các khóa
hoặc chứng thư ) được biết đến các ứng dụng PKCS #15.Chúng là tùy chọn, nhưng ít
nhất một DODF phải có mặt trên một thẻ IC có chứa các đối tượng dữ liệu đó ( hoặc
tham chiếu đến các đối tượng dữ liệu như vậy ) được biết đến ứng dụng PKCS #15
.Chúng chứa các thuộc tính đối tượng dữ liệu chung như bộ định danh của ứng dụng
mà các đối tượng dữ liệu thuộc , cho dù đó là một đối tượng riêng hoặc công khai ,
v.v Hơn nữa, chúng chứa các con trỏ tới bản thân chính các đối tượng dữ liệu .Có
thể có bất kỳ số lượng DODFs trong PKCS #15 DF, nhưng người ta dự đoán rằng

Hình 8 – EF(AODF) chứa các thuộc tính đối tượng xác thực và các con trỏ đến các đối tượng xác thực
5.4.8 EF(TokenInfo)
Tập tin cơ bản bắt buộc TokenInfo với cấu trúc trong suốt sẽ chứa thông tin chung về
thẻ như khả năng của nó được xem xét bởi ứng dụng PKCS#15 .Thông tin này bao
gồm số serial của thẻ , các loại tập tin hỗ trợ ,các giải thuật được thi hành trên thẻ
v.v Nội dung cú pháp của tập tin TokenInfo được mô tả trong phần Error! Reference
source not found. của tập tin pkcs-15v1_1.doc .
5.4.9 EF(UnusedSpace)
Tập tin tùy chọn cơ bản UnusedSpace với cấu trúc trong suốt được sử dụng để theo
dõi không gian chưa sử dụng trong các tập tin cơ bản đã được tạo . Khi hiện diện ,
ban đầu nó phải có ít nhất một bản ghi chỉ vào một không gian trống trong một tập
tin mà có thể cập nhật bởi chủ thẻ .Việc sử dụng các tập tin này được mô tả chi tiết
hơn trong phần 5.8. Tập tin sẽ bao gồm các bảng ghi mã hóa DER với cú pháp
ASN.1 sau :
UnusedSpace ::= SEQUENCE {
path Path (WITH COMPONENTS { , index PRESENT, length PRESENT}),
authId Identifier OPTIONAL,
,
accessControlRules SEQUENCE OF AccessControlRule OPTIONAL
}
Information about
auth. object #1
Information about
auth. object #2
Information about
auth. object #n
Authentication
object #2
Authentication
object #1

PKCS15
X
Decided by application issuer (AID is RID || “PKCS-
15”)
ODF
5031
16
by default (but see also Section 6.4.1)
TokenInfo
5032
16
by default (but see also Section 6.4.1)
UnusedSpace
5033
16
by default (but see also Section 6.4.1)
AODFs
Decided by application issuer
PrKDFs
Decided by application issuer
PuKDFs
Decided by application issuer
SKDFs
Decided by application issuer
TÌM HIỂU CÔNG NGHỆ PKCS #15
Giảng viên hướng dẫn : Th.s Phạm Xuân Khánh 16
CDFs
Decided by application issuer
DODFs
Decided by application issuer

tính , hoặc một “logical” như bảng ghi trong trường hợp tập tin trong suốt . Vì tất cả
các bảng ghi sẽ bao gồm các mã hóa DER , những vùng trống này sẽ dễ dàng tìm
thấy ( '00 'không phải là một tag ASN.1 hợp lệ ).
TÌM HIỂU CÔNG NGHỆ PKCS #15
Giảng viên hướng dẫn : Th.s Phạm Xuân Khánh 17
Hình 9 – Trước khi thêm một chứng thư mới
Hình 10 – Sau khi thêm một chứng thư mới
5.6.2 Loại bỏ các đối tượng
Một lần nữa, đủ quyền được thừa nhận. Trong đó ,đối tượng trong câu hỏi phải là
"modifiable" ( xem Phần 6.1.8 ), và nếu nó là một đối tượng riêng ( một lần nữa, xem
Phần 6.1.8 ), các yêu cầu ủy quyền phải được đáp ứng ( ví dụ như một mã PIN chính
xác phải hiện diện trước khi hoạt động).
Loại bỏ một bản ghi từ một tập tin thư mục đối tượng được thực hiện bởi các lệnh
'WRITE RECORD ' hoặc ‘UPDATE RECORD ’ trong trường hợp tập tin bảng ghi
tuyến tính , và bằng lệnh ‘WRITE BINARY’ hay lệnh ' UPDATE BINARY ' trong
trường hợp tập tin trong suốt . Các bảng ghi phải được xoá , hoặc thay thế tag ngoài
cùng với một byte '00 ' hoặc bằng cách ghi lại toàn bộ tập tin với nội dung thông tin
mới của nó . Chỉ cần ghi đè lên tag, nhưng bảo quản các byte chiều dài cho phép dễ
dàng duyệt qua các tập tin sau này, nhưng sẽ không nhất quán với ISO / IEC 7816-4
Phụ lục D ( trong đó yêu cầu các trường độ dài và các trường field được thiết lập '00 '
).
Hai hình sau cho thấy một ví dụ trong đó một chứng thư được loại bỏ từ ứng dụng
PKCS #15 và EF( UnusedSpace ) được sử dụng để theo dõi không gian chưa sử
dụng.
EF(UnusedSpace)
Elementary file
EF(CDF)
Free space #1
Free space #n
Certificate 1

Cert 1
Cert 2
Cert 3
Cert 1 Info
Cert 2 Info
Cert 3 Info
EF(UnusedSpace)
Elementary file
EF(CDF)
Elementary file
Free space #1
Free space #2
Cert 1
Cert 2
Cert 1 Info
‘00’ L
Cert 3 Info
EF(UnusedSpace)
EF(CDF)
TÌM HIỂU CÔNG NGHỆ PKCS #15
Giảng viên hướng dẫn : Th.s Phạm Xuân Khánh 19
6. Một profile nhận dạng điện tử của PKCS #15
6.1. Phạm vi
Phần này mô tả một profile của PKCS #15 phù hợp để mục đích nhận dạng điện tử
(EID) và những yêu cầu cho nó.Việc triển khai thực hiện yêu cầu tuân thủ phù hợp
với profile này. Profile bao gồm các yêu cầu cả cho thẻ và cho các ứng dụng phía
máy chủ làm việc sử dụng thẻ EID.
6.2. Những đối tượng của PKCS #15
- Private Keys: Một PKCS #15 thẻ phát hành cho mục đích EID nên có ít nhất 2
Private Key, một trong số đó thường được sử dụng chỉ cho mục đích chữ ký số. Ít

chủ ứng dụng yêu cầu phải nhận ra và có khả năng sử dụng kiểu X509Certificate
- Data objects (Dữ liệu các đối tượng): Không có yêu cầu. Đối tượng của loại
hình này có thể hoặc không thể có mặt trên thẻ, tùy thuộc vào quyết định của người
phát hành của ứng dụng.
- Authentication objects (Đối tượng xác thực) : trong trường hợp của một thẻ
IC có khả năng bảo vệ tập tin với các đối tượng chứng thực, ít nhất là một xác thực
đối tượng phải có mặt trên thẻ, bảo vệ các đối tượng riêng. Một đối tượng xác thực
riêng biệt nên sử dụng cho khóa chữ ký, bất kỳ việc sử dụng khóa chữ ký riêng sẽ
được yêu cầu xác thực người dùng mới. Trong trường hợp mã PIN, bất kỳ việc xác
thực của một mã PIN không được phép sử dụng dịch vụ an ninh liên kết với một mã
PIN khác. Việc xác thực liên tục và không chính xác của một người dùng nào đó mã
PIN sẽ chặn tất cả các dịch vụ an ninh liên kết với mã PIN này. Các tổ chức phát
hành ứng dụng quyết định số lần xác minh liên tiếp không chính xác sẽ gây ra việc
khóa thẻ. Mã PIN phải có ít nhất 4 ký tự (BCD, UTF8 hoặc ASCII). Khi một mã PIN
sẽ bị khóa sau khi xác minh mã PIN không chính xác liên tiếp, mã PIN chỉ có thể
được bỏ chặn thông qua một thủ tục bỏ chặn đặc biệt, được xác định bởi các tổ chức
phát hành ứng dụng
6.3. Những tập tin khác
Sử dụng một EF (UnusedSpace) được khuyến cáo nếu chủ thẻ được phép cập nhật
các nội dung của ứng dụng PKCS #15.
6.4. Quy tắc kiểm soát truy nhập
Private keys phải là những đối tượng riêng và đánh dấu là sensitive. Tập tin có chứa
Private keys, cần được bảo vệ chống lại gỡ bỏ và ghi đè. Điều kiện truy cập cho các
tập tin trong ứng dụng PKCS#15 có thể được thiết lập khác nhau tùy thuộc vào nếu
ứng dụng là read-only hoặc read-write. Một thẻ read-only dùng các ứng dụng yêu
cầu độ bảo mật cao, ví dụ nó được sử dụng một quá trình phát hành an toàn, và chắc
chắn rằng sau đó nó không thể bị tác động thay đổi . Sau đây là bảng các quy tắc
kiểm soát phương thức truy nhập
TÌM HIỂU CÔNG NGHỆ PKCS #15
Giảng viên hướng dẫn : Th.s Phạm Xuân Khánh 21

checksum
* Nội dung của tập tin có thể được sử dụng khi xác
minh một checksum
Verify
signature
* Nội dung của tập tin có thể được sử dụng khi xác
minh chữ ký
Encipher
* Nội dung của tập tin có thể được sử dụng trong một
hoạt động enciphering
Decipher
* Nội dung của tập tin có thể được sử dụng trong một
hoạt động giải mã
TÌM HIỂU CÔNG NGHỆ PKCS #15
Giảng viên hướng dẫn : Th.s Phạm Xuân Khánh 22
Bảng 2-Điều kiện có thể truy cập
Bảng 3. Điều kiện truy cập tập tin khuyến nghị
File
DF
R/O card
R/W card
MF
X
Create: SYS
Delete: NEV
Create: SYS
Delete: SYS
DIR
Read: ALW
Update: SYS

NEV
hoạt động này là không bao giờ được cho phép, không phải ngay cả
sau khi xác minh chủ thẻ.
ALW
hoạt động luôn luôn được cho phép, mà không cần xác minh chủ thẻ.
CHV
hoạt động này được cho phép sau khi xác minh người giữ thẻ thành
công.
SYS
hoạt động này được cho phép sau khi trình bày hệ thống quan trọng,
thường chỉ dành cho các công ty phát hành thẻ trường hợp (trường
hợp Security Officer)
TÌM HIỂU CÔNG NGHỆ PKCS #15
Giảng viên hướng dẫn : Th.s Phạm Xuân Khánh 23
Update: NEV
Append: SYS | NEV
Update: SYS | NEV
Append: SYS | NEV
AODFs
Read: ALW
Update: NEV
Append: NEV
Read: ALW
Update: CHV | SYS | NEV
Append: CHV | SYS | NEV
PrKDFs,
PuKDFs,
SKDFs,
CDFs and
DODFs

Update: CHV
Append: CHV
Bảng 4 - Điều kiện truy cập tập tin cho EID của PKCS #15
File
Access Conditions, R-O
card
Access Conditions. R-W card
MF
Create: SYS
Delete: NEV
Create: SYS
Delete: SYS
EF(DIR)
Read: ALW
Update: SYS
Append: SYS
Read: ALW
Update: SYS
Append: SYS
TÌM HIỂU CÔNG NGHỆ PKCS #15
Giảng viên hướng dẫn : Th.s Phạm Xuân Khánh 24
PIN files
Read: NEV
Update: NEV
Append: NEV
Read: NEV
Update: CHV
Append: NEV
DF(PKCS15)
Create: SYS

Read: ALW | CHV
Update: CHV | SYS | NEV
Append: CHV | SYS
Trusted CDFs
Read: ALW | CHV
Update: NEV
Append: SYS | NEV
Read: ALW | CHV
Update: SYS | NEV
Append: SYS | NEV
Key files
Read: NEV
Update: NEV
Append: NEV
Crypt: CHV
Read: NEV
Update: CHV | SYS | NEV
Append: CHV | SYS | NEV
Crypt: CHV
Other EFs in the
PKCS15 directory
Read: ALW | CHV
Update: NEV
Append: SYS | NEV
Crypt: CHV (when
applic.)
Read: ALW | CHV
Update: CHV | SYS | NEV
Append: CHV | SYS | NEV
Crypt: CHV (when applic.)

EF(CDF)
EF(AODF)


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status