PKCS#12 là một cách thuận tiện để gộp cùng một khóa riêng tư với chứng chỉ X.509 tương ứng của nó thành một định dạng tệp đơn tiêu chuẩn. Tuy nhiên, đặc điểm kỹ thuật đã được RSALabs xuất bản vào năm 1999 và chỉ sử dụng RC4, RC2 và TripleDES cho mã hóa đối xứng. Có bất kỳ phần mở rộng bán tiêu chuẩn phổ biến nào cho lược đồ thêm nhiều thuật toán mã hóa hoặc các hàm dẫn xuất quan trọng khác không? OpenSSL là tài liệu để thực hiện hỗ trợ cho AES và Camellia, nhưng việc tìm kiếm một tiêu chuẩn tương ứng sẽ chuyển sang trống, vì vậy đây có vẻ là một cái gì đó thực hiện cụ thể cho OpenSSL. Có ai đã ghi lại mô-đun ASN.1 và mã giả cho các phần mở rộng này không?Có bất kỳ tiện ích mở rộng đã xuất bản nào cho PKCS # 12 không?
5
A
Trả lời
3
PKCS # 12 sử dụng khối xây dựng từ các tiêu chuẩn khác.
Chế độ mã hóa được khuyến nghị dựa trên mã hóa dựa trên mật khẩu từ PKCS # 5 (PBES2). Điều này đã được mở rộng với sự hỗ trợ cho SHA-2 và AES trong PKCS#5 v.2.1.
Khi OpenSSL sử dụng AES nó có phải nó như thế này:
684 30 806: SEQUENCE {
688 30 802: SEQUENCE {
692 06 11: OBJECT IDENTIFIER
: pkcs-12-pkcs-8ShroudedKeyBag (1 2 840 113549 1 12 10 1 2)
705 A0 723: [0] {
709 30 719: SEQUENCE {
713 30 73: SEQUENCE {
715 06 9: OBJECT IDENTIFIER
: pkcs5PBES2 (1 2 840 113549 1 5 13)
726 30 60: SEQUENCE {
728 30 27: SEQUENCE {
730 06 9: OBJECT IDENTIFIER
: pkcs5PBKDF2 (1 2 840 113549 1
5 12)
741 30 14: SEQUENCE {
743 04 8: OCTET STRING
: BA 6B 5B B3 47 27 C9 73
753 02 2: INTEGER 2048
: }
: }
757 30 29: SEQUENCE {
759 06 9: OBJECT IDENTIFIER
: aes128-CBC (2 16 840 1 101 3 4 1 2)
770 04 16: OCTET STRING
: 0F 79 79 0A D3 EC C0 3E 20 B8 51 85 2F 2B 6C 29
: }
: }
: }
Theo như tôi có thể đọc các nguồn, OpenSSL mã hóa mật khẩu như ASCII chứ không phải là zero-chấm dứt UTF-16 khi sử dụng PKCS # 5 PBES2 .
Các vấn đề liên quan
- 1. Phát hiện Maven hoàn tất mà không tìm thấy bất kỳ tiện ích mở rộng nào
- 2. Python 3.1.1 with --enable-shared: sẽ không xây dựng bất kỳ tiện ích mở rộng nào
- 3. powershell - trích xuất tên tệp và tiện ích mở rộng
- 4. Tiện ích mở rộng PSake?
- 5. Ứng dụng có được liên kết với tiện ích mở rộng đã cho không?
- 6. Tiện ích mở rộng Intellisense tùy chỉnh
- 7. Nhận Mã định danh Loại Đồng nhất cho một tiện ích mở rộng đã cho
- 8. Tiện ích mở rộng Crossrider - chúng an toàn không
- 9. Tiện ích mở rộng của Chrome + Dart
- 10. Tiêm CSS cho tiện ích mở rộng chrome
- 11. lấy văn bản đã chọn của cửa sổ trình biên tập .. tiện ích mở rộng studio mở rộng
- 12. Tiện ích mở rộng xdebug không được tải
- 13. .tiện ích mở rộng gốc của mạng cho node.js
- 14. Tiện ích mở rộng trình duyệt Android
- 15. Tải tiện ích mở rộng hình ảnh
- 16. Tiện ích mở rộng của Chrome cho Amazon Cloud
- 17. Tiện ích mở rộng của Chrome + Devise + Rails App - Đặt yêu cầu được xác thực từ tiện ích mở rộng?
- 18. Bật tiện ích mở rộng zip cho PHP
- 19. Tiện ích mở rộng của Google Chrome - Truy cập DOM
- 20. Tiện ích mở rộng ký hiệu có ký hiệu dài
- 21. Tiện ích mở rộng của Firefox: Nhận văn bản đã chọn
- 22. Tiện ích mở rộng của Chrome: biểu tượng tiện ích mở rộng onclick, mở popup.html trong tab mới
- 23. Tiện ích mở rộng GUI - Tài nguyên không tải
- 24. Bất kỳ tiện ích con Java Swing Timeline nào tốt?
- 25. Bất kỳ tiện ích nào để in trực tiếp mảng?
- 26. Có bản lưu trữ cho các phiên bản cũ hơn của Tiện ích mở rộng của Chrome không?
- 27. Có bất kỳ khung Silverlight hữu ích nào không?
- 28. Sự kiện onbeforeunload có kích hoạt cho popup.html trong tiện ích mở rộng google chrome không?
- 29. Cho URL dưới dạng chuỗi, cách trích xuất miền và tiện ích mở rộng?
- 30. Có bất kỳ tác hại nào trong việc sử dụng tiện ích mở rộng chỉ an toàn (APC) trong môi trường không phải là chủ đề không? (PHP)
Vâng, không chính xác. PKCS # 12 sử dụng PBKDF được chỉ định trong phụ lục B.2 và khác với PBKDF1 của PBKDF2 của PKCS # 5 ở một số khía cạnh. Ví dụ, không giống như PKCS # 5 PBKDF1, nó có tính năng kéo dài khóa, không giống PKCS # 5 PBKDF2, nó sử dụng một băm lặp thay vì xor tổng các đầu ra HMAC, và không giống như cả hai định dạng muối và mật khẩu theo cách khác thường. –
Để cụ thể hơn: Phụ lục BCS PK # 12 B.1 quy định rằng mật khẩu nên được xem là BMPStrings thay vì OctetStrings đơn giản. Điều này có nghĩa rằng nếu một số nhận dạng thuật toán PKCS # 5 sẽ gặp phải trong trường định danh thuật toán mã hóa của tệp PKCS # 12, sẽ không xác định được liệu mật khẩu có nên được coi là một BMPString hay không. Do đó, các quy tắc xử lý sẽ vẫn phải được xác định bên ngoài để được rõ ràng. –
@ Henrick Hellström: Theo như tôi nhớ, PBKDF trong phụ lục B.2 chỉ dành cho khả năng tương thích ngược với định dạng cũ của Microsoft. Nếu bạn đọc ghi chú ở trang 13, bạn sẽ nhận thấy rằng bạn nên sử dụng các cơ chế PKCS # 5. –