PYTHON 幫助

加密 Python(它的工作原理對於開發人員)

發佈 2024年8月13日
分享:

簡介

密碼學在數位時代保障數據和通信安全至關重要。這個套件及其豐富的庫,使實現加密技術變得簡單。其中一個最受歡迎的 Python 加密庫是 cryptography 套件,它提供了高級和低級的加密配方。稍後在本文中,我們還將探討一個多功能的 PDF 生成庫,稱為 IronPDFIronSoftware.

主要功能

  1. 高層次配方:此加密軟件包括用於常見加密任務的高層次加密配方層,例如對稱加密、對稱密碼、訊息摘要和密鑰派生函數。高層次的對稱加密配方有助於快速且簡單地實現複雜算法。

  2. 低層次接口:它還提供對加密算法的低層次接口,允許更細緻的控制和自定義。

  3. 對稱和非對稱加密:該庫支持常見的加密算法,包括對稱加密配方算法。(例如,AES),以及非對稱 (例如,RSA) 加密算法。

  4. 加密原语:加密標準庫包括加密配方和原語,提供給Python開發者,包括雜湊、密鑰派生和消息認證碼的原語。 (MACs).

  5. 開發者支持: 開發者可以提交問題報告,還提供了開發討論的郵件列表。

安裝

要安裝cryptography套件,可以使用pip:

pip install cryptography

基本用法

以下是一個使用 Fernet 模組進行對稱加密的加密庫簡單範例:

from cryptography.fernet import Fernet
# Generate a key
key = Fernet.generate_key()
cipher_suite = Fernet(key)
# Encrypt a message
message = b"IronPDF is awesome" # This must be really secret message
cipher_text = cipher_suite.encrypt(message)
print(cipher_text)
# Decrypt the message
plain_text = cipher_suite.decrypt(cipher_text)
print(plain_text)
PYTHON

在此範例中,我們生成一個密鑰,加密訊息,然後使用Fernet模組解密該訊息。

輸出

密碼學Python(對開發者的工作原理):圖1

用例

  1. 資料加密:在將敏感數據存儲到數據庫或通過網絡傳輸之前進行加密。

  2. 安全通信:確保雙方交換的消息是保密且防篡改的。

  3. 身份驗證:使用加密簽名驗證數據的完整性和真實性。

介紹 IronPDF

密碼學 Python(它如何對開發人員起作用):圖 2 - IronPDF:Python 的 PDF 庫

IronPDF 是一個強大的Python函式庫,通過支援現代Web標準,利用HTML、CSS、圖像和JavaScript來創建、編輯和簽署PDF。它提供商業級性能,具有低內存占用。主要特點包括:

HTML到PDF轉換:

IronPDF可以將HTML檔案、HTML字串和URL轉換為PDF。例如,使用Chrome PDF渲染器將網頁呈現為PDF。

跨平台支援:

IronPDF針對 Python 3+設計,同時可以在Windows、Mac、Linux或雲端平台上運行。 .NET, Java, Python,和 Node.js編輯和簽署:

使用IronPDF來設定屬性、通過密碼和權限添加安全性,並對您的PDF應用數字簽名。

頁面模板和設置:

您可以使用IronPDF自訂PDF的頁眉、頁尾、頁碼和可調邊距。另外它還支持自訂紙張大小和響應式佈局。

標準合規性:

IronPDF符合PDF標準,包括PDFA和PDFUA,支持UTF-8字符編碼,並管理圖像、CSS和字體等資源。

安裝

pip install ironpdf

使用 IronPDF 和加密技術生成 PDF 文件。

先決條件

  1. 確保已安裝 Visual Studio Code

  2. 已安裝 Python 3 版本

首先,我們創建一個 python 文件來添加我們的腳本

打開 Visual Studio Code 並創建一個文件,cryptographyDemo.py。

安裝必要的庫:

pip install cryptography
pip install ironpdf

然後添加下面的代碼來演示 IronPDF 和加密 Python 包的使用

from cryptography.fernet import Fernet
from ironpdf import * 
# Apply your license key
License.LicenseKey = "your key"
# Create a PDF from a HTML string using Python
content = "<h1>Awesome IronPDF with Cryptography</h1>"
# Generate a key
content += "<h2> Generate a key</h2>"
key = Fernet.generate_key()
cipher_suite = Fernet(key)
content += "<p>Fernet.generate_key()="+str(Fernet.generate_key())+"</p>"
content += "<p>Fernet(key) cipher = "+str(cipher_suite)+"</p>"
# Encrypt a message
content += "<h2> Encrypt a message</h2>"
message = b"IronPDF is awesome"
cipher_text = cipher_suite.encrypt(message)
print(cipher_text)
content += "<p>cipher_suite.encrypt(message)</p>"
content += "<p>"+str(cipher_text)+"</p>"
# Decrypt the message
content += "<h2> Decrypt the message</h2>"
plain_text = cipher_suite.decrypt(cipher_text)
print(plain_text)
content += "<p>cipher_suite.decrypt(cipher_text)</p>"
content += "<p>"+str(plain_text)+"</p>"
#Generate PDF using IronPDF
renderer = ChromePdfRenderer()
pdf = renderer.RenderHtmlAsPdf(content)
    # Export to a file or Stream
pdf.SaveAs("Demo-cryptography.pdf")
PYTHON

代碼說明

這段代碼片段展示了如何使用 cryptography 庫的 Fernet 模塊來進行訊息的加密和解密,然後使用 IronPDF 生成 PDF 文件。以下是對每部分代碼的解釋:

  1. 導入和许可证鑰匙設置:從 cryptography.fernet 模塊中導入 Fernet 類以實現加密和解密功能。從 IronPDF 中導入 ChromePdfRenderer 以生成 PDF。設置 IronPDF 的许可证鑰匙以啟用其功能。

  2. HTML 內容設置:用 HTML 標記初始化 content 變量,以包含在 PDF 文件中。

  3. 生成密鑰:使用 Fernet.generate_key 生成一個新的密鑰。()並創建一個Fernet密碼套件對象 (cipher_suite) 使用生成的密鑰。列印生成的密鑰和密碼套件對象。

  4. 加密訊息: 定義一個訊息 (訊息) 加密 (`b"IronPDF 很棒"`). 使用 `cipher_suite.encrypt` 加密訊息()使用 ` method 和列印密文。5. 解密訊息:加入 HTML 標記以示範解密訊息。使用 `cipher_suite.decrypt解密加密的 \cipher_text`()`和列印解密後的明文。

  5. PDF 生成:使用 ChromePdfRenderercontent HTML 字串渲染成 PDF 文件。將生成的 PDF 文件保存為 "Demo-cryptography.pdf"。

這個設置允許創建一個 PDF 文件,展示了 cryptography 庫提供的加密和解密功能,結合 IronPDF 的 PDF 生成能力。

輸出

加密 Python(對開發人員的運作方式):圖 3

PDF

密碼學 Python(開發者如何使用):圖4

IronPDF License

IronPDF 授權金鑰使用戶可以在購買之前查看其廣泛的功能。

在使用之前將授權金鑰放在腳本的開頭。 IronPDF 套件:

from ironpdf import * 
# Apply your license key
License.LicenseKey = "key"
PYTHON

結論

密碼學 在 Python 中的庫是一個強大的工具,用於實現安全的數據加密和解密。它的易用性和全面的功能使其成為開發者增強應用程式安全性的絕佳選擇。

另一方面, IronPDF 是一個多用途且功能豐富的PDF生成庫,可幫助以標準方式記錄結果。這兩個庫都可以幫助開發人員提高他們的技能。

< 上一頁
pyarrow(開發人員的運作方式)
下一個 >
Dask Python(對開發者的運作方式)

準備開始了嗎? 版本: 2024.9 剛剛發布

免費 pip 安裝 查看許可證 >