2010-06-23 31 views
12

Tôi tự hỏi liệu tôi có thể có nhiều khóa công khai cho khóa riêng tư hay không.PKI nhiều khóa công khai

Việc này có thể thực hiện được không? Nếu vậy, các vấn đề bảo mật là gì !?

Nếu tôi tạo nhiều cặp khóa dựa trên cùng giá trị ban đầu (không có véc tơ ban đầu), các phím có nên "tương thích" không?

+0

Điều này không rõ ràng đối với tôi ý của bạn là gì. Bạn nghĩ phương pháp nào: RSA, DSA, ECC? Tôi không biết ECC nhưng tôi nghi ngờ nó có thể cho hai người đầu tiên. – Rup

+1

IMHO, từ cùng một thuật toán và cùng một khóa riêng, bạn sẽ nhận được cùng một khóa công khai mỗi lần. – Piskvor

+0

Cũng đáng đọc là câu trả lời của Henrick Hellström tại http://stackoverflow.com/questions/9375044/can-we-have-multiple-public-keys-with-a-single-private-key-for-rsa – cwd

Trả lời

6

Trong tất cả các hệ thống mật mã bất đối xứng Tôi có thể nghĩ, có một tương ứng 1-1 giữa khóa công khai và khóa riêng: cho khóa riêng, bạn có thể xác định duy nhất khóa công khai và cung cấp khóa công khai mà bạn có thể duy nhất xác định khóa cá nhân (nhưng dĩ nhiên nó sẽ không khả thi về mặt tính toán để xác định khóa riêng tư từ khóa công khai).

Tuy nhiên, bạn có thể dễ dàng tạo một sơ đồ như vậy: Để tạo khóa riêng với n khóa công khai, chỉ cần tạo n khóa công khai riêng trong lược đồ bình thường và xác định "khóa riêng tư" bộ sưu tập các khóa riêng. Khi ký chỉ cần đăng nhập với tất cả các khóa riêng, khi xác minh cố gắng xác minh một trong các chữ ký. Mã hóa là hoạt động thông thường và giải mã nên cố gắng giải mã bằng tất cả các phím (một trong số chúng sẽ hoạt động).

+0

Tôi sẽ sử dụng cụm từ: Với khóa công khai, bạn có thể xác minh rằng khóa cá nhân là khóa riêng tư duy nhất và duy nhất. – Slartibartfast

+0

@Slartibartfast: Trong khi đó cũng đúng, bạn luôn có thể tính toán khóa riêng - nó sẽ mất một thời gian dài: nếu không có gì khác, bạn có thể thử tất cả các khóa có thể, nhưng hầu hết các hệ thống mật mã đều có thuật toán nhanh hơn. –

3

Điều này là không thể với các thuật toán chuẩn.

Nếu bạn xem các cặp khóa được tạo ra như thế nào trong RSA, trước tiên bạn chọn khóa công khai bằng cách chỉ định số mũ công khai, sau đó tạo khóa riêng.

Tôi không thể nghĩ ra trường hợp sử dụng cho nhiều khóa công khai. Chúng được công khai và bạn có thể nhận được bất kỳ của chúng để nó không thực sự cải thiện an ninh.

+1

Nó sẽ không ' t cải thiện an ninh, nhưng nó có thể cải thiện sự riêng tư bằng cách làm cho nó không thể nói rằng hai khóa công khai thuộc về cùng một người. – Ajedi32

0

Không rõ tại sao bạn cho rằng bạn cần nhiều khóa công khai. Nó có thể giúp bạn tìm hiểu rằng nếu một cái gì đó được mã hóa với khóa công khai, nó không thể được giải mã bằng cách sử dụng cùng một khóa công khai.

Nếu có ba người (A, B, C) với khóa công khai của bạn, B và C không thể đọc thư được mã hóa bởi A, nhưng bạn (với khóa riêng) có thể.

Nếu bạn muốn có thể gửi một tin nhắn mà chỉ một trong những A, B hoặc C có thể đọc, mỗi người nên có khóa riêng và chia sẻ khóa công khai của họ với bạn.

Có vẻ như bạn muốn coi các khóa công cộng như khóa riêng tư và đó có thể là kế hoạch không tốt.

-1

Khóa riêng/khóa công khai có mối quan hệ 1-1 và do đó, không thể có nhiều khóa công khai cho khóa riêng đã cho.

Tuy nhiên, bạn có thể có 3 chứng chỉ riêng cho cùng một khóa công khai, nếu đó là loại điều bạn đang tìm kiếm.

+0

Điều đó không đúng .. chúng tôi có thể có nhiều khóa công cộng. –

Các vấn đề liên quan