發表文章

目前顯示的是 7月, 2024的文章

[PowerShell] IIS SSL 憑證自動更新全攻略 (V6 解密篇):安全還原加密密碼技術

這篇是 PowerShell 自動化更新 IIS SSL 憑證 V6 版的「解密篇」。在前一篇我們已經將密碼進行 AES 加密,本篇將展示如何在自動化腳本中讀取 Key 與 IV,安全地將密碼還原為明文以供程式使用,徹底告別腳本內寫死明碼的資安風險。 延伸閱讀 猜你對這些文章也有興趣: [PowerShell] 用 PowerShell 更新 IIS 憑證 V6 版 - 加密篇 [PowerShell] 用 PowerShell 更新 IIS 憑證 V5 版 - 解密程式 📝 前言: 💡 系列導讀: 這是 V6 版本的第二部分(解密篇)。 定義了名為 Decrypt-DataAndDisplay 的函式,主要用於自動化腳本的驗證與實行階段。解密過程必須使用加密時產生的金鑰與向量。如果您還沒看過加密金鑰的產生方式,請先參考: V6 加密篇 。 (或者 前往 Blogger 閱讀完整合併版 ) 這段程式碼主要用於確保自動化腳本能正確從加密檔案中還原回明文密碼,是整個 SSL 憑證自動更新流程中,維持安全性的核心組件。 1. 函式參數詳細說明 解密函式需要完全對應加密時的三個檔案,任何一個不符皆無法還原資料: 參數名稱 功能與用途 $EncryptedFilePath 加密資料來源: 讀取加密過程中產生的 .txt 檔案,其內容為二進位 Byte 陣列。 $KeyFilePath 加密金鑰 (Key): 對稱式加密的鑰匙。解密時必須使用與加密時完全一致的 Base64 字串。 ...

[PowerShell] IIS SSL 憑證自動更新全攻略 (V6 加密篇):實作 AES 安全加密流程

這篇是 PowerShell 自動化更新 IIS SSL 憑證 V6 版的「加密篇」。為了解決腳本中明文儲存密碼的資安風險,本篇教學將展示如何利用 .NET Framework 的 AES 類別生成金鑰與 IV,並將敏感資料安全加密為二進位檔案。 延伸閱讀 猜你對這些文章也有興趣: [PowerShell] 用 PowerShell 更新 IIS 憑證 V6 版 - 解密篇 [PowerShell] 用 PowerShell 更新 IIS 憑證 V5 版 - 加密程式 📝 前言: 💡 系列導讀: 這是 V6 版本的第一部分(加密篇)。 在實作 IIS SSL 憑證自動更新時,如何安全地傳遞密碼是最大難點。本篇介紹加密腳本的運作原理,閱讀完畢後請接續閱讀: 解密篇 。 (或者 前往 Blogger 閱讀完整合併版 ) 這段程式碼包含兩個核心函式: Secure-Prompt 用於安全輸入, Encrypt-Data 用於執行 AES 加密。以下詳細紀錄功能與運作流程。 1. Secure-Prompt:安全輸入輔助函式 此函式用於提示用戶輸入敏感資料(如加密金鑰或 PFX 密碼),避免密碼以明文顯示在螢幕上。 參數: 接收 Prompt 文字作為輸入提示。 機制: 呼叫 Read-Host -AsSecureString ,輸入過程會顯示為 * 星號。 轉化: 將安全字串還原為記憶體中的明文,供加密函式立即使用。 2. Encrypt-Data:AES 加密執行函式 核心加密邏輯,使用 .NET Framework 的 System.Security.Cryptography.Aes 類別進行對稱加密。 函式參數詳細說明 參數名稱 用途描述 ...