IRONSOFTWAREHOME
PYTHONヘルプ

cryptography Python(開発者向けのしくみ)

Curtis Chau
Curtis Chau
Updated: 2026年6月20日

暗号化は、デジタル時代におけるデータと通信を保護するために不可欠です。 このパッケージは、その広範なライブラリと共に、暗号技術の実装を簡単にします。 Pythonで最も人気のある暗号化ライブラリの一つはcryptographyパッケージであり、高レベルおよび低レベルのインターフェースを備えた暗号化レシピを提供します。 記事の後半では、IronPDFという万能なPDF生成ライブラリをIron Softwareからも取り上げます。

主要な特徴

1.**高レベルのレシピ:**暗号化には、対称暗号化、対称暗号、メッセージ ダイジェスト、キー導出関数などの一般的な暗号化タスク用の高レベルの暗号化レシピ レイヤーが含まれています。 高レベルの対称暗号化レシピは、複雑なアルゴリズムを迅速かつ簡単に実装するのに役立ちます。 2.**低レベル インターフェース:**暗号化アルゴリズムへの低レベル インターフェースも提供しており、よりきめ細かい制御とカスタマイズが可能になります。 3.**対称暗号化と非対称暗号化:**ライブラリは、対称暗号化 (AES など) と非対称暗号化 (RSA など) アルゴリズムの両方を含む一般的な暗号化アルゴリズムをサポートしています。 4.**暗号化プリミティブ:**暗号化標準ライブラリには、ハッシュ、キー導出、メッセージ認証コード (MAC) のプリミティブを含む、Python 開発者向けの暗号化レシピとプリミティブが含まれています。 5.**開発者サポート:**開発者は問題レポートを送信でき、開発に関するディスカッション用のメーリング リストも提供されます。

インストール

暗号化パッケージをインストールするには、pipを使用できます。

pip install cryptography
SHELL

基本的な使用法

これは、Fernetモジュールを使用して対称暗号化を行うためのcryptographyライブラリの簡単な例です。

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 a 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は、最新のウェブ標準のサポートにより、HTML、CSS、画像、JavaScriptを使用してPDFを作成、編集、署名できる強力なPythonライブラリです。 低メモリフットプリントながら商用グレードのパフォーマンスを備えています。 主な機能は以下のとおりです:

HTMLからPDFへの変換:
IronPDFはHTMLファイル、HTML文字列、およびURLをPDFに変換できます。 たとえば、Chrome PDFレンダラーを使用してウェブページをPDFとしてレンダリングします。

クロスプラットフォームサポート:
IronPDFはPython 3+のために設計されており、Windows、Mac、Linux、またはクラウドプラットフォームでも動作します。
IronPDFは.NETJavaPythonNode.jsでも利用可能です。

編集と署名:
IronPDFを使用してプロパティを設定し、パスワードと権限によるセキュリティを追加し、デジタル署名をPDFに適用します。

ページテンプレートと設定:
IronPDFを使用してヘッダー、フッター、ページ番号、および調整可能な余白でPDFをカスタマイズできます。 さらに、カスタム用紙サイズおよびレスポンシブレイアウトをサポートします。

標準準拠:
IronPDFはPDF/AおよびPDF/UAを含むPDF標準に準拠しており、UTF-8文字エンコーディングをサポートし、画像、CSS、フォントなどのアセットを管理します。

インストール

pip install ironpdf

IronPDFと暗号化を使用してPDFドキュメントを生成します

前提条件

  1. Visual Studio Codeがインストールされていることを確認します
  2. Pythonバージョン3がインストールされています。

まず、スクリプトを追加するPythonファイルを作成してください。

Visual Studio Codeを開き、cryptographyDemo.pyファイルを作成します。

必要なライブラリをインストール:

:ProductInstall pip install cryptography ironpdf
SHELL

その後、IronPDFと暗号化Pythonパッケージの使用法を示す以下のコードを追加します。

from cryptography.fernet import Fernet
from ironpdf import ChromePdfRenderer, License

# Apply your license key
License.LicenseKey = "your key"

# Create a PDF from an 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(key) + "</p>"

# Encrypt a message
content += "<h2>Encrypt a message</h2>"
message = b"IronPDF is awesome"
cipher_text = cipher_suite.encrypt(message)
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)
content += "<p>cipher_suite.decrypt(cipher_text)</p>"
content += "<p>" + plain_text.decode() + "</p>"

# Generate PDF using IronPDF
renderer = ChromePdfRenderer()
pdf = renderer.RenderHtmlAsPdf(content)

# Export to a file or Stream
pdf.SaveAs("Demo-cryptography.pdf")
Python

コードの説明

このコードスニペットは、Fernetモジュールを使用してメッセージの暗号化と復号化を行い、その後IronPDFを使用してPDFドキュメントを生成する方法を示しています。 コードの各部分の説明は次のとおりです。

1.インポートとライセンスキーの設定:

  • @@Fernetクラスをインポートして、暗号化と復号化の機能を提供します。
  • PDF生成のためにIronPDFからLicenseをインポートします。
  • IronPDFの機能を有効にするためにライセンスキーを設定します。
  1. HTMLコンテンツ設定 : PDFドキュメントに含めるHTMLマークアップをcontent変数に初期化します。

  2. キー生成 : cipher_suite)を作成します。 生成されたキーをHTMLコンテンツに含めます。

  3. メッセージの暗号化 : 暗号化するメッセージ(b"IronPDF is awesome")。 メッセージをcipher_suite.encrypt()メソッドを使用して暗号化し、その暗号文をHTMLコンテンツに含めます。

  4. メッセージの復号化 : 暗号化されたcipher_suite.decrypt()を使用して復号化し、それによって得られたプレーンテキストをHTMLコンテンツに含めます。

  5. PDF生成 : contentHTML文字列をPDFドキュメントにレンダリングします。 生成されたPDFファイルを"Demo-cryptography.pdf"として保存します。

この設定により、cryptographyライブラリが提供する暗号化および復号化機能を示すPDFドキュメントを、IronPDFのPDF生成機能と組み合わせて作成することができます。

出力

暗号化 Python(開発者向けの動作方法):図3

PDF

暗号化 Python(開発者向けの動作方法):図4

IronPDFライセンス

IronPDFは、その広範な機能を購入前に評価するためのトライアルライセンスキーを提供しています。

スクリプトを使用する前にライセンスキーを配置しIronPDFパッケージを使用します。

from ironpdf import License

# Apply your license key
License.LicenseKey = "key"
Python

結論

cryptographyライブラリは、Pythonにおいて安全なデータの暗号化と復号化を実装するための強力なツールです。 その使いやすさと包括的な機能は、アプリケーションのセキュリティを向上させたい開発者にとって優れた選択肢です。

一方で、IronPDFは、多用途で機能豊富なPDF生成ライブラリで、結果を標準的な方法で文書化するのに役立ちます。 これらの両方のライブラリは、開発者がスキルセットを向上させるために素晴らしい成果を上げることができます。

Curtis Chau
Technical Writer

Curtis Chau holds a Bachelor’s degree in Computer Science (Carleton University) and specializes in front-end development with expertise in Node.js, TypeScript, JavaScript, and React. Passionate about crafting intuitive and aesthetically pleasing user interfaces, Curtis enjoys working with modern frameworks and creating well-structured, visually appealing manuals.

...
Read More

Related Articles

Key in blue circle

無料の30日間トライアルキーをすぐに入手してください。

bullet_checkedクレジットカードやアカウントの作成は不要です。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
無料のライブデモを予約する
Booking Badge related to IronPDF Product Demo

世界中の数百万人のエンジニアから信頼されています。

ライセンスはより安く
義務のない相談を受ける
下記のフォームを記入するか、sales@ironsoftware.comにメールしてください。
あなたの詳細は常に守秘されます。
世界中の数百万人のエンジニアから信頼されています。
ライセンスはより安く
あなたの無料30日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。