暗号勉強会

あまりコードが出てこない話

2/16日記

しばらく更新がなかったので、日記にします。 今日やったことは 新宿rsに参加しました。 forcia.connpass.com ぶっちゃけlogの話以外は知識が弱くてRust以外のところはよく分からなかったのですが、設計思想とかRustのクレートの話が聞けて楽しかった!次も…

対話証明系のモチベーション

ゼロ知識証明はもともと対話証明系というモデルから生まれた。この記事は基礎に立ち返って、対話証明系からゼロ知識証明の歴史を探ってみる。なお、ここで示している対話証明はゼロ知識ではないので、検証者に証拠などを提出してもよい。 NP証明系 対話証明…

検証可能な暗号、Camenish−Shoup暗号

以下の記事で紹介した論文に登場したCamenish-Shoup暗号について紹介する記事です。 tenn.hateblo.jp Camenish-Shoup暗号 検証可能な暗号化と復号が行える暗号方式であり、Crammer-Shoup暗号とPailier暗号を合わせたような形をしている。Crammer-Shoup暗号は…

2-out-of-2修正Elgamal暗号

修正Elgamal暗号はElgamal暗号を加法に対して準同型性を持つように修正を加えたものです。修正Elgamal暗号について以下のサイトがとても参考になりました! tex2e.github.io これに更に修正を加えることで、2-ouf-of-2のしきい値Elgamal暗号を構成することが…

ゲーム理論とマルチパーティ計算

はじめに 誰かが不正を働いたり、利潤追求のために動いても安全...それを保証した技術の例にブロックチェーンがある。 この記事では、それを一般化したRational Adversaryという研究分野について書く。まだ理解の浅い部分があるので気持ちだけわかってもらえ…

PI-SCA関連知識メモ

Computional q-DHI 問題 Re-randomize Camenish-Shoup(CS)暗号 exponential Elgamal Fiat-shamir ヒューリスティック Range proof 以下の記事のPI-SCAで使用されている知識に関して紹介する tenn.hateblo.jp Computional q-DHI 問題 が与えられた時にを計…

Two-Sided Malicious Security for Private Intersection-Sum with Cardinality(CRYPTO2020)を読んだ

どういう論文か Private Intersection-Sum with Cardinality(以下PI-SCA) 関連技術 Σプロトコル OPRF(Oblivious Psuedo-Randomness Function) PSI-CA(Private Set Intersection CArdinality) 共有鍵(key share) 新規性 手法 Semi-honest SecurityなPI-SCAの…

PSIとPSUについて調べた

PSIとPSU、そしてactiveな敵に対して安全なプロトコルについて簡単に調べたのでメモを残しておきます。以下の論文はgoogle scholarで出ます。 Extending Oblivious Transfers Efficiently(2003) Y Ishai, J Kilian, K Nissim ,E Petrankの研究。 概要 この研…

なんとなく分かってもらうためのSPDZ解説(プリプロセスフェーズ編)

SPDZはsomewhat準同型暗号(以下SHE)を使うことで高い効率性と安全性を実現したマルチパーティ計算プロトコルです。 SHEによる効率的なプリプロセスフェーズの実現。 semi-honest secureよりも高い、active secureの効率的な実装。 active secureなので、n個…

Mental PokerとGarbled Circuitについて解説!

この記事では古典的なマルチパーティ計算モデルであるMental PokerとGarbled Circuitを解説します。どちらも1980年代の手法でマルチパーティ計算の歴史を知る上では重要だと思います。 Mental Poker Garbled Circuit 2入力の場合 注意 多入力回路や多段回路…

Oblivious Polynomial Evaluationについて解説!

Oblivious Transfer(OT)と似たプロトコルOblivious Polynomial Evaluation(OPE)について解説します。1-out-of-2 OTについて説明すると、 送信者は2個のデータを送り、受信者はその中から1つだけデータを選ぶことが出来る。 送信者は受信者がどのデータを受…

相互通信を排除したマルチパーティ計算モデル※随時更新

NIMPC NIMPC(Non-Interactive-Multi-party-Computation)はマルチパーティ計算モデルの一つ。2014年、任意関数のNIMPCが実現された。従来のマルチパーティ計算モデルでは計算時の通信回数がボトルネックになっていたのが、NIMPCでは相互通信が排除されて…

RabinのOblivious Transfer(紛失通信)

Oblivious Transfer Exchange Of Secret(EOS)問題 EOSプロトコルの構成 EOSプロトコルの5について 1/2で素因数分解できてしまうのはなぜか Rabin暗号 素因数分解できる理由 まとめ 参考 Oblivious Transfer Oblivious Transfer(紛失通信)とは送信者が受信者…

秘密分散方式のモデル化とマルチパーティ計算手法について解説

参考論文 Secret-sharing:a survey https://www.researchgate.net/profile/Amos_Beimel/publication/220776045_Secret-Sharing_Schemes_A_Survey/links/09e41513f14a20f236000000.pdf この論文は暗号の中でも秘密分散法に焦点を当てたサーベイ論文。秘密分散…

PythonからC/C++を呼び出したい

C/C++で書いた関数、クラスをPythonから再利用したい。 Pythonを高速化したい。 などの理由から、C/C++をPythonから呼び出したいということがある。そのような場合に使える手法について書いておく。 1.Python/C API C/C++側で#include<Python.h>し、仲立ちとして機能す</python.h>…

Applying Classical Concepts to Parsing Expression Grammarを読んだのでまとめてみる

日本語タイトル:解析表現文法に対する伝統的手法の適用 Fordが提案したParsing Expression Grammarに対し、古典的な(CFGとかRE)文法スキーマで使用されていたFirst(x)やFollow(x)などの手法を適用してみて、どのよう助けを得られるだろうか?という論文。…