Crypto

暗号系の問題に取り組むために必要な基礎知識やツールを紹介する

イントロダクション

暗号について学習するために役立ったページや書籍について。

Web で読めるもの

便利なツール

Webサービス

利用用途

サービス名

暗号化・復号化

Cryptii

素因数分解

factordb.com

鏡文字

Lunicode

アプリケーション

利用用途

ツール名

素因数分解

msieve

Haskell パッケージ

cryptonitememory は結構良い。cryptonite の使い方については Haskell で暗号学的ハッシュを扱う (翻訳) を読めばだいたいわかる。

Good

利用用途

パッケージ名

関数名

拡張ユークリッドの互除法

cryptonite

gcde

xamodnx^a \bmod n の計算

cryptonite

expSafe, expFast

パディング

cryptonite

pad, unpad

rot13

rot13

rot13

Integer → ByteString

cryptonite

i2osp

RSA 暗号

cryptonite

generateWith

aa11 (mod m)aa^{-1} \equiv 1 \space (\bmod \space m) を満たす逆モジュラ逆元 a1a^{-1}を計算する。ただし a と m は互いに素。

cryptonite

inverseCoprimes

Bad

利用用途

パッケージ名

関数名

素因数分解

arithmoi

factorise

素因数分解

primes

primeFactors