2025-06-13から1日間の記事一覧

xorshift128+

xorshift 関連記事 HITCON 2020 | 100pins

RSAによる署名

https://www.ipa.go.jp/security/pki/024.html がわかりやすいと思うので参考にする。目的としては Alice と Bobの通信において、Bobは#### 受け取ったメッセージが確かにAliceからのものであるか確かめたいと思っている。このために署名を行うが、署名の処…

拡大体

とか を 次の既約多項式 で割ったあまりの剰余環 はとisomorphicである の要素を表すときには剰余環の形式で表されることがおおい

Gaussの補題(多項式)

整数係数多項式 が 上で と因数分解可能である時、 は 上でも因数分解可能である 逆も成り立つ の係数全体を整数に持ち上げるような定数をそれぞれとすると, である。このときとなる のときOK それ以外の場合と表す からなる上で考えるとであるから、のいず…

全単射

bijection 関連記事 isomorphism bijection 対関数

SSSAAttack

ecpyは遅い # http://mslc.ctf.su/wp/polictf-2012-crypto-500/ def hensel_lift(curve, p, point):rq A, B = map(int, (E.a4(), E.a6())) x, y = map(int, point.xy()) fr = y**2 - (x**3 + A*x + B) t = (- fr / p) % p t *= inverse_mod(2 * y, p) # (y**…

ペアリング

Weil Pairing tate pairing 楕円曲線上の2点の組から、ある有限体への写像のこと 性質 (ただし 便利資料 https://github.com/defeo/MathematicsOfIBC/blob/popayan-temp/poly.pdf 及びその双対 があるとき、 が isogenyのとき、 関連記事 Weil Pairing DDH…

lattice

A Decade of Lattice Cryptography LWE SIS Crypto Constructions などがある 関連記事 Approximate GCD Problem

CBC

CBCモード

DSA

はmultiplicative order がとあらわされる素数(いわゆる安全素数) 鍵 公開鍵: 秘密鍵: 署名 が署名 検証 を計算し、 と等しいことを確かめる の肩の位数は なので が成り立つ r,sからy=gxをもとめる なので だし 当然ここの は でのはなし

sha1

https://shattered.io/ 関連記事 Crypto CTF 2021 | Salt and Pepper

Elgamal署名

ElGamal暗号を用いた署名。劣化DSAという感じ 鍵 として公開鍵、秘密鍵 署名 where として署名 検証 が と等しいかをみる

memo

https://en.wikipedia.org/wiki/Integrated_Encryption_Scheme https://en.wikipedia.org/wiki/Cramer%E2%80%93Shoup_cryptosystem

phiがわかっているときの素因数分解

from Crypto.Util.number import * from gmpy2 import isqrt p = getPrime(1024) q = getPrime(1024) n = p * q phi = (p-1)*(q-1) b = (n + 1 -phi) p_ = int((b + isqrt(b**2 - 4*n)) // 2) q_ = int((b - isqrt(b**2 - 4*n)) // 2) assert (p == p_ and q…

ガロア体の原始根

体の原始根 はsagemathで次のように求められる sage: p = 28151 sage: GF(p) Finite Field of size 28151 sage: f = GF(p) sage: f.primitive_element() 7 おす

sympy

from sympy.solvers import solve from sympy import symbols x, y = symbols("x, y", integer=True) solutions = solve([x + y - 12, x*y - 4060]) for s in solutions: print(s[x], s[y]) 関連記事 SEC-T CTF 2019 | Trivial rsa HITCON CTF 2019 Quals | …

楕円曲線:逆数をかける

で、 が与えられている時、をやる EC = EllipticCurve(GF(p), [A, B]) Q = EC((x, y)) P = inverse_mod(s, EC.order()) * Q EC.order() の代わりに EC.coordinary() でも良かったはず。楕円曲線の位数を使うこと 有限体の位数: 有限体に含まれる元の数 楕円…

uninterested_challenge_list

簡単すぎる 題意がカス 何をやらせようとしているのかわからない 関連記事 Fireshell CTF 2019|Adriano NeverLAN CTF 2019|Super Old School redpwn CTF 2021 | scissor redpwnCTF 2021 | baby redpwn CTF 2021 | round the bases redpwn CTF 2021 | blecc r…

RSAで一部の値がわかっている時

RSA Recovering cryptographic keys from partial information, by example how to factorize N given d How to recover cryptographic keys from partial information 参考文献 Recovering cryptographic keys from partial information, by example eが小…

カテゴリ一覧