世界を動かす技術を、日本語で。

暗号技術入門 – 暗号学の基礎コース (2017)

概要

  • Crypto101 は暗号技術の入門書
  • プログラマー向けに 無料公開
  • SSL/TLSなどの 実践的システム の理解を目指す
  • 脆弱性の悪用 方法も学習
  • PDFやEPUBなど 多様な形式で提供

Crypto101概要

  • Crypto101 は暗号技術の基礎を学べる 無料の入門コース
  • 年齢やスキルレベルを問わず プログラマー向け に設計
  • PDF、EPUB、Mobi など多様なフォーマットで配布
    • Mac、PC、iPad、iPhone、Kindleなど 幅広い環境で利用可能
    • DRMフリー で自由に閲覧・利用可能

学習内容

  • SSL/TLSのような 実用的な暗号システム の全体像を理解
  • ブロック暗号、ストリーム暗号、ハッシュ関数 の基礎解説
  • メッセージ認証コード、公開鍵暗号、鍵合意プロトコル、署名アルゴリズム の詳細説明
  • 実際に手を動かして学ぶ 実践型カリキュラム

ハンズオンと脆弱性

  • 一般的な暗号の脆弱性 を自分で検証
  • 管理者クッキーの偽造、パスワードの回復 など攻撃手法の体験
  • 独自の乱数生成器へのバックドア の実装方法も学習

歴史と発展

  • PyCon 2013 でのプレゼンテーションが起源
  • TLSを支える主要な暗号技術 を45分で解説する試みから発展
  • 書籍版では 暗号破り に重点を置いた内容に拡張

まとめ

  • Crypto101 は暗号技術の基礎から実践までを網羅
  • 攻撃手法の理解 によるセキュリティ意識の向上
  • 現役プログラマーや学習者 に最適なリソース

Hackerたちの意見

リンクありがとう!この『応用暗号学ハンドブック』は無料でダウンロードできるよ。[1] 最近、著者たちがオンラインコースと動画も提供してるんだ。具体的には:

  • 暗号学101:基礎(基本的な暗号プリミティブ)[2]
  • 暗号学101:実世界での展開(PKI、TLS、Bluetooth、AWS、Signal)[3] 他にもコースや動画があって:
  • 格子ベースの暗号学の数学(入門コース)
  • KyberとDilithium(標準化された格子ベースの暗号システム)
  • ハッシュベースの署名方式(LMS、XMSS、SPHINCS+)
  • 誤り訂正符号(線形、ハミング、ゴレー、循環、BCH、リード・ソロモン符号)[1] 応用暗号学ハンドブック: https://cacr.uwaterloo.ca/hac/

どこかにリンクがあったかは覚えてないけど、これと一緒に見るといいのが https://cryptopals.com/ だよ。これには多くの理論の実践例があるから。

俺が好きなタイプの暗号だな。

これ、すごくよく書かれてるみたい。25ページくらい読んでるけど、全体を読むのが待ちきれないよ。

デイビッド・ウォンの『リアルワールド暗号学』を読み終えそうなんだけど、これに興味がある人には超おすすめだよ。

「幸運なことに、我々はそんな大きな数を合理的な時間内に因数分解できるアルゴリズムを持っていない。しかし、残念ながら、それが存在しないことを証明していない。さらに残念なことに、ショアのアルゴリズムと呼ばれる理論的なアルゴリズムがあって、量子コンピュータ上で合理的な時間内にその数を因数分解できる。今のところ、量子コンピュータは実用的ではないけど、将来的に誰かが十分に大きなものを作れたら、RSAは無効になるみたい。ショアのアルゴリズムが量子コンピュータで実現するまで、どれくらい近づいていると思う?1962年にケネディが「我々は月に行くことを選ぶ」と言った時の月面着陸のように実現可能なのか、それともまだ全く道筋が見えないのか?」

https://pqcrypto2025.iis.sinica.edu.tw/slides/Invited3.pdf 編集:動画がいいならこちら - https://www.youtube.com/watch?v=nJxENYdsB6c

暗号解析の分野はあまり資金が投入されていないと思う。全ての暗号は、今までの人間の知恵の集合的な失敗の強さに依存している。多くの人は暗号を「解決済みの問題」と考えているけど、俺はそうは思わない。十分な数の暗号学者がアルゴリズム的手法を試して、しっかり報酬をもらえれば、彼らはおそらくアルゴリズムの弱点を見つけて(新しい数学を発明して)そういった仕組みを解くのが簡単になると思う。実際にショアのマシンが機能する前でもね。

「暗号解析の分野はあまり資金が投入されていないと思う。」本当に?それは変わるかもね。

いいね、シェアしてくれてありがとう!