跳到主要内容

千葉大学 融合理工学府 数学情報科学専攻 数学・情報数理学コース 2020年8月実施 専門 B10

Author

祭音Myyura (co-authored with GPT 6 Astra)

Description

一方向性関数 ff に対し、f(x)p(x)|f(x)|\le p(|x|) を満たす多項式 pp をとり、

g(x)=f(x)10p(x)f(x)g(x)=f(x)\Vert1\Vert0^{p(|x|)-|f(x)|}

と定める。\Vert はビット列の連結を表す。(1) x=x|x|=|x'| なら g(x)=g(x)|g(x)|=|g(x')| であること、(2) gg も一方向性関数であることを示せ。

题目描述

ff 为单向函数,输出长度满足 f(x)p(x)|f(x)|\le p(|x|)。定义 g(x)=f(x)10p(x)f(x)g(x)=f(x)\Vert1\Vert0^{p(|x|)-|f(x)|}。(1) 证明等长输入必有等长输出;(2) 证明 gg 仍是单向函数。

Kai

(1) 入力長を nn とすると

g(x)=f(x)+1+p(n)f(x)=p(n)+1.|g(x)|=|f(x)|+1+p(n)-|f(x)|=p(n)+1.

従って gg は Length-Regular である。

(2) ff の計算と多項式長のパディングで gg は多項式時間計算可能である。gg を非無視確率で反転する確率的多項式時間算法 AA があると仮定する。入力長 nny=f(x)y=f(x) を受け取ったとき、

z=y10p(n)yz=y\Vert1\Vert0^{p(n)-|y|}

を作り AA に渡す。AAg(x)=zg(x')=z を満たす xx' を返せば、g(x)g(x') の右端の 11 はパディングの区切りだから、その左側は必ず f(x)=yf(x')=y である。従ってこの算法は同じ成功確率で ff を反転し、一方向性に矛盾する。よって gg も一方向性関数である。