Câu trả lời:
Cuối cùng, .keystore
và .jks
chỉ là phần mở rộng tệp: tùy thuộc vào bạn để đặt tên cho tệp của mình một cách hợp lý. Một số ứng dụng sử dụng tệp kho khóa được lưu trữ trong $HOME/.keystore
: nó thường ngụ ý rằng đó là tệp JKS, vì JKS là loại kho khóa mặc định trong nhà cung cấp bảo mật Java của Sun / Oracle . Không phải ai cũng sử dụng .jks
tiện ích mở rộng cho các tệp JKS, vì nó được ngụ ý là mặc định. Tôi khuyên bạn nên sử dụng tiện ích mở rộng, chỉ cần nhớ loại nào sẽ chỉ định (nếu bạn cần).
Trong Java, kho khóa từ có thể có một trong các nghĩa sau, tùy thuộc vào ngữ cảnh:
Khi nói về tệp và lưu trữ, đây thực sự không phải là phương tiện lưu trữ cho các cặp khóa / giá trị (có rất nhiều hoặc các định dạng khác cho việc này). Thay vào đó, nó là một thùng chứa để lưu trữ khóa và chứng chỉ mật mã (tôi tin rằng một số trong số chúng cũng có thể lưu trữ mật khẩu). Nói chung, các tệp này được mã hóa và bảo vệ bằng mật khẩu để không để dữ liệu này có sẵn cho các bên trái phép.
Java sử dụng KeyStore
lớp và API liên quan của nó để sử dụng kho khóa ( cho dù đó là tệp dựa trên hay không ). JKS
là định dạng tệp dành riêng cho Java, nhưng API cũng có thể được sử dụng với các loại tệp khác, điển hình là PKCS # 12. Khi bạn muốn tải một kho khóa, bạn phải chỉ định loại kho khóa của nó. Các phần mở rộng thông thường sẽ là:
.jks
cho loại hình "JKS"
,.p12
hoặc .pfx
cho loại "PKCS12"
(tên đặc tả là PKCS # 12, nhưng #
không được sử dụng trong tên loại kho khóa Java).Ngoài ra, BouncyCastle cũng cung cấp các triển khai của nó, đặc biệt là BKS (thường sử dụng .bks
tiện ích mở rộng), thường được sử dụng cho các ứng dụng Android.
Bạn đang bối rối về điều này.
A keystore
là một thùng chứa các chứng chỉ, khóa riêng, vv
Có các thông số kỹ thuật về định dạng của kho khóa này và chủ yếu là # PKCS12
JKS là triển khai kho khóa của Java. Ngoài ra còn có BKS, v.v.
Đây là tất cả các loại kho khóa .
Để trả lời câu hỏi của bạn:
sự khác nhau giữa các tập tin .keystore và tập tin .jks
Chẳng có ai. JKS là các tệp kho khóa. Có sự khác biệt giữa các loại kho khóa . ví dụ JKS
vs#PKCS12
.pfx
hoặc .p12
).