python

Thumbnail of post image 186

今回は宮口・プレネルという一方向圧縮関数を利用したハッシュ値生成を勉強していこうと思います。

初めに

現在SHE(Secure Hardware Extension)という暗号処理機能の実装に取り組んでおります。

その中で出てきた耳なれない演算処理が宮 ...

python

Thumbnail of post image 195

今回はDSA(ECDSA)によるデジタル署名を取り上げます。

デジタル署名自体については、以前RSAにて取り上げているため良ければこちらも参考にしてください。

DSAとは

DSA(Digital Signature Algorithm)は、デジタル署名の標準規格であり、N ...

python

Thumbnail of post image 035

今回はAES-GCMに続いて、ChaCha20-Poly1305による認証付き暗号文生成を取り上げます。

概要

ChaCha20-Poly1305は、ChaCha20というストリーム暗号と、Poly1305という認証子生成方式を組み合わせて行う、認証付き暗号文生成方法です。

python

Thumbnail of post image 157

今回はpythonのPyCryptodomeを使用して、AES-GCMの認証付き暗号文生成を実施します。

初めに

AES-GCM(Galois/Counter Mode)は、AESの暗号利用モードのうちの一つです。

以前各種AESの暗号利用モード(ECB,CBC,CMAC ...

python

Thumbnail of post image 025

今回はハッシュ関数の中でも、TLS通信で主要な役割を持っているSHAについて勉強していきます。

また、pythonのpycryptodomeライブラリを使用して、ハッシュ処理を動かしてみます。

ハッシュ関数とは概要

ハッシュ関数とは、入力データに対応するランダムな値(ハッ ...

python

Thumbnail of post image 092

今回はRSAの各種パディング方法について調べてみました。

また、pythonのpycryptodomeライブラリを使用して、実際に各パディング処理を動かしてみます。

概要

RSAはAESと同様にブロック暗号方式です。

そのため、暗号演算時のブロック長は鍵長に依 ...

python

Thumbnail of post image 033

今回は前回のDH(Diffie-Hellman)に続き、RSAによるデジタル署名を取り上げます。

RSAとは

公開鍵暗号の一種で、TLS通信においては主に以下役割を担います。

役割概要その他データの秘匿公開鍵でデータを暗号化し、秘密鍵で復号化する。非推奨 (処理時間大)デジタル ...

python

Thumbnail of post image 054

今回はpythonのcryptographyというライブラリを使って、DHによる共通鍵の生成を行っていきます。

最近業務で認証処理を実装することになったのですが、ECDHとかECCとかよくわからない用語が頻出しました。

そのため、用語の整理と理解を兼ねた実装を行います。 ...

GUI

Thumbnail of post image 144

今回はこれまで取り上げたpythonによるAESの暗号演算処理(ECB、CBC、CTR、CMAC)のまとめと、任意の暗号演算を行えるようなアプリ作成を行ってみたいと思います。

暗号演算はpycryptodome、GUIではPySimpleGUIのライブラリを使用します。

各暗 ...

python

Thumbnail of post image 061

今回はパディングの中でもAESで主に使用されているパディング(PKCS#5、PKCS#7)について取り上げます。

またpythonで簡単なpadding処理の実装を行います。

PKCS#5、PKCS#7におけるパディング

ブロック暗号では、ある特定のビット数のまとまりを一 ...

python

Thumbnail of post image 120

今回はAES-CTR編です。pythonのpycryptodomeを使用し、AES-CTRによる暗復号を行ってみます。

AES-CTRとは

AESとは、 Advanced Encryption Standard(高度暗号化標準)の略となり、特定の長さのデータ(ブロック)を単位として処 ...

python

Thumbnail of post image 132

今回はAES-CMAC編でも少し触れたAES-CBCについて、pythonのライブラリpycryptodomeを使用して実際に動かしてみます。

AES-CBCとは

AESとは、 Advanced Encryption Standard(高度暗号化標準)の略となり、特定の長さ ...

python

Thumbnail of post image 079

AES-CMAC編に引き続き、今回はAES-ECBの暗復号をpythonで実施してみようと思います。

AES-ECBとは

まず初めに、AES-CMAC編でも説明したようにAESとは、 Advanced Encryption Standard(高度暗号化標準)の略となり、特定 ...

python

Thumbnail of post image 073

今回はAES-CMACの勉強と、pythonのライブラリpycryptodomeを使用して実際にMAC生成をしてみました。

初めに

現在業務で組み込みソフトにおける、HSMと呼ばれるモジュールのソフト開発に取り組んでおります。

HSMは機器内の暗号処理における、鍵管理や暗 ...