Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
codecrypt — 耐量子暗号ツール(このリポジトリはメインリポジトリのミラーに過ぎません。ここでバグを報告しないでください。) | Kitploit
ツール/GitHubGitHub/exaexa/codecrypt
暗号化/復号化ツール暗号化プライバシー論文と研究
GitHubexaexa/codecrypt

codecrypt

耐量子暗号ツール(このリポジトリはメインリポジトリのミラーに過ぎません。ここでバグを報告しないでください。)

リポジトリを見るウェブサイト
325423年前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

Codecrypt

ポスト量子暗号ツール。

Codecrypt は現在メンテナンスされていませんが、私は今も問題なく使用しています。開発やメンテナンスに興味があれば、私に連絡してください。

概要

これは GnuPG ライクな Unix プログラムで、暗号化と署名に量子コンピュータ耐性のあるアルゴリズムのみを使用します:

  • McEliece 暗号システム (コンパクトな QC-MDPC 変種) を暗号化に使用
  • ハッシュベースの Merkle ツリーアルゴリズム (FMTSeq 変種) をデジタル署名に使用

Codecrypt はフリーソフトウェアです。コードは LGPL3 の条件でライセンスされており、他のツールとの組み合わせが容易になることを期待しています。

なぜこれなのか?

http://pqcrypto.org/ を読んでください。

リンク

  • 情報ページ: http://e-x-a.org/codecrypt/
  • パッケージダウンロード: http://e-x-a.org/codecrypt/files/

ディストリビューションパッケージ

  • Gentoo パッケージ: https://packages.gentoo.org/packages/app-crypt/codecrypt 現在の ebuild は通常 http://e-x-a.org/codecrypt/files で入手できます。
  • Debian パッケージ: apt-get install codecrypt
  • Arch linux: https://aur.archlinux.org/packages/codecrypt/ を参照
  • Windows 移植版 はこちらで個別にメンテナンスされています: https://github.com/mike805/codecrypt-win32

言語ラッパー:

  • Python バインディング: https://github.com/mike805/codecrypt-python/

ドキュメント

パッケージには完全な UNIX 風マニュアルページが付属しています。オンラインでここから閲覧できます: http://e-x-a.org/codecrypt/ccr.1.html

使用されている暗号技術の概要

述べられた目標を達成するために、codecrypt は多くの(伝統的だが「量子耐性のある」)暗号プリミティブを使用しています。プリミティブの選択は、設計の監査の容易さ、単純さ、および提供される安全性に基づいています。

codecrypt の git リポジトリには、関連トピックに関する学術論文やスライドの未整理の山である doc/papers が含まれています。

使用されているストリーム暗号:

  • ChaCha20、djb による推奨選択肢
  • XSynd ストリーム暗号。興味深く非伝統的な候補であり、これも符号理論に基づく仮定に依存しています。使用されている NUMS (大量の NUMS を必要とします) はリポジトリ内の doc/nums ディレクトリで説明されています。
  • Arcfour は実装の初期の単純さのため。最近の統計的攻撃により、RC4 系の変種はもう推奨できませんが、提供されるパディングと codecrypt の「オフライン専用」の使用法により、使用はほぼ安全に保たれています。

使用されている CRHF:

  • Cubehash の変種は、実装の容易さ、非常にcleanな設計、かなり良い速度、パラメータ選択の柔軟性から選択されました。これはまた、Crypto++ ライブラリが codecrypt にリンクされていない場合に唯一のハッシュ選択肢でもあります。KeyID は、対応するシリアライズされた公開鍵の CUBE256 ハッシュです。
  • ripemd128 は小さなハッシュ用
  • tiger192 は 192 ビットハッシュ用の Cubehash の代替として使用されます
  • SHA-256、SHA-384、SHA-512 による変種も常に存在します。

署名アルゴリズム:

  • FMTSeq。前述の CRHF の多くの可能性と組み合わせに対応
  • SPHINCS256 のサポートは次のリリースで予定されています

暗号化アルゴリズム:

  • 準巡回行列上の MDPC McEliece。実装は(かなり遅い)巡回行列乗算を高速化するためにいくつかのトリックを使用しています(特にこのバージョンでは libfftm3)。Fujisaki-Okamoto スキームによるパディングのために、この暗号はストリーム暗号と CRHF を必要とし、使用される暗号と CRHF はアルゴリズム名で指定されます -- 例: MCEQCMDPC128FO-CUBE256-CHACHA20 は、パラメータが 128 ビットの安全性を提供するように調整され、CUBE256 ハッシュと ChaCha20 ストリーム暗号を使用することを意味します。
  • 準ダイアディック McEliece は元々のアルゴリズムとして codecrypt に含まれていましたが、現在は破られており、使用時に警告メッセージを表示します。

注意事項:

暗号技術は**「オンライン」での使用を意図していません**。なぜなら、いくつかのアルゴリズム (特に MDPC 復号) はタイミング攻撃に対して(わずかに)脆弱だからです。

クイックハウツー

すべては GnuPG とほぼ同様に動作することを意図していますが、優れた単純さの余裕があります。ランダムなデータで試してみましょう!

root@kitploit:~
ccr -g help
ccr -g sig --name "John Doe"    # your signature key
ccr -g enc --name "John Doe"    # your encryption key

ccr -K  #watch the generated keys
ccr -k

ccr -p -a -o my_pubkeys.asc -F Doe  # export your pubkeys for friends

#(now you should exchange the pubkeys with friends)

#see what people sent us, possibly check the fingerprints
ccr -inaf < friends_pubkeys.asc

#import Frank's key and rename it
ccr -ia -R friends_pubkeys.asc --name "Friendly Frank"

#send a nice message to Frank (you can also specify him by @12345 keyid)
ccr -se -r Frank < Document.doc > Message_to_frank.ccr

#receive a reply
ccr -dv -o Decrypted_verified_reply.doc <Reply_from_frank.ccr

#rename other's keys
ccr -m Frank -N "Unfriendly Frank"

#and delete pukeys of everyone who's Unfriendly
ccr -x Unfri

#create hashfile from a large file
ccr -sS hashfile.ccr < big_data.iso

#verify the hashfile
ccr -vS hashfile.ccr < the_same_big_data.iso

#create (ascii-armored) symmetric key and encrypt a large file
ccr -g sha256,chacha20 -aS symkey.asc
ccr -eaS symkey.asc -R big_data.iso -o big_data_encrypted.iso

#decrypt a large file
ccr -daS symkey.asc <big_data_encrypted.iso >big_data.iso

#password-protect all your private keys
ccr -L

#protect a symmetric key using another symmetric key
ccr -L -S symkey1 -w symkey2

#password-protect symkey2 with a custom cipher
ccr -L -S symkey2 -w @xsynd,cube512

オプションリファレンス

完全を期すために、ここにすべてのオプションのリストを記載します (ccr --help からも入手可能)

root@kitploit:~
Usage: ./ccr [options]

Common options:
 -h, --help     display this help
 -V, --version  display version information
 -T, --test     perform (probably nonexistent) testing/debugging stuff

Global options:
 -R, --in      set input file, default is stdin
 -o, --out     set output file, default is stdout
 -E, --err     the same for stderr
 -a, --armor   use ascii-armored I/O
 -y, --yes     assume that answer is `yes' everytime

Actions:
 -s, --sign     sign a message
 -v, --verify   verify a signed message
 -e, --encrypt  encrypt a message
 -d, --decrypt  decrypt an encrypted message

Action options:
 -r, --recipient    encrypt for given user
 -u, --user         use specified secret key
 -C, --clearsign    work with cleartext signatures
 -b, --detach-sign  specify file with detached signature
 -S, --symmetric    enable symmetric mode of operation where encryption
		    is done using symmetric cipher and signatures are
		    hashes, and specify a filename of symmetric key or hashes

Key management:
 -g, --gen-key        generate keys for specified algorithm
 -g help              list available cryptographic algorithms
 -k, --list           list the contents of keyring
 -K, --list-secret
 -i, --import         import keys
 -I, --import-secret
 -p, --export         export keys
 -P, --export-secret
 -x, --delete         delete matching keys
 -X, --delete-secret
 -m, --rename         rename matching keys
 -M, --rename-secret
 -L, --lock           lock secrets
 -U, --unlock         unlock secrets

Key management options:
 -F, --filter       only work with keys with matching names
 -f, --fingerprint  format full key IDs nicely for human eyes
 -N, --name         specify a new name for renaming or importing
 -n, --no-action    on import, only show what would be imported
 -w, --with-lock    specify the symmetric key for (un)locking the secrets
 -w @SPEC           ask for password and expand it to a symmetric key
                    of type SPEC for (un)locking the secret

免責事項

Codecrypt はデータを食べます。注意して使用してください。F マニュアルを読んでください。

著者は独学の暗号学者です。

ツールをダウンロード