Home
2018年
2019年
2020年

4月30日 暗号プロセッサの仕様で何が難しかったのか

そもそも暗号プロセッサは専用演算器(モンゴメリ乗算器)に最適化されて設計されるものだった。 つまり専用演算器を取りかえることができるような設計にはなっていなかった。 ICF3(1999年) の例でいえば暗号プロセッサは専用演算器にループ数を変更できるカウンタと、 シフトレジスタの機能を提供している。
ところがループカウンタとシフトレジスタを専用演算器側に移すと、 専用演算器(モンゴメリ乗算器)を、取り換えることが可能な部品とすることが、できるようになった。 逆数演算器についても、モンゴメリ乗算器の基数に応じた、ほんの少しの変更だけで対応が可能。
暗号プロセッサと専用演算器(モンゴメリ乗算器)は、密接につながりつつも、 暗号プロセッサの命令セットアーキテクチャに専用演算器(モンゴメリ乗算器)の アーキテクチャの違いが表れないような方向を考えることができるようになった。
デバイスごとに用意された、どのSnakeCubeでも、 完全に同じバイナリが動作することは、難しいと考えていますが、命令セットアーキテクチャのサブセットでは、 ソースレベル互換が可能だとか、少しの修正で別のSnakeCubeにコードを移せるなどの メリットは、あるように思っています。

これまで、FPGAに26×17の乗算器があっても16×16の乗算器としてしか使えず、 乗算器の性能を十分に引き出すことができていなかった。 しかし16×16の乗算器であれば移植性の高いIPを作ることができた。 SnakeCubeではデバイスの持つ乗算器を最大限に活かしつつ、IPの高い移植性も実現することができる。 ASICであっても、あらかじめ用意された最適な乗算器を使ったほうが、 コストと効率面で、いい場合はあるでしょう。 ASICでは要求性能に合わせて面積を小さくできることのほうが便利かもしれない。
SnakeCubeはデバイス(FPGA、ASIC)の持つ乗算器の性能を 最大限まで引き出すことができて、しかも、プログラムの移植性が高い。


4月30日 暗号プロセッサのIPビジネスが立ち上がるかも

僕は2年前に高性能、高効率なモンゴメリ乗算器を発明しました。 これに20年前に僕が発明している暗号プロセッサを接続して、 暗号プロセッサのプログラムが書けるように仕様を決めて、 その実装(SnakeCube)をIPとして販売する会社ができるかも。という話。
この話ができるようになったのは、FPGAのような各社が独自仕様のDSPを出している状況でも デバイス非依存な暗号プロセッサというものが、作れる見込みが見えてきたからです。
SnakeCubeのアーキテクチャは実装し易く、 またモンゴメリ乗算器の基数によって面積と性能を制御できる。 IPとしては、CPUと比べて扱いがいいのではと思います。
日本の半導体シェアが50%から7%になっていることがニュースになっている現在、 暗号プロセッサIPのファブレス企業を、日本に爆誕させて経済を回せるようになることを 目標にできるようになった。そう考えています。


4月29日 全身筋肉痛で寝ていました

脳直結回線により脳を破壊することも可能なようだが、まずは脳を痺れさせて、 外傷を最小限にとどめることをやられている。 痺れ率、20%とか、かなり細かい制御が可能。僕の行動が痺れで雑になるのと、 記憶が揮発していく。全体的な揮発と、酒の飲んだ次の日、前日の記憶がないとか、そんな感じの揮発。
外傷はなくても、文章を読む、速度が著しく低下している。 半導体関連の記事を読んでいるときは、ゆっくり読めば、読める。 しかし、文学作品とか、とくにカタカナが10文字以上の単語が、読めない。 1文字に1秒以上かけて、ゆっくり読む必要がある。
相変わらず左目をつぶらないと作業ができないことも多い。 脳直結回線を、いじるような奴を、どうにかして、痺れ率0%、すべて0%にしないといけないのですが。
すべて0%になったときの脳の損傷率が気になる。


4月28日 昨年、UART回路を自作していた話

SNSをしていると論理回路の話が目に入ってくるので、この日記を書いているという状態。 UART、昨年、いろいろ研究をしていました。そのときの日記にも書いてあるのですが、 もう1年以上の前のことで、日記を1年以上遡って読む人は、あまりないだろうと思ったので、 少しだけ話してみます。
送信回路のクロックと受信回路のクロックが微妙に違っていて、徐々にズレることは あるような気がしたのでズレを補正する回路を作りました。この日記で回路図を公開しています。 XilinxのFPGAでしか動作しない回路図ですけど。
ちなみに僕はICF1(1997年)、ICF2(1998年)で通信回路の担当でした。UARTではないですけど。 既存の回路を修正するだけだったのですが、ICF1、ICF2、いずれも僕が不良を作ってもう一度、 LSIを作り直すということをしています。不良でLSIを作り直すと、お金がかかるので、 どうして不良になったのか原因を詳しく説明できる記憶は残っています。 ただ長くなるので、ここでは辞めます。 ICF2の話をちょっとすると「怪しいから確認して」と言われながら不良になっています。 つまり、わかっていても難しいところだった。


4月27日 SnakeCube動作検証環境の整備

verilogでハードを作る予定でしたが、まだSnakeCubeの動作検証環境のための プログラミングとなっています。単純な乱数テストでは検証精度があまりないので、 コーナーをつく乱数テストができるような乱数生成とテストプログラムの作成。
長時間乱数テストによってテンポラリファイルが無尽蔵に作成され、削除され、 フラッシュのファイルシステムが痛むので、データの受け渡しに 標準入出力を利用するように変更。 いちいちRAMディスクを作成する手間がなくて便利。 パイプが使えるOSならMS-DOSなどの古いOSも使えるようになるはず。 MS-DOSの32bit C言語環境を作る暇はないのでMS-DOSはしないと思いますが。 一つのOSに依存する脆弱性を攻撃されないように。です。


4月26日 頭痛が止まらない

僕の脳の半壊は、あまりいい状況にならないと思っています。

2:00AM 頭痛、痛い。何もできない。

2:30AM 頭痛、痛い、痛い、痛い

3:00AM 頭痛、痛い、痛い、痛い

11:00AM おはようございます。 頭痛は朝方まで続いていましたが、眠ってもいました。ようやく、ほぼ平常に戻りました。

3:30PM 痛みはなくなったが、まだ頭が痺れていて ネット上の記事が常人の10%くらいの速度でしか読めない。

21:30AM まだ頭は少し痺れていて調子は良くないが作業開始。


4月26日 ICチップの物量は制御できる

SnakeCube をICチップにすることを考えると要求性能に対して速すぎることはあるかもしれない。 性能を落してチップの面積を小さくしたい場合もあると思います。 そういう設計が、とてもやりやすいかもしれない。 モンゴメリ乗算器の基数2^17を増減させるだけでできます。 暗号プロセッサのマイクロコードのほうは、設定した基数に応じて ループ数と初期設定値を変更すればいいのです。 数日前のこの日記「 SnakeCubeのRSA暗号のコード公開(4月22日)」 のPDFが役に立つかも。


4月25日 今日も頭痛で作業が進んでいません

目を開けているのが辛い。遠隔から脳を制御して、 さまざまな妨害をしてくる奴が活動を停止していないのです。 僕が知っている、こういった事例では、日立の中央研究所に同期で入った 東北大の修士卒の人がいます。会社に入ってすぐにある新人の工場実習、 茨城県茂原市で大型テレビの生産ラインに入ったのですが、その同期がリタイアしました。 寮から毛布にくるまれて出ていく姿を見た記憶が。僕の、そばにいた同期の文系が、 「壁から声が聞こえる」といいながら怯えていたと解説してくれました。
国立大学だから安全というわけではないのかも。


4月24日 特殊電子回路(株)がPCIeカードを作るみたい

特殊電子回路(株)の社長「なひたふ」さんがPCIeカード作るよ、 というツイートがあって、やっぱり見てみないと、いけないんだろうなと思って、 「なひたふ」さんのサイトを拝見させていただいています。
Artix-7のPCI Express基板を作りたい
技術以外の問題を、どうにか考えないと、という話になるのかと。
「なひたふ」さんはFPGA業界では、とても有名な方なんだと思います。 経歴を簡単に説明すると東工大から東大の大学院に入って日立の関連企業(日立電子サービス)に入って 日立を退職。この関連企業、僕のいた大型コンピュータの事業部とつながりが強い企業なのです。 当時の日立のルールで各事業部は、関連企業を2つまで持てるというものがありました。 その2つのうちの一つが日立電子サービスです。
つまり僕の日立時代の上をたどってたどりつくところと、 「なひたふ」さんの日立時代の上をたどってたどりつくところが、同じみたいな。
この意味するところを払拭できる、お話ができばいいなとは、思っています。
ちなみに僕が1996年?にアメリカのサンノゼのAMDの本社前のホテルに3か月滞在したとき、 僕の身の回りの世話をしていただいたのは日立電子サービスの方。
技術的な話をすると、僕が考えている基板はDIGILENT Cmod A7-35TかCmod S7-25Tです。 仮決めなので、これから、どうなるかは、わかりません。 通販でCmod A7が約1万円、Cmod S7が約9000円という価格のようです。 どちらもPCIeではなくUSBです。サーバで使われるPCに刺せるPCIeの数は、少ないと 思っていて、まずUSBかなと考えています。SSLアクセラレータが完成するなら、 欲しいというところがあれば、ご意見いただけると、助かります。

「なひたふ」さんのPCIeカード、最初はArtix-7の一番、 安いXC7A15Tを搭載する予定だったみたいで、これに僕の8bit CPUのオープンソース Zeviosを搭載して コストパフォーマンスの高い装置を開発するということも考えられるかと思いました。 数千以上の量産品を考えないとコストパフォーマンスは得られないとは思いますが。
Cmod A7、S7でもZeviosで、遊ぶことはできると思いますけど。 将来、ASICにするマイコンのプロトタイプを、作るとか。 Zeviosは将来、産業に影響を与える可能性があると僕は思っているので、 暇なときに、コンピュータ・サークル関係の人が、自作して楽しみながら、 公開して、有名人になってほしいなぁと。
とても言うのは、心苦しいのですが、税金が投入されたCPUとか、 頭が高い人達が大勢で作ったCPUを、一般の人が使いたいと思うのだろうか。 長期的なことを考えると厳しいと思います。 この8bit CPUは、これまでのCPUとは違うと思います。 そのことを一般の人にも知ってほしいと思っています。


4月24日 僕の基板設計の経験

最近、ソフトウェアの話が多かったので、知っている人は 大勢いると思ったのですが、基板設計の話をしてみます。 僕には大型コンピュータの基板設計の実務経験が数年あります。 成果物は大型コンピュータとしては中型で、その中型の中では 最上位機種の基板の配線長を設計しています。 これには電子回路シミュレーションによるノイズ評価が必要で、 電子回路シミュレーションと、そこから得られたデータを使って 数百本の配線長を計算するプログラムを作っています。
基板設計の後も、事業部長直属の年輩のアナログエンジニアの方に、 配線の(電磁気学的な)表皮効果のための電子回路シミュレーションなど、 教えていただいています。 毎週水曜日は定時退勤日で、工場に勤務しているほとんどの人が 定時に帰る中、熱心に個人授業していただいたような気がします。
1997年のICF1は、僕がリーダーだったのですが、LSIが事業部に 届いて電源まわりの波形が、ちょっと変だという連絡を受け、 水曜日、みんなが定時退勤していくなか、 LSIの電源部にプローブを当てるだけの手伝いをしたりしてました。
その後、すぐに潰れてしまったプロジェクトですが、 IBMのPCI暗号カード4758の互換カードを作ろうというプロジェクトに 入って、PCIexpressの英文の仕様を読むだけ、読んでいました。
僕は、言ってみれば東大卒、御用達のエンジニアとして、 開発したものが製品出荷される立場にありました。
日立の技術開発部にある技術が僕に無制限に流入する ということはなく開発に必要な最小限の技術が入るという仕組み。 暗号LSI ICF3の論理設計では、Carry Save Adder (1ビット全加算器のうまい使い方みたいな)が、入っています。 そして、RSA暗号の演算器を設計する前に設計していたMulti2暗号 の設計を開始するときに、入ったものでした。少なくとも、 RSA演算器設計中に、タイミング良く、Carry Save Adderを会社が 注入したということではない。それ以外は、入っていない。
少し脱線しましたが、基板設計の経験があるという話でした。

蛇足 僕は大学では文化際(早稲田祭)でプラネタリウムの ステッピングモーターの制御基板を設計、はんだづけをしてます。 先輩からは「とにかくステッピングモーターはトルクが小さい。」 「ユニポーラ駆動で作った」「秋葉原の秋月電子のキットがいい」 という情報をもとに、秋月電子の店の前に並んでいた、 恐らくジャンクのステッピングモーターをバイポーラ駆動させる プラネタの制御基板を作り、文化祭初日から動かした、 ということもやっていたなぁと。 (制御基板とNECのパソコンPC-98を接続する8255ボードは借り物。 誰が貸してくれたのか、よく知りません。多分、大学だったんですよね。)

Carry Save Adderは、現在開発している SnakeCubeでは僕の発明した Segmentation Adderに 置き換わっているので設計に日立に由来するものはありません。


4月24日 電子書籍を3万円分買ってしまった

昨日は、頭痛でほとんどなにもできない状態でした。 作業できないので電子書籍を30,513円分(48冊)購入してました。 ONE OUTS 6冊(15巻~最終巻)を購入して、あとはR18の過去作です^^;


4月23日 高速化の秘密はパイプラインなの?

本日、Facebookに投稿した内容の転載
4月5日に投稿した僕のブログ 「巨大整数用四則演算プロセッサSnakeCubeが高速である秘密」 ですが、高速である秘密はパイプラインと思う人も多かったかも。 そしてパイプラインというキーワードから思い浮かべるのは、今では、 いい教科書があって誰でも簡単みたいな状況なんだろうと思います。
暗号プロセッサではCPUアーキテクチャとは、 ちょっと状況が違うという説明をしようかと。

暗号系の演算で多いのは演算した結果を次の演算に使う、 そしてそれを繰り返すというものが多く、CPUアーキテクチャの パイプラインでは、Interlockしまくります。
そこで演算した結果をフリップ・フロップを入れずに、 次の演算開始のフリップ・フロップに入るようにするのです。 フリップ・フロップを入れてパイプライン化をしても、高速化されないので、 パイプライン化せずにフリップ・フロップを入れなければ、 フリップ・フロップを通過する遅延時間が、削減され高速化されます。 これが一般的な技術。(あまり問題になることはないと思ったのですが、 ここに他人の設計の種明しが入っていたので削除しました)

僕の暗号プロセッサSnakeCubeは、僕の発明したSegmentation Adderで超並列的に加算、 そして、強引にパイプライン化をしています。 FPGA(ASIC)の多数の全乗算器が持つ理論限界の50~80%まで出せているのではなかと考えます。 場合によっては理論限界の100%に近い数字が出せるものも、 作れるようには考えますが、それは全乗算器を100%にすることしか考えない アーキテクチャなので、暗号プロセッサの製品としては、いいものではないのかも。 具体的な話をするとGPUのようなスレッド化をすれば、理論限界に近づくかもしれないですが、 スレッド数の多いプロセッサは、スレッド数を満たすジョブがないと、やっぱり効率が下がるので、 乗算器だけ理論限界にしても、意味がないということになるのです。

まとめ。自分でいうのもなんですが、SnakeCubeは、とても良くできた 暗号プロセッサのアーキテクチャということでした。


4月23日 SnakeCubeのシミュレータが完成

FPGAに実装するための期待値を作るには十分なシミュレータが完成したということで、 これからverilogでXilinx FPGAに実装していきます。 一度、全てのパートを見て部品を作って、シミュレータで期待値をしっかり作れる準備をして、 これから本番の組み立てに入るという状況です。最近ICチップの話をしていますが、 SSLアクセラレータで論理を十分に検証することが先だと思っています。
でも今日、一日、頭はフラフラするし、目の焦点が合わないし、お腹はなんか痙攣するし、 どこも致命的ではないけど、そういうことやっている人の気が知れない。あまり作業、進んでいません。


4月23日 日立ICチップの論文をわかりやすく説明

この論文は数学でRSA暗号を4倍高速にする 中国人剰余定理をICチップで使うと脆弱になるから数学で対策するとルネサスの 実際のチップで1.69倍になる方法が示されています。(←メモリの物量は増えている)

SnakeCubeの発明によってハードの性能は少なくともICF3(1999年)と比較して4倍以上は 高速化されている。ハードの物量が増えているのでSnakeCubeの数学だけで、 どのくらいかわからないですが、数倍は数学だとするとSnakeCubeが優れる。 そしてハード高速化の方法によっては物量が増えて実装できなくなる場合があるが、 物量が増えても実装できるアーキテクチャがSnakeCubeの特長。

実は、この論文とSnakeCubeは併用できるものなのですが、 米国の評判を考えるならSnakeCubeになるのではないだろうか。


4月23日 追記しました

日記、「日立中央研究所のICチップの論文」に追記しました。 (中国人剰余定理を使わない僕のSnakeCubeのほうが米国では、評判がいいかも)


4月23日 日立中央研究所のICチップの論文

言いたいことは1999年に世界一高速だったRSA暗号LSI ICF3が闇に葬られていたということ。
1994年、僕が日立製作所の中央研究所に入ることになって、大学の先生に 電子情報通信学会に入っておいたほうがいい言われたので日立を辞めるまで会員(会員番号9402020)でした。
ツイッターのタイムラインに電子情報通信学会が論文を無償で公開しているという ツイートがありました。釣られて電子情報通信学会の論文の検索を始めました。 次の論文が見つかり、これは有料だったので、論文のPDFを1,650円で購入しました。
「中国人剰余定理を用いた耐タンパー RSA 暗号処理方式」(電子情報通信学会論文誌 2004/4 Vol. J87-A No. 4)
2日前にも徳島大で論文データ不正というニュースがありました。 ですので学会の論文を鵜呑みにしないことを決めています。
この論文の取り上げている、海外の研究者のサイドチャネル攻撃の方法については、 重要かなと思いました。それはサーバ向けの高性能暗号ハードの研究を続けている僕ですが、 先日、クレジットカードのICチップにも、良さそうだということを言い始めたからです。
有料の論文なので詳しいことは書きませんが、この論文で提案している方法が、 実際にどのくらい有効なのか、ちょっと詳細に検証してみないと、わからない。 論文にある実測値と測定環境から役に立つレベルにあるようですが、 提案方によって、プログラムやメモリの消費量も増大しているので、 それが現代の環境でやってみると、もう少し増大してしまうと、 僕のSnakeCubeで大きな鍵を計算できるようにしてしまったほうが、いいのかもという状況です。
ICチップの安全性を高めるため耐TA性を向上させるには、入力値や秘密鍵によらず、 べき乗剰余演算全体の処理時間を一定化することと書かれてあって、その例として 海外の論文(2002年)しか挙げられていなかった。
僕の1999年のICF3のほうが、先に製品化され、世界の銀行に納品されているのに。 ICF3が闇に葬られている。と思いました。 ICF3の開発は、僕の他に中央研究所を経由して大型コンピュータ事業部に転勤した 2人が関与しています。1人は設計リーダで、まとめ役とIBM CPUとのI/F論理設計。 もう1人は、シミュレーションによる検証チームのリーダ。 演算器関係の実際の設計は、DES暗号を除いて、ほとんど僕がやっています。
あまり関係ない話ですが、論文を書いた人のうち、一人は僕と同じ大学の2年上の先輩で、 僕と同じ電気工学科(←昨日、会費振り込みました)。中央研究所で直接、会ったことがあるかも。

4月23日 7:10AM 追記
この文章を読み返すと論文に、僕のSnakeCubeをぶっ潰す方法が書かれていると 期待する人があるかもと思いました。 そうではなくてICチップみたいなデバイスでは、中国人剰余定理を使うと、 ICチップ内のプログラムで、あれこれ対策しないといけないと書かれてある。 その対策案が書かれています。
僕のSnakeCubeは、中国人剰余定理を使わなくても、僕が考えたハードウェアが 高速なので問題ないということ。
高性能サーバ向けの暗号装置では、ふたを開けると、秘密鍵が消えるとか、 十分なタンパー対策がされているので、この論文にあるような数学で 対策することもなく、数学で対策するとリソースの消費量が多くなったり、 計算時間が2倍以上になったりとデメリットも多いのです。 つまりICチップみたいなところで、デバイスによっては、役に立つことがあるかもということなのかと。
ICチップで中国人剰余定理を使うことによる脆弱性を数学によって対策するのか、 僕のSnakeCube、高速に演算できるハードウェアのアルゴリズム(数学)の発明によって問題を解決するのか。 (中国人剰余定理を使わない僕のSnakeCubeのほうが米国では、評判がいいかも)


4月22日 SnakeCubeのRSA暗号のコード公開(4月22日)

SnakeCubeのシミュレータは、まだ動き出したばかりで、その雰囲気がわかる程度ですが、 マイクロコードのサンプル(1024bit べき乗剰余演算、つまりRSA2048)をPDFで公開します。
この目的は5Gで使われることになるXilinxのFPGAに、大きな公開鍵暗号や、 新しい暗号アルゴリズムを、スムーズに採用できるように、やるだけ、やってみること。
べき乗剰余演算マイクロコード(4月22日)
4月19日に初公開、そのときの日記に少し解説があります。
差分は、XilinxのArix-7用のコードの他、Xilinx UltraScale用、Xilinx VERSAL用、 INTEL可変精度DSP用を追加しました。 Artix-7用のシミュレータで、UltraScale、VERSAL、INTELをエミュレーションしているというのが 正しい表現かもしれません。 UltraScale、VERSAL、INTELの順にエミュレーションの精度が下がります。 しかしUltraScaleは、サンプルでは同一コードになりました。 ほとんどのUltraScaleコードがArtix-7と同一になるのではないかと、今頃、気づきました。
シミュレータ(Windowsバイナリ)に興味がある方は、ご連絡ください。 特許があるような楕円暗号のコードとか、新しいアルゴリズムで利権を持っているような人とか限定です。


4月21日 シミュレータにVERSALモードを追加

5GにXilinxのVERSALが採用されたというニュースがあったのでXilinxのArtix-7用に開発していた SnakeCubeのシミュレータにVERSALモードを追加。 VERSALモードで開発されたコードが、修正することなくVERSALで動作することは期待できませんが、 かなり精度あるシミュレーションが可能だと思われます。
VERSALモードを追加して、気づいたのですが、デバイス(FPGA,ASIC)によって大きく違うのは新型モンゴメリ乗算器です。 暗号プロセッサと新型モンゴメリ乗算器を分離して、なるべくデバイスに依存しない暗号プロセッサのISAが、できそう。 つまりSnakeCubeがISAのブランドになるみたいな。 実際には、CPUと比べるとデバイスに依存する部分が、多く存在してしまうと思われますが、 デバイス非依存なコードのISAを、個々のデバイスのISAの上に、乗せることも考えられるかも。
新型モンゴメリ乗算器はArtix7だと基数2^17、VERSALでは基数2^23になるのですが、暗号プロセッサのコードから 演算器に基数に応じたループ数を入力するだけで、いいことに気づいたのでした。 初期値でRを乗算して余算するところも、数字を変更する必要がありますけど。
XilinxのUltraScaleモードも追加してしまいました。次はINTELモード。
さいさきがいい。


4月21日 Qiitaに投稿した記事を1つ削除しました

削除した記事はCrieitにも投稿しているので、興味ある方は、そちらに

Crieit記事「8bit CPU ATmega328の除算性能を測定してみた」


4月20日 SnakeCubeがIntel FPGAに実装できるか

Intel FPGAには多くのシリーズがあります。MAX10シリーズを除いて Intelは9x9、18x18、27x27のように、アプリケーションに応じて精度を変更できる 可変精度DSPを採用しているようです。SnakeCubeはDSPに積和演算の機能があれば、 効率的に実装できます。Intelの可変精度DSPは18bit×18bit+36bitがあるので効率的 に実装できます。ただしSnakeCubeで使っているモンゴメリ乗算は 乗算器のサイズに合わせてアルゴリズムを変形できるのでIntelの「可変精度」 は負担でしかなく、固定精度のXilinxが効率面で有利という状況です。


4月19日 SnakeCubeのRSA暗号のコード公開

SnakeCubeのシミュレータは、まだ動き出したばかりで、その雰囲気がわかる程度ですが、 マイクロコードのサンプル(1024bit べき乗剰余演算、つまりRSA2048)をPDFで公開します。
この目的は5Gで使われることになるXilinxのFPGAに、大きな公開鍵暗号や、 新しい暗号アルゴリズムを、スムーズに採用できるように、やるだけ、やってみること。
べき乗剰余演算マイクロコード
まだ5Gで使われることが予想されるVERSALではなくArtix-7を想定したもの。 このためモンゴメリ乗算の基数が2^17です。VERSALは2^23です。 プロセッサの周波数と乗算器の周波数の比は実装によって大きく違う値です。 このシミュレータでは8としています。 A×BとA×Aを同時にするタイプです。秘密鍵を1bitづつ演算しますが、 0と1で時間差が出ません。1サイクルもずれることなく同じ時間で演算します。
少しだけ解説すると、モンゴメリ乗算のアルゴリズムが発明された1985年以後、 モンゴメリ乗算のアルゴリズムの中にある比較減算が課題として考えられてきました。 1999年のICF3は、加算器を駆使して、ほとんどトランジスタ数を増加させることなく この比較減算と除算、余算ができました。SnakeCubeも、これと同じアーキテクチャとなっています。
モンゴメリ乗算のアルゴリズムの比較減算を削除した改良型も発明され日本の雑誌、 DesignWave(CQ出版)で解説された記事もあるようです。
1サイクルで比較減算ができるICF3アーキテクチャでは、この改良型は微妙で、 Rを少し大きくする必要があり、1ループ多く演算すると1サイクル多くなってしまって、 あまり効果がない場合もあります。しかし数パーセントか、それ未満か、 高速化されると思われます。 PDFのコードは普通のモンゴメリ乗算ですが、改良型も実装可能です。
XilinxのFPGAに実装して性能を測定することが最優先ですが、シミュレータ(Windowsバイナリ)に興味がある方は、 ご連絡ください。特許があるような楕円暗号のコードとか、新しいアルゴリズムで利権を持っているような人とか限定です。
MicrosoftやGoogleが提供するような開発環境とは、全然、違うものとお考えください。 現在公開中のICF3のシミュレータ で、コードを開発するような感じです。

SnakeCubeシミュレータは3年前オフラインでコンパイルできる環境を作っています。 オフラインのまま3年が経過している状況で、 つまり開発環境からシミュレータのコードが漏洩することはないと思われます。


4月19日 SnakeCubeのWindows版のバイナリをビルド中

雑談です。 昨日の日記のクローズドβテストに興味がある人があるかもしれないと思って SnakeCubeシミュレータのWindows版のバイナリをビルド中。 勢いあまってFreeDOSでも動かないか、ネットで検索してしまいました。 Windows95/NT4までは、ソースコードを、少し修正すれば、動くかもしれないというところまでで中断しました。
2004年ごろ1997年発売のMicrosoft Visual C++5.0 Professionalが欲しくなってヤフオクで購入したのですが、 最初1万円くらいだったのが、僕が落札するころには定価(約4万円)と同じくらいまで上がっていました。 7年前のCコンパイラの価値は、なくなっていて、安い値段で競り落とせると考えていたからです。 ちょっと熱くなって定価で落札したことを覚えているのですが、 7年前のCコンパイラの価値が、何なのか脳内漏洩していると、こうなるのかなと。
結局、7年前のCコンパイラを使ったことは、一度もないのですが、どうして買ったのかと言えば、 Windows98のデバイスドライバのビルドにMicrosoftのサイトでVisual C++5.0を使っていたことです。 Visual C++6.0でもデバイスドライバをビルドできるのですが、万が一のことを考えて、 Visual C++5.0を買っておこうと思ったのです。
あ、、、今日も、午前中、眠らされていました。


4月18日 SnakeCubeのクローズドβテスト(やるとは言ってない)

5GでFPGAが導入されるようで、商売を考えている僕としては、 SnakeCubeのクローズドβテストとか、考えたほうがいいのだろうか。みたいな。
EE Times Japanの記事
サムスン、ザイリンクス製「Versal ACAP」を採用
記事を読むと、「運用開始後に開発されたアルゴリズムや新規格への対応も柔軟に行う必要がある」
一昨日、日記に書いたSnakeCubeのシミュレータを関心があるところに提供すると、 スムーズに5Gとかで使われるとか、ないだろうか、考えました。
シミュレータをWindowsのバイナリで配れば、いいのかな。 マイクロコードの仕様がわかるとSnakeCubeのアーキテクチャが透けて見える。 ただ透けて見えるところは1999年のICF3のオープンソースで見えてしまっている。 新型モンゴメリ乗算器の機能、性能は見えても、中身は見えないです。

XilinxのFPGAに実装して性能を測定することが最優先ですが、興味がある方は、ご連絡ください。 特許があるような楕円暗号のコードとか、新しいアルゴリズムで利権を持っているような人とか限定です。


4月17日 午後、頭痛で寝てました

結局、丸1日、何もできなかった。今もまだ、脳内が痺れている、、、


4月17日 マイクロコード改善

昨晩から午前中、脳内の痺れが辛い。正しくは仕事をするには辛い。そのため仕事を諦めている時間が長い。 僕は手術を受けたことはないので脳を遠隔操作するための端子が埋め込まれている可能性はない。 これから僕と同じように、知らないうちに脳操作、脳破壊をされる人は出てくるでしょう。 頭痛が止まるのなら、こんな話はしないと、いつも言っているのです。 今も左目をつぶって、この日記を書いています。
僕の自覚では、脳内の配線がズタズタに引き裂かれている感じ。 さすがに左手を動かそうとして右手が動くことはないが、左手を右手と呼んでしまうことはある。 このため、左手か右手かを発音する前に、どちらの手なのかを判断することを確実にすることを決めている。
コンピュータで言えば、今までサブCPUで処理していた動作をメインのCPUで処理するような状態。
僕を監視していると思われる人物が、僕の花粉症が治ったことに気づいたようです。 30年以上前に花粉症になって以来、一度も状況が改善したことはなかったのに、いきなり花粉症が治る。 この古くからある未来科学があれば、医療の役に立つのかとか。 あるいは、人工的な花粉症だったのか、あれこれと思うのです。 コロナの緊急事態を考えて、人工花粉症が漏洩することを承知で、やったのかなど。
とても長い前置きになりましたが、SnakeCubeの昨日のマイクロコードを改善して約2パーセント、性能が上がりました。 というより、頭を悪くされたせいで、最初、性能の悪いコードを書いてしまったのかも。
2パーセントくらいなら大きな問題にはなりませんが、200パーセント、 300パーセント違ってくることはあると思うのです。
脳破壊で仕事をできなくして、僕からSnakeCubeの仕事を外部に出すことを、考えているのなら、 僕は仕事を出すことではなく、SnakeCubeが停滞することになるだけだと考えています。
脳破壊を止めさせる方向になればなと。


4月17日 XilinxのVERSALでSnakeCubeが動くか

VERSALはXilinxの高性能FPGAで5Gに採用されるようです。 5Gで大きな公開鍵暗号が使われ、性能が必要になればSnakeCubeを考える人があるかも。
SnakeCubeは低基数のモンゴメリ乗算器ですが、従来の研究では 周波数を上げるためCarry Save Adderを使っていました。 これは累積加算をするために鍵長のレジスタが2本、必要になります。 これでパイプライン段数を増やすとトランジスタ数が増大してしまいます。
僕の発明、分割加算(Segmentation Adder) では、累積加算のためのレジスタが1本で実現できます。
このため累積加算のレジスタがFPGAのDSP内にあるレジスタに収まってしまうため、 FPGAでも効率的に演算できます。
累積加算のレジスタが1本になると演算データ系のクリティカルパスが Carry Save Adder 1個分、短くなる効果があり、周波数を上げるのに効果があることもあるでしょう。 別の部分がクリティカルパスになる場合が多い予想ですが。
従来の研究にRNS(Redundant Number Systems/Residue Number System)があります。 SnakeCubeはRNSとは異なります。RNSではDSPの乗算器24×17を16×16の 乗算器として使う必要があるため効率が悪くなります。 僕のSnakeCubeは24×17として使うことが可能です。

前置きが長くなりましたがXilinxのVERSALのDSPの乗算器は26×23ですが、 SnakeCubeに26×23の乗算器として使えます。 VERSALのDSPは「DSP58」ですが、これまでの「DSP48E1」をベースに AI向けの拡張がされているようで、つまり同じようにSnakeCubeを効率的に実装できます。
僕以外のSnakeCube代理店みたいなのは、存在しないので、 Xilinxに行ってみたほうが、いいのかなと思ったり。


4月16日 暗号プロセッサのシミュレータが動いた!

暗号プロセッサSnakeCubeの C言語によるシミュレータが動き出して1人で歓喜を上げています。 RSA暗号の署名(CRT無し)のマイクロコードがシミュレーションで正しい演算結果を出力しました。 SnakeCubeが思ったより早くできそうだということです。
当初、C言語のシミュレータはverilogによるSnakeCubeシミュレータのための期待値を 作成できればいいと考えていました。 プロセッサの周波数とモンゴメリ乗算器の周波数が異なるためC言語によるシミュレータは、 完全なものが作れないと思っていたからです。
ところがほぼ完全なシミュレータとなりました。 そして演算器のビット幅を可変にできるので、SSL用SnakeCube、楕円専用SnakeCube、 巨大公開鍵暗号用SnakeCubeなどのシミュレーションが、できます。
C言語版シミュレータをWindows10の実行可能バイナリにして配布して、 新しい公開鍵暗号のマイクロコード開発をすることも可能になると思います。 SnakeCubeはクローズドなので当面予定はありませんが。^^;
ちなみに1999年のICF3はOpenICF3のサイト でC言語シミュレータのソースコードを公開しています。 1999年のICF3はモンゴメリ乗算器がシンプルなのでC言語のシミュレータで、ほぼ完全なシミュレーションが可能です。


4月16日 パソコンに搭載されているTPMチップ

TCGは、どうなの?という人があったので。 2004年頃、日立のパソコンFLORAが、まだあった。 TPMチップはOSをセキュアにブートさせる機能などがある暗号チップ。 1個、1ドルか2ドルくらいのチップが日立のパソコンには搭載されていなくて 日立のパソコンが撤退に追い込まれた。
僕はまだ日立にいて、僕のいた部署はTPMチップが搭載されたHPのパソコンを 導入推進する側でした。それでTPMチップについて、ちょっと勉強していました。
ノートパソコンに搭載されるTPMチップでVPNの認証をするとか。
さて、量子コンピュータによって大きな公開鍵暗号の需要がでてきました。 企業向けのパソコンでは、大きな公開鍵暗号が演算できるTPMチップが売れるかもしれない。
僕のSnakeCubeと、 僕の32bit CPU ICF3-V(設計中断)でTPMチップを作れば、 公開鍵暗号以外の性能を追求しなければ演算系の論理設計の知財は、ほとんど僕の知財で作れると思う。
パソコンに搭載するTPMは1ドル2ドルで価格が安いけど、 それでもなんとかなるTPMチップが開発できるかもしれない。
ICF3-Vは、1999年のICF3(暗号プロセッサ)をベースに作られている。 8bit CPU ICF3-Zは、 制限の緩いオープンソースとして公開されているが、それを32bitにしたようなもの。 従来CPUとはアーキテクチャが異なり、高性能ではないが高効率。 アーキテクチャが足かせとなり、高速化に向かない、しかし、これは棲み分けには都合がいい。
とりあえずTPM用にクローズドでICF3-Vというのは、あるかもしれない。 ICF3-Vが設計中断になっているのはARMと競合するため。


4月15日 頭の調子が悪い

昨晩も頭の調子が悪くて早く寝たが、今日の午前中の今も、頭の調子が悪い。 人間の脳を遠隔操作できる技術を使った暴力で頭の調子が悪い。


4月14日 SnakeCube開発 アセンブラ作成中(20)

作業報告です。それ以上ではありません。 シミュレータで使うC言語版のモンゴメリ乗算器を開発中。 2年近く前に、自作C++版の多倍長整数ライブラリを使って1024bit固定のモンゴメリ乗算器を作っていました。 それを自作C版の多倍長整数ライブラリにして可変長のモンゴメリ乗算器にしています。
乱数による数時間のテストが通りました。 これから、このC言語のモンゴメリ乗算器をシミュレータに組込みます。 C言語によるSnakeCubeの試作と言えるほど精度の高いシミュレータになりそう。 可変長にするのに手間がかかっていますが、鍵長の大きなRSA暗号を計算できるSnakeCubeを量産できるということ。 プロセッサの周波数とモンゴメリ乗算器の周波数は違いますが、プロセッサのシミュレータから見て、 モンゴメリ乗算器にデータをセットして、数サイクル待って、結果を取り出すという動作なので、周波数の違いによって シミュレータが煩雑になるという問題がなくて調子いい。


4月14日 近視か乱視が進んだ

人による操作で近視や乱視を悪化させることができる。やっていいことではないと思う。


4月13日 ICF3はリトルエンディアンなのか

メインフレームの世界はビッグエンディアンなので1999年のICF3はビッグエンディアンで設計開発しました。 世の中、リトルエンディアンが多くなったので、これから作るものはリトルエンディアンという方針。
SnakeCubeや8bit CPU、ICF3-Zで、忙しくて1999年のICF3のオープンソース版の verilogとか完全に停滞していますが、オープンソース版はリトルエンディアンかなと考えています。 当面、進捗なさそうですが。


4月12日 コロナについて考えてみる

少しでも感染確率を下げる行動をとること。と思いました。


4月11日 SnakeCube開発 アセンブラ作成中(19)

作業報告です。それ以上ではありません。RSA暗号の鍵生成プログラムが、ほぼ完成。 CコンパイラがClangの場合だけ演算を間違う問題が発生していました。
Clang 8.0.1(FreeBSD)とClang 9.0.1(OpenMandriva)
の環境で最適化をO2以上にすると演算を間違います。
最適化を失敗していると思われるのは20行程度の関数。 配列データの真ん中のアドレスを使って次の関数を呼び出すということを続けてする部分で、 依存解析を間違って最適化しすぎているような感じなのです。 調べてないので、当たっている保証はありません。
20行だけ最適化を無効にする#pragmaを使って、先を急ぐことにします。


4月11日 頭痛が止まらない

頭痛制御装置を操作する人員を転職させないと、永遠に頭痛が続く


4月11日 AIによる分類機能を備える論文投稿サイトがオープン

スラド記事「筑波大発のベンチャー、 AIによる分類機能を備える論文投稿サイトを開始へ」
僕が発明した巨大整数用四則演算プロセッサSnakeCube を論文にしたいと思っていたので、この論文投稿サイトに興味を持ちました。
僕が日記やブログで書いてあることが、本当か、どうか再現性を気にしている人は、いるように思っています。 SnakeCubeは、SSLアクセラレータとして製品化を考えています。 そして既製品のFPGAボードでも、製品になるように考えているため、多分、僕1人が頑張ればできます。 つまり製品として販売できる物を作るところまでは、できると考えています。
再現性は、それで確認できると思っています。
論文投稿サイトも、とても気になりますが、SnakeCubeの開発を、急ごうと思っています。


4月10日 noteに投稿

クレジットカードのICチップの高速化
これが多くの人にとって、いいものだと思えるなら、考えたほうがいいかと。 他人任せでは、損をすると思う。


4月10日 リモートワークで電子署名の需要

リモートワークで今後、必要になってくる電子契約なんかで、 電子署名の需要が増加しているらしい。 一度、電子署名に慣れると、リモートワークが不要になっても、続くのか、続かないのか。
量子コンピュータの解読の脅威を考えるならRSA 10万ビットで署名したくなることは、ないだろうか。 パソコンのCPUで10万ビットの電子署名に1時間くらいかかるとしたら、10分くらいで署名できる ハンコマシンとか、売れないだろか。そういうところにも SnakeCubeが活躍するようになればなと。
そういえば日立がハンコマシンを開発したようです。 自作派のためのコンピュータ技術情報誌I/Oの2020年2月号に掲載されてました。 こちらは実際にハンコを押すための専用マシンですが(笑)

図をマウスでクリックすると拡大されます

僕の作ったフリーウェア  ICカードエミュレータは、 USBメモリに電子証明書が入るので、まず試してみるのには、使えるかも。 64bitOSでは、ちょっとインストールが厳しいかもしれないですが。


4月10日 Cコンパイラをコンパイル

C言語コンパイラのClangをソースからビルドしています。 どうして、そんなことをしているのか、不思議に思った人向けの話。
SnakeCube の動作検証のためRSAの鍵生成をプログラムを開発しています。 20年前に自作したものを使えば、比較的簡単に開発できる予定でした。 20年前はRSA 1024bitのみで良かったので、1024bit固定のコードだったのを、 可変長にして、いろいろなOSで動作するようなプログラムを開発しました。
RSAの鍵生成の動作検証はCentOS、WindowsXP、Windows10、 TinyCoreLinuxで正常動作が確認されました。 Ubuntu、FreeBSDでは確認ができていません。
CentOSは7.7のEverything isoを使ったオフラインインストールで不正アクセスができない仕様。 TinyCoreLinuxはリマスターして1CD Linuxになっているので、オフラインで動作させれば、不正アクセスによる改ざんができない仕様。 しかしながら、Ubuntu、FreeBSDでは、不正アクセス対策ができていないため、不正アクセスによる改ざんが懸念されている状態。
FreeBSDはCコンパイラはgccではなくClangなので、Clangに関係があるのかを疑ったため Clangをソースからビルドすることに。Clangの最新バージョン10を、1世代前のCentOSにインストールするには、 cmakeやz3やgcc5.1以上をソースコードからインストールするはめになって、手間取っています。
蛇足
ちなみに30年前、大学の計算機センターでSunワークステーションのgccのバージョンを、 いち早く1から2にしたのは、僕の仕業。
僕より上の計算機センターの人に、必要な新しい機能がなければ、無闇にバージョンアップすると、 非情報系の研究室で古くからあるC言語のコードが動作しなくなることがあるから、考えて欲しいと言われながら、 やりました。結局、gcc1でも2でもコンパイルできる環境を作り、それを広報した記憶があります。
当時、C++のtemplateが役に立つと考えていた。多分、それは正しかった。 研究室で自分だけgccのバージョンを最新版にしていたのでした。
蛇足2
当時、僕のいた研究室でもC++の導入は見送られていた。僕1人でC++の普及活動をしていた。 数年前、C++の生みの親、Bjarne Stroustrupが、僕のいた研究室に訪れたらしい。 Bjarne Stroustrupが訪問したとき、そんな話ができなかったことが、残念。


4月7日 アカデミック版のCコンパイラを使うな

僕は、すっかり忘れていたのですがVisual Studio 2008のCコンパイラは アカデミック版を購入していたのでした。 「Visual Studio 2008はアカデミック版だから商用で使っていいと思うな」 と脳内直結回線で苦情が来た。 あんたは日立社員(元日立の僕)に、ちゃんと払っているのかと思いましたが。
こういう状況なので数日前に設立された産学連携FPGA検証環境の無償提供団体「ACRi」は、 気になりますが、しならく様子見なのかも。
2013年にMicrosoft Visual Studio 2013 Professional(62,788円)を amazonで購入しているので、それに置き換えてください。
僕がアカデミック版のVisual Studio 2008を購入できたのは、2005年に日立を退職したあと、 経歴に穴が開くといけないからと、早稲田大学の笠原先生(現 副総長)に 早稲田の所属を少しの間、いただいていたからです。
アカデミック版といっても2万円くらいだったような。
20:20PM追加  所属していたと言っても、実際には、いなかったのと同じです。


4月7日 SnakeCube開発 アセンブラ作成中(18)

作業報告です。それ以上ではありません。 自作したC言語の多倍長整数ライブラリがGNUのCコンパイラ(gcc)では期待する結果になったが、 Clangでは最適化をすると期待する結果にならなかった。 符号付き整数と符号なし整数が混在すると厳密には未定義だから 妙な最適化がされるとネットに書いてあった。 そこでVisual Studio 2008でコンパイルしてWindowsXP上で動作させた。すると期待する結果になった。
インターネットに接続しているLinux/FreeBSDではClangにバグが、 いつのまにか混入する可能性も否定できないので、Clangの問題ではないかもしれないのですが。


4月7日 SnakeCubeが高速である秘密

2日前に書いたブログ 「巨大整数用四則演算プロセッサSnakeCubeが高速である秘密」


4月6日 リモートワークで必要な本人認証

僕の作ったフリーウェア  ICカードエミュレータ が便利に使えないか。という話です。USBメモリに電子証明書を入れることができます。Windowsで使えます。 64bit OSでは、ちょっとインストールが大変ですが、僕は、現在でも使っています。
ただし本物のICカードではないので、セキュリティはあまりないので、 追加認証という使い方しかできないかもしれません。
例えばWebサーバでパスワード認証するページにSSLクライアント認証を追加すれば、本人認証を強化できると思います。
ICカードエミュレータmyuTokenのインストールが、一般ユーザには、ちょっと難しいので、 電子証明書認証が、どういうものか、試し見てみる目的には、非常にいいと思います。
調子が良ければ、電子証明書が入るICカードなどのハードウェアを購入してみてもいいのかもと。


4月5日 軽度が頭痛が続いている

右目の視力が落ちたと騒ぐと、左目は良くなっているだろと返ってくる。 左目の具合を確認すると確かに改善している。軽度とはいっても徐々に壊れていくこともある。 監視員の転職が必要なんだと思う。


4月4日 頭痛が酷くなったので寝ます

普通の頭痛ではなく、脳が、いろいろ壊れてきている。例えば、 ABCDという文字列がBDACとかCADBのように読めてしまう。 頭痛は人が遠隔で操作している。
1999年に暗号LSI ICF3を開発後、僕は日立の金融システム部門に異動になり、 暗号LSIの開発から、はずされてしまったが、日立を退職して10年後の2016年に1人で再び暗号LSIをはじめて、 2018年に『分割加算』を発明しました。 僕が、はずされていた間に、サバンチ大学の論文が発明されたようですが、半導体の微細加工も限界に近づき、 大きな鍵を演算できるものが、作れなくなるという状況。
つまり僕が、はずされた期間に、いろいろな人が研究したが、僕に劣るものしかできなかったと言いたい。
僕の脳を破壊して、他の優秀な人に移せばいいと思っているのかもしれないが、過去の実績から、 移しても、僕が継続してやるよりも劣るかもしれない。
日本の半導体産業が50%から7%に落ち込んでいる状況で、やることではないと思うのです。


4月4日 製品開発部の管理職の目線

大学発の産業活性化組織が。単刀直入に言うと税金で育てた産業妨害組織にもなりかねないという話。
20年前、某大企業で大活躍していた僕は、偉くなると思った人があったのか、取り立てが厳しかった。 『闇取引』でモンゴメリ乗算のアルゴリズム代として30万円の眼鏡を買わされたりする。
絵画を1枚、80万円だったか88万円で買わされたこともある。今でも自宅の倉庫にある。 あれは何の代金に消えたのだろう。会社に吸い上げられただけかもしれない。 絵画を買ったときの、やり取り
僕「絵は買いません。」
販売員「絵を買ってください。」
僕「絵は買いません。」
販売員「絵を買ってください。」
僕「絵は買いません。」
販売員「絵を買ってください。」
でした。
新卒で入った人材が大学で学んだものを使うと、どうなるか。
(開発した製品価値)-(原価)
これが生涯賃金にならないと、いけないのに、原価だけ先に膨れ上がると、 活性化なんじゃなくて、妨害になってしまうのです。
言わないと気ずかないこともあるかと思って書いただけなので、 気を悪くした人があったかもしれないですが、気にすることはありません。


4月3日 米国の学会であるACMの論文とICF3-Z

やっぱり気になって、僕の8bit CPU ICF3-Zと比較できるような論文を、探しています。 まだ左目をつぶらないとディプレイの文字が読めないこともあるのですが、 英文を斜め読みする速度が少し回復したので、オンラインで論文のアブストラクトを見ています。
適当な検索語が見つからず、十分な検索にはならないかもですが、最初に見つかったのが IDEAというソフトプロセッサ。XilinxのDSPのアーキテクチャを活かしたプロセッサのようです。
ICF3-Zは、FPGAベンダに依存しないアーキテクチャです。 ICF3-Zは、Xilinxの実機で動作検証しているので比較できるのかも。
ICF3-Zの参考
「オープンソースのCPUの除算性能 RISC-V vs ICF3-Z」

0:20PM 追加 
「8bit」「CPU」で検索すると145件がヒット。ただ、あまり関係ないものが多かった。 8bit CPUで論文になるネタがありそうかと、考えれば、なさそうなので、これでいいのかも。 僕が日立製作所にいた時代より前に、僕と同じ事業部にいらしゃった清水先生の8080(2003年)についての論文が見つかりました。 清水先生は大昔に日立を退職されていますが、僕からは、その状態がわからないため準日立と決めています。 そのため連絡はとっていません。


4月2日 SnakeCube開発 アセンブラ作成中(17)

作業報告です。それ以上ではありません。SnakeCubeの開発を進めます。 RSA暗号の鍵生成をするライブラリを作成中。あと少しで完成。


4月2日 頭痛は人によるもの

頭痛が酷くなってきた。痛みというより脳破壊が怖い。この頭痛、 人による遠隔操作によって起きている。非人道的なやり方。
論文のダウンロードを21本しました。 概要を読めば半分以下で良かったのではという、意見がありました。 僕の状態がわかっていないから、そう言うのだと思う。 頭痛攻撃を長期間にわたり受けているため、日本語を読むのも辛いのです。
頭のいい人とか、そういう人だと偏差値40くらいに下げる攻撃をしても、バレないし、儲かるというビジネス。 早稲田の理系は、かなり狙われるはずなので、僕の経験から得た予防策を教えると。 暗記能力が著しく低下するので、暗記テストを日ごろからして低下していないことをチェックする。 目をつぶって蛍光灯を見ると、網膜に模様が出るので、確認する。 この遠隔操作は、寝ているときに、主にやっている。理由は、起きているときにやると、すぐにバレルから。 まだら模様が反時計回りに10度ピッチに動くこととかあったが、これは最初のころの数回。 最近は、赤い斑点が、いっぱい映る。
遠隔操作のための機材とか、周囲に全くない。気付かれることなく遠隔操作ができるため、結構、流行っている。 僕は、手術を受けたことがないですから、誰でも、チャンスがあるということです。


4月2日 米国の学会であるACMの論文とSnakeCube

SnakeCube は巨大整数用四則演算プロセッサでRSA暗号など鍵長の長いものが高効率、高性能に演算できることが特長。
SnakeCubeがACMの論文にあるものより優れていると僕は思ったという話。
スラド記事「ACM Digital Library、コロナ感染拡大を受けて6月30日までオープンアクセスに」
コンピュータサイエンスに関する米国の学会ACM(Association for Computing Machinery)が、 同学会の論文ライブラリであるACM Digital Libraryで6月30日までの無償解放されたようです。
早速、SnakeCubeより優れているものがあるか、調査しました。AbstractをRSAで検索すると4000件以上ヒットします。 この中には高速化以外のものが多数含まれています。最近の論文はサイドチャネルに関する研究が多いようです。 そこで検索語をRSAかつFPGAにしました。 FPGAのキーワードがあれば、実際に実装してアルゴリズムが検証されている場合が高いと思われたからです。 22件ヒットしました。1件はnot foundで21件の論文をダウンロード、高速化に関係するものは、半分以下という感じでした。
最も目立つ論文は、僕と同時期に日立製作所にいらしゃった崎山先生の論文。 ベルギーのルーヴェン・カトリック大学との共同研究なのでしょうか?
「Efficient Pipelining for Modular Multiplication Architectures in Prime Fields」
GLSVLSI’07, March 11-13, 2007, Stresa-Lago Maggiore, Italy. Copyright 2007 ACM 978-1-59593-605-9/07/0003
僕と電通大の崎山先生との関係ですが、日立製作所時代は事業部が違うため、全く関係ありませんでした。 僕が2005年に日立製作所を退職してから、インターネットで調べて崎山先生のことを知りました。 連絡が通じたことはありません。
この論文に限らない共通な話ですが、巨大整数の加算の高速化には 『Carry Save Adder』を使っているものがほとんどです。 1999年の暗号LSI ICF3も、そうです。
僕は巨大整数の加算を高速化するため2018年4月に『分割加算』を発明しました。 2018年9月に、その証明をブログに書いています。 「モンゴメリ乗算の累積加算における分割加算の証明」
この『Carry Save Adder』から『分割加算(Segmentation adder)』への飛躍が発明なのです。 分割加算によって乗算の裏側で部分全加算ができて累積加算用レジスタが小さくなり、次回の加算コストが下がるメリットが生れます。 具体的には既存のDSPに、モンゴメリ乗算器のほとんどの部分が入ってしまうくらい、小さいものとなる。
崎山先生の論文は、SnakeCubeに似ているところもありますが、 SnakeCubeのほうが高速で高効率で実装しやすく鍵長をスケーラブルに大きくできます。
崎山先生の論文は1999年のICF3の基数2を、基数2^16にして面積を小さくするために乗算を4回に分けています。 無限に鍵を大きくしていった場合でも4回を保てるかといえば、最下位ビットからのブロッドキャストが間に合わなくなる。 アルゴリズムを実際に実装すると苦労するということが見えて事業部的には、うれしいですが。
SnakeCubeの圧勝だと思います。僕の脳破壊は、世界的な損失か(爆笑)
現在もなお、連日続いています。どうして止まらないのだろう。売国奴として捕まえられないのだろうか。 今まで隠蔽されてきたことが、ようやく解放されつつあるのかと。


4月1日 SnakeCube開発 アセンブラ作成中(16)

作業報告です。それ以上ではありません。RSA暗号の鍵生成をするライブラリを作成中。 「べき乗剰余演算」のコードを5年以上前にmyuTokenで自作していたC言語コードに変更。 性能を測定すると、べき乗剰余演算、単体で10倍の性能になった。
新旧のコードを使って乱数データを入力して結果を比較。 AMD Ryzen 6コア12スレッドが、気持ちよく役に立った。
すぐにはGPUを使うアプリケーションはないが、10年以上前のIntel Core i7に nVIDIAのGPUを搭載したマシンを作ることに。


4月1日 軽度な頭痛が続いている

軽度とは言っても、通常、決して忘れることのない記憶が消えることもある。 ネット上の記事が読みにくくなっている。どんな損傷をすれば、そうなるのだろうか。 左目をつぶってディプレイに向かっている時間も多くなっている。 連日耐えている。


3月31日 (株)iCanalについて

さっきの日記で(株)iCanalのフリーウェア(ソースは非公開)のコードを参照したと書いたら、 (株)iCanalの知財ではないかと、考えた人があったみたいなので説明します。 僕が100%の株を持った会社です。日立の支援など全くなく、自力で立ち上げた会社。 そして(株)iCanalは知財を全く持っていません。 僕が作ったものを販売するための会社なのです。 myuToken をダウンロードして使用許諾契約書を読むと(株)iCanal名義ではなく、僕、個人の名義になっていると思います。 (初版からずっと僕の名義)
話が長くなるので、ここではしませんが、厳密な話をすると、ICカードは、当時、 日立関連企業だったところから無理に購入しています。 しかし日立の支援など全くなく、自力で立ち上げた会社ということで問題ありません。


3月31日 SnakeCube開発 アセンブラ作成中(15)

作業報告です。それ以上ではありません。 RSA暗号の鍵生成をするライブラリを作成中。 RSA 8192bitの鍵を生成したら10時間以上かかるので高速化を検討。 べき乗剰余演算のC言語が、かなり遅いのが原因。 僕が公開しているICカードエミュレータmyuToken で自作したC言語の高速版を使えないか検討。5年以上前のことなので、自作していたの忘れていました。
ちなみに、僕は、この「べき乗剰余演算」で1999年、世界一で有名です。 先日作った多倍長整数ライブラリに、その高速化技術(モンゴメリ乗算)を導入していなかったため、 かなり遅いものになっていたのです。


3月30日 コロナ対策

ここ数年、引きこもりレベルの高い生活をしていた。 半年以上、県内から出ていなかったことも、何度かある。 ただコロナのオーバーシュートの可能性について、早い段階で予感をしていた。 理由は、それほど難しくなく、オーバーシュートの可能性がある事実を知ったとして、 それを隠蔽することもあるだろうと思っていたからだ。 その結果、つじつまが合っていない情報をみた瞬間に、コロナ対策をいろいろ考えるようになった。


3月29日 朝から夜まで眠っていました

今日の作業報告でした。


3月28日 SnakeCube開発 アセンブラ作成中(14)

作業報告です。それ以上ではありません。RSA暗号の鍵生成をするライブラリを作成中。 20年前に自作したやつを、最近、自作したC言語版の多倍長整数ライブラリで実装。 やっと動き出しました。SSLアクセラレータの商品では、鍵生成をする必要はないので、動作検証のみの用途です。


3月28日 朝から夜まで眠っていました

今日の作業報告でした。ネット上ではAMDの新しいGPUのソースコードが盗まれたとか。 今日はHDDの消去作業をしました。DoD 5220.22-mという方法で消去。


3月27日 朝から夜まで眠っていました

今日の作業報告でした。 SnakeCubeのC言語版のシミュレータで新型モンゴメリ乗算器の期待値を作成できるものが、 もう少しで完成する。これで期待値の量産が可能なので開発速度が上がる。 1024bitのレジスタを24bitのブロックに分割して、各ブロックは25bit。 というような冗長化された数字での期待値が得られる。数学的な計算結果ではなく実際の演算器の計算結果。 しかし眠気で寝ている時間が長い。


3月27日 ARMのモータ制御用マイコン

数日前の日記で「市民はCPU開発をゴキブリと同じと思っている」 と書いたからかもしれないです。 CPUの技術が、わかる人が心配してARMのモータ制御用マイコンを話題にしているようです。
僕の結論を言うと、モータ制御用マイコンの市場に 僕がオープンソースにしたICF3-Z が入ることが将来、起こるかもしれない。
ARMのCotex-M0をモータ制御用マイコンのCPUコアとして使っているものがあるのです。 除算器をもったRISC-Vよりも高速な演算が可能なICF3-Zは、 除算器のないARMの十倍以上高速なケースがあります。 つまり周波数を半分にする方法で、楽に消費電力を抑えたものが作れるのかもしれない。


3月26日 夕方まで眠っていた

今日の作業報告でした。


3月26日 SnakeCubeについて

これまでも何度か言っていることですがSSLアクセラレータ SnakeCubeは、 常時httpsなどで使われるため、インターネットを利用する多くの人に役に立つものです。 通常では高額な税金が引き出され開発できるほどの発明だと思っています。
ところが僕1人の権限で激安に開発できるという状況なのです。
僕は研究開発者上がりの人間なので、販売に疎いことは間違いないのですが、 SSLアクセラレータは、営業の人のパワーが効く商品ではなく、 導入するシステムエンジニアと経営者が効率良く運用できると思えて、はじめて売れる。 効率良く運用できることを考えさせるためには、SSLアクセラレータが安いことが必要です。
市民は殴る人を間違っていて、どちらかと言えば、 僕は研究開発者関係に嫌われながらしているにも、かかわらず、 あまり知らされていない市民に殴られSnakeCubeの開発が遅れている。 そんな気がしています。日記に作業報告を書いていますが、 20年前の僕なら1日で5日分くらいの仕事をしているでしょう。
脳直結回線を使う人は、その気になれば、脳を即死させる力があります。 それを振りかざして、言うことを聞かそうとするため、激怒しながら戦っています。 僕の仲間だと思わないようにしてください。
僕は某大手メーカの金融部門に努めていたことがあるのですが、 世界の金融業界の人と戦う日本の英雄も、脳直結回線と戦うことになるでしょう。 もし、興味があれば、信頼できる方法で、ご連絡ください。 僕自身はSSLアクセラレータの商売上、世界の金融にケンカを売るつもりはなく、 非人道的な脳直結回線を使う人を排除することが目的。


3月26日 20年前に自作したプログラム(2)

僕のリストラに関係した人のみ。 RSAの鍵生成のアルゴリズム、本番で使ったものは、退職時の契約により情報を 提供できないことになっています。ですので単純なアルゴリズムに置き換えます。 本番で使ったアルゴリズムは単純なアルゴリズムより同じ鍵長でありながら 強度が強い特性を持っていますがSnakeCubeの動作検証では単純な アルゴリズムで十分なので。


3月25日 イオンで牛乳を買ったが返品

市民のみなさま向け。イオンから食料品5%引きの手紙が届いた。 同時にイオンの家電や自転車や家具などのチラシが入った封筒が届いた。 この食料品5%引きを使うと、5%が引かれ、後で株主優待の3%の返金があり、 政府からキャッシュレス還元5%がつく。とても美味しい。 そこでイオンのチラシに目を通したが、あまり欲しいものが見つからず、ごみ箱に捨てた。
貧乏で食事が貧相になっているので、この食料品5%引きを使うにあたって、贅沢な食品を買うことにした。
あまりステーキを自分で買うことはないので、ステーキの値段には詳しくないが、 アメリカ産のステーキが結構、安かったので、買ってみた。
牛乳を買うように言われていたので1000mLの牛乳パックを買い物かごに入れようとした。 日付を見る。いつもイオンさんには安い買い物をさせてもらって、申し訳ないと思うので 消費期限4月2日のものが、多い中、消費期限3月31日のものを敢て選んだ。
レジでお金を払った後、バッグに牛乳パックを入れようとした瞬間、異様なほど膨張していることに気づいた。 買い物かごに入れるときに気づかなかったのが、不思議なくらい、膨張していた。 嫌な予感がした。 とっさに、レジに戻って「急いでいるから」といって返金を受け取らずに、その牛乳パックを返品した。
10年以上前になるが、経営者がイオンになる前にも、このお店で購入した牛乳で食中毒にあって、 市の保健所に連絡をして、その後、病院に行って検査をしてもらったことがある。
脳直結回線から、僕の行動論理は知られている。異常な牛乳パックを、仕込んでおくことは可能だ。
僕がCPU開発推進すると、地雷を仕掛けられることもあると予測している。 (参考の日記)
市民の方で僕を良く知らない人は、CPUはゴキブリと同じで、発見とともに、 退治するものと思っている人もあるのかもしれない。 僕の設計したCPUを良く見て欲しい。 ライセンスを明記しているページで、 「できれば日本の税金を使ったプロジェクトでは利用しないでください。」 と書いています。ライセンスはApache License 2.0で緩いオープンソースのライセンスなのですが、 NOTICEという仕組みがあって、「日本の税金を使わないことが目的」という文章が、派生したCPUにも 及ぶように仕組んでいるのです。
そして、これまでにない画期的なCPUであることを理解して欲しいのです。 初めての人は、このあたりの投稿を見て欲しいのです。 「オープンソースのCPUの除算性能 RISC-V vs ICF3-Z」


3月25日 20年前に自作したプログラム

読みたい人だけ、読んでください。 昨日の日記で20年前に自作したプログラムを掘り起こしたと書いた。 すると、それは某大手メーカ製なのかという質問が条件反射のように、飛んでくる。
20年前、僕はIBM互換な大型コンピュータを開発する事業部の司令部みたいな部署で、 プロジェクトの進捗状況をわかりやすくエクセルの表にする事務をしていた。
RSA暗号の演算器を作ってみないかと課長に言われ、いきなり作ることになったが、 この司令部、かなりケチ。東大卒が多いことを使って、周囲の部署に、あまり金を 払わないという仕組み。僕のような直属の作業員が、 過労死クラスの長時間残業をして、何から何まで、できることは、全部、僕がした。
僕は電気工学科を卒業しながら、C/C++言語、ワークステーションの管理ができたため、 できることが、ありすぎた。結局、設計、開発のほとんどを僕がやってしまった。
つまり、昨日の鍵生成や、他のプログラムは、他の部署の力を借りることなく自作している。 GNUのライブラリも使っていない。
ただ鍵生成のアルゴリズムは、会社の指示で与えられたものを使った。
おまけ
開発環境のパソコンは会社から支給されたIntel Pentium Pro 200MHzのマシンで、 会社のライセンスのGUIのVHDLソフトを使っていた。(今でいう、XilinxのVivadoみたいなやつ)
でもOSのWindows NT4、MicrosoftのC/C++、MOドライブは僕が個人で購入したもの。
どうして個人購入になったのかと言えば、開発成果をパソコン管理部門に抜かれないため。 自発的に、そうするように誘導されていた。


3月24日 5G向けの暗号高速化技術

5G向けの半導体技術がネット上で、ちらほら目に付くので、その中で暗号高速化技術についてのみ、 ちょっとだけ見てみることに。Intel CPUの専用命令、GFNI(ガロア体演算)と AVX-512 IFMA(52bitの乗算)について考えてみた。 GFNIは暗号向けというよりは通信のエラー訂正向けに使われるものではないだろうか。 AVX-512 IFMAはRSAなどの公開鍵暗号を高速化するための命令で基数2^52で演算するもののよう。 SnakeCubeはXilinxのFPGAに実装する場合は基数2^17、ブロック長24bitですが 専用演算器のSnakeCubeが有利だと思われます。

ASICとFPGAの中間に位置するストラクチャードASICが登場してますが、実力がどのくらいなのか、 現段階では全くわかりませんが、SnakeCube はFPGAに効率的に実装できてしまうため、公開鍵暗号を高速化する目的にはFPGAで、 いけてしまうかもしれないと思っています。

公開鍵暗号が5Gに占める割合は、どのくらいなのか、わからないですが、 僕の脳破壊を止められない政府は、どうかしているのではないだろうか。
25日 8:50AM こうしている間も脳が痺れて耳鳴りがしている。思考できなくなる程度だが。破壊が進行していない保証はない。


3月24日 SnakeCube開発 アセンブラ作成中(13)

作業報告です。それ以上ではありません。 「アセンブラ作成中」、厳密にはアセンブラとシミュレータを作成中で、 シミュレータがアセンブラと一体化している。 まだ完成していないが、先にRSA暗号の鍵生成などの期待値作成プログラムの開発を始めた。 20年前に自作した鍵生成プログラムを掘り出してみたが、 Windows用のIntel486のインラインアセンブラで書かれているため現代のC++コンパイラでは通らない。 数年前に自作した『C++』版の多倍長整数ライブラリを使って作り直しを検討。 数日前に作成したC言語版の多倍長整数ライブラリを使わないのは、C++の演算子のオーバーロードが便利で、 期待値作成なので、必要以上に品質を気にすることがないから。


3月24日 頭痛で作業速度が半減

いや、ほとんど止まっていたかもしれない。


3月23日 SnakeCube開発 アセンブラ作成中(12)

作業報告です。それ以上ではありません。 多倍長整数ライブラリを自作したり、C言語にする理由は、 SnakeCubeのC言語によるシミュレータの期待値を作成するため。 可変長の多倍長整数ライブラリより自作して固定長のほうが使いやすい。 XilinxのDSPの入出力の期待値が作成できる程度までシミュレーション可能。現在作成中。


3月22日 SnakeCube開発 アセンブラ作成中(11)

作業報告です。それ以上ではありません。自作C言語版多倍長整数ライブラリが完成し、 SnakeCubeのモンゴメリ乗算の演算器をシミュレーションするコードを作り始めた。 1年半前に、自作C++版多倍長整数ライブラリで作ったものがあったので、それをC言語に修正して作成中。


3月21日 SnakeCube開発 アセンブラ作成中(10)

作業報告です。それ以上ではありません。 多倍長整数ライブラリの自作C言語版。乱数系のテストの作成が終わり、本格的にライブラリのテスト。 AMD Ryzenにテスト環境構築中。作った乱数系のテストはスレッド数を設定できるので、 Ryzen 6コア12スレッドのマシンが効率的に動作。 Ryzenは単一命令よりスレッドによる性能が高いので、ちょっと気分がいい。


3月21日 心臓をつつかれた

リモートで全身の筋肉を細かく制御できるのだと思うけど、ついに心臓を強くつつかれた。 痛いということはないが、全身が震え上がる。
もう10年前くらいになるだろうか、呼吸が止まったことを思い出した。 あと数十秒で死ぬのかと思ったが、それは水中での話。 数分後、呼吸が回復。空気中では数分程度なら、大丈夫なのだと知った。


3月20日 頭痛がまた強くなった

頭痛でSnakeCubeの作業が極端に遅くなっていますがひるむことなくやっていきます。 でも、まず寝ます。
21日 1:50AM 起きました。1日、頭痛で、ほとんど寝ていました。 頭痛といってもいろいろあるのですが、痺れで、深く考えることができなくなります。


3月19日 量子コンピュータに対抗する公開鍵暗号

頭痛やSnakeCubeの作業で、あまり勉強できてなくて、あまり良くわかっていないのですが、 署名ができる量子コンピュータに対抗する公開鍵暗号は、どの程度、実用化されているのか。 という疑問。署名のほうは、まだ実用化まで時間がかかるという状況?
万が一、署名の実用化があまりうまくいかなければ、SnakeCubeの発明は、 かなり大きなものになるだろう。という話。 新しい公開鍵暗号も、結局、計算量の話になってくるなら、 RSAや楕円の鍵長を長くするのと、変わらない?とか。
SnakeCubeは、鍵長が長くなっても、鍵長に比例したゲートを投入して、 ゲート効率がほとんど落ちない。この特性が、良さそう。
ゲート効率、一般的な用語だったろうか、トランジスタ数に対する演算効率のこと。
一般的にはトランジスタ数に比例した性能にはならず、どんどん効率が悪くなる。 SnakeCubeでは、鍵長に比例したトランジスタ数を投入する限り、ほとんど効率が下がらない。 そいうことなら、新しい公開鍵暗号ではなくても、RSAや楕円暗号でもいい???ということにばれば、 発明の価値が大きいことになる。


3月19日 暗号資産とセキュリティキーを購入

頭痛が弱くなりました。 これまでと何も変わっていないと思いますが。
買い物くらいはできそうなのでGoogleのTitanセキュリティキーを買ってみた。 Titanがオープン化されたものがOpenTitanでRISC-V(オープンソースのCPU)が採用されています。 参考まで、この投稿(↓)で8bit CPU ICF3-Zと性能比較しています。
オープンソースのCPUの除算性能 RISC-V vs ICF3-Z
またまたビットコインを購入してみた。


3月18日 頭痛で動けません(2)

8:50PM まだ頭痛で動けません。 脳内の警察『のような』立場っぽい人は、死んで償うからいいみたいなことを言ったけど、 あんたが死んだって国の損害は償えない。
あきらめず、頑張りましょう。


3月18日 頭痛で動けません

6:30AM 頭痛が酷くて作業できない状況が続いています。世の中は金融危機が話題のようですが。
6:00PM 頭痛で、ずっと寝ていました。 途中、目が覚めて8bit CPUの話とかもしてますけど。 風邪を引いたみたいに頭がボーっとして頭が働いていません。


3月18日 SnakeCube開発 アセンブラ作成中(9)

頭痛が酷くなって寝ていたのであまり進んでいません。 この頭痛、間違いなく遠隔で数秒の単位で制御できる。 趣味でプログラミングする僕がプログラミング作業が継続的にできなくなれば、 脳破壊されたことになるし、それは非人道的な行いと言えます。 僕は、それに対する正しい弁明を聞いていません。
SnakeCubeの技術を僕から 強奪する方法がないという仮定が正ければ、国益を損ねることになるだろうと思っています。 そして僕は強奪してくることを想定した対応をしているため仮定は正しい。
量子コンピュータを持たない国や企業にとってもSnakeCubeは望まれているはずです。 軍事的な考え方から量子コンピュータの進歩が止まることはなく、したがって、 既存の公開暗号を延命することに役立つSnakeCubeか、量子コンピュータによる解読に 強い暗号アルゴリズムの開発が全世界的に必要となっています。
僕がSnakeCubeを開発を急がなくてはいけないと思っています。
近年、インターネット上のアクセスを追跡する問題や、Do not trackが話題になっていますが、 僕について言えば、僕の脳から直接、盗み出されている。 この盗む技術は、現代の科学では説明できないことになっていますが、説明できないことに なっているだけで、日本のアニメを見る限り、もう広く知られていると考えています。 この技術の拡散は目的としていないですが、手段としては、使わざるを得ない。
ついでに話すと、この脳直結の回線が、あるせいで、ICF3(1999年)の成果や、 SnakeCubeの発明について、この直結回線でズルをしたと思った人もあったようです。 そういうことは全くなくて、僕の才能と運のみです。
脳直結回線、本人の許可なく、取り付けられて、勝手に操作できるようです。 大学1年の頃、真面目に電磁気学を勉強したおかでげ、電磁気の知識をそれなりに 持っていますが、信じられない技術。動物のイルカは超音波で会話するみたいですが、 脳直結回線は、想像を絶するもの。


3月17日 SnakeCube開発 アセンブラ作成中(8)

作業報告です。それ以上ではありません。 多倍長整数ライブラリの自作。C言語版。乱数系のテスト追加。 自身の結果を期待値にしてテストする仕組み。 つまりGNU GMPなどのライブラリを期待値にすら使わない。 シミュレーション環境に毎回、GNU GMPをインストールしなくて良くなる。 ネットワークから切り離した環境なので、ちょっと便利。


3月16日 SnakeCube開発 アセンブラ作成中(7)

以前、自作していた多倍長整数のC++言語の簡易なライブラリをC言語に移植する作業。 C言語への移植が完了し、数ケースのテストが通りました。


3月16日 頭皮が腫れた状態が続いている

数日前からある頭皮の腫れが、なお続いている。動けなくなることはないが痛い。 痛いだけならいいのですが、プログラミングに支障がでるほど、脳が動作しないことはある。 頭痛攻撃による妨害を続けることでSnakeCubeの技術の強奪を周囲に了承させる気なのかもしれない。 こちらも、それをわかっている。タイムスタンプなどで証拠を確保している。 児童モノを使って逮捕し、証拠隠滅の可能性も消去した。 頭痛攻撃はマイナスしか発生しない。止めたほうがいい。
後、注意していることは大麻を使った逮捕。 元国会議員の叔父(故人)が大麻合法化活動をしていたので、大麻を所持していたとしても、 不思議ではないからだ。例えば、街を歩いていると職務質問され、警察が持っているものを調べる。 数日前、抽選で当たったタブレットを、開けると大麻が入っていたみたいな。 僕は抽選で当たったタブレットにハメられたことを言っても、警察にしてみれば、 アリバイ工作に見えるわけなのです。
僕は高性能な暗号技術を持っているので警察の目が光っていることは、あらかじめ予想しているし、 自分の発明を早く検証したいと考えている状態で、大麻に手を出すことはない。 ただSnakeCubeを開発するのに、お金が必要になっているケースを言う人はあるかもしれない。 そういうこともない。僕の時間だけが必要。 売れるようなら独自に基板を開発することもあるかもしれないですが、取り敢えずは既製品の基板でも動作するので。


3月15日 頭痛と眠気で眠っていた(2)

昨日と同様に頭痛。たとえ起きていても、あまり活動できない状態。
秋葉原の通販で購入した4TBのHDD 2個が届いた。 動画の保存がメインだが不良セクタがないかチェック。 チェックは2台のPCを使って5.5時間くらいかかりそう。


3月14日 『艦これ』のMMD動画に釣られて1000円払ってみると

早朝、動画配信&販売サイトにアクセスすると「おっ」これは僕を釣るためにある 動画があった。 動画に限らない、僕の行動範囲、趣向がわかっていて、先回りされている場合が良くある。 釣るために置いてあった動画の値段を見てみると月額1000円(or 10ドル)と書いてあった。 月額1000円を払えば、その月は過去動画を含めてダウンロード可能。 1日考えて過去動画含めて1ヶ月だけ1000円ならいいかと思い1000円を払って午前4~6時、 ダウンロードに励んだ。釣るために置いてあった動画だけが、飛びぬけていて、あとは、 そこそこという感じだったが、それは最初から予想していた。
そんなことより、MMD動画とはいえ児童モノが半数以上であったこと。
先日、僕はgabのアカウントを作ったばかりだ。gabは日本では児童モノで流行っているらしい。 僕が実写の児童モノを持っていることにして逮捕できなか、考えたのかもしれない。 ちなみに僕のアカからは、gabにあるコンテンツは今のところ、ほとんど見えない。 次第に見えてくることもあるのかもしれないが、僕の目的は児童モノとかアングラなことではない。
MMD動画の児童モノの存在意義として値段を抑える意味あいはあると思う。 児童モノの動画で技術はわかる。より高い動画を選択するべきかの判断基準にはなると思う。 せっかく1000円払ったし、僕は危険を回避したし。 動画の作者の今後に期待したい。


3月14日 頭痛と眠気で眠っていた

頭痛、正しくは頭皮の3分の一の面積で腫れたように痛む。 頭皮が代理で痛みを報告しているようにも思えている。 まだ頭皮の痛みの残っているが、これが眠気に置き換えられて、眠っていた。 以前は満腹中枢を強烈に刺激され眠らされていたが、 今回の眠気は満腹中枢を刺激せずに眠らせるタイプのようだ。 おかげで眠気を自覚するのが遅れた。


3月13日 SnakeCube開発 アセンブラ作成中(6)

作業報告です。それ以上ではありません。 多倍長整数のC++言語のライブラリを自作していたものがありました。 ライブラリといってもGMPのような本格的なものではなく公開鍵暗号の演算に必要なものだけの簡素なもの。 templateを使い可読性がいいライブラリなのですが、 C言語でも動作するものが作りたいという衝動を抑えられず、C言語に作り直しています。


3月13日 ネットワーク管理中

ネットワーク管理に興味がある人のみ。 GIGAZINE記事 バグの影響で特定のサーバー証明書を失効させる」とLet’s Encryptが発表、影響を受けるのは全体の2.6%
セキュリティに気を配っています。という話。


3月13日 頭痛、痛い

4:36AM 痛い痛い。左目をつぶりながらの作業。


3月12日 SnakeCube開発 アセンブラ作成中(5)

ネガティブな発音が続いたので、気が滅入っているのかと、思われそうなので、 作業再開しますということだけ。SnakeCube試作完成まで開発最優先で行きますが、 頭痛が止まらないことには、そうならないのかも。試作後も開発優先かもしれない。
1999年のICF3の開発を思い出しています。 モンゴメリ乗算のアルゴリズムの実装方式(基数2)を決定した後、1人で、もくもくと 暗号プロセッサの設計をはじめ、アセンブラ、シミュレータをC言語、Perlで開発。 そして製品出荷されていった。
今も、1人で、もくもくと、暗号プロセッサの設計をはじめ、アセンブラ、 シミュレータをC言語、Perlで開発している。 邪魔が入らなければ、もっとずっと早く完成が見えいるはず。

おまけ
機会があれば、ミサイルの発射装置に使われると脅かされながら開発する開発経験を、 若い人、研究者の人に、話してみたいと思うのですが、C言語でプログラムを書いているとき
#include <strings.h>
という行をプログラムの先頭に追加しようとした瞬間に、 係長クラスの人に睨まれ、視線が突き刺さる。 視線が突き刺さるだけで、何も言わない。 そこで何か、助言をしたことに起因してバグが混入してミサイルが、 都市に落ちる事故が発生すると、責任が自分に降りかかるからだ。
C言語を勉強している人で、どうして、係長がstring.hをincludeすると 睨むのか、わかったろうか。C言語の標準的なライブラリといえど、strings.hなど、 使うライブラリの数を増やせば、バグに遭遇する確率が、わずかでも上がる。 それが問題。
こんな話をすると責任がない仕事をしたがる人が増えるのだが、少なくとも、 大型コンピュータの事業部では、検証という仕事は、ほとんど評価されていない。


3月12日 頭痛が痛い(2)

8:50AM 痛い痛い。おまけに文章も読めなくなるほど能力低下した。 言い忘れたことが。僕は手術を受けたことはない。誰でも頭痛になるチャンスありということ。
1:15PM 起きました。まだ頭に痺れが残っている。 このくらいなら作業はできるだろう。頭痛がほとんどないことなど数か月に1日くらいなのですが。 恐らく数秒の単位で頭痛は制御できる。遠隔で全身の筋肉が制御できることをはじめ、多彩なことが可能だ。 あまりに非人道的なやり方だと思っています。 全身の筋肉を操り人形のようにできた経験はないが、狙った場所の筋肉を収縮させることは可能なようだ。 自分で起きることが、できなくなるほど、全身の筋肉が動かなくなった経験はある。 最近は、心臓近辺に痛みを発生させる威嚇をしている。 筋肉への操作がわかりやすいので筋肉の制御の話が長くなったが、脳への制御も非常に細かくできる。 思考の全文探索能力をほぼ停止させることもできる。この状態では日常生活は可能だが発明は完全にできない。


3月12日 頭痛が痛い

今も、頭が痛い。動けなくなっているわけではないが、 その一歩手前の強い頭痛が続いている。これから寝ます。
第二次世界大戦、イギリスの数学者、チューリングをご存知だろうか。 ドイツの暗号機エニグマを解読した英雄。しかし戦後、英雄どころか、青酸中毒による自殺。 周囲は事故だと信じていたという話。そして、戦後のイギリス政府によるチューリングへの 扱いについて、公式に謝罪した。(Wikiより)
僕もチューリングと同じ状態と思っています。 暗号装置の仕事に大成功したにもかかわらず、一滴も、甘い汁を飲むともなく、 頭痛で苦しめられ、酷い目にあわされているあたり。
10年前あたりから、常時httpsが始まるころ、世界中で暗号ハードの研究がされたいたはず。 にもかかわらず、SnakeCube のような高性能、高効率な暗号ハードを発明できたのは僕だったわけで、 日本の誰も、考えることができなかった。
僕の脳破壊は、売国奴の罪に問われないのかも、考えた。
写真は僕の左手首の傷、暗号装置の開発後、殺されかかったのかと思う人もあるかもしれないが、 僕が赤ちゃんのころからある傷。この傷については僕も何も知らない。 もし僕の話が映画化されるなら、この傷の謎について、考えるのも面白いかもしれない。

図をマウスでクリックすると拡大されます


3月12日 SnakeCube開発 アセンブラ作成中(4)

作業報告です。それ以上ではありません。 ICF3(1999年)の公開されているシミュレータのC言語のソースコードには モンゴメリ乗算器の部分も、実論理に近いものが入っている。 SnakeCubeではモンゴメリ乗算器にXilinxのDSPが使われている。 XilinxのDSPを精密にC言語でシミュレーションすることも考えたが、 モンゴメリ乗算の結果を、C言語で演算する方法で、いけそう。 モンゴメリ乗算器の途中の状態をプロセッサ側が知る必要がない。


3月12日 頭痛が続いている

脳が壊されていない保証はない。かなり記憶が、やられるのと、スピードが落ちる。 正常な動作をさせるために、細かいことを捨てる論理で、正しく動作させている。
頭痛という方法で仕事を得られる人が、あったとしても、共犯者に見えると思う。 頭痛を止める方法を考えたほうがいいように思っています。


3月11日 SnakeCube開発 アセンブラ作成中(3)

作業報告です。それ以上ではありません。 OpenICF3で公開しているシミュレータ をSnakeCube用に改造しています。C言語で書かれたシミュレータですが、 1024bit加算の部分をインラインアセンブラを 使って高速化。偶数ケースの1024bitのRSA暗号の演算が1.15倍高速に このくらい性能が上がると、数日を使ってインラインアセンブラによる高速化が多少役に立ったかなと。


3月11日 やっと起きました

朝、一度、起きたのですが、再び眠りに落ちました。 プログラムが書けなくなるほど能力が低下することもあるのですが、 僕にとってプログラムは趣味に近く、それができなくなるということは脳が破壊されたと言える。
破壊されている状況を説明されたくはないはずで、したがってプログラムが出来なくなることはない。
つまり、いつかはSnakeCubeが完成する。 これが遅れることは、多くの人にとって損害しかもたらさない。 もう少しいうとSnakeCubeの技術を奪う方法が、見つからないにもかかわらず、迷走している人を止めたほがいいと思う。 僕は電子署名に詳しいおかげでタイムスタンプ(RFC3161)のような技術を早くから知っている。 日記にAMANOの無料のタイムスタンプサーバを使った実例を書いている。 SEIKOの無料のタイムスタンプも、試したことがあって、SEIKOを調べても僕の問い合わせ記録があるかもしれない。 AMANOは専用のプラグインを使わない方法でタイムスタンプをしているので、専用プラグのソフトウェアに依存せずに、 タイムスタンプを検証することができる。
長々、書きましたが、証拠は残しているから、いまから、ネット上のデータが改ざん可能だといっても、 SnakeCubeの技術を奪う方法とは、ならない。
証拠データをいろいとなところに配置して、攻撃による消失に備えているが、暗号化が全く通用しないので、 苦労しているというのは、ある。


3月10日 gabの目的

gabにアカを作ったというと日本で違法なコンテンツを投稿するのかと思う人がいてもおかしくない。 目的は通信路の確保です。包囲にかかる費用を増大させ、周囲を諦めさせることにある。
SnakeCubeの発明は、 僕は大きいと思っていて、一刻も早く完成させたいのです。
僕の脳を破壊して奪い取っても売れないと思います。


3月10日 さらに眠る

3月10日午後、眠気がとまらず、ほとんど眠っていました。


3月10日 ICF3-Zへのお問合せについて

ICF3-Zのサイト に連絡先のページがあります。 返信をするかは、実在性がわかりやすいアカとか、 メッセージャーを使った穏やかな方法とか、質問の内容とかで考えます。
昨日、せっかくgabのアカ(ZEVIOS-CPU) を作ったので、こちらでも、なるべく質問に答えるようにします。


3月10日 12時間以上寝ていました

頭痛で倒れて12時間以上、寝ていました。


3月9日 gabというSNSにアカを作ってみた

頭痛から逃れるため必死に、もがいている感じです。 とりあえず8bit CPUの話題とか、いろいろ書いてみようかと思っています。 暗号技術系の話は、gabでは危険かもしれないので、あまりしない予定です。 gabは日本人には未知で危険が潜んでいる世界のように見えています。 そういう世界ではビットコインが便利みたいでgabにビットコインで寄付してみました。 単に、クレジットカードより安全かなと思っただけですが。
もしgabの世界がいいと思えて、よければフォローしてください。
↓これです
ZEVIOS-CPU
gabはマストドンのアカウントからもフォローできます。検索で

zevios@gab.com

とすればいいみたいです。ただドメインブロックでフォローできない場合もあるようです。


3月8日 ChromiumOS Canalビルドの活動終了

OpenICF3の活動に集中するため、 ChromiumOS Canalビルドの活動を終了することとしました。 サイトのほうは残しますが、OSイメージのダウンロードは4月末くらいまでを予定しています。 これまで、ご利用いただきありがとうございました。


3月7日 USBメモリが壊れた

パソコンにUSBメモリを刺した瞬間にUSBメモリのデータが改ざんされている可能性を考える 習慣をつけている。一度使ったUSBメモリを再利用せず、再びスタンドアロンの安全なパソコンから データをUSBメモリに書き込みをするという運用をしている。 ライトプロテクトつきのUSBメモリであれば何度でも再利用できて便利です。 先日、ライトプロテクト付きのBUFFALO製USBメモリを購入した。 このとき何故かBUFFALOのUSBメモリしかなかった。 CentOSのisoファイルを書き込んでライトプロテクトのスイッチをONにした。 ところが、なんといくつかのリードコマンドは受け付けるようだがマウントできない。 ライトプロテクトのスイッチをOFFにしないとデータが読み出せないのです。 CentOSのisoが改ざんされていないことを保証された状態でインストールされると困るのか。 そう思った。 BUFFALOのサイトで購入したUSBメモリを調べると「ライトプロテクト」と書いてある。 10年以上前に同型のUSBメモリを購入していて、 ライトプロテクトされた状態でマウントできることを現在確認した。
どうやら、ほぼ新品のUSBメモリが壊れたようだ。
壊れなのか、意図的なものなのだろうか。データは改ざんできる状態でないと困る人があるのだろうか。 写真の緑色のUSBメモリが今回、壊れたUSBメモリ。青色のUSBメモリが10年以上前に購入した同型のUSBメモリ。

図をマウスでクリックすると拡大されます


3月5日 DNS over HTTPSをデフォルトで有効に

10日くらい前のGIGAZINE記事 「ついにFirefoxがDNSとの通信を暗号化する『DNS over HTTPS』をデフォルトで有効にすると発表」
DNSもHTTPSになる、SSLアクセラレータが盛況になるのかみたいな感じで脳内が騒がしい。
騒がしい理由は、僕の大学の研究室の、ある先輩にある。 先輩というと西さんを思い浮かべる人もあるかもしれない。 西さんは早稲田理工学部の機械科なのですが経歴に僕のいた研究室(厳密には成田研)に出入りしていたことが 書いてあるため。ところが研究室にいた3年間、一度も、そんな話を聞いたことはなく、 西さんって、どうも早稲田卒らしいといううわさしか聞いたことがなかった。
ある先輩に話を戻すと、僕は大学4年になった1991年に研究室に入りました。 この頃はインターネットの黎明期で大学内ではネットワークについて 最も有名な先輩でした。 黎明期で大学内で最も有名だとDNSの会社に入っても有名なのだろうと予想です。 研究室は並列コンパイラでネットワークの研究ではないけどWIDEの研究をされていたようです。
そして先輩は、僕の並列コンパイラ研究の指導員だったことで、脳内が騒がしいのです。
僕が先輩にRSA暗号をもっと使うように斡旋している疑いをかけられている
僕がRSA暗号を斡旋することはありません
僕が自分の危機を乗り越えるため考えていることは激安なSSLアクセラレータを提供し、 サーバを提供する人、利用する人に得をしてもらうことなのです。
某大手メーカに注文しても、中で開発しているのは僕ですから、 今なら某大手メーカの大マージンがつかない状態で製品化ができる予想なのです。
某大手メーカは、良く思ってないはずですが『自業自得』の『身から出た錆』です。
世界中に広く売れることを考え、余計なマージンが付かないように、みなが考えれば、 本当にそうなるかなと。
SSLアクセラレータで開発された設計データ(RTL)ができれば、安価に転用できるため、 ASICやら、タイムスタンプサーバやら、 大きな鍵が演算できるモバイルとか、ICカード(AWS EC2に接続できるPKCS#11対応)とか、 いっぱいビジネスが成立する可能性が出てきます。
話が脱線しましたが、僕が先輩にRSA暗号を斡旋するとどうなるか。 RSA暗号でなくていいものをRSA暗号にして無理に買わされたことを散々、散々、散々、 僕に言って僕は危機を乗り越えられなくなるのです。 ですから僕がRSA暗号を斡旋することはありません。
以降は余談で読む必要なし。
そう判断できた僕の人生経験を書いておきます。
僕が大学生の頃、理系でコンピュータが得意なので、早稲田の商学部2人にHDDを 買いたいから、遊ぶついでに秋葉原に行こうと誘われた。
1人は大阪の中学、高校時代からの友人で親しい。HDDを買うのは、もう一人のほうでした。 僕は、より良いHDDを選択できるようにアドバイスして親切心で対応した。 すると高校時代からの友人が、急にHDDを買う友人の内心を「解説をすると」と言い出した。 「彼は、自分に高いものを買わされそうになっていることを心配している」 びっくりした。こちらは親切心で最良の選択をしたはずで、感謝されると思っていたからだ。
商品の知識がないだけで、この状況。増してや、悪意があれば、苦労して激安に作った SSLアクセラレータが、どう言われるかなど、容易に想像がついたからでした。


3月4日 SnakeCube開発 アセンブラ作成中(2)

作業報告です。それ以上ではありません。 OpenICF3のサイトで公開しているシミュレータの1024bit加算はC言語で書かれていますが、 gccのインラインアセンブラを使って高速化してみました。 Intel Core i3で4.3倍の性能が出ました。 gccの最適化オプションO3より人間の最適化のほうがいいということですが、 これはC言語では加算器のキャリーを扱えないためです。 1024bit加算のみの結果ですが、シミュレータ全体でも性能が上がったと思われます。


3月3日 自宅の監視サーバが不能になった件、その後

2日前の3月1日の話の続きで、ネットワーク管理に興味のある人以外は、 全く読む必要はありません。
その後、数回不能になり、原因の調査を続けていました。 攻撃者は僕の脳内の推理状況を見ながら、更なる手を打ってくるという想定をしなければならず苦しい。 その状態での結論なので、当たっているとは限らないですが、 サイバー攻撃をする側の心理を考えるなら、こんな手を使ってくるのかもという話です。

マイナーなLinuxのバグを応用したサイバー攻撃で、バグはマシンの環境によっては正常動作するため OSのディストリビュータに迷惑をかけず、安全にサイバー攻撃できる方法。

OSが用意しているGUIによるネットワーク設定ツールを使ってサーバにするためIPを固定する。 中身を見てみると、OS起動時のスクリプトでDHCPクライアントのデーモンをKILLして、ifconfigでIPを固定していた。 このため事件当初は、外部のネットワークから脆弱性をついて DHCPクライアントを起動するだけのサイバー攻撃をして、不正アクセスしているように見せかけていると考えていた。
本当はOS起動時のスクリプトでDHCPクライアントがKILLされているはずなのに、生きていたのだ。 そのせいで時折、DHCPによるIPアドレスの変更が起きていた。後はタイミングを合わせて、 脆弱性をついたと思わせたい、ポートをログが残るようにアクセスすればいい。
OSが用意している設定ツールによるものだったので、KILLされていると、思いこんでいたのだ。
よく考えてみるとマイナーなLinuxでマシンの環境に依存していると言えるバグで、 これをサイバー攻撃に使わない手はない、と攻撃者は思うだろうなぁと。


3月3日 1040円寄付した

ウィキペディアに寄付(寄付番号 CNTCT-41176767)


3月2日 暗号LSI ICF3(1999年)のオープンソースの状況報告

Facebookに投稿した内容と同じものです。
昨年、仮想通貨の暗号技術者が捕まるなどの事件があり、 ICF3で捕まることはないと考えていますが停滞しています。 ICF3をベースに作られたSnakeCube(ICF3-F) と区別がつかない人があるようなので、違いを説明します。
ICF3は暗号プロセッサに基数2のモンゴメリ乗算器を搭載しています。 オープンソースにするべく考えていますが、鍵長を大きくする以外の改善を抑止する方向です。 制限の緩いオープンソースを期待するのであれば、僕の働きに対する生涯賃金について考えてもらえればと。 (遠隔攻撃による頭痛が現在も続いており被害拡大中。とりあえず被害拡大は抑えたらいいのにと)
SnakeCubeはICF3の暗号プロセッサに低基数のモンゴメリ乗算器を搭載したもので、 高効率で高性能です。そして鍵長を大きくしても性能が劣化せず、 鍵長が大きければ大きいほどCPUより高速になっていきます。
基数2のモンゴメリ乗算器、若干の傷がありますが、それ以外は僕の発明で、 モンゴメリ乗算のアルゴリズム以外、 参考になっているものもない。利権も僕にあるという状況です。
ICF3をベースにした8bit CPU ICF3-Zのほうは、 制限の緩いオープンソースとして今年の1月15日に正式に運用を開始しました。 ゲート数に対する除算性能が圧倒的に優れていて低消費電力も期待できます。期待を含めれば産業に貢献するのではと考えています。 これです↓ぜひみてみてください。
「オープンソースのCPUの除算性能 RISC-V vs ICF3-Z」

最も重要なのはSnakeCubeの高性能暗号技術を仕上げることです。 MicrosoftがRSA暗号の検証方法の特許を取得しているので、SnakeCubeの高速な署名と合わせて、 世界のシステムで活躍することがあるかもと考えています。 僕が頭痛になっている場合ではないのです。


3月1日 SnakeCube開発 アセンブラ作成中

作業報告です。それ以上ではありません。 ICF3(1999年)で使っていたアセンブラをOpenICF3のサイトで公開していますが、 SnakeCubeでは改良を進めて、かなり良くなってきています。
20年前はIntel 486のインラインアセンブラで高速化をしていたこともあったのですが、 今ではインラインアセンブラの構文も変化して拡張インラインアセンブラなるものもあるようです。 Intel CPUでもRISC-Vでも動作する汎用性を持ったコードが書けるのか試してみましたが、 Intel CPUは2オペランド、RISC-Vは3オペランドなので無理でした。^^;
拡張構文を使ったIntel CPUのインラインアセンブラが動き出して、ほっとしています。 インラインアセンブラはPerlで自動生成されます。
この調子でFPGAの自動配置も自作しそうです。


3月1日 不正アクセスにより自宅の監視サーバが不能に

自宅のネットワークの監視システムを数日前から稼働させました。 監視サーバのログを見ると無線LANのあるルータから侵入、監視サーバがログを受信するために開けていた 514ポートをアクセス。数十分後、監視サーバのIPアドレスがDHCPによって別のアドレスに変更され監視不能となった。

ここで前回の不正アクセスを思い出します。前回も無線LANから侵入、狙われたのは非武装地帯にあるWebサーバ。 インターネットから接続できるWebサーバです。Webサーバが起動不能になったのです。 たまたま無線LANからの不正アクセスを捉えることができたため、無線LANによる内部からの攻撃だったのですが、 それを知らなければ、Webサーバの脆弱性をついて、Webサーバを起動不能にしたと思っていたことでしょう。 あたかも、高度なサイバー攻撃のようにみえる予定だったのかもしれません。 ずさんな無線LAN管理が原因で不正アクセスをされていたにもかかわらず。です。

今回の話に戻します。推測でしかありませんが、こんなことは考えられないだろうか。 最初から監視サーバにウィルスを潜伏させておく。 起動後、24時間で、ネットワークの設定をDHCPによって再設定するようにセット。 24時間近くが経過したところで、無線LANから侵入して、514へアクセスして、ログを残す。 アクセスをしてログを残すだけで実際には不正アクセスに成功しているわけではない。 24時間が経過したところで潜伏していたウィルスが起動、監視サーバのネットワークの設定を変更して不能状態に。 あたかも、高度なサイバー攻撃による不正アクセスの成功というように見せて、僕に宣伝させるみたいな。
高度なサイバー攻撃より、例えばOSのアップデートに仕込んでおけば、簡単ですから。


暗号プロセッサ OpenICF3