簡體   English   中英

如何在java中將密鑰對導入密鑰庫並使密鑰不可導出

[英]How to import key pair to keystore in java and make key not exportable

我正在將密鑰對(私鑰和證書)添加到 java 中的 Windows 密鑰庫。 我需要使私鑰不可導出。 執行此操作的 Java 代碼使私鑰可導出。 我怎樣才能改變這個?

我沒有找到任何可以更改的屬性或屬性。 Keystore.store 方法獲取 LoadStoreParameter 但它看起來是關於為私鑰設置密碼。

PrivateKey privateKey=...;
Certificate certificate=...;

KeyStore keyStore = KeyStore.getInstance("Windows-MY");
keyStore.load(null);
keyStore.setKeyEntry("alias",privateKey,"".toCharArray(),new java.security.cert.Certificate[]{certificate});

對 Windows 加密服務的訪問由 SunMSCAPI 提供程序管理。 它提供了 java JCE API 和 windows 服務之間的橋梁。 查看文檔

SunMSCAPI 提供程序使應用程序能夠使用標准 JCA/JCE API 訪問 Microsoft Windows 平台上的本機加密庫、證書存儲和密鑰容器。 SunMSCAPI 提供程序本身不包含加密功能,它只是 Java 環境和 Windows 上的本機加密服務之間的管道。

SunMSCAPI 中的WINDOWS-MY密鑰庫使用標准的 Java KeyStore API,它沒有定義任何類型的“可提取”屬性,所以恐怕你無法建立它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM