Tôi thường không bận tâm với việc ký hợp đồng .NET của mình, vì vậy tôi không biết nhiều hơn cơ chế cơ bản của nó. Đối với một dự án nhỏ mà tôi đang làm, tôi cần phải ký tên và tạo một khóa mới, được bảo vệ bằng mật khẩu.Mật khẩu khóa tên mạnh được lưu trữ ở đâu?
Tôi dự kiến sẽ được nhắc nhập mật khẩu này vào thời điểm nào đó khi biên dịch lại bản lắp ráp, nhưng tôi chưa bao giờ cần nhập vào bất cứ đâu sau khi tạo tệp khóa. Điều này dường như đánh bại mục đích của mật khẩu bảo vệ chìa khóa ở nơi đầu tiên.
Tôi tưởng tượng mật khẩu được lưu trữ ở đâu đó, nhưng ở đâu? Có trong một số loại lưu trữ riêng tư không? Nếu tôi cung cấp cho ai đó toàn bộ thư mục giải pháp của tôi cùng với tệp khóa trong đó, họ sẽ được nhắc nhập mật khẩu tôi đã nhập hay họ có thể ký tên vào assembly không có mật khẩu?
Có rất nhiều bài viết trên internet về các phím tên mạnh và sử dụng chúng, nhưng vì một lý do nào đó, tất cả chúng đều che mờ cách sử dụng mật khẩu của Visual Studio.
Cập nhật: Khởi động lại Visual Studio (và Windows) không có hiệu lực, do đó bộ nhớ đệm có vẻ dai dẳng. Xóa tập tin .suo không thay đổi thực tế là không cần mật khẩu để ký tên vào assembly.
Bạn đã bảo vệ mật khẩu tệp bằng cách nào? –
@Lasse: Visual Studio có tùy chọn bảo vệ mật khẩu khi bạn tạo khóa. Tôi đã xác minh rằng nó được bảo vệ bằng cách mở tệp .pfx. – Thorarin
Cảm ơn, tôi không biết điều đó. –