T機能


T-function
で暗号化、T-機能がある全単射のすべてのビット更新マッピング状態として記述することができるように 私 ′ = 私+ (( 0 ⋯
、 私 − 1)。
{x_ {i} ‘= x_ {i} + f(x_ {0}、 cdots、x_ {i-1})}
、または簡単に言えば、状態の各ビットが同じビットとその重要度の低いビットのサブセットの関数の線形結合によって更新される更新関数。状態内のすべてのビットの更新に重要度の低いすべてのビットが含まれている場合、そのようなT関数は三角関数と呼ばれます。使用されるブール関数に関係なく、また入力の選択に関係なく(すべてが出力ビットの片側からのものである限り)、その双射性(衝突がないため、エントロピー損失がない)のおかげで、T関数は現在広く使用されています。ブロック暗号、ストリーム暗号、PRNG、ハッシュ関数を構築するための暗号化。T-機能が最初で、2002年に提案されたA.クリモフとA.シャミル彼らの論文「可逆マッピングのA新しいクラス」に。TSC-1、TSC-3、TSC-4、ABC、Mir-1、VESTなどの暗号は、さまざまなタイプのT関数で構築されています。
VEST-4T-functionとそれに続く転置層
ので、算術演算などの加算、減算及び乗算はまた、T-関数(三角T-関数)であり、ソフトウェア効率単語ベースのT関数を組み合わせることによって構築することができるビット単位の論理を演算しています。算術演算に基づくT関数のもう1つの重要な特性は、その周期の予測可能性です。これは、暗号学者にとって非常に魅力的です。三角形のT関数は、推測と決定の攻撃に対して当然脆弱ですが、ラウンド間のビット単位の転置を適切に選択すると、その不均衡を中和できます。ソフトウェア効率の高い暗号では、算術演算をバイトスワッピング演算とインターリーブし、ビット単位のローテーション演算を少し使用することで実行できます。ただし、三角形のT関数は、ハードウェアでは依然として非常に非効率的です。
T関数には、各ビットに使用される更新関数のタイプと幅に制限はありません。その後の出力ビットの転置とT関数の反復も、双ジェクティビティに影響を与えません。この自由により、設計者は他のすべての暗号化基準を満たす更新機能またはSボックスを選択でき、任意またはキー依存の更新機能を選択することもできます(ファミリキーイングを参照)。
したがって、状態の各ビットのすべての更新関数の幅が同じであるハードウェア効率の高い軽量T関数を簡単に構築できます。VEST暗号のコアアキュムレータは、転置層によって2ラウンド後にバランスが取られ、ほぼ同じ幅のすべての2ラウンドフィードバック関数を作成し、「T関数」を失う、このような適度に軽量なT関数の良い例です。 「状態の重要度の低いビットのみに依存するバイアス。

参考文献
A.クリモフ; A.シャミール(2002)。「新しいクラスの可逆マッピング」 (PDF / PostScript)。
A.クリモフ; A.シャミール(2003)。T関数の暗号化アプリケーション (PDF / PostScript)。暗号化の選択された領域、SAC 2003、LNCS3006。Springer -Verlag。pp。248–261。
A.クリモフ; A.シャミール(2004)。マルチワードT関数に基づく新しい暗号化プリミティブ。Fast Software Encryption、FSE 2004、LNCS 3017 (PDF / PostScript)に |format=は|url=(ヘルプ)が必要です。Springer-Verlag。pp。1–15。
マグナス・ダウム(2005)。「狭いT関数」 (PDF / PostScript)。
J.ホン; D.リー; Y. Yeom&D。Han(2005)新しいクラスのシングルサイクルT関数。高速ソフトウェア暗号化、FSE 2005、LNCS3557。Springer-Verlag。pp。68–82。
A.クリモフ&A。シャミア(2005)。ブロック暗号とハッシュ関数におけるT関数の新しいアプリケーション。高速ソフトウェア暗号化、FSE 2005、LNCS3557。Springer-Verlag。pp。18–31。2007年9月26日にオリジナル (gzip圧縮されたPostScript)からアーカイブされました。