babai's_rounding

CakeCTF 2021 | Matirx Cipher

#cakectf2021 with open("flag.txt", "rb") as f: flag = list(f.read().strip()) def hadamard(M): d = M.determinant() x = 1.0 for row in M: x *= row.norm() return (d / x) ** (1.0/M.ncols()) def keygen(n, d): k = int(floor(sqrt(n) * d)) while T…

GGH Cryptosystem

鍵生成 parameter :↑で出てきたようにの値はだったりする :暗号化に使うパラメータ。誤差の大きさ として格子の基底とする。このときは短いベクトルで、具体的にはのように選ぶ(where , さらに要素が整数かつ、であるようなを適当に選ぶ(と同様にの行列…

LWE

と 秘密の エラー があって、 判定LWE(Desicional LWE) とを受け取って、か かを判定する問題 探索LWE(Search LWE) とを受け取って、を復元する問題 を取る場合もあって、その場合はRing LWEと呼ばれる 判定RLWEをSISを解いて解決する 複数のインスタンスが…