暗号計算機屋のブログ

なにか思いついたことを不定期に更新。

モンゴメリ乗算の累積加算における分割加算の証明

はじめに 今年の4月にFPGAをはじめたときにFPGAにDSP(乗算器)が多数あることを知った。 これでモンゴメリ乗算が高速化できるわけだがアルゴリズムをそのまま実装するとビット長の大きな累積加算が、ビット長とともに周波数が下がり性能がでない。 そこで分割…

FPGAで加算器を共有して面積を小さくする

このページで説明する加算器を共有して面積を小さくするテクニックは勝手に使っていいのかという質問がありました。 勝手に使っていただいて大丈夫です。 はじめに XilinxのFPGA(Artix-7)でDSPを使用せずにLUTで加算器を作る場合、加算器の入力を構成するLUT…

Xilinxの論理合成ツールと勝負してみた

はじめに 論理合成ツールは、これまでほとんど使ったことがなく、論理合成ツールの性能がどのくらいなのか、ちょっとだけ試してみた。 もちろん人間が作った論理と比較して、人間が勝ったから、ブログに投稿しているわけで、この初戦の結果だけで判断しない…

論理設計はどうやって学んだのか?

はじめに 僕の経歴を見ると早稲田の電気工学科を1992年3月に卒業し、同大学の大学院の計算機工学科を1994年3月に修士を卒業。 日立の中央研究所の超高速プロセッサ部に1994年4月に入社と、CPUとか暗号プロセッサとかを開発するのに最適な経歴です。 ところが…

ICF3-Fの技術と今後について

2018年9月5日 補足1、補足2を追加 2018年9月4日 修正: ICF3-Fは鍵長が2倍になると処理時間が2倍強と書きましたが4倍強の間違いでした。すいません。それでも内容に大きな影響はないと思います。 背景 結論を先に言うとICF3をFPGAでSSLアクセラレータにしたIC…

ICF3-Fのモンゴメリ乗算器が高速である仕組み

ICF3-Fは1999年のICF3をFPGAに実装するために設計を、はじめたバージョンです。 MITの研究者が公開鍵暗号の高速化を可能にする乗算器を発明したとか、そういう話題を、たくさん輸入しはじめていると感じたので、僕が海外のパクリではないことを証明するため…

FPGAを使ったSSLアクセラレータのICF3-F

これから設計して性能が出そうなら売れるものになるのかも、という話で具体的な計画があるわけではないです。 1999年の暗号LSI ICF3をベースとしてFPGAに特化したSSLアクセラレータを考えていきます。これまでFPGAのSSLアクセラレータでは性能が出せず商売に…

IT業界で数学の才能が何の役に立つか

取り合えず僕に数学の特技があると思って聞いてもらえるといいと思います。😉 1999年の暗号LSI ICF3の開発で僕がモンゴメリ乗算を採用することに反対した理由を説明すれば、数学の才能が役に立つということが、わかるように思います。 ICF3を開発した部署は、…

1997年 東大の「疑似非同期式マイクロプロセッサ」

僕は1994年に日立 中央研究所 超高速プロセッサ部に入ったが、次の年には超高速プロセッサ部は無くなった。プロセッサを作るやつは「犯罪者」であり受刑者のような雰囲気だったのは確かだ。そして僕はIBMのCPUを買うための仕事にとりかかった。 1996年、大学…

MicroBlaze性能評価

目的 手っ取り早く自作CPUの性能を評価するためMicroBlazeと比較できるようにする。ベンチマークは自作CPUの性能を測るプログラムを簡単にするため、あまり意味はなく四則演算や論理演算、シフト命令が適当に入るような小さいものを自作した。FPGAの経験は浅…

ICF3とICF3-Vの違いと、何ができそうかという話

ICF3をオープンにして2年近くになっています。そしてICF3が、これからどんな用途に使えるのか説明してきました。ネットワーク監視カメラのセキュリティに有用だと言った気がします。ICF3は1999年のLSIですが、世界一の高性能であったこともあり、廉価なIoT…

1999年のICF3で楕円暗号を実装した社内資料の完全公開

以前から、1ページ目だけ公開していたのですが全ページを公開しました。ICF3でビットコインなどに使われているECDSAを実装するのに、あると便利な資料だと思います。 著作権は平山 直紀にあります。 以下のURLからダウンロードできます。 http://openicf3.i…

1999年 ICF3 暗号プロセッサ ゲートレベルの全設計図 初公開!

暗号プロセッサ ICF3は1999年に日立のメインフレームの暗号装置として世界に製品出荷されたLSIです。 当時、RSA暗号の性能で世界一でした。 ICF3の暗号プロセッサのゲートレベルの全設計図を初公開しました。 18年前、LSIのゲートレベルの設計での開発の様子…

SSLサーバー証明書の秘密鍵を調べてみた

暗号プロセッサ ICF3の用途は、IoT小型コンピュータであるが、さくらインターネットなどの専用サーバー(物理サーバー)も便乗できるのではないかと考えています。専用サーバーを利用する客はセキュリティを重要視する客であるためSSL証明書の秘密鍵は、暗号プ…

ICF3のモンゴメリ演算器の図、初公開

1999年のICF3の開発で日立の研究報告書に掲載されたもの。僕が担当して書いた部分から引用しました。インターネット上では初公開だと思う。日立が別途、インターネット上で公開していなければですが。 山形大学 城戸淳二(早稲田 理工OBらしい)さんの白色有機…

IoTの原価を下げる暗号プロセッサICF3

背景 ICF3はIoTデバイスに搭載する暗号プロセッサとして1999年製ながら奇跡的にジャストミートしています。その理由については、これまでいろいろ説明してきました。ここではIoTデバイスの原価を下げる暗号プロセッサについての説明です。 要点は2つ モンゴ…

ICF3のRSA 4096bitの性能改善アイディア

背景 1999年のICF3でもRSA 4096bitは演算可能だが、ICF3が持つ専用演算器(モンゴメリ乗算器)は1024bitなので使うことができない。 このためRSA 4096bitの1演算の処理時間は800msと、かなり遅い性能です。 この性能でもIoTデバイスでは、使える場合も、多いと…

モンゴメリ乗算のアルゴリズムを使わないICF3

背景 ICF3はモンゴメリ乗算器を搭載した暗号プロセッサで1999年に製品化、RSA暗号の性能で世界一でした。 現在、IoTデバイスに入れる電子証明書の秘密鍵を暗号プロセッサ内で演算させ秘密鍵を漏洩させないことでセキュリティを向上させたいという需要が沸い…

暗号プロセッサ ICF3の日本のオリジナリティ

18年前の暗号プロセッサICF3 ICF3はモンゴメリ乗算というアルゴリズムを実装したLSIです。「なんだ海外のアルゴリズムを実装しただけじゃん」と思った人もいるかもしれません。そういう人のために。 ICF3 https://openicf3.idletime.tokyo/ Wikiでモンゴメリ…

nhira型モンゴメリ乗算アルゴリズム

とりあえず この証明だけは、まだ、役に立つかも。というところ。 はじめに RSA暗号を高速化するためのアルゴリズムとしてモンゴメリ乗算が有名だが、その改良型がC.C.Yang(IEEE 1998)によって論文発表された。それをもとにDesign Wave MagagineのRSA暗号コ…

HDD再生の研究

失敗は成功のもと HDDを廃棄して都市鉱山の利用研究をするよりHDDを再生したほうが地球環境にいい。そんなことを考えている。そして再生したHDDによってお金の節約も狙う。個人でわかる範囲で調べているため、もっと詳しい人はいるだろうが、もっといい情報…

世界一のRSA暗号LSI ICF3のアルゴリズム

アルゴリズムの解説ではなく僕が1998年にICF3の開発を開始したときに渡された資料の公開です。学生の頃は情報系の科目をメインに取っていましたが電気工学科の卒業ということもあり会社に入ってすぐの頃は電子回路シミュレーションをしていました。次にIBMの…

廃棄するHDDレコーダからHDD 80GBを回収

日立製作所 2003年製のHDDレコーダを放置していたがHDDが足りなくなったので、HDDレコーダから回収することに。 中を開けてみると、でてきたHDDはSAMSUNG製(韓国)だった。 日立すら買わない日立のHDDを誰が買うのだと思いつつ、日本のHDD事業について調べて…

3、5、7で割った余りを計算する演算器

はじめに 1999年に世界一高速なRSA暗号のLSIを開発したが、その後、いろいろ研究していたときに見つけたのが7で割った余りを高速に演算する論理だった。 今では高校の数学で整数の性質で習う合同式を使えば簡単に証明できるが、それは2014年以降の話で、2000…

すべてがFになる (計算機工学版)

【すべてがFになる】「すべてがFになる (計算機工学版)」イラスト/izuna [pixiv]