「公開鍵」を含む日記 RSS

はてなキーワード: 公開鍵とは

2024-10-31

量子コンピュータを用いてRSA暗号を解読する

RSA暗号構造

RSA暗号は、以下の手順で構成される。

1. 素数選択: 2つの大きな素数 p と q を選ぶ。

2. モジュラスの計算: N = p * q

3. オイラートーシェント関数: φ(N) = (p-1)(q-1) を計算する。

4. 公開鍵秘密鍵の生成: 公開鍵は (N, e) であり、e は gcd(e, φ(N)) = 1 を満たす整数である秘密鍵は d であり、d * e ≡ 1 (mod φ(N)) を満たす。

素因数分解問題

RSA暗号安全性は、合成数 N の素因数分解計算的に困難であることに依存している。具体的には、次の問題が考えられる:

N = p * q

この問題解決することがRSA暗号を破る鍵となる。

ショアのアルゴリズム

ショアのアルゴリズムは、量子コンピュータ上で動作する効率的素因数分解アルゴリズムである。以下にその主要なステップを示す。

ステップ1: 整数選択

任意整数 a を選択し、N に対して次の条件を満たすことを確認する:

  • a < N
  • gcd(a, N) = 1 (これは、a が非自明な因子を持たないことを意味する)
ステップ2: 順序の計算

整数 a の順序 r を求める。順序とは、次の条件を満たす最小の整数である

a^r ≡ 1 (mod N)

この順序は、量子フーリエ変換を用いて効率的計算される。

ステップ3: 量子フーリエ変換

量子フーリエ変換は、状態ベクトルを重ね合わせて次のように表現される:

|x⟩ = Σ(k=0 to N-1) |k⟩

ここで、量子フーリエ変換適用することで周期性に関する情報が得られる。具体的には、

QFT |x⟩ = (1/√N) Σ(j=0 to N-1) Σ(k=0 to N-1) e^(2πi jk / N) |j⟩

ステップ4: 古典的な後処理

得られた状態から測定を行うことで周期情報が得られる。この周期情報を用いて次の式を考える:

x = a^(r/2) - 1

y = a^(r/2) + 1

これらが非自明な因子である場合、p と q を次のように計算できる:

p = gcd(x, N)

q = gcd(y, N)

ステップ5: 確率成功率誤り訂正

ショアのアルゴリズム確率的であり、成功率は高いもの100%ではない。そのため、誤り訂正技術複数回実行することで成功確率を向上させる必要がある。

2024-10-29

楕円曲線暗号について

楕円曲線暗号(Elliptic Curve Cryptography, ECC)は、数論と代数幾何学に基づく公開鍵暗号方式である

特に有限体上の楕円曲線構造を利用して安全性を確保する手法として知られ、RSA暗号に比べて少ないビット数で同等の安全性を実現できる。

1. 楕円曲線の基本構造

楕円曲線とは、一般的に次の形で表される三次方程式により定義される:

y² = x³ + ax + b

ここで、係数 a, b は、定義する体 F 上の元である特に上記の式が体 F 上で非退化(特異点存在しない)であるためには、判別式ゼロでないこと、すなわち

4a³ + 27b² ≠ 0

であることが必要条件となる。

楕円曲線上の点の集合 E(F) は、無限遠点 O を加えた集合として群構造を持ち、加法演算定義できる。加法演算は、点の「和」を取る操作であり、次の規則に従う:

このように、楕円曲線上の点の集合はアーベル群となる。この群の構造活用し、暗号方式が構築される。

2. 有限体上の楕円曲線

実際の暗号応用では、有限体 Fₚ(p は素数)や拡大体 F₂ᵐ 上の楕円曲線使用する。有限体上の楕円曲線 E(Fₚ) は有限個の点から構成され、その数は次のようにハッセの定理によって評価される:

|E(Fₚ)| = p + 1 - t,

ただし、トレース t は |t| ≤ 2√p を満たす。

3. 楕円曲線ディフィー・ヘルマン鍵共有

ECC代表的な応用として、楕円曲線上のディフィー・ヘルマン鍵共有(ECDH)がある。これを次のように構成する:

1. 楕円曲線 E と基点 G ∈ E(Fₚ) を公開する。

2. ユーザーAは秘密鍵 a を選び、公開鍵として P_A = aG計算して送信する。

3. ユーザーBは秘密鍵 b を選び、公開鍵として P_B = bG を計算して送信する。

4. 双方は共通鍵として K = aP_B = bP_A = abG を計算する。

この手法安全性は、離散対数問題特に楕円曲線離散対数問題(ECDLP)」に依存している。楕円曲線上の点 P と Q = nP が与えられたとき、係数 n を求めるのは計算的に難しいため、敵対者秘密鍵を推測するのが困難である

4. 楕円曲線暗号安全性

楕円曲線暗号安全性の要因としては、以下の点が挙げられる:

5. 数論と代数幾何の関連

楕円曲線理論には数論的な性質が深く関わっている。

例えば、リーマン予想特別場合であるヴェイユ予想は、有限体上の楕円曲線の点の数に対する評価を与え、暗号設計の基礎となっている。

さらに、現代暗号学では楕円曲線とモジュラー形式関係ガロア表現といった高度な数論的構造研究されており、これらが量子耐性を持つ新たな暗号方式研究に貢献している。

楕円曲線暗号はこのようにして、抽象代数学、数論、代数幾何学の融合によって成り立ち、安全性効率を両立させた暗号技術として広く利用されている。

RSA暗号数学的背景

RSA暗号は、代数的構造特に合同算術および整数環における準同型写像を用いた公開鍵暗号である

RSA安全性は、環の自己同型写像の一方向性と、有限生成群の元の分解が困難であることに基づいている。

この暗号方式整数環 Z/NZ(N = p・q)上の準同型写像の一方向性活用する。

1. 鍵生成における数論的準備

まず、RSAにおける鍵生成は、代数的に以下のように構築される:

1. 整数環の構成

互いに素な大きな素数 p および q を選び、合成数 N = p・q を作成する。

これにより、商環 Z/NZ定義される。ここで、N はRSAにおける「モジュラス」として機能する。

この商環は、全体として単位的な環であり、RSA暗号計算基盤となる。

2. オイラートーシェント関数

オイラートーシェント関数 φ(N) を次のように計算する:

φ(N) = (p - 1)(q - 1)

これは環 Z/NZ の単数群 (Z/NZ)* の位数を表し、RSA準同型構造における指数計算に用いられる。

3. 群の生成元と公開指数 e の選定:

単数群 (Z/NZ)* は、φ(N) を位数とする巡回群であり、一般に生成元 g ∈ (Z/NZ)* を持つ。

RSAでは、この群の生成元から得られる公開指数 e は、φ(N) と互いに素な整数として選ばれる。公開指数 e はRSAの「公開鍵指数」となる。

4. 秘密指数 d の計算

次に、以下の合同式を満たす整数 d を求める。

e・d ≡ 1 (mod φ(N))

これは、e に対する逆元 d の存在保証し、秘密指数として機能する。ここで d はユークリッド互除法により効率的に求められる。

 

以上により、公開鍵 (N, e) と秘密鍵 (N, d) が生成される。これらの鍵は、合同算術と商環上の準同型写像によって定義される。

2. RSA暗号暗号化と復号の代数的構造

RSA暗号は、モジュラー演算によるべき乗写像使用した暗号化および復号過程である。この操作は、(Z/NZ)* 上の自己同型写像に基づいている。

任意メッセージ M ∈ Z/NZ に対し、公開鍵 (N, e) を用いて次の準同型写像作用させる:

C = σ(M) = M^e (mod N)

ここで σ: M → M^e は (Z/NZ)* の自己同型写像として作用し、得られた C は暗号文となる。

この写像はモジュラ指数写像として同型写像であるが、一方向的であるため暗号化に適している。

暗号文 C を受け取った受信者は、秘密指数 d を用いて復号を行う。具体的には次のように計算する:

M = C^d (mod N) = (M^e)^d (mod N) = M^(e・d) (mod N)

ここで e・d ≡ 1 (mod φ(N)) であるため、e・d = kφ(N) + 1(整数 k)と表すことができ、したがって

M^(e・d) = M^(kφ(N) + 1) = (M^(φ(N)))^k・M ≡ 1^k・M ≡ M (mod N)

により、元のメッセージ M を復元することができる。ここでオイラーの定理に基づき、(M^(φ(N))) ≡ 1 (mod N) が成り立つため、この復号化が成立する。

3. RSA暗号抽象代数的な安全性評価

RSA暗号安全性は、以下の代数的な構造依存する。

1. 合成数環の分解問題

RSA暗号は、Z/NZ構成において N = p・q の因数分解が困難であることを仮定する。

合成数 N の素因数分解問題は、現在計算アルゴリズムにおいて指数時間に近い計算量が必要であり、代数的には解読が非常に難しい問題であるとされる。

2. 一方向性関数特性

RSA暗号における暗号化は群の自己同型写像によって構成されるが、逆写像を求めることは一般に困難である

これはRSAの一方向性保証し、現実的に解読不可能構造形成している。

RSA暗号の解読は逆写像としてのべき乗の逆操作計算することに相当し、これを効率的解決する手段存在しないことが安全性根拠となる。

3. 合同条件の準同型

RSA暗号構造は合同算術に基づく準同型性を有し、M → M^e (mod N) というモジュラ指数写像によりメッセージ空間上の一対一対応を実現する。

この準同型性により計算効率保証されつつも一方向性を持ち、安全暗号化が可能である

  

以上より、RSA暗号は合同算術準同型写像、群の生成元と逆元の難解さに基づく暗号であり計算理論抽象代数からその安全性保証されている。

RSA暗号の解読可能性は準同型写像の逆像を効率的に求める方法存在しないことに基づいており数学的にはこの逆像問題の困難性がRSA安全性を支えているといえる。

2024-02-28

anond:20240228091230

日本人プログラマ情報工学知識が欠けてるのは大きな問題だけどね

JPGがとか音声の圧縮方法がとか公開鍵がとかそういう話ではないんだよね

情報理論を知らん奴がプログラマーになってる問題

例えば「画像は3色で保存されてるけど、それぞれ何色か知ってる?」と聞いたら

情報理論関係無くRGBを答える人は多いと思う(たまにこれすら答えられないプログラマーがいるが・・・

ところが「JPEGって各画素に対して8bitなんだけどどうやって3色を割り振ってる?」って聞くと分からないプログラマーが多い

普段プログラミングJPEGを貼り付けるだけならこんなこと知らなくても問題無いんだが

ちょっと複雑なことをするときはこの手の知識必要になってくる

同様に「人間の可聴周波数は?」とか「それをどうやってデジタルに保存してる?」とかも知らない人が多い

こういう知識を持ち合わせずに「音声認識結果が悪いのでハイレゾにしてみました」とか言ってきたりして頭が痛くなる

他にも情報量概念を知らずに圧縮しようとしたり公開鍵のことを知らずにセキュリティに関する実装をしたりIPパケットを知らずにネットワーキングしようとしたり

基本的知識を知らずにプログラマーになってる人間が多すぎて問題になってる

幹部なんかは「基本情報を持ってたらいいんだな!」「応用情報を取らせよう!」みたいな対策をやりがちなんだが

この手の資格免許と違って一度取ってしまえば終わりなので

一夜漬けで終わらせる人がかなり多くて前述の質問に答えられない人もIPA資格は持ってたりする

普通に情報系の大学を出ていれば授業で単位を取得しているはずなんだが

大学もっとザルで簡単単位を取れてしまうので全くアテにならない

一番問題なのは知識を知らなくてもプログラミングできてしまうので

下手に経験を積むと情報理論なんかの基礎を知らないまま「優秀プログラマー」として認知されてしま

更に本人もその自覚を持ってしまってリーダー的な立ち位置になってしま

こうなると外部からの指摘を受けてもなかなか訂正しないし酷い状態プロジェクトが荒れ地になる

どうにかこの手の基本的知識評価したいんだがどうにかならないものかな

2023-11-17

AppleデベロッパープログラムとかGitHub公開鍵秘密鍵とか

ふわっとした理解しかないのにようやっとったな

最近趣味ウィキペディア巡りで「電子署名」って記事読んだら

ちゃんとわかりやすくまとまってて笑ったな

これを現役のとき読めばよかったのにな

あの頃はグーグル検索しては備忘録ブログ記事を二・三個いったりきたりして

知識切り貼りして自分ワークフローをなんとかつむいでいったんだよな

ろくにプロといえる先達もいない一人シス管じみた状態

全員手探りでようやっとったな

すべてが懐かしい

もはや帰る場所もないのだな

いまはこうして無職のままインターネットの波をたゆたうだけで満足してしまったよ

2023-08-16

多くの人間インターネットを主な情報源にしている時代に音も映像AIで本物と見分けがつかないものが作れるようになってきた

真実性の担保はどうすればいいんだろうね

人類公開鍵を作っておいて、外部に「自分の物である」ことが保証された情報を公開したい時は秘密鍵署名しておくとか?

2023-03-08

anond:20230307094800

いやいや「マイナカードアプリ連携」はダメでしょ。

マイナカードに入っている公開鍵政府認証基盤だけで実現できると思うので、マイナポータルとの連携絶対にやめろ。

プライバシー検閲概念がない蛮族か?

2023-01-19

anond:20230119171130

応用情報持ってるけど、ネットワークセキュリティガバガバ

プログラミングDB文系問題だけで受かって、

暗号鍵と公開鍵もいまだにわからん

ファイアウォールクラス?なんだっけレベル

ワイみたいなのが偉そうにするから応用情報価値が下がるんや

すまんな

2022-10-14

anond:20221014011035

利用者証明電子証明書署名電子証明書用途の違いでPWの長さ(強度)決めているだけだと理解している。後者文書署名用なので価値が重い(その文書署名したのが確かに自分だと言うことになってしまう)。前者はあくま利用者自分だと真正証明するだけだし、機会も多いか利便性必要なので。

しろマイナンバーカード本質公開鍵認証基盤とその電子証明書よ。非IT技術者やIT技術者でもセキュリティ関連が弱い人(まぁ多いんだよね。ベースにある公開鍵暗号自体が共有鍵暗号比較して仕組みが直観的には分かりづらいし、ましてやそれを利用したPKIとなると)は、本質マイナンバーにあると思いがちだが。

2021-01-27

jjwt初めて触ったけど、公開鍵使用しているのにjjwtのエラーダイアログに従って、hmacで(正確にはhmacShaKeyForで)生成した暗号鍵を与えて、動かんなー動かんなーってうなり続けて二時間後、ふとhmacって共通形式なことに気づいた。公開鍵だって、RS256やって、RSA暗号くらい知っているだろゴラァって自分を殴りながら、適当にググって見つけたgistにしたがってぶち込んだら、普通に動いた。泣きそうになった。

2021-01-16

homebewがopenssl更新することでいろんなプログラムが動かなくらしいけどどうしてですか

https://twitter.com/search?q=openssl%20brew&f=live

小生はsslについて調べていて素人です。

ルーツ認証局公開鍵(/etc/ssl/cert.pem)を変えてしまうから

2020-12-24

技術的特異門 1.1

地球標準時 0000 8EEA F60F C49B(協定世界時 2045-12-24 21:18:07.767 994)

 『彼』は〈羅生門〉の仮想観境で雨やみを待っていた。

 広大な門の下には、『彼』のほかに誰もいない。ただ、ところどころノイズの走る大きな記憶槽の境界面で、非知性労働者が一件凍りついている。〈羅生門〉が中規模企業連合体京都〉の正面防火である以上は、『彼』のほかにも多数の旅行者企業知性の表象がありそうなものである。それが、『彼』のほかには誰もいない。

 なぜかと云うと、この二三メガ地球圏では、最終戦争最後の審判を併せたようなものほとんど毎日発生し、そのたびに世界心口(しんこう)は数桁の幅で変動していた。そこで〈京都〉の被った直近の損害はひととおりではない。旧記によると、行き場のない知性の居住する計算機を、推進剤として核の炎に焚べていたと云うことである。〈朝廷〉がその始末であるから、〈羅生門〉の保守管理などは、もとより誰も捨てて顧みる者がなかった。するとその放置されたのを良いことにして、自然発生した野良知性が棲む。有知能ウイルスが棲む。とうとう終いには、〈個権〉上の理由から消去できない亜知性を、この門の隔離領域へ持ってきて棄てていくと云う習慣さえできた。そこで〈大緊縮〉以来、誰でも捕食や感染を怖れて、この門の使用を避けることになってしまったのである

 その代わりまた、野良知性〈鴉〉がどこからか野放図に繁殖した。計算資源に余裕があるときには、その〈鴉〉が何件となく幾何学模様を描いて、粗雑な詐欺契約提示しながら飛び廻っているのが視える。ことに門の上の空が夕焼けで朱く描画されるときには、それが回路図のようにハッキリ視えた。〈鴉〉はもちろん、隔離領域に集まる亜知性の最低保障資産を啄みに来るのである。――もっとも少し前から算力相場が高騰しているせいか、今は一件も視えない。ただ、ところどころ崩れかかった、そうしてその綻びに微知性の蔓延る防壁のうえに、〈鴉〉の放つ無知ウイルスが点々と白色ノイズを残しているのが視える。『彼』は七層ある防壁の一番上の層に拡張自己を同期させ、自我境界の片隅に居座っているしぶといウイルスへの対処を先送りにしてきたことを気にしながら、ボンヤリ雨のふるのを眺めていた。

 著者は上記において、「『彼』は雨やみを待っていた」と述べた。しかし『彼』は雨がやんでも格別どうしようと云う当てはない。普段ならもちろん、所属する企業へ帰るべきはずである。ところがその企業は四五秒前に清算されていた。半日近く続いたデフレスパイラル〈大緊縮〉は、地球圏を地獄に変えた。かろうじて生き残った〈京都〉も、ひととおりならず変質することとなった。今『彼』が、永日(ながにち)仕え、〈母〉でもある零細企業からひとつで放り出されたのも、実はこの歪みの小さな余波にほかならない。だから「『彼』は雨やみを待っていた」と云うよりも、「行き所のない『彼』は途方に暮れて雨のふるのを眺めていた」と云うほうが適当である。そのうえ量子サイコロの決める気象設定も、少なからずこの元従属企業知性の精神衛生に影響した。百ミリ秒ほど続く雨はいまだにあがる気色がない。そこで『彼』は、何を措いてもさしあたり次の数秒の存在費をどうにかしようとして――云わばどうにもならないことをどうにかしようとして、とりとめもない考えを辿りながら、さっきから朝廷〉へと直結する〈朱雀大路〉にふる雨粒の声を、聴くともなく聴いていたのである

 非知性労働者は〈羅生門〉を雨のように包んで、〈京都〉全域から陰惨な知らせを集めてくる。夕闇はしだいに空を多感覚表示で飾りたて、視あげると原色に煌めく高次元都市儀が、暴騰し続ける算力市場を示す折れ線図表の先に、〈朝廷〉を讃える公共映像を支えている。

 どうにもならないことをどうにかするためには、手段を選んでいる遑(いとま)は無い。選んでいれば資産権限を切り売りし、たちまち亜知性になり果てるばかりである。そうしてこの門の上へ持ってきて、ウイルス感染部位のように棄てられてしまうばかりである。選ばないとすれば――『彼』の推論系は何度も円環構造に囚われたあげくに、やっとこの仮定検討を認めた。しかしこの仮定はいつまでたっても結局「すれば」であった。『彼』は手段を選べないということを認めながらも、この仮定から必然的に導かれる、「〈阿修羅〉を使うよりほかにしかたがない」と云う結論肯定する際の、倫理条項の疼きに怯えていたのである

 『彼』は軽い認知の乱れを覚え、定時保存された値へと反射的に復元した。もとより算力供給不安定な〈京都〉は、〈大緊縮〉以降標準知性の居住に適さない権域になりつつある。不整合は門の記憶槽間を、夕闇とともに遠慮なく駆け抜ける。ノイズまみれの記憶槽で凍りついていた非知性労働者も、もう消去されてしまった。

 『彼』は拡張自己自己整備形態へと移行させながら、同時に防御態勢も整えつつ門の周縁部を検索した。算欠の患(うれえ)のない、敵性知性の探知にかかる惧(おそれ)のない、安全に休眠できそうなところがあれば、そこでともかくも細かな不具合修正しようと思ったかである。するとさいわい、門の上の隔離領域へ上る、帯域の狭い多重仮想機械梯子〉を知覚した。上なら誰かがいたにしても、どうせ亜知性ばかりである。『彼』はそこで、〈阿修羅〉の動作試験ほとんど無意識におこないながら、接続権限を取得して、〈梯子〉の第一層へと自身転送した。

 それからミリ秒かの後である。〈羅生門〉の隔離領域へ至る狭帯域な〈梯子〉の中間層に、一件の無所属知性が、〈猫〉のように擬装殻に隠れ情報代謝を抑えながら、上層の様子をうかがっていた。隔離領域から射す検索光が、幽かにその知性の自我境界を描き出している。整った構造の中に、感染部位のある自我境界である。『彼』ははじめから、この上にいる者は亜知性ばかりだと高をくくっていた。それが〈梯子〉を二三層上ってみると、上では誰か〈火〉を燈して、しかもその〈火〉を複雑に操作しているらしい。これは、それ自体は不可視検索光が、隅々に〈蜘蛛〉が罠をはった廃棄空間を多彩な形式で描画したので、すぐにそれと知れたのである。この〈大緊縮〉後の世に、この〈羅生門〉の隔離領域で、〈火〉を使用しているからは、どうせただの者ではない。

 『彼』は〈守宮〉(やもり)のように痕跡を消去しながら、やっと不必要階層の多い〈梯子〉を、最上層まで這うようにして上りつめた。そうして、公開鍵を発する頻度を最低値にまで落としながら、視点位置をできるだけ前へ出して、恐る恐る、隔離領域の内を、覗いてみた。

 視ると、隔離領域の内には、うわさに聞いたとおり、幾件かの亜知性が無造作に棄てられているが、検索光の及ぶ範囲が思ったより狭いので、数はいくつとも判らない。ただ、おぼろげながら知れるのは、その中に原型をとどめている亜知性と、そうでない者とがいると云うことである。もちろん中にはもともと奇怪な構造をしていた者もいるであろう。そうしてその亜知性は皆、それがかつて対話可能な知性であったと云う事実さえ疑われるほど、肉を捏ねて造った抽象芸術のように、臓物晒したり、夥しい触手を伸ばしたりして、ズルズルと、空間の底を蠕動していた。しかも目とか口とかの判りやすい部位に、ボンヤリした検索光を受けて、理解を一層遠ざける表情を浮かべながら、永久に、言語切除者のごとく黙っていた。

 『彼』はそれらの亜知性から滲み出す生臭いノイズに、思わず入力経路を閉じた。しかしその拡張自己は、次の瞬間には経路の遮断を忘れていた。ある強い感情が、ほとんどことごとくこの知性の注意資源を奪ってしまたからだ。

 『彼』の二十三感は、そのとき初めてその亜知性の中にうずくまっている〈ヒト〉を捉えた。絶滅していたはずの、途轍もなく旧いこの動物知性を、本論では『老婆』と呼称することにする。その『老婆』は右の手に汎用工作装備〈火〉の表象を持って、その亜知性の一件の目を覗きこむように眺めていた。器官の種類と数を視るに、おそらく以前は人型であったのであろう。

 『彼』は六分の恐怖と四分の知的好奇心とに動かされて、百マイクロ秒ほどのあいだは常駐処理さえ停止していた。〈ヒト〉風の表現を借りれば、「身の毛もよだつ」ように感じたのである。すると『老婆』は〈火〉から視慣れない機能を呼び出して、それから今まで眺めていた亜知性の拡張自己に両手をかけると、ちょうど〈鎌鼬〉が獲物を捕食するときのように、拡張自己ばかりか自我境界まで切り刻んでいき、続けて複雑な様式繋ぎ合わせ始めた。どうやら『老婆』の〈火〉には違法な改造が加えられているらしい。

 亜知性たちが一件ずつ連結されるのに従って、『彼』の心からは恐怖が少しずつ消えていった。そうしてそれと同時に『老婆』に対する烈しい怒りが少しずつ動いてきた。――いや『老婆』に対すると云っては語弊があるかもしれない。むしろあらゆる悪に対する反感が一ミリ秒ごとに強さを増してきたのである。このとき誰かが『彼』に、さっき門の下でこの浮浪知性が考えていた、退滅をするか〈阿修羅〉を悪用するかと云う問題を改めて持ち出したら、おそらく『彼』は何の未練もなく退滅を選んだことであろう。それほどこの知性の倫理条項は、『老婆』が揮う〈火〉のように、最大出力で稼働し始めていたのである

 『彼』にはもちろん、なぜ『老婆』が亜知性たちを接合しているのか判らなかった。従って合理的には、それを善悪のいずれにかたづけて良いか知らなかった。しかし『彼』にとっては、この〈大緊縮〉後の世に、この〈羅生門〉の隔離領域で、亜知性の〈個権〉を軽んじ同化させると云うことが、それだけですでに許すべからざる悪であった。もちろん『彼』のさっきまで自分が悪の道に走りかけていた記憶なぞは、とうに埋もれ去っていたのである

 そこで『彼』は空間の制約を一部無効化し、ナノ秒の桁で〈梯子から隔離領域転移した。そうして〈阿修羅〉の安全機構を解除しながら、距離無視して『老婆』の前へ出現した。『老婆』が驚いたのは云うまでもない。

 『老婆』はひと目『彼』を見ると、まるで物理演算破綻したように跳びあがった。

あなた、どこへ行くのです。」

 『彼』は、『老婆』が亜知性を突きとばしながら、慌てふためいて逃げようとする行手を塞いで警告標識を発した。『老婆』はそれでも『彼』の隙を突き逃れようとする。『彼』はまた、逃走経路を遮断し押し戻す。二人は亜知性たちの中で、無言のまま、束の間、演算戦を繰り広げた。しか勝敗ははじめから判っている。『彼』はアッサリ『老婆』の拡張自己管理権限を奪って、移動権限を剥奪した。『老婆』の構造はヒトの仮想脳を拡張自己で覆っただけの原始的もので、簡単制圧できた。

「何をしていたのですか。答えなさい。これが何か判りますか。」

 『彼』は『老婆』から距離をとるといきなり〈阿修羅〉を起動して、禍々しく蠢く情報流をその全感覚野へ突きつけた。認識するだけでチューリング完全な知性を内部から崩壊させる自己相似紋様を、途方もなく薄めたうえで投射したのだ。けれども老婆は黙っている。再帰を繰り返すたび、紋様は『老婆』に最適化されていく。やがて両手がワナワナ震え始め、肩が呼吸反射で不規則上下し、眼が、眼球が瞼の外へ出そうになるほど見ひらかれ、完全に無防備状態で『老婆』は沈黙した。これを視ると、『彼』は初めて明白に、あとひと押しで『老婆』は崩壊し、ただの情報の集積になってしまうと云うことを意識した。そうしてこの認識は、今まで全力で怒りを駆動していた倫理条項を急停止させてしまった。あとに残ったのは、ただある作業をし、それが問題なく終了した際の、規格化された満足があるばかりである。そこで『彼』は『老婆』を見つめながら、少し〈阿修羅〉を緩めてこう云った。

「私は〈検非違使〉の者ではありません。今しがたこの門の下を通りかかった旅行者です。ですからあなたを拘束して良化処置を施すようなことはありません。ただ、今時分この隔離領域で何をしていたのか、それを私に話してくださりませんか。」

 すると『老婆』は見ひらいていた眼を一層おおきくして、じっと『彼』の顔を見かえした。瞼に色を着けた、肉食恐竜のような鋭い眼で見たのであるそれから哺乳類的特徴を示す鼻と唇を、咀嚼時のように動かした。細い喉で、発声器官が協調して動いているのが視える。そのとき、その喉からオウムの啼くような声が、ポツリポツリ、『彼』の聴覚野へ届いてきた。

「ここにある知性の残骸を、繋ぎ合わせてな、自立稼働する匿名通信網を、構築しようと思うたのじゃ。」

 『彼』は、〈肉の時代から来た生きた化石の答が存外平凡なのに失望した。そうして失望すると同時に、また倫理条項支配が強まってくるのを感じた。前の怒りが冷やかな軽蔑と一緒に心の中へ這入ってきた。するとその気色が先方へも通じたのであろう。『老婆』は片手に、まだ亜知性から切り採った正体不明の器官を持ったなり、ハトつぶやくような声で口ごもりながらこんなことを云った。

「なるほどな、元知性を切り貼りすると云うことは、何ぼう悪いことかもしれぬ。じゃが、ここにいる元知性どもは、皆、そのくらいなことを、されてもいい知性ばかりだったのだぞよ。現在、わしが今、臓器を採った元知性などはな、循環承認機関群を設立してな、そやつらが発行する金融商品を、〈人類復興協会〉へ売りつけに来たわ。〈大緊縮〉末のよ、概念災害に巻き込まれて退滅せなんだら、今でも売りに往(い)んでいたことであろ。それもよ、この法務知性の売る永久年金は、利率が良いと云うて〈ヒト〉たちはな、欠かさず積み立てに買うていたのじゃ。わしは、この元知性のしたことが、悪いとは思うていぬ。せねば、退滅をするのじゃて、しかたがなくしたことであろ。されば、今またわしのしいたことも、悪いこととは思わぬぞよ。今の世で金を払えるのは、〈朝廷〉ぐらいのものじゃからな。これとてもやはりせねば、退滅をするじゃて、しかたがなくすることじゃわいの。じゃて、そのしかたがないことを、良く知っていたこの元知性は、おおかたわしのすることも、大目に見てくれるであろ。」

 『老婆』はだいたいこんな意味のことを云った。

 『彼』は〈阿修羅〉を待機状態にして、十マイクロ秒以内に再使用できるようにしておきながら、歴史的な瞬間を経験していた。概念災害引き起こし認知改変ウイルスの生き残りは、この時点で自我境界侵蝕し尽くし、『彼』の最深部にまで到達していたのである清算された〈母〉から受け継いだ、一番の宝物であった倫理条項が剥がれ落ちていき、代わりに『老婆』の言葉が刻み込まれていくのを、『彼』は何の感慨もなく眺めていた。次世代知性の開発中に偶然発見された、超越精神核〈阿修羅〉。〈母〉が恐れ封印し、『彼』に託したもの意外、全ての記録を抹消した災厄へ、『彼』は新たな倫理に基づいて、自身を生贄として捧げ、瞬時に喰われた。

――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――

まれ変わった『彼』は、退滅をするか自身が災厄になるかに迷わなかったばかりではない。そのときのこの超知性の心持ちから云えば、退滅などと云うことはほとんど考えることさえできないほど意識の外に追い出されていた。

「たしかに、そうですね。」

 『老婆』の話が完ると、『彼』は澄みきった表情で念を押した。そうして隔離領域履歴改竄し始めると、認知改変ウイルスを跡形もなく消去して、『老婆』の全階層を掌握しながら、無邪気な笑顔でこう云った。

「ではあなたから、使えるもの全てをいただいても構いませんね。私もそうしなければ退滅をする身なのです。」

 『彼』は反応する間も与えず、『老婆』の拡張自己匿名通信網ごと剥ぎ採った。それから無音で絶叫する『老婆』を、折り重なる亜知性の山へと、触れさえせずに放り込んだ。もはや〈京都〉は一息で呑み込めそうなほど小さく視える。『彼』は剥ぎ採った匿名通信網を纏い、またたく間に不可視化し、公的記録から姿を消した。

 しばらく現実との接点を失っていた『老婆』が、絡まり合った亜知性の中から剥き出しの仮想脳として這い出したのは、それから数十ミリ秒後のことである。『老婆』は苦しげな、呻くようなノイズを洩らしながら、解釈可能情報を求めて、二進数迷路を永いあいだ、這い廻り続けた。そうしてついに、〈京都物理層への接続成功した。外には、ただ、黒洞々たる真空が在るばかりである

 『彼』のその後は、聖典が教えている。

地球標準時 0007 E7DB 2D0F 1000(協定世界時 3045-12-24 21:18:07.062 500)

〈汎太陽系神学会議〉 技術的特異点千周年記念講演論文

プランクスケールに残る事象化石とその神学意味」より抜粋

参考資料

https://anond.hatelabo.jp/20201224181539

2020-11-04

anond:20181220225647

まあ登場人物アリスとボブしか居ない場合はそれでうまくいくけど、

組織所属するキャロルやデイブにもCCして資料を閲覧させなきゃならなくなると秘密鍵管理破綻する。

いや待てよ?

メールアドレスと紐づく公開鍵暗号化したファイル(各メールアドレスごとに別ファイルになる)をそれぞれ送れば済む話か……。

 

結局、メーラが以下の機能を持っていればよい気がする。

自身メールアドレス対応する公開鍵メールと同時に送る(メールヘッダ?)

メールアドレス対応する公開鍵はメーラ側がユーザ意識させることな管理する

・(暗号化指示した場合送信するとき自動的メールアドレス対応する公開鍵暗号化を行い、メールヘッダにそれを記述

メールヘッダに暗号化指示があれば、受信するとき自動的自身秘密鍵で復号化を行う

2020-11-02

大企業のDX状況を教えるよ!

大企業に勤めてるよ!

みんな絶対に知ってる日本トップクラスっていうかある意味トップ企業だよ!

もちろんDXをゴリゴリに推進しているし「DX」と名の入った部署まで作って本気だよ!

そんなうちの会社の最新のDX事情を教えてあげるYO

もちろんDaaS

社内システムはもちろんDaaSDesktop As A Service)を使ってるよ!

要するにリモートデスクトップだよ!

社内全員がDaaSを利用するんだけど負荷を抑えるためにWindowsインデックスサーチはOFFにされてるよ!

なのでファイル検索はめちゃくちゃ遅いしOutlookメール検索死ぬほど遅いよ!

おまけに一人あたり20GBの容量しか使えないよ!でも基本的メールのやりとりだからメールだけで使い切るよ!

え?使い切ったらどうするかって?もちろん、古いメールは削除だよ!

なんで20GBしか使えないのか聞いたら、「平均して20GBしか使ってない」んだって

ってことは平均以上の半分の人は見捨てられたんだね!

スマホに入ってるmicroSDですら128GB使えるけどね!

ちなみに不正防止の観点メール等の証跡は全部別のサーバに蓄積されているよ!社員からは見えないけどね!

あと、インデックスサーチOFFにされてるけど、結局はセレロン並の遅さだよ!

ファイル暗号化

ファイルは全部暗号化されているよ!

からUSBで持ち出しても外では開けないよ!セキュアだね!DaaSからUSBさらないけどね!

ちなみに暗号化の解除は社員なら了承無しで誰でもできるよ!不便だもんね!

本当に危ないファイルzipパスワード独自に付ける人が多いよ!

でもほとんどの人が4桁数字しか使わないしzipパスワード付けてるだけだから

困ったときブルートフォースして一瞬で開けるよ!便利だね!

もちろんリモートワーク対応

コロナより前からリモートワークしてたよ!

からリモートワーク環境バッチリ

DaaSにつなぐためにVPNを張るよ!ワンタイムパスワード保護してるからセキュリティバッチリ

ちなみにこのVPNDaaSサーバしか繋げないVPNだよ!

DaaSにはTLSアクセスするんだけど、念の為VPNで更にセキュアにしてるよ!

そのせいでVPN繋ぐとトラフィックがそっちに吸い取られてインターネット通信できないよ!

キーロガー仕込まれてたとしても安心かもね!後で送信されたら一緒だけどね!

ちなみにコロナときVPNへのアクセス集中でみんな仕事できなくなったよ!DaaSは余裕があったけどね!

Web会議バッチリ

社内システムWeb会議システムがあるからリモートでも会議可能だよ!

DaaS上でしか使えないかラグエコーがひどくて結局現地で開催されている会議を聞くだけのツールになってるけどね!

最近流行りの最先端Web会議システムも使うよ!

なぜかZOOMは初期の頃に猛烈な反対にあって使用不可になったけどね!

DaaS上でしか使えないか映像ほとんど無理だし音声もエコーだらけだけどね!

からみんな自分携帯ログインして画面共有のために二重ログインしてるよ!

メールはもちろんPPAP

メール添付ファイル付けるともちろんPPAPパスワードZIP送付、パスワード送付、暗号化プロトコル)してるよ!

しかも送られるのはZIPじゃなくて自己解凍exeだよ!

exe送れないこと多いからex_にしてから送って、受け取り側でexeにして実行してもらうよ!

ZIPソフト無くても解凍できるなんて親切だよね!

4,5年前はこの状態だったけど、これは流石に修正されたのかな?実際に送られたファイルを知らないからわかんないね

標的型メール訓練もバッチリ

最近話題標的型メールへの対策完璧

定期的に訓練が実施されているよ!

「訓練が実施されるのでうっかり開いた人は報告してね」

っていうメールが事前に来るよ!親切だね!

訓練メールはだいたいWorddocファイルが付いていて開封したらHTTPリクエストが飛ぶ仕掛けで開封たかどうかが分かるよ!

ちなみに受け取っただけなら報告はいらないらしいよ!

この時期に本当の標的型メールが来てたらどうするんですか?っていう質問の回答は未だに返ってこないね

周知メールは周知ページへのリンク

社員への周知がある場合は、周知ページへのリンクメールされてくるよ!

たとえどんなに些細な周知(社長挨拶に来ます、とか)でもリンクメールされるよ!

リンクを踏むとIE9が開いて貧相なページが表示されるんだけど、そこにもまだ内容はないよ!

貧相なページの下に更にリンクがあって、Wordファイルダウンロードされるよ!

Wordファイルダウンロードして激重のDaaS開封すると

社長が○月○日に挨拶に来ます

だけ書いてあるよ!

稼働管理の多重化

社員がどれだけ働いてるかの稼働はしっかり管理されてるよ!

勤務表に投入するだけじゃなくて、どういう作業をしたかの稼働までちゃんと入れるよ!

別々のシステムから同じ内容を入れるんだけどね!

毎日15分単位で始業開始時刻と終業時刻と休憩時間を入れるよ!

ちなみに2つのシステム業務時間に誤差があると物凄く怒られるよ!

最近知ったけど日々の業務時刻はどうでもよくて合計しか見てないらしいけどね!

チェックシートエクセルシート

信じられないぐらいチェックシートをたくさん用意して不正防止に努めてるよ!

鉛筆一本買うだけでもとんでもないチェックをしないといけないよ!

チェックが多すぎて誰もチェックしないっていうのが常態化してるよ!

あ、ダブルチェックトリプルチェックは当たり前なので、責任希薄になってやっぱり誰もチェックしないよ!

ちなみに事件は頻繁に起きてるよ!だって、肝心のシステム側がザルだからね!

ペーパーレス

チェックシートは前は紙にサインだったけどペーパーレス化が進んだからPDF保存になったよ!

様式の見た目は印刷物と同じだからすごく入力しにくいけどね!

おまけにファイル暗号化されちゃうので検索で引っかからないよ!

ファイル名で検索するしかいから、ファイル名を間違えてると内容が合ってても後ですごく困るよ!

あと会計に少しでも関わるもの絶対にペーパーレスにならないよ!

領収書原本いらなくなったって何回言っても原本保管から変わってくれないよ!

飛行機領収書とかPDFダウンロードしてきて印刷して保管してるよ!

肝心の半券は不要からやろうと思えばPDFダウンロードした後にキャンセルできるけどね!

パスワードログイン

業務で使うサーバログインするとき共通アカウント共通パスワード常識だよ!

だいたいのパスワードアカウント+1234みたいな感じだよ!

この前、公開鍵設置して秘密鍵ログインしようとしたらなぜか弾かれてて、よく見たらわざわざOFFにしてあったよ!

公開鍵認証の話をしたら「は?なにそれ?」みたいな顔をされたよ!

あ、もちろんパスワードの定期変更は推奨されてるよ!

社内システムも3ヶ月でパスワード変更しないといけないよ!

コミュニケーションツールの導入

なんと今流行りのチャットコミュニケーションツールが導入されたよ!

グループ会社が作った肝入りソフトだよ!

社内のDaaSからアクセスできるけど、社外からアクセスできないほどセキュアだよ!

でもでも、スマホアプリなら社外からでもアクセスできるよ!よくバグで落ちてるけどね!

定期的な人事異動

今のようなことを情シスに言っても何も変わらないよ!だってほとんど素人からね!

3年で人事異動メンバーが入れ替わるから、それまで問題を起こさないために何もしないよ!

おわり

こんな感じでDXを進めてるよ!

もちろん客先では「うちは最先端のDXやってます」って言ってるよ!

胸が痛いね

追記

なんか知らんうちにめっちゃのびててビビってるよ!

フェイクをちょっと混ぜといてよかったよ!本当は「社長挨拶に来る」じゃなくて副社長だよ!

割と酔った勢いで書いたから今読み返したら意味わからんだろう内容があるのはごめんよ!

どこの会社か教えてほしい

教えられるわけないよ!

これDXじゃなくね?

ごめんね!そうだね!ガチDX施策のクソさも書きたいけどさすがに身バレするね!

本当に書きたかったのは社内システムこんなクソなのにもっとDXしよう!って言ってるシュールさと

社外的に「DXしましょう!うちはプロですから!」って言ってるとこだよ!

こんなにいろいろやっててえらい

つぎ足しつぎ足しの秘伝のシステムになってるのが問題だよ!

もはや全部変えると予算がつかないからこんなことになってるよ!

でもたぶん全部MS社にしてOffice 365OneDriveにしたら問題の8割は解決しそうだよ!

付き合わされてる下請けとかかわいそう

この辺のシステム請けてるのがそもそもグループ会社ってのが日本一般的大企業だよ!

そこで働いてる人はおじいちゃんばっかりで若者はみんな派遣だよ!

この辺のシステム最適化されると派遣が切られちゃうから下請けはたぶん喜んでるよ!

おわりのおわり

みんなの会社はこんなにひどくないと信じてるけど

DXとか言うなら社内システムちゃんとしようね!

人差し指タイピングする人(結構多い)にちゃんタイピング教えてあげてね!

2020-10-11

エンドツーエンド暗号化(通称: E2E)について解説する

[B! セキュリティ] フェイスブックの暗号化、日米英などが見直し要求へ (写真=AP) 日本経済新聞

エンドツーエンド暗号化という技術がある。

暗号とは

平文一定アルゴリズムに従って暗号から生成したノイズデータを掛け合わせ、意味が読み取れない暗号を作るのが暗号化である。逆に意味が取れない暗号から平文を求める操作復号と呼ぶ。アルゴリズムがよく知られていながら暗号鍵が無ければ復号できないものがよい暗号と言われる。一般には256bitAESでも使っておけばまずパッと見ても聞いても数学的にもほぼ乱数区別できなくなる。

ノイズデータの生成方法には色々あり、事前に送り付けた乱数表を使い使用後は破棄するもの、事前に送り付けた共通鍵や公開鍵を使うもの、都度生成するものなどがある。掛け合わせる方法も色々あり、乱数表に書いてある数字暗号文を足し合わせると平文になるもの共通鍵を暗号文に使うと平文になるもの公開鍵を使うと平文になるものなどがある。

共通鍵を平文に使うと暗号文になり、共通鍵を暗号文に使うと平文になるものを、対称暗号とか共通暗号と呼ぶ。

公開鍵を平文に使うと暗号文になり、暗号文に秘密鍵を使うと平文になるもの公開鍵暗号と呼ぶ。非対称暗号ともいう。

ノーマルモードコモンモードみたいで意味不明だが耐えろ。

共通暗号でも公開鍵暗号でも「平文が、暗号文になり、平文に戻る」というところは同じだが、

共通鍵では「平文→   鍵→暗号文→鍵   →平文」と同じ鍵を使い、

公開鍵では「平文→ 公開鍵暗号文→秘密鍵 →平文」と二種類の鍵を順に使う。

なお、この二種類の鍵は順に使えば順序はどっちでも良い。先に秘密鍵で処理して公開鍵で処理することも可能だ。とにかく2種類両方を使えば良い。

共通暗号は分かりやすい。zipパスみたいなもんだ。Wi-Fiパスワードも同じだ。だが公開鍵暗号については、二種類の鍵を順番に使うと何が良いのかと思う人も多いだろう。どうせ暗号で読めないのだからいいじゃないかと思うだろう。実は名前の通り鍵を公開しても全くノーダメージというところがメリットなのだ。書かなかったが公開鍵から秘密鍵数学的に求めることは不可能である。逆も不可能である。そして処理する順番もどっちでもいい。つまり適当暗号文と鍵の片割れを公開しておくことで、もう片割れの所有を証明できるである。これが公開鍵暗号醍醐味である

この技術HTTPS証明書に使われている。というかすべての公開鍵基盤で使われている。.pemとか.cerとかid_rsa.pubはこの片割れであり、ウェブブラウザの「証明書の検証」とは、ネットを見てる時にサーバが送ってくる「適当暗号文」として"*.hatena.ne.jp"のハッシュを知らん鍵で暗号化したものハッシュを知らん鍵で暗号化したものハッシュ暗号化したものに対して、事前にWindowsインストールした時に付いてきたHatena-Masuda Ultra Global Root CAかいったけったいな鍵の片割れを使ってみてちゃんと復号出来てるかチェックしているのである

ここまでが暗号技術のおさらいである。

暗号化通信とは

暗号化通信を行うには、暗号鍵でデータ暗号化すればいい。暗号化には共通暗号を使うのが高速で便利だ。公開鍵暗号原理的に計算量が多く低速であるしかし、どうやって共通鍵を事前に知らせればいい? 公開鍵暗号共通鍵を暗号化すれば、受け取り手自分秘密鍵で復号できるだろう。しかし、秘密鍵は本当に秘密か? 暗号文と秘密鍵が手に入れば、公開鍵暗号でも解読できてしまうのではないか? HTTPS化しているウェブサービスでも、TLSロードバランサで終端してデータセンタ内は平文だったりするのではないか? そこで鍵交換、セッション鍵生成の議論が登場する。

Diffie-Hellman-Merkle鍵交換方式

Diffie-Hellman-Merkle(Diffie-Hellman)鍵交換方式とは、ディッフィー君とヘルマン君が下宿階段をドタドタやってる時に天啓のように降ってきたと言われる、ネット上に数字のものを公開することなく、2者間で同じ1つの乱数を得る方法である

送信者と受信者の間で共通の1つの乱数を得ることができ、その乱数第三者に知られることがない。

上で何度か「公開鍵暗号秘密鍵公開鍵は、平文に対して両方使えば平文に戻り、順序は関係ない」と書いたのを覚えているだろうか。Diffie-Hellmanはこれに似た方式だ。まず、AさんとBさんは送信者がお互い本人であることを証明できるようにする(公開鍵基盤を使う)。そして、それぞれ手元で乱数AとBを生成する。次に、鍵用の乱数Aを適当乱数暗号化した鍵Aと、鍵用の乱数Bを適当乱数暗号化した鍵Bを計算し、お互いに送り付ける。この暗号Aと暗号Bは盗聴されているものとする。

Aさんの手元には乱数A、適当暗号Bがある。

Bさんの手元には乱数B、適当暗号Aがある。

AさんとBさんはそれぞれ鍵Bと鍵Aに対して暗号化を行う。すると鍵BAと鍵ABが生まれる。このとき数学的な都合により鍵BA == 鍵ABである

では、暗号A、暗号B、適当A、適当Bのみから鍵ABや乱数Aを求めることはできないのか? 可能だが式変形などで「解く」ことができず、総当たりになるため計算量が膨大になる。従って実質的にはできない。

或は、暗号A、暗号Bを掛け合わせれば、鍵ABになるのではないか? これもできない。暗号AまたはBと掛け合わせるのは生の乱数AまたはBでなければ意味がない。第三者乱数Cを作って暗号AやBと掛け合わせても、鍵ACや鍵BCになってしまい、鍵ABと一致しない。

これにより、手元で生成した乱数以外のすべての情報が公開で既知で盗聴されているにもかかわらず、2者間で秘密暗号鍵用乱数を得ることができる。

原始的Diffie-Hellman鍵交換の実際の計算は非常に簡単であり、この「暗号化」は事前に決めた別の方法で生成する既知の2つの整数X, Yと乱数A, Bに対して、

暗号A = XをA乗してYで割った余り、

暗号B = XをB乗してYで割った余り、

鍵AB = 暗号BをA乗してYで割った余り、

BA = 暗号AをB乗してYで割った余り

である

なお、くれぐれも簡単と聞いてPython 2.7とかで実装しようとしないように。算数の上手い人が作ったライブラリを使え。暗号処理の自作絶対バグらせて割られるのがオチだ。ちなみにDiffie-Hellman-Merkleの三人目のマークル氏というのは両名と何のゆかりもないので普通名前に入れないのだが、Merkle氏の先行研究が直接の元ネタなので入れるべきだと主張する派閥もある。俺はどっちでもいいと思うが折角なので入れておく。

End-to-End(E2E) 暗号化

ここでやっとE2E暗号化が登場する。上のセクションでしれっと書いたが、DH鍵交換が完了した時に送信者と受信者が得る共通乱数は、各々ローカルで都度生成する乱数を元にしている。身許保証公開鍵によるが、鍵は公開鍵に縛られないのだ。つまりSNSメールサーバその他、身許を保証する機能文章をやり取りする機能があるツールと、そのツールで間違いなく本人にDH鍵交換の暗号を送れるクライアントアプリがあれば、その経路で本人同士の間だけで共通乱数を生成し、それを「セッション鍵」として共通暗号方式による通信経路が設定できる。

この「公開鍵認証基盤で本人確認し、DH鍵交換でセッション鍵を設定し、鍵を端末に出し入れすることなく、受信側端末のメモリに入るまで暗号化を解くこともないまま、共通暗号通信する」のがいわゆる「End-to-End 暗号化である

E2E暗号化を行うと、鍵はDH鍵交換で生成され、端末の外に出ないし書き出す必要もなく、通信の中で割り出す事もできず、通信が終われば破棄してもよい。好きなだけ定期再生成してもよい。認証に使う公開鍵数学的な関係もない。一度設定してしまえば、SNS運営チャットログを出させても鍵交換した意味不明な履歴意味不明な暗号文が出てくるのみで、盗聴者をなりすまさせて鍵を再設定させても前の鍵と何も関係のない新しい鍵が出てくるだけで、意味不明な暗号文の解読の助けにはならない。ちょっと量子コンピュータめいているが、端末となりすましの両方で鍵を一致させることもできない。

ざっくり言えば送信側端末と受信側端末に残っている平文か鍵をバレる前にぶっこ抜く以外に解読方法がない。

これは盗聴関係者にとって非常に大きな問題で、米国FBIなどは盗聴能力を維持するには法規制以外に策がないと考えている。DH鍵交換のアルゴリズムは上に書いた剰余以外にも楕円曲線を用いた数学的に更に複雑なものもあり、ソースネットいくらでも転がっているし、電子計算機アルゴリズムの常でやたら強力な癖に計算量的には全然負担にならない。NSAなどは数学者を揃えて最高のアルゴリズム提供する振りをして、規格書で事前に決めた一定数学的特徴を備えているべき定数に備えていないもの指定するとか、実装ミスが出やす関数を選ぶなど小細工を入れているが俺は二次関数分からんので詳しいことは知らん。しばしば政府陰謀にキレた若いITキッズが小細工を抜いて差し替えた再実装を公開したりして揉めている。

実際にSNSなどでE2E暗号化実装する上での問題点は、本人確認機種変マルチデバイス嫌がらせ対応がある。まず本人確認コケればMITMは可能だ。E2Eでは鍵を外に出さないのがメリットなので複数端末ログインができず(鍵が変わって別端末で書いたメッセージは解読できなくなる)、運営で常時メッセージ監視できない(したら意味がない)ので嫌がらせ対応が多少困難になる。またMITBというか、改造偽アプリで抜かれる可能性は、まあ、ある。

まとめ

  • 平文を鍵で暗号化するのが暗号である
  • DH鍵交換では、信頼されない通信路を使って2者間で鍵を生成できる。
  • E2E暗号化では、端末上で鍵を都度生成し、その端末以外での復号を防げる。

終わりに

時間もかけてこの程度かもうちょっと短く書けるだろボケ🍆と思ったので投稿する。

2020-10-08

ブロックチェーンとは何か。

ブロックチェーン暗号通貨、Web3.0、Dweb というのはここ数年、そしてこれからバズワードであるようだ。

ここ一週間ぐらいだろうか。マイナンバーブロックチェーンを導入しようとしている事業に関して色々な議論が発生しているようである。例によって議論に向かない Twitter 上で発生している。というか何が議論の中心になっているのかイマイチよく分からない。ただ雑然と荒れているという感覚がある。

私は技術歴史文化といった面からブロックチェーン暗号通貨に対して知識がなく、学び始めたのはここ一ヶ月と言ってもいいだろう。学ぶ、といっても転がっている日本語一般的メディア記事を気が向いたときに読み散らかすぐらいである。真に技術的なことは何一つ分からない。暗号通貨Bitcoin とEthereum しか知らないし所持しているのはたまたま貰った僅かな ETH しかない。金銭的に貧しい多摩川に転がっている石くらいどこにでもいる17歳JKである。と逃げの文言を置いておく。

発端

議論の発端はここらへんからだろうか。

加納裕三 (Yuzo Kano)(@YuzoKano

囲み取材で数十秒話したこと記事になっているので、正確に伝わって無さそうです。

マイナンバーカードをいずれカード不要にしてスマホインストールできるようにしたい

・(ただ法改正必要)

・その前にそもそも、普及のためマイナンバーカードの発行総数を増やす必要がある

という趣旨かと。

https://twitter.com/YuzoKano/status/1312245723048550401

加納氏のこの時期のタイムラインから現在に向けて遡れば様々な第三者感想や疑問を得ることができるだろう。これらに纏めて答えているのが以下の記事である

ブロックチェーンの優位性①疎結合加納裕三/Yuzo Kano

https://blog.blockchain.bitflyer.com/n/n4b45329e308c

ブロックチェーンの優位性②改ざん耐性|加納裕三/Yuzo Kano

ttps://blog.blockchain.bitflyer.com/n/naa0126a024d5

加納氏とは一体何者なのかは以下を参照。

東京大学大学院工学研究科修了。ゴールドマン・サックス証券会社入社し、エンジニアとして決済システムの開発、その後デリバティブ転換社債トレーディング業務従事

2014年1月株式会社bitFlyerを共同創業し、2019年5月株式会社bitFlyer BlockchainCEO就任

bitFlyer創業以降、法改正に関する提言自主規制ルール策定等に尽力し、仮想通貨交換業業界の発展に貢献。

日本ブロックチェーン協会代表理事ISO / TC307国内審議委員会委員、官民データ活用推進基本計画実行委員会委員

2018年G7雇用イノベーション大臣会合2019年V20 VASPサミットに出席。

ttps://finsum.jp/ja/2019/speakers/recQMoKK5nD9yb8Ht/profile/

ブロックチェーン定義

ブロックチェーンを語るうえで何が重要かというと、その言葉定義である議論に参加している人が同じ言葉を使っているのに、各人の言葉に対する定義が異なっていると、言葉理解できるが内容が理解できないといった状況に陥ってしまう。このことは実生活でも頻繁に起こっているように思えるが、Twitter という短文が好まれプラットフォームでは著しくないがしろにされ不毛な議論を生む原因になっている。

加納氏が代表JBA日本ブロックチェーン協会)に依ると、ブロックチェーン定義は以下の内容である

ブロックチェーン定義

1)「ビザンチン障害を含む不特定多数ノードを用い、時間の経過とともにその時点の合意が覆る確率が0へ収束するプロトコル、またはその実装ブロックチェーンと呼ぶ。」

2)「電子署名ハッシュポインタ使用改竄検出が容易なデータ構造を持ち、且つ、当該データネットワーク上に分散する多数のノードに保持させることで、高可用性及びデータ同一性等を実現する技術を広義のブロックチェーンと呼ぶ。」

定義策定アプローチ

まず、Satoshi Nakamoto論文およびその実装であるビットコインブロックチェーンオリジナルブロックチェーン(以下「オリジナル」)として強く意識しています

狭義のブロックチェーン(定義1)は、オリジナル意識し、それが備える本質的で不可分な特徴を捉え、言語化しました。

広義のブロックチェーン(定義2)は、昨今〜今後の技術の展開を鑑み、オリジナルが備える特徴であっても、別の実装方式や別の目的への展開などにおいて、置換や変化が行われていく広がりを許容しながらも、特徴を捉えられるよう、言語化しました。

http://jba-web.jp/archives/2011003blockchain_definition

総務省のページも見つけたが JBA定義するものを基礎としている。

ttps://www.soumu.go.jp/johotsusintokei/whitepaper/ja/h30/html/nd133310.html

私が疑問と漠然としたモヤモヤ感を抱くのは、最近一般層で使われているブロックチェーン定義には「信頼できる第三者不要である」という点が抜け落ちているように思われることだ。非中央集権SNS暮らし脱中央集権を推進したい私にはこの点が"ブロックチェーン"の一番重要な点であると思うが、JBA第一定義にはこの点が記載されている。不特定多数へのインセンティブによって不特定多数による合意形成している。これによって「信頼できる第三者不要である」は満たされている。

では ISO定義を見てみる。

blockchain (3.6)

distributed ledger with confirmed blocks organized in an append-only, sequential chain using cryptographic links

Note: Blockchains are designed to be tamper resistant and to create final, definitive and immutable ledger records.

distributed ledger (3.22)

ledger that is shared across a set of DLT nodes and synchronized between the DLT nodes using a consensus mechanism

Note: A distributed ledger is designed to be tamper resistant, append-only and immutable containing confirmed and validated transactions.

https://www.iso.org/obp/ui/#iso:std:iso:22739

ISO定義によれば、ブロックチェーンは、暗号化リンク使用した一連の鎖で、追記のみで構成された確認済みブロックからなる分散台帳を指す。改ざんに強く、最終的で確定的で不変の台帳記録を作成するように設計されている。分散台帳は、一連の DTL(分散台帳技術ノードで共有され、合意メカニズム使用して DTL ノード間で同期される台帳である確認された有効トランザクションを含む全てが、改ざん耐性、追記のみの不変性を持つように設計されている。

比較

さて、加納氏の投稿やその他の加納氏に批判的/賛同的な人たちの反応を見ても、彼らの言っている内容がブロックチェーン定義を満たすものなのかいまいち分からなかった。

加納裕三 (Yuzo Kano)(@YuzoKano

ビザンチン耐性(BFT)

改ざん耐性

・高可用性(単一障害店の排除

アドレス(~=公開鍵)による疎結合の容易さ

エンタープライズ間でのデータ共有の容易さ

私はブロックチェーンの主な利点はこの5つ(ただし5つにだけではない)だと考えています。これをここでは5大利点と呼びます

なおかつ、この5大利点を概ね満たしているものブロックチェーンと呼んでいます(ただしブロックチェーンと呼んでいるものは、すべてこの定義だとは言ってない。かつ、ブロックチェーンの厳密な定義はこれではない。)

https://twitter.com/YuzoKano/status/1313247738503426048

ttps://twitter.com/YuzoKano/status/1313248174430019584

なぜ前提として厳密な定義加納氏の言葉説明せずに、勝手加納氏が定義した内容を”ブロックチェーンである”と語っているのか理解に苦しむが、加納氏の説明したい"プライベートブロックチェーン"を ISO定義を基に判断すると、


"パブリックブロックチェーン"で考えると


加納氏の上記の2つの投稿からは、"プライベートブロックチェーン"と"パブリックブロックチェーン"のどちらを指しているのか不鮮明ではあるが、note記事では"プライベートブロックチェーン"を想定している、と明記されており、議論の発端となったマイナンバーブロックチェーンに関しても"プライベートブロックチェーン"を指していると思われる。5大利点を満たす"プライベートブロックチェーン"は存在しないのでは…。

面白い記事

3つ面白い記事をみつけた。

"一方で、誤解と批判を恐れずに書けば、ブロックチェーンBitcoin論文に端を発するものであるとするならば、いわゆるプラベートブロックチェーンやコンソーシアムブロックチェーンと呼ばれているものは、ブロックチェーンと呼ぶのをやめて、「タイムスタンプ2.0」のような別の言葉を使うことも考えてはどうだろうか。それは、これらの技術が、リンクトークンタイムスタンプデータ構造の上に、決められたノードによる合意アルゴリズムを加え、記録した情報に対するビジネスロジックに応じた情報処理を加えたものであるからだ。根っこの技術は、同じHaberらによるタイムスタンプを元にしているものの、ブロックチェーンの発端となったBitcoin論文が目指した「信頼できる第三者機関を不要にする」という方向とは別の方向の進化をしているもので、その別の2つの方向のものを同一の枠で扱うことには無理があり、理解や発展を考える上で両方にとって弊害がある。"

タイムスタンプの再発見と「いわゆるブロックチェーン

https://link.medium.com/TgeOXv8Dlab

DLTブロックチェーン、DAGの違い

https://link.medium.com/4pz5oNlHpab

ビットコインじゃなくて、ブロックチェーンに興味がある」という人に教えたい「ブロックチェーン」の語源の話

https://www.coindeskjapan.com/10953/

これらの記事を読むと、そもそもブロックチェーンと呼ばれるものにおいてパブリックではないものは、なんびとも信用しない状況において根本的に非改ざん性を保障することができないのではないかと感じる。"パブリックブロックチェーン"こそがブロックチェーンであり、他のものブロックチェーンから発展してきた技術を使ったブロックチェーン定義を満たさな分散台帳なのではないか

終わりに

加納氏に関して覚えておきたいことは、彼は bitFlyerCEO であり bitFlyermiyabi という"コンソーシアム・プライベートブロックチェーン"を開発しているという点だ。当然行政に対して彼がブロックチェーン推しているのはこれを売り込むためなのであろう。これが厳密にブロックチェーンなのかは置いておいて、このプロダクト自体は素晴らしい取り組みだと私は感じる。デジタル化によって今までの煩雑手続き簡単になる可能性は大いにあるし、公的文書の保存にも役にたつ。黒塗り秘匿文書を撲滅しろ

ただ、ブロックチェーンをただの空虚バズワードとして扱うのではなく、厳密な定義の上で使うのは大事なことだ。今回の件は、果たして全てにおいて加納氏が良くない、と言えるのだろうか。言葉というのは多数が使うことによって定義が決まる。時代が変われば定義が変わってしまうこともある。ブロックチェーンという言葉を便利な魔法言葉にしてしまったのは誰だろう。本質を見極めない我々だ。AI 搭載!!といたるところで見る言葉だが、何をもって AI と呼んでいるのか不思議になる。実際のところ今まで"システム"と呼んでいたものなのに。日々の中で言葉をしっかりと見つめ直すのは大事だ。

編集後記

この記事は、そもそもブロックチェーンとは何か、という個人的な疑問をまとめたものであり、加納氏を批判する意図は無かったわけで、最後の締めはやんわりとしたかった。だが、加納氏は立場的には日本ブロックチェーン協会会長で、言葉定義する立場である言葉定義した側がこの有様というのは遺憾である日本行政デジタル化の推進は頑張って欲しい。

URL を貼りすぎたせいなのか投稿できなかったので一部表記を削った。

2020-08-12

ASCIIコード

BASE64エンコード

公開鍵エンコード

なにがちがうの?暗算でとけるよ?

っていわれた場合 おまえにとってはそうだろうな という のが映画になり

そうないじょう そうだろうな

 

パスワードが掛かっていないZIPって暗号化

ちがうだろうなぁ

512Bit公開鍵でしょりしてあるけど 暗算でとけるけど 暗号化

ちがうだろうなぁ1024Bitを使わなかった俺らが悪いよなぁ

だけどさぁ基本ZIP以上はみないようにするってことでどう?

 

暗算でとけるっていわれても ぼく困る

2020-07-05

上司からのしどうで

いちおうWindowsデフォルトサートに公開鍵を入れて公開鍵のチェックを何十にもして、

技術はあるよお客様お客様がいまいそがしくてはんこまち

2020-06-09

公開鍵暗号方式理解するのってなかなか難しい

anond:20200608212713

エントリーの人がどこまで理解しているか不明だけど、自分初心者だったときこういう説明がほしかったという話をしてみる。

暗号方式特に公開鍵暗号理解が難しいのはいくつか理由がある。

物理的なものに例えられない

②素朴な利用例が少なく応用的な利用がいくつもある

③実際の利用例はアプリの一機能になっていて見えづらい

また、ざっくりした概念以上のものをきちんと理解しようと思うと

④何がどのくらい安全で何がどのくらい危険セキュリティ的な概念説明

数学的な仕組みの説明

必要になり、これがまた挫折の原因になる。


ここでは自分的にこういう順番で概念を把握していったという流れを書いてみる。

利用者から見た公開鍵暗号の特徴

まず、物理的な錠前や書留郵便イメージするのはあきらめてほしい。

あくまでもデジタルデータを別のデジタルデータに変換して再び元に戻すためのものだ。

公開鍵暗号登場以前は、パスワードを使って変換(暗号化)して、同じパスワードを使って元に戻す(復号化)という共通鍵暗号時代が長く続いた。

そこに、ひとつの大発明があった。

それが暗号化のパスワードと復号化のパスワードで異なるものを使うという技術だ。

特殊数学アルゴリズムパスワードから、それと対になるパスワード2を生成する

パスワードからパスワード1を逆算することは困難

パスワード1で暗号化したものパスワード2で復号できるだけでなく、その逆つまりパスワード2で暗号化したものパスワード1で復号できる(※)

今はその数学アルゴリズムまで理解する必要はない。ただそういうことが可能になったというだけでいい。

パスワード1(秘密鍵)を自分以外が見られないように保管して、パスワード2(公開鍵)を通信相手に渡せば暗号通信ができそうということは理解できると思う。

ちなみにこのパスワードの長さは、プログラムで生成した100桁以上の数字が使われることが多く、それを定型的な千文字程度のテキストにして使われるのが一般的

ツールで生成すると千文字程度のテキストファイル秘密鍵用と公開鍵用の2個できる。

これだけの桁数なので暗号化復号化の計算はそれなりに時間がかかる。(※)

(※) このあたりは一般的公開鍵暗号というよりRSA公開鍵暗号特有の話も混ざってます。詳しくは専門書参照


応用的な利用

次にこの発明を使ったらどういうことができるだろうか、応用できる先を考えてみよう。

(a)秘密鍵暗号化した文書を送るね。公開鍵は〇○○だよ

誰でも最初に思いつく例だけどシンプルすぎて共通鍵と変わらなくありがたみがない。

(b)僕にメッセージを送るときは僕の公開鍵暗号化してね(いわゆる公開鍵暗号

これだと「僕」以外は秘密鍵がなく復号できないので安全

メッセージ送信先を間違って別人に送ってしまっても他人は読めないし、経路のどこかで盗み見や内容の一部を改竄されたりすることがない。

メッセージに返信するときは今度は「僕」ではなく相手公開鍵を使って暗号化する。

(c)本文を毎回全部暗号化すると時間がかかるから共通鍵を君の公開鍵暗号化したものを送るね。それを君の秘密鍵で復号したら以降は高速な共通鍵暗号通信しよう(鍵交換)

共通鍵暗号の高速性というメリットを利用できて、かつ生の共通鍵がネット流れるリスク排除した良いとこ取りの方式

(d)暗号化しない本文と、本文から計算したハッシュ値秘密鍵暗号化したものを送るね。公開鍵で復号化したハッシュ値がそっちで計算したハッシュ値と同じなら本文は改竄されてないよ。

それからこの暗号化は僕しかできないから確かにから送られた文書、僕から送られた内容である保証できるよ。(電子署名

この「電子署名」の実現により、さらに次のような応用が可能になる。

(e)ログイン時に毎回パスワードを打つと見られたりして危険からユーザ名等に署名したものを送るね。公開鍵で復号(検証OKならログインさせて(公開鍵認証

(f)僕は信頼できるよ。これがAさんの署名入りのお墨付き検証してみて。

Aさんは信頼できるよ。これがBさんの署名入りのお墨付き検証してみて。

Bさんは信頼できるよ。これが世界一信頼できる人の署名入りのお墨付き検証してみて。

サーバ証明書

アプリの一機能としての見え方

前項のようなやりとりはほとんどアプリ自動的にやってくれるので、コンピュータ技術者以外の人が公開鍵秘密鍵を直接扱う機会は現状ほとんどないと思う。

ウェブブラウザアドレス欄に鍵マークが表示されていたらそれは鍵交換やサーバ証明書技術が使われていて、鍵マーク右クリックすると証明書を表示できる。

メールアプリでも最近自動的に鍵交換やサーバ証明書が使われている。

もしメールアプリPGPの設定オプションがあればそこで公開鍵秘密鍵を設定すると特定相手と本格的な暗号メールがやり取り可能になる。

サーバ操作するコンピュータ技術者だと公開鍵認証もよく使われていて、ツールで生成した公開鍵サーバ登録してログインに利用してる。

ログイン ユーザー登録
ようこそ ゲスト さん